:root{
  --bg:#0f1117; --bg2:#171a24; --bg3:#22263a; --line:#30354f;
  --text:#e8eaf0; --muted:#8b90a8; --accent:#4f8ef7;
  --green:#4caf50; --orange:#ff9800; --red:#e53935; --gold:#f5c842;
}
*{box-sizing:border-box} body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Segoe UI,Roboto,Arial,sans-serif} .topbar{height:68px;background:var(--bg2);display:flex;align-items:center;justify-content:space-between;padding:0 18px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px}.brand h1{font-size:18px;margin:0}.brand p{font-size:12px;margin:3px 0 0;color:var(--muted)}.dot{width:14px;height:14px;border-radius:50%;display:inline-block}.dot.waiting{background:var(--orange)}.dot.live{background:var(--red);box-shadow:0 0 18px var(--red)}.dot.finished{background:var(--green)}.statusZone{display:flex;align-items:center;gap:14px;color:var(--muted)}.badge{padding:6px 10px;border-radius:999px;color:white;font-size:12px;font-weight:700}.badge.waiting{background:var(--orange)}.badge.live{background:var(--red)}.badge.finished{background:var(--green)}.layout{display:grid;grid-template-columns:245px 1fr;min-height:calc(100vh - 68px)}.sidebar{background:var(--bg2);border-right:1px solid var(--line);padding:14px 10px}.sidebar h2{font-size:12px;text-transform:uppercase;color:var(--muted);letter-spacing:.08em;margin:4px 8px 10px}.group{font-size:11px;color:var(--muted);margin:14px 8px 5px}.raceBtn{width:100%;border:0;border-radius:10px;background:transparent;color:var(--muted);text-align:left;padding:9px 10px;cursor:pointer}.raceBtn.active{background:var(--bg3);color:var(--text);font-weight:700}.raceBtn.hasData{color:#82e08a}.panel{border-top:1px solid var(--line);margin-top:14px;padding:14px 8px}.panel label{display:block;font-size:12px;color:var(--muted);margin-bottom:7px}select,input,button{font:inherit}select{width:100%;background:var(--bg3);border:1px solid var(--line);color:var(--text);border-radius:10px;padding:8px}button#refreshNow{width:100%;margin-top:10px;background:var(--accent);color:white;border:0;border-radius:10px;padding:10px;font-weight:700;cursor:pointer}.check{display:flex!important;gap:8px;align-items:center;margin-top:10px;color:var(--text)!important}.smallStats div{display:flex;justify-content:space-between;gap:10px;font-size:12px;margin:8px 0}.smallStats span{color:var(--muted)}.content{padding:18px;overflow:auto}.raceHeader{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:12px}.raceHeader h2{margin:0;font-size:22px}.raceHeader p{margin:5px 0 0;color:var(--muted);font-size:13px}#searchInput{min-width:280px;background:var(--bg2);border:1px solid var(--line);border-radius:12px;color:var(--text);padding:10px 12px}.message{background:var(--bg2);border:1px solid var(--line);border-radius:14px;padding:12px;margin:10px 0;color:var(--muted)}.message.error{border-color:var(--red);color:#ffb0b0}.focusCard{background:linear-gradient(135deg,#1b2440,#12151f);border:1px solid var(--accent);border-radius:16px;padding:14px;margin:10px 0}.focusCard span{font-size:11px;color:var(--muted);text-transform:uppercase}.focusCard strong{display:block;font-size:18px;margin:3px 0}.tableWrap{background:var(--bg2);border:1px solid var(--line);border-radius:16px;overflow:auto}table{width:100%;border-collapse:collapse;min-width:980px}th{position:sticky;top:0;background:var(--bg3);color:var(--muted);font-size:12px;text-align:left;padding:11px;border-bottom:1px solid var(--line)}td{padding:10px 11px;border-bottom:1px solid #24283c;font-size:14px}tr:hover{background:#1d2234}.pos1{color:var(--gold);font-weight:800}.pos2{color:#d7d7d7;font-weight:800}.pos3{color:#cd7f32;font-weight:800}.center{text-align:center}.muted{color:var(--muted)}.name{font-weight:700}.highlight{outline:2px solid var(--accent);background:#17213a!important}@media(max-width:800px){.layout{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--line)}.raceHeader{flex-direction:column}#searchInput{min-width:0;width:100%}.topbar{height:auto;padding:12px;align-items:flex-start}.brand h1{font-size:15px}.statusZone{flex-direction:column;gap:6px;align-items:flex-end}}
