/* Weather & school notices: one status panel instead of three boxes, and
   planned school changes in the calendar's day grammar. Loaded only by /alerts/. */
.alert-sources{margin:18px 0;border:1px solid var(--panel-line);border-radius:var(--panel-radius);background:var(--surface);overflow:hidden}
.alert-sources>h2{font:10px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink2);padding:12px 18px 10px;margin:0;border-bottom:1px solid var(--line)}
.alert-source{display:grid;grid-template-columns:minmax(150px,1.1fr) minmax(0,1.3fr) minmax(0,1.5fr) auto;gap:4px 18px;align-items:baseline;padding:12px 18px;border-bottom:1px solid var(--line)}
.alert-source:last-child{border-bottom:0}
.alert-source strong{font:600 18px/1.2 var(--display);color:var(--navy)}
.alert-source-state{display:flex;align-items:center;gap:7px;font-size:14px;font-weight:600}
.alert-source-state:before{content:'';width:8px;height:8px;border-radius:50%;flex:0 0 8px;background:#466f69}
.alert-source.is-delayed .alert-source-state{color:#7a5410}
.alert-source.is-delayed .alert-source-state:before{background:var(--amber)}
.alert-source small{font:11px/1.4 var(--mono);color:var(--ink2)}
.alert-source a{font-size:14px;white-space:nowrap;text-decoration:underline;text-underline-offset:3px}
.alert-none{border-left:3px solid var(--navy);padding:4px 0 4px 16px;margin:22px 0}
.alert-none h2{font-size:23px;margin:0 0 4px}
.alert-none p{margin:0;font-size:15px;max-width:65ch}
.planned-school{margin-top:34px}
.planned-intro{margin:6px 0 0;font-size:14px;color:var(--ink2)}
.planned-school .cal-day{margin-top:18px}
.alerts-foot{margin-top:28px;font-size:14px}
@media(max-width:760px){
.alert-source{grid-template-columns:1fr auto;padding:12px 14px}
.alert-source strong{grid-column:1}
.alert-source a{grid-column:2;grid-row:1}
.alert-source-state,.alert-source small{grid-column:1 / -1}
.alert-none h2{font-size:21px}
}
