@font-face{font-family:Russo One;src:url(./RussoOne-Regular-Bsi8J-3Q.woff2)format("woff2");font-display:swap}@font-face{font-family:Rajdhani;src:url(./Rajdhani-SemiBold-D9vA_Iz0.woff2)format("woff2");font-weight:600;font-display:swap}@font-face{font-family:Rajdhani;src:url(./Rajdhani-Bold-CSaoty4t.woff2)format("woff2");font-weight:700;font-display:swap}:root{--bg:#0f1420;--panel:#161d2cee;--line:#ffffff1f;--text:#f4f6fb;--muted:#aab3c5;--orange:#ff6b35;--purple:#8b5cf6;--green:#22c55e;--better:#5ef08a;--worse:#ff6b6b;--head:"Russo One", system-ui, sans-serif;--body:"Rajdhani", system-ui, sans-serif;--pad-top:max(10px, env(safe-area-inset-top));--pad-bottom:max(10px, env(safe-area-inset-bottom))}html,body{height:100%;color:var(--text);font:600 16px var(--body);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;background:#87ceeb;margin:0;overflow:hidden}#app canvas{touch-action:none;display:block}button,input{font:inherit;color:inherit}.btn{color:var(--text);font:700 17px var(--body);letter-spacing:.02em;cursor:pointer;background:#ffffff1a;border:0;border-radius:12px;padding:12px 20px}.btn.primary{background:linear-gradient(180deg, #ff8a4c, var(--orange));color:#1a0d05;box-shadow:0 3px #b8441a}.next-goal{margin-top:2px;font-size:13px;font-weight:600;display:block}.next-goal svg{vertical-align:-2px;width:14px;height:14px}.btn:active{transform:translateY(1px)}.icon-btn{min-width:42px;height:40px;color:var(--text);cursor:pointer;background:#0f1420b3;border:0;border-radius:10px;font-size:18px}.icon-btn.on{color:#10131c;background:#f5b301cc}.better{color:var(--better)}.worse{color:var(--worse)}.muted{color:var(--muted);font-size:14px}.medal-icon{vertical-align:-.2em;width:1.15em;height:1.15em}.flag{object-fit:cover;background:#fff2;border-radius:3px;width:28px;height:20px;box-shadow:0 0 0 1px #0004}.hud{color:#fff;text-shadow:0 2px 4px #000a;pointer-events:none;position:fixed}body:not(.racing) .race-only{display:none!important}#tl{top:var(--pad-top);left:max(12px, env(safe-area-inset-left))}#time{font:36px/1 var(--head);font-variant-numeric:tabular-nums}#cps{max-width:calc(100vw - 170px);margin-top:4px;font-size:15px}#tr{top:var(--pad-top);right:max(10px, env(safe-area-inset-right));pointer-events:auto;gap:6px;display:flex}#center{font:46px var(--head);text-align:center;white-space:pre;top:30%;left:50%;transform:translate(-50%,-50%)}#split{font:32px var(--head);font-variant-numeric:tabular-nums;top:calc(30% + 38px);left:50%;transform:translate(-50%)}#cd-board{text-align:left;background:#0000008c;border-radius:10px;width:min(320px,100vw - 32px);padding:8px 10px;top:calc(30% + 44px);left:50%;transform:translate(-50%)}#cd-board[hidden]{display:none}#cd-board .board-head{color:inherit;font-size:15px}#cd-board .cd-goal{color:#fbbf24;font-variant-numeric:tabular-nums}#cd-board .board-row .t{font-variant-numeric:tabular-nums}#speed{bottom:var(--pad-bottom);font:26px var(--head);white-space:nowrap;left:50%;transform:translate(-50%)}#drift-clean{bottom:calc(var(--pad-bottom) + 34px);font:22px var(--head);color:#ffd34d;white-space:nowrap;opacity:0;left:50%;transform:translate(-50%)}#drift-clean.show{animation:1.1s ease-out drift-clean}@keyframes drift-clean{0%{opacity:0;transform:translate(-50%)scale(.6)}15%{opacity:1;transform:translate(-50%)scale(1.15)}70%{opacity:1;transform:translate(-50%)scale(1)}to{opacity:0;transform:translate(-50%)translateY(-12px)}}#debug{bottom:var(--pad-bottom);left:max(10px, env(safe-area-inset-left));white-space:pre;opacity:.85;font:11px/1.35 ui-monospace,monospace;display:none}body.debug #debug{display:block}#version{bottom:max(6px, env(safe-area-inset-bottom));right:max(8px, env(safe-area-inset-right));opacity:.7;font:11px ui-monospace,monospace}#notice{top:calc(var(--pad-top) + 64px);left:max(12px, env(safe-area-inset-left));color:#ffe9a8;font-size:14px;right:12px}#hint{opacity:0;text-align:center;background:#0006;justify-content:center;align-items:center;font-size:19px;line-height:1.6;transition:opacity .6s;display:flex;inset:0}#hint.show{opacity:1}:root{--pad-h:17%}@media (orientation:portrait){:root{--pad-h:11%}}.pad{width:30%;height:var(--pad-h);box-sizing:border-box;font:16px var(--head);opacity:.7;border:2px dashed #fff6;justify-content:center;align-items:center;transition:background 80ms;display:none;left:35%}#brake-btn{border-bottom:0;border-radius:0;bottom:0}#hand-btn{bottom:var(--pad-h);border-bottom:0;border-radius:16px 16px 0 0}.pad.on{opacity:1;background:#fff3}body.pads .pad{display:flex}body.pads #speed,body.pads #debug{bottom:calc(2 * var(--pad-h) + 8px)}body.pads #drift-clean{bottom:calc(2 * var(--pad-h) + 42px)}#result{pointer-events:auto;text-shadow:none;background:#0f142099;justify-content:center;align-items:center;display:none;inset:0}#result.show{display:flex}#result .card{box-sizing:border-box;background:var(--panel);border:1px solid var(--line);text-align:center;border-radius:20px;flex-direction:column;width:min(380px,100vw - 32px);max-height:calc(100dvh - 16px);padding:22px 20px 16px;display:flex;box-shadow:0 20px 50px #0008}#result-title{font:22px var(--head);letter-spacing:.06em;color:var(--orange)}#result-medal{font:700 20px var(--body);text-transform:uppercase;letter-spacing:.05em;margin-top:10px}#result-medal .medal-icon{width:56px;height:56px;margin:0 auto 4px;display:block}#result-time{font:50px var(--head);font-variant-numeric:tabular-nums;margin:6px 0 8px}#result-lines{font:700 19px var(--body);font-variant-numeric:tabular-nums;line-height:1.5}#result .result-scroll{overscroll-behavior:contain;flex:auto;min-height:0;overflow-y:auto}.result-records>:not(:empty){border-top:1px solid var(--line);margin-top:16px;padding-top:12px}#result-medals{text-align:left}.ml-row{opacity:.55;align-items:center;gap:8px;padding:2px 4px;font-size:15px;display:flex}.ml-row.got{opacity:1}.ml-row .medal-icon{width:22px;height:22px}.ml-name{flex:1}.ml-t{font-variant-numeric:tabular-nums}.ml-ok{width:1.2em;color:var(--better);text-align:right}.ml-next{color:var(--muted);text-align:center;margin-top:4px;font-size:14px}#result .row{flex-wrap:wrap;flex-shrink:0;gap:10px;margin-top:14px;display:flex}#result .row .btn{flex:40%}@media (orientation:landscape){#result .card{width:min(760px,100vw - 32px);padding:16px 20px 12px}#result .result-scroll{grid-template-rows:minmax(0,1fr);grid-template-columns:1fr 1fr;gap:24px;display:grid;overflow:hidden}#result .result-main{align-self:center}#result .result-records{overscroll-behavior:contain;min-height:0;overflow-y:auto}#result-title{font-size:18px}#result-medal{margin-top:6px;font-size:16px}#result-medal .medal-icon{width:40px;height:40px}#result-time{margin:2px 0 4px;font-size:40px}#result-lines{font-size:16px;line-height:1.35}.result-records>:not(:empty):first-child{border-top:0;margin-top:0;padding-top:0}#result .row{margin-top:10px}#result .row .btn{flex:1 1 0;padding-top:10px;padding-bottom:10px;font-size:15px}}#result .row .btn[hidden]{display:none}#panel{top:calc(var(--pad-top) + 48px);box-sizing:border-box;background:var(--panel);border:1px solid var(--line);border-radius:14px;width:min(300px,100vw - 20px);max-height:calc(100vh - 80px);padding:12px 14px;font-size:16px;display:none;position:fixed;right:10px;overflow-y:auto}#panel.open{display:block}#panel h3{font:14px var(--head);color:var(--muted);letter-spacing:.05em;margin:4px 0 6px}#panel label{align-items:center;gap:8px;margin:8px 0;display:flex}#panel .btn{width:100%;margin:6px 0 10px;padding:9px;font-size:15px}#menu{background:linear-gradient(180deg, #121a2e26 0%, var(--bg) 55%), var(--menu-art,none) top center / 100% auto no-repeat, radial-gradient(120% 60% at 50% 0%, #2a3a66 0%, transparent 70%), linear-gradient(180deg, #121a2e, var(--bg) 60%);padding:var(--pad-top) 16px calc(var(--pad-bottom) + 16px);box-sizing:border-box;flex-direction:column;align-items:center;display:none;position:fixed;inset:0;overflow-y:auto}#menu.show{display:flex}.menu-top{justify-content:flex-end;gap:8px;width:min(440px,100%);display:flex}#rank-chip,#music-chip{padding:6px 12px}#lang-chip{padding:6px 12px;position:relative}#lang-select{opacity:0;cursor:pointer;width:100%;position:absolute;inset:0}#music-chip[aria-pressed=false]{opacity:.45;text-decoration:line-through}.chip{border:1px solid var(--line);font:700 16px var(--body);cursor:pointer;background:#ffffff10;border-radius:999px;align-items:center;gap:8px;padding:6px 12px 6px 8px;display:flex}.logo{text-align:center;margin:18px 0 22px;line-height:.95;transform:skew(-8deg)}.logo-rc{font:22px var(--head);color:var(--orange);letter-spacing:.3em;display:block}.logo-name{font:clamp(34px, 11vw, 52px) var(--head);background:linear-gradient(#fff,#c9d4ff);color:#0000;filter:drop-shadow(0 3px #ff6b35)drop-shadow(0 8px 16px #0008);-webkit-background-clip:text;background-clip:text;display:block}.series{width:min(440px,100%)}.series-head{align-items:center;gap:12px;margin-bottom:12px;display:flex}.series-code{background:linear-gradient(135deg, var(--green), #15803d);width:44px;height:44px;font:24px var(--head);border-radius:12px;place-items:center;display:grid}.series-head h2{font:20px var(--head);margin:0}.series-head small{color:var(--muted);font-size:15px}#track-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}#track-list a{border:1px solid var(--line);color:var(--text);background:#ffffff0d;border-radius:16px;align-items:center;gap:12px;padding:12px 14px;text-decoration:none;display:flex}#track-list a:active{background:#ffffff1a}#track-list .code{font:20px var(--head);color:var(--orange);min-width:36px}#track-list .info{flex:1;min-width:0}#track-list .title{font:700 18px var(--body);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}#track-list .thresholds{font:600 13px var(--body);color:var(--muted);font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:2px 10px;margin-top:2px;display:flex}#track-list .pb{text-align:right;font:16px var(--head);font-variant-numeric:tabular-nums}#track-list .pb small{font:600 12px var(--body);color:var(--muted);display:block}#track-list .pb .place .tab-icon{vertical-align:-1px;width:12px;height:12px}#track-list .pb .medal-icon{width:26px;height:26px}.overlay{z-index:10;background:#0009;justify-content:center;align-items:flex-end;display:none;position:fixed;inset:0}.overlay.show{display:flex}.sheet{box-sizing:border-box;width:min(480px,100%);max-height:92vh;padding:18px 16px calc(var(--pad-bottom) + 12px);background:var(--bg);border:1px solid var(--line);border-radius:20px 20px 0 0;flex-direction:column;display:flex}.sheet h2{font:22px var(--head);margin:0}.sheet .lead{color:var(--muted);margin:4px 0 12px}.field{color:var(--muted);flex-direction:column;gap:4px;margin-bottom:8px;font-size:14px;display:flex}.field input{border:1px solid var(--line);color:var(--text);font:700 18px var(--body);-webkit-user-select:text;user-select:text;background:#ffffff0d;border-radius:12px;outline:none;padding:12px}.field input:focus{border-color:var(--orange)}.error{min-height:18px;color:var(--worse);margin:-4px 0 6px;font-size:14px}#flag-grid{flex:1;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:6px;min-height:140px;margin:4px 0 12px;display:grid;overflow-y:auto}#flag-grid button{font:600 13px var(--body);text-align:left;cursor:pointer;background:#ffffff0a;border:1px solid #0000;border-radius:10px;align-items:center;gap:6px;padding:6px;display:flex;overflow:hidden}#flag-grid button[hidden]{display:none}#flag-grid button span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}#flag-grid button[aria-selected=true]{border-color:var(--orange);background:#ff6b3522}.logo img{width:min(320px,80vw);height:auto;display:block}.series-head.has-art{background:linear-gradient(90deg, #0000008c, #0000001a), var(--series-art,none) center / cover no-repeat;border-radius:14px;padding:12px}.series-head.has-art h2,.series-head.has-art small{color:#fff;text-shadow:0 1px 3px #000c}#series-tabs{gap:8px;width:min(440px,100%);margin-bottom:12px;display:flex}#series-tabs button{border:1px solid var(--line);color:var(--muted);font:18px var(--head);cursor:pointer;background:#ffffff0f;border-radius:10px;flex:1;padding:8px 0}#series-tabs button.active{background:linear-gradient(135deg, var(--green), #15803d);color:#fff;border-color:#0000}#track-list li.empty{text-align:center;color:var(--muted);padding:24px}#track-list li.empty.stale{font:600 12px var(--body);padding:4px 12px}#result-board{text-align:left}.board-head{color:var(--muted);text-align:center;margin-bottom:4px;font-size:14px}.board-row{border-radius:6px;align-items:center;gap:6px;padding:2px 4px;font-size:15px;display:flex}.board-row.me{background:#22c55e33}.board-row .pos{text-align:right;width:2.4em;color:var(--muted)}.board-row .flag{border-radius:2px;width:20px;height:14px}.board-row .name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.rk-tabs{gap:6px;margin:8px 0;display:flex}.rk-tabs button{color:inherit;font:inherit;background:#ffffff0f;border:1px solid #ffffff26;border-radius:8px;flex:1;padding:8px}.rk-tabs button.active{color:#111;background:#f97316;border-color:#f97316;font-weight:700}.rk-body{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0a0e18e0;border:1px solid #ffffff1a;border-radius:14px;padding:10px 8px}.rk-body .board-row{border-bottom:1px solid #ffffff0f;padding:7px 6px;font-size:16px}.rk-body .board-row .t{text-align:right;min-width:4.5em;font-weight:700}.rk-body .board-head{margin-bottom:6px;font-size:15px}.rk-cols{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);gap:6px;padding:0 6px 4px;font-size:11px;display:flex}.rk-cols span:first-child{text-align:right;width:2.4em}.rk-cols span:nth-child(2){flex:1;padding-left:26px}.rk-retry{color:#111;font:inherit;background:#f97316;border:0;border-radius:8px;margin:8px auto 0;padding:8px 14px;font-weight:700;display:block}.rk-sub{color:var(--muted);font-size:12px}.rk-note{color:var(--muted);background:#0a0e18b3;border-radius:10px;margin-top:10px;padding:8px 10px;font-size:12px}.badge-new{color:#111;vertical-align:middle;background:#f59e0b;border-radius:6px;padding:1px 6px;font-size:11px;font-weight:700}.board-row .input{font-size:13px}.board-gap{text-align:center;color:var(--muted);line-height:1}#transfer{margin-top:12px}#transfer summary{cursor:pointer;color:var(--muted)}#transfer-code{font:18px var(--head);letter-spacing:2px;margin:6px 0}body.editing #menu,body.editing .hud{display:none!important}#editor-canvas{touch-action:none;position:fixed;inset:0}#editor-ui{pointer-events:none;font-family:var(--body);flex-direction:column;justify-content:space-between;display:flex;position:fixed;inset:0}#editor-ui>*{pointer-events:auto}.ed-top{padding:calc(var(--pad-top) + 6px) 8px 6px;background:linear-gradient(#0a0e1ad9,#0a0e1a00);align-items:center;gap:6px;display:flex}.ed-name{border:1px solid var(--line);color:#fff;min-width:0;font:16px var(--head);background:#00000059;border-radius:10px;flex:1;padding:6px 10px}.ed-issues{font:15px var(--head);color:#fff;cursor:pointer;border:0;border-radius:10px;padding:6px 10px}.ed-issues.ok{background:#15803d}.ed-issues.bad{background:#b45309}.ed-test{word-break:keep-all}.ed-test:disabled{opacity:.45}.ed-test.blocked{opacity:.55}.ed-issue-list{color:#fde68a;background:#0a0e1ae6;border-radius:10px;align-self:flex-end;max-width:min(420px,92vw);max-height:40vh;margin:0 8px auto;padding:8px 12px;font-size:14px;line-height:1.4;overflow-y:auto}.ed-issue.go{cursor:pointer;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.ed-issue+.ed-issue{margin-top:4px}.ed-sel{color:#fff;background:#0a0e1ad9;border-radius:12px;align-items:center;gap:6px;padding:6px 8px;display:flex;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.ed-sel-name{text-overflow:ellipsis;white-space:nowrap;max-width:40vw;padding:0 4px;font-size:14px;overflow:hidden}.ed-palette{padding:6px 6px calc(var(--pad-bottom) + 6px);background:#0a0e1ae0;position:relative}.ed-cats,.ed-items{scrollbar-width:none;gap:6px;display:flex;overflow-x:auto}.ed-cats button{border:1px solid var(--line);color:var(--muted);font:14px var(--head);cursor:pointer;background:0 0;border-radius:999px;flex:none;padding:6px 12px}.ed-cats button.active{background:var(--green);color:#fff;border-color:#0000}.ed-items{margin-top:6px}.ed-items button{color:#e5e7eb;cursor:pointer;background:#ffffff0f;border:2px solid #0000;border-radius:10px;flex:none;width:84px;padding:4px;font-size:11px;line-height:1.15}.ed-items button.active{background:#facc1526;border-color:#facc15}.ed-items img{width:64px;height:64px;margin:0 auto 2px;display:block}.draft-new{font:18px var(--head);justify-content:center}.draft-template{opacity:.85;font-size:15px}#track-list li{position:relative}.draft-del{position:absolute;bottom:8px;right:8px}.ed-sel[hidden],.ed-issue-list[hidden]{display:none}.ed-biomes{background:#0a0e1ae6;border-radius:10px;grid-template-columns:repeat(3,1fr);align-self:flex-end;gap:8px;margin:0 8px auto;padding:10px;display:grid}.ed-biomes[hidden]{display:none}.ed-biome{color:#fff;text-shadow:0 1px 3px #000;cursor:pointer;border:2px solid #fff9;border-radius:8px;justify-content:center;align-items:flex-end;min-width:96px;height:64px;padding-bottom:6px;font:700 13px system-ui,sans-serif;display:flex}.ut-lists{gap:6px;display:flex;overflow-x:auto}.ut-lists button{border:1px solid var(--line);color:var(--text);font:600 14px var(--body);white-space:nowrap;cursor:pointer;background:#ffffff0d;border-radius:999px;flex:1;padding:8px 10px}.ut-lists button.active{background:var(--orange);color:#fff;border-color:#0000}#track-list .ut-rating{text-align:center;font-size:17px}#track-list .ut-rating small{font:600 11px var(--body);color:var(--muted);display:block}#track-list .thresholds .wr{text-overflow:ellipsis;white-space:nowrap;max-width:100%;color:var(--text);overflow:hidden}#track-list .thresholds .flag{vertical-align:-1px;width:16px;height:11px}.ut-edit{position:absolute;bottom:8px;right:56px}.ut-more{justify-content:center;display:flex}#track-list li.ut-mine a{padding-right:112px}#track-list li.ut-mine .icon-btn{top:50%;bottom:auto;transform:translateY(-50%)}#result-vote{color:var(--muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin:8px 0;display:flex}#result-vote[hidden]{display:none}#result-vote .btn{min-width:48px;padding:4px 10px;font-size:18px}#result-vote .btn.active{background:var(--orange);color:#fff}#result-vote small:empty{display:none}#play-online{text-align:center;font:20px var(--head);margin:0 0 12px;text-decoration:none;display:block}#play-online small{font:600 13px var(--body);opacity:.85}.multi-clock{font:14px var(--head);text-shadow:0 1px 3px #000c;text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums;margin:0 0 4px 2px;overflow:hidden}.multi-clock.ending{color:#f87171}.multi-side{pointer-events:none;width:min(200px,42vw);font-family:var(--body);color:#fff;margin-top:8px}.multi-side-head{font:700 10px var(--body);letter-spacing:.08em;color:#fffd;text-shadow:0 1px 3px #000c;margin:0 0 3px 4px}.multi-board{font:600 12px/1.25 var(--body);font-variant-numeric:tabular-nums;background:#0a0e1a8c;border-radius:8px;margin:0;padding:3px 0;list-style:none}.multi-board:empty{display:none}.multi-board li{grid-template-columns:20px 18px 1fr auto;align-items:center;gap:3px;padding:2px 7px;display:grid}.multi-board .p{text-align:right;color:#fffb}.multi-board .n{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.multi-board .flag{vertical-align:middle;width:16px;height:11px}.multi-board .me{color:#facc15;background:#facc1538}.multi-board .sep{border-bottom:1px dashed #fff5;height:6px;margin:0 7px;display:block}.multi-toast:empty{display:none}.multi-toast{font:600 12px var(--body);color:#a7f3d0;background:#0a0e1a8c;border-radius:6px;margin-top:4px;padding:2px 6px;display:inline-block}.multi-side #notice{font:600 12px var(--body);margin-top:4px;position:static}@media (orientation:portrait){body.multi #center,body.multi #split{left:auto;right:max(12px, env(safe-area-inset-right));text-align:right;transform:none}body.multi #center{top:calc(var(--pad-top) + 64px);white-space:pre-wrap;max-width:calc(100vw - min(200px,42vw) - 40px);font-size:17px}body.multi #split{top:calc(var(--pad-top) + 88px);font-size:30px}}.multi-results{z-index:8;color:#fff;font-family:var(--body);background:#0f1420d9;flex-direction:column;justify-content:center;align-items:center;padding:16px;display:none;position:fixed;inset:0;overflow-y:auto}.multi-results.show{display:flex}.multi-results h2{font:22px var(--head);margin:0 0 8px}.multi-results ol{width:min(420px,100%);margin:0;padding:0;list-style:none}.multi-results li{border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums;align-items:center;gap:8px;padding:6px 10px;display:flex}.multi-results li.me{background:#facc1526}.multi-results .pos{min-width:28px;font-weight:700}.multi-results .name{flex:1}.multi-results .flag{width:20px;height:14px}.multi-board .bot{color:#c4b5fd}.sheet{overflow-y:auto}@media (max-height:500px){#flag-grid{min-height:96px}.sheet .lead{display:none}}@media (min-width:700px){.multi-results ol.many{grid-template-rows:repeat(8,auto);grid-template-columns:1fr 1fr;grid-auto-flow:column;column-gap:18px;width:min(760px,100%);display:grid}}#track-list li.locked a{opacity:.45;pointer-events:none}#series-tabs .tab-icon{vertical-align:-3px;margin-right:2px}#loading{z-index:20;background:var(--bg);font-family:var(--body);color:#fff;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.ld-box{text-align:center;width:min(360px,100vw - 48px)}.ld-title{font:24px var(--head);margin-bottom:14px}.ld-bar{background:#ffffff1a;border-radius:5px;height:10px;overflow:hidden}.ld-fill{background:linear-gradient(90deg, var(--orange), #facc15);width:0;height:100%;transition:width .25s}.ld-label{font:600 13px var(--body);color:var(--muted);margin-top:8px}.ld-go{width:100%;font:20px var(--head);margin-top:18px}.ld-go[hidden],#menu.sub .logo{display:none}#home{grid-template-columns:1fr 1fr;gap:10px;width:min(440px,100%);display:grid}#home[hidden],.garage[hidden],#league-grid[hidden],#track-list[hidden],.series-head[hidden],.series[hidden]{display:none}.season-note{color:var(--text);background:#ffd34d1a;border:1px solid #ffd34d88;border-radius:16px;flex-direction:column;grid-column:1/-1;gap:8px;padding:14px;display:flex}.season-note strong{font:20px var(--head);color:#ffd34d}.season-note .btn{align-self:flex-end}.home-tile{border:1px solid var(--line);min-height:92px;color:var(--text);text-align:left;cursor:pointer;background:#ffffff10;border-radius:16px;flex-direction:column;align-items:flex-start;gap:4px;padding:14px;display:flex}.home-tile:active{background:#ffffff1c}.home-tile.accent{background:linear-gradient(135deg, var(--orange), #e2531f);border-color:#0000}.home-tile.campaign{background:linear-gradient(135deg, var(--green), #15803d);border-color:#0000}.home-tile.wide{grid-column:1/-1;min-height:0}.trophy{opacity:.9;margin-left:4px;font-size:.85em}.home-tile.daily{background:linear-gradient(135deg,#7c3aed,#4c1d95);border-color:#0000}.home-tile[hidden]{display:none}.privacy-note{text-align:center;color:var(--muted);grid-column:1/-1;margin:2px 0 0;font-size:12px}.privacy-note a{color:inherit}.home-tile .flag{vertical-align:-3px;width:18px;margin-right:4px}.home-tile .ht-sub svg{vertical-align:-2px;width:14px;height:14px}.ht-title{font:20px var(--head)}.ht-sub{font:600 13px var(--body);opacity:.85}.view-bar{font:18px var(--head);align-items:center;gap:10px;margin:6px 0 12px;display:flex}#league-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;display:grid}.league-tile{border:1px solid var(--line);min-height:120px;color:var(--text);text-align:left;cursor:pointer;background:#ffffff0d;border-radius:16px;flex-direction:column;align-items:flex-start;gap:3px;padding:12px;display:flex;position:relative}.league-tile.has-art{background:linear-gradient(180deg, #0003, #000000b3), var(--series-art) center / cover no-repeat}.league-tile.locked{opacity:.55}.lt-code{font:30px/1 var(--head);color:var(--orange)}.lt-code .tab-icon{vertical-align:-2px;margin-right:3px}.lt-name{font:16px var(--head)}.lt-sub{font:600 12px var(--body);color:var(--muted)}.lt-bar{background:#ffffff1a;border-radius:3px;width:100%;height:5px;margin-top:auto;overflow:hidden}.lt-bar span{background:linear-gradient(90deg,#cd7f32,#facc15);height:100%;display:block}.lt-count{font:600 12px var(--body);color:var(--muted)}@media (min-width:700px){#home,.series{width:min(720px,100%)}#home{grid-template-columns:repeat(3,1fr)}}@media (orientation:landscape) and (max-height:560px){#menu:not(.sub){flex-flow:wrap;justify-content:center;align-items:center;column-gap:28px}#menu:not(.sub) .menu-top{top:var(--pad-top);right:max(16px, env(safe-area-inset-right));width:auto;position:absolute}#menu:not(.sub) .logo{margin:0}#menu:not(.sub) .logo img{width:min(240px,30vw)}#menu:not(.sub) #home{grid-template-columns:1fr 1fr;width:min(520px,58vw)}.home-tile{min-height:74px}}@media (orientation:landscape) and (min-height:430px) and (max-height:560px){#menu:not(.sub) #home{margin-top:36px}}.garage{flex-direction:column;gap:12px;display:flex}.gar-preview canvas{background:radial-gradient(at 50% 70%,#ffffff24,#0a0e1a8c 70%);border-radius:14px;width:100%;display:block}.gar-cars{gap:8px;display:flex}.gar-car{color:#fff;cursor:pointer;background:#0a0e1ab3;border:2px solid #fff3;border-radius:10px;flex:1;padding:10px;font:700 16px Rajdhani,system-ui,sans-serif}.gar-car.on,.gar-skin.on{border-color:#ff6b35;box-shadow:0 0 0 2px #ff6b3559}.gar-skins{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.gar-skin{color:#fff;cursor:pointer;background:#0a0e1ab3;border:2px solid #ffffff26;border-radius:10px;flex-direction:column;align-items:center;gap:4px;padding:8px 6px;display:flex}.gs-swatch{background:linear-gradient(135deg, var(--a) 0 58%, var(--b) 58% 100%);border-radius:6px;width:100%;height:34px}.gs-name{font:700 14px Rajdhani,system-ui,sans-serif}.gs-price{color:#86efac;font:500 12px Rajdhani,system-ui,sans-serif}.gar-shop{color:#ffffffbf;text-align:center;border:1px dashed #ffffff4d;border-radius:10px;padding:10px 12px;font:600 14px Rajdhani,system-ui,sans-serif}.ad-btn{color:#e9fff0;cursor:pointer;background:#0f3d22;border:2px solid #b8f5c8;border-radius:10px;width:100%;margin:8px 0;padding:10px 12px;font:700 15px Rajdhani,system-ui,sans-serif;display:block}.ad-btn:disabled{opacity:.55;cursor:default}.ghost-pick{flex-direction:column;gap:6px;max-height:40vh;margin:8px 0;display:flex;overflow:auto}.gar-skin.locked{opacity:.75;border-style:dashed}.gar-unlock{flex-direction:column;gap:4px;display:flex}.gar-unlock small,.gar-shop small{opacity:.8}.gar-shop{flex-direction:column;gap:6px;display:flex}.gar-shop strong{color:#ffd34d;font-size:17px}.gar-owned{color:#8ef0a5}
