/* SLICE 135. Opt-in "Adjust exact location on map" picker: a responsive dialog
   (centred card on desktop, bottom sheet on mobile) with search, quick links
   and "use my location", plus a lazy-loaded draggable-pin map once a browser
   Maps key is stored. RTL-safe (logical properties); mobile-first sizing. */
.map-picker{position:fixed;inset:0;z-index:var(--z-modal,50);display:flex;align-items:center;justify-content:center;padding:16px;box-sizing:border-box}
.map-picker[hidden]{display:none}
.map-picker__backdrop{position:absolute;inset:0;z-index:var(--z-backdrop,45);background:rgba(10,20,16,.55)}
.map-picker__panel{position:relative;z-index:1;background:var(--corr-surface,#fff);color:var(--corr-ink,#12261c);border-radius:16px;width:min(560px,100%);max-height:min(88vh,760px);display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 60px rgba(0,0,0,.35)}
.map-picker__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 16px 8px}
.map-picker__head h2{margin:0;font-size:clamp(1.05rem,1rem + .3vw,1.25rem)}
.map-picker__close{inline-size:44px;block-size:44px;min-inline-size:44px;border-radius:50%;border:1px solid var(--corr-hair,#dcdfd9);background:transparent;font-size:22px;line-height:1;cursor:pointer;color:inherit}
.map-picker__close:hover,.map-picker__close:focus-visible{border-color:var(--corr-accent,#2F6E4C);color:var(--corr-accent,#2F6E4C)}
.map-picker__search{padding:8px 16px}
.map-picker__input{inline-size:100%;box-sizing:border-box;padding:12px 14px;font-size:16px;border-radius:10px;border:1px solid var(--corr-hair,#dcdfd9);min-block-size:48px}
.map-picker__suggestions{margin-top:6px;border-radius:10px;border:1px solid var(--corr-hair,#dcdfd9);max-height:220px;overflow-y:auto}
.map-picker__suggestions[hidden]{display:none}
.map-picker__suggestion{padding:10px 14px;font-size:14px;cursor:pointer;min-block-size:44px;display:flex;align-items:center}
.map-picker__suggestion:hover,.map-picker__suggestion:focus-visible{background:var(--corr-tint,#f1f6f2)}
.map-picker__quicklinks{display:flex;flex-wrap:wrap;gap:8px;padding:8px 16px}
.map-picker__quicklink{min-block-size:36px;padding:6px 12px;border-radius:999px;border:1px solid var(--corr-hair,#dcdfd9);background:transparent;font-size:12.5px;font-weight:600;cursor:pointer;color:var(--corr-ink,#12261c)}
.map-picker__quicklink:hover,.map-picker__quicklink:focus-visible{border-color:var(--corr-accent,#2F6E4C);color:var(--corr-accent,#2F6E4C)}
.map-picker__quicklink--geo{background:var(--corr-accent,#2F6E4C);color:#fff;border-color:var(--corr-accent,#2F6E4C)}
.map-picker__quicklink--geo:hover,.map-picker__quicklink--geo:focus-visible{color:#fff;opacity:.9}
.map-picker__map{margin:8px 16px;border-radius:12px;overflow:hidden;background:var(--corr-tint,#f1f6f2);min-block-size:220px;flex:1 1 auto;position:relative}
.map-picker__map-fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;padding:20px;font-size:13px;color:var(--corr-muted,#5b6b60)}
.map-picker__status{min-block-size:20px;margin:0;padding:0 16px;font-size:12.5px;color:var(--corr-muted,#5b6b60)}
.map-picker__actions{display:flex;justify-content:flex-end;gap:10px;padding:12px 16px 16px}
.map-picker__actions .button{min-block-size:44px}
.map-picker__actions .button[disabled]{opacity:.45;cursor:not-allowed}
.place-map-trigger{position:absolute;inset-inline-end:0;top:100%;margin-top:.3rem;display:inline-flex;align-items:center;min-block-size:32px;padding:0 10px;border-radius:999px;border:1px solid var(--corr-hair,#dcdfd9);background:transparent;font-size:.72rem;font-weight:600;color:var(--corr-muted,#5b6b60);cursor:pointer;white-space:nowrap;z-index:5}
.place-map-trigger:hover,.place-map-trigger:focus-visible{border-color:var(--corr-accent,#2F6E4C);color:var(--corr-accent,#2F6E4C)}
body.map-picker-open{overflow:hidden}
@media (max-width:640px){
	.map-picker{padding:0;align-items:flex-end}
	.map-picker__panel{width:100%;max-height:92vh;border-radius:16px 16px 0 0}
	.map-picker__map{min-block-size:38vh}
}
