.studio-inst{display:grid;grid-gap:var(--sp-md);gap:var(--sp-md)}.studio-rb.on{background:var(--accent)}.studio-ms.on.r{background:var(--accent-red);color:#fff}.studio-tname.active{color:var(--accent)}.studio-tname svg{margin-right:4px;vertical-align:-1px}.studio-sub{font:700 12px var(--font-rounded);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;margin-top:4px}.studio-lane.inst{background:rgba(255,255,255,.02)}.studio-clip.midi{background:color-mix(in srgb,var(--c) 18%,transparent);border:1px solid color-mix(in srgb,var(--c) 55%,transparent);border-radius:6px}.studio-clip.midi svg{width:100%;height:100%;display:block}.studio-clip.midi rect{fill:var(--c)}.studio-chip.ghost{opacity:.7;pointer-events:none}.knob{display:grid;justify-items:center;grid-gap:2px;gap:2px;min-width:60px;-webkit-user-select:none;-moz-user-select:none;user-select:none;--knob:var(--accent)}.knob.big{min-width:78px}.knob-dial{cursor:ns-resize;border-radius:50%;outline:none}.knob-dial:focus-visible{box-shadow:0 0 0 2px var(--accent)}.knob-track{fill:none;stroke:rgba(255,255,255,.12);stroke-width:4;stroke-linecap:round}.knob-arc{fill:none;stroke:var(--knob);stroke-width:4;stroke-linecap:round}.knob-cap{fill:var(--surface-elev);stroke:rgba(255,255,255,.06)}.knob-tick{stroke:#fff;stroke-width:2.4;stroke-linecap:round}.knob-mod{fill:var(--accent-gold)}.knob.on .knob-cap{fill:color-mix(in srgb,var(--knob) 22%,var(--surface-elev))}.knob.off{opacity:.4}.knob.learn .knob-dial{box-shadow:0 0 0 2px var(--accent-gold);animation:knob-pulse 1s ease-in-out infinite}@keyframes knob-pulse{50%{box-shadow:0 0 0 5px color-mix(in srgb,var(--accent-gold) 30%,transparent)}}.knob-val{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;color:#fff;font:600 11px var(--font-body);max-width:92px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:text}.knob.on .knob-val{color:var(--knob);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.knob-sub{color:var(--text-secondary);font:500 10px var(--font-body);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.knob-type{width:70px;background:rgba(255,255,255,.1);border:0;border-radius:6px;color:#fff;font:600 12px var(--font-body);padding:2px 6px;text-align:center}.knob-pick{display:grid;grid-gap:2px;gap:2px;font:600 11px var(--font-body);color:var(--text-secondary)}.knob-pick select{border:0;border-radius:8px;padding:6px 8px}.knob-pick select,.knob-toggle{background:rgba(255,255,255,.08);color:#fff;font:600 12px var(--font-body)}.knob-toggle{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:var(--r-pill);padding:6px 10px;display:inline-flex;align-items:center;gap:6px;cursor:pointer}.knob-toggle i{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.3)}.knob-toggle.on i{background:var(--accent-green);box-shadow:0 0 6px var(--accent-green)}.knob-toggle:disabled{opacity:.4}.syn{display:grid;grid-gap:var(--sp-sm);gap:var(--sp-sm);padding:var(--sp-md);border-radius:var(--r-lg);background:rgba(255,255,255,.04)}.syn-head{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.syn-name{font:800 17px var(--font-rounded)}.syn-mod{font:700 11px var(--font-body);color:var(--accent-gold);background:color-mix(in srgb,var(--accent-gold) 15%,transparent);padding:3px 8px;border-radius:var(--r-pill)}.syn-save{display:flex;gap:6px;flex-wrap:wrap}.syn-save input{background:rgba(255,255,255,.08);border:0;border-radius:8px;color:#fff;padding:6px 10px;min-width:160px}.syn-note{color:var(--text-secondary);font-size:12px}.syn-note[data-bad]{color:var(--accent-red)}.syn-macros{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:6px;gap:6px;padding:6px 0}.syn-macro{display:grid;justify-items:center;grid-gap:4px;gap:4px}.syn-learn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:rgba(255,255,255,.06);color:var(--text-secondary);border-radius:var(--r-pill);font:600 10px var(--font-body);padding:3px 8px;cursor:pointer}.syn-learn.on{color:var(--accent-gold)}.syn-group{border-top:1px solid rgba(255,255,255,.06);padding-top:6px}.syn-group>summary{cursor:pointer;font:700 13px var(--font-rounded);padding:4px 0;color:#fff}.syn-row{display:flex;flex-wrap:wrap;gap:8px 10px;align-items:center;padding:6px 0}.syn-rowname{font:700 12px var(--font-rounded);min-width:46px;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.syn-x{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:none;color:var(--text-secondary);font:600 11px var(--font-body);cursor:pointer;text-decoration:underline}.syn-matrix .syn-row{border-bottom:1px solid rgba(255,255,255,.04)}@media (min-width:1024px){.syn{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--sp-xl)}.syn-head,.syn-macros{grid-column:1/-1}.syn-macros{grid-template-columns:repeat(4,110px);justify-content:start}}.fx-editor{display:grid;grid-gap:6px;gap:6px}.fx-editor>header{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.fx-editor>header>b{font:700 13px var(--font-rounded);margin-right:auto}.fx-graphic{display:grid;grid-gap:6px;gap:6px}.fx-knobs{display:flex;flex-wrap:wrap;gap:8px 10px;align-items:center}.fx-svg{width:100%;max-width:560px;height:auto;aspect-ratio:320/150;background:rgba(255,255,255,.03);border-radius:var(--r-md);touch-action:none;overflow:visible}.fx-curve{fill:none;stroke:var(--accent);stroke-width:2}.fx-fill{fill:color-mix(in srgb,var(--accent) 14%,transparent);stroke:none}.fx-spectrum{fill:none;stroke:rgba(255,255,255,.18);stroke-width:1}.fx-grid line,line.fx-grid{stroke:rgba(255,255,255,.07);stroke-width:1}.fx-axis{fill:var(--text-tertiary);font:500 8px var(--font-body)}.fx-label{fill:var(--text-secondary);font:600 9px var(--font-body)}.fx-handle{fill:#fff;stroke:var(--accent);stroke-width:2.5;cursor:-webkit-grab;cursor:grab;outline:none}.fx-handle:focus-visible{stroke:var(--accent-gold);stroke-width:4}.fx-handle.cut{fill:var(--accent-cyan);stroke:#fff}.fx-playhead{stroke:var(--accent-gold);stroke-width:1.5}.fx-band{fill:color-mix(in srgb,var(--accent-cyan) 25%,transparent)}.fx-dot{fill:var(--accent-gold)}.fx-meterbg{fill:rgba(255,255,255,.08)}.fx-meter{fill:var(--accent-green)}.fx-gr{fill:var(--accent-red)}.fx-tap{stroke:var(--accent);stroke-width:4;stroke-linecap:round}.fx-tap.R{stroke:var(--accent-cyan)}.fx-voice{fill:color-mix(in srgb,var(--accent) 60%,transparent)}.fx-pad{fill:rgba(255,255,255,.05);stroke:rgba(255,255,255,.1)}.ins-list{display:grid;grid-gap:4px;gap:4px}.ins-slot{border-radius:var(--r-md);background:rgba(255,255,255,.04);padding:6px 8px}.ins-slot.live{background:color-mix(in srgb,var(--accent) 10%,rgba(255,255,255,.04))}.ins-head{display:flex;align-items:center;gap:8px}.ins-pow{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:14px;height:14px;border-radius:50%;border:2px solid rgba(255,255,255,.3);background:none;cursor:pointer;flex:none}.ins-pow.on{background:var(--accent-green);border-color:var(--accent-green)}.ins-name{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:none;color:#fff;display:flex;gap:8px;align-items:baseline;flex:1 1;text-align:left;cursor:pointer;min-width:0}.ins-name b{font:700 13px var(--font-rounded)}.ins-name small{color:var(--text-secondary);font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ins-edit{padding:6px 0 2px}.ins-sends{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.aux{display:grid;grid-gap:var(--sp-md);gap:var(--sp-md)}.aux-strip{padding:var(--sp-sm);border-radius:var(--r-md);background:rgba(255,255,255,.04);display:grid;grid-gap:6px;gap:6px}.aux-strip.master{display:flex;align-items:center;gap:12px}.aux-strip.master small{color:var(--text-secondary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}@media (min-width:1024px){.aux{grid-template-columns:repeat(2,minmax(0,1fr))}.aux-strip.master{grid-column:1/-1}}.snd-strip{display:inline-flex;gap:4px;flex-wrap:wrap}.snd-strip button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:rgba(255,255,255,.08);color:#fff;border-radius:var(--r-pill);padding:6px 12px;font:700 12px var(--font-rounded);cursor:pointer}.snd-strip button.on{background:var(--accent)}.snd-strip button.more{background:none;color:var(--accent)}.snd-picker{display:grid;grid-gap:var(--sp-sm);gap:var(--sp-sm);padding:var(--sp-md);border-radius:var(--r-lg);background:var(--surface-high);border:1px solid rgba(255,255,255,.06);max-height:70vh;overflow:auto}.snd-picker>header{display:flex;gap:8px;align-items:center;position:-webkit-sticky;position:sticky;top:calc(-1 * var(--sp-md));background:var(--surface-high);padding:4px 0;z-index:1}.snd-picker>header b{margin-right:auto;font:800 16px var(--font-rounded)}.snd-picker h4{font:700 12px var(--font-rounded);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;margin:4px 0}.snd-tags{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:6px}.snd-tags button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:rgba(255,255,255,.06);color:var(--text-secondary);border-radius:var(--r-pill);padding:4px 10px;font:600 12px var(--font-body);cursor:pointer}.snd-tags button.on{background:color-mix(in srgb,var(--accent) 30%,transparent);color:#fff}.snd-plist{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:6px;gap:6px}.snd-plist li,.snd-plist li>button{display:grid;grid-gap:2px;gap:2px}.snd-plist li>button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:rgba(255,255,255,.05);color:#fff;border-radius:var(--r-md);padding:8px 10px;text-align:left;font:700 13px var(--font-rounded);cursor:pointer}.snd-plist li>button small{color:var(--text-secondary);font:500 11px var(--font-body)}.snd-plist li>button.on{box-shadow:inset 0 0 0 2px var(--accent)}.snd-plist li>button:disabled{opacity:.5;cursor:default}.snd-prow{display:flex;gap:8px;padding-left:4px}.snd-prow button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:none;color:var(--text-secondary);font:600 11px var(--font-body);cursor:pointer;text-decoration:underline;min-height:24px}.snd-drop{border:1px dashed rgba(255,255,255,.18);border-radius:var(--r-md);padding:12px}.snd-drop.over{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent)}.snd-linkbtn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:none;padding:0;color:#fff;font:inherit;text-decoration:underline;cursor:pointer;min-height:24px}.snd-zones{grid-template-columns:1fr;margin-top:8px}.snd-zones li{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;background:rgba(255,255,255,.04);border-radius:var(--r-md);padding:4px 8px}.snd-zone-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:600 13px var(--font-body)}.snd-build-foot input,.snd-zones select{font:inherit;font-size:14px;color:#fff;background:rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:6px 8px;min-height:32px}.snd-build-foot{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:8px 0 4px}.snd-build-foot input{flex:1 1 180px;min-width:0}.skb-midi{display:inline-flex;gap:6px;align-items:center}.skb-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.25);margin-right:6px;vertical-align:0;transition:background .08s}.skb-dot.on{background:color-mix(in srgb,var(--accent-green) 50%,transparent)}.skb-dot.hit{background:var(--accent-green);box-shadow:0 0 8px var(--accent-green)}.skb-dot.denied,.skb-dot.failed{background:var(--accent-red)}.midi-prompt{position:relative;padding:10px 36px 10px 12px;border-radius:var(--r-md);background:color-mix(in srgb,var(--accent-blue) 16%,rgba(255,255,255,.04));display:grid;grid-gap:6px;gap:6px;font-size:13px}.midi-prompt small{color:var(--text-secondary)}.midi-prompt .page-actions{margin:0}.midi-x{position:absolute;right:6px;top:4px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:none;color:#fff;font-size:20px;cursor:pointer}.skb{display:grid;grid-gap:6px;gap:6px;padding:8px;border-radius:var(--r-lg);background:rgba(10,10,12,.92);border:1px solid var(--chrome-rim);-moz-user-select:none;user-select:none;-webkit-user-select:none}.skb.off{opacity:.5}.skb-ctl{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.skb-ctl>button,.skb-midi>button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:var(--r-pill);padding:6px 10px;cursor:pointer;touch-action:manipulation}.skb-ctl select,.skb-ctl>button,.skb-midi select,.skb-midi>button{background:rgba(255,255,255,.08);color:#fff;font:600 12px var(--font-body)}.skb-ctl select,.skb-midi select{border:0;border-radius:8px;padding:5px 6px}.skb-sus.latched{background:var(--accent)}.skb-arm i{display:inline-block;width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.4);margin-right:6px}.skb-arm.on{background:color-mix(in srgb,var(--accent-red) 35%,transparent)}.skb-arm.on i{background:var(--accent-red)}.skb-scale,.skb-vel{display:inline-flex;gap:6px;align-items:center;font:600 12px var(--font-body);color:var(--text-secondary)}.skb-vel input[type=range]{width:80px;accent-color:var(--accent)}.skb-hint{color:var(--text-tertiary);font-size:11px}.skb-strip{position:relative;width:74px;height:30px;border-radius:8px;background:rgba(255,255,255,.07);touch-action:none;cursor:ew-resize;overflow:hidden;--v:0}.skb-strip span{position:absolute;inset:0;display:grid;place-items:center;font:700 10px var(--font-body);color:var(--text-secondary);pointer-events:none}.skb-strip.bend i{position:absolute;top:3px;bottom:3px;width:6px;border-radius:3px;background:var(--accent-cyan);left:calc(50% - 3px + var(--v) * 30px)}.skb-strip.mod i{position:absolute;left:0;top:0;bottom:0;width:calc(var(--v) * 100%);background:color-mix(in srgb,var(--accent) 45%,transparent)}.skb-keys{display:grid;grid-gap:6px;gap:6px;touch-action:none}.skb-rowwrap{display:grid;grid-gap:3px;gap:3px}.skb-rowctl{display:flex;gap:6px;align-items:center;font:600 11px var(--font-body);color:var(--text-secondary)}.skb-rowctl button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;width:26px;height:22px;border-radius:6px;background:rgba(255,255,255,.08);color:#fff;cursor:pointer}.skb-rowctl select{background:rgba(255,255,255,.06);color:#fff;border:0;border-radius:6px;font-size:11px;padding:2px 4px}.skb-row{display:flex;height:120px}.skb-key,.skb-row{position:relative;touch-action:none}.skb-key.w{height:100%;background:linear-gradient(#f4f4f6,#dcdce2);border:1px solid #0006;border-radius:0 0 6px 6px;display:flex;align-items:flex-end;justify-content:center}.skb-key.w span{color:#555;font:700 10px var(--font-body);padding-bottom:4px;pointer-events:none}.skb-key.b{position:absolute;top:0;height:62%;z-index:1;background:linear-gradient(#2a2a2e,#111);border-radius:0 0 4px 4px;border:1px solid #000}.skb-key.w.lit{background:linear-gradient(color-mix(in srgb,var(--accent) 45%,#fff),color-mix(in srgb,var(--accent) 70%,#fff))}.skb-key.b.lit{background:var(--accent)}.skb-key.out.w{background:linear-gradient(#9a9aa0,#85858c)}.skb-key.out.b{background:#0a0a0a;opacity:.55}.skb-grip{height:14px;display:grid;place-items:center;cursor:ns-resize;touch-action:none}.skb-grip i{width:40px;height:4px;border-radius:2px;background:rgba(255,255,255,.3)}.skb.phone{background:#0a0a0c;position:fixed;left:0;right:0;bottom:calc(env(safe-area-inset-bottom, 0px) + 84px);z-index:40;border-radius:var(--r-lg) var(--r-lg) 0 0;height:var(--kbh,45vh);grid-template-rows:auto auto 1fr;overflow:hidden}.skb.phone .skb-ctl{overflow-x:auto;flex-wrap:nowrap;padding-bottom:2px}.skb.phone .skb-ctl>*{flex:none}.skb.phone .skb-keys{grid-auto-rows:1fr;min-height:0}.skb.phone .skb-rowwrap{grid-template-rows:auto 1fr;min-height:0}.skb.phone .skb-row{height:auto;min-height:0}.studio:has(.skb.phone){padding-bottom:calc(var(--kbh, 45vh) + 20px)}.studio:has(.skb.phone) .studio-transport{position:fixed;left:8px;right:8px;z-index:41;padding:6px 8px;gap:4px;bottom:calc(env(safe-area-inset-bottom, 0px) + 84px + var(--kbh, 45vh))}.studio:has(.skb.phone) .studio-transport .studio-click,.studio:has(.skb.phone) .studio-transport .studio-punch{display:none}.studio:has(.skb.phone) .studio-transport .studio-clock{font-size:18px}.studio:has(.skb.phone){padding-bottom:calc(var(--kbh, 45vh) + 120px)}@media (min-width:1024px){.skb-row{height:150px}}.skb-side{position:fixed;inset:0;z-index:2000;background:#000;overflow:hidden}.skb-side-in{position:absolute;left:50%;top:50%;width:100vh;height:100vw;display:grid;grid-template-columns:auto 1fr;grid-gap:6px;gap:6px;padding:8px;transform:translate(-50%,-50%) rotate(90deg)}.skb-side[data-rot="-90"] .skb-side-in{transform:translate(-50%,-50%) rotate(-90deg)}.skb-side .skb-ctl.slim{flex-direction:column;flex-wrap:nowrap;width:92px;overflow-y:auto}.skb-side .skb-ctl.slim .skb-strip{width:80px;height:44px}.skb-side .skb-keys{grid-auto-rows:1fr}.skb-side .skb-rowwrap{grid-template-rows:auto 1fr}.skb-side .skb-row{height:auto}.dpads{display:grid;grid-gap:10px;gap:10px;padding:12px;border-radius:18px;background:rgba(255,255,255,.04)}.dpads-title{font:700 13px var(--font-body);color:#fff;margin-right:4px}.dpads-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:8px;gap:8px;touch-action:none;-moz-user-select:none;user-select:none;-webkit-user-select:none;max-width:520px}.dpad{--h:270;position:relative;aspect-ratio:1/1;min-height:56px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid hsl(var(--h) 70% 60%/.45);border-radius:12px;background:linear-gradient(160deg,hsl(var(--h) 60% 40%/.55),hsl(var(--h) 60% 22%/.55));color:#fff;cursor:pointer;padding:8px;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;text-align:left;font:600 11px var(--font-body);transition:transform .06s,box-shadow .12s,background .12s;touch-action:none;-webkit-tap-highlight-color:transparent}.dpad:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.dpad.hit{transform:scale(.96);background:hsl(var(--h) 80% 60%/.9);box-shadow:0 0 18px hsl(var(--h) 90% 60%/.7);transition:none}.dpad-type{font:800 15px var(--font-body);letter-spacing:.02em}.dpad-name{color:rgba(255,255,255,.8);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.dpad-foot{display:flex;justify-content:space-between;gap:4px;width:100%;color:rgba(255,255,255,.55);font-size:10px}@media (max-width:420px){.dpad{padding:6px}.dpad-name{display:none}.dpad-type{font-size:13px}}@media (prefers-reduced-motion:reduce){.dpad,.dpad.hit{transform:none;transition:none}}