.map-panel{border:1px solid var(--border);border-radius:10px;flex-direction:column;display:flex;overflow:hidden}.map{height:62vh;min-height:340px;max-height:820px;font-family:var(--font);background-color:#1d2422;position:relative}.map:focus-visible{outline:none}.map:focus-visible:after{content:"";z-index:2;pointer-events:none;border:3px solid var(--focus);box-shadow:inset 0 0 0 3px var(--surface);position:absolute;inset:0}.map .ol-control{background:0 0}.map .ol-control button{border-radius:var(--radius-control);background-color:var(--surface);width:36px;height:36px;color:var(--text);font-family:var(--font);margin:0;font-size:20px;font-weight:400;transition:background-color .12s}.map .ol-control button:hover,.map .ol-control button:focus{background-color:var(--raised);outline:none}.map .ol-control button:focus-visible{outline:2px solid var(--focus);outline-offset:2px;box-shadow:0 0 0 6px var(--surface)}.map .ol-zoom{flex-direction:column;gap:4px;display:flex;top:12px;left:12px}.map .ol-zoom .ol-zoom-in,.map .ol-zoom .ol-zoom-out{border-radius:var(--radius-control)}.map .ol-rotate{top:12px;right:12px}.map .ol-scale-line{border-radius:var(--radius-control);background-color:var(--surface);padding:2px 6px;bottom:12px;left:12px}.map .ol-scale-line-inner{border-color:var(--text);color:var(--text);font-variant-numeric:tabular-nums;font-size:11px}.map .ol-attribution{border-radius:var(--radius-control);background-color:var(--surface);max-width:calc(100% - 140px);font-size:11px;bottom:12px;right:12px}.map .ol-attribution.ol-uncollapsible{border-radius:var(--radius-control)}.map .ol-attribution ul{color:var(--text);text-shadow:none}.map .ol-attribution a{color:var(--text)}.map .ol-attribution button{width:28px;height:28px;font-size:14px}.map-collar{align-items:center;gap:12px var(--gap);border-top:1px solid var(--border);background-color:var(--raised);grid-template-columns:1fr auto;padding:12px 16px;font-size:13px;display:grid}.map-legend{cursor:pointer;align-items:center;gap:10px;min-height:44px;font-weight:500;display:inline-flex;position:relative}.map-legend-input{width:18px;height:18px;accent-color:var(--accent);cursor:pointer;margin:0}.map-legend-swatch{background-color:#3b4a45;border-radius:3px;width:28px;height:14px;position:relative}.map-legend-swatch:after{content:"";background-color:#7fd8ea;border-radius:1px;position:absolute;inset:6px 4px}.map-legend-input:not(:checked)~.map-legend-swatch{opacity:.35}.map-readout{flex-wrap:wrap;grid-area:2/1/auto/-1;gap:4px 24px;margin:0;display:flex}.map-readout-item{flex-wrap:wrap;gap:0 8px;min-width:0;max-width:100%;display:flex}.map-readout-pointer{flex-basis:100%}.map-readout dt{color:var(--muted)}.map-readout dd{margin:0}.map-figure{min-width:0;font-family:var(--font-mono);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12.5px}.map-reset{border:1px solid var(--control);border-radius:var(--radius-control);background-color:var(--surface);min-height:44px;color:var(--text);font:inherit;cursor:pointer;padding:0 14px;font-weight:500;transition:background-color .12s,transform .12s}.map-reset:hover{background-color:var(--ground)}.map-reset:active{transform:translateY(1px)}@media (width<=359px){.map-figure{white-space:normal}}@media (hover:none){.map-readout-pointer{display:none}}@media (width>=900px){.map{height:calc(100dvh - 340px);min-height:420px}.map-collar{grid-template-columns:auto 1fr auto;padding:8px 16px}.map-legend,.map-reset{min-height:36px}.map-readout{flex-wrap:wrap;grid-area:auto;justify-content:flex-end;gap:4px 24px;display:flex}.map-readout-pointer{flex-basis:auto;min-width:15rem}}
