:root { color-scheme: dark; font-family: Inter, ui-sans-serif, system-ui, sans-serif; background: #13110e; color: #f7f0e7; }
* { box-sizing: border-box; }
body { margin: 0; min-height: 100vh; background: radial-gradient(circle at 85% 0%, #51320b, transparent 35rem), #13110e; }
main { width: min(880px, calc(100% - 2rem)); margin: 0 auto; padding: 4.8rem 0; }
header { margin-bottom: 2rem; }
.eyebrow { color: #ffba42; font-size: .75rem; font-weight: 750; letter-spacing: .13em; }
h1 { font-size: clamp(2.5rem, 7vw, 5.5rem); line-height: .94; letter-spacing: -.065em; margin: .4rem 0 1rem; }
h2 { margin-top: 0; }
h3 { margin: 0; font-size: 1.1rem; }
.intro, .card > p { color: #c9c0b3; line-height: 1.55; }
.card { background: #211d18cc; border: 1px solid #4b4033; border-radius: 18px; padding: 1.4rem; margin: 1rem 0; box-shadow: 0 1rem 3rem #0003; }
textarea { width: 100%; min-height: 10rem; resize: vertical; border: 1px solid #5b4c3a; border-radius: 10px; padding: .9rem; background: #12100d; color: inherit; font: .95rem ui-monospace, SFMono-Regular, Menlo, monospace; line-height: 1.6; }
.actions { display: flex; gap: .7rem; margin-top: 1rem; }
button { background: #ffb52e; color: #251605; font-weight: 800; border: 0; border-radius: 9px; padding: .7rem 1rem; cursor: pointer; }
button.secondary { background: transparent; color: #f7f0e7; border: 1px solid #6a5945; }
.metrics { display: grid; grid-template-columns: repeat(3, 1fr); gap: .8rem; }
.metrics div { padding: 1rem; background: #15120f; border-radius: 10px; }
.metrics span { color: #c9c0b3; display: block; font-size: .8rem; }
.metrics strong { display: block; font-size: 1.8rem; margin-top: .2rem; }
.arena-header { display: flex; justify-content: space-between; align-items: end; gap: 1rem; margin: 3rem 0 1rem; }
.arena-header h2 { margin: .2rem 0 0; font-size: 2rem; }
#arena-status { color: #c9c0b3; margin: 0; }
.charts { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1rem; }
.chart-card { min-height: 245px; background: #211d18cc; border: 1px solid #4b4033; border-radius: 18px; padding: 1.15rem; box-shadow: 0 1rem 3rem #0003; }
.chart-card.wide { grid-column: 1 / -1; }
.chart-title { display: flex; justify-content: space-between; gap: .5rem; align-items: baseline; }
.chart-title span { color: #a99d8d; font-size: .75rem; }
.chart-wrap { height: 180px; margin-top: 1rem; }
.empty-chart { height: 100%; display: grid; place-items: center; color: #a99d8d; border-radius: 10px; background-image: linear-gradient(#4b403344 1px, transparent 1px), linear-gradient(90deg, #4b403344 1px, transparent 1px); background-size: 100% 36px, 20% 100%; }
.chart-svg { width: 100%; height: 100%; overflow: visible; }
.chart-axis { stroke: #695b4b; stroke-width: 1; }
.chart-line { fill: none; stroke: #ffba42; stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; }
.chart-dot { fill: #ffba42; stroke: #211d18; stroke-width: 2; }
.chart-label { fill: #c9c0b3; font-size: 10px; }
.leaderboard { margin-top: 1rem; }
.leaderboard-heading { display: flex; justify-content: space-between; align-items: end; gap: 1rem; }
.leaderboard-heading h2 { margin: .2rem 0 0; }
.leaderboard-heading > p, .leaderboard-note { color: #a99d8d; font-size: .82rem; }
.dataset-scope { display: flex; flex-wrap: wrap; gap: .55rem; margin: 1.1rem 0 .2rem; }
.dataset-pill { border: 1px solid #5b4c3a; border-radius: 10px; padding: .55rem .7rem; background: #15120f; color: #c9c0b3; font-size: .77rem; }
.dataset-pill strong { display: block; color: #f7f0e7; font-size: .83rem; margin-bottom: .15rem; }
.table-scroll { overflow-x: auto; margin-top: 1rem; }
table { width: 100%; border-collapse: collapse; min-width: 620px; text-align: left; }
th { color: #a99d8d; font-size: .73rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
th, td { padding: .8rem .65rem; border-bottom: 1px solid #4b4033; }
tbody tr:last-child td { border-bottom: 0; }
td:nth-child(n+4), th:nth-child(n+4) { text-align: right; font-variant-numeric: tabular-nums; }
.empty-row { color: #a99d8d; text-align: center !important; padding: 2rem; }
.status { display: inline-block; border: 1px solid #6a5945; border-radius: 999px; padding: .18rem .46rem; color: #c9c0b3; font-size: .72rem; }
.status.scored { border-color: #ffba42; color: #ffca6c; }
.compact { font-size: .93rem; }
a, code { color: #ffca6c; }
@media (max-width: 520px) { main { padding: 2.5rem 0; } .metrics, .charts { grid-template-columns: 1fr; } .arena-header, .leaderboard-heading { align-items: start; flex-direction: column; } .dataset-scope { display: grid; grid-template-columns: 1fr; } }
