:root { --ink:#1b1a17; --muted:#5d584e; --paper:#fbfaf6; --rule:#d9d2c3; --gold:#B8860B; --gold-ink:#8a6508; }
* { box-sizing:border-box; margin:0; padding:0; }
html { -webkit-text-size-adjust:100%; }
body { background:var(--paper); color:var(--ink); font-family:"EB Garamond", Garamond, Georgia, serif;
       font-size:clamp(18px, 1.1vw + 14px, 21px); line-height:1.55; }
a { color:var(--ink); text-decoration-color:var(--gold); text-underline-offset:.18em; text-decoration-thickness:1.5px; }
a:hover { color:var(--gold-ink); }
a:focus-visible { outline:2px solid var(--gold); outline-offset:3px; }
.top { border-bottom:1px solid var(--rule); }
.bar { max-width:46rem; margin:0 auto; padding:.9rem 1rem; display:flex; justify-content:space-between; align-items:baseline; gap:1rem; flex-wrap:wrap; }
.brand { text-decoration:none; text-transform:uppercase; letter-spacing:.2em; font-size:.75rem; font-weight:600; color:var(--gold-ink); }
nav { display:flex; gap:1.2rem; font-size:.95rem; }
nav a { text-decoration:none; }
nav a[aria-current="page"] { text-decoration:underline; text-decoration-color:var(--gold); }
.wrap { max-width:46rem; margin:0 auto; padding:clamp(2rem, 5vw, 3.5rem) 1rem 3rem; }
.mark { text-transform:uppercase; letter-spacing:.22em; font-size:.78rem; color:var(--gold-ink); font-weight:600; }
h1 { font-weight:500; font-size:clamp(2rem, 4vw + 1rem, 3rem); line-height:1.1; margin:.5rem 0 1rem; text-wrap:balance; }
h2 { font-weight:600; font-size:1rem; text-transform:uppercase; letter-spacing:.12em; margin:2.2rem 0 .6rem; }
h3 { font-weight:500; font-size:1.2rem; line-height:1.25; text-wrap:balance; }
h3 a { text-decoration-thickness:1px; }
.lede { font-size:1.1em; color:var(--muted); max-width:36rem; }
.lede a { color:var(--muted); }
.list { list-style:none; border-top:1px solid var(--rule); }
.list li { border-bottom:1px solid var(--rule); padding:1rem 0; display:grid; grid-template-columns:8.5rem 1fr; gap:1rem; }
.list .when { color:var(--muted); font-size:.85rem; padding-top:.2rem; font-variant-numeric:tabular-nums; }
.list .body { min-width:0; }
.sub { color:var(--muted); font-style:italic; margin-top:.15rem; }
.meta { font-size:.85rem; color:var(--muted); margin-top:.3rem; }
.corr p { margin-top:.3rem; }
.fine { margin-top:1.5rem; font-size:.9rem; color:var(--muted); }
.divider { text-align:center; color:var(--gold); letter-spacing:.6em; margin:2.4rem 0 0; font-size:.9rem; }
footer { margin-top:3.5rem; padding-top:1.2rem; border-top:1px solid var(--rule); color:var(--muted); font-size:.85rem; }
@media (max-width:560px) { .list li { grid-template-columns:1fr; gap:.2rem; } }

.badge { display:inline-block; font-size:.72rem; text-transform:uppercase; letter-spacing:.12em; font-weight:600; padding:.1rem .45rem; border:1px solid var(--rule); }
.badge.hit { color:#2f5d34; border-color:#2f5d34; } .badge.miss { color:#8c2a2a; border-color:#8c2a2a; } .badge.open { color:var(--muted); }
.pred .when { display:flex; flex-direction:column; align-items:flex-start; gap:.3rem; } .num { font-size:.8rem; }
.claim { font-size:1.02em; }
@media (max-width:560px) { .pred .when { flex-direction:row; align-items:center; gap:.6rem; } }
