.leaflet-container .bv-map-control { min-width: 0; max-width: min(280px, calc(100vw - 100px)); padding: 5px; border: 1px solid #cbd5cd; border-radius: 4px; background: #fffffff2; box-shadow: 0 2px 8px #183a2c12; color: #203d34; font: 500 12px/1.5 'Segoe UI', Arial, sans-serif; letter-spacing: 0; }
.bv-map-control *, .bv-map-control *::before, .bv-map-control *::after { box-sizing: border-box; letter-spacing: 0 !important; }
.leaflet-container .bv-map-label { display: inline-flex; align-items: center; gap: 6px; min-height: 32px; padding: 5px 9px; color: #203d34; font: 600 11px/1.4 'Segoe UI', Arial, sans-serif; }
.leaflet-container .bv-map-control img { display: block; width: 17px; height: 17px; min-width: 17px; max-width: 17px; min-height: 17px; max-height: 17px; flex: 0 0 17px; margin: 0; object-fit: contain; }
.leaflet-container .bv-earth-link { display: inline-flex; align-items: center; gap: 6px; width: 100%; min-height: 32px; padding: 5px 9px; margin-top: 3px; border-top: 1px solid #dfe5df; color: #3f6550; font: 600 11px/1.5 'Segoe UI', Arial, sans-serif; text-decoration: none; }
.leaflet-container .bv-earth-link:hover { text-decoration: underline; }
.leaflet-container .bv-map-control :is(a, button):focus-visible { outline: 3px solid #357cad; outline-offset: 2px; }
.leaflet-container[data-touch-scroll='page'], .leaflet-container[data-touch-scroll='page'] .leaflet-pane { touch-action: pan-y pinch-zoom !important; }
.leaflet-container[data-map-active='true'], .leaflet-container[data-map-active='true'] .leaflet-pane { touch-action: none !important; }
.leaflet-container .leaflet-control-zoom a { display: block; width: 44px; height: 44px; min-width: 44px; min-height: 44px; line-height: 44px; font-size: 25px; color: #203d34; background: #fffdf7; }
.leaflet-container .leaflet-control-zoom a:focus-visible, .bv-gesture-control button:focus-visible { outline: 3px solid #357cad; outline-offset: -3px; }
.leaflet-container .bv-gesture-control { display: flex; flex-wrap: wrap; gap: 4px; max-width: calc(100% - 20px); margin-bottom: 30px; padding: 4px; border: 1px solid #cbd5cd; border-radius: 5px; background: #fffdf7f5; box-shadow: 0 2px 8px #183a2c12; }
.leaflet-container .bv-gesture-control button { min-height: 44px; padding: 8px 10px; border: 1px solid #cbd5cd; border-radius: 3px; background: #fffdf7; color: #203d34; font: 600 11px/1.4 'Segoe UI', Arial, sans-serif; cursor: pointer; }
.leaflet-container .bv-gesture-control button[aria-pressed='true'] { background: #203d34; color: #fffdf7; }
.leaflet-container .map-unavailable { inset: auto 12px 105px; z-index: 450; margin: 0; padding: 8px 12px; border-radius: 4px; font: 12px/1.5 'Segoe UI', Arial, sans-serif; pointer-events: none; }
@media (max-width: 600px) {
  .leaflet-container .bv-map-control { max-width: calc(100vw - 105px); }
  .leaflet-container .bv-map-label { font-size: 10px; }
  .leaflet-container .bv-earth-link { font-size: 10px; }
}

/* Keep both actions on one row without percentage sizing against Leaflet's corner. */
.leaflet-container .bv-gesture-control{width:max-content;max-width:calc(100vw - 64px);flex-wrap:nowrap;align-items:center}
.leaflet-container .bv-gesture-control button{white-space:nowrap}


@media(max-width:600px){.map-pane #search-area{top:110px;right:10px;left:auto;transform:none;max-width:calc(100% - 80px);min-height:44px}}

