/* Isolate Leaflet's pane z-indices so map controls never cover dialogs. */
.location-picker-map,.location-picker-map.leaflet-container{position:relative;isolation:isolate;z-index:0;width:100%;height:280px;min-width:0;overflow:hidden;border:1px solid var(--journey-line,#9fbdd54d);border-radius:18px;background:#d8e3e7;color:#203441;font:13px/1.5 var(--sans,system-ui,sans-serif)}
.location-picker-map:focus-visible{outline:2px solid var(--accent,#f2b8d4);outline-offset:3px}
.location-picker-map .leaflet-control.leaflet-control-zoom{overflow:hidden;border:1px solid #3b58675e;box-shadow:0 2px 10px #18334122;border-radius:10px}
.location-picker-map .leaflet-control.leaflet-control-zoom a{display:block;width:40px;height:40px;line-height:40px;border-color:#cfdae1;background:#fcfdff;color:#233746;font-size:24px;text-align:center;text-decoration:none}
.location-picker-map .leaflet-control.leaflet-control-zoom a:hover,.location-picker-map .leaflet-control.leaflet-control-zoom a:focus-visible{background:#f7e3ed;color:#233746}
.location-picker-map .leaflet-control-attribution{max-width:100%;padding:2px 5px;background:#fffffff0;color:#273f4d;font-size:10px;line-height:1.4;overflow-wrap:anywhere}
.location-picker-map .leaflet-control-attribution a{color:#215574;text-decoration:underline;text-underline-offset:2px}
.location-picker-marker{background:transparent;border:0}
.location-picker-marker>span{display:block;width:30px;height:30px;border:3px solid white;border-radius:50% 50% 50% 0;background:#cf6299;box-shadow:0 2px 9px #18273566;transform:rotate(-45deg)}
.location-picker-marker>span::after{content:'';position:absolute;inset:7px;border-radius:50%;background:white}
.location-picker-marker:focus-visible{outline:3px solid #253b51;outline-offset:4px;border-radius:50%}
.location-picker-crosshair{position:absolute;left:50%;top:50%;z-index:450;width:18px;height:18px;transform:translate(-50%,-50%);pointer-events:none;border:1px solid #ffffffb3;border-radius:50%;box-shadow:0 0 0 1px #23374688}
.location-picker-crosshair::before,.location-picker-crosshair::after{content:'';position:absolute;background:#233746cc;box-shadow:0 0 0 1px #ffffff9c}
.location-picker-crosshair::before{top:7px;left:3px;width:10px;height:2px}
.location-picker-crosshair::after{top:3px;left:7px;width:2px;height:10px}
@media(max-width:540px){.location-picker-map,.location-picker-map.leaflet-container{height:260px}}
@media(prefers-reduced-motion:reduce){.location-picker-map .leaflet-zoom-animated{transition:none}}
