/* Shared broadcast design. Today establishes the masthead, typography and weather hierarchy. */
html[data-page] {
  --paper:#f5f5f1;
  --surface:#ffffff;
  --ink:#15293c;
  --muted:#5e6c77;
  --line:#d7dde0;
  --blue:#0868bc;
  --blue-soft:#eaf2f8;
  --broadcast-navy:#102c46;
  --broadcast-pad:clamp(20px,4vw,58px);
  font-family:'Segoe UI',Arial,sans-serif;
}
html[data-page] body { background:var(--paper); }
html[data-page] .broadcast-shell { min-width:0; }
html[data-page] .broadcast-header { background:var(--surface); }
html[data-page] .broadcast-masthead {
  max-width:1376px;margin:auto;min-height:90px;padding:16px var(--broadcast-pad);
  display:flex;align-items:center;gap:26px;
}
html[data-page] .broadcast-brand {
  display:flex;align-items:center;gap:12px;min-height:44px;flex-shrink:0;
  color:var(--broadcast-navy);font-size:27px;font-weight:760;letter-spacing:-1px;
}
html[data-page] .broadcast-brand img { width:49px;height:49px;object-fit:contain; }
html[data-page] .broadcast-brand>span { display:block;line-height:1.08; }
html[data-page] .broadcast-brand>span>span { color:var(--blue); }
html[data-page] .broadcast-brand .brand-word { display:block; }
html[data-page] .broadcast-brand small {
  display:block;font-size:9px;font-weight:650;letter-spacing:2.1px;text-transform:uppercase;margin-top:7px;
}
html[data-page] .broadcast-edition {
  border-left:1px solid var(--line);padding-left:25px;color:var(--muted);
  font-size:11px;line-height:1.6;max-width:230px;
}
html[data-page] .broadcast-edition strong { display:block;color:var(--ink);font-weight:650; }
html[data-page] .broadcast-tools { margin-left:auto;display:flex;align-items:center;gap:16px;min-width:0; }
html[data-page] .broadcast-tools .location-button { font-size:13px;max-width:270px;padding:6px 0; }
html[data-page] .broadcast-tools .icon-button { border:0;border-radius:0;background:transparent; }
html[data-page] .broadcast-tools .icon-button:hover { background:var(--blue-soft); }
html[data-page] .broadcast-nav { background:var(--broadcast-navy);color:#fff; }
html[data-page] .broadcast-nav-inner {
  display:flex;align-items:stretch;max-width:1376px;margin:auto;padding:0 var(--broadcast-pad);gap:34px;
}
html[data-page] .broadcast-nav .nav-link {
  display:flex;align-items:center;justify-content:center;position:relative;
  padding:0 2px;min-height:48px;gap:8px;border:0;border-radius:0;
  color:#c4d3df;background:transparent;font-size:13px;font-weight:600;letter-spacing:.01em;
}
html[data-page] .broadcast-nav .nav-link .icon { display:none; }
html[data-page] .broadcast-nav .nav-link span { display:block; }
html[data-page] .broadcast-nav .nav-link:hover { color:#fff; }
html[data-page] .broadcast-nav .nav-link[aria-current=page] { color:#fff; }
html[data-page] .broadcast-nav .nav-link[aria-current=page]::after {
  content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:#83c5f3;
}
html[data-page] #main { min-height:calc(100dvh - 138px); }
html[data-page] .broadcast-page { max-width:1376px;padding:30px var(--broadcast-pad) 40px;margin:auto; }
html[data-page] .broadcast-heading { display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:22px; }
html[data-page] .broadcast-heading>div { min-width:0; }
html[data-page] .broadcast-dateline {
  font-size:10px;line-height:1.4;text-transform:uppercase;letter-spacing:1.5px;font-weight:650;color:var(--muted);margin-bottom:8px;
}
html[data-page] .broadcast-heading h1 {
  font-family:Bahnschrift,'Arial Narrow','Segoe UI',sans-serif;font-size:48px;
  font-weight:600;line-height:1.07;letter-spacing:-1.5px;overflow-wrap:anywhere;
}
html[data-page] .broadcast-heading .density { border:0;border-bottom:1px solid var(--line);background:transparent;border-radius:0;gap:15px;padding:0; }
html[data-page] .broadcast-heading .density button {
  font-size:11px;min-height:44px;min-width:44px;padding:4px 0;background:transparent;border-radius:0;border-bottom:2px solid transparent;
}
html[data-page] .broadcast-heading .density button[aria-pressed=true] { color:var(--ink);border-bottom-color:var(--ink); }
html[data-page] .broadcast-status {
  display:flex;align-items:center;gap:10px;min-height:38px;padding:9px 0;
  border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:11px;line-height:1.5;color:var(--muted);margin-bottom:20px;
}
html[data-page] .broadcast-status>.icon { width:16px;height:16px;color:var(--blue); }
html[data-page] .broadcast-status strong { color:var(--ink);font-weight:650; }
html[data-page] .broadcast-status small { margin-left:auto;font-size:10px; }
html[data-page] .broadcast-status>span { margin-left:auto;font-size:10px; }
html[data-page] .broadcast-board { display:grid;grid-template-columns:minmax(290px,.9fr) minmax(0,1.65fr); }

/* Storm is a compact local outlook. Forecast text remains available if artwork fails. */
html[data-page] .storm-summary {
  --storm-paper:#eef3f5;--storm-accent:#59758a;
  position:relative;isolation:isolate;display:grid;grid-template-columns:96px minmax(0,1fr) auto;
  column-gap:24px;row-gap:8px;align-items:center;
  margin:0 0 22px;padding:18px 24px 18px 18px;border:1px solid var(--line);border-top:3px solid var(--storm-accent);
  border-radius:4px;background:var(--surface);color:var(--ink);
}
html[data-page] .storm-summary::before { content:'';position:absolute;inset:0 auto 0 0;width:132px;background:var(--storm-paper);border-radius:0 0 0 3px;z-index:-1; }
html[data-page] .storm-summary[data-storm-tone=sunny] { --storm-paper:#f7f1d7;--storm-accent:#937014; }
html[data-page] .storm-summary[data-storm-tone=rain] { --storm-paper:#e3edf7;--storm-accent:#326b9c; }
html[data-page] .storm-summary[data-storm-tone=snow] { --storm-paper:#e5f2f3;--storm-accent:#327e87; }
html[data-page] .storm-summary[data-storm-tone=caution],
html[data-page] .storm-summary[data-storm-tone=alert] { --storm-paper:#f6eddf;--storm-accent:#936027; }
html[data-page] .storm-summary[data-storm-tone=severe] { --storm-paper:#f2e5e3;--storm-accent:#a13930; }
html[data-page] .storm-summary[data-storm-tone=unavailable] { --storm-paper:#eaeef0;--storm-accent:#6b7d87; }
html[data-page] .storm-lead { display:contents; }
html[data-page] .storm-art { position:relative;grid-column:1;grid-row:1 / span 2;width:96px;height:138px;visibility:hidden;overflow:hidden;transform-origin:center bottom;align-self:center; }
html[data-page] .storm-ready .storm-art { visibility:visible; }
html[data-page] .storm-character {
  /* Crop only the transparent canvas margins; keep all original sprite pixels. */
  position:absolute;left:-24px;top:-24px;display:block;width:144px;height:156px;
  background:url('/next/assets/storm/storm-default.png') 0 0 / 100% 100% no-repeat;
}
html[data-page] .storm-character[data-storm-frame=calm] { background-image:url('/next/assets/storm/storm-calm.png'); }
html[data-page] .storm-character[data-storm-frame=wave] {
  --storm-sprite-end:133.333333%;
  background-image:url('/next/assets/storm/storm-wave.png');background-size:400% 100%;
  animation:storm-sprite .7s steps(4) 3;
}
html[data-page] .storm-character[data-storm-frame=blink] {
  --storm-sprite-end:120%;
  background-image:url('/next/assets/storm/storm-idle.png');background-size:600% 100%;
  animation:storm-sprite .66s steps(6) 1;
}
@keyframes storm-sprite { from { background-position:0 0; } to { background-position:var(--storm-sprite-end) 0; } }
html[data-page] .storm-summary[data-storm-motion=on] .storm-art { animation:storm-idle-sway 3.6s ease-in-out infinite; }
@keyframes storm-idle-sway {
  0%,100% { transform:translateY(0) rotate(-.7deg); }
  50% { transform:translateY(-2px) rotate(.7deg); }
}
html[data-page] .storm-copy { min-width:0;grid-column:2;grid-row:1;align-self:end; }
html[data-page] .storm-kicker { display:block;font-size:10px;line-height:1.6;text-transform:uppercase;letter-spacing:1.05px;color:var(--storm-accent);font-weight:650;margin-bottom:7px; }
html[data-page] .storm-local-time { white-space:nowrap; }
html[data-page] .storm-copy h2 { font-family:Bahnschrift,'Arial Narrow','Segoe UI',sans-serif;font-size:30px;line-height:1.15;font-weight:600;letter-spacing:-.65px;overflow-wrap:anywhere; }
html[data-page] .storm-text { margin-top:9px;font-size:14px;line-height:1.65;max-width:790px; }
html[data-page] .storm-meta { grid-column:2;grid-row:2;align-self:start;font-size:10px;line-height:1.65;color:var(--muted);padding:0; }
html[data-page] .storm-meta:empty { display:none; }
html[data-page] .storm-meta p { margin:3px 0 0; }
html[data-page] .storm-note { color:var(--ink);font-weight:550; }
html[data-page] .storm-actions { grid-column:3;grid-row:1 / span 2;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:5px;padding-left:22px;border-left:1px solid var(--line); }
html[data-page] .storm-actions .text-link { min-height:44px;font-size:12px;color:var(--blue);white-space:nowrap; }
html[data-page] .storm-art-unavailable .storm-art { display:none; }
html[data-page] .storm-art-unavailable { grid-template-columns:minmax(0,1fr) auto; }
html[data-page] .storm-art-unavailable::before { display:none; }
html[data-page] .storm-art-unavailable .storm-copy,html[data-page] .storm-art-unavailable .storm-meta { grid-column:1; }
html[data-page] .storm-art-unavailable .storm-actions { grid-column:2; }
html[data-page][data-theme=dark] .storm-summary { --storm-paper:#1c303e;--storm-accent:#93aebb; }
html[data-page][data-theme=dark] .storm-summary[data-storm-tone=sunny] { --storm-paper:#343321;--storm-accent:#dac57a; }
html[data-page][data-theme=dark] .storm-summary[data-storm-tone=rain] { --storm-paper:#1c344c;--storm-accent:#88b9e4; }
html[data-page][data-theme=dark] .storm-summary[data-storm-tone=snow] { --storm-paper:#193b40;--storm-accent:#86c6cf; }
html[data-page][data-theme=dark] .storm-summary[data-storm-tone=caution],
html[data-page][data-theme=dark] .storm-summary[data-storm-tone=alert] { --storm-paper:#3a2e24;--storm-accent:#dfb17e; }
html[data-page][data-theme=dark] .storm-summary[data-storm-tone=severe] { --storm-paper:#3e282b;--storm-accent:#ea9e96; }
html[data-page] .storm-summary[data-storm-motion=off] .storm-character,
html[data-page] .storm-summary[data-storm-motion=off] .storm-art,
html[data-page] .page-hidden .storm-character,
html[data-page] .page-hidden .storm-art { animation:none; }
@media(prefers-reduced-motion:reduce) { html[data-page] .storm-character,html[data-page] .storm-art { animation:none; } }
@media(max-width:760px) {
  html[data-page] .storm-summary { grid-template-columns:80px minmax(0,1fr);gap:8px 18px;padding:16px 18px 12px;margin-bottom:18px; }
  html[data-page] .storm-summary::before { width:110px; }
  html[data-page] .storm-art { width:80px;height:114px; }
  html[data-page] .storm-character { width:120px;height:130px;left:-20px;top:-20px; }
  html[data-page] .storm-copy h2 { font-size:27px; }
  html[data-page] .storm-text { font-size:13px;line-height:1.65; }
  html[data-page] .storm-meta { padding:0;margin-top:0; }
  html[data-page] .storm-actions { grid-column:2;grid-row:3;flex-direction:row;justify-content:flex-start;align-items:center;flex-wrap:wrap;gap:8px 18px;margin-top:0;padding-left:0;border:0; }
  html[data-page] .storm-art-unavailable { grid-template-columns:minmax(0,1fr); }
  html[data-page] .storm-art-unavailable .storm-actions { grid-column:1; }
}
@media(max-width:540px) {
  html[data-page] .storm-summary { padding:14px 15px 7px;gap:0 18px; }
  html[data-page] .storm-summary::before { width:105px;height:132px;bottom:auto;border-radius:0 0 4px 0; }
  html[data-page] .storm-art { grid-column:1;grid-row:1 / span 2; }
  html[data-page] .storm-copy { display:contents; }
  html[data-page] .storm-kicker { grid-column:2;grid-row:1;font-size:9px;line-height:1.6;align-self:end;margin-bottom:6px; }
  html[data-page] .storm-copy h2 { grid-column:2;grid-row:2;font-size:25px;align-self:start; }
  html[data-page] .storm-text { grid-column:1 / -1;grid-row:3;margin-top:14px; }
  html[data-page] .storm-meta { grid-column:1 / -1;grid-row:4;padding:0;margin-top:7px;font-size:10px; }
  html[data-page] .storm-actions { grid-column:1 / -1;grid-row:5;border-top:1px solid var(--line);margin-top:12px;padding-top:3px; }
  html[data-page] .storm-actions .text-link { font-size:11px; }
  html[data-page] .storm-art-unavailable { grid-template-columns:minmax(0,1fr); }
  html[data-page] .storm-art-unavailable .storm-kicker,html[data-page] .storm-art-unavailable .storm-copy h2 { grid-column:1; }
  html[data-page] .storm-art-unavailable .storm-actions { grid-column:1; }
}
html[data-page] .broadcast-current {
  min-width:0;min-height:300px;background:#15364f;color:#fff;border:1px solid #15364f;
  border-top:3px solid #467c9d;padding:0;display:flex;flex-direction:column;
}
html[data-page] .broadcast-current-top { display:flex;align-items:center;justify-content:space-between;gap:12px;padding:19px 26px 0; }
html[data-page] .broadcast-current-top .eyebrow { font-size:10px;color:#c5dce9;letter-spacing:1.25px; }
html[data-page] .broadcast-current-top .weather-icon { width:38px;height:38px;color:#d6eafa; }
html[data-page] .broadcast-reading { display:flex;align-items:center;gap:22px;margin:0;min-height:150px;flex:1;padding:16px 26px; }
html[data-page] .broadcast-temperature {
  display:flex;align-items:flex-start;margin:0;
  font-family:Bahnschrift,'Arial Narrow','Segoe UI',sans-serif;font-size:108px;line-height:1;
  font-weight:550;letter-spacing:-5px;font-variant-numeric:tabular-nums;flex-shrink:0;
}
html[data-page] .broadcast-temperature sup { font-size:.4em;vertical-align:top;line-height:1.3;letter-spacing:0; }
html[data-page] .broadcast-condition { display:grid;gap:9px;min-width:0; }
html[data-page] .broadcast-condition strong { font-size:20px;line-height:1.3;font-weight:550; }
html[data-page] .broadcast-condition span { color:#c5dce9;font-size:12px;line-height:1.5; }
html[data-page] .broadcast-observed { color:#c5dce9;font-size:10px;line-height:1.6;margin:0;padding:0 26px 20px;max-width:none; }
html[data-page] .broadcast-current-metrics {
  display:grid;grid-template-columns:1.2fr .9fr 1fr;gap:14px;border-top:1px solid #cddae2;margin:0;padding:19px 23px 20px;background:#f2f6f8;color:#17364c;
}
html[data-page] .broadcast-current-metrics .hero-metric { gap:8px;min-width:0; }
html[data-page] .broadcast-current-metrics .hero-metric:not(:first-child) { border-left:1px solid #d3dfe6;padding-left:12px; }
html[data-page] .broadcast-current-metrics .hero-metric span { font-size:10px;color:#526775;line-height:1.45; }
html[data-page] .broadcast-current-metrics .hero-metric strong { font-size:20px;color:#17364c;line-height:1.2;font-weight:600;overflow-wrap:anywhere; }
html[data-page] .broadcast-hourly { min-width:0;background:var(--surface);border:1px solid var(--line);border-left:0;padding:23px 25px 15px; }
html[data-page] .broadcast-hourly .time-strip-heading { padding:0;align-items:flex-start;gap:15px; }
html[data-page] .broadcast-hourly .time-strip-heading .eyebrow { color:var(--muted);font-size:9px;letter-spacing:1.4px; }
html[data-page] .broadcast-hourly .time-strip-heading h2 {
  font-size:23px;font-weight:600;line-height:1.25;letter-spacing:-.6px;margin-top:5px;
}
html[data-page] .broadcast-hourly .time-strip-heading .text-link { align-self:center;font-size:11px;min-height:44px; }
html[data-page] .broadcast-hour-scroll { overflow-x:auto;display:block;padding:0;scrollbar-width:thin;scrollbar-color:var(--line) transparent; }
html[data-page] .broadcast-trend { width:100%;height:190px;display:block;overflow:visible;margin-top:8px; }
html[data-page] .broadcast-trend text { font-family:'Segoe UI',Arial,sans-serif;font-size:17px; }
html[data-page] .broadcast-trend text[y="181"] { font-size:12px; }
html[data-page] .broadcast-chart-meta { display:flex;align-items:center;gap:19px;margin-top:16px;font-size:9px;color:var(--muted); }
html[data-page] .broadcast-chart-meta>span { display:inline-flex;align-items:center;gap:6px; }
html[data-page] .broadcast-chart-meta i { display:inline-block;width:16px;height:2px;background:var(--blue); }
html[data-page] .broadcast-chart-meta>span+span i { height:7px;width:7px;background:#a9cae5; }
html[data-page] .broadcast-chart-empty { padding:10px 0;color:var(--muted);font-size:11px; }
html[data-page] .broadcast-hour-buttons { display:grid;grid-template-columns:repeat(12,minmax(44px,1fr));min-width:528px;margin-top:0; }
html[data-page] .broadcast-hour-choice {
  display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:7px;
  min-width:0;padding:10px 0 8px;min-height:75px;border:0;border-top:1px solid var(--line);
  background:transparent;border-radius:0;position:relative;
}
html[data-page] .broadcast-hour-choice span { font-size:11px;line-height:1.3;color:var(--muted);white-space:nowrap; }
html[data-page] .broadcast-hour-choice strong { font-size:17px;line-height:1.1;font-weight:600;font-variant-numeric:tabular-nums; }
html[data-page] .broadcast-hour-choice small { color:var(--blue);font-size:10px;line-height:1.2; }
html[data-page] .broadcast-hour-choice:hover { background:var(--blue-soft); }
html[data-page] .broadcast-hour-choice[aria-pressed=true] { background:var(--blue-soft);box-shadow:inset 0 2px var(--blue); }
html[data-page] .broadcast-hour-choice:focus-visible { outline-offset:-3px; }
html[data-page] .broadcast-brief {
  display:flex;align-items:center;justify-content:space-between;gap:25px;
  border-bottom:1px solid var(--line);padding:23px 0 22px;
}
html[data-page] .broadcast-brief>div { display:grid;grid-template-columns:90px minmax(180px,.9fr) minmax(200px,1.3fr);align-items:start;gap:24px;flex:1; }
html[data-page] .broadcast-brief .eyebrow { color:var(--blue);font-size:10px;line-height:1.5;letter-spacing:1px;padding-top:2px; }
html[data-page] .broadcast-brief strong { font-size:20px;line-height:1.3;letter-spacing:-.5px;font-weight:600; }
html[data-page] .broadcast-brief p { font-size:12px;line-height:1.7;color:var(--muted); }
html[data-page] .broadcast-brief>.text-link { flex-shrink:0;font-size:11px; }
html[data-page] .broadcast-page>.sponsor-band {
  margin:0;padding:14px 0;border-top:0;border-bottom:1px solid var(--line);gap:18px;
}
html[data-page] .broadcast-page>.sponsor-band .sponsor-art { width:112px;height:56px;border:0;border-radius:0;padding:4px; }
html[data-page] .broadcast-page>.sponsor-band .sponsor-copy .eyebrow { font-size:9px;letter-spacing:1px; }
html[data-page] .broadcast-page>.sponsor-band .sponsor-copy strong { font-size:13px;font-weight:600; }
html[data-page] .broadcast-page>.sponsor-band .sponsor-copy>a { min-height:44px;display:flex;align-items:center;padding:4px 0; }
html[data-page] .broadcast-page>.sponsor-band .sponsor-controls .icon-button { width:44px;height:44px;min-width:44px;border:0;border-radius:0; }
html[data-page] .broadcast-bottom { display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:46px;margin-top:29px; }
html[data-page] .broadcast-bottom .section-head { margin:0 0 13px;gap:12px; }
html[data-page] .broadcast-bottom .section-head h2 { font-size:19px;font-weight:600;letter-spacing:-.4px; }
html[data-page] .broadcast-bottom .section-head .text-link { min-height:44px;font-size:11px; }
html[data-page] .broadcast-day-list { border-top:2px solid var(--ink); }
html[data-page] .broadcast-day-row { display:grid;grid-template-columns:75px minmax(0,1fr) 45px minmax(110px,.8fr);align-items:center;gap:13px;min-height:65px;border-bottom:1px solid var(--line);font-size:12px; }
html[data-page] .broadcast-day-row>strong { font-size:12px;font-weight:650; }
html[data-page] .broadcast-day-row .broadcast-day-condition { display:flex;align-items:center;gap:9px;min-width:0; }
html[data-page] .broadcast-day-row .broadcast-day-condition span { font-size:11px;line-height:1.4; }
html[data-page] .broadcast-day-row .weather-icon { width:24px;height:24px; }
html[data-page] .broadcast-day-row .broadcast-day-rain { font-size:11px;color:var(--blue);text-align:right; }
html[data-page] .broadcast-day-row .range { display:flex;align-items:center;gap:10px;font-size:13px; }
html[data-page] .broadcast-day-row .range>span { color:var(--muted); }
html[data-page] .broadcast-day-row .range-track { flex:1;height:3px;border-radius:0;min-width:25px;background:#d7e1e8; }
html[data-page] .broadcast-day-row .range-track i { border-radius:0;background:var(--blue); }
html[data-page] .broadcast-ledger { border-top:2px solid var(--ink);display:grid;grid-template-columns:1fr 1fr;column-gap:22px; }
html[data-page] .broadcast-ledger>div { min-width:0;display:grid;grid-template-columns:1fr auto;align-content:center;gap:4px 8px;min-height:65px;border-bottom:1px solid var(--line);padding:10px 0; }
html[data-page] .broadcast-ledger>div>span { font-size:11px;color:var(--muted);line-height:1.5; }
html[data-page] .broadcast-ledger>div>strong { font-family:Bahnschrift,'Arial Narrow','Segoe UI',sans-serif;font-size:18px;line-height:1.25;font-weight:550;white-space:nowrap; }
html[data-page] .broadcast-ledger>div>small { grid-column:1 / -1;font-size:9px;line-height:1.5;color:var(--muted); }
html[data-page] .broadcast-activity { margin-top:32px;border-top:1px solid var(--line);border-bottom:1px solid var(--line); }
html[data-page] .broadcast-activity>summary { cursor:pointer;padding:17px 0;font-size:13px;font-weight:650;min-height:52px; }
html[data-page] .broadcast-activity>summary>span { color:var(--muted);font-size:11px;font-weight:400;margin-left:16px; }
html[data-page] .broadcast-activity>summary>.icon { float:right;width:17px;height:17px;margin-top:2px; }
html[data-page] .broadcast-activity>section { padding:0 0 20px; }
html[data-page] .broadcast-activity .section-head { margin-top:5px; }
html[data-page] .broadcast-activity .activity-chip,html[data-page] .broadcast-activity .activity-feature { border-radius:0; }
html[data-page] .broadcast-page>.source-footer { font-size:10px;line-height:1.8;padding-top:22px; }
html[data-page] .broadcast-footer-links { display:flex;gap:22px;font-size:10px;color:var(--muted);margin-top:5px; }
html[data-page] .broadcast-footer-links a { min-height:44px;display:inline-flex;align-items:center;text-decoration:underline;text-underline-offset:3px; }
html[data-page] .broadcast-page .icon-button,html[data-page] .broadcast-page .button { border-radius:0; }
html[data-page] .broadcast-shell>.notice,html[data-page] #main>.notice,html[data-page] #main>.alert-strip { padding-inline:max(var(--broadcast-pad),calc((100vw - 1260px)/2)); }

@media(min-width:1400px) {
  html[data-page] .broadcast-masthead,html[data-page] .broadcast-nav-inner,html[data-page] .broadcast-page { padding-left:58px;padding-right:58px; }
}
@media(max-width:1100px) {
  html[data-page] .broadcast-edition { display:none; }
  html[data-page] .broadcast-board { grid-template-columns:minmax(275px,.95fr) minmax(0,1.45fr); }
  html[data-page] .broadcast-current-top { padding-inline:22px; }
  html[data-page] .broadcast-reading { gap:15px;padding-inline:22px; }
  html[data-page] .broadcast-observed { padding-inline:22px; }
  html[data-page] .broadcast-current-metrics { padding-inline:19px;gap:10px; }
  html[data-page] .broadcast-temperature { font-size:99px; }
  html[data-page] .broadcast-condition strong { font-size:16px; }
  html[data-page] .broadcast-hourly { padding-left:20px;padding-right:20px; }
  html[data-page] .broadcast-bottom { gap:30px;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr); }
  html[data-page] .broadcast-day-row { grid-template-columns:55px minmax(0,1fr) 36px 88px;gap:8px; }
  html[data-page] .broadcast-ledger { column-gap:14px; }
  html[data-page] .broadcast-ledger>div { grid-template-columns:1fr;gap:3px; }
}
@media(max-width:800px) {
  html[data-page] { --broadcast-pad:24px; }
  html[data-page] .broadcast-masthead { min-height:78px;padding-top:13px;padding-bottom:13px;gap:20px; }
  html[data-page] .broadcast-brand { font-size:24px;gap:9px; }
  html[data-page] .broadcast-brand img { width:42px;height:42px; }
  html[data-page] .broadcast-tools { gap:10px; }
  html[data-page] .broadcast-tools .location-button { max-width:230px; }
  html[data-page] .broadcast-heading h1 { font-size:39px; }
  html[data-page] .broadcast-board { grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr); }
  html[data-page] .broadcast-current-top { padding:17px 20px 0; }
  html[data-page] .broadcast-reading { align-items:flex-start;flex-direction:column;justify-content:center;gap:7px;margin:0;padding:15px 20px; }
  html[data-page] .broadcast-temperature { font-size:86px; }
  html[data-page] .broadcast-condition { display:grid;gap:6px;margin:0; }
  html[data-page] .broadcast-condition strong { font-size:14px; }
  html[data-page] .broadcast-condition span { font-size:10px; }
  html[data-page] .broadcast-current-metrics { padding:16px 17px;gap:8px; }
  html[data-page] .broadcast-current-metrics .hero-metric:not(:first-child) { padding-left:9px; }
  html[data-page] .broadcast-current-metrics .hero-metric strong { font-size:17px; }
  html[data-page] .broadcast-hourly .time-strip-heading { flex-wrap:wrap;gap:1px; }
  html[data-page] .broadcast-hourly .time-strip-heading .text-link { margin-left:auto; }
  html[data-page] .broadcast-hourly .time-strip-heading h2 { font-size:21px; }
  html[data-page] .broadcast-brief>div { grid-template-columns:75px 1fr;gap:10px 20px; }
  html[data-page] .broadcast-brief p { grid-column:2; }
  html[data-page] .broadcast-bottom { grid-template-columns:1fr;gap:30px; }
  html[data-page] .broadcast-day-row { grid-template-columns:80px minmax(0,1fr) 60px minmax(110px,.7fr); }
  html[data-page] .broadcast-ledger { grid-template-columns:repeat(4,minmax(0,1fr));column-gap:22px; }
}
@media(max-width:540px) {
  html[data-page] { --broadcast-pad:18px; }
  html[data-page] .broadcast-masthead { display:grid;grid-template-columns:1fr 44px;gap:0;min-height:0;padding-top:11px;padding-bottom:0; }
  html[data-page] .broadcast-brand { font-size:24px;gap:9px;min-height:46px;grid-column:1;grid-row:1; }
  html[data-page] .broadcast-brand img { width:39px;height:39px; }
  html[data-page] .broadcast-brand small { font-size:8px;letter-spacing:1.5px;margin-top:4px; }
  html[data-page] .broadcast-tools { display:contents; }
  html[data-page] .broadcast-tools>.icon-button { grid-row:1;grid-column:2;justify-self:end; }
  html[data-page] .broadcast-tools>.location-button {
    grid-row:2;grid-column:1 / -1;max-width:100%;width:100%;min-height:44px;font-size:11px;
    border-top:1px solid var(--line);margin-top:9px;padding:6px 0;gap:7px;
  }
  html[data-page] .broadcast-tools>.location-button>.icon:first-child { width:14px;height:14px; }
  html[data-page] .broadcast-tools>.location-button>.icon:last-child { margin-left:auto;width:14px;height:14px; }
  html[data-page] .broadcast-nav-inner { justify-content:space-between;gap:20px;padding:0 var(--broadcast-pad); }
  html[data-page] .broadcast-nav .nav-link { min-height:44px;min-width:44px;font-size:12px;padding:0; }
  html[data-page] .broadcast-page { padding-top:20px;padding-bottom:28px; }
  html[data-page] .broadcast-heading { gap:12px;align-items:flex-start;margin-bottom:16px; }
  html[data-page] .broadcast-dateline { font-size:10px;letter-spacing:.8px;margin-bottom:6px; }
  html[data-page] .broadcast-heading h1 { font-size:32px;letter-spacing:-.9px;line-height:1.1; }
  html[data-page] .broadcast-heading .density { gap:9px;margin-top:17px; }
  html[data-page] .broadcast-heading .density button { font-size:11px;min-height:44px; }
  html[data-page] .broadcast-status { font-size:10px;gap:7px;min-height:36px;padding:8px 0;margin-bottom:14px;align-items:flex-start; }
  html[data-page] .broadcast-status>.icon { width:14px;height:14px;margin-top:1px; }
  html[data-page] .broadcast-status small { font-size:10px;max-width:110px;text-align:right;line-height:1.6; }
  html[data-page] .broadcast-status>span { font-size:10px;max-width:120px;text-align:right;line-height:1.6; }
  html[data-page] .broadcast-board { grid-template-columns:1fr; }
  html[data-page] .broadcast-current { min-height:0;padding:0; }
  html[data-page] .broadcast-current-top { padding:16px 20px 0; }
  html[data-page] .broadcast-current-top .eyebrow { font-size:10px;letter-spacing:1.1px; }
  html[data-page] .broadcast-current-top .weather-icon { width:34px;height:34px; }
  html[data-page] .broadcast-reading { flex-direction:row;justify-content:flex-start;align-items:center;gap:22px;margin:0;min-height:112px;padding:10px 20px 15px; }
  html[data-page] .broadcast-temperature { font-size:88px;letter-spacing:-4px; }
  html[data-page] .broadcast-condition { display:grid;gap:5px;margin:0; }
  html[data-page] .broadcast-condition strong { font-size:17px; }
  html[data-page] .broadcast-condition span { font-size:11px; }
  html[data-page] .broadcast-observed { font-size:10px;line-height:1.5;margin:0;padding:0 20px 17px; }
  html[data-page] .broadcast-current-metrics { gap:10px;padding:16px 18px; }
  html[data-page] .broadcast-current-metrics .hero-metric { gap:5px; }
  html[data-page] .broadcast-current-metrics .hero-metric span { font-size:10px; }
  html[data-page] .broadcast-current-metrics .hero-metric strong { font-size:17px; }
  html[data-page] .broadcast-hourly { padding:18px 16px 12px;border-left:1px solid var(--line);border-top:0; }
  html[data-page] .broadcast-hourly .time-strip-heading { flex-wrap:nowrap;gap:10px; }
  html[data-page] .broadcast-hourly .time-strip-heading h2 { font-size:21px;letter-spacing:-.5px;margin-top:3px; }
  html[data-page] .broadcast-hourly .time-strip-heading .text-link { font-size:11px; }
  html[data-page] .broadcast-hourly .time-strip-heading .eyebrow { font-size:10px; }
  html[data-page] .broadcast-chart-meta { font-size:10px; }
  html[data-page] .broadcast-hourly .time-strip-heading .text-link .icon { width:14px; }
  html[data-page] .broadcast-trend { height:150px;margin-top:7px; }
  html[data-page] .broadcast-trend text { font-size:24px; }
  html[data-page] .broadcast-trend text[y="181"] { font-size:14px; }
  html[data-page] .broadcast-brief { display:block;padding:20px 0; }
  html[data-page] .broadcast-brief>div { grid-template-columns:1fr;gap:7px; }
  html[data-page] .broadcast-brief strong { font-size:21px;line-height:1.25; }
  html[data-page] .broadcast-brief p { grid-column:auto;font-size:12px;line-height:1.65; }
  html[data-page] .broadcast-page>.sponsor-band { flex-wrap:nowrap;gap:12px;padding:12px 0; }
  html[data-page] .broadcast-page>.sponsor-band .sponsor-art { width:82px;height:53px;padding:2px; }
  html[data-page] .broadcast-page>.sponsor-band .sponsor-copy .eyebrow { font-size:10px;letter-spacing:.4px; }
  html[data-page] .broadcast-page>.sponsor-band .sponsor-copy strong { font-size:11px; }
  html[data-page] .broadcast-page>.sponsor-band .sponsor-copy .icon { width:13px;height:13px; }
  html[data-page] .broadcast-page>.sponsor-band .sponsor-controls { width:auto;gap:0;flex-direction:column;margin-left:auto; }
  html[data-page] .broadcast-page>.sponsor-band .sponsor-controls .icon-button { width:44px;min-width:44px;height:44px;min-height:44px; }
  html[data-page] .broadcast-page>.sponsor-band .sponsor-controls .icon { width:17px;height:17px; }
  html[data-page] .broadcast-bottom { margin-top:24px;gap:25px; }
  html[data-page] .broadcast-bottom .section-head h2 { font-size:19px; }
  html[data-page] .broadcast-bottom .section-head .text-link { font-size:11px; }
  html[data-page] .broadcast-day-row { grid-template-columns:54px minmax(0,1fr) 32px 83px;gap:8px;min-height:67px; }
  html[data-page] .broadcast-day-row .broadcast-day-condition { gap:6px; }
  html[data-page] .broadcast-day-row .broadcast-day-condition span { font-size:10px; }
  html[data-page] .broadcast-day-row .broadcast-day-condition .weather-icon { width:20px;height:20px; }
  html[data-page] .broadcast-day-row .broadcast-day-rain { font-size:10px; }
  html[data-page] .broadcast-day-row .range { gap:6px;font-size:12px; }
  html[data-page] .broadcast-day-row .range-track { min-width:18px; }
  html[data-page] .broadcast-ledger { grid-template-columns:1fr 1fr;column-gap:24px; }
  html[data-page] .broadcast-ledger>div { grid-template-columns:1fr auto;min-height:69px; }
  html[data-page] .broadcast-ledger>div>strong { font-size:19px; }
  html[data-page] .broadcast-ledger>div>small { font-size:10px; }
  html[data-page] .broadcast-activity { margin-top:25px; }
  html[data-page] .broadcast-activity>summary>span { display:block;font-size:10px;margin:5px 22px 0 16px; }
}
@media(max-width:359px) {
  html[data-page] { --broadcast-pad:14px; }
  html[data-page] .broadcast-nav-inner { gap:15px; }
  html[data-page] .broadcast-nav .nav-link { font-size:11px; }
  html[data-page] .broadcast-heading { flex-wrap:wrap;gap:7px; }
  html[data-page] .broadcast-heading>div:first-child { flex:1 0 100%; }
  html[data-page] .broadcast-heading h1 { font-size:29px; }
  html[data-page] .broadcast-heading .density { gap:14px;margin-top:0; }
  html[data-page] .broadcast-heading .density button { font-size:11px; }
  html[data-page] .broadcast-current-top { padding-inline:16px; }
  html[data-page] .broadcast-reading { gap:16px;padding-inline:16px; }
  html[data-page] .broadcast-observed { padding-inline:16px; }
  html[data-page] .broadcast-current-metrics { padding-inline:14px;gap:8px; }
  html[data-page] .broadcast-current-metrics .hero-metric:not(:first-child) { padding-left:7px; }
  html[data-page] .broadcast-temperature { font-size:80px; }
  html[data-page] .broadcast-condition strong { font-size:15px; }
  html[data-page] .broadcast-hourly { padding-left:13px;padding-right:13px; }
  html[data-page] .broadcast-hourly .time-strip-heading h2 { font-size:19px; }
  html[data-page] .broadcast-day-row { grid-template-columns:46px minmax(0,1fr) 29px 73px;gap:6px; }
  html[data-page] .broadcast-day-row .broadcast-day-condition { gap:4px; }
  html[data-page] .broadcast-day-row .broadcast-day-condition .weather-icon { width:17px;height:17px; }
  html[data-page] .broadcast-ledger { column-gap:18px; }
}
html[data-page][data-theme=dark] {
  --paper:#101b25;--surface:#142431;--ink:#edf3f7;--muted:#a0b1bf;--line:#344553;
  --blue:#79baf0;--blue-soft:#223e53;--broadcast-navy:#0a2339;
}
html[data-page][data-theme=dark] .broadcast-brand { color:#edf3f7; }
html[data-page][data-theme=dark] .broadcast-current { background:#112e43;border-color:#294354;border-top-color:#6098b9; }
html[data-page][data-theme=dark] .broadcast-current-metrics { background:#1a2e3c;border-top-color:#38505f; }
html[data-page][data-theme=dark] .broadcast-current-metrics .hero-metric:not(:first-child) { border-left-color:#38505f; }
html[data-page][data-theme=dark] .broadcast-current-metrics .hero-metric span { color:#b0c2ce; }
html[data-page][data-theme=dark] .broadcast-current-metrics .hero-metric strong { color:#edf3f7; }
html[data-page][data-theme=dark] .broadcast-day-row .range-track { background:#344b5d; }
html[data-page][data-native=true] .broadcast-nav { display:none; }
html[data-page][data-native=true] .broadcast-shell { padding-bottom:var(--native-clearance); }
html[data-page][data-native=true] .broadcast-masthead { padding-top:calc(11px + var(--safe-top)); }
html[data-page][data-native=true] .broadcast-page { padding-bottom:24px; }
@media(prefers-reduced-motion:reduce) {
  html[data-page] *,html[data-page] *::before,html[data-page] *::after { scroll-behavior:auto!important;animation:none!important;transition:none!important; }
}

/* Page compositions share the same masthead and editorial scale. */
html[data-page] .broadcast-intro { margin-top:10px;font-size:13px;line-height:1.6;color:var(--muted);max-width:650px; }
html[data-page] .broadcast-heading>.button { flex-shrink:0; }
html[data-page] .broadcast-day-key { display:grid;grid-template-columns:75px minmax(0,1fr) 45px minmax(110px,.8fr);gap:13px;align-items:end;font-size:9px;color:var(--muted);padding:0 0 8px; }
html[data-page] .broadcast-day-key>span:first-child { margin-right:auto; }
html[data-page] .editorial-section-heading { display:flex;align-items:baseline;justify-content:space-between;gap:15px;margin-bottom:14px;border-top:2px solid var(--ink);padding-top:13px; }
html[data-page] .editorial-section-heading h2 { font-size:18px;font-weight:650;letter-spacing:-.4px; }
html[data-page] .editorial-section-heading>span { font-size:10px;color:var(--muted);line-height:1.5; }
html[data-page] .editorial-empty { background:var(--surface);border-top:2px solid var(--ink);padding:34px;min-height:220px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:12px; }
html[data-page] .editorial-empty h2 { font-size:25px;font-weight:600; }
html[data-page] .editorial-empty p { max-width:590px;color:var(--muted);font-size:13px;line-height:1.65; }
html[data-page] .editorial-empty .skeleton { width:70%;height:30px;margin-bottom:10px; }
html[data-page] .planning-grid { gap:24px;border-top:2px solid var(--ink);padding-top:0; }
html[data-page] .planning-link { padding:22px 0 4px;background:transparent;border:0;border-radius:0;gap:10px; }
html[data-page] .planning-link:not(:last-child) { border-right:1px solid var(--line);padding-right:24px; }
html[data-page] .planning-link:hover h3 { color:var(--blue); }
html[data-page] .planning-link h3 { font-size:20px;font-weight:600; }
html[data-page] .planning-link small { font-size:10px; }
html[data-page] .broadcast-page>.section-head { margin-top:30px; }
html[data-page] .broadcast-page>section>.section-head { margin-top:30px; }
html[data-page] .forecast-workspace { display:grid;grid-template-columns:290px minmax(0,1fr);gap:26px;align-items:start; }
html[data-page] .forecast-day-panel { min-width:0; }
html[data-page] .forecast-days { flex-direction:column;gap:0;max-height:610px;overflow-y:auto;padding:0; }
html[data-page] .forecast-day-choice { width:100%;flex:0 0 auto;min-width:0;display:grid;grid-template-columns:65px minmax(0,1fr);gap:5px 10px;justify-items:stretch;text-align:left;padding:14px 12px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;position:relative; }
html[data-page] .forecast-day-choice[aria-pressed=true] { background:var(--blue-soft);color:var(--ink);box-shadow:inset 3px 0 var(--blue); }
html[data-page] .forecast-day-choice:hover { background:var(--blue-soft); }
html[data-page] .forecast-day-choice span { white-space:normal; }
html[data-page] .forecast-day-date { display:flex;flex-direction:column;gap:4px; }
html[data-page] .forecast-day-date>strong { font-size:13px;font-weight:650; }
html[data-page] .forecast-day-date>small { font-size:10px; }
html[data-page] .forecast-day-condition { display:flex;align-items:center;gap:8px;font-size:11px;line-height:1.4; }
html[data-page] .forecast-day-condition>.weather-icon { width:22px;height:22px; }
html[data-page] .forecast-day-condition>span { font-size:11px; }
html[data-page] .forecast-day-values { grid-column:2;display:flex;justify-content:space-between;gap:14px;margin-top:3px; }
html[data-page] .forecast-day-values>span { display:grid;gap:4px; }
html[data-page] .forecast-day-values small { font-size:9px;font-weight:400; }
html[data-page] .forecast-day-values strong { font-size:13px;font-weight:600; }
html[data-page] .editorial-hourly { border-radius:0;margin:0;border-top:2px solid var(--ink);min-width:0; }
html[data-page] .editorial-hourly .forecast-stage-heading { padding:21px 24px 18px;align-items:flex-start;border-bottom:1px solid var(--line); }
html[data-page] .editorial-hourly .forecast-stage-heading .eyebrow { font-size:10px;letter-spacing:1.2px; }
html[data-page] .editorial-hourly .forecast-stage-heading h2 { font-size:25px;line-height:1.2;font-weight:600; }
html[data-page] .editorial-hourly .forecast-stage-heading p { margin-top:8px;color:var(--muted);font-size:12px; }
html[data-page] .forecast-day-tag { font-size:10px;line-height:1.6;color:var(--muted);white-space:nowrap; }
html[data-page] .forecast-selected { display:flex;justify-content:space-between;align-items:center;gap:24px;padding:20px 24px;background:var(--broadcast-navy);color:#fff; }
html[data-page] .forecast-selected-reading { min-width:0; }
html[data-page] .forecast-selected-reading>.eyebrow { color:#bbcfdd;font-size:9px;letter-spacing:.7px; }
html[data-page] .forecast-selected-reading>div { display:flex;align-items:center;gap:14px;margin-top:9px; }
html[data-page] .forecast-selected-reading strong { font-family:Bahnschrift,'Arial Narrow','Segoe UI',sans-serif;font-size:60px;line-height:1;font-weight:550;letter-spacing:-3px; }
html[data-page] .forecast-selected-reading .weather-icon { color:#d6eafa;width:28px;height:28px; }
html[data-page] .forecast-selected-reading>div>span { font-size:14px;line-height:1.4;max-width:150px; }
html[data-page] .forecast-selected-metrics { display:grid;grid-template-columns:1fr;gap:12px;margin:0;padding:0 0 0 20px;border-left:1px solid #ffffff30;flex-shrink:0;min-width:125px; }
html[data-page] .forecast-selected-metrics>div { display:flex;justify-content:space-between;gap:15px;align-items:baseline; }
html[data-page] .forecast-selected-metrics dt { font-size:10px;color:#bbcfdd; }
html[data-page] .forecast-selected-metrics dd { font-size:13px;font-weight:600;margin:0; }
html[data-page] .editorial-hourly .forecast-chart { height:225px; }
html[data-page] .editorial-hourly .chart-caption { padding-inline:24px;padding-top:4px; }
html[data-page] .editorial-hourly .hour-rail { padding:8px 12px 12px; }
html[data-page] .forecast-time-note { padding:12px 24px;font-size:10px;line-height:1.6;color:var(--muted);border-top:1px solid var(--line); }
html[data-page] .editorial-data-gap { padding:20px 24px;font-size:12px;color:var(--muted); }
html[data-page] .editorial-table { margin-top:26px;border-top:1px solid var(--line);border-bottom:1px solid var(--line); }
html[data-page] .editorial-table>summary { display:flex;gap:16px;align-items:center;justify-content:space-between;list-style:none;cursor:pointer;min-height:56px;padding:15px 0;font-weight:650;font-size:13px; }
html[data-page] .editorial-table>summary::after { content:'+';font-size:23px;font-weight:400; }
html[data-page] .editorial-table[open]>summary::after { content:'−'; }
html[data-page] .editorial-table>summary>span { margin-left:auto;font-size:11px;color:var(--muted);font-weight:400; }
html[data-page] .editorial-table .hour-table-wrap { margin-bottom:18px; }
html[data-page] .editorial-updates { grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin:0 0 28px; }
html[data-page] .editorial-updates .update-card { padding:0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent; }
html[data-page] .editorial-updates .update-copy { padding:18px 0;min-width:0; }
html[data-page] .editorial-updates .update-image { min-width:0;display:flex;align-items:center;background:var(--broadcast-navy); }
html[data-page] .editorial-updates .update-image img { display:block;width:100%;height:auto;max-width:100%;aspect-ratio:16/9;object-fit:contain;border-radius:0;margin:0; }
html[data-page] .editorial-updates .update-card h2 { font-family:Bahnschrift,'Arial Narrow','Segoe UI',sans-serif;font-size:27px;font-weight:600;line-height:1.18;letter-spacing:-.6px; }
html[data-page] .editorial-updates .update-card p { font-size:13px;line-height:1.7; }
html[data-page] .editorial-updates .update-featured { grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:32px;padding:0 0 26px;align-items:center; }
html[data-page] .editorial-updates .update-featured:not(:has(.update-image)) { display:block;background:var(--surface);padding:26px; }
html[data-page] .editorial-updates .update-featured h2 { font-size:35px;letter-spacing:-.8px; }
html[data-page] .editorial-updates .update-featured .update-copy { padding:0; }
html[data-page] .update-meta { display:grid;gap:5px;font-size:10px;line-height:1.6;color:var(--muted);margin:13px 0 5px; }
html[data-page] .newsroom-context { margin-bottom:20px; }
html[data-page] .preferences-workspace { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:32px;align-items:start; }
html[data-page] .editorial-settings { margin:0;padding:0 0 20px;border:0;border-radius:0;background:transparent;border-top:2px solid var(--ink); }
html[data-page] .editorial-settings .section-head { margin:17px 0 13px; }
html[data-page] .editorial-settings .section-head .eyebrow { font-size:10px;letter-spacing:1px; }
html[data-page] .editorial-settings .section-head h2 { margin:0;font-size:22px;font-weight:600; }
html[data-page] .editorial-settings .preference-row { padding:16px 0;gap:18px; }
html[data-page] .editorial-settings .preference-row>div:first-child { min-width:0; }
html[data-page] .editorial-settings .preference-row p { font-size:11px; }
html[data-page] .editorial-settings .preference-row select { max-width:180px;border-radius:0; }
html[data-page] .editorial-settings .density,html[data-page] .editorial-settings .density button,html[data-page] .editorial-settings .switch { border-radius:0; }
html[data-page] .editorial-settings .density button { min-width:64px;padding-inline:9px;font-size:11px; }
html[data-page] .editorial-settings .saved-location { padding:9px 0; }
html[data-page] .editorial-settings .saved-location>button:first-child { font-size:14px; }
html[data-page] .notification-panel { margin-top:14px;padding:24px;background:var(--broadcast-navy);color:#fff; }
html[data-page] .notification-title { display:flex;gap:15px;align-items:center; }
html[data-page] .notification-title>.icon { width:27px;height:27px;color:#b5d6ed; }
html[data-page] .notification-title .eyebrow { color:#bbcfdd;font-size:9px;letter-spacing:1px;display:block;margin-bottom:4px; }
html[data-page] .notification-title h2 { font-size:23px;font-weight:550; }
html[data-page] .notification-panel p { font-size:12px;color:#c3d4e1;line-height:1.7;margin:16px 0 7px;max-width:420px; }
html[data-page] .notification-panel .text-link { color:#fff;font-size:12px; }
html[data-page] .activity-preference { padding-top:18px;border-top:1px solid var(--line); }
html[data-page] .activity-preference>strong { font-size:14px; }
html[data-page] .activity-preference>p { color:var(--muted);font-size:11px;margin:5px 0 13px; }
html[data-page] .activity-preference .activity-chip { border-radius:0; }
html[data-page] .activity-preference .activity-choices { margin-bottom:0; }
html[data-page] .report-panel { margin-top:30px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px 0;display:flex;justify-content:space-between;align-items:center;gap:25px; }
html[data-page] .report-panel>div { display:flex;gap:18px;align-items:center; }
html[data-page] .report-panel>div>.icon { color:var(--blue);width:30px;height:30px; }
html[data-page] .report-panel h2 { font-size:22px;font-weight:600; }
html[data-page] .report-panel p { margin-top:7px;color:var(--muted);font-size:12px;line-height:1.6; }
html[data-page] .report-panel>.button { flex-shrink:0; }
html[data-page] .partners-directory { margin-top:28px;border-top:2px solid var(--ink); }
html[data-page] .partners-directory>summary { display:flex;list-style:none;cursor:pointer;justify-content:space-between;align-items:center;gap:15px;padding:20px 0;min-height:70px; }
html[data-page] .partners-directory>summary>span { display:grid;gap:7px; }
html[data-page] .partners-directory .eyebrow { font-size:10px;color:var(--blue);letter-spacing:1px; }
html[data-page] .partners-directory summary strong { font-size:23px;font-weight:600;letter-spacing:-.5px; }
html[data-page] .partners-directory summary small { font-size:12px;color:var(--muted); }
html[data-page] .partners-directory[open]>summary>.icon { transform:rotate(45deg); }
html[data-page] .partners-directory .sponsor-list { grid-template-columns:repeat(4,minmax(0,1fr));padding-bottom:18px; }
html[data-page] .partners-directory .sponsor-tile { border-radius:0; }
html[data-page] .partners-directory .sponsor-tile>span { display:flex;align-items:center;gap:6px; }
html[data-page] .partners-directory .sponsor-tile>span>.icon { width:15px;height:15px; }
html[data-page] .editorial-radar { height:clamp(520px,70vh,690px);min-height:0;border:1px solid var(--line); }
html[data-page] .editorial-radar .radar-topline { padding:15px 22px;background:var(--broadcast-navy);color:#fff; }
html[data-page] .editorial-radar .radar-topline h2 { font-size:19px;font-weight:550;margin-top:3px; }
html[data-page] .editorial-radar .radar-topline .eyebrow { font-size:9px;letter-spacing:1.3px;color:#bbcfdd; }
html[data-page] .editorial-radar .radar-topline .button { color:#fff;border-color:#ffffff60;background:transparent;border-radius:0; }
html[data-page] .editorial-radar .map-canvas { min-height:280px; }
html[data-page] .editorial-radar .radar-controls { padding:13px 22px; }
html[data-page] .editorial-radar .radar-zone { font-size:10px;color:var(--muted);margin-top:7px; }
html[data-page] .editorial-radar .radar-meta { margin-top:6px; }
html[data-page] .radar-explainer { display:grid;grid-template-columns:1fr 1fr;gap:45px;padding:24px 0 10px; }
html[data-page] .radar-explainer .eyebrow { font-size:10px;color:var(--blue);letter-spacing:1px; }
html[data-page] .radar-explainer p { font-size:12px;line-height:1.65;color:var(--muted);margin-top:8px;max-width:530px; }
html[data-page] .radar-explainer .text-link { font-size:11px; }
html[data-page][data-native=true] .editorial-radar { height:clamp(460px,65vh,690px); }
@media(max-width:1100px) {
  html[data-page] .broadcast-day-key { grid-template-columns:55px minmax(0,1fr) 36px 88px;gap:8px; }
  html[data-page] .forecast-workspace { grid-template-columns:260px minmax(0,1fr);gap:20px; }
  html[data-page] .forecast-selected { padding:18px;gap:15px; }
  html[data-page] .forecast-selected-reading>div { flex-wrap:wrap;gap:10px; }
  html[data-page] .forecast-selected-reading>div>span { flex:1 0 100%;max-width:none; }
  html[data-page] .forecast-selected-metrics { padding-left:14px;min-width:118px; }
  html[data-page] .preferences-workspace { gap:25px; }
  html[data-page] .editorial-settings .preference-row { flex-wrap:wrap;gap:12px; }
  html[data-page] .editorial-settings .preference-row>div:first-child { flex:1 0 180px; }
  html[data-page] .editorial-settings .preference-row>.density { flex:0 0 auto; }
  html[data-page] .partners-directory .sponsor-list { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media(max-width:920px) {
  html[data-page] .forecast-workspace { display:block; }
  html[data-page] .forecast-days { flex-direction:row;max-height:none;overflow-x:auto;overflow-y:hidden;padding:0 0 10px;gap:8px;scroll-snap-type:x proximity; }
  html[data-page] .forecast-day-choice { flex:0 0 180px;width:180px;grid-template-columns:1fr;gap:9px;padding:13px;border:1px solid var(--line); }
  html[data-page] .forecast-day-choice[aria-pressed=true] { box-shadow:inset 0 3px var(--blue);border-color:var(--blue); }
  html[data-page] .forecast-day-date { flex-direction:row;align-items:baseline;justify-content:space-between; }
  html[data-page] .forecast-day-condition { min-height:30px; }
  html[data-page] .forecast-day-values { grid-column:auto;margin:0; }
  html[data-page] .forecast-day-panel>.micro { margin-top:3px;margin-bottom:20px;font-size:10px; }
  html[data-page] .forecast-selected-reading>div { flex-wrap:nowrap; }
  html[data-page] .forecast-selected-reading>div>span { flex:0 1 auto;max-width:200px; }
  html[data-page] .forecast-selected-metrics { grid-template-columns:repeat(3,1fr);gap:16px;padding-left:22px; }
  html[data-page] .forecast-selected-metrics>div { display:grid;gap:6px; }
  html[data-page] .editorial-updates .update-featured { gap:24px; }
  html[data-page] .editorial-updates .update-featured h2 { font-size:30px; }
}
@media(max-width:800px) {
  html[data-page] .broadcast-day-key { grid-template-columns:80px minmax(0,1fr) 60px minmax(110px,.7fr);gap:13px; }
}
@media(max-width:760px) {
  html[data-page] .broadcast-heading .density { margin-top:0; }
  html[data-page] .broadcast-intro { font-size:12px; }
  html[data-page] .planning-grid { gap:0; }
  html[data-page] .planning-link,html[data-page] .planning-link:not(:last-child) { padding:18px 0;border-right:0;border-bottom:1px solid var(--line); }
  html[data-page] .planning-link { grid-template-columns:30px minmax(0,1fr); }
  html[data-page] .planning-link small { border-top:0;padding-top:0; }
  html[data-page] .preferences-workspace { grid-template-columns:1fr;gap:26px; }
  html[data-page] .editorial-settings .preference-row { flex-wrap:nowrap; }
  html[data-page] .editorial-settings .preference-row>div:first-child { flex:1 1 auto; }
  html[data-page] .notification-panel { padding:22px;margin-top:0; }
  html[data-page] .report-panel { align-items:flex-start; }
  html[data-page] .report-panel>div { align-items:flex-start; }
  html[data-page] .report-panel>div>.icon { width:23px;height:23px; }
  html[data-page] .partners-directory .sponsor-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
  html[data-page] .editorial-radar { height:570px; }
  html[data-page] .radar-explainer { gap:25px; }
  html[data-page] .editorial-empty { padding:26px; }
}
@media(max-width:540px) {
  html[data-page] .broadcast-heading { flex-wrap:wrap; }
  html[data-page=today] .broadcast-heading { flex-wrap:nowrap; }
  html[data-page] .broadcast-heading>.button { margin-top:2px;font-size:12px; }
  html[data-page] .forecast-page .broadcast-heading { align-items:center; }
  html[data-page] .forecast-page .broadcast-intro { max-width:215px; }
  html[data-page] .forecast-page .broadcast-heading>.density { margin-top:0; }
  html[data-page] .broadcast-day-key { grid-template-columns:54px minmax(0,1fr) 32px 83px;gap:8px;font-size:9px; }
  html[data-page] .editorial-section-heading { padding-top:11px;margin-bottom:12px; }
  html[data-page] .editorial-section-heading h2 { font-size:17px; }
  html[data-page] .editorial-section-heading>span { font-size:10px; }
  html[data-page] .forecast-day-choice { flex-basis:165px;width:165px;padding:12px; }
  html[data-page] .forecast-day-condition>span { font-size:11px; }
  html[data-page] .forecast-day-values small { font-size:10px; }
  html[data-page] .editorial-hourly .forecast-stage-heading { padding:18px 16px 15px;gap:10px; }
  html[data-page] .editorial-hourly .forecast-stage-heading h2 { font-size:23px; }
  html[data-page] .forecast-day-tag { display:none; }
  html[data-page] .forecast-selected { display:block;padding:17px 16px; }
  html[data-page] .forecast-selected-reading>.eyebrow { font-size:10px; }
  html[data-page] .forecast-selected-reading>div { gap:14px; }
  html[data-page] .forecast-selected-reading strong { font-size:64px; }
  html[data-page] .forecast-selected-reading>div>span { font-size:14px;max-width:160px; }
  html[data-page] .forecast-selected-metrics { border-left:0;border-top:1px solid #ffffff30;padding:14px 0 0;margin-top:14px;gap:12px; }
  html[data-page] .forecast-selected-metrics dt { font-size:10px; }
  html[data-page] .forecast-selected-metrics dd { font-size:14px; }
  html[data-page] .editorial-hourly .forecast-chart { height:200px; }
  html[data-page] .editorial-hourly .chart-caption { padding:5px 16px 13px;gap:10px;font-size:10px; }
  html[data-page] .forecast-time-note { padding:12px 16px; }
  html[data-page] .editorial-table>summary { flex-wrap:wrap;gap:7px;position:relative;padding-right:30px; }
  html[data-page] .editorial-table>summary>span { margin-left:0;flex:1 0 100%;font-size:10px; }
  html[data-page] .editorial-table>summary::after { position:absolute;right:0;top:15px; }
  html[data-page] .newsroom-context { display:block; }
  html[data-page] .newsroom-context>span { display:block;margin-top:7px; }
  html[data-page] .editorial-updates { grid-template-columns:minmax(0,1fr);gap:22px; }
  html[data-page] .editorial-updates .update-featured { display:block;padding-bottom:20px; }
  html[data-page] .editorial-updates .update-featured .update-copy { padding-top:18px; }
  html[data-page] .editorial-updates .update-featured h2 { font-size:29px; }
  html[data-page] .editorial-updates .update-card h2 { font-size:26px; }
  html[data-page] .editorial-updates .update-featured:not(:has(.update-image)) { padding:20px; }
  html[data-page] .editorial-updates .update-featured:not(:has(.update-image)) .update-copy { padding-top:0; }
  html[data-page] .editorial-empty { min-height:210px;padding:24px 18px; }
  html[data-page] .editorial-empty h2 { font-size:24px; }
  html[data-page] .editorial-empty p { font-size:12px; }
  html[data-page] .editorial-settings .preference-row { flex-wrap:wrap;gap:12px; }
  html[data-page] .editorial-settings .preference-row>div:first-child { flex:1 0 180px; }
  html[data-page] .editorial-settings .preference-row>.density { flex:0 0 auto; }
  html[data-page] .editorial-settings .preference-row p { max-width:280px; }
  html[data-page] .report-panel { flex-direction:column;gap:15px;padding:23px 0; }
  html[data-page] .report-panel h2 { font-size:21px; }
  html[data-page] .report-panel>.button { margin-left:41px; }
  html[data-page] .partners-directory summary strong { font-size:22px; }
  html[data-page] .partners-directory summary small { font-size:11px; }
  html[data-page] .editorial-radar { height:520px; }
  html[data-page] .editorial-radar .radar-topline { padding:12px 14px;gap:10px; }
  html[data-page] .editorial-radar .radar-topline h2 { font-size:17px; }
  html[data-page] .editorial-radar .radar-controls { padding:12px 14px; }
  html[data-page] .editorial-radar .radar-meta { font-size:10px; }
  html[data-page] .editorial-radar .radar-zone { font-size:10px;line-height:1.5; }
  html[data-page] .radar-explainer { grid-template-columns:1fr;gap:18px;padding-top:21px; }
  html[data-page] .broadcast-footer-links { flex-wrap:wrap;gap:0 20px; }
}
@media(max-width:359px) {
  html[data-page=today] .broadcast-heading { flex-wrap:wrap; }
  html[data-page] .broadcast-day-key { grid-template-columns:46px minmax(0,1fr) 29px 73px;gap:6px; }
  html[data-page] .forecast-selected-reading>div { gap:9px; }
  html[data-page] .forecast-selected-reading>div>span { font-size:13px; }
  html[data-page] .forecast-selected-reading .weather-icon { width:24px;height:24px; }
  html[data-page] .forecast-selected-metrics { gap:10px; }
  html[data-page] .forecast-selected-metrics dd { font-size:13px; }
}
/* Sponsor placements: clearly identified, readable, and separate from weather data. */
html[data-page] .broadcast-page>.sponsor-band {
  display:grid;grid-template-columns:152px minmax(0,1fr) auto;gap:24px;
  align-items:center;margin-top:26px;padding:16px 20px;border:1px solid var(--line);
  border-left:3px solid var(--blue);border-radius:0;background:var(--surface);box-shadow:none;
}
html[data-page] .broadcast-page>.sponsor-band .sponsor-art {
  width:152px;height:86px;padding:5px;border:1px solid #e1e5e8;border-radius:0;background:#fff;
}
html[data-page] .broadcast-page>.sponsor-band .sponsor-art img { object-fit:contain; }
html[data-page] .broadcast-page>.sponsor-band .sponsor-copy .eyebrow {
  font-size:10px;line-height:1.5;letter-spacing:1px;color:var(--muted);
}
html[data-page] .broadcast-page>.sponsor-band .sponsor-copy strong {
  display:flex;align-items:center;gap:10px;margin-top:7px;font-size:18px;line-height:1.3;font-weight:650;
}
html[data-page] .broadcast-page>.sponsor-band .sponsor-copy .icon { width:17px;height:17px;flex-shrink:0; }
html[data-page] .broadcast-page>.sponsor-band .sponsor-controls { display:flex;flex-direction:row;gap:6px;margin:0;width:auto; }
html[data-page] .broadcast-page>.sponsor-band .sponsor-controls .icon-button {
  width:44px;min-width:44px;height:44px;min-height:44px;border:1px solid var(--line);background:var(--surface);
}
html[data-page] .broadcast-page>.sponsor-band a:focus-visible,
html[data-page] .partners-directory .sponsor-tile:focus-visible { outline:3px solid var(--blue);outline-offset:4px; }
html[data-page] .partners-directory .sponsor-list {
  grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:4px 0 24px;
}
html[data-page] .partners-directory .sponsor-tile {
  display:flex;flex-direction:column;align-items:stretch;padding:14px;border-radius:0;
  background:var(--surface);border:1px solid var(--line);box-shadow:none;
}
html[data-page] .partners-directory .sponsor-tile img {
  width:100%;height:148px;object-fit:contain;padding:8px;background:#fff;border:1px solid #e1e5e8;border-radius:0;
}
html[data-page] .partners-directory .sponsor-tile strong { font-size:15px;line-height:1.45;margin:13px 0 10px; }
html[data-page] .partners-directory .sponsor-tile>span {
  margin-top:auto;padding-top:10px;border-top:1px solid var(--line);min-height:34px;font-size:12px;color:var(--blue);
}
html[data-page] .planning-link:nth-child(-n+2)>small {
  padding-top:13px;border-top:1px solid var(--line);font-size:11px;line-height:1.6;color:var(--muted);
}
html[data-page] .planning-link:nth-child(-n+2)>small strong { color:var(--ink);font-size:13px;font-weight:650; }
@media(max-width:760px) {
  html[data-page] .broadcast-page>.sponsor-band { grid-template-columns:112px minmax(0,1fr);gap:10px 16px;padding:14px; }
  html[data-page] .broadcast-page>.sponsor-band .sponsor-art { width:112px;height:72px;grid-row:1 / span 2; }
  html[data-page] .broadcast-page>.sponsor-band .sponsor-copy strong { font-size:15px;margin-top:5px; }
  html[data-page] .broadcast-page>.sponsor-band .sponsor-copy .eyebrow { font-size:10px;letter-spacing:.5px; }
  html[data-page] .broadcast-page>.sponsor-band .sponsor-controls { grid-column:2;justify-self:end;flex-direction:row;gap:6px; }
  html[data-page] .partners-directory .sponsor-list { grid-template-columns:repeat(2,minmax(0,1fr));gap:12px; }
  html[data-page] .partners-directory .sponsor-tile { padding:10px; }
  html[data-page] .partners-directory .sponsor-tile img { height:110px;padding:4px; }
  html[data-page] .partners-directory .sponsor-tile strong { font-size:13px; }
}
@media(max-width:380px) {
  html[data-page] .broadcast-page>.sponsor-band { grid-template-columns:92px minmax(0,1fr);gap:9px 12px;padding:12px; }
  html[data-page] .broadcast-page>.sponsor-band .sponsor-art { width:92px;height:64px; }
  html[data-page] .broadcast-page>.sponsor-band .sponsor-copy strong { font-size:14px; }
  html[data-page] .partners-directory .sponsor-list { grid-template-columns:1fr; }
}

/* The companion now stands outside the outlook card in its own reserved rail. */
html[data-page] .storm-summary--companion {grid-template-columns:minmax(0,1fr) auto;}
html[data-page] .storm-summary--companion::before {display:none;}
html[data-page] .storm-summary--companion .storm-copy {grid-column:1;display:block;}
html[data-page] .storm-summary--companion .storm-meta {grid-column:1;grid-row:2;}
html[data-page] .storm-summary--companion .storm-actions {grid-column:2;grid-row:1 / span 2;}
#stormy-critical-alerts:not(:empty) {max-width:1440px;margin:16px auto 0;padding:0 var(--space);}
@media(max-width:760px){html[data-page] .storm-summary--companion {grid-template-columns:minmax(0,1fr);gap:8px;}html[data-page] .storm-summary--companion .storm-actions {grid-column:1;grid-row:3;}html[data-page] .storm-summary--companion .storm-copy h2 {font-size:23px;}html[data-page] .storm-summary--companion .storm-text {margin-top:8px;}html[data-page] .storm-summary--companion .storm-actions {margin-top:6px;}}

/* Concise provenance belongs with forecast metadata, rather than a source footer. */
html[data-page] .weather-metadata {display:flex;align-items:center;justify-content:space-between;gap:12px 24px;flex-wrap:wrap;color:var(--muted);font-size:12px;line-height:1.55;margin:12px 0 24px;min-width:0;}
html[data-page] .weather-metadata>div {min-width:0;max-width:100%;overflow-wrap:anywhere;}
html[data-page] .weather-metadata .weather-edit-note {margin:4px 0 0;color:var(--ink);}
@media(max-width:540px) {
  html[data-page] .broadcast-ledger>div>strong {min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere;}
  html[data-page] .broadcast-ledger>div>small {min-width:0;max-width:100%;overflow-wrap:anywhere;}
  html[data-page] .broadcast-day-row .range {min-width:0;max-width:100%;flex-wrap:wrap;justify-content:flex-end;gap:4px 6px;}
  html[data-page] .broadcast-day-row .range-track {display:none;}
  html[data-page] .broadcast-day-row .broadcast-day-condition span {min-width:0;overflow-wrap:anywhere;}
}
/* The home radar is a compact live-data panel; controls grow with text. */
html[data-page] .today-local-details { min-width:0;display:flex;flex-direction:column;gap:24px; }
html[data-page] .home-live-radar,
html[data-page][data-native=true] .home-live-radar { height:auto;min-height:0;overflow:visible; }
html[data-page] .home-live-radar .map-canvas { height:250px;min-height:250px;flex:none; }
html[data-page] .home-live-radar .radar-topline { padding:12px 14px;align-items:flex-start;flex-wrap:wrap; }
html[data-page] .home-live-radar .radar-topline>div { min-width:0;flex:1 1 170px; }
html[data-page] .home-live-radar .radar-topline .text-link { color:#d2e8fc;min-height:44px;font-size:14px;white-space:normal; }
html[data-page] .home-live-radar .radar-controls { padding:12px 14px; }
html[data-page] .home-live-radar .radar-timeline { display:grid;grid-template-columns:44px minmax(0,1fr);gap:6px 12px; }
html[data-page] .home-live-radar .radar-time { grid-column:1 / -1;white-space:normal;font-size:14px;overflow-wrap:anywhere; }
html[data-page] .home-live-radar .radar-meta { flex-wrap:wrap;gap:10px;font-size:13px; }
html[data-page] .home-live-radar .radar-zone { font-size:12px;overflow-wrap:anywhere; }
html[data-page] .home-live-radar .map-status { font-size:13px;overflow-wrap:anywhere; }
@media(max-width:760px){html[data-page] .today-local-details { order:-1; }html[data-page] .home-live-radar .map-canvas {height:240px;min-height:240px;}}
