:root{--accent: #ffb020;--accent2: #43d97a;--panel: rgba(12, 16, 22, .82);--line: rgba(255, 255, 255, .12);--text: #e8eef5;--muted: #9aa7b4;font-family:Segoe UI,Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;overflow:hidden;background:#05070a;color:var(--text);user-select:none;-webkit-user-select:none}#viewport,#viewport canvas{position:fixed;inset:0;display:block;touch-action:none}.hidden{display:none!important}.overlay{position:fixed;inset:0;z-index:30;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,#04080e8c,#030509e6);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.panel{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:34px 44px;text-align:center;max-width:560px;box-shadow:0 30px 80px #0000008c;animation:pop .35s cubic-bezier(.2,1.2,.4,1)}@keyframes pop{0%{transform:translateY(14px) scale(.97);opacity:0}to{transform:none;opacity:1}}h1{font-size:44px;letter-spacing:4px;font-weight:800;margin-bottom:8px}h1 span{color:var(--accent)}h2{font-size:30px;letter-spacing:3px;margin-bottom:18px}.sub{color:var(--muted);letter-spacing:2px;margin-bottom:18px}.tag{color:var(--muted);font-size:14px;margin-bottom:20px}.tag b{color:var(--accent2)}.keys{display:grid;gap:8px;font-size:14px;color:var(--muted);margin-bottom:24px;text-align:left}kbd{display:inline-block;min-width:24px;padding:3px 7px;margin-right:4px;border:1px solid var(--line);border-bottom-width:2px;border-radius:6px;background:#ffffff0f;color:var(--text);font-size:12px;text-align:center}button{font:inherit;font-weight:800;letter-spacing:3px;font-size:17px;color:#14100a;background:linear-gradient(180deg,#ffc85a,var(--accent));border:none;border-radius:12px;padding:14px 34px;cursor:pointer;transition:transform .12s ease,filter .12s ease;display:block;margin:0 auto 10px;width:100%}button:hover{transform:translateY(-2px);filter:brightness(1.08)}button:active{transform:translateY(0)}button.ghost{background:transparent;color:var(--text);border:1px solid var(--line);font-size:14px;padding:11px 24px}.hint{color:var(--muted);font-size:12px;letter-spacing:1px;margin-top:14px}.bar{height:8px;border-radius:6px;background:#ffffff14;overflow:hidden;margin-bottom:12px}#load-fill{height:100%;width:0%;background:linear-gradient(90deg,var(--accent),#ff7a3d);transition:width .15s linear}#load-detail{color:var(--muted);font-size:12px;letter-spacing:1px}#hud{position:fixed;inset:0;z-index:20;pointer-events:none}.hud-tl,.hud-tr{position:absolute;top:16px;display:flex;gap:10px}.hud-tl{left:16px}.hud-tr{right:16px}.hud-bl{position:absolute;left:16px;bottom:16px}.hud-br{position:absolute;right:16px;bottom:16px;text-align:right}.box{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:8px 14px;min-width:92px}.box .label{display:block;font-size:10px;letter-spacing:2px;color:var(--muted)}.box .value{font-size:22px;font-weight:700;font-variant-numeric:tabular-nums}.box.accent .value{color:var(--accent)}#minimap{background:#080c12b8;border:1px solid var(--line);border-radius:14px;display:block}#speedo{font-size:58px;font-weight:800;line-height:1;font-variant-numeric:tabular-nums;text-shadow:0 4px 24px rgba(0,0,0,.7)}#speedo .unit{font-size:15px;font-weight:600;color:var(--muted);margin-left:8px;letter-spacing:2px}.speedbar{width:210px;height:7px;margin-top:8px;margin-left:auto;background:#ffffff1a;border-radius:5px;overflow:hidden}#speed-fill{height:100%;width:0%;background:linear-gradient(90deg,var(--accent2),var(--accent),#ff5f45)}#surface{font-size:11px;letter-spacing:2px;color:var(--muted);margin-top:7px}#hint{position:absolute;bottom:14px;left:50%;transform:translate(-50%);font-size:12px;letter-spacing:1px;color:#ffffffa6;background:#080c128c;border:1px solid var(--line);border-radius:20px;padding:7px 18px;transition:opacity 1.2s ease}#hint.faded{opacity:0}#countdown{position:fixed;inset:0;z-index:25;display:flex;align-items:center;justify-content:center;font-size:170px;font-weight:900;color:#fff;text-shadow:0 0 40px rgba(255,176,32,.8),0 8px 30px rgba(0,0,0,.8);pointer-events:none}#countdown.go{color:var(--accent2);font-size:120px;letter-spacing:8px}#message{position:fixed;top:22%;left:50%;transform:translate(-50%);z-index:25;font-size:42px;font-weight:800;letter-spacing:4px;color:var(--accent);text-shadow:0 6px 26px rgba(0,0,0,.85);pointer-events:none;transition:opacity .5s ease}#result-standings{display:grid;gap:8px;margin-bottom:20px}.stand-row{display:flex;align-items:center;gap:12px;background:#ffffff0d;border:1px solid var(--line);border-radius:10px;padding:9px 14px;font-size:15px;text-align:left}.stand-row.you{border-color:var(--accent);background:#ffb0201f}.stand-row .p{width:34px;font-weight:800;color:var(--accent)}.stand-row .n{flex:1}.stand-row .t{font-variant-numeric:tabular-nums;color:var(--muted)}.stand-row .dot{width:12px;height:12px;border-radius:50%}.result-times{display:flex;justify-content:space-between;gap:14px;margin-bottom:22px}.result-times>div{flex:1;background:#ffffff0a;border-radius:10px;padding:10px}.result-times .label{display:block;font-size:10px;letter-spacing:2px;color:var(--muted)}.result-times span:last-child{font-size:18px;font-weight:700;font-variant-numeric:tabular-nums}@media(max-width:720px){.panel{padding:24px;margin:12px}h1{font-size:32px}#speedo{font-size:42px}#minimap{width:130px;height:130px}#hint{display:none}}
