:root{--ink: #ffffff;--accent: #ffb43c;--accent2: #3cd2ff;--shadow: 0 2px 0 #000, 0 0 12px rgba(0, 0, 0, 0.6)}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;background:#000}html,body{touch-action:none;overscroll-behavior:none;-webkit-tap-highlight-color:transparent}body{-webkit-touch-callout:none;color:var(--ink);font-family:"M PLUS Rounded 1c",system-ui,sans-serif;user-select:none;-webkit-user-select:none}#game,#game canvas{position:fixed;inset:0;width:100%;height:100%;display:block}.panel,#fade{position:fixed;left:var(--gx, 0px);top:var(--gy, 0px);width:var(--gw, 100%);height:var(--gh, 100%);pointer-events:none}.panel{display:none;text-shadow:var(--shadow)}.center{flex-direction:column;align-items:center;justify-content:center;gap:14px}#loadError{max-width:90%;font:12px/1.4 monospace;color:#ff9b9b;white-space:pre-wrap;text-align:center}#loadError[hidden]{display:none}body[data-state=loading] #loading,body[data-state=title] #title{display:flex}body[data-state=charge] #charge,body[data-state=ready] #hud,body[data-state=play] #hud,body[data-state=crash] #hud,body[data-state=over] #hud,body[data-state=over] #over{display:block}.big{font-size:32px;font-weight:800;letter-spacing:4px}.blink{font-size:22px;font-weight:800;animation:blink 1s steps(2) infinite}@keyframes blink{50%{opacity:0.25}}.best{font-size:18px;color:var(--accent2);font-weight:800}.best.world{margin-top:-8px;color:#ff8ad8}.best.world[hidden]{display:none}.best .who{font-size:15px;opacity:.85}#title{justify-content:space-between;padding:3vh 0 1.5vh}#logo{width:min(56%,480px);filter:drop-shadow(0 6px 16px rgba(0,0,0,.6))}.title-bottom{display:flex;flex-direction:column;align-items:center;gap:8px}.prompt{max-width:92%;text-align:center;word-break:keep-all;font-size:clamp(18px,calc(var(--gw, 100vw) * 0.048),28px);text-shadow:0 0 2px #061433,1px 1px 0 #061433,-1px 1px 0 #061433,1px -1px 0 #061433,-1px -1px 0 #061433,0 2px 0 #061433,0 0 10px rgba(0,0,0,.8)}#credit{margin:2px 0 0;max-width:96%;text-align:center;line-height:1.35;opacity:0.5;font-size:clamp(8px,calc(var(--gw, 100vw) * 0.017),10px)}.charge-card{position:absolute;top:max(10px,calc(var(--gh, 100vh) * 0.04));left:50%;transform:translateX(-50%);width:max-content;max-width:calc(100% - 112px);padding:clamp(5px,calc(var(--gw, 100vw) * 0.012),10px) clamp(10px,calc(var(--gw, 100vw) * 0.025),18px);border-radius:12px;text-align:center;text-wrap:balance;word-break:keep-all;background:rgba(4,10,32,.55);box-shadow:0 0 0 1px rgba(120,200,255,.25);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;flex-direction:column;gap:4px}.charge-hint{font-size:clamp(12px,calc(var(--gw, 100vw) * 0.032),22px);font-weight:800;color:var(--accent);animation:hint-pulse 1.2s ease-in-out infinite}@keyframes hint-pulse{50%{transform:scale(1.04)}}.charge-sub{font-size:clamp(10px,calc(var(--gw, 100vw) * 0.024),15px);font-weight:600}.skip-hint{font-size:clamp(10px,calc(var(--gw, 100vw) * 0.02),13px);font-weight:500;opacity:0.75}.gauge-wrap{position:absolute;left:50%;bottom:calc(var(--gh, 100vh) * 0.05);transform:translateX(-50%);width:min(86%,440px);display:flex;align-items:center;gap:8px;font:800 12px/1 "Orbitron",system-ui,sans-serif;letter-spacing:0.05em}.gauge-wrap span:first-child{color:#9fd8ff}.gauge-wrap span:last-child{color:#ffb43c}.gauge{flex:1;height:14px;border-radius:7px;overflow:hidden;background:rgba(0,0,0,.45);border:2px solid #fff}#fuelBar{height:100%;width:0%;background:linear-gradient(90deg,#ff3c1e,#ffb43c 60%,#fff27a)}#distance,.caption{font-family:"Orbitron","Eurostile","Bank Gothic",system-ui,sans-serif;font-weight:800;line-height:1;letter-spacing:0.04em;white-space:nowrap;text-shadow:none;background:linear-gradient(180deg,#8ff6ff 0%,#3cd2ff 45%,#3a5bff 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-stroke:0.03em #0b1a5c;paint-order:stroke fill;filter:drop-shadow(0 0 0.12em rgba(60,210,255,0.45))}#distance{position:absolute;top:calc(var(--gh, 100vh) * 0.012);right:2%;font-size:clamp(26px,calc(var(--gh, 100vh) * 0.08),88px);font-variant-numeric:tabular-nums;transform:skewX(-12deg)}#distance .unit{font-size:0.55em;margin-left:0.15em}#distance{transform-origin:100% 0;will-change:transform}#distance[data-flash]{--pop: 1;--dur: .6s;--shines: 1;--glow: rgba(255, 255, 255, .7);background-size:260% 100%;-webkit-background-clip:text;background-clip:text;filter:drop-shadow(0 0 0.25em var(--glow));animation:flash-pop var(--dur) cubic-bezier(.2,.9,.3,1) forwards,flash-shine calc(var(--dur) / var(--shines)) linear var(--shines)}#distance[data-flash=mile]{background-image:linear-gradient(110deg,#d8f4ff 0%,#ffffff 30%,#ffffff 42%,#e4f8ff 54%,#bfeaff 100%);-webkit-text-stroke-color:#2a3a6c}#distance[data-flash=mile][data-level="2"]{--dur: .8s}#distance[data-flash=mile][data-level="3"]{--dur: 1.1s;--shines: 2;--glow: rgba(255, 255, 255, .85)}#distance[data-flash=mile][data-level="4"]{--dur: 1.5s;--shines: 3;--glow: #fff}#distance[data-flash=best]{--pop: 1.3;--dur: 1.2s;--shines: 2;--glow: rgba(255, 200, 40, .85);background-image:linear-gradient(110deg,#ffd23a 0%,#fff6b0 30%,#ffffff 42%,#fff6b0 54%,#ffb02e 75%,#ff8a1a 100%);-webkit-text-stroke-color:#5a2800}#distance[data-flash=rival]{--pop: 1.3;--dur: 1.2s;--shines: 2;--glow: rgba(190, 110, 255, .9);background-image:linear-gradient(110deg,#b77dff 0%,#ead6ff 30%,#ffffff 42%,#ead6ff 54%,#a35cff 75%,#7a2cff 100%);-webkit-text-stroke-color:#2a0a5c}#distance[data-flash=top]{--pop: 1.45;--dur: 2s;--shines: 4;--glow: rgba(255, 255, 255, .9);background-image:linear-gradient(110deg,#ff4d4d,#ffa53a,#ffe94a,#5cff7a,#45d4ff,#6f6bff,#d65cff,#ff4d4d,#ffa53a,#ffe94a);-webkit-text-stroke-color:#1a1040}@keyframes flash-pop{0%{transform:skewX(-12deg) scale(1)}14%{transform:skewX(-12deg) scale(var(--pop))}30%{transform:skewX(-12deg) scale(calc(var(--pop) * .94))}100%{transform:skewX(-12deg) scale(1)}}@keyframes flash-shine{from{background-position:100% 0}to{background-position:0% 0}}.for-touch{display:none}@media (hover: none) and (pointer: coarse){.for-mouse{display:none}.for-touch{display:revert}}#overButtons{position:absolute;right:max(3%,env(safe-area-inset-right));bottom:calc(3vh + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:12px;opacity:0;transition:opacity .6s}#overButtons.show{opacity:1;pointer-events:auto}.btn{display:flex;align-items:center;gap:12px;min-width:210px;min-height:58px;padding:0 20px 0 18px;font:800 21px/1 "M PLUS Rounded 1c",system-ui,sans-serif;letter-spacing:0.04em;color:#e6fbff;text-shadow:0 1px 2px rgba(0,0,0,.6);background:rgba(8,18,54,.62);border:2px solid rgba(120,225,255,.8);border-radius:12px;box-shadow:0 0 14px rgba(60,210,255,.35),inset 0 0 14px rgba(60,210,255,.18);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transform:skewX(-10deg);cursor:pointer;touch-action:manipulation;transition:transform .12s,filter .12s,box-shadow .12s}.btn>*{transform:skewX(10deg)}.btn svg{width:26px;height:26px;flex:none;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}.btn .label{flex:1;text-align:left}.btn kbd{font:700 12px/1 "Orbitron",system-ui,sans-serif;padding:5px 7px;border-radius:5px;border:1px solid currentColor;opacity:.7}.btn.primary{color:#061646;text-shadow:none;border-color:#bff9ff;background:linear-gradient(180deg,#8ff6ff 0%,#3cd2ff 50%,#3a6bff 100%);box-shadow:0 0 18px rgba(60,210,255,.6)}.btn:hover{filter:brightness(1.15)}.btn:active{transform:skewX(-10deg) scale(.96)}.btn:focus{outline:none}.btn:focus-visible{box-shadow:0 0 0 3px #fff,0 0 18px rgba(60,210,255,.6)}@media (max-aspect-ratio: 1/1){#overButtons{position:fixed;left:0;right:0;bottom:calc(4vh + env(safe-area-inset-bottom));padding:0 max(5%,env(safe-area-inset-left));flex-direction:row;justify-content:center}.btn{flex:1 1 0;min-width:0;max-width:220px;padding:0 14px;font-size:19px}}#newRecord{position:absolute;top:calc(var(--gh, 100vh) * 0.12);left:50%;display:none;white-space:nowrap;font:800 calc(var(--gw, 100vw) * 0.06)/1 "Orbitron","Eurostile",system-ui,sans-serif;letter-spacing:0.04em;background-image:linear-gradient(110deg,#ffd23a 0%,#fff6b0 30%,#ffffff 42%,#fff6b0 54%,#ffb02e 75%,#ff8a1a 100%);background-size:260% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-stroke:0.03em #5a2800;paint-order:stroke fill;text-shadow:none;filter:drop-shadow(0 0 0.15em rgba(255,200,40,0.7));transform:translateX(-50%) skewX(-12deg)}#newRecord.show{display:block;animation:nr-pop .5s cubic-bezier(.2,.9,.3,1),nr-shine 2.4s linear .5s infinite,nr-pulse 1.4s ease-in-out .5s infinite}#newRecord.world{background-image:linear-gradient(110deg,#ff4d4d,#ffa53a,#ffe94a,#5cff7a,#45d4ff,#6f6bff,#d65cff,#ff4d4d,#ffa53a,#ffe94a);-webkit-text-stroke-color:#1a1040;filter:drop-shadow(0 0 0.15em rgba(255,255,255,0.75))}@keyframes nr-pop{0%{transform:translateX(-50%) skewX(-12deg) scale(0.3);opacity:0}60%{transform:translateX(-50%) skewX(-12deg) scale(1.12);opacity:1}100%{transform:translateX(-50%) skewX(-12deg) scale(1)}}@keyframes nr-shine{from{background-position:100% 0}to{background-position:-160% 0}}@keyframes nr-pulse{50%{transform:translateX(-50%) skewX(-12deg) scale(1.04)}}@media (max-aspect-ratio: 1/1){#newRecord{font-size:calc(var(--gw, 100vw) * 0.075);top:calc(var(--gy, 0px) * -0.5 - 0.5em)}}#controlsHint{position:absolute;left:50%;bottom:calc(var(--gh, 100vh) * 0.07);transform:translateX(-50%);display:flex;align-items:center;gap:clamp(8px,calc(var(--gw, 100vw) * 0.02),16px);white-space:nowrap;font-weight:800;opacity:0;transition:opacity .5s;font-size:clamp(12px,calc(var(--gw, 100vw) * 0.03),18px);text-shadow:0 0 3px #061433,0 1px 2px #061433}#controlsHint.show{opacity:1}#controlsHint .key{padding:.35em .9em;border-radius:999px;color:#fff;background:rgba(4,10,32,.6);box-shadow:0 0 0 1px rgba(120,200,255,.4)}#controlsHint .what{color:var(--accent)}body[data-state=ready] #captions,body[data-state=play] #captions{display:block}.caption{position:absolute;left:50%;display:none}.caption.show{display:block}#capReady{top:calc(var(--gh, 100vh) * 0.07);font-size:calc(var(--gw, 100vw) * 0.185);background-image:linear-gradient(180deg,#fffbb8 0%,#ffe03c 45%,#ff9f1a 100%);-webkit-text-stroke-color:#5a2800;filter:drop-shadow(0 0 0.12em rgba(255,200,40,0.45));animation:cap-pop .22s ease-out,cap-pulse .63s ease-in-out .22s infinite}@keyframes cap-pop{from{transform:translateX(-50%) skewX(-12deg) scale(0.4);opacity:0}to{transform:translateX(-50%) skewX(-12deg) scale(1)}}@keyframes cap-pulse{0%,100%{transform:translateX(-50%) skewX(-12deg) scale(1)}50%{transform:translateX(-50%) skewX(-12deg) scale(1.015)}}#capGo{top:calc(var(--gh, 100vh) * 0.30);font-size:calc(var(--gw, 100vw) * 0.30);animation:cap-go .9s forwards}@keyframes cap-go{0%{transform:translate(-50%,0) skewX(-12deg) scale(0.3);opacity:0;animation-timing-function:ease-out}10%{transform:translate(-50%,0) skewX(-12deg) scale(1.18);opacity:1;animation-timing-function:ease-in-out}18%{transform:translate(-50%,0) skewX(-12deg) scale(1)}58%{transform:translate(-50%,0) skewX(-12deg) scale(1);opacity:1;animation-timing-function:ease-in}88%{transform:translate(-50%,-190%) skewX(-12deg) scale(1);opacity:1;animation-timing-function:linear}100%{transform:translate(-50%,-270%) skewX(-12deg) scale(1);opacity:0}}#progress{--u: clamp(0.8px, calc(var(--gh, 100vh) * 0.0016), 1.6px);position:absolute;left:max(12px,env(safe-area-inset-left));top:calc(var(--gh, 100vh) * 0.16);bottom:calc(var(--gh, 100vh) * 0.1);width:calc(var(--u) * 140)}#progress.hidden,body[data-state=over] #progress{display:none}#progress .track{position:absolute;left:calc(var(--u) * 16);top:0;bottom:0;width:calc(var(--u) * 9);border-radius:99px;overflow:hidden;background:rgba(8,18,54,.55);border:1.5px solid rgba(120,225,255,.6)}#progress .fill{position:absolute;left:0;right:0;bottom:0;height:0%;background:linear-gradient(0deg,#3a5bff,#3cd2ff 60%,#8ff6ff)}#progress .me,#progress .target{position:absolute;transform:translateY(50%)}#progress .me{left:calc(var(--u) * 8.5);width:calc(var(--u) * 24);height:calc(var(--u) * 32);filter:drop-shadow(0 0 4px rgba(60,210,255,.7))}#progress .me svg,#progress .target svg{width:100%;height:100%;display:block}#progress .me .body{fill:#86cbff;stroke:#0b1a5c;stroke-width:1.2}#progress .me .win{fill:#fff;stroke:#0b1a5c;stroke-width:1}#progress .me .fin{fill:#3f8eff;stroke:#0b1a5c;stroke-width:1}#progress .me .flame{fill:#ffb43c}#progress .target{left:calc(var(--u) * 10);height:calc(var(--u) * 26);display:flex;align-items:center;gap:calc(var(--u) * 4)}#progress .target svg{width:calc(var(--u) * 26);height:calc(var(--u) * 26);flex:none}#progress .target .pole{stroke:#fff;stroke-width:2;stroke-linecap:round}#progress .target .flag{fill:#ffd23a;stroke:#b86e00;stroke-width:1.2;stroke-linejoin:round}#progress .target .label{font:800 calc(var(--u) * 10)/1.1 "Orbitron",system-ui,sans-serif;color:#ffe27a;text-shadow:0 1px 2px #000;display:flex;flex-direction:column}#progress .target .label b{font-size:calc(var(--u) * 13);color:#fff}#progress .marks{position:absolute;inset:0;display:none}#progress.window .marks{display:block}#progress.window .target{display:none}#progress.switching .me,#progress.switching .fill{transition:bottom .7s cubic-bezier(.3,.8,.3,1),height .7s cubic-bezier(.3,.8,.3,1)}#progress.switching .marks{animation:marks-in .7s ease-out}@keyframes marks-in{from{opacity:0}}#progress .mark{position:absolute;left:calc(var(--u) * 12);height:calc(var(--u) * 20);transform:translateY(50%);display:flex;align-items:center;gap:calc(var(--u) * 3)}#progress .mark svg{width:calc(var(--u) * 20);height:calc(var(--u) * 20);flex:none}#progress .mark .pole{stroke:#fff;stroke-width:2;stroke-linecap:round}#progress .mark .flag{fill:#b77dff;stroke:#4a1d8a;stroke-width:1.2;stroke-linejoin:round}#progress .mark.mine .flag{fill:#ffd23a;stroke:#b86e00}#progress .mark.world .flag{fill:#ff8ad8;stroke:#8a1f66}#progress .mark .label{font:800 calc(var(--u) * 9)/1.1 "M PLUS Rounded 1c",system-ui,sans-serif;color:#e2d0ff;text-shadow:0 1px 2px #000;display:flex;flex-direction:column;white-space:nowrap;max-width:calc(var(--u) * 90);overflow:hidden}#progress .mark .label em{font-style:normal;overflow:hidden;text-overflow:ellipsis}#progress .mark .label b{font:800 calc(var(--u) * 10)/1.1 "Orbitron",system-ui,sans-serif;color:#fff}#progress .mark.mine .label{color:#ffe27a}#progress .mark.world .label{color:#ff9be0}#progress .mark.nolabel .label{display:none}#progress .lead{position:absolute;bottom:calc(50% + var(--u) * 20);left:calc(var(--u) * 2);z-index:2;display:none;padding:calc(var(--u) * 3) calc(var(--u) * 6);border-radius:calc(var(--u) * 6);background:rgba(16,6,36,.8);border:1.5px solid currentColor;font:800 calc(var(--u) * 9)/1.15 "Orbitron",system-ui,sans-serif;white-space:nowrap;text-shadow:0 1px 2px #000}#progress .lead b{display:block;font-size:calc(var(--u) * 14)}#progress.world .lead{display:block;animation:rainbow-hue 1.2s linear infinite;color:#ff7a7a}#progress.world .track{border-color:#ff7a7a;box-shadow:0 0 calc(var(--u) * 10) #ff7a7a,inset 0 0 calc(var(--u) * 4) #ff7a7a;animation:rainbow-hue 1.2s linear infinite}#progress.world .fill{transition:height .8s cubic-bezier(.3,.8,.3,1);background:linear-gradient(0deg,#ff4d4d,#ffa53a,#ffe94a,#5cff7a,#45d4ff,#6f6bff,#d65cff,#ff4d4d);background-size:100% 200%;animation:rainbow-run 1s linear infinite}@keyframes rainbow-hue{to{filter:hue-rotate(360deg)}}@keyframes rainbow-run{to{background-position:0 -200%}}#progress .flare{position:absolute;left:calc(var(--u) * 20.5);width:calc(var(--u) * 320);height:calc(var(--u) * 44);transform:translate(-50%,50%);opacity:0;pointer-events:none;will-change:transform,opacity}#progress .flare::before,#progress .flare::after{content:"";position:absolute;top:50%;transform:translateY(-50%)}#progress .flare::before{left:0;right:0;height:calc(var(--u) * 3);border-radius:99px;background:linear-gradient(90deg,transparent,rgba(140,70,255,.5) 22%,#e2c6ff 46%,#fff 50%,#e2c6ff 54%,rgba(140,70,255,.5) 78%,transparent);filter:drop-shadow(0 0 calc(var(--u) * 4) #a35bff)}#progress .flare::after{left:32%;right:32%;height:100%;background:radial-gradient(closest-side,#fff,rgba(190,120,255,.65) 30%,rgba(120,50,255,.25) 60%,transparent)}#progress .flare.go{animation:prog-flare .75s ease-out}#progress .flare.go.top{animation:prog-flare 1s ease-out,rainbow-hue .5s linear infinite}@keyframes prog-flare{0%{opacity:0;transform:translate(-50%,50%) scaleX(.15)}10%{opacity:1;transform:translate(-50%,50%) scaleX(1)}100%{opacity:0;transform:translate(-50%,50%) scaleX(1.6)}}.record-pop{position:absolute;left:0;top:0;display:none;white-space:nowrap;pointer-events:none;will-change:transform,translate,opacity;text-shadow:none;font:800 calc(var(--gw, 100vw) * 0.07)/1 "Orbitron","Eurostile",system-ui,sans-serif;letter-spacing:0.04em;background-image:linear-gradient(180deg,#fffbb8 0%,#ffe03c 45%,#ff9f1a 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-stroke:0.03em #5a2800;paint-order:stroke fill;filter:drop-shadow(0 0 0.15em rgba(255,200,40,0.7))}.record-pop.show{display:block;animation:rec-pop 2.2s forwards}.record-pop.world{background-image:linear-gradient(90deg,#ff4d4d,#ffa53a,#ffe94a,#5cff7a,#45d4ff,#6f6bff,#d65cff,#ff4d4d);background-size:200% 100%;-webkit-text-stroke-color:#1a1040;filter:drop-shadow(0 0 0.15em rgba(255,255,255,0.7));animation:rec-pop 2.2s forwards,rainbow-slide 1s linear infinite}@keyframes rainbow-slide{to{background-position:-200% 0}}.record-pop.mile{font-size:calc(var(--gw, 100vw) * 0.045);background-image:linear-gradient(180deg,#ffffff 0%,#e4f8ff 50%,#9fdcff 100%);-webkit-text-stroke-color:#1c3566;filter:drop-shadow(0 0 0.15em rgba(160,225,255,0.7))}.record-pop.mile.show{animation:rec-pop 1.4s forwards}.record-pop.rank{text-align:center;font-size:calc(var(--gw, 100vw) * 0.055);background-image:linear-gradient(180deg,#f7ecff 0%,#d6abff 45%,#9a5cff 100%);-webkit-text-stroke-color:#2a0d5c;filter:drop-shadow(0 0 0.15em rgba(190,120,255,0.8))}.record-pop.rank.show{animation:rec-pop 1.8s forwards}.record-pop .sub{display:block;margin-top:.3em;letter-spacing:0;color:#fff;-webkit-text-stroke:0;font:800 calc(var(--gw, 100vw) * 0.026)/1 system-ui,sans-serif;text-shadow:0 0 3px #2a0d5c,0 1px 2px #2a0d5c}@keyframes rec-pop{0%{transform:translate(-50%,-100%) skewX(-12deg) scale(0.3);opacity:0;animation-timing-function:ease-out}12%{transform:translate(-50%,-100%) skewX(-12deg) scale(1.15);opacity:1}22%{transform:translate(-50%,-100%) skewX(-12deg) scale(1)}65%{transform:translate(-50%,-130%) skewX(-12deg) scale(1);opacity:1;animation-timing-function:ease-in}100%{transform:translate(-50%,-220%) skewX(-12deg) scale(1);opacity:0}}#fade{background:#fff;opacity:0}#muteBtn{position:fixed;z-index:5;left:calc(var(--gx, 0px) + max(10px,env(safe-area-inset-left)));top:calc(var(--gy, 0px) + max(10px,env(safe-area-inset-top)));width:44px;height:44px;padding:9px;border-radius:50%;background:rgba(8,18,54,.55);border:2px solid rgba(120,225,255,.75);color:#8ff6ff;cursor:pointer;touch-action:manipulation;box-shadow:0 0 10px rgba(60,210,255,.35)}#muteBtn:hover{filter:brightness(1.2)}#muteBtn:active{transform:scale(.94)}#muteBtn:focus{outline:none}#muteBtn:focus-visible{box-shadow:0 0 0 3px #fff}#muteBtn svg{width:100%;height:100%;display:block;fill:currentColor}#muteBtn svg .w{fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round}#muteBtn .off,#muteBtn.off .on{display:none}#muteBtn.off .off{display:block}#muteBtn.off{color:#9aa6c4;border-color:rgba(154,166,196,.7);box-shadow:none}body[data-state=loading] #muteBtn{display:none}#gate{display:none}body.gated[data-state=title] #gate{display:flex}body.gated .title-bottom{visibility:hidden}#gate,#poster{flex-direction:column;align-items:center;gap:12px;border:0;padding:0;background:none;color:#fff;cursor:pointer;touch-action:manipulation}#poster{position:fixed;inset:0;z-index:50;display:flex;justify-content:flex-end;padding-bottom:9vh;background:#000 url(../assets/custom/ui/og_thumb.jpg) center / contain no-repeat}#poster[hidden]{display:none}#gate .ring,#poster .ring{width:min(22vmin,120px);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:rgba(4,10,32,.6);box-shadow:0 0 0 3px #fff,0 0 26px rgba(80,180,255,.85);transition:transform .15s}#gate:hover .ring,#poster:hover .ring{transform:scale(1.07)}#gate .ring svg,#poster .ring svg{width:44%;margin-left:9%;fill:#fff}#gate .label,#poster .label{font:800 clamp(14px,3.6vmin,22px) "M PLUS Rounded 1c",system-ui,sans-serif;white-space:nowrap;text-shadow:0 0 3px #061433,0 1px 2px #061433,0 0 10px rgba(0,0,0,.8)}html.thumb .title-bottom,html.thumb #muteBtn{display:none!important}#touchPad{position:fixed;left:0;right:0;bottom:0;height:var(--ph, 0px);z-index:4;display:none;align-items:center;justify-content:space-between;gap:84px;padding:14px max(16px,env(safe-area-inset-right)) max(14px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}body.pad #touchPad{display:flex}body.pad[data-state=loading] #touchPad{display:none}#touchPad button{flex:1;height:min(100%,150px);border-radius:22px;padding:0;display:grid;place-items:center;touch-action:none;background:rgba(8,18,54,.55);border:2px solid rgba(120,225,255,.75);color:#8ff6ff;box-shadow:0 0 14px rgba(60,210,255,.3);transition:opacity .2s}#touchPad button:active{background:rgba(40,120,220,.6);transform:scale(.97)}#touchPad svg{width:46%;max-width:64px;height:auto;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}body.pad:not([data-state=title]):not([data-state=play]) #touchPad button{opacity:.3}body.pad #muteBtn{left:50%;top:auto;margin-left:-22px;bottom:calc(max(14px,env(safe-area-inset-bottom)) + (var(--ph) - 14px - max(14px,env(safe-area-inset-bottom))) / 2 - 22px)}#chargeButtons{display:none}@media (hover: none) and (pointer: coarse){body[data-state=charge] #chargeButtons{position:fixed;z-index:4;display:flex;justify-content:center;gap:14px;left:var(--gx, 0px);width:var(--gw, 100%);padding:0 16px;top:calc(var(--gy, 0px) + var(--gh, 100vh) * 0.95 - 34px);transform:translateY(-100%)}body.pad[data-state=charge] #chargeButtons{left:0;width:100%;top:calc(var(--gy, 0px) + var(--gh, 50vh));bottom:var(--ph, 0px);transform:none;align-items:center;padding:8px max(16px,env(safe-area-inset-right)) 8px max(16px,env(safe-area-inset-left))}body.pad[data-state=charge] #chargeButtons .btn{flex:1 1 0;max-width:none;height:min(100%,76px);justify-content:center}#chargeButtons .btn .label{flex:none}#chargeButtons .btn:active{transform:skewX(-10deg) scale(.95)}}body.pad[data-state=over] #touchPad{display:none}body.pad[data-state=over] #muteBtn{left:calc(var(--gx, 0px) + max(10px,env(safe-area-inset-left)));margin-left:0;top:calc(var(--gy, 0px) + max(10px,env(safe-area-inset-top)));bottom:auto}.lb-bar{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;pointer-events:auto}.lb-bar.hidden,.lb-modal.hidden{display:none}.chip{display:inline-flex;align-items:center;gap:7px;padding:7px 14px 7px 11px;font:800 15px/1 "M PLUS Rounded 1c",system-ui,sans-serif;color:#e6fbff;background:rgba(8,18,54,.62);border:1.5px solid rgba(120,225,255,.7);border-radius:99px;box-shadow:0 0 10px rgba(60,210,255,.25);cursor:pointer;touch-action:manipulation;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.chip svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.chip:hover{filter:brightness(1.15)}.chip:active{transform:scale(.96)}.chip.named{color:#ffe27a;border-color:rgba(255,226,122,.7)}.chip.accent{color:#061646;border-color:#bff9ff;background:linear-gradient(180deg,#8ff6ff,#3cd2ff 55%,#3a6bff)}.chip[hidden]{display:none}#overBoard{position:absolute;left:max(3%,env(safe-area-inset-left));top:calc(var(--gh, 100vh) * 0.13);width:clamp(220px,38%,300px);max-height:calc(var(--gh, 100vh) * 0.84);overflow:hidden;display:flex;flex-direction:column;gap:8px;padding:12px 12px 10px;border-radius:14px;color:#e6fbff;text-shadow:none;font-family:"M PLUS Rounded 1c",system-ui,sans-serif;background:rgba(6,14,44,.72);border:1.5px solid rgba(120,225,255,.5);box-shadow:0 0 20px rgba(60,210,255,.2);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;transform:translateX(-24px);transition:opacity .6s,transform .6s}#overBoard.show{opacity:1;transform:none;pointer-events:auto}@media (min-aspect-ratio: 1/1){#over.record #overBoard{top:calc(var(--gh, 100vh) * 0.22);max-height:calc(var(--gh, 100vh) * 0.75)}}#overBoard[hidden]{display:none}#overBoard .lb-head{display:flex;align-items:baseline;justify-content:space-between}#overBoard .lb-head span{font-size:18px;font-weight:800;color:#8ff6ff}#overBoard .lb-link{padding:2px 0;font-size:13px}#overBoard .lb-list{max-height:none;overflow:hidden}#overBoard .lb-row{padding:5px 8px;font-size:14px}#overBoard .lb-row .dist{font-size:12px}#overBoard .lb-note{padding:10px 4px}#overBoard .chip{align-self:stretch;justify-content:center}#overRank{font:800 15px/1.35 "M PLUS Rounded 1c",system-ui,sans-serif}#overRank:empty{display:none}#overRank b{color:#ffe27a;font-size:1.25em}#overRank i{font-style:normal;opacity:.55;margin:0 .45em}#overRank .nw{white-space:nowrap}#overRank .lb-note{font-size:13px;font-weight:600;opacity:.9}@media (min-aspect-ratio: 1/1) and (max-height: 560px){#overButtons{gap:9px}#overButtons .btn{min-width:158px;min-height:44px;gap:9px;padding:0 15px 0 14px;font-size:16px;border-radius:9px}#overButtons .btn svg{width:20px;height:20px}#overButtons .btn kbd{font-size:9px;padding:4px 5px}#overBoard,#over.record #overBoard{top:auto;bottom:calc(3vh + env(safe-area-inset-bottom));width:clamp(220px,50%,320px);max-height:calc(var(--gh, 100vh) * 0.7)}}#overBoard.folded{cursor:pointer}#overBoard.folded .lb-list,#overBoard.folded #lbBoardOver{display:none}#overBoard.folded .lb-head span::after{content:" ▸";font-size:.8em;opacity:.8}@media (min-aspect-ratio: 1/1) and (max-height: 380px){#logo{width:min(46%,480px)}.title-bottom{zoom:.72}.charge-card{zoom:.9}.gauge-wrap{zoom:.8}#chargeButtons .btn{zoom:.62}body[data-state=charge] #chargeButtons{top:calc(var(--gy, 0px) + var(--gh, 100vh) * 0.95 - 26px)}#overButtons .btn{zoom:.75}#overBoard,#over.record #overBoard{zoom:.72;max-height:calc(var(--gh, 100vh) * 0.95)}#muteBtn{width:32px;height:32px;padding:6px}#progress{top:calc(var(--gh, 100vh) * 0.22)}.lb-card{zoom:.78;max-height:calc((100dvh - 24px) / .78)}}@media (max-aspect-ratio: 1/1){#overBoard{position:fixed;left:0;right:0;margin:0 auto;width:min(420px,calc(100vw - 24px));top:calc(var(--gy, 0px) + var(--gh, 50vh) + 10px);max-height:none;bottom:calc(4vh + env(safe-area-inset-bottom) + 70px);transform:translateY(16px)}}.lb-modal{position:fixed;inset:0;z-index:30;display:grid;place-items:center;padding:16px;background:rgba(0,4,20,.6);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.lb-card{position:relative;width:min(420px,100%);max-height:calc(100dvh - 32px);overflow:auto;padding:22px 20px 18px;border-radius:18px;color:#e6fbff;background:linear-gradient(180deg,rgba(14,30,78,.96),rgba(6,14,44,.96));border:1.5px solid rgba(120,225,255,.55);box-shadow:0 0 30px rgba(60,210,255,.25);font-family:"M PLUS Rounded 1c",system-ui,sans-serif}.lb-card section{display:flex;flex-direction:column;gap:12px}.lb-card section[hidden]{display:none}.lb-card h2{margin:0 32px 0 0;font-size:22px;font-weight:800;color:#8ff6ff}.lb-card p{margin:0;font-size:14px;line-height:1.55;opacity:.9}.lb-card p b{color:#ffb4a0}.lb-card p.lb-warn{font-size:12.5px;color:#ffb4a0;opacity:.85}.lb-card .btn{min-width:0;width:100%;justify-content:center;transform:none;font-size:18px;min-height:50px}.lb-card .btn>*{transform:none}.lb-card .btn .label{flex:none;text-align:center}.lb-card .btn:active{transform:scale(.97)}.lb-x{position:absolute;top:10px;right:12px;width:36px;height:36px;border:0;border-radius:50%;background:transparent;color:#8ff6ff;font-size:26px;line-height:1;cursor:pointer}.lb-card input{width:100%;padding:12px 14px;border-radius:10px;border:1.5px solid rgba(120,225,255,.6);background:rgba(0,0,0,.35);color:#fff;outline:none;font:800 18px/1.2 "M PLUS Rounded 1c",system-ui,sans-serif}.lb-card input{user-select:text;-webkit-user-select:text}.lb-card input:focus{border-color:#8ff6ff;box-shadow:0 0 0 3px rgba(60,210,255,.25)}#lbCodeIn{font-family:"Orbitron",system-ui,sans-serif;letter-spacing:.06em;text-transform:uppercase}.lb-err{color:#ff9a8a!important;min-height:1.2em;font-weight:700}.lb-err:empty{display:none}.lb-link{align-self:center;padding:4px 6px;border:0;background:none;color:#8ff6ff;font:700 14px "M PLUS Rounded 1c",system-ui,sans-serif;text-decoration:underline;cursor:pointer}.lb-link.danger{color:#ff9a8a;margin-top:4px}.lb-code{padding:14px 10px;border-radius:12px;text-align:center;user-select:text;-webkit-user-select:text;font:800 clamp(14px,4.6vw,20px)/1 "Orbitron",system-ui,sans-serif;letter-spacing:.05em;color:#ffe27a;white-space:nowrap;background:rgba(0,0,0,.35);border:1.5px dashed rgba(255,226,122,.6)}.lb-code.small{font-size:clamp(13px,4vw,17px)}.lb-list{list-style:none;margin:0;padding:0;max-height:min(52dvh,420px);overflow:auto}.lb-row{display:grid;grid-template-columns:2.6em 1fr auto;align-items:center;gap:8px;padding:8px 10px;border-radius:9px;font-size:16px;font-weight:800}.lb-row:nth-child(odd){background:rgba(255,255,255,.04)}.lb-row .rank{font-family:"Orbitron",system-ui,sans-serif;text-align:center;opacity:.8}.lb-row .name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lb-row .dist{font-family:"Orbitron",system-ui,sans-serif;font-size:14px;color:#8ff6ff}.lb-row.top1 .rank{color:#ffd23a;opacity:1}.lb-row.top2 .rank{color:#dfe8f2;opacity:1}.lb-row.top3 .rank{color:#ff9f5a;opacity:1}.lb-row.me{background:rgba(255,226,122,.16);outline:1.5px solid rgba(255,226,122,.55)}.lb-row.ghost{background:rgba(143,246,255,.1);outline:1.5px dashed rgba(143,246,255,.6)}.lb-row.ghost .name{color:#8ff6ff}.lb-gap{text-align:center;line-height:1;opacity:.5}.lb-note{padding:18px 6px;text-align:center;font-size:14px;opacity:.85;list-style:none}.lb-mine{text-align:center;font-weight:800;color:#ffe27a;min-height:1.2em}
