.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}:root[data-high-contrast=true]{--text: #ffffff;--text2: #e8ecf5;--text3: #c3cadd;--border: rgba(255, 255, 255, .35);--border-2: rgba(255, 255, 255, .35);--border-bright: rgba(255, 255, 255, .6);--border-hot: rgba(255, 255, 255, .6);--glass: rgba(255, 255, 255, .08);--glass-2: rgba(255, 255, 255, .14);--gold: #ffe14d;--accent-2: #57ffab;--red-2: #ff6b7a}:root[data-high-contrast=true] .screen-title,:root[data-high-contrast=true] .menu-title{background:none;-webkit-background-clip:initial;background-clip:initial;color:#fff}:root[data-colorblind=true]{--gold: #ffb84d;--accent-2: #4d9dff;--red-2: #ff7a4d}:root[data-colorblind-mode=protanopia]{--gold: #ffc14d;--accent-2: #6db7ff;--red-2: #ff8a4d;--green: #5ad67a}:root[data-colorblind-mode=tritanopia]{--gold: #ffd24d;--accent-2: #ff8ad6;--red-2: #ff6b4d;--green: #b4e04d}:root[data-large-hud=true]{--scale: 1.22}:root[data-reduced-motion=true] .ambient-particles,:root[data-reduced-motion=true] .splash-orbit,:root[data-reduced-motion=true] .hero-grid,:root[data-reduced-motion=true] .card-env,:root[data-reduced-motion=true] .menu-title-glow,:root[data-reduced-motion=true] .aurora{animation:none!important}@media(prefers-reduced-motion:reduce){.home-road:before,.hero-grid,.aurora,.particle,.menu-title,.splash-hint{animation:none!important}}html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:var(--font-body);overflow:hidden;height:100%}*{box-sizing:border-box}:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:4px}:root[data-keyboard-nav=true] .glass-card:focus-visible,:root[data-keyboard-nav=true] .btn:focus-visible{outline:2px solid var(--gold);box-shadow:var(--glow-gold)}#ui-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-screen)}#ui-root[hidden]{display:none}.screen{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow-y:auto;padding:clamp(16px,3vh,40px) 0;z-index:var(--z-screen);background:radial-gradient(1200px 700px at 70% 20%,rgba(56,189,248,.08),transparent 60%),radial-gradient(900px 600px at 20% 80%,rgba(45,255,154,.05),transparent 55%),var(--bg)}.screen:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;pointer-events:none;opacity:.045;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.screen:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;pointer-events:none;background:radial-gradient(120% 90% at 50% 40%,transparent 55%,rgba(0,0,0,.5) 100%)}.aurora{position:absolute;border-radius:50%;filter:blur(80px);pointer-events:none;z-index:0;opacity:.18;animation:ui-aurora-drift 35s ease-in-out infinite alternate}.aurora--1{width:50vw;height:50vw;top:-15vw;right:-10vw;background:radial-gradient(circle,rgba(56,189,248,.15),transparent 70%)}.aurora--2{width:45vw;height:45vw;bottom:-18vw;left:-8vw;background:radial-gradient(circle,rgba(255,215,0,.08),transparent 70%);animation-duration:42s;animation-delay:-10s}@keyframes ui-aurora-drift{0%{transform:translateZ(0) scale(1)}to{transform:translate3d(-2vw,1.5vh,0) scale(1.05)}}.screen[aria-hidden=true]{display:none}.screen-inner{width:min(1180px,92vw);display:flex;flex-direction:column;gap:clamp(16px,3vh,34px);position:relative;z-index:2}.screen-header{display:flex;align-items:center;gap:14px;margin-bottom:clamp(10px,2vh,22px)}.screen-eyebrow{font-family:var(--font-display);font-size:clamp(11px,1.4vw,14px);letter-spacing:.42em;text-transform:uppercase;color:var(--gold);text-shadow:var(--glow-gold)}.screen-title{font-family:var(--font-display);font-size:clamp(26px,4.5vw,44px);font-weight:800;letter-spacing:.06em;margin:0;background:linear-gradient(180deg,#fff 20%,#8ea1c4 90%);-webkit-background-clip:text;background-clip:text;color:transparent}.screen-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:clamp(10px,2vh,20px)}.btn{--btn-bg: var(--gold);--btn-fg: #10141c;--btn-border: transparent;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-family:var(--font-display);font-weight:700;letter-spacing:.14em;text-transform:uppercase;border:1px solid var(--btn-border);border-radius:var(--radius);background:var(--btn-bg);color:var(--btn-fg);cursor:pointer;position:relative;min-height:44px;transition:transform .12s var(--ease-out),box-shadow .2s var(--ease-out),background .2s var(--ease-out),filter .2s;transform:scale(calc(1 * var(--scale, 1)));-webkit-user-select:none;user-select:none}.btn:hover{filter:brightness(1.12);box-shadow:var(--glow-gold);transform:scale(calc(1.04 * var(--scale, 1)))}.btn:active{transform:scale(calc(.96 * var(--scale, 1)))}.btn:disabled,.btn.is-disabled{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}.btn--primary{background:linear-gradient(135deg,#ffe14d,var(--gold));color:#10141c}.btn--ghost{background:var(--glass);color:var(--text);border-color:var(--border-2)}.btn--ghost:hover{background:var(--glass-2);border-color:var(--border-hot);box-shadow:none}.btn--outline{background:transparent;color:var(--text);border-color:var(--border-hot)}.btn--danger{background:linear-gradient(135deg,#ff6b7a,var(--red-2));color:#fff}.btn--sm{padding:8px 16px;font-size:12px}.btn--md{padding:13px 26px;font-size:14px}.btn--lg{padding:17px 38px;font-size:17px}.btn-icon{font-size:1.15em;line-height:1}.glass-card{position:relative;border-radius:var(--radius-2);background:linear-gradient(160deg,rgba(255,255,255,.05),transparent 42%),var(--glass);border:1px solid var(--border-2);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);overflow:hidden;transition:transform .24s var(--ease-out),border-color .24s var(--ease-out),box-shadow .24s var(--ease-out);display:flex;flex-direction:column}.glass-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;background:linear-gradient(115deg,transparent 20%,rgba(255,255,255,.07) 38%,transparent 56%);transform:translate(-120%);transition:transform .7s var(--ease-out)}.glass-card:hover:before{transform:translate(120%)}.glass-card:hover,.glass-card:focus-visible{transform:translateY(-6px);border-color:var(--border-hot);box-shadow:var(--shadow-modal),var(--glow-accent)}.glass-card.is-selected{border-color:var(--gold);box-shadow:var(--glow-gold),var(--shadow-modal)}.glass-card.is-selected:before{transform:translate(120%)}.card-grid--3:has(.glass-card.is-selected) .glass-card:not(.is-selected),.card-grid--4:has(.glass-card.is-selected) .glass-card:not(.is-selected){opacity:.45;filter:saturate(.6)}.card-grid--3 .glass-card,.card-grid--4 .glass-card{transition:opacity .24s var(--ease-out),filter .24s var(--ease-out),transform .24s var(--ease-out),border-color .24s var(--ease-out),box-shadow .24s var(--ease-out)}.card-grid--3 .glass-card:hover,.card-grid--4 .glass-card:hover,.card-grid--3 .glass-card:focus-visible,.card-grid--4 .glass-card:focus-visible{opacity:1;filter:saturate(1)}.glass-card-preview{height:clamp(90px,16vh,150px);background-size:cover;background-position:center;position:relative;overflow:hidden}.glass-card-preview:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,transparent 30%,rgba(6,8,12,.9))}.glass-card-body{padding:clamp(14px,2vw,20px);display:flex;flex-direction:column;gap:8px;flex:1}.glass-card-badge{align-self:flex-start;font-family:var(--font-display);font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);border:1px solid rgba(255,215,0,.4);padding:4px 10px;border-radius:999px;background:#ffd7000f}.glass-card-title{font-family:var(--font-display);font-size:clamp(17px,2vw,21px);margin:0;letter-spacing:.05em}.glass-card-subtitle{margin:0;color:var(--text2);font-size:13px}.glass-card-description{margin:0;color:var(--text2);font-size:13px;line-height:1.55}.glass-card-meta{display:flex;justify-content:space-between;align-items:baseline;margin:6px 0 0;padding-top:10px;border-top:1px solid var(--border-2)}.glass-card-meta dt{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--text3)}.glass-card-meta dd{margin:0;font-family:var(--font-display);font-size:13px;color:var(--text)}.card-grid{display:grid;gap:clamp(14px,2vw,22px);width:100%}.card-grid--3{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.card-grid--4{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}@media(max-width:640px){.card-grid--3,.card-grid--4{grid-template-columns:1fr;max-height:52vh;overflow-y:auto;padding:4px;scrollbar-width:thin}}.control-method-row{display:flex;flex-direction:column;gap:8px;width:100%;margin-top:4px}.control-method-label{font-family:var(--font-display);font-size:11px;letter-spacing:.3em;color:var(--text3)}.control-method-chips{display:flex;flex-wrap:wrap;gap:8px}.mode-select-hint{font-family:var(--font-body);font-size:12px;letter-spacing:.04em;color:var(--text3);margin-top:2px}.control-chip{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-body);font-size:13px;font-weight:600;letter-spacing:.03em;color:var(--text);background:#ffffff0d;border:1px solid var(--border-2);border-radius:999px;padding:0 16px;min-height:48px;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease,opacity .15s ease}.control-chip:hover:not(.is-unavailable){background:#ffffff17}.control-chip.active{color:var(--gold);border-color:var(--gold);background:#ffd70014}.control-chip:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.control-chip:disabled{opacity:.4}.control-chip.is-unavailable:not(:disabled){opacity:.4;color:var(--text3);cursor:not-allowed;border-style:dashed}.control-chip.is-unavailable .control-chip-pending{margin-left:6px;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}.control-chip.is-pending{border-style:dashed}.panel{border-radius:var(--radius-2);background:linear-gradient(170deg,rgba(255,255,255,.04),transparent 46%),var(--glass);border:1px solid var(--border-2);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);padding:clamp(18px,2.4vw,26px);display:flex;flex-direction:column;gap:12px;box-shadow:0 10px 40px #00000059}.panel-eyebrow{font-family:var(--font-display);font-size:11px;letter-spacing:.34em;text-transform:uppercase;color:var(--gold)}.panel-title{font-family:var(--font-display);font-size:clamp(18px,2.4vw,24px);margin:0}.panel-content{display:flex;flex-direction:column;gap:12px}.panel-footer{border-top:1px solid var(--border-2);padding-top:14px;display:flex;justify-content:flex-end;gap:10px}.loading{display:flex;flex-direction:column;align-items:center;gap:clamp(14px,2.4vh,22px)}.loading-spinner{border-radius:50%;border:3px solid var(--border-2);border-top-color:var(--gold);animation:ui-spin .9s linear infinite}.loading-spinner--sm{width:22px;height:22px}.loading-spinner--md{width:44px;height:44px}.loading-spinner--lg{width:68px;height:68px;border-width:4px}@keyframes ui-spin{to{transform:rotate(360deg)}}.loading-track{width:min(340px,70vw);height:6px;border-radius:999px;background:var(--glass-2);overflow:hidden}.loading-bar{height:100%;width:0%;border-radius:999px;background:linear-gradient(90deg,var(--gold),var(--accent-2));transition:width .3s var(--ease-out);box-shadow:var(--glow-gold)}.loading-label{font-family:var(--font-display);letter-spacing:.3em;text-transform:uppercase;font-size:12px;color:var(--text2);margin:0}.modal-host{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none}.modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#04060ab8;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);pointer-events:auto;padding:20px}.modal-panel{position:relative;max-width:min(520px,92vw);max-height:84vh;overflow:auto;border-radius:var(--radius-2);background:var(--bg-2);border:1px solid var(--border-hot);box-shadow:var(--shadow-modal);padding:clamp(20px,3vw,30px)}.modal-title{font-family:var(--font-display);margin:0 0 14px;font-size:clamp(18px,2.6vw,24px);letter-spacing:.06em}.modal-panel>.btn-icon{position:absolute;top:14px;right:14px;background:none;border:none;color:var(--text2);font-size:24px;cursor:pointer;line-height:1}.modal-panel>.btn-icon:hover{color:var(--text)}.dialog-message{color:var(--text2);line-height:1.6;margin:0 0 18px}.dialog-actions{display:flex;justify-content:flex-end;gap:10px}.toast-host{position:fixed;top:18px;right:18px;z-index:var(--z-toast);display:flex;flex-direction:column;gap:10px;pointer-events:none}.toast{pointer-events:auto;display:flex;flex-direction:column;gap:3px;min-width:240px;max-width:360px;border-radius:var(--radius);background:var(--bg-2);border:1px solid var(--border-hot);padding:13px 16px;cursor:pointer;box-shadow:var(--shadow-modal)}.toast-title{font-family:var(--font-display);font-size:13px;letter-spacing:.1em}.toast-message{font-size:12.5px;color:var(--text2)}.toast--success{border-left:3px solid var(--accent-2)}.toast--error{border-left:3px solid var(--red-2)}.toast--info{border-left:3px solid var(--blue-2)}.toast--warn{border-left:3px solid #ff9f1c}.ambient-particles{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1}.particle{position:absolute;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.4),rgba(56,189,248,.15) 50%,transparent 70%);animation:ui-float linear infinite;opacity:0}@keyframes ui-float{0%{transform:translateY(15vh) scale(1);opacity:0}15%{opacity:.3}85%{opacity:.2}to{transform:translateY(-100vh) scale(.3);opacity:0}}.hero-grid{position:absolute;top:-40%;right:-20%;bottom:-40%;left:-20%;z-index:0;background-image:linear-gradient(rgba(56,189,248,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(56,189,248,.025) 1px,transparent 1px);background-size:72px 72px;transform:perspective(800px) rotateX(58deg);animation:ui-grid-drift 20s linear infinite;pointer-events:none}@keyframes ui-grid-drift{to{transform:perspective(800px) rotateX(58deg) translate3d(0,72px,0)}}.home-road{position:absolute;left:50%;bottom:-4%;width:min(720px,88vw);height:55%;transform:translate(-50%);pointer-events:none;z-index:0;opacity:.22;background:linear-gradient(90deg,transparent 45%,rgba(56,189,248,.06) 45.5%,rgba(56,189,248,.06) 54.5%,transparent 55%),linear-gradient(180deg,transparent 0%,rgba(6,8,12,0) 60%,rgba(6,8,12,.35) 100%);mask-image:linear-gradient(180deg,transparent,black 22%);-webkit-mask-image:linear-gradient(180deg,transparent,black 22%)}.home-road:before{content:"";position:absolute;left:50%;top:-20%;width:2px;height:140%;transform:translate(-50%);background:repeating-linear-gradient(180deg,rgba(255,215,0,.18) 0 18px,transparent 18px 68px);animation:ui-road-flow 1.8s linear infinite;will-change:transform}@keyframes ui-road-flow{0%{transform:translate3d(-50%,0,0)}to{transform:translate3d(-50%,68px,0)}}.screen[aria-hidden=true] .home-road:before,.screen[aria-hidden=true] .hero-grid,.screen[aria-hidden=true] .aurora,.screen[aria-hidden=true] .particle,.screen[aria-hidden=true] .menu-title{animation-play-state:paused}:root[data-reduced-motion=true] .home-road:before{animation:none}.splash-logo{font-family:var(--font-display);font-weight:900;font-size:clamp(34px,8vw,84px);letter-spacing:.18em;text-transform:uppercase;background:linear-gradient(180deg,#ffffff 15%,var(--gold) 85%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 24px rgba(255,215,0,.45));text-align:center;cursor:pointer;-webkit-user-select:none;user-select:none}.splash-tagline{font-family:var(--font-display);letter-spacing:.52em;text-transform:uppercase;font-size:clamp(10px,1.6vw,13px);color:var(--text2);margin-top:6px}.splash-hint{font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:var(--text3);animation:ui-pulse 1.8s ease-in-out infinite}@keyframes ui-pulse{50%{opacity:.35}}.menu-title-wrap{text-align:center;position:relative}.menu-title{font-family:var(--font-display);font-weight:900;font-size:clamp(38px,9vw,96px);letter-spacing:.16em;text-transform:uppercase;line-height:1;background:linear-gradient(180deg,#ffffff 10%,#b9c6e2 55%,var(--gold) 110%);-webkit-background-clip:text;background-clip:text;color:transparent;animation:ui-title-glow 4.5s ease-in-out infinite;margin:0}@keyframes ui-title-glow{0%,to{filter:drop-shadow(0 0 14px rgba(255,215,0,.28))}50%{filter:drop-shadow(0 0 34px rgba(255,215,0,.55))}}.menu-subtitle{font-family:var(--font-display);letter-spacing:.46em;text-transform:uppercase;color:var(--text2);font-size:clamp(10px,1.5vw,13px);margin-top:10px}.menu-actions{display:flex;flex-direction:column;align-items:center;gap:14px;margin-top:clamp(18px,4vh,36px)}.menu-actions .btn{width:min(340px,80vw)}.menu-footer-note{position:absolute;bottom:22px;left:0;right:0;text-align:center;font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--text3);z-index:2}.tab-bar{display:flex;gap:6px;flex-wrap:wrap;border-bottom:1px solid var(--border-2);padding-bottom:12px}.tab{font-family:var(--font-display);font-size:13px;letter-spacing:.16em;text-transform:uppercase;padding:10px 18px;border-radius:999px;border:1px solid transparent;background:transparent;color:var(--text2);cursor:pointer;transition:all .18s var(--ease-out)}.tab:hover{color:var(--text);background:var(--glass)}.tab.is-active{color:#10141c;background:var(--gold);box-shadow:var(--glow-gold)}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 4px;border-bottom:1px solid var(--border-2)}.setting-row:last-child{border-bottom:none}.setting-info strong{font-family:var(--font-display);font-size:14px;letter-spacing:.06em;display:block}.setting-info span{font-size:12.5px;color:var(--text3)}.toggle{position:relative;width:52px;height:28px;flex-shrink:0}.toggle input{opacity:0;width:100%;height:100%;position:absolute;top:0;right:0;bottom:0;left:0;margin:0;cursor:pointer}.toggle-track{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:999px;background:var(--glass-2);border:1px solid var(--border-hot);transition:background .2s var(--ease-out);pointer-events:none}.toggle-track:after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:var(--text2);transition:transform .2s var(--ease-out),background .2s}.toggle input:checked+.toggle-track{background:#ffd70040}.toggle input:checked+.toggle-track:after{transform:translate(24px);background:var(--gold)}.toggle input:focus-visible+.toggle-track{outline:2px solid var(--gold);outline-offset:2px}.slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:min(max(140px,40vw),220px);height:6px;border-radius:999px;background:var(--glass-2);outline:none}.slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:var(--gold);cursor:pointer;box-shadow:var(--glow-gold)}.slider::-moz-range-thumb{width:20px;height:20px;border-radius:50%;border:none;background:var(--gold);cursor:pointer}.input-icon{display:inline-flex;align-items:center;gap:6px;font-size:12px;letter-spacing:.1em;color:var(--text2);border:1px solid var(--border-2);border-radius:999px;padding:4px 11px;background:var(--glass)}.input-icon--gesture{color:var(--accent-2);border-color:#2dff9a66}.difficulty{letter-spacing:2px;font-family:var(--font-display);font-size:12px}.difficulty--1{color:var(--accent-2)}.difficulty--2{color:var(--gold)}.difficulty--3{color:var(--red-2)}:root[data-large-hud=true] .btn,:root[data-large-hud=true] .tab{font-size:1.2em}:root[data-large-hud=true] .glass-card-title{font-size:1.25em}.profile-stats{display:flex;gap:16px;margin-top:12px;flex-wrap:wrap}.stat-box{background:var(--glass-2);border:1px solid var(--border-2);padding:12px 18px;border-radius:8px;min-width:120px;display:flex;flex-direction:column;gap:6px}.stat-label{font-family:var(--font-display);font-size:11px;letter-spacing:.2em;color:var(--text2)}.stat-val{font-size:24px;font-weight:700;font-family:var(--font-display)}.skins-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px;margin-top:16px}.skin-card{background:var(--glass-2);border:1px solid var(--border-2);border-radius:8px;padding:12px;cursor:pointer;transition:all .2s var(--ease-out);display:flex;align-items:center;gap:14px}.skin-card:hover{background:var(--glass);border-color:var(--border-hot)}.skin-card.selected{border-color:var(--gold);background:#ffd7000d}.skin-color{width:40px;height:40px;border-radius:4px;border:2px solid rgba(255,255,255,.1);box-shadow:inset 0 2px 4px #00000080}.skin-info{display:flex;flex-direction:column;gap:4px}.skin-name{font-family:var(--font-display);font-size:13px;letter-spacing:.05em}.skin-status{font-size:11px;color:var(--text2);letter-spacing:.1em}.profile-xprow{margin-top:12px;display:flex;flex-direction:column;gap:6px}.profile-xpbar{height:12px;border-radius:6px;background:#ffffff0f;border:1px solid var(--border-2);overflow:hidden}.profile-xpfill{height:100%;border-radius:6px;background:linear-gradient(90deg,var(--accent-2),var(--gold));transition:width .4s var(--ease-out)}.profile-xptext{font-size:11px;letter-spacing:.08em;color:var(--text2)}.menu-profile{width:min(420px,86vw);margin:18px auto 6px;padding:12px 16px;background:var(--glass);border:1px solid var(--border-2);border-radius:10px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.menu-profile-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.menu-profile-level{font-family:var(--font-display);font-size:15px;font-weight:700;color:var(--text)}.menu-profile-title{font-family:var(--font-display);font-size:11px;letter-spacing:.15em;color:var(--accent-2)}.menu-profile-coins{font-family:var(--font-display);font-size:13px;font-weight:700;color:var(--gold)}.menu-profile-xpbar{height:8px;border-radius:4px;background:#ffffff12;border:1px solid var(--border-2);overflow:hidden;margin:8px 0 6px}.menu-profile-xpfill{height:100%;border-radius:4px;background:linear-gradient(90deg,var(--accent-2),var(--gold))}.menu-profile-meta{font-size:10px;letter-spacing:.1em;color:var(--text2)}.replay-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;flex-direction:column;justify-content:space-between;pointer-events:none}.replay-overlay.hidden{display:none}.replay-overlay>*{pointer-events:auto}.replay-top-bar{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;background:linear-gradient(rgba(10,12,16,.9),transparent)}.replay-title{font-family:var(--font-display);font-size:16px;letter-spacing:.2em;color:var(--text)}.replay-bottom-bar{background:linear-gradient(transparent,#0a0c10f2 20%);padding:24px;display:flex;flex-direction:column;gap:16px}.replay-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:24px}.replay-tool-group{display:flex;align-items:center;gap:8px;background:#0006;padding:8px 12px;border-radius:8px;border:1px solid var(--border-2)}.replay-tool-label{font-family:var(--font-display);font-size:10px;letter-spacing:.1em;color:var(--text2);margin-right:8px}.replay-btn{background:none;border:1px solid transparent;color:var(--text2);font-family:var(--font-display);font-size:12px;letter-spacing:.1em;padding:6px 12px;border-radius:4px;cursor:pointer;transition:all .2s var(--ease-out)}.replay-btn:hover{background:var(--glass);color:var(--text)}.replay-btn.active{background:var(--gold);color:#10141c}.replay-btn.replay-btn-accent{background:var(--accent-2);color:#000;font-weight:700}.replay-slider-wrap{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--text2)}.replay-slider-wrap input{width:60px}@keyframes error-shake{0%,to{transform:translate(0);border-color:var(--red-2)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}:root[data-large-hud=true] .screen-title{font-size:clamp(30px,5.4vw,52px)}:root[data-large-hud=true] .menu-title{font-size:clamp(44px,10.5vw,112px)}:root[data-large-hud=true] .setting-info strong{font-size:1.15em}.phone-pairing{display:flex;flex-direction:column;align-items:center;width:100%}.phone-pairing-card{display:flex;flex-direction:column;align-items:center;gap:14px;padding:clamp(20px,4vw,32px);width:min(460px,92vw);background:#0e1420bf;border:1px solid rgba(0,229,255,.25);box-shadow:0 12px 36px #0000008c,0 0 20px #00e5ff14;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:18px;text-align:center;box-sizing:border-box}.phone-pairing-qr-wrap{background:#fff;padding:10px;border-radius:12px;max-width:min(190px,60vw);flex-shrink:0;box-shadow:0 4px 16px #0006}.phone-pairing-qr-wrap svg,.phone-pairing-qr-wrap img{display:block;width:100%;height:auto}.phone-pairing-code-label{color:var(--text-muted);font-family:var(--ff-hud, "Rajdhani", sans-serif);font-size:12px;font-weight:700;letter-spacing:2px}.phone-pairing-code{color:var(--accent-gold, #ffd700);font-size:clamp(26px,6vw,36px);font-family:var(--ff-display, "Orbitron", monospace);font-weight:800;letter-spacing:6px;text-shadow:0 0 16px rgba(255,215,0,.4);word-break:break-all}.phone-pairing-guide{background:#00e5ff14;border:1px solid rgba(0,229,255,.25);border-radius:10px;padding:10px 14px;width:100%;box-sizing:border-box}.phone-guide-badge{font-family:var(--ff-display, "Orbitron", sans-serif);font-size:10px;font-weight:800;letter-spacing:1.5px;color:var(--accent-cyan, #00e5ff);margin-bottom:4px}.phone-guide-desc{font-size:12px;color:var(--text, #ffffff);line-height:1.4}.phone-guide-desc strong{color:var(--accent-cyan, #00e5ff)}.phone-pairing-status{font-family:var(--ff-hud, "Rajdhani", sans-serif);font-size:15px;font-weight:700;letter-spacing:.5px}.phone-pairing-hint{color:var(--text-muted);font-size:12px;line-height:1.4;max-width:min(420px,85vw)}@media(max-width:1024px){.screen-inner{width:min(960px,94vw)}.card-grid--4{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}}@media(max-width:640px){.card-grid--3,.card-grid--4{grid-template-columns:1fr;max-height:52vh;overflow-y:auto;padding:4px;scrollbar-width:thin}.control-method-chips{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch}.control-chip{white-space:nowrap;flex-shrink:0}.screen-header{flex-wrap:wrap}}@media(max-width:900px)and (max-height:500px){.screen{padding:10px 0}.screen-inner{gap:10px}.screen-header{margin-bottom:8px}.screen-title{font-size:clamp(20px,4vh,28px)}.glass-card-preview{height:64px}.card-grid--3,.card-grid--4{max-height:44vh}.control-method-chips{flex-wrap:nowrap;overflow-x:auto}.menu-actions{margin-top:12px}.phone-pairing-card{padding:12px 16px;gap:10px}.phone-pairing-qr-wrap{max-width:120px}.phone-pairing-code{font-size:22px;letter-spacing:3px}.phone-pairing-hint{font-size:12px}}@media(pointer:coarse){.btn,.tab{min-height:48px}.glass-card,.achievement-card{min-height:120px}}.achievements-summary{display:flex;gap:16px;margin-top:8px;flex-wrap:wrap}.summary-stat{background:var(--glass-2);border:1px solid var(--border-2);padding:12px 18px;border-radius:8px;min-width:110px;display:flex;flex-direction:column;gap:4px;text-align:center}.summary-val{font-size:28px;font-weight:700;font-family:var(--font-display);color:var(--gold)}.summary-lbl{font-family:var(--font-display);font-size:10px;letter-spacing:.15em;color:var(--text2);text-transform:uppercase}.achievements-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin-top:16px}@media(max-width:640px){.achievements-grid{grid-template-columns:1fr;max-height:52vh;overflow-y:auto;padding:4px;scrollbar-width:thin}}.achievement-card{background:var(--glass-2);border:1px solid var(--border-2);border-radius:12px;padding:16px;cursor:pointer;transition:all .2s var(--ease-out);display:flex;align-items:flex-start;gap:16px;position:relative;overflow:hidden}.achievement-card:hover{background:var(--glass);border-color:var(--border-hot);transform:translateY(-2px)}.achievement-card:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.achievement-card.locked{opacity:.55;filter:saturate(.4)}.achievement-card.locked:hover{opacity:.7}.achievement-icon{font-size:32px;flex-shrink:0;width:56px;height:56px;display:flex;align-items:center;justify-content:center;background:var(--glass);border-radius:12px;border:1px solid var(--border-2)}.achievement-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.achievement-name{font-family:var(--font-display);font-size:15px;font-weight:700;letter-spacing:.03em}.achievement-desc{font-size:12px;color:var(--text2);line-height:1.4}.achievement-progress{height:6px;border-radius:3px;background:#ffffff0f;border:1px solid var(--border-2);overflow:hidden;margin-top:8px}.achievement-progress-fill{height:100%;border-radius:3px;background:linear-gradient(90deg,var(--accent-2),var(--gold));transition:width .4s var(--ease-out)}.achievement-progress-text{font-size:11px;color:var(--text2);margin-top:4px;font-family:var(--font-display)}.achievement-category{font-family:var(--font-display);font-size:10px;letter-spacing:.1em;color:var(--text3);text-transform:uppercase;flex-shrink:0;padding-left:12px;border-left:1px solid var(--border-2);margin-left:8px}.leaderboard-notice{display:flex;align-items:center;gap:8px;padding:10px 14px;background:#ffd70014;border:1px solid rgba(255,215,0,.25);border-radius:8px;margin-bottom:8px;font-size:12px;color:var(--gold);font-family:var(--font-display);letter-spacing:.05em}.notice-icon{font-size:14px}.filter-bar{display:flex;align-items:center;gap:12px;margin-bottom:12px;flex-wrap:wrap}.filter-bar select{flex-shrink:0}.leaderboard-table-wrap{overflow-x:auto}.leaderboard-table{width:100%;border-collapse:collapse;font-size:13px}.leaderboard-table th,.leaderboard-table td{padding:12px 14px;text-align:left;border-bottom:1px solid var(--border-2)}.leaderboard-table th{font-family:var(--font-display);font-size:11px;letter-spacing:.1em;color:var(--text2);text-transform:uppercase}.leaderboard-table tbody tr:hover td{background:var(--glass)}.leaderboard-table tbody tr.top-three td{background:#ffd7000d}.rank-col{font-family:var(--font-display);font-weight:700;font-size:15px}.rank-col:before{content:""}.leaderboard-table td:first-child{font-family:var(--font-display);font-weight:600}.score-col{font-family:var(--font-display);font-weight:700;color:var(--gold)}.leaderboard-empty{display:flex;flex-direction:column;align-items:center;gap:12px;padding:48px 24px;text-align:center;color:var(--text2)}.empty-icon{font-size:48px}.empty-title{font-family:var(--font-display);font-size:18px;color:var(--text)}.empty-desc{font-size:13px;max-width:280px}#ui-root,.screen,.screen-inner,.card-grid{max-width:100%;overflow-x:hidden}.profile-hero{display:flex;flex-direction:column;gap:20px}.profile-hero-main{text-align:center}.profile-hero-level{font-family:var(--font-display);font-size:clamp(32px,6vw,56px);font-weight:800;letter-spacing:.05em}.profile-hero-title{font-family:var(--font-display);font-size:clamp(14px,2vw,18px);letter-spacing:.15em;color:var(--accent-2);margin-top:4px}.profile-hero-xpbar{height:14px;border-radius:7px;background:#ffffff0f;border:1px solid var(--border-2);overflow:hidden;margin:16px auto 8px;max-width:400px}.profile-hero-xpfill{height:100%;border-radius:7px;background:linear-gradient(90deg,var(--accent-2),var(--gold));transition:width .4s var(--ease-out)}.profile-hero-xptext{font-size:12px;letter-spacing:.08em;color:var(--text2)}.profile-hero-stats{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}.hero-stat{background:var(--glass-2);border:1px solid var(--border-2);padding:16px 24px;border-radius:12px;min-width:100px;display:flex;flex-direction:column;gap:4px;text-align:center}.hero-stat-val{font-size:28px;font-weight:700;font-family:var(--font-display)}.hero-stat-lbl{font-family:var(--font-display);font-size:10px;letter-spacing:.15em;color:var(--text2);text-transform:uppercase}.title-progression{display:flex;flex-direction:column;gap:10px;margin-top:12px}.title-tier{display:flex;align-items:center;gap:14px;padding:12px 16px;background:var(--glass-2);border:1px solid var(--border-2);border-radius:10px;transition:all .2s var(--ease-out)}.title-tier:hover{border-color:var(--border-hot);background:var(--glass)}.title-tier.locked{opacity:.5}.title-tier.current{border-color:var(--gold);box-shadow:var(--glow-gold)}.tier-icon{font-size:20px;width:36px;text-align:center}.tier-name{font-family:var(--font-display);font-size:14px;font-weight:600;flex:1}.tier-level{font-family:var(--font-display);font-size:12px;color:var(--text2);letter-spacing:.1em}.tier-status{font-family:var(--font-display);font-size:10px;letter-spacing:.1em;color:var(--accent-2);text-transform:uppercase}.next-title-hint{margin-top:8px;padding:12px;background:var(--glass);border:1px solid var(--border-2);border-radius:8px;color:var(--text2);font-size:13px;text-align:center}.records-table-wrap{overflow-x:auto;margin-top:12px}.records-table{width:100%;border-collapse:collapse;font-size:13px}.records-table th,.records-table td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--border-2)}.records-table th{font-family:var(--font-display);font-size:11px;letter-spacing:.1em;color:var(--text2);text-transform:uppercase}.records-table tbody tr:hover td{background:var(--glass)}.records-table td:first-child{font-family:var(--font-display);font-weight:600}.recent-races{display:flex;flex-direction:column;gap:8px;margin-top:12px}.recent-race{display:flex;align-items:center;gap:12px;padding:10px 12px;background:var(--glass-2);border:1px solid var(--border-2);border-radius:8px}.recent-race-id{font-family:var(--font-body);font-size:12px;color:var(--text2);font-variant-numeric:tabular-nums}.recent-race-label{font-family:var(--font-display);font-size:12px;color:var(--text)}.howto-tab-bar{overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px}.howto-tab{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.tab-icon{font-size:16px}.tab-label{font-family:var(--font-display);font-size:12px;letter-spacing:.08em}.howto-content{margin-top:16px}.howto-section{animation:fade-in .22s var(--ease-out)}.howto-header{display:flex;align-items:flex-start;gap:16px;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--border-2)}.howto-icon{font-size:36px;flex-shrink:0}.howto-title{font-family:var(--font-display);font-size:20px;font-weight:700;margin:0 0 6px}.howto-desc{color:var(--text2);font-size:14px;line-height:1.5;margin:0}.howto-controls{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.control-row{display:flex;align-items:center;gap:16px;padding:10px 14px;background:var(--glass-2);border:1px solid var(--border-2);border-radius:8px}.control-keys{font-family:var(--font-display);font-size:13px;font-weight:600;color:var(--gold);background:#ffd70014;border:1px solid rgba(255,215,0,.2);border-radius:6px;padding:4px 10px;min-width:140px;text-align:center}.control-action{color:var(--text);font-size:13px;flex:1}.howto-tips{background:var(--glass);border:1px solid var(--border-2);border-radius:10px;padding:16px}.howto-tips h4{font-family:var(--font-display);font-size:13px;letter-spacing:.1em;color:var(--gold);margin:0 0 10px;text-transform:uppercase}.howto-tips ul{margin:0;padding-left:20px}.howto-tips li{font-size:13px;color:var(--text2);line-height:1.6;margin-bottom:6px}:root{--motion-instant: 50ms;--motion-fast: .12s;--motion-base: .2s;--motion-medium: .28s;--motion-slow: .4s;--motion-cinematic: .7s;--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-in: cubic-bezier(.55, .06, .68, .19);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--ease-snap: cubic-bezier(.12, .8, .32, 1);--stagger-interval: 60ms;--z-screen: 10;--z-header: 20;--z-modal: 100;--z-toast: 200;--z-overlay: 300;--z-hud: 50;--z-ai-hud: 150;--z-ceremony: 200;--z-flash: 250;--bg: #05070b;--bg-elevated: #0a0d13;--surface: #0c0f14;--surface-elevated: #13171e;--glass: rgba(255, 255, 255, .03);--glass-strong: rgba(255, 255, 255, .06);--glass-border: rgba(255, 255, 255, .08);--border: rgba(255, 255, 255, .05);--border-bright: rgba(255, 255, 255, .12);--border-hot: rgba(255, 255, 255, .2);--accent-primary: #00ff66;--accent-primary-dim: rgba(0, 255, 102, .15);--accent-gold: #ffd700;--accent-gold-dim: rgba(255, 215, 0, .15);--accent-cyan: #00e5ff;--accent-cyan-dim: rgba(0, 229, 255, .12);--accent-red: #e10600;--accent-red-dim: rgba(225, 6, 0, .15);--accent-magenta: #ff2d95;--accent-magenta-dim: rgba(255, 45, 149, .12);--text: #ffffff;--text-muted: #8a8e9c;--text-dim: #4a4f5c;--glow-primary: 0 0 24px rgba(0, 255, 102, .4);--glow-gold: 0 0 24px rgba(255, 215, 0, .5);--glow-cyan: 0 0 24px rgba(0, 229, 255, .4);--glow-red: 0 0 24px rgba(225, 6, 0, .4);--glow-magenta: 0 0 24px rgba(255, 45, 149, .4);--shadow-card: 0 8px 32px rgba(0, 0, 0, .4);--shadow-modal: 0 20px 60px rgba(0, 0, 0, .55);--radius-sm: 6px;--radius: 10px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 24px;--radius-pill: 999px;--ff-display: "Orbitron", "Rajdhani", system-ui, sans-serif;--font-display: "Orbitron", "Rajdhani", system-ui, sans-serif;--ff-hud: "Rajdhani", "Share Tech Mono", system-ui, sans-serif;--font-hud: "Rajdhani", "Share Tech Mono", system-ui, sans-serif;--ff-body: "Inter", system-ui, sans-serif;--font-body: "Inter", system-ui, sans-serif;--ff-mono: "Share Tech Mono", "JetBrains Mono", monospace;--font-mono: "Share Tech Mono", "JetBrains Mono", monospace;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--space-8: 64px;--size-touch-min: 48px;--size-touch-primary: 56px;--size-card-track: 280px;--size-card-track-lg: 320px;--size-peek: 113px;--blur-glass: blur(12px) saturate(160%);--blur-glass-mobile: blur(8px) saturate(160%);--opacity-disabled: .5;--opacity-faint: .3;--opacity-overlay-bg: .6;--opacity-hover-bg: .06;--opacity-pressed-bg: .12;--safe-top: env(safe-area-inset-top, 0);--safe-bottom: env(safe-area-inset-bottom, 0);--safe-left: env(safe-area-inset-left, 0);--safe-right: env(safe-area-inset-right, 0);--tabular: tabular-nums;--gold: var(--accent-gold);--red: var(--accent-red);--green: var(--accent-primary);--accent: var(--accent-primary);--track: var(--glass);--text2: var(--text-muted);--text3: var(--text-muted);--accent-2: var(--accent-cyan);--red-2: var(--accent-red);--border-2: var(--border-bright);--glass-2: var(--glass-strong);--fs-display: clamp(32px, 5vw, 48px);--fs-h1: clamp(24px, 3.5vw, 28px);--fs-h2: clamp(18px, 2.5vw, 20px);--fs-h3: 16px;--fs-body: 14px;--fs-body-sm: 12px;--fs-label: 11px;--fs-btn: 12px;--fs-hud-lg: clamp(36px, 4vw, 48px);--fs-hud-md: clamp(20px, 2.5vw, 24px);--fs-hud-sm: 14px;--scale: 1;--bp-mobile: 600px;--bp-tablet: 800px;--bp-desktop: 1000px;--bp-wide: 1280px}[data-high-contrast=true]{--bg: #000000;--bg-elevated: #000000;--surface: #111111;--surface-elevated: #1a1a1a;--glass: #222222;--glass-strong: #2a2a2a;--glass-border: #444444;--border: #333333;--border-bright: #ffffff;--border-hot: #ffffff;--accent-primary: #00ff00;--accent-primary-dim: rgba(0, 255, 0, .2);--accent-gold: #ffff00;--accent-gold-dim: rgba(255, 255, 0, .2);--accent-cyan: #00ffff;--accent-cyan-dim: rgba(0, 255, 255, .2);--accent-red: #ff0000;--accent-red-dim: rgba(255, 0, 0, .2);--accent-magenta: #ff00ff;--accent-magenta-dim: rgba(255, 0, 255, .2);--text: #ffffff;--text-muted: #cccccc;--text-dim: #999999;--glow-primary: none;--glow-gold: none;--glow-cyan: none;--glow-red: none;--glow-magenta: none}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.progress-fill,.progress-arc-fill,.rank-change-pop,.boost-pulse,.lap-pulse,.combo-pulse,.ai-hud-draft-fill,.ai-hud-gap-fill,.countdown-num,.xp-arc-fill{animation-duration:var(--motion-base)!important}.ambient-particles,.aurora,.hero-grid,.home-road,.scanlines,.vignette,.noise-overlay,.card:after,.progress-fill:after,.racing-line,.card-sheen,.shimmer{display:none!important;animation:none!important}}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%;background:var(--bg);color:var(--text);font-family:var(--ff-hud);font-weight:500;overflow:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.hidden{display:none!important}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:2px}::-webkit-scrollbar-thumb:hover{background:#fff3}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.card{background:var(--surface-elevated);border:1px solid var(--glass-border);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(12px) saturate(160%);backdrop-filter:blur(12px) saturate(160%);box-shadow:var(--shadow-card);position:relative;overflow:hidden}.card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:linear-gradient(180deg,rgba(255,255,255,.08) 0%,transparent 40%);pointer-events:none}.card-sheen{content:"";position:absolute;top:-50%;right:-50%;bottom:-50%;left:-50%;background:linear-gradient(115deg,transparent 40%,rgba(255,255,255,.12) 50%,transparent 60%);transform:translate(-100%);transition:transform .6s var(--ease-out);pointer-events:none;mix-blend-mode:screen}.card:hover .card-sheen,.card:focus-within .card-sheen{transform:translate(100%)}.card:hover,.card:focus-within{transform:translateY(-2px);border-color:var(--border-hot);box-shadow:var(--shadow-card),var(--glow-primary)}.card-selected{border-color:var(--accent-primary);box-shadow:var(--shadow-card),var(--glow-primary)}.card-disabled{opacity:.5;pointer-events:none}.btn{font-family:var(--ff-display);font-size:var(--fs-btn);font-weight:700;letter-spacing:.06em;text-transform:uppercase;border-radius:var(--radius-sm);padding:12px 24px;border:1px solid transparent;cursor:pointer;transition:all var(--motion-fast) var(--ease-out);position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;min-width:48px}.btn-primary{background:var(--accent-primary);color:#000;box-shadow:var(--glow-primary)}.btn-primary:hover{background:#1aff77;transform:translateY(-1px);box-shadow:0 8px 32px #00ff6680}.btn-primary:active{transform:scale(.97)}.btn-ghost{background:transparent;color:var(--text);border-color:var(--border-bright)}.btn-ghost:hover{background:var(--glass-strong);border-color:var(--border-hot)}.btn-ghost:active{transform:scale(.97)}.btn-danger{background:var(--accent-red);color:#fff;box-shadow:var(--glow-red)}.btn-danger:hover{filter:brightness(1.1);transform:translateY(-1px)}.btn-danger:active{transform:scale(.97)}.btn-sm{padding:8px 16px;font-size:10px;min-height:40px}.btn-lg{padding:16px 32px;font-size:14px;min-height:56px}.btn-ripple{position:absolute;border-radius:50%;background:#ffffff4d;transform:scale(0);animation:ripple .4s var(--ease-out);pointer-events:none}@keyframes ripple{to{transform:scale(4);opacity:0}}[data-reduced-motion=true] .btn-ripple{animation:none}.tab-bar{display:flex;gap:4px;background:var(--glass);border-radius:var(--radius);padding:4px}.tab{flex:1;position:relative;padding:10px 16px;font-family:var(--ff-hud);font-size:var(--fs-label);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);background:transparent;border:none;border-radius:calc(var(--radius) - 4px);cursor:pointer;transition:all var(--motion-fast) var(--ease-out);min-height:44px;display:flex;align-items:center;justify-content:center;gap:6px}.tab:hover{color:var(--text);background:var(--glass-strong)}.tab.active,.tab.is-active{color:var(--accent-primary);background:var(--accent-primary-dim)}.tab.active:after,.tab.is-active:after{content:"";position:absolute;bottom:-4px;left:50%;transform:translate(-50%);width:24px;height:2px;background:var(--accent-primary);border-radius:2px;animation:tabIndicatorIn var(--motion-fast) var(--ease-out)}@keyframes tabIndicatorIn{0%{width:0;opacity:0}to{width:24px;opacity:1}}.tab:focus-visible{outline:2px solid var(--accent-primary);outline-offset:-2px}.progress-arc{width:80px;height:80px;transform:rotate(-90deg)}.progress-arc-bg{fill:none;stroke:var(--border);stroke-width:6}.progress-arc-fill{fill:none;stroke:var(--accent-primary);stroke-width:6;stroke-linecap:round;stroke-dasharray:251;stroke-dashoffset:251;transition:stroke-dashoffset var(--motion-medium) var(--ease-out);filter:drop-shadow(0 0 6px rgba(0,255,102,.4))}.progress-bar{height:6px;border-radius:3px;background:var(--glass);overflow:hidden;position:relative}.progress-fill{height:100%;width:0%;background:linear-gradient(90deg,var(--accent-primary),var(--accent-gold));border-radius:3px;transition:width var(--motion-medium) var(--ease-out);position:relative}.shimmer{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);animation:shimmer 1.5s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}[data-reduced-motion=true] .shimmer{animation:none}.badge{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:var(--radius-pill);font-family:var(--ff-hud);font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.badge-primary{background:var(--accent-primary-dim);color:var(--accent-primary);border:1px solid var(--accent-primary)}.badge-gold{background:var(--accent-gold-dim);color:var(--accent-gold);border:1px solid var(--accent-gold)}.badge-cyan{background:var(--accent-cyan-dim);color:var(--accent-cyan);border:1px solid var(--accent-cyan)}.badge-red{background:var(--accent-red-dim);color:var(--accent-red);border:1px solid var(--accent-red)}.badge-magenta{background:var(--accent-magenta-dim);color:var(--accent-magenta);border:1px solid var(--accent-magenta)}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-in-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slide-in-down{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes blur-in{0%{opacity:0;filter:blur(8px)}to{opacity:1;filter:blur(0)}}.stagger-child{opacity:0;animation:slide-in-up var(--motion-base) var(--ease-out) both;animation-delay:calc(var(--i) * var(--stagger-interval))}@media(prefers-reduced-motion:reduce){.stagger-child{animation:none;opacity:1}}.screen-enter{animation:screenEnter var(--motion-medium) var(--ease-out)}.screen-exit{animation:screenExit var(--motion-fast) var(--ease-in)}@keyframes screenEnter{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes screenExit{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-30px)}}.racing-line{position:fixed;pointer-events:none;z-index:var(--z-overlay);stroke:var(--accent-primary);stroke-width:2;fill:none;stroke-dasharray:1000;stroke-dashoffset:1000;transition:stroke-dashoffset var(--motion-slow) var(--ease-out)}.racing-line.active{stroke-dashoffset:0}.nav{height:44px;background:var(--surface);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 16px;-webkit-user-select:none;user-select:none;position:relative;z-index:var(--z-header)}.nav-left{display:flex;align-items:center;gap:10px}.nav-logo{width:26px;height:26px;background:var(--accent-red);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;color:#fff;box-shadow:0 0 10px #e1060059;flex-shrink:0}.nav-title{font-family:var(--ff-display);font-size:12px;font-weight:700;letter-spacing:3px;background:linear-gradient(90deg,#fff 30%,var(--accent-red));-webkit-background-clip:text;-webkit-text-fill-color:transparent}.nav-right{display:flex;align-items:center;gap:8px}.nav-cam-status{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--text-muted);background:#ffffff08;padding:3px 10px;border-radius:16px;border:1px solid var(--border)}.cam-dot{width:6px;height:6px;border-radius:50%;background:var(--accent-red);box-shadow:0 0 5px var(--accent-red);transition:all .3s}.cam-dot.on{background:var(--accent-primary);box-shadow:0 0 6px var(--accent-primary)}.nav-btn{width:28px;height:28px;border:1px solid var(--border);border-radius:var(--radius-sm);background:transparent;color:var(--text-dim);font-size:13px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--motion-fast) var(--ease-out)}.nav-btn:hover{background:#ffffff0d;color:var(--text);border-color:var(--border-bright)}.app{display:flex;height:calc(100vh - 44px);gap:0}.panel-left{width:320px;min-width:320px;display:flex;flex-direction:column;gap:6px;padding:6px;overflow-y:auto;border-right:1px solid var(--border);background:var(--bg);position:relative;transition:width .3s var(--ease-out),min-width .3s var(--ease-out),opacity .3s var(--ease-out)}.panel-left.collapsed{width:0;min-width:0;padding:0;opacity:0;overflow:hidden}.panel-toggle{position:absolute;top:8px;right:-28px;width:24px;height:48px;background:var(--surface-elevated);border:1px solid var(--border);border-left:none;border-radius:0 var(--radius-sm) var(--radius-sm) 0;color:var(--text-dim);cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;transition:color var(--motion-fast),background var(--motion-fast)}.panel-toggle:hover{color:var(--text);background:var(--surface)}.panel-left.collapsed .panel-toggle svg{transform:rotate(180deg)}.panel-right{flex:1;display:flex;flex-direction:column;min-width:0;position:relative}.card-legacy{background:var(--surface);border:1px solid var(--glass-border);border-radius:var(--radius);overflow:hidden;box-shadow:0 2px 12px #0003}.card-header{display:flex;align-items:center;gap:6px;padding:8px 12px;border-bottom:1px solid var(--border)}.card-dot{width:6px;height:6px;border-radius:50%}.dot-green{background:var(--accent-primary);box-shadow:0 0 5px var(--accent-primary)}.card-label{font-family:var(--ff-display);font-size:9px;font-weight:600;letter-spacing:2px;color:var(--text-muted)}.card-fps{margin-left:auto;font-family:var(--ff-display);font-size:9px;color:var(--text-dim);letter-spacing:1px}.card-cam{flex-shrink:0}.cam-wrap{position:relative;width:100%;aspect-ratio:4/3;background:#000;overflow:hidden}.cam-wrap video,.cam-wrap canvas{width:100%;height:100%;object-fit:cover;transform:scaleX(-1);display:block}.cam-wrap canvas{position:absolute;top:0;left:0;pointer-events:none}.cam-labels{position:absolute;top:6px;left:6px;display:flex;flex-direction:column;gap:3px;z-index:2}.cam-face,.cam-hand{font-family:var(--ff-display);font-size:8px;font-weight:600;letter-spacing:1px;padding:2px 6px;border-radius:3px;display:none}.cam-face{background:#00d4ff26;color:var(--accent-cyan);border:1px solid rgba(0,212,255,.25)}.cam-hand-left{background:#00ff661a;color:var(--accent-primary);border:1px solid rgba(0,255,102,.2)}.cam-hand-right{background:#ffd7001a;color:var(--accent-gold);border:1px solid rgba(255,215,0,.2)}.cam-error{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:#06080ceb;color:var(--text-muted);font-size:12px;z-index:3}.cam-error-icon{font-size:24px;color:var(--accent-red)}.card-steer{display:flex;align-items:center;gap:12px;padding:10px 14px;flex-shrink:0}.steer-visual{flex-shrink:0}.steer-wheel-svg{width:52px;height:52px}.steer-info{flex:1;min-width:0}.steer-dir{font-family:var(--ff-display);font-size:13px;font-weight:700;letter-spacing:2px;color:var(--accent-primary);transition:color var(--motion-fast)}.steer-dir.active-left{color:var(--accent-cyan)}.steer-dir.active-right{color:var(--accent-gold)}.steer-sub{font-size:11px;color:var(--text-dim);margin-top:1px}.telemetry-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;flex-shrink:0}.telem-item{background:var(--surface);border:1px solid var(--glass-border);border-radius:var(--radius-sm);padding:8px 4px;text-align:center}.telem-label{display:block;font-family:var(--ff-display);font-size:7px;font-weight:500;letter-spacing:1px;color:var(--text-dim);margin-bottom:3px}.telem-val{display:block;font-family:var(--ff-display);font-size:12px;font-weight:700;color:var(--text);font-variant-numeric:tabular-nums}.card-keys{flex-shrink:0;padding:8px 12px}.keys-row{display:flex;gap:5px}.key-box{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 3px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--glass);transition:all var(--motion-instant)}.key-box.active{background:var(--accent-primary-dim);border-color:var(--accent-primary);box-shadow:0 0 10px #00ff661f}.key-label{font-family:var(--ff-display);font-size:15px;font-weight:700;color:var(--text)}.key-desc{font-size:8px;font-weight:600;letter-spacing:1px;color:var(--text-dim)}.bottom-panels{display:flex;gap:6px;flex-shrink:0}.bottom-panels .card-legacy{flex:1;padding:10px 12px}.calibrate-row{display:flex;align-items:center;gap:8px}.calibrate-label{font-family:var(--ff-display);font-size:8px;font-weight:500;letter-spacing:1px;color:var(--text-dim);white-space:nowrap}.calibrate-val{font-family:var(--ff-display);font-size:11px;font-weight:700;color:var(--accent-cyan);min-width:32px;text-align:right}input[type=range].slider{flex:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;height:3px;border-radius:3px;background:#ffffff0f;outline:none}input[type=range].slider::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;border-radius:50%;background:var(--accent-cyan);cursor:pointer;box-shadow:0 0 6px #00e5ff59;border:2px solid rgba(0,229,255,.5)}.status-row{display:flex;align-items:center;gap:6px;margin-bottom:4px}.status-row:last-child{margin-bottom:0}.status-dot{width:5px;height:5px;border-radius:50%;background:var(--text-dim);flex-shrink:0}.status-label{font-size:11px;color:var(--text-dim);flex:1}.status-val{font-family:var(--ff-display);font-size:9px;font-weight:700;letter-spacing:1px;color:var(--accent-primary)}.status-val.inactive{color:var(--text-dim)}.game-viewport{flex:1;position:relative;overflow:hidden;background:#000;min-height:0}.game-viewport canvas{position:absolute;top:0;left:0;width:100%;height:100%}#hand-skeleton-canvas{display:none}.hud{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:var(--z-hud);animation:hudFadeIn var(--motion-base) var(--ease-out) forwards}@keyframes hudFadeIn{0%{opacity:0}to{opacity:1}}.hud-tl{position:absolute;top:14px;left:16px}.hud-position{display:flex;align-items:baseline;gap:2px;line-height:1}.hud-pos-val{font-family:var(--ff-display);font-size:40px;font-weight:900;color:var(--text);text-shadow:0 2px 20px rgba(0,0,0,.5);font-variant-numeric:tabular-nums}.hud-pos-slash{font-family:var(--ff-display);font-size:18px;font-weight:400;color:var(--text-muted);margin:0 1px}.hud-pos-total{font-family:var(--ff-display);font-size:18px;font-weight:600;color:var(--text-muted)}.hud-lap-row{display:flex;align-items:center;gap:6px;margin-top:4px}.hud-lap-label{font-family:var(--ff-display);font-size:8px;font-weight:600;letter-spacing:2px;color:var(--text-muted)}.hud-lap-val{font-family:var(--ff-display);font-size:14px;font-weight:700;color:var(--text-muted);font-variant-numeric:tabular-nums}.pos-change-pop{position:absolute;top:60px;left:16px;display:flex;align-items:center;gap:6px;font-family:var(--ff-display);font-size:18px;font-weight:800;letter-spacing:1px;opacity:0;pointer-events:none;z-index:5}.pos-change-pop-arrow{font-size:13px}.pos-change-pop.gain{color:var(--accent-primary);text-shadow:0 0 14px rgba(0,255,102,.5)}.pos-change-pop.loss{color:var(--accent-red);text-shadow:0 0 14px rgba(225,6,0,.5)}.pos-change-pop.pop{animation:posPop .9s var(--ease-spring)}@keyframes posPop{0%{opacity:0;transform:translateY(6px) scale(.8)}20%{opacity:1;transform:translateY(0) scale(1.15)}55%{opacity:1;transform:translateY(-2px) scale(1)}to{opacity:0;transform:translateY(-10px) scale(.95)}}.hud-position.lead .hud-pos-val{color:var(--accent-gold);animation:leadGlow 2s ease-in-out infinite alternate}@keyframes leadGlow{0%{text-shadow:0 0 12px rgba(255,215,0,.35)}to{text-shadow:0 0 26px rgba(255,215,0,.7)}}#race-flash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-flash);pointer-events:none;opacity:0}#race-flash.go{animation:goFlash var(--motion-fast) var(--ease-out)}#race-flash.boost{animation:boostFlash var(--motion-base) var(--ease-out)}@keyframes goFlash{0%{opacity:0}25%{opacity:.5;background:radial-gradient(circle at 50% 45%,#ffffffe6,#fff0 60%)}to{opacity:0}}@keyframes boostFlash{0%{opacity:0}30%{opacity:.35;background:radial-gradient(circle at 50% 60%,#00e5ffcc,#00e5ff00 65%)}to{opacity:0}}.hud-boost.pulse{animation:boostPop var(--motion-base) var(--ease-spring)}@keyframes boostPop{0%{transform:scale(1)}45%{transform:scale(1.08)}to{transform:scale(1)}}.hud-lap-val.pulse{animation:lapPulse var(--motion-base) var(--ease-out)}@keyframes lapPulse{0%{color:var(--text)}30%{color:var(--accent-gold);text-shadow:0 0 12px rgba(255,215,0,.6)}to{color:var(--text-muted)}}.hud-tc{position:absolute;top:14px;left:50%;transform:translate(-50%);text-align:center}.hud-time-val{font-family:var(--ff-display);font-size:20px;font-weight:700;color:var(--text);letter-spacing:2px;font-variant-numeric:tabular-nums;text-shadow:0 2px 16px rgba(0,0,0,.4)}.hud-time-val.urgent{color:var(--accent-red);animation:timePulse 1s ease-in-out infinite}@keyframes timePulse{0%,to{opacity:1}50%{opacity:.5}}.hud-tr{position:absolute;top:14px;right:16px;text-align:right}.hud-score-label{font-family:var(--ff-display);font-size:8px;font-weight:600;letter-spacing:2px;color:var(--text-muted)}.hud-score-val{font-family:var(--ff-display);font-size:22px;font-weight:700;color:var(--accent-gold);text-shadow:0 2px 16px rgba(255,215,0,.2);font-variant-numeric:tabular-nums}.hud-combo{position:absolute;top:56px;right:16px;text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:2px}.hud-combo.hidden{display:none}.hud-combo-label{font-family:var(--ff-display);font-size:8px;font-weight:600;letter-spacing:2px;color:var(--text-muted)}.hud-combo-val{font-family:var(--ff-display);font-size:22px;font-weight:700;color:var(--accent-cyan);text-shadow:0 0 16px rgba(0,255,255,.4);font-variant-numeric:tabular-nums;transition:transform var(--motion-instant) var(--ease-out)}.hud-combo.pulse .hud-combo-val{animation:comboPulse var(--motion-instant) var(--ease-out)}@keyframes comboPulse{0%{transform:scale(1)}50%{transform:scale(1.3)}to{transform:scale(1)}}.hud-combo-ring{position:absolute;inset:-14px -18px auto auto;width:64px;height:64px;transform:rotate(-90deg);pointer-events:none}.hud-combo-ring-bg{fill:none;stroke:#ffffff14;stroke-width:3}.hud-combo-ring-fill{fill:none;stroke:var(--accent-cyan);stroke-width:3;stroke-linecap:round;stroke-dasharray:107;stroke-dashoffset:107;filter:drop-shadow(0 0 4px rgba(0,255,255,.6));transition:stroke-dashoffset var(--motion-fast) var(--ease-out)}.hud-combo.max .hud-combo-ring-fill{stroke:var(--accent-gold)}.hud-boost{position:absolute;bottom:110px;right:16px;width:140px;height:28px;background:#00000080;border:1px solid rgba(255,255,255,.1);border-radius:14px;overflow:hidden;display:flex;align-items:center;padding:0 8px;gap:8px}.hud-boost.hidden{display:none}.hud-boost-fill{height:100%;width:0%;background:linear-gradient(90deg,var(--accent-cyan),var(--accent-cyan));border-radius:12px;transition:width .1s linear;box-shadow:0 0 12px var(--accent-cyan)}.hud-boost-label{font-family:var(--ff-display);font-size:9px;font-weight:600;letter-spacing:1px;color:var(--text);white-space:nowrap;z-index:1}.hud-br{position:absolute;bottom:14px;right:16px}.speed-cluster{position:relative;width:140px;display:flex;flex-direction:column;align-items:center}.speed-gauge{width:120px;height:70px}.speed-digital{margin-top:-8px;text-align:center}.speed-num{font-family:var(--ff-display);font-size:36px;font-weight:900;color:var(--text);text-shadow:0 0 24px rgba(0,212,255,.2);font-variant-numeric:tabular-nums;line-height:1}.speed-num.fast{color:var(--accent-cyan);text-shadow:0 0 30px rgba(0,229,255,.4)}.speed-num.max{color:var(--accent-gold);text-shadow:0 0 30px rgba(255,215,0,.4);animation:speedPulse .5s ease-in-out infinite}@keyframes speedPulse{0%,to{text-shadow:0 0 30px rgba(255,215,0,.4)}50%{text-shadow:0 0 50px rgba(255,215,0,.7)}}.speed-unit{font-family:var(--ff-display);font-size:9px;font-weight:500;letter-spacing:3px;color:var(--text-muted);margin-top:2px;display:block}.hud-bl{position:absolute;bottom:14px;left:16px;text-align:center}.hud-gear-label{font-family:var(--ff-display);font-size:8px;font-weight:600;letter-spacing:2px;color:var(--text-muted);display:block}.hud-gear-val{font-family:var(--ff-display);font-size:44px;font-weight:900;color:var(--text);text-shadow:0 0 20px rgba(255,255,255,.1);line-height:1;font-variant-numeric:tabular-nums;transition:transform var(--motion-fast) var(--ease-out),color var(--motion-fast) var(--ease-out)}.hud-gear-val.shift{transform:scale(1.3);color:var(--accent-red);text-shadow:0 0 30px rgba(225,6,0,.4)}.hud-bc{position:absolute;bottom:14px;left:50%;transform:translate(-50%);text-align:center}.hud-track-name{font-family:var(--ff-display);font-size:9px;font-weight:600;letter-spacing:4px;color:var(--text-muted)}.ghost-hud{position:absolute;top:78px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:3px;z-index:18;pointer-events:none}.ghost-hud.hidden{display:none}.ghost-hud-row{display:flex;align-items:center;gap:10px;font-family:var(--ff-mono);font-size:11px;color:var(--text-muted);text-shadow:0 0 6px rgba(0,229,255,.3)}.ghost-hud-label{background:#00e5ff1f;border:1px solid rgba(0,229,255,.3);border-radius:4px;padding:1px 6px;font-weight:700;font-size:10px;color:var(--accent-cyan);letter-spacing:.12em}.ghost-hud-delta{font-weight:800;font-size:13px;color:var(--accent-primary)}.ghost-hud-delta:not(.ahead){color:var(--accent-red)}.ghost-hud-state{font-weight:700;font-size:10px;text-transform:uppercase;color:var(--text-muted)}.ghost-hud-times{font-size:10px;gap:18px;opacity:.75}.ghost-hud-times b{font-weight:700;color:var(--text)}.ghost-hud-sectors{display:flex;gap:14px;margin-top:2px}.ghost-sector{font-family:var(--ff-mono);font-size:10px;font-weight:600;color:var(--text-dim)}.ghost-sector.ahead{color:var(--accent-primary)}.game-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#06080ceb;z-index:20;opacity:0;pointer-events:none;transition:opacity var(--motion-medium) var(--ease-out)}.game-overlay.visible{opacity:1;pointer-events:auto}.replay-active-strip{position:fixed;top:14px;left:50%;transform:translate(-50%);z-index:15;display:flex;align-items:center;gap:12px;padding:8px 14px;background:#06080ce6;border:1px solid rgba(255,170,0,.55);border-radius:999px;font-family:var(--ff-display);letter-spacing:2px;font-size:11px;color:#ffc94d;box-shadow:0 0 22px #ffaa002e;pointer-events:auto}.replay-strip-label{font-weight:900}.replay-strip-hint{color:var(--text-muted);text-transform:uppercase}.replay-strip-exit{font-size:10px;padding:4px 10px;border-radius:999px}.replay-complete-title{font-family:var(--ff-display);font-size:24px;font-weight:900;letter-spacing:4px;background:linear-gradient(135deg,var(--accent-gold) 0%,#fff 50%,var(--accent-gold) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;color:transparent}.replay-complete-note{max-width:340px;margin:14px auto 0;color:var(--text-muted);font-size:13px;line-height:1.55;text-align:center}.intro-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;z-index:25;background:#06080c8c;opacity:0;pointer-events:none;transition:opacity var(--motion-fast) var(--ease-out)}.intro-overlay.visible{opacity:1}.intro-content{text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px;max-width:90vw;padding:16px}.intro-badge{font-size:44px;filter:drop-shadow(0 0 18px rgba(225,6,0,.35))}.intro-title{font-family:var(--ff-display);font-size:30px;font-weight:900;letter-spacing:6px;background:linear-gradient(135deg,#fff 0%,var(--accent-red) 50%,var(--accent-gold) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;color:transparent}.intro-sub{font-family:var(--ff-display);font-size:12px;font-weight:600;letter-spacing:4px;color:var(--text-muted);text-transform:uppercase}#landing{z-index:40}.overlay-content{text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px;padding:32px}.overlay-badge{font-size:48px;filter:drop-shadow(0 0 20px rgba(225,6,0,.25))}.overlay-title{font-family:var(--ff-display);font-size:28px;font-weight:900;letter-spacing:4px;background:linear-gradient(135deg,#fff 0%,var(--accent-red) 50%,var(--accent-gold) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.overlay-sub{font-family:var(--ff-hud);font-size:16px;color:var(--text-muted);font-weight:500}.overlay-hint{font-size:12px;color:var(--text-muted);letter-spacing:1px}.countdown-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;z-index:30;pointer-events:none}.countdown-num{font-family:var(--ff-display);font-size:120px;font-weight:900;color:var(--text);text-shadow:0 0 60px rgba(225,6,0,.5),0 0 120px rgba(225,6,0,.2);animation:countPop var(--motion-cinematic) var(--ease-out) forwards}@keyframes countPop{0%{transform:scale(2);opacity:0}30%{transform:scale(.9);opacity:1}to{transform:scale(1);opacity:0}}.countdown-num.go{color:var(--accent-primary);text-shadow:0 0 60px rgba(0,255,102,.5),0 0 120px rgba(0,255,102,.2);font-size:80px;letter-spacing:16px}.menu-content{text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px;padding:40px 48px;animation:menuFadeIn var(--motion-slow) var(--ease-out) forwards}@keyframes menuFadeIn{0%{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.menu-badge{font-size:40px;width:64px;height:64px;background:var(--accent-red);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 0 30px #e1060066;margin-bottom:4px}.menu-title{font-family:var(--font-display);font-size:36px;font-weight:900;letter-spacing:6px;background:linear-gradient(135deg,#fff 0%,var(--accent-red) 50%,var(--accent-gold) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;line-height:1.2}.menu-sub{font-size:12px;font-weight:600;letter-spacing:6px;color:var(--text-muted);font-family:var(--ff-display)}.menu-divider{width:40px;height:2px;background:var(--accent-red);border-radius:2px;margin:6px 0;box-shadow:0 0 10px #e106004d}.menu-btn{font-family:var(--ff-display);font-size:12px;font-weight:700;letter-spacing:3px;padding:12px 40px;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--motion-fast) var(--ease-out);border:none;width:240px;text-transform:uppercase}.menu-btn-primary{background:var(--accent-red);color:#fff;box-shadow:0 4px 20px #e106004d}.menu-btn-primary:hover{background:#ff1a1a;box-shadow:0 6px 30px #e1060080;transform:translateY(-2px)}.menu-btn-secondary{background:#ffffff0a;color:var(--text-muted);border:1px solid var(--border)}.menu-btn-secondary:hover{background:#ffffff1a;color:var(--text);border-color:var(--border-bright);transform:translateY(-1px)}.menu-controls-hint{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 16px;margin-top:10px;font-size:11px;color:var(--text-muted)}.menu-controls-hint span{display:flex;align-items:center;gap:4px}.menu-controls-hint kbd{background:#ffffff14;padding:1px 8px;border-radius:3px;font-family:var(--ff-display);font-size:10px;color:var(--text-muted);border:1px solid var(--border)}.htp-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-width:480px;margin:8px 0}.htp-item{background:#ffffff08;border:1px solid var(--border);border-radius:var(--radius-sm);padding:14px 16px;text-align:left;display:flex;flex-direction:column;gap:4px}.htp-icon{font-size:22px;margin-bottom:2px}.htp-label{font-family:var(--ff-display);font-size:10px;font-weight:700;letter-spacing:1px;color:var(--text)}.htp-desc{font-size:11px;color:var(--text-muted);line-height:1.4}.htp-desc kbd{background:#ffffff14;padding:0 6px;border-radius:2px;font-family:var(--ff-display);font-size:9px;color:var(--text-muted);border:1px solid var(--border)}.settings-group{display:flex;flex-direction:column;gap:12px;min-width:280px;margin:8px 0}.settings-row{display:flex;align-items:center;gap:12px;background:#ffffff08;border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px 16px}.settings-label{font-family:var(--ff-display);font-size:9px;font-weight:600;letter-spacing:2px;color:var(--text-muted);flex:1}.settings-slider{flex:1;max-width:120px;-webkit-appearance:none;-moz-appearance:none;appearance:none;height:3px;border-radius:3px;background:#ffffff0f;outline:none}.settings-slider::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;border-radius:50%;background:var(--accent-cyan);cursor:pointer;box-shadow:0 0 6px #00e5ff59;border:2px solid rgba(0,229,255,.5)}.settings-val{font-family:var(--ff-display);font-size:11px;font-weight:700;color:var(--accent-cyan);min-width:36px;text-align:right}.settings-toggle{font-family:var(--ff-display);font-size:10px;font-weight:700;letter-spacing:2px;padding:6px 18px;border-radius:var(--radius-sm);border:1px solid var(--border);background:#ffffff0d;color:var(--text-muted);cursor:pointer;transition:all var(--motion-fast)}.settings-toggle.active{background:var(--accent-gold-dim);border-color:var(--accent-gold);color:var(--accent-gold)}.overlay-results{gap:16px;min-width:280px}.results-crown{font-size:56px;filter:drop-shadow(0 0 24px rgba(255,215,0,.3));animation:crownDrop var(--motion-base) var(--ease-spring) both}@keyframes crownDrop{0%{transform:translateY(-46px) scale(.55);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.results-title{font-family:var(--ff-display);font-size:24px;font-weight:900;letter-spacing:4px;background:linear-gradient(135deg,var(--accent-gold) 0%,#fff 50%,var(--accent-gold) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.results-score-row{display:flex;flex-direction:column;align-items:center;gap:4px}.results-label{font-family:var(--ff-display);font-size:9px;font-weight:600;letter-spacing:3px;color:var(--text-muted)}.results-score{font-family:var(--ff-display);font-size:48px;font-weight:900;color:var(--text);text-shadow:0 0 30px rgba(255,215,0,.2);font-variant-numeric:tabular-nums}.results-divider{width:60px;height:1px;background:var(--border-bright)}.results-ghost-line{font-family:var(--ff-display);font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-gold);text-shadow:0 0 10px rgba(255,215,0,.4);margin-bottom:4px}.results-ghost-line.hidden{display:none}.results-actions{display:flex;gap:12px}.results-btn{font-family:var(--ff-display);font-size:11px;font-weight:700;letter-spacing:2px;padding:10px 24px;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--motion-fast) var(--ease-out);border:none}.results-btn-primary{background:var(--accent-red);color:#fff;box-shadow:0 4px 20px #e106004d}.results-btn-primary:hover{background:#ff1a1a;box-shadow:0 6px 30px #e1060080;transform:translateY(-1px)}.results-btn-secondary{background:#ffffff0f;color:var(--text-muted);border:1px solid var(--border)}.results-btn-secondary:hover{background:#ffffff1a;color:var(--text);border-color:var(--border-bright)}.results-new-record{font-family:var(--ff-display);font-size:10px;font-weight:700;color:var(--accent-primary);text-shadow:0 0 8px rgba(0,255,102,.5);animation:newRecordPulse 1s ease-in-out infinite}@keyframes newRecordPulse{0%,to{opacity:1}50%{opacity:.5}}.results-highscores{margin-top:16px;padding-top:16px;border-top:1px solid var(--border)}.results-hs-title{font-family:var(--ff-display);font-size:10px;font-weight:700;letter-spacing:2px;color:var(--text-muted);margin-bottom:8px;text-align:center}.results-hs-table{width:100%;border-collapse:collapse;font-family:var(--ff-display);font-size:11px}.results-hs-table th,.results-hs-table td{padding:6px 8px;text-align:center;border-bottom:1px solid var(--border)}.results-hs-table th{font-size:9px;font-weight:600;letter-spacing:1px;color:var(--text-muted);background:#ffffff08}.results-hs-table td{color:var(--text-muted);font-variant-numeric:tabular-nums}.results-hs-table tr.new-record td{color:var(--accent-primary);font-weight:700}.results-hs-table tr:last-child td{border-bottom:none}.speed-vignette{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:8;opacity:0;background:radial-gradient(ellipse at center,transparent 40%,rgba(0,229,255,.12) 70%,rgba(0,0,0,.5) 100%);transition:opacity var(--motion-fast) var(--ease-out)}.collision-flash{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:25;background:#e1060080;opacity:0;transition:opacity .08s ease}.collision-flash.active{animation:flash var(--motion-instant) ease-out forwards}.near-miss-glow{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:24;opacity:0;background:radial-gradient(ellipse at center,transparent 55%,rgba(120,220,255,.22) 78%,rgba(80,160,255,.45) 100%)}.near-miss-glow.nearmiss{animation:near-miss-glow var(--motion-base) ease-out forwards}@keyframes near-miss-glow{0%{opacity:.9}to{opacity:0}}@keyframes flash{0%{opacity:.7}to{opacity:0}}.touch-controls{display:none;position:absolute;top:0;right:0;bottom:0;left:0;z-index:15;pointer-events:none}.touch-btn{pointer-events:auto;width:56px;height:56px;border-radius:50%;border:2px solid rgba(255,255,255,.15);background:#ffffff0f;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;font-family:var(--ff-display);font-size:11px;font-weight:700;letter-spacing:1px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background var(--motion-instant),transform var(--motion-instant),border-color var(--motion-instant);-webkit-tap-highlight-color:transparent;touch-action:none;-webkit-user-select:none;user-select:none}.touch-btn:active,.touch-btn.pressed{background:var(--accent-primary-dim);border-color:var(--accent-primary);box-shadow:0 0 20px #00ff664d,inset 0 0 15px #00ff661a;transform:scale(.9)}.touch-btn svg{width:24px;height:24px;color:#fff}.touch-left{position:absolute;left:16px;bottom:88px}.touch-right{position:absolute;right:16px;bottom:88px}.touch-bottom{position:absolute;bottom:16px;left:50%;transform:translate(-50%);display:flex;gap:10px}.touch-accel-btn{width:64px;height:64px;font-size:13px}.touch-auto-btn{width:48px;height:48px;font-size:10px;align-self:center}.touch-auto-btn.active{background:#ffd70033;border-color:var(--accent-gold)}.touch-mode{position:absolute;top:8px;left:50%;transform:translate(-50%);font-family:var(--ff-display);font-size:8px;letter-spacing:3px;color:#fff3;pointer-events:auto;cursor:pointer;padding:3px 10px;border-radius:3px;transition:color var(--motion-fast);background:#00000040}.touch-mode:hover{color:#fff6}@keyframes glow{0%,to{box-shadow:0 0 4px var(--accent-primary)}50%{box-shadow:0 0 10px var(--accent-primary)}}.dot-green{animation:glow 2.5s ease-in-out infinite}@media(max-width:1000px){.panel-left{width:280px;min-width:280px}}@media(max-width:800px){.app{flex-direction:column;height:auto;min-height:calc(100vh - 44px)}.panel-left{width:100%;min-width:0;border-right:none;border-bottom:1px solid var(--border);flex-shrink:0;max-height:40vh;flex-direction:row;flex-wrap:wrap}.panel-left .card-legacy{flex:1;min-width:140px}.panel-left .telemetry-grid{grid-template-columns:repeat(4,1fr)}.panel-left .bottom-panels{width:100%}.panel-toggle{display:none}.panel-right{min-height:50vh}.hud-pos-val{font-size:30px}.hud-lap-val{font-size:12px}.hud-time-val{font-size:16px}.speed-num{font-size:28px}.speed-gauge{width:100px;height:58px}}@media(max-width:600px){.panel-left{display:none}.panel-right{min-height:70vh}body.race-active .touch-controls{display:block}.nav-title{font-size:10px;letter-spacing:1px}.nav-cam-status{font-size:9px;padding:2px 6px}.hud-tl{top:8px;left:10px}.hud-tr{top:8px;right:10px}.hud-tc{top:8px}.hud-br{bottom:8px;right:10px}.hud-pos-val{font-size:26px}.hud-time-val{font-size:14px}.speed-num{font-size:24px}.speed-gauge{width:80px;height:48px}.overlay-title{font-size:22px}.overlay-badge{font-size:36px}.countdown-num{font-size:80px}.intro-title{font-size:18px;letter-spacing:4px}.intro-sub{font-size:9px;letter-spacing:2px}.intro-badge{font-size:32px}}@media(max-width:600px),(pointer:coarse){body.race-active .hud-br{bottom:148px}}@media(max-width:600px){body.ai-race .hud-tr{display:none}}@media(pointer:coarse){body.race-active .touch-controls{display:block}.panel-left{display:none}}@media(max-width:380px){.speed-num{font-size:20px}.hud-pos-val{font-size:22px}.touch-btn{width:48px;height:48px}.touch-btn svg{width:20px;height:20px}.touch-accel-btn{width:56px;height:56px}}@media(max-height:500px){.countdown-num{font-size:64px}.intro-title{font-size:14px;letter-spacing:3px}.intro-sub{font-size:8px;letter-spacing:2px}.intro-badge{font-size:24px}.intro-content{gap:4px}}#ai-hud{position:fixed;top:0;right:0;bottom:0;width:120px;display:flex;flex-direction:column;align-items:flex-end;gap:8px;padding:80px 12px 80px 0;pointer-events:none;z-index:var(--z-ai-hud);font-family:var(--ff-hud)}.ai-hud-position{display:flex;align-items:baseline;gap:2px;background:#000000b3;border:1px solid var(--accent-cyan);border-radius:6px;padding:4px 10px;box-shadow:0 0 12px #00e5ff40;transition:border-color var(--motion-fast),box-shadow var(--motion-fast)}.ai-hud-position[data-pos="1"]{border-color:var(--accent-gold);box-shadow:0 0 18px #ffd70066}.ai-hud-rank-num{font-family:var(--ff-display);font-size:22px;font-weight:700;color:var(--accent-cyan);letter-spacing:0;line-height:1;transition:color var(--motion-fast)}.ai-hud-position[data-pos="1"] .ai-hud-rank-num{color:var(--accent-gold)}.ai-hud-rank-total{font-size:12px;color:var(--text-muted);line-height:1}.ai-hud-gaps{display:flex;flex-direction:column;gap:4px;width:100%;align-items:flex-end}.ai-hud-gap{display:flex;flex-direction:column;align-items:flex-end;background:#0000008c;border-radius:4px;padding:3px 8px;border-right:2px solid transparent;transition:border-color var(--motion-fast),opacity var(--motion-fast);min-width:80px}.ai-hud-gap--ahead{border-right-color:var(--accent-red)}.ai-hud-gap--behind{border-right-color:var(--accent-primary)}.ai-hud-gap--hidden{opacity:.25}.ai-hud-gap-label{font-size:9px;letter-spacing:1px;color:var(--text-muted);text-transform:uppercase}.ai-hud-gap-val{font-family:var(--ff-display);font-size:13px;color:var(--text);letter-spacing:.5px}.ai-hud-draft{display:flex;flex-direction:column;align-items:flex-end;gap:4px;width:100%;padding:4px 8px;background:#0000008c;border-radius:4px;transition:background var(--motion-fast)}#ai-hud[data-draft=optimal] .ai-hud-draft{background:#00e5ff14;box-shadow:0 0 10px #00e5ff26}#ai-hud[data-draft=dirty] .ai-hud-draft{background:#ff2d9514}.ai-hud-draft-label{font-size:9px;letter-spacing:1.5px;color:var(--text-muted);text-transform:uppercase;transition:color var(--motion-fast)}#ai-hud[data-draft=optimal] .ai-hud-draft-label{color:var(--accent-cyan)}#ai-hud[data-draft=dirty] .ai-hud-draft-label{color:var(--accent-magenta)}.ai-hud-draft-bar{width:80px;height:4px;background:#ffffff14;border-radius:2px;overflow:hidden}.ai-hud-draft-fill{height:100%;width:0%;background:linear-gradient(90deg,var(--accent-cyan),var(--accent-primary));border-radius:2px;transition:width var(--motion-instant) linear,background var(--motion-fast)}#ai-hud[data-draft=dirty] .ai-hud-draft-fill{background:linear-gradient(90deg,var(--accent-magenta),#ff6622)}.ai-hud-draft.pulse{animation:draftPulse var(--motion-slow) var(--ease-out)}@keyframes draftPulse{0%{box-shadow:0 0 #00e5ff00}35%{box-shadow:0 0 18px #00e5ff8c}to{box-shadow:0 0 #00e5ff00}}.ai-hud-lap{font-size:10px;letter-spacing:2px;color:var(--text-muted);text-transform:uppercase;text-align:right;padding:0 8px}.ai-hud-opp{display:flex;flex-direction:column;align-items:flex-end;gap:1px;width:100%;padding:4px 8px;background:#0000008c;border-radius:4px;min-height:34px;box-sizing:border-box}.ai-hud-opp--hidden{visibility:hidden}.ai-hud-opp-name{font-family:var(--ff-display);font-size:10px;font-weight:700;letter-spacing:1px;color:var(--text);max-width:96px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ai-hud-opp-intent{font-size:8px;letter-spacing:1.5px;color:var(--text-muted);text-transform:uppercase;max-width:96px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ai-hud-overtake-flash{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);font-family:var(--ff-display);font-size:28px;font-weight:900;letter-spacing:4px;color:var(--accent-gold);text-shadow:0 0 20px rgba(255,215,0,.8),0 0 60px rgba(255,215,0,.4);opacity:0;pointer-events:none;transition:opacity var(--motion-instant);z-index:var(--z-flash)}.ai-hud-overtake-flash.active{opacity:1;animation:overtake-pop 1.2s cubic-bezier(.22,1,.36,1) forwards}@keyframes overtake-pop{0%{opacity:0;transform:translate(-50%,-50%) scale(.7)}15%{opacity:1;transform:translate(-50%,-50%) scale(1.08)}85%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(.95)}}.ceremony-rank{margin:15px 0;text-align:center}.ceremony-rank-num{font-family:var(--ff-display);font-size:64px;font-weight:900;color:var(--accent-gold);line-height:1;text-shadow:0 0 20px rgba(255,215,0,.3);animation:rankPop var(--motion-base) var(--ease-spring) .12s both}@keyframes rankPop{0%{transform:scale(1.5);opacity:0}to{transform:scale(1);opacity:1}}.ceremony-rank-suffix{font-family:var(--ff-display);font-size:24px;font-weight:700;color:var(--accent-gold);vertical-align:super}.ceremony-rank-label{font-size:11px;letter-spacing:2px;color:var(--text-muted);margin-top:4px}.ceremony-badge{display:inline-block;padding:6px 16px;border-radius:20px;font-size:12px;font-weight:700;letter-spacing:1.5px;margin-bottom:15px;animation:pulse-border 2s infinite alternate}.ceremony-badge--success{background:#00ff661a;border:1px solid var(--accent-primary);color:var(--accent-primary);text-shadow:0 0 10px rgba(0,255,102,.3)}.ceremony-badge--fail{background:#e106001a;border:1px solid var(--accent-red);color:var(--accent-red)}.ceremony-grid{display:flex;justify-content:center;gap:20px;margin:20px 0}.ceremony-stat{display:flex;flex-direction:column;align-items:center;background:#ffffff08;border:1px solid rgba(255,255,255,.05);border-radius:8px;width:90px;padding:10px 0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.ceremony-stat-val{font-family:var(--ff-display);font-size:18px;font-weight:700;color:var(--text)}.ceremony-stat-lbl{font-size:9px;letter-spacing:1px;color:var(--text-muted);margin-top:4px}.ceremony-levelup{margin:14px auto 0;padding:12px 28px;border-radius:10px;background:linear-gradient(135deg,#ffd7001f,#ff2d951f);border:1px solid var(--accent-gold);text-align:center;animation:ceremony-levelup-pulse 1.6s ease-in-out infinite}.ceremony-levelup-title{font-family:var(--ff-display);font-size:20px;font-weight:800;letter-spacing:.15em;color:var(--accent-gold);text-shadow:0 0 14px rgba(255,215,0,.45)}.ceremony-levelup-text{font-size:12px;letter-spacing:.12em;color:var(--text);margin-top:4px}.ceremony-unlock{margin:10px auto 0;font-size:11px;letter-spacing:.15em;color:var(--accent-primary);text-align:center}.ceremony-totals{display:flex;justify-content:center;gap:20px;margin-top:18px;flex-wrap:wrap}.ceremony-total{display:flex;flex-direction:column;align-items:center;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:10px 16px;min-width:104px}.ceremony-total-val{font-family:var(--ff-display);font-size:17px;font-weight:700;color:var(--text)}.ceremony-total-lbl{font-size:9px;letter-spacing:1px;color:var(--text-muted);margin-top:4px}@keyframes ceremony-levelup-pulse{0%,to{box-shadow:0 0 6px #ffd70040}50%{box-shadow:0 0 18px #ffd7008c}}[data-reduced-motion=true] .ceremony-levelup{animation:none}@keyframes pulse-border{0%{box-shadow:0 0 5px currentColor}to{box-shadow:0 0 15px currentColor}}.profile-hero{position:relative;overflow:hidden;padding:18px 20px;background:radial-gradient(120% 160% at 100% 0%,rgba(0,229,255,.1),transparent 55%),radial-gradient(120% 180% at 0% 100%,rgba(255,215,0,.08),transparent 60%),#ffffff08;border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:inset 0 1px #ffffff0f}.profile-hero:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(120deg,transparent 30%,rgba(255,255,255,.04) 50%,transparent 70%);transform:translate(-100%)}.profile-hero:hover:after{animation:heroSheen 1.4s var(--ease-out)}@keyframes heroSheen{to{transform:translate(100%)}}.profile-hero-main{display:flex;align-items:center;gap:16px;margin-bottom:14px}.profile-hero-level{font-family:var(--ff-display);font-size:15px;font-weight:800;letter-spacing:2px;color:var(--accent-gold);background:var(--accent-gold-dim);border:1px solid var(--accent-gold);border-radius:8px;padding:8px 12px;text-shadow:0 0 12px rgba(255,215,0,.35)}.profile-hero-title{font-family:var(--ff-display);font-size:26px;font-weight:800;letter-spacing:.08em;line-height:1;background:linear-gradient(120deg,#fff 10%,var(--accent-cyan) 55%,var(--accent-gold) 90%);-webkit-background-clip:text;background-clip:text;color:transparent}.profile-hero-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:8px;margin-bottom:12px}.hero-stat{display:flex;flex-direction:column;align-items:center;padding:8px 6px;background:#ffffff08;border:1px solid var(--border);border-radius:var(--radius-sm)}.hero-stat-val{font-family:var(--ff-display);font-size:18px;font-weight:700;color:var(--text)}.hero-stat-lbl{font-size:9px;letter-spacing:1.5px;text-transform:uppercase;color:var(--text-muted);margin-top:2px}.profile-hero-xpbar{position:relative;height:8px;border-radius:8px;background:#ffffff0f;border:1px solid var(--border);overflow:hidden}.profile-hero-xpfill{height:100%;border-radius:8px;background:linear-gradient(90deg,var(--accent-cyan),var(--accent-gold));box-shadow:0 0 12px #00e5ff80;transition:width .6s var(--ease-out)}.profile-hero-xptext{display:block;margin-top:6px;text-align:right;font-family:var(--ff-display);font-size:10px;letter-spacing:1px;color:var(--text-muted)}.title-progression{display:flex;flex-direction:column;gap:8px;margin:14px 0}.title-tier{display:flex;align-items:center;gap:12px;padding:10px 12px;background:#ffffff08;border:1px solid var(--border);border-radius:var(--radius-sm);transition:border-color var(--motion-fast),box-shadow var(--motion-fast)}.title-tier[data-unlocked=true]{border-color:#ffd70073;box-shadow:0 0 14px #ffd70014}.tier-icon{font-size:22px;filter:grayscale(.6);opacity:.7}.title-tier[data-unlocked=true] .tier-icon{filter:none;opacity:1}.tier-name{font-family:var(--ff-display);font-size:13px;font-weight:700;letter-spacing:1px;color:var(--text);flex:1}.tier-level{font-family:var(--ff-display);font-size:10px;letter-spacing:1px;color:var(--text-muted)}.tier-status{font-family:var(--ff-display);font-size:10px;font-weight:700;letter-spacing:1px;color:var(--accent-gold)}.title-tier:not([data-unlocked=true]) .tier-status{color:var(--text-muted)}.next-title-hint{font-size:11px;color:var(--text-muted);letter-spacing:.5px;text-align:center;padding:8px;border-radius:var(--radius-sm);background:#ffffff08;border:1px dashed var(--border)}.records-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius-sm);background:#ffffff05}.records-table{width:100%;border-collapse:collapse;font-size:12px}.records-table th{font-family:var(--ff-display);font-size:9px;letter-spacing:2px;text-transform:uppercase;color:var(--text-muted);text-align:left;padding:10px 12px;border-bottom:1px solid var(--border);background:#ffffff08}.records-table td{padding:9px 12px;border-bottom:1px solid rgba(255,255,255,.04);color:var(--text)}.records-table tr:last-child td{border-bottom:none}.records-table tr:hover td{background:#00e5ff0a}.recent-races{display:flex;flex-direction:column;gap:8px;margin-top:4px}.recent-race{display:flex;align-items:center;gap:12px;padding:10px 12px;background:#ffffff08;border:1px solid var(--border);border-radius:var(--radius-sm);transition:border-color var(--motion-fast),transform var(--motion-fast)}.recent-race:hover{border-color:#00e5ff66;transform:translate(2px)}.recent-race-id{font-family:var(--ff-display);font-size:12px;font-weight:700;color:var(--accent-cyan);min-width:48px}.recent-race-label{font-size:11px;color:var(--text-muted);flex:1}.achievements-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:10px 0 14px}.summary-stat{display:flex;flex-direction:column;align-items:center;padding:12px 6px;background:#ffffff08;border:1px solid var(--border);border-radius:var(--radius-sm)}.summary-val{font-family:var(--ff-display);font-size:22px;font-weight:800;background:linear-gradient(120deg,var(--accent-cyan),var(--accent-gold));-webkit-background-clip:text;background-clip:text;color:transparent}.summary-lbl{font-size:9px;letter-spacing:1.5px;text-transform:uppercase;color:var(--text-muted);margin-top:4px}.achievements-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px;margin:10px 0}.achievement-card{display:flex;gap:12px;padding:12px;background:#ffffff08;border:1px solid var(--border);border-radius:var(--radius-sm);transition:transform var(--motion-fast),border-color var(--motion-fast),box-shadow var(--motion-fast)}.achievement-card.unlocked{border-color:#ffd70080;box-shadow:0 0 16px #ffd70014}.achievement-card.unlocked:hover{transform:translateY(-2px);box-shadow:0 0 22px #ffd7002e}.achievement-card.locked{opacity:.55}.achievement-icon{font-size:30px;line-height:1;filter:grayscale(.8)}.achievement-card.unlocked .achievement-icon{filter:none;text-shadow:0 0 14px rgba(255,215,0,.4)}.achievement-info{flex:1;display:flex;flex-direction:column;gap:3px;min-width:0}.achievement-name{font-family:var(--ff-display);font-size:12px;font-weight:700;letter-spacing:.5px;color:var(--text)}.achievement-desc{font-size:10px;color:var(--text-muted);line-height:1.4}.achievement-category{font-size:8px;letter-spacing:1.5px;text-transform:uppercase;color:var(--accent-cyan)}.achievement-progress{margin-top:4px;height:5px;border-radius:5px;background:#ffffff0f;overflow:hidden}.achievement-progress-fill{height:100%;border-radius:5px;background:linear-gradient(90deg,var(--accent-cyan),var(--accent-gold));transition:width .5s var(--ease-out)}.achievement-progress-text{font-family:var(--ff-display);font-size:9px;color:var(--text-muted);text-align:right;margin-top:2px}.leaderboard-notice{display:flex;align-items:center;gap:10px;padding:10px 14px;margin:8px 0;background:#ffd7000f;border:1px solid rgba(255,215,0,.35);border-radius:var(--radius-sm);font-size:12px;color:var(--text)}.notice-icon{font-size:16px}.filter-bar{display:flex;gap:8px;margin:12px 0}.filter-bar .btn{flex:1}.leaderboard-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius-sm);background:#ffffff05}.leaderboard-table{width:100%;border-collapse:collapse;font-size:12px}.leaderboard-table th{font-family:var(--ff-display);font-size:9px;letter-spacing:2px;text-transform:uppercase;color:var(--text-muted);text-align:left;padding:10px 12px;border-bottom:1px solid var(--border);background:#ffffff08}.leaderboard-table td{padding:9px 12px;border-bottom:1px solid rgba(255,255,255,.04);color:var(--text)}.leaderboard-table tr:last-child td{border-bottom:none}.leaderboard-table tr:hover td{background:#00e5ff0a}.rank-col{font-family:var(--ff-display);font-weight:700;color:var(--text-muted);min-width:40px}.top-three .rank-col{color:var(--accent-gold)}.score-col{font-family:var(--ff-display);font-weight:700;color:var(--accent-cyan);text-align:right}.leaderboard-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:36px 16px;text-align:center}.empty-icon{font-size:40px;opacity:.6}.empty-title{font-family:var(--ff-display);font-size:14px;font-weight:700;letter-spacing:1px;color:var(--text)}.empty-desc{font-size:11px;color:var(--text-muted);max-width:260px}.settings-header{display:flex;align-items:baseline;gap:10px;margin:6px 0 4px}.settings-header:before{content:"";width:4px;height:16px;border-radius:2px;background:linear-gradient(180deg,var(--accent-cyan),var(--accent-gold));align-self:center}.settings-header h3{font-family:var(--ff-display);font-size:12px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--text)}.profile-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:8px;margin:8px 0 12px}.stat-box{display:flex;flex-direction:column;align-items:center;padding:10px 6px;background:#ffffff08;border:1px solid var(--border);border-radius:var(--radius-sm)}.stat-val{font-family:var(--ff-display);font-size:18px;font-weight:700;color:var(--text)}.stat-label{font-size:9px;letter-spacing:1.5px;text-transform:uppercase;color:var(--text-muted);margin-top:3px}.profile-xprow{margin:8px 0 2px}.profile-xpbar{height:8px;border-radius:8px;background:#ffffff0f;border:1px solid var(--border);overflow:hidden}.profile-xpfill{height:100%;border-radius:8px;background:linear-gradient(90deg,var(--accent-cyan),var(--accent-gold));box-shadow:0 0 12px #00e5ff80;transition:width .6s var(--ease-out)}.profile-xptext{display:block;text-align:right;font-family:var(--ff-display);font-size:10px;letter-spacing:1px;color:var(--text-muted);margin-top:4px}.skins-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;margin:10px 0}.skin-card{display:flex;flex-direction:column;gap:8px;padding:12px;background:#ffffff08;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:transform var(--motion-fast),border-color var(--motion-fast),box-shadow var(--motion-fast)}.skin-card:hover{transform:translateY(-2px);border-color:#00e5ff66}.skin-card.selected{border-color:var(--accent-gold);box-shadow:0 0 16px #ffd7002e}.skin-color{height:44px;border-radius:8px;border:1px solid rgba(255,255,255,.12);box-shadow:inset 0 0 18px #00000059}.skin-info{display:flex;flex-direction:column;gap:2px}.skin-name{font-family:var(--ff-display);font-size:11px;font-weight:700;letter-spacing:.5px;color:var(--text)}.skin-status{font-size:9px;letter-spacing:1px;color:var(--accent-gold)}.panel{background:#ffffff05;border:1px solid var(--border);border-radius:var(--radius-md);padding:14px 16px;margin:8px 0}.setting-row{display:flex;align-items:center;gap:12px;padding:10px 2px}.setting-row+.setting-row{border-top:1px solid rgba(255,255,255,.04)}.setting-info{flex:1;min-width:0}.setting-info strong{display:block;font-family:var(--ff-display);font-size:12px;font-weight:700;letter-spacing:.5px;color:var(--text)}.setting-info span{display:block;font-size:10px;color:var(--text-muted);margin-top:2px}.toggle{position:relative;width:46px;height:26px;flex-shrink:0;-moz-appearance:none;appearance:none;-webkit-appearance:none;background:#ffffff14;border:1px solid var(--border);border-radius:26px;cursor:pointer;transition:background var(--motion-fast),border-color var(--motion-fast)}.toggle:after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:var(--text-muted);transition:transform var(--motion-fast),background var(--motion-fast)}.toggle:checked{background:var(--accent-cyan-dim);border-color:var(--accent-cyan)}.toggle:checked:after{transform:translate(20px);background:var(--accent-cyan);box-shadow:0 0 10px #00e5ff99}.toggle:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:120px;height:4px;border-radius:4px;background:#ffffff14;outline:none;cursor:pointer}select.slider{-moz-appearance:auto;appearance:auto;-webkit-appearance:auto;height:auto;width:auto;min-height:34px;padding:4px 30px 4px 10px;border-radius:var(--radius-sm);border:1px solid var(--border);background:#ffffff0d;color:var(--text);font-family:var(--ff-display);font-size:11px;letter-spacing:.5px;cursor:pointer}select.slider:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.slider::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:var(--accent-cyan);border:2px solid rgba(0,229,255,.5);box-shadow:0 0 8px #00e5ff66;cursor:pointer}.slider::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--accent-cyan);border:2px solid rgba(0,229,255,.5);box-shadow:0 0 8px #00e5ff66;cursor:pointer}.slider:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.howto-tab-bar{margin-bottom:10px;flex-wrap:wrap}.howto-tab{display:inline-flex;align-items:center;gap:6px}.howto-tab .tab-icon{font-size:14px}.howto-content{min-height:220px}.howto-section{display:flex;flex-direction:column;gap:12px}.howto-header{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;background:#ffffff08;border:1px solid var(--border);border-radius:var(--radius-sm)}.howto-icon{font-size:30px;line-height:1;filter:drop-shadow(0 0 10px rgba(0,229,255,.35))}.howto-title{font-family:var(--ff-display);font-size:14px;font-weight:700;letter-spacing:1px;color:var(--text);margin:0}.howto-desc{font-size:11px;color:var(--text-muted);line-height:1.5;margin-top:4px}.howto-controls{display:flex;flex-direction:column;gap:6px}.control-row{display:flex;align-items:center;gap:12px;padding:8px 12px;background:#ffffff08;border:1px solid var(--border);border-radius:var(--radius-sm)}.control-keys{font-family:var(--ff-display);font-size:10px;font-weight:700;letter-spacing:1px;color:var(--accent-cyan);background:#00e5ff14;border:1px solid rgba(0,229,255,.25);border-radius:4px;padding:4px 8px;min-width:72px;text-align:center}.control-action{font-size:11px;color:var(--text);flex:1}.howto-tips{padding:10px 14px;background:#ffd7000d;border:1px solid rgba(255,215,0,.25);border-radius:var(--radius-sm)}.howto-tips h4{font-family:var(--ff-display);font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--accent-gold);margin:0 0 6px}.howto-tips li{font-size:10px;color:var(--text-muted);line-height:1.6}.toast-host{position:fixed;top:16px;right:16px;z-index:10000;display:flex;flex-direction:column;gap:10px;max-width:min(360px,calc(100vw - 32px));pointer-events:none}.toast{pointer-events:auto;display:flex;flex-direction:column;gap:2px;padding:12px 16px;background:#0c1018e6;border:1px solid var(--border);border-left-width:3px;border-radius:var(--radius-sm);box-shadow:0 8px 28px #00000073;cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.toast--success{border-left-color:var(--accent-primary)}.toast--error{border-left-color:var(--accent-red)}.toast--warn{border-left-color:var(--accent-gold)}.toast--info{border-left-color:var(--accent-cyan)}.toast-title{font-family:var(--ff-display);font-size:12px;font-weight:700;letter-spacing:.5px;color:var(--text)}.toast-message{font-size:11px;color:var(--text-muted)}@media(max-width:600px){.profile-hero-title{font-size:20px}.achievements-summary{grid-template-columns:1fr 1fr 1fr;gap:6px}.summary-val{font-size:18px}.leaderboard-table-wrap{margin-left:-4px;margin-right:-4px}input[type=range].slider{width:90px}select.slider{max-width:100%}.settings-group{min-width:0}}[data-reduced-motion=true] .profile-hero:after{animation:none}.screen{justify-content:flex-start}.screen-inner{margin:auto}.screen-scrollable{max-height:100%}.menu-footer-note{position:static;pointer-events:none;margin-top:4px;font-family:var(--ff-body);font-size:var(--fs-body-sm);color:var(--text-dim);text-align:center}.menu-wrap{display:flex;flex-direction:column;align-items:center;gap:clamp(10px,2.5vh,24px);width:100%;max-width:900px;padding:0 var(--space-4)}.menu-hero-car{width:100%;height:260px;border-radius:var(--radius-xl);overflow:hidden;background:linear-gradient(145deg,#080a10e6,#04060af2);border:1px solid rgba(56,189,248,.12);box-shadow:inset 0 1px #38bdf814,0 0 0 1px #38bdf80a,0 24px 48px -12px #00000080;display:flex;align-items:center;justify-content:center;position:relative}.menu-hero-car:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 50% 0%,rgba(56,189,248,.06) 0%,transparent 70%);pointer-events:none;z-index:1}.menu-title-wrap{text-align:center}.menu-title{font-family:var(--ff-display);font-size:var(--fs-display);font-weight:900;letter-spacing:.06em;text-transform:uppercase;background:linear-gradient(135deg,#ffffff 0%,#e8f4ff 35%,var(--accent-primary) 60%,var(--accent-gold) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.15;margin:0;filter:drop-shadow(0 0 24px rgba(56,189,248,.25))}.menu-subtitle{font-family:var(--ff-hud);font-size:var(--fs-body);font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin-top:6px;opacity:.7}.menu-profile{width:100%;padding:var(--space-4) var(--space-5);background:linear-gradient(135deg,#0c1018d9,#06080ce6);border:1px solid rgba(56,189,248,.1);border-radius:var(--radius-lg);box-shadow:inset 0 1px #38bdf80f,0 8px 32px -8px #00000080;position:relative;overflow:hidden}.menu-profile:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(56,189,248,.25),transparent)}.menu-profile-row{display:flex;align-items:center;gap:var(--space-4);font-family:var(--ff-hud);font-size:var(--fs-label);font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted)}.menu-profile-level{color:var(--accent-primary);font-weight:800;text-shadow:0 0 16px rgba(56,189,248,.4)}.menu-profile-title{color:var(--accent-gold);text-shadow:0 0 12px rgba(255,215,0,.3)}.menu-profile-coins{color:var(--accent-gold);margin-left:auto;font-variant-numeric:tabular-nums;text-shadow:0 0 12px rgba(255,215,0,.25)}.menu-profile-xpbar{height:5px;background:#080a10cc;border:1px solid rgba(56,189,248,.08);border-radius:3px;overflow:hidden;margin:10px 0 4px;box-shadow:inset 0 1px 2px #0006}.menu-profile-xpfill{height:100%;background:linear-gradient(90deg,var(--accent-primary),var(--accent-gold),var(--accent-primary));background-size:200% 100%;border-radius:2px;animation:ui-xp-shimmer 3s ease-in-out infinite;transition:width var(--motion-medium) var(--ease-out)}@keyframes ui-xp-shimmer{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.menu-profile-meta{font-size:11px;color:var(--text-dim);letter-spacing:.05em}.menu-actions{display:flex;flex-direction:column;align-items:center;gap:12px;width:100%;max-width:340px}.menu-actions .btn{width:100%;padding:14px 24px;font-size:var(--fs-label);letter-spacing:.12em;transition:transform var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out),background var(--motion-fast) var(--ease-out)}.menu-actions .btn:hover{transform:translateY(-2px);box-shadow:0 8px 24px -4px #ffd70059}.menu-actions .btn:active{transform:translateY(0)}.menu-actions .btn-primary{background:linear-gradient(135deg,var(--accent-gold) 0%,#ffd700 50%,#e6b800 100%);color:#0d0d0d;font-weight:800;border:none}.menu-actions .btn-primary:hover{box-shadow:0 12px 32px -6px #ffd70080}.menu-actions .btn-ghost{background:linear-gradient(135deg,#121620e6,#080a10f2);color:var(--text);border:1px solid rgba(56,189,248,.18)}.menu-actions .btn-ghost:hover{border-color:#38bdf866;background:linear-gradient(135deg,#181c28f2,#0c1018fa);box-shadow:0 8px 24px -4px #38bdf826}.menu-footer-note{position:static;pointer-events:none;margin-top:8px;font-family:var(--ff-hud);font-size:var(--fs-label);font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim);text-align:center;opacity:.5;white-space:nowrap}@media(min-width:1000px){.menu-wrap{flex-direction:row;flex-wrap:wrap;align-items:flex-start;max-width:1200px;gap:clamp(16px,3vh,32px);padding:0 var(--space-6)}.menu-hero-car{flex:0 0 55%;height:420px;border-radius:var(--radius-2xl)}.menu-title-wrap,.menu-profile,.menu-actions,.menu-footer-note{flex:0 0 45%}.menu-title-wrap{text-align:left;padding-top:clamp(8px,2vh,24px)}.menu-title{font-size:clamp(36px,5.5vw,56px);letter-spacing:.04em;line-height:1.1}.menu-subtitle{font-size:var(--fs-body-lg);letter-spacing:.1em;margin-top:10px}.menu-actions{align-items:flex-start;max-width:100%}.menu-actions .btn{width:auto;min-width:200px;padding:16px 32px;font-size:var(--fs-label-lg)}.menu-profile{padding:var(--space-5) var(--space-6)}.menu-footer-note{text-align:left;margin-top:clamp(24px,4vh,40px)}}@media(max-height:820px){.menu-wrap{gap:clamp(8px,1.8vh,18px)}.menu-actions{gap:10px}.menu-actions .btn{width:min(300px,76vw);padding:12px 20px}.menu-profile{margin-top:-4px}}@keyframes spin{to{transform:rotate(360deg)}}.chip{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;min-height:36px;border-radius:var(--radius-pill);background:var(--glass);border:1px solid var(--glass-border);color:var(--text-muted);font-family:var(--ff-hud);font-size:var(--fs-label);font-weight:600;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:all var(--motion-fast) var(--ease-out);white-space:nowrap}.chip:hover{background:var(--glass-strong);border-color:var(--border-bright);color:var(--text)}.chip:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.chip-selected{background:var(--accent-primary-dim);border-color:var(--accent-primary);color:var(--accent-primary);box-shadow:0 0 12px #0f63}.chip-disabled{opacity:var(--opacity-disabled);cursor:not-allowed;pointer-events:none}.stat-block{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--glass);border:1px solid var(--glass-border);border-radius:var(--radius)}.stat-icon{font-size:20px;opacity:.7}.stat-content{flex:1;min-width:0}.stat-label{font-family:var(--ff-hud);font-size:var(--fs-label);font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin-bottom:2px}.stat-value{font-family:var(--ff-display);font-size:var(--fs-h2);font-weight:700;color:var(--text);font-variant-numeric:tabular-nums}.stat-delta{font-family:var(--ff-mono);font-size:var(--fs-body-sm);font-weight:700;padding:2px 8px;border-radius:var(--radius-pill)}.delta-positive{color:var(--accent-primary);background:var(--accent-primary-dim)}.delta-negative{color:var(--accent-red);background:var(--accent-red-dim)}.tooltip{font-family:var(--ff-body);font-size:12px;color:var(--text);background:var(--surface-elevated);border:1px solid var(--glass-border);border-radius:var(--radius-sm);padding:6px 10px;box-shadow:var(--shadow-card);pointer-events:none;z-index:var(--z-toast);white-space:nowrap}.achievements-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-4)}.achievement-card{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);background:var(--glass);border:1px solid var(--glass-border);border-radius:var(--radius);cursor:pointer;transition:all var(--motion-fast) var(--ease-out);text-align:left;width:100%;color:var(--text);font-family:var(--ff-body)}.achievement-card:hover{background:var(--glass-strong);border-color:var(--border-bright);transform:translateY(-1px)}.achievement-card:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.achievement-card.unlocked{border-color:var(--accent-primary);box-shadow:0 0 12px #00ff6626}.achievement-card.locked{opacity:.6}.achievement-icon{font-size:28px;flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--glass);border-radius:var(--radius-sm)}.achievement-info{flex:1;min-width:0}.achievement-name{font-family:var(--ff-hud);font-size:var(--fs-body);font-weight:700;color:var(--text);margin-bottom:2px}.achievement-desc{font-size:var(--fs-body-sm);color:var(--text-muted);margin-bottom:6px}.achievement-progress{height:4px;background:var(--glass);border-radius:2px;overflow:hidden;margin-bottom:4px}.achievement-progress-fill{height:100%;background:linear-gradient(90deg,var(--accent-primary),var(--accent-gold));border-radius:2px;transition:width var(--motion-medium) var(--ease-out)}.achievement-progress-text{font-family:var(--ff-mono);font-size:10px;color:var(--text-dim);font-variant-numeric:tabular-nums}.achievement-category{font-family:var(--ff-hud);font-size:9px;font-weight:700;letter-spacing:.1em;color:var(--text-dim);writing-mode:vertical-rl;text-orientation:mixed}.leaderboard-notice{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--accent-cyan-dim);border:1px solid var(--accent-cyan);border-radius:var(--radius);font-family:var(--ff-hud);font-size:var(--fs-label);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-cyan)}.leaderboard-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.leaderboard-table{width:100%;border-collapse:collapse;font-family:var(--ff-hud);font-size:var(--fs-body-sm)}.leaderboard-table th{text-align:left;padding:var(--space-3) var(--space-4);font-size:var(--fs-label);font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);border-bottom:1px solid var(--border);white-space:nowrap}.leaderboard-table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);color:var(--text)}.leaderboard-table tr.top-three td{color:var(--accent-gold)}.leaderboard-table .rank-col{font-family:var(--ff-display);font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.leaderboard-table .score-col{font-family:var(--ff-mono);font-weight:700;font-variant-numeric:tabular-nums}.leaderboard-empty{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-8) var(--space-4);text-align:center}.leaderboard-empty .empty-icon{font-size:48px;opacity:.4}.leaderboard-empty .empty-title{font-family:var(--ff-display);font-size:var(--fs-h2);font-weight:700;color:var(--text)}.leaderboard-empty .empty-desc{font-size:var(--fs-body);color:var(--text-muted)}.filter-bar{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) 0}.achievements-summary{display:flex;gap:var(--space-6);justify-content:center;padding:var(--space-4)}.summary-stat{text-align:center}.summary-val{font-family:var(--ff-display);font-size:var(--fs-h1);font-weight:700;color:var(--accent-primary);font-variant-numeric:tabular-nums}.summary-lbl{font-family:var(--ff-hud);font-size:var(--fs-label);font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted)}@media(max-width:600px){.achievements-grid{grid-template-columns:1fr}.achievements-summary{gap:var(--space-4)}.stat-block{padding:var(--space-2) var(--space-3)}.leaderboard-table{font-size:12px}.leaderboard-table th,.leaderboard-table td{padding:var(--space-2) var(--space-3)}}.toggle{display:inline-flex;align-items:center;gap:var(--space-3);cursor:pointer}.toggle-input{position:absolute;opacity:0;pointer-events:none}.toggle-track{position:relative;width:44px;height:24px;background:var(--glass);border:1px solid var(--border);border-radius:var(--radius-pill);transition:background var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out);flex-shrink:0}.toggle-thumb{position:absolute;top:2px;left:2px;width:18px;height:18px;background:var(--text-secondary);border-radius:50%;transition:transform var(--motion-fast) var(--ease-spring),background var(--motion-fast) var(--ease-out)}.toggle-checked .toggle-thumb{transform:translate(20px);background:var(--accent-primary);box-shadow:0 0 8px var(--accent-primary-dim)}.toggle-checked{background:var(--accent-primary-dim);border-color:var(--accent-primary)}.toggle-label{font-family:var(--ff-body);font-size:13px;color:var(--text-primary);-webkit-user-select:none;user-select:none}.toggle-input:focus-visible+.toggle-track{outline:2px solid var(--accent-primary);outline-offset:2px}.slider{display:flex;flex-direction:column;gap:var(--space-2);width:100%}.slider-label{font-family:var(--ff-hud);font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.slider-row{display:flex;align-items:center;gap:var(--space-3)}.slider-range{flex:1;height:4px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--glass);border-radius:2px;outline:none;cursor:pointer}.slider-range::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;background:var(--accent-primary);border-radius:50%;cursor:pointer;box-shadow:0 0 6px var(--accent-primary-dim);transition:transform var(--motion-fast) var(--ease-spring)}.slider-range::-webkit-slider-thumb:hover{transform:scale(1.2)}.slider-range::-moz-range-thumb{width:16px;height:16px;background:var(--accent-primary);border:none;border-radius:50%;cursor:pointer}.slider-range:focus-visible{outline:2px solid var(--accent-primary);outline-offset:4px}.slider-value{font-family:var(--ff-mono);font-size:13px;color:var(--accent-primary);min-width:32px;text-align:right;font-variant-numeric:tabular-nums}.dropdown{display:flex;flex-direction:column;gap:var(--space-2);width:100%}.dropdown-label{font-family:var(--ff-hud);font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.dropdown-select-wrap{position:relative}.dropdown-select{width:100%;padding:var(--space-3) var(--space-4);background:var(--glass);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);font-family:var(--ff-body);font-size:13px;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%23999' viewBox='0 0 256 256'%3E%3Cpath d='M213.66,101.66l-80,80a8,8,0,0,1-11.32,0l-80-80A8,8,0,0,1,53.66,90.34L128,164.69l74.34-74.35a8,8,0,0,1,11.32,11.32Z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px;transition:border-color var(--motion-fast) var(--ease-out)}.dropdown-select:hover{border-color:var(--accent-primary)}.dropdown-select:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.dropdown-select option{background:var(--bg-card);color:var(--text-primary)}.modal{max-width:480px;width:100%}.modal-content{display:flex;flex-direction:column;gap:var(--space-4)}.modal-header{text-align:center}.modal-title{font-family:var(--ff-display);font-size:20px;color:var(--text-primary);margin:0}.modal-body{display:flex;flex-direction:column;gap:var(--space-4)}.ceremony-container{width:100%;text-align:center}.results-actions{display:flex;gap:var(--space-3);justify-content:center;flex-wrap:wrap}
