/* Current game layout and visibility states; retired UI paints are excluded.
   Character previews and world nameplates are preserved as game content. */
:root{color-scheme:dark}*{box-sizing:border-box}html,body,#game{margin:0;width:100%;height:100%;overflow:hidden}body{touch-action:none}canvas{display:block;width:100%;height:100%}.vignette{position:fixed;inset:0;pointer-events:none;z-index:2}.hud{z-index:5;display:flex;justify-content:space-between;pointer-events:none}.brand{display:flex;align-items:center}.brand b,.brand small{display:block}.brand small{margin-top:3px}.drinks,.timer{display:flex;align-items:baseline;gap:6px;padding:10px 14px}.drinks strong,.timer strong{font:900 1.7rem ui-monospace,monospace}.drinks span,.timer span{font-size:.75rem}.controls div{display:flex;align-items:center}.notice{z-index:6;min-width:250px;transition:.35s}.notice.hide{opacity:0;transform:translate(-50%,12px);pointer-events:none}.notice b,.notice span{display:block}.notice span{margin-top:2px}.crosshair{position:fixed;z-index:4;top:50%;left:50%;transform:translate(-50%,-50%);font:300 1.3rem monospace;pointer-events:none}.drink-button,.jump-button,.mobile-stick{display:none}.death{position:fixed;z-index:15;inset:0;place-content:center;justify-items:center;opacity:0;pointer-events:none;transition:opacity 1.1s}.death.show{opacity:1;pointer-events:auto}.death-word{margin-left:.18em}.death p{letter-spacing:.5em;margin:30px 0}.death button{padding:12px 22px;cursor:pointer}.death button span{margin-left:14px}.loading{position:fixed;z-index:20;inset:0;display:grid;place-content:center;justify-items:center;gap:14px;transition:.6s}.loading.done{opacity:0;pointer-events:none}.loader{width:52px;height:52px;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:760px),(pointer:coarse){.hud{padding:15px}.crosshair{display:none}.right-hud{gap:4px}.drinks,.timer{padding:7px 9px}.mobile-stick{display:block;position:fixed;z-index:8}.mobile-stick span{position:absolute;left:35px;top:35px;width:40px;height:40px}.drink-button,.jump-button{display:block;position:fixed;z-index:8;font-weight:950}.drink-button{right:22px;bottom:36px;width:88px;height:88px}.jump-button{right:112px;bottom:112px;width:65px;height:65px}.drinks small,.timer small{display:none}}
@media(prefers-reduced-motion:reduce){.loader{animation:none}.notice,.loading,.death{transition:none}}
.score,.multiplier{display:flex;align-items:baseline;gap:6px;padding:10px 14px}.score strong,.multiplier strong{font:900 1.7rem ui-monospace,monospace}.boosts{position:fixed;z-index:6;display:flex}.boosts span.active{font-weight:900}.rhythm{position:fixed;z-index:7;left:50%;bottom:22px;width:150px;height:150px;transform:translateX(-50%);display:grid;place-content:center;justify-items:center;pointer-events:none}.rhythm .target-ring,.rhythm .beat-ring{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}.target-ring{width:76px;height:76px}.beat-ring{width:142px;height:142px}.rhythm b{font:950 .82rem ui-monospace,monospace;z-index:1}.rhythm small{position:absolute;top:116px;white-space:nowrap;font-size:.68rem}.rhythm.perfect b{font-size:1.05rem}.reward-pop{position:fixed;z-index:8;left:50%;top:35%;transform:translate(-50%,-50%);font:1000 2rem ui-monospace,monospace;pointer-events:none;animation:reward .9s ease-out forwards}@keyframes reward{to{transform:translate(-50%,-110%);opacity:0}}@media(max-width:760px),(pointer:coarse){.score,.multiplier{padding:7px 8px}.score small,.multiplier small{display:none}.boosts{flex-wrap:wrap;justify-content:flex-end}.rhythm{bottom:160px;transform:translateX(-50%) scale(.78)}}.intro{position:fixed;z-index:19;inset:0;display:grid;place-items:center;padding:20px;transition:.35s}.intro.hidden{opacity:0;pointer-events:none}.intro-kicker{margin:0;font:800 .7rem ui-monospace,monospace;letter-spacing:.16em}.intro h1{font-size:2.4rem}.intro-rules{display:grid;grid-template-columns:1fr 1fr;gap:8px}.intro-rules div{padding:12px}.intro-rules b,.intro-rules span{display:block}.intro-rules span{margin-top:4px;font-size:.8rem}.intro button{width:100%;margin-top:18px;padding:14px;font-weight:950;cursor:pointer}@media(max-width:760px),(pointer:coarse){.intro-rules{grid-template-columns:1fr}.intro h1{font-size:2rem}}@media(max-width:760px),(pointer:coarse){}.rhythm#rhythm small{top:274px;font-size:.92rem}.energy-warning{position:fixed;z-index:11;left:50%;transform:translate(-50%,-50%) scale(.82);padding:12px 24px;opacity:0;pointer-events:none;transition:.15s}.energy-warning.show{opacity:1;transform:translate(-50%,-50%) scale(1)}.energy-warning.failed{padding:18px 34px;font-size:clamp(1.8rem,5vw,4rem)}@keyframes energy-pulse{to{transform:translate(-50%,-50%) scale(1.08)}}@keyframes fail-pulse{to{transform:translate(-50%,-50%) scale(1.1)}}@media(max-width:760px),(pointer:coarse){.rhythm#rhythm{transform-origin:center}.rhythm#rhythm small{top:236px}.energy-warning{top:29%}.energy-warning.failed{top:35%}}.judge-splash{--judge:#fff76a;position:fixed;z-index:12;left:50%;transform:translate(-50%,-50%) scale(.72) skew(-8deg);text-align:center;opacity:0;pointer-events:none}.judge-splash b{position:relative;display:block;font:italic 1000 clamp(3rem,8vw,6.8rem)/.85 Impact,"Arial Black",sans-serif}.judge-splash span{display:block;margin-top:17px;letter-spacing:.24em}.judge-splash.show{animation:judge-pop .9s cubic-bezier(.16,.8,.2,1) both}.judge-splash.perfect{--judge:#e9ff49}.judge-splash.good{--judge:#4de7ff}.judge-splash.fail{--judge:#ff3b32}@keyframes judge-pop{0%{opacity:0;transform:translate(-50%,-50%) scale(1.7) skew(-8deg)}15%{opacity:1;transform:translate(-50%,-50%) scale(1) skew(-8deg)}68%{opacity:1;transform:translate(-50%,-54%) scale(1) skew(-8deg)}100%{opacity:0;transform:translate(-50%,-78%) scale(.88) skew(-8deg)}}@media(max-width:760px),(pointer:coarse){.judge-splash b{font-size:clamp(2.8rem,14vw,5rem)}.judge-splash span{margin-top:13px}}.rhythm#rhythm{display:block;overflow:visible}.rhythm#rhythm .rhythm-lane{left:0;right:0}.rhythm#rhythm .beat-ring{transition:filter .08s}.rhythm#rhythm>b{z-index:4}@media(max-width:760px),(pointer:coarse){}.music-toggle{position:fixed;z-index:9;font:900 .78rem ui-monospace,monospace;letter-spacing:.04em;cursor:pointer}@media(max-width:760px),(pointer:coarse){.music-toggle{padding:7px 9px}}.pause-screen{position:fixed;z-index:14;inset:0;display:grid;place-content:center;justify-items:center;opacity:0;pointer-events:none;transition:.18s}.pause-screen.show{opacity:1;pointer-events:auto}.pause-screen b{font:italic 1000 clamp(4rem,12vw,9rem)/.9 Impact,"Arial Black",sans-serif}.pause-screen span{margin-top:22px;padding:8px 16px;font:900 .9rem ui-monospace,monospace}.combo{display:flex;align-items:baseline;gap:6px;padding:10px 14px}.combo strong{font:900 1.7rem ui-monospace,monospace}.shop-toggle{position:fixed;z-index:9;top:78px;left:26px;padding:9px 13px;font:900 .78rem ui-monospace,monospace;cursor:pointer}.shop-toggle span{margin-left:8px;padding:3px 7px}.shop{position:fixed;z-index:18;inset:0;display:grid;place-items:center;padding:22px;opacity:0;pointer-events:none;transition:.2s}.shop.show{opacity:1;pointer-events:auto}.shop-panel header{display:flex;align-items:center;gap:18px;padding-bottom:15px}.shop-panel header>div:first-child{margin-right:auto}.shop-panel small{font:800 .68rem ui-monospace,monospace;letter-spacing:.14em}.shop-panel h2{margin:2px 0 0;font:1000 2rem Impact,"Arial Black",sans-serif;letter-spacing:.04em}.shop-wallet{padding:9px 12px}.shop-wallet b{margin-left:8px}.shop-panel header button{width:38px;height:38px;font-size:1.5rem;cursor:pointer}.shop-columns{display:grid}.shop-columns h3{padding-left:9px}.shop-grid{display:grid}.shop-item{display:grid;align-items:center}.shop-item small{letter-spacing:0}.shop-item button{font-weight:950;cursor:pointer}.shop-item button:disabled{cursor:default}.shop-panel footer{margin-top:20px;text-align:right}.shop-panel footer strong{margin-left:8px}.final-score{display:grid;justify-items:center}.final-score em{font-weight:900}.death-actions{display:flex;gap:10px}.death-actions button{min-width:150px}.score-comment-pop{position:fixed;z-index:16;top:19%;left:50%;transform:translateX(-50%);font:1000 clamp(1.4rem,4vw,2.8rem) Impact,sans-serif;pointer-events:none}@media(max-width:900px){.right-hud{max-width:74%;flex-wrap:wrap;justify-content:flex-end}.shop-columns{grid-template-columns:1fr}.shop-toggle{top:68px;left:15px}.combo{padding:7px 8px}.combo small{display:none}.shop-panel{padding:15px}.death-actions{flex-direction:column}}@media(prefers-reduced-motion:reduce){.shop{transition:none}}.shop-toggle:disabled{opacity:.32;cursor:not-allowed;pointer-events:none}.combo-display{z-index:7;justify-items:end;pointer-events:none}.shop-preview{display:grid;grid-template-columns:180px 1fr;gap:22px;align-items:center;padding:15px}.preview-stage{height:190px;display:grid;place-items:center;overflow:hidden}.preview-avatar{position:relative;width:92px;height:170px;--outfit:#202423;--hair:#161817}.preview-avatar i{position:absolute;display:block}.preview-head{width:42px;height:48px;border-radius:48% 48% 45% 45%;background:#d5a27f;left:25px;top:28px}.preview-hair{z-index:2;width:48px;height:24px;border-radius:50% 50% 15% 15%;background:var(--hair);left:22px;top:20px}.preview-avatar.hair_spike .preview-hair{height:32px;clip-path:polygon(0 100%,8% 27%,22% 63%,34% 0,48% 58%,62% 5%,75% 62%,91% 20%,100% 100%)}.preview-avatar.hair_afro .preview-hair,.preview-avatar.hair_crown .preview-hair{width:58px;height:42px;left:17px;top:10px;border-radius:50%}.preview-avatar.hair_flame .preview-hair{height:42px;top:7px;clip-path:polygon(8% 100%,0 42%,24% 60%,36% 0,52% 55%,76% 12%,100% 100%)}.preview-body{width:58px;height:62px;left:17px;top:76px;border-radius:15px 15px 8px 8px;background:var(--outfit);box-shadow:inset 0 -8px #0003}.preview-legs{width:48px;height:38px;left:22px;top:132px;border-left:14px solid #171a18;border-right:14px solid #171a18}.preview-board{width:88px;height:6px;left:2px;bottom:0}.shop-preview h3{margin:5px 0;font-size:1.4rem}.shop-preview b{font-size:1.1rem}.shop-preview p{font-size:.78rem}.shop-thumb{grid-row:1/3;border-radius:8px;background:linear-gradient(145deg,var(--thumb),#101510);border:1px solid #ffffff22;position:relative}.shop-thumb:after{content:'';position:absolute;width:19px;height:28px;left:11px;top:9px;border-radius:7px;background:var(--thumb)}.shop-thumb.hair:after{height:17px;border-radius:50% 50% 20% 20%;top:7px;box-shadow:0 17px 0 -4px #d5a27f}.shop-item b{grid-column:2}.shop-item small{grid-column:2}@media(max-width:900px){.combo-display{right:10px;top:44%;min-width:105px;padding:9px 10px}.combo-display strong{font-size:3.5rem}.shop-preview{grid-template-columns:120px 1fr}.preview-stage{height:160px}.preview-avatar{transform:scale(.85)}}.timing-delta{position:absolute;top:139px;min-width:130px;padding:5px 10px;text-align:center;font:900 .78rem ui-monospace,monospace;letter-spacing:.03em;white-space:nowrap}@media(max-width:760px),(pointer:coarse){.timing-delta{top:139px;font-size:.76rem}}.death>p{margin:20px 0 12px;font-size:1rem}.final-score{min-width:min(560px,88vw);padding:18px 28px 20px;gap:7px}.final-score small{font-weight:900;letter-spacing:.22em}.final-score strong{font-size:clamp(4.5rem,11vw,8rem);line-height:.88}.final-score em{font-size:clamp(1.45rem,3.5vw,2.6rem);line-height:1.15}.death-actions button{font-weight:900}@media(max-height:760px){.death-word{font-size:clamp(4.5rem,13vw,8rem)}.death>p{margin:12px 0 7px}.final-score{padding:10px 22px 13px;margin-bottom:13px}.final-score strong{font-size:clamp(3.5rem,9vw,6rem)}.final-score em{font-size:clamp(1.2rem,3vw,2rem)}}.preview-accessory{z-index:0;left:7px;top:75px;width:78px;height:52px;opacity:0}.preview-avatar[class*="accessory_"]:not(.accessory_none) .preview-accessory{opacity:1;background:var(--accessory);clip-path:polygon(50% 42%,0 0,16% 100%,50% 63%,84% 100%,100% 0%)}.preview-avatar.accessory_bat .preview-accessory{clip-path:polygon(50% 45%,0 7%,14% 92%,28% 63%,41% 100%,50% 62%,59% 100%,72% 63%,86% 92%,100% 7%)}.preview-avatar.accessory_spine .preview-accessory{left:35px;top:61px;width:22px;height:76px;clip-path:polygon(50% 0,100% 18%,52% 26%,100% 43%,52% 51%,100% 68%,52% 75%,82% 100%,18% 100%,48% 75%,0 68%,48% 51%,0 43%,48% 26%,0 18%)}.preview-pet{z-index:3;right:-16px;bottom:12px;width:30px;height:30px;border-radius:50%;background:var(--pet);box-shadow:0 0 14px var(--pet);opacity:0}.preview-avatar[class*="pet_"]:not(.pet_none) .preview-pet{opacity:1}.preview-avatar.pet_drone .preview-pet{border-radius:6px}.preview-avatar.pet_godzilla .preview-pet{border-radius:55% 45% 45% 55%;clip-path:polygon(0 20%,70% 20%,100% 0,90% 38%,100% 70%,65% 58%,38% 100%,30% 63%,0 75%)}.preview-avatar.pet_spirit .preview-pet{clip-path:polygon(50% 0,90% 24%,100% 76%,72% 60%,52% 100%,34% 62%,0 78%,10% 22%)}.shop-thumb.accessory:after{height:30px;width:34px;left:3px;top:6px;clip-path:polygon(50% 42%,0 0,16% 100%,50% 63%,84% 100%,100% 0)}.shop-thumb.pet:after{width:24px;height:24px;left:8px;top:8px;border-radius:50%;box-shadow:0 0 9px var(--thumb)}@media(max-width:760px){.shop-columns{grid-template-columns:1fr}.shop-panel{max-height:94vh}.shop-preview{position:sticky;top:-15px;z-index:3}}.npc-dialogues{position:fixed;inset:0;z-index:7;pointer-events:none;overflow:hidden}.npc-shout{position:absolute;left:0;top:0;max-width:min(280px,72vw);padding:10px 15px;border:3px solid #171b18;border-radius:15px 15px 15px 3px;background:#fff;color:#111;font-size:17px;font-weight:1000;line-height:1.25;letter-spacing:.02em;text-align:center;filter:drop-shadow(4px 5px 0 rgba(0,0,0,.55));transform:translate(-50%,-115%) scale(.25) rotate(-7deg);opacity:0;animation:npcShout 2.35s cubic-bezier(.2,.9,.2,1) forwards}.npc-shout:after{content:"";position:absolute;left:25%;bottom:-12px;width:16px;height:16px;background:#fff;border-right:3px solid #171b18;border-bottom:3px solid #171b18;transform:rotate(45deg)}.npc-shout strong{color:#d52323}.npc-impact{position:absolute;width:76px;height:76px;border:7px solid #ffe338;border-radius:50%;transform:translate(-50%,-50%) scale(.2);opacity:0;animation:npcImpact .65s ease-out forwards;box-shadow:0 0 18px #ff6b00,inset 0 0 16px #ff6b00}@keyframes npcShout{0%{opacity:0;transform:translate(-50%,-100%) scale(.2) rotate(-10deg)}12%,72%{opacity:1;transform:translate(-50%,-125%) scale(1) rotate(-2deg)}100%{opacity:0;transform:translate(-50%,-155%) scale(.9) rotate(3deg)}}@keyframes npcImpact{0%{opacity:1;transform:translate(-50%,-50%) scale(.15)}65%{opacity:.9}100%{opacity:0;transform:translate(-50%,-50%) scale(1.8)}}@media(max-width:700px){.npc-shout{font-size:15px;padding:8px 12px}}.shop-panel{width:min(1440px,98vw)}.shop-columns{grid-template-columns:repeat(4,minmax(210px,1fr));align-items:start}.shop-columns>div{min-width:0}.shop-item{grid-template-columns:38px minmax(0,1fr);gap:4px 9px}.shop-thumb{width:34px;height:34px}.shop-item b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.shop-item button{grid-column:1/3;grid-row:3;padding:7px}.preview-avatar.pet_cat .preview-pet{border-radius:52% 48% 45% 45%;clip-path:polygon(0 23%,18% 0,34% 22%,67% 22%,84% 0,100% 25%,92% 100%,8% 100%)}.preview-avatar.pet_dog .preview-pet{border-radius:48%;clip-path:polygon(0 8%,25% 20%,50% 0,75% 20%,100% 8%,88% 100%,12% 100%)}.preview-avatar.pet_mouse .preview-pet{border-radius:55% 45% 48% 52%;box-shadow:-8px -6px 0 -3px var(--pet),8px -6px 0 -3px var(--pet),0 0 14px var(--pet)}.preview-avatar.pet_bird .preview-pet{border-radius:55% 55% 48% 48%;clip-path:polygon(0 42%,26% 24%,44% 0,62% 24%,100% 42%,72% 58%,84% 100%,48% 72%,18% 100%,28% 58%)}@media(max-width:1100px){.shop-columns{grid-template-columns:repeat(2,minmax(230px,1fr))}}@media(max-width:620px){.shop-columns{grid-template-columns:1fr}.shop-panel{width:96vw}}.shop-panel{height:min(94dvh,920px);max-height:94dvh;display:grid;grid-template-rows:auto auto auto minmax(0,1fr) auto;overflow:hidden}.shop-panel>header,.shop-note,.shop-preview,.shop-panel>footer{position:relative;z-index:3}.shop-columns{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:2px 8px 18px 0;scrollbar-width:thin}.shop-columns::-webkit-scrollbar{width:9px}.shop-columns>div{align-self:start}.shop-columns h3{position:sticky;top:0;z-index:2}.shop-panel>footer{margin-top:8px;padding-top:9px}@media(max-height:760px){.shop-panel{height:96dvh;max-height:96dvh;padding-top:12px;padding-bottom:10px}.shop-note{margin:6px 0;font-size:.74rem}.shop-preview{grid-template-columns:112px 1fr;margin:6px 0 8px;padding:8px}.preview-stage{height:126px}.preview-avatar{transform:scale(.68)}.shop-preview h3{font-size:1.05rem}.shop-preview p{margin:4px 0}}@media(max-width:620px){.shop-panel{height:97dvh;max-height:97dvh;padding:10px}.shop-panel>header{gap:7px;flex-wrap:wrap}.shop-note{display:none}.shop-preview{grid-template-columns:94px 1fr;gap:10px;padding:7px;margin:7px 0}.preview-stage{height:116px}.preview-avatar{transform:scale(.62)}.shop-preview h3{font-size:1rem}.shop-preview b{font-size:.85rem}.shop-preview p{font-size:.66rem;margin:3px 0}.shop-columns{padding-right:4px}.shop-columns h3{margin-top:5px}.shop-panel>footer{font-size:.78rem}}@media(max-width:760px),(pointer:coarse){}.death-layout{width:min(1180px,96vw);min-height:100%;margin:auto;grid-template-columns:minmax(480px,1fr) 360px;gap:32px;align-items:center}.leaderboard{align-self:center}.leaderboard header{padding-bottom:13px}.leaderboard header small{font:800 .65rem ui-monospace,monospace;letter-spacing:.18em}.leaderboard h2{margin:4px 0 0;font:1000 1.45rem Impact,"Arial Black",sans-serif;letter-spacing:.06em}.leaderboard form{margin:14px 0}.leaderboard label{display:block;margin-bottom:7px}.leaderboard form>div{display:grid;grid-template-columns:1fr auto}.leaderboard input{min-width:0;padding:11px 12px;font-size:16px}.leaderboard button{padding:0 16px;font-weight:950;cursor:pointer}.leaderboard button:disabled{opacity:.45;cursor:default}.leaderboard form span{display:block;min-height:18px;margin-top:5px;font-size:.7rem}.leaderboard ol{list-style:none;counter-reset:rank;margin:0;padding:0;display:grid;gap:4px}.leaderboard li{counter-increment:rank;display:grid;grid-template-columns:28px 1fr auto;gap:8px;align-items:center;padding:7px 9px}.leaderboard li b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.82rem}.leaderboard li strong{font:900 .9rem ui-monospace,monospace}.leaderboard .empty{display:block;text-align:center;padding:25px 8px}@media(max-width:900px){.death{padding:18px}.death-layout{grid-template-columns:1fr;gap:18px;padding:25px 0}.leaderboard{width:min(560px,92vw)}.death-main{align-self:end}}@media(max-height:760px) and (min-width:901px){.death-layout{grid-template-columns:minmax(420px,1fr) 340px;gap:18px}.leaderboard{padding:15px}.leaderboard li{padding:4px 8px}.leaderboard form{margin:9px 0}.death-main .death-word{font-size:6rem}}.npc-nameplate{position:absolute;left:0;top:0;transform:translate(-50%,-100%);padding:3px 8px;border-radius:3px;background:#07100bd9;border:1px solid #a6ff0099;color:#f2ffe0;font:800 12px/1.2 ui-monospace,"Noto Sans TC",monospace;letter-spacing:.03em;text-shadow:0 2px 4px #000;box-shadow:0 3px 10px #0009,0 0 8px #a6ff0033;white-space:nowrap;will-change:transform,left,top,opacity}.npc-nameplate:before{content:"";position:absolute;left:50%;bottom:-4px;width:6px;height:6px;background:#07100b;border-right:1px solid #a6ff0099;border-bottom:1px solid #a6ff0099;transform:translateX(-50%) rotate(45deg)}.npc-shout{z-index:2}@media(max-width:700px){.npc-nameplate{font-size:10px;padding:2px 6px}}.death{display:grid;place-items:center;padding:28px;overflow:auto}.death-layout{display:contents}.death-main{position:relative;z-index:1;display:grid;justify-items:center}.leaderboard{position:fixed;z-index:2;top:50%;overflow:auto;transform:translateY(-50%);margin:0}.death-main .final-score{margin-left:auto;margin-right:auto}@media(max-width:1100px){.leaderboard{right:12px;width:310px;padding:16px}.leaderboard h2{font-size:1.2rem}.leaderboard li{padding:5px 7px}}@media(max-width:760px){.death{padding:14px}.leaderboard{right:8px;top:auto;bottom:8px;width:min(280px,72vw);max-height:42vh;transform:none;padding:12px;opacity:.97}.leaderboard header,.leaderboard form{margin-bottom:6px}.leaderboard h2{font-size:1rem}.leaderboard label{display:none}.leaderboard li{padding:3px 6px}.death-main{width:100%}}.leaderboard{display:flex;flex-direction:column;max-height:min(82vh,820px);min-height:0}.leaderboard ol{min-height:0;max-height:clamp(230px,48vh,520px);overflow-y:auto;overscroll-behavior:contain;padding-right:6px;scrollbar-width:thin}.leaderboard ol::-webkit-scrollbar{width:8px}.leaderboard li{flex:0 0 auto}@media(max-width:900px){.leaderboard{max-height:76vh}.leaderboard ol{max-height:36vh}}.gacha-entry-button{min-width:92px!important;height:42px!important;padding:5px 13px!important;display:grid!important;place-content:center;font-weight:1000!important;cursor:pointer}.gacha-entry-button span{font-size:.9rem;line-height:1}.gacha-entry-button small{margin-top:3px!important;font-size:.58rem!important;letter-spacing:.18em!important}.gacha-modal{position:fixed;z-index:65;inset:0;display:grid;place-items:center;padding:18px;opacity:0;pointer-events:none;transition:opacity .2s}.gacha-modal.show{opacity:1;pointer-events:auto}.gacha-shell{width:min(1100px,97vw);max-height:94vh;overflow:auto;padding:20px 24px 24px}.gacha-shell>header{display:flex;align-items:center;gap:18px;padding-bottom:14px}.gacha-shell>header>div:first-child{margin-right:auto}.gacha-shell>header small{font:900 .7rem ui-monospace,monospace;letter-spacing:.18em}.gacha-shell h2{margin:2px 0 0;font:italic 1000 2rem/1 Impact,"Arial Black",sans-serif;letter-spacing:.05em}.gacha-wallet{padding:9px 13px;font-size:.82rem}.gacha-wallet b{margin-left:8px;font:900 1rem ui-monospace,monospace}.gacha-shell>header>button{width:42px;height:42px;font-size:1.5rem;cursor:pointer}.gacha-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:16px 0}.gacha-tabs button{padding:11px;cursor:pointer}.gacha-tabs span,.gacha-tabs small{display:block}.gacha-tabs span{font-weight:1000;font-size:1rem}.gacha-tabs small{margin-top:4px;font-size:.72rem}.gacha-banner{min-height:116px;display:flex;align-items:end;justify-content:space-between;gap:20px;padding:18px 20px}.gacha-banner small{font:900 .7rem ui-monospace,monospace;letter-spacing:.2em}.gacha-banner h3{margin:3px 0 5px;font:1000 1.9rem Impact,"Arial Black",sans-serif}.gacha-banner p{margin:0;font-size:.86rem}.gacha-rates{flex:0 0 auto;padding:10px 12px;font:900 .75rem ui-monospace,monospace}.gacha-message{text-align:center;min-height:24px;margin:13px 0 8px;font-weight:900}.gacha-results{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));gap:12px;min-height:258px;align-items:stretch}.gacha-results.single{grid-template-columns:minmax(180px,240px);justify-content:center}.gacha-card{position:relative;min-height:250px;overflow:hidden;perspective:800px}.card-back,.card-face{position:absolute;inset:0;display:grid;place-items:center;backface-visibility:hidden;transition:transform .65s cubic-bezier(.2,.75,.2,1)}.card-back{align-content:center}.card-back b{font:italic 1000 4rem/1 Impact,sans-serif}.card-back span{font:900 .6rem ui-monospace,monospace;letter-spacing:.22em}.card-face{align-content:end;padding:14px;transform:rotateY(180deg);text-align:center}.card-face small{position:absolute;top:10px;left:10px;z-index:1;padding:5px 7px;font-weight:1000}.card-face i{position:absolute;top:49px;z-index:1;font:italic 1000 5rem/1 Impact,sans-serif}.card-face h4{z-index:1;margin:0;font:1000 1.25rem/1.1 Impact,"Arial Black",sans-serif;letter-spacing:.04em}.card-face p{z-index:1;margin:5px 0 0;font-size:.72rem}.card-face em{z-index:1;margin-top:7px;font:900 .65rem ui-monospace,monospace}.gacha-card.revealed .card-back{transform:rotateY(180deg)}.gacha-card.revealed .card-face{transform:rotateY(360deg)}.gacha-card.revealed{animation:card-arrive .55s ease both}.gacha-collection{display:flex;align-items:center;justify-content:space-between;margin-top:12px;font-size:.8rem}.gacha-collection button{text-decoration:underline;cursor:pointer}.gacha-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.gacha-actions button{padding:13px;cursor:pointer}.gacha-actions button:disabled{opacity:.48;cursor:default}.gacha-actions span,.gacha-actions small{display:block}.gacha-actions span{font-weight:1000;font-size:1rem}.gacha-actions small{margin-top:4px}.collection-empty{grid-column:1/-1;align-self:center;text-align:center}@keyframes card-arrive{0%{opacity:0;transform:translateY(-22px) scale(.86)}100%{opacity:1;transform:none}}@media(max-width:800px){.gacha-shell{padding:14px}.gacha-results{grid-template-columns:repeat(5,minmax(92px,1fr));gap:6px;overflow-x:auto}.gacha-card{min-width:92px;min-height:210px}.card-face i{font-size:4rem}.gacha-banner{align-items:start;flex-direction:column}.gacha-rates{align-self:stretch;text-align:center}}@media(max-width:560px){.gacha-modal{padding:7px}.gacha-shell>header{gap:8px}.gacha-shell h2{font-size:1.45rem}.gacha-wallet{padding:7px;font-size:.68rem}.gacha-results{grid-template-columns:repeat(5,118px);justify-content:start}.gacha-actions{grid-template-columns:1fr}.gacha-tabs button{padding:9px 5px}.gacha-banner{min-height:100px;padding:13px}.gacha-entry-button{min-width:72px!important;padding-inline:8px!important}}.gacha-banner-side{display:grid;gap:8px;min-width:210px}.gacha-banner-side button{padding:10px 14px;font-weight:1000;cursor:pointer}.gacha-results.catalogue{grid-template-columns:repeat(5,minmax(150px,1fr));max-height:52vh;overflow:auto;padding:10px;align-content:start}.gacha-results.catalogue .gacha-card{min-height:270px}.card-copy{z-index:2;display:grid;justify-items:center;width:100%}.card-copy span{display:block;margin-top:5px;font-size:.6rem;line-height:1.2}.card-copy em{display:block}@media(max-width:800px){.gacha-banner-side{width:100%;min-width:0}.gacha-results.catalogue{grid-template-columns:repeat(3,minmax(126px,1fr))}}@media(max-width:560px){.gacha-results.catalogue{grid-template-columns:repeat(2,minmax(128px,1fr));max-height:50vh}.gacha-results.catalogue .gacha-card{min-width:128px}.gacha-banner-side button{font-size:.84rem}}.starter-pack-button{width:auto!important;height:auto!important;padding:10px 14px!important;font:950 .78rem ui-monospace,monospace!important;white-space:nowrap}.gift-modal{position:fixed;z-index:35;inset:0;display:grid;place-items:center;padding:22px;opacity:0;pointer-events:none;transition:.22s}.gift-modal.show{opacity:1;pointer-events:auto}.gift-card{position:relative;width:min(760px,94vw);overflow:hidden;padding:34px}.gift-close{position:absolute;z-index:2;right:18px;top:16px;width:40px;height:40px;font-size:1.6rem;cursor:pointer}.gift-badge{display:inline-block;padding:6px 12px;font:1000 .72rem ui-monospace,monospace;letter-spacing:.12em}.gift-hero{position:relative;display:grid;grid-template-columns:170px 1fr;align-items:center;gap:24px;margin:22px 0}.gift-hero small{font-weight:900}.gift-hero h2{margin:5px 0 8px;font:1000 clamp(2rem,5vw,4.1rem) Impact,"Arial Black",sans-serif;line-height:.95}.gift-hero p{max-width:460px;margin:0;font-weight:750}.gift-hero kbd{display:inline-grid;place-items:center;min-width:26px;padding:3px 7px}.auto-click-icon{aspect-ratio:1;display:grid;place-items:center;align-content:center}.auto-click-icon b{font:1000 5rem Impact;line-height:.9}.auto-click-icon span{font:1000 .75rem ui-monospace;letter-spacing:.18em}.gift-perks{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.gift-perks span{padding:11px;text-align:center;font-weight:900}.gift-price{display:flex;align-items:baseline;justify-content:center;gap:12px;margin:24px 0 12px}.gift-price strong{font:1000 2.4rem Impact}.gift-buy{display:block;width:min(420px,100%);margin:auto;padding:15px 20px;font:1000 1.05rem ui-monospace;cursor:pointer}.gift-joke{text-align:center;margin:16px 0 0;font-size:.75rem}.gift-confirm{position:absolute;inset:0;display:grid;place-items:center;padding:20px;opacity:0;pointer-events:none;transition:.18s}.gift-confirm.show{opacity:1;pointer-events:auto}.gift-confirm>div{width:min(440px,90%);padding:28px;text-align:center}.gift-confirm b{font-size:1.35rem}.gift-confirm p{line-height:1.6}.gift-confirm>div>div{display:flex;gap:10px;justify-content:center}.gift-confirm button{padding:11px 17px;font-weight:900;cursor:pointer}.auto-click-status{position:fixed;z-index:12;right:24px;top:126px;padding:9px 13px;font:900 .76rem ui-monospace;opacity:0;transform:translateY(-8px);transition:.2s;pointer-events:none}.auto-click-status.show{opacity:1;transform:none}@keyframes giftPulse{50%{transform:translateY(-2px)}}@media(max-width:680px){.gift-card{padding:24px 18px}.gift-hero{grid-template-columns:105px 1fr;gap:14px}.gift-hero h2{font-size:2rem}.auto-click-icon b{font-size:3.3rem}.gift-perks{grid-template-columns:1fr}.gift-price{margin-top:16px}.starter-pack-button{padding:8px!important}.gift-confirm>div>div{flex-direction:column}}.death,.pause-screen{position:fixed}.screen-settings{position:absolute!important;z-index:5;width:48px!important;height:48px!important;min-width:0!important;padding:0!important;font-size:1.45rem!important;line-height:1!important;cursor:pointer}.screen-settings:hover{transform:rotate(18deg)}.settings-modal{position:fixed;z-index:40;inset:0;display:grid;place-items:center;padding:20px;opacity:0;pointer-events:none;transition:.2s}.settings-modal.show{opacity:1;pointer-events:auto}.settings-card{max-height:90vh;overflow:auto;padding:24px}.settings-card header{display:flex;align-items:center;padding-bottom:16px}.settings-card header>div{margin-right:auto}.settings-card header small{font:900 .7rem ui-monospace,monospace;letter-spacing:.18em}.settings-card h2{margin:3px 0 0;font:1000 2rem Impact,"Arial Black",sans-serif}.settings-card header button{width:40px;height:40px;font-size:1.5rem;cursor:pointer}.quality-select{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0}.quality-select button{padding:14px;font-weight:950;cursor:pointer}.settings-list{display:grid;gap:8px}.settings-list label{display:flex;align-items:center;gap:15px;padding:12px 14px;cursor:pointer}.settings-list label span{display:grid;gap:2px;margin-right:auto}.settings-list input{appearance:none;width:46px;height:25px;position:relative;cursor:pointer;transition:.18s}.settings-list input:before{content:"";position:absolute;top:3px;left:3px;width:17px;height:17px;transition:.18s}.settings-list input:checked:before{left:24px}.settings-card>p{margin:16px 0 0;text-align:center}.low-quality .reward-pop,.low-quality .npc-impact{filter:none!important;text-shadow:none!important}@media(max-width:680px){.screen-settings{top:14px;right:14px;width:42px!important;height:42px!important}.settings-card{padding:18px}.settings-list label{padding:10px}}.shop-toggle,.auto-click-status{display:none!important}@keyframes explosionWord{0%{transform:scale(.2) rotate(-12deg)}70%{transform:scale(1.14) rotate(3deg)}100%{transform:none}}.intro-card{max-height:92vh;overflow:auto}.intro h1{margin:7px 0 5px}.intro-lead{margin:0 0 18px;line-height:1.55}.tutorial-steps{display:grid;gap:9px}.tutorial-steps article{display:grid;grid-template-columns:42px 1fr;gap:13px;align-items:start;padding:13px 15px}.tutorial-steps i{display:grid;place-items:center;width:34px;height:34px;font:1000 1rem ui-monospace,monospace}.tutorial-steps b,.tutorial-steps span{display:block}.tutorial-steps b{font-size:1rem}.tutorial-steps span{margin-top:4px;line-height:1.55}.intro kbd{display:inline-grid;place-items:center;min-width:27px;padding:2px 6px;font:900 .74rem ui-monospace,monospace}.tutorial-keys{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.tutorial-keys span{padding:7px 10px;font-size:.78rem}.tutorial-warning{margin:13px 0 0;padding:10px 12px;font-size:.8rem;line-height:1.5}@media(max-width:600px){.intro-card{padding:20px 17px}.intro h1{font-size:1.75rem}.intro-lead{font-size:.88rem}.tutorial-steps article{grid-template-columns:34px 1fr;padding:10px}.tutorial-steps i{width:28px;height:28px}.tutorial-steps span{font-size:.78rem}.tutorial-warning{font-size:.75rem}}.challenge-reward{display:grid;grid-template-columns:1.25fr 1fr;gap:12px;align-items:stretch;margin:0 0 15px;padding:14px}.challenge-reward>div:first-child{display:grid;align-content:center;gap:3px}.challenge-reward small{font:900 .65rem ui-monospace,monospace;letter-spacing:.14em}.challenge-reward b{font-size:1.15rem}.challenge-reward span{font-size:.78rem;line-height:1.45}.reward-prizes{display:grid;grid-template-columns:1fr 1fr;gap:7px}.reward-prizes strong{display:grid;place-items:center;padding:10px 7px;text-align:center;font-size:.8rem}.reward-prizes em{display:block;font:1000 1.08rem Impact,"Arial Black",sans-serif}@media(max-width:600px){.challenge-reward{grid-template-columns:1fr;padding:10px}.reward-prizes strong{padding:7px}}:root{
  --acid:#b8ff20;--acid-2:#73ff00;--cyan:#64f5ff;--amber:#ffd84d;--danger:#ff4c45;
  --ink:#050806;--panel:rgba(7,12,9,.86);--line:rgba(184,255,32,.42);--muted:#98a49b
}.hud{padding:0}.brand{position:relative}.brand-mark{font-size:2rem}.right-hud{margin-left:auto}.score,.multiplier,.timer,.drinks{align-content:center}.score small,.multiplier small,.timer small,.drinks small{grid-column:1/3;align-self:end;margin-bottom:1px;font:800 9px/1 ui-monospace,monospace;letter-spacing:.12em;text-transform:uppercase}.score strong,.multiplier strong,.timer strong,.drinks strong{line-height:.9;letter-spacing:.03em}.score span,.multiplier span,.timer span,.drinks span{align-self:end;font:800 .62rem ui-monospace,monospace}.music-toggle{left:20px}.boosts span{position:relative}.controls{gap:0}.controls div{font:700 .65rem ui-monospace,monospace}.notice b{letter-spacing:.08em}.crosshair{font-size:1rem}.rhythm#rhythm .target-ring,.rhythm#rhythm .beat-ring{transform:translate(-50%,-50%) rotate(45deg)}.rhythm#rhythm .beat-ring{left:92%}.rhythm#rhythm>small{letter-spacing:.04em}.combo-display strong{font-size:clamp(4.2rem,7vw,7rem)}.combo-display span{margin-top:3px;text-transform:uppercase;letter-spacing:.12em}.judge-splash{width:min(80vw,560px)}.energy-warning{letter-spacing:.1em}.energy-warning.failed{top:31%}.pause-screen b{font-size:clamp(4.8rem,12vw,9rem);letter-spacing:.12em}.pause-screen span{letter-spacing:.13em}.screen-settings{top:20px!important;right:20px}.leaderboard{right:20px;width:340px;padding:18px}.shop-panel{position:relative}.shop-panel h2,.settings-card h2{letter-spacing:.06em}.shop-note{margin:10px 0}.shop-preview{margin:12px 0 14px}.shop-columns{gap:10px}.shop-columns>div{padding:0 8px 8px}.shop-columns h3{margin:0 -8px 8px;padding:9px 11px;font:900 .78rem ui-monospace,monospace;letter-spacing:.08em}.shop-grid{gap:6px}.shop-item{padding:8px}.intro-card{position:relative;width:min(94vw,760px);padding:28px 30px}.intro h1{letter-spacing:.03em}.intro button{letter-spacing:.08em}@media(max-width:1100px){.combo-display{min-width:130px}
}@media(max-width:760px),(pointer:coarse){.brand{min-width:0}
  .right-hud{display:grid;grid-template-columns:1fr 1fr}.score{padding-left:10px}
  .music-toggle{left:10px}.boosts{right:10px}
  .combo-display{top:33%;min-width:92px;padding:8px 9px}.combo-display span{display:none}.rhythm#rhythm>b{left:12%}.rhythm#rhythm>small{left:50%}.rhythm#rhythm .timing-delta{left:12%}.leaderboard{right:8px;width:min(280px,72vw)}.shop-panel{padding:13px}.shop-columns{grid-template-columns:1fr}.intro-card{padding:22px 16px}
}@media(max-height:680px) and (min-width:761px){.rhythm#rhythm{bottom:45px;transform:translateX(-50%) scale(.86)}.controls{bottom:10px}.notice{bottom:52px}.combo-display{top:42%}.boosts{top:78px}.music-toggle{top:78px}}.brand{padding-block:10px}.brand b{font-size:1.12rem}.brand small{font-size:.72rem;line-height:1.35}.score{padding-left:32px}.score small,.multiplier small,.timer small,.drinks small{font-size:12px;line-height:1.25}.score strong,.multiplier strong,.timer strong,.drinks strong{font-size:2rem}.score span,.multiplier span,.timer span,.drinks span{font-size:.8rem}.music-toggle{top:102px;padding:10px 15px;font-size:.85rem}.boosts span{font-size:.82rem;line-height:1.25}.controls div{gap:8px;padding:10px 12px;font-size:.82rem;line-height:1.2}.controls kbd{font-size:.78rem}.notice b{font-size:1rem}.notice span{font-size:.86rem;line-height:1.4}.rhythm#rhythm>b{font-size:.92rem;line-height:1.2}.rhythm#rhythm>small{font-size:.86rem;line-height:1.2}.rhythm#rhythm .timing-delta{font-size:.88rem;line-height:1.2}.combo-display small{font-size:.82rem}.combo-display span{font-size:.82rem}.energy-warning{font-size:clamp(1.6rem,3.5vw,2.7rem)}.death-main{align-content:center;gap:0;padding-block:24px}.death-word{font-size:clamp(5.5rem,14vw,10rem);line-height:.9;margin:0 0 30px;letter-spacing:.08em}.death-main>p{position:relative;margin:0 0 20px;line-height:1.5}.final-score{margin:0 0 24px}.final-score small{font-size:1.05rem}.death-actions button{font-size:1rem}.leaderboard header small{font-size:.78rem}.leaderboard h2{font-size:1.55rem}.leaderboard label{font-size:.86rem}.leaderboard li b,.leaderboard li strong{font-size:.92rem}.shop-note{font-size:.9rem;line-height:1.5}.shop-columns h3{font-size:.9rem}.shop-item b{font-size:.86rem}.shop-item small{font-size:.75rem;line-height:1.35}.shop-item button{font-size:.8rem}.shop-panel footer{font-size:.9rem}.settings-card header small{font-size:.78rem}.settings-list b{font-size:1rem}.settings-list small{font-size:.82rem;line-height:1.4}.settings-card>p{font-size:.8rem}.tutorial-steps span{font-size:.92rem}.tutorial-keys span,.tutorial-warning,.challenge-reward span{font-size:.86rem}.challenge-reward small{font-size:.72rem}@media(max-width:1100px){.brand{min-width:235px}.score,.multiplier,.timer,.drinks{padding-inline:13px}.score{padding-left:24px}.right-hud strong{font-size:1.7rem}.score strong{font-size:2.1rem}.rhythm#rhythm{width:62vw}}@media(max-width:760px),(pointer:coarse){
  .brand{padding-block:7px}.brand b{font-size:.85rem}.brand small{font-size:.6rem}.right-hud strong{font-size:1.2rem!important}
  .music-toggle{top:74px;font-size:.76rem}.rhythm#rhythm>b{top:-16px;font-size:.78rem}.rhythm#rhythm>small{top:95px;font-size:.72rem}.rhythm#rhythm .timing-delta{top:99px;font-size:.74rem}.death-main{padding-block:12px}.death-word{font-size:clamp(4.8rem,24vw,7rem);margin-bottom:22px}.death-main>p{font-size:1rem;margin-bottom:14px}.leaderboard{font-size:.86rem}
}@media(max-height:700px) and (min-width:761px){
  .rhythm#rhythm{bottom:112px;transform:translateX(-50%) scale(.92)}.controls{bottom:12px}.notice{bottom:78px}
  .death-main{padding-block:12px}.death-word{font-size:clamp(4.5rem,11vw,7rem);margin-bottom:20px}.death-main>p{margin-bottom:12px}.final-score{padding-block:10px;margin-bottom:14px}.final-score strong{font-size:clamp(3.4rem,8vw,5rem)}
}.update-modal{position:fixed;z-index:100;inset:0;display:grid;place-items:center;padding:24px;opacity:0;pointer-events:none;transition:opacity .2s ease}.update-modal.show{opacity:1;pointer-events:auto}.update-card{max-height:min(720px,90vh);overflow:auto}.update-topline{display:flex;align-items:center;justify-content:space-between;font:900 .72rem/1 ui-monospace,monospace;letter-spacing:.2em}.update-topline b{padding:6px 10px;letter-spacing:.08em}.update-card header{display:flex;align-items:center;gap:18px;margin:18px 0 22px;padding-bottom:20px}.update-card header>div{flex:1;min-width:0}.update-card header small{font:800 .8rem/1.4 ui-monospace,monospace;letter-spacing:.12em}.update-card h2{margin:6px 0 0;text-transform:uppercase}.update-card header i{place-items:center;width:62px;height:62px;flex:0 0 62px;font:italic 1000 2.7rem/1 Impact,sans-serif;transform:skew(-6deg)}.update-card ul{list-style:none;padding:0;display:grid;gap:10px}.update-card li{display:grid;grid-template-columns:58px 1fr;align-items:center;gap:13px;padding:13px 14px}.update-card li em{display:inline-grid;place-items:center;min-height:26px;padding:0 7px;font:900 .7rem/1 ui-monospace,monospace}.update-actions{display:grid;grid-template-columns:1fr 1.35fr}.update-card button{width:100%;padding:14px 18px;font:1000 1rem/1 ui-sans-serif,system-ui,sans-serif;cursor:pointer}@media(max-width:560px){.update-modal{padding:14px}.update-card{padding:21px 18px 20px}.update-card header{gap:9px}.update-card header i{width:42px;height:42px;flex-basis:42px;font-size:1.8rem}.update-card h2{font-size:clamp(1.25rem,6vw,1.85rem)}.update-card li{grid-template-columns:52px 1fr;padding:11px 10px}.update-card li span{font-size:.92rem}.update-actions{grid-template-columns:1fr}.update-card button{font-size:.92rem}}@media(prefers-reduced-motion:reduce){.update-modal{transition:none}}.settings-card{width:min(980px,95vw)}.settings-sections{display:grid;grid-template-columns:1.15fr .85fr;gap:16px;margin-top:18px}.settings-section{min-width:0;padding:14px}.settings-section h3{display:flex;align-items:center;gap:9px;margin:0 0 12px;padding-bottom:11px;font-size:1.1rem}.settings-section h3 span{display:grid;place-items:center;width:29px;height:29px;font:900 .9rem ui-monospace,monospace}.visual-settings .quality-select{margin:0 0 10px}.visual-settings .settings-list{grid-template-columns:1fr 1fr}.visual-settings .settings-list label:last-child{grid-column:1/3}.audio-settings{display:grid;align-content:start;gap:10px}.audio-settings h3{margin-bottom:2px}.audio-control{padding:13px}.audio-heading{display:flex;align-items:center;gap:14px}.audio-heading>span{display:grid;gap:3px;margin-right:auto}.audio-heading b{font-size:1rem}.audio-heading small{font-size:.8rem;line-height:1.35}.audio-heading input{appearance:none;flex:0 0 auto;width:48px;height:27px;position:relative;cursor:pointer}.volume-row{display:grid;grid-template-columns:42px 1fr 46px;gap:9px;align-items:center;margin-top:12px;font-size:.78rem}.volume-row output{text-align:right;font:800 .78rem ui-monospace,monospace}.volume-row input[type="range"]{appearance:none;width:100%;height:5px;cursor:pointer}.volume-row input[type="range"]::-webkit-slider-thumb{appearance:none;width:17px;height:17px}.volume-row input[type="range"]:disabled{opacity:.28;cursor:not-allowed}.audio-control:has(.audio-heading input:not(:checked)) .volume-row{opacity:.45}@media(max-width:800px){.settings-sections{grid-template-columns:1fr}.settings-card{max-height:94vh}.visual-settings .settings-list{grid-template-columns:1fr}.visual-settings .settings-list label:last-child{grid-column:auto}}.npc-nameplate.special{border-color:#46fff3;color:#eaffff;background:linear-gradient(90deg,#052d2d,#07110e);box-shadow:0 0 0 1px #0b1713,0 0 18px #21e8dc88;text-shadow:0 0 8px #46fff3}.npc-nameplate.special:before{content:"★ ";color:#ff4bd1}#cardTeam[hidden]{display:none}#cardTeam{position:fixed;inset:0;z-index:90;display:grid;place-items:center;padding:16px;font:15px/1.5 system-ui,sans-serif}.team-shell{width:min(1300px,100%);height:min(94dvh,1000px);display:flex;flex-direction:column;min-height:0}.team-shell button,.team-shell select,.team-shell input{font:inherit;padding:8px 12px}.team-shell button{cursor:pointer}.team-shell button:disabled{opacity:.4;cursor:default}.team-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:12px}.team-header small{letter-spacing:.17em}.team-header h2{font-size:26px;margin:0}.team-header button{font-size:25px}.team-loadout{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.team-slot{position:relative;padding:8px 12px;min-height:118px}.team-slot label{display:block;font-size:12px}.team-slot>button:not(.slot-remove){display:block;width:100%;text-align:left;padding:3px 0}.team-slot .card-portrait{float:left;width:62px;height:80px;margin-right:10px}.team-slot b,.team-slot small{display:block}.team-slot b{padding-top:10px;font-size:16px}.team-slot small{font-size:12px}.team-slot .slot-remove{position:absolute;right:8px;bottom:7px;font-size:11px;padding:1px 8px}.companion-slot p{font-size:12px;margin:3px 0}.companion-slot select{width:100%;padding:3px;font-size:12px}.team-rule{font-size:12px;margin:9px 0}.team-workspace{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:18px;flex:1;min-height:0}.team-browser{min-height:0;display:flex;flex-direction:column}.team-filters{display:flex;gap:8px;margin:0 0 10px}.team-filters input{min-width:0;flex:1}.team-roster{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;overflow:auto;min-height:0;align-content:start;padding:3px 9px 15px 3px}.roster-card{display:flex;flex-direction:column;text-align:left;min-width:0;padding:8px!important}.roster-card small{font-size:11px}.roster-card span{font-size:10px;overflow-wrap:anywhere}.roster-card b{font-size:14px}.roster-card.locked{opacity:.6}.roster-card .card-portrait{width:100%;height:128px}.team-detail{overflow:auto;min-height:0;padding:16px}.detail-hero{display:flex;align-items:center;gap:14px;padding-bottom:10px}.detail-hero .card-portrait{width:110px;height:142px}.detail-hero h3{font-size:24px;margin:4px 0}.detail-hero small{font-size:11px}.detail-hero p{font-size:13px;margin:4px 0}.team-assign{display:flex;gap:5px;flex-wrap:wrap}.team-assign button{font-size:12px;padding:7px}.card-benefit{font-size:13px}.growth-box,.cosmetic-box{padding-bottom:12px}.team-detail h4{margin:14px 0 4px}.team-detail p{font-size:13px}.cosmetic-box button{font-size:12px}.character-missions{display:grid;gap:8px}.character-missions article{display:grid;grid-template-columns:1fr auto;gap:4px;padding:10px}.character-missions b{font-size:13px}.character-missions span{grid-column:1/-1;font-size:12px}.character-missions progress{width:100%;accent-color:#b8ff25;align-self:center}.character-missions small{font-size:11px}.character-missions button{grid-column:1/-1;font-size:12px;padding:5px}.team-shell footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:12px}.team-shell footer span{font-size:12px}.team-shell footer button{font-weight:800;white-space:nowrap}.team-open{float:left;font-weight:800;padding:7px 14px;cursor:pointer}.gacha-card .card-portrait{position:absolute;inset:20px 0 auto;width:100%;height:158px}.gacha-card .card-copy button{font-size:11px;padding:4px 10px;margin-top:5px;cursor:pointer}.gacha-card:has(.card-copy button){min-height:315px}.card-banner{position:fixed;z-index:12;left:50%;top:20%;transform:translateX(-50%);pointer-events:none;padding:18px 36px;text-align:center;animation:hero-entry 2.6s both}.card-banner small{display:block;letter-spacing:.2em}.card-banner b{font:900 32px system-ui}.card-identity{position:fixed;z-index:8;left:26px;top:153px;padding:5px 10px;pointer-events:none;font:700 12px system-ui}.card-end-tag{font-size:14px}.card-end-tag.ssr{padding:5px 12px}.gacha-collection .team-link{margin-left:auto;margin-right:15px}@keyframes hero-entry{0%{opacity:0;transform:translate(-50%,15px) scale(.9)}15%,75%{opacity:1;transform:translate(-50%,0) scale(1)}100%{opacity:0;transform:translate(-50%,-8px)}}@media(max-width:1050px){.team-roster{grid-template-columns:repeat(3,minmax(0,1fr))}.team-workspace{grid-template-columns:minmax(0,1fr) 330px}.team-slot .card-portrait{width:42px;height:62px}.team-slot b{font-size:14px}.team-slot{padding:6px;min-height:115px}}@media(max-width:700px){#cardTeam{padding:5px}.team-shell{padding:10px;height:98dvh}.team-header h2{font-size:20px}.team-loadout{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.team-slot{min-height:85px}.team-slot .card-portrait{height:54px}.team-slot b{padding-top:3px}.companion-slot p{display:none}.team-workspace{display:block;overflow:auto}.team-browser{height:260px}.team-roster{grid-template-columns:repeat(3,minmax(0,1fr))}.roster-card .card-portrait{height:95px}.team-detail{overflow:visible;margin-top:10px}.team-shell footer span{font-size:10px}.team-rule{font-size:10px}.card-identity{left:10px;top:156px;font-size:10px}.card-banner b{font-size:24px}}@media(prefers-reduced-motion:reduce){.card-banner{animation:none;opacity:1}}.card-end-tag{position:absolute;top:100%;left:50%;transform:translateX(-50%);margin-top:0;max-width:90vw;width:max-content;text-align:center}.gacha-results.catalogue .gacha-card:has(.card-copy button){min-height:315px}#playerCenter[hidden]{display:none}#playerCenter{position:fixed;inset:0;z-index:85;display:grid;place-items:center;padding:20px;font:16px/1.5 system-ui,sans-serif}.player-shell{width:min(1320px,100%);height:94dvh;display:flex;flex-direction:column;min-height:0;padding:24px;box-sizing:border-box}.player-shell>header{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.player-shell h2{margin:2px 0;font-size:30px}.player-shell small{font-size:13px}.player-shell>header small{letter-spacing:.14em}.player-shell button{font:700 15px system-ui;padding:10px 14px;cursor:pointer}.player-shell button:disabled{opacity:.5;cursor:default}#playerClose{font-size:25px;line-height:1}.player-shell nav{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;padding-bottom:18px}.player-shell kbd{font-size:12px;margin-left:6px;padding:0 4px}.player-content{overflow:auto;min-height:0;flex:1;padding:20px 5px 20px 0}.player-shell footer{display:flex;align-items:center;justify-content:space-between;gap:15px;padding-top:16px}.player-shell footer span{font-size:14px}.player-shell footer button{white-space:nowrap}.profile-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px}.profile-stats article{padding:16px}.profile-stats small{display:block;font-size:14px}.profile-stats strong{font-size:30px;display:block;line-height:1.5}.player-shell em{font-size:16px}.profile-columns{display:grid;grid-template-columns:330px 1fr;gap:20px}.attribute-panel{padding:18px;align-self:start;position:sticky;top:0}.player-shell h3{font-size:19px;margin:0 0 14px}.player-shell h3 small{display:block;font-weight:400;margin-top:3px}.attribute-panel dl{margin:0}.attribute-panel dl>div{display:flex;justify-content:space-between;gap:10px;padding:10px 0;font-size:14px}.attribute-panel dd{margin:0;white-space:nowrap}.attribute-panel p,.save-note{font-size:14px}.attribute-panel h4{margin:22px 0 4px}.inventory-equipment{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:24px}.inventory-equipment article{display:flex;flex-direction:column;gap:6px;padding:12px}.inventory-equipment article b{font-size:16px}.inventory-equipment span{font-size:14px}.inventory-equipment button{font-size:14px;padding:6px}.inventory-cards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.inventory-cards article{display:flex;flex-direction:column;align-items:center;text-align:center;padding:10px;gap:5px}.inventory-cards .card-portrait{width:100%;height:120px}.inventory-cards b{font-size:15px}.inventory-cards span{font-size:13px}.achievement-overview{display:flex;justify-content:space-between;gap:24px;padding:18px;margin-bottom:18px}.achievement-overview strong{display:block;font-size:40px}.achievement-overview p{margin:8px 0;font-size:14px}.achievement-overview input{accent-color:#b8ff25;width:18px;height:18px}.achievement-overview label{font-size:15px}.achievement-overview button{padding:5px 10px;font-size:13px}#achievementSync{font-size:13px}.achievement-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.achievement-grid article{padding:18px}.achievement-grid header{display:flex;justify-content:space-between;gap:6px}.achievement-grid header b{font-size:12px}.achievement-grid h3{font-size:18px;margin:12px 0}.achievement-grid p{font-size:14px;min-height:42px}.achievement-grid progress{width:100%;accent-color:#b8ff25;height:9px}.achievement-grid span{display:block;font-size:13px;margin-top:7px}.pause-player-center{margin-top:24px;padding:12px 30px;font:700 17px system-ui;cursor:pointer}.team-shell .team-rule,.team-detail p,.card-benefit,.team-shell footer span{font-size:14px}.team-shell .roster-card b{font-size:16px}.team-shell .roster-card small,.team-shell .roster-card span,.team-slot label{font-size:12px}.gacha-card.revealed,.gacha-results.catalogue .gacha-card.revealed{min-height:300px}.achievement-toast{position:fixed;z-index:15;right:22px;bottom:90px;max-width:min(390px,80vw);padding:12px 18px;font:700 15px/1.5 system-ui;pointer-events:none}@media(max-width:900px){.profile-columns{grid-template-columns:1fr}.attribute-panel{position:static}.attribute-panel dl{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.achievement-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.player-shell{padding:16px}.player-shell nav button{padding:10px 6px;font-size:14px}.player-shell nav kbd{display:none}.profile-stats strong{font-size:24px}}@media(max-width:560px){#playerCenter{padding:5px}.player-shell{height:98dvh;padding:12px}.player-shell nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.profile-stats{grid-template-columns:repeat(2,1fr);gap:8px}.profile-stats article{padding:10px}.inventory-equipment{grid-template-columns:repeat(2,minmax(0,1fr))}.inventory-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.achievement-overview{flex-direction:column;gap:12px}.achievement-grid{grid-template-columns:1fr}.player-shell footer{align-items:start}.player-shell footer span{font-size:12px}.attribute-panel dl{display:block}.player-shell h2{font-size:25px}}.player-shell nav.player-nav{grid-template-columns:repeat(6,minmax(0,1fr))}.player-subview-nav{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px;margin:-4px 0 16px;padding-bottom:14px}.player-subview-nav button{font:700 14px system-ui;padding:10px 7px;cursor:pointer}.center-preview{display:grid;grid-template-columns:180px 1fr;align-items:center;gap:22px;margin-bottom:20px;padding:16px}.center-preview .preview-stage{height:190px}.center-preview h3{margin:5px 0;font-size:1.4rem}.center-preview p{font-size:14px}.center-preview b{font-size:18px}.section-heading{display:flex;align-items:end;justify-content:space-between;margin:4px 0 10px}.section-heading h3{margin:0}.section-heading>span,.equipment-category h4 small{font-size:14px}.equipment-category{margin:0 0 20px;padding:12px}.equipment-category h4{display:flex;justify-content:space-between;margin:0 0 10px}.equipment-category .inventory-equipment{margin-bottom:0}.attributes-layout{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:900px){.player-shell nav.player-nav,.player-subview-nav{grid-template-columns:repeat(3,minmax(0,1fr))}.center-preview{grid-template-columns:130px 1fr}.center-preview .preview-stage{height:160px}.attributes-layout{grid-template-columns:1fr}}@media(max-width:560px){.center-preview{grid-template-columns:94px 1fr;gap:10px;padding:10px}.center-preview .preview-stage{height:126px}.center-preview h3{font-size:1rem}.center-preview b{font-size:15px}.player-subview-nav{gap:4px}.player-subview-nav button{font-size:13px;padding:8px 3px}}.settings-modal .settings-card{width:min(1320px,100%);height:94dvh;max-height:none;box-sizing:border-box}@media(max-width:560px){.settings-modal .settings-card{width:100%;height:98dvh}}.player-shell-header{justify-content:flex-end!important;margin-bottom:10px!important;min-height:0}.player-shell-header>span{display:none}.team-shell,.shop-panel,.settings-modal .settings-card{width:min(1320px,calc(100vw - 40px));height:94dvh;max-height:none;box-sizing:border-box}.team-shell{padding:24px}.shop-panel{padding:24px}.settings-modal .settings-card{padding:24px}@media(max-width:560px){
  #cardTeam,#shop,.settings-modal{padding:5px}
  .player-shell,.team-shell,.shop-panel,.settings-modal .settings-card{width:100%;height:98dvh}
  .team-shell,.shop-panel,.settings-modal .settings-card{padding:12px}
  .player-shell-header{margin-bottom:6px!important}
}@media(min-width:701px){
  .team-shell{padding:14px 18px}
  .team-shell>.player-subview-nav{margin:0 0 8px;padding-bottom:8px;gap:6px}
  .team-shell>.player-subview-nav button{padding:7px 6px;font-size:13px}
  .team-header{padding-bottom:5px}
  .team-header small{display:none}
  .team-header h2{font-size:20px;line-height:1.2}
  .team-header button{padding:4px 10px;font-size:20px;line-height:1}
  .team-loadout{gap:6px}
  .team-slot{min-height:64px;padding:5px 8px}
  .team-slot label{font-size:11px}
  .team-slot>button:not(.slot-remove){padding:0}
  .team-slot .card-portrait{width:36px;height:44px;margin-right:7px}
  .team-slot b{padding-top:0;font-size:14px;line-height:1.2}
  .team-slot small{font-size:10px;line-height:1.2}
  .team-slot .slot-remove{right:5px;bottom:4px;padding:1px 6px}
  .companion-slot p{display:none}
  .companion-slot select{margin-top:2px}
  .team-rule{margin:5px 0 6px;font-size:11px!important;line-height:1.25}
  .team-workspace{grid-template-columns:minmax(0,1fr) 350px;gap:12px}
  .team-filters{margin-bottom:6px}
  .team-filters input,.team-filters select{padding:6px 9px}
  .team-roster{grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;padding:2px 7px 10px 2px}
  .team-shell .roster-card{padding:6px!important}
  .roster-card .card-portrait{height:104px}
  .team-shell footer{padding-top:6px}
}@media(min-width:701px) and (max-width:1180px){
  .team-workspace{grid-template-columns:minmax(0,1fr) 320px}
  .team-roster{grid-template-columns:repeat(4,minmax(0,1fr))}
}@media(min-width:701px) and (max-height:760px){
  .team-slot{min-height:56px}
  .team-slot .card-portrait{width:30px;height:36px}
  .roster-card .card-portrait{height:88px}
  .team-rule{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
}#playerContent.inventory-layout{display:grid;grid-template-columns:260px minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);gap:14px;overflow:hidden}.inventory-layout>.profile-stats{grid-column:1/-1;margin:0}.inventory-layout>.center-preview{display:flex;flex-direction:column;align-items:stretch;align-self:start;margin:0;gap:10px;min-width:0}.inventory-layout .preview-stage{display:flex;align-items:center;justify-content:center;flex-shrink:0}.inventory-scroll{min-height:0;overflow:auto;overscroll-behavior:contain;padding-right:5px}@media(max-width:700px){
  #playerContent.inventory-layout{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);gap:8px;padding-top:4px}
  .inventory-layout>.profile-stats{display:none}
  .inventory-layout>.center-preview{display:grid;grid-template-columns:88px minmax(0,1fr);padding:8px;gap:10px}
  .inventory-layout .preview-stage{height:106px}
  .inventory-layout .preview-avatar{transform:scale(.55)}
  .inventory-layout .center-preview p{margin:4px 0}
}#playerCenter,#cardTeam,#shop,#settingsModal{padding:12px;box-sizing:border-box}#playerCenter .player-shell,#cardTeam .team-shell,#shop .shop-panel,#settingsModal .settings-card{width:min(1320px,100%);height:calc(100dvh - 24px);max-height:none;padding:16px;box-sizing:border-box;overflow:hidden}.center-toolbar{display:flex;align-items:stretch;flex:0 0 auto;min-width:0}.center-toolbar nav.player-nav,.center-toolbar nav.player-subview-nav{display:grid;flex:1;min-width:0;margin:0;padding:0;gap:6px}.center-toolbar nav button{font:700 14px/1.3 system-ui;min-width:0;cursor:pointer}.center-toolbar kbd{font:inherit;font-size:12px;margin-left:4px;padding:0 3px}.center-toolbar button.center-close{flex:0 0 38px;width:38px;padding:0;font:700 24px system-ui;cursor:pointer}#shop .shop-panel,#settingsModal .settings-card{display:flex;flex-direction:column;min-height:0}#shop .shop-panel>header{flex:0 0 auto;padding:0 0 8px;gap:10px;flex-wrap:wrap}#shop .shop-panel>header>div:first-child,#settingsModal .settings-card>header,.team-header{display:none}#shop .shop-note{flex:0 0 auto;margin:5px 0;font-size:13px}#shop .shop-preview{position:relative;top:auto;flex:0 0 auto;display:grid;grid-template-columns:120px minmax(0,1fr);align-items:center;gap:16px;margin:8px 0;padding:8px;min-height:142px;box-sizing:border-box;overflow:hidden}#shop .shop-preview .preview-stage{height:126px;overflow:hidden;display:flex;align-items:center;justify-content:center}#shop .shop-preview .preview-avatar{transform:scale(.68)}#shop .shop-preview h3{font-size:18px;margin:4px 0;overflow-wrap:anywhere}#shop .shop-preview p{margin:4px 0}#shop .shop-columns{flex:1 1 0;min-height:0;overflow:auto}#shop .shop-panel>footer{flex:0 0 auto}#settingsModal .settings-sections{overflow:auto;min-height:0;flex:1;margin-top:0}@media(max-width:700px){
  .center-toolbar nav.player-nav,.center-toolbar nav.player-subview-nav{grid-template-columns:repeat(3,minmax(0,1fr))}
  .center-toolbar kbd{display:none}
  #playerCenter .player-shell,#cardTeam .team-shell,#shop .shop-panel,#settingsModal .settings-card{padding:10px}
  #shop .shop-preview{grid-template-columns:90px minmax(0,1fr);min-height:116px;gap:10px}
  #shop .shop-preview .preview-stage{height:100px}
  #shop .shop-preview .preview-avatar{transform:scale(.52)}
}.center-toolbar nav.player-nav,.center-toolbar nav.player-subview-nav{grid-template-columns:repeat(7,minmax(0,1fr))}.song-library{max-width:1000px;margin:auto}.song-library>header{display:flex;align-items:center;justify-content:space-between;gap:16px}.song-library h2{margin:4px 0;font-size:28px}.song-library>p{font-size:14px;line-height:1.7}.song-list{display:grid;margin-top:24px}.song-card{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:20px;align-items:center}.song-number{font-weight:900}.song-details h3{margin:0 0 8px;overflow-wrap:anywhere}.song-details p{font-size:14px;margin:0 0 8px}.song-details a{font-size:14px}.song-details small{display:block;font-size:12px;margin-top:6px}.song-library>header>span{font-size:14px;white-space:nowrap}@media(max-width:900px){.center-toolbar nav.player-nav,.center-toolbar nav.player-subview-nav{grid-template-columns:repeat(4,minmax(0,1fr))}.song-card{gap:12px;padding:16px;grid-template-columns:32px minmax(0,1fr) auto}}@media(max-width:560px){.center-toolbar nav.player-nav,.center-toolbar nav.player-subview-nav{grid-template-columns:repeat(3,minmax(0,1fr))}.song-card{grid-template-columns:28px minmax(0,1fr);gap:10px}.song-card>button{grid-column:2;justify-self:start}.song-details h3{font-size:17px}.song-number{font-size:20px}}body.player-center-active .pause-screen{display:none!important}.checkpoint-hint{font-size:14px;line-height:1.6;margin:8px 0 0}.pause-screen .recovery-hint{display:block;max-width:min(560px,85vw);text-align:center;font-size:clamp(16px,2vw,22px);line-height:1.7;margin-top:20px;letter-spacing:.02em}.pause-screen .recovery-hint:empty{display:none}:root{--ui-bg:#111713f2;--ui-border:#ffffff25;--ui-muted:#a9b4a9;--ui-lime:#c3ff47;--ui-bottom:max(24px,env(safe-area-inset-bottom));--lane-bottom:90px}.vignette{opacity:.24}button{touch-action:manipulation}.hud{position:fixed;top:max(18px,env(safe-area-inset-top));left:24px;right:24px;gap:20px;align-items:stretch}.brand{min-width:0;padding:10px 14px;gap:12px}.brand-mark{width:38px;height:38px;display:grid;place-items:center;font:bold 28px/1 system-ui;transform:none}.brand b{font:750 16px/1.5 system-ui;letter-spacing:.03em}.brand small{font:600 10px/1.5 system-ui;letter-spacing:.13em}.right-hud{display:flex;gap:0;align-items:stretch;overflow:hidden}.score,.multiplier,.timer,.drinks{position:relative;display:grid;grid-template-columns:auto auto;grid-template-rows:auto auto;column-gap:4px;min-width:85px;padding:9px 17px}.score{min-width:130px}.right-hud small{grid-column:1/-1;font:600 11px/1.4 system-ui;letter-spacing:.05em}.right-hud strong{font:750 24px/1.3 system-ui!important;letter-spacing:-.03em}.score strong{font-size:27px!important}.right-hud span{align-self:end;font:600 11px/2 system-ui}.game-tools{position:fixed;z-index:8;top:96px;right:24px;display:flex;gap:6px;align-items:center}.game-tools button{min-height:38px;padding:8px 13px;font:650 12px/1.3 system-ui;cursor:pointer}.game-tools .music-toggle{position:static;inset:auto;transform:none;letter-spacing:0;font-size:12px}.boosts{top:98px;left:24px;right:auto;max-width:42vw;gap:6px;flex-wrap:wrap;justify-content:flex-start}.boosts span{padding:7px 10px;font:550 11px/1.3 system-ui}#routeHint{display:none}.controls{position:fixed;z-index:8;left:24px;bottom:var(--ui-bottom);display:block;padding:0;width:230px;max-width:calc(100vw - 48px);pointer-events:auto}.controls summary{list-style:none;cursor:pointer;padding:12px 15px;font:650 12px/1.3 system-ui}.controls summary::-webkit-details-marker{display:none}.controls>div{display:flex;justify-content:space-between;gap:8px;padding:6px 14px;font:500 12px/1.4 system-ui}.controls>div:last-child{padding-bottom:14px}.controls kbd{font:650 11px/1.4 system-ui;padding:3px 6px;min-width:0}.rhythm#rhythm{position:fixed;left:50%;right:auto;top:auto;bottom:var(--lane-bottom);width:min(48vw,580px);height:66px;transform:translateX(-50%);pointer-events:none}.rhythm#rhythm .rhythm-lane{position:absolute;inset:0;top:0;height:52px;transform:none;overflow:visible}.rhythm#rhythm .target-ring{left:11%;width:66px;height:66px;transform:translate(-50%,-50%);z-index:2}.rhythm#rhythm .beat-ring{width:34px;height:34px;transform:translate(-50%,-50%);z-index:3}.rhythm#rhythm>b{position:absolute;left:0;top:-27px;transform:none;padding:0;font:750 12px/1.4 system-ui}.rhythm#rhythm>small{position:absolute;left:0;top:66px;transform:none;padding:0;font:550 11px/1.4 system-ui;white-space:nowrap}.rhythm#rhythm .timing-delta{position:absolute;left:auto;right:0;top:66px;transform:none;min-width:0;padding:0;font:650 11px/1.4 system-ui}.song-now{width:min(48vw,580px);padding:0}.song-now b{font:650 12px/1.4 system-ui;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.song-now span{font:500 10px/1.4 system-ui}.combo-display{position:fixed;left:calc(50% + min(24vw,290px) + 18px);right:auto;top:auto;bottom:calc(var(--lane-bottom) + 15px);display:flex;flex-direction:column;align-items:flex-start;padding:0;transform:none;min-width:0}.combo-display strong{font:750 35px/1 system-ui;letter-spacing:-.04em}.combo-display small{font:750 9px/1.5 system-ui;letter-spacing:.12em}.combo-display span{display:none}.crosshair{display:none}.notice{position:fixed;left:50%;right:auto;top:auto;bottom:calc(var(--lane-bottom) + 164px);transform:translateX(-50%);max-width:80vw;padding:9px 16px;text-align:center}.notice b{font:700 13px/1.4 system-ui}.notice span{font:500 11px/1.4 system-ui}.energy-warning{top:26%;font:800 25px/1.3 system-ui}.judge-splash{top:37%}.judge-splash b{font-size:clamp(30px,4vw,52px);letter-spacing:-.04em}.judge-splash span{font:650 14px/1.5 system-ui}.drink-button#drinkButton{display:block;position:fixed;right:24px;bottom:var(--ui-bottom);z-index:8;width:90px;height:66px;padding:8px;font:800 15px/1.35 system-ui;cursor:pointer}.drink-button#drinkButton small{font:650 10px/1.4 system-ui;opacity:.7}.center-toolbar{gap:12px;padding-bottom:14px;margin-bottom:14px}.center-toolbar nav button{padding:12px 6px;min-height:42px;font-size:13px}.player-content{scrollbar-width:thin}.player-shell footer button{padding:12px 22px}.song-list{gap:12px}.song-card{padding:20px}.song-number{font-size:22px}.song-card button{min-height:42px}.settings-card h3,.player-shell h2,.song-library h2{letter-spacing:0}.settings-modal .settings-card>p{flex-shrink:0}.update-card{width:min(580px,calc(100vw - 32px));padding:28px}.update-card h2{font:800 clamp(20px,4vw,29px)/1.4 system-ui;white-space:normal;letter-spacing:0}.update-card header i{display:none}.update-card h3{font:700 15px/1.5 system-ui}.update-card ul{margin:16px 0}.update-card li{font:500 14px/1.65 system-ui}.update-actions{gap:10px}.update-actions button,.death-actions button,#resumeDrinkButton,#startButton{font:750 14px/1.5 system-ui;letter-spacing:0}.pause-screen>b{font:800 clamp(40px,7vw,72px)/1.2 system-ui;letter-spacing:.04em}.pause-screen>span{font:550 14px/1.5 system-ui}.death-word{font:850 clamp(64px,10vw,120px)/1 system-ui;margin-bottom:18px}.death-main>p{font-size:15px;letter-spacing:.12em}.final-score strong{font:800 clamp(42px,7vw,72px)/1.3 system-ui}@media(max-width:1100px){.brand small{display:none}.brand b{font-size:14px}.score,.multiplier,.timer,.drinks{min-width:70px;padding:9px 12px}.score{min-width:105px}.game-tools{top:90px}.boosts{top:91px}.rhythm#rhythm,.song-now{width:48vw}}@media(max-width:760px),(pointer:coarse){:root{--lane-bottom:170px;--ui-bottom:max(20px,env(safe-area-inset-bottom))}.hud{top:max(12px,env(safe-area-inset-top));left:12px;right:12px;gap:8px}.brand{padding:8px;gap:0}.brand-mark{width:32px;height:32px;font-size:23px}.brand>div{display:none}.right-hud{flex:1;justify-content:space-between}.score,.multiplier,.timer,.drinks{min-width:0;padding:6px 10px;flex:1}.score{flex:1.3}.right-hud small{font-size:9px}.right-hud strong,.score strong{font-size:19px!important}.right-hud span{font-size:9px}.game-tools{top:78px;right:12px;left:auto;gap:5px}.game-tools button,.game-tools .music-toggle{padding:8px 9px;min-height:36px;font-size:11px}.boosts{top:125px;left:12px;max-width:calc(100vw - 24px)}.boosts span{font-size:10px;padding:5px 8px}.controls{display:none}.rhythm#rhythm{left:50%;right:auto;top:auto;bottom:var(--lane-bottom);width:76vw;height:66px;transform:translateX(-50%)}.song-now{width:76vw;bottom:calc(var(--lane-bottom) + 98px)}.song-now b{font-size:11px}.rhythm#rhythm .rhythm-lane{height:48px}.rhythm#rhythm .target-ring{width:58px;height:58px}.rhythm#rhythm .beat-ring{width:30px;height:30px}.rhythm#rhythm>small,.rhythm#rhythm .timing-delta{top:61px;font-size:10px}.combo-display{left:auto;right:12px;bottom:calc(var(--lane-bottom) + 82px)}.combo-display strong{font-size:28px}.notice{bottom:calc(var(--lane-bottom) + 155px);width:max-content;max-width:85vw}.notice b{font-size:12px}.notice span{font-size:10px}.mobile-stick{left:20px;bottom:var(--ui-bottom);width:104px;height:104px}#stickKnob{width:40px;height:40px}.drink-button#drinkButton{right:18px;bottom:var(--ui-bottom);width:90px;height:76px}.jump-button#jumpButton{right:18px;bottom:calc(var(--ui-bottom) + 88px);width:62px;height:46px;font:750 14px system-ui}.update-card{padding:22px}.update-card li{font-size:13px}.update-actions button{font-size:13px}.judge-splash{top:34%}.center-toolbar nav button{font-size:12px;padding:10px 4px}}@media(max-height:540px) and (min-width:600px){:root{--lane-bottom:50px}.hud{top:8px}.brand{padding:6px 10px}.right-hud strong,.score strong{font-size:18px!important}.right-hud small{font-size:9px}.score,.multiplier,.timer,.drinks{padding:5px 12px}.game-tools{top:65px}.boosts{top:66px}.rhythm#rhythm,.song-now{width:44vw}.rhythm#rhythm{bottom:50px}.song-now{bottom:145px}.notice{bottom:187px}.rhythm#rhythm .rhythm-lane{height:42px}.rhythm#rhythm .target-ring{width:52px;height:52px}.rhythm#rhythm>small,.rhythm#rhythm .timing-delta{top:54px}.combo-display{left:calc(50% + 22vw + 12px);right:auto;bottom:70px}.mobile-stick{width:80px;height:80px}.jump-button#jumpButton{bottom:110px}.drink-button#drinkButton{height:62px}.death-main{padding-block:8px}.death-word{font-size:55px;margin-bottom:8px}.final-score{margin-bottom:10px}.final-score strong{font-size:42px}.controls{width:200px}.controls[open]{max-height:calc(100dvh - 110px);overflow:auto}}@media(prefers-reduced-motion:reduce){.brand,.rhythm,.target-ring,.beat-ring,.combo-display,.timer,.energy-warning{transition:none!important}}.score small{visibility:visible}.rhythm#rhythm .target-ring,.rhythm#rhythm .beat-ring{top:50%}.rhythm#rhythm>b{letter-spacing:0}.update-card li span{font-size:14px;line-height:1.65}.pause-screen>span{letter-spacing:0}body.player-center-active #settingsModal{z-index:85;transition:none}body.player-center-active #settingsModal:not(.show){visibility:hidden}@media(min-width:761px) and (pointer:fine){.drink-button{display:block;position:fixed;z-index:8;right:24px;bottom:28px;width:76px;height:76px;font-weight:950;cursor:pointer}.drink-button small{font-size:10px}}.song-now{position:fixed;left:50%;bottom:148px;transform:translateX(-50%);z-index:5;text-align:center;pointer-events:none;font-size:12px}.song-now b,.song-now span{display:block}.song-now span{font-size:10px;opacity:.85;margin-top:4px}.song-credit{font-size:11px;line-height:1.6}@media(max-width:760px){.song-now{bottom:158px;font-size:11px}}

/* Single visual system: Wenrexa UI Light Minimalism / CC0. */
/* Wenrexa UI Light Minimalism, free Green-Black / CC0. Adapted lime accent. */
:root{--ui-lime:#c3ff47;--ui-bg:#050b08f5;--ui-border:#a6d74250;--ui-muted:#bcc7b5;--a-panel:url('./assets/ui-wenrexa/panel.png');--a-wide:url('./assets/ui-wenrexa/panel-wide.png');--a-card:url('./assets/ui-wenrexa/card.png');--a-button:url('./assets/ui-wenrexa/button.png');--a-active:url('./assets/ui-wenrexa/button-active.png')}
body{color:#f4f8ef}
.brand,.right-hud,.controls,.notice,.combo-display,.leaderboard{border:10px solid transparent!important;border-image:var(--a-wide) 26 fill stretch!important;background:#050b08!important;border-radius:0!important;box-shadow:none!important;clip-path:none!important}
.hud{gap:16px}.brand{padding:7px 10px;min-height:52px;box-sizing:border-box}.brand-mark{border-radius:0;background:#c3ff47;color:#10190b;width:36px;height:36px}.brand small{font-size:11px;letter-spacing:.08em}.right-hud{overflow:visible;padding:0}.score,.multiplier,.timer,.drinks{padding:5px 14px;border-left-color:#b7e74a25}.right-hud small{font-size:12px}.right-hud strong{font-variant-numeric:tabular-nums}.score strong{color:var(--ui-lime)!important}.timer{padding-left:28px}.timer:before{content:"";position:absolute;left:7px;top:23px;width:17px;height:17px;background:url('./assets/ui-wenrexa/energy.png') center/contain no-repeat;pointer-events:none}.timer:after{height:4px;bottom:-3px}.game-tools,.boosts{top:108px}.game-tools{gap:7px}
.game-tools button,.shop-toggle,.player-shell button,.center-toolbar button,.player-subview-nav button,.song-card button,.update-actions button,.death-actions button,.pause-player-center,#resumeDrinkButton,#startButton,.leaderboard button,.settings-card button,.shop-panel button{border:8px solid transparent!important;border-image:var(--a-button) 19 fill stretch!important;border-radius:0!important;clip-path:none!important;background:#030704!important;color:#f3f8ec!important;box-shadow:none!important;min-height:44px;font-size:14px;font-weight:700;line-height:1.3;cursor:pointer}
.game-tools button{padding:3px 10px}.game-tools button:hover,.player-shell button:hover,.center-toolbar button:hover,.player-subview-nav button:hover,.song-card button:hover{color:var(--ui-lime)!important}
.settings-card [data-quality].active,.center-toolbar nav button.active,.player-subview-nav button.active,.song-card.selected button,.update-actions button#updateClose,#resumeDrinkButton,#startButton,#playerReturn,.death-actions #reviveButton{border-image-source:var(--a-active)!important;border-image-slice:16!important;background:#c3ff47!important;color:#102008!important}
button:focus-visible,summary:focus-visible,a:focus-visible{outline:2px solid #f1ffcf;outline-offset:3px}button:disabled{opacity:.55;cursor:default}
.controls{padding:0;width:240px}.controls summary{padding:7px 7px 10px;font-size:14px}.controls>div{padding:5px 7px;font-size:13px}.controls>div:last-child{padding-bottom:7px}.controls kbd{font-size:12px;border-radius:0;border-color:#c3ff4735;background:#1a2312}.boosts span{border-radius:0;border-color:#79974a60;background:#061109e8;font-size:12px}.boosts span.active{background:#12260be8}
.rhythm#rhythm .rhythm-lane{height:52px;border:10px solid transparent;border-image:var(--a-wide) 26 fill stretch;border-radius:0;background:#020704;box-shadow:none;box-sizing:border-box;overflow:visible}.rhythm#rhythm .rhythm-lane:after{left:18%;right:3%;background:#c3ff4750}.rhythm#rhythm .target-ring{background:#030704 url('./assets/ui-wenrexa/target.png') center/contain no-repeat;border:0;box-shadow:none;border-radius:50%;width:68px;height:68px}.rhythm#rhythm .target-ring:before{content:""}.rhythm#rhythm .beat-ring{width:30px;height:30px;background:#d7ff80;border-color:#f4ffd6;box-shadow:0 0 0 3px #c3ff4726}.rhythm#rhythm .beat-ring:before{font-size:16px}.rhythm#rhythm.ready .target-ring{background-color:#20300e;box-shadow:0 0 0 4px #c3ff4740}.rhythm#rhythm.fail .target-ring{box-shadow:0 0 0 3px #ff887c90}.rhythm#rhythm>b{font-size:14px}.rhythm#rhythm>small,.rhythm#rhythm .timing-delta{font-size:12px}.song-now{padding-left:30px;box-sizing:border-box}.song-now:before{content:"";position:absolute;left:0;top:0;width:23px;height:23px;background:url('./assets/ui-wenrexa/music.png') center/contain no-repeat}.song-now b{font-size:14px}.song-now span{font-size:12px}
.combo-display{padding:4px 12px;min-width:68px;bottom:calc(var(--lane-bottom) + 5px);align-items:center}.combo-display strong{font-size:32px;line-height:1.1;color:#fff;text-shadow:none}.combo-display small{font-size:11px}.notice{padding:5px 11px}.notice b{font-size:14px}.notice span{font-size:12px}
.drink-button#drinkButton{width:116px;height:72px;border:9px solid transparent;border-image:var(--a-active) 16 fill stretch;border-radius:0;box-shadow:none;background:#c3ff47;color:#101a08;font-size:16px;padding:4px}.drink-button#drinkButton small{font-size:12px}.jump-button#jumpButton{border:7px solid transparent;border-image:var(--a-button) 19 fill stretch;border-radius:0;background:#050b08;color:#f1ffd8;box-shadow:none}
.player-shell,.team-shell,.shop-panel,.settings-card,.intro-card,.update-card{border:14px solid transparent!important;border-image:var(--a-panel) 32 fill stretch!important;border-radius:0!important;background:#020704!important;box-shadow:0 12px 48px #0008!important;clip-path:none!important}.player-content{scrollbar-color:#73932f #020704}.center-toolbar{border-color:#bddf6833;gap:10px}.center-toolbar nav button{padding:4px 3px;min-height:46px;font-size:14px}.center-toolbar button.center-close{font-size:22px;padding:1px 9px}.player-subview-nav button{padding:3px 5px}.player-shell footer{border-color:#bedf6833}.player-shell footer button{padding:4px 18px}.player-shell h2,.settings-card h3,.song-library h2{font-family:system-ui;font-style:normal;font-weight:800}.player-shell p,.settings-card>p,.song-library>p{color:#bdc8b4}
.profile-stats article,.attribute-panel,.inventory-equipment article,.inventory-cards article,.achievement-grid article,.center-preview,.equipment-category,.song-card,.settings-section,.audio-control,.shop-preview{border:9px solid transparent;border-image:var(--a-card) 24 fill stretch;border-radius:0;background:#040a06;box-shadow:none;clip-path:none}.profile-stats article{padding:8px}.profile-stats strong{color:#dfff9f}.inventory-cards article{padding:7px}.song-card{padding:13px;gap:16px}.song-card h3{font-size:18px;line-height:1.4;color:#f6faef}.song-card p{font-size:14px}.song-card.selected{border-image-source:var(--a-card);background:#15210c}.song-card.selected .song-number{color:var(--ui-lime)}.song-card button{padding:4px 15px}.song-number{font-size:30px;font-weight:800;color:#668547}.song-credit a,.song-details a{color:#ceff88}.settings-section{padding:14px}.settings-list label{font-size:14px;border-color:#bade6828}.settings-list input[type=checkbox],.player-shell input[type=checkbox]{accent-color:#b0ed43}.audio-control input[type=range]{accent-color:#b0ed43}.update-card{padding:24px}.update-card li span{font-size:14px}.update-actions button{padding:5px 14px}.update-actions button.tutorial-button{color:#dfff9f!important}.final-score strong{color:#c3ff47}.leaderboard{padding:14px}.leaderboard input{border-radius:0;background:#0b160a;border-color:#91b748;color:#fff}
.judge-splash{filter:none;top:35%}.judge-splash b{font-size:clamp(32px,4.5vw,58px);letter-spacing:.04em;font-weight:900;-webkit-text-stroke:0;text-shadow:0 3px 0 #050b08;color:#ecffd2}.judge-splash.good b{color:#a8ecff}.judge-splash.fail b{color:#ff9281}.judge-splash span{font-size:14px;letter-spacing:.08em;margin-top:8px;text-shadow:0 2px 3px #000}.judge-splash.show{animation:a-judge .65s ease-out both}@keyframes a-judge{0%{opacity:0;transform:translate(-50%,-42%) scale(.94)}16%,65%{opacity:1;transform:translate(-50%,-50%) scale(1)}100%{opacity:0;transform:translate(-50%,-65%) scale(1)}}
@media(max-width:1100px){.brand b{font-size:14px}.score,.multiplier,.timer,.drinks{padding-inline:10px}.timer{padding-left:23px}.timer:before{left:3px}.game-tools button{padding-inline:7px}}
@media(max-width:760px),(pointer:coarse){.hud{gap:6px}.brand,.right-hud{border-width:7px!important}.brand{padding:4px;min-height:52px}.brand-mark{width:28px;height:28px;font-size:21px}.right-hud strong,.score strong{font-size:18px!important}.right-hud small{font-size:10px}.right-hud span{font-size:10px}.score,.multiplier,.timer,.drinks{padding:5px 6px}.timer:before{display:none}.game-tools{top:88px;right:12px;gap:3px}.game-tools button,.game-tools .music-toggle{font-size:12px;padding:3px 4px;border-width:6px!important;min-height:42px}.boosts{top:138px}.boosts span{font-size:11px}.rhythm#rhythm .rhythm-lane{height:48px;border-width:8px}.rhythm#rhythm .target-ring{width:58px;height:58px}.rhythm#rhythm>b{font-size:13px}.rhythm#rhythm>small,.rhythm#rhythm .timing-delta{font-size:11px}.song-now{padding-left:26px}.song-now b{font-size:12px}.song-now span{font-size:11px}.combo-display{padding:3px 7px;min-width:50px;border-width:7px!important;bottom:calc(var(--lane-bottom) + 80px)}.combo-display strong{font-size:25px}.drink-button#drinkButton{right:16px;width:104px;height:76px}.jump-button#jumpButton{right:16px;bottom:calc(var(--ui-bottom) + 88px)}.player-shell,.team-shell,.shop-panel,.settings-card,.intro-card,.update-card{border-width:9px!important}.center-toolbar nav button{font-size:13px;padding:4px 2px;border-width:6px!important}.center-toolbar{gap:5px}.song-card{padding:9px;gap:10px;border-width:7px}.song-card h3{font-size:15px}.song-card p{font-size:12px}.song-card button{font-size:13px;padding:4px 6px;border-width:6px!important}.song-number{font-size:22px}.update-card{padding:18px}.update-actions button{padding:5px 7px;font-size:13px}}
@media(max-width:380px){.game-tools button,.game-tools .music-toggle{font-size:11px;padding-inline:2px}.right-hud small{font-size:9px}.right-hud strong,.score strong{font-size:16px!important}.score,.multiplier,.timer,.drinks{padding-inline:4px}}
@media(max-height:540px) and (min-width:600px){.hud{top:8px}.brand{min-height:44px}.brand,.right-hud{border-width:7px!important}.game-tools,.boosts{top:76px}.game-tools button{min-height:36px;font-size:12px}.song-now b{font-size:12px}.song-now span{font-size:11px}.combo-display{bottom:66px}.drink-button#drinkButton{height:64px}.jump-button#jumpButton{bottom:110px}.rhythm#rhythm .rhythm-lane{height:42px}.rhythm#rhythm .target-ring{width:52px;height:52px}}
@media(prefers-reduced-motion:reduce){.judge-splash.show{animation:none;opacity:1;transform:translate(-50%,-50%)}.judge-splash:not(.show){opacity:0}}
/* Complete component coverage: every menu shares the same assets and palette. */
:root{color-scheme:dark;--acid:#c3ff47}html,body,#game{background:#050b08}body,button,input,select,textarea,h1,h2,h3,h4,p,small,b,strong{font-family:system-ui,-apple-system,"Noto Sans TC",sans-serif!important;font-style:normal}body{font-size:16px;line-height:1.5;color:#f3f8ed}button,input,select{font-size:14px}a{color:#d4ff92}button{touch-action:manipulation}[hidden]{display:none!important}
button{border:8px solid transparent!important;border-image:var(--a-button) 19 fill stretch!important;background:#030704!important;border-radius:0!important;clip-path:none!important;box-shadow:none!important;color:#eff8e5!important;font-weight:700;line-height:1.35;min-height:42px;cursor:pointer}button:hover:not(:disabled){color:#c3ff47!important}button:disabled{opacity:.45;cursor:default}
button.active,button.selected,.gift-buy,.gift-confirm button:last-child,.gacha-actions button:not(:disabled),.team-shell footer button,.growth-box button,.inventory-equipment button,.character-missions button:not(:disabled){border-image:var(--a-active) 16 fill stretch!important;background:#c3ff47!important;color:#102008!important}
input:not([type=checkbox]):not([type=range]),select,textarea{background:#081309;color:#f1f8e7;border:1px solid #779c39;border-radius:0;padding:9px 12px;min-height:42px;font:inherit}input::placeholder{color:#9bad8c}input[type=range],progress{accent-color:#bce94a}kbd{padding:2px 5px;background:#18230d;border:1px solid #62763f;border-radius:0;color:#e5ffc3;font:700 12px/1.4 system-ui}
.death,.pause-screen,.shop,.settings-modal,.intro,#playerCenter,#cardTeam,.gift-modal,.gacha-modal,.update-modal{background:#020705ef;backdrop-filter:none}.loading{background:#050b08;color:#effcde}.loader{border:3px solid #293d17;border-top-color:#c3ff47;border-radius:50%}
.player-shell,.team-shell,.shop-panel,.settings-card,.intro-card,.update-card,.gacha-shell,.gift-card,.gift-confirm>div{border:14px solid transparent!important;border-image:var(--a-panel) 32 fill stretch!important;background:#030704!important;border-radius:0!important;box-shadow:0 12px 48px #0007!important;clip-path:none!important;color:#f3f8e9}
.team-slot,.team-detail,.character-missions article,.shop-item,.gacha-banner,.gacha-collection,.gift-perks span,.challenge-reward,.tutorial-steps article{border:8px solid transparent!important;border-image:var(--a-card) 24 fill stretch!important;background:#050b08!important;border-radius:0!important;box-shadow:none!important;color:#e8f2db}
.team-slot{min-height:92px}.team-slot>button:not(.slot-remove){border:0!important;border-image:none!important;background:transparent!important;min-height:0;padding:0}.team-slot .slot-remove,.team-assign button,.cosmetic-box button{font-size:13px;min-height:34px;padding:3px 7px}.team-detail h3{color:#e5ffb1}.team-detail h4{font-size:16px;color:#c3ff47}.team-detail p,.card-benefit,.team-rule,.mission-help{font-size:14px;color:#b9c9a9}.team-detail .detail-hero{background:none}.roster-card{border-image:var(--a-card) 24 fill stretch!important;background:#050b08!important;padding:7px!important}.roster-card.selected{outline:2px solid #c3ff47}.roster-card.tier-ssr{outline-color:#d0a3ff}.roster-card small{color:#c8e5a5}.roster-card span{color:#abbba0;font-size:12px}.team-slot label,.team-slot small,.character-missions span,.character-missions small{font-size:13px;color:#b7c7a5}.team-shell footer span{color:#bdccad}.team-filters{gap:8px}.team-filters input,.team-filters select{min-height:40px}
.shop-item{padding:9px;min-width:0}.shop-item small,.shop-note{color:#aebe9d}.shop-item button{min-width:82px;padding:3px 10px}.shop-item.owned button{color:#c3ff47!important}.shop-preview{background:#050b08!important}.shop-preview p{color:#bdccad}.shop-tabs button,.gacha-tabs button{padding:4px 14px}.shop-tabs .active,.gacha-tabs .active{border-image:var(--a-active) 16 fill stretch!important;color:#102008!important;background:#c3ff47!important}
.gacha-shell{padding:22px}.gacha-shell h2{font-size:clamp(22px,4vw,32px);color:#edffcf}.gacha-shell h3{color:#e1ffae}.gacha-banner{padding:18px}.gacha-banner p,.gacha-rates,.gacha-banner-side,.gacha-message,.collection-empty{color:#bdccad;font-size:14px}.gacha-wallet{color:#d6ff95}.gacha-actions button{padding:7px 15px;min-height:48px}.gacha-card .card-face,.gacha-card .card-back{border:8px solid transparent;border-image:var(--a-card) 24 fill stretch;background:#050b08;border-radius:0;box-shadow:none;color:#ebf6dd}.gacha-card .card-back{background:#050b08 url('./assets/ui-wenrexa/star.png') center/52px 52px no-repeat}.gacha-card .card-copy h3{color:#f1ffd8}.gacha-card .card-copy p{color:#b7caa1}.gacha-card.tier-ssr .card-face{outline:1px solid #cba4f5}.gacha-card.tier-sr .card-face{outline:1px solid #e5d587}
.gift-card{padding:28px}.gift-badge{background:#c3ff47;color:#132006;padding:5px 10px;font:750 12px/1.5 system-ui;border-radius:0}.gift-hero h2{font-size:clamp(24px,4vw,38px);line-height:1.2;color:#eeffd7;text-shadow:none}.gift-hero small,.gift-price small,.gift-joke{color:#b8c8a5}.gift-hero p{font-size:16px;line-height:1.6;color:#ceddbc}.gift-perks span{font-size:14px;padding:9px}.auto-click-icon{border:8px solid transparent;border-image:var(--a-card) 24 fill stretch;background:#071108;border-radius:0;box-shadow:none}.auto-click-icon b{color:#c3ff47;font-size:52px}.auto-click-icon span{font-size:12px;color:#cce9ac}.gift-price strong{font-size:32px;color:#dfff99}.gift-price del{color:#8c9c7d}.gift-buy{padding:6px 16px;font-size:16px;min-height:48px}.gift-confirm{background:#030803ee}.gift-confirm>div{padding:22px}.gift-confirm p{color:#d2dec4}.gift-close{font-size:24px;min-height:38px}.starter-pack-button{padding:4px 8px!important;min-height:38px;font:750 13px/1.4 system-ui!important;animation:none!important}.starter-pack-button.owned{opacity:.7}.auto-click-status{border:7px solid transparent;border-image:url('./assets/ui-wenrexa/mini.png') 15 fill stretch;background:#050b08;color:#d6ffa0;font-size:12px;top:162px}.auto-click-status.active{color:#c3ff47}
.tutorial-steps article{padding:10px}.tutorial-steps i{border-radius:0;background:#c3ff47;color:#15200b;font:800 15px/1 system-ui}.tutorial-steps b{font-size:16px;color:#eaffc6}.tutorial-steps span{font-size:14px;color:#bcccaa}.tutorial-keys span{background:#14200d;border:1px solid #556d35;color:#d5e9bd;font-size:13px}.tutorial-warning{background:#291c0d;border:1px solid #b98d43;color:#eed5a7}.tutorial-warning b{color:#ffe096}.challenge-reward small{color:#c3ff47}.challenge-reward span{font-size:13px;color:#bdccad}.reward-prizes strong{background:#14300c;color:#dbff9d;border:1px solid #7c9c36;padding:8px}.reward-prizes .champion{background:#2e280d;color:#f5e19c;box-shadow:none}.intro h1{font-size:clamp(24px,5vw,38px);line-height:1.2;color:#edffd9}.intro-lead{font-size:16px;color:#c4d2b7}
.settings-list input[type=checkbox]{appearance:none;width:46px;height:25px;position:relative;flex-shrink:0;border:1px solid #71894c;border-radius:20px;background:#16200e;cursor:pointer}.settings-list input[type=checkbox]:before{content:"";position:absolute;top:3px;left:3px;width:17px;height:17px;border-radius:50%;background:#8b9d73}.settings-list input[type=checkbox]:checked{background:#345413;border-color:#c3ff47}.settings-list input[type=checkbox]:checked:before{left:24px;background:#dfff99}.settings-list small{font-size:13px;color:#b7c6a6}.settings-card>p{font-size:13px;color:#a6b497}.audio-control small,.audio-control output{color:#d7efa9}
.screen-settings{border:6px solid transparent!important;border-image:var(--a-button) 19 fill stretch!important;background:#050b08!important;color:#e4ffc1!important;border-radius:0!important;min-height:42px;font-size:20px!important}.screen-settings:hover{transform:none}.energy-warning{background:#241607;color:#fff1bd;border:1px solid #d7b557;font-size:24px;border-radius:0}.reward-pop{color:#dfff8d;text-shadow:0 2px 5px #000}.timing-delta.exact{color:#dcff99}.timing-delta.fast{color:#9ae6ff}.timing-delta.slow{color:#ffd18c}.rhythm#rhythm .beat-ring:before{content:"♪";color:#132006;font-weight:800}.rhythm.good b{color:#a4edff}.rhythm.miss b{color:#ff9c8c}.achievement-toast,.card-banner,.card-identity{background:#081507;border:1px solid #6f9432;color:#e4ffba;box-shadow:none}.achievement-toast{font-size:14px}.card-banner b{font-size:26px}.leaderboard input{color:#edffda}.death-word{color:#dfffad}.death-main>p{color:#bfcfb0}.pause-screen>b{color:#e2ffbe}.pause-screen>span{color:#bdcdaa}
@media(max-width:760px){.gacha-shell,.gift-card{padding:16px;border-width:9px!important}.gift-hero{grid-template-columns:80px 1fr}.auto-click-icon b{font-size:34px}.gift-hero p{font-size:14px}.gift-hero h2{font-size:26px}.gacha-banner{padding:10px}.gacha-actions button{padding:5px 8px;font-size:14px}.gift-perks{grid-template-columns:1fr}.team-detail{padding:10px}.team-assign button{padding:2px 5px;min-height:34px}.team-slot{min-height:78px}.auto-click-status{top:178px;right:12px;max-width:50vw}.intro-lead{font-size:14px}}

/* Actual fitted equipment models, replacing the CSS mannequin. */
.equipped-model-preview{display:block;width:100%;height:100%;max-height:320px;object-fit:contain}
.model-avatar{width:100%;height:100%;position:relative}
.shop-thumb:has(img)::before,.shop-thumb:has(img)::after{display:none}
.shop-thumb img{display:block;width:100%;height:100%;object-fit:contain}
.inventory-model-thumb{width:100%;height:100px;object-fit:contain}

/* Two clear store sections share the existing store and wallet. */
.shop-sections{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0 22px}
.shop-sections button{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:20px;text-align:left;background:#101b1c;border:1px solid #394c4f;border-radius:10px;color:#fff;cursor:pointer}
.shop-sections button span{font-size:23px;font-weight:800}
.shop-sections button small{color:#a9b8bb;font-size:13px;line-height:1.5}
.shop-sections button.active{background:#183122;border-color:#a6ff00;box-shadow:inset 0 0 0 1px #a6ff00}
.shop-sections button:focus-visible{outline:3px solid #fff;outline-offset:3px}
.shop-recruit-panel .gacha-modal.gacha-inline{position:static;inset:auto;display:block;padding:0;background:transparent;z-index:auto;overflow:visible;backdrop-filter:none}
.gacha-inline .gacha-shell{width:100%;max-width:none;max-height:none;overflow:visible;margin:0;padding:0!important;background:transparent!important;border:0!important;border-image:none!important;box-shadow:none!important}
.gacha-inline #gachaClose{width:auto;font-size:13px;padding:8px 12px}
@media(max-width:600px){.shop-sections{gap:8px}.shop-sections button{padding:14px 12px}.shop-sections button span{font-size:20px}.shop-sections button small{font-size:11px}}

/* Store panels must remain reachable after the two-section layout change. */
.shop .shop-panel{display:block;height:auto;max-height:calc(100dvh - 44px);overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;touch-action:pan-y;scrollbar-color:#a1ce4b #050b08}
.shop .shop-panel *{touch-action:pan-y}
.shop .shop-columns{overflow:visible;max-height:none}
.shop .preview-stage{height:280px;min-height:240px}
.shop .model-avatar{width:100%;height:100%;position:relative}
@media(max-width:760px){.shop{padding:10px}.shop .shop-panel{max-height:calc(100dvh - 20px)}.shop-panel header{flex-wrap:wrap}.shop-preview{grid-template-columns:1fr}.shop .preview-stage{height:260px}}

/* Match the existing ID rules so legacy flex/cropping cannot override scrolling. */
#shop .shop-panel{display:block;height:auto;max-height:calc(100dvh - 24px);overflow-x:hidden;overflow-y:auto;touch-action:pan-y;overscroll-behavior:contain}
#shop .shop-columns{display:grid;flex:none;min-height:auto;max-height:none;overflow:visible}
#shopEquipmentPanel,#shopRecruitPanel{min-height:0;overflow:visible}

#shop .shop-thumb{width:72px;height:100px;background:#071009}#shop .shop-thumb:has(img)::before,#shop .shop-thumb:has(img)::after{display:none}#shop .shop-thumb img{width:100%;height:100%;object-fit:contain}

#shop .shop-item{grid-template-columns:72px minmax(0,1fr);column-gap:12px}#shop .shop-thumb{grid-row:1 / 3}#shop .shop-item>button{grid-column:1 / -1}

#cardTeam .team-roster{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;align-content:start}
#cardTeam .team-roster .roster-card{height:auto;min-height:100px;padding:12px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:6px;overflow:hidden;white-space:normal}
#cardTeam .roster-card b,#cardTeam .roster-card small,#cardTeam .roster-card span{position:static;line-height:1.4;max-width:100%;overflow-wrap:anywhere}
#cardTeam .roster-card b{font-size:16px}#cardTeam .roster-card small,#cardTeam .roster-card span{font-size:14px}
