:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#f6f3ef;--accent:#ff8a3d;--accent-hover:#ffab6b;--accent-glow:#ff8a3d59;--drift-blue:#4db8ff;--drift-orange:#ffa23d;--drift-purple:#c46bff;--bg-dark:#0e0b08;--card-glass:#18100bc7;--card-border:#ffffff14;--text-dim:#f6f3efa6;--red-alert:#e3464f;background:#0d0a08;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#app{-webkit-user-select:none;user-select:none;touch-action:none;width:100%;height:100%;margin:0;overflow:hidden}button,input,select{font:inherit}button{color:#fff;cursor:pointer;background:#20160fd9;border:1px solid #ffffff26;border-radius:8px;min-height:44px;font-weight:700;transition:transform .16s cubic-bezier(.4,0,.2,1),border-color .16s,background-color .16s,box-shadow .16s}button:hover:not(:disabled),button:focus-visible:not(:disabled){border-color:var(--accent);box-shadow:0 0 12px var(--accent-glow);background:#2e1f14f2;transform:translateY(-1px)}button:active:not(:disabled){transform:translateY(1px)}button:disabled{cursor:not-allowed;opacity:.45}.primary{border-color:var(--accent);background:var(--accent);color:#1d0e03;box-shadow:0 4px 14px var(--accent-glow);font-weight:800}.primary:hover:not(:disabled){border-color:var(--accent-hover);background:var(--accent-hover);color:#000;box-shadow:0 6px 18px #ffab6b73}.game-app{background:var(--bg-dark);width:100%;height:100%;position:relative}#gameCanvas{touch-action:none;outline:none;width:100%;height:100%;display:block;position:absolute;inset:0}.screen,.overlay{z-index:20;-webkit-backdrop-filter:blur(12px);background:radial-gradient(circle,#1a0f0899 0%,#0c0704eb 100%);place-items:center;padding:clamp(16px,4vw,48px);display:grid;position:fixed;inset:0}.screen[hidden],.overlay[hidden],.hud[hidden],.hint-bar[hidden],.panel[hidden],.countdown-overlay[hidden],.wrong-way[hidden]{display:none!important}.boot-screen{text-align:center}.brand-mark{border:3px double var(--accent);width:72px;height:72px;color:var(--accent);letter-spacing:.05em;box-shadow:0 4px 20px var(--accent-glow);text-shadow:0 0 6px var(--accent);background:#ff8a3d0f;border-radius:12px;place-items:center;margin:0 auto 20px;font-size:16px;font-weight:900;display:inline-grid}.boot-screen h1,.menu-panel h1{letter-spacing:-.02em;text-shadow:0 4px 24px #00000080;background:linear-gradient(135deg,#fff 0%,#ffc795 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin:0;font-size:clamp(36px,6vw,76px);font-weight:900;line-height:.95}.boot-screen p,.lead{max-width:760px;color:var(--text-dim);margin:18px auto 0;font-size:clamp(15px,1.8vw,19px);line-height:1.6}.loading-bar{background:#ffffff1a;border:1px solid #ffffff0d;border-radius:999px;width:min(340px,70vw);height:6px;margin:26px auto 0;overflow:hidden}.loading-bar span{border-radius:inherit;background:linear-gradient(90deg, var(--accent), var(--accent-hover));width:40%;height:100%;box-shadow:0 0 10px var(--accent);animation:1.2s ease-in-out infinite alternate load;display:block}@keyframes load{0%{transform:translate(-50%)}to{transform:translate(200%)}}.menu-panel,.panel{border:1px solid var(--card-border);background:var(--card-glass);-webkit-backdrop-filter:blur(20px);scrollbar-width:thin;border-radius:16px;width:min(840px,94vw);max-height:min(780px,92vh);padding:clamp(24px,4vw,44px);overflow-y:auto;box-shadow:0 24px 80px #00000080,inset 0 1px 1px #ffffff1a}.menu-panel{justify-self:start;margin-left:min(6vw,64px)}.eyebrow{color:var(--accent);letter-spacing:.22em;text-transform:uppercase;text-shadow:0 0 6px var(--accent-glow);margin:0 0 10px;font-size:11px;font-weight:800}.menu-actions,.panel-actions{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.menu-actions button{min-width:140px;padding-inline:18px;font-size:14px}.menu-play{letter-spacing:.02em;flex:100%;min-height:60px;font-size:20px}.menu-secondary{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}.menu-secondary button{flex:1 1 0;min-width:120px;font-size:14px}.menu-tertiary{flex-wrap:wrap;gap:10px;margin-top:10px;display:flex}.menu-tertiary button{min-height:38px;color:var(--text-dim);background:#ffffff08;flex:none;padding:0 16px;font-size:13px}.menu-hint{color:var(--text-dim);margin-top:18px;font-size:13px}.menu-kbd{color:#fff;background:linear-gradient(#3a2718 0%,#221710 100%);border:1px solid #ffffff26;border-radius:6px;justify-content:center;align-items:center;min-width:46px;height:26px;padding:0 8px;font-family:monospace;font-size:12px;font-weight:800;display:inline-flex;box-shadow:0 2px #120b06}.hud{z-index:10;pointer-events:none;align-items:stretch;gap:8px;display:grid;position:fixed;top:16px;left:16px;right:16px}.race-hud{grid-template-columns:minmax(64px,.8fr) minmax(72px,.9fr) minmax(90px,1fr) minmax(84px,1fr) minmax(110px,1.3fr) minmax(70px,.9fr) auto}.hud-card,.hint-bar{border:1px solid var(--card-border);-webkit-backdrop-filter:blur(12px);background:#1a110bd9;border-radius:12px;box-shadow:0 8px 32px #00000059,inset 0 1px 1px #ffffff0d}.hud-card{min-width:0;padding:8px 12px}.hud-card .label{color:var(--text-dim);letter-spacing:.15em;text-transform:uppercase;font-size:10px;font-weight:800;display:block}.hud-card strong{color:#fff;text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:clamp(15px,1.5vw,20px);font-weight:800;line-height:1.1;display:block;overflow:hidden}.position-card strong{color:var(--accent);text-shadow:0 0 6px var(--accent-glow)}.meter-card{flex-direction:column;justify-content:center;display:flex}.meter{background:#ffffff1a;border:1px solid #ffffff0d;border-radius:999px;height:8px;margin-top:6px;overflow:hidden}.meter span{border-radius:inherit;background:var(--drift-blue);width:0%;height:100%;box-shadow:0 0 6px var(--drift-blue);transition:width 60ms linear;display:block}.drift-meter span.tier-1{background:var(--drift-blue);box-shadow:0 0 8px var(--drift-blue)}.drift-meter span.tier-2{background:var(--drift-orange);box-shadow:0 0 8px var(--drift-orange)}.drift-meter span.tier-3{background:var(--drift-purple);box-shadow:0 0 10px var(--drift-purple)}.icon-text-button{pointer-events:auto;min-width:80px;padding:0 16px}.hint-bar{z-index:9;color:#fff;text-align:center;pointer-events:none;border-color:#ff8a3d40;width:min(820px,100vw - 32px);padding:14px 20px;font-size:14px;font-weight:700;line-height:1.4;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 12px 38px #0006,0 0 15px #ff8a3d0d}.countdown-overlay{z-index:15;pointer-events:none;text-align:center;align-content:center;place-items:center;gap:18px;display:grid;position:fixed;inset:0}.countdown-overlay span:first-child{letter-spacing:-.02em;color:#fff;text-shadow:0 0 40px var(--accent-glow), 0 8px 30px #0009;font-size:clamp(80px,18vw,190px);font-weight:900}.countdown-overlay .is-go{color:var(--accent);text-shadow:0 0 60px var(--accent), 0 8px 30px #0009}#countdownHint{color:var(--text-dim);border:1px solid var(--card-border);background:#1a110bcc;border-radius:999px;justify-self:center;padding:10px 22px;font-size:clamp(13px,1.8vw,17px);font-weight:700}.wrong-way{z-index:16;border:2px solid var(--red-alert);color:#ffb3b8;letter-spacing:.08em;pointer-events:none;background:#28080ad9;border-radius:12px;padding:12px 26px;font-size:clamp(18px,3vw,28px);font-weight:900;animation:.6s ease-in-out infinite alternate wrongway-pulse;position:fixed;top:22%;left:50%;transform:translate(-50%)}@keyframes wrongway-pulse{0%{opacity:.75}to{opacity:1}}.popup-layer{z-index:14;pointer-events:none;justify-items:center;gap:8px;display:grid;position:fixed;top:30%;left:0;right:0}.race-popup{color:#fff;background:#1a110be0;border:1px solid #ffffff2e;border-radius:999px;padding:8px 20px;font-size:clamp(16px,2.4vw,24px);font-weight:900;animation:1.6s cubic-bezier(.2,.7,.3,1) forwards popup-rise;box-shadow:0 10px 32px #00000073}.race-popup.popup-near{color:#ffd9b8;border-color:var(--accent);text-shadow:0 0 10px var(--accent-glow)}.race-popup.popup-pos{color:#b8e6ff;border-color:var(--drift-blue)}.race-popup.popup-boost{color:#e7c8ff;border-color:var(--drift-purple)}@keyframes popup-rise{0%{opacity:0;transform:translateY(18px)scale(.85)}12%{opacity:1;transform:translateY(0)scale(1.05)}22%{transform:translateY(0)scale(1)}78%{opacity:1}to{opacity:0;transform:translateY(-26px)scale(.92)}}.toast{z-index:30;pointer-events:none;width:min(350px,100vw - 32px);min-height:0;padding:0;position:fixed;bottom:16px;right:16px}.toast.is-visible{color:#fff;background:#1a110bf2;border:1px solid #ff8a3d66;border-radius:12px;padding:14px 18px;font-size:13px;font-weight:700;box-shadow:0 16px 44px #00000073}.panel h2{letter-spacing:-.01em;background:linear-gradient(135deg,#fff 0%,#ffe0c4 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin:0 0 14px;font-size:clamp(26px,4vw,40px);font-weight:900;line-height:1.1}.panel p{color:var(--text-dim);margin-top:0;margin-bottom:20px;font-size:15px;line-height:1.6}.panel p strong{color:#fff}.fyrka-control-strip{background:#00000026;border:1px solid #ffffff0a;border-radius:12px;flex-direction:column;gap:12px;margin:24px 0;padding:16px;display:flex}.fyrka-control{align-items:center;gap:16px;font-size:14px;display:flex}.fyrka-control b{color:var(--text-dim);font-weight:500}.fyrka-key{color:#fff;text-shadow:0 1px 1px #000c;background:linear-gradient(#3a2718 0%,#221710 100%);border:1px solid #ffffff26;border-radius:6px;justify-content:center;align-items:center;min-width:38px;height:38px;padding:0 8px;font-family:monospace;font-size:14px;font-weight:800;display:inline-flex;box-shadow:0 3px #120b06,0 4px 6px #0006}.fyrka-key--wide{min-width:72px}.fyrka-keyset{gap:4px;display:inline-flex}.fyrka-keyset kbd{color:#fff;background:linear-gradient(#3a2718 0%,#221710 100%);border:1px solid #ffffff26;border-radius:6px;justify-content:center;align-items:center;min-width:34px;height:34px;padding:0 8px;font-family:monospace;font-size:13px;font-weight:800;display:inline-flex;box-shadow:0 3px #120b06,0 4px 6px #0006}.field,.toggle{color:#fff;gap:8px;margin-top:18px;font-size:14px;font-weight:700;display:grid}.field input[type=text],.field input:not([type]),.field select{color:#fff;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;outline:none;width:100%;padding:12px 14px;transition:border-color .16s,background-color .16s}.field input[type=text]:focus,.field input:not([type]):focus,.field select:focus{border-color:var(--accent);background:#ffffff14}.field input[type=range]{width:100%;height:6px;accent-color:var(--accent);background:#ffffff1a;border-radius:999px;outline:none;margin:10px 0}.toggle{cursor:pointer;grid-template-columns:auto 1fr;align-items:center}.toggle input{width:20px;height:20px;accent-color:var(--accent);cursor:pointer}.small-note,.status-line{color:var(--text-dim);margin-top:12px;font-size:13px;line-height:1.5}.tabs{border-bottom:1px solid #ffffff14;gap:8px;margin-top:18px;padding-bottom:12px;display:flex}.tabs button{background:0 0;border-color:#0000;min-height:38px;padding:0 16px;font-size:13px}.tabs button.is-active{border-color:var(--accent);color:var(--accent);background:#ff8a3d0d}.queue-list{scrollbar-width:thin;gap:8px;max-height:240px;margin:18px 0 0;padding-left:20px;display:grid;overflow-y:auto}.queue-list li{color:var(--text-dim);font-size:14px;line-height:1.5}.shop-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:20px;display:grid}.shop-card{border:1px solid var(--card-border);background:#ffffff05;border-radius:12px;flex-direction:column;padding:16px;display:flex}.shop-card h3{color:#fff;margin:14px 0 6px;font-size:16px;font-weight:800}.shop-card p{flex-grow:1;margin-bottom:16px;font-size:13px}.shop-card button{width:100%}.preview-block{aspect-ratio:16/7;border:1px solid #ffffff0d;border-radius:8px;width:100%;box-shadow:0 4px 12px #0003}.result-panel{text-align:center}.result-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:28px 0 16px;display:grid}.result-grid div{border:1px solid var(--card-border);background:#ffffff08;border-radius:12px;padding:16px;box-shadow:inset 0 1px #ffffff08}.result-grid dt{color:var(--text-dim);letter-spacing:.1em;text-transform:uppercase;font-size:11px;font-weight:800}.result-grid dd{color:var(--accent);text-shadow:0 0 8px var(--accent-glow);margin:10px 0 0;font-size:clamp(22px,3.2vw,34px);font-weight:900}.result-breakdown{text-align:left;border:1px solid var(--card-border);background:#0000002e;border-radius:12px;gap:8px;margin:0 0 8px;padding:14px 18px;list-style:none;display:grid}.result-breakdown li{color:var(--text-dim);justify-content:space-between;gap:14px;font-size:14px;font-weight:600;display:flex}.result-breakdown li b{color:#fff;font-variant-numeric:tabular-nums;font-weight:800}.result-breakdown li.total{color:#fff;border-top:1px solid #ffffff1a;padding-top:10px}.result-breakdown li.total b{color:var(--accent);text-shadow:0 0 8px var(--accent-glow)}@media (width<=980px){.race-hud{grid-template-columns:repeat(3,1fr) auto;grid-auto-rows:auto;top:10px;left:10px;right:10px}.menu-panel{justify-self:center;margin-left:0}.hint-bar{font-size:13px;bottom:200px}}@media (width<=640px){.screen,.overlay{padding:12px}.menu-panel,.panel{border-radius:12px;width:100%;max-height:94vh;padding:20px}.race-hud{grid-template-columns:1fr 1fr 1fr}.hud-card{padding:6px 10px}.icon-text-button{grid-column:span 3}.shop-grid,.result-grid{grid-template-columns:1fr;gap:8px}.menu-actions button,.panel-actions button{flex:100%}}@media (prefers-reduced-motion:reduce){*{transition-duration:.001ms!important;animation-duration:.001ms!important}}
