:root{--primitive-color-gray-0:#0d0f12;--primitive-color-gray-1:#0f1115;--primitive-color-gray-2:#12151a;--primitive-color-gray-3:#14171c;--primitive-color-gray-4:#161920;--primitive-color-gray-5:#1b1f27;--primitive-color-gray-6:#1d2129;--primitive-color-gray-7:#232831;--primitive-color-gray-8:#2a303b;--primitive-color-gray-9:#3a4150;--primitive-color-gray-10:#5b6474;--primitive-color-gray-11:#6c7584;--primitive-color-gray-12:#8a93a3;--primitive-color-gray-13:#c4cad4;--primitive-color-gray-14:#d8dde6;--primitive-color-gray-15:#e8ecf2;--primitive-color-white:#fff;--primitive-color-black:#000;--primitive-color-orange-500:#ff9f43;--primitive-color-orange-800:#6b4a1f;--primitive-color-cyan-500:#5ccfe6;--primitive-color-green-500:#3ecf8e;--primitive-color-red-500:#ff5c5c;--primitive-color-yellow-500:#ffc94d;--primitive-color-violet-500:#a98bff;--primitive-color-coral-500:#ff7a59;--primitive-color-lime-500:#c0e57a;--primitive-color-mint-500:#7bd88f;--primitive-color-pink-500:#ff6fb5;--primitive-color-sky-500:#9ad1ff;--primitive-color-amber-900:#3a3220;--primitive-color-forest-900:#213a2c;--primitive-color-plum-900:#2c2541;--primitive-color-teal-900:#203540;--primitive-color-wine-900:#3a2626;--primitive-color-navy-900:#23344a;--primitive-color-alpha-black-35:#00000059;--primitive-color-alpha-black-50:#00000080;--primitive-color-alpha-black-65:#000000a6;--primitive-color-alpha-white-08:#ffffff14;--primitive-color-alpha-white-35:#ffffff59;--primitive-color-alpha-white-55:#ffffff8c;--primitive-color-alpha-white-85:#ffffffd9;--primitive-color-alpha-scrim-70:#050608b3;--primitive-color-alpha-orange-12:#ff9f431f;--primitive-color-alpha-orange-15:#ff9f4326;--primitive-color-alpha-orange-35:#ff9f4359;--primitive-color-alpha-cyan-12:#5ccfe61f;--primitive-color-alpha-cyan-80:#5ccfe6cc;--primitive-color-alpha-yellow-08:#ffc94d14;--primitive-color-alpha-red-08:#ff5c5c14;--primitive-color-alpha-red-40:#ff5c5c66;--primitive-space-1:1px;--primitive-space-2:2px;--primitive-space-3:3px;--primitive-space-4:4px;--primitive-space-5:5px;--primitive-space-6:6px;--primitive-space-7:8px;--primitive-space-8:10px;--primitive-space-9:12px;--primitive-space-10:14px;--primitive-space-11:16px;--primitive-space-12:28px;--primitive-space-13:40px;--primitive-radius-2:2px;--primitive-radius-4:4px;--primitive-radius-6:6px;--primitive-radius-8:8px;--primitive-radius-10:10px;--primitive-radius-full:50%;--primitive-font-size-9:9px;--primitive-font-size-10:10px;--primitive-font-size-11:11px;--primitive-font-size-12:12px;--primitive-font-size-14:14px;--primitive-font-size-16:16px;--primitive-font-weight-regular:400;--primitive-font-weight-semibold:600;--primitive-font-weight-bold:700;--primitive-font-family-system:system-ui, -apple-system, "Segoe UI", sans-serif;--primitive-font-family-monaspace:"Monaspace Neon", "Monaspace Neon NF", ui-monospace, "JetBrains Mono", monospace;--primitive-duration-fast:.12s;--primitive-duration-base:.2s;--primitive-duration-blink:.5s;--color-bg-inset:var(--primitive-color-gray-0);--color-bg-app:var(--primitive-color-gray-1);--color-bg-well:var(--primitive-color-gray-2);--color-bg-canvas:var(--primitive-color-gray-3);--color-bg-surface:var(--primitive-color-gray-4);--color-bg-menu:var(--primitive-color-gray-5);--color-bg-hover:var(--primitive-color-gray-5);--color-bg-control:var(--primitive-color-gray-6);--color-bg-control-hover:var(--primitive-color-gray-7);--color-bg-selected:var(--primitive-color-gray-7);--color-bg-menu-hover:var(--primitive-color-gray-8);--color-border-subtle:var(--primitive-color-gray-6);--color-border-default:var(--primitive-color-gray-8);--color-border-strong:var(--primitive-color-gray-9);--color-text-primary:var(--primitive-color-gray-14);--color-text-strong:var(--primitive-color-gray-15);--color-text-soft:var(--primitive-color-gray-13);--color-text-secondary:var(--primitive-color-gray-12);--color-text-tertiary:var(--primitive-color-gray-11);--color-text-muted:var(--primitive-color-gray-10);--color-text-on-accent:var(--primitive-color-gray-0);--color-text-on-danger:var(--primitive-color-white);--color-accent-primary:var(--primitive-color-orange-500);--color-accent-secondary:var(--primitive-color-cyan-500);--color-accent-muted:var(--primitive-color-orange-800);--color-accent-subtle:var(--primitive-color-alpha-orange-12);--color-status-danger:var(--primitive-color-red-500);--color-status-danger-bg:var(--primitive-color-alpha-red-08);--color-status-danger-border:var(--primitive-color-alpha-red-40);--color-status-ok:var(--primitive-color-green-500);--color-status-warning:var(--primitive-color-yellow-500);--color-overlay-scrim:var(--primitive-color-alpha-scrim-70);--color-overlay-dim:var(--primitive-color-alpha-black-50);--color-overlay-dim-light:var(--primitive-color-alpha-black-35);--color-overlay-dim-strong:var(--primitive-color-alpha-black-65);--color-overlay-highlight:var(--primitive-color-alpha-white-08);--color-overlay-outline:var(--primitive-color-alpha-white-35);--color-overlay-outline-strong:var(--primitive-color-alpha-white-55);--color-meter-low:var(--primitive-color-green-500);--color-meter-mid:var(--primitive-color-yellow-500);--color-meter-high:var(--primitive-color-red-500);--color-marker-start:var(--primitive-color-green-500);--color-marker-end:var(--primitive-color-red-500);--color-marker-loop:var(--primitive-color-yellow-500);--color-marker-loop-fill:var(--primitive-color-alpha-yellow-08);--color-marker-fade:var(--primitive-color-violet-500);--color-canvas-header:var(--primitive-color-gray-1);--color-canvas-row-a:var(--primitive-color-gray-4);--color-canvas-row-b:var(--primitive-color-gray-5);--color-canvas-separator:var(--primitive-color-gray-6);--color-canvas-grid-minor:var(--primitive-color-gray-7);--color-canvas-grid-beat:var(--primitive-color-gray-8);--color-canvas-grid-bar:var(--primitive-color-gray-9);--color-canvas-step:var(--primitive-color-gray-6);--color-canvas-step-off:var(--primitive-color-gray-4);--color-canvas-step-playing:var(--primitive-color-gray-8);--color-canvas-key-white:var(--primitive-color-gray-13);--color-canvas-key-black:var(--primitive-color-gray-8);--color-canvas-key-white-label:var(--primitive-color-gray-8);--color-canvas-key-black-label:var(--primitive-color-gray-13);--color-canvas-scale-white:var(--primitive-color-gray-7);--color-canvas-scale-black:var(--primitive-color-gray-6);--color-canvas-outside-white:var(--primitive-color-gray-5);--color-canvas-outside-black:var(--primitive-color-gray-4);--color-canvas-label:var(--primitive-color-gray-12);--color-canvas-label-dim:var(--primitive-color-gray-11);--color-canvas-label-faint:var(--primitive-color-gray-10);--color-canvas-clip-label:var(--primitive-color-gray-15);--color-canvas-disabled:var(--primitive-color-gray-11);--color-canvas-selection-fill:var(--primitive-color-alpha-cyan-12);--color-canvas-selection-stroke:var(--primitive-color-alpha-cyan-80);--color-canvas-region-pattern:var(--primitive-color-alpha-orange-15);--color-canvas-region-song:var(--primitive-color-alpha-orange-35);--color-canvas-highlight:var(--primitive-color-white);--color-canvas-overlay-soft:var(--primitive-color-alpha-white-35);--color-canvas-overlay-mid:var(--primitive-color-alpha-white-55);--color-canvas-overlay-strong:var(--primitive-color-alpha-white-85);--color-canvas-playhead:var(--primitive-color-orange-500);--color-canvas-waveform:var(--primitive-color-cyan-500);--color-node-head:var(--primitive-color-gray-8);--color-node-cat-io:var(--primitive-color-amber-900);--color-node-cat-sources:var(--primitive-color-forest-900);--color-node-cat-modulation:var(--primitive-color-plum-900);--color-node-cat-filters:var(--primitive-color-teal-900);--color-node-cat-shape:var(--primitive-color-wine-900);--color-node-cat-effects:var(--primitive-color-navy-900);--color-node-port:var(--primitive-color-gray-10);--color-track-default-1:var(--primitive-color-coral-500);--color-track-default-2:var(--primitive-color-yellow-500);--color-track-default-3:var(--primitive-color-mint-500);--color-track-default-4:var(--primitive-color-cyan-500);--color-track-default-5:var(--primitive-color-violet-500);--color-track-default-6:var(--primitive-color-pink-500);--color-track-default-7:var(--primitive-color-sky-500);--color-track-default-8:var(--primitive-color-lime-500);--space-1:var(--primitive-space-1);--space-2:var(--primitive-space-2);--space-3:var(--primitive-space-3);--space-4:var(--primitive-space-4);--space-5:var(--primitive-space-5);--space-6:var(--primitive-space-6);--space-7:var(--primitive-space-7);--space-8:var(--primitive-space-8);--space-9:var(--primitive-space-9);--space-10:var(--primitive-space-10);--space-11:var(--primitive-space-11);--space-12:var(--primitive-space-12);--space-13:var(--primitive-space-13);--radius-xs:var(--primitive-radius-2);--radius-sm:var(--primitive-radius-4);--radius-md:var(--primitive-radius-6);--radius-lg:var(--primitive-radius-8);--radius-xl:var(--primitive-radius-10);--radius-round:var(--primitive-radius-full);--size-control-sm:20px;--size-control-compact:22px;--size-control-md:26px;--size-control-lg:28px;--size-control-xl:44px;--size-icon:18px;--size-knob-sm:30px;--size-knob-md:34px;--size-meter-thin:7px;--size-meter-strip:14px;--size-meter-master:18px;--size-dot-sm:7px;--size-dot-md:10px;--size-dot-lg:12px;--size-node-head:26px;--size-toolbar:40px;--size-field-num:52px;--size-slider-sm:90px;--size-popover-sm:260px;--size-trigger-max:240px;--size-palette:184px;--size-list-item-sm:24px;--size-readout:40px;--size-canvas-grid:24px;--size-field-name:96px;--size-song-label:150px;--size-song-browser:220px;--size-song-drop-gap:6px;--size-song-drop-h:26px;--size-chip-sm:16px;--size-icon-wave:10px;--size-wave-overview:20px;--size-wave-ruler:16px;--size-wave-flag:14px;--font-family-ui:var(--primitive-font-family-system);--font-family-mono:var(--primitive-font-family-monaspace);--font-size-xs:var(--primitive-font-size-9);--font-size-sm:var(--primitive-font-size-10);--font-size-md:var(--primitive-font-size-11);--font-size-base:var(--primitive-font-size-12);--font-size-lg:var(--primitive-font-size-14);--font-size-xl:var(--primitive-font-size-16);--font-weight-regular:var(--primitive-font-weight-regular);--font-weight-semibold:var(--primitive-font-weight-semibold);--font-weight-bold:var(--primitive-font-weight-bold);--font-line-height-base:1.3;--shadow-popover:0px 8px 24px 0px var(--primitive-color-alpha-black-50);--shadow-node:0px 6px 18px 0px var(--primitive-color-alpha-black-35);--shadow-glow-ok:0px 0px 6px 0px var(--primitive-color-green-500);--z-raised:2;--z-popover:20;--z-busy:30;--z-dropdown:40;--z-modal:50;--z-context-backdrop:100;--z-context:101;--z-menu:200;--motion-duration-fast:var(--primitive-duration-fast);--motion-duration-base:var(--primitive-duration-base);--motion-duration-blink:var(--primitive-duration-blink);--lightningcss-light: ;--lightningcss-dark:initial;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--color-bg-app);color:var(--color-text-primary);font:var(--font-size-base)/var(--font-line-height-base) var(--font-family-ui);-webkit-user-select:none;user-select:none;overflow:hidden}.num{font-family:var(--font-family-mono);font-variant-numeric:tabular-nums}button,select,input{font:inherit;color:var(--color-text-primary);background:var(--color-bg-control);border:1px solid var(--color-border-default);border-radius:var(--radius-md);padding:var(--space-3) var(--space-7);height:var(--size-control-md)}button{cursor:pointer}button:hover:not(:disabled){border-color:var(--color-border-strong);background:var(--color-bg-control-hover)}button:disabled{opacity:.4;cursor:default}button.on{background:var(--color-accent-primary);color:var(--color-text-on-accent);border-color:var(--color-accent-primary)}button.ghost{background:0 0;border-color:#0000}button.ghost:hover:not(:disabled){border-color:var(--color-border-default)}button.sm{height:var(--size-control-sm);padding:0 var(--space-5)}input[type=number]{width:58px;font-family:var(--font-family-mono)}input[type=range]{height:auto;accent-color:var(--color-accent-primary);background:0 0;border:none;padding:0}select{padding:var(--space-2) var(--space-4)}.spacer{flex:1}.empty{padding:var(--space-13);color:var(--color-text-secondary);text-align:center}.app{grid-template-columns:236px 1fr;grid-template-rows:var(--size-control-xl) auto 1fr 170px var(--size-control-compact);grid-template-areas:"h h""b b""t m""f f""s s";height:100%;display:grid}.header{align-items:center;gap:var(--space-6);padding:0 var(--space-8);background:var(--color-bg-surface);border-bottom:1px solid var(--color-border-default);grid-area:h;min-width:0;display:flex;position:relative}.brand{font-weight:var(--font-weight-bold);letter-spacing:.02em;color:var(--color-accent-primary);margin-right:var(--space-2);white-space:nowrap}.proj-name{flex:0 140px;width:140px}.hsep{width:1px;margin:var(--space-7) var(--space-2);background:var(--color-border-default);flex:none;align-self:stretch}.transport{gap:var(--space-4);align-items:center;display:flex}.header .field{white-space:nowrap;gap:var(--space-4)}.header input[type=number]{width:64px}.header input[type=range]{width:100px}.header .seg button{height:var(--size-control-lg)}.play{width:38px;font-size:var(--font-size-lg)}.play.on{background:var(--color-status-ok);border-color:var(--color-status-ok)}.pos{min-width:64px;padding:var(--space-3) var(--space-6);text-align:center;font-size:var(--font-size-lg);color:var(--color-accent-primary);background:var(--color-bg-inset);border-radius:var(--radius-md)}.busy{background:var(--color-accent-primary);color:var(--color-text-on-accent);padding:var(--space-4) var(--space-8);border-radius:0 0 var(--radius-md) var(--radius-md);z-index:var(--z-busy);position:absolute;top:100%;right:10px}.tracks{background:var(--color-bg-surface);border-right:1px solid var(--color-border-default);flex-direction:column;grid-area:t;display:flex;overflow-y:auto}.tracks-head{padding:var(--space-5) var(--space-6) var(--space-5) var(--space-8);color:var(--color-text-secondary);text-transform:uppercase;font-size:var(--font-size-sm);letter-spacing:.1em;justify-content:space-between;align-items:center;display:flex}.track-list{flex:none}.track{align-items:center;gap:var(--space-5);height:var(--size-control-xl);padding:0 var(--space-6) 0 0;border-bottom:1px solid var(--color-border-subtle);cursor:pointer;display:flex}.track:hover{background:var(--color-bg-hover)}.track.sel{background:var(--color-bg-selected)}.track.sel .track-name{font-weight:var(--font-weight-semibold)}.track-color{background:var(--tc);align-self:stretch;width:3px}.track-main{gap:var(--space-3);min-width:0;padding-left:var(--space-3);flex-direction:column;flex:1;display:flex}.track-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.track-name .kind{color:var(--tc)}.track-btns{gap:var(--space-2);align-items:center;display:flex}.track-btns .kit-btn.compact{min-width:var(--size-control-compact)}.track-preset{padding:var(--space-8);gap:var(--space-5);border-top:1px solid var(--color-border-default);margin-top:var(--space-6);flex-direction:column;display:flex}.track-preset select{width:100%}.track-browse{align-self:flex-start}.section-label{color:var(--color-text-secondary);text-transform:uppercase;font-size:var(--font-size-sm);letter-spacing:.1em;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.meter-h{height:var(--size-meter-thin);width:100%;display:block}.main{flex-direction:column;grid-area:m;min-width:0;min-height:0;display:flex}.tabs{gap:var(--space-2);padding:var(--space-6) var(--space-7) 0;background:var(--color-bg-surface);border-bottom:1px solid var(--color-border-default);display:flex}.tabs button{border-radius:var(--radius-md) var(--radius-md) 0 0;height:var(--size-control-lg);padding:0 var(--space-10);border-bottom:none}.tabs button.on{background:var(--color-bg-app);color:var(--color-text-primary);border-color:var(--color-border-default)}.tab-body{flex-direction:column;flex:1;min-height:0;display:flex}.toolbar{align-items:center;gap:var(--space-6);padding:var(--space-6) var(--space-7);background:var(--color-bg-surface);border-bottom:1px solid var(--color-border-default);flex-wrap:wrap;display:flex}.pattern-tab,.synth-tab{flex-direction:column;flex:1;min-height:0;display:flex}.roll{touch-action:none;flex:1;width:100%;min-height:0;display:block}button.sm.on{color:var(--color-accent-primary);border-color:var(--color-accent-primary)}.song{flex-direction:column;flex:1;min-height:0;padding:0;display:flex;overflow:hidden}.song-canvas{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;display:block}.pad-tabs{gap:var(--space-4);padding:var(--space-6) var(--space-7);background:var(--color-bg-surface);border-bottom:1px solid var(--color-border-default);flex-wrap:wrap;display:flex}.node-editor{flex-direction:column;flex:1;min-height:0;display:flex}.ne-body{flex:1;min-height:0;display:flex}.ne-canvas{touch-action:none;cursor:grab;background-color:var(--color-bg-canvas);background-image:radial-gradient(var(--color-canvas-grid-minor) 1px, transparent 1px);background-size:var(--size-canvas-grid) var(--size-canvas-grid);flex:1;position:relative;overflow:hidden}.ne-world{transform-origin:0 0;position:absolute;top:0;left:0}.ne-cables{pointer-events:none;position:absolute;top:0;left:0;overflow:visible}.cable{fill:none;stroke:var(--cable,var(--color-accent-primary));stroke-width:2.5px;opacity:.85;pointer-events:stroke;cursor:pointer}.cable.hover{stroke:var(--color-status-danger-border);stroke-width:4px;opacity:1}.cable.dragging{stroke-dasharray:6 4;pointer-events:none;opacity:1;stroke:var(--color-accent-secondary)}.cable-tip{pointer-events:none;z-index:var(--z-raised);padding:var(--space-1) var(--space-4);border-radius:var(--radius-sm);background:var(--color-bg-menu);border:1px solid var(--color-border-strong);color:var(--color-text-primary);font-size:var(--font-size-sm);white-space:nowrap;position:absolute}.ne-zoom{right:var(--space-8);bottom:var(--space-8);align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-md);cursor:default;z-index:var(--z-raised);display:flex;position:absolute}.ne-zoom-val{min-width:var(--size-readout);text-align:center;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.node{background:var(--color-bg-control);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-node);cursor:default;position:absolute}.node.selected{border-color:var(--color-accent-primary);box-shadow:0 0 0 1px var(--color-accent-primary), var(--shadow-node)}.node-head{height:var(--size-node-head);padding:0 var(--space-4) 0 var(--space-7);font-weight:var(--font-weight-semibold);border-radius:var(--radius-md) var(--radius-md) 0 0;cursor:grab;background:var(--color-node-head);justify-content:space-between;align-items:center;display:flex}.node.cat-io .node-head{background:var(--color-node-cat-io)}.node.cat-zrodla .node-head{background:var(--color-node-cat-sources)}.node.cat-modulacja .node-head{background:var(--color-node-cat-modulation)}.node.cat-filtry .node-head{background:var(--color-node-cat-filters)}.node.cat-ksztalt .node-head{background:var(--color-node-cat-shape)}.node.cat-efekty .node-head{background:var(--color-node-cat-effects)}.node-x{height:var(--size-icon);width:var(--size-icon);color:var(--color-text-secondary);background:0 0;border:none;padding:0}.node-ports{margin-top:var(--space-6);position:relative}.port{height:var(--size-icon);align-items:center;gap:var(--space-5);font-size:var(--font-size-md);color:var(--color-text-secondary);display:flex;position:absolute}.port.in{left:0}.port.out{right:0}.port .dot{width:var(--size-dot-lg);height:var(--size-dot-lg);border-radius:var(--radius-round);background:var(--color-bg-well);border:2px solid var(--color-node-port);cursor:crosshair;flex:none}.port.in .dot{margin-left:-7px}.port.out .dot{margin-right:-7px}.port .dot.on{background:var(--cable,var(--color-accent-primary));border-color:var(--cable,var(--color-accent-primary))}.port .dot:hover{border-color:var(--color-accent-secondary)}.pdef{font-size:var(--font-size-xs);color:var(--color-text-muted);font-family:var(--font-family-mono)}.node-params{gap:var(--space-6) var(--space-4);padding:var(--space-7) var(--space-6) var(--space-7);border-top:1px solid var(--color-border-default);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.pselect{font-size:var(--font-size-xs);color:var(--color-text-secondary);gap:var(--space-2);flex-direction:column;width:88px;display:flex}.pselect.wide{width:180px}.pselect select{height:var(--size-control-compact);font-size:var(--font-size-md)}.ptoggle{height:var(--size-control-compact);font-size:var(--font-size-sm);padding:0 var(--space-6);align-self:center}.palette{width:var(--size-palette);background:var(--color-bg-surface);border-left:1px solid var(--color-border-default);padding:var(--space-6);gap:var(--space-4);flex-direction:column;flex:none;display:flex;overflow-y:auto}.pal-search{box-sizing:border-box;width:100%;height:var(--size-control-compact);font-size:var(--font-size-md)}.pal-cat{align-items:center;gap:var(--space-4);width:100%;height:var(--size-icon);margin:var(--space-4) 0 var(--space-2);padding:0 var(--space-2);text-align:left;font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-secondary);background:0 0;border:none;display:flex}.pal-cat-name{flex:1}.pal-count{font-size:var(--font-size-xs);color:var(--color-text-muted);letter-spacing:0}.pal-sw{width:var(--size-dot-md);height:var(--size-dot-md);border-radius:var(--radius-xs);background:var(--color-node-head);flex:none}.pal-sw.cat-io{background:var(--color-node-cat-io)}.pal-sw.cat-zrodla{background:var(--color-node-cat-sources)}.pal-sw.cat-modulacja{background:var(--color-node-cat-modulation)}.pal-sw.cat-filtry{background:var(--color-node-cat-filters)}.pal-sw.cat-ksztalt{background:var(--color-node-cat-shape)}.pal-sw.cat-efekty{background:var(--color-node-cat-effects)}.list-item.pal-item{height:var(--size-list-item-sm);box-sizing:border-box;padding:0 var(--space-6);border-radius:var(--radius-sm);border-bottom:none;align-items:center;display:flex}.mixer-view{flex-direction:column;flex:1;min-height:0;display:flex}.mixer-bar{align-items:center;gap:var(--space-6);height:var(--size-toolbar);box-sizing:border-box;padding:0 var(--space-8);border-bottom:1px solid var(--color-border-default);background:var(--color-bg-surface);flex:none;min-width:0;display:flex;overflow:hidden}.mixer-bar .sep,.mixer .mixer-sep{background:var(--color-border-default);flex:none;align-self:stretch;width:1px}.mixer-bar .sep{height:var(--size-icon);align-self:center}.mixer-bar .spacer,.mixer .spacer{flex:1}.mixer-info{color:var(--color-text-secondary);font-size:var(--font-size-sm);white-space:nowrap}.mixer{gap:var(--space-6);min-height:0;padding:var(--space-8);flex:1;display:flex;overflow-x:auto}.strip{box-sizing:border-box;background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-top:3px solid var(--tc,var(--color-text-secondary));border-radius:var(--radius-md);width:108px;padding:var(--space-6);align-items:center;gap:var(--space-6);flex-direction:column;flex:none;display:flex}.strip.special{--tc:var(--color-accent-secondary)}.strip.master{--tc:var(--color-accent-primary)}.strip.sel{background:var(--color-bg-selected);border-color:var(--color-accent-primary);border-top-color:var(--tc)}.strip.dim>:not(.ms){opacity:.5}.strip-name{max-width:100%;font-weight:var(--font-weight-semibold);white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}button.strip-name{height:var(--size-control-compact)}.strip-name.static{text-align:center;line-height:var(--size-control-compact)}.strip-fx{width:100%;font-size:var(--font-size-sm);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.strip-note{font-size:var(--font-size-sm);color:var(--color-text-secondary);text-align:center}.strip-knobs{gap:var(--space-2);justify-content:center;display:flex}.strip-fader{flex:1;align-items:stretch;width:100%;min-height:160px;display:flex}.fader{align-items:center;gap:var(--space-4);flex-direction:column;flex:1;min-width:0;display:flex}.fader-body{gap:var(--space-3);flex:1;justify-content:center;align-items:stretch;min-height:0;display:flex}.fader-range{writing-mode:vertical-lr;width:var(--size-icon);border-radius:var(--radius-sm);direction:rtl;margin:0}.fader-range:hover:not(:focus-visible){outline:1px solid var(--color-border-strong);outline-offset:var(--space-2)}.fader-range:focus-visible{outline:2px solid var(--color-accent-secondary);outline-offset:var(--space-2)}body.midi-learn .fader[data-learn] .fader-range{outline:1px dashed var(--color-accent-secondary);outline-offset:var(--space-2)}body.midi-learn .fader[data-learn].learn-sel .fader-range{outline:2px solid var(--color-accent-primary)}.db-scale{width:var(--size-icon);margin-block:var(--space-7);color:var(--color-text-secondary);font-size:var(--font-size-xs);position:relative}.db-scale span{white-space:nowrap;line-height:1;position:absolute;right:0;transform:translateY(50%)}.meter-col{flex-direction:column;align-items:stretch;display:flex;position:relative}.meter-col .meter{height:0;margin-block:var(--space-7);width:var(--size-meter-strip);flex:1;display:block}.strip.master .meter-col .meter{width:var(--size-meter-master)}button.clip-led{height:var(--space-4);border-radius:var(--radius-xs);background:var(--color-bg-control);border-color:var(--color-border-default);min-height:0;padding:0;position:absolute;top:0;left:0;right:0}button.clip-led.clipped,button.clip-led.clipped:hover:not(:disabled){background:var(--color-status-danger);border-color:var(--color-status-danger)}.fader-val{align-items:center;gap:var(--space-3);display:flex}.fader-val input[type=number]{width:var(--size-field-num);text-align:right;font-size:var(--font-size-sm)}.fader-unit{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.ms{gap:var(--space-4);width:100%;display:flex}.ms button{flex:1}.ms button.mute.on{background:var(--color-status-warning);border-color:var(--color-status-warning);color:var(--color-text-on-accent)}.ms button.solo.on{background:var(--color-accent-secondary);border-color:var(--color-accent-secondary);color:var(--color-text-on-accent)}.footer{background:var(--color-bg-surface);border-top:1px solid var(--color-border-default);grid-area:f;grid-template-rows:minmax(0,1fr);grid-template-columns:1fr 340px 44px;min-height:0;display:grid;overflow:hidden}.spectro{min-width:0;min-height:0;position:relative;overflow:hidden}.spectro canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.spectro-axis{pointer-events:none;position:absolute;top:0;bottom:0;left:4px}.spectro-axis span{font:var(--font-size-xs) var(--font-family-mono);color:var(--color-overlay-outline-strong);position:absolute;transform:translateY(50%)}.viz-err{color:var(--color-text-secondary);place-items:center;display:grid;position:absolute;inset:0}.scope{border-left:1px solid var(--color-border-default);width:100%;height:100%;min-height:0;display:block}.master-meter{min-height:0;padding:var(--space-6) var(--space-4);align-items:center;gap:var(--space-4);border-left:1px solid var(--color-border-default);font-size:var(--font-size-xs);color:var(--color-text-secondary);flex-direction:column;display:flex}.master-meter .meter{width:var(--size-meter-master);flex:1;display:block}.statusbar{align-items:center;gap:var(--space-8);padding:0 var(--space-8);background:var(--color-bg-surface);border-top:1px solid var(--color-border-default);color:var(--color-text-secondary);font-size:var(--font-size-sm);white-space:nowrap;grid-area:s;min-width:0;display:flex}.statusbar .shortcuts{text-overflow:ellipsis;flex:0 auto;min-width:0;overflow:hidden}.statusbar .status{text-overflow:ellipsis;min-width:0;color:var(--color-text-primary);flex:1;overflow:hidden}.statusbar .status:empty{flex:1}.start-overlay .modal-bg{background:0 0}.modal.start-box{width:min(520px,92vw)}.start-box h1{margin:0 0 var(--space-6);color:var(--color-accent-primary);font-size:var(--font-size-xl)}.start-msg{margin:0 0 var(--space-8);color:var(--color-text-primary)}.start-actions{padding-top:var(--space-8);border-top:1px solid var(--color-border-default);margin-top:var(--space-8);justify-content:flex-end;display:flex}.start-actions .kit-btn{height:var(--size-control-lg);padding:0 var(--space-10)}@media (max-width:900px){.app{grid-template-columns:1fr;grid-template-rows:var(--size-control-xl) auto auto 1fr 140px var(--size-control-compact);grid-template-areas:"h""b""t""m""f""s"}.tracks{max-height:160px}.footer{grid-template-columns:1fr 44px}.scope{display:none}}.start-err{color:var(--color-status-danger);background:var(--color-status-danger-bg);border:1px solid var(--color-status-danger-border);border-radius:var(--radius-md);padding:var(--space-7) var(--space-8);text-align:left;white-space:pre-wrap;-webkit-user-select:text;user-select:text}.sc-picker{gap:var(--space-3);width:100%;font-size:var(--font-size-sm);align-items:center;display:flex}.sc-picker select{min-width:0;font-size:var(--font-size-sm);height:var(--size-control-compact);flex:1}.sc-picker .sc-label{color:var(--color-text-secondary)}.node .sc-picker{padding:var(--space-4) var(--space-6) var(--space-6)}.sc-picker.compact{flex-wrap:wrap}.sc-picker.compact .sc-src{flex:1}.sc-picker.compact .sc-tap{flex-basis:100%}.arp-panel{align-items:center;gap:var(--space-6);white-space:nowrap;display:inline-flex}.arp-panel input[type=number]{width:44px}.arp-panel input[type=range]{width:70px}.warn{color:var(--color-status-warning);font-size:var(--font-size-base)}.pm-backdrop{z-index:var(--z-context-backdrop);position:fixed;inset:0}.param-menu{min-width:200px;z-index:var(--z-context);position:fixed}.pm-row{position:relative}.param-menu.pm-sub{position:absolute;top:-4px;left:100%}.auto-lane-wrap{border-top:1px solid var(--color-border-default);flex:none;height:96px;position:relative}.auto-lane{touch-action:none;width:100%;height:100%;display:block}.lane-menu{z-index:var(--z-popover);position:absolute}.macro-panel{gap:var(--space-4);padding:var(--space-5) var(--space-8);background:var(--color-bg-surface);border-bottom:1px solid var(--color-border-default);flex-direction:column;flex:none;min-width:0;display:flex}.macro-row{align-items:center;gap:var(--space-6);flex-wrap:wrap;min-width:0;display:flex}.macro-panel .macro{padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);border:1px solid #0000;flex-direction:column;align-items:center;display:flex}.macro-panel .macro.sel{background:var(--color-bg-selected);border-color:var(--color-accent-muted)}.macro-head{align-items:center;gap:var(--space-6);min-width:0;padding-left:var(--space-6);flex:1;display:flex}.macro-name-input{width:120px;height:var(--size-control-compact)}.macro-meta{color:var(--color-text-secondary);font-size:var(--font-size-sm);white-space:nowrap}.macro-hint{text-align:right;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.macro-maps{gap:var(--space-2);font-size:var(--font-size-md);color:var(--color-text-secondary);padding-left:var(--space-8);flex-direction:column;display:flex}.macro-maps .row{align-items:center;gap:var(--space-5);display:flex}.macro-maps .map-target{text-overflow:ellipsis;white-space:nowrap;width:200px;color:var(--color-text-primary);overflow:hidden}.macro-maps input{width:54px;height:var(--size-control-sm);padding:0 var(--space-4)}.map-table{border-collapse:collapse;width:100%}.map-table th,.map-table td{text-align:left;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border-default);white-space:nowrap}.map-table tr.dead td:first-child{color:var(--color-status-danger)}.rec-controls{align-items:center;gap:var(--space-2);display:inline-flex;position:relative}.kit-menu.rec-pop{z-index:var(--z-dropdown);padding:var(--space-6) var(--space-8);gap:var(--space-4);flex-direction:column;display:flex;position:absolute;top:30px;left:0}.scale-status{color:var(--color-text-secondary);font-size:var(--font-size-md)}.pb-head h3{font-size:var(--font-size-lg);white-space:nowrap;text-overflow:ellipsis;max-width:40%;margin:0;overflow:hidden}.pb-searchbox{flex:1;min-width:0;position:relative}.pb-search{width:100%;height:var(--size-control-lg);font-size:var(--font-size-base);padding-right:calc(var(--space-13) * 2)}.pb-count{right:var(--space-7);color:var(--color-text-secondary);font-size:var(--font-size-md);pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.pb-body{grid-template-columns:var(--size-palette) 1fr calc(var(--size-palette) + var(--size-song-label));gap:var(--space-8);min-height:0;padding:var(--space-6) var(--space-10);flex:1;display:grid}.pb-side{gap:var(--space-2);padding-right:var(--space-2);flex-direction:column;display:flex;overflow:auto}.pb-side-head{padding:var(--space-6) var(--space-7) var(--space-3)}.pb-filter{justify-content:space-between;align-items:center;gap:var(--space-7);text-align:left;padding:var(--space-3) var(--space-7);background:0 0;border-color:#0000;display:flex}.pb-filter:hover:not(:disabled){background:var(--color-bg-control)}.pb-filter.on{background:var(--color-bg-control);border-color:var(--color-accent-primary);color:var(--color-accent-primary)}.pb-filter:disabled{opacity:.4}.pb-filter .num{color:var(--color-text-secondary);font-size:var(--font-size-md)}.pb-main{gap:var(--space-6);flex-direction:column;min-height:0;display:flex}.pb-chips{gap:var(--space-4);min-height:var(--size-control-compact);flex-wrap:wrap;display:flex}.pb-list{background:var(--color-bg-inset);border:1px solid var(--color-border-default);border-radius:var(--radius-md);outline:none;flex:1;min-height:0;overflow:auto}.pb-list:focus-visible{border-color:var(--color-accent-secondary)}.pb-item{align-items:center;gap:var(--space-7);padding:var(--space-3) var(--space-6);border-radius:var(--radius-md);cursor:default;border:1px solid #0000;display:flex}.pb-item:hover{background:var(--color-bg-control)}.pb-item.sel{background:var(--color-bg-selected);border-color:var(--color-accent-primary)}.pb-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.pb-itemcat{color:var(--color-text-secondary);font-size:var(--font-size-md);text-align:right}.pb-new{background:var(--color-accent-secondary);color:var(--color-text-on-accent);border-radius:var(--radius-sm);padding:0 var(--space-4);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold)}.pb-fav{color:var(--color-text-secondary)}.pb-fav.on{color:var(--color-accent-primary)}.pb-play{width:var(--size-control-compact);padding:0}.pb-right{gap:var(--space-2);background:var(--color-bg-app);border:1px solid var(--color-border-default);border-radius:var(--radius-md);min-height:0;padding:var(--space-8);flex-direction:column;display:flex;overflow:auto}.pb-details h4{margin:0 0 var(--space-4);font-size:var(--font-size-lg);align-items:center;gap:var(--space-7);display:flex}.pb-details .section-label{margin-top:var(--space-7)}.pb-cat{color:var(--color-text-secondary)}.pb-desc{margin:var(--space-7) 0;line-height:1.45;font-size:var(--font-size-base);-webkit-user-select:text;user-select:text}.pb-tags{gap:var(--space-4);margin-bottom:var(--space-6);flex-wrap:wrap;display:flex}.pb-sub{color:var(--color-text-primary);margin:var(--space-2) 0;line-height:1.4}.pb-keys{flex:1;min-width:0}.pb-empty{justify-content:center;align-items:center;gap:var(--space-4);height:100%;padding:var(--space-9);flex-direction:column;display:flex}@media (max-width:900px){.pb-body{grid-template-rows:auto 1fr auto;grid-template-columns:1fr}.pb-side{flex-flow:wrap;max-height:70px}}.sample-tab{grid-template-columns:var(--size-song-browser) 1fr;flex:1;min-height:0;display:grid}.sample-lib{border-right:1px solid var(--color-border-default);background:var(--color-bg-surface);flex-direction:column;min-height:0;display:flex;position:relative}.sample-lib.over{outline:2px solid var(--color-accent-primary);outline-offset:-2px;background:var(--color-accent-subtle)}.lib-head{justify-content:space-between;align-items:center;gap:var(--space-4);height:var(--size-toolbar);box-sizing:border-box;padding:0 var(--space-6) 0 var(--space-7);flex:none;display:flex}.lib-head-title{color:var(--color-text-secondary);text-transform:uppercase;font-size:var(--font-size-sm);letter-spacing:.1em;white-space:nowrap}.lib-search{margin:0 var(--space-6) var(--space-4);align-items:center;display:flex;position:relative}.lib-search .kit-text{width:100%;height:var(--size-control-lg);padding-left:var(--space-11)}.lib-list{padding:0 var(--space-3);flex:1;overflow-y:auto}.lib-empty{padding:var(--space-7)}.lib-item{align-items:center;gap:var(--space-6);box-sizing:border-box;min-height:var(--size-readout);padding:var(--space-3) var(--space-3) var(--space-3) var(--space-6);border-radius:var(--radius-sm);cursor:pointer;color:var(--color-text-secondary);-webkit-user-select:none;user-select:none;display:flex}.lib-item:hover{background:var(--color-bg-hover)}.lib-item:focus-visible{outline:1px solid var(--color-accent-primary);outline-offset:-1px}.lib-item.sel{background:var(--color-bg-selected);box-shadow:inset var(--space-2) 0 0 var(--color-accent-primary)}.lib-item.sel .icon-wave{color:var(--color-accent-primary)}.lib-name{gap:var(--space-1);flex-direction:column;flex:1;min-width:0;display:flex}.lib-title{color:var(--color-text-primary);font-size:var(--font-size-base);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.lib-item.sel .lib-title{color:var(--color-text-strong);font-weight:var(--font-weight-semibold)}.lib-info{color:var(--color-text-tertiary);font-size:var(--font-size-sm)}.lib-uses{color:var(--color-text-tertiary);font-size:var(--font-size-sm);flex:none}.lib-menu{visibility:hidden;flex:none;display:inline-flex}.lib-item:hover .lib-menu,.lib-item.sel .lib-menu,.lib-item:focus-within .lib-menu{visibility:visible}.lib-rename{height:var(--size-control-lg);border-color:var(--color-accent-secondary);flex:1}.lib-kbd{margin-left:var(--space-7);color:var(--color-text-tertiary);font-family:var(--font-family-mono);font-size:var(--font-size-sm)}.lib-drop{margin:var(--space-6);padding:var(--space-11) var(--space-7);justify-content:center;align-items:center;gap:var(--space-6);border:1px dashed var(--color-border-strong);border-radius:var(--radius-md);text-align:center;flex-direction:column;flex:1;display:flex}.lib-drop-icon{color:var(--color-text-muted);font-size:var(--font-size-xl)}.lib-drop-icon .icon-wave{width:var(--size-knob-sm);height:var(--size-knob-sm)}.lib-drop-title{color:var(--color-text-soft)}.lib-drop-fmt{color:var(--color-text-tertiary);font-size:var(--font-size-sm)}.lib-over-label{color:var(--color-accent-primary);font-weight:var(--font-weight-semibold);pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.lib-foot{align-items:center;gap:var(--space-4);height:var(--size-toolbar);box-sizing:border-box;padding:0 var(--space-6) 0 var(--space-7);border-top:1px solid var(--color-border-default);color:var(--color-text-tertiary);font-size:var(--font-size-sm);flex:none;display:flex}.lib-foot>*{white-space:nowrap}.lib-foot .warn{color:var(--color-status-danger)}.sample-ed{flex-direction:column;min-width:0;min-height:0;display:flex;overflow-y:auto}.ed-bar{align-items:center;gap:var(--space-6);height:var(--size-toolbar);box-sizing:border-box;padding:0 var(--space-8);background:var(--color-bg-surface);border-bottom:1px solid var(--color-border-default);white-space:nowrap;font-size:var(--font-size-md);flex:none;display:flex}.ed-bar .field{font-size:var(--font-size-md)}.ed-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);max-width:var(--size-trigger-max);text-overflow:ellipsis;overflow:hidden}.ed-info{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.ed-other{color:var(--color-text-secondary)}.ed-busy{color:var(--color-accent-primary)}.ed-sel{color:var(--color-text-secondary)}.ed-sel .num{color:var(--color-text-primary)}.ed-zoom{min-width:var(--size-field-num);text-align:center;color:var(--color-text-secondary)}.ed-bar .sep,.ed-ops .sep{width:1px;height:var(--size-icon);background:var(--color-border-default);margin:0 var(--space-2);flex:none}.ed-bar .spacer,.ed-ops .spacer{flex:1}.ed-bar>*,.ed-ops>*{flex:none}.ed-ops{align-items:center;gap:var(--space-4);height:var(--size-toolbar);box-sizing:border-box;padding:0 var(--space-8);background:var(--color-bg-surface);border-top:1px solid var(--color-border-default);font-size:var(--font-size-md);flex:none;display:flex}.ed-ops .kit-btn{height:var(--size-control-compact);padding:0 var(--space-6);font-size:var(--font-size-md)}.ed-gain{width:var(--size-field-num);height:var(--size-control-compact);font-size:var(--font-size-md)}.wave{background:var(--color-bg-well);flex-direction:column;display:flex}.wave-ov{cursor:grab;touch-action:none;width:100%;display:block}.wave-ruler{width:100%;display:block}.wave-main{touch-action:none;width:100%;display:block}.wave-main:focus-visible{outline:1px solid var(--color-accent-primary);outline-offset:-1px}.ed-cards{gap:var(--space-8);padding:var(--space-8);grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;display:grid}.ed-panel{background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-md);padding:var(--space-8);gap:var(--space-7);flex-direction:column;min-width:0;display:flex}.ed-panel-wide{grid-column:span 2}.ed-panel-head{color:var(--color-text-secondary);text-transform:uppercase;font-size:var(--font-size-sm);letter-spacing:.1em}.ed-note{color:var(--color-text-secondary);margin:0;line-height:1.4}.ed-note-sm{font-size:var(--font-size-md);color:var(--color-text-tertiary)}.ed-row{gap:var(--space-6);flex-wrap:wrap;align-items:center;display:flex}.ed-line{align-items:center;gap:var(--space-6);min-height:var(--size-control-lg);display:flex}.ed-lbl{width:var(--size-field-num);color:var(--color-text-secondary);flex:none}.ed-ctl{align-items:center;display:inline-flex}.ed-knobs{gap:var(--space-9);flex-wrap:wrap;align-items:flex-start;display:flex}.ed-knobs-pitch{gap:var(--space-7);flex-wrap:nowrap}.ed-knobs-pitch .ed-ctl{align-self:center}.ed-knobs-pitch .spacer{flex:1}.ed-pitch{color:var(--color-text-soft)}.ed-unit{color:var(--color-text-secondary)}.ed-bars,.ed-chop-n{width:var(--size-field-num)}.ed-dest{flex:1;min-width:0}.ed-chop-go{width:100%}.ed-panels .kit-btn,.ed-cards .kit-btn{font-size:var(--font-size-md)}.sample-strip{gap:var(--space-3);padding:var(--space-4) var(--space-6) 0;flex-direction:column;display:flex}.sample-strip .wave{border-radius:var(--radius-sm);overflow:hidden}.strip-row{align-items:baseline;gap:var(--space-4);min-width:0;display:flex}.strip-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--color-text-primary);flex:1;overflow:hidden}.strip-info{color:var(--color-text-tertiary);font-size:var(--font-size-sm);white-space:nowrap}.strip-btn{width:100%}.strip-empty{height:var(--size-readout);border:1px dashed var(--color-border-strong);border-radius:var(--radius-sm);color:var(--color-text-tertiary);font-size:var(--font-size-md);justify-content:center;align-items:center;display:flex}.audio-tab .audio-clips{gap:var(--space-6);padding:var(--space-8);flex-wrap:wrap;display:flex}.song-bar{align-items:center;gap:var(--space-6);height:var(--size-toolbar);box-sizing:border-box;padding:0 var(--space-8);border-bottom:1px solid var(--color-border-default);background:var(--color-bg-surface);flex:none;min-width:0;display:flex;overflow:hidden}.song-bar .field{white-space:nowrap;font-size:var(--font-size-md)}.song-bar select{height:var(--size-control-compact);font-size:var(--font-size-md)}.song-bar .kit-btn.compact{height:var(--size-control-compact);padding:0 var(--space-6);font-size:var(--font-size-md)}.song-bar .spacer,.clip-inspector .spacer{flex:1}.song-zoom{min-width:var(--size-readout);text-align:center;color:var(--color-text-primary)}.song-loop{color:var(--color-text-primary);white-space:nowrap}.song-main{flex:1;align-items:stretch;min-width:0;min-height:0;display:flex}.song-canvas-wrap{flex:1;min-width:0;position:relative;overflow:hidden auto}.brush-chip-pos{left:var(--space-8);max-width:calc(var(--size-song-label) - var(--space-12));position:absolute}.brush-chip{max-width:100%}.brush-chip .kit-btn{align-items:center;gap:var(--space-4);height:var(--size-chip-sm);max-width:100%;padding:0 var(--space-4);font-size:var(--font-size-sm);background:var(--color-bg-control);border:1px solid var(--color-border-default);border-radius:var(--radius-sm);color:var(--color-text-soft);display:inline-flex}.brush-chip .kit-btn:hover{background:var(--color-bg-control-hover)}.brush-chip .bc-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.brush-chip .bc-caret{color:var(--color-text-tertiary)}.bm-row{align-items:center;gap:var(--space-5);min-width:150px;display:flex}.bm-check{width:var(--space-9);color:var(--color-accent-primary)}.bm-name{flex:1}.bm-len,.mi-key{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.mi-row{justify-content:space-between;align-items:center;gap:var(--space-9);min-width:190px;display:flex}.song-browser{width:var(--size-song-browser);box-sizing:border-box;border-left:1px solid var(--color-border-default);background:var(--color-bg-surface);padding:var(--space-6);font-size:var(--font-size-base);gap:var(--space-2);flex-direction:column;flex:none;display:flex;overflow-y:auto}.sb-search{margin-bottom:var(--space-4);align-items:center;display:flex;position:relative}.sb-search .kit-text{width:100%;height:var(--size-control-lg);padding-left:var(--space-11);padding-right:var(--space-11)}.sb-search-icon{left:var(--space-5);color:var(--color-text-tertiary);pointer-events:none;position:absolute}.sb-clear{right:var(--space-3);color:var(--color-text-secondary);cursor:pointer;padding:0 var(--space-4);background:0 0;border:0;position:absolute}.sb-clear:hover{color:var(--color-text-strong)}.sb-group{margin-bottom:var(--space-3)}.sb-head-row{align-items:center;gap:var(--space-4);display:flex}.sb-head-row .sb-head{flex:1;min-width:0}.sb-head{align-items:center;gap:var(--space-5);width:100%;height:var(--size-list-item-sm);box-sizing:border-box;padding:0 var(--space-3);border-radius:var(--radius-sm);color:var(--color-text-secondary);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);cursor:pointer;text-align:left;background:0 0;border:0;display:flex}.sb-head:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.sb-caret{width:var(--space-7);color:var(--color-text-tertiary);flex:none}.sb-count{color:var(--color-text-tertiary);font-size:var(--font-size-sm);font-weight:var(--font-weight-regular);margin-left:auto}.sb-item{align-items:center;gap:var(--space-6);height:var(--size-list-item-sm);box-sizing:border-box;padding:0 var(--space-6) 0 var(--space-11);border-radius:var(--radius-sm);cursor:grab;-webkit-user-select:none;user-select:none;display:flex}.sb-item:hover{background:var(--color-bg-hover)}.sb-item:focus-visible{outline:1px solid var(--color-accent-primary);outline-offset:-1px}.sb-item.on{background:var(--color-bg-selected);box-shadow:inset var(--space-2) 0 0 var(--color-accent-secondary)}.sb-item.dragging{opacity:.45}.sb-swatch{width:var(--size-dot-sm);height:var(--size-dot-sm);border-radius:var(--radius-xs);flex:none;display:inline-block}.sb-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.sb-len{color:var(--color-text-secondary);font-size:var(--font-size-sm);white-space:nowrap}.sb-none{padding:var(--space-6);color:var(--color-text-secondary);font-size:var(--font-size-md)}.sb-drop{margin:var(--space-3) var(--space-3) 0;padding:var(--space-7);border:1px dashed var(--color-border-strong);border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:var(--font-size-md);line-height:1.4}.sb-drop.over{border-color:var(--color-accent-primary);background:var(--color-accent-subtle);color:var(--color-accent-primary)}.clip-inspector{align-items:center;gap:var(--space-6);height:var(--size-toolbar);box-sizing:border-box;padding:0 var(--space-8);background:var(--color-bg-surface);border-top:1px solid var(--color-border-default);flex:none;min-width:0;display:flex;overflow:hidden}.clip-inspector>*{flex:none}.clip-inspector .field{white-space:nowrap;font-size:var(--font-size-md)}.clip-inspector .field input[type=number]{width:var(--size-field-num);height:var(--size-control-compact);font-size:var(--font-size-md)}.clip-inspector .ci-bpm input[type=number]{width:calc(var(--size-field-num) + var(--space-7))}.clip-inspector .ci-warp{align-items:center;gap:var(--space-4);font-size:var(--font-size-md);display:inline-flex}.clip-inspector .unit{color:var(--color-text-secondary);font-size:var(--font-size-md)}.clip-inspector .ci-name{flex:0 1 var(--size-field-name);min-width:var(--size-field-name);height:var(--size-control-compact);font-size:var(--font-size-md)}.clip-inspector .ci-info{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--color-text-secondary);font-size:var(--font-size-sm);flex:0 auto;overflow:hidden}.clip-inspector .ci-warn{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--color-status-warning);font-size:var(--font-size-md);flex:0 auto;overflow:hidden}.clip-inspector .kit-btn.compact{height:var(--size-control-compact);padding:0 var(--space-6);font-size:var(--font-size-md)}.pattern-bar,.scale-row{align-items:center;gap:var(--space-6);padding:0 var(--space-8);border-bottom:1px solid var(--color-border-default);background:var(--color-bg-surface);min-width:0;display:flex}.pattern-bar{height:var(--size-toolbar);flex:none}.scale-row{flex:none;height:36px}.pattern-bar-name{color:var(--color-text-strong);white-space:nowrap;text-overflow:ellipsis;flex:0 auto;min-width:0;font-weight:600;overflow:hidden}.bar-sep{width:1px;height:var(--size-icon);background:var(--color-border-default);margin:0 var(--space-2);flex:none}.bar-spacer{flex:1}.pattern-len{gap:var(--space-4);white-space:nowrap}.len-part{align-items:center;gap:var(--space-3);display:inline-flex}.len-part input{width:50px}.len-part span,.len-total{font-size:var(--font-size-md);color:var(--color-text-secondary)}.scale-picker{gap:var(--space-4);white-space:nowrap}.scale-picker select{max-width:170px}.scale-mask{gap:var(--space-2);display:inline-flex}.scale-mask .kit-btn{min-width:var(--size-control-md);padding:0 var(--space-3);font-size:var(--font-size-sm)}.scale-mask .kit-btn.on{background:var(--color-accent-muted);border-color:var(--color-accent-muted);color:var(--color-text-strong)}.scale-mask .kit-btn.tonic,.scale-mask .kit-btn.tonic:disabled{background:var(--color-accent-primary);border-color:var(--color-accent-primary);color:var(--color-text-on-accent);opacity:1}.scale-status{color:var(--color-text-secondary);font-size:var(--font-size-md);white-space:nowrap}.drum{padding:var(--space-6) var(--space-8);flex:1;overflow:auto}.drum-body{gap:var(--space-6);align-items:flex-start;display:flex;position:relative}.pads{flex:none;width:300px}.pad{align-items:center;gap:var(--space-3);border-bottom:1px solid var(--color-bg-app);box-sizing:border-box;display:flex}.pad.sel .pad-name{color:var(--color-text-strong)}.pad.gen .pad-name{color:var(--color-accent-primary)}.pad-hit{width:var(--size-icon);height:var(--size-icon);border-radius:var(--radius-sm);border:none;flex:none;padding:0}.pad-name{white-space:nowrap;text-overflow:ellipsis;cursor:pointer;color:var(--color-text-primary);flex:1;overflow:hidden}select.choke{width:44px;color:var(--color-text-secondary)}select.choke.on{color:var(--color-text-on-accent);background:var(--color-accent-secondary);border-color:var(--color-accent-secondary)}.pad-add{align-items:center;gap:var(--space-4);padding-top:var(--space-7);display:flex}.pad-add select{flex:1 1 0;min-width:0}.pad-add .kit-btn{white-space:nowrap;flex:none}.drum-grid{flex:1;min-width:0}.drum-canvas{touch-action:none;width:100%;display:block}.gen-slot{box-sizing:border-box;padding:var(--space-2) 0;position:absolute;left:0;right:0}.gen-panel{align-items:center;gap:var(--space-7);box-sizing:border-box;height:100%;padding:0 var(--space-7);background:var(--color-bg-well);border-radius:var(--radius-md);white-space:nowrap;color:var(--color-text-secondary);display:flex}.gen-panel b{color:var(--color-text-strong);font-weight:600}.gen-panel input[type=number]{width:var(--size-field-num)}.gen-panel input[type=range]{width:90px}.autobar{align-items:center;gap:var(--space-5);box-sizing:border-box;height:34px;padding:0 var(--space-8);background:var(--color-bg-surface);border-top:1px solid var(--color-border-default);flex:none;min-width:0;display:flex;overflow:hidden}.autobar-label{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin-right:var(--space-2);white-space:nowrap}.autobar .lane-chip.off .chip{opacity:.6;text-decoration:line-through}.autobar select{max-width:220px}.pattern-bar .kit-btn.compact,.scale-row .kit-btn.compact,.gen-panel .kit-btn.compact,.pad-add .kit-btn.compact,.autobar .kit-btn.compact{height:var(--size-control-compact);padding:0 var(--space-6);font-size:var(--font-size-md)}.pattern-bar select,.scale-row select,.pad-add select,.autobar select{height:var(--size-control-compact);font-size:var(--font-size-md)}.pad select.sm{height:var(--size-control-sm);padding:0 var(--space-2);font-size:var(--font-size-md)}.pad .kit-btn.sm{min-width:var(--size-control-sm);font-size:var(--font-size-sm)}.pad .kit-btn.sm.on{color:var(--color-text-on-accent)}.pattern-bar input[type=number],.gen-panel input[type=number]{height:var(--size-control-compact)}.pattern-bar .seg button{height:var(--size-control-compact);font-size:var(--font-size-md);padding:0 var(--space-6)}.dotc{width:var(--size-dot-md);height:var(--size-dot-md);border-radius:var(--radius-round)}.synth-bar{align-items:center;gap:var(--space-6);height:var(--size-toolbar);box-sizing:border-box;padding:0 var(--space-8);border-bottom:1px solid var(--color-border-default);background:var(--color-bg-surface);flex:none;min-width:0;display:flex;overflow:hidden}.synth-bar-name{color:var(--color-text-strong);white-space:nowrap;text-overflow:ellipsis;flex:0 auto;min-width:0;font-weight:600;overflow:hidden}.synth-bar .preset-menu{flex:none}.synth-bar .preset-menu .kit-btn{max-width:var(--size-trigger-max);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.synth-bar select,.synth-bar input[type=number]{height:var(--size-control-compact);font-size:var(--font-size-md)}.synth-bar .field{white-space:nowrap;font-size:var(--font-size-md)}.synth-bar .field input[type=number]{width:var(--size-field-num)}.synth-bar .unit{color:var(--color-text-secondary);font-size:var(--font-size-md)}.synth-bar .seg button{height:var(--size-control-compact);font-size:var(--font-size-md);padding:0 var(--space-6)}.synth-bar .kit-btn.compact,.macro-panel .kit-btn.compact{height:var(--size-control-compact);padding:0 var(--space-6);font-size:var(--font-size-md)}.empty.empty-card{margin:var(--space-9);background:var(--color-bg-well);border:1px solid var(--color-border-default);border-radius:var(--radius-lg)}.empty-card p{margin:0 0 var(--space-4)}.sb-version{padding:0 var(--space-3);color:var(--color-text-secondary);font:inherit;cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none}.sb-version:hover:not(:disabled){color:var(--color-text-primary)}.sb-version-new{color:var(--color-accent-primary);text-decoration:underline}.sb-version:disabled{opacity:.4;cursor:default}.modal.whatsnew{gap:var(--space-9);flex-direction:column;display:flex}.wn-head{align-items:center;gap:var(--space-8);display:flex}.wn-titles{gap:var(--space-2);flex-direction:column;flex:1;display:flex}.wn-title{font-size:var(--font-size-lg);color:var(--color-text-strong);align-items:baseline;gap:var(--space-7);margin:0;display:flex}.wn-ver{font-size:var(--font-size-sm);color:var(--color-accent-primary)}.wn-sub{font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.wn-list{gap:var(--space-11);padding:var(--space-8) var(--space-9);background:var(--color-bg-inset);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);flex-direction:column;max-height:50vh;display:flex;overflow:auto}.wn-entry{gap:var(--space-7);flex-direction:column;display:flex}.wn-entry-head{align-items:baseline;gap:var(--space-7);display:flex}.wn-entry-ver{font-size:var(--font-size-base);font-weight:var(--font-weight-bold);color:var(--color-text-strong)}.wn-entry-date{font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.wn-group{gap:var(--space-4);flex-direction:column;display:flex}.wn-group-title{font-size:var(--font-size-xs);text-transform:uppercase;color:var(--color-text-tertiary)}.wn-group.new .wn-group-title{color:var(--color-status-ok)}.wn-group ul{gap:var(--space-4);font-size:var(--font-size-sm);color:var(--color-text-primary);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.wn-group li{gap:var(--space-7);display:flex}.wn-group li:before{content:"·";color:var(--color-text-tertiary);flex:none}.wn-actions{align-items:center;gap:var(--space-7);padding-top:var(--space-9);border-top:1px solid var(--color-border-subtle);display:flex}.wn-spacer{flex:1}.update-banner{grid-area:b}.track-preset-name{align-items:center;gap:var(--space-5);min-width:0;display:flex}.track-preset-name .tp-name{text-overflow:ellipsis;white-space:nowrap;color:var(--color-text-strong);overflow:hidden}.track-preset .track-browse{align-self:stretch}.modal-tabs{padding:0 var(--space-10);flex:none}.modal-tabs .tabs{background:0 0;padding:0}.midi-status{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.map-table th{color:var(--color-text-tertiary);font-size:var(--font-size-sm);font-weight:var(--font-weight-regular);text-transform:uppercase;letter-spacing:.06em}.map-table .map-range{align-items:center;gap:var(--space-3);display:flex}.map-table .map-range input[type=number]{width:calc(var(--size-field-num) + var(--space-4));padding:0 var(--space-3)}.map-table .map-actions{justify-content:flex-end;align-items:center;gap:var(--space-3);display:flex}.map-table tr.dead td{color:var(--color-text-muted)}.map-table tr.dead td:first-child{color:var(--color-status-danger);box-shadow:inset var(--space-2) 0 0 var(--color-status-danger);background:var(--color-status-danger-bg)}.map-table tr.dead select,.map-table tr.dead input{opacity:.5}.dead-note{color:var(--color-status-danger)}.map-table.inset-table{background:var(--color-bg-inset);border:1px solid var(--color-border-default);border-radius:var(--radius-md)}.latency-box{gap:var(--space-7);background:var(--color-bg-inset);border:1px solid var(--color-border-default);border-radius:var(--radius-md);padding:var(--space-8);flex-direction:column;align-self:flex-start;display:flex}.latency-box input[type=number]{width:var(--size-field-num)}.calibration{gap:var(--space-5);flex-direction:column;display:flex}.cal-row{align-items:center;gap:var(--space-6);display:flex}.cal-progress{align-items:center;gap:var(--space-3);display:flex}.cal-dot{width:var(--size-dot-md);height:var(--size-dot-md);border-radius:var(--radius-round);background:var(--color-border-default)}.cal-dot.on{background:var(--color-accent-primary)}.stems-head{align-items:center;gap:var(--space-5);display:flex}.inset{background:var(--color-bg-inset);border:1px solid var(--color-border-default);border-radius:var(--radius-md);padding:var(--space-7) var(--space-8)}.stems-list.inset{gap:var(--space-3);grid-template-columns:1fr;margin-bottom:0;display:grid}.stems-list .field{color:var(--color-text-primary);gap:var(--space-6)}.stems-sep{background:var(--color-border-default);height:1px;margin:var(--space-2) 0}.stems-opts{gap:var(--space-6) var(--space-9);grid-template-columns:max-content 1fr;align-items:center;display:grid}.stems-opts .stems-label{color:var(--color-text-secondary)}.stems-opts .seg{justify-self:start}.stems-summary{gap:var(--space-2);flex-direction:column;display:flex}.stems-warn{align-items:center;gap:var(--space-6);padding:var(--space-6) var(--space-8);border:1px solid var(--color-status-danger-border);background:var(--color-status-danger-bg);border-radius:var(--radius-md);display:flex}.stems-warn .badge{margin-left:0}.kit-menu.rec-pop .rec-row{justify-content:space-between;align-items:center;gap:var(--space-7);color:var(--color-text-secondary);display:flex}.kit-menu.rec-pop .rec-row input[type=range]{width:var(--size-slider-sm)}.kit-menu.rec-pop .field{color:var(--color-text-primary)}.kit-menu.rec-pop{gap:var(--space-5);min-width:var(--size-popover-sm)}.kit-menu.rec-pop select:disabled,.kit-menu.rec-pop input:disabled{opacity:.4}.modal .kit-btn.compact,.rec-pop .kit-btn.compact{height:var(--size-control-compact);padding:0 var(--space-6);font-size:var(--font-size-md)}.modal select.compact,.rec-pop select.compact{height:var(--size-control-compact);font-size:var(--font-size-md)}:focus-visible{outline:2px solid var(--color-accent-secondary);outline-offset:1px}.pb-list:focus-visible{outline:none}.kit-menu{background:var(--color-bg-menu);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-popover);padding:var(--space-4) 0}.kit-menu-title{padding:var(--space-4) var(--space-8) var(--space-6);color:var(--color-text-secondary);font-size:var(--font-size-sm);border-bottom:1px solid var(--color-border-default);margin-bottom:var(--space-3);white-space:nowrap;text-overflow:ellipsis;max-width:280px;overflow:hidden}.kit-menu-sep{background:var(--color-border-default);height:1px;margin:var(--space-3) 0}.kit-menu-item{justify-content:space-between;align-items:center;gap:var(--space-9);padding:var(--space-5) var(--space-8);cursor:pointer;white-space:nowrap;display:flex}.kit-menu-item:hover,.kit-menu-item:focus-visible{background:var(--color-bg-menu-hover)}.kit-menu-item.selected{color:var(--color-accent-primary)}.kit-menu-item.disabled{opacity:.4;cursor:default}.kit-menu-item.has-desc{align-items:flex-start;gap:var(--space-2);flex-flow:column wrap}.kit-menu-desc{color:var(--color-text-secondary);font-size:var(--font-size-md);white-space:normal;line-height:1.35}.kit-menu-arrow{color:var(--color-text-secondary)}.kit-menu .bp-title{padding:0 var(--space-3)}.modal:focus{outline:none}.list-item{padding:var(--space-6) var(--space-7);border-bottom:1px solid var(--color-border-subtle);cursor:pointer}.list-item:hover{background:var(--color-bg-hover)}.list-item.sel{background:var(--color-bg-selected);box-shadow:inset var(--space-3) 0 0 var(--color-accent-secondary)}input[type=range].vertical{writing-mode:vertical-lr;direction:rtl}button.mute.on{background:var(--color-status-warning);border-color:var(--color-status-warning)}button.solo.on{background:var(--color-accent-secondary);border-color:var(--color-accent-secondary)}.hint{color:var(--color-text-secondary);font-size:var(--font-size-md)}.field{align-items:center;gap:var(--space-5);color:var(--color-text-secondary);display:inline-flex}.field input,.field select{color:var(--color-text-primary)}.seg{display:inline-flex}.seg button{border-radius:0}.seg button:first-child{border-radius:var(--radius-md) 0 0 var(--radius-md)}.seg button:last-child{border-radius:0 var(--radius-md) var(--radius-md) 0}.knob{flex-direction:column;align-items:center;width:42px;display:flex}.knob svg{cursor:ns-resize;touch-action:none}.knob:focus-visible{outline:none}.knob-bg{fill:none;stroke:var(--color-border-default);stroke-width:4px;stroke-linecap:round}.knob-fg{fill:none;stroke:var(--color-accent-primary);stroke-width:4px;stroke-linecap:round}.knob-ptr{stroke:var(--color-text-strong);stroke-width:2px;stroke-linecap:round}.knob-label{font-size:var(--font-size-xs);color:var(--color-text-secondary);margin-top:var(--space-1);white-space:nowrap}.knob-val{font-size:var(--font-size-xs);color:var(--color-text-soft);white-space:nowrap}.modal-bg,.start-overlay{background:var(--color-overlay-scrim);z-index:var(--z-modal);place-items:center;display:grid;position:fixed;inset:0}.modal{background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-xl);padding:var(--space-11);width:min(520px,92vw);max-height:80vh;overflow:auto}.modal.modal-lg{width:min(860px,96vw)}.modal.modal-xl{width:min(1080px,96vw)}.modal h3{margin-top:0}.modal .row{align-items:center;gap:var(--space-8);padding:var(--space-4) 0;border-bottom:1px solid var(--color-border-default);display:flex}.modal .row .link{text-align:left;color:var(--color-accent-secondary);background:0 0;border:none;flex:1}.knob{position:relative}.knob .knob-badge{position:absolute;top:-3px;right:-2px}.knob.automated .knob-bg{stroke:var(--color-accent-muted)}.knob.automated .knob-label{color:var(--color-accent-primary)}.knob-live{fill:var(--color-canvas-highlight);stroke:var(--color-accent-primary);stroke-width:1px}.knob.locked svg{cursor:not-allowed;opacity:.75}.knob-badge{font-size:var(--font-size-xs);padding:0 var(--space-3);border-radius:var(--radius-sm);background:var(--color-accent-secondary);color:var(--color-text-on-accent);line-height:11px;font-weight:var(--font-weight-bold)}body.midi-learn [data-learn]{outline:1px dashed var(--color-accent-secondary);outline-offset:1px;cursor:crosshair;border-radius:var(--radius-sm)}body.midi-learn [data-learn] *{cursor:crosshair}body.midi-learn [data-learn].learn-sel{outline:2px solid var(--color-accent-primary);background:var(--color-accent-subtle)}.knob,.fader,.pselect,.ptoggle{position:relative}.cc-badge{font-size:var(--font-size-xs);padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);background:var(--color-accent-secondary);color:var(--color-text-on-accent);pointer-events:none;z-index:var(--z-raised);line-height:1;position:absolute;top:-4px;right:-6px}.cc-badge.ghost{background:var(--color-status-warning)}.knob .cc-badge{left:-6px;right:auto}.modal.midi-panel{width:min(860px,96vw)}.rec-btn{color:var(--color-status-danger);font-size:var(--font-size-lg);line-height:1}.rec-btn.on{background:var(--color-status-danger);border-color:var(--color-status-danger);color:var(--color-text-on-danger)}.rec-btn.arm{animation:rec-blink var(--motion-duration-blink) steps(2, start) infinite}@keyframes rec-blink{to{background:var(--color-status-danger);color:var(--color-text-on-danger)}}.midi-led{width:var(--size-dot-sm);height:var(--size-dot-sm);border-radius:var(--radius-round);background:var(--color-border-default);margin-left:var(--space-4);flex:none;display:inline-block}.midi-led.on{background:var(--color-status-ok);box-shadow:var(--shadow-glow-ok)}.modal.preset-browser{width:min(1080px,96vw);height:min(640px,90vh);max-height:none}.modal.modal-sections{flex-direction:column;padding:0;display:flex;overflow:hidden}.modal-head{align-items:center;gap:var(--space-8);padding:var(--space-9) var(--space-10);flex:none;display:flex}.modal-head h3{font-size:var(--font-size-lg);margin:0}.modal-body{min-height:0;padding:var(--space-6) var(--space-10);gap:var(--space-7);flex-direction:column;flex:1;display:flex;overflow:auto}.modal-foot{justify-content:flex-end;align-items:center;gap:var(--space-6);padding:var(--space-8) var(--space-10);border-top:1px solid var(--color-border-default);flex:none;display:flex}.modal-foot .spacer{flex:1}.modal-progress{gap:var(--space-3);flex-direction:column;flex:1;min-width:0;display:flex}.modal-progress progress{width:100%;height:var(--space-3);accent-color:var(--color-accent-primary)}.chip{padding:var(--space-1) var(--space-7);border-radius:var(--radius-xl);font-size:var(--font-size-md);color:var(--color-text-secondary);background:var(--color-bg-control);border:1px solid var(--color-border-default)}.chip.on{color:var(--color-text-on-accent);background:var(--color-accent-secondary);border-color:var(--color-accent-secondary)}.chip.static{display:inline-block}.cpu-badge{font:var(--font-size-sm) var(--font-family-mono);padding:0 var(--space-4);border-radius:var(--radius-sm);border:1px solid var(--color-border-default);color:var(--color-text-secondary)}.cpu-badge.cpu-M{color:var(--color-accent-secondary);border-color:var(--color-accent-secondary)}.cpu-badge.cpu-H{color:var(--color-status-danger);border-color:var(--color-status-danger)}.badge{padding:0 var(--space-4);margin-left:var(--space-4);border-radius:var(--radius-sm);font-weight:var(--font-weight-bold);font-size:var(--font-size-sm);color:var(--color-text-on-accent);display:inline-block}.badge.ok{background:var(--color-status-ok)}.badge.warn{background:var(--color-status-warning)}button.kit-btn.primary{background:var(--color-accent-primary);color:var(--color-text-on-accent);border-color:var(--color-accent-primary)}button.kit-btn.primary:hover:not(:disabled){background:var(--color-accent-primary);border-color:var(--color-accent-primary);filter:brightness(1.1)}button.kit-btn.link{padding:0 var(--space-3);color:var(--color-accent-secondary);background:0 0;border:none}button.kit-btn.link:hover:not(:disabled){background:0 0;text-decoration:underline}button.kit-btn.icon{aspect-ratio:1;place-items:center;padding:0;display:inline-grid}.swatch{width:var(--size-dot-md);height:var(--size-dot-md);border-radius:var(--radius-xs);flex:none;display:inline-block}.kit-text{font-family:var(--font-family-ui);min-width:0}.kit-text:disabled{opacity:.4}.dm-wrap{display:inline-flex;position:relative}.dm-menu{z-index:var(--z-menu);min-width:200px;position:fixed}.dm-item{position:relative}.dm-sub{left:100%;top:calc(-1 * var(--space-4));min-width:260px;max-height:70vh;position:absolute;overflow-y:auto}.kit-menu-item{position:relative}.kit-menu-item.has-desc .kit-menu-arrow{right:var(--space-8);position:absolute;top:50%;transform:translateY(-50%)}.knob-ring{fill:none;stroke:#0000;stroke-width:1px;pointer-events:none}.knob:hover .knob-ring{stroke:var(--color-border-strong)}.knob:focus-visible .knob-ring{stroke:var(--color-accent-secondary);stroke-width:2px}body.midi-learn .knob[data-learn]{outline:none}body.midi-learn .knob[data-learn] .knob-ring{stroke:var(--color-accent-secondary);stroke-dasharray:3 3}body.midi-learn .knob[data-learn].learn-sel{background:0 0}body.midi-learn .knob[data-learn].learn-sel .knob-ring{stroke:var(--color-accent-primary);stroke-width:2px}body.midi-learn .knob[data-learn].learn-sel:after{content:"Learn";top:calc(-1 * var(--space-3));padding:0 var(--space-3);border-radius:var(--radius-sm);background:var(--color-accent-secondary);color:var(--color-text-on-accent);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);z-index:var(--z-raised);pointer-events:none;line-height:11px;position:absolute;left:50%;transform:translate(-50%)}.knob.locked .knob-fg{stroke:var(--color-accent-muted)}.knob.disabled{opacity:.4}.knob.disabled svg{cursor:default}.knob-tip{margin-bottom:var(--space-2);padding:var(--space-1) var(--space-4);border-radius:var(--radius-sm);background:var(--color-bg-menu);border:1px solid var(--color-border-strong);color:var(--color-text-strong);font-size:var(--font-size-md);white-space:nowrap;pointer-events:none;z-index:var(--z-menu);box-shadow:var(--shadow-popover);position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.knob-edit{width:46px;height:var(--size-control-sm);padding:0 var(--space-2);text-align:center;font-size:var(--font-size-xs)}.icon-wave{width:var(--size-icon-wave);height:var(--size-icon-wave);color:var(--color-text-muted);flex:none}.kit-toggle{accent-color:var(--color-accent-primary)}.update-banner{align-items:center;gap:var(--space-8);padding:var(--space-4) var(--space-9);background:var(--color-bg-selected);border-bottom:1px solid var(--color-border-subtle);white-space:nowrap;min-width:0;display:flex}.update-banner-led{width:var(--size-dot-sm);height:var(--size-dot-sm);border-radius:var(--radius-round);background:var(--color-status-ok);box-shadow:var(--shadow-glow-ok);flex:none}.update-banner-title{font-size:var(--font-size-base);font-weight:var(--font-weight-bold);color:var(--color-text-strong)}.update-banner-note{font-size:var(--font-size-sm);color:var(--color-text-tertiary);text-overflow:ellipsis;min-width:0;overflow:hidden}.update-banner-spacer{flex:1}
