:root {
  --forest:#173f32;
  --forest-deep:#0f2f25;
  --forest-soft:#e6eee9;
  --gold:#c6a15b;
  --gold-soft:#efe2c4;
  --ink:#1d2a25;
  --muted:#68736e;
  --paper:#f5f2ea;
  --card:#fffefa;
  --line:#d9d4c7;
  --focus:#d59a34;
  color:var(--ink);
  background:var(--paper);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:15px;
}

*{box-sizing:border-box}
body{margin:0;min-width:300px;background:linear-gradient(#f1eee5,#faf9f5 32rem)}
button,input,select{font:inherit;color:inherit}
a{color:var(--forest)}
.skip-link{position:fixed;left:1rem;top:-5rem;z-index:99;background:#fff;padding:.7rem 1rem}
.skip-link:focus{top:1rem}
:focus-visible{outline:3px solid var(--focus);outline-offset:2px}

.site-header{
  min-height:112px;
  padding:1.05rem clamp(1rem,4vw,3.8rem);
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:clamp(1rem,3vw,3rem);
  color:#fff;
  background:
    radial-gradient(circle at 72% -40%,#2f6650 0,transparent 48%),
    linear-gradient(120deg,var(--forest-deep),var(--forest));
  border-bottom:4px solid var(--gold);
}
.brand{display:flex;align-items:center;gap:.8rem;color:#fff;text-decoration:none;line-height:1}
.brand-mark{display:grid;place-items:center;width:48px;height:48px;border:1px solid #dfc17f;border-radius:50%;font-family:Georgia,serif;font-size:1.15rem;color:#efd79e}
.brand small{display:block;margin-bottom:.32rem;color:#dfc98e;font-size:.66rem;font-weight:750;letter-spacing:.17em;text-transform:uppercase}
.brand strong{display:block;font-family:Georgia,"Times New Roman",serif;font-size:1.28rem;font-weight:500;letter-spacing:.02em;text-transform:uppercase}
.brand-promise{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.25rem,2.1vw,2rem);font-style:italic;text-align:center;color:#f8f2e4}
.freshness{display:grid;gap:.22rem;text-align:right;color:#dce7e0;font-size:.72rem}

.shell{display:grid;grid-template-columns:238px minmax(0,1fr);max-width:1580px;margin:auto;min-height:calc(100vh - 157px);background:#ffffff66;border-inline:1px solid #ded9cc}
.territory-panel{position:relative;border-right:1px solid var(--line);padding:1.35rem 1rem;background:#eeece4}
.territory-panel>label{display:block;margin-bottom:.42rem;color:var(--forest);font-size:.7rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.territory-panel input{width:100%;border:1px solid #bcb7aa;border-radius:3px;padding:.68rem .7rem;background:#fffefa;box-shadow:inset 0 1px 2px #0000000d}
.geo-picker{display:grid;gap:.34rem;margin:1.2rem 0 0;padding:.8rem;border:1px solid #cec8b9;background:#f7f4ec}
.geo-picker legend{padding:0 .35rem;color:var(--forest);font-family:Georgia,"Times New Roman",serif;font-weight:650}
.geo-picker label{margin-top:.28rem;color:#746f63;font-size:.65rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.geo-picker select{width:100%;min-width:0;border:1px solid #bcb7aa;border-radius:2px;padding:.48rem .45rem;background:#fffefa;font-size:.76rem}
.geo-picker option.local-station{font-weight:800!important;color:var(--forest-deep)}
.geo-picker optgroup{color:var(--forest-deep);font-style:normal;font-weight:800}
.geo-picker optgroup option{color:#2f3b35;font-weight:500}
.geo-picker optgroup option.local-station{font-weight:800!important}
.geo-station-hint{margin-top:.18rem;color:var(--forest);font-size:.67rem;font-weight:750;line-height:1.35}
.geo-picker select:disabled{opacity:.55}
.search-results{position:absolute;z-index:10;width:285px;max-height:55vh;overflow:auto;list-style:none;margin:.3rem 0 0;padding:.35rem;background:#fff;border:1px solid var(--line);box-shadow:0 12px 32px #10291f33}
.search-results button{width:100%;border:0;border-radius:2px;padding:.55rem;background:none;text-align:left}
.search-results button:hover{background:var(--forest-soft)}
.search-results small{display:block;color:var(--muted)}
main{min-width:0;padding:clamp(1rem,2.5vw,2.2rem)}
.breadcrumb{display:flex;align-items:center;gap:.4rem;min-height:1.5rem;flex-wrap:wrap;color:var(--muted);font-size:.78rem}
.breadcrumb a{text-decoration:none}
.breadcrumb span:not(:last-child)::after,.breadcrumb a::after{content:"›";margin-left:.4rem;color:var(--gold)}
.territory-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin:.7rem 0 1.15rem;padding-bottom:1rem;border-bottom:1px solid var(--line)}
.eyebrow{margin:0 0 .28rem;color:#8b6c31;font-size:.66rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.territory-heading h1,.section-title h2{margin:0;font-family:Georgia,"Times New Roman",serif;font-weight:500;line-height:1.08}
.territory-heading h1{font-size:clamp(2rem,3.4vw,3.15rem);color:var(--forest-deep)}
.status-pill{margin:0;padding:.32rem .65rem;border:1px solid #bad1c2;border-radius:999px;background:#e2eee6;color:#276044;font-size:.72rem;white-space:nowrap}
.status-pill.degraded{border-color:#e1c48f;background:#fff0d5;color:#83551c}

.section-tabs{display:flex;gap:0;overflow:auto;border-bottom:1px solid #bdb7a8;scrollbar-width:thin}
.section-tabs button{flex:1 1 0;min-width:10.5rem;white-space:normal;text-wrap:balance;line-height:1.2;border:0;border-bottom:3px solid transparent;padding:.62rem .78rem;background:transparent;color:#56635d;font-size:.8rem;font-weight:700}
.section-tabs button.active{border-bottom-color:var(--gold);background:transparent;color:var(--forest-deep)}
.view{display:none}.view.active{display:block}
.section-title{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin:1.45rem 0 .8rem}
.section-title h2{font-size:.75rem;color:var(--forest-deep)}

.forecast-card,.content-card,.cycle-card{border:1px solid var(--line);border-radius:2px;background:var(--card);box-shadow:0 4px 18px #26372e0b}
.forecast-card{padding:1rem}
.legend{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem 1rem;padding:.15rem .2rem .7rem;color:#526569;font-size:.7rem}.legend i{display:inline-block;vertical-align:middle;margin-right:.25rem}.forecast-legend{align-items:flex-start;line-height:1.25}.forecast-legend>span{min-width:0}.forecast-model-legend{display:inline-flex;align-items:center;gap:.28rem;max-width:100%}.forecast-model-legend[hidden]{display:none}.legend .forecast-model-legend i{flex:0 0 auto;margin-right:0}.forecast-model-copy{display:inline-flex;align-items:baseline;flex-wrap:wrap;gap:.1rem .28rem;min-width:0}.forecast-model-copy strong{color:var(--forest-deep);font-size:.7rem}.forecast-model-runs{color:#66685f;font-size:.62rem;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.dot{width:8px;height:8px;border-radius:50%}.dot.tn{background:#237aa8}.dot.tx{background:#cf5a35}.model-line{width:18px;border-top:3px solid}.model-line.arome{border-color:#7d4bb2}.model-line.arpege{border-color:#e68a2e}.model-line.ecmwf{border-color:#2777b8}.model-line.gfs{border-color:#627178}.dash{width:18px;border-top:2px dashed #788}.bar{width:8px;height:11px}.bar.rr{background:#2d9560}.bar.etp{background:#9a6a45}
.chart-wrap{position:relative;width:100%;min-height:440px}.chart-wrap canvas{display:block;width:100%;max-width:100%}.chart-wrap canvas,.series-chart,.rolling-chart{touch-action:pan-y pinch-zoom}.chart-tooltip{position:absolute;pointer-events:none;max-width:260px;padding:.52rem .6rem;border-radius:3px;background:#102f36ee;color:#fff;font-size:.72rem;line-height:1.45;box-shadow:0 5px 18px #0003}.chart-tooltip strong,.chart-tooltip span{display:block}.chart-tooltip span{color:#d9e8e7}
.visual-intro{margin:.1rem .15rem 1rem;padding:.72rem .9rem;border-left:3px solid var(--gold);background:#f6f0e3;color:#5b5e53;font-size:.78rem;line-height:1.5}
.safran-visual-grid{display:grid;gap:1rem}
.safran-visual{position:relative;margin:0;padding:.9rem;border:1px solid #d5d2ca;background:#f5f6f8;overflow:hidden}
.rolling-chart-header h3{margin:0;color:var(--forest-deep);font-family:Georgia,"Times New Roman",serif;font-size:1.25rem;font-weight:600}
.rolling-summary,.rolling-legend{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem .8rem;margin-top:.55rem;color:#596660;font-size:.7rem}
.rolling-badge{padding:.22rem .42rem;border:1px solid var(--badge-color);border-left-width:4px;border-radius:2px;background:#fff;color:#263b35;font-weight:750}
.rolling-legend i{display:inline-block;margin-right:.28rem;vertical-align:middle}.rolling-dot{width:8px;height:8px;border-radius:50%;background:var(--legend-color)}.rolling-normal-sample{width:19px;border-top:2px solid #666a70}.rolling-record-sample{width:15px;height:9px;border:1px solid #b8bcc2;background:#d4d7dc}.rolling-forecast-sample{width:15px;height:9px;border:1px solid #d5b84d;background:#fff0b3}
.rolling-chart-wrap{position:relative;margin-top:.45rem}
.rolling-chart{display:block;width:100%;height:auto;min-height:300px}
.rolling-grid line{stroke:#d9dde1;stroke-width:1}.rolling-grid text{fill:#6f7378;font:12px system-ui;text-anchor:end}.rolling-grid line:nth-of-type(n){stroke-dasharray:2.2 4.2;opacity:.52}.rolling-grid .rolling-axis-unit{fill:#4f5c56;font-size:11px;font-weight:750}.rolling-record-band{fill:#d4d7dc;stroke:#b8bcc2;stroke-width:.8}.rolling-normal-line{fill:none;stroke:#666a70;stroke-width:2;stroke-linejoin:round}.rolling-departure{opacity:.92}.rolling-departure.forecast{opacity:.78}.rolling-forecast-zone{fill:#fff0b3;opacity:.55}.rolling-forecast-boundary{stroke:#b68a00;stroke-width:1.2;stroke-dasharray:4 4;opacity:.75}.rolling-hit{fill:transparent;pointer-events:all}
.safran-visual .chart-tooltip{z-index:3}
.visual-hover-line{position:absolute;z-index:2;top:7.5%;bottom:14.5%;width:1px;background:#173f32b3;pointer-events:none}
.accessible-data{margin-top:.8rem;padding:.7rem .2rem 0;border-top:1px solid var(--line);font-size:.75rem}
.accessible-data summary{cursor:pointer;color:var(--forest);font-weight:750}
.forecast-wind-panel{margin-top:1.1rem;padding:1rem .2rem .15rem;border-top:2px solid var(--line)}
.forecast-wind-heading{display:flex;align-items:baseline;justify-content:space-between;gap:.7rem 1rem;flex-wrap:wrap;padding:0 .15rem}
.forecast-wind-heading h3{margin:0;color:var(--forest-deep);font-family:Georgia,"Times New Roman",serif;font-size:1.02rem;font-weight:600}
.forecast-wind-heading p,.forecast-wind-status{margin:.25rem 0 0;color:#68736e;font-size:.68rem;line-height:1.4}
.forecast-wind-legend{display:flex;align-items:center;flex-wrap:wrap;gap:.3rem .9rem;margin:.42rem .15rem 0;color:#596660;font-size:.68rem}.forecast-wind-legend span{display:inline-flex;align-items:center;gap:.3rem}.forecast-wind-line-sample{display:inline-block;width:20px;border-top:2.3px solid #596660}.forecast-wind-gust-sample{display:inline-block;width:8px;height:8px;background:#596660;transform:rotate(45deg)}
.forecast-wind-status:empty{display:none}.forecast-wind-status[data-state="unavailable"],.forecast-wind-status[data-state="partial"]{margin:.75rem .15rem;padding:.65rem .75rem;border-left:3px solid #a98532;background:#f6f0e3;color:#5b5e53}
.forecast-wind-status[data-state="info"]{margin:.75rem .15rem;padding:.65rem .75rem;border-left:3px solid #6f8b91;background:#eef4f4;color:#465b5d}
.forecast-wind-chart-wrap{position:relative;width:100%;min-height:430px;margin-top:.65rem}.forecast-wind-chart-wrap canvas{display:block;width:100%;max-width:100%;touch-action:pan-y pinch-zoom}.forecast-wind-chart-wrap .chart-tooltip{z-index:3}
.forecast-wind-data{margin-top:.65rem}.forecast-wind-data .table-wrap{max-height:34rem}.forecast-wind-data th:first-child,.forecast-wind-data td:first-child{white-space:nowrap}.forecast-wind-direction{display:flex;align-items:center;gap:.38rem;min-width:10rem}.forecast-wind-arrow{display:inline-block;flex:0 0 1.2rem;color:#73558c;font-size:1.15rem;font-weight:850;line-height:1;text-align:center;transform:rotate(var(--wind-rotation));transform-origin:center}.forecast-wind-gust-label{color:var(--forest-deep);font-weight:750}

.content-card{padding:1.1rem}
.cycle-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}
#rolling-content{grid-template-columns:1fr}
#monthly-content{display:block}
.series-visual-grid{display:grid;gap:1rem}
.cycle-card{min-height:240px;padding:.8rem}
.series-card{min-height:0;padding:1rem}
.cycle-card h3{margin:0 0 .55rem;color:var(--forest);font-family:Georgia,"Times New Roman",serif;font-size:1.08rem;font-weight:600}
.series-legend{display:flex;align-items:center;gap:.5rem 1.2rem;flex-wrap:wrap;margin:.25rem 0 .1rem;color:#53615b;font-size:.7rem}.series-legend i{display:inline-block;width:19px;height:3px;margin-right:.28rem;vertical-align:middle}.series-legend i.bar{height:9px}.series-legend i.normal{height:0;border-top:2px dashed #788;background:transparent}.series-chart-wrap{position:relative}.series-chart{display:block;width:100%;height:auto;min-height:240px}.series-card:focus{outline:2px solid #b88d2a;outline-offset:2px}.chart-grid line{stroke:#ded9cc;stroke-width:1}.chart-grid .zero-line{stroke:#6f756f;stroke-width:1.5}.chart-grid text,.chart-labels text{fill:#706f68;font:12px system-ui}.chart-grid text{text-anchor:end}.chart-labels .axis-unit-label{fill:#4f5c56;font-size:11px;font-weight:750}.chart-labels .right-axis-label{text-anchor:start}.chart-labels .right2{fill:#166f78}.chart-lines path{fill:none;stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round}.chart-lines path.series-normal-line{stroke-width:1.35;stroke-dasharray:5 6;opacity:.48}.chart-lines circle{stroke:#fff;stroke-width:1.2}.chart-lines rect{opacity:.88}.series-hit{fill:transparent;pointer-events:all}.series-hover-line{position:absolute;z-index:2;top:8%;bottom:17%;width:1px;background:#173f32b3;pointer-events:none}.series-chart-wrap .chart-tooltip{z-index:3}
.data-card .table-wrap{max-height:33rem}
.loading{color:var(--muted)}
.empty{padding:2rem;text-align:center;color:var(--muted)}
.table-wrap{overflow:auto;max-height:430px;margin-top:.55rem}
table{width:100%;border-collapse:collapse;font-size:.72rem}
th,td{padding:.46rem .5rem;border-bottom:1px solid #e8e4da;text-align:right;white-space:nowrap}
th:first-child,td:first-child{text-align:left}
th{position:sticky;top:0;z-index:1;background:#f0ede4;color:var(--forest-deep)}
.published-value small{display:block;color:var(--muted);font-size:.63rem;font-weight:500}

.threshold-intro{display:grid;gap:.22rem;margin-bottom:1rem;padding:.85rem 1rem;border-left:3px solid var(--gold);background:#f6f0e3;color:#5b5e53;font-size:.76rem;line-height:1.5}
.threshold-intro strong{color:var(--forest-deep);font-size:.84rem}
.threshold-confidence{margin:0 0 1rem;padding:.9rem 1rem;border:1px solid #c9d8cf;border-left:4px solid var(--forest);background:var(--forest-soft);color:#43534c;font-size:.76rem;line-height:1.5}
.threshold-confidence-header{margin-bottom:.35rem}.threshold-confidence-eyebrow{margin:0;color:#507064;font-size:.63rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.threshold-confidence h3{margin:.08rem 0;color:var(--forest-deep);font-family:Georgia,"Times New Roman",serif;font-size:1rem;font-weight:600}.threshold-confidence-source{margin:.2rem 0 .55rem}.threshold-confidence ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem 1rem;margin:.3rem 0 .65rem;padding-left:1.05rem}.threshold-confidence li::marker{color:var(--forest)}.threshold-confidence-limit{margin:0;padding-top:.45rem;border-top:1px solid #bfd0c6;color:#344a40}
.threshold-grid-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.threshold-card{min-width:0;padding:1rem;border:1px solid var(--line);background:var(--card);box-shadow:0 4px 18px #26372e0b}
.threshold-card h3{margin:0 0 .65rem;color:var(--forest);font-family:Georgia,"Times New Roman",serif;font-size:1.08rem;font-weight:600}
.threshold-legend{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem .85rem;min-height:2.2rem;color:#53615b;font-size:.68rem}
.threshold-legend i{display:inline-block;width:18px;margin-right:.25rem;border-top:3px solid var(--series-color);vertical-align:middle}
.threshold-legend i.trend-sample{border-top:2px dashed #5e6b65}
.threshold-legend i.break-sample{height:14px;width:8px;border-top:0;border-left:2px dotted #5e6b65}
.threshold-legend i.break-suggestive-sample{opacity:.48}
.threshold-chart-wrap{width:100%;overflow-x:auto}
[data-threshold-scroll-region]:focus-visible{outline:3px solid #276f9f;outline-offset:3px;border-radius:2px}
.threshold-chart{display:block;width:100%;min-width:570px;height:auto}
.threshold-grid line{stroke:#ded9cc;stroke-width:1}.threshold-grid text{fill:#605f59;font:18px system-ui;text-anchor:end}
.threshold-axis text{fill:#605f59;font:18px system-ui;text-anchor:middle}.threshold-axis .threshold-y-label{font-weight:700}
.threshold-observed{fill:none;stroke-width:1.65;stroke-linejoin:round;stroke-linecap:round}
.threshold-trend{stroke-width:2.1;stroke-dasharray:7 5}
.threshold-trend-suggestive{opacity:.62}
.threshold-projection{fill:none;stroke-width:2.1;stroke-dasharray:3 5;stroke-linejoin:round;stroke-linecap:round;opacity:.78}
.threshold-break{stroke:#5e6b65;stroke-width:1.2;stroke-dasharray:2 4;opacity:.82}
.threshold-break-suggestive{stroke-dasharray:1 7;opacity:.48}
.threshold-break-descriptive{stroke-dasharray:1 8;opacity:.36}
.threshold-chart circle{stroke-width:1.2}.threshold-chart circle.incomplete{stroke-width:1.8}.threshold-chart circle.outside-trend-period{stroke-dasharray:1.5 1.5;opacity:.72}
.threshold-data{margin-top:.2rem}.threshold-data .table-wrap{max-height:24rem}.threshold-incomplete{color:#8b6c31;font-style:italic}
.threshold-station-toolbar{justify-content:flex-start}.threshold-station-toolbar select{min-width:min(100%,340px)}
.threshold-supplementary{margin-top:1.25rem;padding-top:1.1rem;border-top:2px solid #d9d4c7}
.threshold-supplementary-header{margin:0 0 .8rem;padding:.85rem 1rem;border-left:4px solid var(--forest);background:var(--forest-soft);color:#43534c;font-size:.76rem;line-height:1.5}
.threshold-supplementary-header h3{margin:.08rem 0 .25rem;color:var(--forest-deep);font-family:Georgia,"Times New Roman",serif;font-size:1.12rem;font-weight:600}
.threshold-supplementary-header p:last-child{margin:.25rem 0 0}
.threshold-metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.threshold-metric-card{padding:.9rem}.threshold-metric-card-wide{grid-column:1/-1}
.threshold-card h4{margin:0 0 .55rem;color:var(--forest);font-family:Georgia,"Times New Roman",serif;font-size:1rem;font-weight:600}
.threshold-metric-definition{min-height:2.2em;margin:-.2rem 0 .55rem;color:#596660;font-size:.68rem;line-height:1.4}
.threshold-metric-table{max-height:27rem;margin-top:.35rem;border-top:1px solid #e8e4da}
.threshold-metric-table table{min-width:100%;font-variant-numeric:tabular-nums}
.threshold-metric-table th,.threshold-metric-table td{padding:.42rem .46rem}
.threshold-metric-table thead th{white-space:normal;line-height:1.25;vertical-align:bottom}
.threshold-metric-table tbody th{position:static;z-index:auto;background:#fffefa;color:var(--forest-deep);font-weight:750}
.threshold-metric-card:not(.threshold-metric-card-wide) .threshold-metric-table table{min-width:430px}
.threshold-coverage-note{margin:.65rem .1rem 0}
.threshold-unavailable{margin:0;padding:.8rem 1rem;border:1px dashed #cfc8b8;background:#fffefa;color:var(--muted);font-size:.75rem}
.threshold-scroll-hint{display:none;margin-top:.45rem;color:#40584e;font-size:.68rem;font-weight:750}

.map-toolbar{display:flex;align-items:end;flex-wrap:wrap;gap:.65rem 1rem;margin-bottom:.8rem;color:var(--forest);font-size:.76rem;font-weight:700}
.map-control{display:grid;gap:.25rem}.map-control label{font-size:.68rem;letter-spacing:.05em;text-transform:uppercase}
.map-toolbar select{min-width:240px;border:1px solid #bcb7aa;border-radius:2px;padding:.42rem .5rem;background:#fff}
.map-figure{position:relative;display:grid;place-items:center;margin:0;background:#fff;overflow:hidden}.map-figure.has-vector-legend{grid-template-columns:minmax(0,1fr) minmax(88px,112px);gap:clamp(.45rem,1.4vw,1rem);padding:.25rem clamp(.15rem,1vw,.65rem)}
.map-figure img{display:block;width:100%;max-width:840px;height:auto;min-height:280px;object-fit:contain}.map-figure img[hidden]{display:none}
.map-vector{display:grid;place-items:center;width:100%;min-width:0;min-height:280px}.map-vector[hidden]{display:none}.map-figure.has-vector-legend .map-vector{grid-column:1}.department-map{display:block;width:100%;max-width:920px;height:auto;max-height:72vh;background:#fff;touch-action:manipulation}
.map-area{stroke:#777f7a;stroke-width:.75;vector-effect:non-scaling-stroke;transition:filter .12s ease,stroke-width .12s ease}.map-area:hover,.map-area.active,.map-area:focus-visible,.map-area-anchor:focus-visible .map-area{filter:brightness(.9) saturate(1.08);stroke:#102f25;stroke-width:2;outline:none}.map-area-anchor:focus{outline:none}.map-area-link{cursor:pointer}
.map-observations{isolation:isolate}.map-observation{cursor:help;outline:none}.map-observation-label{font-family:Arial,sans-serif;font-weight:700;pointer-events:none}.map-observation-marker{transition:r .12s ease,stroke-width .12s ease}.map-observation:hover .map-observation-marker,.map-observation:focus-visible .map-observation-marker{stroke:#b88d2a;stroke-width:2.25}
.map-tooltip{position:absolute;z-index:4;pointer-events:none;min-width:140px;max-width:240px;padding:.5rem .62rem;border-radius:3px;background:#102f36ee;color:#fff;font-size:.74rem;line-height:1.4;box-shadow:0 5px 18px #0003}.map-tooltip strong,.map-tooltip span{display:block}.map-tooltip span{color:#d9e8e7}
.map-legend{grid-column:2;align-self:center;display:grid;gap:.45rem;width:100%;min-width:0;margin:0;color:#53615b;font-size:.64rem}.map-legend[hidden]{display:none}.map-legend-title{color:var(--forest-deep);font-size:.7rem;line-height:1.25;text-align:center}.map-legend-scale{position:relative;display:grid;grid-template-columns:18px minmax(42px,1fr);gap:.38rem;width:100%;height:var(--map-legend-height,300px);min-height:220px;max-height:min(62vh,520px);padding-block:.5rem}.map-legend-bar{display:flex;flex-direction:column;min-height:0;border:1px solid #59645e;background:#fff;box-shadow:0 0 0 1px #fff}.map-legend-segment{display:block;flex:1 1 0;min-height:1px}.map-legend-segment-exact-zero{box-shadow:inset 0 0 0 1px #8a918d}.map-legend-segment-extension-max{clip-path:polygon(50% 0,100% 100%,0 100%)}.map-legend-segment-extension-min{clip-path:polygon(0 0,100% 0,50% 100%)}.map-legend-ticks{position:relative;min-width:0}.map-legend-tick{position:absolute;top:var(--map-legend-tick-position);left:0;max-width:100%;transform:translateY(-50%);color:#45544e;font-variant-numeric:tabular-nums;line-height:1;white-space:nowrap}.map-legend-tick::before{content:"";position:absolute;top:50%;right:calc(100% + .14rem);width:.3rem;border-top:1px solid #59645e}.map-legend-descriptions{list-style:none}
.caption{margin:.55rem 0 0;color:var(--muted);font-size:.72rem;line-height:1.45}
.map-explainers{margin-top:1rem;padding:.9rem 1rem;border:1px solid #c9d8cf;border-left:4px solid var(--forest);background:var(--forest-soft)}
.map-explainers h3{margin:0 0 .55rem;color:var(--forest-deep);font-family:Georgia,"Times New Roman",serif;font-size:1rem;font-weight:600}
.map-variable-explainer{margin:0 0 .72rem;color:#40584e;font-size:.78rem;line-height:1.5}
.map-explainer-links{display:flex;flex-wrap:wrap;gap:.45rem .7rem}
.map-explainer-link{display:inline-flex;align-items:center;gap:.4rem;border:1px solid #b9cec1;border-radius:999px;padding:.42rem .72rem;background:#fff;color:var(--forest-deep);font-size:.72rem;font-weight:700;line-height:1.35;text-decoration:none}
.map-explainer-link:hover,.map-explainer-link:focus-visible{border-color:var(--forest);background:#f8fbf8;text-decoration:underline;text-underline-offset:2px}
.map-explainer-link span{color:var(--gold);font-size:.9rem}

footer{padding:.85rem 1rem;border-top:1px solid var(--line);background:#ebe8df;text-align:center;color:var(--muted);font-size:.68rem}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

@media(max-width:980px){
  .site-header{grid-template-columns:1fr auto}.brand-promise{display:none}
  .shell{grid-template-columns:1fr}.territory-panel{display:grid;grid-template-columns:auto minmax(200px,1fr);align-items:center;gap:.6rem;border:0;border-bottom:1px solid var(--line);padding:.75rem 1rem}.territory-panel>label{margin:0}.geo-picker{grid-column:1/-1;grid-template-columns:repeat(3,minmax(130px,1fr));align-items:end;margin:.35rem 0}.geo-picker legend{grid-column:1/-1}.geo-picker label{display:none}
  .cycle-grid,.threshold-grid-cards,.threshold-metric-grid{grid-template-columns:1fr}.threshold-confidence ul{grid-template-columns:1fr}.section-title{align-items:start}
}
@media(max-width:600px){
  :root{font-size:14px}.site-header{min-height:96px;padding:.8rem 1rem}.brand-mark{width:40px;height:40px}.freshness{font-size:.62rem}.shell{border:0}.territory-panel{display:block}.territory-panel input{margin-top:.35rem}.geo-picker{display:grid;grid-template-columns:1fr 1fr}.search-results{width:calc(100vw - 2rem)}main{padding:.9rem}.territory-heading{align-items:start}.section-title{display:block}.forecast-card{padding:.55rem}.forecast-legend{gap:.4rem .75rem}.forecast-model-copy strong{font-size:.68rem}.forecast-model-runs{font-size:.6rem}.chart-wrap{min-height:420px}.forecast-wind-panel{padding-inline:0}.forecast-wind-chart-wrap{min-height:420px}.series-card{padding:.5rem}.series-chart{min-height:200px}.safran-visual{padding:.5rem}.rolling-chart{min-height:220px}.threshold-supplementary-header{padding:.75rem .8rem}.threshold-metric-card{padding:.7rem}.threshold-metric-table{max-height:23rem}.threshold-scroll-hint{display:block}.map-toolbar{align-items:stretch;flex-direction:column}.map-control,.map-toolbar select{width:100%}.map-figure img,.map-vector{min-height:240px}.map-figure.has-vector-legend{grid-template-columns:minmax(0,1fr) minmax(64px,82px);gap:.35rem;padding:.15rem 0}.map-legend{font-size:.57rem}.map-legend-title{font-size:.62rem}.map-legend-scale{grid-template-columns:14px minmax(36px,1fr);gap:.3rem;min-height:210px}.map-legend-tick::before{right:calc(100% + .1rem);width:.22rem}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Fixed UTC ticks: retain readable six-hour labels on narrow screens. */
.forecast-timeline{overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin}.forecast-timeline canvas{max-width:none;touch-action:pan-x pan-y pinch-zoom}

.forecast-scroll-hint{margin:.25rem 0 .55rem;color:#526569;font-size:.72rem}

.forecast-temperature-key{font-size:.82rem;color:#526569;margin:8px 0 12px;line-height:1.5}

.threshold-mode-control{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem .65rem;margin:.4rem 0 .6rem;color:var(--forest);font-size:.72rem}
.threshold-mode-control select{min-width:0;max-width:100%;padding:.3rem .45rem;border:1px solid var(--line);border-radius:3px;background:var(--card);font:inherit;color:inherit}
.threshold-mode-note{margin:.3rem 0 .6rem;font-size:.68rem;line-height:1.4;color:var(--muted)}

/* BEGIN independent probabilistic refresh status */
.ensemble-refresh-status{margin:-.3rem 0 .75rem;padding:.55rem .78rem;border-left:3px solid #78947f;background:#f5f7f3;color:#40534a;font-size:.73rem;line-height:1.5;overflow-wrap:anywhere}
.ensemble-refresh-status[hidden]{display:none}
.ensemble-refresh-summary,.ensemble-refresh-detail{display:block}
.ensemble-refresh-summary{font-weight:650}
.ensemble-refresh-detail{margin-top:.2rem;color:#5b655f;font-size:.7rem}
.ensemble-refresh-detail:empty{display:none}
.ensemble-refresh-status[data-state="running"],.ensemble-refresh-status[data-state="queued"]{border-left-color:#2777b8}
.ensemble-refresh-status[data-state="stale"],.ensemble-refresh-status[data-state="error"]{border-left-color:#b87428;background:#fff0d5;color:#754b18}
.ensemble-refresh-status[data-state="unavailable"]{border-left-color:#8b918c;color:#626a66}

/* END independent probabilistic refresh status */

/* Fixed UTC ticks: retain readable six-hour labels on narrow screens. */
.forecast-timeline{overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin}.forecast-timeline canvas{max-width:none;touch-action:pan-x pan-y pinch-zoom}

.forecast-scroll-hint{margin:.25rem 0 .55rem;color:#526569;font-size:.72rem}

.forecast-temperature-key{font-size:.82rem;color:#526569;margin:8px 0 12px;line-height:1.5}
