:root{--red:#e31937;--red-glow:#e3193799;--cyan:#6ff6ff;--white:#f4f4f2;--dim:#f4f4f28c;--line:#f4f4f2d9;--panel:#08080a9e;--font:"Rajdhani", "Noto Sans KR", system-ui, sans-serif;--mono:"Share Tech Mono", ui-monospace, monospace;--kr:"Noto Sans KR", "Rajdhani", system-ui, sans-serif;--fun:"Inter", var(--kr);--fun-style:normal;--fun-weight:700;--safe-b:env(safe-area-inset-bottom,0px);--safe-t:env(safe-area-inset-top,0px);--safe-l:env(safe-area-inset-left,0px);--safe-r:env(safe-area-inset-right,0px)}html:lang(ko){--fun:"Noto Sans KR", var(--kr);--fun-weight:800}html:lang(ja){--fun:"Noto Sans JP", var(--kr);--fun-weight:800}html:lang(zh){--fun:"Noto Sans SC", var(--kr);--fun-weight:800}*{box-sizing:border-box}html,body{height:100%;color:var(--white);font-family:var(--font);overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:none;background:#000;margin:0;overflow:hidden}#app{position:fixed;inset:0}#stage{position:absolute;inset:0}#stage canvas{width:100%;height:100%;display:block}.hidden,[hidden]{display:none!important}.mono{font-family:var(--mono);letter-spacing:.02em}button{font-family:var(--font);cursor:pointer}#hud{pointer-events:none;z-index:1;text-shadow:0 1px 6px #0000008c;position:absolute;inset:0}#hud.intro :is(.combo,.meters,.item-slot,.hud-bottom,#touch-buttons){display:none}#hud:before,#hud:after{content:"";z-index:-1;position:absolute;left:0;right:0}#hud:before{background:linear-gradient(#0000006b,#0000);height:150px;top:0}#hud:after{background:linear-gradient(#0000,#0000008c);height:120px;bottom:0}#hud .frame{display:none}.hud-top{justify-content:space-between;align-items:flex-start;display:flex;position:absolute;top:calc(2.2vh + 10px);left:calc(2.2vw + 14px);right:calc(2.2vw + 14px)}.hud-left{flex-direction:column;gap:8px;display:flex}.key-btns{gap:6px;display:flex}.key-btn{pointer-events:auto;border:1px solid var(--line);background:var(--panel);min-width:38px;height:34px;color:var(--white);border-radius:2px;align-items:center;gap:6px;padding:0 9px;font-size:16px;font-weight:700;display:inline-flex;position:relative}.key-btn:hover{background:#ffffff26}.ico{fill:currentColor;flex:none;width:16px;height:16px}.ico .wave{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round}.ico-off{display:none}.muted .mute-btn{color:#ff6a7a;border-color:#ff6a7a}.muted .mute-btn .ico-on{display:none}.muted .mute-btn .ico-off{display:block}.pause-mute{top:calc(18px + var(--safe-t));right:calc(18px + var(--safe-r));z-index:5;position:absolute}#toast{left:50%;bottom:calc(110px + var(--safe-b));opacity:0;pointer-events:none;z-index:60;border:1px solid var(--line);letter-spacing:.2em;background:#000000bf;padding:7px 16px;font-weight:700;transition:opacity .2s,transform .2s;position:fixed;transform:translate(-50%,12px)}#toast.show{opacity:1;transform:translate(-50%)}.hud-dist{white-space:nowrap;align-items:baseline;display:flex}.hud-dist #dist{text-shadow:0 0 12px #0009;font-size:34px;line-height:1}.hud-dist .unit{text-shadow:0 0 12px #0009;margin-left:2px;font-size:20px;line-height:1}.hud-score{text-align:center;position:absolute;left:50%;transform:translate(-50%)}#score{text-shadow:0 0 14px #0009;font-size:42px;line-height:1}.combo{color:#c7c7ce;visibility:hidden;width:240px;height:48px;margin:6px auto 0;font-size:12px;font-weight:700;transition:transform .12s}.combo.on{visibility:visible}.combo-row{white-space:nowrap;justify-content:center;align-items:baseline;gap:10px;height:23px;display:flex}.combo-row strong{font-size:21px;line-height:1}#combo-count{text-overflow:ellipsis;font-family:var(--kr);overflow:hidden}#combo-time{font-size:12px}.combo-track{background:#ffffff2e;height:3px;margin:0 12px;overflow:hidden}.combo-track i{transform-origin:0;background:currentColor;width:100%;height:100%;display:block}.combo-total{font-family:var(--mono);color:#ffd34a;text-shadow:0 0 10px #ffc82899;margin-top:2px;font-size:20px;font-weight:800;line-height:20px}.combo.hot{color:#ffd34a;text-shadow:0 0 10px #ffc828b3}.combo.ending{color:#ff9b80}.combo.combo-pulse{animation:.22s ease-out comboPulse}@keyframes comboPulse{0%,to{transform:scale(1)}35%{transform:scale(1.12)}}.meters{width:340px;margin:4px auto 0;position:relative}#combo-awards{width:min(420px, calc(100vw - 32px - var(--safe-l) - var(--safe-r)));position:absolute;top:40px;left:50%;transform:translate(-50%)}.meters:has(.inv-bar.on) .fever{visibility:hidden}.fever{border:1px solid var(--line);height:8px;position:relative}.fever span{letter-spacing:.2em;color:var(--dim);font-size:11px;position:absolute;top:-4px;right:-58px}#fever-fill{transform-origin:0;background:linear-gradient(90deg, #ff6a2a, var(--red));width:100%;height:100%;box-shadow:0 0 10px var(--red-glow);transform:scaleX(0)}.fever.full #fever-fill{background:linear-gradient(90deg, #fff, #ffd34a, var(--red));animation:.4s infinite alternate pulse}.inv-bar{--inv:#ffd34a;opacity:0;pointer-events:none;flex-direction:column-reverse;transition:opacity .2s;display:flex;position:absolute;top:0;left:0;right:0}.inv-bar.on{opacity:1}.inv-label{letter-spacing:.14em;color:var(--inv);text-shadow:0 0 10px var(--inv);justify-content:space-between;margin-top:4px;font-size:13px;font-weight:700;display:flex}.inv-track{border:1px solid var(--inv);height:8px;box-shadow:0 0 12px var(--inv);background:#0006}.inv-track i{transform-origin:0;background:var(--inv);width:100%;height:100%;box-shadow:0 0 14px var(--inv);display:block}.inv-bar.ending .inv-track,.inv-bar.ending .inv-label{animation:.16s infinite alternate blink}.inv-bar.grace{--inv:#fff}.inv-bar.grace .inv-track i{background:repeating-linear-gradient(45deg,#fff 0 8px,#ffffff59 8px 16px);animation:.5s linear infinite stripes}.inv-bar.rainbow .inv-track i{background:linear-gradient(90deg,#ff004c,#ffb300,#fff200,#00ff8c,#00c8ff,#8a3cff)}#inv-edge{--inv:#ffd34a;opacity:0;box-shadow:inset 0 0 70px 14px var(--inv);transition:opacity .25s;position:absolute;inset:0}#inv-edge.on{opacity:.85;animation:.5s infinite alternate pulse}#inv-edge.ending{animation:.14s infinite alternate blink}#inv-edge.grace{--inv:#fffc;opacity:.5;animation:90ms infinite alternate blink}@keyframes stripes{0%{background-position:0 0}to{background-position:23px 0}}.item-slot{border:1px solid var(--line);background:var(--panel);text-align:center;width:92px;padding:8px 6px 6px;transition:transform .15s;position:absolute;top:calc(2.2vh + 70px);right:calc(2.2vw + 14px)}.item-slot.empty{display:none}.item-slot.new{animation:.5s itemPop}.item-icon{height:36px;font-size:30px;font-weight:700;line-height:36px}.item-icon,.item-btn .tb-icon{background-position:50%;background-repeat:no-repeat;background-size:contain}.item-name{letter-spacing:.08em;margin-top:2px;font-size:11px}.item-key{border:1px solid var(--line);background:#000;min-width:20px;height:20px;padding:0 5px;font-size:10px;line-height:18px;position:absolute;top:-9px;left:-9px}.hud-bottom{left:2.2vw;right:2.2vw;bottom:calc(8px + var(--safe-b));flex-direction:column;align-items:center;gap:7px;display:flex;position:absolute}.key-hints{letter-spacing:.04em;color:#f4f4f29e;font-size:11px;font-family:var(--kr);flex-wrap:wrap;justify-content:center;gap:4px 14px;display:flex}.key-hints span{white-space:nowrap}.key-hints kbd{min-width:16px;font-family:var(--mono);text-align:center;color:var(--white);background:#00000059;border:1px solid #ffffff73;border-radius:3px;margin-right:4px;padding:0 4px;font-size:10px;line-height:15px;display:inline-block}.air{width:100%;max-width:520px}.air-label{letter-spacing:.18em;justify-content:space-between;margin-bottom:4px;font-size:14px;display:flex}.air-bar{border:1px solid var(--line);background:#00000059;height:16px;position:relative}#air-fill{transform-origin:0;background:linear-gradient(90deg,#bffcff,#6ff6ff);width:100%;height:100%;transition:transform 80ms linear;box-shadow:0 0 12px #6ff6ff80}.air-ticks{background:repeating-linear-gradient(90deg,#0000 0 calc(10% - 1px),#0000008c calc(10% - 1px) 10%);position:absolute;inset:0}.air-sub{color:var(--dim);letter-spacing:.2em;text-align:right;margin-top:4px;font-size:10px}.air.low #air-fill{background:var(--red);box-shadow:0 0 14px var(--red-glow);animation:.35s infinite alternate blink}.air.low .air-label{color:#ff6a7a}.air.flash .air-bar{animation:.3s shake}.air.infinite #air-fill{background:linear-gradient(90deg,#fff,#ffe27a,#6ff6ff)}#popups{width:min(420px, calc(100vw - 32px - var(--safe-l) - var(--safe-r)));position:absolute;top:78px;left:50%;transform:translate(-50%)}.pop{letter-spacing:.08em;text-align:center;overflow-wrap:anywhere;text-shadow:0 0 10px #000c;width:max-content;max-width:94%;font-size:16px;font-weight:700;line-height:1.2;animation:.9s ease-out forwards rise;position:absolute;transform:translate(-50%)}.pop .pts{font-family:var(--mono);color:#ffd34a;margin-left:6px;font-size:1.25em;font-weight:800}.pop.near{color:#fff}.pop.cyan{color:var(--cyan)}.pop.gold{color:#ffd34a}.pop.red{color:#ff5a6a}.pop.again{animation-name:riseAgain}#center-text{text-align:center;position:absolute;top:33%;left:0;right:0}.big{letter-spacing:.06em;text-shadow:0 0 24px #0009;font-size:clamp(26px,5vw,54px);font-weight:700;line-height:1;animation:1.1s cubic-bezier(.2,1.6,.4,1) forwards bigPop;display:inline-block}.big small{letter-spacing:.3em;color:var(--dim);margin-top:8px;font-size:.32em;display:block}.big.countdown{font-size:clamp(60px,14vw,140px);animation:.9s ease-out forwards countPop}.story-line{left:16px;right:16px;bottom:calc(18px + var(--safe-b));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:fit-content;max-width:600px;font-family:var(--fun);font-style:var(--fun-style);font-weight:var(--fun-weight);color:var(--white);opacity:0;visibility:hidden;background:#0e1016d6;border:1px solid #f4f4f229;border-radius:18px;align-items:center;gap:12px;margin:0 auto;padding:10px 18px 10px 10px;font-size:17px;line-height:1.3;transition:opacity .3s,transform .3s,visibility 0s .3s;display:flex;position:absolute;transform:translateY(24px);box-shadow:0 12px 32px #00000061}.story-icon{background:#f4f4f21a;border-radius:12px;flex:none;place-items:center;width:44px;height:44px;font-size:26px;line-height:1;display:grid}.story-text{overflow-wrap:anywhere;text-wrap:pretty;min-width:0}.story-go{color:#ffd34a;margin-top:2px;display:block}#hud.intro .story-line.ready{opacity:1;visibility:visible;transition:none;animation:.5s cubic-bezier(.2,1.25,.4,1) .15s both storyIn;transform:none}@keyframes storyIn{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:none}}:lang(ko) :is(.story-line,.pause-story-text,.go-story-text){word-break:keep-all}:lang(ja) :is(.story-line,.pause-story-text,.go-story-text){word-break:auto-phrase}@media (width<=760px),(any-pointer:coarse){.story-line{left:calc(12px + var(--safe-l));right:calc(12px + var(--safe-r));bottom:calc(24px + var(--safe-b));font-size:16px}}@media (height<=500px) and (orientation:landscape){.touch .story-line{bottom:calc(10px + var(--safe-b));padding:8px 16px 8px 8px;font-size:15px}.touch .story-icon{border-radius:10px;width:38px;height:38px;font-size:22px}}@media (height<=300px) and (orientation:landscape){.touch .story-line{bottom:calc(6px + var(--safe-b));border-radius:14px;gap:10px;padding:6px 14px 6px 6px;font-size:13px}.touch .story-icon{border-radius:8px;width:30px;height:30px;font-size:18px}}#banner{text-align:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--panel);opacity:0;letter-spacing:.3em;white-space:nowrap;padding:8px 26px;font-size:22px;position:absolute;top:23%;left:50%;transform:translate(-50%)}#banner small{font-family:var(--kr);letter-spacing:.1em;color:var(--dim);font-size:13px;display:block}#banner.show{animation:2.6s forwards banner}#flash{opacity:0;position:absolute;inset:0;box-shadow:inset 0 0 120px 30px #ffffffe6}#flash.go{animation:.35s ease-out flash}#flash.red{box-shadow:inset 0 0 140px 40px #e31937e6}#flash.gold{box-shadow:inset 0 0 160px 50px #ffbe3ce6}#flash.blue{box-shadow:inset 0 0 120px 24px #328bffcc}#vignette{opacity:0;background:radial-gradient(#0000 50%,#ff8c2859 100%);transition:opacity .3s;position:absolute;inset:0}#vignette.on{opacity:1;animation:.5s infinite alternate pulse}#star-overlay{opacity:0;transition:opacity .35s;position:absolute;inset:0;overflow:hidden;-webkit-mask:radial-gradient(#0000 52%,#000 100%);mask:radial-gradient(#0000 52%,#000 100%)}#star-overlay:before{content:"";will-change:transform;background:conic-gradient(#ff004c,#ffb300,#fff200,#00ff8c,#00c8ff,#8a3cff,#ff004c);width:150vmax;height:150vmax;margin:-75vmax 0 0 -75vmax;animation:1.1s linear infinite hueSpin;position:absolute;top:50%;left:50%}#star-overlay:not(.on):before{animation-play-state:paused}#star-overlay.on{opacity:.8}#star-overlay.ending{animation:.18s infinite alternate blink}.rainbow-text,#score.star{background:linear-gradient(90deg,#ff004c,#ffb300,#fff200,#00ff8c,#00c8ff,#8a3cff,#ff004c) 0 0/200% 100%;color:#0000;text-shadow:none;filter:drop-shadow(0 0 10px #ffffff8c);-webkit-background-clip:text;background-clip:text}#score.star{animation:.5s linear infinite rainbowShift}.pop.rainbow{filter:drop-shadow(0 0 6px #ffffffbf);background:linear-gradient(90deg,#ff004c,#ffb300,#fff200,#00ff8c,#00c8ff,#8a3cff) 0 0/200% 100%;color:#0000;-webkit-background-clip:text;background-clip:text;animation:.9s ease-out forwards rise,.4s linear infinite rainbowShift}.pop.rainbow.again{animation-name:riseAgain,rainbowShift}.pop.combo-award{letter-spacing:.05em;white-space:normal;text-align:center;width:max-content;max-width:100%;font-size:clamp(18px,1.8vw,23px);line-height:1.2;animation:.9s ease-out forwards awardHold;transform:translate(-50%)}.pop.combo-award .pts{margin-left:5px;font-size:1em}.pop.combo-award.rainbow{animation:.9s ease-out forwards awardHold,.4s linear infinite rainbowShift}.pop.combo-award.again{animation-name:awardHoldAgain}.pop.combo-award.rainbow.again{animation-name:awardHoldAgain,rainbowShift}#flash.rainbow{box-shadow:inset 0 0 180px 60px #fffffff2}@keyframes hueSpin{to{transform:rotate(360deg)}}@keyframes rainbowShift{0%{background-position:0 0}to{background-position:200% 0}}#touch-buttons{bottom:calc(108px + var(--safe-b));left:calc(14px + var(--safe-l));pointer-events:none;flex-direction:column;align-items:center;gap:14px;display:none;position:absolute}.touch #touch-buttons{display:flex}.touch-btn{pointer-events:auto;color:#f4f4f2d9;font-family:var(--font);touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;background:#0a0c1052;border:1px solid #f4f4f24d;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:0;font-weight:700;transition:transform .12s,background .15s,box-shadow .15s,opacity .2s,color .15s;display:flex;position:relative}.tb-label{letter-spacing:.14em;opacity:.8;font-size:10px;line-height:1}.tb-label:before{content:attr(data-label)}.touch-btn,.touch-btn *{-webkit-user-drag:none}.tb-icon{display:block}.item-btn{width:72px;height:72px}.item-btn .tb-icon{width:48px;height:36px;font-size:24px;line-height:36px}.item-btn:disabled{opacity:.22;color:#f4f4f2bf;border-style:dashed}.item-btn:disabled .tb-icon{display:none}.item-btn.ready{border-color:var(--item);color:var(--item);box-shadow:0 0 10px -4px var(--item)}.item-btn.ready .tb-label{color:var(--white);opacity:.85}.item-btn.ready:active{background:#ffffff2e;transform:scale(.93)}.item-btn.item-got{animation:.45s cubic-bezier(.2,1.6,.4,1) itemBtnPop}@keyframes itemBtnPop{0%{transform:scale(.6)}to{transform:scale(1)}}.boost-btn{color:#b9faffd9;background:#0a0e1252;border:none;width:88px;height:88px;box-shadow:inset 0 0 0 1px #6ff6ff61}.boost-btn .tb-icon{width:30px;height:30px}.boost-btn .tb-icon path{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round}.boost-btn:active,.boost-btn.on{color:#fff;background:#6ff6ff42;transform:scale(.95);box-shadow:inset 0 0 0 1px #b9fbffcc,0 0 12px #6ff6ff59}.boost-btn.on .tb-icon{animation:.32s ease-in-out infinite alternate boostRise}@keyframes boostRise{0%{transform:translateY(2px)}to{transform:translateY(-3px)}}.boost-btn.dry,.boost-btn.dry:active{color:#f4f4f259;background:#0a0c1033;transform:none;box-shadow:inset 0 0 0 1px #ff5a5a66}.start-guide{left:50%;bottom:calc(118px + var(--safe-b));-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);font-family:var(--kr);color:var(--white);opacity:0;pointer-events:none;background:#06080ca8;border:1px solid #f4f4f247;border-radius:12px;padding:10px 16px 12px;transition:opacity .35s,transform .35s;position:absolute;transform:translate(-50%,10px)}.start-guide.show{opacity:1;transform:translate(-50%)}.guide-title{letter-spacing:.24em;text-align:center;color:#f4f4f28c;margin-bottom:8px;font-size:10px}.guide-rows{gap:7px;margin:0;padding:0;list-style:none;display:grid}.guide-rows li{white-space:nowrap;align-items:center;gap:10px;font-size:13px;display:flex}.guide-rows b{font-weight:600}.guide-keys li>span:last-child{color:#f4f4f29e}.touch .start-guide,.touch .key-hints,.touch .hint,.touch .key-btn>span,.touch [data-i18n=set\.muteHint],.touch .help-table :is(th,td):nth-child(2){display:none}.guide-keys .keys{justify-content:flex-end;gap:4px;min-width:62px;display:inline-flex}.start-guide kbd{min-width:26px;height:24px;font-family:var(--mono);color:var(--white);background:#00000059;border:1px solid #f4f4f2b3;border-bottom-width:2.5px;border-radius:5px;place-items:center;padding:0 6px;font-size:13px;display:inline-grid}.start-guide kbd.wide{min-width:52px;font-size:12px}.touch .item-key{display:none}.touch .hud-top{top:calc(16px + var(--safe-t));left:calc(16px + var(--safe-l));right:calc(16px + var(--safe-r))}.touch .hud-bottom{left:calc(12px + var(--safe-l));right:calc(12px + var(--safe-r));bottom:calc(24px + var(--safe-b))}.touch .key-btn{min-width:44px;min-height:44px}.screen{position:absolute;inset:0}.modal{padding:var(--safe-t) var(--safe-r) var(--safe-b) var(--safe-l);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:20;background:#0009;justify-content:center;align-items:center;display:flex}.modal-card{border:1px solid var(--line);background:#0a0a0ceb;width:min(420px,100vw - 32px);padding:22px;position:relative}.modal-card,.go-card{min-width:0;max-width:calc(100% - 32px);max-height:calc(100vh - 32px - var(--safe-t) - var(--safe-b));max-height:calc(100dvh - 32px - var(--safe-t) - var(--safe-b));overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;overflow-y:auto}.pause-stack{width:min(420px,100vw - 32px);max-height:calc(100vh - 32px - var(--safe-t) - var(--safe-b));max-height:calc(100dvh - 32px - var(--safe-t) - var(--safe-b));flex-direction:column;gap:10px;display:flex}.pause-stack>.modal-card{flex:0 auto;width:100%;max-width:none;min-height:0}.pause-story{border:1px solid var(--line);font-family:var(--kr);background:#0a0a0ce0;flex:none;align-items:center;gap:10px;padding:9px 6px 9px 14px;display:flex}.pause-story-icon{flex:none;font-size:22px;line-height:1}.pause-story-text{min-width:0;font-family:var(--fun);font-style:var(--fun-style);font-weight:var(--fun-weight);overflow-wrap:anywhere;text-wrap:pretty;flex:1;font-size:16px;line-height:1.35}.pause-story-text .story-go{margin-top:2px;font-size:1em}.story-x{width:36px;height:36px;color:var(--dim);background:0 0;border:none;flex:none;place-items:center;padding:0;display:grid}.story-x:hover{color:var(--white)}.story-x svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;width:14px;height:14px}.modal-card.wide{width:min(720px,100vw - 32px);max-height:calc(100vh - 40px);max-height:calc(100dvh - 32px - var(--safe-t) - var(--safe-b));overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;flex-direction:column;display:flex;overflow-y:auto}.modal-x{z-index:2;width:40px;height:40px;color:var(--white);cursor:pointer;touch-action:manipulation;background:#0a0a0ce6;border:1px solid #f4f4f266;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:8px;right:8px}.modal-x svg{width:16px;height:16px}.modal-x path{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round}.modal-x:hover,.modal-x:focus-visible{border-color:var(--white)}.modal-card.wide>.modal-x{flex:none;align-self:flex-end;margin:-12px -12px -28px 0;position:sticky;top:-10px}.modal-x~.modal-title,.modal-x~.lb-head{padding-right:44px}#ranking .modal-x~.lb-head{padding-right:56px}.modal-title{letter-spacing:.24em;margin-bottom:10px;font-size:22px;font-weight:700}.modal-desc{font-family:var(--kr);color:var(--dim);font-size:13px;line-height:1.6}.modal-buttons{justify-content:flex-end;gap:10px;margin-top:16px;display:flex}.modal-buttons.col{flex-direction:column}.primary,.ghost{border:1px solid var(--white);letter-spacing:.18em;border-radius:2px;padding:12px 22px;font-size:18px;font-weight:700}.primary{background:var(--white);color:#000}.primary:hover{background:#fff;box-shadow:0 0 20px #ffffff59}.ghost{color:var(--white);font-family:var(--kr);letter-spacing:.06em;background:0 0;font-size:15px}.ghost:hover{background:#ffffff1a}.hint{letter-spacing:.1em;opacity:.6;vertical-align:middle;border:1px solid;margin-left:8px;padding:1px 5px;font-size:11px}input#nick-input{border:1px solid var(--line);width:100%;color:var(--white);font-size:20px;font-family:var(--kr);background:#000;outline:none;margin-top:6px;padding:12px}.nick-err{color:#ff6a7a;font-family:var(--kr);min-height:20px;margin-top:6px;font-size:13px}.toggle{font-family:var(--kr);border-bottom:1px solid #ffffff1f;justify-content:space-between;align-items:center;padding:10px 0;font-size:15px;display:flex}.toggle input{width:20px;height:20px;accent-color:var(--red)}.quality-setting{flex-wrap:wrap;gap:12px}.quality-setting select{border:1px solid var(--line);min-width:0;max-width:100%;min-height:44px;color:var(--white);font:inherit;background:#101014;border-radius:3px;margin-left:auto;padding:8px}.quality-setting select:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}#quality-hint{font-size:12px}.help-table{border-collapse:collapse;width:100%;font-family:var(--kr);font-size:13px}.help-table th,.help-table td{text-align:left;border-bottom:1px solid #ffffff1f;padding:7px 6px}.help-table th{color:var(--dim);font-weight:400}#menu{padding:calc(76px + var(--safe-t)) calc(5vw + var(--safe-r)) calc(20px + var(--safe-b)) calc(5vw + var(--safe-l));touch-action:pan-y;background:linear-gradient(90deg,#000000b3,#0000 45% 60%,#0000008c);grid-template-rows:minmax(min-content,1fr) auto;grid-template-columns:minmax(0,460px) minmax(260px,460px);justify-content:space-between;align-items:stretch;gap:28px 4vw;display:grid;overflow-y:auto}#menu.car-hover{cursor:grab}body.car-grabbing,body.car-grabbing *{cursor:grabbing!important}.menu-left{flex-direction:column;flex-shrink:0;justify-content:center;gap:22px;min-width:0;max-width:460px;display:flex}.brand-sub{letter-spacing:.9em;color:var(--dim);font-size:18px}.brand h1{letter-spacing:.22em;margin:0;font-size:clamp(48px,7vw,96px);font-weight:700;line-height:1}.brand h1 span{display:block}.noscript-message{z-index:100;color:#fff;background:#09090c;place-content:center;gap:16px;padding:24px;font:18px/1.6 system-ui,sans-serif;display:grid;position:fixed;inset:0}.noscript-message p{max-width:620px}.noscript-message a{color:#6ff6ff}.pilot{flex-wrap:wrap;align-items:flex-start;gap:12px;display:flex}.pilot-label{letter-spacing:.3em;color:var(--dim);padding-top:7px;font-size:12px}.pilot-identity{flex-direction:column;align-items:flex-start;min-width:0;display:flex}.pilot-name{border:none;border-bottom:1px dashed var(--dim);color:var(--white);font-family:var(--kr);background:0 0;padding:2px 0;font-size:18px}.pilot-title{letter-spacing:.2em;border:1px solid var(--red);color:#ff8a9a;margin-top:3px;padding:2px 8px;font-size:12px}.pilot-logout{min-height:32px}.handle-code{margin-inline-start:.4em}.google-account{font-family:var(--kr);justify-items:start;gap:7px;display:grid}.google-login{color:#1f1f1f;max-width:100%;min-height:42px;font:500 14px/1.4 var(--kr);letter-spacing:0;text-align:left;background:#fff;border:1px solid #747775;border-radius:4px;align-items:center;gap:12px;padding:10px 14px;display:inline-flex}.google-login svg{flex-shrink:0}.google-login:hover{background:#f0f4f9}.google-login:focus-visible,.account-link:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}.account-actions{flex-wrap:wrap;align-items:center;gap:0 14px;max-width:100%;display:flex}.account-hint{color:#c0c0c4;overflow-wrap:anywhere;font-size:12px;line-height:1.6}.account-hint.error{color:#ff8a9a}.account-link{color:#ddd;min-height:44px;font:12px/1.5 var(--kr);text-underline-offset:3px;background:0 0;border:0;padding:5px 0;text-decoration:underline}.google-account [disabled]{opacity:.6;cursor:wait}.best{gap:28px;display:flex}.best .k{letter-spacing:.3em;color:var(--dim);font-size:12px;display:block}.best .v{font-size:30px}.menu-row{flex-wrap:wrap;gap:10px;display:flex}.roadster-buy{align-self:flex-start;text-decoration:none}.roadster-buy:after{content:" ↗"}.roadster-buy:focus-visible{outline:2px solid var(--cyan);outline-offset:4px}#play-btn{align-self:flex-start;padding:16px 30px;font-size:26px}.menu-right{align-items:flex-end;display:flex}.menu-footer{font-family:var(--kr);cursor:auto;border-top:1px solid #ffffff2e;grid-column:1/-1;justify-content:space-between;align-items:center;gap:20px;padding-top:14px;font-size:12px;display:flex}.footer-info{flex-wrap:wrap;align-items:center;gap:4px 24px;min-width:0;display:flex}.menu-footer a{color:#c0c0c4;touch-action:manipulation;text-decoration:none}.footer-links{flex-wrap:wrap;align-items:center;gap:4px 18px;display:flex}.footer-links a{align-items:center;min-height:36px;display:inline-flex}.footer-tools{flex-wrap:wrap;align-items:center;gap:4px 18px;display:inline-flex}.menu-language{color:#c0c0c4;align-items:center;gap:8px;display:inline-flex}.menu-language select{border:1px solid var(--line);max-width:148px;min-height:36px;color:var(--white);font:inherit;cursor:pointer;touch-action:manipulation;background:#101014;border-radius:2px;padding:6px 24px 6px 8px}.menu-language select:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}.touch .menu-language select{min-height:44px}.footer-note{color:#aaaab0;flex-basis:100%;margin:0;font-size:11px;line-height:1.6}.menu-footer a:hover{color:#fff}.menu-footer a:focus-visible{outline:2px solid var(--cyan);outline-offset:4px}.menu-footer .kofi-link{color:#ffdce2;background:#160a0ed9;border:1px solid #ff7d9099;border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;gap:9px;min-height:42px;padding:8px 14px;font-size:13px;display:inline-flex}.kofi-link svg{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.kofi-link .kofi-heart{fill:#ff6a86;stroke:#ff6a86}.menu-footer .kofi-link:hover{background:#64182c80;border-color:#ff7d90}.lb-panel{background:var(--panel);border:1px solid #ffffff59;width:100%;min-width:0;padding:16px}.lb-toggle{cursor:pointer;touch-action:manipulation;justify-content:space-between;align-items:center;gap:12px;min-height:44px;list-style:none;display:flex}.lb-toggle::-webkit-details-marker{display:none}.lb-toggle::marker{content:""}.lb-toggle .lb-title{overflow-wrap:anywhere;min-width:0}.lb-toggle-action{color:var(--dim);font-family:var(--kr);flex-shrink:0;align-items:center;gap:8px;font-size:12px;display:inline-flex}.lb-toggle-action svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.lb-toggle:hover .lb-toggle-action{color:var(--white)}.lb-toggle:focus-visible{outline:2px solid var(--cyan);outline-offset:4px}.lb-panel[open]>.lb-toggle{margin-bottom:10px}.lb-panel[open] .lb-toggle-action svg{transform:rotate(180deg)}.lb-panel[open] .lb-expand,.lb-panel:not([open]) .lb-collapse{display:none}.lb-panel .lb-head{justify-content:flex-end}.lb-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.lb-title{letter-spacing:.24em;overflow-wrap:anywhere;font-size:16px;font-weight:700}.lb-tabs{gap:4px;display:flex}.lb-tabs button{color:var(--dim);letter-spacing:.1em;background:0 0;border:1px solid #ffffff4d;padding:4px 7px;font-size:11px}.lb-tabs button.on{border-color:var(--white);color:var(--white);background:#ffffff1f}.lb-areas{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.lb-areas button{color:var(--dim);font-family:var(--kr);background:0 0;border:1px solid #ffffff4d;padding:7px 12px;font-size:12px}.lb-areas button.on{border-color:var(--cyan);color:var(--cyan);background:#6ff6ff14}.lb-areas button:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.lb-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-bottom:8px;display:grid}.lb-metrics button{color:var(--dim);font-family:var(--kr);background:0 0;border:1px solid #ffffff4d;padding:7px 12px;font-size:12px}.lb-metrics button.on{border-color:var(--cyan);color:var(--cyan);background:#6ff6ff14}.lb-metrics button:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}#lb-menu{touch-action:pan-y;overscroll-behavior:contain;max-height:min(43vh,440px);overflow-y:auto}.lb-outside{border-top:1px solid var(--line);margin-top:8px}.lb-list{margin:0;padding:0;font-size:15px;list-style:none}.lb-list.tall{touch-action:pan-y;overscroll-behavior:contain;flex:1;min-height:120px;overflow-y:auto}.lb-list li{border-bottom:1px solid #ffffff14;grid-template-columns:minmax(34px,4ch) 1fr auto;align-items:baseline;gap:8px;padding:6px 4px;display:grid}.lb-list li .r{font-family:var(--mono);color:var(--dim)}.lb-list li .n{font-family:var(--kr);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.lb-list li .n em{color:var(--dim);margin-left:3px;font-size:12px;font-style:normal}.lb-list li .s{font-family:var(--mono)}.lb-list li.me{background:#e319372e}.lb-list li.top1 .r{color:#ffd34a}.lb-list li.empty{color:var(--dim);font-family:var(--kr);text-align:center;padding:20px 0;font-size:13px;display:block}.lb-list .lb-retry{min-height:44px;font-family:var(--kr);margin:12px auto 0;display:block}.lb-note{font-family:var(--kr);color:var(--dim);margin-top:8px;font-size:11px}.lb-weekly{color:#ffd34a;overflow-wrap:anywhere;margin:0 0 8px;line-height:1.5}.lb-weekly[hidden]{display:none}.lb-region-context{flex:none;margin:0 0 10px;line-height:1.6}.lb-friends-context{flex:none;margin:0 0 8px}.lb-friends-context[hidden]{display:none}.lb-friends-open{min-height:36px;color:var(--cyan);font:700 12px/1.2 var(--kr);touch-action:manipulation;cursor:pointer;background:#6ff6ff0f;border:1px solid #6ff6ff99;align-items:center;gap:6px;padding:6px 12px;display:inline-flex}.lb-friends-open:hover{background:#6ff6ff24}.lb-friends-open svg{flex:none;width:18px;height:18px}.lb-region-heading{align-items:center;gap:4px;display:flex}.lb-region-heading>span{overflow-wrap:anywhere;min-width:0}.lb-region-info{width:44px;height:44px;color:var(--dim);touch-action:manipulation;background:0 0;border:0;flex:none;place-items:center;padding:0;display:grid}.lb-region-info>span{border:1px solid;border-radius:50%;place-items:center;width:20px;height:20px;font:600 13px/1 system-ui,sans-serif;display:grid}.lb-region-info:hover,.lb-region-info[aria-expanded=true]{color:var(--cyan)}.lb-region-info:focus-visible{outline:2px solid var(--cyan);outline-offset:-4px;border-radius:4px}.lb-region-help{border-left:2px solid var(--cyan);color:#e0e0e4;overflow-wrap:anywhere;background:#6ff6ff12;margin:8px 0 0;padding:10px 12px;font-size:12px}:lang(ko) :is(.lb-title,.lb-region-help){word-break:keep-all}#gameover{padding:var(--safe-t) var(--safe-r) var(--safe-b) var(--safe-l);z-index:10;background:radial-gradient(#00000059,#000000bf);justify-content:center;align-items:center;display:flex}.go-card{text-align:center;border:1px solid var(--line);background:#08080acc;width:460px;padding:26px 34px;animation:.45s cubic-bezier(.2,1.4,.4,1) cardIn}.go-record{letter-spacing:.3em;color:#000;background:#ffd34a;margin-top:8px;padding:4px 14px;font-size:18px;font-weight:700;animation:.5s infinite alternate pulse;display:inline-block}.go-score{margin:8px 0;font-size:clamp(54px,10vw,76px);line-height:1.1}.go-stats{justify-content:center;gap:26px;margin-bottom:14px;display:flex}.go-stats .k{letter-spacing:.24em;color:var(--dim);font-size:11px;display:block}.go-stats .v{font-size:20px}.go-rank{letter-spacing:.1em;font-size:22px;font-weight:700}.go-rank .pct{color:var(--dim);margin-left:8px;font-size:16px}.go-gap{font-family:var(--kr);color:#ffd34a;min-height:22px;margin-top:4px;font-size:14px}.go-story{max-width:400px;font-family:var(--kr);text-align:left;justify-content:center;align-items:center;gap:10px;margin:0 auto 10px;display:flex}.go-story-icon{flex:none;font-size:28px;line-height:1}.go-story-body{min-width:0}.go-story-text{font-family:var(--fun);font-style:var(--fun-style);font-weight:var(--fun-weight);overflow-wrap:anywhere;font-size:17px;line-height:1.35}.go-actions{flex-direction:column;align-items:stretch;gap:10px;max-width:100%;margin-top:18px;display:inline-flex}.go-buttons{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.share-btn{color:#ffd34a;border-color:#ffd34ab3;justify-content:center;align-items:center;gap:8px;display:flex}.share-btn svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.share-btn:hover{background:#ffd34a1f}.challenge{color:#ffd34a;font-family:var(--kr);overflow-wrap:anywhere;background:#0006;border-left:3px solid #ffd34a;padding:8px 12px;font-size:14px;line-height:1.45}.challenge p{margin:0}#challenge-friend{font:700 13px/1.4 var(--kr);margin-top:8px;padding:7px 12px}#loading{z-index:50;background:#000;justify-content:center;align-items:center;transition:opacity .35s ease-out;display:flex}#loading.done{opacity:0;pointer-events:none}.loading-box{flex-direction:column;align-items:center;gap:16px;width:min(340px,100vw - 48px);display:flex}.loading-text{letter-spacing:.5em;color:var(--dim);text-align:center;font-size:16px;animation:.7s infinite alternate pulse}.loading-bar{background:#ffffff1f;border-radius:2px;width:100%;height:4px;overflow:hidden}.loading-bar i{transform-origin:0;background:linear-gradient(90deg, #ff6a2a, var(--red));width:100%;height:100%;box-shadow:0 0 10px var(--red-glow);display:block;transform:scaleX(0)}.loading-pct{letter-spacing:.24em;color:var(--dim);font-size:12px}@keyframes rise{0%{opacity:0;transform:translate(-50%,6px)scale(.9)}15%{opacity:1}70%{opacity:1}to{opacity:0;transform:translate(-50%,-6px)}}@keyframes riseAgain{0%{opacity:0;transform:translate(-50%,6px)scale(.9)}15%{opacity:1}70%{opacity:1}to{opacity:0;transform:translate(-50%,-6px)}}@keyframes awardHold{0%{opacity:0}12%,75%{opacity:1}to{opacity:0}}@keyframes awardHoldAgain{0%{opacity:0}12%,75%{opacity:1}to{opacity:0}}@keyframes bigPop{0%{opacity:0;transform:scale(.4)}18%{opacity:1;transform:scale(1.12)}30%{transform:scale(1)}80%{opacity:1}to{opacity:0;transform:scale(1.04)}}@keyframes countPop{0%{opacity:0;transform:scale(2)}25%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8)}}@keyframes banner{0%{opacity:0;transform:translate(-50%)scaleX(.3)}12%{opacity:1;transform:translate(-50%)scaleX(1)}80%{opacity:1}to{opacity:0}}@keyframes flash{0%{opacity:1}to{opacity:0}}@keyframes pulse{0%{opacity:.7}to{opacity:1}}@keyframes blink{0%{opacity:.45}to{opacity:1}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}@keyframes itemPop{0%{transform:scale(1)}40%{transform:scale(1.3);box-shadow:0 0 30px #fff9}to{transform:scale(1)}}@keyframes cardIn{0%{opacity:0;transform:translateY(20px)scale(.95)}to{opacity:1;transform:none}}.tier-bronze,[data-tier=bronze]{--tier:#d6905a}.tier-silver,[data-tier=silver]{--tier:#cfd6df}.tier-gold,[data-tier=gold]{--tier:#ffd34a}.tier-platinum,[data-tier=platinum]{--tier:#8ff0ff}.tier-legend,[data-tier=legend]{--tier:#ff6ad5}.coin{flex:none;width:20px;height:20px}.wallet{background:linear-gradient(90deg,#ffd34a29,#00000059);border:1px solid #ffd34a73;border-radius:999px;align-items:center;gap:8px;padding:5px 14px 5px 7px;display:inline-flex}.wallet .coin{filter:drop-shadow(0 0 6px #ffc82873);width:24px;height:24px}.menu-wallet{top:calc(18px + var(--safe-t));right:calc(18px + var(--safe-r));z-index:5;background:#0a0a0cb8;min-height:40px;position:absolute;box-shadow:0 0 18px -6px #ffc82899}#coin-balance{color:#ffe08a;font-size:22px;line-height:1}.google-row{flex-wrap:wrap;align-items:center;gap:8px 10px;max-width:100%;display:flex}.login-bonus{color:#ffd34a;font:700 13px/1.25 var(--kr);background:#ffd34a21;border:1px solid #ffd34aa6;border-radius:999px;align-items:center;gap:6px;padding:6px 12px 6px 8px;animation:1.6s ease-in-out infinite alternate bonusGlow;display:inline-flex}@keyframes bonusGlow{0%{box-shadow:0 0 #ffd34a00}to{box-shadow:0 0 14px #ffd34a73}}.guest-warning{color:#ffb4a2;max-width:440px;font:12px/1.55 var(--kr);align-items:flex-start;gap:8px;margin:0;display:flex}.warn-mark{color:#140500;width:16px;height:16px;font:800 11px/1 var(--font);background:#ff7350;border-radius:50%;flex:none;place-items:center;margin-top:1px;display:grid}.economy-row .ghost{justify-content:center;align-items:center;gap:8px;display:inline-flex;position:relative}.ach-btn{color:#ffe08a;border-color:#ffd34acc}.ach-btn:hover{background:#ffd34a1f}.ico-trophy{flex:none;width:18px;height:18px}.ach-badge{background:var(--red);color:#fff;min-width:20px;height:20px;font:700 12px/20px var(--mono);letter-spacing:0;box-shadow:0 0 10px var(--red-glow);border-radius:10px;padding:0 6px}.ach-badge.locked{box-shadow:none;background:#6b6b74}.shop-btn{color:#ffc2c9;border-color:#ff5a6acc}.shop-btn:hover{background:#ff5a6a1f}.ico-item{flex:none;width:18px;height:18px}.garage-btn{color:#bff9ff;border-color:#6ff6ffbf}.garage-btn:hover{background:#6ff6ff1a}.ach-card{width:min(780px,100vw - 32px)}.ach-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 16px;padding-right:56px;display:flex}.ach-head .modal-title{margin-bottom:0}.ach-summary{color:var(--dim);font:13px/1.5 var(--kr);flex-wrap:wrap;align-items:center;gap:4px 14px;display:flex}.ach-wallet{color:#ffe08a;align-items:center;gap:6px;font-size:16px;display:inline-flex}.ach-guest{font:13px/1.55 var(--kr);background:#ffd34a12;border:1px solid #ffd34a73;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;margin-top:12px;padding:12px 14px;display:flex}.ach-guest p{flex:240px;margin:0}.ach-actions{flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:10px;display:flex}.ach-actions:has(.ach-claim-all.hidden):has(.ach-error:empty){display:none}.ach-claim-all{letter-spacing:.06em;font-size:15px;font-family:var(--kr);padding:10px 18px}.ach-error{color:#ff8a9a;font:13px/1.4 var(--kr)}.ach-group{margin-top:16px}.ach-group-title{color:var(--dim);letter-spacing:.28em;text-transform:uppercase;font-size:12px;font-weight:700;font-family:var(--kr);margin:0 0 8px}.ach-secret-hint{color:var(--dim);font:12px/1.5 var(--kr);margin:-2px 0 8px}.ach-items{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.ach-item{border:1px solid #ffffff1a;border-left:3px solid var(--tier);background:#ffffff06;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 12px;display:grid}.ach-item:not(.unlocked){border-left-color:#ffffff2e}.ach-medal{color:#f4f4f259;border:1px solid #fff3;border-radius:50%;width:36px;height:36px;padding:7px}.ach-item.unlocked{border-color:#fff3;border-left-color:var(--tier);background:#ffffff0d}.ach-item.unlocked .ach-medal{color:var(--tier);border-color:var(--tier);box-shadow:0 0 12px -2px var(--tier);background:radial-gradient(circle,#ffffff29,#0000 70%)}.ach-item.tier-legend.unlocked .ach-medal{background:radial-gradient(circle,#ff6ad54d,#0000 70%),conic-gradient(#ff004c40,#ffb30040,#00c8ff40,#8a3cff40,#ff004c40)}.ach-item.claimable{border-color:var(--tier);animation:1.3s ease-in-out infinite alternate claimGlow}@keyframes claimGlow{0%{box-shadow:0 0 #0000}to{box-shadow:0 0 18px -5px var(--tier)}}.ach-name{color:var(--white);font:700 15px/1.3 var(--kr);overflow-wrap:anywhere}.ach-item:not(.unlocked) .ach-name{color:#d4d4d8}.ach-tier{border:1px solid var(--tier);color:var(--tier);font:700 10px/16px var(--font);letter-spacing:.12em;text-transform:uppercase;vertical-align:2px;white-space:nowrap;margin-left:8px;padding:0 6px;display:inline-block}.ach-desc{color:#b4b4bc;font:12px/1.45 var(--kr);margin-top:2px}.ach-side{flex-direction:column;align-items:flex-end;gap:4px;display:flex}.ach-reward{color:#ffe08a;white-space:nowrap;align-items:center;gap:5px;font-size:14px;display:inline-flex}.ach-reward .coin{width:16px;height:16px}.ach-item:not(.unlocked) .ach-reward{color:#f4f4f280}.ach-item:not(.unlocked) .ach-reward .coin{filter:grayscale(.8)brightness(.8)}.ach-claim{color:#1a1300;min-height:36px;font:700 13px/1.2 var(--kr);white-space:nowrap;touch-action:manipulation;background:#ffd34a;border:1px solid #ffd34a;border-radius:2px;padding:6px 12px}.ach-claim:hover{background:#ffe27a}.ach-claim.login{color:#ffd34a;background:0 0}.ach-claim.login:hover{background:#ffd34a1f}.ach-claim:disabled,.ach-claim-all:disabled{opacity:.6;cursor:wait}.ach-claim:focus-visible,.ach-claim-all:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}.ach-state{color:var(--dim);font:12px/1.4 var(--kr);white-space:nowrap}.ach-state.claimed{color:#86e6a8}.ach-progress{align-items:center;gap:8px;margin-top:6px;display:flex}.ach-bar{background:#ffffff1f;flex:1;height:4px;overflow:hidden}.ach-bar i{background:var(--tier);transform-origin:0;height:100%;display:block}.ach-bar-text{color:var(--dim);white-space:nowrap;font-size:11px}.ach-empty{color:var(--dim);text-align:center;font:13px/1.5 var(--kr);padding:28px 0}:lang(ko) :is(.ach-desc,.ach-guest p,.guest-warning,.ach-secret-hint){word-break:keep-all}.shop-card{width:min(520px,100vw - 32px)}.shop-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 16px;margin-bottom:6px;padding-right:48px;display:flex}.shop-head .modal-title{margin-bottom:0}.shop-list{gap:8px;margin:14px 0 0;padding:0;list-style:none;display:grid}.shop-item{background:#ff5a6a0f;border:1px solid #ffffff2e;border-left:3px solid #ff5a6a;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:14px;padding:12px 14px;display:grid}.shop-icon{filter:drop-shadow(0 0 10px #ff5a6a8c);width:48px;height:48px}.shop-name{color:var(--white);font:700 17px/1.3 var(--kr)}.shop-desc{color:#b4b4bc;font:12px/1.5 var(--kr);margin:3px 0 0}.shop-owned{color:#ffc2c9;font:700 12px/1.4 var(--kr);margin-top:5px}.shop-side{flex-direction:column;align-items:flex-end;gap:5px;display:flex}.shop-buy{color:#1a1300;min-height:40px;font:700 14px/1.2 var(--kr);white-space:nowrap;touch-action:manipulation;cursor:pointer;background:#ffd34a;border:1px solid #ffd34a;border-radius:2px;align-items:center;gap:8px;padding:6px 14px;display:inline-flex}.shop-buy:hover:not(:disabled){background:#ffe27a}.shop-buy:disabled{opacity:.5;cursor:default}.shop-buy:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}.shop-price{align-items:center;gap:4px;display:inline-flex}.shop-price .coin{width:16px;height:16px}.shop-note{color:var(--dim);font:11px/1.3 var(--kr);white-space:nowrap}.shop-status{color:#86e6a8;min-height:1.5em;font:13px/1.5 var(--kr);margin:10px 0 0}.shop-status.error{color:#ff8a9a}.shop-status:empty{display:none}:lang(ko) :is(.shop-desc,.shop-status,.shop-card .modal-desc){word-break:keep-all}.revive-modal{z-index:25}.revive-card{text-align:center;background:radial-gradient(at 50% 0,#ff5a6a3d,#0000 62%),#0a0a0cf0;border-color:#ff5a6ad9;width:min(380px,100vw - 32px);animation:.4s cubic-bezier(.2,1.5,.4,1) rewardIn;box-shadow:0 0 50px -12px #ff5a6a99}.revive-icon{filter:drop-shadow(0 0 16px #ff5a6ab3);width:72px;height:72px;margin:2px auto 6px;animation:1s ease-in-out infinite reviveBeat;display:block}@keyframes reviveBeat{0%,to{transform:scale(1)}15%{transform:scale(1.12)}30%{transform:scale(.98)}45%{transform:scale(1.06)}}.revive-card .modal-title{margin-bottom:6px}.revive-owned{color:#ffc2c9;font:700 13px/1.4 var(--kr);margin-top:8px}.revive-error{color:#ff8a9a;font:13px/1.5 var(--kr);margin:8px 0 0}.revive-error:empty{display:none}.revive-card .modal-buttons{margin-top:16px}.revive-card button:disabled{opacity:.6;cursor:wait}:lang(ko) :is(.revive-card .modal-desc,.revive-error){word-break:keep-all}@media (prefers-reduced-motion:reduce){.revive-card,.revive-icon{animation:none}}.friends-btn{justify-content:center;align-items:center;gap:6px;display:inline-flex;position:relative}.friends-card{width:min(560px,100vw - 32px)}.friends-me{background:#6ff6ff0d;border:1px solid #6ff6ff59;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 14px;margin-top:4px;padding:12px 14px;display:flex}.friends-handle{flex-direction:column;gap:2px;min-width:0;display:flex}.friends-handle .k,.friends-search .k{color:var(--dim);font:12px/1.4 var(--kr)}.friends-handle-row{flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}#friends-handle{color:var(--white);overflow-wrap:anywhere;-webkit-user-select:text;user-select:text;cursor:text;font-size:20px}#friends-handle::selection{background:#6ff6ff59}.friends-copy{min-height:32px;color:var(--white);font:700 12px/1.2 var(--kr);white-space:nowrap;touch-action:manipulation;cursor:pointer;background:0 0;border:1px solid #f4f4f273;border-radius:2px;align-items:center;gap:5px;padding:4px 10px;display:inline-flex}.friends-copy svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linejoin:round;width:14px;height:14px}.friends-copy:hover:not(:disabled){border-color:var(--cyan);color:var(--cyan)}.friends-copy:disabled{opacity:.45}.friends-copy:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.friends-share{border-color:var(--cyan);color:var(--cyan);align-items:center;gap:8px;padding:9px 14px;font-size:14px;display:inline-flex}.friends-share svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.friends-share:disabled{opacity:.45}.friends-search{margin-top:14px}.friends-search-row{gap:8px;margin-top:4px;display:flex}#friends-input{border:1px solid var(--line);min-width:0;color:var(--white);font:18px var(--kr);-webkit-user-select:text;user-select:text;touch-action:manipulation;background:#000;outline:none;flex:1;padding:10px 12px}#friends-input:focus{border-color:var(--cyan)}#friends-send{font-family:var(--kr);letter-spacing:.06em;flex:none;padding:10px 18px;font-size:15px}#friends-send:disabled,#friends-input:disabled{opacity:.5}.friends-status{color:#86e6a8;min-height:1.5em;font:13px/1.5 var(--kr);overflow-wrap:anywhere;margin:8px 0 0}.friends-status.error{color:#ff8a9a}.friends-status:empty{display:none}.friends-group{margin-top:16px}.friends-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.friend-row{background:#ffffff08;border:1px solid #ffffff1f;justify-content:space-between;align-items:center;gap:10px;padding:9px 12px;display:flex}.friend-row.incoming{background:#ffd34a0f;border-color:#ffd34a99}.friend-who{flex-direction:column;gap:2px;min-width:0;display:flex}.friend-name{color:var(--white);font:700 15px/1.3 var(--kr);overflow-wrap:anywhere}.friend-tag{color:var(--dim);font:400 13px var(--mono);margin-left:2px}.friend-best{color:var(--dim);font:12px/1.3 var(--kr)}.friend-dot{vertical-align:2px;background:#f4f4f247;border-radius:50%;width:8px;height:8px;margin-right:7px;display:inline-block}.friend-dot.online{background:#86e6a8;box-shadow:0 0 8px #86e6a8cc}.friend-meta{flex-wrap:wrap;gap:2px 10px;display:flex}.friend-seen{color:#c9c9d0;font:12px/1.3 var(--kr)}.friend-seen.online{color:#86e6a8;font-weight:700}.friend-actions{flex:none;gap:6px;display:flex}.friend-actions button{min-height:36px;color:var(--white);font:700 13px/1.2 var(--kr);white-space:nowrap;touch-action:manipulation;cursor:pointer;background:0 0;border:1px solid #fff6;border-radius:2px;padding:6px 12px}.friend-actions .friend-accept{color:#1a1300;background:#ffd34a;border-color:#ffd34a}.friend-actions .friend-danger{color:#ffc2c9;background:#ff5a6a2e;border-color:#ff5a6a}.friend-actions button:disabled{opacity:.5;cursor:wait}.friend-actions button:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.friends-empty{color:var(--dim);text-align:center;font:13px/1.5 var(--kr);padding:16px 0}:lang(ko) :is(.friends-status,.friends-empty,.friend-invite-card .modal-desc){word-break:keep-all}.friend-invite-card{text-align:center;background:radial-gradient(at 50% 0,#6ff6ff2e,#0000 62%),#0a0a0cf0;border-color:#6ff6ffcc;width:min(380px,100vw - 32px)}.friend-invite-icon{width:60px;height:60px;color:var(--cyan);margin:2px auto 6px;display:block}.friend-invite-name{color:var(--white);overflow-wrap:anywhere;margin:2px 0 6px;font-size:22px}.friend-invite-card .modal-desc.error{color:#ff8a9a}.friend-invite-card .modal-buttons{margin-top:16px}#menu.garage-mode{overflow:hidden}#menu.garage-mode>*{visibility:hidden}.garage{z-index:20;pointer-events:none;padding:calc(16px + var(--safe-t)) calc(16px + var(--safe-r)) calc(16px + var(--safe-b)) calc(5vw + var(--safe-l));align-items:center;display:flex}.garage-panel{overscroll-behavior:contain;pointer-events:auto;border:1px solid var(--line);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0a0a0cdb;width:min(400px,100%);max-height:100%;padding:22px;position:relative;overflow-y:auto}.garage-label{color:var(--dim);font:700 12px/1.4 var(--kr);letter-spacing:.22em;text-transform:uppercase;margin:10px 0}.garage-swatches{grid-template-columns:repeat(auto-fit,minmax(46px,1fr));gap:8px 4px;display:grid}.swatch{min-width:0;color:var(--white);touch-action:manipulation;background:0 0;border:0;align-content:start;justify-items:center;gap:6px;padding:6px 0 4px;display:grid}.swatch-chip{background:radial-gradient(circle at 32% 26%, #ffffffbf, #fff0 36%), radial-gradient(circle at 68% 82%, #0006, #0000 62%), var(--paint);border-radius:50%;width:42px;height:42px;transition:transform .15s;box-shadow:inset 0 0 0 1px #ffffff47,0 3px 10px #0000008c}.swatch:hover .swatch-chip{transform:scale(1.07)}.swatch.on .swatch-chip{box-shadow:inset 0 0 0 1px #ffffff47, 0 0 0 3px #0a0a0c, 0 0 0 5px var(--white), 0 0 18px 4px #ffffff40}.swatch:focus-visible{outline:none}.swatch:focus-visible .swatch-chip{outline:2px solid var(--cyan);outline-offset:7px}.swatch-tag{color:#ffe08a;min-height:15px;font:700 11px/15px var(--mono);white-space:nowrap}.swatch-tag.equipped{color:#86e6a8;font-family:var(--kr);font-size:13px}.swatch-tag .coin{width:11px;height:11px}.swatch-tag .shop-price{gap:2px}.garage-pick{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px;margin:16px 0 10px;display:flex}.garage-name{color:var(--white);font:700 20px/1.3 var(--kr)}.garage-state{color:#86e6a8;font:700 12px/1.4 var(--kr)}.garage-action{width:100%;min-height:50px;font:700 16px/1.2 var(--kr);letter-spacing:.06em;touch-action:manipulation;justify-content:center;align-items:center;gap:12px;padding:10px 16px;display:flex}.garage-action.buy{color:#1a1300;background:#ffd34a;border-color:#ffd34a}.garage-action.buy:hover:not(:disabled){background:#ffe27a;box-shadow:0 0 20px #ffd34a59}.garage-action:disabled{opacity:.5;cursor:default;box-shadow:none}.garage-action:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}.garage-action .shop-price{font-size:15px}.lb-list li.pick{cursor:pointer}.lb-list li.pick:hover{background:#ffffff12}.lb-list li.me.pick:hover{background:#e3193742}.lb-list li.pick:focus-visible{outline:2px solid var(--cyan);outline-offset:-2px}.player-card{width:min(440px,100vw - 32px)}.card-head{flex-wrap:wrap;align-items:baseline;gap:4px 10px;padding-right:44px;display:flex}.card-rank{color:#ffd34a;font:700 12px/1.6 var(--kr);white-space:nowrap;border:1px solid #ffd34a99;padding:1px 8px}.card-name{min-width:0;color:var(--white);font:700 20px/1.3 var(--kr);overflow-wrap:anywhere}.card-name .handle-code{color:var(--dim);font-size:14px}.card-stage{aspect-ratio:16/10;background:radial-gradient(70% 55% at 50% 72%,#ffffff1f,#fff0 70%),linear-gradient(#1a1a1f,#0b0b0d);margin:14px -22px 0}.card-canvas{cursor:grab;touch-action:none;width:100%;height:100%;display:block}.card-canvas:active{cursor:grabbing}.card-paint{color:var(--white);font:700 14px/1.4 var(--kr);align-items:center;gap:8px;margin-top:14px;display:flex}.paint-dot{background:var(--paint);border-radius:50%;flex:none;width:14px;height:14px;box-shadow:inset 0 0 0 1px #fff6}.card-stats{gap:28px;margin-top:12px;display:flex}.card-stats .k{color:var(--dim);font:11px/1.4 var(--kr);letter-spacing:.12em;display:block}.card-stats .v{font-size:20px}.card-date{color:var(--dim);font:12px/1.4 var(--kr);margin-top:8px}.card-date:empty{display:none}.card-extras{font:13px/1.5 var(--kr);flex-wrap:wrap;gap:6px 16px;margin:8px 0 0;padding:0;list-style:none;display:flex}.card-extras .k{color:var(--dim);margin-right:6px}.card-extras .v[style]:before{content:"";background:var(--paint);width:10px;height:10px;box-shadow:0 0 8px var(--paint);vertical-align:-1px;border-radius:50%;margin-right:6px;display:inline-block}.plate-chip{color:#2d2d2d;letter-spacing:.12em;background:#e4e4e0;border-radius:3px;padding:0 6px}.garage-tabs{border-bottom:1px solid #ffffff26;gap:2px;margin:6px 0 0;display:flex}.garage-tabs button{min-width:0;color:var(--dim);font:700 13px/1.2 var(--kr);white-space:nowrap;text-overflow:ellipsis;touch-action:manipulation;background:0 0;border:0;border-bottom:2px solid #0000;flex:1 1 0;padding:9px 4px 8px;overflow:hidden}.garage-tabs button:hover{color:var(--white)}.garage-tabs button.on{color:var(--white);border-bottom-color:var(--white)}.garage-tabs button:focus-visible{outline:2px solid var(--cyan);outline-offset:-2px}.garage-swatches[data-slot=boost] .swatch-chip{background:radial-gradient(circle, #fff 0 16%, var(--paint) 46%, #000000b3 100%);box-shadow:0 0 14px -2px var(--paint), inset 0 0 0 1px #ffffff4d}.garage-swatches[data-slot=neon] .swatch:not(.off) .swatch-chip{background:radial-gradient(circle, var(--paint) 0 26%, #060608eb 70%);box-shadow:0 0 12px var(--paint), inset 0 0 0 2px var(--paint)}.swatch.off .swatch-chip{background:linear-gradient(135deg,#0000 45%,#f4f4f2bf 46% 54%,#0000 55%),#17171b;box-shadow:inset 0 0 0 1px #ffffff59}.garage-swatches:is([data-slot=boost],[data-slot=neon]) .swatch.on .swatch-chip{outline:2px solid var(--white);outline-offset:4px}.garage-plate{flex-direction:column;gap:6px;display:flex}.plate-input{color:#2d2d2d;letter-spacing:.25em;text-align:center;text-transform:uppercase;-webkit-user-select:text;user-select:text;background:#e4e4e0;border:3px solid #9a9a96;border-radius:6px;outline:none;width:100%;padding:12px 14px;font-size:28px;font-weight:700}.plate-input:focus{border-color:var(--cyan)}.plate-hint{color:var(--dim);font:12px/1.4 var(--kr)}.garage-note{color:#bff9ff;font:12px/1.5 var(--kr);margin:10px 0 0}:lang(ko) :is(.garage-note,.start-desc){word-break:keep-all}.start-items{z-index:24;padding:0 16px calc(24px + var(--safe-b));pointer-events:none;justify-content:center;align-items:flex-end;display:flex}.start-card{pointer-events:auto;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:radial-gradient(at 50% 0,#ffd34a29,#0000 65%),#0a0a0ce6;border:1px solid #ffd34ab3;width:min(560px,100%);padding:16px;animation:.25s ease-out startRise}@keyframes startRise{0%{opacity:0;transform:translateY(16px)}}.start-title{color:#ffd34a;font:700 14px/1.2 var(--kr);letter-spacing:.2em;margin-bottom:10px}.start-list{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;display:grid}.start-item{min-height:58px;color:var(--white);text-align:left;touch-action:manipulation;background:#ffd34a12;border:1px solid #ffd34a8c;border-radius:2px;grid-template-rows:auto auto;grid-template-columns:38px minmax(0,1fr);align-items:center;column-gap:10px;padding:9px 12px;display:grid;position:relative}.start-item:hover:not(:disabled){background:#ffd34a29}.start-item:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.start-item.used{cursor:default;background:#86e6a821;border-color:#86e6a8}.start-item:disabled:not(.used){opacity:.6;cursor:wait}.start-icon{grid-row:1/3;width:38px;height:38px}.start-name{font:700 15px/1.25 var(--kr);overflow-wrap:anywhere}.start-state{color:var(--dim);font:12px/1.3 var(--kr)}.start-item.used .start-state{color:#86e6a8;font-weight:700}.start-key{color:var(--dim);font:11px/16px var(--mono);border:1px solid #f4f4f259;padding:0 5px;position:absolute;top:6px;right:7px}.touch .start-key{display:none}.start-go{width:100%;margin-top:12px}#app:has(#start-items:not(.hidden)) #start-guide{visibility:hidden}.start-go:disabled{opacity:.6;cursor:wait}.touch .start-go .hint{display:none}.pause-start{margin:0 0 12px}.pause-start-label{color:var(--dim);font:12px/1.4 var(--kr);letter-spacing:.08em;margin-bottom:6px}.pause-start-list{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.pause-start-list li{font:13px/1.3 var(--kr);border:1px solid #ffd34a80;align-items:center;gap:6px;padding:4px 10px 4px 6px;display:inline-flex}.pause-start-icon{flex:none;width:20px;height:20px}.pause-start-list em{color:var(--dim);font-size:12px;font-style:normal}.shop-group{color:#ffd34a;font:700 12px/1.4 var(--kr);letter-spacing:.2em;margin-top:8px}.reward-modal{z-index:30;overflow:hidden}.reward-card{isolation:isolate;text-align:center;z-index:2;background:radial-gradient(at 50% 0,#ffd34a42,#0000 62%),#0a0a0cf2;border-color:#ffd34acc;width:min(380px,100vw - 32px);padding:28px 22px 22px;animation:.55s cubic-bezier(.2,1.5,.4,1) rewardIn;overflow-x:hidden;box-shadow:0 0 60px -10px #ffc8288c}.reward-rays-clip{z-index:-1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.reward-rays{z-index:-1;background:repeating-conic-gradient(#ffd34a33 0deg 9deg,#0000 9deg 18deg);border-radius:50%;width:360px;height:360px;margin:-180px 0 0 -180px;animation:10s linear infinite raySpin;position:absolute;top:72px;left:50%;-webkit-mask:radial-gradient(circle,#000 18%,#0000 68%);mask:radial-gradient(circle,#000 18%,#0000 68%)}.reward-coin{filter:drop-shadow(0 0 20px #ffc828b3);width:84px;height:84px;margin:0 auto 4px;animation:1.1s cubic-bezier(.2,1.3,.4,1) both coinSpin,2.2s ease-in-out 1.1s infinite alternate coinFloat;display:block}.reward-amount{color:#ffd34a;text-shadow:0 0 20px #ffc828a6;font-size:52px;line-height:1.05;animation:.6s cubic-bezier(.2,1.8,.4,1) .25s both amountPop}.reward-title{color:var(--white);font:800 21px/1.35 var(--kr);overflow-wrap:anywhere;margin-top:6px}.reward-source{color:#ffd34a;font:700 12px/1.4 var(--kr);letter-spacing:.14em;margin-top:8px}.reward-desc{margin:6px 0 0}.reward-card .modal-buttons{justify-content:center;margin-top:18px}.reward-card .primary{min-width:120px}.reward-confetti{z-index:1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.confetti-piece{top:-24px;left:var(--x);background:var(--c);opacity:0;width:8px;height:14px;animation:confettiFall var(--dur) var(--delay) cubic-bezier(.25,.6,.45,1) forwards;border-radius:2px;position:absolute}.confetti-piece:nth-child(3n){width:10px;height:6px}.confetti-piece:nth-child(4n){border-radius:50%;width:8px;height:8px}.firework{width:0;height:0;position:absolute}.firework i{background:var(--c);width:6px;height:6px;box-shadow:0 0 10px var(--c);opacity:0;animation:sparkFly 1.2s var(--delay) cubic-bezier(.1,.8,.3,1) forwards;border-radius:50%;position:absolute;top:-3px;left:-3px}@keyframes rewardIn{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:none}}@keyframes amountPop{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:none}}@keyframes raySpin{to{transform:rotate(360deg)}}@keyframes confettiFall{0%{opacity:1;transform:translate(0)rotate(0)}85%{opacity:1}to{opacity:0;transform:translate(var(--drift), 110vh) rotate(var(--spin))}}@keyframes sparkFly{0%{opacity:1;transform:rotate(var(--a)) translateX(0) scale(1.2)}to{opacity:0;transform:rotate(var(--a)) translateX(120px) scale(.3)}}@keyframes coinSpin{0%{opacity:0;transform:perspective(300px)rotateY(540deg)scale(.4)}to{opacity:1;transform:none}}@keyframes coinFloat{0%{transform:translateY(0)}to{transform:translateY(-5px)}}@media (prefers-reduced-motion:reduce){.reward-card,.reward-coin,.reward-amount,.reward-rays{animation:none}}.go-rewards{border-top:1px solid #ffffff24;margin-top:12px;padding-top:12px;animation:.4s cubic-bezier(.2,1.4,.4,1) cardIn}.go-coins{align-items:center;gap:8px;display:inline-flex}.go-coins .coin{width:22px;height:22px}.go-coins .k,.go-achievements .k{color:var(--dim);font:11px/1.4 var(--kr);letter-spacing:.2em}.go-coins .v{color:#ffd34a;text-shadow:0 0 10px #ffc82880;font-size:24px}.go-guest{color:#ffb4a2;font:12px/1.5 var(--kr);margin:6px 0 0}.go-achievements{margin-top:10px}#go-ach-list{flex-wrap:wrap;justify-content:center;gap:6px;margin:6px 0 0;padding:0;list-style:none;display:flex}#go-ach-list li{border:1px solid var(--tier,#fff6);font:600 13px/1.3 var(--kr);background:#0000004d;align-items:center;gap:6px;padding:4px 10px;animation:.4s both cardIn;display:inline-flex}#go-ach-list li:before{content:"";background:var(--tier);width:8px;height:8px;box-shadow:0 0 8px var(--tier);border-radius:50%}#go-ach-list li.more{color:var(--dim);border-style:dashed}#go-ach-list li.more:before{display:none}.ach-toast{--tier:#ffd34a;border:1px solid var(--tier);width:max-content;max-width:max(200px,min(320px,50vw - 200px));box-shadow:0 6px 24px #0006, 0 0 16px -6px var(--tier);opacity:0;visibility:hidden;pointer-events:none;background:#0a0a0ed6;border-left-width:3px;align-items:center;gap:10px;padding:8px 14px 8px 10px;transition:opacity .25s,transform .25s,visibility 0s .25s;display:flex;position:absolute;top:calc(2.2vh + 10px);right:calc(2.2vw + 14px);transform:translate(18px)}.ach-toast.show{opacity:1;visibility:visible;transition:opacity .25s,transform .35s cubic-bezier(.2,1.4,.4,1);transform:none}.ach-toast-icon{width:26px;height:26px;color:var(--tier);filter:drop-shadow(0 0 6px var(--tier));flex:none}.ach-toast-body{min-width:0}.ach-toast-title{color:var(--tier);font:700 11px/1.3 var(--kr);letter-spacing:.03em}.ach-toast-name{color:var(--white);font:700 15px/1.25 var(--kr);overflow-wrap:anywhere}#hud.intro .ach-toast{display:none}@media (width<=760px),(any-pointer:coarse){.hud-top{top:calc(16px + var(--safe-t));left:calc(16px + var(--safe-l));right:calc(16px + var(--safe-r));grid-template-columns:minmax(0,104px) minmax(0,280px);justify-content:space-between;gap:12px;display:grid}.hud-left,.hud-score{min-width:0}.hud-score{position:static;transform:none}.hud-right{display:none}.hud-dist #dist{font-size:24px}.hud-dist .unit{font-size:15px}.touch .key-btns .key-btn{justify-content:center;width:44px;padding:0}.touch .key-btns .key-btn>span{display:none}.hud-score #score{overflow-wrap:anywhere;font-size:clamp(24px,7vw,30px)}.hud-score .combo{width:100%;height:auto;min-height:44px;margin-top:6px;font-size:10px}.combo:not(.on),.inv-bar:not(.on){display:none}.combo-row{gap:5px}.combo-row strong{flex-shrink:0;font-size:18px}#combo-count{min-width:0}#combo-time{flex-shrink:0;font-size:10px}.combo-total{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.combo.combo-pulse{animation-name:comboGlow}.hud-score .meters{width:auto;margin:0;position:static}.hud-score .fever{height:5px;position:absolute;top:52px;left:0;right:0}.hud-score .fever span{letter-spacing:.14em;font-size:9px;line-height:10px;display:block;top:-13px;right:0}.hud-dist{margin-top:0;position:absolute;top:67px;left:0}.hud-score #score{padding-bottom:37px}#combo-awards{top:125px}#popups{top:164px}.hud-score .inv-bar{flex-direction:column;top:39px;bottom:auto}.inv-label{letter-spacing:.05em;justify-content:flex-end;gap:6px;height:13px;margin-top:0;font-size:10px;line-height:13px}#inv-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}#inv-time{flex-shrink:0}.inv-track{height:5px}.item-slot{top:calc(244px + var(--safe-t));left:calc(16px + var(--safe-l));width:104px;right:auto}.touch #item-slot{display:none}.big{overflow-wrap:anywhere;max-width:100%}#banner{top:auto;bottom:calc(76px + var(--safe-b));left:calc(112px + var(--safe-l));right:calc(16px + var(--safe-r));letter-spacing:.08em;white-space:normal;padding:6px 10px;font-size:15px;transform:none}#banner small{font-size:11px}#banner.show{animation-name:compactBanner}#hud:has(#center-text>.big) #banner{visibility:hidden}.go-card{padding:20px 16px}.go-buttons,.go-actions{gap:8px}.go-buttons .primary,.go-buttons .ghost,.share-btn{padding:12px 14px}.loading-text{letter-spacing:.28em;font-size:14px}.go-score{overflow-wrap:anywhere}.go-stats,.modal-buttons{flex-wrap:wrap}.ach-toast{top:auto;bottom:calc(118px + var(--safe-b));right:calc(16px + var(--safe-r));max-width:calc(100vw - 128px - var(--safe-l) - var(--safe-r));transform:translateY(8px)}.touch .ach-toast{bottom:calc(76px + var(--safe-b))}.ach-items{grid-template-columns:minmax(0,1fr)}}@media (width<=420px){.ach-item{grid-template-columns:32px minmax(0,1fr);gap:4px 10px}.ach-medal{width:32px;height:32px;padding:6px}.ach-side{flex-flow:wrap;grid-column:2;justify-content:flex-start;align-items:center;gap:6px 10px}.shop-item{grid-template-columns:40px minmax(0,1fr);gap:6px 12px}.shop-icon{width:40px;height:40px}.shop-side{flex-flow:wrap;grid-column:2;align-items:center;gap:6px 10px}}@keyframes comboGlow{50%{filter:brightness(1.6)}}@keyframes compactBanner{0%,to{opacity:0}12%,80%{opacity:1}}@media (width<=760px){#hud .frame{top:8px;left:8px;right:8px;bottom:calc(92px + var(--safe-b))}.item-icon{height:28px;font-size:22px;line-height:28px}.hud-bottom{left:12px;right:12px;bottom:calc(24px + var(--safe-b));gap:5px}.key-hints{gap:2px 10px;font-size:10px}.key-btn{min-width:34px;height:30px;font-size:14px}#touch-buttons{bottom:calc(116px + var(--safe-b))}.go-stats{gap:14px}}@media (width<=760px),(height<=500px) and (pointer:coarse){#menu{padding:calc(16px + var(--safe-t)) calc(16px + var(--safe-r)) calc(20px + var(--safe-b)) calc(16px + var(--safe-l));touch-action:pan-y;background:linear-gradient(#000000bf,#00000040 40%,#000c);grid-template-rows:auto;grid-template-columns:minmax(0,1fr);justify-content:stretch;gap:14px;overflow-y:auto}.menu-left,.menu-right{flex-shrink:0}.menu-left{gap:12px;max-width:none}.brand-sub{align-items:center;min-height:52px;display:flex}.brand h1{font-size:clamp(36px,10vw,48px)}.best .v{font-size:22px}.lb-panel{width:100%}.menu-right{display:block}.menu-footer{flex-direction:column;align-items:flex-start;gap:16px;margin-top:4px}.footer-info{gap:5px 20px}.lb-list{font-size:13px}.menu-row{gap:8px}.menu-row .ghost{letter-spacing:.02em;white-space:nowrap;flex:auto;padding:12px 8px;font-size:14px}}@media (width<=760px) and (orientation:portrait){.garage{padding:var(--safe-t) 0 0;align-items:flex-end}.garage-panel{width:100%;max-height:62%;padding:18px 16px calc(16px + var(--safe-b));border-width:1px 0 0}.garage-swatches{grid-template-columns:repeat(auto-fit,minmax(42px,1fr))}.plate-input{padding:10px;font-size:24px}.swatch-chip{width:38px;height:38px}.garage-pick{margin:12px 0 8px}}@media (height<=500px) and (orientation:landscape){.touch .key-hints{display:none}.touch .hud-top{top:calc(8px + var(--safe-t));grid-template-columns:minmax(0,104px) minmax(0,220px)}.touch .hud-left{gap:6px}.touch .hud-dist #dist{font-size:20px}.touch .hud-score #score{font-size:24px}.touch #touch-buttons{bottom:calc(12px + var(--safe-b));flex-direction:row;align-items:flex-end;gap:10px}.touch .item-btn{width:64px;height:64px}.touch .boost-btn{width:80px;height:80px}.touch .hud-bottom{left:calc(196px + var(--safe-l));right:calc(16px + var(--safe-r));bottom:calc(24px + var(--safe-b))}.touch .ach-toast{bottom:calc(80px + var(--safe-b));max-width:min(360px, calc(100vw - 212px - var(--safe-l) - var(--safe-r)))}.touch #combo-awards{top:120px}.touch #popups{top:151px}.touch #popups .pop{font-size:14px}.touch #center-text{top:max(46%, calc(170px + var(--safe-t)));left:calc(126px + var(--safe-l));right:calc(16px + var(--safe-r))}.touch .big.countdown{font-size:60px}.touch #hud.intro #center-text{top:max(30%, calc(64px + var(--safe-t)))}.touch #banner{left:calc(196px + var(--safe-l))}}@media (height<=300px) and (orientation:landscape){.touch .hud-score #score{font-size:20px}.touch .hud-score .combo{min-height:38px;margin-top:8px}.touch .combo-row{height:20px}.touch .combo-row strong{font-size:16px}.touch .combo-total{font-size:16px;line-height:18px}.touch .hud-score .fever{height:5px}.touch #combo-awards{top:116px}.touch #popups{top:144px}.touch #popups .pop{top:0!important}.touch #popups .pop:not(:last-child){display:none}.touch #center-text{top:calc(150px + var(--safe-t))}.touch .big{font-size:22px}.touch .big small{font-size:10px}.touch .big:is(.perfect,.trick) small{font-size:16px}.touch .big.countdown{font-size:44px}}
