.mobile-map-action,.mobile-legend,.map-gesture-hint{display:none}
.layers-dialog{padding:0;color:var(--sr-ink);background:var(--sr-surface-raised);border:1px solid var(--sr-border);border-radius:22px 22px 0 0;width:min(100%,760px);max-width:100%;max-height:88vh;max-height:88svh;margin:auto auto 0;overflow:hidden;box-shadow:0 -12px 40px rgba(0,0,0,.18)}
.layers-dialog[open]{display:flex;flex-direction:column}
.layers-dialog::backdrop{background:rgba(8,28,33,.42)}
.layers-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px;border-bottom:1px solid var(--sr-border);flex-shrink:0}
.layers-dialog-head h2{margin:0;font-size:18px}
.layers-dialog button{min-height:44px;cursor:pointer}
#layersClose{width:44px;border:0;border-radius:12px;background:var(--sr-surface-soft);font-size:26px}
#layersDialogBody{overflow-y:auto;overscroll-behavior:contain;min-height:0}
.layers-dialog-foot{padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--sr-border);flex-shrink:0}
#layersDone{width:100%;border:0;border-radius:12px;background:var(--sr-primary);color:#fff;font-weight:700}
html.map-scroll-locked,body.map-scroll-locked{overflow:hidden!important;overscroll-behavior:none}
@media(max-width:760px){.sr-page-main{padding-top:12px!important}
.page-intro{margin-bottom:12px}
.page-intro h1{font-size:24px!important;line-height:1.35}
.page-intro p{font-size:12px;line-height:1.6}
.page-intro .eyebrow{display:none}
.map-workspace,.workspace-head,.page-intro .eyebrow,.popup{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.sr-page-main::before{display:none}
.map-workspace{padding:7px!important;border-radius:18px!important;background:var(--sr-surface-raised)!important;box-shadow:0 5px 18px rgba(20,65,72,.08)!important}
.workspace-head{position:static!important;gap:8px;margin:0 0 7px;padding:0!important;border:0;border-radius:0;box-shadow:none;background:transparent!important;align-items:center}
.workspace-head-copy{display:none}
.workspace-filter-button,.mobile-map-action{display:flex!important;align-items:center;justify-content:center;flex:1;min-width:0;min-height:44px!important;padding:8px!important;border-radius:12px;font-size:13px;font-weight:700;touch-action:manipulation}
.workspace-filter-button{box-shadow:none!important}
.mobile-map-action{color:var(--sr-primary);border:1px solid var(--sr-border);background:var(--sr-surface-soft)}
.map-canvas-card{height:65vh!important;height:65svh!important;min-height:300px!important;max-height:760px;border-radius:14px!important;box-shadow:none!important;contain:layout paint}
.map-controls{inset-inline-start:10px;inset-block-end:48px;bottom:48px;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.12)!important}
.map-controls button{width:46px!important;height:46px!important;min-width:46px;min-height:46px;touch-action:manipulation}
.map-controls button+button{border-top:1px solid var(--sr-border)}
.wind-readout{top:10px;inset-inline-start:10px;width:calc(100% - 20px);padding:8px 12px;box-shadow:0 2px 8px rgba(0,0,0,.12)}
.wind-readout button,.solar-readout button,#popupClose{width:44px!important;height:44px!important;min-width:44px;min-height:44px;touch-action:manipulation}
#windReadoutValue{font-size:20px}
#windReadoutDetail{font-size:11px}
.attribution{inset-inline:4px;bottom:3px;max-width:calc(100% - 8px);font-size:8px;line-height:1.4;text-align:center;border-radius:4px}
.popup{max-height:calc(100% - 30px);overflow:auto;overscroll-behavior:contain}
.mobile-legend:not([hidden]){display:block;padding:8px 10px 2px}
.mobile-legend-title{font-size:11px;font-weight:600;margin-bottom:5px}
.mobile-legend .gradient{height:7px}
.mobile-legend .legend-values{font-size:10px;margin-top:2px}
.map-gesture-hint{display:block;margin:5px 0 2px;text-align:center;color:var(--sr-muted);font-size:11px}
.layers-dialog .side-panel.open{position:static;inset:auto;width:100%;max-height:none!important;opacity:1;transform:none;margin:0;border:0!important;border-radius:0!important;box-shadow:none!important;background:var(--sr-surface-raised)!important;transition:none!important}
.layers-dialog .panel-scroll{max-height:none;overflow:visible}
.layers-dialog .layer-grid{grid-template-columns:1fr!important}
.layers-dialog .layer-card{min-height:0!important;box-shadow:none!important;transition:none!important}
.layers-dialog .layer-card::after{display:none}
.layers-dialog .switch-row strong{font-size:14px!important}
.layers-dialog .switch-row small{font-size:10px!important}
.layers-dialog .quality{font-size:8px!important}
.layers-dialog .opacity-control{font-size:12px!important}
.layers-dialog input[type=range]{height:44px}
.layers-dialog .select-row{font-size:12px!important}
.layers-dialog .select-row select{min-height:44px!important;font-size:16px!important}
.layers-dialog .info-section{font-size:13px}
.layers-dialog summary{min-height:44px;display:flex;align-items:center}
.map-workspace.map-expanded{position:fixed;inset:0;width:100%;height:100%;height:100dvh;max-width:none;z-index:150;margin:0;border:0!important;border-radius:0!important;display:flex;flex-direction:column;padding:calc(8px + env(safe-area-inset-top,0px)) 8px calc(8px + env(safe-area-inset-bottom,0px))!important}
.map-expanded .workspace-head,.map-expanded .mobile-legend,.map-expanded .map-gesture-hint{flex-shrink:0}
.map-expanded .map-canvas-card{flex:1;min-height:0!important;max-height:none;height:auto!important}
}
@media(max-width:760px) and (orientation:landscape){.map-canvas-card{height:75svh!important;min-height:230px!important}
.map-expanded .map-gesture-hint{display:none}
.map-expanded .mobile-legend{padding-top:4px}
}
@media(max-width:760px){.layers-dialog .layer-card{height:auto!important}
.layers-dialog .layer-card-head{height:auto!important}
}
