@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@600&family=Sora:wght@400;500;600&family=Big+Shoulders+Display:wght@500;600;700&family=Share+Tech+Mono&display=swap";:root{--font-ui: "Sora", "Segoe UI", sans-serif;--font-display: "Cormorant Garamond", "Times New Roman", serif;font-family:var(--font-ui);line-height:1.45;font-weight:400;color:#f4f7fb;background-color:#0b0d10;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--text-3xs: .5rem;--text-2xs: .55rem;--text-xs: .6rem;--text-sm: .65rem;--text-md: .7rem;--text-base: .75rem;--text-lg: .85rem;--radius-xs: 2px;--radius-sm: 3px;--radius-md: 4px;--radius-lg: 6px;--radius-xl: 8px;--radius-2xl: 10px;--radius-3xl: 12px;--radius-4xl: 14px;--radius-pill: 999px;--bg-0: #0a0c10;--bg-1: #0f1319;--steel-0: #161c23;--steel-1: #1f2832;--steel-2: #2a3644;--glass-0: rgba(15, 20, 28, .62);--glass-1: rgba(24, 32, 42, .78);--glass-2: rgba(12, 16, 22, .7);--glass-3: rgba(12, 16, 22, .9);--glass-4: rgba(30, 40, 55, .8);--glass-5: rgba(30, 40, 55, .9);--glass-panel: rgba(50, 65, 85, .9);--glass-overlay: rgba(0, 0, 0, .3);--glass-dark: rgba(8, 12, 18, .7);--border-soft: rgba(255, 255, 255, .08);--border-strong: rgba(255, 255, 255, .18);--text-strong: #f2f6fb;--text-muted: rgba(214, 224, 238, .72);--text-dim: rgba(214, 224, 238, .45);--accent-cool: #5bb6ff;--accent-mint: #42e2b1;--accent-mint-dark: #2eb88d;--accent-warm: #f0b06b;--accent-rose: #ff6fae;--accent-ink: #0b1115;--jack-audio: var(--accent-cool);--jack-cv: var(--accent-mint);--jack-gate: var(--accent-warm);--jack-sync: var(--accent-rose);--cat-sources: #5bb6ff;--cat-filters: #9d8cff;--cat-amplifiers: #4fd8c8;--cat-effects: #d98cff;--cat-modulators: #42e2b1;--cat-sequencers: #f0b06b;--cat-drums: #ff7a66;--cat-io: #9fb2c8;--knob-color: var(--accent-mint);--shadow-soft: 0 12px 24px rgba(0, 0, 0, .32);--shadow-deep: 0 30px 60px rgba(0, 0, 0, .55);--shadow-inset: inset 0 2px 4px rgba(0, 0, 0, .5);--shadow-glow-mint: 0 0 8px var(--accent-mint);--shadow-glow-cool: 0 0 8px var(--accent-cool);--transition-fast: all .1s ease;--transition-normal: all .15s ease;--transition-slow: all .2s ease;--btn-padding-y: 5px;--btn-padding-x: 6px;--btn-font-size: 9px;--btn-radius: 8px;--btn-gap: 6px;--btn-icon-radius: 10px;--btn-icon-size: 20px;--btn-compact-padding-y: 3px;--btn-compact-padding-x: 4px;--btn-compact-font-size: 8px;--btn-compact-gap: 2px;--btn-compact-icon-size: 18px;--btn-inactive-bg: rgba(18, 24, 32, .7);--btn-inactive-border: rgba(100, 120, 150, .3);--btn-inactive-text: rgba(198, 212, 228, .85);--btn-hover-bg: rgba(40, 50, 65, .8);--btn-hover-border: rgba(120, 140, 170, .5);--btn-active-shadow: 0 2px 8px rgba(66, 226, 177, .4)}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-height:100vh;position:relative;background:radial-gradient(circle at 18% 12%,rgba(86,140,200,.24),transparent 42%),radial-gradient(circle at 90% 8%,rgba(64,175,140,.2),transparent 38%),radial-gradient(circle at 55% 85%,rgba(216,150,92,.18),transparent 48%),linear-gradient(155deg,#0b0e12,#0a0c10,#06070a);color:inherit}body:before{content:"";position:fixed;inset:0;background-image:repeating-linear-gradient(120deg,rgba(255,255,255,.05) 0px,rgba(255,255,255,.05) 1px,transparent 1px,transparent 6px),repeating-linear-gradient(0deg,rgba(255,255,255,.025) 0px,rgba(255,255,255,.025) 1px,transparent 1px,transparent 4px);opacity:.32;pointer-events:none;z-index:-1}body:after{content:"";position:fixed;inset:0;background:radial-gradient(circle at 50% 20%,transparent 40%,rgba(0,0,0,.55) 100%);opacity:.6;pointer-events:none;z-index:-1}#root{min-height:100vh}a{color:inherit}.app{min-height:100vh;display:flex;flex-direction:column;gap:24px;padding:28px 36px 40px}.rack-tabs{display:flex;align-items:stretch;gap:0;padding:0 22px;background:linear-gradient(180deg,#16161ef2,#0e0e14fa);border-bottom:1px solid rgba(255,255,255,.06);min-height:36px}.rack-tabs-view-switch{display:flex;align-items:center;gap:0;margin-right:12px;border-right:1px solid rgba(255,255,255,.06);padding-right:12px}.rack-tabs-view-btn{padding:8px 14px;border:none;background:transparent;color:#c6d6e866;font-size:.7rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:background .15s,color .15s;position:relative}.rack-tabs-view-btn.active{color:#5bb6ff}.rack-tabs-view-btn.active:after{content:"";position:absolute;bottom:0;left:8px;right:8px;height:2px;background:#5bb6ff;border-radius:1px}.rack-tabs-view-btn:hover:not(.active){color:#d8e6f6bf}.rack-tabs-list{display:flex;align-items:stretch;gap:0;overflow-x:auto;scrollbar-width:none;flex:1}.rack-tabs-list::-webkit-scrollbar{display:none}.rack-tab{display:flex;align-items:center;gap:6px;padding:8px 16px;font-size:.72rem;font-weight:500;letter-spacing:.04em;color:#c6d6e873;background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;transition:color .15s,border-color .15s}.rack-tab:hover{color:#d8e6f6cc}.rack-tab.active{color:#d8e6f6f2;border-bottom-color:#d8e6f680}.rack-tab-label{pointer-events:none}.rack-tab-input{background:transparent;border:none;border-bottom:1px solid rgba(91,182,255,.5);color:inherit;font:inherit;padding:0;width:80px;outline:none}.rack-tab-close{display:flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;border:none;border-radius:3px;background:transparent;color:#c6d6e84d;font-size:.75rem;line-height:1;cursor:pointer;opacity:0;transition:opacity .15s,color .15s,background .15s}.rack-tab:hover .rack-tab-close{opacity:1}.rack-tab-close:hover{color:#ff6b6b;background:#ff6b6b26}.rack-tab-add{display:flex;align-items:center;justify-content:center;padding:4px 8px;margin-left:2px;border:1px solid rgba(255,255,255,.1);border-radius:4px;background:#ffffff08;color:#c6d6e866;font-size:.75rem;font-weight:600;line-height:1;cursor:pointer;align-self:center;transition:color .15s,background .15s,border-color .15s}.rack-tab-add:hover{color:#d8e6f6e6;background:#ffffff0f;border-color:#fff3}.mixer-console{display:flex;flex-direction:column;flex:1;padding:24px;gap:16px;overflow-y:auto;background:radial-gradient(circle at center,rgba(30,40,55,.4) 0%,transparent 100%)}.mixer-strips{display:flex;gap:12px;flex:1;align-items:flex-start;justify-content:center;padding-top:10px}.mixer-strip{display:flex;flex-direction:column;align-items:center;gap:12px;padding:16px 12px;width:168px;flex-shrink:0;border-radius:4px;background:linear-gradient(180deg,#ffffff08,#ffffff03);border:1px solid rgba(255,255,255,.05);box-shadow:0 4px 12px #0003;transition:all .2s ease;position:relative}.mixer-strip.active{background:linear-gradient(180deg,#5bb6ff0f,#5bb6ff05);border-color:#5bb6ff33}.mixer-strip.active:before{content:"";position:absolute;inset:0;border-radius:4px;pointer-events:none;border:1px solid rgba(91,182,255,.3)}.mixer-strip.muted{opacity:.7}.mixer-strip.muted .vu-meter{opacity:.2;filter:grayscale(1)}.mixer-strip-name{background:#141a2299;border:1px solid rgba(255,255,255,.05);border-radius:2px;color:#d8e6f6e6;font-size:.6rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;padding:4px 2px;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center;transition:all .15s}.mixer-strip-name:hover{color:#5bb6ff;background:#5bb6ff1a}.mixer-strip-body{display:flex;gap:8px;height:180px;align-items:stretch;justify-content:center;width:100%}.vu-meter{display:flex;gap:3px;width:18px;flex-shrink:0;padding:3px;background:#05080d;border:1px solid rgba(255,255,255,.07);border-radius:3px;box-shadow:inset 0 1px 3px #000c}.vu-meter-channel{flex:1;position:relative;overflow:hidden;border-radius:1px;background:#0c1118;display:flex;flex-direction:column;justify-content:flex-end}.vu-meter-channel:after{content:"";position:absolute;inset:0;pointer-events:none;background-image:repeating-linear-gradient(0deg,rgba(0,0,0,.6) 0px,rgba(0,0,0,.6) 1px,transparent 1px,transparent 4px)}.vu-meter-fill{width:100%;transition:height .05s linear;position:relative}.vu-meter-fill:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:#ffffffe6;box-shadow:0 0 5px #ffffffa6}.mixer-strip-fader{position:relative;width:64px;height:100%;display:flex;align-items:center;justify-content:flex-end}.mixer-fader-scale{position:absolute;left:0;top:0;bottom:0;width:28px;display:flex;flex-direction:column;justify-content:space-between;padding:10px 0;pointer-events:none;z-index:1}.mixer-fader-scale span{position:relative;font-size:8px;color:#ffffff52;font-family:var(--font-mono);line-height:1;text-align:right;padding-right:9px}.mixer-fader-scale span:after{content:"";position:absolute;right:0;top:50%;width:5px;height:1px;background:#ffffff40}.mixer-fader-scale span.major{color:#ffffffb8;font-weight:700}.mixer-fader-scale span.major:after{width:9px;background:#ffffff8c}.mixer-fader-vertical{appearance:none;-webkit-appearance:none;background:transparent;cursor:pointer;width:160px;height:44px;position:absolute;right:-50px;transform:rotate(-90deg);transform-origin:center;margin:0;z-index:2;--fader-line: rgba(236, 243, 251, .92)}.mixer-fader-vertical::-webkit-slider-runnable-track{width:100%;height:6px;border-radius:3px;background:linear-gradient(180deg,#05080c,#0d141c);border:1px solid rgba(0,0,0,.6);box-shadow:inset 0 1px 3px #000000d9,0 1px #ffffff0a}.mixer-fader-vertical::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;height:36px;width:22px;border:1px solid #05080c;border-radius:4px;margin-top:-15px;box-shadow:0 3px 8px #000000b3,inset 0 1px 1px #fff3,inset 0 -3px 5px #0000008c;background:linear-gradient(180deg,transparent 45%,var(--fader-line) 45%,var(--fader-line) 55%,transparent 55%),repeating-linear-gradient(180deg,rgba(255,255,255,.05) 0 1px,transparent 1px 4px),linear-gradient(90deg,#3d4452,#272e39,#161b23)}.mixer-fader-vertical:hover::-webkit-slider-thumb{box-shadow:0 3px 10px #000000bf,inset 0 1px 1px #ffffff47,inset 0 -3px 5px #0000008c}.mixer-strip-db{font-size:.55rem;font-family:var(--font-mono);font-weight:600;color:#d2e0f0d9;background:#06090e;border:1px solid rgba(255,255,255,.06);padding:2px 4px;border-radius:3px;width:100%;text-align:center;margin-top:4px;box-shadow:inset 0 1px 2px #00000080}.channel-fx{display:flex;flex-direction:column;gap:6px;width:100%;padding-top:10px;margin-top:2px;border-top:1px solid rgba(255,255,255,.06)}.fx-section{border:1px solid rgba(255,255,255,.05);border-radius:6px;background:#0000002e;overflow:hidden;transition:border-color .15s,background .15s}.fx-section.expanded{border-color:color-mix(in srgb,var(--fx-accent) 40%,transparent);background:#0000004d}.fx-section-head{display:flex;align-items:center;gap:9px;width:100%;padding:6px 9px}.fx-led{width:11px;height:11px;border-radius:50%;flex-shrink:0;padding:0;cursor:pointer;border:1px solid rgba(255,255,255,.18);background:var(--fx-accent);box-shadow:0 0 7px var(--fx-accent),inset 0 0 2px #fff9;transition:transform .12s,background .15s,box-shadow .15s}.fx-led.off{background:#262b33;border-color:#ffffff14;box-shadow:inset 0 1px 2px #000000b3}.fx-led:hover{transform:scale(1.18)}.fx-led:focus-visible{outline:2px solid var(--fx-accent);outline-offset:2px}.fx-section-toggle{display:flex;align-items:center;gap:6px;flex:1;min-width:0;padding:1px 0;background:none;border:none;cursor:pointer;font-family:inherit;font-size:.6rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#d8e6f699;transition:color .15s}.fx-section-toggle:hover{color:#f5fafff2}.fx-section.expanded .fx-section-toggle{color:#f5faffe6}.fx-section-name{flex:1;text-align:left}.fx-section-chevron{font-size:.85rem;line-height:1;width:12px;text-align:center;color:#d8e6f673}.fx-section.bypassed{opacity:.72}.fx-section.bypassed .fx-section-name{text-decoration:line-through;opacity:.7}.fx-section.bypassed .fx-knob-grid{opacity:.4;filter:grayscale(.7)}.fx-knob-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px 4px;padding:12px 8px 14px}.mixer-knob{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:0;--dial-size: 34px;--dial-center-inset: 8px;--dial-indicator-height: 7px;--dial-indicator-offset: -11px;--knob-color: var(--accent-mint)}.mixer-knob .rotary-dial{cursor:ns-resize}.mixer-knob .rotary-dial:focus-visible{outline:2px solid var(--knob-color);outline-offset:2px}.mixer-knob-readout{font-size:.5rem;font-family:var(--font-mono);font-weight:600;line-height:1;color:#e8f0faeb;background:#00000059;border:1px solid color-mix(in srgb,var(--knob-color) 30%,rgba(255,255,255,.08));border-radius:3px;padding:2px 4px;min-width:34px;text-align:center;cursor:ns-resize}.mixer-knob-label{font-size:.46rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#c6d6e880;text-align:center}.mixer-knob-input{width:38px;font-size:.5rem;font-family:var(--font-mono);padding:2px;text-align:center;border-radius:3px;border:1px solid var(--knob-color);background:#00000080;color:#fff}.mixer-strip-controls{display:flex;gap:6px;width:100%;margin-top:4px}.mixer-btn{flex:1;height:24px;border:1px solid rgba(255,255,255,.1);border-radius:2px;background:linear-gradient(180deg,#2a3442,#1a2432);color:#c6d6e899;font-size:.65rem;font-weight:800;cursor:pointer}.mixer-strip-master{width:168px;margin-left:10px;background:linear-gradient(180deg,#f0b06b0d,#f0b06b05);border-color:#f0b06b26}.mixer-strip-master .mixer-fader-vertical{--fader-line: var(--accent-warm)}.mixer-tempo{display:flex;align-items:center;gap:4px;margin-top:4px}.mixer-tempo-label{font-size:.5rem;font-weight:600;color:#f0b06b99;letter-spacing:.08em}.mixer-tempo-input{width:48px;padding:3px 4px;border:1px solid rgba(240,176,107,.25);border-radius:3px;background:#141a22cc;color:#f0b06be6;font-size:.6rem;font-family:var(--font-mono);text-align:center;outline:none}.mixer-tempo-input:focus{border-color:#f0b06b80}.engine-led{width:10px;height:10px;border-radius:var(--radius-pill);background:#8ca0b499;box-shadow:0 0 #0003;transition:all .3s ease}.engine-led--idle{background:radial-gradient(circle at 30% 30%,#a0afbee6,#64788cb3);box-shadow:inset 0 1px 2px #fff3,0 1px 3px #0006}.engine-led--running{background:radial-gradient(circle at 30% 30%,#a0ffc8,#4ed88a);box-shadow:inset 0 1px 2px #fff6,0 0 12px #4ed88a99,0 0 24px #4ed88a4d;animation:led-pulse 2s ease-in-out infinite}.engine-led--error{background:radial-gradient(circle at 30% 30%,#ffb0b0,#e85858);box-shadow:inset 0 1px 2px #ffffff4d,0 0 12px #e8585899,0 0 24px #e858584d;animation:led-pulse-error 1s ease-in-out infinite}@keyframes led-pulse{0%,to{box-shadow:inset 0 1px 2px #fff6,0 0 12px #4ed88a99,0 0 24px #4ed88a4d}50%{box-shadow:inset 0 1px 2px #fff6,0 0 16px #4ed88acc,0 0 32px #4ed88a66}}@keyframes led-pulse-error{0%,to{box-shadow:inset 0 1px 2px #ffffff4d,0 0 12px #e8585899,0 0 24px #e858584d}50%{box-shadow:inset 0 1px 2px #ffffff4d,0 0 18px #e85858e6,0 0 36px #e8585880}}.status-stack{display:flex;flex-direction:column;gap:6px;align-items:flex-start}.status-row{display:flex;align-items:center;gap:10px}.transport-block,.share-block{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.patch-buttons-row{display:flex;gap:4px;align-items:center}.patch-buttons-row .button.disabled{opacity:.3}.dev-tools,.view-tools{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.icon-btn{display:flex;align-items:center;justify-content:center;padding:10px;border-radius:var(--radius-pill);border:1px solid rgba(255,255,255,.15);background:linear-gradient(180deg,#1e242de6,#12161cf2);color:#c8d4e4d9;cursor:pointer;transition:all .2s ease;box-shadow:inset 0 1px #ffffff0d,0 2px 6px #00000040}.icon-btn:hover:not(:disabled){background:linear-gradient(180deg,#28303ce6,#191e26f2);border-color:#fff3;color:#e6f0faf2}.icon-btn.copied{background:linear-gradient(135deg,#4ed88ae6,#3cb46ef2);color:#0a1810;border-color:#4ed88a80;box-shadow:0 0 10px #4ed88a4d}.icon-btn.error{background:linear-gradient(135deg,#e85858e6,#c83c3cf2);color:#1a0a0a;border-color:#e8585880;box-shadow:0 0 10px #e858584d}.dev-toggles,.view-toggles{display:flex;gap:6px}.cpu-meter{display:flex;align-items:center;gap:6px;margin-left:4px}.cpu-meter-bar{position:relative;width:48px;height:8px;background:#141a22cc;border:1px solid rgba(100,114,136,.5);border-radius:3px;overflow:hidden}.cpu-meter-fill{height:100%;background:#4ed88a;transition:width .4s ease;border-radius:2px}.cpu-meter-fill.warm{background:#f0b06b}.cpu-meter-fill.hot{background:#e85858}.cpu-meter-peak{position:absolute;top:0;width:1px;height:100%;background:#ffffffb3;transition:left .4s ease}.cpu-meter-text{font-size:10px;font-family:var(--font-mono);color:#c8d7e6e6;min-width:36px;text-align:right}.transport-position{font-size:.7rem;font-family:var(--font-mono);font-weight:600;color:#d8e6f6b3;min-width:32px;text-align:center;letter-spacing:.05em}.dev-toggle,.view-toggle{--ui-btn-padding: 10px;--ui-btn-bg: rgba(20, 26, 34, .9);--ui-btn-border: rgba(100, 114, 136, .8);display:flex;align-items:center;justify-content:center}.action-label{font-size:var(--text-xs);letter-spacing:.18em;text-transform:uppercase;color:#a0b4c88c;text-shadow:0 1px 2px rgba(0,0,0,.3)}.power-toggle{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-radius:var(--radius-pill);border:1px solid rgba(255,255,255,.15);overflow:hidden;background:linear-gradient(180deg,#12161ce6,#0a0e12f2);box-shadow:inset 0 1px #ffffff0d,0 2px 8px #0000004d}.power-toggle-btn{border:none;border-radius:0;padding:10px 14px;background:transparent;color:#c8d4e4d9;box-shadow:none;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.power-toggle-btn:hover:not(:disabled):not(.active){background:#ffffff0d;color:#e6f0faf2}.power-toggle-btn.active{background:linear-gradient(135deg,#fad592,#e9a550,#d89040);color:#1a1208;box-shadow:inset 0 1px #ffffff59,inset 0 -1px #00000026,0 0 12px #e9a5504d;text-shadow:0 1px 0 rgba(255,255,255,.2)}.power-toggle-btn:disabled{opacity:.5;cursor:not-allowed}.transport-row{display:flex;align-items:center;gap:8px}.master-tempo-control{display:flex;align-items:center;gap:3px;margin-left:4px}.master-tempo-input{width:44px;padding:3px 4px;border:1px solid rgba(240,176,107,.3);border-radius:3px;background:#141a22cc;color:#f0b06be6;font-size:.65rem;font-family:var(--font-mono);text-align:center;outline:none}.master-tempo-input:focus{border-color:#f0b06b99}.master-tempo-label{font-size:.5rem;font-weight:600;color:#f0b06b80;letter-spacing:.06em}.top-bar-record{display:flex;align-items:center;justify-content:center;padding:10px;border-radius:var(--radius-pill);border:1px solid rgba(255,255,255,.15);background:linear-gradient(180deg,#12161ce6,#0a0e12f2);color:#dc5050d9;cursor:pointer;transition:all .2s ease;box-shadow:inset 0 1px #ffffff0d,0 2px 8px #0000004d}.top-bar-record:hover:not(:disabled){background:linear-gradient(180deg,#281616e6,#190e0ef2);border-color:#dc505066;color:#f05a5af2}.top-bar-record:disabled{opacity:.35;cursor:not-allowed;color:#c8d4e480}.top-bar-record.recording{background:linear-gradient(135deg,#dc3232e6,#b41e1ef2);color:#fff;border-color:#ff505099;box-shadow:inset 0 1px #fff3,0 0 14px #dc323266;animation:record-pulse 1.2s ease-in-out infinite}@keyframes record-pulse{0%,to{box-shadow:inset 0 1px #fff3,0 0 14px #dc323266}50%{box-shadow:inset 0 1px #fff3,0 0 24px #ff3c3cb3}}.brand{font-family:var(--font-display);font-size:1.6rem;letter-spacing:.08em;text-transform:uppercase;background:linear-gradient(135deg,#f4f7fb,#d4e0ec 40%,#8ca4c0);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-shadow:0 2px 8px rgba(140,164,192,.2);filter:drop-shadow(0 1px 2px rgba(0,0,0,.3))}.subtitle{font-size:var(--text-base);color:#b4c3d780;letter-spacing:.04em}.status{display:flex;flex-direction:column;gap:6px;align-items:flex-start}.status-pill{padding:4px 12px;border-radius:var(--radius-pill);font-size:var(--text-base);letter-spacing:.08em;text-transform:uppercase;border:1px solid rgba(255,255,255,.15);background:#0c1016b8;transition:all .3s ease}.status-idle{color:#c4d4e8d9;background:linear-gradient(135deg,#232d3ad9,#19202ae6);border-color:#8ca0b440}.status-running{color:#c8ffe0;background:linear-gradient(135deg,#28785acc,#195541d9);border-color:#4ed88a59;box-shadow:0 0 8px #4ed88a26}.status-error{color:#ffd8d4;background:linear-gradient(135deg,#963741cc,#782832d9);border-color:#e8585859;box-shadow:0 0 8px #e8585826}.status-detail{font-size:var(--text-base);color:var(--text-dim)}.status-mode{font-size:var(--text-sm);letter-spacing:.12em;text-transform:uppercase;color:#b2c8dab3}.actions{display:flex;align-items:center;gap:10px}.button{font:inherit;border-radius:var(--radius-pill);padding:10px 20px;border:1px solid var(--border-strong);background:#121820b3;color:var(--text-strong);cursor:pointer;box-shadow:var(--shadow-soft);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,background .2s ease}.button:disabled{cursor:not-allowed;opacity:.6}.button.primary{background:linear-gradient(135deg,#f8d087,#e8a35a);color:var(--accent-ink);border:1px solid rgba(255,255,255,.35);box-shadow:0 14px 26px #1e120866}.button.primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 18px 36px #1e120880}.button.ghost{background:#0c121859;color:var(--text-strong);border:1px solid rgba(255,255,255,.22)}.button.outline{background:transparent;color:var(--text-strong);border:1px solid var(--border-strong);width:100%}.workbench{display:grid;grid-template-columns:minmax(0,3.2fr) minmax(220px,1fr);gap:22px;align-items:start}.rack-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;position:relative;z-index:1}.rack-title{display:flex;align-items:center;gap:12px}.rack-title .panel-title{font-size:1.2rem;letter-spacing:.08em}.rack-meta{font-size:var(--text-lg);color:var(--text-dim)}.patch-layer-inline{position:absolute;top:0;left:0;z-index:4;pointer-events:none}.patch-canvas{pointer-events:none;display:block;overflow:visible}.module-size-1x1{grid-column:span 1;grid-row:span 1}.module-size-1x2{grid-column:span 1;grid-row:span 2}.module-size-1x3{grid-column:span 1;grid-row:span 3}.module-size-2x1{grid-column:span 2;grid-row:span 1}.module-size-2x2{grid-column:span 2;grid-row:span 2}.module-size-2x3{grid-column:span 2;grid-row:span 3}.module-size-2x4{grid-column:span 2;grid-row:span 4}.module-size-2x5{grid-column:span 2;grid-row:span 5}.module-size-2x6{grid-column:span 2;grid-row:span 6}.module-size-3x2{grid-column:span 3;grid-row:span 2}.module-size-3x3{grid-column:span 3;grid-row:span 3}.module-size-3x4{grid-column:span 3;grid-row:span 4}.module-remove{padding:4px 6px;font-size:.5rem;letter-spacing:.18em}.module-remove:hover{--ui-btn-border: rgba(232, 120, 110, .8);--ui-btn-text: rgba(255, 220, 210, .95)}.rack{background:repeating-linear-gradient(90deg,rgba(255,255,255,.03) 0px,rgba(255,255,255,.03) 1px,transparent 1px,transparent 15px),linear-gradient(180deg,#0c0c0c,#1a1a1a,#0c0c0c);border-radius:var(--radius-xl);position:relative;padding:16px 24px;box-shadow:inset 0 4px 20px #000c,0 10px 40px #0009;overflow:hidden;isolation:isolate;-webkit-user-select:none;user-select:none}.rack *{-webkit-user-select:none;user-select:none}.rack:before,.rack:after{content:"";position:absolute;left:0;right:0;height:14px;background:linear-gradient(180deg,#4a4a4a,#3a3a3a 30%,#2a2a2a 70%,#1a1a1a);box-shadow:inset 0 1px #fff3,inset 0 -1px #0006,0 2px 8px #00000080;z-index:10}.rack:before{top:0;border-radius:8px 8px 0 0}.rack:after{border-radius:0 0 8px 8px;background:linear-gradient(180deg,#1a1a1a,#2a2a2a 30%,#3a3a3a 70%,#4a4a4a)}.modules{position:relative;z-index:1;display:grid;--rack-unit-x: 200px;--rack-unit-y: 120px;--rack-gap: 4px;--rack-pad-y: 12px;padding:var(--rack-pad-y) 0;gap:var(--rack-gap);grid-template-columns:repeat(auto-fill,minmax(var(--rack-unit-x),var(--rack-unit-x)));grid-auto-rows:var(--rack-unit-y)}.rack-grid-overlay{position:absolute;inset:0;padding:var(--rack-pad-y) 0;pointer-events:none;background-image:linear-gradient(to right,rgba(255,255,255,.12) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.12) 1px,transparent 1px);background-size:calc(var(--rack-unit-x) + var(--rack-gap)) calc(var(--rack-unit-y) + var(--rack-gap));background-position:0 0;background-origin:content-box;background-clip:content-box;opacity:.8}.module-card{--cat: var(--cat-io);--control-min: 44px;--dial-size: 28px;--dial-center-inset: 7px;--dial-indicator-height: 6px;--dial-indicator-offset: -9px;--rotary-label-size: 8px;--rotary-readout-size: 8px;--rotary-readout-pad-x: 3px;--rotary-readout-pad-y: 1px;--rotary-input-width: 40px;container-type:inline-size;container-name:module-card;position:relative;z-index:1;border-radius:var(--radius-lg);background:linear-gradient(160deg,rgba(255,255,255,.045),transparent 38%),repeating-linear-gradient(95deg,rgba(255,255,255,.013) 0px,rgba(255,255,255,.013) 1px,transparent 1px,transparent 3px),linear-gradient(180deg,var(--steel-1) 0%,var(--steel-0) 78%,#11161d 100%);border:1px solid rgba(0,0,0,.85);box-shadow:inset 0 1px #ffffff1a,inset 0 -1px #0009,0 6px 14px #0006;padding:0 4px 6px;gap:4px;-webkit-backdrop-filter:none;backdrop-filter:none;display:flex;flex-direction:column;height:100%}@container module-card (max-width: 210px){.module-body{--control-min: 40px;--dial-size: 24px;--dial-center-inset: 6px;--dial-indicator-height: 5px;--dial-indicator-offset: -8px}}@container module-card (max-width: 170px){.module-body{--control-min: 40px;--dial-size: 24px;--dial-center-inset: 6px;--dial-indicator-height: 5px;--dial-indicator-offset: -8px;--rotary-label-size: 7px;--rotary-readout-size: 7px;--rotary-readout-pad-x: 2px;--rotary-readout-pad-y: 1px;--rotary-input-width: 36px}}@container module-card (min-width: 260px){.module-body{--rotary-input-width: 46px}}.module-card:before,.module-card:after{display:none}.module-resize-handle{position:absolute;right:4px;bottom:4px;width:12px;height:12px;border-radius:2px;border:1px solid rgba(255,255,255,.28);background:linear-gradient(135deg,#ffffff40,#fff0),#080c1299;box-shadow:inset 0 1px 2px #0009,0 0 6px #42e2b140;cursor:nwse-resize;opacity:.55;touch-action:none}.module-card:hover .module-resize-handle{opacity:.9}.module-drag-ghost{pointer-events:none;border-radius:var(--radius-sm);border:1px dashed rgba(66,226,177,.7);background:#42e2b114;box-shadow:inset 0 0 0 1px #42e2b140;z-index:3}.module-drag-ghost.invalid{border-color:#ff7878d9;background:#ff78781f;box-shadow:inset 0 0 0 1px #ff787859}.module-resize-ghost{pointer-events:none;border-radius:var(--radius-sm);border:1px dashed rgba(248,208,135,.8);background:#f8d08714;box-shadow:inset 0 0 0 1px #f8d08740;z-index:2}.module-resize-ghost.invalid{border-color:#ff7878d9;background:#ff78781f;box-shadow:inset 0 0 0 1px #ff787859}.module-card[data-category=sources]{--cat: var(--cat-sources)}.module-card[data-category=filters]{--cat: var(--cat-filters)}.module-card[data-category=amplifiers]{--cat: var(--cat-amplifiers)}.module-card[data-category=effects]{--cat: var(--cat-effects)}.module-card[data-category=modulators]{--cat: var(--cat-modulators)}.module-card[data-category=sequencers]{--cat: var(--cat-sequencers)}.module-card[data-category=drums]{--cat: var(--cat-drums)}.module-card[data-category=io]{--cat: var(--cat-io)}.module-header{display:flex;align-items:stretch;margin:0 -4px;height:20px;flex:none;gap:6px;border-bottom:1px solid rgba(0,0,0,.7);box-shadow:0 1px #ffffff0f;background:linear-gradient(180deg,#ffffff0d,#00000038);border-radius:var(--radius-lg) var(--radius-lg) 0 0;overflow:hidden;cursor:grab}.module-cat-bar{width:4px;flex:none;background:linear-gradient(180deg,var(--cat),color-mix(in srgb,var(--cat) 55%,#000));box-shadow:0 0 8px color-mix(in srgb,var(--cat) 60%,transparent)}.module-title{display:flex;align-items:center;flex:1;min-width:0}.module-actions{display:flex;align-items:center;gap:4px;padding-right:4px}.module-name{font-family:var(--font-engrave);font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--text-strong);text-shadow:0 1px 0 rgba(0,0,0,.8);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.module-subtitle{display:none}.module-badge{font-family:var(--font-lcd);font-size:8px;letter-spacing:.06em;padding:0;border:none;background:transparent;color:color-mix(in srgb,var(--cat) 80%,#fff);opacity:.85;white-space:nowrap}@container module-card (max-width: 170px){.module-badge{display:none}}.module-body{display:flex;flex:1;gap:4px;min-height:0;padding-top:2px}:is(.module-size-1x1,.module-size-2x1,.module-size-3x1) .module-header{gap:2px}:is(.module-size-1x1,.module-size-2x1,.module-size-3x1) .module-body{gap:2px}:is(.module-size-1x1,.module-size-2x1,.module-size-3x1) .ports-side{padding:2px}.ports-side{display:flex;flex-direction:column;gap:3px;justify-content:flex-start;padding:3px;background:#00000040;border-radius:var(--radius-lg);border:1px solid rgba(255,255,255,.06)}.ports-side--left{align-items:flex-start;border-top-left-radius:4px;border-bottom-left-radius:4px}.ports-side--right{align-items:flex-end;border-top-right-radius:4px;border-bottom-right-radius:4px}.port-side-item{display:flex;align-items:center;gap:2px}.ports-side--left .port-side-item,.ports-side--right .port-side-item{flex-direction:row}.port-side-label{font-size:7px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#ffffff80;white-space:nowrap;text-shadow:0 1px 1px rgba(0,0,0,.8)}.module-ports,.ports-group,.ports-title,.ports-column,.port-group,.port-label,.port-kind{display:none}.jack{--jack-color: var(--accent-mint);width:18px;height:18px;min-width:18px;min-height:18px;border-radius:50%;background:radial-gradient(circle at 35% 30%,rgba(255,255,255,.28),transparent 46%),radial-gradient(circle,color-mix(in srgb,var(--jack-color) 72%,#1c242c) 0 100%);border:1px solid rgba(0,0,0,.9);box-shadow:inset 0 1px 1px #ffffff40,inset 0 0 4px #0009,0 1px 2px #000000b3;position:relative;flex-shrink:0;touch-action:none}.jack:before{content:"";position:absolute;inset:4px;border-radius:50%;background:linear-gradient(145deg,#232a32,#05070a);box-shadow:inset 0 1px 2px #000c}.jack:after{content:"";position:absolute;inset:5px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#11161c,#000);box-shadow:inset 0 1px 1px #000000e6;opacity:1}.jack.kind-audio{--jack-color: var(--accent-cool)}.jack.kind-cv{--jack-color: var(--accent-mint)}.jack.kind-gate{--jack-color: var(--accent-warm)}.jack.kind-sync{--jack-color: var(--accent-rose)}.jack.connected:after{opacity:1;background:radial-gradient(circle at 40% 40%,var(--jack-color),#000 70%);box-shadow:inset 0 1px 2px #0009,0 0 8px var(--jack-color)}.jack.valid-target{animation:jack-pulse 1s ease-in-out infinite}@keyframes jack-pulse{0%,to{box-shadow:inset 0 2px 4px #ffffff26,inset 0 -2px 4px #00000080,0 0 0 1px #fff3,0 0 8px #ffffff1a}50%{box-shadow:inset 0 2px 4px #ffffff26,inset 0 -2px 4px #00000080,0 0 0 3px #fff6,0 0 16px #ffffff4d}}.jack.hover-target{transform:scale(1.15);box-shadow:inset 0 2px 4px #fff3,inset 0 -2px 4px #00000080,0 0 0 3px var(--jack-color),0 0 20px var(--jack-color)}.jack.hover-target:after{opacity:1;background:radial-gradient(circle at 40% 40%,var(--jack-color),#000 50%)}.rotary{display:grid;gap:2px;justify-items:center;text-align:center}.rotary-dial{--knob-color: var(--accent-mint);width:var(--dial-size, 28px);height:var(--dial-size, 28px);border-radius:50%;background:radial-gradient(circle at 35% 28%,#4a4a4a,#2a2a2a 50%,#1a1a1a);border:none;box-shadow:inset 0 2px 4px #ffffff26,inset 0 -4px 8px #0009,0 4px 12px #00000080;position:relative;touch-action:none}.rotary-dial:focus-visible{outline:2px solid var(--knob-color);outline-offset:3px}.rotary-dial:before{content:"";position:absolute;inset:4px;border-radius:50%;background:radial-gradient(circle at 40% 30%,#3a3a3a,#2a2a2a 60%,#1a1a1a);box-shadow:inset 0 2px 4px #00000080}.rotary-center{position:absolute;inset:var(--dial-center-inset, 7px);border-radius:50%;background:radial-gradient(circle at 40% 35%,#3a3a3a,#1a1a1a 70%);box-shadow:inset 0 1px 3px #0009}.rotary-indicator{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;transform:rotate(var(--angle))}.rotary-indicator:before{content:"";width:2px;height:var(--dial-indicator-height, 6px);transform:translateY(var(--dial-indicator-offset, -9px));border-radius:var(--radius-xs);background:linear-gradient(180deg,var(--knob-color),rgba(255,255,255,.9));box-shadow:0 0 8px var(--knob-color)}.rotary-label{font-size:var(--rotary-label-size, 6px);font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:#fff9;text-shadow:0 1px 2px rgba(0,0,0,.8)}.rotary-readout{font-size:var(--rotary-readout-size, 6px);font-weight:500;background:#0006;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);padding:var(--rotary-readout-pad-y, 1px) var(--rotary-readout-pad-x, 2px);color:#ffffffd9}.rotary-input{width:var(--rotary-input-width, 40px);padding:2px;border-radius:var(--radius-xl);border:1px solid rgba(255,255,255,.22);background:var(--glass-3);color:var(--text-strong);font:inherit;text-align:center}.module-card .rotary-dial{--knob-color: var(--cat);background:conic-gradient(from 225deg,var(--knob-color) calc(var(--ratio, 0) * 270deg),rgba(255,255,255,.07) calc(var(--ratio, 0) * 270deg) 270deg,transparent 270deg);box-shadow:none}.module-card .rotary-dial:before{inset:3px;background:radial-gradient(circle at 32% 26%,rgba(255,255,255,.28),transparent 48%),conic-gradient(from 90deg,#39444f,#232b34,#39444f,#1d242c,#39444f);border:1px solid rgba(0,0,0,.85);box-shadow:inset 0 1px 1px #ffffff2e,0 2px 4px #000000a6}.module-card .rotary-center{inset:calc(var(--dial-center-inset, 7px) + 1px);background:radial-gradient(circle at 40% 35%,#2c343d,#14191f 70%);box-shadow:inset 0 1px 2px #000000b3}.module-card .rotary-indicator:before{background:var(--knob-color);box-shadow:0 0 5px var(--knob-color)}.module-card .rotary-label{color:var(--text-muted);letter-spacing:.08em}.module-card .rotary-readout{font-family:var(--font-lcd);font-weight:400;background:#0006;border:1px solid rgba(0,0,0,.6);border-radius:var(--radius-sm);box-shadow:inset 0 1px 2px #0009,0 1px #ffffff0d;color:var(--text-strong)}.module-controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:12px;align-items:start}.module-body .module-controls{flex:1;display:grid!important;grid-template-columns:repeat(auto-fit,minmax(var(--control-min, 44px),1fr))!important;grid-auto-rows:min-content;gap:4px 4px;min-width:0;overflow:hidden;align-content:start;padding:2px}.control-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(var(--control-min, 44px),1fr));gap:4px;width:100%}.module-controls .control-grid{grid-column:1 / -1}.control-grid>.rotary{min-width:0;width:100%}.control-row{grid-column:1 / -1;display:grid;grid-template-columns:minmax(120px,1fr) minmax(220px,2fr);gap:12px;align-items:start}.control-row .waveform{grid-column:auto}.module-controls .control-row{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:4px;align-items:flex-start}.module-controls .control-row>*{flex:1 1 auto;min-width:50px}.waveform{display:grid;gap:8px;text-align:center;grid-column:1 / -1}.waveform-label{font-size:var(--text-xs);letter-spacing:.2em;text-transform:uppercase;color:#c6d4e49e}.waveform-buttons{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.wave-icon{width:22px;height:22px}.wave-button-label{font-size:var(--text-2xs);letter-spacing:.18em}.wave-button{border-radius:var(--btn-icon-radius);background:var(--btn-inactive-bg);border:1px solid var(--btn-inactive-border);padding:var(--btn-padding-y) 4px;color:var(--btn-inactive-text);cursor:pointer;transition:var(--transition-normal)}.wave-button:hover{background:var(--btn-hover-bg);border-color:var(--btn-hover-border)}.wave-button.active{background:linear-gradient(180deg,var(--accent-mint),var(--accent-mint-dark));border-color:var(--accent-mint);color:#0a0a0a;box-shadow:var(--btn-active-shadow)}.module-card .wave-button{background:linear-gradient(180deg,#29333e,#1b222b);border-color:#000c;box-shadow:inset 0 1px #ffffff1a,0 2px 3px #00000080}.module-card .wave-button:hover{background:linear-gradient(180deg,#33404d,#232c37);border-color:#000c}.module-card .wave-button.active{background:color-mix(in srgb,var(--cat) 18%,#11161c);border-color:color-mix(in srgb,var(--cat) 45%,#000);color:color-mix(in srgb,var(--cat) 90%,#fff);box-shadow:inset 0 0 8px color-mix(in srgb,var(--cat) 22%,transparent),inset 0 1px #ffffff14}.module-controls .waveform{grid-column:1 / -1;gap:var(--btn-compact-gap)}.module-controls .waveform-label{font-size:6px}.module-controls .waveform-buttons{grid-template-columns:repeat(4,1fr);gap:var(--btn-compact-gap)}.module-controls .wave-button{display:grid;place-items:center;padding:var(--btn-compact-padding-y);border-radius:var(--btn-radius);gap:0;line-height:1}.module-controls .wave-icon{width:var(--btn-compact-icon-size);height:var(--btn-compact-icon-size)}.module-controls .wave-button-label{display:none}.filter-row{grid-column:1 / -1;display:grid;gap:12px}.filter-group{display:grid;gap:6px}.filter-label{font-size:var(--text-2xs);letter-spacing:.16em;text-transform:uppercase;color:#c6d4e4ad}.filter-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.filter-buttons.filter-wide{grid-template-columns:repeat(4,minmax(0,1fr))}.toggle-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;grid-column:1 / -1}.toggle-btn{--ui-btn-padding: var(--btn-padding-y) 8px;--ui-btn-letter: .18em;--ui-btn-text: var(--btn-inactive-text);--ui-btn-bg: var(--btn-inactive-bg)}.module-card .scope-btn:not(.scope-ch),.module-card .toggle-btn{--ui-btn-bg: linear-gradient(180deg, #29333e, #1b222b);--ui-btn-border: rgba(0, 0, 0, .8);--ui-btn-active-text: color-mix(in srgb, var(--cat) 88%, #fff);--ui-btn-active-bg: color-mix(in srgb, var(--cat) 22%, #11161c);--ui-btn-active-border: color-mix(in srgb, var(--cat) 50%, #000);--ui-btn-active-shadow: inset 0 0 8px color-mix(in srgb, var(--cat) 25%, transparent), inset 0 1px 0 rgba(255, 255, 255, .08)}.meter-row{grid-column:1 / -1;display:flex;align-items:center;gap:6px}.meter-label{font-size:var(--text-2xs);letter-spacing:.12em;text-transform:uppercase;color:#c6d4e49e;min-width:36px}.meter-track{flex:1;height:6px;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.12);background:#080c10a6;overflow:hidden}.meter-fill{height:100%;width:0%;background:linear-gradient(90deg,#6fe9a7,#f5d17a 70%,#f08f5a);box-shadow:0 0 6px #6fe9a78c}.module-controls .toggle-group{display:flex;gap:2px;flex-wrap:wrap}.module-controls .toggle-group .toggle-btn{flex:1;min-width:50px;padding:2px 6px;font-size:7px}.module-controls .toggle-group,.module-controls .scope-view,.module-controls .scope-controls,.module-controls .seq-panel,.module-controls .midi-panel,.module-controls .poly-panel,.module-controls .mini-keys,.module-controls .control-buttons,.module-controls .granular-waveform,.module-controls .control-keyboard-section{grid-column:1 / -1}.scope-view{position:relative;background:linear-gradient(180deg,rgba(255,255,255,.04),transparent 30%),repeating-linear-gradient(0deg,rgba(0,0,0,.22) 0 1px,transparent 1px 3px),radial-gradient(120% 130% at 50% 0%,#0c1512,#070d0b 70%);border-radius:5px;border:1px solid rgba(0,0,0,.9);box-shadow:inset 0 2px 8px #000c,inset 0 0 24px #42e2b10f,0 1px #ffffff0f;overflow:hidden;flex:1;min-height:80px;height:auto!important}.scope-view:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 0%,transparent 60%,rgba(0,0,0,.4) 100%);pointer-events:none;z-index:2}.scope-view:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.02) 0%,transparent 5%,transparent 95%,rgba(0,0,0,.1) 100%);pointer-events:none;z-index:2}.scope-canvas{display:block;width:100%;height:100%}.scope-view .scope-label{position:absolute;bottom:4px;right:6px;font-size:7px;font-weight:700;letter-spacing:.2em;color:#64ffb466;text-shadow:0 0 4px rgba(100,255,180,.3);z-index:3;pointer-events:none}.scope-mode-label{position:absolute;bottom:4px;right:6px;font-size:8px;font-weight:700;letter-spacing:.15em;color:#64ffb480;text-shadow:0 0 4px rgba(100,255,180,.3);z-index:3;pointer-events:none}.scope-controls{grid-column:1 / -1;display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;align-items:center}.scope-group{display:grid;gap:6px}.scope-label{font-size:var(--text-2xs);letter-spacing:.16em;text-transform:uppercase;color:#c6d4e4ad}.scope-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--btn-gap)}.scope-toggle{align-self:end}.module-controls .scope-controls{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.module-controls .scope-group{display:flex;align-items:center;gap:4px}.module-controls .scope-group .scope-label{font-size:7px;letter-spacing:.1em;text-transform:uppercase;color:#c8dcd299}.module-controls .scope-buttons{display:flex;gap:3px}.module-controls .scope-btn{padding:4px 8px!important;font-size:8px!important;min-width:28px;border-radius:var(--radius-md)}.module-controls .scope-toggle{padding:4px 10px!important}.scope-ch{--ch-color: #64ffb4;border-color:color-mix(in srgb,var(--ch-color) 40%,transparent)!important;color:color-mix(in srgb,var(--ch-color) 70%,white)!important}.scope-ch.active{background:color-mix(in srgb,var(--ch-color) 80%,#000)!important;border-color:var(--ch-color)!important;color:#000!important;box-shadow:0 0 8px color-mix(in srgb,var(--ch-color) 50%,transparent)}.module-card[data-module-type=scope] .module-controls{display:flex!important;flex-direction:column;gap:6px;flex:1;min-height:0}.module-card[data-module-type=scope] .scope-view{flex:1 1 auto;min-height:160px;width:100%}.granular-waveform{position:relative;background:linear-gradient(180deg,rgba(255,255,255,.04),transparent 30%),repeating-linear-gradient(0deg,rgba(0,0,0,.22) 0 1px,transparent 1px 3px),radial-gradient(120% 130% at 50% 0%,#10171c,#0a0f13 70%);border-radius:5px;border:1px solid rgba(0,0,0,.9);box-shadow:inset 0 2px 8px #000c,inset 0 0 24px color-mix(in srgb,var(--cat, var(--accent-cool)) 7%,transparent),0 1px #ffffff0f;overflow:hidden;width:100%;height:100px;margin-bottom:8px}.granular-waveform:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 40%,rgba(0,0,0,.4) 100%);pointer-events:none;z-index:1}.granular-canvas{display:block;width:100%;height:100%}.module-card[data-module-type=granular] .module-controls{display:flex!important;flex-direction:column;gap:8px;flex:1;min-height:0}.module-card[data-module-type=granular] .granular-waveform{flex:0 0 auto;min-height:120px;height:140px;width:100%}.module-card[data-module-type=granular] .module-controls>.rotary,.module-card[data-module-type=granular] .module-controls>.control-box{flex:0 0 auto}.granular-controls-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(50px,1fr));gap:4px;width:100%}.sampler-body{grid-column:1 / -1;display:flex;flex-direction:column;gap:6px;width:100%;min-width:0;padding:2px;box-sizing:border-box}.sampler-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.sampler-load-btn,.sampler-preview-btn{flex:0 0 auto;padding:6px 14px;border-radius:4px;font-size:10px;font-weight:600;letter-spacing:.04em;cursor:pointer;transition:border-color .12s ease,background .12s ease,transform .06s ease}.sampler-load-btn{border:1px solid rgba(91,182,255,.45);background:linear-gradient(180deg,#2f7fbe73,#1e5a8c99);color:#cfe6ff}.sampler-load-btn:hover:not(:disabled){border-color:#5bb6ffd9;background:linear-gradient(180deg,#3993dc99,#286eaab8)}.sampler-load-btn:active:not(:disabled){transform:translateY(1px)}.sampler-load-btn:disabled{opacity:.5;cursor:default}.sampler-preview-btn{border:1px solid rgba(120,140,160,.35);background:#1e2834b3;color:#b8c8da}.sampler-preview-btn:hover:not(:disabled){border-color:#5bb6ff99;color:#e6f1ff}.sampler-preview-btn.active{border-color:#5bb6ffcc;background:linear-gradient(180deg,#2f7fbe80,#1e5a8ca6);color:#fff}.sampler-preview-btn:disabled{opacity:.45;cursor:default}.sampler-picker{flex:1 1 90px;min-width:0;padding:5px 6px;font-size:10px;color:var(--text, #cfe0f0);background:#121a24d9;border:1px solid rgba(91,182,255,.35);border-radius:4px;cursor:pointer}.sampler-picker:hover{border-color:#5bb6ff99}.sampler-waveform{width:100%;height:52px;display:block;border:1px solid rgba(0,0,0,.9);border-radius:5px;background:linear-gradient(180deg,rgba(255,255,255,.04),transparent 30%),repeating-linear-gradient(0deg,rgba(0,0,0,.22) 0 1px,transparent 1px 3px),radial-gradient(120% 130% at 50% 0%,#10171c,#0a0f13 70%);box-shadow:inset 0 2px 8px #000c,inset 0 0 24px color-mix(in srgb,var(--cat, var(--accent-cool)) 7%,transparent),0 1px #ffffff0f}.sampler-filename{font-size:9px;color:#96aabebf;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sampler-knobs{display:flex;flex-wrap:wrap;justify-content:space-around;align-items:flex-start;gap:8px 6px;width:100%}.granular-load-row{grid-column:1 / -1;display:flex;justify-content:center;padding:8px 0}.granular-load-btn{padding:6px 16px;border-radius:4px;border:1px solid rgba(100,200,150,.4);background:linear-gradient(180deg,#3c785a80,#285a4699);color:#b4ffd2e6;font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:all .2s ease;box-shadow:inset 0 1px #ffffff1a,0 2px 4px #0000004d}.granular-load-btn:hover:not(:disabled){background:linear-gradient(180deg,#50966e99,#326e55b3);border-color:#64dca080;color:#c8ffdc;box-shadow:inset 0 1px #ffffff26,0 2px 8px #0006,0 0 12px #64c89633}.granular-load-btn:active:not(:disabled){transform:translateY(1px);box-shadow:inset 0 2px 4px #0000004d,0 1px 2px #0003}.granular-load-btn:disabled{opacity:.5;cursor:not-allowed}.granular-test-btn{padding:6px 16px;border-radius:4px;border:1px solid rgba(255,180,100,.4);background:linear-gradient(180deg,#785a3280,#5a462899);color:#ffdcb4e6;font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:all .15s ease;box-shadow:inset 0 1px #ffffff1a,0 2px 4px #0000004d}.granular-test-btn:hover:not(:disabled){background:linear-gradient(180deg,#966e3c99,#6e5532b3);border-color:#ffc87880}.granular-test-btn.active{background:linear-gradient(180deg,#ffb450b3,#c88c3ccc);border-color:#ffdc96b3;color:#3c2814;box-shadow:inset 0 2px 4px #0003,0 0 12px #ffb45066}.granular-test-btn:disabled{opacity:.4;cursor:not-allowed}.module-card[data-module-type=particle-cloud] .module-controls{display:flex!important;flex-direction:column;gap:8px;flex:1;min-height:0}.particle-cloud-viz{grid-column:1 / -1;display:flex;justify-content:center;padding:8px 0}.particle-cloud-viz canvas{border:1px solid rgba(0,0,0,.9);border-radius:5px;box-shadow:inset 0 2px 8px #000c,inset 0 0 24px color-mix(in srgb,var(--cat, var(--accent-cool)) 7%,transparent),0 1px #ffffff0f}.patch-cable{stroke-width:3px;stroke-linecap:round;opacity:.92;pointer-events:none;transition:stroke-width .15s ease,filter .15s ease,opacity .15s ease}.patch-canvas{filter:drop-shadow(0 3px 6px rgba(0,0,0,.45))}.patch-cable.hovered{stroke-width:5px;opacity:1;filter:drop-shadow(0 0 8px rgba(150,220,255,.6)) drop-shadow(0 3px 6px rgba(0,0,0,.45));animation:cable-glow .8s ease-in-out infinite alternate}.cable-cut{cursor:pointer;pointer-events:all}.cable-cut-bg{fill:#1b222b;stroke:#d6e0eebf;stroke-width:1.5}.cable-cut-icon line{stroke:#ff6b6b;stroke-width:1.6;stroke-linecap:round}.cable-cut-icon circle{fill:none;stroke:#ff6b6b;stroke-width:1.3}.cable-cut-icon .cable-cut-pivot{fill:#ff6b6b;stroke:none}.cable-cut:hover .cable-cut-bg{fill:#321418;stroke:#ff6b6b}@keyframes cable-glow{0%{filter:drop-shadow(0 0 6px rgba(150,220,255,.5)) drop-shadow(0 3px 6px rgba(0,0,0,.45))}to{filter:drop-shadow(0 0 12px rgba(150,220,255,.8)) drop-shadow(0 3px 6px rgba(0,0,0,.45))}}.patch-cable.ghost{opacity:.5;stroke-dasharray:10 8;animation:cable-flow .4s linear infinite}@keyframes cable-flow{0%{stroke-dashoffset:0}to{stroke-dashoffset:-18}}.ui-btn{--ui-btn-radius: var(--btn-radius);--ui-btn-padding: var(--btn-padding-y) 8px;--ui-btn-border: var(--btn-inactive-border);--ui-btn-bg: var(--btn-inactive-bg);--ui-btn-text: var(--btn-inactive-text);--ui-btn-font: var(--btn-font-size);--ui-btn-letter: .08em;--ui-btn-active-text: #0a0a0a;--ui-btn-active-bg: linear-gradient(180deg, var(--accent-mint), var(--accent-mint-dark));--ui-btn-active-border: var(--accent-mint);--ui-btn-active-shadow: var(--btn-active-shadow);border-radius:var(--ui-btn-radius);padding:var(--ui-btn-padding);border:1px solid var(--ui-btn-border);background:var(--ui-btn-bg);color:var(--ui-btn-text);font-size:var(--ui-btn-font);font-weight:600;letter-spacing:var(--ui-btn-letter);text-transform:uppercase;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease,color .15s ease}.ui-btn:hover:not(:disabled){background:var(--btn-hover-bg);border-color:var(--btn-hover-border)}.ui-btn.active{color:var(--ui-btn-active-text);background:var(--ui-btn-active-bg);border-color:var(--ui-btn-active-border);box-shadow:var(--ui-btn-active-shadow)}.ui-btn:disabled{opacity:.6;cursor:not-allowed}.ui-btn--pill{--ui-btn-radius: 999px;--ui-btn-padding: 5px 10px}.ui-btn--blue{--ui-btn-active-bg: linear-gradient(180deg, var(--accent-cool), #3a8dff);--ui-btn-active-border: var(--accent-cool);--ui-btn-active-shadow: 0 2px 8px rgba(91, 182, 255, .4)}.mini-keys{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;grid-column:1 / -1}.mini-key{border-radius:var(--radius-2xl);padding:8px 6px;border:1px solid rgba(100,118,140,.9);background:linear-gradient(160deg,#222a38f2,#10141cf2);color:#e4eefae6;font-size:var(--text-xs);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.mini-key:active{border-color:#5bb6ffe6;box-shadow:0 0 10px #5bb6ff99}.seq-panel{grid-column:1 / -1;display:grid;gap:10px;padding:10px;border-radius:var(--radius-4xl);background:#10161ebf;border:1px solid rgba(90,104,126,.6)}.seq-header{display:flex;align-items:center;justify-content:space-between}.seq-title{font-size:var(--text-xs);letter-spacing:.18em;text-transform:uppercase;color:#c6d4e4b3}.seq-toggle{--ui-btn-bg: rgba(18, 24, 32, .9)}.seq-controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px}.seq-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.seq-step{border-radius:var(--radius-2xl);padding:6px 8px;border:1px solid rgba(90,104,126,.8);background:var(--glass-3);color:#d6e2f2d9;font-size:var(--text-2xs);letter-spacing:.16em;text-transform:uppercase;text-align:center}.seq-step.active{color:#0b1115;background:linear-gradient(160deg,#5bb6ffeb,#368effe0);border-color:#5bb6ffe6;box-shadow:0 8px 14px #0a162873}.midi-panel{grid-column:1 / -1;display:grid;gap:10px;padding:10px;border-radius:var(--radius-4xl);background:#0e141cc7;border:1px solid rgba(90,104,126,.6)}.midi-header{display:flex;align-items:center;justify-content:space-between}.midi-title{font-size:var(--text-xs);letter-spacing:.18em;text-transform:uppercase;color:#c6d4e4b3}.midi-toggle{--ui-btn-bg: rgba(18, 24, 32, .9)}.midi-controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;align-items:start}.midi-options{display:flex;flex-wrap:wrap;gap:8px}.midi-option{--ui-btn-bg: rgba(20, 26, 34, .9)}.midi-field{display:grid;gap:6px}.midi-label{font-size:var(--text-2xs);letter-spacing:.16em;text-transform:uppercase;color:#c6d4e4ad}.midi-select{border-radius:var(--radius-2xl);padding:6px 8px;border:1px solid rgba(90,104,126,.8);background:var(--glass-3);color:#d6e2f2e6;font:inherit}.midi-select:disabled{opacity:.6;cursor:not-allowed}.midi-knobs{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:10px}.midi-status{min-height:14px;font-size:var(--text-2xs);letter-spacing:.12em;text-transform:uppercase;color:#c6d4e48c}.midi-status.error{color:#ffaaa0e6}.poly-panel{grid-column:1 / -1;display:grid;gap:8px;padding:10px;border-radius:var(--radius-4xl);background:#10161ebf;border:1px solid rgba(90,104,126,.6)}.poly-label{font-size:var(--text-xs);letter-spacing:.18em;text-transform:uppercase;color:#c6d4e4b3}.poly-buttons{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.poly-btn{--ui-btn-bg: rgba(20, 26, 34, .9)}.side-panel{display:flex;flex-direction:column;gap:16px}.side-panel-fab,.side-panel-close,.side-panel-backdrop{display:none}.panel-section{padding:16px;background:linear-gradient(180deg,#1a1a1a,#0f0f0f);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-xl);box-shadow:inset 0 1px 0 var(--border-soft),0 4px 20px #00000080}.panel-section:before{display:none}.panel-section-header{display:flex;align-items:center;gap:12px;margin-bottom:10px}.panel-section.collapsed .panel-section-header{margin-bottom:0}.panel-actions{display:flex;gap:8px;align-items:center}.panel-section-body{display:grid;gap:12px}.panel-section-toggle{display:flex;align-items:center;gap:10px;width:100%;padding:0;border:0;background:none;color:inherit;text-align:left;cursor:pointer;font:inherit}.panel-section-toggle:focus-visible{outline:1px solid rgba(140,170,200,.7);outline-offset:4px}.panel-section-toggle--icon{width:auto}.panel-title{font-size:.95rem;letter-spacing:.12em;text-transform:uppercase;color:#d8e6f6eb}.panel-toggle-glyph{width:18px;height:18px;border-radius:var(--radius-pill);border:1px solid rgba(120,140,170,.65);background:var(--glass-dark);display:inline-flex;align-items:center;justify-content:center;position:relative;flex-shrink:0;box-shadow:inset 0 0 6px #0006}.panel-toggle-glyph:before{content:"";width:6px;height:6px;border-right:2px solid rgba(210,226,242,.9);border-bottom:2px solid rgba(210,226,242,.9);transform:rotate(45deg)}.panel-section-toggle.is-collapsed .panel-toggle-glyph:before{transform:rotate(-45deg)}.panel-section-toggle:hover .panel-toggle-glyph{border-color:#98b6d6e6;box-shadow:0 0 8px #36a09640}.panel-section-toggle:hover .panel-title{color:#eef6fff2}.muted{margin-top:0;margin-bottom:12px;color:var(--text-muted);font-size:var(--text-lg)}.preset-list{display:grid;gap:10px}.preset-search{width:100%;padding:8px 10px;border-radius:var(--radius-lg);border:1px solid rgba(255,255,255,.12);background:var(--glass-dark);color:var(--text-strong);font-size:.8rem}.preset-search::placeholder{color:#aabed299}.preset-list.compact{gap:6px}.preset-list.compact .preset-card{padding:6px 8px}.preset-list.compact .preset-name{font-size:.68rem}.preset-list.compact .preset-desc{display:none}.preset-list.compact .preset-load{--ui-btn-padding: 6px 10px}.preset-groups{display:grid;gap:12px}.preset-group{display:grid;gap:8px}.preset-group-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:8px 10px;border-radius:var(--radius-lg);border:1px solid var(--border-soft);background:#080c1299;color:#d8e6f6eb;letter-spacing:.12em;text-transform:uppercase;font-size:var(--text-sm);appearance:none;cursor:pointer}.preset-group-header:hover{border-color:#8296be80}.preset-group-title{font-weight:600}.preset-group-meta{display:inline-flex;align-items:center;gap:8px;color:#c6d6e8b3}.preset-group-count{padding:2px 6px;border-radius:var(--radius-pill);background:#5a687e40;font-size:var(--text-2xs)}.preset-group-arrow{font-size:var(--text-md)}.preset-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;background:var(--glass-overlay);border:1px solid var(--border-soft);border-radius:var(--radius-lg)}.preset-actions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.preset-action{--ui-btn-padding: 7px 12px;--ui-btn-font: .6rem;--ui-btn-letter: .12em;--ui-btn-bg: rgba(16, 22, 30, .9);--ui-btn-border: rgba(90, 104, 126, .8)}.preset-file{display:none}.preset-status{margin-bottom:8px;font-size:var(--text-md);color:var(--text-muted)}.preset-error{margin-bottom:8px;font-size:var(--text-md);color:#e68686e6}.preset-name{font-size:var(--text-base);letter-spacing:.12em;text-transform:uppercase;color:#d8e6f6eb}.preset-desc{font-size:var(--text-md);color:#c6d6e8a6;margin-top:4px}.template-module-count{font-size:.65rem;color:#c6d6e866;font-style:italic}.template-actions{display:flex;gap:4px;align-items:center;flex-shrink:0}.template-action-btn{--ui-btn-padding: 4px 8px;--ui-btn-font: .55rem;opacity:.6}.template-action-btn:hover{opacity:1}.template-delete:hover{color:#ff6b6b}.preset-load{--ui-btn-padding: 8px 14px;--ui-btn-font: .6rem;--ui-btn-letter: .14em;--ui-btn-bg: rgba(16, 22, 30, .9);--ui-btn-border: rgba(90, 104, 126, .8)}.macro-grid{display:grid;gap:12px}.macro-card{display:grid;gap:8px;padding:10px;border-radius:var(--radius-xl);background:#080c12a6;border:1px solid rgba(90,104,126,.5)}.macro-header{display:flex;align-items:center;gap:8px}.macro-name{flex:1;border-radius:var(--radius-lg);border:1px solid rgba(90,104,126,.6);background:var(--glass-3);color:#d8e6f6e6;font-size:var(--text-sm);letter-spacing:.08em;padding:4px 6px}.macro-id{font-size:var(--text-2xs);letter-spacing:.2em;text-transform:uppercase;color:#c6d6e899}.macro-slider{width:100%}.macro-slider:disabled{opacity:.5}.macro-readout{font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;color:#c6d6e8a6}.macro-targets{display:grid;gap:8px}.macro-target{display:grid;gap:6px;padding:8px;border-radius:var(--radius-lg);background:#0a0e14cc;border:1px solid rgba(90,104,126,.45)}.macro-target-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.macro-target-range{display:grid;grid-template-columns:repeat(2,minmax(0,1fr)) auto;gap:6px;align-items:center}.macro-select,.macro-number{border-radius:var(--radius-lg);border:1px solid rgba(90,104,126,.6);background:var(--glass-3);color:#d8e6f6e6;font-size:var(--text-xs);padding:6px}.macro-number{text-align:right}.macro-add{--ui-btn-padding: 6px 10px;--ui-btn-font: .55rem;--ui-btn-letter: .14em;--ui-btn-bg: rgba(16, 22, 30, .9);--ui-btn-border: rgba(90, 104, 126, .8);justify-self:start}.macro-remove{--ui-btn-padding: 4px 8px;--ui-btn-font: .5rem;--ui-btn-letter: .14em;--ui-btn-bg: rgba(24, 16, 18, .9);--ui-btn-border: rgba(140, 92, 92, .7)}.macro-empty{font-size:var(--text-sm);color:var(--text-muted)}.chip-row{display:flex;flex-wrap:wrap;gap:8px}.chip{padding:6px 10px;border-radius:var(--radius-pill);font-size:var(--text-md);letter-spacing:.08em;background:#5bb6ff1f;border:1px solid rgba(91,182,255,.3);color:#d2e2f6e0;cursor:pointer;appearance:none;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease,color .2s ease}.chip:hover:not(:disabled){border-color:#8296bee6;box-shadow:0 6px 12px #00000059}.chip:disabled{opacity:.45;cursor:not-allowed}.library-actions{display:flex;gap:8px;margin-bottom:10px}.library-clear{--ui-btn-padding: 6px 12px;--ui-btn-font: .55rem;--ui-btn-letter: .18em;--ui-btn-bg: rgba(24, 30, 40, .9);--ui-btn-border: rgba(120, 140, 170, .5)}.library-auto{--ui-btn-padding: 6px 12px;--ui-btn-font: .55rem;--ui-btn-letter: .18em;--ui-btn-bg: rgba(18, 24, 32, .9);--ui-btn-border: rgba(90, 104, 126, .8)}.module-search{width:100%;padding:8px 12px;margin-bottom:12px;border-radius:var(--radius-lg);border:1px solid rgba(255,255,255,.1);background:#080c12cc;color:#e6eef8f2;font-size:var(--text-base);letter-spacing:.04em}.module-search::placeholder{color:#b4c3d780}.module-search:focus{outline:none;border-color:#5bb6ff80}.module-categories{display:grid;gap:8px}.module-category{display:grid;gap:6px}.module-category-header{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border-radius:var(--radius-lg);border:1px solid var(--border-soft);background:#080c1299;color:#d8e6f6eb;font-size:var(--text-sm);letter-spacing:.1em;text-transform:uppercase;appearance:none;cursor:pointer;transition:border-color .15s,background .15s}.module-category-header:hover:not(:disabled){border-color:#8296be80;background:#0c121ab3}.module-category-header:disabled{cursor:default}.module-category-icon{font-size:var(--text-lg);line-height:1}.module-category-label{flex:1;font-weight:600;text-align:left}.module-category-count{padding:2px 6px;border-radius:var(--radius-pill);background:#5a687e40;font-size:var(--text-2xs);color:#c6d6e8b3}.module-category-arrow{font-size:var(--text-md);color:#c6d6e8b3;margin-left:4px}.module-category .chip-row{padding-left:8px}.signal-strip{display:grid;gap:8px}.signal-strip span{padding:8px 12px;border-radius:var(--radius-3xl);background:#5bb6ff1f;border:1px solid rgba(91,182,255,.25);font-size:var(--text-base);letter-spacing:.08em;text-transform:uppercase}.knob{display:grid;gap:6px;font-size:var(--text-base)}.knob span{color:#cedcecc7}.knob input[type=range]{-webkit-appearance:none;width:100%;height:18px;background:linear-gradient(90deg,#5bb6ffb3,#5bb6ff33);border-radius:var(--radius-pill);border:1px solid rgba(255,255,255,.2);box-shadow:inset 0 2px 6px #0000008c}.knob input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#f8fbff,#9aa6b7 55%,#2b3442);border:1px solid rgba(255,255,255,.4);box-shadow:0 4px 8px #0006}.knob input[type=range]::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#f8fbff,#9aa6b7 55%,#2b3442);border:1px solid rgba(255,255,255,.4);box-shadow:0 4px 8px #0006}.knob-value{font-size:var(--text-md);color:#c8d6e899}.select-field{display:grid;gap:6px;font-size:var(--text-base)}.layout-lab-full{grid-column:1 / -1}.layout-lab{grid-column:1 / -1;display:grid;gap:8px}.lab-test-bed{grid-column:1 / -1;display:flex;flex-direction:column;gap:8px;padding:4px}.lab-test-bed>.control-box{width:100%}.layout-lab-section{display:grid;gap:6px;padding:6px;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.08);background:#0003}.layout-lab-title{font-size:7px;letter-spacing:.18em;text-transform:uppercase;color:#c6d4e4b3}.layout-lab-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(var(--control-min, 44px),1fr));gap:6px}.layout-lab-stack{display:grid;gap:6px}.select-field select{padding:6px 8px;border-radius:var(--radius-2xl);background:#0c1016eb;border:1px solid rgba(255,255,255,.2);color:#d6e2f2e6;font:inherit}.module-card[data-module-type=mario]{background:repeating-linear-gradient(0deg,rgba(255,100,100,.02) 0px,rgba(255,100,100,.02) 1px,transparent 1px,transparent 3px),linear-gradient(180deg,#2a1010,#1a0a0a)}.module-card[data-module-type=mario] .module-controls{display:flex!important;flex-direction:column;gap:8px}.mario-display{background:#000;border:2px solid #c84c0c;border-radius:var(--radius-md);padding:8px;text-align:center;box-shadow:inset 0 0 20px #c84c0c33,0 0 10px #c84c0c4d}.mario-title{font-family:Courier New,monospace;font-size:10px;font-weight:700;color:#fcbcb0;text-shadow:0 0 6px #c84c0c;letter-spacing:2px;margin-bottom:4px}.mario-status{font-family:Courier New,monospace;font-size:9px;margin-bottom:6px}.mario-playing{color:#7cfc00;text-shadow:0 0 4px #7cfc00;animation:mario-blink .5s ease-in-out infinite}.mario-stopped{color:#888}@keyframes mario-blink{0%,to{opacity:1}50%{opacity:.7}}.mario-progress{height:6px;background:#222;border-radius:var(--radius-sm);overflow:hidden;border:1px solid #444}.mario-progress-bar{height:100%;background:linear-gradient(90deg,#c84c0c,#fcbcb0,#c84c0c);border-radius:var(--radius-xs);transition:width .05s linear}.mario-controls{display:flex;align-items:center;justify-content:center;gap:12px}.mario-btn{font-family:Courier New,monospace;font-size:10px;font-weight:700;padding:6px 14px!important;border:2px solid #c84c0c!important;background:#2a1010!important;color:#fcbcb0!important;text-shadow:0 0 4px #c84c0c;transition:var(--transition-normal)}.mario-btn:hover{background:#3a1818!important;box-shadow:0 0 12px #c84c0c80}.mario-btn.playing{background:#c84c0c!important;color:#fff!important;box-shadow:0 0 15px #c84c0cb3}.mario-channels{display:flex;justify-content:space-around;padding:4px;background:var(--glass-overlay);border-radius:var(--radius-md)}.mario-ch{font-family:Courier New,monospace;font-size:8px;color:#888;display:flex;align-items:center;gap:4px}.ch-dot{width:6px;height:6px;border-radius:50%;display:inline-block}.ch-dot.ch1{background:#f66;box-shadow:0 0 4px #f66}.ch-dot.ch2{background:#6f6;box-shadow:0 0 4px #6f6}.ch-dot.ch3{background:#66f;box-shadow:0 0 4px #66f}.ch-dot.ch4{background:#fc6;box-shadow:0 0 4px #fc6}.ch-dot.ch5{background:#c6f;box-shadow:0 0 4px #c6f}.mario-song-select{display:flex;justify-content:center;gap:4px}.mario-song-dropdown{font-family:Courier New,monospace;font-size:10px;font-weight:700;padding:6px 24px 6px 10px;min-width:120px;border:1px solid #4a2a1a;border-radius:var(--radius-md);background:#1a0a0a;color:#fcbcb0;cursor:pointer;text-align:center;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath fill='%23fcbcb0' d='M0 0l5 6 5-6z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center}.mario-song-dropdown:hover{border-color:#c84c0c;box-shadow:0 0 6px #c84c0c66}.mario-song-dropdown:focus{outline:none;border-color:#c84c0c;box-shadow:0 0 8px #c84c0c99}.mario-song-dropdown option{background:#1a0a0a;color:#fcbcb0;padding:4px}.sid-display{grid-column:1 / -1;background:linear-gradient(180deg,rgba(255,255,255,.04),transparent 30%),repeating-linear-gradient(0deg,rgba(0,0,0,.22) 0 1px,transparent 1px 3px),radial-gradient(120% 130% at 50% 0%,#10141f,#0a0d15 70%);border:1px solid rgba(0,0,0,.9);border-radius:5px;padding:8px 10px;text-align:center;box-shadow:inset 0 2px 8px #000c,inset 0 0 24px #4a6fa51f,0 1px #ffffff0f}.sid-title{font-family:Courier New,monospace;font-size:11px;font-weight:700;color:#8fd4f9;text-shadow:0 0 6px rgba(143,212,249,.6);letter-spacing:.5px;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sid-author{font-family:Courier New,monospace;font-size:9px;color:#6ba3d6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;justify-content:space-between;align-items:center}.sid-format-badge{font-size:8px;font-weight:700;padding:1px 4px;border-radius:3px;margin-left:6px;flex-shrink:0;background:#4a6fa54d;color:#7ab8e0;border:1px solid rgba(74,111,165,.5)}.sid-elapsed{color:#4a9fcf;font-size:10px;flex-shrink:0;margin-left:6px}.sid-error{grid-column:1 / -1;font-family:Courier New,monospace;font-size:9px;color:#ff6b6b;background:#ff50501a;border:1px solid rgba(255,80,80,.3);border-radius:var(--radius-sm);padding:6px 8px;line-height:1.4}.sid-songs{font-family:Courier New,monospace;font-size:9px;color:#4a6fa5}.sid-file-section{display:flex;justify-content:center;margin:8px 0}.sid-load-btn{font-family:Courier New,monospace;font-size:10px;padding:6px 12px;background:linear-gradient(180deg,#29333e,#1b222b);border:1px solid rgba(0,0,0,.8);border-radius:var(--radius-sm);box-shadow:inset 0 1px #ffffff1a,0 2px 3px #00000080;color:#8fd4f9;cursor:pointer;transition:all .2s}.sid-load-btn:hover{background:linear-gradient(180deg,#33404d,#232c37);box-shadow:0 0 8px #4a6fa566}.sid-song-btn{font-family:Courier New,monospace;font-size:12px;width:28px;height:28px;background:linear-gradient(180deg,#29333e,#1b222b);border:1px solid rgba(0,0,0,.8);border-radius:var(--radius-sm);box-shadow:inset 0 1px #ffffff1a,0 2px 3px #00000080;color:#8fd4f9;cursor:pointer;transition:all .2s}.sid-song-btn:hover:not(:disabled){background:linear-gradient(180deg,#33404d,#232c37)}.sid-song-btn:disabled{opacity:.4;cursor:not-allowed}.sid-song-num{font-family:Courier New,monospace;font-size:14px;color:#8fd4f9;min-width:30px;text-align:center}.sid-preset-select{width:100%;font-family:Courier New,monospace;font-size:10px;padding:4px 6px;background:linear-gradient(180deg,#2a3a5e,#1a2a4e);border:1px solid #4a6fa5;border-radius:3px;color:#8fd4f9;cursor:pointer}.sid-preset-select:hover{background:linear-gradient(180deg,#3a4a6e,#2a3a5e)}.sid-preset-select option{background:#1a2a4e;color:#8fd4f9}.sid-controls-row{grid-column:1 / -1;display:flex;gap:6px;align-items:stretch}.sid-controls-row .toggle-button{flex:1}.sid-controls-row .sid-load-btn{flex:0 0 auto;display:flex;align-items:center;justify-content:center;margin:0}.sid-voices{grid-column:1 / -1;display:flex;gap:4px;height:50px;padding:4px;background:linear-gradient(180deg,#0a1525,#0f1a30);border:1px solid #2a3a5e;border-radius:4px}.sid-voice{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;position:relative;background:#0000004d;border-radius:2px;overflow:hidden}.sid-voice-bar{width:100%;background:linear-gradient(180deg,#1a3a5e,#0a1a2e);transition:height .05s ease-out;min-height:2px}.sid-voice.active .sid-voice-bar{background:linear-gradient(180deg,#4a9fcf,#2a6f9f);box-shadow:0 0 8px #4a9fcf80}.sid-voice-label{position:absolute;bottom:0;left:0;right:0;display:flex;flex-direction:column;align-items:center;padding:2px;font-family:Courier New,monospace;font-size:8px;color:#4a6fa5;text-shadow:0 0 2px rgba(0,0,0,.8)}.sid-voice.active .sid-voice-label{color:#8fd4f9}.sid-voice-num{font-weight:700}.sid-voice-wave{font-size:7px;opacity:.8}*{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.seq-step-grid{grid-column:1 / -1;display:flex;flex-direction:column;gap:6px;background:linear-gradient(180deg,rgba(255,255,255,.04),transparent 30%),repeating-linear-gradient(0deg,rgba(0,0,0,.22) 0 1px,transparent 1px 3px),radial-gradient(120% 130% at 50% 0%,#10171c,#0a0f13 70%);border:1px solid rgba(0,0,0,.9);border-radius:5px;box-shadow:inset 0 2px 8px #000c,inset 0 0 24px color-mix(in srgb,var(--cat, var(--accent-warm)) 7%,transparent),0 1px #ffffff0f;padding:8px;margin-top:8px}.seq-step-bank{display:flex;gap:4px}.seq-step{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;padding:4px 2px;background:#ffffff0d;border-radius:var(--radius-sm);border:1px solid rgba(0,0,0,.6);box-shadow:inset 0 1px 2px #0006;transition:opacity .2s}.seq-step.disabled{opacity:.3;pointer-events:none}.seq-step-labels{flex:0 0 34px;background:transparent;border-color:transparent;box-shadow:none}.seq-step-labels .seq-step-led,.seq-step-labels .seq-step-num{visibility:hidden}.seq-label{display:flex;align-items:center;justify-content:flex-end;width:100%;padding-right:3px;font-size:7px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim)}.seq-label-gate{height:22px}.seq-label-note,.seq-label-vel{height:24px}.seq-label-slide{height:18px}.seq-step-num{font-size:9px;font-weight:700;color:#c6d4e4b3;text-align:center;width:100%}.seq-step-gate{width:100%;height:22px;border:none;border-radius:var(--radius-sm);font-size:8px;font-weight:700;letter-spacing:.05em;cursor:pointer;transition:var(--transition-fast);background:#28323ce6;color:#c6d4e480}.seq-step-gate:hover{background:#3c5064e6}.seq-step-gate.active{background:color-mix(in srgb,var(--cat, var(--accent-warm)) 35%,#0c1116);color:color-mix(in srgb,var(--cat, var(--accent-warm)) 90%,#fff);box-shadow:inset 0 0 6px color-mix(in srgb,var(--cat, var(--accent-warm)) 30%,transparent),0 0 6px color-mix(in srgb,var(--cat, var(--accent-warm)) 30%,transparent)}.seq-step-pitch{width:100%;height:24px;display:flex;align-items:center;justify-content:center;background:#00000073;border:1px solid rgba(0,0,0,.6);border-radius:var(--radius-sm);font-size:10px;font-weight:400;font-family:var(--font-lcd);color:color-mix(in srgb,var(--cat, var(--accent-warm)) 70%,#fff);text-shadow:0 0 5px color-mix(in srgb,var(--cat, var(--accent-warm)) 40%,transparent);cursor:ns-resize;-webkit-user-select:none;user-select:none;touch-action:none;transition:background .1s;position:relative;overflow:hidden}.seq-step-pitch-num{position:relative;z-index:1}.module-card[data-module-type=step-sequencer] .seq-step-pitch:before{content:"";position:absolute;left:0;right:0;bottom:0;height:calc(var(--pitch-ratio, .5) * 100%);background:linear-gradient(180deg,color-mix(in srgb,var(--cat, var(--accent-warm)) 30%,transparent),color-mix(in srgb,var(--cat, var(--accent-warm)) 14%,transparent));border-top:1px solid color-mix(in srgb,var(--cat, var(--accent-warm)) 55%,transparent);pointer-events:none;transition:height .05s}.seq-step-pitch:hover{background:#1e2d3ce6;border-color:#5a789680}.seq-step-pitch:active{background:#283c50e6}.seq-step-vel{width:100%;height:24px;display:flex;align-items:center;justify-content:center;background:#00000073;border:1px solid rgba(0,0,0,.6);border-radius:var(--radius-sm);position:relative;cursor:ns-resize;-webkit-user-select:none;user-select:none;touch-action:none;overflow:hidden}.seq-step-vel:after{content:"";position:absolute;bottom:0;left:0;right:0;height:calc(var(--vel, 100) * 1%);background:linear-gradient(180deg,color-mix(in srgb,var(--cat, var(--accent-warm)) 30%,transparent),color-mix(in srgb,var(--cat, var(--accent-warm)) 14%,transparent));border-top:1px solid color-mix(in srgb,var(--cat, var(--accent-warm)) 55%,transparent);pointer-events:none;transition:height .05s}.seq-step-vel-num{position:relative;z-index:1;font-size:10px;font-family:var(--font-lcd);color:color-mix(in srgb,var(--cat, var(--accent-warm)) 70%,#fff);text-shadow:0 0 5px color-mix(in srgb,var(--cat, var(--accent-warm)) 40%,transparent)}.seq-step-slide{width:100%;height:18px;border:none;border-radius:var(--radius-sm);font-size:8px;font-weight:700;cursor:pointer;transition:var(--transition-fast);background:#28323ce6;color:#c6d4e466}.seq-step-slide:hover{background:#3c5064e6}.seq-step-slide.active{background:linear-gradient(180deg,#fbbf24,#f59e0b);color:#1a1a1a;box-shadow:0 0 6px #fbbf2466}.control-box-row{grid-column:1 / -1;display:flex;gap:6px;flex-wrap:wrap}.control-box{flex:1;min-width:80px;display:flex;flex-direction:column;gap:6px;padding:6px 7px 7px;background:linear-gradient(180deg,#0000002e,#00000014);border-radius:var(--radius-lg);border:1px solid rgba(0,0,0,.55);box-shadow:inset 0 1px #ffffff0d,inset 0 0 10px #00000040}.control-box.control-box-compact{padding:4px 6px;gap:4px;min-width:auto}.control-box.control-box-compact .control-box-label{font-size:7px}.control-box.control-box-compact .control-btn{font-size:var(--btn-compact-font-size);padding:var(--btn-compact-padding-y) var(--btn-compact-padding-x)}.module-controls>.control-box{grid-column:1 / -1}.control-box-label{display:flex;align-items:center;gap:6px;font-size:8px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--text-dim);white-space:nowrap}.control-box-label:after{content:"";flex:1;height:1px;background:linear-gradient(90deg,var(--border-soft),transparent)}.control-box-content{display:flex;flex-direction:column;gap:4px}.control-box-horizontal{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:8px}.control-box-horizontal>.rotary{flex:0 0 auto}.control-box-display{text-align:center;font-size:11px;font-weight:700;letter-spacing:.1em;color:var(--accent-mint);padding:4px;background:#00000026;border-radius:var(--radius-sm)}.control-buttons-rows{display:flex;flex-direction:column;gap:4px}.control-buttons{display:grid;gap:4px}.control-btn{padding:var(--btn-padding-y) var(--btn-padding-x);border:1px solid var(--btn-inactive-border);border-radius:var(--btn-radius);background:var(--btn-inactive-bg);color:var(--btn-inactive-text);font-size:var(--btn-font-size);font-weight:700;letter-spacing:.08em;cursor:pointer;transition:var(--transition-normal);text-transform:uppercase;white-space:nowrap}.control-btn:hover{background:var(--btn-hover-bg);border-color:var(--btn-hover-border)}.control-btn.active{background:linear-gradient(180deg,var(--accent-mint) 0%,var(--accent-mint-dark) 100%);border-color:var(--accent-mint);color:#0a0a0a;box-shadow:var(--btn-active-shadow)}.module-card .control-btn{background:linear-gradient(180deg,#29333e,#1b222b);border-color:#000c;box-shadow:inset 0 1px #ffffff1a,0 2px 3px #00000080}.module-card .control-btn:hover{background:linear-gradient(180deg,#33404d,#232c37);border-color:#000c}.module-card .control-btn.active{background:color-mix(in srgb,var(--cat) 22%,#11161c);border-color:color-mix(in srgb,var(--cat) 50%,#000);color:color-mix(in srgb,var(--cat) 88%,#fff);box-shadow:inset 0 0 8px color-mix(in srgb,var(--cat) 25%,transparent),inset 0 1px #ffffff14}.control-btn.cv-active{border-color:#00e5ff;box-shadow:0 0 6px #00e5ff66;background:#00e5ff26;color:#00e5ff}.control-btn.user-active{opacity:.35}.seq-pattern-row{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:4px;padding:6px;background:#0003;border-radius:var(--radius-lg)}.seq-pattern-btn{flex:1 1 auto;min-width:55px;padding:6px 8px;border:1px solid rgba(0,0,0,.8);border-radius:var(--radius-md);background:linear-gradient(180deg,#29333e,#1b222b);box-shadow:inset 0 1px #ffffff1a,0 2px 3px #00000080;color:#c6d4e4e6;font-size:9px;font-weight:600;letter-spacing:.06em;cursor:pointer;transition:var(--transition-normal)}.seq-pattern-btn:hover{background:linear-gradient(180deg,#33404d,#232c37);border-color:#000c}.seq-page-nav{grid-column:1 / -1;display:flex;gap:4px;padding:4px 6px}.seq-page-btn{flex:1;padding:4px 6px;border:1px solid rgba(0,0,0,.8);border-radius:var(--radius-md);background:linear-gradient(180deg,#29333e,#1b222b);box-shadow:inset 0 1px #ffffff1a,0 2px 3px #00000080;color:#c6d4e4b3;font-size:9px;font-weight:600;cursor:pointer;transition:var(--transition-normal)}.seq-page-btn.active{background:color-mix(in srgb,var(--cat, var(--accent-warm)) 22%,#11161c);border-color:color-mix(in srgb,var(--cat, var(--accent-warm)) 50%,#000);color:color-mix(in srgb,var(--cat, var(--accent-warm)) 88%,#fff);box-shadow:inset 0 0 8px color-mix(in srgb,var(--cat, var(--accent-warm)) 25%,transparent),inset 0 1px #ffffff14}.seq-page-btn:hover:not(.active){background:linear-gradient(180deg,#33404d,#232c37);border-color:#000c}.seq-step.playing{background:#42e2b133;border-color:#42e2b180;box-shadow:0 0 8px #42e2b14d}.seq-step.playing .seq-step-num{color:var(--accent-mint);text-shadow:0 0 4px rgba(66,226,177,.6)}.seq-step-led{width:8px;height:8px;border-radius:50%;background:#3c506466;margin-bottom:2px;transition:background .1s,box-shadow .1s}.seq-step.playing .seq-step-led{background:var(--accent-mint);box-shadow:0 0 6px var(--accent-mint),0 0 10px #42e2b180}.drum-seq-grid{grid-column:1 / -1;display:flex;flex-direction:column;gap:2px;background:linear-gradient(180deg,rgba(255,255,255,.04),transparent 30%),repeating-linear-gradient(0deg,rgba(0,0,0,.22) 0 1px,transparent 1px 3px),radial-gradient(120% 130% at 50% 0%,#10171c,#0a0f13 70%);border:1px solid rgba(0,0,0,.9);border-radius:5px;box-shadow:inset 0 2px 8px #000c,inset 0 0 24px color-mix(in srgb,var(--cat, var(--accent-warm)) 7%,transparent),0 1px #ffffff0f;padding:8px}.drum-track{display:flex;align-items:center;gap:4px}.drum-track-label{width:50px;font-size:9px;font-weight:700;color:#c6d4e4e6;letter-spacing:.05em;text-align:right;padding-right:6px;flex-shrink:0}.drum-track-steps{display:flex;gap:2px;flex:1}.drum-step{flex:1;aspect-ratio:1;min-width:16px;max-width:24px;border:1px solid rgba(0,0,0,.6);border-radius:var(--radius-sm);background:#ffffff0d;box-shadow:inset 0 1px 2px #0006;color:#788ca099;font-size:10px;font-weight:700;cursor:pointer;transition:var(--transition-fast);display:flex;align-items:center;justify-content:center;padding:0}.drum-step:hover{background:#324155cc;border-color:#6482aa99}.drum-step.beat{border-left:2px solid rgba(255,255,255,.15)}.drum-step.active{background:linear-gradient(180deg,#f97316,#ea580c);border-color:#f97316;color:#fff;box-shadow:0 0 6px #f9731666}.drum-step.active.accent{background:linear-gradient(180deg,#ef4444,#dc2626);border-color:#ef4444;box-shadow:0 0 8px #ef444480}.drum-step.disabled{opacity:.3;pointer-events:none}.drum-step.playing{background:#42e2b14d;border-color:#42e2b199;box-shadow:0 0 8px #42e2b166}.drum-step.playing.active{background:linear-gradient(180deg,var(--accent-mint) 0%,var(--accent-mint-dark) 100%);border-color:var(--accent-mint);box-shadow:0 0 10px #42e2b199}.seq-presets{grid-column:1 / -1;display:flex;align-items:center;gap:6px;padding:4px 0}.seq-preset-btn{padding:4px 10px;border:1px solid rgba(0,0,0,.8);border-radius:var(--radius-md);background:linear-gradient(180deg,#29333e,#1b222b);box-shadow:inset 0 1px #ffffff1a,0 2px 3px #00000080;color:#c6d4e4e6;font-size:9px;font-weight:600;cursor:pointer;transition:var(--transition-normal)}.seq-preset-btn:hover{background:linear-gradient(180deg,#33404d,#232c37);border-color:#000c}.seq-knob-box{display:flex;flex-direction:column;align-items:center;gap:2px}.seq-slider{width:60px;height:4px;-webkit-appearance:none;background:#3c506466;border-radius:var(--radius-xs);cursor:pointer}.seq-slider::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;border-radius:50%;background:var(--accent-mint);cursor:pointer}.seq-control-value{font-size:9px;color:#96aabecc}.drum-seq-row1{grid-column:1 / -1;display:flex;align-items:center;gap:12px;padding:8px;background:var(--glass-overlay);border-radius:var(--radius-xl);margin-bottom:6px}.drum-seq-play{padding:10px 20px;border:2px solid rgba(80,100,130,.5);border-radius:var(--radius-lg);background:var(--glass-5);color:#c6d4e4e6;font-size:12px;font-weight:700;letter-spacing:.1em;cursor:pointer;transition:var(--transition-normal);min-width:90px}.drum-seq-play:hover{background:var(--glass-panel);border-color:#6482aa99}.drum-seq-play.active{background:linear-gradient(180deg,#ef4444,#dc2626);border-color:#ef4444;color:#fff;box-shadow:0 2px 10px #ef444466}.drum-seq-bpm{display:flex;align-items:center;gap:8px;padding:6px 12px;background:#141e2899;border-radius:var(--radius-lg);border:1px solid rgba(60,80,100,.3)}.drum-seq-label{font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#c6d4e4b3}.drum-seq-bpm-input{width:60px;padding:6px 8px;border:1px solid rgba(80,100,130,.5);border-radius:var(--radius-md);background:#0f141ecc;color:var(--accent-mint);font-size:14px;font-weight:700;text-align:center;font-family:JetBrains Mono,monospace}.drum-seq-bpm-input:focus{outline:none;border-color:var(--accent-mint);box-shadow:0 0 6px #42e2b14d}.drum-seq-row3{grid-column:1 / -1;display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:6px 10px;background:#00000040;border-radius:var(--radius-lg);margin-bottom:8px}.drum-seq-patterns{display:flex;flex-wrap:wrap;gap:4px;width:100%}.drum-seq-pattern-btn{padding:4px 8px;min-width:58px;border:1px solid rgba(80,100,130,.4);border-radius:var(--radius-md);background:var(--glass-4);color:#c6d4e4e6;font-size:9px;font-weight:600;cursor:pointer;transition:var(--transition-normal)}.drum-seq-pattern-btn:hover{background:#3c506ecc;border-color:#6482aa99;color:#fff}.drum-knobs-grid{grid-column:1 / -1;display:grid;grid-template-columns:repeat(2,1fr);gap:8px 12px;padding:4px}.drum-knobs-grid .knob-container{min-width:0}.dm909-transport{flex-wrap:wrap}.dm909-banks{display:flex;align-items:center;gap:6px;padding:6px 10px;background:linear-gradient(180deg,#0000002e,#00000014);border-radius:var(--radius-lg);border:1px solid rgba(0,0,0,.55);box-shadow:inset 0 1px #ffffff0d}.dm909-bank-btn{position:relative;min-width:34px;padding:6px 10px;border:1px solid rgba(0,0,0,.8);border-radius:var(--radius-md);background:linear-gradient(180deg,#29333e,#1b222b);box-shadow:inset 0 1px #ffffff1a,0 2px 3px #00000080;color:#c6d4e4d9;font-size:11px;font-weight:700;letter-spacing:.08em;cursor:pointer;transition:var(--transition-fast)}.dm909-bank-btn:hover{background:linear-gradient(180deg,#33404d,#232c37);border-color:#000c}.dm909-bank-btn.sel{background:linear-gradient(180deg,#f97316,#ea580c);border-color:#f97316;color:#fff;box-shadow:0 0 8px #f9731666}.dm909-bank-btn.playing:after{content:"";position:absolute;top:3px;right:3px;width:6px;height:6px;border-radius:50%;background:var(--accent-mint);box-shadow:0 0 5px var(--accent-mint)}.dm909-fill-btn{padding:8px 14px;border:1px solid rgba(240,176,107,.6);border-radius:var(--radius-lg);background:var(--glass-5);color:var(--accent-warm);font-size:11px;font-weight:700;letter-spacing:.06em;cursor:pointer;transition:var(--transition-fast);-webkit-user-select:none;user-select:none}.dm909-fill-btn:hover{background:#f0b06b2e}.dm909-fill-btn:active{background:linear-gradient(180deg,#f0b06b,#c9793a);color:#1a1208;box-shadow:0 0 10px #f0b06b80}.dm909-sync{margin-left:auto;font-size:10px;font-weight:600;letter-spacing:.06em;color:#96aabeb3}.dm909-preset-row{display:flex;align-items:center;gap:10px;width:100%}.dm909-grid{grid-column:1 / -1;display:flex;flex-direction:column;gap:2px;background:linear-gradient(180deg,rgba(255,255,255,.04),transparent 30%),repeating-linear-gradient(0deg,rgba(0,0,0,.22) 0 1px,transparent 1px 3px),radial-gradient(120% 130% at 50% 0%,#10171c,#0a0f13 70%);border:1px solid rgba(0,0,0,.9);border-radius:5px;box-shadow:inset 0 2px 8px #000c,inset 0 0 24px color-mix(in srgb,var(--cat, var(--accent-warm)) 7%,transparent),0 1px #ffffff0f;padding:8px}.dm909-lane{display:flex;align-items:center;gap:4px}.dm909-voice-label{width:56px;flex-shrink:0;padding:4px;border:1px solid rgba(0,0,0,.7);border-radius:var(--radius-sm);background:linear-gradient(180deg,#29333e,#1b222b);box-shadow:inset 0 1px #ffffff14;color:#c6d4e4d9;font-size:9px;font-weight:700;letter-spacing:.03em;text-align:center;white-space:nowrap;cursor:pointer;transition:var(--transition-fast)}.dm909-voice-label:hover{background:#324155b3}.dm909-voice-label.sel{background:linear-gradient(180deg,#5bb6ff,#2f7fbe);border-color:#5bb6ff;color:#fff;box-shadow:0 0 6px #5bb6ff66}.dm909-lane-steps{display:flex;gap:2px;flex:1}.dm909-step{position:relative;flex:1;height:22px;min-width:14px;border:1px solid rgba(0,0,0,.6);border-radius:var(--radius-sm);background:#ffffff0d;box-shadow:inset 0 1px 2px #0006;cursor:pointer;transition:var(--transition-fast);padding:0;overflow:hidden}.dm909-step:hover{border-color:#6482aab3}.dm909-step.beat{border-left:2px solid rgba(255,255,255,.16)}.dm909-vel{position:absolute;left:0;right:0;bottom:0;background:linear-gradient(180deg,#f97316,#ea580c);transition:height var(--transition-fast)}.dm909-step.accent .dm909-vel{background:linear-gradient(180deg,#ef4444,#dc2626)}.dm909-step.ghost .dm909-vel{background:linear-gradient(180deg,#f973168c,#ea580c8c)}.dm909-step.active{border-color:#f97316b3}.dm909-step.disabled{opacity:.25;pointer-events:none}.dm909-step.playing{border-color:var(--accent-mint);box-shadow:inset 0 0 0 1px var(--accent-mint),0 0 8px #42e2b173}.dm909-pager{display:flex;align-items:center;gap:6px;padding-top:4px;padding-left:60px}.dm909-page-btn{padding:3px 8px;border:1px solid rgba(0,0,0,.8);border-radius:var(--radius-sm);background:linear-gradient(180deg,#29333e,#1b222b);box-shadow:inset 0 1px #ffffff1a,0 2px 3px #00000080;color:#c6d4e4d9;font-size:9px;font-weight:600;cursor:pointer;transition:var(--transition-fast)}.dm909-page-btn.sel{background:var(--accent-cool);border-color:var(--accent-cool);color:#06121f}.dm909-voice-edit{grid-column:1 / -1;margin-top:8px;padding:8px 10px;background:#00000040;border-radius:var(--radius-lg);border:1px solid rgba(60,80,100,.3)}.dm909-voice-edit-title{display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px;margin-bottom:8px}.dm909-edit-badge{font-size:9px;font-weight:700;letter-spacing:.1em;color:#06121f;background:var(--accent-cool);padding:2px 6px;border-radius:var(--radius-sm)}.dm909-edit-voice{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-cool)}.dm909-edit-hint{font-size:9px;font-weight:500;color:#96aabea6}.midi-seq-file-section{grid-column:1 / -1;padding:8px 12px;background:var(--glass-panel);border-radius:6px;margin:4px 0}.midi-seq-file-name{font-size:11px;color:var(--accent-mint);margin-bottom:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:var(--font-mono)}.midi-seq-progress{position:relative;height:16px;background:#141e2dcc;border-radius:3px;margin-bottom:8px;overflow:hidden}.midi-seq-progress-bar{position:absolute;top:0;left:0;height:100%;background:linear-gradient(90deg,var(--accent-cool),var(--accent-mint));transition:width .05s linear}.midi-seq-progress-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:10px;color:#fff;font-family:var(--font-mono);text-shadow:0 1px 2px rgba(0,0,0,.8)}.midi-seq-file-buttons{display:flex;gap:8px}.midi-seq-load-btn{flex:1;padding:6px 12px;background:var(--glass-panel);border:1px solid var(--border-glass);border-radius:4px;color:var(--text-secondary);font-size:10px;font-weight:600;text-transform:uppercase;text-align:center;cursor:pointer;transition:all .15s ease}.midi-seq-load-btn:hover{background:#3c506ecc;border-color:var(--accent-cool);color:#fff}.midi-seq-preset-select{flex:1;padding:6px 8px;background:var(--glass-panel);border:1px solid var(--border-glass);border-radius:4px;color:var(--text-secondary);font-size:10px;font-family:var(--font-sans);cursor:pointer}.midi-seq-preset-select:hover{border-color:var(--accent-cool)}.midi-seq-preset-select:focus{outline:none;border-color:var(--accent-mint)}.midi-seq-tracks{grid-column:1 / -1;display:flex;flex-direction:column;gap:2px;padding:4px 0}.midi-track{display:flex;align-items:center;gap:6px;padding:3px 6px;background:#1e283766;border-radius:3px;font-size:10px;color:var(--text-tertiary)}.midi-track.active{background:#32465f80;color:var(--text-secondary)}.midi-track.muted{opacity:.6;margin-bottom:0}.midi-track.muted .midi-track-name{text-decoration:line-through;opacity:.7}.midi-track-num{width:16px;height:16px;display:flex;align-items:center;justify-content:center;background:#141e2d99;border-radius:3px;font-size:9px;font-weight:700;color:var(--text-tertiary);flex-shrink:0}.midi-track.active .midi-track-num{background:var(--accent-cool);color:#fff}.midi-track-btns{display:flex;gap:2px;flex-shrink:0}.midi-track-btn{width:18px;height:16px;display:flex;align-items:center;justify-content:center;background:#28324699;border:1px solid rgba(80,100,130,.4);border-radius:2px;font-size:8px;font-weight:700;color:var(--text-tertiary);cursor:pointer;transition:all .1s ease}.midi-track-btn:hover{background:#3c506ecc;border-color:#6482aa99}.midi-track-btn.mute.on{background:var(--accent-coral);border-color:var(--accent-coral);color:#fff}.midi-track-btn.mute:not(.on):hover{border-color:var(--accent-coral)}.midi-track-name{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.midi-track-notes{font-size:9px;color:var(--text-tertiary);font-family:var(--font-mono);text-align:right;min-width:32px;flex-shrink:0}.midi-track.active .midi-track-notes{color:var(--accent-mint)}.piano-keyboard{position:relative;width:100%;height:60px;-webkit-user-select:none;user-select:none;touch-action:none}.piano-keyboard--compact{height:48px}.piano-white-keys{position:absolute;inset:0;display:flex}.piano-black-keys{position:absolute;top:0;left:0;right:0;height:60%;pointer-events:none}.piano-key{border:none;cursor:pointer;transition:background .05s ease;touch-action:none}.piano-key--white{height:100%;background:linear-gradient(180deg,#f8f8f8,#e8e8e8);border-right:1px solid rgba(60,70,90,.3);border-bottom:2px solid rgba(60,70,90,.4);border-radius:0 0 3px 3px}.piano-key--white:first-child{border-radius:0 0 3px 3px}.piano-key--white:last-child{border-right:none}.piano-key--white:hover{background:linear-gradient(180deg,#fff,#f0f0f0)}.piano-key--white.active{background:linear-gradient(180deg,#6fd4a8,#42e2b1);box-shadow:inset 0 -3px 6px #00000026}.piano-key--black{position:absolute;height:100%;background:linear-gradient(180deg,#3a3a3a,#1a1a1a 85%,#0a0a0a);border-radius:0 0 3px 3px;box-shadow:inset 0 -2px 4px #0006,0 2px 4px #0000004d;pointer-events:auto;z-index:1}.piano-key--black:hover{background:linear-gradient(180deg,#4a4a4a,#2a2a2a 85%,#1a1a1a)}.piano-key--black.active{background:linear-gradient(180deg,#4ecfa0,#32b882 85%,#28a070);box-shadow:inset 0 -1px 2px #0000004d,0 1px 2px #0003}.control-keyboard-section{grid-column:1 / -1;display:flex;flex-direction:column;gap:8px}.control-keyboard-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.control-keyboard-footer{display:flex;align-items:center;gap:6px}.control-keyboard-octave{display:flex;align-items:center;gap:4px}.control-octave-btn{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#28324699;border:1px solid rgba(80,100,130,.5);border-radius:4px;color:var(--text-secondary);font-size:14px;font-weight:700;cursor:pointer;transition:all .1s ease}.control-octave-btn:hover:not(:disabled){background:#3c506ecc;border-color:#6482aa99;color:#fff}.control-octave-btn:disabled{opacity:.4;cursor:not-allowed}.control-octave-display{min-width:32px;text-align:center;font-size:11px;font-weight:600;color:var(--accent-mint);font-family:var(--font-mono)}.control-expand-btn{padding:4px 8px;background:#28324699;border:1px solid rgba(80,100,130,.5);border-radius:4px;color:var(--text-secondary);font-size:10px;cursor:pointer;transition:all .1s ease}.control-expand-btn:hover{background:#3c506ecc;border-color:var(--accent-cool);color:#fff}.control-action-btns{display:flex;gap:4px;margin-left:auto}.control-action-btn{padding:4px 8px;background:#28324699;border:1px solid rgba(80,100,130,.5);border-radius:4px;color:var(--text-secondary);font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:all .1s ease}.control-action-btn:hover{background:#3c506ecc;border-color:#6482aa99}.control-action-btn:active{border-color:var(--accent-mint);box-shadow:0 0 8px #42e2b166}.keyboard-popup-backdrop{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:2000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.keyboard-popup{width:90%;max-width:900px;background:var(--panel-bg);border:1px solid rgba(100,120,150,.4);border-radius:12px;box-shadow:0 20px 60px #00000080,0 0 40px #42e2b11a;overflow:hidden}.keyboard-popup-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#1e2837cc;border-bottom:1px solid rgba(80,100,130,.3)}.keyboard-popup-title{margin:0;font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:.15em;color:var(--text-primary)}.keyboard-popup-close{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:#3c465a80;border:1px solid rgba(100,120,150,.4);border-radius:6px;color:var(--text-secondary);font-size:20px;cursor:pointer;transition:all .1s ease}.keyboard-popup-close:hover{background:#ff64644d;border-color:#ff646480;color:#fff}.keyboard-popup-controls{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#19233299;border-bottom:1px solid rgba(80,100,130,.2)}.keyboard-popup-octave{display:flex;align-items:center;gap:8px}.keyboard-popup-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#323c50cc;border:1px solid rgba(100,120,150,.5);border-radius:6px;color:var(--text-primary);font-size:18px;font-weight:700;cursor:pointer;transition:all .1s ease}.keyboard-popup-btn:hover:not(:disabled){background:#465a78e6;border-color:var(--accent-cool)}.keyboard-popup-btn:disabled{opacity:.4;cursor:not-allowed}.keyboard-popup-octave-display{min-width:48px;text-align:center;font-size:14px;font-weight:600;color:var(--accent-mint);font-family:var(--font-mono)}.keyboard-popup-toggle{padding:8px 16px;background:#323c5099;border:1px solid rgba(100,120,150,.5);border-radius:6px;color:var(--text-secondary);font-size:12px;font-weight:600;cursor:pointer;transition:all .15s ease}.keyboard-popup-toggle:hover{background:#465a78cc;border-color:#8ca0be99}.keyboard-popup-toggle.active{background:#42e2b133;border-color:var(--accent-mint);color:var(--accent-mint)}.keyboard-popup-piano{padding:16px;background:#141c28cc}.keyboard-popup-piano .piano-keyboard{height:120px}.keyboard-popup-hint{padding:12px 16px;background:#19233299;border-top:1px solid rgba(80,100,130,.2)}.keyboard-popup-hint-row{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--text-tertiary);line-height:1.6}.keyboard-popup-hint-label{min-width:44px;font-weight:600;color:var(--accent-cool)}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[role=button]:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent-mint);outline-offset:2px}.rack input,.rack textarea,.rack select,.rack [contenteditable=true]{-webkit-user-select:text;user-select:text}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:0s;animation-iteration-count:1;transition-duration:0s}.jack.valid-target,.patch-cable.ghost,.mario-playing{animation:none}}@media(max-width:1200px){.modules{--rack-unit-x: 180px;--rack-unit-y: 110px}}@media(max-width:960px){.action-label{display:none}.workbench{grid-template-columns:1fr}.side-panel{position:fixed;top:0;right:0;bottom:0;width:min(320px,85vw);z-index:2500;background:linear-gradient(180deg,#14161c,#0d0e12);border-left:1px solid rgba(255,255,255,.1);box-shadow:-8px 0 32px #0009;padding:48px 16px 24px;overflow-y:auto;transform:translate(100%);transition:transform .25s ease}.side-panel.open{transform:translate(0)}.side-panel-fab{display:flex;align-items:center;justify-content:center;position:fixed;bottom:20px;right:20px;z-index:2000;width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.15);background:linear-gradient(135deg,#1c1c22,#0f0f14);color:#c8d7e6d9;box-shadow:0 4px 16px #00000080;cursor:pointer;-webkit-tap-highlight-color:transparent}.side-panel-close{display:block;position:absolute;top:10px;right:14px;background:none;border:none;color:#c8d7e6b3;font-size:1.6rem;cursor:pointer;line-height:1;padding:4px}.side-panel-backdrop{display:block;position:fixed;inset:0;z-index:2400;background:#00000080;-webkit-tap-highlight-color:transparent}.jack{width:22px;height:22px}.modules{--rack-unit-x: 170px;--rack-unit-y: 110px}}@media(max-width:720px){.app{gap:12px;padding:8px 10px 20px}.rack{padding:8px 10px;overflow-x:auto;-webkit-overflow-scrolling:touch}.modules{--rack-unit-x: 150px;--rack-unit-y: 100px;--rack-gap: 3px}.control-knob{gap:2px}.control-label{font-size:.6rem}}@media(max-width:520px){.app{gap:10px;padding:6px 6px 16px}.rack{padding:6px 8px}.actions{flex-wrap:wrap}.modules{--rack-unit-x: 130px;--rack-unit-y: 92px}}.context-menu{min-width:160px;padding:4px;background:var(--glass-3);border:1px solid var(--btn-inactive-border);border-radius:var(--btn-radius);box-shadow:0 8px 24px #00000080;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.context-menu-item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:8px 12px;border:none;border-radius:4px;background:transparent;color:var(--btn-inactive-text);font-size:11px;font-weight:500;text-align:left;cursor:pointer;transition:background .1s ease}.context-menu-item:hover:not(:disabled){background:var(--btn-hover-bg)}.context-menu-item:disabled{opacity:.4;cursor:not-allowed}.context-menu-item--danger{color:#ff6b6b}.context-menu-item--danger:hover:not(:disabled){background:#ff6b6b26}.context-menu-label{flex:1}.context-menu-shortcut{margin-left:16px;font-size:9px;opacity:.5}.meter-controls{grid-column:1 / -1;display:flex;flex-direction:column;gap:3px;padding:2px}.meter-display{display:flex;gap:2px;height:120px}.meter-ticks{position:relative;width:22px;font-size:7px;color:#555;flex-shrink:0}.meter-tick{position:absolute;right:3px;transform:translateY(50%);line-height:1;white-space:nowrap}.meter-tick-zero{color:#999;font-weight:700}.meter-bars{flex:1;display:flex;gap:3px;max-width:60px}.meter-channel{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px}.meter-bar-bg{flex:1;width:100%;min-height:0;background:#0a0a0a;border:1px solid #2a2a2a;border-radius:2px;position:relative;overflow:hidden}.meter-bar-segment{position:absolute;left:1px;right:1px;opacity:.9}.meter-zero-line{position:absolute;left:0;right:0;height:1px;background:#666;pointer-events:none}.meter-label{font-size:8px;color:#777;text-transform:uppercase;flex-shrink:0}.meter-readout{display:flex;justify-content:space-around;font-size:9px;font-family:monospace;color:#aaa;text-align:center}.meter-clip{color:#f44;font-weight:700}.theremin{--thm-purple: #b06bff;--thm-orange: #ff7a45;display:flex;flex-direction:column;gap:8px;width:100%;padding:4px}.theremin-presets{display:flex;align-items:center;gap:8px;align-self:flex-start;padding:3px 6px;border-radius:6px;background:linear-gradient(180deg,#b06bff2e,#b06bff0f);border:1px solid rgba(176,107,255,.35)}.thm-preset-btn{width:20px;height:18px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(176,107,255,.4);border-radius:4px;background:#b06bff1f;color:#e9d8ff;font-size:.6rem;cursor:pointer}.thm-preset-btn:hover{background:#b06bff4d}.thm-preset-name{min-width:64px;text-align:center;font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#e9d8ff}.theremin-body{display:flex;gap:12px;flex-wrap:wrap;align-items:stretch}.theremin-pad-wrap{flex:1 1 320px;min-width:280px;display:flex}.theremin-pad{position:relative;flex:1;min-height:172px;border-radius:8px;background:radial-gradient(120% 100% at 50% 0%,rgba(176,107,255,.1),transparent 60%),linear-gradient(180deg,#150b22,#0c0713);border:2px solid var(--thm-orange);box-shadow:0 0 18px #ff7a4540,inset 0 0 30px #00000080;cursor:crosshair;touch-action:none;overflow:hidden;-webkit-user-select:none;user-select:none}.theremin-pad.active{box-shadow:0 0 28px #ff7a4580,inset 0 0 30px #0006}.theremin-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.theremin-readout{position:absolute;top:10px;left:12px;pointer-events:none}.thm-note{font-size:1.6rem;font-weight:800;line-height:1;color:var(--thm-orange);text-shadow:0 0 12px rgba(255,122,69,.5)}.thm-hz{font-size:.7rem;font-family:var(--font-mono);color:#e9d8ffb3;margin-top:2px}.theremin-hint{position:absolute;right:14px;bottom:12px;text-align:right;font-size:.62rem;line-height:1.5;color:#e9d8ff66;pointer-events:none}.theremin-panels{display:flex;gap:8px;flex-wrap:wrap;align-content:flex-start}.thm-panel{display:flex;flex-direction:column;gap:7px;padding:8px 10px;border-radius:8px;background:#b06bff0d;border:1px solid rgba(176,107,255,.22)}.thm-panel-title{font-size:.6rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--thm-purple);text-align:center}.thm-wave-row{display:flex;gap:4px}.thm-wave-btn{flex:1;min-width:30px;padding:5px 4px;border-radius:5px;border:1px solid rgba(176,107,255,.25);background:#00000040;color:#e9d8ffb3;font-size:.55rem;font-weight:700;letter-spacing:.05em;cursor:pointer}.thm-wave-btn:hover{border-color:#b06bff80;color:#fff}.thm-wave-btn.active{border-color:var(--accent-mint);color:#04140d;background:var(--accent-mint);box-shadow:0 0 10px #42e2b166}.thm-scale-row{display:flex;gap:4px;align-items:center}.thm-scale-toggle{padding:4px 7px;border-radius:5px;border:1px solid rgba(176,107,255,.3);background:#00000040;color:#e9d8ffb3;font-size:.55rem;font-weight:700;letter-spacing:.05em;cursor:pointer}.thm-scale-toggle.active{border-color:var(--thm-orange);color:#1a0d06;background:var(--thm-orange)}.thm-select{flex:1;min-width:0;padding:3px 4px;border-radius:5px;border:1px solid rgba(176,107,255,.25);background:#0a0610e6;color:#e9d8ffe6;font-size:.55rem}.thm-select:disabled{opacity:.4}.thm-knob-row{display:flex;gap:8px;justify-content:center}:root{--cs-panel-hi: #2a2e36;--cs-panel-lo: #181b20;--cs-line: rgba(196, 216, 240, .13);--cs-engrave: #c9d4e2;--cs-engrave-dim: #7c8a9c;--cs-metal: #9fb8d0;--cs-led: #6fcdff;--cs-led-glow: rgba(111, 205, 255, .7);--cs-led-glass: #061018;--cs-rec: #e0492f;--font-engrave: "Big Shoulders Display", "Sora", sans-serif;--font-lcd: "Share Tech Mono", monospace}body{background:radial-gradient(1200px 500px at 50% -10%,rgba(110,175,255,.06),transparent 60%),linear-gradient(180deg,#15181d,#0a0c0f)}.app{height:100vh;overflow:hidden;display:grid;grid-template-rows:44px auto minmax(0,1fr) 96px;gap:0;padding:0}.brand-rail{display:flex;align-items:center;gap:18px;padding:0 22px;background:linear-gradient(180deg,var(--cs-panel-hi),var(--cs-panel-lo));border-bottom:1px solid #000;box-shadow:inset 0 1px #c4d8f01a}.brand-rail-name{font-family:var(--font-engrave);font-weight:700;font-size:20px;letter-spacing:.22em;color:var(--cs-engrave);text-shadow:0 1px 0 rgba(0,0,0,.9),0 -1px 0 rgba(225,240,255,.12)}.brand-rail-name em{font-style:normal;color:var(--cs-metal)}.brand-rail-sub{font-family:var(--font-engrave);font-size:11px;font-weight:500;letter-spacing:.3em;color:var(--cs-engrave-dim)}.brand-rail-status{display:flex;align-items:center;gap:8px;margin-left:6px;font-family:var(--font-lcd);font-size:10px;letter-spacing:.08em;color:var(--cs-engrave-dim);text-transform:uppercase}.brand-rail-statuslabel{color:var(--cs-engrave)}.brand-rail-right{margin-left:auto;display:flex;gap:20px;align-items:center}.rail-toggle{display:flex;align-items:center;gap:8px;font-family:var(--font-engrave);font-size:11px;font-weight:600;letter-spacing:.18em;color:var(--cs-engrave-dim)}.rail-switch{width:30px;height:14px;border-radius:7px;background:#07090c;border:1px solid #000;box-shadow:inset 0 2px 4px #000000e6;position:relative;cursor:pointer;padding:0}.rail-switch:after{content:"";position:absolute;top:1px;width:12px;height:10px;border-radius:5px;background:linear-gradient(180deg,#dfeaf5,#8ea7c0);left:15px;box-shadow:0 1px 2px #000c;transition:left .12s ease}.rail-switch.off:after{left:1px;background:linear-gradient(180deg,#5a6470,#343b45)}.rail-patch-actions{display:flex;gap:6px}.rail-btn{width:28px;height:24px;display:grid;place-items:center;border:1px solid #0a0c10;border-radius:4px;background:linear-gradient(180deg,#303641,#1f242c);color:var(--cs-engrave);cursor:pointer;box-shadow:0 2px 3px #0000008c,inset 0 1px #c4d8f01a}.rail-btn:hover{background:linear-gradient(180deg,#3a414e,#272d36)}.brand-rail-serial{font-family:var(--font-lcd);font-size:10px;color:var(--cs-engrave-dim);letter-spacing:.08em;max-width:260px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rack-tabs{background:transparent;border-bottom:none;padding:10px 22px 4px;min-height:0;gap:0;align-items:center}.rack-tabs-view-switch{border-right:none;padding-right:0;margin-right:18px;border:1px solid #0a0c10;border-radius:5px;overflow:hidden;box-shadow:0 2px 5px #0009,inset 0 1px #c4d8f01a}.rack-tabs-view-btn{font-family:var(--font-engrave);font-size:12px;font-weight:700;letter-spacing:.2em;padding:7px 16px 6px;text-transform:uppercase;color:var(--cs-engrave-dim);background:linear-gradient(180deg,#2a2e36,#181b20)}.rack-tabs-view-btn+.rack-tabs-view-btn{border-left:1px solid #0a0c10}.rack-tabs-view-btn.active{color:#0c1622;background:linear-gradient(180deg,#dfeaf5,#8ea7c0);box-shadow:inset 0 1px 1px #ebf5ff99}.rack-tabs-view-btn.active:after{display:none}.rack-tabs-view-btn:hover:not(.active){color:var(--cs-engrave)}.rack-tabs-list{gap:10px;align-items:center;padding-bottom:6px}.rack-tab{font-family:var(--font-lcd);font-size:11.5px;letter-spacing:.12em;color:#161a20;background:linear-gradient(180deg,#9aa7b7,#768495);border-radius:2px 6px 2px 2px;border-bottom:none;padding:6px 16px 5px;box-shadow:0 3px 5px #00000080;transform:rotate(-.6deg);opacity:.8;position:relative}.rack-tab:nth-child(2n){transform:rotate(.5deg)}.rack-tab:hover{color:#10141a;opacity:.95}.rack-tab.active{color:#10141a;opacity:1;background:linear-gradient(180deg,#d8e3f0,#aebdcf);border-bottom:none}.rack-tab.active:after{content:"";position:absolute;left:8px;right:8px;bottom:-5px;height:3px;background:var(--cs-led);border-radius:2px;box-shadow:0 0 8px var(--cs-led)}.rack-tab-close{color:#141a2073}.rack-tab-input{color:#10141a;border-bottom-color:#10141a99}.rack-tab-add{border:1px dashed var(--cs-engrave-dim);color:var(--cs-engrave-dim);background:none;border-radius:3px;padding:5px 10px}.rack-tab-add:hover{color:var(--cs-engrave);border-color:var(--cs-engrave);background:none}.workbench{grid-template-columns:280px minmax(0,1fr);gap:0;align-items:stretch;min-height:0;flex:none}.workbench>.side-panel{grid-column:1;grid-row:1}.workbench>.rack,.workbench>.mixer-console{grid-column:2;grid-row:1}.side-panel{min-height:0;overflow-y:auto;padding:12px 14px 16px;background:linear-gradient(90deg,#22262d,#171a1f 70%);border-right:2px solid #07090c;box-shadow:inset -8px 0 18px #0006}.rack{overflow-y:auto;min-height:0;margin:4px 18px 10px 16px}.mixer-console{min-height:0}.transport-console{display:flex;align-items:center;gap:24px;padding:0 26px;background:linear-gradient(180deg,#30353e,#1b1e24 18%,#14161b);border-top:2px solid #000;box-shadow:inset 0 2px #c4d8f024,inset 0 18px 30px #0006}.tc-section{display:flex;align-items:center;gap:12px}.tc-label{writing-mode:vertical-rl;transform:rotate(180deg);font-family:var(--font-engrave);font-size:9px;font-weight:600;letter-spacing:.3em;color:var(--cs-engrave-dim);border-left:1px solid var(--cs-line);padding-left:5px;height:56px;display:flex;align-items:center}.tc-play{width:56px;height:56px;border-radius:50%;background:radial-gradient(circle at 34% 28%,#dfeaf5,#8ea7c0 55%,#46586d);border:2px solid #050608;box-shadow:0 5px 12px #000000b3,inset 0 2px 2px #ebf5ffa6,0 0 18px #6fcdff40;display:grid;place-items:center;cursor:pointer}.tc-play.running{box-shadow:0 5px 12px #000000b3,inset 0 2px 2px #ebf5ffa6,0 0 26px #6fcdff8c}.tc-play:disabled{filter:grayscale(.6) brightness(.8);cursor:default}.tc-glyph-play{width:0;height:0;border-left:16px solid #0c1622;border-top:10px solid transparent;border-bottom:10px solid transparent;margin-left:4px}.tc-glyph-stop{width:15px;height:15px;background:#0c1622}.tc-small{width:38px;height:38px;border-radius:50%;background:radial-gradient(circle at 34% 28%,#3e4550,#11141a 70%);border:2px solid #050608;box-shadow:0 4px 8px #000000b3,inset 0 1px 1px #c4d8f033;display:grid;place-items:center;cursor:pointer;color:var(--cs-engrave-dim)}.tc-small:hover:not(:disabled){color:var(--cs-engrave)}.tc-small:disabled{opacity:.45;cursor:default}.tc-glyph-rec{width:12px;height:12px;border-radius:50%;background:var(--cs-rec);box-shadow:0 0 8px #e0492fb3}.tc-rec.recording{animation:tc-rec-pulse 1.2s ease-in-out infinite}@keyframes tc-rec-pulse{50%{box-shadow:0 4px 8px #000000b3,0 0 18px #e0492fe6}}.tc-lcd{background:var(--cs-led-glass);border:2px solid #04070c;border-radius:5px;box-shadow:inset 0 2px 8px #000000f2,0 1px #c4d8f01a;padding:5px 12px 4px;text-align:center;display:flex;flex-direction:column;align-items:center}.tc-lcd--small{padding:4px 10px 3px;min-width:66px}.tc-lcd-input{width:84px;background:transparent;border:none;outline:none;padding:0;font-family:var(--font-lcd);font-size:26px;line-height:1;color:var(--cs-led);text-shadow:0 0 10px var(--cs-led-glow);text-align:center;-moz-appearance:textfield;appearance:textfield}.tc-lcd-input::-webkit-outer-spin-button,.tc-lcd-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.tc-lcd-value{font-family:var(--font-lcd);font-size:17px;line-height:1.15;color:var(--cs-led);text-shadow:0 0 8px var(--cs-led-glow)}.tc-lcd-caption{font-family:var(--font-engrave);font-size:8px;font-weight:600;letter-spacing:.3em;color:#3e657f;margin-top:2px}.tc-vu-group{display:flex;gap:10px;align-items:center}.tc-vu{display:flex;gap:3px;align-items:flex-end;height:36px}.tc-vu i{width:6px;border-radius:1px;background:#1d2127;box-shadow:inset 0 1px 2px #000c}.tc-vu i:nth-child(1){height:10px}.tc-vu i:nth-child(2){height:14px}.tc-vu i:nth-child(3){height:17px}.tc-vu i:nth-child(4){height:21px}.tc-vu i:nth-child(5){height:25px}.tc-vu i:nth-child(6){height:28px}.tc-vu i:nth-child(7){height:32px}.tc-vu i:nth-child(8){height:36px}.tc-vu i.on{background:#76c043;box-shadow:0 0 6px #76c04399}.tc-vu i.on.warm{background:var(--cs-led);box-shadow:0 0 6px var(--cs-led-glow)}.tc-pill{font-family:var(--font-engrave);font-size:11px;font-weight:600;letter-spacing:.18em;padding:7px 13px 6px;border-radius:4px;background:linear-gradient(180deg,#303641,#1d2026);border:1px solid #0a0c10;color:var(--cs-engrave);box-shadow:0 2px 4px #0009,inset 0 1px #c4d8f01f;cursor:pointer}.tc-pill:hover:not(:disabled){background:linear-gradient(180deg,#3a414e,#252a32)}.tc-pill:disabled{opacity:.4;cursor:default}.tc-spacer{flex:1}.tc-rec-tally{font-family:var(--font-lcd);font-size:13px;letter-spacing:.2em;color:#ff6a52;text-shadow:0 0 10px rgba(224,73,47,.8);animation:tc-rec-pulse 1.2s ease-in-out infinite}@media(max-width:960px){.app{height:100dvh;grid-template-rows:40px auto minmax(0,1fr) 72px}.brand-rail{padding:0 12px;gap:10px}.brand-rail-sub,.brand-rail-serial,.rail-toggle span{display:none}.brand-rail-name{font-size:16px}.workbench{grid-template-columns:minmax(0,1fr)}.workbench>.rack,.workbench>.mixer-console{grid-column:1}.side-panel{position:fixed;top:0;right:0;bottom:0;width:min(320px,85vw);z-index:2500;background:linear-gradient(180deg,#1b1f25,#101216);border-left:1px solid rgba(196,216,240,.12);border-right:none;box-shadow:-8px 0 32px #0009;padding:48px 16px 24px;transform:translate(100%);transition:transform .22s ease}.side-panel.open{transform:translate(0)}.side-panel-fab{bottom:86px;right:14px}.rack{margin:4px 10px 8px}.rack-tabs{padding:8px 12px 4px}.rack-tabs-view-switch{margin-right:10px}.rack-tabs-view-btn{padding:6px 12px 5px;font-size:11px}.rack-header{margin-bottom:8px}.rack-title .panel-title{font-size:.85rem;letter-spacing:.12em;white-space:nowrap}.rack-meta{display:none}.transport-console{gap:12px;padding:0 12px;overflow-x:auto}.tc-label{display:none}.tc-section{gap:8px}.tc-play{width:46px;height:46px}.tc-glyph-play{border-left-width:13px;border-top-width:8px;border-bottom-width:8px}.tc-glyph-stop{width:13px;height:13px}.tc-small{width:34px;height:34px}.tc-lcd-input{width:64px;font-size:20px}.tc-lcd--small{min-width:54px;padding:3px 8px 2px}.tc-lcd-value{font-size:14px}.tc-vu{height:28px}.tc-vu i:nth-child(1){height:8px}.tc-vu i:nth-child(2){height:11px}.tc-vu i:nth-child(3){height:13px}.tc-vu i:nth-child(4){height:16px}.tc-vu i:nth-child(5){height:19px}.tc-vu i:nth-child(6){height:22px}.tc-vu i:nth-child(7){height:25px}.tc-vu i:nth-child(8){height:28px}.tc-pill{padding:6px 9px 5px;font-size:10px;letter-spacing:.12em}}@media(max-width:520px){.brand-rail-status{display:none}.transport-console{gap:9px}.tc-pill{padding:6px 7px 5px}}@media(pointer:coarse){.rotary-dial:after{content:"";position:absolute;inset:-10px;border-radius:50%}button,.ui-btn,.control-btn,.wave-button{touch-action:manipulation}.piano-keyboard{height:80px}.piano-keyboard--compact{height:64px}.keyboard-popup-piano .piano-keyboard{height:170px}.keyboard-popup-hint{display:none}.module-body .module-controls{overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}}@media(max-height:480px){.app{height:100dvh;grid-template-rows:32px auto minmax(0,1fr) 52px}.brand-rail{padding:0 10px;gap:8px}.brand-rail-name{font-size:14px}.brand-rail-sub,.brand-rail-serial,.brand-rail-status{display:none}.rack-tabs{padding:3px 12px 2px}.rack-tabs-view-btn{padding:4px 10px 3px;font-size:10px}.rack-header{display:none}.rack{margin:2px 10px 4px;padding:8px 12px}.transport-console{gap:10px;padding:0 10px;overflow-x:auto}.tc-label{display:none}.tc-section{gap:6px}.tc-play{width:36px;height:36px}.tc-glyph-play{border-left-width:11px;border-top-width:7px;border-bottom-width:7px}.tc-glyph-stop{width:11px;height:11px}.tc-small{width:28px;height:28px}.tc-lcd-input{width:54px;font-size:16px}.tc-lcd--small{min-width:48px;padding:2px 6px 1px}.tc-lcd-value{font-size:12px}.tc-vu{height:22px}.tc-pill{padding:4px 7px 3px;font-size:9px}.side-panel-fab{bottom:62px;right:10px}}.rail-io{position:relative;display:flex}.rail-btn--io{width:auto;padding:0 10px;font-family:var(--font-engrave);font-size:11px;font-weight:700;letter-spacing:.14em}.rail-btn--io.active{color:#0c1622;background:linear-gradient(180deg,#dfeaf5,#8ea7c0)}.io-popover{position:absolute;top:calc(100% + 12px);right:-6px;width:330px;max-width:calc(100vw - 24px);z-index:3000;background:linear-gradient(180deg,#262b33,#15181d);border:1px solid #0a0c10;border-radius:8px;box-shadow:0 18px 40px #000000b3,inset 0 1px #c4d8f01f;padding:14px 16px 12px}.io-popover:before{content:"";position:absolute;top:-6px;right:22px;width:10px;height:10px;transform:rotate(45deg);background:#262b33;border-left:1px solid #0a0c10;border-top:1px solid #0a0c10}.io-panel-title{display:flex;justify-content:space-between;align-items:baseline;font-family:var(--font-engrave);font-size:13px;font-weight:700;letter-spacing:.25em;color:var(--cs-metal);border-bottom:1px solid var(--cs-line);padding-bottom:8px;margin-bottom:10px}.io-panel-title span{font-size:9px;color:var(--cs-engrave-dim);letter-spacing:.2em}.io-row{display:flex;flex-direction:column;gap:4px;margin-bottom:9px}.io-row label{font-family:var(--font-engrave);font-size:9.5px;font-weight:600;letter-spacing:.22em;color:var(--cs-engrave-dim)}.io-select{width:100%;min-width:0;background:#101318;color:var(--cs-engrave);border:1px solid #0a0c10;border-radius:4px;padding:6px 8px;font-size:12px;font-family:inherit;text-overflow:ellipsis;box-shadow:inset 0 2px 5px #0009}.io-select:disabled{opacity:.5}.io-actions{display:flex;gap:8px;margin:4px 0 12px}.io-btn{font-family:var(--font-engrave);font-size:10.5px;font-weight:600;letter-spacing:.18em;padding:6px 11px 5px;border-radius:4px;background:linear-gradient(180deg,#303641,#1d2026);border:1px solid #0a0c10;color:var(--cs-engrave);box-shadow:0 2px 4px #0009,inset 0 1px #c4d8f01f;cursor:pointer}.io-btn:hover{background:linear-gradient(180deg,#3a414e,#252a32)}.io-status{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 14px;margin:0;font-size:11px}.io-status dt{font-family:var(--font-engrave);font-size:9.5px;font-weight:600;letter-spacing:.18em;color:var(--cs-engrave-dim);align-self:center}.io-status dd{margin:0;font-family:var(--font-lcd);font-size:10.5px;color:var(--cs-engrave);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.io-error{color:#ff8a76;font-size:11px;margin:4px 0}.io-hint{margin-top:10px;font-size:10.5px;line-height:1.4;color:var(--cs-engrave-dim)}@media(max-width:960px){.io-popover{position:fixed;top:46px;right:8px}.io-popover:before{display:none}}.mixer-console{padding:14px 24px 12px;background:none;overflow:auto}.mixer-strips{align-items:stretch;justify-content:center;gap:0;padding:0;flex:1;min-height:0;filter:drop-shadow(0 18px 30px rgba(0,0,0,.55))}.mixer-strips:before,.mixer-strips:after{content:"";width:34px;flex-shrink:0;background:repeating-linear-gradient(95deg,rgba(0,0,0,.22) 0 3px,transparent 3px 7px),linear-gradient(180deg,#4b341f,#2a1c10);border:1px solid #0a0502}.mixer-strips:before{border-radius:10px 0 0 10px}.mixer-strips:after{border-radius:0 10px 10px 0}.mixer-strip{width:178px;gap:10px;padding:12px 12px 14px;border-radius:0;border:none;border-right:2px solid #0b0d10;border-top:1px solid rgba(196,216,240,.12);background:linear-gradient(180deg,#262b33,#1b1f25);box-shadow:none;transition:none}.mixer-strip.active{background:linear-gradient(180deg,#2a3039,#1d2229);border-color:#0b0d10;border-top-color:#c4d8f01f}.mixer-strip.active:before{inset:0 0 auto;height:3px;border:none;border-radius:0;background:var(--cs-led);box-shadow:0 0 10px var(--cs-led)}.mixer-strip-master{width:202px;background:linear-gradient(180deg,#2c323c,#20252d);border-right:none}.mixer-strip-src{font-family:var(--font-lcd);font-size:10px;letter-spacing:.18em;color:var(--cs-engrave-dim);width:100%;text-align:center}.mixer-strip-body{flex:1;min-height:220px;height:auto}.mixer-fader-vertical{width:200px}.mixer-fader-master::-webkit-slider-thumb{background:linear-gradient(180deg,transparent 45%,#ffd2a4 45%,#ffd2a4 55%,transparent 55%),repeating-linear-gradient(180deg,rgba(255,255,255,.05) 0 1px,transparent 1px 4px),linear-gradient(90deg,#8c3b2a,#5e2317,#3a130b)}.mixer-strip-db{font-family:var(--font-lcd);font-size:11px;color:var(--cs-led);text-shadow:0 0 6px var(--cs-led-glow);background:var(--cs-led-glass);border:1px solid #04070c;border-radius:3px;padding:3px 4px 2px;box-shadow:inset 0 1px 4px #000000e6}.mixer-strip-scribble{width:100%;font-family:var(--font-lcd);font-size:11.5px;letter-spacing:.12em;color:#161a20;background:linear-gradient(180deg,#d8e3f0,#aebdcf);border:none;border-radius:2px;padding:5px 4px 4px;box-shadow:0 2px 4px #00000080;cursor:pointer;transform:rotate(-.4deg);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mixer-strip:nth-child(2n) .mixer-strip-scribble{transform:rotate(.5deg)}.mixer-strip-scribble:hover{background:linear-gradient(180deg,#e6eef8,#bccadb)}.mixer-strip-scribble-master{background:linear-gradient(180deg,#e8b08a,#c08458);font-weight:600;cursor:default;transform:rotate(.4deg);text-align:center}.mixer-strip-scribble-master:hover{background:linear-gradient(180deg,#e8b08a,#c08458)}.mixer-strip-controls{display:flex;width:100%;gap:8px}.mixer-btn{font-family:var(--font-engrave);font-size:10.5px;font-weight:700;letter-spacing:.16em;height:26px;border-radius:3px;border:1px solid #0a0c10;background:linear-gradient(180deg,#303641,#1d2026);color:var(--cs-engrave-dim);box-shadow:0 2px 4px #0009,inset 0 1px #c4d8f01f}.mixer-btn:hover{color:var(--cs-engrave)}.mixer-btn.mixer-solo.on{color:#2a1c05;background:linear-gradient(180deg,#ffc561,#c98f2e);border-color:#4d3208;box-shadow:0 0 12px #ffae4280,inset 0 1px 1px #fff0cd99}.mixer-btn.mixer-mute.on{color:#fff;background:linear-gradient(180deg,#e0654d,#a33621);border-color:#4d130b;box-shadow:0 0 12px #e0492f80,inset 0 1px 1px #ffdcd266}.channel-fx{border-top:1px solid var(--cs-line);padding-top:8px}.fx-section-toggle{font-family:var(--font-engrave);letter-spacing:.2em;font-size:10px}@media(max-width:960px){.mixer-strips{justify-content:flex-start;overflow-x:auto}.mixer-strips:before,.mixer-strips:after{display:none}.mixer-strip{width:156px}.mixer-strip-master{width:172px}}.mixer-strip-body{flex:1;min-height:0;align-items:center;justify-content:center}.vu-meter,.mixer-strip-fader{height:380px;max-height:100%;align-self:center}.mixer-fader-vertical{width:360px}.mixer-fader-vertical{right:-150px}.mixer-strip-body{flex:none;height:340px;min-height:0;align-items:center;justify-content:center}.vu-meter,.mixer-strip-fader{height:340px;max-height:none;align-self:center}.mixer-fader-vertical{width:320px;right:-130px}.channel-fx{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin}.mixer-strip-scribble{flex-shrink:0}.mixer-fader-scale{top:21px;bottom:21px;padding:0;justify-content:flex-start}.mixer-fader-scale span{position:absolute;right:0;transform:translateY(-50%);padding-right:9px}.channel-fx::-webkit-scrollbar{width:6px}.channel-fx::-webkit-scrollbar-track{background:#0000004d;border-radius:3px}.channel-fx::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#3a414e,#252a32);border-radius:3px;border:1px solid #0a0c10}.mixer-strip-controls--ghost{visibility:hidden;pointer-events:none}.mixer-strip-scribble{line-height:1.2}.lcd{--lcd-glow: var(--cat, var(--accent-mint));background:linear-gradient(180deg,rgba(255,255,255,.04),transparent 30%),repeating-linear-gradient(0deg,rgba(0,0,0,.22) 0 1px,transparent 1px 3px),radial-gradient(120% 130% at 50% 0%,#10171c,#0a0f13 70%);border:1px solid rgba(0,0,0,.9);border-radius:5px;box-shadow:inset 0 2px 8px #000c,inset 0 0 24px color-mix(in srgb,var(--lcd-glow) 7%,transparent),0 1px #ffffff0f;padding:6px 7px;min-width:0}.lcd-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px;font-family:var(--font-lcd);font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb,var(--lcd-glow) 75%,#fff);text-shadow:0 0 6px color-mix(in srgb,var(--lcd-glow) 55%,transparent);margin-bottom:5px;white-space:nowrap}.lcd-head .dim{color:var(--text-dim);text-shadow:none;overflow:hidden;text-overflow:ellipsis}.gol-panel{grid-column:1 / -1;display:flex;gap:8px;align-items:flex-start;min-width:0}.gol-canvas-col{flex:none}.gol-controls-col{flex:1;display:flex;flex-direction:column;gap:6px;min-width:0}.lcd-canvas{border:1px solid rgba(0,0,0,.9);border-radius:5px;background:radial-gradient(120% 130% at 50% 0%,#10171c,#0a0f13 70%);box-shadow:inset 0 2px 8px #000c,inset 0 0 24px color-mix(in srgb,var(--cat, var(--accent-warm)) 7%,transparent),0 1px #ffffff0f}.organ-panel{grid-column:1 / -1;display:flex;flex-direction:column;gap:6px;min-width:0}.organ-row{display:flex;gap:6px;align-items:stretch;min-width:0}.organ-row>.control-box{min-width:0}.organ-drawbars{display:flex;gap:4px;justify-content:space-around;padding:2px 2px 0}.organ-perc{display:flex;gap:6px;align-items:center;min-width:0}.organ-perc>.control-buttons{flex:1}.drawbar{display:grid;justify-items:center;gap:2px;flex:1;min-width:0}.drawbar-label{font-size:8px;font-weight:600;letter-spacing:.04em;color:var(--text-muted);white-space:nowrap}.drawbar-track{position:relative;width:15px;height:84px;border-radius:3px;background:#0000008c;border:1px solid rgba(0,0,0,.85);box-shadow:inset 0 1px 4px #000c;touch-action:none;cursor:ns-resize}.drawbar-track:focus-visible{outline:2px solid var(--lcd-glow, var(--cat));outline-offset:2px}.drawbar-track:before{content:"";position:absolute;inset:7px 3px;background:repeating-linear-gradient(0deg,rgba(255,255,255,.1) 0 1px,transparent 1px 12.5%);pointer-events:none}.drawbar-shaft{position:absolute;left:4px;right:4px;top:0;height:calc(var(--pull, 0) * (100% - 14px) + 7px);border-radius:0 0 2px 2px;background:linear-gradient(180deg,color-mix(in srgb,var(--lcd-glow, var(--cat)) 55%,#1a2027),color-mix(in srgb,var(--lcd-glow, var(--cat)) 30%,#10151a));box-shadow:0 0 4px color-mix(in srgb,var(--lcd-glow, var(--cat)) 25%,transparent);pointer-events:none}.drawbar-cap{position:absolute;left:1px;right:1px;top:calc(var(--pull, 0) * (100% - 14px));height:14px;border-radius:3px;background:linear-gradient(180deg,rgba(255,255,255,.35),transparent 40%),var(--drawbar-cap, #ddd6c6);border:1px solid rgba(0,0,0,.7);box-shadow:0 1px 2px #000c,inset 0 -1px 1px #00000059;pointer-events:none}.drawbar-value{font-family:var(--font-lcd);font-size:9px;line-height:1.1;color:color-mix(in srgb,var(--lcd-glow, var(--cat)) 80%,#fff);text-shadow:0 0 5px color-mix(in srgb,var(--lcd-glow, var(--cat)) 50%,transparent)}
