/* Forecast Replay — shared base. Tokens are spec/tokens.css; pages style inline, as the
   design source does, and keep page-specific rules in their own <style> block. */
:root{
  --fr-paper:#F6F4EE;--fr-paper-2:#EDEAE1;--fr-card:#FFFFFF;--fr-slip-cream:#FFFDF6;
  --fr-rule:#D9D4C7;--fr-rule-strong:#B9B3A4;--fr-ink:#15181A;--fr-ink-2:#2B3134;--fr-ink-3:#3A3F42;
  --fr-ink-muted:#4A4F52;--fr-guide-green:#00653E;--fr-guide-green-dark:#004D2F;--fr-guide-green-tint:#E3F1E9;
  --fr-natgeo-yellow:#FFCC00;--fr-rest-area-blue:#1F4E9A;--fr-rest-area-blue-tint:#E6EDF8;
  --fr-wrong-way-red:#B8232B;--fr-broadcast-navy:#0E2A5C;--fr-broadcast-red:#E0261B;
  --fr-seam-era5:#2B3134;--fr-seam-analysis:#1F4E9A;--fr-seam-forecast:#00653E;--fr-seam-now:#B8232B;
  --fr-font-ui:Overpass,'Trebuchet MS',sans-serif;--fr-font-mono:'Overpass Mono',ui-monospace,monospace;
  --fr-font-editorial:'Source Serif 4',Georgia,serif;
  --fr-shadow-hard:4px 4px 0 #15181A;--fr-shadow-hard-green:3px 3px 0 #00653E;--fr-shadow-hard-red:3px 3px 0 #B8232B;
}
*,*::before,*::after{box-sizing:border-box}
html{color-scheme:light}
body{margin:0;background:var(--fr-paper);color:var(--fr-ink);font-family:var(--fr-font-ui);-webkit-font-smoothing:antialiased}
a{color:var(--fr-guide-green)}a:hover{color:var(--fr-guide-green-dark)}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
button:disabled,[aria-disabled="true"]{cursor:not-allowed;opacity:.55}
img{max-width:100%}
:focus-visible{outline:3px solid var(--fr-rest-area-blue);outline-offset:2px}
[hidden]{display:none!important}
.fr-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
/* toast: errors and confirmations, bottom centre */
#fr-toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);z-index:1000;display:flex;flex-direction:column;gap:8px;align-items:center;pointer-events:none}
#fr-toast>div{pointer-events:auto;background:var(--fr-ink);color:#fff;font-weight:600;font-size:15px;padding:12px 18px 10px;border-radius:6px;box-shadow:var(--fr-shadow-hard-green);max-width:min(560px,92vw)}
#fr-toast>div.err{box-shadow:var(--fr-shadow-hard-red)}
/* skeleton shimmer for images that are still rendering */
.fr-loading{background:repeating-linear-gradient(135deg,#EDEAE1 0 12px,#E4E0D4 12px 24px)}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* shared chrome (fr.js builds it) */
.fr-sitenav{display:flex;flex-wrap:wrap;align-items:center;gap:0 4px;margin-left:auto;flex:1 1 auto;justify-content:flex-end}
.fr-sitenav a{display:inline-flex;align-items:center;min-height:40px;padding:2px 10px 0;color:var(--fr-ink-muted);font-size:14px;font-weight:600;text-decoration:none;border-radius:4px}
.fr-sitenav a:hover{color:var(--fr-ink);text-decoration:underline}
.fr-sitenav a[aria-current]{color:var(--fr-ink);font-weight:800;box-shadow:inset 0 -3px 0 var(--fr-natgeo-yellow)}
header .fr-sitenav+a,header .fr-sitenav+button{margin-left:12px}
.fr-foot{background:var(--fr-paper);border-top:1px solid var(--fr-rule)}
.fr-foot>div,.fr-foot>nav{max-width:1320px;margin:0 auto;padding:0 clamp(16px,4vw,48px)}
.fr-foot{display:grid;grid-template-columns:minmax(0,620px) auto;justify-content:space-between;gap:20px 48px;padding:36px 0 48px;font-size:14px;color:var(--fr-ink-3)}
.fr-foot>div{display:flex;flex-direction:column;gap:8px;line-height:1.55}
.fr-foot .b{font-weight:800;color:var(--fr-ink)}
.fr-foot>nav{display:flex;flex-wrap:wrap;align-items:flex-start;gap:4px 24px;font-weight:600}
.fr-foot>nav a{color:var(--fr-ink);padding:12px 0}
@media (max-width:760px){.fr-foot{grid-template-columns:minmax(0,1fr)}}
.fr-skip{position:absolute;left:8px;top:-60px;z-index:1001;background:var(--fr-ink);color:#fff;font-weight:700;padding:10px 14px;border-radius:6px}
.fr-skip:focus{top:8px}
