/*
 * IzziMap UI Refinement 1.0.37
 * The typeface itself is supplied by the IzziGo website. This plugin only
 * requests the registered family name and never bundles/distributes fonts.
 */

:root {
    --izzimap-font: var(--izzigo-font-family, "Varela Round", "Noto Sans Georgian", Arial, sans-serif);
    --izzimap-ink: #3d281b;
    --izzimap-muted: #78685d;
    --izzimap-green: #0b7442;
    --izzimap-green-dark: #075733;
    --izzimap-green-soft: #eaf6ef;
    --izzimap-cream: #fff7e7;
    --izzimap-cream-soft: #fbf8f2;
    --izzimap-white: #ffffff;
    --izzimap-border: #ded6ca;
    --izzimap-border-strong: #c9bcac;
    --izzimap-shadow: 0 8px 24px rgba(61, 40, 27, 0.08);
    --izzimap-shadow-small: 0 3px 12px rgba(61, 40, 27, 0.07);
}

/* Typography: map UI, generated popup content, form controls and controls. */
[class^="izzigo-map"],
[class*=" izzigo-map"],
[id^="izzigo-map"],
[id*=" izzigo-map"],
.maplibregl-popup,
.maplibregl-ctrl,
.maplibregl-ctrl button,
.maplibregl-ctrl input,
.maplibregl-ctrl select {
    font-family: var(--izzimap-font) !important;
}

[class^="izzigo-map"] input,
[class*=" izzigo-map"] input,
[class^="izzigo-map"] select,
[class*=" izzigo-map"] select,
[class^="izzigo-map"] button,
[class*=" izzigo-map"] button,
[id^="izzigo-map"] button,
[id^="izzigo-map"] input,
[id^="izzigo-map"] select {
    font-family: inherit !important;
}

/* Keep the public shell premium and neutral. */
.izzigo-map-public,
.izzigo-map-public-shell,
.izzigo-map-frontend,
.izzigo-map-desktop-shell,
.izzigo-map-mobile-shell,
.izzigo-map-desktop-preview,
.izzigo-map-mobile-preview {
    color: var(--izzimap-ink) !important;
    background: transparent !important;
}

.izzigo-map-public *,
.izzigo-map-public-shell *,
.izzigo-map-frontend *,
.izzigo-map-desktop-shell *,
.izzigo-map-mobile-shell * {
    box-sizing: border-box;
}

/* Prevent Elementor/theme button backgrounds from turning the whole map red. */
.izzigo-map-public button:not(.izzigo-map-marker):not(.izzigo-map-cluster):not(.maplibregl-ctrl button),
.izzigo-map-public-shell button:not(.izzigo-map-marker):not(.izzigo-map-cluster):not(.maplibregl-ctrl button),
.izzigo-map-frontend button:not(.izzigo-map-marker):not(.izzigo-map-cluster):not(.maplibregl-ctrl button),
.izzigo-map-desktop-shell button:not(.izzigo-map-marker):not(.izzigo-map-cluster):not(.maplibregl-ctrl button),
.izzigo-map-mobile-shell button:not(.izzigo-map-marker):not(.izzigo-map-cluster):not(.maplibregl-ctrl button),
.izzigo-map-desktop-preview button:not(.izzigo-map-marker):not(.izzigo-map-cluster):not(.maplibregl-ctrl button),
.izzigo-map-mobile-preview button:not(.izzigo-map-marker):not(.izzigo-map-cluster):not(.maplibregl-ctrl button) {
    min-height: 44px;
    border: 1px solid var(--izzimap-border) !important;
    border-radius: 12px !important;
    background: var(--izzimap-white) !important;
    background-image: none !important;
    color: var(--izzimap-green-dark) !important;
    box-shadow: none !important;
    text-shadow: none !important;
    font-weight: 700 !important;
    line-height: 1.15 !important;
    transition: border-color .18s ease, background-color .18s ease, color .18s ease, transform .18s ease, box-shadow .18s ease !important;
}

.izzigo-map-public button:not(.izzigo-map-marker):not(.izzigo-map-cluster):not(.maplibregl-ctrl button):hover,
.izzigo-map-public-shell button:not(.izzigo-map-marker):not(.izzigo-map-cluster):not(.maplibregl-ctrl button):hover,
.izzigo-map-frontend button:not(.izzigo-map-marker):not(.izzigo-map-cluster):not(.maplibregl-ctrl button):hover,
.izzigo-map-desktop-shell button:not(.izzigo-map-marker):not(.izzigo-map-cluster):not(.maplibregl-ctrl button):hover,
.izzigo-map-mobile-shell button:not(.izzigo-map-marker):not(.izzigo-map-cluster):not(.maplibregl-ctrl button):hover,
.izzigo-map-desktop-preview button:not(.izzigo-map-marker):not(.izzigo-map-cluster):not(.maplibregl-ctrl button):hover,
.izzigo-map-mobile-preview button:not(.izzigo-map-marker):not(.izzigo-map-cluster):not(.maplibregl-ctrl button):hover {
    border-color: var(--izzimap-green) !important;
    background: var(--izzimap-green-soft) !important;
    color: var(--izzimap-green-dark) !important;
    box-shadow: 0 4px 12px rgba(11, 116, 66, 0.10) !important;
    transform: translateY(-1px);
}

.izzigo-map-public button:focus-visible,
.izzigo-map-public-shell button:focus-visible,
.izzigo-map-frontend button:focus-visible,
.izzigo-map-desktop-shell button:focus-visible,
.izzigo-map-mobile-shell button:focus-visible,
.izzigo-map-public input:focus-visible,
.izzigo-map-public select:focus-visible,
.izzigo-map-public-shell input:focus-visible,
.izzigo-map-public-shell select:focus-visible {
    outline: 3px solid rgba(11, 116, 66, 0.20) !important;
    outline-offset: 2px !important;
}

/* Primary actions: search and explicit area search only. */
#izzigo-map-desktop-search-submit,
#izzigo-map-mobile-search-submit,
#izzigo-map-public-search-submit,
#izzigo-map-desktop-search-area,
#izzigo-map-mobile-search-area,
button[id*="izzigo-map"][id*="search-submit"],
button[id*="izzigo-map"][id*="search-area"] {
    border-color: var(--izzimap-green) !important;
    background: var(--izzimap-green) !important;
    color: var(--izzimap-white) !important;
}

#izzigo-map-desktop-search-submit:hover,
#izzigo-map-mobile-search-submit:hover,
#izzigo-map-public-search-submit:hover,
#izzigo-map-desktop-search-area:hover,
#izzigo-map-mobile-search-area:hover,
button[id*="izzigo-map"][id*="search-submit"]:hover,
button[id*="izzigo-map"][id*="search-area"]:hover {
    border-color: var(--izzimap-green-dark) !important;
    background: var(--izzimap-green-dark) !important;
    color: var(--izzimap-white) !important;
}

/* Filters are intentionally quieter than the primary search action. */
#izzigo-map-desktop-filters-toggle,
#izzigo-map-mobile-filters-toggle,
button[id*="izzigo-map"][id*="filter"] {
    border-color: var(--izzimap-border-strong) !important;
    background: var(--izzimap-cream-soft) !important;
    color: var(--izzimap-ink) !important;
}

/* Top secondary actions: soft outline, no red blocks. */
#izzigo-map-desktop-fit-all,
#izzigo-map-desktop-reload,
#izzigo-map-desktop-retry,
#izzigo-map-mobile-fit-all,
#izzigo-map-mobile-reload,
#izzigo-map-mobile-retry,
#izzigo-map-desktop-open-response,
#izzigo-map-mobile-open-response,
button[id*="izzigo-map"][id*="fit-all"],
button[id*="izzigo-map"][id*="reload"],
button[id*="izzigo-map"][id*="retry"] {
    border-color: rgba(11, 116, 66, 0.35) !important;
    background: var(--izzimap-white) !important;
    color: var(--izzimap-green-dark) !important;
}

/* Search form and sort fields. */
.izzigo-map-search,
.izzigo-map-search-form,
.izzigo-map-searchbar,
.izzigo-map-search-shell,
.izzigo-map-desktop-search,
.izzigo-map-mobile-search {
    background: var(--izzimap-white) !important;
}

.izzigo-map-public input[type="search"],
.izzigo-map-public input[type="text"],
.izzigo-map-public select,
.izzigo-map-public-shell input[type="search"],
.izzigo-map-public-shell input[type="text"],
.izzigo-map-public-shell select,
.izzigo-map-frontend input[type="search"],
.izzigo-map-frontend input[type="text"],
.izzigo-map-frontend select,
.izzigo-map-desktop-shell input[type="search"],
.izzigo-map-desktop-shell input[type="text"],
.izzigo-map-desktop-shell select,
.izzigo-map-mobile-shell input[type="search"],
.izzigo-map-mobile-shell input[type="text"],
.izzigo-map-mobile-shell select {
    min-height: 46px !important;
    border: 1px solid var(--izzimap-border) !important;
    border-radius: 12px !important;
    background: var(--izzimap-white) !important;
    color: var(--izzimap-ink) !important;
    box-shadow: none !important;
}

.izzigo-map-public input::placeholder,
.izzigo-map-public-shell input::placeholder,
.izzigo-map-frontend input::placeholder,
.izzigo-map-desktop-shell input::placeholder,
.izzigo-map-mobile-shell input::placeholder {
    color: #8a7b70 !important;
    opacity: 1 !important;
}

/* Main map frame. */
.izzigo-map-desktop-layout,
.izzigo-map-desktop-interface,
.izzigo-map-public-interface,
.izzigo-map-mobile-interface,
.izzigo-map-map-shell,
.izzigo-map-public__body {
    border: 1px solid var(--izzimap-border) !important;
    border-radius: 20px !important;
    background: var(--izzimap-white) !important;
    box-shadow: var(--izzimap-shadow) !important;
    overflow: hidden;
}

/* Results panel and headings. */
.izzigo-map-desktop-results-panel,
.izzigo-map-results-panel,
.izzigo-map-results-header,
.izzigo-map-desktop-results-header,
.izzigo-map-mobile-sheet,
.izzigo-map-bottom-sheet {
    background: var(--izzimap-white) !important;
    color: var(--izzimap-ink) !important;
}

.izzigo-map-results-header,
.izzigo-map-desktop-results-header {
    border-bottom: 1px solid var(--izzimap-border) !important;
}

/* Business cards: white, readable and visually calm. */
.izzigo-map-result-card {
    border: 1px solid var(--izzimap-border) !important;
    border-radius: 16px !important;
    background: var(--izzimap-white) !important;
    color: var(--izzimap-ink) !important;
    box-shadow: var(--izzimap-shadow-small) !important;
    overflow: hidden !important;
}

.izzigo-map-result-card:hover {
    border-color: rgba(11, 116, 66, 0.45) !important;
    box-shadow: 0 7px 20px rgba(61, 40, 27, 0.10) !important;
}

.izzigo-map-result-card.is-selected,
.izzigo-map-result-card[aria-current="true"] {
    border-color: var(--izzimap-green) !important;
    background: var(--izzimap-green-soft) !important;
    box-shadow: 0 0 0 2px rgba(11, 116, 66, 0.11), var(--izzimap-shadow-small) !important;
}

/* This element is a button and was receiving the website's red button style. */
.izzigo-map-result-card__select,
button.izzigo-map-result-card__select {
    min-height: 0 !important;
    width: 100% !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    color: var(--izzimap-ink) !important;
    box-shadow: none !important;
    text-align: left !important;
    transform: none !important;
}

.izzigo-map-result-card__select:hover,
button.izzigo-map-result-card__select:hover,
.izzigo-map-result-card__select:focus,
button.izzigo-map-result-card__select:focus {
    border: 0 !important;
    background: transparent !important;
    color: var(--izzimap-ink) !important;
    box-shadow: none !important;
    transform: none !important;
}

.izzigo-map-result-card__media {
    background: var(--izzimap-cream-soft) !important;
}

.izzigo-map-result-card__media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.izzigo-map-result-card__fallback {
    background: var(--izzimap-green-soft) !important;
    color: var(--izzimap-green-dark) !important;
}

.izzigo-map-result-card__content {
    background: var(--izzimap-white) !important;
    color: var(--izzimap-ink) !important;
}

.izzigo-map-result-card.is-selected .izzigo-map-result-card__content,
.izzigo-map-result-card[aria-current="true"] .izzigo-map-result-card__content {
    background: var(--izzimap-green-soft) !important;
}

.izzigo-map-result-card__category {
    color: var(--izzimap-green) !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    letter-spacing: .025em !important;
}

.izzigo-map-result-card__title {
    color: var(--izzimap-ink) !important;
    font-weight: 800 !important;
}

.izzigo-map-result-card__location,
.izzigo-map-result-card__focus {
    color: var(--izzimap-muted) !important;
}

.izzigo-map-result-card__footer {
    border-top: 1px solid var(--izzimap-border) !important;
    background: var(--izzimap-cream-soft) !important;
    color: var(--izzimap-muted) !important;
}

.izzigo-map-result-card__footer a,
.izzigo-map-popup-card__button {
    color: var(--izzimap-green-dark) !important;
    font-weight: 800 !important;
    text-decoration: none !important;
}

.izzigo-map-result-card__footer a:hover,
.izzigo-map-popup-card__button:hover {
    color: var(--izzimap-green) !important;
    text-decoration: underline !important;
}

.izzigo-map-result-card__badge,
.izzigo-map-filter-chip,
.izzigo-map-active-filter,
[class*="izzigo-map"][class*="chip"] {
    border: 1px solid rgba(11, 116, 66, 0.20) !important;
    background: var(--izzimap-green-soft) !important;
    color: var(--izzimap-green-dark) !important;
}

/*
 * MapLibre writes an inline transform to the marker element to place it at its
 * geographic coordinate. Never override that transform: doing so pins every
 * marker to the map container's top-left corner and breaks visual selection.
 */
.maplibregl-marker.izzigo-map-marker,
.maplibregl-marker.izzigo-map-cluster {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: auto !important;
    bottom: auto !important;
    margin: 0 !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    pointer-events: auto !important;
    touch-action: manipulation !important;
    will-change: transform !important;
}

/* Marker buttons must remain transparent; only the pin carries color. */
button.izzigo-map-marker,
.izzigo-map-marker {
    min-width: 0 !important;
    min-height: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
}

button.izzigo-map-marker:hover,
button.izzigo-map-marker:focus,
.izzigo-map-marker:hover,
.izzigo-map-marker:focus {
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.izzigo-map-marker__pin {
    background: var(--izzigo-marker-accent, var(--izzimap-green)) !important;
    color: var(--izzimap-white) !important;
    border-color: var(--izzimap-white) !important;
    box-shadow: 0 5px 14px rgba(7, 87, 51, 0.24) !important;
}

.izzigo-map-marker.is-selected .izzigo-map-marker__pin,
.izzigo-map-marker[aria-current="true"] .izzigo-map-marker__pin {
    box-shadow: 0 0 0 5px rgba(11, 116, 66, 0.18), 0 7px 18px rgba(7, 87, 51, 0.28) !important;
}

/* Clusters: one restrained green hierarchy rather than bright red circles. */
button.izzigo-map-cluster,
.izzigo-map-cluster {
    min-height: 38px !important;
    min-width: 38px !important;
    padding: 0 8px !important;
    border: 3px solid var(--izzimap-white) !important;
    border-radius: 999px !important;
    background: var(--izzimap-green) !important;
    background-image: none !important;
    color: var(--izzimap-white) !important;
    box-shadow: 0 0 0 4px rgba(11, 116, 66, 0.16), 0 6px 16px rgba(7, 87, 51, 0.22) !important;
    font-weight: 800 !important;
}

button.izzigo-map-cluster.is-medium,
.izzigo-map-cluster.is-medium {
    background: #09683b !important;
}

button.izzigo-map-cluster.is-large,
.izzigo-map-cluster.is-large {
    background: var(--izzimap-green-dark) !important;
}

button.izzigo-map-cluster:hover,
button.izzigo-map-cluster:focus,
.izzigo-map-cluster:hover,
.izzigo-map-cluster:focus {
    border-color: var(--izzimap-white) !important;
    background: var(--izzimap-green-dark) !important;
    color: var(--izzimap-white) !important;
    box-shadow: 0 0 0 5px rgba(11, 116, 66, 0.22), 0 7px 18px rgba(7, 87, 51, 0.28) !important;
}

/* Marker legend. */
.izzigo-map-marker-legend,
.izzigo-map-marker-legend__item {
    background: var(--izzimap-white) !important;
    color: var(--izzimap-ink) !important;
}

.izzigo-map-marker-legend__icon {
    color: var(--izzimap-white) !important;
    border-color: var(--izzimap-white) !important;
}

/* MapLibre controls and popups. */
.maplibregl-ctrl-group {
    border: 1px solid var(--izzimap-border) !important;
    border-radius: 12px !important;
    background: var(--izzimap-white) !important;
    box-shadow: 0 5px 16px rgba(61, 40, 27, 0.12) !important;
    overflow: hidden;
}

.maplibregl-ctrl-group button {
    min-height: 30px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background-color: var(--izzimap-white) !important;
    color: var(--izzimap-ink) !important;
    box-shadow: none !important;
}

.maplibregl-ctrl-group button:hover {
    background-color: var(--izzimap-green-soft) !important;
}

.maplibregl-popup-content {
    border: 1px solid var(--izzimap-border) !important;
    border-radius: 16px !important;
    background: var(--izzimap-white) !important;
    color: var(--izzimap-ink) !important;
    box-shadow: var(--izzimap-shadow) !important;
    overflow: hidden;
}

.maplibregl-popup-close-button {
    width: 34px !important;
    height: 34px !important;
    min-height: 0 !important;
    border: 0 !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, 0.94) !important;
    color: var(--izzimap-ink) !important;
    box-shadow: 0 2px 8px rgba(61, 40, 27, 0.10) !important;
}

.izzigo-map-popup-card,
.izzigo-map-popup-card__body {
    background: var(--izzimap-white) !important;
    color: var(--izzimap-ink) !important;
}

.izzigo-map-popup-card__meta {
    color: var(--izzimap-green) !important;
    font-weight: 800 !important;
}

.izzigo-map-popup-card__location,
.izzigo-map-popup-card__focus {
    color: var(--izzimap-muted) !important;
}

/* Filter panels, empty/loading states and notices. */
.izzigo-map-filter-panel,
.izzigo-map-filters-panel,
.izzigo-map-mobile-filters,
.izzigo-map-empty,
.izzigo-map-loading,
.izzigo-map-warning,
.izzigo-map-error {
    border-color: var(--izzimap-border) !important;
    background: var(--izzimap-white) !important;
    color: var(--izzimap-ink) !important;
}

.izzigo-map-warning {
    background: #fff8e7 !important;
    color: #765714 !important;
}

.izzigo-map-error {
    background: #fff4f2 !important;
    color: #8a3428 !important;
}

/* Bottom-sheet handle and mobile safe surfaces. */
.izzigo-map-bottom-sheet__handle,
.izzigo-map-mobile-sheet__handle,
.izzigo-map-sheet-handle {
    background: transparent !important;
}

.izzigo-map-bottom-sheet__handle::before,
.izzigo-map-mobile-sheet__handle::before,
.izzigo-map-sheet-handle::before {
    background: #b8aa9a !important;
}

/* Scrollbar remains subtle and on-brand. */
.izzigo-map-desktop-results,
.izzigo-map-mobile-results,
.izzigo-map-results-list {
    scrollbar-color: #a6bdae var(--izzimap-cream-soft);
    scrollbar-width: thin;
}

.izzigo-map-desktop-results::-webkit-scrollbar,
.izzigo-map-mobile-results::-webkit-scrollbar,
.izzigo-map-results-list::-webkit-scrollbar {
    width: 9px;
}

.izzigo-map-desktop-results::-webkit-scrollbar-track,
.izzigo-map-mobile-results::-webkit-scrollbar-track,
.izzigo-map-results-list::-webkit-scrollbar-track {
    background: var(--izzimap-cream-soft);
}

.izzigo-map-desktop-results::-webkit-scrollbar-thumb,
.izzigo-map-mobile-results::-webkit-scrollbar-thumb,
.izzigo-map-results-list::-webkit-scrollbar-thumb {
    border: 2px solid var(--izzimap-cream-soft);
    border-radius: 999px;
    background: #9eb4a6;
}

@media (max-width: 767px) {
    .izzigo-map-result-card {
        border-radius: 14px !important;
    }

    .izzigo-map-public button:not(.izzigo-map-marker):not(.izzigo-map-cluster):not(.maplibregl-ctrl button),
    .izzigo-map-public-shell button:not(.izzigo-map-marker):not(.izzigo-map-cluster):not(.maplibregl-ctrl button),
    .izzigo-map-frontend button:not(.izzigo-map-marker):not(.izzigo-map-cluster):not(.maplibregl-ctrl button),
    .izzigo-map-mobile-shell button:not(.izzigo-map-marker):not(.izzigo-map-cluster):not(.maplibregl-ctrl button) {
        min-height: 46px;
    }
}

@media (prefers-reduced-motion: reduce) {
    [class^="izzigo-map"],
    [class*=" izzigo-map"] {
        scroll-behavior: auto !important;
    }

    [class^="izzigo-map"] *,
    [class*=" izzigo-map"] * {
        transition-duration: .01ms !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
    }
}

/* ========================================================================
 * v1.0.3 — popup fitting, unified markers, useful legend and image cropping
 * ====================================================================== */

/* One branded marker language: category remains visible in cards and filters. */
button.izzigo-map-marker,
.izzigo-map-marker {
    --izzigo-marker-accent: var(--izzimap-green) !important;
}

.izzigo-map-marker__pin {
    background: var(--izzimap-green) !important;
}

/* Replace category letters with a neutral location target. */
.izzigo-map-marker__label {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    padding: 0 !important;
    font-size: 0 !important;
    line-height: 1 !important;
    color: transparent !important;
}

.izzigo-map-marker__label::before {
    content: "" !important;
    display: block !important;
    width: 9px !important;
    height: 9px !important;
    border: 2px solid #ffffff !important;
    border-radius: 50% !important;
    background: transparent !important;
    box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.18) !important;
}

/* The legend now explains the only two symbols travelers need. */
.izzigo-map-ui-legend-items {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    padding-top: 8px !important;
}

.izzigo-map-ui-legend-item {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    min-width: 0 !important;
    color: var(--izzimap-ink) !important;
}

.izzigo-map-ui-legend-icon {
    position: relative !important;
    display: inline-flex !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    justify-content: center !important;
    width: 30px !important;
    height: 30px !important;
    border: 3px solid #ffffff !important;
    border-radius: 50% !important;
    background: var(--izzimap-green) !important;
    color: #ffffff !important;
    box-shadow: 0 0 0 2px rgba(11, 116, 66, 0.14), 0 4px 10px rgba(7, 87, 51, 0.18) !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
}

.izzigo-map-ui-legend-item.is-place .izzigo-map-ui-legend-icon {
    width: 27px !important;
    height: 33px !important;
    border-radius: 50% 50% 50% 5px !important;
    transform: rotate(-45deg) !important;
}

.izzigo-map-ui-legend-item.is-place .izzigo-map-ui-legend-pin-dot {
    display: block !important;
    width: 8px !important;
    height: 8px !important;
    border: 2px solid #ffffff !important;
    border-radius: 50% !important;
    transform: rotate(45deg) !important;
}

.izzigo-map-ui-legend-label {
    min-width: 0 !important;
    color: var(--izzimap-ink) !important;
    font-size: 13px !important;
    line-height: 1.25 !important;
}

/* Every popup photo uses the same centered 16:9 crop, including portrait uploads. */
.izzigo-map-popup-card__image,
.maplibregl-popup .izzigo-map-popup-card__image {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    aspect-ratio: 16 / 9 !important;
    object-fit: cover !important;
    object-position: center center !important;
    background: var(--izzimap-cream-soft) !important;
}

/* Keep list thumbnails centered and consistently cropped without changing the compact list layout. */
.izzigo-map-result-card__media img {
    object-fit: cover !important;
    object-position: center center !important;
}

/* Popup dimensions are predictable, allowing the camera to keep the whole card visible. */
.maplibregl-popup {
    max-width: min(390px, calc(100vw - 36px)) !important;
    z-index: 12 !important;
}

.maplibregl-popup-content {
    width: min(390px, calc(100vw - 36px)) !important;
    max-height: calc(100vh - 110px) !important;
    padding: 0 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
}

.izzigo-map-popup-card__body {
    padding: 18px 20px 18px !important;
}

/* Perfectly center the × inside its circular control and block theme pseudo-icons. */
.maplibregl-popup-close-button {
    top: 9px !important;
    right: 9px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    min-height: 38px !important;
    padding: 0 0 2px !important;
    margin: 0 !important;
    font-family: Arial, sans-serif !important;
    font-size: 25px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    text-align: center !important;
    text-indent: 0 !important;
}

.maplibregl-popup-close-button::before,
.maplibregl-popup-close-button::after {
    content: none !important;
    display: none !important;
}

@media (max-width: 767px) {
    .maplibregl-popup,
    .maplibregl-popup-content {
        width: min(360px, calc(100vw - 28px)) !important;
        max-width: min(360px, calc(100vw - 28px)) !important;
    }

    .izzigo-map-popup-card__body {
        padding: 15px 16px 16px !important;
    }
}

/* ========================================================================
 * v1.0.4 — cleaner map canvas and centered popup composition
 * ====================================================================== */

/* The marker legend duplicated information already available in filters and
 * cards, so remove the whole panel from public and administrator map views. */
.izzigo-map-marker-legend,
.izzigo-map-marker-legend__items,
.izzigo-map-marker-legend__list,
[id*="izzigo-map"][id*="legend"] {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

/* Keep business pins usable but visually below the business card. */
.maplibregl-marker:has(.izzigo-map-marker),
.maplibregl-marker.izzigo-map-marker,
.izzigo-map-marker {
    z-index: 16 !important;
}

.maplibregl-marker:has(.izzigo-map-marker.is-selected),
.maplibregl-marker:has(.izzigo-map-marker[aria-current="true"]),
.izzigo-map-marker.is-selected,
.izzigo-map-marker[aria-current="true"] {
    z-index: 20 !important;
}

/* Popups always render above markers, while the marker remains beneath the
 * card at the selected geographic point. */
.maplibregl-popup,
.maplibregl-popup.izzigo-map-ui-popup {
    z-index: 100 !important;
}

.maplibregl-popup-content {
    position: relative !important;
    display: block !important;
    padding: 0 !important;
    overflow: hidden !important;
}

/* The close control floats directly over the photo instead of reserving a
 * separate white column. */
.maplibregl-popup-close-button {
    position: absolute !important;
    top: 12px !important;
    right: 12px !important;
    z-index: 8 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    min-height: 42px !important;
    padding: 0 0 2px !important;
    margin: 0 !important;
    border: 1px solid rgba(61, 40, 27, 0.16) !important;
    border-radius: 12px !important;
    background: rgba(255, 255, 255, 0.94) !important;
    color: var(--izzimap-green-dark) !important;
    box-shadow: 0 5px 16px rgba(61, 40, 27, 0.16) !important;
    font-family: Arial, sans-serif !important;
    font-size: 27px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    text-align: center !important;
    text-indent: 0 !important;
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
}

.maplibregl-popup-close-button:hover,
.maplibregl-popup-close-button:focus-visible {
    border-color: rgba(11, 116, 66, 0.34) !important;
    background: #ffffff !important;
    color: var(--izzimap-green-dark) !important;
    transform: none !important;
}

/* Make the image the complete popup header with no side gap. */
.izzigo-map-popup-card,
.izzigo-map-popup-card__image {
    width: 100% !important;
    max-width: 100% !important;
}

.izzigo-map-popup-card__image {
    border-radius: 0 !important;
}

/* Keep the popup tip clean and connected to the marker below. */
.maplibregl-popup-anchor-bottom .maplibregl-popup-tip,
.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip,
.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip {
    border-top-color: #ffffff !important;
}

@media (max-width: 767px) {
    .maplibregl-popup-close-button {
        top: 10px !important;
        right: 10px !important;
        width: 40px !important;
        height: 40px !important;
        min-width: 40px !important;
        min-height: 40px !important;
    }
}


/* Mobile/public fullscreen escape control. */
.izzigo-map-fullscreen-exit {
    position: absolute !important;
    top: max(14px, env(safe-area-inset-top)) !important;
    left: max(14px, env(safe-area-inset-left)) !important;
    right: auto !important;
    bottom: auto !important;
    z-index: 2147483646 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    width: auto !important;
    min-width: 0 !important;
    min-height: 46px !important;
    padding: 0 15px 0 10px !important;
    border: 1px solid rgba(7, 87, 51, 0.22) !important;
    border-radius: 14px !important;
    background: rgba(255, 255, 255, 0.96) !important;
    background-image: none !important;
    color: var(--izzimap-green-dark) !important;
    box-shadow: 0 6px 20px rgba(36, 27, 20, 0.18) !important;
    font-family: var(--izzimap-font) !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    cursor: pointer !important;
    transform: none !important;
    -webkit-tap-highlight-color: transparent !important;
}

.izzigo-map-fullscreen-exit:hover,
.izzigo-map-fullscreen-exit:focus-visible {
    border-color: var(--izzimap-green) !important;
    background: var(--izzimap-green-soft) !important;
    color: var(--izzimap-green-dark) !important;
    box-shadow: 0 7px 22px rgba(36, 27, 20, 0.20) !important;
    transform: none !important;
}

.izzigo-map-fullscreen-exit__icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 27px !important;
    height: 27px !important;
    border-radius: 50% !important;
    background: var(--izzimap-green) !important;
    color: #fff !important;
    font-family: Arial, sans-serif !important;
    font-size: 22px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
}

.izzigo-map-fullscreen-exit__label {
    display: inline-block !important;
    white-space: nowrap !important;
}

@media (max-width: 480px) {
    .izzigo-map-fullscreen-exit {
        top: max(10px, env(safe-area-inset-top)) !important;
        left: max(10px, env(safe-area-inset-left)) !important;
        min-height: 42px !important;
        padding: 0 12px 0 8px !important;
        font-size: 13px !important;
    }

    .izzigo-map-fullscreen-exit__icon {
        width: 25px !important;
        height: 25px !important;
        font-size: 20px !important;
    }
}


/* ========================================================================
 * v1.0.8 — mobile fullscreen header rows and bottom-sheet containment
 * ====================================================================== */

/* Row 1: Exit full screen on the left and Filters on the right. The filter
 * button is temporarily moved to the fullscreen root by JavaScript so its
 * absolute position is never constrained by the search form. */
.izzigo-map-ui-is-fullscreen .izzigo-map-fullscreen-exit {
    max-width: calc(100% - 96px - max(12px, env(safe-area-inset-right))) !important;
}

.izzigo-map-ui-is-fullscreen .izzigo-map-fullscreen-exit__label {
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.izzigo-map-ui-is-fullscreen .izzigo-map-ui-fullscreen-filter {
    position: absolute !important;
    top: max(10px, env(safe-area-inset-top)) !important;
    right: max(12px, env(safe-area-inset-right)) !important;
    left: auto !important;
    z-index: 2147483647 !important;
    width: 64px !important;
    min-width: 64px !important;
    max-width: 64px !important;
    min-height: 46px !important;
    margin: 0 !important;
}

/* Row 2: Search spans the full safe width below both first-row controls. */
.izzigo-map-ui-is-fullscreen .izzigo-map-ui-fullscreen-search-row {
    position: absolute !important;
    top: calc(max(10px, env(safe-area-inset-top)) + 60px) !important;
    left: max(12px, env(safe-area-inset-left)) !important;
    right: max(12px, env(safe-area-inset-right)) !important;
    z-index: 2147483644 !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
}

/* The results surface must visually cover pins. Max height is calculated from
 * the bottom of Search this area so the full sheet never consumes the map's
 * primary action area. */
.izzigo-map-ui-is-fullscreen .izzigo-map-mobile-sheet,
.izzigo-map-ui-is-fullscreen .izzigo-map-bottom-sheet {
    z-index: 320 !important;
    max-height: var(--izzigo-mobile-sheet-max-height, 62vh) !important;
    overflow: hidden !important;
    isolation: isolate !important;
}

.izzigo-map-ui-is-fullscreen .izzigo-map-mobile-sheet .izzigo-map-mobile-results,
.izzigo-map-ui-is-fullscreen .izzigo-map-bottom-sheet .izzigo-map-mobile-results,
.izzigo-map-ui-is-fullscreen .izzigo-map-mobile-sheet .izzigo-map-results-list,
.izzigo-map-ui-is-fullscreen .izzigo-map-bottom-sheet .izzigo-map-results-list {
    overscroll-behavior: contain !important;
}

.izzigo-map-ui-is-fullscreen .maplibregl-marker,
.izzigo-map-ui-is-fullscreen .maplibregl-marker.izzigo-map-marker,
.izzigo-map-ui-is-fullscreen .maplibregl-marker.izzigo-map-cluster {
    z-index: 18 !important;
}

.izzigo-map-ui-is-fullscreen .maplibregl-popup {
    z-index: 360 !important;
}

/* A recognisable text control replaces the ambiguous small sheet icon. */
.izzigo-map-sheet-close-results {
    position: absolute !important;
    top: 14px !important;
    right: max(14px, env(safe-area-inset-right)) !important;
    z-index: 350 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;
    width: auto !important;
    min-width: 0 !important;
    min-height: 40px !important;
    padding: 0 12px 0 9px !important;
    border: 1px solid rgba(11, 116, 66, 0.24) !important;
    border-radius: 12px !important;
    background: #ffffff !important;
    color: var(--izzimap-green-dark) !important;
    box-shadow: 0 3px 12px rgba(61, 40, 27, 0.10) !important;
    font-family: var(--izzimap-font) !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    cursor: pointer !important;
    transform: none !important;
}

.izzigo-map-sheet-close-results:hover,
.izzigo-map-sheet-close-results:focus-visible {
    border-color: var(--izzimap-green) !important;
    background: var(--izzimap-green-soft) !important;
    color: var(--izzimap-green-dark) !important;
    transform: none !important;
}

.izzigo-map-sheet-close-results__icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 24px !important;
    height: 24px !important;
    border-radius: 50% !important;
    background: var(--izzimap-green) !important;
    color: #ffffff !important;
    font-family: Arial, sans-serif !important;
    font-size: 17px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
}

.izzigo-map-sheet-close-results__label {
    display: inline-block !important;
}

/* Reserve room in the sheet heading for the explicit close control. */
.izzigo-map-ui-is-fullscreen .izzigo-map-mobile-sheet > :first-child,
.izzigo-map-ui-is-fullscreen .izzigo-map-bottom-sheet > :first-child {
    padding-right: 118px !important;
}

@media (max-width: 420px) {
    .izzigo-map-sheet-close-results {
        right: 10px !important;
        padding-right: 9px !important;
    }

    .izzigo-map-sheet-close-results__label {
        font-size: 12px !important;
    }
}

/* The count is already present in the bottom results sheet. Hiding the map
 * badge removes duplication and prevents collision with the search row. */
.izzigo-map-ui-is-fullscreen .izzigo-map-ui-fullscreen-count {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

@media (max-width: 380px) {
    .izzigo-map-ui-is-fullscreen .izzigo-map-fullscreen-exit {
        padding-right: 9px !important;
    }

    .izzigo-map-ui-is-fullscreen .izzigo-map-fullscreen-exit__label {
        max-width: 128px !important;
    }
}

/* ========================================================================
 * v1.0.9 — fullscreen stability architecture
 * ====================================================================== */

.izzigo-map-ui-is-fullscreen {
    position: relative !important;
    --izzigo-fullscreen-sheet-gap: 8px;
}

/* One measured header owns all fullscreen controls. */
.izzigo-map-ui-is-fullscreen .izzigo-map-fullscreen-header {
    position: absolute !important;
    top: max(10px, env(safe-area-inset-top)) !important;
    left: max(12px, env(safe-area-inset-left)) !important;
    right: max(12px, env(safe-area-inset-right)) !important;
    z-index: 2147483646 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    pointer-events: none !important;
}

.izzigo-map-ui-is-fullscreen .izzigo-map-fullscreen-header__top {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    min-width: 0 !important;
    pointer-events: none !important;
}

.izzigo-map-ui-is-fullscreen .izzigo-map-fullscreen-header__top > *,
.izzigo-map-ui-is-fullscreen .izzigo-map-fullscreen-header__search {
    pointer-events: auto !important;
}

.izzigo-map-ui-is-fullscreen .izzigo-map-fullscreen-header__search {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
}

/* Reset v1.0.8 independent absolute positioning. */
.izzigo-map-ui-is-fullscreen .izzigo-map-fullscreen-exit {
    position: static !important;
    inset: auto !important;
    flex: 0 1 auto !important;
    max-width: calc(100% - 74px) !important;
    min-height: 46px !important;
    margin: 0 !important;
}

.izzigo-map-ui-is-fullscreen .izzigo-map-ui-fullscreen-filter {
    position: static !important;
    inset: auto !important;
    flex: 0 0 62px !important;
    width: 62px !important;
    min-width: 62px !important;
    max-width: 62px !important;
    min-height: 46px !important;
    margin: 0 !important;
    z-index: auto !important;
}

.izzigo-map-ui-is-fullscreen .izzigo-map-ui-fullscreen-search-row {
    position: static !important;
    inset: auto !important;
    display: flex !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    z-index: auto !important;
}

.izzigo-map-ui-is-fullscreen .izzigo-map-ui-fullscreen-search-row input,
.izzigo-map-ui-is-fullscreen .izzigo-map-ui-fullscreen-search-row [type="search"] {
    min-width: 0 !important;
}

/* The actual filter panel remains inside the fullscreen rendering tree. */
.izzigo-map-ui-is-fullscreen .izzigo-map-fullscreen-filter-layer {
    position: absolute !important;
    top: calc(var(--izzigo-fullscreen-header-bottom, 120px) + 10px) !important;
    left: max(12px, env(safe-area-inset-left)) !important;
    right: max(12px, env(safe-area-inset-right)) !important;
    bottom: max(12px, env(safe-area-inset-bottom)) !important;
    z-index: 2147483643 !important;
    display: block !important;
    width: auto !important;
    pointer-events: none !important;
}

.izzigo-map-ui-is-fullscreen .izzigo-map-ui-fullscreen-filter-panel {
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    margin: 0 !important;
    overflow: auto !important;
    overscroll-behavior: contain !important;
    pointer-events: auto !important;
    z-index: auto !important;
}

.izzigo-map-ui-is-fullscreen .izzigo-map-ui-fullscreen-filter-panel[hidden],
.izzigo-map-ui-is-fullscreen .izzigo-map-ui-fullscreen-filter-panel[aria-hidden="true"] {
    display: none !important;
}

/* Keep native map controls below the real measured header. */
.izzigo-map-ui-is-fullscreen .maplibregl-ctrl-top-right {
    top: calc(var(--izzigo-fullscreen-header-bottom, 120px) + 10px) !important;
    right: max(10px, env(safe-area-inset-right)) !important;
}

.izzigo-map-ui-is-fullscreen #izzigo-map-mobile-search-area,
.izzigo-map-ui-is-fullscreen button[id*="izzigo-map-mobile"][id*="search-area"] {
    z-index: 290 !important;
}

/* Layer order: map < markers < selected marker < popup < results sheet < header. */
.izzigo-map-ui-is-fullscreen .maplibregl-marker,
.izzigo-map-ui-is-fullscreen .maplibregl-marker.izzigo-map-marker,
.izzigo-map-ui-is-fullscreen .maplibregl-marker.izzigo-map-cluster {
    z-index: 18 !important;
}

.izzigo-map-ui-is-fullscreen .maplibregl-marker.izzigo-map-marker.is-selected,
.izzigo-map-ui-is-fullscreen .maplibregl-marker.izzigo-map-marker[aria-current="true"],
.izzigo-map-ui-is-fullscreen .izzigo-map-marker.is-selected,
.izzigo-map-ui-is-fullscreen .izzigo-map-marker[aria-current="true"] {
    z-index: 28 !important;
}

.izzigo-map-ui-is-fullscreen .maplibregl-popup {
    z-index: 300 !important;
}

.izzigo-map-ui-is-fullscreen .izzigo-map-mobile-sheet,
.izzigo-map-ui-is-fullscreen .izzigo-map-bottom-sheet {
    z-index: 400 !important;
    max-height: var(--izzigo-mobile-sheet-max-height, 58vh) !important;
    overflow: hidden !important;
    isolation: isolate !important;
}

/* The duplicate map badge is hidden, while the count inside the sheet remains. */
.izzigo-map-ui-is-fullscreen .izzigo-map-ui-fullscreen-count {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

/* Put the action inside the real sheet header rather than over its text. */
.izzigo-map-ui-is-fullscreen .izzigo-map-ui-sheet-control-host {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    min-width: 0 !important;
}

.izzigo-map-ui-is-fullscreen .izzigo-map-ui-sheet-control-host > :not(.izzigo-map-sheet-close-results) {
    min-width: 0 !important;
}

.izzigo-map-ui-is-fullscreen .izzigo-map-sheet-close-results {
    position: static !important;
    inset: auto !important;
    z-index: auto !important;
    flex: 0 0 auto !important;
    margin: 0 0 0 auto !important;
    min-height: 40px !important;
    white-space: nowrap !important;
}

/* Cancel the older generic first-child padding workaround. */
.izzigo-map-ui-is-fullscreen .izzigo-map-mobile-sheet > :first-child,
.izzigo-map-ui-is-fullscreen .izzigo-map-bottom-sheet > :first-child {
    padding-right: inherit !important;
}

@media (max-width: 420px) {
    .izzigo-map-ui-is-fullscreen .izzigo-map-fullscreen-header {
        left: max(9px, env(safe-area-inset-left)) !important;
        right: max(9px, env(safe-area-inset-right)) !important;
        gap: 8px !important;
    }

    .izzigo-map-ui-is-fullscreen .izzigo-map-fullscreen-exit {
        min-height: 42px !important;
        max-width: calc(100% - 64px) !important;
    }

    .izzigo-map-ui-is-fullscreen .izzigo-map-ui-fullscreen-filter {
        flex-basis: 54px !important;
        width: 54px !important;
        min-width: 54px !important;
        max-width: 54px !important;
        min-height: 42px !important;
    }

    .izzigo-map-ui-is-fullscreen .izzigo-map-sheet-close-results__label {
        font-size: 12px !important;
    }
}

@media (max-height: 520px) and (orientation: landscape) {
    .izzigo-map-ui-is-fullscreen .izzigo-map-fullscreen-header {
        top: max(6px, env(safe-area-inset-top)) !important;
        gap: 6px !important;
    }

    .izzigo-map-ui-is-fullscreen .izzigo-map-fullscreen-exit,
    .izzigo-map-ui-is-fullscreen .izzigo-map-ui-fullscreen-filter {
        min-height: 38px !important;
    }

    .izzigo-map-ui-is-fullscreen .izzigo-map-fullscreen-exit__label {
        display: none !important;
    }

    .izzigo-map-ui-is-fullscreen .izzigo-map-fullscreen-exit {
        flex-basis: 42px !important;
        width: 42px !important;
        max-width: 42px !important;
        padding: 0 !important;
    }

    .izzigo-map-ui-is-fullscreen .izzigo-map-ui-fullscreen-search-row input,
    .izzigo-map-ui-is-fullscreen .izzigo-map-ui-fullscreen-search-row button {
        min-height: 40px !important;
    }
}


/* ========================================================================
 * v1.0.11 — stable guaranteed fullscreen Filters control
 * ====================================================================== */
.izzigo-map-ui-is-fullscreen .izzigo-map-fullscreen-header__top {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    width: 100% !important;
    gap: 10px !important;
}

.izzigo-map-ui-is-fullscreen .izzigo-map-fullscreen-exit {
    justify-self: start !important;
    max-width: 100% !important;
}

.izzigo-map-ui-is-fullscreen .izzigo-map-fullscreen-filter-proxy {
    justify-self: end !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    width: auto !important;
    min-width: 96px !important;
    max-width: none !important;
    padding: 0 15px !important;
    border-color: var(--izzimap-border-strong) !important;
    background: var(--izzimap-white) !important;
    color: var(--izzimap-green-dark) !important;
    white-space: nowrap !important;
}

.izzigo-map-ui-is-fullscreen .izzigo-map-fullscreen-filter-proxy.is-active,
.izzigo-map-ui-is-fullscreen .izzigo-map-fullscreen-filter-proxy[aria-expanded="true"] {
    border-color: var(--izzimap-green) !important;
    background: var(--izzimap-green-soft) !important;
}

.izzigo-map-ui-is-fullscreen .izzigo-map-fullscreen-filter-proxy__icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 18px !important;
    height: 18px !important;
    color: var(--izzimap-green) !important;
    font-family: Arial, sans-serif !important;
    font-size: 11px !important;
    line-height: 1 !important;
}

.izzigo-map-ui-is-fullscreen .izzigo-map-ui-fullscreen-original-filter {
    display: none !important;
}

.izzigo-map-ui-is-fullscreen .izzigo-map-fullscreen-header__search,
.izzigo-map-ui-is-fullscreen .izzigo-map-ui-fullscreen-search-row {
    width: 100% !important;
}

@media (max-width: 420px) {
    .izzigo-map-ui-is-fullscreen .izzigo-map-fullscreen-filter-proxy {
        min-width: 88px !important;
        padding: 0 12px !important;
        gap: 6px !important;
    }
}

@media (max-width: 340px) {
    .izzigo-map-ui-is-fullscreen .izzigo-map-fullscreen-filter-proxy__label {
        display: none !important;
    }
    .izzigo-map-ui-is-fullscreen .izzigo-map-fullscreen-filter-proxy {
        min-width: 46px !important;
        width: 46px !important;
        padding: 0 !important;
    }
}


/* ========================================================================
 * v1.0.12 — fullscreen filter cleanup and stable Search this area position
 * ====================================================================== */

/* The dedicated fullscreen proxy is the only filter toggle that may remain
 * visible. Hide all known core/theme variants so an older funnel button cannot
 * sit behind the Exit full screen control. Do not target controls inside the
 * actual filter panel. */
.izzigo-map-ui-is-fullscreen .izzigo-map-ui-fullscreen-original-filter,
.izzigo-map-ui-is-fullscreen #izzigo-map-mobile-filters-toggle:not(.izzigo-map-fullscreen-filter-proxy),
.izzigo-map-ui-is-fullscreen #izzigo-map-mobile-filter-toggle:not(.izzigo-map-fullscreen-filter-proxy),
.izzigo-map-ui-is-fullscreen button[id*="izzigo-map-mobile"][id*="filters-toggle"]:not(.izzigo-map-fullscreen-filter-proxy),
.izzigo-map-ui-is-fullscreen button[id*="izzigo-map-mobile"][id*="filter-toggle"]:not(.izzigo-map-fullscreen-filter-proxy),
.izzigo-map-ui-is-fullscreen .izzigo-map-mobile-filters-toggle:not(.izzigo-map-fullscreen-filter-proxy),
.izzigo-map-ui-is-fullscreen .izzigo-map-mobile-filter-toggle:not(.izzigo-map-fullscreen-filter-proxy),
.izzigo-map-ui-is-fullscreen [data-izzigo-map-filter-toggle]:not(.izzigo-map-fullscreen-filter-proxy),
.izzigo-map-ui-is-fullscreen button[aria-controls*="filter"][aria-expanded]:not(.izzigo-map-fullscreen-filter-proxy),
.izzigo-map-ui-is-fullscreen button[aria-label="Filters"]:not(.izzigo-map-fullscreen-filter-proxy),
.izzigo-map-ui-is-fullscreen button[title="Filters"]:not(.izzigo-map-fullscreen-filter-proxy) {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

/* Search this area is positioned with left:50% + translateX(-50%) by the map
 * UI. The generic button hover animation must never replace that transform. */
#izzigo-map-desktop-search-area,
#izzigo-map-mobile-search-area,
button[id*="izzigo-map"][id*="search-area"],
#izzigo-map-desktop-search-area:hover,
#izzigo-map-mobile-search-area:hover,
button[id*="izzigo-map"][id*="search-area"]:hover,
#izzigo-map-desktop-search-area:focus,
#izzigo-map-mobile-search-area:focus,
button[id*="izzigo-map"][id*="search-area"]:focus,
#izzigo-map-desktop-search-area:focus-visible,
#izzigo-map-mobile-search-area:focus-visible,
button[id*="izzigo-map"][id*="search-area"]:focus-visible,
#izzigo-map-desktop-search-area:active,
#izzigo-map-mobile-search-area:active,
button[id*="izzigo-map"][id*="search-area"]:active,
#izzigo-map-desktop-search-area[aria-pressed="true"],
#izzigo-map-mobile-search-area[aria-pressed="true"],
button[id*="izzigo-map"][id*="search-area"][aria-pressed="true"] {
    transform: translateX(-50%) !important;
}


/* ========================================================================
 * v1.0.13 — remove residual Visible badge and separate area search
 * ====================================================================== */

/* Any compact count element detected by the fullscreen cleanup is removed
 * from the map canvas. The count inside the results sheet is excluded in JS. */
.izzigo-map-ui-is-fullscreen .izzigo-map-ui-fullscreen-count {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/* Keep a stable visual gap below the measured two-row fullscreen header. */
.izzigo-map-ui-is-fullscreen #izzigo-map-mobile-search-area,
.izzigo-map-ui-is-fullscreen button[id*="izzigo-map-mobile"][id*="search-area"],
.izzigo-map-ui-is-fullscreen button[id*="izzigo-map"][id*="search-area"] {
    top: calc(var(--izzigo-fullscreen-header-bottom, 132px) + 20px) !important;
    margin-top: 0 !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
}

.izzigo-map-ui-is-fullscreen #izzigo-map-mobile-search-area:hover,
.izzigo-map-ui-is-fullscreen #izzigo-map-mobile-search-area:focus,
.izzigo-map-ui-is-fullscreen #izzigo-map-mobile-search-area:focus-visible,
.izzigo-map-ui-is-fullscreen #izzigo-map-mobile-search-area:active,
.izzigo-map-ui-is-fullscreen button[id*="izzigo-map"][id*="search-area"]:hover,
.izzigo-map-ui-is-fullscreen button[id*="izzigo-map"][id*="search-area"]:focus,
.izzigo-map-ui-is-fullscreen button[id*="izzigo-map"][id*="search-area"]:focus-visible,
.izzigo-map-ui-is-fullscreen button[id*="izzigo-map"][id*="search-area"]:active {
    top: calc(var(--izzigo-fullscreen-header-bottom, 132px) + 20px) !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
}


/* ========================================================================
 * v1.0.16 — preserve the working native sheet header and expose its icon
 * ====================================================================== */

/* The core uses the large results-summary header itself as the working
 * three-state sheet control on this mobile layout. Never resize or hide its
 * text. Only add the state glyph on the right. */
.izzigo-map-ui-is-fullscreen .izzigo-map-ui-native-sheet-state-control {
    position: relative !important;
}

.izzigo-map-ui-is-fullscreen .izzigo-map-ui-native-sheet-handle-control {
    width: 100% !important;
    max-width: none !important;
    min-height: 86px !important;
    padding-right: 78px !important;
    color: inherit !important;
    font-size: inherit !important;
    line-height: inherit !important;
    text-align: left !important;
    overflow: visible !important;
    transform: none !important;
}

.izzigo-map-ui-is-fullscreen .izzigo-map-ui-native-sheet-handle-control:hover,
.izzigo-map-ui-is-fullscreen .izzigo-map-ui-native-sheet-handle-control:focus-visible {
    transform: none !important;
}

/* Some IzziMap builds may expose a genuinely compact state control. Only
 * those small controls receive the fixed 44px treatment. */
.izzigo-map-ui-is-fullscreen button.izzigo-map-ui-native-sheet-compact-control,
.izzigo-map-ui-is-fullscreen [role="button"].izzigo-map-ui-native-sheet-compact-control {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 44px !important;
    min-width: 44px !important;
    max-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    padding: 0 !important;
    border: 1px solid rgba(11,116,66,.24) !important;
    border-radius: 12px !important;
    background: #fff !important;
    color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
    box-shadow: 0 3px 12px rgba(61,40,27,.08) !important;
    overflow: hidden !important;
    transform: none !important;
}

.izzigo-map-ui-is-fullscreen button.izzigo-map-ui-native-sheet-compact-control:hover,
.izzigo-map-ui-is-fullscreen button.izzigo-map-ui-native-sheet-compact-control:focus-visible,
.izzigo-map-ui-is-fullscreen [role="button"].izzigo-map-ui-native-sheet-compact-control:hover,
.izzigo-map-ui-is-fullscreen [role="button"].izzigo-map-ui-native-sheet-compact-control:focus-visible {
    border-color: var(--izzimap-green) !important;
    background: var(--izzimap-green-soft) !important;
    transform: none !important;
}

.izzigo-map-native-sheet-state-icon {
    position: relative !important;
    display: block !important;
    flex: 0 0 auto !important;
    width: 24px !important;
    height: 24px !important;
    border: 3px solid var(--izzimap-green) !important;
    border-radius: 4px !important;
    background: #fff !important;
    pointer-events: none !important;
    box-sizing: border-box !important;
}

.izzigo-map-ui-native-sheet-handle-control > .izzigo-map-native-sheet-state-icon {
    position: absolute !important;
    top: 50% !important;
    right: 24px !important;
    margin: 0 !important;
    transform: translateY(-50%) !important;
    z-index: 3 !important;
}

.izzigo-map-native-sheet-state-icon__fill {
    position: absolute !important;
    left: 3px !important;
    right: 3px !important;
    bottom: 3px !important;
    height: 5px !important;
    border-radius: 1px !important;
    background: var(--izzimap-green) !important;
    transition: height .18s ease !important;
}

.izzigo-map-ui-native-sheet-state-control.is-state-half .izzigo-map-native-sheet-state-icon__fill {
    height: 10px !important;
}

.izzigo-map-ui-native-sheet-state-control.is-state-full .izzigo-map-native-sheet-state-icon__fill {
    height: 15px !important;
}

/* Keep the single native filter close button above the panel and readable.
 * No second close button is injected. */
.izzigo-map-ui-is-fullscreen .izzigo-map-ui-native-filter-close {
    z-index: 30 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.izzigo-map-ui-is-fullscreen .izzigo-map-ui-filter-closed {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
}


/* ========================================================================
 * v1.0.17 — simplified bottom sheet controls
 * ====================================================================== */

/* The sheet is controlled by its native drag handle. Remove the two
 * redundant controls requested by the IzziGo UI review. */
.izzigo-map-ui-is-fullscreen .izzigo-map-sheet-close-results,
.izzigo-map-ui-is-fullscreen .izzigo-map-native-sheet-state-icon,
.izzigo-map-ui-is-fullscreen .izzigo-map-ui-hidden-sheet-state-control {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

/* Remove space that older refinement versions reserved for those controls. */
.izzigo-map-ui-is-fullscreen .izzigo-map-mobile-sheet > :first-child,
.izzigo-map-ui-is-fullscreen .izzigo-map-bottom-sheet > :first-child,
.izzigo-map-ui-is-fullscreen .izzigo-map-ui-native-sheet-handle-control {
    padding-right: 24px !important;
}

/* Keep the real summary/drag control full-width and readable. */
.izzigo-map-ui-is-fullscreen .izzigo-map-ui-native-sheet-handle-control {
    width: 100% !important;
    max-width: none !important;
    min-height: 86px !important;
    color: inherit !important;
    font-size: inherit !important;
    line-height: inherit !important;
    text-align: left !important;
    overflow: visible !important;
}


/* ========================================================================
 * v1.0.21 — compact public and preview mobile experience
 * ====================================================================== */
@media (max-width: 767px) {
    /* The normal in-page map should be compact; fullscreen has its own header. */
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact {
        --izzigo-mobile-control-gap: 10px;
    }

    /* Keep only Show all and Full screen in the permanent action toolbar. */
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-ui-mobile-toolbar {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
        align-items: stretch !important;
        gap: var(--izzigo-mobile-control-gap) !important;
        width: 100% !important;
        padding: 12px 14px !important;
        margin: 0 !important;
        background: var(--izzimap-white) !important;
    }

    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-ui-mobile-toolbar > * {
        min-width: 0 !important;
        margin: 0 !important;
    }

    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-ui-mobile-toolbar #izzigo-map-mobile-fit-all,
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-ui-mobile-toolbar [id*="izzigo-map-mobile"][id*="fit-all"],
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-ui-mobile-toolbar [id*="izzigo-map-mobile"][id*="fullscreen"] {
        width: 100% !important;
        min-height: 46px !important;
        padding: 0 14px !important;
        white-space: nowrap !important;
    }

    /* Reload is duplicated by Search this area. Retry appears only on errors. */
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-ui-mobile-reload,
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact #izzigo-map-mobile-reload,
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact [id*="izzigo-map-mobile"][id*="reload"] {
        display: none !important;
    }

    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-ui-mobile-retry,
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact #izzigo-map-mobile-retry,
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact [id*="izzigo-map-mobile"][id*="retry"] {
        display: none !important;
    }

    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact.izzigo-map-ui-has-error .izzigo-map-ui-mobile-retry,
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact.izzigo-map-ui-has-error #izzigo-map-mobile-retry,
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact.izzigo-map-ui-has-error [id*="izzigo-map-mobile"][id*="retry"] {
        display: inline-flex !important;
    }

    /* One visual search field plus a compact Filters control. */
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-ui-mobile-searchbar-row {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) 58px !important;
        align-items: stretch !important;
        gap: 10px !important;
        width: auto !important;
        margin: 0 14px !important;
        padding: 0 !important;
    }

    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-ui-mobile-search-compact {
        position: relative !important;
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
    }

    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-ui-mobile-search-compact input[type="search"],
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-ui-mobile-search-compact input[type="text"] {
        width: 100% !important;
        min-height: 50px !important;
        padding-left: 48px !important;
        padding-right: 52px !important;
        border-radius: 16px !important;
    }

    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-ui-mobile-search-compact #izzigo-map-mobile-search-submit,
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-ui-mobile-search-compact button[type="submit"] {
        position: absolute !important;
        top: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        z-index: 2 !important;
        width: 50px !important;
        min-width: 50px !important;
        min-height: 50px !important;
        padding: 0 !important;
        border-width: 0 0 0 1px !important;
        border-style: solid !important;
        border-color: var(--izzimap-border) !important;
        border-radius: 0 16px 16px 0 !important;
        background: transparent !important;
        color: var(--izzimap-green-dark) !important;
        box-shadow: none !important;
        transform: none !important;
    }

    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-ui-mobile-filter-compact {
        width: 58px !important;
        min-width: 58px !important;
        min-height: 50px !important;
        padding: 0 !important;
        margin: 0 !important;
        border-radius: 16px !important;
        font-size: 0 !important;
    }

    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-ui-mobile-filter-compact [class*="count"],
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-ui-mobile-filter-compact [data-count] {
        position: absolute !important;
        top: 5px !important;
        right: 5px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        min-width: 18px !important;
        height: 18px !important;
        padding: 0 4px !important;
        border-radius: 999px !important;
        background: var(--izzimap-green) !important;
        color: #ffffff !important;
        font-size: 11px !important;
        font-weight: 800 !important;
        line-height: 1 !important;
    }

    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-ui-mobile-filter-compact::before {
        content: "" !important;
        display: block !important;
        width: 20px !important;
        height: 20px !important;
        margin: auto !important;
        background: currentColor !important;
        clip-path: polygon(0 0, 100% 0, 63% 43%, 63% 100%, 37% 84%, 37% 43%) !important;
    }

    /* The bottom sheet already contains the result count. */
    .izzigo-map-ui-mobile-count-badge {
        display: none !important;
        visibility: hidden !important;
        pointer-events: none !important;
    }

    /* Search this area is contextual and appears only after map interaction. */
    .izzigo-map-ui-search-area-contextual.izzigo-map-ui-context-hidden {
        display: none !important;
        visibility: hidden !important;
        pointer-events: none !important;
    }

    .izzigo-map-ui-search-area-contextual:not(.izzigo-map-ui-context-hidden) {
        transition: opacity .16s ease, box-shadow .16s ease !important;
    }

    /* A calmer collapsed sheet preserves more map space. */
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-mobile-sheet,
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-bottom-sheet {
        border-radius: 24px 24px 0 0 !important;
        box-shadow: 0 -6px 20px rgba(61, 40, 27, 0.10) !important;
    }

    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-mobile-sheet__header,
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-bottom-sheet__header,
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-ui-native-sheet-control {
        min-height: 92px !important;
        padding: 28px 20px 14px !important;
    }

    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-mobile-sheet__header p,
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-bottom-sheet__header p,
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-ui-native-sheet-control p {
        margin-top: 3px !important;
        font-size: 13px !important;
        line-height: 1.25 !important;
    }

    /* Reduce visual weight: no permanent outer halo around every cluster. */
    .izzigo-map-ui-mobile-compact button.izzigo-map-cluster,
    .izzigo-map-ui-mobile-compact .izzigo-map-cluster {
        border-width: 2px !important;
        box-shadow: 0 4px 12px rgba(7, 87, 51, 0.24) !important;
    }

    .izzigo-map-ui-mobile-compact .izzigo-map-marker__pin {
        box-shadow: 0 4px 11px rgba(7, 87, 51, 0.22) !important;
    }

    .izzigo-map-ui-mobile-compact .izzigo-map-marker.is-selected .izzigo-map-marker__pin,
    .izzigo-map-ui-mobile-compact .izzigo-map-marker[aria-current="true"] .izzigo-map-marker__pin {
        box-shadow: 0 0 0 4px rgba(11, 116, 66, 0.17), 0 5px 13px rgba(7, 87, 51, 0.26) !important;
    }

    /* Keep attribution accessible but visually quiet. */
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .maplibregl-ctrl-attrib {
        font-size: 10px !important;
        opacity: .78 !important;
    }
}


/* ========================================================================
 * v1.0.21 — public shortcode wrapper coverage
 * ====================================================================== */
@media (max-width: 767px) {
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-public #izzigo-map-mobile-reload,
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-public-shell #izzigo-map-mobile-reload,
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-frontend #izzigo-map-mobile-reload,
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-public [id*="izzigo-map-mobile"][id*="reload"],
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-public-shell [id*="izzigo-map-mobile"][id*="reload"],
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-frontend [id*="izzigo-map-mobile"][id*="reload"] {
        display: none !important;
    }

    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-public #izzigo-map-mobile-retry,
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-public-shell #izzigo-map-mobile-retry,
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-frontend #izzigo-map-mobile-retry,
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-public [id*="izzigo-map-mobile"][id*="retry"],
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-public-shell [id*="izzigo-map-mobile"][id*="retry"],
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-frontend [id*="izzigo-map-mobile"][id*="retry"] {
        display: none !important;
    }

    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-public.izzigo-map-ui-has-error #izzigo-map-mobile-retry,
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-public-shell.izzigo-map-ui-has-error #izzigo-map-mobile-retry,
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-frontend.izzigo-map-ui-has-error #izzigo-map-mobile-retry {
        display: inline-flex !important;
    }
}


/* ========================================================================
 * v1.0.23 — simplified public mobile toolbar and complete badge-shell cleanup
 * ====================================================================== */
@media (max-width: 767px) {
    /* Only Full screen remains as a permanent normal-view map action. */
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-ui-mobile-toolbar {
        grid-template-columns: minmax(0, 1fr) !important;
        padding: 12px 14px !important;
    }

    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-ui-mobile-toolbar #izzigo-map-mobile-fit-all,
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-ui-mobile-toolbar [id*="izzigo-map-mobile"][id*="fit-all"] {
        display: none !important;
    }

    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-ui-mobile-toolbar [id*="izzigo-map-mobile"][id*="fullscreen"],
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-ui-mobile-toolbar #izzigo-map-mobile-fullscreen {
        width: 100% !important;
        min-height: 48px !important;
        margin: 0 !important;
    }

    /* The rebuilt form contains only icon, input and submit action. */
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-ui-mobile-searchbar-row {
        grid-template-columns: minmax(0, 1fr) 58px !important;
        gap: 10px !important;
        align-items: center !important;
        margin: 0 14px !important;
    }

    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-ui-mobile-search-rebuilt {
        display: block !important;
        min-width: 0 !important;
        width: 100% !important;
        height: 54px !important;
        min-height: 54px !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        overflow: visible !important;
    }

    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-ui-mobile-search-field {
        position: relative !important;
        display: flex !important;
        align-items: center !important;
        width: 100% !important;
        height: 54px !important;
        min-height: 54px !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 1px solid var(--izzimap-border-strong) !important;
        border-radius: 16px !important;
        background: var(--izzimap-white) !important;
        box-shadow: 0 4px 14px rgba(61, 40, 27, 0.08) !important;
        overflow: hidden !important;
    }

    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-ui-mobile-search-icon {
        position: absolute !important;
        left: 18px !important;
        top: 50% !important;
        z-index: 3 !important;
        width: 17px !important;
        height: 17px !important;
        border: 3px solid var(--izzimap-muted) !important;
        border-radius: 50% !important;
        transform: translateY(-56%) !important;
        pointer-events: none !important;
    }

    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-ui-mobile-search-icon::after {
        content: "" !important;
        position: absolute !important;
        right: -7px !important;
        bottom: -5px !important;
        width: 8px !important;
        height: 3px !important;
        border-radius: 999px !important;
        background: var(--izzimap-muted) !important;
        transform: rotate(45deg) !important;
        transform-origin: left center !important;
    }

    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-ui-mobile-search-rebuilt input[type="search"],
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-ui-mobile-search-rebuilt input[type="text"] {
        display: block !important;
        flex: 1 1 auto !important;
        width: 100% !important;
        min-width: 0 !important;
        height: 52px !important;
        min-height: 52px !important;
        margin: 0 !important;
        padding: 0 58px 0 52px !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        color: var(--izzimap-ink) !important;
        font-size: 16px !important;
        line-height: 1.2 !important;
        text-overflow: ellipsis !important;
    }

    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-ui-mobile-search-rebuilt #izzigo-map-mobile-search-submit,
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-ui-mobile-search-rebuilt button[type="submit"] {
        position: absolute !important;
        top: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        z-index: 4 !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 54px !important;
        min-width: 54px !important;
        height: 54px !important;
        min-height: 54px !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        border-left: 1px solid var(--izzimap-border) !important;
        border-radius: 0 !important;
        background: var(--izzimap-white) !important;
        color: var(--izzimap-green-dark) !important;
        box-shadow: none !important;
        transform: none !important;
    }

    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-ui-mobile-search-rebuilt #izzigo-map-mobile-search-submit:hover,
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-ui-mobile-search-rebuilt #izzigo-map-mobile-search-submit:focus,
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-ui-mobile-search-rebuilt button[type="submit"]:hover,
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-ui-mobile-search-rebuilt button[type="submit"]:focus {
        background: var(--izzimap-green-soft) !important;
        transform: none !important;
    }

    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-compact .izzigo-map-ui-mobile-search-legacy {
        display: none !important;
        visibility: hidden !important;
        width: 0 !important;
        height: 0 !important;
        min-width: 0 !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
    }

    /* Hide both the count text and its compact wrapper, preventing an empty pill. */
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-count-badge,
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-count-badge-container,
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-count-badge-shell {
        display: none !important;
        visibility: hidden !important;
        width: 0 !important;
        height: 0 !important;
        min-width: 0 !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        overflow: hidden !important;
        pointer-events: none !important;
    }
}


/* ========================================================================
 * v1.0.24 — remove anonymous residual mobile count shell
 * ====================================================================== */
@media (max-width: 767px) {
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-residual-empty-pill {
        display: none !important;
        visibility: hidden !important;
        width: 0 !important;
        height: 0 !important;
        min-width: 0 !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        overflow: hidden !important;
        pointer-events: none !important;
    }
}


/* ========================================================================
 * v1.0.26 — remove obsolete mobile status container
 * ====================================================================== */

/* JavaScript removes this node from the DOM. This rule is only a no-flash
 * fallback for the brief interval before the companion script initializes. */
.izzigo-map-mobile-status {
    display: none !important;
}


/* ========================================================================
 * v1.0.27 — fullscreen search uses the same compact one-line mobile form
 * ====================================================================== */
.izzigo-map-ui-is-fullscreen .izzigo-map-fullscreen-header__search {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 56px !important;
    min-height: 56px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    overflow: visible !important;
}

.izzigo-map-ui-is-fullscreen .izzigo-map-ui-fullscreen-search-row.izzigo-map-ui-mobile-search-rebuilt,
.izzigo-map-ui-is-fullscreen .izzigo-map-ui-fullscreen-search-row {
    position: static !important;
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: 56px !important;
    min-height: 56px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}

.izzigo-map-ui-is-fullscreen .izzigo-map-ui-fullscreen-search-row .izzigo-map-ui-mobile-search-field {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: 56px !important;
    min-height: 56px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid var(--izzimap-border-strong) !important;
    border-radius: 16px !important;
    background: var(--izzimap-white) !important;
    box-shadow: 0 5px 16px rgba(61, 40, 27, 0.10) !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

.izzigo-map-ui-is-fullscreen .izzigo-map-ui-fullscreen-search-row .izzigo-map-ui-mobile-search-icon {
    position: absolute !important;
    left: 18px !important;
    top: 50% !important;
    z-index: 3 !important;
    display: block !important;
    width: 17px !important;
    height: 17px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 3px solid var(--izzimap-muted) !important;
    border-radius: 50% !important;
    background: transparent !important;
    transform: translateY(-56%) !important;
    pointer-events: none !important;
    box-sizing: border-box !important;
}

.izzigo-map-ui-is-fullscreen .izzigo-map-ui-fullscreen-search-row .izzigo-map-ui-mobile-search-icon::after {
    content: "" !important;
    position: absolute !important;
    right: -7px !important;
    bottom: -5px !important;
    width: 8px !important;
    height: 3px !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: var(--izzimap-muted) !important;
    transform: rotate(45deg) !important;
    transform-origin: left center !important;
}

.izzigo-map-ui-is-fullscreen .izzigo-map-ui-fullscreen-search-row input[type="search"],
.izzigo-map-ui-is-fullscreen .izzigo-map-ui-fullscreen-search-row input[type="text"] {
    position: static !important;
    display: block !important;
    flex: 1 1 auto !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: 54px !important;
    min-height: 54px !important;
    margin: 0 !important;
    padding: 0 62px 0 52px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: var(--izzimap-ink) !important;
    font-size: 16px !important;
    line-height: 1.2 !important;
    text-overflow: ellipsis !important;
    box-sizing: border-box !important;
}

.izzigo-map-ui-is-fullscreen .izzigo-map-ui-fullscreen-search-row input[type="search"]:focus,
.izzigo-map-ui-is-fullscreen .izzigo-map-ui-fullscreen-search-row input[type="text"]:focus {
    outline: 0 !important;
    box-shadow: none !important;
}

.izzigo-map-ui-is-fullscreen .izzigo-map-ui-fullscreen-search-row #izzigo-map-mobile-search-submit,
.izzigo-map-ui-is-fullscreen .izzigo-map-ui-fullscreen-search-row button[type="submit"] {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: auto !important;
    z-index: 4 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 56px !important;
    min-width: 56px !important;
    max-width: 56px !important;
    height: 56px !important;
    min-height: 56px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-left: 1px solid var(--izzimap-border) !important;
    border-radius: 0 !important;
    background: var(--izzimap-white) !important;
    color: var(--izzimap-green-dark) !important;
    box-shadow: none !important;
    transform: none !important;
    box-sizing: border-box !important;
}

.izzigo-map-ui-is-fullscreen .izzigo-map-ui-fullscreen-search-row #izzigo-map-mobile-search-submit:hover,
.izzigo-map-ui-is-fullscreen .izzigo-map-ui-fullscreen-search-row #izzigo-map-mobile-search-submit:focus,
.izzigo-map-ui-is-fullscreen .izzigo-map-ui-fullscreen-search-row #izzigo-map-mobile-search-submit:active,
.izzigo-map-ui-is-fullscreen .izzigo-map-ui-fullscreen-search-row button[type="submit"]:hover,
.izzigo-map-ui-is-fullscreen .izzigo-map-ui-fullscreen-search-row button[type="submit"]:focus,
.izzigo-map-ui-is-fullscreen .izzigo-map-ui-fullscreen-search-row button[type="submit"]:active {
    background: var(--izzimap-green-soft) !important;
    transform: none !important;
}

.izzigo-map-ui-is-fullscreen .izzigo-map-ui-fullscreen-search-row .izzigo-map-ui-mobile-search-legacy {
    display: none !important;
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
}


/* ========================================================================
 * v1.0.28 — open mobile filters must cover the normal map toolbar
 * ====================================================================== */
@media (max-width: 767px) {
    /* The filter surface owns the top layer while it is open. */
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-filter-panel-open,
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-filter-panel-open.izzigo-map-filter-panel,
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-filter-panel-open.izzigo-map-filters-panel,
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-filter-panel-open.izzigo-map-mobile-filters {
        z-index: 2147483000 !important;
        isolation: isolate !important;
    }

    /* Lower the complete normal toolbar, not only the button, so no part can
       appear between filter fields while the panel scrolls. */
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-filter-is-open .izzigo-map-ui-mobile-toolbar,
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-filter-is-open [class*="mobile-toolbar"],
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-filter-is-open [class*="map-toolbar"] {
        position: relative !important;
        z-index: 0 !important;
        pointer-events: none !important;
    }

    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-filter-is-open #izzigo-map-mobile-fullscreen,
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-filter-is-open [id*="izzigo-map-mobile"][id*="fullscreen"],
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-mobile-filter-is-open button[class*="fullscreen"] {
        position: relative !important;
        z-index: 0 !important;
        pointer-events: none !important;
    }
}


/* ========================================================================
 * v1.0.29 — mobile result sheet always covers map pins
 * ====================================================================== */
@media (max-width: 767px) {
    /* In normal mobile view the draggable results surface must own the layer
       above the MapLibre marker DOM. Do not change its transform or position,
       because those are controlled by the native bottom-sheet implementation. */
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-mobile-sheet,
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-bottom-sheet {
        z-index: 400 !important;
        isolation: isolate !important;
    }

    /* Normal and selected business pins stay inside the map layer. */
    html:not(.izzigo-map-ui-fullscreen-active) .maplibregl-marker,
    html:not(.izzigo-map-ui-fullscreen-active) .maplibregl-marker.izzigo-map-marker,
    html:not(.izzigo-map-ui-fullscreen-active) .maplibregl-marker.izzigo-map-cluster,
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-marker,
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-cluster {
        z-index: 8 !important;
    }

    html:not(.izzigo-map-ui-fullscreen-active) .maplibregl-marker.izzigo-map-marker.is-selected,
    html:not(.izzigo-map-ui-fullscreen-active) .maplibregl-marker.izzigo-map-marker[aria-current="true"],
    html:not(.izzigo-map-ui-fullscreen-active) .maplibregl-marker:has(.izzigo-map-marker.is-selected),
    html:not(.izzigo-map-ui-fullscreen-active) .maplibregl-marker:has(.izzigo-map-marker[aria-current="true"]),
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-marker.is-selected,
    html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-marker[aria-current="true"] {
        z-index: 12 !important;
    }

    /* Popups may remain above map pins but never cover the results sheet. */
    html:not(.izzigo-map-ui-fullscreen-active) .maplibregl-popup,
    html:not(.izzigo-map-ui-fullscreen-active) .maplibregl-popup.izzigo-map-ui-popup {
        z-index: 120 !important;
    }
}


/* ========================================================================
 * v1.0.30 — lighter Google-Maps-style Search this area button
 * ====================================================================== */
#izzigo-map-desktop-search-area,
#izzigo-map-mobile-search-area,
button[id*="izzigo-map"][id*="search-area"],
.izzigo-map-ui-search-area-contextual {
    min-height: 40px !important;
    height: auto !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: calc(100% - 32px) !important;
    padding: 10px 16px !important;
    border: 1px solid rgba(61, 40, 27, 0.10) !important;
    border-radius: 999px !important;
    background: var(--izzimap-white) !important;
    background-image: none !important;
    color: var(--izzimap-green-dark) !important;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.12) !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1.1 !important;
    letter-spacing: 0 !important;
    white-space: nowrap !important;
    text-align: center !important;
    z-index: 260 !important;
}

#izzigo-map-desktop-search-area:hover,
#izzigo-map-mobile-search-area:hover,
button[id*="izzigo-map"][id*="search-area"]:hover,
.izzigo-map-ui-search-area-contextual:hover,
#izzigo-map-desktop-search-area:focus,
#izzigo-map-mobile-search-area:focus,
button[id*="izzigo-map"][id*="search-area"]:focus,
.izzigo-map-ui-search-area-contextual:focus,
#izzigo-map-desktop-search-area:focus-visible,
#izzigo-map-mobile-search-area:focus-visible,
button[id*="izzigo-map"][id*="search-area"]:focus-visible,
.izzigo-map-ui-search-area-contextual:focus-visible,
#izzigo-map-desktop-search-area:active,
#izzigo-map-mobile-search-area:active,
button[id*="izzigo-map"][id*="search-area"]:active,
.izzigo-map-ui-search-area-contextual:active,
#izzigo-map-desktop-search-area[aria-pressed="true"],
#izzigo-map-mobile-search-area[aria-pressed="true"],
button[id*="izzigo-map"][id*="search-area"][aria-pressed="true"],
.izzigo-map-ui-search-area-contextual[aria-pressed="true"] {
    border-color: rgba(11, 116, 66, 0.22) !important;
    background: var(--izzimap-white) !important;
    color: var(--izzimap-green-dark) !important;
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.14) !important;
}

html:not(.izzigo-map-ui-fullscreen-active) #izzigo-map-mobile-search-area,
html:not(.izzigo-map-ui-fullscreen-active) button[id*="izzigo-map-mobile"][id*="search-area"],
html:not(.izzigo-map-ui-fullscreen-active) .izzigo-map-ui-search-area-contextual {
    z-index: 140 !important;
}

.izzigo-map-ui-is-fullscreen #izzigo-map-mobile-search-area,
.izzigo-map-ui-is-fullscreen button[id*="izzigo-map-mobile"][id*="search-area"],
.izzigo-map-ui-is-fullscreen .izzigo-map-ui-search-area-contextual {
    z-index: 290 !important;
}

/* ========================================================================
 * v1.0.31 — IzziGo red traveler save and collection controls
 * ====================================================================== */
.izzigo-map-public .izzigo-map-traveler-actions .izzigo-map-traveler-save,
.izzigo-map-public .izzigo-map-traveler-actions a.izzigo-map-traveler-save {
    border-color: #ff3152 !important;
    background: #ff3152 !important;
    background-image: none !important;
    color: #ffffff !important;
    box-shadow: 0 7px 18px rgba(255, 49, 82, 0.18) !important;
}

.izzigo-map-public .izzigo-map-traveler-actions .izzigo-map-traveler-save.is-saved {
    border-color: rgba(201, 30, 60, 0.25) !important;
    background: #fff0f3 !important;
    background-image: none !important;
    color: #c91e3c !important;
    box-shadow: none !important;
}

.izzigo-map-public .izzigo-map-traveler-actions .izzigo-map-traveler-collections {
    border-color: rgba(135, 99, 43, 0.28) !important;
    background: #fff3dd !important;
    background-image: none !important;
    color: #76531e !important;
    box-shadow: none !important;
}

.izzigo-map-public .izzigo-map-traveler-actions button:hover,
.izzigo-map-public .izzigo-map-traveler-actions a:hover,
.izzigo-map-public .izzigo-map-traveler-actions button:focus,
.izzigo-map-public .izzigo-map-traveler-actions a:focus {
    filter: none !important;
}

.izzigo-map-traveler-modal .izzigo-map-traveler-create-collection button,
.izzigo-map-traveler-modal .izzigo-map-traveler-collection-choice.is-selected .izzigo-map-traveler-collection-choice__status {
    background: #ff3152 !important;
    color: #ffffff !important;
}


/* ========================================================================
 * v1.0.32 — protected IzziGo traveler trip controls
 * ====================================================================== */
.izzigo-map-public .izzigo-map-traveler-actions .izzigo-map-traveler-trips {
    border-color: rgba(201, 30, 60, 0.22) !important;
    background: #fff0f3 !important;
    background-image: none !important;
    color: #b91d3a !important;
    box-shadow: none !important;
}

.izzigo-map-traveler-modal .izzigo-map-traveler-create-trip button,
.izzigo-map-traveler-modal .izzigo-map-traveler-trip-choice.is-selected .izzigo-map-traveler-trip-choice__status {
    background: #ff3152 !important;
    color: #ffffff !important;
}

.izzigo-map-public[data-traveler-view="trip"] #izzigo-map-desktop-search-area,
.izzigo-map-public[data-traveler-view="trip"] #izzigo-map-mobile-search-area,
.izzigo-map-public[data-traveler-view="trip"] .izzigo-map-ui-search-area-contextual {
    display: none !important;
}

/* ========================================================================
 * v1.0.33 — protected IzziGo traveler Follow controls
 * ====================================================================== */
.izzigo-map-public .izzigo-map-traveler-actions .izzigo-map-traveler-follow {
  border:1px solid rgba(135,99,43,.34)!important;
  background:linear-gradient(180deg,#fffdf7,#fff3dd)!important;
  color:#76531e!important;
  box-shadow:0 7px 18px rgba(135,99,43,.10)!important;
}
.izzigo-map-public .izzigo-map-traveler-actions .izzigo-map-traveler-follow.is-following {
  border-color:transparent!important;
  background:linear-gradient(135deg,#ff3152,#c91e3c)!important;
  color:#fff!important;
  box-shadow:0 8px 20px rgba(201,30,60,.20)!important;
}
.izzigo-map-public .izzigo-map-traveler-actions .izzigo-map-traveler-follow:hover,
.izzigo-map-public .izzigo-map-traveler-actions .izzigo-map-traveler-follow:focus {
  transform:translateY(-1px)!important;
}


/* v1.0.34 — private traveler recommendation map controls. */
.izzigo-map-public .izzigo-map-recommendation-filters {
    box-shadow: 0 10px 26px rgba(92, 39, 57, .06);
}

.izzigo-map-public .izzigo-map-recommendation-filters__chips button,
.izzigo-map-public .izzigo-map-recommendation-filters__edit {
    letter-spacing: 0;
    text-transform: none;
}

.izzigo-map-public .izzigo-map-recommendation-filters__chips button::before,
.izzigo-map-public .izzigo-map-recommendation-filters__chips button::after,
.izzigo-map-public .izzigo-map-recommendation-filters__edit::before,
.izzigo-map-public .izzigo-map-recommendation-filters__edit::after {
    content: none !important;
    display: none !important;
}

.izzigo-map-public .izzigo-map-traveler-scope__tabs > a.is-recommended {
    gap: 6px;
}

.izzigo-map-public .izzigo-map-traveler-scope__tabs > a.is-recommended::before {
    content: "✦";
    display: inline-block;
    font-size: 12px;
    line-height: 1;
}

@media (max-width: 760px) {
    .izzigo-map-public .izzigo-map-recommendation-filters__copy small {
        max-width: 42rem;
    }

    .izzigo-map-public .izzigo-map-recommendation-filters__chips {
        margin-inline: -2px;
        scroll-snap-type: x proximity;
    }

    .izzigo-map-public .izzigo-map-recommendation-filters__chips button {
        scroll-snap-align: start;
    }
}

/* v1.0.35 — protect transparent recommendation controls from theme styles. */
.izzigo-map-public[data-traveler-view="recommended"] .izzigo-map-recommendation-insight{
    flex:1 0 100%!important;
    width:100%!important;
    margin:2px 0!important;
    border:1px solid rgba(255,49,82,.18)!important;
    border-radius:13px!important;
    background:#fff5f7!important;
    box-shadow:none!important;
}
.izzigo-map-public[data-traveler-view="recommended"] .izzigo-map-recommendation-insight summary{
    min-height:36px!important;
    padding:7px 10px!important;
    background:transparent!important;
    color:#a81c37!important;
    font-size:11px!important;
    font-weight:900!important;
    text-transform:none!important;
    letter-spacing:0!important;
}
.izzigo-map-public[data-traveler-view="recommended"] .izzigo-map-recommendation-feedback button,
.izzigo-map-public[data-traveler-view="recommended"] button.izzigo-map-recommendation-filters__restore{
    -webkit-appearance:none!important;
    appearance:none!important;
    box-shadow:none!important;
    text-transform:none!important;
    letter-spacing:0!important;
}
.izzigo-map-public[data-traveler-view="recommended"] .izzigo-map-recommendation-feedback button.is-active{
    border-color:#ff3152!important;
    background:#ffe9ee!important;
    color:#a81c37!important;
}
.izzigo-map-public[data-traveler-view="recommended"] .izzigo-map-recommendation-filters__actions{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:7px!important;
}
@media (max-width:760px){
    .izzigo-map-public[data-traveler-view="recommended"] .izzigo-map-recommendation-filters__actions{display:grid!important;grid-template-columns:1fr!important;width:100%!important}
}
