/* Corvid Intel: dark "intel product" theme. System fonts only; no external assets.
   Contrast pairs (checked by verify.py, WCAG AA >= 4.5:1): --fg/--muted/--link/--accent on --bg and --panel; each badge/chip -fg on its -bg. */
:root{
 --bg:#0f1114;--panel:#171a1f;--panel2:#1e2228;--rule:#2b3038;--fg:#ece8e1;--muted:#a9aeb6;--accent:#e3a33a;--link:#f0b65a;--focus:#ffd27a;
 --ok-bg:#13301f;--ok-fg:#8fe6ad;--ok2-bg:#102a42;--ok2-fg:#9cd0ff;--mid-bg:#352b0b;--mid-fg:#f2d27a;--warn-bg:#3a220f;--warn-fg:#ffbb8c;--bad-bg:#3d1418;--bad-fg:#ffa7ae;
 --new-bg:#0f2433;--new-fg:#9fd8ff;--building-bg:#33250a;--building-fg:#ffc46b;--fading-bg:#23272e;--fading-fg:#c3c8cf;--confirmed-bg:#13301f;--confirmed-fg:#8fe6ad;--watch-bg:#2a1d3d;--watch-fg:#d9bfff;
 --hi-bg:#1e2228;--hi-fg:#ff9e80;--md-bg:#1e2228;--md-fg:#ffd27a;--lo-bg:#1e2228;--lo-fg:#b9bec6;--nm-bg:#1e2228;--nm-fg:#a9aeb6;
 --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif;
 --mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","DejaVu Sans Mono",monospace;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;color-scheme:dark}
body{margin:0;background:var(--bg);color:var(--fg);font:17px/1.62 var(--sans)}
a{color:var(--link);text-underline-offset:3px;text-decoration-thickness:1px;overflow-wrap:anywhere}
a:hover{color:var(--focus)}
:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.mono{font-family:var(--mono);letter-spacing:.02em}
.skip{position:absolute;left:-999px;top:0;background:var(--accent);color:#111;padding:.5rem .8rem;z-index:10}
.skip:focus{left:.5rem}
.wrap{max-width:72rem;margin:0 auto;padding:0 1.25rem}
main.wrap{padding-top:1.6rem;padding-bottom:3rem}
.edition,.about,.trk-list,.reg-ed,.results,.search-form{max-width:48rem}
/* header */
header.site{background:#0b0d10;border-bottom:1px solid var(--rule)}
.hdr{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.6rem 1.5rem;padding-top:.8rem;padding-bottom:.8rem}
.brand{display:flex;align-items:center;gap:.7rem;color:var(--fg);text-decoration:none}
.brand .logo-print{display:none}
.bn{display:flex;flex-direction:column;line-height:1.1}
.b1{font-weight:800;letter-spacing:.2em;font-size:1.22rem}
.b2{font-size:.66rem;color:var(--muted);letter-spacing:.16em;margin-top:.3rem}
.main-nav{display:flex;flex-wrap:wrap;gap:.2rem .2rem}
.main-nav a{color:var(--fg);text-decoration:none;font-size:.9rem;padding:.35rem .6rem;border-radius:4px}
.main-nav a:hover{background:var(--panel2)}
.main-nav a[aria-current=page]{color:var(--accent);box-shadow:inset 0 -2px 0 var(--accent)}
/* type */
h1,h2,h3{line-height:1.22;font-weight:750;letter-spacing:-.005em}
h1{font-size:2rem;margin:.3rem 0 .7rem}
h2{font-size:1.3rem;margin:2.4rem 0 .8rem}
.edition h2,.about h2{padding-bottom:.35rem;border-bottom:1px solid var(--rule);text-transform:uppercase;letter-spacing:.06em;font-size:1.05rem;color:var(--accent);font-family:var(--mono)}
h3,.h3{font-size:1.08rem;margin:1.6rem 0 .4rem}
p,li{overflow-wrap:break-word}
ul,ol{padding-left:1.25rem}
li{margin:.4rem 0}
li>ul{margin:.3rem 0}
li::marker{color:var(--muted)}
hr{border:0;border-top:1px solid var(--rule);margin:2rem 0}
em{color:#d6d2ca}
.meta{color:var(--muted);font-size:.86rem}
.kicker{font-size:.72rem;letter-spacing:.16em;color:var(--accent);margin:0 .6rem 0 0;font-weight:600}
.lede{color:#d6d2ca;font-size:1.08rem;max-width:48rem}
.dateline{display:flex;flex-wrap:wrap;gap:.25rem 1.1rem;font-size:.76rem;color:var(--muted);margin:0 0 .6rem;letter-spacing:.08em}
.dateline span{white-space:nowrap}
.dateline span+span::before{content:"//";color:var(--rule);margin-right:1.1rem}
.dateline a{color:var(--link)}
/* blocks */
.bottom-line,.bl-box{background:var(--panel);border:1px solid var(--rule);border-left:3px solid var(--accent);padding:.95rem 1.15rem;border-radius:4px}
.bl-box p{margin:.2rem 0}
.bl-box .kicker{display:block;margin-bottom:.4rem}
.actions{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.1rem 0}
.actions.center{justify-content:center;margin-top:2.5rem}
.btn{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem .9rem;border:1px solid var(--rule);background:var(--panel);color:var(--fg);border-radius:4px;text-decoration:none;font-size:.9rem;font-family:inherit;cursor:pointer;line-height:1.3}
.btn:hover{border-color:var(--accent);color:var(--fg)}
.btn-accent{background:var(--accent);border-color:var(--accent);color:#14110a;font-weight:700}
.btn-accent:hover{background:var(--focus);color:#14110a}
.btn-tg.pending{border-style:dashed;color:var(--muted)}
/* badges & chips */
.lbl,.chip{display:inline-block;font-family:var(--mono);font-size:.72rem;font-weight:600;letter-spacing:.03em;padding:.08em .5em;border-radius:3px;white-space:nowrap;border:1px solid transparent;vertical-align:.08em;line-height:1.5}
.lbl-ok{background:var(--ok-bg);color:var(--ok-fg);border-color:#22553a}
.lbl-ok2{background:var(--ok2-bg);color:var(--ok2-fg);border-color:#1f4a70}
.lbl-mid{background:var(--mid-bg);color:var(--mid-fg);border-color:#5c4b14}
.lbl-warn{background:var(--warn-bg);color:var(--warn-fg);border-color:#66401f}
.lbl-bad{background:var(--bad-bg);color:var(--bad-fg);border-color:#6e2a31}
.st-new{background:var(--new-bg);color:var(--new-fg)}.st-building{background:var(--building-bg);color:var(--building-fg)}
.st-fading{background:var(--fading-bg);color:var(--fading-fg)}.st-confirmed{background:var(--confirmed-bg);color:var(--confirmed-fg)}
.st-watch{background:var(--watch-bg);color:var(--watch-fg)}
.chip.st{white-space:normal}
.chat{background:var(--panel2);border-color:var(--rule)}
.chat-hi{color:var(--hi-fg)}.chat-md{color:var(--md-fg)}.chat-lo{color:var(--lo-fg)}.chat-nm{color:var(--nm-fg)}
.chips{display:flex;flex-wrap:wrap;gap:.35rem;margin:.6rem 0}
.who-tag{color:var(--accent)}
/* cards & grids */
.sec-h{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--rule);margin:2.6rem 0 1rem;padding-bottom:.4rem}
.sec-h h2{margin:0;font-family:var(--mono);text-transform:uppercase;letter-spacing:.1em;font-size:.95rem;color:var(--accent)}
.sec-h a{font-size:.72rem;text-decoration:none;letter-spacing:.1em;white-space:nowrap}
.grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(19rem,1fr))}
.card{background:var(--panel);border:1px solid var(--rule);border-radius:6px;padding:1rem 1.1rem}
.card h3{margin:.2rem 0 .4rem;font-size:1.05rem}
.card h3 a,.card h2 a{color:var(--fg);text-decoration:none}
.card h3 a:hover,.card h2 a:hover{color:var(--link);text-decoration:underline}
.card-meta{font-size:.68rem;letter-spacing:.12em;color:var(--muted);margin:0}
.card-text{margin:.3rem 0;font-size:.94rem;color:#d6d2ca}
.card-foot{font-size:.7rem;letter-spacing:.1em;margin:.6rem 0 0;color:var(--muted)}
.card-foot a{text-decoration:none}
.who{font-size:.86rem;margin:.5rem 0 0;color:#d6d2ca}
.who .mono{display:block;font-size:.66rem;letter-spacing:.14em;color:var(--accent);margin-bottom:.1rem}
.items{list-style:none;padding:0;margin:0}
.items li{margin:0;border-top:1px solid var(--rule)}
.items li:first-child{border-top:0}
.item-link{display:block;padding:.55rem 0;color:var(--fg);text-decoration:none;font-size:.94rem;line-height:1.5}
.item-link strong{color:var(--link)}
.item-link:hover strong{text-decoration:underline}
.region .items li .item-link{font-size:.9rem}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:0 2rem}
.ed-list{list-style:none;padding:0}
.ed-list li{border-bottom:1px solid var(--rule);padding:.7rem 0;margin:0}
.ed-list a{text-decoration:none;color:var(--fg);font-weight:650}
.ed-list a .mono{display:block;font-weight:400;font-size:.75rem;color:var(--muted)}
.ed-list p{margin:.2rem 0 0;color:var(--muted);font-size:.92rem}
/* hero */
.hero{border-bottom:1px solid var(--rule);padding-bottom:.6rem}
.h-ed{font-size:2.3rem;margin:.2rem 0 .5rem}
.h-ed a{color:var(--fg);text-decoration:none}
.h-ed a:hover{color:var(--link)}
.hero .bl-box{max-width:52rem;font-size:1.04rem}
/* edition */
.toc{background:var(--panel);border:1px solid var(--rule);border-radius:6px;padding:.7rem 1rem;font-size:.92rem;margin:1rem 0}
.toc ol{margin:.4rem 0 0;padding-left:1.3rem;columns:2;column-gap:2rem}
.toc li{margin:.15rem 0}
.region-bar{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin:1rem 0 .4rem}
.rbtn{font-size:.8rem;padding:.3rem .65rem;border:1px solid var(--rule);border-radius:999px;color:var(--fg);text-decoration:none;background:var(--panel)}
.rbtn:hover,.rbtn[aria-current=page]{border-color:var(--accent);color:var(--accent)}
.region-tools{font-size:.72rem;letter-spacing:.06em;margin:-.2rem 0 .6rem;color:var(--muted)}
.edition p[id^=signal-]{font-size:1.04rem;margin-top:1.6rem;padding-top:.8rem;border-top:1px dashed var(--rule)}
.prevnext{display:flex;justify-content:space-between;border-top:1px solid var(--rule);margin-top:2.5rem;padding-top:1rem;font-size:.85rem;max-width:48rem}
/* tracker */
.legend{background:var(--panel);border:1px solid var(--rule);border-radius:6px;padding:.6rem 1rem;margin:1rem 0;max-width:48rem}
.legend p{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;margin:.35rem 0}
.filters{display:none;flex-direction:column;gap:.5rem;margin:1rem 0;max-width:48rem}
.js .filters{display:flex}
.filters div{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem}
.filters button{font:inherit;font-size:.8rem;padding:.3rem .65rem;border-radius:999px;border:1px solid var(--rule);background:var(--panel);color:var(--fg);cursor:pointer}
.filters button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:#14110a;font-weight:700}
.trk{margin:0 0 1rem}
.trk[hidden]{display:none}
.trk-h{font-size:1.15rem;margin:.25rem 0 .2rem}
.facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem 1rem;margin:.7rem 0;font-size:.88rem}
.facts div{min-width:0}
.facts .wide{grid-column:1/-1}
.facts dt{font-family:var(--mono);font-size:.64rem;letter-spacing:.14em;color:var(--accent);text-transform:uppercase}
.facts dd{margin:.1rem 0 0;color:#d6d2ca}
.spark{display:block;overflow:visible}
.spark polyline{fill:none;stroke:var(--accent);stroke-width:1.8;stroke-linejoin:round}
.spark circle{fill:var(--accent)}
.spark-cap,.spark-none{display:block;font-size:.66rem;color:var(--muted);margin-top:.15rem}
details summary{cursor:pointer;font-size:.72rem;letter-spacing:.12em;color:var(--link);padding:.3rem 0}
.hist{padding-left:0;list-style:none;font-size:.88rem}
.hist>li{border-left:2px solid var(--rule);padding-left:.8rem;margin:.6rem 0}
.hist ul{padding-left:0;list-style:none}
.hdate{color:var(--accent);font-size:.75rem}
.tag{font-size:.62rem;letter-spacing:.12em;color:var(--muted);border:1px solid var(--rule);padding:0 .3em;border-radius:2px}
/* regions */
.reg-ed h2{font-size:1.1rem;border-bottom:1px solid var(--rule);padding-bottom:.3rem}
.reg-ed h2 a{color:var(--fg);text-decoration:none}
.reg-ed h2 .meta{font-size:.7rem;margin-left:.4rem}
/* search */
.search-form label{display:block;margin-bottom:.4rem;color:#d6d2ca}
.search-row{display:flex;gap:.5rem}
.search-row input{flex:1;min-width:0;font:inherit;padding:.6rem .8rem;background:var(--panel);color:var(--fg);border:1px solid var(--rule);border-radius:4px}
.search-row input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 2px rgba(227,163,58,.35)}
.results{list-style:none;padding:0}
.res{border-bottom:1px solid var(--rule);padding:.8rem 0;margin:0}
.res p{margin:.2rem 0}
.res>a{font-weight:650;font-size:1.02rem}
mark{background:#5c4410;color:#fff3d6;padding:0 .1em;border-radius:2px}
/* subscribe & footer */
.subscribe{background:var(--panel);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.sub-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem 2rem;padding-top:1.3rem;padding-bottom:1.3rem}
.sub-copy p{margin:.2rem 0}
.sub-copy p:not(.kicker){color:#d6d2ca}
.sub-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
.sub-form{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
.sub-form label{position:absolute;left:-999px}
.sub-form input{font:inherit;padding:.5rem .7rem;background:var(--bg);color:var(--fg);border:1px solid var(--rule);border-radius:4px}
footer.site{color:var(--muted);font-size:.85rem;padding:1.4rem 0 2.4rem}
footer.site p{margin:.3rem 0}
.foot-brand{display:inline-block;margin-bottom:.4rem;opacity:.9}.foot-brand img{display:block}
.foot-links{font-size:.74rem;letter-spacing:.06em}
/* mobile */
@media (max-width:760px){
 .two-col{grid-template-columns:1fr}
 .facts{grid-template-columns:1fr 1fr}
 .toc ol{columns:1}
}
@media (max-width:560px){
 body{font-size:16px}
 .wrap{padding:0 1rem}
 h1{font-size:1.6rem}.h-ed{font-size:1.75rem}
 .hdr{gap:.5rem}
 .main-nav{flex-wrap:nowrap;overflow-x:auto;width:100%;margin:0 -1rem;padding:0 .6rem;scrollbar-width:none}
 .main-nav::-webkit-scrollbar{display:none}
 .main-nav a{white-space:nowrap;padding:.35rem .5rem}
 .b1{font-size:1.08rem}.b2{font-size:.58rem}
 .grid{grid-template-columns:1fr}
 .dateline{font-size:.68rem;gap:.15rem .7rem}
 .dateline span+span::before{margin-right:.7rem}
 .sub-inner{flex-direction:column;align-items:flex-start}
}
/* print: always light */
@media print{
 :root{--bg:#fff;--panel:#fff;--panel2:#fff;--rule:#bbb;--fg:#000;--muted:#444;--accent:#7a4f00;--link:#123d6b;
  --ok-bg:#e3f4e8;--ok-fg:#14532d;--ok2-bg:#e2eefa;--ok2-fg:#0c3b66;--mid-bg:#fff4cc;--mid-fg:#5c4300;--warn-bg:#fde6d4;--warn-fg:#7a3300;--bad-bg:#fadadd;--bad-fg:#7f1d1d;
  --new-bg:#e2eefa;--new-fg:#0c3b66;--building-bg:#fff4cc;--building-fg:#5c4300;--fading-bg:#eee;--fading-fg:#333;--confirmed-bg:#e3f4e8;--confirmed-fg:#14532d;--watch-bg:#efe6fb;--watch-fg:#4b2a7a;
  --hi-fg:#8a2a00;--md-fg:#5c4300;--lo-fg:#333;--nm-fg:#444}
 html{color-scheme:light}
 body{background:#fff;color:#000;font-size:10.5pt;line-height:1.45}
 em,.lede,.card-text,.who,.facts dd{color:#222}
 .main-nav,.subscribe,.region-bar,.filters,.toc,.actions,.prevnext,.skip,.search-form,.foot-links,.region-tools{display:none!important}
 header.site{background:#fff;border-bottom:2px solid #000}
 .brand .logo{display:none}.brand .logo-print{display:block}
 .wrap{max-width:none;padding:0}
 .card,.bl-box,.bottom-line,.legend{break-inside:avoid;border-color:#bbb}
 h2,h3{break-after:avoid}
 a{color:#123d6b;text-decoration:none}
 details{display:block}details>summary{display:none}
 .trk[hidden]{display:block}
 mark{background:#ffe9a8;color:#000}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
/* v2 additions: hero sitrep, status board, tracker grid */
.hero{display:grid;grid-template-columns:minmax(0,1fr) 19rem;gap:1.5rem 2.2rem;align-items:start}
.sitrep{background:var(--panel);border:1px solid var(--rule);border-top:3px solid var(--accent);border-radius:4px;padding:.9rem 1rem;margin-top:1.6rem}
.sitrep .kicker{display:block;margin:.2rem 0 .5rem}
.sitrep .big{margin:.2rem 0 .7rem;line-height:1.45}
.sitrep .big .mono{color:var(--accent);font-size:1.25rem;font-weight:700;margin-right:.25rem}
.st-counts,.reg-status{list-style:none;padding:0;margin:0 0 .8rem}
.st-counts{display:flex;flex-wrap:wrap;gap:.35rem .8rem}
.st-counts li{margin:0;display:flex;align-items:center;gap:.35rem}
.st-counts .n{font-size:.85rem}
.reg-status li{display:flex;justify-content:space-between;gap:.5rem;margin:0;padding:.28rem 0;border-top:1px solid var(--rule);font-size:.86rem}
.reg-status a{color:var(--fg);text-decoration:none}
.reg-status a:hover{color:var(--link);text-decoration:underline}
.reg-status .mono{font-size:.7rem;letter-spacing:.08em;white-space:nowrap}
.reg-status .a{color:var(--md-fg)}.reg-status .q{color:var(--muted)}
.board-wrap{overflow-x:auto;margin:1rem 0 1.4rem;border:1px solid var(--rule);border-radius:6px;background:var(--panel)}
.board{border-collapse:collapse;width:100%;font-size:.86rem;min-width:44rem}
.board caption{text-align:left;padding:.6rem .8rem .2rem}
.board th{font-family:var(--mono);font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);text-align:left;font-weight:600;padding:.4rem .8rem;border-bottom:1px solid var(--rule)}
.board td{padding:.45rem .8rem;border-top:1px solid var(--rule);vertical-align:top}
.board td a{color:var(--fg);text-decoration:none}
.board td a:hover{color:var(--link);text-decoration:underline}
.board tr[hidden]{display:none}
.trk-list{max-width:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(28rem,1fr));gap:1rem}
.trk{margin:0}
.facts{grid-template-columns:repeat(auto-fit,minmax(7.5rem,1fr))}
@media (max-width:900px){.hero{grid-template-columns:1fr}.sitrep{margin-top:0}}
@media (max-width:560px){.trk-list{grid-template-columns:1fr}.dateline span+span::before{content:none}.dateline{gap:.1rem .9rem}}
@media print{.sitrep,.board-wrap{display:none}.trk-list{display:block}.hero{display:block}}
/* v2.1: mobile nav shows every item (4-column grid, no horizontal scroll); history expanded in print */
@media (max-width:760px){
 .main-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.25rem;overflow:visible;margin:.3rem 0 0;padding:0;width:100%}
 .main-nav a{text-align:center;padding:.45rem .2rem;font-size:.86rem;background:var(--panel);border:1px solid var(--rule);white-space:nowrap}
 .main-nav a[aria-current=page]{border-color:var(--accent);box-shadow:none}
}
.print-only{display:none}
@media print{.print-only{display:block!important}.trk details{display:none!important}.hist-print .kicker{margin:.4rem 0 .2rem}}
/* v2.2: X links */
.btn-x{font-weight:600}
.nav-x{font-weight:700}
@media (max-width:760px){.main-nav{grid-template-columns:repeat(5,minmax(0,1fr))}.main-nav a{font-size:.8rem;padding:.45rem .1rem}}

/* v3 logo: S1 lockup is wide (2.2:1) */
@media (max-width:480px){.brand img{width:70px;height:32px}}
@media print{.foot-brand{display:none}}
