:root { color-scheme: dark; --ink:#f5f1e8; --muted:#bcb7ac; --line:#3d3b38; --panel:#1c1b1a; --accent:#e74622; }
* { box-sizing:border-box; }
body { margin:0; background:#111; color:var(--ink); font:16px/1.55 Arial,sans-serif; }
main { width:min(1100px,calc(100% - 32px)); margin:0 auto; padding:44px 0 84px; }
.back { display:block; padding:16px max(16px,calc((100% - 1100px)/2)); color:var(--ink); text-decoration:none; border-bottom:1px solid var(--line); }
.eyebrow { color:var(--accent); font-size:.76rem; font-weight:700; letter-spacing:.12em; }
h1 { margin:.1em 0; font-size:clamp(2.6rem,9vw,6.7rem); line-height:.9; letter-spacing:-.06em; }
.intro { max-width:760px; color:var(--muted); }
.dashboard { display:grid; grid-template-columns:repeat(auto-fit,minmax(130px,1fr)); gap:1px; margin:32px 0; background:var(--line); }
.dashboard div { min-height:92px; padding:15px; background:var(--panel); }.dashboard b { display:block; font-size:1.8rem; }.dashboard span,.sources span { display:block; color:var(--muted); font-size:.73rem; text-transform:uppercase; }
.controls { display:grid; grid-template-columns:2fr 1fr 1fr auto auto auto; gap:8px; margin:24px 0 8px; } input,select,button { min-width:0; width:100%; min-height:42px; padding:8px 10px; border:1px solid var(--line); border-radius:0; color:var(--ink); background:#171717; } button { cursor:pointer; } button:hover { border-color:var(--accent); }.result-count { color:var(--muted); }
.claim { border-top:1px solid var(--line); }.claim:last-child { border-bottom:1px solid var(--line); } summary { display:flex; align-items:center; justify-content:space-between; gap:12px; cursor:pointer; padding:17px 0; list-style:none; } summary::-webkit-details-marker { display:none; } summary span { font-weight:700; } summary strong { color:var(--accent); font-size:.72rem; text-align:right; }.claim-body { max-width:850px; padding:0 0 24px; }.claim-body h3 { margin:22px 0 4px; font-size:.82rem; text-transform:uppercase; letter-spacing:.09em; }.claim-body p { margin:4px 0; }.tags { display:flex; flex-wrap:wrap; gap:6px; }.tag { border:1px solid var(--line); color:var(--muted); padding:2px 6px; font-size:.72rem; }.sources { padding-left:20px; }.sources li { margin:8px 0; }.sources a,.rocket-case a { color:var(--ink); }.related { color:var(--muted); }.rocket-case { margin-top:60px; padding:26px; border:1px solid var(--accent); background:var(--panel); }.rocket-case h2 { margin-top:0; }.rocket-case pre { white-space:pre-wrap; overflow-wrap:anywhere; color:var(--muted); font-size:.78rem; }.error { color:#ff8067; }
@media (max-width:640px) { main { width:min(100% - 24px,1100px); padding-top:28px; }.controls { grid-template-columns:1fr 1fr; }.controls input { grid-column:1/-1; }.controls button { font-size:.8rem; }.dashboard { grid-template-columns:repeat(2,1fr); }.dashboard div { min-height:76px; } summary strong { max-width:47%; }.claim-body { font-size:.94rem; } }

/* Labels remain available to assistive technology without changing the control grid. */
.reader-label { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
a:focus-visible, input:focus-visible, select:focus-visible, button:focus-visible, summary:focus-visible { outline:2px solid var(--ink); outline-offset:4px; }
.claim { scroll-margin-top:1rem; }

#reset-filters:disabled { opacity:.55; cursor:default; }
@media(max-width:640px) { #reset-filters { grid-column:1/-1; } }
