/* Static draft/approved alert layouts; no audio, animation, flashing or carousel. */
.k12cast-alert-presentation { box-sizing:border-box; width:100%; min-height:100%; display:flex; flex-direction:column; color:#17202f; background:#fff; font-family:Arial,Helvetica,sans-serif; font-size:1.5vw; font-size:clamp(12px,1.5vw,32px); text-align:left; overflow-wrap:break-word; }
.k12cast-alert-presentation * { box-sizing:border-box; }
.k12cast-alert-presentation p,.k12cast-alert-presentation h2 { margin:0; }
.k12cast-alert-review-banner,.k12cast-alert-training-banner { padding:.55em 5%; background:#18222f; color:#fff; font-size:.85em; font-weight:800; line-height:1.35; text-align:center; }
.k12cast-alert-training-banner { background:#ffe59a; color:#17202f; font-size:1em; border:solid #17202f; border-width:2px 0; }
.k12cast-alert-source { padding:.85em 5%; display:flex; justify-content:space-between; gap:1em; font-size:1em; line-height:1.35; }
.k12cast-alert-source strong { font-weight:500; }
.k12cast-alert-action-band { padding:1em 5%; color:#fff; }
.k12cast-alert-action-band h2 { font-size:4.5em; line-height:1.08; letter-spacing:.015em; font-weight:800; }
.k12cast-alert-action-band p { margin-top:.4em; font-size:1.35em; line-height:1.25; font-weight:700; }
.k12cast-alert-copy { flex:1 0 auto; display:flex; align-items:flex-start; gap:1.35em; padding:1.5em 5% 2.2em; }
.k12cast-alert-copy>div:last-child { min-width:0; flex:1; }
.k12cast-alert-primary { font-size:2.4em; line-height:1.28; font-weight:750; }
.k12cast-alert-supporting { margin-top:.65em!important; font-size:1.6em; line-height:1.35; }
.k12cast-alert-icon-slot { flex:0 0 5.5em; min-height:5.5em; border:2px solid #526174; border-radius:.4em; display:flex; align-items:center; justify-content:center; flex-direction:column; gap:.45em; padding:.4em; color:#34445a; }
.k12cast-alert-icon-slot strong { font-size:1.2em; }
.k12cast-alert-icon-slot span { font-size:.68em; }
.k12cast-alert-icon { flex:0 0 5.5em; width:5.5em; height:5.5em; object-fit:contain; }
.k12cast-alert-metadata { padding:.65em 5%; background:#e9edf3; color:#34445a; font-size:1em; line-height:1.35; }
.k12cast-alert-metadata p+p { margin-top:.2em; }
.k12cast-alert-preview-issues { padding:.8em 5%; font-size:.9em; line-height:1.4; background:#fff0ba; color:#382c09; }
.k12cast-alert-presentation.portrait .k12cast-alert-source { flex-direction:column; gap:.35em; }
.k12cast-alert-presentation.portrait .k12cast-alert-action-band h2 { font-size:4.1em; }
.k12cast-alert-presentation.portrait .k12cast-alert-copy { flex-direction:column; gap:1em; }
.k12cast-alert-presentation.portrait .k12cast-alert-icon-slot,.k12cast-alert-presentation.portrait .k12cast-alert-icon { flex-basis:auto; width:4.5em; height:4.5em; min-height:4.5em; }
.k12cast-alert-presentation.portrait .k12cast-alert-primary { font-size:2.1em; }
.k12cast-alert-presentation.portrait .k12cast-alert-supporting { font-size:1.55em; }
@supports (font-size:1cqw) { .k12cast-alert-presentation { font-size:clamp(12px,1.5cqw,32px); } .k12cast-alert-presentation.portrait { font-size:clamp(12px,2.5cqw,32px); } }
.emergency-alert.governed { width:100%; height:100%; min-height:100%; padding:0; display:block; background:#fff; container-type:inline-size; }
.emergency-alert.governed>.k12cast-alert-presentation { min-height:100%; }
.emergency-alert.governed .emergency-alert-actions { background:#17202f; color:#fff; padding:1em 5%; }
/* Isolate package typography from legacy emergency span/paragraph rules. */
.emergency-alert.governed .k12cast-alert-presentation span { border:0; padding:0; border-radius:0; letter-spacing:normal; font-weight:inherit; font-size:inherit; }
.k12cast-alert-presentation .k12cast-alert-primary { font-size:2.4em; line-height:1.28; }
.k12cast-alert-presentation .k12cast-alert-supporting { font-size:1.6em; line-height:1.35; }
.k12cast-alert-presentation .k12cast-alert-action-band p { font-size:1.35em; line-height:1.25; }
.k12cast-alert-presentation .k12cast-alert-metadata p { font-size:inherit; line-height:inherit; }
.k12cast-alert-presentation.portrait .k12cast-alert-primary { font-size:2.1em; }
.k12cast-alert-presentation.portrait .k12cast-alert-supporting { font-size:1.55em; }

.k12cast-alert-presentation .k12cast-alert-action-band.long-heading h2 { font-size:3.5em; }
.k12cast-alert-presentation.portrait .k12cast-alert-action-band.long-heading h2 { font-size:3.2em; }
.k12cast-alert-presentation.portrait .k12cast-alert-copy>div:last-child { width:100%; }
.k12cast-alert-presentation { word-break:break-word; }

.k12cast-alert-stale-banner { padding:.6em 5%; background:#ffe59a; color:#17202f; font-size:.9em; font-weight:750; line-height:1.35; }
.k12cast-alert-presentation .k12cast-alert-action-band h2,.k12cast-alert-presentation .k12cast-alert-action-band p { color:#fff; }
.k12cast-alert-presentation .k12cast-alert-primary,.k12cast-alert-presentation .k12cast-alert-supporting { color:#17202f; }
.k12cast-alert-presentation .k12cast-alert-metadata p { color:#34445a; }

/* Repeated drill/test banners require a compact frame across installed font fallbacks. */
.k12cast-alert-presentation.training .k12cast-alert-source { padding:.65em 5%; }
.k12cast-alert-presentation.training .k12cast-alert-action-band { padding:.8em 5%; }
.k12cast-alert-presentation.training .k12cast-alert-copy { padding:1em 5%; }

/* Keep repeated training identification readable when long reviewed copy needs compact type. */
.k12cast-alert-training-banner { font-size:26px; font-size:max(26px,1em); }
