    /* --- Modern Blueprint Style Filter --- */

    /* Reaktivní filtry: jemné ztlumení bez průhlednosti (opacity na bílém bloku problikává) */
    #adverts-container.hero-adverts-loading {
        filter: brightness(0.98) saturate(0.96);
        transition: filter 0.22s ease;
    }
    #home_map_wrap.hero-map-loading {
        filter: brightness(0.98) saturate(0.96);
        transition: filter 0.22s ease;
    }
    #search-submit-btn.hero-filter-count-pulse {
        box-shadow: 0 0 0 2px rgba(61, 21, 91, 0.18);
    }

    /* Informativní počet výsledků — stejná dlaždice jako filtr (viz hero-filter-tiles-critical) */
    #filter-form #search-submit-btn.hero-results-info {
        font-family: var(--portal-font-ui);
        gap: 0.35em;
    }

    /* Typografie filtrů (sjednoceno s chip_choice.css) */
    #filter-form {
        font-family: var(--portal-font-ui);
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
    }
    #filter-form .badge-header,
    #filter-form .subfilter-label,
    #filter-form .subfilter-sublabel,
    #filter-form .filter-top-country-header,
    #advanced-filters-panel h3,
    #advanced-filters-panel .subfilter-label,
    #advanced-filters-panel .subfilter-sublabel {
        font-weight: var(--portal-fw-label, 600) !important;
    }
    #filter-form .badge-status {
        font-weight: var(--portal-fw-input, 400) !important;
    }
    #filter-form .tile-filter,
    #filter-form .tile-filter .tile-text,
    #filter-form .tile-filter .chip-choice-label,
    #filter-form #country-tag-container .country-tag,
    #advanced-filters-panel .tile-filter {
        font-weight: var(--portal-fw-pill, 400) !important;
    }

    /* Neaktivní dlaždice — jemnější obrys, stejná tloušťka jako aktivní */
    #filter-form .tile-filter:not(.tile-active):not(.tile-discount-active):not(.tile-auction-active):not(.monolith-active):not(.tile-filter--locked),
    #advanced-filters-panel .tile-filter:not(.tile-active):not(.tile-discount-active):not(.tile-auction-active):not(.monolith-active) {
        border: 1px solid var(--portal-border-tile-inactive, rgba(61, 21, 91, 0.38)) !important;
        background-color: #fff !important;
        box-shadow: none !important;
    }
    /* Neutrální pole (cena, zamčený makléř…) — stejný obrys jako neaktivní dlaždice */
    #filter-form .monolith-item:not(.monolith-active):not(.tile-filter),
    #filter-form .filter-price-field-col input[type="number"],
    #filter-form input[name="price_min"]:not(.filter-price-tile-value),
    #filter-form input[name="price_max"]:not(.filter-price-tile-value),
    #advanced-filters-panel input[type="number"]:not(.monolith-active):not(.subfilter-range-tile-value),
    #filter-form .select2-container--default:not(.geo-select2-monolith-active) .select2-selection--single {
        border: 1px solid #9ca3af !important;
        background-color: #fff !important;
        box-shadow: none !important;
    }
    #filter-form input.monolith-item:not(.tile-filter),
    #filter-form select.monolith-item:not(.tile-filter),
    #filter-form input[type="number"],
    #filter-form .purple-machine-input,
    #advanced-filters-panel input[type="number"]:not(.subfilter-range-tile-value),
    #advanced-filters-panel input[type="text"]:not(.tile-filter),
    #filter-form .select2-container .select2-selection__rendered,
    #filter-form .select2-container--default .select2-selection--single .select2-selection__rendered {
        font-weight: var(--portal-fw-input, 400) !important;
    }
    #filter-form input.monolith-item:not(.tile-filter)::placeholder,
    #filter-form select.monolith-item:not(.tile-filter) option,
    #filter-form input[type="number"]::placeholder,
    #advanced-filters-panel input[type="number"]::placeholder {
        font-weight: var(--portal-fw-input, 400) !important;
    }
    #filter-form #search-submit-btn {
        font-family: var(--portal-font-ui);
    }
    #filter-form .clear-filter-btn {
        transition: all 0.2s ease-in-out;
    }
    #filter-form .filter-top-country-count {
        font-weight: var(--portal-fw-input, 400) !important;
        color: var(--portal-text-muted, #4b5563) !important;
    }

    /* Placeholder / výchozí texty ve filtru — stejná barva jako neaktivní dlaždice */
    #filter-form input::placeholder,
    #filter-form textarea::placeholder,
    #advanced-filters-panel input::placeholder {
        color: var(--portal-text-muted, #4b5563) !important;
        opacity: 1 !important;
        -webkit-text-fill-color: var(--portal-text-muted, #4b5563);
    }

    /* Bod 2+3+4 — hlavní štítky sekce stejná výška jako dlaždice (ne podpopisky Stát/Kraj…) */
    .filter-section-advertisers .badge-container,
    .filter-section-transaction .badge-container,
    .filter-section-type-tiles .badge-container,
    .filter-section-location > .badge-container {
        margin-bottom: 0;
    }
    .filter-section-advertisers > .badge-container .badge-header,
    .filter-section-advertisers > .badge-container .badge-status,
    .filter-section-transaction > .badge-container .badge-header,
    .filter-section-transaction > .badge-container .badge-status,
    .filter-section-type-tiles > .badge-container .badge-header,
    .filter-section-type-tiles > .badge-container .badge-status,
    .filter-section-location > .badge-container .badge-header,
    .filter-section-location > .badge-container .badge-status {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        box-sizing: border-box;
        min-height: var(--portal-filter-tile-h);
        height: auto;
        padding: var(--portal-filter-tile-py) var(--portal-filter-tile-px);
        border-radius: var(--portal-filter-tile-radius);
        font-size: var(--portal-filter-tile-fs);
        line-height: var(--portal-filter-tile-lh);
        letter-spacing: 0.06em;
    }
    .filter-section-advertisers > .badge-container .badge-header,
    .filter-section-transaction > .badge-container .badge-header,
    .filter-section-type-tiles > .badge-container .badge-header,
    .filter-section-location > .badge-container .badge-header {
        border: 1px solid #e5e7eb;
    }

    /*
     * Bod 2/3/4 — popisky + dlaždice v jednom flex-wrap řádku (jako TOP státy).
     * Dlaždice jsou přímí potomci řádku (bez .filter-ribbon = bez mobilního nowrap scrollu).
     */
    .filter-section-tiles-row {
        align-items: center;
        gap: 8px;
        min-width: 0;
        width: 100%;
    }
    #filter-form .filter-section-location.filter-section-tiles-row {
        align-items: flex-end;
    }
    #filter-form .filter-section-location-primary {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 8px;
        width: 100%;
        min-width: 0;
        overflow-x: visible;
    }
    @media (min-width: 1024px) {
        #filter-form .filter-section-location-primary {
            flex-wrap: nowrap;
        }
    }
    .filter-section-tiles-row > .tile-filter {
        flex: 0 1 auto;
        max-width: 100%;
    }
    #filter-form .filter-section-type-tiles {
        flex-wrap: wrap !important;
        overflow-x: visible !important;
    }
    /* Bod 1 — sloupce Stát/Zahraničí + dlaždice stejná výška */
    #filter-form .filter-location-field-col {
        flex: 0 0 auto;
        min-width: 0;
        max-width: 11rem;
    }
    #filter-form .filter-location-field-col > .badge-container {
        margin-bottom: 0 !important;
        min-height: 24px;
    }
    #filter-form .filter-location-field-col > .badge-container .badge-header {
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        padding: 5px 14px !important;
        font-size: 13px !important;
        border-radius: 9px !important;
        letter-spacing: 0.1em !important;
        border: none !important;
    }
    #filter-form .filter-location-country-wrap {
        flex: 0 0 auto;
        max-width: 100%;
    }
    #filter-form .filter-location-country-tile,
    #filter-form #country-select.filter-location-country-tile,
    #filter-form #country-search.filter-location-country-tile {
        box-sizing: border-box;
        flex: 0 0 auto;
        width: auto;
        min-width: 9rem;
        max-width: min(100%, 14rem);
        min-height: var(--portal-filter-tile-h) !important;
        height: auto !important;
        padding: var(--portal-filter-tile-py) var(--portal-filter-tile-px) !important;
        border-radius: var(--portal-filter-tile-radius) !important;
        font-size: var(--portal-filter-tile-fs) !important;
        line-height: var(--portal-filter-tile-lh);
        text-transform: uppercase;
        letter-spacing: 0.06em;
    }
    #filter-form #country-search.filter-location-country-tile::placeholder {
        text-transform: uppercase;
        letter-spacing: 0.06em;
    }
    #filter-form .filter-section-location .filter-location-field-col .tile-filter.switch-abroad,
    #filter-form .filter-section-location .filter-location-country-tile {
        min-height: var(--portal-filter-tile-h) !important;
        height: auto !important;
        box-sizing: border-box !important;
    }
    #filter-form .filter-section-location .filter-location-field-col .tile-filter.switch-abroad {
        padding: var(--portal-filter-tile-py) var(--portal-filter-tile-px) !important;
        gap: 0.35rem;
    }
    .filter-section-tiles-row .transaction-extra-pill {
        min-height: var(--portal-filter-tile-h);
        height: auto;
        padding: var(--portal-filter-tile-py) var(--portal-filter-tile-px);
        font-size: var(--portal-filter-tile-fs);
        line-height: var(--portal-filter-tile-lh);
        border-radius: var(--portal-filter-tile-radius);
        letter-spacing: normal;
        text-transform: none;
    }
    .filter-section-tiles-row .transaction-extra-pill svg {
        width: 1rem;
        height: 1rem;
    }

    /* Cena od/do — kompaktní dlaždice (viz hero-filter-price-tiles-critical v šabloně) */
    #filter-form label.tile-filter.filter-price-tile input.filter-price-tile-value {
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        outline: 0 !important;
        appearance: none !important;
        -webkit-appearance: none !important;
    }

    /* Ostatní ribbony ve filtru — zalamování, bez horizontálního scrollu z chip_choice */
    #filter-form .filter-ribbon {
        flex-wrap: wrap !important;
        overflow-x: visible !important;
        padding-bottom: 0 !important;
    }
    #filter-form .filter-ribbon .tile-filter {
        flex: 0 0 auto;
        max-width: 100%;
    }

    /* Subfiltr realitky/makléře — na mobilu těsněji, prázdné tagy nezabírají místo */
    #experts-subfilter .filter-field-col {
        gap: 0.25rem;
    }
    @media (min-width: 768px) {
        #experts-subfilter .filter-field-col {
            gap: 0.375rem;
        }
    }
    #experts-subfilter .experts-tag-container:empty {
        display: none;
    }
    #experts-subfilter .experts-tag-container:not(:empty) {
        margin-top: 0.375rem;
        min-height: 0;
    }
    @media (min-width: 768px) {
        #experts-subfilter .experts-tag-container:not(:empty) {
            margin-top: 0.5rem;
            min-height: 34px;
        }
    }
    .transaction-discount-chip .tile-filter.tile-discount-active {
        background-color: #ea580c !important;
        color: #fff !important;
        border-color: #c2410c !important;
        box-shadow: 0 4px 12px rgba(234, 88, 12, 0.3) !important;
    }
    .transaction-discount-chip .tile-filter.tile-discount-active svg {
        color: #fff !important;
    }
    .transaction-discount-chip #tile-live-auction.tile-auction-active,
    #tile-live-auction.tile-filter.tile-auction-active {
        background-color: #387B22 !important;
        color: #fff !important;
        border-color: #2d6319 !important;
        box-shadow: 0 4px 12px rgba(56, 123, 34, 0.35) !important;
    }
    .transaction-discount-chip #tile-live-auction.tile-auction-active svg,
    #tile-live-auction.tile-auction-active svg {
        color: #fff !important;
    }

    /* Subfilter Container - ENSURE NATURAL FLOW */
    #advanced-filters-panel {
        transition: all 0.3s ease-in-out;
        width: 100%;
        display: none; /* HTMX sets this to block */
    }
    #advanced-filters-panel:not(.hidden) {
        display: block !important;
    }
    
    /* ABSOLUTNÍ FIX PRO ČERVENÝ KOŠ */
    .trash-btn-force:hover svg {
        stroke: #ef4444 !important;
        color: #ef4444 !important;
    }

    /* Search-to-Tag Státy */
    #country-tag-container .country-tag {
        display: inline-flex;
        align-items: center;
        background-color: var(--portal-primary-soft);
        color: var(--portal-text);
        border: 1px solid var(--portal-primary);
        padding: 4px 12px;
        border-radius: 9999px;
        font-size: 0.8125rem;
        margin-right: 6px;
        margin-bottom: 6px;
        font-weight: var(--portal-fw-pill, 400);
    }
    #country-tag-container .country-tag button {
        margin-left: 8px;
        font-size: 1.2rem;
        line-height: 1;
    }
    #country-tag-container .country-tag.country-tag--locked {
        cursor: not-allowed;
    }

    /* Tag státu (Česko…): víc od pole „Vlastní výběr“, méně k čárkované / Top 7 */
    .country-tags-wrap {
        margin-top: 0;
        margin-bottom: 0;
        min-height: 0;
    }
    .country-tags-wrap:has(.country-tag) {
        margin-top: 1rem;
        margin-bottom: 0.25rem;
    }
    .country-tags-wrap:has(.country-tag) .country-tag {
        margin-bottom: 0;
    }
    #country-tag-container:empty {
        display: none;
    }

    .quick-choice-link {
        transition: all 0.2s;
    }

    /* Expressive Dashed Lines (Restored) */
    .border-dashed-custom {
        background-image: linear-gradient(to right, #9ca3af 40%, rgba(255, 255, 255, 0) 0%);
        background-position: top;
        background-size: 10px 1px;
        background-repeat: repeat-x;
        height: 1px;
        width: 100%;
        margin-top: 2rem;
        margin-bottom: 1.5rem;
    }

    /* DOUBLE BADGE SYSTEM */
    .badge-container {
        display: inline-flex;
        align-items: center;
        gap: 0.5rem;
        margin-bottom: 1rem;
    }
    .badge-header {
        background-color: #f3f4f6; /* gray-100 */
        color: #4b5563; /* gray-600 */
        font-size: 13px;
        font-weight: var(--portal-fw-label, 600);
        padding: 5px 14px;
        border-radius: 9px;
        text-transform: uppercase;
        letter-spacing: 0.1em;
    }
    .badge-status {
        font-size: 13px;
        font-weight: var(--portal-fw-label, 600);
        padding: 5px 14px;
        border-radius: 9px;
        transition: all 0.3s ease;
        text-transform: uppercase;
        letter-spacing: 0.1em;
    }
    .badge-status-all {
        background-color: var(--portal-primary-soft);
        color: var(--portal-text);
        border: 1px solid var(--portal-primary);
        font-weight: var(--portal-fw-input, 400);
    }
    .badge-status-custom {
        background-color: #f3f4f6;
        color: #4b5563;
    }

    /*
     * Bod 1–4: popisky „1. Kde…“ / „4. Typ…“ + „Vše vybráno“ — stejná výška jako dlaždice (2/3).
     * Musí být za DOUBLE BADGE SYSTEM, jinak přebije padding 5px / font 13px.
     */
    #filter-form .filter-section-tiles-row > .badge-container {
        margin-bottom: 0 !important;
        gap: 8px;
        align-items: center;
    }
    #filter-form .filter-section-tiles-row > .badge-container .badge-header,
    #filter-form .filter-section-tiles-row > .badge-container .badge-status {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        box-sizing: border-box !important;
        min-height: var(--portal-filter-tile-h) !important;
        height: auto !important;
        max-height: none !important;
        padding: var(--portal-filter-tile-py) var(--portal-filter-tile-px) !important;
        border-radius: var(--portal-filter-tile-radius) !important;
        font-size: var(--portal-filter-tile-fs) !important;
        line-height: var(--portal-filter-tile-lh) !important;
        letter-spacing: 0.06em !important;
        text-transform: uppercase !important;
    }
    #filter-form .filter-section-tiles-row > .badge-container .badge-header {
        border: 1px solid #e5e7eb !important;
    }
    /* Dlaždice v řádcích 1–4 — stejná výška jako hlavní badge */
    #filter-form .filter-section-tiles-row > .tile-filter,
    #filter-form .filter-section-type-tiles > .tile-filter,
    #filter-form .filter-section-type-tiles > .filter-price-tile,
    #filter-form .filter-section-location .filter-location-field-col .tile-filter,
    #filter-form .filter-section-location .filter-location-country-tile,
    #filter-form .filter-section-type-tiles > .filter-price-tile {
        box-sizing: border-box !important;
        min-height: var(--portal-filter-tile-h) !important;
        height: var(--portal-filter-tile-h) !important;
        max-height: var(--portal-filter-tile-h) !important;
        padding: var(--portal-filter-tile-py) var(--portal-filter-tile-px) !important;
        border-radius: var(--portal-filter-tile-radius) !important;
        font-size: var(--portal-filter-tile-fs) !important;
        line-height: var(--portal-filter-tile-lh) !important;
    }

    .filter-suggestion-item {
        padding: 0.5rem 1rem;
        cursor: pointer;
        font-size: 0.875rem;
        color: var(--portal-text-muted);
        border-bottom: 1px solid #e5e7eb;
        transition: all 0.2s ease;
    }
    .filter-suggestion-item .portal-ac-highlight {
        color: var(--portal-brand-dark);
        font-weight: 900;
        background: transparent;
        padding: 0;
    }
    .filter-suggestion-item:last-child {
        border-bottom: 0;
    }
    .filter-suggestion-item:hover,
    .filter-suggestion-item:focus-visible,
    .filter-suggestion-item.is-active {
        background-color: var(--portal-primary-soft);
        color: var(--portal-text);
        box-shadow: inset 0 0 0 1px var(--portal-primary);
        outline: none;
    }
    .hero-filter-clear-btn:hover {
        color: var(--portal-brand-dark) !important;
    }

    /* Popisek nad polem / dlaždicí — vždy nad, nikdy přes fialový pruh */
    .filter-field-col {
        display: flex;
        flex-direction: column;
        gap: 0.375rem;
        min-width: 0;
    }
    .filter-field-col > .badge-container {
        margin-bottom: 0 !important;
        height: auto !important;
        min-height: 24px;
    }
    .filter-field-col > .filter-field-control {
        min-height: 44px;
    }

    /* Kraj | Okres | Lokalita | Okolí */
    #filter-form .filter-geo-locality-row {
        display: grid !important;
        grid-template-columns: repeat(4, minmax(9rem, 1fr)) !important;
        grid-auto-flow: row;
        align-items: start;
        column-gap: 8px;
        row-gap: 8px;
        width: 100%;
        min-width: 0;
        box-sizing: border-box;
    }
    @media (max-width: 768px) {
        #filter-form .filter-geo-locality-row {
            grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        }
    }
    @media (max-width: 420px) {
        #filter-form .filter-geo-locality-row {
            grid-template-columns: 1fr !important;
        }
    }
    #filter-form .filter-geo-locality-row > .filter-geo-locality-col {
        min-width: 0;
        width: auto;
        max-width: none;
    }
    #filter-form .filter-geo-locality-col .select2-container {
        width: 100% !important;
        max-width: 100%;
    }
    #filter-form .filter-geo-locality-col--radius input[type="number"] {
        font-variant-numeric: tabular-nums;
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    /* Cena od/do — vedle sebe, širší sloupce, popisky v i18n bez zalomení */
    .filter-price-fields {
        flex-shrink: 0;
    }
    .filter-price-field-col .badge-header {
        white-space: nowrap;
        font-size: 0.875rem;
        letter-spacing: 0.1em;
        padding-left: 14px;
        padding-right: 14px;
    }
    .filter-price-field-col input[type="number"] {
        font-variant-numeric: tabular-nums;
    }

    /* Záloha: žádný záporný margin u řádků popisků (popisky nesmí do dlaždic) */
    #filter-form .grid[class*="mb-1"],
    #filter-form .grid[class*="-mb-"] {
        margin-bottom: 0.5rem !important;
    }

    /* Vyplněné pole (legacy třída) — stejný vizuál jako hero-value-input */
    .purple-machine-input {
        background-color: #ffffff !important;
        color: #4b5563 !important;
        border: 1px solid #9ca3af !important;
        box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05) !important;
        transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    }
    .purple-machine-input::placeholder {
        color: #6b7280 !important;
        opacity: 1;
    }
    .purple-machine-input:focus {
        background-color: #ffffff !important;
        color: #1f2937 !important;
        border-color: var(--portal-brand-dark, #3d155b) !important;
        box-shadow: 0 0 0 3px rgba(61, 21, 91, 0.12) !important;
        outline: none !important;
    }
    .purple-machine-input:focus::placeholder {
        color: #6b7280 !important;
    }

    /* MONOLITH UNITY v16: The Absolute Baseline */
    .monolith-item:not(.filter-location-country-tile):not(.tile-filter) {
        height: 44px !important;
        box-sizing: border-box !important;
        border-radius: 12px !important;
        font-size: 14px !important;
        font-weight: var(--portal-fw-input, 400) !important;
        border: 1px solid #9ca3af !important;
        background-color: #fff !important;
        color: #4b5563 !important;
        transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
        box-shadow: 0 1px 2px rgba(0,0,0,0.05) !important;
        padding-left: 16px !important;
        padding-right: 16px !important;
    }
    #filter-form select.filter-location-country-tile.monolith-item,
    #filter-form input.filter-location-country-tile.monolith-item {
        height: var(--portal-filter-tile-h) !important;
        min-height: var(--portal-filter-tile-h) !important;
        max-height: var(--portal-filter-tile-h) !important;
        border-radius: var(--portal-filter-tile-radius) !important;
        font-size: var(--portal-filter-tile-fs) !important;
        padding: var(--portal-filter-tile-py) var(--portal-filter-tile-px) !important;
    }
    .monolith-item:hover:not(.monolith-active) {
        border-color: #7a12d1 !important;
        box-shadow: 0 0 0 4px rgba(122, 18, 209, 0.05) !important;
        background-color: white !important;
    }
    .monolith-active {
        background-color: var(--portal-primary-soft) !important;
        color: var(--portal-text) !important;
        border-color: var(--portal-primary) !important;
        box-shadow: 0 1px 3px rgba(122, 18, 209, 0.12) !important;
    }

    /*
     * Vyplňovací pole (input lane): bílé pozadí, šedý okraj, brand ring při focusu/vyplnění.
     * Platí pro monolith texty, cenu od/do i detailní subfiltry.
     */
    #filter-form input.monolith-item:not(.tile-filter),
    #advanced-filters-panel input.monolith-item:not(.tile-filter),
    #filter-form .filter-price-field-col input[type="number"],
    #filter-form input[name="price_min"]:not(.filter-price-tile-value),
    #filter-form input[name="price_max"]:not(.filter-price-tile-value),
    #advanced-filters-panel input[type="number"]:not(.chip-choice-native):not(.subfilter-range-tile-value),
    #advanced-filters-panel input[type="text"]:not(.tile-filter),
    .purple-machine-input {
        cursor: text;
        background-color: #ffffff !important;
        border: 1px solid #9ca3af !important;
        box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05) !important;
        color: #4b5563 !important;
        font-weight: var(--portal-fw-input, 400) !important;
        outline: none !important;
        --tw-ring-shadow: 0 0 #0000 !important;
        --tw-ring-offset-shadow: 0 0 #0000 !important;
    }
    #filter-form input.monolith-item:not(.tile-filter).monolith-active,
    #filter-form input.monolith-item:not(.tile-filter):disabled,
    #advanced-filters-panel input.monolith-item:not(.tile-filter):disabled {
        background-color: #ffffff !important;
        border-color: #9ca3af !important;
        box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05) !important;
        color: #4b5563 !important;
    }
    #filter-form input.monolith-item:not(.tile-filter):focus:not(:disabled),
    #advanced-filters-panel input.monolith-item:not(.tile-filter):focus:not(:disabled),
    #filter-form .filter-price-field-col input[type="number"]:focus:not(:disabled),
    #filter-form input[name="price_min"]:not(.filter-price-tile-value):focus:not(:disabled),
    #filter-form input[name="price_max"]:not(.filter-price-tile-value):focus:not(:disabled),
    #advanced-filters-panel input[type="number"]:not(.chip-choice-native):not(.subfilter-range-tile-value):focus:not(:disabled),
    #advanced-filters-panel input[type="text"]:not(.tile-filter):focus:not(:disabled),
    .purple-machine-input:focus {
        border-color: var(--portal-brand-dark, #3d155b) !important;
        box-shadow: 0 0 0 3px rgba(61, 21, 91, 0.12) !important;
        background-color: #ffffff !important;
        outline: none !important;
    }
    #filter-form input.monolith-item:not(.tile-filter):not(:placeholder-shown):not(:disabled),
    #advanced-filters-panel input.monolith-item:not(.tile-filter):not(:placeholder-shown):not(:disabled),
    #filter-form .filter-price-field-col input[type="number"]:not(:placeholder-shown):not(:disabled),
    #filter-form input[name="price_min"]:not(.filter-price-tile-value):not(:placeholder-shown):not(:disabled),
    #filter-form input[name="price_max"]:not(.filter-price-tile-value):not(:placeholder-shown):not(:disabled),
    #advanced-filters-panel input[type="number"]:not(.chip-choice-native):not(.subfilter-range-tile-value):not(:placeholder-shown):not(:disabled),
    #advanced-filters-panel input[type="text"]:not(.tile-filter):not(:placeholder-shown):not(:disabled) {
        border-color: var(--portal-brand-dark, #3d155b) !important;
        color: #1f2937 !important;
    }
    #filter-form input.monolith-item:not(.tile-filter)::placeholder,
    #advanced-filters-panel input.monolith-item:not(.tile-filter)::placeholder,
    #filter-form .filter-price-field-col input[type="number"]::placeholder,
    #filter-form input[name="price_min"]:not(.filter-price-tile-value)::placeholder,
    #filter-form input[name="price_max"]:not(.filter-price-tile-value)::placeholder,
    #advanced-filters-panel input[type="number"]:not(.chip-choice-native):not(.subfilter-range-tile-value)::placeholder,
    #advanced-filters-panel input[type="text"]:not(.tile-filter)::placeholder {
        color: #6b7280 !important;
    }

    /*
     * Realitní experti — stejná input lane jako homepage (#filter-form).
     */
    #experts-directory-filter input.monolith-item:not(.tile-filter),
    #experts-directory-filter select.monolith-item {
        cursor: text;
        background-color: #ffffff !important;
        border: 1px solid #9ca3af !important;
        box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05) !important;
        color: #4b5563 !important;
        font-weight: var(--portal-fw-input, 400) !important;
        outline: none !important;
        outline-width: 0 !important;
        --tw-ring-shadow: 0 0 #0000 !important;
        --tw-ring-offset-shadow: 0 0 #0000 !important;
        --tw-ring-color: transparent !important;
    }
    #experts-directory-filter input.monolith-item:not(.tile-filter).monolith-active,
    #experts-directory-filter input.monolith-item:not(.tile-filter):disabled,
    #experts-directory-filter select.monolith-item:disabled {
        background-color: #ffffff !important;
        border-color: #9ca3af !important;
        box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05) !important;
        color: #4b5563 !important;
    }
    #experts-directory-filter input.monolith-item:not(.tile-filter):focus:not(:disabled),
    #experts-directory-filter input.monolith-item:not(.tile-filter):focus-visible:not(:disabled),
    #experts-directory-filter select.monolith-item:focus:not(:disabled),
    #experts-directory-filter select.monolith-item:focus-visible:not(:disabled),
    #experts-directory-filter #experts-agency-search:focus,
    #experts-directory-filter #experts-broker-search:focus:not(:disabled) {
        border-color: var(--portal-brand-dark, #3d155b) !important;
        box-shadow: 0 0 0 3px rgba(61, 21, 91, 0.12) !important;
        background-color: #ffffff !important;
        outline: none !important;
        outline-width: 0 !important;
        --tw-ring-shadow: 0 0 #0000 !important;
        --tw-ring-offset-shadow: 0 0 #0000 !important;
    }
    #experts-directory-filter input.monolith-item:not(.tile-filter):not(:placeholder-shown):not(:disabled),
    #experts-directory-filter select.monolith-item.monolith-active {
        border-color: var(--portal-brand-dark, #3d155b) !important;
        color: #1f2937 !important;
        background-color: #ffffff !important;
    }
    #experts-directory-filter input.monolith-item:not(.tile-filter)::placeholder {
        color: #6b7280 !important;
        opacity: 1 !important;
    }
    #experts-directory-filter .slate-placeholder::placeholder {
        color: var(--portal-text-muted, #4b5563) !important;
        opacity: 1 !important;
    }

    /* Selecty (kraj, okres, stát) — výběr ze seznamu, ne psaní */
    #filter-form select.monolith-item:not(.tile-filter) {
        cursor: pointer;
        background-color: #ffffff !important;
        outline: none !important;
        --tw-ring-shadow: 0 0 #0000 !important;
        --tw-ring-offset-shadow: 0 0 #0000 !important;
        --tw-ring-color: transparent !important;
    }
    #filter-form select.monolith-item:not(.tile-filter):focus:not(:disabled),
    #filter-form select.monolith-item:not(.tile-filter):focus-visible:not(:disabled) {
        border-color: var(--portal-brand-dark, #3d155b) !important;
        box-shadow: 0 0 0 3px rgba(61, 21, 91, 0.12) !important;
        background-color: #ffffff !important;
        outline: none !important;
        outline-width: 0 !important;
    }
    #filter-form select.monolith-item:not(.tile-filter).monolith-active:not(:disabled) {
        background-color: #ffffff !important;
        border-color: var(--portal-brand-dark, #3d155b) !important;
        box-shadow: 0 0 0 2px rgba(61, 21, 91, 0.08) !important;
        color: #1f2937 !important;
    }

    .monolith-item::placeholder {
        color: var(--portal-text-muted, #4b5563) !important;
        opacity: 1 !important;
    }
    .monolith-active::placeholder {
        color: var(--portal-text-muted, #4b5563) !important;
        opacity: 1 !important;
    }
    /* Pilulka „Zahraničí“ sdílí monolith-item — řez jako ostatní dlaždice (regular) */
    .monolith-item.tile-filter {
        font-weight: var(--portal-fw-pill, 400) !important;
    }

    #tile-abroad.tile-filter.tile-active {
        background-color: var(--portal-primary-soft) !important;
        color: var(--portal-text) !important;
        border-color: var(--portal-primary) !important;
        box-shadow: 0 1px 3px rgba(122, 18, 209, 0.12) !important;
    }
    #tile-abroad.tile-filter.tile-active .tile-text {
        color: var(--portal-text) !important;
    }
    #tile-abroad.tile-filter.tile-active svg {
        color: var(--portal-primary) !important;
    }

    select.monolith-active:disabled,
    select.monolith-active[disabled] {
        opacity: 1 !important;
        background-color: #f9fafb !important;
        color: #6b7280 !important;
        border-color: #d1d5db !important;
        -webkit-text-fill-color: #6b7280 !important;
    }

    .select2-container.geo-select2-monolith-active .select2-selection--single,
    .select2-container.geo-select2-monolith-active .select2-selection.select2-selection--single {
        background-color: #ffffff !important;
        border-color: var(--portal-brand-dark, #3d155b) !important;
        min-height: 44px !important;
        align-items: center;
    }
    .select2-container.geo-select2-monolith-active .select2-selection__rendered {
        color: var(--portal-text) !important;
        line-height: 1.35 !important;
        font-weight: var(--portal-fw-input, 400) !important;
        -webkit-text-fill-color: var(--portal-text) !important;
    }
    .select2-container.geo-select2-monolith-active .select2-selection__arrow b {
        border-color: var(--portal-primary) transparent transparent transparent !important;
    }
    select#geo-region-select.monolith-active + .select2-container .select2-selection--single,
    select#geo-district-select.monolith-active + .select2-container .select2-selection--single {
        background-color: var(--portal-primary-soft) !important;
        border-color: var(--portal-primary) !important;
        min-height: 44px !important;
    }
    select#geo-region-select.monolith-active + .select2-container .select2-selection__rendered,
    select#geo-district-select.monolith-active + .select2-container .select2-selection__rendered {
        color: var(--portal-text) !important;
        -webkit-text-fill-color: var(--portal-text) !important;
    }

    #geo-district-control-wrap.has-geo-district-value .select2-container--default .select2-selection--single,
    #geo-district-control-wrap.has-geo-district-value .select2-container .select2-selection--single,
    #geo-district-control-wrap:has(#geo-district-select option:checked:not([value=""])) .select2-container--default .select2-selection--single,
    #geo-district-control-wrap:has(#geo-district-select option:checked:not([value=""])) .select2-container .select2-selection--single,
    #geo-district-control-wrap select#geo-district-select.monolith-active ~ .select2-container .select2-selection--single {
        background-color: var(--portal-primary-soft) !important;
        border-color: var(--portal-primary) !important;
        min-height: 44px !important;
    }
    #geo-district-control-wrap.has-geo-district-value .select2-container--default .select2-selection--single .select2-selection__rendered,
    #geo-district-control-wrap.has-geo-district-value .select2-container .select2-selection__rendered,
    #geo-district-control-wrap:has(#geo-district-select option:checked:not([value=""])) .select2-container--default .select2-selection--single .select2-selection__rendered,
    #geo-district-control-wrap:has(#geo-district-select option:checked:not([value=""])) .select2-container .select2-selection__rendered,
    #geo-district-control-wrap select#geo-district-select.monolith-active ~ .select2-container .select2-selection__rendered {
        color: var(--portal-text) !important;
        line-height: 42px !important;
        -webkit-text-fill-color: var(--portal-text) !important;
    }
    #geo-district-control-wrap.has-geo-district-value .select2-container--default .select2-selection--single .select2-selection__arrow b,
    #geo-district-control-wrap.has-geo-district-value .select2-container .select2-selection--single .select2-selection__arrow b,
    #geo-district-control-wrap:has(#geo-district-select option:checked:not([value=""])) .select2-container--default .select2-selection--single .select2-selection__arrow b,
    #geo-district-control-wrap:has(#geo-district-select option:checked:not([value=""])) .select2-container .select2-selection--single .select2-selection__arrow b,
    #geo-district-control-wrap select#geo-district-select.monolith-active ~ .select2-container .select2-selection__arrow b {
        border-color: var(--portal-primary) transparent transparent transparent !important;
    }

    .slate-placeholder::placeholder {
        color: var(--portal-text-muted, #4b5563) !important;
        opacity: 1 !important;
    }

    .border-dashed-custom {
        background-image: linear-gradient(to right, #9ca3af 40%, rgba(255, 255, 255, 0) 0%);
        background-position: top;
        background-size: 12px 1px;
        background-repeat: repeat-x;
        border-top: none !important;
    }
    /* Čárkované oddělovače sekcí — stejné odsazení (těsně pod dlaždicemi / řádkem, pak odstup k další sekci) */
    .border-dashed-custom.filter-section-dash {
        margin-top: 0.5rem !important;
        margin-bottom: 0.75rem !important;
    }

    /* Top 7 státy: stejná mezera mezi dlaždicemi jako u výběrových pilulek (8px). */
    .filter-top-countries-row {
        gap: 8px;
    }
    .filter-top-countries-block {
        margin-bottom: 1rem;
    }
    .filter-top-country-item .tile-filter {
        gap: 0.35rem !important;
    }
    .filter-top-country-item .filter-top-country-count {
        margin-top: 4px;
    }
    .filter-top-country-header {
        display: flex;
        align-items: center;
        justify-content: center;
        min-height: var(--portal-filter-tile-h);
        height: auto;
        padding: var(--portal-filter-tile-py) var(--portal-filter-tile-px);
        margin-right: 0;
        border-radius: var(--portal-filter-tile-radius);
        font-size: var(--portal-filter-tile-fs);
        font-weight: var(--portal-fw-label, 600);
        text-transform: uppercase;
        letter-spacing: 0.1em;
        background-color: #f3f4f6;
        border: 1px solid #e5e7eb;
        box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
        color: #6b7280;
    }

    /* GUARANTEED TOP REGION SPACING & COLOR (Tailwind Bypass) */
    .top-region-item {
        margin-left: 1.25rem !important; /* Balanced gap between countries */
        color: #4b5563 !important;
    }
    .top-region-flag {
        margin-right: 0.5rem !important; /* mr-2 gap near flag */
    }
    .top-region-count {
        color: #4b5563 !important; /* Darkened for readability */
        margin-left: 4px !important;
        font-weight: var(--portal-fw-input, 400) !important;
    }
    .top-region-label {
        margin-right: 1rem !important;
    }

    /* THE GRAY-SCALE LIMITER: Only for specific labels and blocks */
    .quick-choice-link {
        color: #4b5563 !important;
        transition: all 0.2s ease;
    }

    /* TOP REGION HOVER EFFECTS */
    .top-region-item:hover .quick-choice-link {
        color: #7a12d1 !important;
        text-decoration: underline !important;
    }
    .top-region-item:hover .top-region-flag {
        transform: scale(1.1);
        box-shadow: 0 4px 8px rgba(61, 21, 91, 0.2);
    }

    /* Popup náhled detailu — barva loga */
    #home_map .hero-map-listing-popup .leaflet-popup-content-wrapper {
        border-top: 3px solid var(--portal-brand-dark, #3d155b);
    }
