:root{--bg: #0c0d19;--bg-elev: #12142a;--panel: #181b33;--panel-2: #1f2340;--panel-3: #272c4f;--line: #2a2f55;--line-2: #363c69;--text: #f1f2ff;--muted: #a3a9d0;--faint: #6c739f;--accent: #ff7a5c;--accent-2: #9b8cff;--accent-ink: #1a0f0c;--good: #38d98b;--warn: #ffc658;--bad: #ff5c7a;--ref: #6fa8ff;--radius: 16px;--radius-sm: 10px;--shadow: 0 10px 40px rgba(0, 0, 0, .35);--font: "Manrope", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--display: "Unbounded", "Manrope", system-ui, sans-serif;--mono: ui-monospace, "Cascadia Mono", "Consolas", monospace;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}body{min-height:100vh;background:radial-gradient(1200px 600px at 85% -10%,rgba(155,140,255,.12),transparent 60%),radial-gradient(900px 500px at -10% 10%,rgba(255,122,92,.1),transparent 60%),var(--bg);background-attachment:fixed}a{color:inherit}button,input,select,textarea{font:inherit;color:inherit}h1,h2,h3{margin:0;line-height:1.15;letter-spacing:-.01em}h1{font-family:var(--display);font-weight:700;font-size:clamp(28px,4.2vw,44px)}h2{font-size:22px;font-weight:800}h3{font-size:17px;font-weight:800}p{margin:0}.muted{color:var(--muted)}.faint{color:var(--faint)}.small{font-size:13px}.num{font-family:var(--display);font-variant-numeric:tabular-nums}.app{display:flex;flex-direction:column;min-height:100vh}.topbar{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0c0d19c7;border-bottom:1px solid var(--line)}.topbar-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;gap:20px;padding:10px 20px}.logo{display:flex;align-items:center;gap:10px;text-decoration:none;font-family:var(--display);font-weight:700;font-size:17px;white-space:nowrap}.logo-mark{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff}.nav{display:flex;gap:4px;margin-left:auto}.nav a{display:flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;text-decoration:none;color:var(--muted);font-weight:700;font-size:14px;transition:background .15s,color .15s}.nav a:hover{color:var(--text);background:var(--panel)}.nav a.active{color:var(--text);background:var(--panel-2);box-shadow:inset 0 0 0 1px var(--line-2)}.main{flex:1;width:100%;max-width:1200px;margin:0 auto;padding:24px 20px 64px}.footer{border-top:1px solid var(--line);color:var(--faint);font-size:13px}.footer-inner{max-width:1200px;margin:0 auto;padding:18px 20px;display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:space-between}@media(max-width:760px){.topbar{-webkit-backdrop-filter:none;backdrop-filter:none;background:#0c0d19f7}.nav{position:fixed;left:0;right:0;bottom:0;z-index:30;margin:0;justify-content:space-around;padding:6px 4px calc(6px + env(safe-area-inset-bottom));background:#12142af5;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--line)}.nav a{flex-direction:column;gap:2px;padding:6px 8px;font-size:11px;border-radius:12px}.nav a.active{box-shadow:none}.main{padding:16px 16px 110px}.topbar-inner{padding:10px 16px}.footer{display:none}}.card{background:linear-gradient(180deg,var(--panel),var(--bg-elev));border:1px solid var(--line);border-radius:var(--radius);padding:20px}.card.tight{padding:14px 16px}.card-title{display:flex;align-items:center;gap:10px;margin-bottom:12px}.grid{display:grid;gap:16px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}@media(max-width:960px){.grid-4,.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.grid-2,.grid-3{grid-template-columns:minmax(0,1fr)}}.row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.row.between{justify-content:space-between}.stack{display:flex;flex-direction:column;gap:12px}.spacer{flex:1}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;min-height:42px;border-radius:12px;border:1px solid var(--line-2);background:var(--panel-2);font-weight:700;font-size:14px;cursor:pointer;text-decoration:none;transition:background .15s,transform .08s,border-color .15s;white-space:nowrap}.btn:hover{background:var(--panel-3)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.primary{background:linear-gradient(135deg,var(--accent),#ff9566);border-color:transparent;color:var(--accent-ink)}.btn.primary:hover{filter:brightness(1.06)}.btn.violet{background:linear-gradient(135deg,var(--accent-2),#b6a9ff);border-color:transparent;color:#120d2c}.btn.ghost{background:transparent;border-color:transparent;color:var(--muted)}.btn.ghost:hover{color:var(--text);background:var(--panel)}.btn.danger{color:var(--bad)}.btn.rec{background:var(--bad);border-color:transparent;color:#fff}.btn.big{min-height:52px;padding:12px 22px;font-size:16px;border-radius:14px}.btn.icon{padding:0;width:42px;min-width:42px}.btn.sm{min-height:32px;padding:5px 10px;font-size:13px;border-radius:9px}.chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:var(--panel-2);border:1px solid var(--line);font-size:13px;font-weight:700;color:var(--muted)}.chip.good{color:var(--good);border-color:#38d98b59}.chip.warn{color:var(--warn);border-color:#ffc65859}.chip.bad{color:var(--bad);border-color:#ff5c7a59}.chip.accent{color:var(--accent);border-color:#ff7a5c59}.seg{display:inline-flex;padding:3px;border-radius:12px;background:var(--bg-elev);border:1px solid var(--line)}.seg button{border:0;background:transparent;padding:6px 12px;border-radius:9px;font-weight:700;font-size:13px;color:var(--muted);cursor:pointer}.seg button.on{background:var(--panel-3);color:var(--text)}input[type=range]{accent-color:var(--accent);width:100%}select,input[type=number],input[type=text],input[type=url]{background:var(--bg-elev);border:1px solid var(--line-2);border-radius:10px;padding:9px 12px;min-height:42px;max-width:100%}label.field{display:flex;flex-direction:column;gap:6px;font-weight:700;font-size:14px}label.field .hint{font-weight:500;color:var(--faint);font-size:13px}.switch{display:inline-flex;align-items:center;gap:10px;cursor:pointer;font-weight:600}.switch input{appearance:none;width:42px;height:24px;border-radius:999px;background:var(--panel-3);position:relative;cursor:pointer;transition:background .15s;flex:none}.switch input:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .15s}.switch input:checked{background:var(--accent)}.switch input:checked:after{transform:translate(18px)}.bar{height:8px;border-radius:999px;background:var(--panel-3);overflow:hidden}.bar>i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),var(--accent-2));transition:width .2s}.notice{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border-radius:12px;background:#6fa8ff14;border:1px solid rgba(111,168,255,.25);font-size:14px}.notice.warn{background:#ffc65814;border-color:#ffc6584d}.notice.bad{background:#ff5c7a14;border-color:#ff5c7a4d}.notice svg{flex:none;margin-top:2px}.kbd{font-family:var(--mono);font-size:12px;padding:1px 6px;border-radius:6px;border:1px solid var(--line-2);background:var(--bg-elev)}.dropzone{border:1.5px dashed var(--line-2);border-radius:var(--radius);padding:18px;display:flex;align-items:center;gap:14px;cursor:pointer;transition:border-color .15s,background .15s;background:#ffffff03;min-width:0}.dropzone:hover,.dropzone.over{border-color:var(--accent);background:#ff7a5c0d}.dropzone.filled{border-style:solid;border-color:#38d98b73}.dz-icon{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--panel-2);flex:none}.ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}canvas.roll{display:block;width:100%;border-radius:14px;background:#0a0b17;border:1px solid var(--line);touch-action:pan-y}.stat{display:flex;flex-direction:column;gap:2px}.stat .v{font-family:var(--display);font-size:26px;font-weight:700;font-variant-numeric:tabular-nums;line-height:1.1}.stat .l{color:var(--muted);font-size:13px;font-weight:600}.list{display:flex;flex-direction:column}.list>*+*{border-top:1px solid var(--line)}.list-item{display:flex;align-items:center;gap:12px;padding:12px 4px;text-decoration:none;min-width:0}a.list-item:hover{background:#ffffff05}.tag-dot{width:10px;height:10px;border-radius:50%;flex:none}.fade-in{animation:fade .25s ease both}.from-html .fade-in{animation:none}@keyframes fade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.pulse{animation:pulse 1.2s ease-in-out infinite}@keyframes pulse{50%{opacity:.45}}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px}.page-head p{margin-top:6px}hr.sep{border:0;border-top:1px solid var(--line);margin:16px 0}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}.gauge{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;color:var(--muted);--needle: var(--muted)}.gauge[data-state=good]{--needle: var(--good)}.gauge[data-state=ok]{--needle: var(--warn)}.gauge[data-state=off]{--needle: var(--bad)}.gauge-svg{width:min(360px,100%);color:var(--needle);overflow:visible}.needle{transition:color .2s}.gauge-note{margin-top:-18px;font-size:clamp(56px,11vw,96px);font-weight:700;line-height:1;color:var(--text);transition:color .2s,opacity .3s}.gauge[data-state=good] .gauge-note{color:var(--good);text-shadow:0 0 30px rgba(56,217,139,.35)}.gauge.idle .gauge-note{opacity:.35}.gauge-sub{margin-top:6px;font-weight:700;color:var(--muted)}.gauge-meta{display:flex;gap:14px;margin-top:4px;min-height:24px;font-weight:700}.meter-track{position:relative;height:10px;border-radius:999px;background:var(--panel-3);overflow:hidden}.meter.compact .meter-track{height:6px}.meter-track i{position:absolute;inset:0 auto 0 0;width:0;background:linear-gradient(90deg,var(--good) 0%,var(--good) 70%,var(--warn) 88%,var(--bad) 100%);border-radius:inherit}.meter-track b{position:absolute;top:0;bottom:0;width:2px;background:#fff;opacity:.8}.meter-labels{display:flex;justify-content:space-between;margin-top:6px;font-weight:700}.good-t{color:var(--good)}.bad-t{color:var(--bad)}.warn-t{color:var(--warn)}.ring{position:relative;flex:none}.ring-v{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1}.stars{display:inline-flex;gap:2px}.tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}@media(max-width:760px){.tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}.tile{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:12px 14px;min-width:0}.tile .l{font-size:12px;font-weight:700;color:var(--faint);text-transform:uppercase;letter-spacing:.04em}.tile .v{font-family:var(--display);font-size:20px;font-weight:600;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tile .s{font-size:12px;color:var(--muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.transport{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.seekbar{position:relative;flex:1;min-width:160px;height:36px;cursor:pointer;touch-action:none}.seekbar .track{position:absolute;left:0;right:0;top:15px;height:6px;border-radius:999px;background:var(--panel-3)}.seekbar .fill{position:absolute;left:0;top:15px;height:6px;border-radius:999px;background:linear-gradient(90deg,var(--accent),var(--accent-2))}.seekbar .knob{position:absolute;top:9px;width:18px;height:18px;margin-left:-9px;border-radius:50%;background:#fff;box-shadow:0 2px 8px #0006}.seekbar .mark{position:absolute;top:6px;width:2px;height:24px;background:var(--warn);opacity:.7;border-radius:1px}.seekbar .loop{position:absolute;top:11px;height:14px;background:#9b8cff40;border-radius:6px}.hud{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.combo{font-family:var(--display);font-weight:700;font-size:20px;color:var(--accent);transition:transform .15s}.combo.bump{transform:scale(1.25)}.roll-wrap{position:relative}.praise{position:absolute;left:50%;top:28%;transform:translate(-50%);font-family:var(--display);font-weight:700;font-size:26px;pointer-events:none;text-shadow:0 4px 30px rgba(0,0,0,.6);animation:praise 1s ease-out both;white-space:nowrap}@keyframes praise{0%{opacity:0;transform:translate(-50%,10px) scale(.8)}20%{opacity:1;transform:translate(-50%) scale(1.05)}to{opacity:0;transform:translate(-50%,-24px) scale(1)}}.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:28px;align-items:center;padding:24px 0 8px}@media(max-width:860px){.hero{grid-template-columns:1fr}}.hero h1 .grad{background:linear-gradient(90deg,var(--accent),var(--accent-2));-webkit-background-clip:text;background-clip:text;color:transparent}.feature{display:flex;flex-direction:column;gap:10px;text-decoration:none;transition:transform .15s,border-color .15s}.feature:hover{transform:translateY(-2px);border-color:var(--line-2)}.feature .fi{width:46px;height:46px;border-radius:14px;display:grid;place-items:center}.tip{display:flex;gap:14px;padding:16px;border-radius:14px;background:var(--panel);border:1px solid var(--line)}.tip .ti{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;flex:none}.tip.bad .ti{background:#ff5c7a24;color:var(--bad)}.tip.warn .ti{background:#ffc65824;color:var(--warn)}.tip.info .ti{background:#6fa8ff24;color:var(--ref)}.tip.good .ti{background:#38d98b24;color:var(--good)}.tip .ex{margin-top:10px;padding:10px 12px;border-radius:10px;background:var(--bg-elev);border:1px solid var(--line);font-size:14px}.bands{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;align-items:end;height:130px}.bands .b{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:4px;height:100%;font-size:11px;color:var(--muted);font-weight:700;text-align:center}.bands .b i{width:70%;border-radius:6px 6px 2px 2px;background:linear-gradient(180deg,var(--accent-2),rgba(155,140,255,.3));min-height:3px}.bands .b i.neg{background:linear-gradient(180deg,rgba(111,168,255,.3),var(--ref))}.kbd-range{position:relative;height:44px;border-radius:8px;overflow:hidden;display:flex}.kbd-range span{flex:1;border-right:1px solid #b9bdd6;background:#e7e9f7}.kbd-range span.blk{background:#262a4a;border-color:#262a4a}.kbd-range span.on{background:var(--accent);border-color:#00000026}.kbd-range span.blk.on{background:#c95a43}.kbd-range span.song{box-shadow:inset 0 -6px 0 var(--ref)}.spark{width:100%;height:120px;display:block}.ex-card{display:flex;flex-direction:column;gap:12px}.big-num{font-family:var(--display);font-weight:700;font-size:clamp(40px,8vw,64px);line-height:1}.target-ring{position:relative;width:180px;height:180px;margin:0 auto}.split{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:stretch}@media(max-width:860px){.split{grid-template-columns:minmax(0,1fr)}}.tiles.two{grid-template-columns:repeat(2,minmax(0,1fr))}.bands.diverging .b .col{position:relative;flex:1;width:70%;border-bottom:0;background:linear-gradient(transparent calc(50% - .5px),var(--line-2) calc(50% - .5px),var(--line-2) calc(50% + .5px),transparent calc(50% + .5px))}.bands.diverging .b .col i{position:absolute;left:0;right:0;width:100%;border-radius:6px 6px 2px 2px}.bands.diverging .b .col i.neg{border-radius:2px 2px 6px 6px}.meter-track i.quiet{background:var(--faint)}.meter-track i.ok{background:var(--good)}.meter-track i.hot{background:var(--warn)}.meter-track i.clip{background:var(--bad)}.list-item.spot{flex-wrap:wrap}.list-item.spot .spot-text{flex:1 1 180px;min-width:0}.btn.voice-btn.on{border-color:var(--accent-2);background:#9b8cff29;color:var(--text)}.p-icon{display:inline-block;flex:none;object-fit:contain;vertical-align:middle}.demo-chip .p-icon{margin:-2px 2px 0 0}.tuner-nav{display:flex;flex-wrap:wrap;gap:6px}.tuner-nav .chip{text-decoration:none;color:var(--muted);font-weight:700}.tuner-nav .chip:hover{color:var(--text);border-color:var(--line-2)}.tuner-nav .chip.accent{color:var(--accent)}.itune{display:flex;flex-direction:column;align-items:center;text-align:center;--needle: var(--muted)}.itune .gauge-svg{color:var(--needle)}.itune.in{--needle: var(--good)}.itune.close{--needle: var(--warn)}.itune.low,.itune.high{--needle: var(--bad)}.itune-note{margin-top:-18px;font-size:clamp(56px,11vw,96px);font-weight:700;line-height:1;transition:color .2s,opacity .3s}.itune.idle .itune-note{opacity:.35}.itune.in .itune-note{color:var(--good);text-shadow:0 0 30px rgba(56,217,139,.35)}.itune-sub{margin-top:6px;font-weight:700;color:var(--muted)}.itune-meta{display:flex;gap:14px;margin-top:4px;min-height:24px}.itune-hint{display:inline-flex;align-items:center;gap:6px;min-height:34px;margin-top:6px;padding:4px 14px;border-radius:999px;font-weight:800;color:var(--muted)}.itune-hint.in{color:var(--good);background:#38d98b1a}.itune-hint.close{color:var(--warn);background:#ffc6581a}.itune-hint.low,.itune-hint.high{color:var(--bad);background:#ff5c7a1a}.strings{display:grid;gap:6px}.string{position:relative;display:grid;grid-template-columns:30px 64px 1fr auto;align-items:center;gap:10px;padding:8px 12px;border-radius:12px;border:1px solid var(--line);background:var(--panel-2);color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:border-color .15s,background .15s}.string:hover{border-color:var(--line-2)}.string-n{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--panel-3);font-size:13px;font-weight:800;color:var(--muted)}.string-note{font-weight:800;font-size:18px}.string-hz{font-size:13px}.string-line{position:absolute;left:108px;right:46px;top:50%;background:linear-gradient(90deg,#ffffff0d,#ffffff38,#ffffff0d);pointer-events:none;display:none}.string.on{border-color:var(--accent-2);background:#9b8cff1a}.string.locked{border-color:var(--accent)}.string.done{color:var(--good)}.string.done .string-n{background:#38d98b2e;color:var(--good)}.notice.good{background:#38d98b14;border-color:#38d98b4d;color:var(--good)}.seo-text{display:grid;gap:18px;margin-top:40px;padding-top:28px;border-top:1px solid var(--line);color:var(--muted);font-size:15px}.seo-block h2{margin:0 0 8px;font-family:var(--display);font-size:clamp(18px,2.2vw,22px);font-weight:600;color:var(--text)}.seo-block p{margin:0 0 8px;max-width:820px}.seo-list{margin:0 0 8px;padding-left:20px;display:grid;gap:4px;max-width:820px}.seo-faq{display:grid;gap:8px;max-width:820px}.seo-faq details{border:1px solid var(--line);border-radius:12px;background:var(--panel);padding:10px 14px}.seo-faq summary{cursor:pointer;font-weight:700;color:var(--text)}.seo-faq details p{margin:8px 0 0}.seo-links{display:flex;flex-wrap:wrap;gap:8px}.seo-links .chip{text-decoration:none;color:var(--text);font-weight:700}.seo-links .chip:hover{border-color:var(--accent)}@media(max-width:560px){.string{grid-template-columns:26px 56px 1fr auto;gap:8px}}.lang-btn{min-width:40px;font-weight:800;letter-spacing:.04em;text-decoration:none}.consent-bar{position:fixed;left:50%;bottom:16px;transform:translate(-50%);z-index:60;display:flex;align-items:center;gap:14px;width:min(760px,calc(100% - 32px));padding:12px 16px;border-radius:14px;border:1px solid var(--line-2);background:var(--panel);box-shadow:var(--shadow);color:var(--muted)}.consent-bar a{color:var(--accent)}@media(max-width:760px){.consent-bar{bottom:84px;flex-direction:column;align-items:stretch}}.visitors{display:inline-flex;align-items:center;gap:8px;font-weight:700;color:var(--muted)}.visitors .dot{width:8px;height:8px;border-radius:50%;background:var(--good);box-shadow:0 0 0 4px #38d98b2e}.section-label{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--faint)}.start-card{border:1px solid var(--line);color:inherit;font:inherit}.start-card .big-fi{width:54px;height:54px;border-radius:16px}.start-card .go{margin-top:auto;color:var(--accent);font-weight:800;font-size:14px}button.start-card:disabled{opacity:.65}.title-input{font-family:var(--display);font-weight:700;font-size:clamp(20px,3vw,30px);background:transparent;border:1px solid transparent;border-radius:10px;padding:2px 6px;margin-left:-7px;width:100%;max-width:720px}.title-input:hover,.title-input:focus{border-color:var(--line-2);background:var(--bg-elev);outline:none}.transport-card{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:12px 16px;position:sticky;top:62px;z-index:10;box-shadow:var(--shadow)}.play-btn{border-radius:50%!important;width:56px!important;min-width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,var(--accent),#ff9566);color:var(--accent-ink);border:0}.ab button{min-width:92px}.wave-wrap{min-width:0}canvas.wave{display:block;width:100%;cursor:pointer;touch-action:none}canvas.spectrum{display:block;width:100%;border-radius:10px;background:#0a0b17}@media(max-width:760px){.transport-card{grid-template-columns:auto minmax(0,1fr);top:54px}.transport-card .wave-wrap{grid-column:1 / -1;order:3}.transport-card>span.num{order:4;grid-column:1 / -1;text-align:left!important}}.studio-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:16px;align-items:start}.studio-grid>.stack:last-child{position:sticky;top:160px}@media(max-width:980px){.studio-grid{grid-template-columns:minmax(0,1fr)}.studio-grid>.stack:last-child{position:static}}.mode-tabs{align-self:flex-start}.mode-tabs button{display:inline-flex;align-items:center;gap:6px;padding:8px 14px}.preset-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.preset{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:12px;border-radius:14px;border:1px solid var(--line);background:var(--panel);text-align:left;cursor:pointer;transition:transform .1s,border-color .15s,background .15s;min-height:112px}.preset:hover{border-color:var(--line-2);transform:translateY(-1px)}.preset.on{border-color:var(--accent);background:linear-gradient(180deg,rgba(255,122,92,.14),var(--panel));box-shadow:0 0 0 1px var(--accent) inset}.preset .pe{font-size:22px;line-height:1}.preset .pn{font-weight:800;font-size:15px}.preset .ph{font-size:12px;color:var(--muted);line-height:1.35;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.module.off{opacity:.7;padding-top:14px;padding-bottom:14px}.eq-curve{width:100%;height:70px;display:block;margin-bottom:8px;background:#0a0b17;border-radius:10px}.knob{display:flex;flex-direction:column;gap:4px;font-weight:700;font-size:14px;min-width:0}.knob.off{opacity:.5}.knob input[type=range]{appearance:none;height:6px;border-radius:999px;background:linear-gradient(90deg,var(--accent) var(--p, 50%),var(--panel-3) var(--p, 50%));margin:8px 0 4px;cursor:pointer}.knob input[type=range]::-webkit-slider-thumb{appearance:none;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 2px 6px #00000073}.knob input[type=range]::-moz-range-thumb{width:18px;height:18px;border:0;border-radius:50%;background:#fff}.knob .hint{font-weight:500}.knob>.row{flex-wrap:nowrap}.knob>.row>span:first-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.knob>.row>span:last-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:58%;flex:none}.rec-panel{display:flex;flex-direction:column;align-items:center;gap:16px;padding:32px 20px}.rec-big{width:112px;height:112px;border-radius:50%;border:6px solid rgba(255,92,122,.25);background:var(--panel-2);display:grid;place-items:center;cursor:pointer;transition:transform .12s,border-color .2s}.rec-big span{width:56px;height:56px;border-radius:50%;background:var(--bad);transition:border-radius .2s,width .2s,height .2s}.rec-big:hover{transform:scale(1.04)}.rec-big.on{border-color:#ff5c7a99;animation:pulse-ring 1.4s ease-out infinite}.rec-big.on span{width:40px;height:40px;border-radius:10px}@keyframes pulse-ring{0%{box-shadow:0 0 #ff5c7a73}to{box-shadow:0 0 0 26px #ff5c7a00}}.modal-back{position:fixed;inset:0;z-index:100;background:#05060eb8;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:grid;place-items:center;padding:16px;animation:fade .15s ease both}.modal{width:min(560px,100%);max-height:calc(100vh - 32px);overflow:auto;box-shadow:var(--shadow)}.modal.wide{width:min(860px,100%)}.choice{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px}.choice button{display:flex;flex-direction:column;gap:2px;text-align:left;padding:10px 12px;border-radius:12px;border:1px solid var(--line);background:var(--bg-elev);cursor:pointer}.choice button.on{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset;background:#ff7a5c14}.settings-btn{margin-left:4px}.settings-btn.on{color:var(--text);background:var(--panel-2)}.nav a.nav-studio:not(.active){color:var(--accent)}.footer-links{display:flex;flex-wrap:wrap;gap:6px 18px;align-items:flex-start}.footer-links a{color:var(--muted);text-decoration:none}.footer-links a:hover{color:var(--text)}@media(max-width:760px){.xp-chip{margin-left:auto}.footer{display:block;padding-bottom:90px}}.legal{max-width:820px}.legal h2{font-size:19px;margin:26px 0 8px}.legal p,.legal li{color:var(--muted);font-size:15px;line-height:1.65}.legal ul,.legal ol{padding-left:22px}.legal .fill{background:#ffc65824;color:var(--warn);padding:0 4px;border-radius:4px}.sync-card{display:flex;flex-direction:column;gap:10px}.sync-row{display:flex;align-items:flex-start;gap:8px}.sync-slider{flex:1;min-width:0}.sync-slider input{width:100%}.accent-t{color:var(--accent)}.landing{display:flex;flex-direction:column;gap:64px}.landing .hero{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);padding-top:12px}.landing .lead{font-size:18px;color:var(--muted);max-width:560px}.trust{display:flex;flex-wrap:wrap;gap:8px 18px;color:var(--muted);font-weight:700;font-size:14px}.trust span{display:inline-flex;align-items:center;gap:6px}.trust svg{color:var(--good)}.l-section{display:flex;flex-direction:column;gap:20px}.l-section.split-2{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:28px;align-items:center}@media(max-width:860px){.landing .hero,.l-section.split-2{grid-template-columns:minmax(0,1fr)}.landing{gap:44px}}.l-head{max-width:720px;display:flex;flex-direction:column;gap:8px}.l-title{font-family:var(--display);font-size:clamp(24px,3.4vw,34px);font-weight:700}.ticks{list-style:none;padding:0;margin:0;display:grid;gap:8px}.ticks li{padding-left:26px;position:relative;color:var(--text);font-weight:600}.ticks li:before{content:"";position:absolute;left:0;top:5px;width:14px;height:14px;border-radius:50%;background:var(--good);box-shadow:0 0 0 4px #38d98b2e}.preset-showcase{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(190px,44vw),1fr));gap:12px}.ps{display:flex;flex-direction:column;gap:6px;padding:16px;border-radius:16px;background:linear-gradient(180deg,var(--panel),var(--bg-elev));border:1px solid var(--line)}.ps .pe{font-size:26px}.fx-strip{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.fx-strip .section-label{margin-right:6px}.step .num{font-size:30px;color:var(--accent)}.step{display:flex;flex-direction:column;gap:6px}.module-tile{display:flex;gap:12px;align-items:flex-start;padding:14px;border-radius:14px;border:1px solid var(--line);background:#ffffff04}.module-tile .fi{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#9b8cff1f;color:var(--accent-2);flex:none}.privacy-card{display:flex;flex-direction:column;gap:10px}.faq{display:flex;flex-direction:column;gap:8px}.faq details{border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:var(--panel)}.faq summary{cursor:pointer;font-weight:800;list-style:none;display:flex;justify-content:space-between;gap:10px}.faq summary:after{content:"+";color:var(--accent);font-weight:800}.faq details[open] summary:after{content:"−"}.faq details p{margin-top:8px}.cta-band{display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center;padding:40px 20px;border-radius:24px;border:1px solid var(--line);background:radial-gradient(600px 200px at 50% 0%,rgba(255,122,92,.18),transparent 70%),linear-gradient(180deg,var(--panel),var(--bg-elev))}.cta-band h2{font-family:var(--display);font-size:clamp(22px,3vw,32px)}.demo{display:flex;flex-direction:column;gap:14px;min-height:380px;border-color:#ff7a5c4d;box-shadow:0 20px 60px #ff7a5c14,var(--shadow)}.demo-head{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between}.demo-body{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}.demo-rec{width:108px;height:108px;border-radius:50%;border:0;cursor:pointer;display:grid;place-items:center;color:#fff;background:radial-gradient(circle at 35% 30%,#ff9a7d,var(--accent) 50%,#e2496b);box-shadow:0 0 0 10px #ff7a5c1f,0 18px 40px #ff7a5c59;transition:transform .12s;animation:breathe 2.4s ease-in-out infinite}.demo-rec:hover{transform:scale(1.05)}@keyframes breathe{50%{box-shadow:0 0 0 18px #ff7a5c0f,0 18px 40px #ff7a5c59}}.demo-count{font-size:84px;font-weight:700;color:var(--accent);line-height:1}.demo-ring{position:relative;width:140px;height:140px}.demo-ring>span{position:absolute;inset:0;display:grid;place-items:center;font-size:28px;font-weight:700}.demo-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.demo-chip{padding:8px 12px;border-radius:999px;border:1px solid var(--line-2);background:var(--panel-2);font-weight:700;font-size:14px;cursor:pointer}.demo-chip.on{border-color:var(--accent);background:#ff7a5c29;color:var(--text)}@media(prefers-reduced-motion:reduce){.demo-rec,.rec-big.on,.pulse{animation:none}}.l-photo{margin:0;display:flex;flex-direction:column;gap:6px;min-width:0}.l-photo img{display:block;width:100%;height:auto;border-radius:var(--radius);border:1px solid var(--line);background:var(--panel)}.l-photo figcaption{font-size:11px;color:var(--faint)}.hero-photo img{max-height:540px;object-fit:cover;object-position:50% 30%}.try-now{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}.step .step-photo{margin:-20px -20px 6px}.step .step-photo img{aspect-ratio:4 / 3;object-fit:cover;object-position:50% 15%;border:0;border-bottom:1px solid var(--line);border-radius:var(--radius) var(--radius) 0 0}.step .step-photo figcaption{padding:0 20px}.lessons{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:16px;align-items:stretch}.lessons .l-photo img{flex:1;min-height:0;height:100%;object-fit:cover}.cta-band{position:relative;overflow:hidden;min-height:320px;justify-content:center}.cta-band .cta-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}.cta-band:after{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(180deg,#0c0d1973,#0c0d19d9)}.cta-band>:not(.cta-bg){position:relative;z-index:1}@media(max-width:860px){.try-now{grid-template-columns:minmax(0,1fr)!important}.try-now .l-photo{order:2}.hero-photo img{aspect-ratio:4 / 3;max-height:none}.lessons{grid-template-columns:minmax(0,1fr)}.lessons .l-photo img{aspect-ratio:4 / 3;height:auto}}.badge{position:relative;display:inline-grid;place-items:center;flex:none}.badge>svg{position:absolute;inset:0;filter:drop-shadow(0 4px 10px rgba(0,0,0,.45))}.badge>img{position:relative;width:58%;height:58%;object-fit:contain;filter:drop-shadow(0 3px 4px rgba(0,0,0,.35))}.badge.glow>svg{filter:drop-shadow(0 0 14px rgba(255,198,88,.55))}.badge.tier-legend.glow>svg{filter:drop-shadow(0 0 18px rgba(155,140,255,.7))}.badge.locked>svg{filter:grayscale(1) brightness(.55)}.badge.locked>img{filter:grayscale(1) brightness(.45);opacity:.55}.badge-q{position:relative;font-family:var(--display);font-weight:700;font-size:1.6em;color:var(--faint)}.badge-lock{position:absolute;right:2%;bottom:2%;width:30%;height:30%;border-radius:50%;display:grid;place-items:center;background:var(--panel-3);color:var(--muted);border:2px solid var(--bg)}.confetti{position:fixed;inset:0;width:100vw;height:100vh;pointer-events:none;z-index:200}.g-toast{position:fixed;top:76px;left:50%;transform:translate(-50%);z-index:150;display:flex;align-items:center;gap:14px;padding:12px 18px 12px 12px;min-width:min(420px,calc(100vw - 32px));max-width:calc(100vw - 32px);border-radius:18px;background:linear-gradient(180deg,#24284cf7,#181b33f7);border:1px solid rgba(255,198,88,.45);box-shadow:0 18px 50px #00000080,0 0 30px #ffc65826;cursor:pointer;animation:toast-in .45s cubic-bezier(.2,1.4,.4,1) both}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,-20px) scale(.9)}to{opacity:1;transform:translate(-50%) scale(1)}}.g-ico{width:52px;height:52px;object-fit:contain;flex:none}.xp-pill{margin-left:auto;font-family:var(--display);font-weight:700;color:var(--warn);background:#ffc6581f;border-radius:999px;padding:4px 10px;font-size:14px;white-space:nowrap}.g-modal-back{position:fixed;inset:0;z-index:160;background:#05060eb3;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:grid;place-items:center;padding:16px;animation:fade .2s ease both}.g-modal{width:min(400px,100%);display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;padding:28px 22px;border-color:#ffc65866;animation:pop-in .5s cubic-bezier(.2,1.5,.4,1) both}@keyframes pop-in{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}.lvl-burst{width:120px;height:120px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 35% 30%,#ffe58a,#f2b632 55%,#8a5a00);box-shadow:0 0 0 8px #ffc65826,0 0 60px #ffc65873}.lvl-burst .num{font-size:54px;font-weight:700;color:#3a2500}.chest-pop{animation:chest .8s ease both}@keyframes chest{0%{transform:scale(.6) rotate(-8deg)}50%{transform:scale(1.15) rotate(6deg)}to{transform:scale(1) rotate(0)}}.xp-chip{display:flex;align-items:center;gap:8px;text-decoration:none;padding:4px 10px 4px 4px;border-radius:999px;border:1px solid var(--line);background:var(--panel);flex:none}.xp-chip:hover{border-color:var(--line-2)}.xp-ring{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--warn) var(--p),var(--panel-3) 0);position:relative}.xp-ring:before{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--bg-elev)}.xp-ring .num{position:relative;font-size:13px;font-weight:700}.xp-text{display:flex;flex-direction:column;gap:3px;min-width:0}.xp-text b{font-size:12px;white-space:nowrap;max-width:120px;overflow:hidden;text-overflow:ellipsis}.xp-bar{display:block;width:90px;height:4px;border-radius:999px;background:var(--panel-3);overflow:hidden}.xp-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--warn),var(--accent))}@media(max-width:1100px){.xp-text{display:none}.xp-chip{padding-right:4px}}.judge{position:absolute;left:34%;top:14%;transform:translate(-50%);font-family:var(--display);font-weight:700;font-size:22px;pointer-events:none;animation:judge .7s ease-out both;text-shadow:0 3px 16px rgba(0,0,0,.7);white-space:nowrap}.judge.perfect{color:#ffd34d}.judge.great{color:var(--good)}.judge.good{color:var(--ref)}.judge.miss{color:var(--bad);opacity:.8}@keyframes judge{0%{opacity:0;transform:translate(-50%,8px) scale(.7)}25%{opacity:1;transform:translate(-50%) scale(1.15)}to{opacity:0;transform:translate(-50%,-18px) scale(1)}}.fever{box-shadow:0 0 0 2px #ffc65899,0 0 40px #ffb30059!important}.fever-tag{position:absolute;right:12px;top:10px;font-family:var(--display);font-weight:700;color:#ffd34d;font-size:15px;text-shadow:0 0 14px rgba(255,179,0,.7);pointer-events:none;animation:pulse .8s ease-in-out infinite}.score-num{font-family:var(--display);font-weight:700;font-size:22px;font-variant-numeric:tabular-nums}.mult{color:var(--warn);font-family:var(--display);font-weight:700}.result{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}.grade{font-family:var(--display);font-weight:700;font-size:84px;line-height:1;background:linear-gradient(180deg,#ffe58a,#f2b632);-webkit-background-clip:text;background-clip:text;color:transparent}.grade.g-A{background:linear-gradient(180deg,#8ef0c0,var(--good));-webkit-background-clip:text;background-clip:text}.grade.g-B,.grade.g-C{background:linear-gradient(180deg,#b6d2ff,var(--ref));-webkit-background-clip:text;background-clip:text}.grade.g-D{background:linear-gradient(180deg,#d0d3e6,var(--muted));-webkit-background-clip:text;background-clip:text}.judge-row{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;width:100%}.judge-row>div{padding:8px;border-radius:12px;background:var(--bg-elev);border:1px solid var(--line)}.ach-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(240px,100%),1fr));gap:10px}.ach{display:flex;gap:12px;align-items:center;padding:12px;border-radius:14px;border:1px solid var(--line);background:var(--panel);min-width:0}.ach.done{border-color:#ffc65859;background:linear-gradient(180deg,rgba(255,198,88,.06),var(--panel))}.ach .bar{height:5px;margin-top:6px}.quest{display:flex;gap:12px;align-items:center;padding:12px;border-radius:14px;border:1px solid var(--line);background:var(--bg-elev)}.quest.done{border-color:#38d98b66}.quest img{width:44px;height:44px}.unlock-card{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:12px;border-radius:14px;border:1px solid var(--line);background:var(--panel);text-align:left;cursor:pointer}.unlock-card.on{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}.unlock-card.locked{opacity:.55;cursor:default}.skin-swatch{width:100%;height:34px;border-radius:10px;background:#0a0b17;position:relative;overflow:hidden}.skin-swatch svg{position:absolute;inset:0}.profile-hero{display:flex;align-items:center;gap:22px;flex-wrap:wrap}.big-ring{width:128px;height:128px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--warn) var(--p),var(--panel-3) 0);position:relative;flex:none}.big-ring:before{content:"";position:absolute;inset:8px;border-radius:50%;background:var(--panel)}.big-ring>*{position:relative}.judge-c{font-size:22px;font-weight:800}.judge-c.perfect{color:#ffd34d}.judge-c.great{color:var(--good)}.judge-c.good{color:var(--ref)}.judge-c.miss{color:var(--bad)}.preset.locked{cursor:not-allowed;border-style:dashed;background:repeating-linear-gradient(135deg,var(--panel),var(--panel) 10px,var(--bg-elev) 10px,var(--bg-elev) 20px)}.preset.locked:hover{transform:none}.preset.locked .pn{color:var(--muted)}.preset.locked .ph{color:var(--faint)}.roll-wrap .judge{pointer-events:none}.game-tile{display:flex;flex-direction:column;gap:10px}.game-tile>:first-child{min-height:110px;display:flex;align-items:center}.game-quests{flex-direction:column;align-items:stretch!important;justify-content:center;gap:6px}.game-quests .gq{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:10px;padding:6px 10px;border-radius:10px;background:var(--bg-elev);font-size:13px}.game-quests .gq b{color:var(--good);font-variant-numeric:tabular-nums}.game-secrets{flex-wrap:wrap;gap:6px;justify-content:center}@media(min-width:900px){.g-toast{top:auto;bottom:24px;left:auto;right:max(16px,calc((100vw - 1180px)/2 - 40px));transform:none;min-width:380px;max-width:440px;animation-name:toast-in-right}}@keyframes toast-in-right{0%{opacity:0;transform:translateY(24px) scale(.95)}to{opacity:1;transform:none}}
