:root{
  --bg-canvas:#0b1120;--bg-surface:#111827;--bg-elevated:#1e293b;--bg-glass:rgba(30,41,59,.78);
  --border-subtle:#1f2937;--border-default:#334155;--border-focus:#38bdf8;
  --text-primary:#f8fafc;--text-secondary:#cbd5e1;--text-muted:#94a3b8;
  --accent-fairway:#10b981;--accent-sky:#38bdf8;--accent-gold:#f59e0b;--accent-mpo:#60a5fa;--accent-fpo:#f472b6;
  --font-sans:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;
  --font-display:'Plus Jakarta Sans','Inter',sans-serif;
  --font-mono:'JetBrains Mono','SFMono-Regular',monospace;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg-canvas);color:var(--text-primary);font:15px/1.6 var(--font-sans);-webkit-font-smoothing:antialiased}
a{color:var(--accent-sky);text-decoration:none}a:hover{text-decoration:underline}
button{font:inherit;color:inherit;cursor:pointer}
.num,td.n,th.n{font-family:var(--font-mono);font-variant-numeric:tabular-nums}
.wrap{max-width:1180px;margin:0 auto;padding:0 20px}
.masthead{border-bottom:1px solid var(--border-subtle);background:linear-gradient(180deg,#0f1a33,var(--bg-canvas))}
.crumbs{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:14px 0;font-size:13px;color:var(--text-muted)}
.crumbs a{color:var(--text-secondary)}
.title-row{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap;padding:18px 0 30px}
h1{font:800 clamp(34px,6vw,58px)/1.02 var(--font-display);letter-spacing:-.03em;margin:0}
h1 em{font-style:normal;color:var(--accent-fairway)}
.tag{color:var(--text-secondary);max-width:560px;margin:10px 0 0}
.pulse{display:inline-flex;gap:10px;align-items:center;flex-wrap:wrap;background:var(--bg-glass);border:1px solid var(--border-default);border-radius:999px;padding:8px 16px;font-size:13px;color:var(--text-secondary)}
.pulse i{width:8px;height:8px;border-radius:50%;background:var(--accent-fairway);box-shadow:0 0 0 4px rgba(16,185,129,.2)}
.pulse b{color:var(--text-primary);font-family:var(--font-mono)}
.bar{position:sticky;top:0;z-index:20;background:rgba(11,17,32,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--border-subtle)}
.search{display:flex;align-items:center;gap:10px;margin:12px 0 8px;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:12px;padding:0 14px}
.search:focus-within{border-color:var(--border-focus);box-shadow:0 0 0 3px rgba(56,189,248,.18)}
.search input{flex:1;background:none;border:0;outline:0;color:var(--text-primary);font:inherit;padding:12px 0}
kbd{font:12px var(--font-mono);border:1px solid var(--border-default);border-radius:6px;padding:2px 7px;color:var(--text-muted)}
.tabs{display:flex;gap:2px;overflow-x:auto;scrollbar-width:none}
.tabs button{background:none;border:0;border-bottom:2px solid transparent;padding:9px 14px;color:var(--text-muted);font-weight:600;white-space:nowrap}
.tabs button:hover{color:var(--text-primary)}
.tabs button[aria-selected=true]{color:var(--text-primary);border-color:var(--accent-fairway)}
.chips{display:flex;gap:8px;flex-wrap:wrap;padding:8px 0 12px}
.chip{border:1px solid var(--border-default);background:var(--bg-surface);border-radius:999px;padding:4px 12px;font-size:13px;color:var(--text-secondary)}
.chip:hover{border-color:var(--accent-sky)}
.chip[aria-pressed=true]{background:rgba(56,189,248,.14);border-color:var(--accent-sky);color:var(--accent-sky)}
main{padding:28px 0 80px;min-height:60vh}
h2.sec{font:700 22px var(--font-display);margin:34px 0 14px;letter-spacing:-.01em;display:flex;justify-content:space-between;align-items:baseline}
h2.sec a{font:500 13px var(--font-sans)}
.hero{background:linear-gradient(135deg,#12213f,#0f2a2a);border:1px solid var(--border-default);border-radius:20px;padding:26px;position:relative;overflow:hidden}
.hero:before{content:"";position:absolute;inset:0 0 auto auto;width:340px;height:340px;background:radial-gradient(circle,rgba(16,185,129,.22),transparent 65%);transform:translate(30%,-40%)}
.kicker{font:600 12px var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--accent-fairway)}
.hero h2{font:800 clamp(24px,3.4vw,36px)/1.1 var(--font-display);letter-spacing:-.02em;margin:8px 0 4px;position:relative}
.hero .date{color:var(--text-muted);font-size:13px;position:relative}
.cols3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:20px;position:relative}
.col{background:var(--bg-glass);border:1px solid var(--border-default);border-radius:14px;padding:16px;font-size:14px}
.col h3{margin:0 0 8px;font:700 13px var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary)}
.col ul{padding-left:18px;margin:0}.col li{margin:0 0 6px;color:var(--text-secondary)}
.md ul{padding-left:20px}.md p{margin:.5em 0}.md li{margin:4px 0}
.btn{background:var(--accent-fairway);color:#04210f;font-weight:700;border:0;border-radius:10px;padding:9px 16px;margin-top:16px;position:relative}
.btn.ghost{background:none;border:1px solid var(--border-default);color:var(--text-primary)}
.full{margin-top:16px;border-top:1px solid var(--border-default);padding-top:6px;position:relative}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}
.card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:16px;padding:18px;text-align:left;display:block;width:100%;transition:border-color .15s,transform .15s}
button.card:hover,.card.click:hover{border-color:var(--accent-sky);transform:translateY(-2px)}
.card h3{font:700 18px/1.25 var(--font-display);margin:8px 0 6px;letter-spacing:-.01em}
.card p{margin:0;color:var(--text-secondary);font-size:14px}
.meta{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.badge{font:600 11px var(--font-mono);letter-spacing:.04em;text-transform:uppercase;border-radius:6px;padding:2px 8px;border:1px solid var(--border-default);color:var(--text-secondary)}
.badge.mpo{color:var(--accent-mpo);border-color:rgba(96,165,250,.5)}
.badge.fpo{color:var(--accent-fpo);border-color:rgba(244,114,182,.5)}
.badge.gold{color:var(--accent-gold);border-color:rgba(245,158,11,.55);background:rgba(245,158,11,.08)}
.badge.draft{color:var(--text-muted);border-style:dashed}
.facts{display:flex;gap:18px;flex-wrap:wrap;margin-top:12px;font-size:13px;color:var(--text-muted)}
.facts b{display:block;color:var(--text-primary);font:600 15px var(--font-mono)}
table{width:100%;border-collapse:collapse;font-size:14px}
th{font:600 11px var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);text-align:left;padding:8px 10px;border-bottom:1px solid var(--border-default)}
td{padding:9px 10px;border-bottom:1px solid var(--border-subtle)}
th.n,td.n{text-align:right}
.tbl{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:14px;overflow-x:auto}
.pl{background:none;border:0;padding:0;color:var(--accent-sky);font-weight:600;text-align:left}
.pl:hover{text-decoration:underline}
.seg{display:inline-flex;border:1px solid var(--border-default);border-radius:10px;overflow:hidden}
.seg button{font:600 14px var(--font-sans);background:var(--bg-surface);border:0;padding:7px 18px;font-weight:600;color:var(--text-muted)}
.seg button[aria-pressed=true]{background:var(--bg-elevated);color:var(--text-primary)}
details.lb{margin-top:14px;border-top:1px solid var(--border-subtle);padding-top:10px}
details.lb summary{cursor:pointer;color:var(--text-secondary);font-size:13px;font-weight:600}
.mfr{margin:26px 0 10px;font:700 15px var(--font-display);color:var(--text-secondary);display:flex;align-items:center;gap:10px}
.mfr:after{content:"";flex:1;height:1px;background:var(--border-subtle)}
.empty{color:var(--text-muted);padding:40px;text-align:center;border:1px dashed var(--border-default);border-radius:14px}
.note{font-size:13px;color:var(--text-muted);border-left:3px solid var(--accent-gold);padding:6px 12px;margin:14px 0;background:rgba(245,158,11,.06);border-radius:0 8px 8px 0}
.ent{color:var(--accent-sky);background:rgba(56,189,248,.1);border:1px solid rgba(56,189,248,.3);border-radius:6px;padding:0 6px;font:inherit;font-weight:600}
.ent{text-align:left;cursor:pointer}.ent:hover{background:rgba(56,189,248,.2)}
.scrim{position:fixed;inset:0;background:rgba(2,6,23,.6);opacity:0;pointer-events:none;transition:opacity .2s;z-index:40}
.scrim.on{opacity:1;pointer-events:auto}
.drawer{position:fixed;top:0;right:0;bottom:0;width:min(980px,100%);background:var(--bg-surface);border-left:1px solid var(--border-default);z-index:50;transform:translateX(100%);transition:transform .25s;overflow-y:auto;box-shadow:-20px 0 60px rgba(0,0,0,.5)}
.drawer.on{transform:none}
.dh{position:sticky;top:0;background:var(--bg-surface);border-bottom:1px solid var(--border-subtle);padding:14px 22px;display:flex;justify-content:space-between;align-items:center;z-index:2;gap:12px}
.x{background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:8px;width:34px;height:34px}
.db{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:28px;padding:22px}
.db h2{font:800 30px/1.1 var(--font-display);letter-spacing:-.02em;margin:10px 0}
.summary{font-size:17px;color:var(--text-secondary);border-left:3px solid var(--accent-fairway);padding-left:14px;margin:12px 0 18px}
.rail section{background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:14px;padding:14px;margin-bottom:14px}
.rail h4{margin:0 0 10px;font:700 11px var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted)}
.rail dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:6px 12px;font-size:13px}
.rail dt{color:var(--text-muted)}.rail dd{margin:0;word-break:break-word}
.pills{display:flex;flex-wrap:wrap;gap:6px}
.lab{font-size:11px;color:var(--text-muted);margin:8px 0 4px;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em}
.src{display:flex;gap:10px;padding:8px 0;border-top:1px solid var(--border-default);font-size:13px}
.src:first-of-type{border-top:0}
.src .i{font:600 12px var(--font-mono);color:var(--accent-gold)}
.src small{display:block;color:var(--text-muted)}
footer{border-top:1px solid var(--border-subtle);padding:26px 0;color:var(--text-muted);font-size:13px}
@media(max-width:860px){.cols3{grid-template-columns:1fr}.db{grid-template-columns:1fr}.crumbs{font-size:12px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
