:root{color-scheme:dark;--bg:#080d12;--card:#101a23;--line:#26394a;--ink:#eaf3f7;--mute:#9eb1bd;--lime:#d7ff55;--orange:#ff7d31}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 90% 0,#253444 0,transparent 34%),var(--bg);color:var(--ink);font:16px system-ui,-apple-system,sans-serif}.game-shell{max-width:1120px;margin:auto;padding:26px}.game-head{display:flex;gap:14px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:16px}.brand{font-size:22px;font-weight:800;color:var(--ink);text-decoration:none;letter-spacing:.05em}.tag,.eyebrow{color:var(--lime);font-size:12px;letter-spacing:.16em;font-weight:800}.grid{display:grid;grid-template-columns:1.1fr .9fr;gap:20px;margin-top:22px}.card{background:linear-gradient(145deg,#13212d,#0d151d);border:1px solid var(--line);border-radius:18px;padding:22px}h1,h2,p{margin-top:0}h1{font-size:34px}.form{display:grid;gap:13px}.cols{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}label{display:grid;gap:6px;color:var(--mute);font-size:13px}input,select,button{font:inherit;border-radius:10px;padding:11px;border:1px solid var(--line);background:#091017;color:var(--ink)}button{font-weight:800;cursor:pointer}.primary{background:var(--lime);color:#071008;border:0}.quiet{background:transparent}.roster{display:grid;gap:8px;max-height:420px;overflow:auto}.athlete{display:grid;grid-template-columns:minmax(150px,1fr) 105px 88px;gap:8px;align-items:center;padding:10px;background:#0a1219;border-radius:10px}.athlete input[type=checkbox]{width:20px;height:20px}.qr{width:min(100%,410px);background:#fff;border-radius:14px;padding:12px;display:block;margin:auto}.hidden{display:none}.message{color:var(--lime);min-height:1.2em}.leader{display:grid;gap:9px}.lane{display:grid;grid-template-columns:minmax(120px,1fr) 90px 70px;gap:10px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:12px}.bar{height:9px;background:#1f303d;border-radius:99px;overflow:hidden}.bar i{display:block;height:100%;background:linear-gradient(90deg,var(--lime),var(--orange))}.big{font-size:clamp(34px,6vw,80px);font-weight:900}.center{text-align:center}

/* Chosen Game TV direction: Code & Grind terminal / dense player grid. */
.game-tv-cg{--cg:#8cfc2e;--cg-soft:#c6f99a;--cg-bg:#060806;--cg-line:#8cfc2e55;background:radial-gradient(circle at 88% 0,#153313 0,transparent 32%),repeating-linear-gradient(90deg,transparent 0 31px,#8cfc2e0b 32px 33px),var(--cg-bg);color:#f2f7eb;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;min-height:100vh}.game-tv-shell{max-width:1500px;margin:auto;padding:22px}.game-tv-head{min-height:80px;display:flex;justify-content:space-between;align-items:center;border:1px solid var(--cg-line);background:#090d09;padding:14px 18px}.cg-logo{height:42px;max-width:250px;object-fit:contain;object-position:left center}.game-tv-status{display:grid;grid-template-columns:auto auto auto auto;align-items:center;gap:16px;color:var(--cg)}.game-tv-status span,.game-tv-status small{font-size:12px;letter-spacing:.13em}.game-tv-status b{border:1px solid var(--cg);padding:6px 10px}.game-tv-status strong{font:900 clamp(32px,5vw,72px)/.8 Impact,Arial,sans-serif;letter-spacing:.04em}.game-tv-main{display:grid;grid-template-columns:minmax(0,1fr) 286px;gap:16px;margin-top:16px}.game-tv-race,.game-tv-rail{border:1px solid var(--cg-line);background:linear-gradient(135deg,#0b100b,#070a07);padding:18px}.game-tv-race h1{font:900 clamp(28px,4vw,54px)/.98 Impact,Arial,sans-serif;letter-spacing:.03em;text-transform:uppercase;margin:5px 0 18px}.game-tv-cg .eyebrow{color:var(--cg)}.game-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.game-athlete-card{min-height:190px;border:1px solid var(--cg-line);background:repeating-linear-gradient(90deg,transparent 0 22px,#8cfc2e0b 23px 24px),#0b100b;padding:12px;display:grid;grid-template-rows:auto 1fr auto auto;gap:9px}.game-card-top{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center;border-bottom:1px solid var(--cg-line);padding-bottom:8px}.game-card-top .place{color:var(--cg);font-size:12px}.game-card-top b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.game-card-top em{color:var(--cg-soft);font-size:10px;font-style:normal;text-transform:uppercase}.game-progress{display:flex;align-items:end;justify-content:space-between;gap:6px}.game-progress strong{color:var(--cg);font:900 clamp(38px,5vw,70px)/.8 Impact,Arial,sans-serif}.game-progress strong small{font:400 16px/1 ui-monospace,monospace;color:var(--cg-soft)}.game-progress span{font-size:11px;color:var(--cg-soft);text-align:right}.game-bar{height:9px;background:#192319;border:1px solid #8cfc2e33}.game-bar i{display:block;height:100%;background:var(--cg)}.game-metrics{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--cg-line);padding-top:7px;gap:10px}.game-metrics span{display:flex;align-items:baseline;gap:5px}.game-metrics b{color:#f2f7eb;font-size:19px}.game-metrics small{color:var(--cg);font-size:10px}.game-tv-rail{display:grid;align-content:start;gap:12px}.game-tv-rail p{color:#a4b89b;font-size:13px}.game-tv-cg .qr{border-radius:0;border:1px solid var(--cg);padding:8px}.team-box{border-top:1px solid var(--cg-line);padding-top:14px;display:grid;gap:4px}.team-box small,.team-box span{color:var(--cg-soft);font-size:11px}.team-box strong{color:var(--cg);font:900 72px/.8 Impact,Arial,sans-serif}.game-tv-cg .message{color:#ffba69}
@media(max-width:1000px){.game-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.grid{grid-template-columns:1fr}.cols{grid-template-columns:1fr}.athlete{grid-template-columns:1fr 82px 76px}.game-head{align-items:flex-start;flex-direction:column}.game-shell{padding:16px}}@media(max-width:700px){.game-tv-shell{padding:10px}.game-tv-head{align-items:flex-start;gap:14px;flex-direction:column}.game-tv-status{grid-template-columns:1fr 1fr}.game-tv-main{grid-template-columns:1fr}.game-tv-rail{order:-1}.game-card-grid{grid-template-columns:1fr}.game-tv-status strong{font-size:44px}}.tablet-tabs{display:flex;gap:8px;margin:20px 0 14px}.tab.active{background:var(--lime);color:#071008}.tablet-pane{display:grid;gap:14px}.tablet-clock{font-size:clamp(30px,7vw,72px);font-weight:900;letter-spacing:.04em}.tablet-controls,.score-actions{display:flex;gap:9px;flex-wrap:wrap}.score-actions button{padding:9px}.lane{grid-template-columns:minmax(150px,1fr) minmax(80px,.7fr) auto}.lane button:disabled{opacity:.4;cursor:not-allowed}
