/* Scope all overrides to GIS; preserve the municipal template elsewhere. */
:is(#gisMapPreview, #gisMapFull) .gis-smart-pin { background: transparent; border: 0; filter: drop-shadow(0 3px 4px #0f172a55); }
:is(#gisMapPreview, #gisMapFull) .gis-smart-pin svg { pointer-events: none; }
:is(#gisMapPreview, #gisMapFull) .gis-smart-pin:focus-visible { outline: 3px solid #0f172a; outline-offset: 3px; border-radius: 20px; }
:is(#gisMapPreview, #gisMapFull) .leaflet-popup-pane { z-index: 2100; }
:is(#gisMapPreview, #gisMapFull) .gis-smart-popup .leaflet-popup-content-wrapper { border-radius: 16px; padding: 1px; background: #fff; color: #0f172a; box-shadow: 0 12px 35px #0f172a40; }
:is(#gisMapPreview, #gisMapFull) .gis-smart-popup .leaflet-popup-content { width: 260px !important; max-width: calc(100vw - 96px); margin: 10px; font-family: 'Kanit', sans-serif; }
:is(#gisMapPreview, #gisMapFull) .gis-smart-card { display: flex; flex-direction: column; gap: 4px; }
:is(#gisMapPreview, #gisMapFull) .gis-smart-card .gis-marker-cover { padding: 0; border: 0; width: 100% !important; height: 110px !important; min-height: 110px !important; max-height: 110px !important; flex: 0 0 110px; cursor: zoom-in; }
:is(#gisMapPreview, #gisMapFull) .gis-smart-card .gis-marker-cover img { height: 110px !important; min-height: 110px !important; max-height: 110px !important; object-fit: cover; object-position: center; }
:is(#gisMapPreview, #gisMapFull) .gis-smart-card .gis-marker-title { height: auto; min-height: 20px; white-space: normal; font-size: 14px; line-height: 1.45; margin: 2px 0 0; padding-right: 4px; }
:is(#gisMapPreview, #gisMapFull) .gis-smart-card .gis-marker-type { height: auto; min-height: 20px; white-space: normal; line-height: 1.4; }
:is(#gisMapPreview, #gisMapFull) .gis-smart-card .gis-marker-description { height: auto; min-height: 0; white-space: normal; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; line-height: 1.5; margin-top: 0; }
:is(#gisMapPreview, #gisMapFull) .gis-smart-card .gis-marker-meta { margin-top: 0 !important; gap: 4px; }
:is(#gisMapPreview, #gisMapFull) .gis-smart-card .gis-image-source { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: #475569; text-decoration: underline; font-size: 10px; }
:is(#gisMapPreview, #gisMapFull) .gis-smart-card .gis-marker-action { min-height: 36px; height: auto; margin-top: 2px !important; }
:is(#gisMapPreview, #gisMapFull) .gis-smart-card .gis-marker-updated { margin-top: 0 !important; }
:is(#gisMapPreview, #gisMapFull) .gis-smart-popup .leaflet-popup-close-button { top: 12px; right: 12px; width: 30px; height: 30px; border-radius: 50%; background: white; color: #0f172a; box-shadow: 0 1px 5px #0003; font-size: 24px; z-index: 2; }
:is(#gisMapPreview, #gisMapFull) .leaflet-control-attribution { display: block !important; max-width: 100%; font-size: 9px; }
@layer govtech {
    :is(#gisMapPreview, #gisMapFull) .gis-smart-pin svg { background: transparent !important; }
    :is(#gisMapPreview, #gisMapFull) .gis-smart-popup .leaflet-popup-content-wrapper { background: #fff !important; color: #0f172a !important; }
    :is(#gisMapPreview, #gisMapFull) .gis-smart-card .gis-marker-action { color: var(--site-accent, #047857) !important; }
}
@media (max-width: 767px) {
    :is(#gisMapPreview, #gisMapFull) .gis-smart-card .gis-marker-action { min-height: 44px; }
    :is(#gisMapPreview, #gisMapFull) .gis-smart-popup .leaflet-popup-close-button { width: 36px; height: 36px; }
    #searchLayerIndex, #searchLayerFull { font-size: 16px !important; }
    :is(#gisMapPreview, #gisMapFull) .leaflet-control-zoom a { width: 34px; height: 34px; line-height: 34px; }
}
@media (prefers-reduced-motion: reduce) {
    :is(#gisMapPreview, #gisMapFull) *, .gis-image-lightbox { animation: none !important; transition: none !important; }
}
