:root{color-scheme:dark;--ink: #f5fff7;--muted: #9db6aa;--deep: #06100d;--panel: #0d1c17;--panel-2: #12251e;--line: rgba(169, 255, 196, .18);--line-strong: rgba(169, 255, 196, .34);--green: #6ef08f;--green-2: #18b96d;--blue: #63a7ff;--violet: #b58cff;--coral: #ff6d5f;--amber: #ffd166;--black: #020604;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{background:radial-gradient(circle at 18% 8%,rgba(110,240,143,.2),transparent 24%),radial-gradient(circle at 82% 12%,rgba(99,167,255,.16),transparent 24%),linear-gradient(135deg,#07120f,#040806 52%,#091713);color:var(--ink)}body:has(.game-shell){overflow:hidden}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.68}a{color:inherit;text-decoration:none}.boot{align-items:center;display:grid;min-height:100vh;place-items:center}.app-shell{min-height:100vh}.game-shell{height:100vh;overflow:hidden}.topbar{align-items:center;background:#050c09eb;border-bottom:1px solid var(--line);display:flex;gap:18px;height:64px;justify-content:space-between;padding:0 24px}.brand,.topbar-actions,nav,.hero-actions,.tool-buttons,.run-meta,.panel-title,.voice-head,.preview-caption,.top-status,.direction-chip,.trace-tags,.player-strip{align-items:center;display:flex}.brand{gap:11px;font-weight:900}.brand-mark{align-items:center;background:#07140f;border:1px solid var(--line-strong);border-radius:8px;box-shadow:inset 0 0 0 1px #6ef08f1f,0 0 20px #6ef08f1f;color:var(--green);display:inline-flex;font-size:13px;font-weight:950;height:38px;justify-content:center;width:38px}nav{gap:20px}nav a,.game-tabs button,.handle,.top-status{color:var(--muted);font-size:13px;font-weight:800}.game-tabs{background:#ffffff0b;border:1px solid var(--line);border-radius:999px;gap:4px;padding:4px}.game-tabs button{background:transparent;border:0;border-radius:999px;color:var(--muted);min-height:30px;padding:0 12px}.game-tabs button:hover,.game-tabs button:focus-visible{background:#6ef08f1f;color:var(--ink);outline:none}.top-status{background:#6ef08f14;border:1px solid var(--line);border-radius:999px;gap:9px;padding:8px 13px;text-transform:capitalize}.top-status.connecting,.top-status.needs_auth{background:#ffd1661f;border-color:#ffd16652;color:#ffe2a0}.top-status.error,.top-status.offline{background:#ff6d5f21;border-color:#ff6d5f5c;color:#ffb8b1}.live-dot{background:var(--green);border-radius:999px;box-shadow:0 0 16px #6ef08fe6;height:8px;width:8px}.topbar-actions{gap:10px}.button,.icon-button{border:1px solid var(--line-strong);border-radius:8px;font-weight:900;min-height:40px}.button{align-items:center;display:inline-flex;justify-content:center;padding:0 16px}.button.primary{background:var(--green);border-color:var(--green);color:#031009}.button.secondary{background:#ffffff0a;color:var(--ink)}.icon-button{align-items:center;background:#ffffff0a;color:var(--ink);display:inline-flex;height:42px;justify-content:center;width:42px}.icon-button.active{background:var(--green);border-color:var(--green);color:#04110a}.landing{align-items:center;display:grid;gap:56px;grid-template-columns:minmax(0,1fr) minmax(340px,460px);margin:0 auto;max-width:1180px;min-height:calc(100vh - 64px);padding:44px 28px}.eyebrow,.panel-kicker{color:var(--green);font-size:11px;font-weight:950;letter-spacing:.12em;text-transform:uppercase}h1{font-size:clamp(48px,7vw,82px);letter-spacing:0;line-height:.94;margin:12px 0 0;max-width:820px}.lead{color:var(--muted);font-size:18px;line-height:1.6;margin:22px 0 0;max-width:650px}.hero-actions{gap:12px;margin-top:30px}.landing-preview{display:flex;justify-content:center}.preview-window,.board-panel,.voice-card,.trace-card,.data-panel{background:linear-gradient(180deg,#132720f0,#07110df5);border:1px solid var(--line);border-radius:8px;box-shadow:0 24px 80px -54px #000000e6}.preview-window{padding:16px;width:min(100%,440px)}.preview-board{aspect-ratio:1;background:linear-gradient(rgba(110,240,143,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(110,240,143,.045) 1px,transparent 1px),#06110d;background-size:24px 24px;border:1px solid rgba(110,240,143,.12);border-radius:8px;overflow:hidden;position:relative}.preview-food,.preview-snake,.preview-route{border-radius:5px;display:block;height:8.5%;position:absolute;width:8.5%}.preview-food{background:var(--coral);box-shadow:0 0 18px #ff6d5f73;left:72%;top:28%}.preview-snake{background:var(--green)}.preview-route{align-items:center;background:#63a7ff6b;border:1px solid rgba(185,216,255,.42);color:#e9f3ff;display:flex;font-size:12px;font-weight:950;justify-content:center}.preview-route.r1{left:62%;top:42%}.preview-route.r2{left:72%;top:42%}.preview-route.r3{left:72%;top:32%}.preview-snake.s1{left:42%;top:52%}.preview-snake.s2{left:52%;top:52%}.preview-snake.s3{left:62%;top:52%}.preview-snake.s4{background:#d9ffe3;left:62%;top:42%}.preview-caption{color:var(--green);font-weight:900;gap:8px;padding-top:14px}.landing-leaderboard{align-items:center;background:#ffffff0b;border:1px solid var(--line);border-radius:8px;display:flex;gap:24px;grid-column:1 / -1;justify-content:space-between;margin-top:10px;padding:24px}.landing-leaderboard h2{font-size:clamp(28px,4vw,44px);line-height:1;margin:8px 0}.landing-leaderboard p{color:var(--muted);font-size:16px;line-height:1.55;margin:0;max-width:680px}.cockpit{display:grid;gap:16px;grid-template-columns:minmax(520px,1fr) minmax(360px,430px);grid-template-rows:minmax(0,1fr) 42px;height:calc(100vh - 64px);margin:0 auto;max-width:1540px;overflow:hidden;padding:18px 24px 14px}.game-stage,.pilot-panel{min-height:0}.game-stage{display:grid;gap:14px;grid-template-rows:auto minmax(0,1fr)}.score-ribbon{display:grid;gap:10px;grid-template-columns:repeat(4,1fr)}.metric{background:#ffffff0b;border:1px solid var(--line);border-radius:8px;min-width:0;padding:12px 14px}.metric span{color:var(--muted);display:block;font-size:11px;font-weight:900;text-transform:uppercase}.metric strong{color:var(--ink);display:block;font-size:clamp(22px,3vw,34px);line-height:1.05;margin-top:4px}.board-panel{display:grid;gap:12px;grid-template-rows:auto minmax(0,1fr) auto;min-height:0;padding:16px}.board-toolbar{align-items:center;display:flex;gap:12px;justify-content:space-between}.board-toolbar strong,.voice-card strong{display:block;font-size:20px}.tool-buttons,.run-meta,.panel-title,.voice-head,.path-status{gap:10px}.path-status{align-items:center;background:#63a7ff21;border:1px solid rgba(99,167,255,.34);border-radius:999px;color:#b9d8ff;display:inline-flex;font-size:12px;font-weight:950;padding:8px 11px;text-transform:uppercase;white-space:nowrap}.path-status.low{background:#6ef08f1c;border-color:#6ef08f57;color:var(--green)}.path-status.high{background:#ff6d5f21;border-color:#ff6d5f59;color:#ffb8b1}.board{align-self:center;aspect-ratio:1;background:linear-gradient(rgba(110,240,143,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(110,240,143,.045) 1px,transparent 1px),#030a07;background-size:calc(100% / 23) calc(100% / 23);border:1px solid rgba(110,240,143,.16);border-radius:8px;box-shadow:inset 0 0 60px #0000006b,0 0 48px #6ef08f14;display:grid;justify-self:center;height:min(calc(100vh - 278px),calc(100vw - 560px),760px);max-width:100%;min-height:0;overflow:hidden;padding:7px;position:relative;width:min(calc(100vh - 278px),calc(100vw - 560px),760px)}.cell{align-items:center;border-radius:4px;color:#06100d;display:inline-flex;font-size:clamp(8px,.7vw,11px);font-weight:950;justify-content:center;min-height:0;min-width:0}.cell.route{background:#63a7ff5c;box-shadow:inset 0 0 0 1px #b9d8ff5c,0 0 14px #63a7ff59;color:#e9f3ff}.cell.snake,.cell.head{background:linear-gradient(180deg,#b9ffc6,var(--green-2));box-shadow:inset 0 -4px #00000040,0 0 10px #6ef08f2e}.cell.head{background:linear-gradient(180deg,#fff,#9cffb2)}.cell.food{background:linear-gradient(180deg,#ff9a8f,var(--coral));box-shadow:inset 0 -4px #0000003d,0 0 16px #ff6d5f66}.game-over{align-items:center;background:#020604c7;color:#fff;display:flex;flex-direction:column;gap:8px;top:0;right:0;bottom:0;left:0;justify-content:center;padding:24px;position:absolute;text-align:center}.game-over strong{font-size:clamp(34px,6vw,70px);letter-spacing:0;line-height:.95}.game-over span{color:var(--muted);font-weight:800}.game-over.idle{background:#0206048a}.game-over.route-review{background:#020c08ad;border:1px solid rgba(110,240,143,.26);top:18px;right:18px;bottom:18px;left:18px}.game-over.route-review strong{color:var(--green);font-size:clamp(30px,4.5vw,56px)}.run-meta{color:var(--muted);flex-wrap:wrap;font-size:13px;font-weight:850;justify-content:space-between}.direction-chip{background:#6ef08f1f;border:1px solid var(--line-strong);border-radius:999px;color:var(--green);gap:5px;padding:6px 10px;text-transform:capitalize}.pilot-panel{display:flex;flex-direction:column;gap:12px;overflow:hidden}.modal-backdrop{align-items:center;background:#000000ad;display:flex;top:0;right:0;bottom:0;left:0;justify-content:center;padding:24px;position:fixed;z-index:10}.leaderboard-modal{background:linear-gradient(180deg,#12251efa,#07120ffa);border:1px solid var(--line-strong);border-radius:8px;box-shadow:0 24px 70px #00000073;display:grid;gap:18px;max-height:min(760px,calc(100vh - 48px));max-width:980px;min-height:0;overflow:hidden;padding:18px;width:min(980px,calc(100vw - 48px))}.modal-head{align-items:center;display:flex;justify-content:space-between}.modal-head h2{font-size:34px;line-height:1;margin:6px 0 0}.modal-grid{display:grid;gap:14px;grid-template-columns:minmax(0,1fr) minmax(0,.82fr);min-height:0;overflow:hidden}.toast{background:#ffd16624;border:1px solid rgba(255,209,102,.34);border-radius:8px;color:#ffe7a8;font-size:13px;font-weight:850;padding:10px 12px}.voice-card,.trace-card,.data-panel{min-height:0;padding:14px}.voice-card{display:grid;flex:0 0 auto}.voice-head{color:var(--green);margin-bottom:12px}.pilot-readout{background:#030a07;border:1px solid rgba(110,240,143,.18);border-radius:8px;display:grid;gap:4px;margin-bottom:10px;min-height:64px;padding:11px 12px}.pilot-readout span{color:var(--muted);font-size:13px;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pilot-readout strong{color:var(--green);font-size:24px;text-transform:uppercase}.command-line{display:grid;gap:8px;grid-template-columns:minmax(0,1fr) 76px;margin-bottom:10px}.command-line input{background:#020604;border:1px solid rgba(110,240,143,.22);border-radius:8px;color:var(--ink);min-height:42px;min-width:0;outline:none;padding:0 12px}.command-line input:focus{border-color:var(--green);box-shadow:0 0 0 3px #6ef08f1a}.command-line input::placeholder{color:#6f8b7d}.command-line button,.direction-pad button,.command-deck button{border-radius:8px;font-weight:950}.command-line button{background:var(--blue);border:1px solid var(--blue);color:#06101b}.direction-pad{display:grid;gap:8px;grid-template-columns:repeat(4,1fr)}.direction-pad button{align-items:center;background:#ffffff0d;border:1px solid var(--line);color:var(--ink);display:flex;height:42px;justify-content:center}.command-deck{display:grid;gap:8px;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:8px}.command-deck button{align-items:center;background:#63a7ff24;border:1px solid rgba(99,167,255,.34);color:#b9d8ff;display:inline-flex;font-size:12px;gap:6px;height:40px;justify-content:center;text-transform:uppercase}.command-deck button:nth-child(2){background:#6ef08f1f;border-color:var(--line-strong);color:var(--green)}.command-deck button:nth-child(3){background:#b58cff24;border-color:#b58cff59;color:#dccbff}.command-deck button:nth-child(4){background:#ffd16624;border-color:#ffd16659;color:#ffe2a0}.trace-card{display:grid;flex:1 1 150px;grid-template-rows:auto minmax(0,1fr);min-height:138px;overflow:hidden}.panel-title{color:var(--ink);justify-content:space-between;margin-bottom:10px}.pilot-log,.run-list,.leaderboard-list{display:grid;gap:8px;min-height:0;overflow:auto;padding-right:2px}.pilot-log-row{background:#ffffff0b;border:1px solid var(--line);border-left:3px solid var(--green);border-radius:8px;display:grid;gap:8px;padding:10px}.pilot-log-row.blocked{border-left-color:var(--coral)}.pilot-log-row.calling,.pilot-log-row.sent,.pilot-log-row.heard{border-left-color:var(--blue)}.pilot-log-row.error{border-left-color:var(--coral)}.pilot-log-row.completed{border-left-color:var(--green)}.pilot-log-row strong{display:block;font-size:14px}.pilot-log-row span,.run-row span,.leaderboard-row span,.empty-state,.muted{color:var(--muted);font-size:12px;font-weight:760}.trace-tags{flex-wrap:wrap;gap:6px}.trace-tags span{background:#ffffff0f;border:1px solid var(--line);border-radius:999px;color:var(--ink);padding:4px 7px;text-transform:uppercase}.pilot-log-row code{color:#b9d8ff;font-family:SFMono-Regular,Consolas,monospace;font-size:11px;overflow-wrap:anywhere}.mini-grid{display:grid;flex:1 1 92px;gap:12px;grid-template-columns:1fr 1fr;min-height:84px;overflow:hidden}.compact-panel{display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden}.run-row,.leaderboard-row{align-items:center;background:#ffffff0b;border:1px solid var(--line);border-radius:8px;display:grid;gap:8px;padding:10px}.run-row{grid-template-columns:minmax(0,1fr) auto}.leaderboard-row{grid-template-columns:34px minmax(0,1fr) auto}.run-row strong,.leaderboard-row strong{display:block}.rank{align-items:center;background:#ffffff14;border-radius:8px;color:var(--ink);display:flex;font-weight:950;height:30px;justify-content:center;width:30px}.rank.hot{background:#ffd16629;color:var(--amber)}.empty-state{align-items:center;border:1px dashed var(--line-strong);border-radius:8px;display:flex;justify-content:center;min-height:120px;padding:12px;text-align:center}.empty-state.compact{min-height:84px}.player-strip{background:#ffffff0b;border:1px solid var(--line);border-radius:8px;color:var(--muted);font-size:12px;font-weight:850;gap:16px;grid-column:1 / -1;justify-content:space-between;min-width:0;overflow:hidden;padding:0 14px}.player-strip span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 1120px){body:has(.game-shell){overflow:auto}.game-shell{height:auto;min-height:100vh;overflow:visible}.cockpit{grid-template-columns:1fr;grid-template-rows:auto auto auto;height:auto;overflow:visible;padding:16px}.board{max-width:min(100%,680px)}.pilot-panel{overflow:visible}.modal-grid{grid-template-columns:1fr;overflow:auto}}@media (max-width: 760px){.topbar{flex-wrap:wrap;height:auto;min-height:64px;padding:12px 16px}.landing{grid-template-columns:1fr;padding:30px 18px}.landing-leaderboard{align-items:flex-start;flex-direction:column}h1{font-size:clamp(42px,13vw,64px)}.score-ribbon,.mini-grid{grid-template-columns:1fr 1fr}.command-line{grid-template-columns:1fr}.player-strip{align-items:flex-start;flex-direction:column;gap:6px;padding:10px 12px}.game-tabs{order:3;width:100%}.game-tabs button{flex:1}}
