:root{--fs-micro:10px;--fs-caption:11px;--fs-small:12px;--fs-body:13px;--fs-readout:15px;--fs-heading:24px;--fs-display:32px;--fs-brand:20px;--fs-nano:8px;--fs-glyph:22px;--ink:#183c46;--ink-2:#3d5b63;--ink-3:#587077;--accent:#287b91;--accent-ink:#235d70;--on-accent:#fff;--surface:#fff;--paper:#f8f8f5;--hover:#edf3f0;--fill:#e7eeea;--line:#dce5e0;--line-control:#c9d9d3;--line-strong:#8da6ab;--selected-ink:#1d628f;--selected-fill:#e3eef6;--selected-line:#b9d3e6;--focus:#2377b3;--extreme-high:#9b2226;--extreme-low:#1f4e8c;--place-1:#2377b3;--place-2:#d74f45;--place-3:#efc447;--place-4:#229a7a;--place-5:#f38e5d;--place-6:#9468cf;--danger:#a14132;--shadow-sm:0 2px 8px #203d3b1a;--shadow-pop:0 12px 32px #213d3d30;--shadow-card:0 8px 24px -14px #163e4959;--shadow-sheet:0 -4px 20px #203d3b33;--scrim:#10282e66;--radius-sm:4px;--radius:6px;--radius-lg:8px;--radius-xl:14px;--radius-pill:999px;--z-note:2;--z-footer:3;--z-overlay:4;--z-toolbar:6;--z-popover:10;--z-sheet:20;--z-modal:30;--control-sm:32px;--control:36px;--control-lg:40px;--touch:44px;color:var(--ink);background:var(--paper);font-family:Figtree,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,summary:focus-visible,a:focus-visible{outline:3px solid var(--focus);outline-offset:3px}#root{height:100dvh;min-height:560px}.app-shell{--panel-width:clamp(350px, 31vw, 480px);--panel-used:max(320px, min(var(--panel-width), calc(100vw - 640px)));grid-template-columns:minmax(0, 1fr) var(--panel-used);height:100%;display:grid;position:relative;overflow:hidden}.map-region{background:var(--fill);flex-direction:column;min-width:0;min-height:0;display:flex;position:relative;container-type:inline-size}.map-stage{flex:1;min-height:0;position:relative;overflow:hidden}.map-canvas{position:absolute;inset:0}.map-canvas.map-space{background:var(--paper)}.map-wash{display:none}.eyebrow{color:var(--ink-3);font-size:var(--fs-micro);letter-spacing:1.15px;font-weight:800}.title-line{flex-wrap:wrap;align-items:baseline;gap:2px 8px;min-width:0;display:flex}.title-line>.title-name{color:var(--ink-2);font-size:var(--fs-readout);margin:0;font-weight:500}.title-detail{color:var(--ink-3);font-size:var(--fs-readout);font-variant-numeric:tabular-nums;font-weight:500}.title-detail.is-set{color:var(--ink);font-weight:600}.float-popover,.float-card{border:1px solid var(--line);border-radius:var(--radius-lg)}.float-popover{background:var(--surface);box-shadow:var(--shadow-pop)}.float-card{background:color-mix(in srgb, var(--surface) 95%, transparent);box-shadow:var(--shadow-sm);color:var(--ink)}.icon-button{width:var(--control);height:var(--control);border-radius:var(--radius);color:var(--ink-2);background:0 0;border:0;place-items:center;display:grid}.icon-button:hover{background:var(--hover)}.map-attribution,.map-tip{z-index:var(--z-note);background:color-mix(in srgb, var(--paper) 85%, transparent);border-radius:var(--radius-sm);color:var(--ink-3);font-size:var(--fs-micro);padding:3px 5px;position:absolute;bottom:6px;right:8px}.map-attribution{text-align:right;max-width:calc(100% - 16px)}.map-attribution a,.map-attribution button{color:inherit;text-decoration:underline}.map-attribution button{font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.panel-resizer{z-index:var(--z-toolbar);top:0;bottom:0;right:calc(var(--panel-used) - 5px);cursor:col-resize;touch-action:none;border:0;width:10px;margin:0;position:absolute}.panel-resizer:after{content:"";background:0 0;width:2px;transition:background .15s;position:absolute;top:0;bottom:0;left:4px}.panel-resizer:hover:after,.panel-resizer:focus-visible:after,.panel-resizer:active:after{background:var(--accent)}.panel-resizer:focus-visible{outline:none}.place-slot-0{--slot:var(--place-1)}.place-slot-1{--slot:var(--place-2)}.place-slot-2{--slot:var(--place-3)}.place-slot-3{--slot:var(--place-4)}.place-slot-4{--slot:var(--place-5)}.place-slot-5{--slot:var(--place-6)}.place-swatch{background:var(--slot);border-radius:50%;flex:none;width:10px;height:10px}.map-toolbar{z-index:var(--z-toolbar);border-bottom:1px solid var(--line);background:var(--paper);align-items:center;gap:16px;min-height:72px;padding:12px 20px;display:flex;position:relative}.map-toolbar>*{min-width:0}@container (width<=780px){.map-toolbar .brand-lockup{display:none}}.brand-lockup{width:172px;color:var(--ink);font-size:var(--fs-brand);letter-spacing:-.7px;flex:none;font-weight:800;line-height:1}.brand-lockup span{color:var(--ink-3);font-size:var(--fs-micro);letter-spacing:1.15px;margin-top:6px;font-weight:800;display:block}.toolbar-search{flex:1;min-width:150px;max-width:360px}.search-wrap{position:relative}.search-field{height:var(--control-lg);border:1px solid var(--line-control);border-radius:var(--radius);background:var(--surface);color:var(--accent-ink);align-items:center;gap:9px;padding:0 12px;display:flex}.search-field:focus-within{border-color:var(--focus);box-shadow:0 0 0 2px color-mix(in srgb, var(--focus) 15%, transparent)}.search-field input{min-width:0;color:var(--ink);font-size:var(--fs-body);border:0;outline:0;flex:1}.search-field input::placeholder{color:var(--ink-3)}.search-field kbd{color:var(--ink-3);font-size:var(--fs-micro);white-space:nowrap}.search-field .compact{width:24px;height:24px}.search-results{z-index:var(--z-sheet);padding:6px;position:absolute;top:48px;left:0;right:0}.search-results-label{color:var(--ink-3);font-size:var(--fs-micro);letter-spacing:1px;padding:8px 10px;font-weight:800}.search-results button{border-radius:var(--radius-sm);width:100%;color:var(--ink);text-align:left;font-size:var(--fs-body);background:0 0;border:0;align-items:center;gap:9px;padding:8px;font-weight:700;display:flex}.search-results button:hover,.search-results button[aria-selected=true]{background:var(--hover)}.search-results button>span:nth-child(2){flex:1}.search-results small{color:var(--ink-3);font-size:var(--fs-micro);margin-top:2px;font-weight:500;display:block}.result-icon{width:28px;height:28px;color:var(--accent);place-items:center;display:grid}.empty-search{color:var(--ink-3);font-size:var(--fs-small);padding:4px 10px}.toolbar-select{height:var(--control-lg);border:1px solid var(--line-control);border-radius:var(--radius);background:var(--surface);color:var(--accent-ink);font-size:var(--fs-body);white-space:nowrap;flex:none;align-items:center;gap:8px;padding:0 6px 0 12px;font-weight:600;display:flex}.toolbar-select:focus-within{border-color:var(--focus);box-shadow:0 0 0 2px color-mix(in srgb, var(--focus) 15%, transparent)}.toolbar-select select{height:100%;color:var(--ink);font:inherit;background:0 0;border:0;padding:0 2px}.toolbar-select select:focus{outline:0}.map-controls{z-index:var(--z-overlay);min-width:0;margin:0;padding:0;display:grid;position:absolute;top:16px;right:16px;overflow:hidden}.map-controls button{width:var(--control);height:var(--control);color:var(--ink);background:#fff;border:0;place-items:center;display:grid}.map-controls button.zoom{font-size:var(--fs-glyph);font-weight:400;line-height:1}.map-controls button.view-toggle{font-size:var(--fs-body);font-weight:600}.map-controls button+button{border-top:1px solid var(--line)}.map-controls button:hover{background:var(--hover)}.map-tip{opacity:0;pointer-events:none;margin:0;transition:opacity .3s}.map-tip-visible{opacity:1}@media (pointer:coarse){.map-tip{display:none}}.map-controls button.active{background:var(--selected-fill);color:var(--selected-ink)}.basemap-popover{z-index:var(--z-popover);width:min(232px,100% - 76px);padding:8px 14px 6px;position:absolute;top:16px;right:60px}.basemap-head{align-items:center;gap:8px;margin:0 -8px 2px 0;display:flex}.basemap-head strong{font-size:var(--fs-readout);flex:1}.link-button{color:var(--selected-ink);font-size:var(--fs-small);background:0 0;border:0}.link-button:hover{text-decoration:underline}.basemap-row{border-top:1px solid var(--line);color:var(--ink);font-size:var(--fs-body);justify-content:space-between;align-items:center;gap:12px;padding:9px 0;display:flex}.basemap-row input{appearance:none;border-radius:var(--radius-pill);background:var(--line-control);cursor:pointer;flex:none;width:30px;height:18px;margin:0;transition:background .12s;position:relative}.basemap-row input:after{content:"";background:var(--surface);border-radius:50%;width:14px;height:14px;transition:left .12s;position:absolute;top:2px;left:2px}.basemap-row input:checked{background:var(--focus)}.basemap-row input:checked:after{left:14px}.basemap-row input:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.map-footer{z-index:var(--z-footer);border-top:1px solid var(--line);background:var(--paper);flex:none;align-items:stretch;height:auto;display:flex;position:relative}.timeline-panel{flex:1;min-width:0;padding:16px 20px 14px}.timeline-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.timeline-title em{color:var(--accent-ink);font-size:var(--fs-caption);white-space:nowrap;font-style:normal;font-weight:700}.period-rail-row{align-items:center;gap:10px;margin-top:12px;display:flex}.period-step{width:var(--control);height:var(--control);border:1px solid var(--line-control);border-radius:var(--radius);background:var(--surface);color:var(--accent-ink);flex:none;place-items:center;display:grid}.playback{border:1px solid var(--line-control);border-radius:var(--radius);background:var(--surface);display:flex;overflow:hidden}.playback button{min-height:var(--control);color:var(--accent-ink);font-size:var(--fs-small);background:0 0;border:0;align-items:center;gap:5px;padding:4px 10px;font-weight:600;display:flex}.playback .playback-pace{border-left:1px solid var(--line);color:var(--ink-2)}.period-track{flex:1;min-width:0}.period-scale{height:15px;color:var(--ink-3);font-size:var(--fs-caption);margin:0 12px;position:relative}.period-scale span{position:absolute;transform:translate(-50%)}.about-popover,.error-banner{z-index:var(--z-popover);width:min(340px,100% - 36px);padding:18px;position:absolute;bottom:225px;left:18px}.about-popover .icon-button{position:absolute;top:10px;right:10px}.about-popover strong{font-size:var(--fs-readout)}.about-popover p{color:var(--ink-3);font-size:var(--fs-small);margin:11px 0 0;line-height:1.6}.credits-popover{max-height:55%;overflow-y:auto}.credits-popover ul{color:var(--ink-3);font-size:var(--fs-caption);margin:8px 0 0;padding-left:16px;line-height:1.5}.credits-popover a{color:inherit}.error-banner{color:var(--danger);font-size:var(--fs-small);align-items:center;gap:9px;display:flex}.range-track{cursor:pointer;touch-action:none;flex:1;height:28px;margin:0 12px;position:relative}.range-track:before{content:"";border-radius:var(--radius-pill);background:var(--line);pointer-events:none;height:6px;position:absolute;top:11px;left:0;right:0}.range-selection{border-radius:var(--radius-pill);background:var(--accent);pointer-events:none;height:6px;position:absolute;top:11px}.range-thumb{z-index:1;width:var(--touch);height:var(--touch);cursor:grab;touch-action:none;border-radius:50%;position:absolute;top:-8px;transform:translate(-50%)}.range-thumb:before{content:"";border:3px solid var(--accent);background:var(--surface);box-shadow:var(--shadow-sm);pointer-events:none;border-radius:50%;position:absolute;inset:10px}.range-thumb:active{cursor:grabbing}.range-thumb:focus-visible{outline:3px solid var(--focus);outline-offset:3px;z-index:2}.filter-legend{border-right:1px solid var(--line);flex:0 0 44%;min-width:300px;max-height:55dvh;padding:16px 20px;overflow-y:auto}.filter-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.legend-clear{min-height:var(--control);border-radius:var(--radius);background:var(--fill);color:var(--accent-ink);font-size:var(--fs-small);border:0;padding:0 10px;font-weight:600}.gradient-track:before{display:none}.range-gradient,.range-muted{border-radius:var(--radius-sm);pointer-events:none;height:12px;position:absolute;top:8px}.range-gradient{left:0;right:0}.range-muted{background:color-mix(in srgb, var(--paper) 85%, transparent);border-radius:0}.gradient-track .range-thumb:before{border-color:var(--ink-2)}.filter-ticks{height:15px;color:var(--ink-2);font-size:var(--fs-micro);font-variant-numeric:tabular-nums;margin:0 12px;position:relative}.filter-ticks span{position:absolute;transform:translate(-50%)}.filter-ticks span:first-child{transform:none}.filter-ticks span:last-child{transform:translate(-100%)}.range-thumb[data-off=true]{z-index:0;width:28px;height:28px;top:0}.range-thumb[data-off=true]:before,.gradient-track .range-thumb[data-off=true]:before{border:2px solid var(--line-strong);background:var(--fill);box-shadow:none;inset:6px}.inline-edit{border:0;border-bottom:1px dotted var(--line-strong);color:inherit;font:inherit;font-variant-numeric:tabular-nums;background:0 0;border-radius:0;padding:0 2px}.inline-edit:hover{background:var(--fill)}.inline-edit-field{vertical-align:top;flex-direction:column;display:inline-flex}.inline-edit-field input{border:1px solid var(--accent);border-radius:var(--radius-sm);background:var(--surface);height:26px;color:var(--ink);font:inherit;font-variant-numeric:tabular-nums;padding:0 4px}.inline-edit-field input[aria-invalid=true]{border-color:var(--danger)}.inline-edit-field small{color:var(--danger);font-size:var(--fs-caption);white-space:normal;font-weight:500}.filter-actions{align-items:center;gap:4px;display:flex}.range-options{border:0;gap:2px;margin:8px 0 0;padding:0;display:grid}.range-options label{min-height:28px;color:var(--ink-2);font-size:var(--fs-small);align-items:center;gap:8px;display:flex}.range-options input{width:16px;height:16px;accent-color:var(--accent);margin:0}.range-options label:has(input:disabled){color:var(--ink-3)}.other-filters{border-top:1px solid var(--line);gap:6px;margin-top:10px;padding-top:8px;display:grid}.other-filter-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.title-link{color:var(--accent-ink);font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.title-link:hover{text-decoration:underline}.other-filter-head .title-name,.other-filter-head .title-detail{font-size:var(--fs-body)}.add-filter{height:var(--control-sm);border:1px dashed var(--line-control);border-radius:var(--radius);color:var(--accent-ink);font:inherit;font-size:var(--fs-small);background:0 0;padding:0 8px}@media (width<=860px){.filter-legend{border-right:0;border-bottom:1px solid var(--line);flex:none;min-width:0;padding:12px 14px}}.inspector,.welcome-panel{border-left:1px solid var(--line);background:var(--paper);flex-direction:column;min-width:0;min-height:0;display:flex}.welcome-panel{justify-content:space-between;padding:108px 36px 30px}.welcome-content{max-width:350px}.welcome-content h1{font-size:var(--fs-display);letter-spacing:-.025em;margin:23px 0 20px;line-height:1.07}.welcome-content h1 em{color:var(--accent);font-style:normal}.welcome-content>p{max-width:315px;color:var(--ink-2);font-size:var(--fs-readout);margin:0;line-height:1.7}.welcome-places{margin-top:52px;display:grid}.welcome-places>.eyebrow{margin-bottom:8px}.welcome-places button{border:0;border-bottom:1px solid var(--line);color:var(--ink);text-align:left;font-size:var(--fs-readout);background:0 0;justify-content:space-between;align-items:center;padding:14px 0;font-weight:700;display:flex}.welcome-places button:hover{color:var(--focus)}.welcome-note{border-top:1px solid var(--line);color:var(--ink-3);font-size:var(--fs-caption);padding-top:18px;line-height:1.65}.inspector-head{border-bottom:1px solid var(--line);flex:none;justify-content:space-between;align-items:center;height:72px;padding:0 24px;display:flex}.inspector-head-lead{align-items:center;gap:8px;min-width:0;display:flex}.inspector-head-lead .icon-button:first-child{margin-left:-8px}.inspector-scroll{overflow-anchor:none;flex:1;padding:0 24px 36px;overflow:auto}.inspector-scroll[aria-busy=true] .profile-section{opacity:.55}.place-heading{padding:33px 0 20px}.place-heading h1{overflow-wrap:anywhere;font-size:var(--fs-heading);letter-spacing:-.015em;margin:0 0 8px;line-height:1.1}.place-heading p{color:var(--ink-3);font-size:var(--fs-small);font-variant-numeric:tabular-nums;margin:0}.place-period{color:var(--ink-2);font-size:var(--fs-small);font-variant-numeric:tabular-nums;margin:2px 0 0;font-weight:600}.compare-bar+.place-period{margin-top:12px}.metric-bounds{color:var(--ink-3);font-size:var(--fs-small);gap:16px;margin:4px 0 0;display:flex}.metric-bounds strong{color:var(--ink);margin-left:4px;font-weight:600}.profile-section{border-bottom:1px solid var(--line);min-height:300px;padding:24px 0 20px;scroll-margin-top:8px;transition:opacity .15s}.profile-section.active{border:1px solid var(--selected-line);border-radius:var(--radius-xl);background:var(--surface);box-shadow:var(--shadow-card);margin:18px -14px;padding:0 14px 22px;overflow:hidden}.ramp-strip{height:5px;margin:0 -14px 20px;display:block}.profile-section.active .title-name{color:var(--ink)}.profile-section:not(.active) .title-detail.is-set{color:var(--ink-2)}.profile-section:not(.active) .chart-summary strong{color:var(--ink-3)}.profile-section:not(.active){cursor:pointer}.profile-section:not(.active) .chart{opacity:.82}.profile-state{color:var(--ink-3);font-size:var(--fs-body);align-items:center;gap:9px;padding:40px 0;display:flex}.chart{margin:14px 0 9px}.chart svg{width:100%;display:block}.chart-band{fill:var(--accent);fill-opacity:.16}.chart-month{stroke:var(--ink);stroke-opacity:.1;stroke-width:1px}.chart-reference{stroke:var(--ink);stroke-opacity:.45;stroke-width:1px}.chart-envelope{fill-opacity:.3}.chart-area{fill-opacity:.55}.chart-grid{stroke:var(--line);stroke-dasharray:3 5}.chart-line{fill:none;stroke:var(--ink);stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round}.chart-line.mean{stroke-width:1.5px}.chart-line.mean.high{stroke:var(--extreme-high)}.chart-line.mean.low{stroke:var(--extreme-low)}.chart-line.dotted{stroke:var(--ink-3);stroke-width:2.2px;stroke-dasharray:.1 5.6}.chart-point{fill:var(--paper);stroke:var(--accent);stroke-width:2px}.chart-point.active{fill:var(--slot,var(--ink))}.chart svg.scrubbable{cursor:ew-resize;touch-action:pan-y;-webkit-user-select:none;user-select:none}.chart-hover line{stroke:var(--ink);stroke-opacity:.35}.chart-hover circle{fill:var(--paper);stroke:var(--slot,var(--ink));stroke-width:2px}.chart-hover text{fill:var(--ink);font-family:Figtree,sans-serif;font-size:var(--fs-caption);font-weight:700}.axis-label,.month-label{fill:var(--ink-3);font-family:Figtree,sans-serif;font-size:var(--fs-caption);font-weight:600}.chart-summary{color:var(--ink-3);font-size:var(--fs-small);justify-content:space-between;gap:16px;display:flex}.chart-summary button{color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.chart-summary button:hover span,.chart-summary button:focus-visible span{color:var(--accent)}.chart-summary span{margin-top:2px;display:block}.chart-hover circle.bound{fill:var(--ink);stroke:none}.chart-hover text .bound{fill-opacity:.65;font-weight:600}.chart-summary strong{color:var(--ink);white-space:nowrap;margin-left:4px;font-weight:600}.source-section{color:var(--ink-3);font-size:var(--fs-small);padding:25px 0;line-height:1.6}.source-section summary{color:var(--ink-2);cursor:pointer;font-weight:700}.source-section p{margin:10px 0 0}.pulse{background:color-mix(in srgb, var(--accent) 50%, transparent);border-radius:50%;flex:none;width:18px;height:18px;animation:1.2s infinite pulse}@keyframes pulse{50%{opacity:.3;transform:scale(.7)}}.place-actions{gap:8px;margin:0 0 14px;display:flex}.place-action{height:var(--control);border:1px solid var(--line-control);border-radius:var(--radius);background:var(--surface);color:var(--accent-ink);font-size:var(--fs-body);flex:1;justify-content:center;align-items:center;gap:6px;font-weight:700;display:flex}.place-action:hover{background:var(--hover)}.place-action:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.compare-bar{margin:0 0 18px}.compare-bar .place-heading{padding-bottom:14px}.place-chips{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.place-chip{border:1px solid var(--line);border-radius:var(--radius-pill);max-width:100%;color:var(--ink-3);font-size:var(--fs-small);background:0 0;align-items:center;font-weight:700;display:flex}.place-chip:hover{border-color:var(--selected-line)}.place-chip:has([aria-pressed=true]){border-color:var(--selected-line);background:var(--surface);box-shadow:var(--shadow-card);color:var(--ink)}.place-chip button{color:inherit;font:inherit;background:0 0;border:0;align-items:center;gap:7px;display:flex}.place-chip-pick{text-overflow:ellipsis;white-space:nowrap;min-width:0;padding:7px 4px 7px 12px;overflow:hidden}.place-chip-remove{color:var(--ink-3);padding:7px 10px 7px 4px}.place-chip-remove:hover{color:var(--ink)}.place-chip button:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:var(--radius-pill)}.compare-foot{justify-content:space-between;align-items:center;gap:12px;margin-top:12px;display:flex}.compare-note{color:var(--ink-3);font-size:var(--fs-caption);align-items:center;gap:6px;margin:0;display:flex}.compare-note.add{color:var(--accent-ink)}.compare-link{color:var(--accent-ink);font:inherit;font-size:var(--fs-small);background:0 0;border:0;flex:none;align-items:center;gap:4px;padding:0;font-weight:700;display:flex}.compare-link:hover{text-decoration:underline}.compare-readings{gap:6px;margin:8px 0 0;padding:0;list-style:none;display:grid}.compare-readings li{font-size:var(--fs-body);align-items:baseline;gap:8px;display:flex}.compare-readings .place-swatch{align-self:center}.compare-readings .place-name{min-width:0;color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.compare-readings strong{color:var(--ink);font-size:var(--fs-readout);font-variant-numeric:tabular-nums}.place-delta{min-width:56px;color:var(--ink-3);font-size:var(--fs-small);text-align:right;font-variant-numeric:tabular-nums}.place-note{color:var(--ink-3);font-size:var(--fs-small);align-items:center;gap:6px;display:flex}.chart-hover text .reading{fill:var(--slot,var(--ink))}.compare-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.compare-basis{color:var(--ink-3);font-size:var(--fs-caption);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.similarity-section{border-top:1px solid var(--line);padding:22px 0}.variable-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.variable-tile{border:1px solid var(--line);border-radius:var(--radius-pill);color:var(--ink-3);text-align:left;cursor:pointer;background:0 0;flex-direction:column;padding:0;display:flex;overflow:hidden}.variable-tile .ramp-strip{opacity:.4;filter:grayscale();height:4px;margin:0}.variable-tile-body{font-size:var(--fs-body);align-items:center;gap:8px;padding:10px 12px 11px;font-weight:700;display:flex}.variable-tile-check{color:var(--focus);margin-left:auto}.variable-tile:hover:not(:disabled){border-color:var(--selected-line)}.variable-tile[aria-pressed=true]{border-color:var(--selected-line);background:var(--surface);box-shadow:var(--shadow-card);color:var(--ink)}.variable-tile[aria-pressed=true] .ramp-strip{opacity:1;filter:none}.variable-tile:disabled{opacity:.45;cursor:not-allowed}.variable-tile:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.similarity-slider{width:100%;accent-color:var(--accent);margin:14px 0 4px}.similarity-scale{color:var(--ink-3);font-size:var(--fs-caption);justify-content:space-between;display:flex}.similarity-legend{border-radius:var(--radius);height:10px;margin:16px 0 5px}.similarity-hint{color:var(--ink-3);font-size:var(--fs-small);margin:12px 0 0;line-height:1.6}.similarity-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.map-switch{color:var(--ink-2);font-size:var(--fs-small);cursor:pointer;align-items:center;gap:8px;font-weight:700;display:flex;position:relative}.map-switch input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.map-switch-track{border-radius:var(--radius-pill);background:var(--line-strong);flex:none;order:1;width:28px;height:16px;transition:background .15s;position:relative}.map-switch-track:after{content:"";background:var(--surface);border-radius:50%;width:12px;height:12px;transition:transform .15s;position:absolute;top:2px;left:2px}.map-switch input:checked+.map-switch-track{background:var(--accent)}.map-switch input:checked+.map-switch-track:after{transform:translate(12px)}.map-switch input:focus-visible+.map-switch-track{outline:2px solid var(--focus);outline-offset:2px}.match-list{margin:10px 0 14px;padding:0;list-style:none}.match-row{min-height:var(--control);border-radius:var(--radius-sm);font-size:var(--fs-body);cursor:pointer;align-items:center;gap:10px;padding:0 4px;display:flex}.match-row:hover{background:var(--hover)}.match-row input{accent-color:var(--accent)}.match-list.stale{opacity:.45;pointer-events:none}.match-row .place-swatch.unmarked{box-sizing:border-box;border:2px solid var(--slot);background:0 0}.match-strength{color:var(--ink-3);font-size:var(--fs-small);font-variant-numeric:tabular-nums;margin-left:auto}.match-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.primary-action{width:100%;height:var(--control-lg);border:1px solid var(--accent);border-radius:var(--radius);background:var(--accent);color:var(--on-accent);font-size:var(--fs-body);justify-content:center;align-items:center;gap:8px;font-weight:700;display:flex}.primary-action:hover:not(:disabled){background:var(--accent-ink)}.primary-action:disabled{opacity:.45;cursor:not-allowed}.app-shell.is-fullscreen{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.is-fullscreen .map-toolbar,.is-fullscreen .map-footer,.is-fullscreen .about-popover,.is-fullscreen .inspector,.is-fullscreen .welcome-panel{display:none}.is-fullscreen .map-controls{top:max(16px, env(safe-area-inset-top));right:max(16px, env(safe-area-inset-right))}.is-fullscreen .map-attribution{right:max(8px, env(safe-area-inset-right));bottom:max(6px, env(safe-area-inset-bottom))}.map-legend,.fs-place{z-index:var(--z-overlay);left:max(12px, env(safe-area-inset-left));position:absolute}.map-legend{bottom:calc(14px + env(safe-area-inset-bottom));gap:8px;width:min(320px,100% - 24px);padding:8px 12px 10px;display:grid}.legend-time{align-items:center;gap:8px;display:flex}.legend-date{min-width:74px;font-size:var(--fs-body);text-align:right;font-variant-numeric:tabular-nums;flex:none;font-weight:600}.legend-play{width:var(--control-sm);height:var(--control-sm);border-radius:var(--radius);color:var(--accent);background:0 0;border:0;flex:none;place-items:center;margin-left:-6px;display:grid}.legend-play:hover{background:var(--hover)}.legend-slider{appearance:none;cursor:pointer;background:0 0;flex:1;min-width:0;height:24px;margin:0}.legend-slider::-webkit-slider-runnable-track{border-radius:var(--radius-pill);background:var(--line-control);height:4px}.legend-slider::-moz-range-track{border-radius:var(--radius-pill);background:var(--line-control);height:4px}.legend-slider::-webkit-slider-thumb{border:2px solid var(--accent);background:var(--surface);appearance:none;border-radius:50%;width:16px;height:16px;margin-top:-6px}.legend-slider::-moz-range-thumb{border:2px solid var(--accent);background:var(--surface);border-radius:50%;width:12px;height:12px}.legend-what{border-top:1px solid var(--line);gap:5px;padding-top:8px;display:grid}.legend-variable{font-size:var(--fs-body);text-overflow:ellipsis;white-space:nowrap;justify-content:space-between;align-items:center;gap:8px;font-weight:700;display:flex;overflow:hidden}.legend-scale-row{color:var(--ink-3);font-size:var(--fs-caption);font-variant-numeric:tabular-nums;align-items:center;gap:8px;display:flex}.legend-scale{border-radius:var(--radius-sm);flex:1;height:6px}.legend-filter{color:var(--ink-3);font-size:var(--fs-caption);flex-wrap:wrap;align-items:center;gap:4px;display:flex}.filter-chip{border-radius:var(--radius-pill);background:var(--fill);color:var(--ink-2);font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;gap:4px;padding:2px 7px;display:inline-flex}.filter-chip strong{color:var(--ink)}.legend-filter-clear{color:var(--accent-ink);font:inherit;background:0 0;border:0;margin-left:4px;padding:0;text-decoration:underline}.legend-what-button{width:100%;color:inherit;text-align:left;background:0 0;border-bottom:0;border-left:0;border-right:0;padding-bottom:0;padding-left:0;padding-right:0}.legend-variable svg{color:var(--ink-3);flex:none}.legend-date-button{min-height:var(--control-sm);color:inherit;background:0 0;border:0;flex:none;align-items:center;gap:2px;padding:0 0 0 4px;display:flex}.legend-date-button .legend-date{min-width:0}.legend-date-button svg{color:var(--ink-3)}.fs-place{top:max(16px, env(safe-area-inset-top));align-items:center;gap:12px;max-width:calc(100% - 80px);padding:8px 8px 8px 12px;display:flex}.fs-place strong{min-width:0;font-size:var(--fs-readout);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fs-place button{min-height:var(--control-lg);border-radius:var(--radius);background:var(--accent);color:var(--on-accent);border:0;padding:0 14px;font-weight:600}@media (width<=860px){.is-fullscreen .map-controls button{width:var(--touch);height:var(--touch)}}.map-tip{bottom:28px}@media (width<=760px){.map-legend{bottom:calc(34px + env(safe-area-inset-bottom))}}@media (width<=1120px){.toolbar-select svg{display:none}.brand-lockup{width:154px}.timeline-panel{padding-left:15px;padding-right:15px}}@media (width<=860px){.inspector{border-left:0;border-top:1px solid var(--line)}.inspector-head{height:48px;padding:0 20px}.inspector-scroll{padding:0 20px 24px}.place-heading{padding:18px 0 16px}.place-heading h1{font-size:var(--fs-heading)}.map-controls{top:10px;right:10px}.basemap-popover{top:10px;right:52px}.map-footer{flex-direction:column;height:auto;min-height:0;max-height:50dvh;overflow-y:auto}.timeline-panel{padding:8px 14px 6px}.timeline-title em{font-size:var(--fs-micro)}.period-rail-row{margin-top:6px}}@media (width<=430px){.timeline-panel{padding-left:10px;padding-right:10px}.timeline-title{gap:6px}.map-attribution{font-size:var(--fs-nano)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.wind-canvas{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.wind-panel{z-index:var(--z-overlay);border:1px solid var(--line-control);border-radius:var(--radius-lg);background:var(--surface);width:244px;color:var(--ink);font-size:var(--fs-small);box-shadow:var(--shadow-sm);gap:8px;padding:10px 12px;display:grid;position:absolute;top:12px;left:12px}.wind-title{align-items:center;gap:6px;font-weight:600;display:flex}.wind-error{color:var(--ink-3);margin:0;line-height:1.35}.app-shell.is-mobile,.app-shell.is-mobile.has-inspector{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.is-mobile .map-toolbar{gap:8px;padding:8px 10px;display:flex}.is-mobile .brand-lockup{display:none}.is-mobile .toolbar-search{flex:1;min-width:0;max-width:none}.is-mobile .search-field{height:var(--control-lg)}.is-mobile .toolbar-select{min-width:0;max-width:42%;padding-left:8px}.is-mobile .toolbar-select select{max-width:100%}.is-mobile .search-field kbd{display:none}.is-mobile .map-controls button{width:var(--touch);height:var(--touch)}.is-mobile .about-popover,.is-mobile .error-banner{bottom:150px}.mobile-welcome{z-index:var(--z-overlay);font-size:var(--fs-small);gap:6px;padding:8px 34px 8px 12px;display:grid;position:absolute;top:10px;left:10px;right:68px}.mobile-welcome p{margin:0}.mobile-welcome div{flex-wrap:wrap;gap:6px;display:flex}.mobile-welcome div button{min-height:var(--control-sm);border:1px solid var(--line-control);border-radius:var(--radius-pill);background:var(--surface);color:var(--ink);font-size:var(--fs-small);padding:0 12px;font-weight:600}.mobile-welcome .icon-button{position:absolute;top:4px;right:4px}.place-sheet{z-index:var(--z-sheet);border-radius:var(--radius-xl) var(--radius-xl) 0 0;background:var(--paper);box-shadow:var(--shadow-sheet);flex-direction:column;transition:height .22s;display:flex;position:fixed;bottom:0;left:0;right:0}.place-sheet.dragging{transition:none}.sheet-grip{cursor:grab;touch-action:none;background:0 0;border:0;flex:none;place-items:center;width:100%;height:26px;display:grid}.sheet-grip span{border-radius:var(--radius-pill);background:var(--line-control);width:40px;height:4px}.sheet-body{min-height:0;padding-bottom:env(safe-area-inset-bottom);flex-direction:column;flex:1;display:flex}.place-sheet .inspector{border:0;flex:1}.place-sheet-peek .inspector-scroll{overflow:hidden}.settings-layer{z-index:var(--z-modal);flex-direction:column;justify-content:flex-end;display:flex;position:fixed;inset:0}.settings-backdrop{background:var(--scrim);border:0;position:absolute;inset:0}.settings-sheet{border-radius:var(--radius-xl) var(--radius-xl) 0 0;background:var(--paper);flex-direction:column;max-height:86dvh;display:flex;position:relative}.settings-sheet .timeline-title .title-name{display:none}.settings-sheet header{border-bottom:1px solid var(--line);font-size:var(--fs-readout);flex:none;justify-content:space-between;align-items:center;padding:6px 8px 6px 18px;display:flex}.settings-body{padding-bottom:env(safe-area-inset-bottom);overflow:auto}.map-footer.sheet-footer{border-top:0;height:auto;min-height:0;max-height:none;display:block;overflow:visible}.place-sheet .inspector-head{height:var(--control);padding:0 10px 0 20px}.place-sheet .place-heading{padding:4px 0 12px}.place-sheet .place-heading h1{font-size:var(--fs-heading)}
