/* AI record (/ai-scoreboard/) */
/* Only the eyebrow and the headline centre. The section used to carry
   `ta-center`, which centred the lead paragraph too — four ragged lines
   at 375px — and .sb-stats and .sb-note each had to undo it. */
.sb-hero .eyebrow, .sb-hero h1 { text-align:center; }
.sb-stats { display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:10px; margin:22px 0 4px; }
.sb-stats .card { margin:0; }
@media (max-width:560px) { .sb-stats { grid-template-columns:1fr; } }
.sb-note { background:var(--warn-soft); border:1px solid var(--warn); border-radius:var(--r-sm);
  padding:14px 16px; color:var(--ink-2); font-size:.92rem; line-height:1.6; margin:16px auto 0; max-width:640px; }

/* Trend: inline SVG, no library. */
.sb-trend { width:100%; }
.trend { display:block; width:100%; height:200px; }
.trend .bar-hit { fill:var(--primary); }
.trend .bar-exp { fill:var(--faint); }
.trend .bar-lbl { font-size:9px; fill:var(--muted); font-family:var(--font-mono); }
.sb-legend { display:flex; gap:18px; justify-content:center; font-size:.84rem; color:var(--muted); margin-top:10px; }
.sb-legend .k { display:inline-flex; align-items:center; gap:6px; }
.sb-dot { width:11px; height:11px; border-radius:3px; }
.sb-dot.hit { background:var(--primary); }
.sb-dot.exp { background:var(--faint); }
.sb-table td, .sb-table th { padding:8px 12px; }

/* Graded-draw log: a fixed grid — mobile is always the same 2x2. */
.sb-row { position:relative; display:grid; grid-template-columns:minmax(0,1fr) auto;
  gap:6px 12px; align-items:center; padding:13px 4px; border-bottom:1px solid var(--line);
  border-radius:var(--r-xs); transition:background .12s; }
.sb-row:last-child { border-bottom:0; }
.sb-row .nm { font-weight:600; min-width:0; }
.sb-row .nm .code { color:var(--muted); font-size:.78rem; font-weight:400; }
.sb-row .dt { color:var(--muted); font-size:.82rem; white-space:nowrap; justify-self:end; font-variant-numeric:tabular-nums; }
.sb-row .st { display:flex; align-items:center; gap:10px; flex-wrap:wrap; min-width:0; }
.sb-row .ch { color:var(--muted); font-size:.84rem; white-space:nowrap; font-variant-numeric:tabular-nums; }
.sb-row .go { justify-self:end; white-space:nowrap; }
.sb-row .go::after { content:""; position:absolute; inset:0; border-radius:var(--r-xs); }
@media (hover:hover) { .sb-row:has(.go):hover { background:var(--surface-2); } }
.sb-row:has(.go):active { background:var(--surface-2); }
@media (min-width:680px) {
  .sb-row { grid-template-columns:minmax(180px,240px) 110px minmax(0,1fr) auto; gap:12px; }
  .sb-row .dt { justify-self:start; }
}
.sb-lrow { display:flex; align-items:center; gap:10px; padding:12px 4px; border-bottom:1px solid var(--line); }
.sb-lrow:last-child { border-bottom:0; }
.sb-lrow .nm { font-weight:600; flex:1; min-width:0; }
.sb-lrow .muted { white-space:nowrap; }
.sb-near { background:var(--good-soft); border:1px solid var(--primary); border-radius:var(--r-sm);
  padding:12px 14px; margin-bottom:8px; line-height:1.7; font-size:.94rem; overflow-wrap:anywhere; }
