:root{
  --bg:#F7F8FA; --surface:#FFFFFF; --line:#D8DEE6;
  --ink:#1A1D21; --muted:#5B6572; --slate:#3D4B5C; --gold:#C08A28;
  --gA:#2E7D46; --gB:#B8860B; --gC:#A33A3A;
  --measure:70ch;
}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font-family:'Inter',Arial,sans-serif;font-size:15px;line-height:1.6}
h1,h2,h3{font-family:'IBM Plex Serif',Georgia,serif}
.mono,.rno,.evid,.datestamp{font-family:'IBM Plex Mono',monospace}
a{color:var(--slate)}
img{max-width:100%;display:block}

.bar{background:var(--ink);color:#fff;font-size:12px;font-family:'IBM Plex Mono',monospace;text-align:center;padding:6px 10px;letter-spacing:.03em}
.topbar{background:var(--surface);border-bottom:2px solid var(--ink)}
.topbar .row{max-width:1080px;margin:0 auto;padding:20px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.topbar .brand{font-family:'IBM Plex Serif',serif;font-size:22px;font-weight:600;color:var(--ink);text-decoration:none}
.topbar .brand .sub{display:block;font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--slate);margin-top:2px}
.topbar nav{display:flex;gap:0;border:1px solid var(--ink)}
.topbar nav a{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.05em;text-transform:uppercase;text-decoration:none;color:var(--ink);padding:9px 14px;border-left:1px solid var(--ink)}
.topbar nav a:first-child{border-left:0}
.topbar nav a:hover{background:var(--ink);color:#fff}

.intro{max-width:1080px;margin:0 auto;padding:34px 24px 10px}
.intro .kicker{font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--slate)}
.intro h1{font-size:30px;margin:10px 0}
.intro p{max-width:var(--measure);color:var(--muted)}

.index{max-width:1080px;margin:0 auto;padding:10px 24px 60px}
.index-hd{display:grid;grid-template-columns:70px 1fr 140px 90px;gap:16px;padding:10px 16px;font-family:'IBM Plex Mono',monospace;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);border-bottom:2px solid var(--ink)}
.entry{display:grid;grid-template-columns:70px 1fr 140px 90px;gap:16px;align-items:center;padding:16px;text-decoration:none;color:var(--ink);border-bottom:1px solid var(--line)}
.entry:hover{background:var(--surface)}
.entry .rno{color:var(--slate);font-size:13px}
.entry .et{font-weight:600;font-size:15px}
.entry .ed{font-size:13px;color:var(--muted);margin-top:3px;font-family:'Inter',sans-serif}
.entry .grade{font-family:'IBM Plex Mono',monospace;font-size:12px;padding:3px 8px;border-radius:3px;text-align:center;color:#fff}
.entry .grade.a{background:var(--gA)}.entry .grade.b{background:var(--gB)}.entry .grade.c{background:var(--gC)}
.entry .datestamp{font-size:12px;color:var(--muted)}
@media (max-width:640px){.index-hd{display:none}.entry{grid-template-columns:1fr;gap:6px}}

.crumbs{max-width:1080px;margin:16px auto 0;padding:0 24px;font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--muted)}

.brief{max-width:820px;margin:0 auto;padding:30px 24px 60px}
.brief .rid{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--slate);letter-spacing:.05em}
.brief h1{font-size:32px;margin:8px 0 16px;line-height:1.2}
.brief .metarow{display:flex;gap:18px;flex-wrap:wrap;font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--muted);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 0;margin-bottom:24px;text-transform:uppercase;letter-spacing:.04em}
.brief .metarow b{color:var(--ink)}
.brief h2{font-size:21px;margin-top:32px;border-left:4px solid var(--slate);padding-left:12px}
.brief h3{font-size:16px;margin-top:20px;font-family:'Inter',sans-serif;font-weight:700}
.brief p{margin:13px 0;max-width:var(--measure)}
.brief .findingbox{border:1px solid var(--ink);padding:16px 18px;margin:20px 0}
.brief .findingbox .flabel{font-family:'IBM Plex Mono',monospace;font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--slate);margin-bottom:6px}
.brief .safety{background:#fff;border:1px solid var(--gC);border-left:5px solid var(--gC);padding:16px 18px;margin:22px 0}
.brief .safety .flabel{color:var(--gC)}
.brief .pick{border:1px solid var(--line);background:var(--surface);padding:18px 20px;margin:26px 0}
.brief .pick .plabel{font-family:'IBM Plex Mono',monospace;font-size:10px;text-transform:uppercase;color:var(--gold);letter-spacing:.08em}
.brief .pick a.buy{display:inline-block;margin-top:10px;background:var(--ink);color:#fff;text-decoration:none;padding:9px 16px;font-size:13px;font-family:'IBM Plex Mono',monospace}
.brief .fineprint{font-size:11px;color:var(--muted);margin-top:8px;font-family:'IBM Plex Mono',monospace}
.brief .refs{font-size:12px;color:var(--muted);border-top:2px solid var(--ink);padding-top:16px;margin-top:36px}
.brief .refs ol{padding-left:18px}
.brief .refs li{margin:6px 0}

.dossier{max-width:1080px;margin:0 auto;padding:28px 24px 60px;display:grid;grid-template-columns:340px 1fr;gap:36px}
.dossier .shot{aspect-ratio:1/1;background:var(--surface);border:1px solid var(--ink);display:flex;align-items:center;justify-content:center;padding:18px}
.dossier .rid{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--slate)}
.dossier h1{font-size:26px;margin:8px 0}
.dossier .gradebox{display:inline-flex;align-items:center;gap:8px;font-family:'IBM Plex Mono',monospace;font-size:13px;border:1px solid var(--ink);padding:6px 12px;margin:10px 0}
.dossier .flags{display:flex;flex-direction:column;gap:8px;margin:16px 0}
.dossier .flag{font-size:13px;padding:8px 12px;border-left:3px solid var(--ink)}
.dossier .flag.warn{border-color:var(--gC);background:#FBF2F2}
.dossier .flag.ok{border-color:var(--gA);background:#F1F7F2}
.dossier .disc{font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--muted);margin-top:20px;padding-top:14px;border-top:1px solid var(--line)}
@media (max-width:700px){.dossier{grid-template-columns:1fr}}

footer.clinical{background:var(--ink);color:#cfd6dd;margin-top:20px}
footer.clinical .row{max-width:1080px;margin:0 auto;padding:30px 24px;display:grid;grid-template-columns:1fr 1fr;gap:24px}
footer.clinical .fbrand{font-family:'IBM Plex Serif',serif;color:#fff;font-size:18px}
footer.clinical .fcol h5{font-family:'IBM Plex Mono',monospace;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#8a95a3;margin:0 0 10px}
footer.clinical .fcol a{display:block;font-size:13px;color:#cfd6dd;text-decoration:none;margin:6px 0}
footer.clinical .legal{max-width:1080px;margin:0 auto;padding:0 24px 24px;font-family:'IBM Plex Mono',monospace;font-size:11px;color:#8a95a3}

#cookieBanner{position:fixed;left:0;right:0;bottom:0;background:#fff;border-top:2px solid var(--ink);padding:14px 20px;display:none;z-index:50}
#cookieBanner.show{display:block}
#cookieBanner .in{max-width:1080px;margin:0 auto;display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap;font-size:13px}
#cookieBanner button{border:1px solid var(--ink);padding:8px 16px;font-size:12px;font-family:'IBM Plex Mono',monospace;cursor:pointer;background:#fff}
#cookieBanner #cbAccept{background:var(--ink);color:#fff}
