:root{--bg-dark: #0f0f1a;--bg-panel: rgba(16, 16, 32, .92);--accent: #00ccff;--accent-glow: rgba(0, 204, 255, .35);--text: #d0d8e8;--text-dim: #6a7a90;--danger: #ff4455;--success: #44ff66;--warning: #ffaa22;--radius: 10px;--font: "Segoe UI", system-ui, sans-serif;--font-mono: "Cascadia Code", "Fira Code", "Consolas", monospace}.ui-overlay{position:fixed;inset:0;z-index:10;pointer-events:none;font-family:var(--font);color:var(--text)}.ui-overlay>*{pointer-events:auto}#menu-screen{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,#0a0c1eb3,#000000e0);z-index:20}#menu-screen.hidden{display:none}.menu-title{font-size:clamp(36px,8vw,72px);font-weight:900;letter-spacing:6px;text-transform:uppercase;color:var(--accent);text-shadow:0 0 40px var(--accent-glow),0 0 80px var(--accent-glow);margin-bottom:12px}.menu-subtitle{font-size:14px;font-family:var(--font-mono);color:var(--text-dim);letter-spacing:8px;text-transform:uppercase;margin-bottom:64px}.menu-buttons{display:flex;flex-direction:column;gap:16px;min-width:260px}.menu-btn{padding:16px 48px;font-size:18px;font-weight:700;letter-spacing:3px;text-transform:uppercase;border:2px solid var(--accent);background:#00ccff14;color:var(--accent);border-radius:var(--radius);cursor:pointer;transition:all .2s ease;font-family:var(--font)}.menu-btn:hover{background:var(--accent);color:var(--bg-dark);box-shadow:0 0 30px var(--accent-glow);transform:scale(1.03)}.menu-btn.secondary{border-color:var(--text-dim);color:var(--text-dim);background:#6a7a900f}.menu-btn.secondary:hover{border-color:var(--text);color:var(--text);background:#c8d2dc1f;box-shadow:0 0 16px #c8d2dc26}#lobby-screen{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,#0a0c1eb3,#000000d9);z-index:20}#lobby-screen.hidden{display:none}.lobby-panel{background:var(--bg-panel);border:1px solid rgba(0,204,255,.18);border-radius:16px;padding:40px 48px;min-width:400px;max-width:500px;box-shadow:0 0 60px #00000080,inset 0 1px #ffffff0a}.lobby-title{font-size:24px;font-weight:800;letter-spacing:3px;text-transform:uppercase;color:var(--accent);text-align:center;margin-bottom:28px}.lobby-room-code{text-align:center;margin-bottom:24px}.lobby-room-code .label{display:block;font-size:11px;font-family:var(--font-mono);color:var(--text-dim);letter-spacing:3px;text-transform:uppercase;margin-bottom:6px}.lobby-room-code .code{display:inline-block;font-size:36px;font-weight:800;font-family:var(--font-mono);letter-spacing:8px;color:var(--success);background:#44ff6614;padding:8px 28px;border-radius:10px;border:1px solid rgba(68,255,102,.2)}.lobby-players{display:flex;flex-direction:column;gap:8px;margin-bottom:28px}.player-slot{padding:10px 16px;border-radius:8px;font-size:15px;font-weight:600;letter-spacing:1px}.player-slot.connected{background:#00ccff1a;border:1px solid rgba(0,204,255,.2);color:var(--accent)}.player-slot.empty{background:#6a7a900f;border:1px dashed rgba(106,122,144,.15);color:var(--text-dim);font-style:italic}.lobby-actions{display:flex;gap:12px}.lobby-actions .menu-btn{flex:1;text-align:center}.room-select-actions{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.room-select-actions>.menu-btn{width:100%;text-align:center}.room-join-row{display:flex;gap:10px}.room-code-input{flex:1;padding:14px 18px;font-size:22px;font-weight:800;font-family:var(--font-mono);letter-spacing:6px;text-transform:uppercase;background:#0006;border:2px solid rgba(0,204,255,.25);border-radius:var(--radius);color:var(--accent);text-align:center;caret-color:var(--accent);outline:none;transition:border-color .2s}.room-code-input::placeholder{color:var(--text-dim);font-size:14px;letter-spacing:3px}.room-code-input:focus{border-color:var(--accent);box-shadow:0 0 20px var(--accent-glow)}.room-error{padding:8px 14px;background:#ff44551f;border:1px solid rgba(255,68,85,.25);border-radius:8px;color:var(--danger);font-size:13px;font-weight:600;text-align:center}#hud-screen{position:fixed;inset:0;z-index:15;pointer-events:none;display:flex;flex-direction:column;justify-content:space-between}#hud-screen.hidden{display:none}.hud-top{display:flex;justify-content:space-between;align-items:flex-start;padding:12px 20px;gap:16px}.hud-right{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.hud-bottom{display:flex;justify-content:center;align-items:flex-end;padding:12px 20px}.hud-timer{background:var(--bg-panel);border:1px solid rgba(0,204,255,.2);border-radius:8px;padding:8px 20px;font-family:var(--font-mono);font-size:26px;font-weight:700;color:var(--accent);letter-spacing:3px;text-shadow:0 0 12px var(--accent-glow);box-shadow:0 0 16px #0006}.hud-speed{background:var(--bg-panel);border:1px solid rgba(255,255,255,.08);border-radius:6px;padding:4px 14px;font-family:var(--font-mono);font-size:14px;font-weight:600;color:var(--text-dim);letter-spacing:1px}.hud-leaderboard{background:var(--bg-panel);border:1px solid rgba(0,204,255,.12);border-radius:10px;padding:0;min-width:200px;overflow:hidden;box-shadow:0 0 20px #0006}.hud-lb-header{display:flex;justify-content:space-between;align-items:center;padding:6px 12px;background:#00ccff0f;border-bottom:1px solid rgba(0,204,255,.08)}.hud-lb-title{font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--accent)}.hud-lb-count{font-size:10px;font-family:var(--font-mono);color:var(--text-dim)}.hud-leaderboard .hud-player{display:flex;align-items:center;gap:8px;padding:5px 12px;font-size:13px;font-weight:600;color:var(--text-dim);border-bottom:1px solid rgba(255,255,255,.04);transition:background .3s ease,color .3s ease}.hud-leaderboard .hud-player:last-child{border-bottom:none}.hud-leaderboard .hud-player.you{background:#00ccff0f}.hud-leaderboard .hud-player.finished{color:var(--success);background:#44ff660d}.hud-leaderboard .hud-player .hud-rank{font-family:var(--font-mono);font-size:11px;font-weight:800;color:var(--text-dim);width:18px;text-align:center}.hud-leaderboard .hud-player .hud-rank.gold{color:gold;text-shadow:0 0 6px rgba(255,215,0,.5)}.hud-leaderboard .hud-player .hud-rank.silver{color:silver;text-shadow:0 0 6px rgba(192,192,192,.4)}.hud-leaderboard .hud-player .hud-rank.bronze{color:#cd7f32;text-shadow:0 0 6px rgba(205,127,50,.4)}.hud-leaderboard .hud-player .hud-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hud-leaderboard .hud-player .hud-pos{font-family:var(--font-mono);color:var(--accent);font-size:12px}.hud-leaderboard .hud-player .hud-status{font-size:11px;font-style:italic}.hud-progress-wrap{position:absolute;bottom:52px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:10px;width:320px}.hud-progress-bar{flex:1;height:4px;background:var(--accent);border-radius:2px;box-shadow:0 0 10px var(--accent-glow);transition:width .3s ease}.hud-progress-wrap:before{content:"";position:absolute;left:0;right:0;top:-4px;height:4px;background:#ffffff0a;border-radius:3px;z-index:-1}.hud-progress-label{font-family:var(--font-mono);font-size:11px;color:var(--text-dim);min-width:36px;text-align:right}.hud-hint{background:var(--bg-panel);border:1px solid rgba(255,255,255,.08);border-radius:6px;padding:6px 18px;font-size:13px;font-family:var(--font-mono);color:var(--text-dim);letter-spacing:1px;text-align:center}#results-screen{position:fixed;inset:0;z-index:25;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,#0a0c1ebf,#000000e6);pointer-events:auto;animation:results-fade-in .5s ease}@keyframes results-fade-in{0%{opacity:0}to{opacity:1}}@keyframes results-slide-up{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.results-panel{background:var(--bg-panel);border:1px solid rgba(0,204,255,.18);border-radius:16px;padding:40px 48px;min-width:420px;max-width:520px;box-shadow:0 0 60px #00000080,inset 0 1px #ffffff0a;animation:results-slide-up .4s ease .1s both}.results-header{text-align:center;margin-bottom:24px}.results-title{font-size:28px;font-weight:900;letter-spacing:4px;text-transform:uppercase;color:var(--accent);text-shadow:0 0 30px var(--accent-glow),0 0 60px var(--accent-glow);margin-bottom:4px}.results-track-name{font-size:12px;font-family:var(--font-mono);color:var(--text-dim);letter-spacing:2px;text-transform:uppercase}.results-winner{text-align:center;padding:20px 0;background:#00ccff0d;border:1px solid rgba(0,204,255,.12);border-radius:12px;margin-bottom:16px}.results-winner-icon{display:block;font-size:32px;color:gold;text-shadow:0 0 20px rgba(255,215,0,.5);margin-bottom:6px;animation:results-winner-pulse 1.5s ease-in-out infinite}@keyframes results-winner-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.9}}.results-winner-label{display:block;font-size:10px;font-family:var(--font-mono);color:var(--text-dim);letter-spacing:4px;text-transform:uppercase;margin-bottom:6px}.results-winner-name{display:block;font-size:22px;font-weight:800;color:var(--text);letter-spacing:1px;margin-bottom:4px}.results-winner-time{display:block;font-size:16px;font-family:var(--font-mono);font-weight:700;color:var(--accent);letter-spacing:2px}.results-divider{height:1px;background:linear-gradient(90deg,transparent,rgba(0,204,255,.15),transparent);margin:16px 0}.results-standings{display:flex;flex-direction:column;gap:6px;margin-bottom:28px}.results-row{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:8px;font-size:14px;font-weight:600}.results-row:nth-child(1){background:#ffd70014;border:1px solid rgba(255,215,0,.15)}.results-row:nth-child(2){background:#c0c0c00f;border:1px solid rgba(192,192,192,.12)}.results-row:nth-child(3){background:#cd7f320f;border:1px solid rgba(205,127,50,.12)}.results-row:nth-child(n+4){background:#6a7a900a;border:1px solid rgba(106,122,144,.08)}.results-row.you{box-shadow:0 0 0 1px #0cf3}.results-rank{font-family:var(--font-mono);font-size:16px;font-weight:800;width:28px;text-align:center}.results-rank.gold{color:gold}.results-rank.silver{color:silver}.results-rank.bronze{color:#cd7f32}.results-rank.normal{color:var(--text-dim)}.results-player-name{flex:1;color:var(--text);letter-spacing:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.results-player-time{font-family:var(--font-mono);font-weight:700;color:var(--accent);letter-spacing:1px}.results-player-dnf{font-family:var(--font-mono);font-size:12px;color:var(--danger);font-style:italic}.results-medal{text-align:center;font-size:15px;font-weight:700;color:#ffd75e;padding:6px 12px;letter-spacing:.5px}.results-actions{display:flex;align-items:center;gap:12px}.results-actions .menu-btn{flex:1;text-align:center;padding-left:16px;padding-right:16px}.pf-status{position:fixed;top:8px;right:12px;z-index:30;background:var(--bg-panel);border:1px solid rgba(0,204,255,.15);border-radius:6px;padding:4px 12px;font-family:var(--font-mono);font-size:11px;color:var(--text-dim);letter-spacing:.5px;pointer-events:none}.pf-status.connected{color:var(--success);border-color:#44ff6640}.pf-status.error{color:var(--danger);border-color:#ff445540}#matchmaking-screen{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,#0a0c1eb3,#000000d9);z-index:22}.matchmaking-panel{background:var(--bg-panel);border:1px solid rgba(0,204,255,.18);border-radius:16px;padding:40px 48px;min-width:420px;max-width:520px;box-shadow:0 0 60px #00000080,inset 0 1px #ffffff0a}.matchmaking-title{font-size:24px;font-weight:800;letter-spacing:3px;text-transform:uppercase;color:var(--accent);text-align:center;margin-bottom:8px}.matchmaking-subtitle{font-size:12px;font-family:var(--font-mono);color:var(--text-dim);letter-spacing:2px;text-transform:uppercase;text-align:center;margin-bottom:24px}.matchmaking-error{background:#ff44551a;border:1px solid rgba(255,68,85,.25);border-radius:8px;padding:10px 16px;font-size:13px;color:var(--danger);text-align:center;margin-bottom:16px}.matchmaking-content{margin-bottom:24px}.matchmaking-actions{display:flex;gap:12px}.matchmaking-actions .mm-btn{flex:1}.mm-btn{padding:12px 24px;font-size:15px;font-weight:700;letter-spacing:2px;text-transform:uppercase;border:2px solid var(--accent);border-radius:var(--radius);cursor:pointer;transition:all .2s ease;font-family:var(--font);text-align:center}.mm-btn.primary{background:#00ccff14;color:var(--accent);border-color:var(--accent)}.mm-btn.primary:hover{background:var(--accent);color:var(--bg-dark);box-shadow:0 0 30px var(--accent-glow)}.mm-btn.secondary{background:#6a7a900f;color:var(--text-dim);border-color:var(--text-dim)}.mm-btn.secondary:hover{border-color:var(--text);color:var(--text);background:#c8d2dc1f}.mm-btn.danger{background:#ff44550f;color:var(--danger);border-color:var(--danger)}.mm-btn.danger:hover{background:var(--danger);color:#fff;box-shadow:0 0 20px #f456}.mm-option-btn{display:flex;flex-direction:column;align-items:flex-start;width:100%;padding:16px;margin-bottom:10px;background:#00ccff0a;border:1px solid rgba(0,204,255,.12);border-radius:10px;cursor:pointer;transition:all .2s ease;font-family:var(--font);text-align:left;color:var(--text)}.mm-option-btn:hover{background:#00ccff1a;border-color:var(--accent);box-shadow:0 0 20px #00ccff1a}.mm-option-btn.solo{background:#44ff660a;border-color:#44ff6640}.mm-option-btn.solo:hover{background:#44ff661a;border-color:var(--success);box-shadow:0 0 20px #44ff6626}.mm-option-btn.solo .mm-option-label{color:var(--success)}.mm-option-icon{font-size:22px;margin-bottom:4px}.mm-option-label{font-size:15px;font-weight:700;letter-spacing:1px;color:var(--accent);margin-bottom:2px}.mm-option-desc{font-size:12px;color:var(--text-dim)}.mm-join-row{display:flex;gap:8px;margin-top:4px}.mm-code-input{flex:1;padding:12px 16px;font-size:18px;font-family:var(--font-mono);font-weight:700;letter-spacing:6px;text-transform:uppercase;text-align:center;background:#0000004d;border:1px solid rgba(106,122,144,.2);border-radius:var(--radius);color:var(--text);outline:none;transition:border-color .2s ease}.mm-code-input:focus{border-color:var(--accent);box-shadow:0 0 10px #00ccff26}.mm-code-input::placeholder{color:var(--text-dim);letter-spacing:2px;font-size:13px;font-weight:400}.mm-spinner{display:flex;justify-content:center;margin:20px 0}.mm-spinner-ring{width:48px;height:48px;border:3px solid rgba(0,204,255,.15);border-top-color:var(--accent);border-radius:50%;animation:mm-spin .8s linear infinite}@keyframes mm-spin{to{transform:rotate(360deg)}}.mm-searching-text{text-align:center;font-size:13px;color:var(--text-dim);margin-top:8px;font-family:var(--font-mono);letter-spacing:1px}.mm-room-code-display{text-align:center;margin-bottom:20px}.mm-room-code-label{display:block;font-size:11px;font-family:var(--font-mono);color:var(--text-dim);letter-spacing:3px;text-transform:uppercase;margin-bottom:6px}.mm-room-code-value{display:inline-block;font-size:36px;font-weight:800;font-family:var(--font-mono);letter-spacing:8px;color:var(--success);background:#44ff6614;padding:8px 28px;border-radius:10px;border:1px solid rgba(68,255,102,.2)}.mm-player-list{display:flex;flex-direction:column;gap:8px}.mm-player-slot{padding:10px 16px;border-radius:8px;font-size:15px;font-weight:600;letter-spacing:1px}.mm-player-slot.local{background:#00ccff26;border:1px solid rgba(0,204,255,.3);color:var(--accent)}.mm-player-slot:not(.local):not(.empty){background:#00ccff0f;border:1px solid rgba(0,204,255,.12);color:var(--text)}.mm-player-slot.empty{background:#6a7a900f;border:1px dashed rgba(106,122,144,.15);color:var(--text-dim);font-style:italic}#editor-screen{position:fixed;top:0;right:0;z-index:25;pointer-events:none}#editor-screen.hidden{display:none}.editor-exit-bar{padding:10px 16px;pointer-events:auto}.editor-exit-btn{padding:8px 20px;font-size:13px;font-weight:700;letter-spacing:2px;text-transform:uppercase;border:2px solid var(--danger);background:#ff445514;color:var(--danger);border-radius:var(--radius);cursor:pointer;transition:all .2s ease;font-family:var(--font)}.editor-exit-btn:hover{background:var(--danger);color:#fff;box-shadow:0 0 20px #f456}#track-select-screen{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,#0a0c1eb3,#000000d9);z-index:22}.track-select-panel{background:var(--bg-panel);border:1px solid rgba(0,204,255,.18);border-radius:16px;padding:40px 48px;min-width:420px;max-width:520px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 0 60px #00000080,inset 0 1px #ffffff0a}.track-select-title{font-size:24px;font-weight:800;letter-spacing:3px;text-transform:uppercase;color:var(--accent);text-align:center;margin-bottom:4px}.track-select-subtitle{font-size:12px;font-family:var(--font-mono);color:var(--text-dim);letter-spacing:2px;text-transform:uppercase;text-align:center;margin-bottom:16px}.track-select-tabs{display:flex;gap:0;margin-bottom:16px;border-bottom:1px solid rgba(255,255,255,.08)}.track-tab{flex:1;padding:10px 16px;font-size:13px;font-weight:700;letter-spacing:2px;text-transform:uppercase;border:none;background:transparent;color:var(--text-dim);cursor:pointer;transition:all .2s ease;font-family:var(--font);border-bottom:2px solid transparent;margin-bottom:-1px}.track-tab:hover{color:var(--text);background:#00ccff0a}.track-tab.active{color:var(--accent);border-bottom-color:var(--accent);background:#00ccff0f}.track-select-status{font-size:12px;font-family:var(--font-mono);text-align:center;padding:8px 12px;border-radius:6px;margin-bottom:8px}.track-select-status:not(.track-status-error):not(.track-status-success){color:var(--text-dim);background:#00ccff0f;border:1px solid rgba(0,204,255,.1)}.track-status-error{color:var(--danger);background:#ff445514;border:1px solid rgba(255,68,85,.15)}.track-status-success{color:var(--success);background:#44ff6614;border:1px solid rgba(68,255,102,.15)}.track-select-list{display:flex;flex-direction:column;gap:8px;overflow-y:auto;max-height:50vh;margin-bottom:20px;padding-right:4px}.track-select-card{display:flex;align-items:center;gap:12px;padding:14px 16px;background:#00ccff0a;border:1px solid rgba(0,204,255,.1);border-radius:10px;cursor:pointer;transition:all .15s ease}.track-select-card:hover{background:#00ccff1a;border-color:#00ccff4d}.track-select-card.selected{background:#00ccff26;border-color:var(--accent);box-shadow:0 0 16px #00ccff1f}.track-card-icon{font-size:20px;width:32px;text-align:center;flex-shrink:0}.track-card-info{flex:1}.track-card-name{font-size:15px;font-weight:700;color:var(--text);letter-spacing:1px}.track-card-meta{font-size:11px;font-family:var(--font-mono);color:var(--text-dim);margin-top:2px}.track-upload-btn,.track-download-btn{background:#00ccff14;border:1px solid rgba(0,204,255,.2);border-radius:6px;color:var(--accent);font-size:16px;width:36px;height:36px;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center;flex-shrink:0}.track-upload-btn:hover,.track-download-btn:hover{background:var(--accent);color:var(--bg-dark);box-shadow:0 0 12px var(--accent-glow)}.track-download-btn:disabled{background:#44ff661a;border-color:#44ff664d;cursor:default}.track-select-actions{display:flex;gap:12px}.track-select-actions .menu-btn{flex:1;text-align:center}#editor-ui{position:fixed;bottom:0;left:0;right:0;z-index:20;pointer-events:none;font-family:var(--font)}.editor-toolbar{display:flex;align-items:center;justify-content:center;gap:0;padding:10px 20px;background:var(--bg-panel);border-top:1px solid rgba(0,204,255,.12);flex-wrap:wrap}.editor-section{display:flex;align-items:center;gap:6px;padding:0 10px}.editor-section-label{font-size:9px;font-family:var(--font-mono);color:var(--text-dim);letter-spacing:2px;text-transform:uppercase;margin-right:4px}.editor-btns-row{display:flex;gap:4px;align-items:center;flex-wrap:wrap}.editor-divider{width:1px;height:28px;background:#ffffff14;margin:0 6px}.editor-btn{pointer-events:auto;padding:6px 14px;font-size:12px;font-weight:600;letter-spacing:1px;text-transform:uppercase;border:1px solid rgba(255,255,255,.12);background:#ffffff0a;color:var(--text-dim);border-radius:6px;cursor:pointer;transition:all .15s ease;font-family:var(--font);line-height:1}.editor-btn:hover{background:#ffffff1a;color:var(--text);border-color:#ffffff40}.editor-block-btn{height:38px;padding:0 8px;display:flex;align-items:center;gap:6px;border-radius:4px}.editor-block-btn .editor-btn-swatch{width:10px;height:10px;border-radius:3px;flex-shrink:0}.editor-block-btn .editor-btn-name{font-size:9px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--text-dim);white-space:nowrap}.editor-block-btn .editor-btn-hotkey{font-size:9px;font-weight:700;font-family:var(--font-mono);color:var(--text-dim);opacity:.55}.editor-btn-active .editor-btn-name{color:var(--accent)!important}.editor-btn-active{background:#00ccff26!important;border-color:var(--accent)!important;color:var(--accent)!important}.editor-btn-active .editor-btn-hotkey{color:var(--accent)!important}.track-code-row{display:flex;gap:8px;align-items:center;margin-bottom:10px}.track-code-row .editor-input{flex:1;text-transform:uppercase}.settings-slider{flex:1;min-width:120px;accent-color:var(--accent);cursor:pointer}.editor-btn-erase-active{background:#f453!important;border-color:var(--danger)!important;color:var(--danger)!important}.editor-btn-lava-active{background:#ff641e40!important;border-color:#f62!important;color:#f84!important}.editor-btn-danger{border-color:#f453;color:var(--danger)}.editor-btn-danger:hover{background:#ff445526;border-color:var(--danger)}.editor-btn-primary{background:#00ccff1f;border-color:var(--accent);color:var(--accent)}.editor-btn-primary:hover{background:var(--accent);color:var(--bg-dark)}.editor-rotation-label{font-family:var(--font-mono);font-size:13px;font-weight:700;color:var(--warning);min-width:32px;text-align:center}.editor-section-info .editor-count{font-family:var(--font-mono);font-size:12px;color:var(--text-dim);letter-spacing:1px}.editor-status{pointer-events:auto;text-align:center;padding:5px 20px;font-size:10px;font-family:var(--font-mono);color:var(--text-dim);letter-spacing:.5px;background:#0006}.editor-toast{position:fixed;bottom:80px;left:50%;transform:translate(-50%);background:var(--bg-panel);border:1px solid var(--accent);border-radius:8px;padding:8px 24px;font-size:13px;font-weight:600;color:var(--accent);z-index:30;opacity:0;transition:opacity .2s ease;pointer-events:none}.editor-toast-visible{opacity:1}.editor-overlay{position:fixed;inset:0;z-index:30;display:flex;align-items:center;justify-content:center;background:#0009;pointer-events:auto}.editor-overlay-box{background:var(--bg-panel);border:1px solid rgba(0,204,255,.18);border-radius:14px;padding:28px 32px;min-width:300px;max-width:400px;box-shadow:0 0 60px #0009}.editor-overlay-box-lg{min-width:360px;max-width:480px;max-height:70vh;display:flex;flex-direction:column}.editor-overlay-title{font-size:16px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--accent);margin-bottom:20px;text-align:center}.editor-input{width:100%;padding:10px 14px;font-size:15px;font-family:var(--font-mono);background:#0006;border:1px solid rgba(255,255,255,.12);border-radius:8px;color:var(--text);outline:none;caret-color:var(--accent);transition:border-color .2s;margin-bottom:16px;box-sizing:border-box}.editor-input::placeholder{color:var(--text-dim);font-size:13px}.editor-input:focus{border-color:var(--accent);box-shadow:0 0 12px var(--accent-glow)}.editor-overlay-btns{display:flex;gap:8px;justify-content:flex-end}.editor-load-list{flex:1;overflow-y:auto;margin-bottom:16px;max-height:40vh}.editor-load-row{padding:10px 14px;border:1px solid rgba(255,255,255,.06);border-radius:8px;margin-bottom:6px;cursor:pointer;transition:all .15s ease;display:flex;justify-content:space-between;align-items:center}.editor-load-row:hover{background:#00ccff14;border-color:#0cf3}.editor-load-name{font-size:14px;font-weight:600;color:var(--text);letter-spacing:1px}.editor-load-meta{font-size:11px;font-family:var(--font-mono);color:var(--text-dim)}.editor-load-empty{text-align:center;padding:24px;font-size:13px;color:var(--text-dim);font-style:italic}#tutorial-overlay{position:fixed;inset:0;z-index:30;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,#0a0c1ecc,#000000eb);pointer-events:auto;animation:tutorial-fade-in .4s ease}@keyframes tutorial-fade-in{0%{opacity:0}to{opacity:1}}.tutorial-panel{background:var(--bg-panel);border:1px solid rgba(0,204,255,.18);border-radius:16px;padding:40px 48px;min-width:420px;max-width:520px;box-shadow:0 0 60px #00000080,inset 0 1px #ffffff0a;animation:tutorial-slide-up .4s ease .1s both}@keyframes tutorial-slide-up{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.tutorial-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.tutorial-title{font-size:24px;font-weight:800;letter-spacing:3px;text-transform:uppercase;color:var(--accent);text-shadow:0 0 30px var(--accent-glow),0 0 60px var(--accent-glow);margin:0}.tutorial-btn-lang{padding:4px 12px;font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;border:1px solid rgba(255,255,255,.12);background:#ffffff0a;color:var(--text-dim);border-radius:6px;cursor:pointer;transition:all .15s ease;font-family:var(--font)}.tutorial-btn-lang:hover{background:#00ccff1a;color:var(--accent);border-color:var(--accent)}.tutorial-dots{display:flex;justify-content:center;gap:8px;margin-bottom:24px}.tutorial-dot{width:8px;height:8px;border-radius:50%;background:#ffffff1f;transition:all .3s ease}.tutorial-dot.active{background:var(--accent);box-shadow:0 0 8px var(--accent-glow);transform:scale(1.3)}.tutorial-dot.done{background:var(--success);box-shadow:0 0 6px #44ff664d}.tutorial-content{text-align:center;margin-bottom:32px}.tutorial-keyhint{display:inline-block;padding:10px 28px;margin-bottom:16px;font-family:var(--font-mono);font-size:22px;font-weight:800;letter-spacing:6px;text-transform:uppercase;color:var(--accent);background:#00ccff14;border:1px solid rgba(0,204,255,.25);border-radius:10px;box-shadow:0 0 20px var(--accent-glow)}.tutorial-body{font-size:15px;line-height:1.6;color:var(--text);letter-spacing:.5px;margin:0;padding:0 12px}.tutorial-actions{display:flex;gap:12px}.tutorial-btn-skip{flex:1;padding:14px 24px;font-size:14px;font-weight:700;letter-spacing:2px;text-transform:uppercase;border:2px solid var(--text-dim);background:#6a7a900f;color:var(--text-dim);border-radius:var(--radius);cursor:pointer;transition:all .2s ease;font-family:var(--font)}.tutorial-btn-skip:hover{border-color:var(--text);color:var(--text);background:#c8d2dc1f}.tutorial-btn-next{flex:1;padding:14px 24px;font-size:14px;font-weight:700;letter-spacing:2px;text-transform:uppercase;border:2px solid var(--accent);background:#00ccff14;color:var(--accent);border-radius:var(--radius);cursor:pointer;transition:all .2s ease;font-family:var(--font)}.tutorial-btn-next:hover{background:var(--accent);color:var(--bg-dark);box-shadow:0 0 30px var(--accent-glow);transform:scale(1.03)}.hud-coins{font-family:var(--font-mono);font-size:16px;font-weight:800;color:gold;text-shadow:0 0 10px rgba(255,215,0,.4);text-align:right;margin-top:4px}#shop-screen{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:#0a0c1e;z-index:30}.shop-panel{width:680px;max-width:94vw;max-height:90vh;overflow-y:auto;background:var(--bg-panel);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:32px;backdrop-filter:blur(12px)}.shop-title{font-size:28px;font-weight:900;letter-spacing:6px;text-transform:uppercase;color:var(--accent);text-shadow:0 0 20px var(--accent-glow);text-align:center;margin-bottom:8px}.shop-balance{font-family:var(--font-mono);font-size:18px;font-weight:700;color:gold;text-align:center;margin-bottom:24px;text-shadow:0 0 8px rgba(255,215,0,.3)}.shop-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px;margin-bottom:24px}.shop-item-card{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:16px;text-align:center;transition:all .2s ease}.shop-item-card:hover{border-color:var(--accent);background:#00ccff0f}.shop-item-card.owned{border-color:#44ff664d;background:#44ff660d}.shop-item-card.active{border-color:gold;background:#ffd7000f;box-shadow:0 0 12px #ffd70026}.shop-item-name{font-size:15px;font-weight:700;color:var(--text);margin-bottom:4px}.shop-item-desc{font-size:11px;color:var(--text-dim);margin-bottom:12px;line-height:1.4}.shop-item-action{min-height:32px;display:flex;align-items:center;justify-content:center}.shop-item-btn{padding:8px 18px;font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;border:none;border-radius:6px;cursor:pointer;font-family:var(--font);transition:all .2s ease;width:100%}.buy-btn{background:#ffd70026;color:gold;border:1px solid rgba(255,215,0,.3)}.buy-btn:hover:not(:disabled){background:gold;color:var(--bg-dark);box-shadow:0 0 16px #ffd7004d}.buy-btn:disabled{opacity:.35;cursor:not-allowed}.equip-btn{background:#00ccff1f;color:var(--accent);border:1px solid rgba(0,204,255,.25)}.equip-btn:hover{background:var(--accent);color:var(--bg-dark);box-shadow:0 0 16px var(--accent-glow)}.shop-item-tag{font-size:11px;font-weight:800;letter-spacing:2px;padding:6px 14px;border-radius:4px}.active-tag{background:#ffd70026;color:gold;border:1px solid rgba(255,215,0,.3)}.shop-close-btn{display:block;width:100%;padding:14px;position:sticky;bottom:0;z-index:2;font-size:14px;font-weight:700;letter-spacing:3px;text-transform:uppercase;border:2px solid var(--text-dim);background:#6a7a900f;color:var(--text-dim);border-radius:var(--radius);cursor:pointer;transition:all .2s ease;font-family:var(--font)}.shop-close-btn:hover{border-color:var(--text);color:var(--text);background:#c8d2dc1f}.shop-confirm-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#000000bf;z-index:35;border-radius:16px}.shop-confirm-panel{background:var(--bg-panel);border:1px solid rgba(255,215,0,.25);border-radius:12px;padding:28px 24px;max-width:360px;width:90%;text-align:center;backdrop-filter:blur(8px)}.shop-confirm-title{font-size:18px;font-weight:800;letter-spacing:3px;color:gold;text-shadow:0 0 12px rgba(255,215,0,.25);margin-bottom:12px}.shop-confirm-text{font-size:14px;color:var(--text-dim);line-height:1.5;margin-bottom:20px}.shop-confirm-btn{padding:10px 24px;font-size:13px;font-weight:700;letter-spacing:2px;text-transform:uppercase;border:none;border-radius:6px;cursor:pointer;font-family:var(--font);transition:all .2s ease;width:100%;margin-bottom:8px}.confirm-accept{background:#ffd70026;color:gold;border:1px solid rgba(255,215,0,.3)}.confirm-accept:hover{background:gold;color:var(--bg-dark);box-shadow:0 0 16px #ffd7004d}.confirm-cancel{background:transparent;color:var(--text-dim);border:1px solid var(--text-dim)}.confirm-cancel:hover{border-color:var(--text);color:var(--text);background:#c8d2dc14}.shop-toast{position:absolute;bottom:24px;left:50%;transform:translate(-50%);padding:10px 24px;font-size:13px;font-weight:600;color:var(--text);background:#00ccff1f;border:1px solid rgba(0,204,255,.3);border-radius:8px;z-index:40;white-space:nowrap;backdrop-filter:blur(6px)}.shop-toast-error{color:#f55;background:#ff55551a;border-color:#ff55554d}.shop-preview-container{width:100%;height:220px;margin-bottom:20px;border-radius:12px;overflow:hidden;border:1px solid rgba(0,204,255,.12);background:radial-gradient(ellipse at center,rgba(0,204,255,.04) 0%,transparent 70%);position:relative}.shop-preview-canvas{width:100%;height:100%;display:block}@keyframes shop-card-enter{0%{opacity:0;transform:translateY(16px) scale(.94)}to{opacity:1;transform:translateY(0) scale(1)}}.shop-item-card{animation:shop-card-enter .35s ease backwards}.shop-item-card.hovered{transform:translateY(-3px) scale(1.03);border-color:var(--accent);box-shadow:0 0 22px #00ccff26}.shop-confirm-overlay{animation:shop-overlay-fade-in .18s ease}@keyframes shop-overlay-fade-in{0%{opacity:0}to{opacity:1}}.shop-confirm-panel{transition:transform .22s ease,opacity .22s ease}.shop-confirm-enter{animation:shop-confirm-pop-in .22s ease both}@keyframes shop-confirm-pop-in{0%{opacity:0;transform:scale(.85) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.shop-confirm-exit{opacity:0!important;transform:scale(.9) translateY(-6px);pointer-events:none}.shop-celebrate{position:fixed;inset:0;z-index:50;pointer-events:none;opacity:0;transition:opacity .3s ease}.shop-celebrate.active{opacity:1}.shop-celebrate-particle{position:absolute;width:10px;height:10px;border-radius:50%;animation:celebrate-burst 1s ease-out forwards}@keyframes celebrate-burst{0%{transform:translate(0) scale(1);opacity:1}60%{opacity:.8}to{transform:translate(var(--dx, 0px),var(--dy, 0px)) scale(.1);opacity:0}}.shop-celebrate-particle:nth-child(odd){--dx: -80px;--dy: -120px}.shop-celebrate-particle:nth-child(2n){--dx: 80px;--dy: -100px}.shop-celebrate-particle:nth-child(3n){--dx: 40px;--dy: -140px}.shop-celebrate-particle:nth-child(4n){--dx: -60px;--dy: -90px}.shop-celebrate-particle:nth-child(5n){--dx: 0px;--dy: -160px}.shop-celebrate-label{position:absolute;top:38%;left:50%;transform:translate(-50%,-50%);font-size:26px;font-weight:900;letter-spacing:3px;text-transform:uppercase;color:gold;text-shadow:0 0 30px rgba(255,215,0,.6),0 0 60px rgba(255,215,0,.3);animation:celebrate-label-pop .5s ease}@keyframes celebrate-label-pop{0%{opacity:0;transform:translate(-50%,-50%) scale(.3)}60%{transform:translate(-50%,-50%) scale(1.15)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.ranking-panel{position:fixed;inset:0;z-index:30;display:flex;flex-direction:column;background:radial-gradient(ellipse at center,#0a0c1eeb,#000000f2);padding:32px 24px;overflow-y:auto}.ranking-header{display:flex;flex-direction:column;align-items:center;gap:16px;margin-bottom:12px}.ranking-header-title{font-size:28px;font-weight:900;letter-spacing:4px;text-transform:uppercase;color:var(--accent);text-shadow:0 0 24px var(--accent-glow);margin:0}.ranking-header-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:center}.ranking-filter-label{display:flex;align-items:center;gap:8px;color:var(--text-dim);font-size:13px;font-family:var(--font-mono);letter-spacing:1px;text-transform:uppercase}.ranking-track-select{padding:6px 10px;border-radius:var(--radius);border:1px solid rgba(106,122,144,.3);background:#101020cc;color:var(--text);font-family:var(--font);font-size:13px;cursor:pointer;min-width:160px}.ranking-track-select:focus{border-color:var(--accent);outline:none;box-shadow:0 0 10px var(--accent-glow)}.ranking-btn{padding:8px 20px;font-size:13px;font-weight:700;letter-spacing:2px;text-transform:uppercase;border:2px solid var(--accent);background:#00ccff14;color:var(--accent);border-radius:var(--radius);cursor:pointer;transition:all .2s ease;font-family:var(--font)}.ranking-btn:hover{background:var(--accent);color:var(--bg-dark);box-shadow:0 0 16px var(--accent-glow)}.ranking-btn.secondary{border-color:var(--text-dim);color:var(--text-dim);background:#6a7a900f}.ranking-btn.secondary:hover{border-color:var(--text);color:var(--text);background:#c8d2dc1f}.ranking-status{text-align:center;font-size:12px;font-family:var(--font-mono);color:var(--text-dim);letter-spacing:1px;margin-bottom:20px}.ranking-standings{max-width:640px;width:100%;margin:0 auto;display:flex;flex-direction:column;gap:2px}.ranking-row{display:flex;align-items:center;padding:10px 16px;border-radius:var(--radius);background:#6a7a900a;transition:background .15s ease}.ranking-row:hover{background:#6a7a901a}.ranking-pos{width:40px;flex-shrink:0;font-size:16px;font-weight:800;font-family:var(--font-mono);text-align:center;color:var(--text-dim)}.ranking-pos.gold{color:gold;text-shadow:0 0 8px rgba(255,215,0,.4)}.ranking-pos.silver{color:silver;text-shadow:0 0 6px rgba(192,192,192,.3)}.ranking-pos.bronze{color:#cd7f32;text-shadow:0 0 6px rgba(205,127,50,.3)}.ranking-name{flex:1;font-size:14px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 12px}.ranking-time{width:90px;flex-shrink:0;text-align:right;font-size:14px;font-family:var(--font-mono);font-weight:700;color:var(--accent)}.ranking-loading,.ranking-empty{text-align:center;padding:32px;font-size:14px;color:var(--text-dim);font-family:var(--font-mono)}#agegate-overlay{position:fixed;inset:0;z-index:40;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,#0a0c1ee0,#000000f2);pointer-events:auto;animation:agegate-fade-in .5s ease}@keyframes agegate-fade-in{0%{opacity:0}to{opacity:1}}.agegate-panel{background:var(--bg-panel);border:1px solid rgba(0,204,255,.18);border-radius:16px;padding:40px 48px;min-width:400px;max-width:480px;box-shadow:0 0 60px #00000080,inset 0 1px #ffffff0a;animation:agegate-slide-up .4s ease .1s both}@keyframes agegate-slide-up{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.agegate-title{font-size:24px;font-weight:900;letter-spacing:3px;text-transform:uppercase;color:var(--accent);text-shadow:0 0 30px var(--accent-glow),0 0 60px var(--accent-glow);text-align:center;margin-bottom:8px}.agegate-subtitle{font-size:14px;font-family:var(--font-mono);color:var(--text-dim);letter-spacing:1px;text-align:center;margin-bottom:20px}.agegate-info{font-size:12px;color:var(--text-dim);line-height:1.5;text-align:center;margin-bottom:28px;padding:12px 16px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:8px}.agegate-form{display:flex;gap:16px;margin-bottom:20px}.agegate-field{flex:1;display:flex;flex-direction:column;gap:6px}.agegate-label{font-size:11px;font-family:var(--font-mono);color:var(--text-dim);letter-spacing:2px;text-transform:uppercase}.agegate-select{padding:12px 14px;font-size:16px;font-weight:600;font-family:var(--font);background:#0006;border:1px solid rgba(255,255,255,.12);border-radius:8px;color:var(--text);cursor:pointer;outline:none;transition:border-color .2s ease;appearance:none;-webkit-appearance:none}.agegate-select:focus{border-color:var(--accent);box-shadow:0 0 12px var(--accent-glow)}.agegate-select option{background:#1a1a2e;color:var(--text)}.agegate-error{padding:8px 14px;background:#ff44551a;border:1px solid rgba(255,68,85,.2);border-radius:8px;color:var(--danger);font-size:13px;font-weight:600;text-align:center;margin-bottom:16px}.agegate-btn-confirm{width:100%;padding:14px 48px;font-size:16px;font-weight:700;letter-spacing:3px;text-transform:uppercase;border:2px solid var(--accent);background:#00ccff14;color:var(--accent);border-radius:var(--radius);cursor:pointer;transition:all .2s ease;font-family:var(--font)}.agegate-btn-confirm:hover{background:var(--accent);color:var(--bg-dark);box-shadow:0 0 30px var(--accent-glow);transform:scale(1.02)}.agegate-footer{margin-top:16px;font-size:10px;color:var(--text-dim);text-align:center;line-height:1.4;font-style:italic}#coppa-consent-overlay{position:fixed;inset:0;z-index:45;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,#0a0c1ee6,#000000f5);pointer-events:auto;animation:coppa-fade-in .5s ease}@keyframes coppa-fade-in{0%{opacity:0}to{opacity:1}}.coppa-consent-panel{background:var(--bg-panel);border:1px solid rgba(255,170,34,.22);border-radius:16px;padding:40px 48px;min-width:420px;max-width:540px;box-shadow:0 0 60px #00000080,inset 0 1px #ffffff0a;animation:agegate-slide-up .4s ease .1s both}.coppa-consent-title{font-size:22px;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:var(--warning);text-shadow:0 0 24px rgba(255,170,34,.3);text-align:center;margin-bottom:12px}.coppa-consent-icon{text-align:center;font-size:40px;margin-bottom:16px}.coppa-consent-icon.sent{color:var(--success)}.coppa-consent-body{font-size:13px;color:var(--text-dim);line-height:1.6;margin-bottom:24px;text-align:left}.coppa-consent-body p{margin-bottom:10px}.coppa-consent-body strong{color:var(--text)}.coppa-consent-email-display{font-size:16px;font-weight:700;font-family:var(--font-mono);color:var(--accent);text-align:center;padding:10px 16px;background:#00ccff0f;border:1px solid rgba(0,204,255,.15);border-radius:8px;letter-spacing:1px;margin:8px 0 12px;word-break:break-all}.coppa-consent-form{margin-bottom:20px}.coppa-consent-label{display:block;font-size:11px;font-family:var(--font-mono);color:var(--text-dim);letter-spacing:2px;text-transform:uppercase;margin-bottom:8px}.coppa-consent-input{width:100%;padding:12px 16px;font-size:15px;font-family:var(--font);background:#0006;border:1px solid rgba(255,255,255,.12);border-radius:8px;color:var(--text);outline:none;caret-color:var(--accent);transition:border-color .2s ease;box-sizing:border-box}.coppa-consent-input::placeholder{color:var(--text-dim);font-size:13px}.coppa-consent-input:focus{border-color:var(--accent);box-shadow:0 0 12px var(--accent-glow)}.coppa-consent-error{padding:8px 14px;background:#ff44551a;border:1px solid rgba(255,68,85,.2);border-radius:8px;color:var(--danger);font-size:12px;font-weight:600;text-align:center;margin-top:8px}.coppa-consent-actions{display:flex;flex-direction:column;gap:10px}.coppa-consent-btn{width:100%;padding:12px 24px;font-size:14px;font-weight:700;letter-spacing:2px;text-transform:uppercase;border-radius:var(--radius);cursor:pointer;transition:all .2s ease;font-family:var(--font);text-align:center}.coppa-consent-btn.primary{border:2px solid var(--warning);background:#ffaa2214;color:var(--warning)}.coppa-consent-btn.primary:hover{background:var(--warning);color:var(--bg-dark);box-shadow:0 0 24px #ffaa2259;transform:scale(1.02)}.coppa-consent-btn.secondary{border:2px solid var(--text-dim);background:#6a7a900f;color:var(--text-dim)}.coppa-consent-btn.secondary:hover{border-color:var(--text);color:var(--text);background:#c8d2dc1f}.coppa-consent-btn.link{border:none;background:transparent;color:var(--text-dim);font-size:12px;letter-spacing:1px;text-decoration:underline;text-underline-offset:3px}.coppa-consent-btn.link:hover{color:var(--text)}#settings-overlay{position:fixed;inset:0;z-index:35;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,#0a0c1ed1,#000000e6);pointer-events:auto;animation:settings-fade-in .3s ease}@keyframes settings-fade-in{0%{opacity:0}to{opacity:1}}.settings-panel{background:var(--bg-panel);border:1px solid rgba(0,204,255,.18);border-radius:16px;padding:40px 48px;min-width:400px;max-width:500px;box-shadow:0 0 60px #00000080,inset 0 1px #ffffff0a;animation:settings-slide-up .3s ease .05s both}@keyframes settings-slide-up{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.settings-title{font-size:24px;font-weight:800;letter-spacing:3px;text-transform:uppercase;color:var(--accent);text-shadow:0 0 24px var(--accent-glow);text-align:center;margin-bottom:28px}.settings-section{display:flex;align-items:center;gap:12px;padding:16px 0}.settings-label{font-size:13px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--text);min-width:80px}.settings-value{flex:1;font-size:12px;font-family:var(--font-mono);color:var(--text-dim);letter-spacing:.5px}.settings-btn{padding:8px 16px;font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;border:1px solid rgba(255,255,255,.12);background:#ffffff0a;color:var(--text-dim);border-radius:6px;cursor:pointer;transition:all .15s ease;font-family:var(--font);white-space:nowrap}.settings-btn:hover{background:#ffffff1a;color:var(--text);border-color:#ffffff40}.settings-btn.primary{border-color:var(--accent);color:var(--accent);background:#00ccff14}.settings-btn.primary:hover{background:var(--accent);color:var(--bg-dark);box-shadow:0 0 16px var(--accent-glow)}.settings-select{flex:1;padding:8px 12px;font-size:12px;font-weight:600;font-family:var(--font-mono);color:var(--text);background:#ffffff0d;border:1px solid rgba(255,255,255,.15);border-radius:6px;cursor:pointer;outline:none;appearance:none}.settings-select:focus{border-color:var(--accent);box-shadow:0 0 0 2px #00ccff26}.settings-select option{background:var(--bg-dark);color:var(--text)}.settings-checkbox{width:18px;height:18px;accent-color:var(--accent);cursor:pointer}.settings-divider{height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.06),transparent);margin:0}.settings-actions{display:flex;gap:12px;margin-top:28px}.settings-actions .menu-btn{flex:1;text-align:center}@media(max-width:480px){.results-panel,.track-select-panel,.lobby-panel,.matchmaking-panel{min-width:unset;width:94vw;padding:24px 20px}}#touch-controls{position:fixed;inset:0;z-index:15;touch-action:none}.touch-stick-base{position:absolute;left:18%;top:70%;width:140px;height:140px;margin:-70px 0 0 -70px;border-radius:50%;background:#ffffff0f;border:2px solid rgba(0,204,255,.25);opacity:.55}.touch-stick-base.active{opacity:.9;border-color:#0cf9}.touch-stick-knob{position:absolute;left:50%;top:50%;width:58px;height:58px;border-radius:50%;background:#00ccff59;border:2px solid rgba(0,204,255,.7);transform:translate(-50%,-50%)}.touch-jump-btn{position:absolute;right:7%;bottom:12%;width:110px;height:110px;border-radius:50%;background:#44ff6624;border:3px solid rgba(68,255,102,.5);color:#44ff66e6;font-size:44px;font-weight:800;display:flex;align-items:center;justify-content:center;user-select:none;-webkit-user-select:none}.touch-jump-btn.active{background:#44ff6659;transform:scale(.93)}
