*{box-sizing:border-box}:root{color-scheme:dark;--bg: #080b12;--panel: rgba(13, 18, 29, .82);--panel-strong: rgba(10, 14, 24, .94);--line: rgba(255, 255, 255, .14);--text: #f6fbff;--muted: #a7b4c8;--cyan: #22d3ee;--pink: #fb7185;--gold: #facc15;--green: #8bff80;--purple: #a78bfa;--red: #ff5d6c}html,body{width:100%;height:100%;margin:0;overflow:hidden;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}h1,h2,h3,p{margin:0}#game-root{position:relative;min-height:100dvh;isolation:isolate}#game-canvas{position:fixed;top:0;right:0;bottom:0;left:0;display:block;width:100vw;height:100dvh;touch-action:none}.topbar,.race-hud,.side-panel,.menu-toggle,.touch-controls,.start-panel,.toast{position:fixed;z-index:3}.topbar{top:14px;left:14px;right:14px;display:flex;align-items:center;justify-content:space-between;gap:12px;pointer-events:none}.brand-block,.player-block,.race-hud,.side-panel,.dialog-shell,.toast,.start-panel>div{background:var(--panel);border:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 22px 64px #00000047}.brand-block,.player-block{pointer-events:auto;display:flex;align-items:center;gap:10px;min-height:52px;border-radius:8px;padding:8px 10px}.brand-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:8px;background:linear-gradient(135deg,#22d3ee33,#fb71852e);color:var(--cyan);font-weight:900}h1{font-size:1rem;line-height:1.1}.brand-block p,.race-hud span,.price-line,.status-line,.payment-note,.asset-card p{color:var(--muted)}.brand-block p{font-size:.78rem}.player-block form{margin:0}.coin-badge{border:1px solid var(--line);border-radius:999px;padding:5px 8px;color:var(--gold);font-weight:800;font-size:.78rem}.auth-link,.submit-button,.tab-button,.asset-action,.icon-button,.control-button{border:1px solid var(--line);color:var(--text);background:#ffffff14;cursor:pointer;position:relative;overflow:hidden;transform:translateZ(0);transition:transform .16s ease,border-color .16s ease,background .16s ease,color .16s ease,box-shadow .16s ease}.auth-link:hover,.submit-button:hover,.tab-button:hover,.asset-action:hover,.icon-button:hover,.control-button:hover{transform:translateY(-1px);border-color:#22d3ee94;box-shadow:0 12px 28px #00000038}.auth-link:active,.submit-button:active,.tab-button:active,.asset-action:active,.icon-button:active,.control-button:active{transform:translateY(1px) scale(.98);box-shadow:none}.auth-link,.submit-button,.asset-action{display:inline-flex;align-items:center;justify-content:center;min-height:38px;border-radius:8px;padding:0 14px;text-decoration:none;font-weight:800}.auth-link.primary,.submit-button,.control-button.primary{background:linear-gradient(135deg,var(--cyan),var(--green));color:#071013;border-color:transparent}.icon-button{display:grid;place-items:center;width:34px;height:34px;border-radius:8px;font-weight:900}.start-panel{left:14px;top:86px;width:min(520px,calc(100vw - 390px));pointer-events:none}.start-panel>div{display:grid;gap:14px;border-radius:8px;padding:20px;pointer-events:auto}.start-panel.is-hidden{display:none}.eyebrow{color:var(--cyan);font-weight:900;text-transform:uppercase;letter-spacing:.14em;font-size:.72rem}.start-panel h2{font-size:clamp(2rem,5vw,4.8rem);line-height:.9;letter-spacing:0}.start-panel p{max-width:46rem;color:var(--muted);line-height:1.55}.start-actions{display:flex;flex-wrap:wrap;gap:10px}.race-hud{left:14px;bottom:18px;display:grid;grid-template-columns:repeat(4,minmax(68px,1fr));gap:8px;border-radius:8px;padding:10px}.race-hud span{display:block;font-size:.72rem}.race-hud strong{display:block;font-size:1.25rem}.side-panel{top:86px;right:14px;width:min(360px,calc(100vw - 28px));max-height:calc(100dvh - 118px);overflow:hidden;border-radius:8px}.tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding:8px;border-bottom:1px solid var(--line)}.tab-button{min-height:36px;border-radius:8px;font-weight:800}.tab-button.active{background:#22d3ee24;border-color:#22d3ee8c;color:var(--cyan)}.panel-section{display:none;padding:10px;overflow:auto;max-height:calc(100dvh - 178px)}.panel-section.active{display:block}.asset-list,.stat-list{display:grid;gap:8px}.payment-note{margin-bottom:8px;padding:10px;border-radius:8px;border:1px solid var(--line);background:#ffffff0f;font-size:.82rem;line-height:1.45}.payment-note strong{display:block;color:var(--gold);margin-bottom:3px}.asset-card{display:grid;gap:8px;padding:10px;border-radius:8px;background:#ffffff12;border:1px solid var(--line)}.asset-card:hover{border-color:#22d3ee57;background:#ffffff18}.asset-card header{display:flex;justify-content:space-between;gap:10px}.asset-card h3{font-size:.95rem}.asset-card p{font-size:.82rem;line-height:1.42}.asset-meta{display:flex;flex-wrap:wrap;gap:6px}.asset-meta span{border:1px solid var(--line);border-radius:999px;padding:3px 8px;color:#dbe9ff;font-size:.72rem}.asset-action{width:100%}.asset-action.warning{background:var(--gold);color:#171007;border-color:transparent}.asset-action.pending{color:var(--gold);cursor:default}.asset-preview{position:relative;height:74px;overflow:hidden;border-radius:8px;border:1px solid rgba(255,255,255,.1);background:radial-gradient(circle at 20% 20%,currentColor,transparent 28%),linear-gradient(135deg,#ffffff14,#ffffff05),#111827}.asset-preview span,.asset-preview i,.asset-preview b{position:absolute;display:block}.asset-preview span{left:38px;top:28px;width:104px;height:24px;border-radius:14px 22px 10px 10px;background:currentColor;box-shadow:0 0 28px currentColor}.asset-preview span:before{content:"";position:absolute;left:26px;top:-16px;width:48px;height:18px;border-radius:10px 14px 4px 4px;background:#070a10e6}.asset-preview i{left:50px;top:44px;width:24px;height:24px;border-radius:50%;border:5px solid #05070a;outline:3px solid rgba(255,255,255,.82);background:#111827;box-shadow:58px 0 0 -2px #111827,58px 0 0 1px #ffffffd1}.asset-preview b{right:34px;top:18px;width:44px;height:4px;border-radius:999px;background:#05070a;box-shadow:0 0 18px currentColor}.asset-preview.common{color:#9fb8aa}.asset-preview.rare{color:var(--cyan)}.asset-preview.epic{color:var(--purple)}.asset-preview.legendary{color:var(--gold)}.leaderboard{display:grid;gap:8px;margin:0;padding-left:22px}.leaderboard li,.stat-card{padding:9px;border-radius:8px;background:#ffffff12}.leaderboard span,.stat-card span{color:var(--muted)}.menu-toggle{display:none;min-height:38px;border-radius:8px;border:1px solid var(--line);background:var(--panel);color:var(--text);font-weight:900;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.touch-controls{right:18px;bottom:18px;display:none;align-items:end;gap:18px;pointer-events:none}.stick,.pedal-group{pointer-events:auto}.stick{--stick-x: 0px;display:grid;place-items:center;width:104px;height:104px;border-radius:50%;border:1px solid rgba(255,255,255,.24);background:radial-gradient(circle at center,rgba(34,211,238,.2) 0 23%,transparent 24%),#09101a9e;box-shadow:inset 0 0 0 10px #ffffff0d,0 16px 34px #00000052;touch-action:none}.stick span{width:42px;height:42px;border-radius:50%;background:var(--cyan);transform:translate3d(var(--stick-x),0,0);transition:transform 95ms ease-out;box-shadow:0 0 0 6px #22d3ee2e,0 10px 20px #0000004d}.pedal-group{display:flex;gap:12px}.control-button{width:70px;height:70px;border-radius:50%;font-weight:900}.control-button:not(.primary){color:#ffd9c7;border-color:#ffa8766b;background:#2d302e}dialog{width:min(420px,calc(100vw - 28px));padding:0;border:0;background:transparent;color:var(--text)}dialog::backdrop{background:#000000a6}.dialog-shell{display:grid;gap:14px;border-radius:8px;padding:16px}.dialog-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.dialog-shell label{display:grid;gap:6px;color:var(--muted)}.dialog-shell input{min-height:42px;border-radius:8px;border:1px solid var(--line);background:#ffffff14;color:var(--text);padding:8px 10px}.toast{left:50%;bottom:18px;translate:-50% 0;border-radius:8px;padding:10px 14px}.auth-page{min-height:100dvh;overflow:auto;background:radial-gradient(circle at 18% 10%,rgba(34,211,238,.24),transparent 28rem),radial-gradient(circle at 84% 16%,rgba(251,113,133,.2),transparent 28rem),linear-gradient(135deg,#080b12,#121827)}.auth-shell{display:grid;place-items:center;align-content:center;min-height:100dvh;gap:18px;padding:24px}.auth-brand{display:inline-flex;align-items:center;gap:10px;color:var(--text);text-decoration:none;font-weight:900}.auth-card{width:min(420px,100%);display:grid;gap:20px;padding:22px;border-radius:8px;background:var(--panel-strong);border:1px solid var(--line);box-shadow:0 28px 80px #00000052}.auth-card header,.auth-form{display:grid;gap:14px}.auth-card h1{font-size:1.45rem}.auth-card p,.auth-switch{color:var(--muted)}.auth-form label{display:grid;gap:6px;color:var(--muted)}.auth-form input:not([type=checkbox]){min-height:44px;width:100%;border-radius:8px;border:1px solid var(--line);background:#ffffff14;color:var(--text);padding:8px 10px}.auth-form small{color:var(--red)}.check-line{display:flex!important;align-items:center;gap:8px!important}.auth-switch{text-align:center}.auth-switch a{color:var(--cyan);font-weight:900}@media (max-width: 860px){.topbar{align-items:flex-start}.start-panel{width:calc(100vw - 24px);left:12px;top:140px}.side-panel{top:auto;left:12px;right:12px;bottom:132px;width:auto;max-height:42dvh;transition:transform .18s ease,opacity .18s ease}.side-panel.collapsed{transform:translateY(calc(100% + 18px));opacity:0;pointer-events:none}.menu-toggle{display:inline-flex;align-items:center;justify-content:center;top:76px;right:12px;padding:0 14px}.panel-section{max-height:calc(42dvh - 54px)}.race-hud{left:12px;right:12px;top:84px;bottom:auto;width:auto;grid-template-columns:repeat(4,minmax(0,1fr))}.touch-controls{display:flex}}@media (max-width: 620px){.topbar{left:10px;right:10px;gap:8px}.brand-block,.player-block{min-height:46px;padding:6px 8px}.player-block{max-width:58vw;overflow:hidden}.player-block>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.race-hud strong{font-size:1rem}.tabs{grid-template-columns:repeat(4,minmax(0,1fr))}.tab-button{font-size:.78rem}.start-panel h2{font-size:2.2rem}.start-panel p{font-size:.9rem}}
