*{box-sizing:border-box;margin:0}:root{color-scheme:light dark;--page: #f9f9f7;--surface: #fcfcfb;--ink: #0b0b0b;--ink-2: #52514e;--ink-muted: #898781;--grid: #e1e0d9;--border: rgba(11, 11, 11, .1);--accent: #2a78d6;--warm: #eb6834;--cool: #3987e5;--good: #1baf7a;--sky-day: #dcebf7;--sky-night: #1c2438}@media(prefers-color-scheme:dark){:root{--page: #0d0d0d;--surface: #1a1a19;--ink: #f2f1ec;--ink-2: #c3c2b7;--ink-muted: #898781;--grid: #2c2c2a;--border: rgba(255, 255, 255, .1);--accent: #3987e5;--warm: #d95926;--cool: #3987e5;--good: #199e70;--sky-day: #2a3b4d;--sky-night: #10141f}}body{background:var(--page);color:var(--ink);font:17px/1.65 system-ui,-apple-system,Segoe UI,sans-serif;padding:0 16px 64px}header.site{display:flex;align-items:baseline;gap:18px;flex-wrap:wrap;max-width:46rem;margin:0 auto;padding:22px 0 20px}header.site h1{font-size:1.15rem;font-weight:700}header.site h1 a{color:var(--ink);text-decoration:none}header.site h1 span{color:var(--accent);font-weight:400}header.site nav{margin-left:auto;display:flex;gap:14px;flex-wrap:wrap}header.site nav a{color:var(--ink-muted);text-decoration:none;font-size:.85rem}header.site nav a:hover{color:var(--accent)}main{max-width:46rem;margin:0 auto}main>*{min-width:0}footer{max-width:46rem;margin:56px auto 0;padding-top:16px;border-top:1px solid var(--grid);color:var(--ink-muted);font-size:.82rem}footer a{color:var(--ink-muted)}a{color:var(--accent)}.empty{color:var(--ink-2)}.home{display:grid;gap:28px}.hero h2{font-size:1.9rem;line-height:1.2;letter-spacing:-.015em;margin-bottom:12px}.hero p{color:var(--ink-2);max-width:40rem}.hero-cta{margin-top:16px}.btn{display:inline-block;background:var(--accent);color:#fff!important;text-decoration:none;font-weight:600;font-size:.95rem;padding:9px 18px;border-radius:10px}.btn:hover{filter:brightness(1.08)}.curriculum{list-style:none;padding:0;display:grid;gap:10px;counter-reset:c}.curriculum a{display:flex;gap:16px;align-items:baseline;text-decoration:none;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:14px 18px;color:var(--ink)}.curriculum a:hover{border-color:var(--accent)}.curriculum .num{font:700 1.05rem/1 ui-monospace,monospace;color:var(--accent);flex-shrink:0}.curriculum .body{display:grid;gap:3px}.curriculum .title{font-weight:650}.curriculum .tagline{color:var(--ink-2);font-size:.88rem}.curriculum .mins{margin-left:auto;color:var(--ink-muted);font-size:.8rem;white-space:nowrap}.home-note p{color:var(--ink-muted);font-size:.88rem}.course-meta{color:var(--ink-muted);font-size:.82rem}.course-meta a{color:var(--ink-muted)}.course h1{font-size:2.05rem;line-height:1.15;letter-spacing:-.015em;margin:8px 0 10px}.course .lede{color:var(--ink-2);font-size:1.12rem;margin-bottom:8px}.course h2{font-size:1.4rem;letter-spacing:-.01em;margin:40px 0 12px}.course p{margin:14px 0}.course ul,.course ol{margin:14px 0;padding-left:26px}.course li{margin:8px 0}.course li::marker{color:var(--ink-muted)}.course i{color:inherit}.takeaways{margin-top:40px;padding:18px 22px;background:color-mix(in srgb,var(--accent) 6%,var(--surface));border:1px solid color-mix(in srgb,var(--accent) 30%,transparent);border-radius:12px}.takeaways h3{font-size:.92rem;margin-bottom:6px}.takeaways ul{margin:0;padding-left:22px}.takeaways li{margin:7px 0;font-size:.92rem;color:var(--ink-2)}.course-nav{display:flex;justify-content:space-between;gap:16px;margin-top:44px;padding-top:18px;border-top:1px solid var(--grid)}.course-nav a{display:grid;gap:2px;text-decoration:none;color:var(--ink);font-weight:600;font-size:.95rem;max-width:46%}.course-nav a span{color:var(--ink-muted);font-weight:400;font-size:.78rem}.course-nav a:hover{color:var(--accent)}.course-nav .next{text-align:right;margin-left:auto}figure.viz{margin:26px 0;background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:14px 14px 12px}.viz-body{display:grid;gap:10px}.viz-canvas{width:100%;display:block;border-radius:8px}figure.viz svg{width:100%;height:auto;display:block}figure.viz figcaption{margin-top:10px;color:var(--ink-2);font-size:.84rem;line-height:1.55}figure.viz figcaption .hint{display:inline-block;margin-right:10px;color:var(--accent);font-size:.76rem;border:1px solid color-mix(in srgb,var(--accent) 40%,transparent);border-radius:999px;padding:0 9px;white-space:nowrap}figure.viz figcaption b{color:var(--ink)}.viz-controls{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:4px}.viz-note{color:var(--ink-muted);font-size:.78rem}.viz-legend{color:var(--ink-muted);font-size:.78rem;display:inline-flex;align-items:center;gap:5px}.viz-legend i{display:inline-block;width:14px;height:9px;border:1.5px dashed;border-radius:2px}.viz-slider{display:inline-flex;align-items:center;gap:8px;font-size:.82rem;color:var(--ink-2)}.viz-slider input{accent-color:var(--accent)}.chips{display:flex;gap:6px;flex-wrap:wrap}.chips button{background:none;border:1px solid var(--border);border-radius:999px;color:var(--ink-2);font-size:.8rem;padding:3px 12px;cursor:pointer}.chips button.on{background:var(--ink);color:var(--surface);border-color:var(--ink)}.c-blue{color:var(--cool)}.c-orange{color:var(--warm)}.seabreeze .sky{fill:var(--sky-day);transition:fill .6s}.seabreeze.night .sky{fill:var(--sky-night)}.seabreeze .sea{fill:#2f6fb4}.seabreeze .land{fill:#6f8a5a}.seabreeze .sun circle{fill:#f5c443}.seabreeze .sun line{stroke:#f5c443;stroke-width:3;stroke-linecap:round}.seabreeze .moon{fill:#e8e6da}.seabreeze .bubble{fill:color-mix(in srgb,var(--warm) 55%,transparent);animation:rise 3.4s linear infinite}.seabreeze .flow{fill:none;stroke-width:3.5;stroke-linecap:round;stroke-dasharray:10 12;animation:flowdash 1.1s linear infinite}.seabreeze .flow.warm{stroke:var(--warm)}.seabreeze .flow.cool{stroke:#7fb2e8}.seabreeze .flow.aloft{stroke:color-mix(in srgb,var(--ink-muted) 70%,transparent)}.seabreeze .lbl{font:600 14px system-ui,sans-serif;fill:#fff}.seabreeze .breeze-lbl{fill:var(--ink);font-size:15px}.seabreeze .aloft-lbl{fill:var(--ink-muted);font-weight:400;font-size:12px}@keyframes flowdash{to{stroke-dashoffset:-22}}@keyframes rise{0%{transform:translateY(0);opacity:0}15%{opacity:.9}to{transform:translateY(-95px);opacity:0}}@media(prefers-reduced-motion:reduce){.seabreeze .flow,.seabreeze .bubble{animation:none}}.gridline{stroke:var(--grid);stroke-width:1}.tick{font:11px ui-monospace,monospace;fill:var(--ink-muted)}.axis{font:12px system-ui,sans-serif;fill:var(--ink-muted)}.lbl{font:600 12.5px system-ui,sans-serif;fill:var(--ink-2)}.windprofile .curve{fill:none;stroke:var(--accent);stroke-width:2.5}.windprofile .ref{stroke:var(--ink-muted);stroke-dasharray:3 4;stroke-width:1}.windprofile .dot{stroke:var(--surface);stroke-width:1.5}.windprofile .dot10{fill:var(--warm)}.windprofile .dot2{fill:var(--good)}.windprofile .marklbl{font:600 12.5px system-ui,sans-serif;fill:var(--ink)}.sigmalevels .terrain{fill:#6f8a5a}.sigmalevels .level{fill:none;stroke:color-mix(in srgb,var(--accent) 55%,transparent);stroke-width:1}.sigmalevels .level.lowest{stroke:var(--warm);stroke-width:2}.sigmalevels .lbl{fill:var(--ink-muted);font-weight:400;font-size:12px}.sigmalevels .lowest-lbl{fill:var(--warm);font-weight:600}.assim .future{fill:color-mix(in srgb,var(--accent) 5%,transparent)}.assim .truth{fill:none;stroke:var(--ink-muted);stroke-width:2.5;opacity:.55}.assim .ob{fill:var(--warm)}.assim .model{fill:none;stroke:var(--accent);stroke-width:2}.assim .model.forecast{stroke-dasharray:6 4}.assim .pull line{stroke:var(--good);stroke-width:2}.assim .pull circle{fill:var(--good)}.assim .truth-lbl{fill:var(--ink-muted)}.assim .model-lbl{fill:var(--accent)}.ensemble .member{fill:none;stroke:var(--accent);stroke-width:1.1;opacity:.38}.ensemble .member.control{stroke:var(--warm);stroke-width:2;opacity:1}.modelzoo .rowline{stroke:var(--grid)}.modelzoo .rowlbl{font:600 12.5px system-ui,sans-serif;fill:var(--ink-2)}.modelzoo text{font:600 11.5px system-ui,sans-serif;fill:var(--ink-2)}.modelzoo .tick,.modelzoo .axis{font-weight:400}.modelzoo .dot-global circle{fill:var(--cool)}.modelzoo .dot-continental circle{fill:#9085e9}.modelzoo .dot-regional circle{fill:var(--warm)}.modelzoo .dot-local circle{fill:var(--good)}.modelzoo .us text{fill:var(--ink)}.modelzoo .us circle{stroke:var(--ink);stroke-width:1.5}.pipeline .pbox rect{fill:var(--page);stroke:var(--border);stroke-width:1.2}.pipeline .pbox.wrf rect{stroke:var(--accent)}.pipeline .ptitle{font:700 14px system-ui,sans-serif;fill:var(--ink)}.pipeline .psub{font:11.5px system-ui,sans-serif;fill:var(--ink-muted)}.pipeline .nest rect{fill:none;stroke-width:1.5}.pipeline .nest text{font:600 10.5px ui-monospace,monospace}.pipeline .nest.n1 rect{stroke:var(--ink-muted)}.pipeline .nest.n1 text{fill:var(--ink-muted)}.pipeline .nest.n2 rect{stroke:#e8b93c}.pipeline .nest.n2 text{fill:#b8912a}.pipeline .nest.n3 rect{stroke:var(--good)}.pipeline .nest.n3 text{fill:var(--good)}.pipeline .flowline{fill:none;stroke:var(--ink-muted);stroke-width:1.6;stroke-dasharray:6 5;animation:flowdash 1.2s linear infinite}.pipeline .arrhead{fill:var(--ink-muted)}@media(prefers-reduced-motion:reduce){.pipeline .flowline{animation:none}}.obs-list{list-style:none;padding:0!important;display:grid;gap:10px}.obs-list li{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:10px 14px;font-size:.92rem;color:var(--ink-2);margin:0!important}.obs-list b{color:var(--ink)}@media(max-width:480px){body{padding:0 12px 48px;font-size:16px}.course h1{font-size:1.65rem}.hero h2{font-size:1.5rem}.curriculum .mins{display:none}figure.viz{padding:10px;margin-left:-4px;margin-right:-4px}}.brand{position:relative}.brand>button{background:none;border:none;padding:0;font:inherit;color:inherit;cursor:pointer}.brand>button span{color:var(--accent);font-weight:400}.site-menu{position:absolute;top:calc(100% + 8px);left:0;z-index:40;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:6px;display:flex;flex-direction:column;min-width:230px;box-shadow:0 6px 24px #00000059}.site-option{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:7px 10px;border-radius:7px;font-size:.85rem;font-weight:400;color:var(--ink);text-decoration:none}.site-option strong{font-weight:600}.site-option .site-desc{color:var(--ink-muted);font-size:.75rem;white-space:nowrap}.site-option:hover{background:#7f7f7f24}.site-option.active{background:#7f7f7f14}.brand-caret{display:inline-block;margin-left:5px;font-size:.65em;color:var(--ink-muted);transition:transform .15s ease;vertical-align:2px}.brand>button[aria-expanded=true] .brand-caret{transform:rotate(180deg)}
