:root{font-family:Inter,SF Pro Display,PingFang SC,Microsoft YaHei,system-ui,sans-serif;color:#e2ecee;background:#090f19;font-synthesis:none;--acid:#d5f77b;--dim:#748595;--line:#ffffff10;--panel:#101923;--ui-scale:1;--button-size:56px;--button-opacity:.94;color-scheme:dark;font-size:calc(14px * var(--ui-scale))}*{box-sizing:border-box}body{margin:0;min-width:320px;overflow:hidden;-webkit-user-select:none;user-select:none}button,input,select{font:inherit}button{color:inherit;background:#18232e;border:1px solid #ffffff12;border-radius:7px;cursor:pointer;transition:background .15s,border-color .15s,transform .15s;touch-action:manipulation;-webkit-tap-highlight-color:transparent}button:hover{background:#24323d;border-color:#d5f77b66}button:active{transform:translateY(1px)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--acid);outline-offset:3px}button:disabled{opacity:.35;cursor:default}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}input,select{accent-color:var(--acid)}input[type=text],input:not([type]),select{color:#dbe5e7;background:#0b131d;border:1px solid #ffffff20;border-radius:5px;padding:10px}input[type=range]{width:140px;max-width:35vw;cursor:pointer}input[type=checkbox]{width:18px;height:18px;flex-shrink:0;cursor:pointer}input,textarea{-webkit-user-select:text;user-select:text}.muted{color:var(--dim)}.topbar{height:92px;display:flex;align-items:center;justify-content:space-between;padding:0 38px;border-bottom:1px solid var(--line);background:#0a111bcc}.brand{display:flex;align-items:center;gap:11px;font-size:calc(22px * var(--ui-scale));line-height:1;font-weight:850;letter-spacing:-.8px}.brand-thin{font-weight:350}.brand small{display:block;font-size:calc(10px * var(--ui-scale));letter-spacing:6px;margin-top:9px;color:#879caa;font-weight:500}.brand-mark{width:32px;height:38px;position:relative;display:block}.brand-mark i{position:absolute;width:14px;height:14px;border-radius:2px;background:var(--acid)}.brand-mark i:first-child{top:2px;left:0}.brand-mark i:nth-child(2){top:2px;left:18px}.brand-mark i:nth-child(3){top:20px;left:18px}.top-tag{font:10px ui-monospace,monospace;letter-spacing:2px;color:#6b8192;display:flex;gap:12px;align-items:center}.version{color:#b4c2ca;margin-left:15px}.live-dot{width:5px;height:5px;display:inline-block;background:var(--acid);border-radius:50%;box-shadow:0 0 9px #cffa7c44;flex-shrink:0}.top-actions{display:flex;gap:22px}.subtle{background:none;border:0;padding:10px 0;font-size:calc(11px * var(--ui-scale));color:#a9b6c1;display:flex;gap:7px;align-items:center}.subtle span{font-size:calc(19px * var(--ui-scale))}.subtle b{font-weight:500}.shell{height:calc(100dvh - 92px);max-width:1640px;margin:auto;padding:28px 34px 22px;display:grid;grid-template-columns:238px minmax(360px,1fr) 252px;gap:32px}.left-panel{display:flex;flex-direction:column;min-height:0}.section-eyebrow{font:9px ui-monospace,monospace;color:#738b9c;letter-spacing:1.6px;display:flex;justify-content:space-between;gap:12px}.section-eyebrow span{color:#475e6c}h1{font-size:calc(32px * var(--ui-scale));line-height:1.4;letter-spacing:-1px;margin-top:15px;font-weight:600}h1 em,h2 em{font-style:normal;color:var(--acid)}.lead{font-size:calc(11px * var(--ui-scale));color:#8194a3;margin-top:10px;letter-spacing:1px}.mode-list{margin-top:24px;display:flex;flex-direction:column;gap:6px}.mode-item{background:transparent;border:1px solid transparent;display:flex;gap:12px;align-items:center;text-align:left;padding:11px 12px;border-radius:7px;position:relative}.mode-number{font:10px ui-monospace,monospace;color:#506574}.mode-item b{font-size:calc(13px * var(--ui-scale));font-weight:550;display:block;color:#a2b3bf}.mode-item small{font:8px ui-monospace,monospace;letter-spacing:.8px;color:#526b7d;display:block;margin-top:5px}.mode-arrow{margin-left:auto;font-size:calc(13px * var(--ui-scale));color:#455d6b}.mode-item.selected{background:linear-gradient(100deg,#c7f78015,#b2ed7505);border-color:#c7f78030}.mode-item.selected:before{position:absolute;left:-1px;top:18px;bottom:18px;content:"";width:2px;background:var(--acid)}.mode-item.selected b,.mode-item.selected .mode-arrow{color:var(--acid)}.mode-item.selected .mode-number{color:#c9e68b}.library-links{border-top:1px solid var(--line);margin-top:20px;padding-top:14px;display:grid;gap:4px}.library-links button{background:none;border:0;display:flex;align-items:center;gap:10px;text-align:left;padding:9px 10px;font-size:calc(12px * var(--ui-scale));color:#a7b8c4}.library-links button>span{color:#90a8a3;font-size:calc(18px * var(--ui-scale))}.library-links small{font:8px ui-monospace,monospace;color:#526b7a;margin-left:auto}.local-note{font-size:calc(9px * var(--ui-scale));line-height:1.8;color:#526a7b;margin-top:auto;padding:14px 10px 0}.local-note span{color:#859c65;padding-right:5px}.local-note small{font-size:calc(8px * var(--ui-scale));letter-spacing:.5px}.play-panel{display:flex;flex-direction:column;min-width:0;min-height:0}.play-heading{height:30px;display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;gap:10px}.play-heading>div:first-child{display:flex;align-items:center;gap:9px}.play-heading b{font-size:calc(11px * var(--ui-scale));font-weight:500;white-space:nowrap}.scene-desc{font:8px ui-monospace,monospace;letter-spacing:1px}.heading-actions{display:flex;gap:7px;align-items:center}.quality-readout{font:8px ui-monospace,monospace;color:#627b8d;margin-right:8px}.icon-button{border:1px solid #ffffff10;background:#14202b;width:28px;height:28px;font-size:calc(15px * var(--ui-scale));display:inline-grid;place-items:center;flex-shrink:0}.game-layout{display:grid;grid-template-columns:58px minmax(0,1fr) 60px;gap:10px;flex:1;min-height:0}.canvas-wrap{position:relative;min-height:0;overflow:hidden;border:1px solid #88adbf20;border-radius:9px;background:#0d1827;box-shadow:0 10px 55px #0004}.canvas-wrap:after{position:absolute;pointer-events:none;content:"";inset:0;border-radius:9px;box-shadow:inset 0 0 40px #09142122}.canvas-wrap canvas{width:100%;height:100%;display:block;touch-action:none}.box-title{font:9px ui-monospace,monospace;color:#c0d0d8;letter-spacing:1.5px;padding:13px 0 10px}.box-title small{display:block;font-size:calc(6px * var(--ui-scale));color:#516c7e;margin-top:7px;letter-spacing:.5px}.hold-column,.next-column{position:relative;min-width:0;text-align:center}.hold-preview{height:50px;display:grid;place-items:center}.hold-preview.used{opacity:.35}.preview-piece{max-width:48px;max-height:31px;display:block;margin:auto;filter:drop-shadow(0 2px 5px #0004)}.preview-piece rect{fill:currentColor;stroke:#fff5;stroke-width:.6}.piece-I{color:#69d8e6}.piece-O{color:#f0d878}.piece-T{color:#b58af4}.piece-S{color:#92d884}.piece-Z{color:#ef838d}.piece-J{color:#6a9eeb}.piece-L{color:#eab178}.empty-hold{font-size:calc(21px * var(--ui-scale));color:#304b5d}.vertical-note{writing-mode:vertical-rl;font:8px ui-monospace,monospace;letter-spacing:3px;color:#375263;position:absolute;top:38%;left:20px}.coordinate{position:absolute;bottom:18px;left:9px;font:8px ui-monospace,monospace;color:#395667}.next-item{height:58px;display:grid;place-items:center}.next-item:not(:first-child){opacity:.7}.next-item:nth-child(n+5){opacity:.4}.chain-indicators{margin-top:20px;color:var(--acid);font:9px ui-monospace,monospace}.chain-indicators b{font-size:calc(26px * var(--ui-scale));display:block}.chain-indicators small{display:block;font-size:calc(8px * var(--ui-scale));letter-spacing:1px;margin-top:4px}#b2b-label{font-size:calc(8px * var(--ui-scale));color:#86bac0;margin-top:20px;letter-spacing:.5px}.game-status{height:30px;display:flex;justify-content:space-between;align-items:center;font-size:calc(8px * var(--ui-scale));color:#577487;gap:6px}.game-status>span:last-child{display:flex;gap:6px;align-items:center;white-space:nowrap}.game-status b{font-weight:450}.game-status .live-dot{width:3px;height:3px}.keyboard-hints{display:flex;justify-content:center;gap:14px;margin-top:10px;font-size:calc(8px * var(--ui-scale));color:#698495;white-space:nowrap}kbd{display:inline-block;border:1px solid #ffffff19;background:#16212e;border-radius:3px;padding:3px 5px;font:9px ui-monospace,monospace;color:#aebfca;margin-right:4px}.right-panel{padding-top:7px;min-height:0;display:flex;flex-direction:column}.run-label{display:flex;justify-content:space-between;align-items:center;font-size:calc(10px * var(--ui-scale));color:#b5c3ca}.run-label span:last-child{font:8px ui-monospace,monospace;color:#4e6678;letter-spacing:1px}.score-label{font:10px ui-monospace,monospace;letter-spacing:2px;color:#6b879a;margin-top:36px;display:flex;justify-content:space-between}.score-label span{font-size:calc(8px * var(--ui-scale));color:#466173;letter-spacing:0}.big-score{font:500 clamp(32px,3.4vw,56px) ui-monospace,"SF Mono",monospace;letter-spacing:-2px;color:#e6eeec;margin:10px 0 7px}.best-score{font:8px ui-monospace,monospace;color:#526d80;letter-spacing:.5px;display:flex;gap:12px}.best-score b{color:#a1b5ba;font-weight:400}.stats-grid{display:grid;grid-template-columns:1fr 1fr;margin-top:28px;gap:22px 20px;padding:23px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.stats-grid span{font:8px ui-monospace,monospace;color:#5d788d;letter-spacing:1px;display:block}.stats-grid b{display:block;font:400 26px ui-monospace,monospace;margin:8px 0;color:#bdcdd1}.stats-grid #timer{font-size:calc(19px * var(--ui-scale));letter-spacing:-.8px;padding:3.5px 0}.stats-grid #pps{font-size:calc(24px * var(--ui-scale))}.stats-grid small{font-size:calc(8px * var(--ui-scale));color:#496778}.mission-card{margin-top:25px;padding:17px 15px;border:1px solid #ffffff0d;border-radius:8px;background:linear-gradient(130deg,#263b3e38,#18283718)}.mission-card .section-eyebrow{font-size:calc(7px * var(--ui-scale));letter-spacing:1px}.mission-card h3{font-size:calc(15px * var(--ui-scale));font-weight:500;margin-top:16px}.mission-card p{font-size:calc(10px * var(--ui-scale));line-height:1.9;color:#718b9c;margin-top:9px;min-height:38px}.progress-track{height:3px;border-radius:2px;background:#ffffff0b;overflow:hidden;margin-top:17px}.progress-track i{display:block;background:var(--acid);width:0%;height:100%;transition:width .15s}.mission-foot{font:7px ui-monospace,monospace;color:#6d899a;margin-top:12px;display:flex;justify-content:space-between;align-items:center;gap:6px}.text-button{padding:0;background:none;border:0;color:#92a7b5;font-size:calc(9px * var(--ui-scale))}.mission-foot .text-button{font-size:calc(8px * var(--ui-scale))}.music-mini{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:auto;padding-top:23px}.record-disc{width:39px;height:39px;border-radius:50%;display:grid;place-items:center;background:repeating-radial-gradient(#1b2c35 0 2px,#12212a 3px 5px);border:1px solid #bfe48a22;color:var(--acid);font-size:calc(13px * var(--ui-scale))}.record-disc.muted{color:#5b7182}.record-disc.spinning{animation:spin 10s linear infinite}.track-meta{flex:1;min-width:0}.track-meta small{font:6px ui-monospace,monospace;letter-spacing:1.6px;color:#5e7c91;display:block;margin-bottom:5px}.track-meta b{display:block;font-weight:500;font-size:calc(10px * var(--ui-scale));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.track-meta span{font:7px ui-monospace,monospace;color:#5b788b;margin-top:5px;display:block}.music-mini>.icon-button{background:none;border:0;font-size:calc(15px * var(--ui-scale));color:#647f91}.mini-player{display:flex;align-items:center;gap:5px;width:100%;margin-top:1px}.mini-player button{width:28px;height:25px;background:none;border:0;color:#8ba3b2}.mini-player span{margin-left:auto;font-size:calc(8px * var(--ui-scale));color:#536f83}.bottom-links{margin-top:18px;padding-top:14px;border-top:1px solid var(--line);display:flex;justify-content:space-between}.bottom-links button{font-size:calc(8px * var(--ui-scale));color:#4d6c80}.energy-box{display:none;margin-top:14px;font-size:calc(11px * var(--ui-scale));padding:14px;background:#d5f77b08;border:1px solid #d5f77b20;border-radius:7px}.energy-box.visible{display:block}.energy-box>div:first-child{display:flex;justify-content:space-between}.energy-box b{font:11px monospace;color:var(--acid)}.energy-box .progress-track{margin-top:11px}.resonate-button{padding:9px 5px;font-size:calc(9px * var(--ui-scale));width:100%;margin-top:12px;color:var(--acid);background:#d5f77b0a;border-color:#d5f77b22}.practice-tools{display:none;gap:5px;flex-wrap:wrap;margin-top:12px}.practice-tools.visible{display:flex}.practice-tools button{font-size:calc(9px * var(--ui-scale));flex:1;padding:9px 5px}.touch-controls,.mobile-nav{display:none}.game-overlay{position:absolute;inset:0;background:linear-gradient(#0a152955,#0a1429b8);backdrop-filter:blur(4px);z-index:5;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:20px 12px}.game-overlay.hidden{display:none}.ready-emblem{font-size:calc(45px * var(--ui-scale));line-height:1;color:var(--acid);margin-bottom:22px;text-shadow:0 0 24px #d5f77b55}.overlay-eyebrow{font:7px ui-monospace,monospace;letter-spacing:2px;color:#8dafa4}.game-overlay h2{font-size:clamp(26px,2.8vw,42px);font-weight:500;line-height:1.5;letter-spacing:-1.4px;margin-top:16px}.game-overlay p{color:#92a9b6;font-size:calc(9px * var(--ui-scale));line-height:1.9;margin:14px 0 25px}.primary{background:var(--acid);color:#19241a;border-color:var(--acid);font-weight:650;padding:12px 23px}.primary:hover{background:#e4ffac;border-color:#e4ffac}.large{padding:15px 25px;font-size:calc(12px * var(--ui-scale));min-height:46px}.game-overlay .primary{min-width:174px;text-align:left;display:flex;justify-content:space-between;gap:25px}.game-overlay>small{font-size:calc(7px * var(--ui-scale));color:#5b7b8f;margin-top:15px}.game-overlay>.text-button{margin-top:16px}.overlay-links{display:flex;gap:9px;margin-top:12px;justify-content:center}.overlay-links button{font-size:calc(9px * var(--ui-scale));padding:10px;background:#102436aa;border-color:#bce1b322;color:#a7bdc8}.result-score{font:30px ui-monospace,monospace;color:var(--acid);margin-top:18px}.result-score small{display:block;font:9px sans-serif;color:#7b9aa9;margin-top:7px}.event-announcement{position:absolute;left:50%;top:12%;transform:translate(-50%,-5px);pointer-events:none;opacity:0;z-index:4;text-align:center;width:100%;transition:opacity .15s,transform .15s;color:#e5f5e0;text-shadow:0 1px 8px #000}.event-announcement.visible{opacity:1;transform:translate(-50%)}.event-announcement b{font-size:calc(18px * var(--ui-scale));font-weight:700;letter-spacing:2px;display:block}.event-announcement.high b{color:var(--acid);font-size:calc(23px * var(--ui-scale))}.event-announcement span{display:block;font:9px monospace;margin-top:7px;color:#d3e6db}.toast{position:fixed;z-index:100;bottom:25px;left:50%;transform:translate(-50%,12px);width:max-content;max-width:90vw;padding:14px 20px;border:1px solid #d5f77b44;border-radius:8px;background:#182725f5;box-shadow:0 6px 25px #0005;color:#e5f2dc;font-size:calc(12px * var(--ui-scale));line-height:1.7;opacity:0;pointer-events:none;transition:.18s}.toast.visible{opacity:1;transform:translate(-50%)}.modal-backdrop{position:fixed;inset:0;z-index:30;background:#030810bb;backdrop-filter:blur(13px);padding:40px 24px;display:flex;align-items:center;justify-content:center}.modal{width:min(1080px,100%);max-height:100%;background:#0f1925;border:1px solid #8fbdaf29;border-radius:14px;box-shadow:0 25px 100px #0009;display:flex;flex-direction:column;overflow:hidden}.modal.compact{width:min(500px,100%)}.modal-header{padding:26px 32px 23px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px}.modal-header .section-eyebrow{font-size:calc(8px * var(--ui-scale));letter-spacing:2px;color:#7c979c}.modal-header h2{font-weight:500;font-size:calc(25px * var(--ui-scale));letter-spacing:-.5px;margin-top:12px}.modal-header h2 span{font:11px monospace;color:#4e6b7c;margin-left:12px}.close-button{border-radius:50%;width:34px;height:34px;font-size:calc(24px * var(--ui-scale));background:#ffffff06;color:#a3b7be}.modal-body{overflow:auto;padding:27px 32px 30px;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#3e5660 transparent}.modal-intro{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px;gap:15px}.modal-intro p{font-size:calc(16px * var(--ui-scale));color:#c7d4d5}.modal-intro span{font-size:calc(10px * var(--ui-scale));color:#6d8899;line-height:1.8}.scene-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.scene-card{text-align:left;overflow:hidden;background:#111e2b;border-color:#ffffff10;position:relative}.scene-card.selected{border-color:#d5f77b88}.scene-art{height:115px;position:relative;display:grid;place-items:center;overflow:hidden;background:radial-gradient(ellipse at 70% 20%,#29546c,#091628)}.scene-art>span{font-size:calc(65px * var(--ui-scale));opacity:.5;color:#b4e8f1;z-index:1;text-shadow:0 0 35px currentColor}.scene-art i{position:absolute;inset:60% -10% -10%;transform:rotate(-10deg);border:1px solid #abd6f822;border-radius:50%;background:#35688b22}.scene-art i:nth-of-type(2){inset:76% -5% -10%;transform:rotate(16deg);background:#102132}.scene-art i:nth-of-type(3){inset:15% 30%;background:transparent;border-color:#a1b6c333;transform:rotate(-25deg)}.scene-1 .scene-art{background:linear-gradient(160deg,#4c204c,#111b39)}.scene-1 .scene-art i{border-radius:0;background:#ea67c322}.scene-1 .scene-art>span{color:#f090dd}.scene-2 .scene-art{background:radial-gradient(ellipse at top,#155e6b,#081b32)}.scene-3 .scene-art{background:linear-gradient(130deg,#455b42,#182a29)}.scene-3 .scene-art i{border-radius:0;border-width:3px;transform:rotate(13deg);background:#879e6722}.scene-4 .scene-art{background:linear-gradient(150deg,#75513d,#2c1c28)}.scene-4 .scene-art>span{color:#e8be83}.scene-5 .scene-art{background:linear-gradient(150deg,#3c695f,#16223e)}.scene-5 .scene-art>span{color:#adf0ba}.scene-6 .scene-art{background:linear-gradient(150deg,#a97872,#4b435c)}.scene-6 .scene-art>span{color:#ffde9f}.scene-6 .scene-art i{border-radius:0;transform:rotate(45deg)}.scene-7 .scene-art{background:radial-gradient(ellipse at bottom,#9a492d,#211e2c)}.scene-7 .scene-art>span{color:#ffba71}.scene-card-text{padding:13px 13px 8px}.scene-card small{font:7px monospace;color:#5e8195;letter-spacing:1.2px}.scene-card b{display:block;margin-top:8px;font-size:calc(14px * var(--ui-scale));font-weight:500}.scene-card-text>span{display:block;color:#5c7c8f;font:7px monospace;letter-spacing:1px;margin-top:6px}.scene-card p{font-size:calc(9px * var(--ui-scale));line-height:1.7;color:#7a94a1;margin-top:9px;min-height:46px}.scene-card em{display:block;font-size:calc(9px * var(--ui-scale));font-style:normal;margin:5px 13px 15px;color:#92b98e}.skin-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-top:18px}.skin-button{padding:14px 5px;font-size:calc(11px * var(--ui-scale));background:#12212c}.skin-button>span{display:flex;justify-content:center;gap:3px;margin-bottom:12px}.skin-button i{width:20px;height:20px;background:#bc8cf0;display:block;border:1px solid #e5bcff44;border-radius:2px}.skin-crystal i{background:linear-gradient(150deg,#e0b4ff,#9762cb)}.skin-neon i{background:#b689e522;box-shadow:0 0 8px #be80ed44;border:2px solid #cc9ffb}.skin-metal i{background:linear-gradient(#d7b8ed,#755e8b,#c4a9d7)}.skin-pixel i{border-radius:0;border:3px solid #9567ad;box-shadow:inset 2px 2px #dfbbf8}.skin-minimal i{border:0;border-radius:0;background:#c69ae7}.selected{border-color:#d5f77b77!important}.button-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:23px;align-items:center}.button-row>button{padding:11px 16px;font-size:calc(11px * var(--ui-scale))}.inline-note{font-size:calc(11px * var(--ui-scale));line-height:1.9;color:#7592a3;padding:15px;border:1px solid #a0cecf12;border-radius:6px;background:#0b152040;margin:18px 0}.preset-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:26px}.preset-strip button{padding:14px 12px;text-align:left;background:linear-gradient(140deg,#283a352b,#13212d)}.preset-strip b{font-size:calc(12px * var(--ui-scale));font-weight:550;color:#c5d8b3}.preset-strip small{display:block;font-size:calc(9px * var(--ui-scale));line-height:1.8;color:#71909b;margin-top:8px}.settings-layout{display:grid;grid-template-columns:155px minmax(0,1fr);gap:27px}.settings-tabs{display:flex;flex-direction:column;gap:5px;align-self:start;position:sticky;top:0}.settings-tabs button{border-color:transparent;background:none;text-align:left;font-size:calc(12px * var(--ui-scale));padding:13px 14px;color:#88a2b3}.settings-tabs button span{display:inline-block;width:28px;color:#7e9b99}.settings-tabs button.active{background:#d5f77b0e;color:var(--acid);border-color:#d5f77b22}.settings-intro{font-size:calc(15px * var(--ui-scale));display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:14px 0 17px;margin-top:6px;gap:20px}.settings-intro>span{font-size:calc(9px * var(--ui-scale));color:#617e8d}.setting-row{display:flex;gap:24px;justify-content:space-between;align-items:center;min-height:78px;border-bottom:1px solid var(--line);padding:16px 0}.setting-row>span:first-child{flex:1}.setting-row b{font-size:calc(12px * var(--ui-scale));font-weight:500;display:block;color:#c5d3d9}.setting-row small{font-size:calc(10px * var(--ui-scale));line-height:1.8;display:block;color:#6e8b9e;margin-top:6px}.setting-row select{font-size:calc(11px * var(--ui-scale));max-width:40%}.range-control{display:flex;align-items:center;gap:12px}.range-control output,.setting-row>output{font:10px monospace;color:#92ab9c;min-width:49px;text-align:right}.setting-row>input[type=range]{width:130px}.key-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:17px}.key-grid button{display:flex;justify-content:space-between;align-items:center;padding:12px 13px;font-size:calc(11px * var(--ui-scale));color:#8ca5b5;background:#14232d}.key-grid kbd{margin:0;min-width:43px;text-align:center}.key-grid .capturing{border-color:var(--acid)}#key-conflict:empty{display:none}.settings-content>.muted{font-size:calc(10px * var(--ui-scale));line-height:1.9;margin-top:13px}.danger-text{color:#df9d95!important}.data-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:20px 0}.data-actions button{padding:16px 10px;font-size:calc(11px * var(--ui-scale))}.music-feature{display:flex;gap:35px;align-items:center;padding:8px 0 25px}.large-disc{position:relative;width:155px;height:155px;flex-shrink:0;border-radius:50%;display:grid;place-items:center;font-size:calc(35px * var(--ui-scale));color:#b4e47b;background:repeating-radial-gradient(#192e32 0 3px,#0c1c27 4px 7px);border:1px solid #bfdc8f44;box-shadow:0 10px 45px #0004}.large-disc span{position:absolute;bottom:25px;letter-spacing:2px;font:6px monospace;color:#6a938d}.music-feature small{font:8px monospace;letter-spacing:1.5px;color:#71918f}.music-feature h3{font-weight:450;font-size:calc(24px * var(--ui-scale));margin-top:13px}.music-feature p{font-size:calc(11px * var(--ui-scale));line-height:1.8;color:#71919f;margin-top:12px}.music-options{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:15px 0;display:flex;gap:30px;align-items:center;font-size:calc(11px * var(--ui-scale));color:#82a0b0}.music-options label{display:flex;align-items:center;gap:15px}.music-options select{font-size:calc(11px * var(--ui-scale));padding:8px}.track-list{margin-top:18px}.track-row{display:flex;align-items:center;border-bottom:1px solid var(--line);padding:7px 6px;gap:6px}.track-row.selected{background:#d5f77b06}.track-select{display:flex;align-items:center;gap:18px;text-align:left;flex:1;min-width:0;background:none;border:0;padding:10px}.track-select>span:first-child{width:20px;font:11px monospace;color:#668695}.track-select>div{flex:1;min-width:0}.track-select b{font-size:calc(12px * var(--ui-scale));font-weight:500;color:#bbcdd5}.track-select small{display:block;font:9px monospace;color:#557b8e;margin-top:7px}.track-select>span:last-child{font:10px monospace;color:#607f92}.track-row.selected .track-select>span:first-child,.track-row.selected .track-select b{color:var(--acid)}.favorite-track{padding:9px;background:none;border:0;color:#70919f;font-size:calc(20px * var(--ui-scale))}.favorite-track.active{color:#dc9fbb}.playlist-check{font-size:calc(9px * var(--ui-scale));color:#627f93;display:flex;gap:7px;align-items:center;padding:0 12px}.playlist-check input{width:14px;height:14px}.summary-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.summary-cards>div{padding:21px;background:#192a3544;border:1px solid var(--line);border-radius:8px}.summary-cards b{font:35px monospace;color:#c5ddb0;display:block}.summary-cards b small{font:13px monospace;color:#78958c}.summary-cards span{display:block;font-size:calc(11px * var(--ui-scale));color:#6b8c9c;margin-top:10px}.record-filters{display:flex;gap:20px;font-size:calc(11px * var(--ui-scale));color:#809cab;margin:22px 0}.record-filters select{font-size:calc(10px * var(--ui-scale));margin-left:8px}.record-table{overflow-x:auto}.record-table table{width:100%;border-collapse:collapse;font-size:calc(11px * var(--ui-scale))}.record-table th{text-align:left;font-size:calc(10px * var(--ui-scale));color:#638397;font-weight:400;padding:12px}.record-table td{padding:16px 12px;border-top:1px solid var(--line);font:11px monospace;color:#99b5bf;white-space:nowrap}.record-table td b{font:11px sans-serif}.record-table td small{font-size:calc(8px * var(--ui-scale));color:#587d90;display:block;margin-top:6px}.record-tag{font-size:calc(8px * var(--ui-scale));padding:4px 7px;color:#94a4b4;background:#75859915;border-radius:3px}.record-tag.standard{color:#b3cd83;background:#d5f77b10}.empty-state{text-align:center;color:#5b7e8f;font-size:calc(37px * var(--ui-scale));padding:55px 15px}.empty-state h3{color:#abc1c8;font-size:calc(17px * var(--ui-scale));font-weight:450;margin:20px 0 14px}.empty-state p{font-size:calc(11px * var(--ui-scale));color:#648498}.chapter{margin-bottom:30px}.chapter-heading{display:flex;align-items:center;gap:14px;margin-bottom:13px}.chapter-heading small{font:8px monospace;letter-spacing:2px;color:#628591}.chapter-heading h3{font-size:calc(16px * var(--ui-scale));font-weight:450;flex:1}.chapter-heading>span{font:10px monospace;color:#a4bb7d}.level-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.level-card{display:flex;align-items:start;gap:12px;text-align:left;padding:15px 13px;background:#14232e}.level-number{font:11px monospace;color:#5c7e8e}.level-card>div{flex:1}.level-card b{font-size:calc(12px * var(--ui-scale));font-weight:500}.level-card p{font-size:calc(10px * var(--ui-scale));color:#6f8d9e;line-height:1.8;margin:10px 0}.level-card small{display:block;font-size:calc(8px * var(--ui-scale));line-height:1.8;color:#526e7f}.level-card em{display:block;font-size:calc(14px * var(--ui-scale));color:#a1b77c;font-style:normal;letter-spacing:3px;margin-top:10px}.level-card>span:last-child{color:#75998d}.level-card.complete{border-color:#b4dc6c33}.mode-start-intro{max-width:650px}.mode-start-intro>span{font:9px monospace;letter-spacing:2px;color:#7e9b83}.mode-start-intro h3{font-size:calc(32px * var(--ui-scale));font-weight:450;margin:14px 0}.mode-start-intro p{font-size:calc(12px * var(--ui-scale));line-height:1.9;color:#7e9aa9}.config-fields{margin-top:24px}.text-field{display:flex;flex-direction:column;gap:10px;margin-top:20px;font-size:calc(12px * var(--ui-scale));color:#b3c6ce}.text-field input{max-width:480px}.text-field small{font-size:calc(10px * var(--ui-scale));color:#678698}.practice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:24px}.practice-grid button{padding:16px;text-align:left;background:#14232f}.practice-grid b{font-size:calc(12px * var(--ui-scale));font-weight:500}.practice-grid small{display:block;font-size:calc(10px * var(--ui-scale));line-height:1.8;color:#698a9e;margin-top:10px}.tutorial-hero{max-width:650px}.tutorial-hero>span{font-size:calc(11px * var(--ui-scale));color:#aacb87}.tutorial-hero h3{font-size:calc(30px * var(--ui-scale));font-weight:450;margin:14px 0 17px}.tutorial-hero p{font-size:calc(12px * var(--ui-scale));line-height:2;color:#7c9aa9}.tutorial-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:30px}.tutorial-grid article{padding:20px;background:#142530;border:1px solid var(--line);border-radius:8px}.tutorial-grid h3{font-size:calc(14px * var(--ui-scale));font-weight:500;color:#b3c5aa;margin-bottom:14px}.tutorial-grid p{font-size:calc(11px * var(--ui-scale));line-height:2;color:#7997a7;margin-top:9px}.tutorial-grid kbd{font-size:calc(8px * var(--ui-scale))}.achievement-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.achievement{text-align:center;border:1px solid var(--line);border-radius:8px;padding:22px 12px;background:#14222d;opacity:.6}.achievement>div{height:45px;font-size:calc(31px * var(--ui-scale));line-height:1;color:#6c8593}.achievement b{display:block;font-size:calc(13px * var(--ui-scale));font-weight:500;margin-top:13px;color:#a0b7c2}.achievement p{font-size:calc(10px * var(--ui-scale));line-height:1.8;color:#688696;min-height:35px;margin-top:9px}.achievement small{font-size:calc(8px * var(--ui-scale));color:#557282;display:block;margin-top:13px}.achievement.unlocked{opacity:1;border-color:#d5f77b44;background:#c2f57508}.achievement.unlocked>div,.achievement.unlocked b{color:var(--acid)}.achievement.unlocked small{color:#9eb779}.mode-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.mode-picker button{text-align:left;padding:22px;background:#132430}.mode-picker>button>span{font:12px monospace;color:#769583;display:block}.mode-picker b{font-weight:500;font-size:calc(18px * var(--ui-scale));display:block;margin-top:15px}.mode-picker p{font-size:calc(11px * var(--ui-scale));line-height:1.9;color:#7190a1;margin-top:15px;min-height:65px}.mode-picker small{font:8px monospace;color:#8ba779;display:block;margin-top:18px}.confirm-message{font-size:calc(14px * var(--ui-scale));line-height:2;color:#a1bac5;margin-bottom:26px}@keyframes spin{to{transform:rotate(360deg)}}.reduced-motion *{scroll-behavior:auto!important;animation:none!important;transition:none!important}@media(min-width:1550px){.shell{padding-top:40px;gap:50px;grid-template-columns:260px minmax(460px,1fr) 285px}.play-heading{margin-bottom:18px}.mode-list{gap:10px}.mode-item{padding:14px 15px}h1{font-size:calc(39px * var(--ui-scale))}.game-layout{grid-template-columns:70px minmax(0,1fr) 72px;gap:16px}.next-item{height:65px}.stats-grid{gap:30px}.big-score{font-size:calc(60px * var(--ui-scale))}.mission-card p{font-size:calc(11px * var(--ui-scale))}.music-mini{padding-top:34px}.library-links{margin-top:26px}}@media(max-height:850px)and (min-width:901px){.topbar{height:72px}.shell{height:calc(100dvh - 72px);padding-top:18px;padding-bottom:15px;gap:24px}h1{font-size:calc(26px * var(--ui-scale));margin-top:12px}.lead{font-size:calc(10px * var(--ui-scale));margin-top:6px}.mode-list{margin-top:17px;gap:3px}.mode-item{padding:8px 11px}.mode-item b{font-size:calc(12px * var(--ui-scale))}.mode-item small{font-size:calc(7px * var(--ui-scale));margin-top:3px}.library-links{margin-top:13px;padding-top:9px}.library-links button{padding:7px 10px;font-size:calc(11px * var(--ui-scale))}.score-label{margin-top:27px}.stats-grid{margin-top:22px;gap:18px;padding:20px 0}.mission-card{margin-top:20px}.mission-card h3{margin-top:12px}.music-mini{padding-top:14px}.bottom-links{margin-top:11px;padding-top:12px}.keyboard-hints{margin-top:6px}}@media(max-width:1150px)and (min-width:901px){.shell{grid-template-columns:190px minmax(330px,1fr) 205px;gap:20px;padding-left:22px;padding-right:22px}.topbar{padding:0 24px}.top-tag{display:none}.big-score{font-size:calc(37px * var(--ui-scale))}.scene-desc{display:none}.mode-item{gap:8px;padding-left:8px}.mode-item small{font-size:calc(7px * var(--ui-scale));letter-spacing:.2px}.game-layout{grid-template-columns:45px minmax(0,1fr) 45px;gap:5px}.preview-piece{max-width:40px}.vertical-note{left:15px}.box-title{font-size:calc(8px * var(--ui-scale));letter-spacing:1px}.mission-card{padding:14px 12px}.keyboard-hints{gap:5px}.keyboard-hints kbd{padding:3px;font-size:calc(8px * var(--ui-scale))}.local-note{font-size:calc(8px * var(--ui-scale))}}@media(max-width:900px){:root{font-size:calc(13px * var(--ui-scale))}.topbar{height:58px;padding:0 17px}.brand{font-size:calc(18px * var(--ui-scale));gap:9px}.brand small{font-size:calc(7px * var(--ui-scale));letter-spacing:4px;margin-top:6px}.brand-mark{transform:scale(.7);width:25px;margin-left:-4px}.top-tag{display:none}.top-actions{gap:17px}.top-actions b{display:none}.top-actions .subtle{padding:8px 2px}.top-actions span{font-size:calc(19px * var(--ui-scale))}.shell{height:calc(100dvh - 102px - env(safe-area-inset-bottom,0px));padding:8px 12px 0;display:flex;flex-direction:column;gap:0;max-width:640px}.left-panel{display:none}.play-panel{flex:1;display:flex;min-height:0}.play-heading{height:24px;min-height:24px;margin-bottom:5px;padding:0 3px}.play-heading b{font-size:calc(10px * var(--ui-scale))}.scene-desc{font-size:calc(6px * var(--ui-scale));letter-spacing:.4px}.quality-readout{font-size:calc(7px * var(--ui-scale));margin-right:2px}.heading-actions{gap:5px}.heading-actions button{height:24px;width:24px;font-size:calc(14px * var(--ui-scale))}.game-layout{flex:1;min-height:0;grid-template-columns:45px minmax(0,1fr) 45px;gap:5px}.canvas-wrap{border-radius:7px}.box-title{font-size:calc(8px * var(--ui-scale));padding-top:10px;letter-spacing:1px}.box-title small{font-size:calc(5px * var(--ui-scale));letter-spacing:0;margin-top:5px}.preview-piece{max-width:37px;max-height:25px}.hold-preview{height:40px}.next-item{height:44px}.vertical-note{left:13px;font-size:calc(6px * var(--ui-scale));letter-spacing:2px}.coordinate{left:6px;font-size:calc(6px * var(--ui-scale));bottom:12px}.chain-indicators{margin-top:8px}.chain-indicators b{font-size:calc(21px * var(--ui-scale))}.chain-indicators small{font-size:calc(6px * var(--ui-scale))}#b2b-label{font-size:calc(7px * var(--ui-scale));margin-top:13px}.game-status{height:23px;min-height:23px;font-size:calc(6px * var(--ui-scale));padding:0 4px}.keyboard-hints{display:none}.touch-controls{display:block;flex-shrink:0;padding:2px 0 8px;touch-action:none;opacity:var(--button-opacity)}.touch-utilities{display:flex;gap:7px;margin-bottom:7px;justify-content:center}.touch-utilities button{height:33px;min-width:56px;font:10px monospace;color:#9db6bf;background:#172532}.touch-utilities .resonate-touch{display:none;color:var(--acid);border-color:#d5f77b44}.touch-utilities .resonate-touch.visible{display:block}.touch-main{display:flex;gap:12px;align-items:stretch}.touch-move{display:flex;flex:1;gap:5px}.touch-rotate{display:flex;gap:5px;margin-left:auto}.touch-main button{height:var(--button-size);min-width:43px;flex:1;font-size:calc(23px * var(--ui-scale));background:linear-gradient(#203442,#14242f);border-color:#6f98a52b;border-radius:8px;color:#bdd4d6;box-shadow:0 3px #07111d}.touch-rotate button{min-width:44px}.touch-main .hard-button{min-width:55px;max-width:74px;flex:.85;background:var(--acid);color:#1a2b24;border-color:var(--acid);font-size:calc(26px * var(--ui-scale));line-height:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;margin-left:3px}.hard-button small{font-size:calc(8px * var(--ui-scale));font-weight:600}.touch-main button:active{background:#375a64;transform:translateY(2px);box-shadow:none}.touch-main .hard-button:active{background:#e9ffbc}body[data-hand=left] .touch-move{order:2}body[data-hand=left] .touch-rotate{order:0;margin:0}body[data-hand=left] .hard-button{order:1;margin-left:0;margin-right:2px}.right-panel{order:-1;flex:none;display:flex;flex-direction:row;align-items:center;gap:14px;padding:0 3px;height:50px;min-height:50px;margin-bottom:5px;position:relative;border-bottom:1px solid var(--line)}.run-label{position:absolute;top:0;left:3px;font-size:calc(8px * var(--ui-scale));color:#69899b}.run-label span:last-child{display:none}.score-label,.best-score,.mission-card,.music-mini,.bottom-links{display:none}.big-score{font-size:calc(25px * var(--ui-scale));letter-spacing:-1px;margin:12px 0 0;flex:1;white-space:nowrap}.stats-grid{display:flex;border:0;gap:16px;margin:9px 0 0;padding:0;align-items:center}.stats-grid>div{display:flex;flex-direction:column;gap:4px}.stats-grid span{font-size:calc(6px * var(--ui-scale));letter-spacing:.6px}.stats-grid b{font-size:calc(16px * var(--ui-scale));margin:0;line-height:1.1}.stats-grid #timer{font-size:calc(12px * var(--ui-scale));letter-spacing:-.4px;padding:2px 0}.stats-grid #pps{font-size:calc(14px * var(--ui-scale))}.stats-grid small{display:none}.stats-grid>div:last-child{display:none}.energy-box{position:absolute;top:47px;left:50px;right:50px;padding:5px 10px;z-index:7;border-radius:4px;background:#142b25f0;display:none;font-size:calc(8px * var(--ui-scale))}.energy-box .progress-track{height:2px;margin-top:4px}.energy-box>div:first-child{font-size:calc(8px * var(--ui-scale))}.energy-box b{font-size:calc(8px * var(--ui-scale))}.energy-box .resonate-button{display:none}.practice-tools{position:absolute;left:0;right:0;top:45px;z-index:8;justify-content:center;gap:5px;margin:0;background:#101c28e8;padding:4px;border-radius:5px}.practice-tools button{min-height:30px;flex:0 1 100px;padding:5px;font-size:calc(8px * var(--ui-scale))}.mobile-nav{height:calc(44px + env(safe-area-inset-bottom,0px));padding:0 18px env(safe-area-inset-bottom,0px);display:flex;align-items:center;justify-content:space-around;gap:10px;background:#0d1723;border-top:1px solid var(--line)}.mobile-nav button{border:0;background:none;color:#6e8f9d;font-size:calc(10px * var(--ui-scale));padding:12px 8px}.game-overlay{padding:15px 10px}.ready-emblem{font-size:calc(32px * var(--ui-scale));margin-bottom:15px}.overlay-eyebrow{font-size:calc(6px * var(--ui-scale));letter-spacing:1.1px}.game-overlay h2{font-size:calc(29px * var(--ui-scale));line-height:1.4;margin-top:13px}.game-overlay p{font-size:calc(8px * var(--ui-scale));margin:12px 0 20px}.game-overlay .large{font-size:calc(11px * var(--ui-scale));padding:13px 18px;min-height:44px;min-width:145px}.game-overlay>small{font-size:calc(6px * var(--ui-scale));margin-top:12px}.overlay-links{gap:6px}.overlay-links button{padding:8px;font-size:calc(8px * var(--ui-scale))}.result-score{font-size:calc(25px * var(--ui-scale));margin-top:10px}.event-announcement{top:16%}.event-announcement b{font-size:calc(15px * var(--ui-scale))}.event-announcement.high b{font-size:calc(17px * var(--ui-scale))}.event-announcement span{font-size:calc(7px * var(--ui-scale))}.toast{bottom:calc(45px + env(safe-area-inset-bottom,0px));font-size:calc(10px * var(--ui-scale));padding:12px 16px}.modal-backdrop{padding:12px 9px}.modal{max-height:100%;border-radius:10px}.modal-header{padding:20px}.modal-header h2{font-size:calc(22px * var(--ui-scale))}.modal-header .section-eyebrow{font-size:calc(6px * var(--ui-scale));letter-spacing:1.4px}.modal-body{padding:20px}.modal-intro{display:block;margin-bottom:20px}.modal-intro p{font-size:calc(15px * var(--ui-scale))}.modal-intro span{display:block;font-size:calc(10px * var(--ui-scale));margin-top:10px}.scene-grid{grid-template-columns:repeat(2,1fr);gap:10px}.scene-art{height:95px}.scene-card-text{padding:12px 10px 7px}.scene-card b{font-size:calc(13px * var(--ui-scale))}.scene-card p{font-size:calc(9px * var(--ui-scale));min-height:46px}.scene-card small{font-size:calc(6px * var(--ui-scale))}.skin-grid{grid-template-columns:repeat(3,1fr)}.skin-button{font-size:calc(10px * var(--ui-scale))}.preset-strip{grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:20px}.preset-strip button{padding:12px 10px}.preset-strip b{font-size:calc(11px * var(--ui-scale))}.preset-strip small{font-size:calc(8px * var(--ui-scale))}.settings-layout{display:flex;flex-direction:column;gap:12px}.settings-tabs{position:static;display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.settings-tabs button{padding:11px 6px;font-size:calc(10px * var(--ui-scale));text-align:center;white-space:nowrap}.settings-tabs button span{display:none}.settings-intro{font-size:calc(13px * var(--ui-scale));gap:10px}.settings-intro>span{font-size:calc(8px * var(--ui-scale));max-width:55%;text-align:right;line-height:1.6}.setting-row{gap:12px;min-height:80px;padding:14px 0}.setting-row b{font-size:calc(11px * var(--ui-scale))}.setting-row small{font-size:calc(9px * var(--ui-scale))}.range-control{gap:7px;flex-direction:column}.range-control input{width:100px;max-width:30vw}.range-control output{font-size:calc(9px * var(--ui-scale));align-self:flex-end;min-width:0}.setting-row select{font-size:calc(10px * var(--ui-scale));max-width:42%;padding:8px}.key-grid{grid-template-columns:repeat(2,1fr);gap:7px}.key-grid button{padding:11px 9px;font-size:calc(9px * var(--ui-scale))}.key-grid kbd{font-size:calc(9px * var(--ui-scale));min-width:36px}.setting-row>input[type=range]{width:85px}.setting-row>output{font-size:calc(8px * var(--ui-scale));min-width:55px}.music-feature{gap:18px;align-items:center;padding-bottom:20px}.large-disc{width:85px;height:85px;font-size:calc(24px * var(--ui-scale))}.large-disc span{font-size:calc(4px * var(--ui-scale));letter-spacing:0;bottom:14px}.music-feature h3{font-size:calc(17px * var(--ui-scale));line-height:1.5;margin-top:8px}.music-feature small{font-size:calc(6px * var(--ui-scale));letter-spacing:.6px}.music-feature p{font-size:calc(9px * var(--ui-scale));margin-top:8px}.music-feature .button-row{gap:5px;margin-top:13px}.music-feature .button-row button{padding:8px;font-size:calc(8px * var(--ui-scale))}.music-options{gap:10px;justify-content:space-between;font-size:calc(9px * var(--ui-scale));align-items:start}.music-options label{gap:7px}.music-options select{font-size:calc(9px * var(--ui-scale));padding:6px}.music-options .toggle-label{font-size:calc(8px * var(--ui-scale));white-space:nowrap;align-items:center}.music-options input{width:15px;height:15px}.track-select{gap:7px;padding:10px 0}.track-select b{font-size:calc(10px * var(--ui-scale))}.track-select small{font-size:calc(7px * var(--ui-scale));line-height:1.6;margin-top:5px}.track-select>span:first-child{width:17px;font-size:calc(9px * var(--ui-scale))}.track-select>span:last-child{font-size:calc(8px * var(--ui-scale))}.favorite-track{font-size:calc(17px * var(--ui-scale));padding:6px}.playlist-check{font-size:calc(7px * var(--ui-scale));gap:4px;padding:0 3px}.playlist-check input{width:12px;height:12px}.track-row{padding:6px 0}.inline-note{font-size:calc(10px * var(--ui-scale));line-height:1.9;padding:12px}.summary-cards{gap:8px}.summary-cards>div{padding:15px 10px}.summary-cards b{font-size:calc(25px * var(--ui-scale))}.summary-cards b small{font-size:calc(9px * var(--ui-scale))}.summary-cards span{font-size:calc(8px * var(--ui-scale));line-height:1.7}.record-table td{font-size:calc(9px * var(--ui-scale));padding:13px 8px}.record-table th{font-size:calc(8px * var(--ui-scale));padding:10px 8px}.record-table td b{font-size:calc(9px * var(--ui-scale))}.record-filters{font-size:calc(9px * var(--ui-scale));gap:12px}.record-filters select{font-size:calc(8px * var(--ui-scale));padding:7px;margin-left:5px}.level-grid{grid-template-columns:1fr}.level-card{padding:16px;gap:16px}.level-card b{font-size:calc(13px * var(--ui-scale))}.level-card p{min-height:0;font-size:calc(10px * var(--ui-scale));margin:8px 0}.level-card small{font-size:calc(9px * var(--ui-scale))}.chapter-heading{gap:9px}.chapter-heading small{font-size:calc(6px * var(--ui-scale));letter-spacing:1px}.chapter-heading h3{font-size:calc(14px * var(--ui-scale))}.practice-grid{grid-template-columns:repeat(2,1fr);gap:8px}.practice-grid button{padding:13px 11px}.practice-grid b{font-size:calc(11px * var(--ui-scale))}.practice-grid small{font-size:calc(9px * var(--ui-scale))}.mode-start-intro h3{font-size:calc(27px * var(--ui-scale))}.mode-start-intro p,.text-field{font-size:calc(11px * var(--ui-scale))}.text-field input{width:100%}.text-field small{font-size:calc(9px * var(--ui-scale))}.tutorial-hero h3{font-size:calc(25px * var(--ui-scale))}.tutorial-hero p{font-size:calc(11px * var(--ui-scale))}.tutorial-grid{grid-template-columns:1fr;gap:12px}.tutorial-grid article{padding:17px}.tutorial-grid h3{font-size:calc(13px * var(--ui-scale))}.tutorial-grid p{font-size:calc(10px * var(--ui-scale))}.achievement-grid{grid-template-columns:repeat(2,1fr);gap:10px}.achievement{padding:20px 11px}.achievement b{font-size:calc(12px * var(--ui-scale))}.achievement p{font-size:calc(9px * var(--ui-scale))}.achievement small{font-size:calc(7px * var(--ui-scale))}.mode-picker{grid-template-columns:1fr;gap:10px}.mode-picker button{padding:19px}.mode-picker>button>span{float:left;margin-right:14px;margin-top:3px;font-size:calc(11px * var(--ui-scale))}.mode-picker b{margin-top:0;font-size:calc(17px * var(--ui-scale))}.mode-picker p{min-height:0;margin-top:12px;font-size:calc(10px * var(--ui-scale))}.mode-picker small{font-size:calc(8px * var(--ui-scale));margin-top:13px}.data-actions{gap:8px}.data-actions button{font-size:calc(10px * var(--ui-scale));padding:13px 8px}.button-row{gap:8px}.button-row>button{padding:11px 13px;font-size:calc(10px * var(--ui-scale))}}@media(max-width:375px){.shell{padding-left:7px;padding-right:7px}.game-layout{grid-template-columns:38px minmax(0,1fr) 38px;gap:3px}.touch-main{gap:8px}.touch-main button{min-width:40px}.touch-rotate button{min-width:42px}.touch-main .hard-button{min-width:51px}.scene-desc{display:none}.game-overlay h2{font-size:calc(26px * var(--ui-scale))}.overlay-eyebrow{font-size:calc(5px * var(--ui-scale))}.modal-body{padding:16px}.modal-header{padding:18px}.playlist-check{font-size:calc(6px * var(--ui-scale))}.track-select b{font-size:calc(9px * var(--ui-scale))}}@media(max-height:720px)and (max-width:900px){.topbar{height:49px}.shell{height:calc(100dvh - 89px - env(safe-area-inset-bottom,0px));padding-top:5px}.right-panel{height:42px;min-height:42px;margin-bottom:3px}.big-score{font-size:calc(23px * var(--ui-scale));margin-top:10px}.stats-grid{margin-top:8px}.play-heading{height:21px;min-height:21px;margin-bottom:3px}.touch-controls{padding-bottom:5px}.touch-utilities{margin-bottom:5px}.touch-utilities button{height:28px}.touch-main button{height:max(48px,calc(var(--button-size) - 5px))}.mobile-nav{height:calc(40px + env(safe-area-inset-bottom,0px))}.next-item{height:37px}.ready-emblem{font-size:calc(25px * var(--ui-scale));margin-bottom:10px}.game-overlay h2{font-size:calc(24px * var(--ui-scale));margin-top:10px}.game-overlay p{margin:10px 0 14px;font-size:calc(7px * var(--ui-scale))}.game-overlay>small{margin-top:10px}.game-overlay .large{min-height:40px;padding:11px 15px;font-size:calc(10px * var(--ui-scale))}.box-title{padding-top:7px}.energy-box,.practice-tools{top:40px}}@media(max-height:520px)and (min-width:700px){.topbar{height:48px}.shell{height:calc(100dvh - 48px);display:grid;grid-template-columns:160px minmax(250px,1fr) 180px;gap:14px;padding:8px 15px}.left-panel{display:flex}h1,.lead,.section-eyebrow,.library-links,.local-note{display:none}.mode-list{margin-top:0;gap:1px}.mode-item{padding:7px}.mode-item b{font-size:calc(10px * var(--ui-scale))}.mode-item small{display:none}.mode-number{font-size:calc(8px * var(--ui-scale))}.right-panel{order:0;display:flex;flex-direction:column;align-items:stretch;height:auto;margin:0;border:0;padding-top:5px}.run-label{position:static}.big-score{flex:0;font-size:calc(30px * var(--ui-scale));margin-top:15px}.stats-grid{display:grid;grid-template-columns:1fr 1fr;margin:20px 0 0;gap:16px}.stats-grid>div:last-child{display:block}.stats-grid span{font-size:calc(7px * var(--ui-scale))}.stats-grid b{font-size:calc(20px * var(--ui-scale))}.touch-controls,.mobile-nav,.keyboard-hints{display:none}.music-mini{display:flex;margin-top:auto;padding-top:10px}.bottom-links{display:flex;margin-top:10px}.game-layout{grid-template-columns:38px minmax(0,1fr) 38px}.next-item{height:32px}.game-overlay h2{font-size:calc(24px * var(--ui-scale))}.game-overlay p{font-size:calc(7px * var(--ui-scale))}.game-overlay .large{font-size:calc(10px * var(--ui-scale));padding:11px 14px;min-height:36px}.ready-emblem{font-size:calc(22px * var(--ui-scale));margin-bottom:10px}.game-status{font-size:calc(6px * var(--ui-scale))}.energy-box,.practice-tools{position:static}.mission-card{display:none}}.mobile-mission,.practice-utility{display:none}@media(max-width:900px){.touch-main button,.touch-rotate button{min-width:48px}.touch-main .hard-button{min-width:53px}.touch-main{gap:9px}.mobile-mission{display:flex;justify-content:space-between;align-items:center;gap:6px;height:24px;min-height:24px;font-size:calc(8px * var(--ui-scale));color:#7e9b91;padding:0 3px 6px}.mobile-mission b{font-weight:450;color:#9badab}.mobile-mission span{font:7px monospace;color:#647f8b}body[data-mode=marathon] .mobile-mission,body[data-mode=zen] .mobile-mission,.practice-tools.visible,.touch-utilities .practice-utility{display:none}body[data-mode=practice] .touch-utilities .practice-utility{display:block;min-width:49px;font-size:calc(8px * var(--ui-scale))}.touch-utilities{gap:5px}.game-status{white-space:nowrap}.touch-utilities button{min-width:50px}.touch-main .touch-move{min-width:0}.touch-move,.touch-rotate{gap:4px}}@media(max-height:520px)and (min-width:700px){.mobile-mission{display:none}}@media(max-width:900px){.touch-utilities button{height:48px;min-height:48px;min-width:50px}.touch-utilities{margin-bottom:6px}}.result-details{font:8px/1.9 ui-monospace,monospace;color:#8fa6ac;margin:-12px 0 20px;letter-spacing:.2px}@media(max-width:900px){.result-details{font-size:calc(7px * var(--ui-scale));margin:-9px 0 14px;line-height:1.8}.game-overlay:has(.result-details) h2{font-size:calc(24px * var(--ui-scale));margin-top:9px}.game-overlay:has(.result-details) p{margin:9px 0 15px;font-size:calc(7px * var(--ui-scale))}}
