.sheet-layout { display: grid; grid-template-columns: 180px 1fr; gap: 20px; max-width: 1100px; margin: 0 auto; padding: 20px; }
.sheet-rail { display: flex; flex-direction: column; gap: 8px; position: sticky; top: 72px; align-self: start; }
.sheet-rail a { color: var(--text-muted); text-decoration: none; font-size: 13px; }
.sheet-rail a:hover { color: var(--accent); }
.sheet-kicker { font-family: var(--font-mono); color: var(--accent); font-size: 12px; letter-spacing: 0.06em; text-transform: uppercase; }
.sheet-main h1 { color: var(--text-bright); font-size: 28px; margin: 6px 0; }
.meta-row { display: flex; flex-wrap: wrap; gap: 8px; margin: 10px 0 18px; }
.meta-row span, .gap-note { border: 1px solid var(--border); border-radius: 999px; padding: 4px 10px; color: var(--text-muted); font-size: 12px; }
.bench-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.bench-card, .sheet-block { background: var(--bg-card); border: 1px solid var(--border); border-radius: 10px; padding: 14px; margin-bottom: 14px; }
.sheet-desc { color: var(--text); max-width: 820px; line-height: 1.5; }
.fact-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 8px; margin: 14px 0; }
.fact { background: var(--bg-card); border: 1px solid var(--border); border-radius: 8px; padding: 8px 10px; }
.fact span { display: block; color: var(--text-muted); font-size: 11px; text-transform: uppercase; letter-spacing: 0.04em; }
.fact strong { color: var(--text-bright); }
.meter { margin: 8px 0; }
.meter-label { display: flex; justify-content: space-between; font-size: 13px; }
.meter-track { height: 8px; background: #111827; border-radius: 99px; overflow: hidden; }
.meter-fill { height: 100%; background: linear-gradient(90deg, #f59e0b, #fb7185); }
.score-table { width: 100%; border-collapse: collapse; font-size: 13px; }
.score-table th, .score-table td { text-align: left; padding: 6px 8px; border-bottom: 1px solid var(--border); }
.bench-card h2, .sheet-block h2, section h2 { color: var(--text-bright); font-size: 16px; margin: 18px 0 8px; }
.bench-card ol { margin: 0; padding-left: 18px; }
.bench-card li { margin: 6px 0; }
.bench-card a { color: var(--accent); text-decoration: none; }
.miss { color: var(--text-muted); }
@media (max-width: 800px) {
  .sheet-layout { grid-template-columns: 1fr; }
  .bench-grid { grid-template-columns: 1fr; }
  .sheet-rail { position: static; flex-direction: row; flex-wrap: wrap; }
}
