:root{--c-bg: #0a0c10;--c-grid-bg: #0d1016;--c-panel: #0e1219;--c-row-alt: #11151d;--c-row-beat: #161c27;--c-row-bar: #1d2533;--c-row-focus: #131a26;--c-gutter: #0b0e13;--c-gutter-text: #788eae;--c-text: #c8d3e0;--c-text-dim: #788eae;--c-text-faint: #62748e;--c-note: #8fe3a2;--c-instrument: #7fc4ff;--c-volume: #ffd479;--c-panning: #c3a0ff;--c-effect: #ff9d7a;--c-cursor: #2f5ea8;--c-cursor-text: #ffffff;--c-selection: rgba(90, 140, 220, .22);--c-playhead: rgba(120, 220, 160, .12);--c-border: #1b2230;--c-accent: #5ee0a0;--c-muted: #e05e6e;--c-warn: #e8c05a;--font-mono: ui-monospace, "Cascadia Mono", "JetBrains Mono", Consolas, "Courier New", monospace;--row-h: 22px}*{box-sizing:border-box}html,body{margin:0;height:100%;background:var(--c-bg);color:var(--c-text);font-family:var(--font-mono);font-size:12px;overflow:hidden;-webkit-font-smoothing:antialiased}button,input,select,output{font:inherit;color:inherit}button{background:#131922;border:1px solid var(--c-border);padding:3px 8px;cursor:pointer;letter-spacing:.04em}@media(hover:hover){button:hover{background:#1b2432;border-color:#2c3a4f}}button:active,button.active{background:var(--c-cursor);border-color:#4d7fc4;color:#fff}input[type=number],select{background:#0b0f15;border:1px solid var(--c-border);padding:2px 4px}input[type=range]{accent-color:var(--c-accent);height:14px}::selection{background:var(--c-cursor)}#app{display:grid;grid-template-rows:[topbar] 40px [focus] auto [main] 1fr [status] 22px;height:100vh;max-width:100vw;overflow:hidden}#topbar{grid-row:topbar;display:flex;align-items:center;gap:14px;padding:0 10px;min-width:0;overflow:hidden;background:var(--c-panel);border-bottom:1px solid var(--c-border)}.brand{font-weight:700;letter-spacing:.18em;color:var(--c-text-dim);white-space:nowrap}.brand em{font-style:normal;color:var(--c-accent)}.song-title{cursor:text;min-width:0;overflow:hidden;text-overflow:ellipsis;color:var(--c-volume);letter-spacing:.1em;padding-right:8px;border-right:1px solid var(--c-border);white-space:nowrap;min-width:6em}@media(hover:hover){.song-title:hover{color:#ffe9b0}}#app.focus-mode #sidebar-left,#app.focus-mode #sidebar-right{display:none}#focus-row{grid-row:focus;display:flex;align-items:center;gap:16px;min-width:0;overflow:hidden;padding:4px 10px;background:var(--c-panel);border-bottom:1px solid var(--c-border)}#focus-row[hidden]{display:none}#focus-controls-slot{display:flex;min-width:0;overflow:hidden}#app.focus-mode main{grid-template-columns:minmax(0,1fr)}.pattern-indicator{color:var(--c-accent);letter-spacing:.08em;white-space:nowrap;min-width:0;max-width:22em;overflow:hidden;text-overflow:ellipsis;padding-right:8px;border-right:1px solid var(--c-border)}.pattern-indicator[hidden]{display:none}.transport{display:flex;align-items:center;gap:8px;flex:1 1 0;min-width:0;overflow-x:auto;scrollbar-width:thin}.transport .transport-buttons{display:flex;gap:3px}.transport-buttons .record{border-color:var(--c-muted);color:var(--c-muted)}.transport-buttons .record.releases{font-size:10px;letter-spacing:.04em}.transport-buttons .record.active{background:var(--c-muted);border-color:var(--c-muted);color:#14060a}@media(hover:hover){.transport-buttons .record.active:hover{background:var(--c-muted);border-color:var(--c-muted);color:#14060a}}.transport .field{display:flex;align-items:center;gap:3px;white-space:nowrap}.transport .field label{color:var(--c-text-dim);letter-spacing:.08em}.transport .field output{min-width:2.2em;text-align:center;color:var(--c-instrument)}.transport .field.bpm input{width:4.5em;text-align:right;color:var(--c-accent)}.transport .spacer{flex:1 1 0;min-width:0}#master-volume{width:96px}.transport .field{flex:0 1 auto}main{grid-row:main;display:grid;min-width:0;grid-template-columns:250px minmax(0,1fr) 280px;min-height:0}@media(max-width:1200px){main{grid-template-columns:200px minmax(0,1fr) 240px}}@media(max-width:899px){main{grid-template-columns:minmax(0,1fr);grid-auto-rows:min-content;overflow-y:auto;scrollbar-width:thin}#grid-panel{order:-1;min-height:60vh}#sidebar-left,#sidebar-right{overflow:visible;border:0;border-top:1px solid var(--c-border)}#sidebar-left #order-panel,#sidebar-left #pattern-panel,#sidebar-right #instrument-panel{flex:0 0 auto;overflow-y:visible}#sidebar-left #controls-panel,#sidebar-right #midi-panel{margin-top:0}}#grid-panel{display:flex;flex-direction:column;min-width:0;min-height:0}#grid-container{flex:1;min-height:0;position:relative;background:var(--c-grid-bg)}#pattern-canvas{display:block;outline:none}.sidebar{background:var(--c-panel);overflow-y:auto;scrollbar-width:thin;display:flex;flex-direction:column}#sidebar-left{border-right:1px solid var(--c-border);overflow:hidden}#sidebar-left #order-panel,#sidebar-left #pattern-panel{flex:1 1 50%;min-height:0;display:flex;flex-direction:column}#sidebar-left #controls-panel{flex:0 0 auto;margin-top:auto}#sidebar-right{overflow:hidden}#sidebar-right #instrument-panel{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow-y:auto;scrollbar-width:thin}#sidebar-right #midi-panel{flex:0 0 auto;margin-top:auto}#sidebar-right #scope-panel{flex:0 0 auto}#sidebar-right{border-left:1px solid var(--c-border)}#statusbar{grid-row:status;display:flex;align-items:center;gap:14px;padding:0 10px;background:var(--c-panel);border-top:1px solid var(--c-border);color:var(--c-gutter-text);font-size:11px;white-space:nowrap;overflow-x:auto;overflow-y:hidden;scrollbar-width:none}#statusbar .spacer{flex:1}#statusbar .field-mode:not(:empty){color:var(--c-volume)}#statusbar .dsp-load.warn{color:var(--c-muted)}#statusbar [data-slot=message]{color:var(--c-accent)}#dialog-host{display:contents}.fatal{position:fixed;inset:auto 0 0;padding:12px;background:var(--c-muted);color:#14060a;font-weight:700}.panel{padding:8px 10px;border-bottom:1px solid var(--c-border)}.sidebar .panel:last-child{border-bottom:none}.panel h2{margin:0 0 6px;display:flex;align-items:baseline;gap:8px;font-size:11px;letter-spacing:.18em;color:var(--c-text-dim);font-weight:600}.panel .row{display:flex;align-items:center;gap:6px;margin-bottom:3px}.panel .row label{width:3.2em;color:var(--c-text-dim);letter-spacing:.06em}.panel .row input[type=range]{flex:1;min-width:0}.panel .row output{width:3em;text-align:right;color:var(--c-instrument)}.panel .row select{flex:1;min-width:0}.panel .hint{margin:6px 0 0;color:var(--c-text-dim)}.panel.drop-target{outline:1px dashed var(--c-accent);outline-offset:-3px}.order-list{list-style:none;margin:0 0 6px;padding:0;flex:1 1 auto;min-height:60px;overflow-y:auto;scrollbar-width:thin;border:1px solid var(--c-border);background:var(--c-grid-bg)}.order-list li{display:flex;gap:10px;padding:1px 6px;cursor:pointer}.order-list li .index{color:var(--c-gutter-text)}.order-list li .arrow{color:var(--c-text-dim)}.order-list li .pattern{color:var(--c-note)}.order-list li .name,.pattern-list li .name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--c-text-dim)}.order-list li.selected .name{color:#cfe3ff}.pattern-list{list-style:none;margin:0;padding:0;flex:1 1 auto;min-height:60px;overflow-y:auto;scrollbar-width:thin;border:1px solid var(--c-border);background:var(--c-grid-bg)}.pattern-list li{display:flex;gap:8px;padding:1px 6px;cursor:pointer}.pattern-list li .index{color:var(--c-note)}.pattern-list li .rows,.pattern-list li .uses{color:var(--c-gutter-text)}.pattern-list li .uses{min-width:2em;text-align:right}.pattern-list li.unused .index,.pattern-list li.unused .name{opacity:.55}@media(hover:hover){.pattern-list li:hover{background:#141a24}}.pattern-list li.selected{background:var(--c-cursor);color:#fff}.pattern-list li.selected .index,.pattern-list li.selected .name,.pattern-list li.selected .rows,.pattern-list li.selected .uses{color:#fff;opacity:1}@media(hover:hover){.order-list li:hover{background:#141a24}}.order-list li.selected{background:var(--c-cursor);color:#fff}.order-list li.selected .index,.order-list li.selected .pattern{color:#fff}.panel h2 .subtitle{letter-spacing:.04em;font-size:10px;font-weight:400;text-transform:none;color:#313d4f}.panel-actions{display:flex;align-items:center;gap:4px;margin-top:4px;flex-wrap:wrap}.panel-actions button{padding:2px 6px;font-size:11px}.panel-actions .field{display:flex;align-items:center;gap:4px;color:var(--c-text-dim)}.panel-actions input{width:4.5em}.order-actions{display:flex;align-items:center;gap:8px}.order-actions .field{display:flex;align-items:center;gap:4px;color:var(--c-text-dim)}.order-actions input{width:4.5em}.instrument-list{list-style:none;margin:0 0 8px;padding:0;flex:1 1 auto;min-height:6.5em;overflow-y:auto;scrollbar-width:thin;border:1px solid var(--c-border);background:var(--c-grid-bg)}.instrument-list li{display:flex;gap:8px;padding:1px 6px;cursor:pointer}.instrument-list li .slot{color:var(--c-gutter-text)}.instrument-list li .name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.instrument-list li .kind{color:var(--c-text-dim)}@media(hover:hover){.instrument-list li:hover{background:#141a24}}.instrument-list li.selected{background:var(--c-cursor);color:#fff}.instrument-list li.selected .slot,.instrument-list li.selected .kind{color:#cfe3ff}@media(max-height:820px){.instrument-list{min-height:4em}}#instrument-panel h2,.instrument-editor,.instrument-actions,.sample-wave{flex:0 0 auto}.sample-wave{display:block;width:100%;height:56px;margin:6px 0;border:1px solid var(--c-border)}.instrument-actions{display:flex;gap:6px}.panel .checkbox{display:flex;align-items:center;gap:6px;color:var(--c-text-dim)}#scope-panel{flex:0 0 auto;display:flex;flex-direction:column}#scope-canvas{width:100%;height:84px;flex:0 0 84px;border:1px solid var(--c-border)}.settings-panel{width:min(520px,92vw);max-height:86vh;overflow-y:auto;background:var(--c-panel);border:1px solid var(--c-border);padding:14px 18px 20px}.settings-panel header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--c-border);margin-bottom:12px}.settings-panel h2{letter-spacing:.2em;font-size:13px;color:var(--c-accent)}.settings-panel h3{margin:14px 0 6px;font-size:11px;letter-spacing:.16em;color:var(--c-volume)}.derived-summary{margin:0 0 4px;padding:8px 10px;background:var(--c-grid-bg);border-left:2px solid var(--c-accent);color:var(--c-text);line-height:1.5}.settings-panel label{display:flex;align-items:center;gap:8px;margin-bottom:5px;color:var(--c-text-dim)}.settings-panel label>input:first-child,.settings-panel label>select:first-child{margin-left:auto}.settings-panel label>input[type=text]{flex:1;min-width:0;background:var(--c-bg);border:1px solid var(--c-border);color:var(--c-text);font:inherit;padding:1px 4px}.settings-panel .unit,.settings-panel .over{color:var(--c-text-dim);margin-left:0}.settings-panel .over{margin:0 -2px}.song-summary{display:block;width:100%;margin-top:7px;padding:3px 4px;text-align:left;color:var(--c-text-dim);border-color:transparent;background:transparent}@media(hover:hover){.song-summary:hover{border-color:var(--c-border);color:var(--c-text)}}.overlay{position:fixed;inset:0;background:#05070adb;display:flex;align-items:center;justify-content:center;z-index:20}.overlay[hidden]{display:none}.overlay>.whistle-panel{width:min(560px,94vw);max-height:88vh}.overlay>.record-panel{width:min(420px,94vw);max-height:88vh}.help-panel{width:min(1040px,94vw);max-height:86vh;overflow-y:auto;background:var(--c-panel);border:1px solid var(--c-border);padding:14px 18px 20px}.help-panel header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--c-border);margin-bottom:12px}.help-panel h2{letter-spacing:.2em;font-size:13px;color:var(--c-accent)}.help-body{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:0 32px;align-items:start}.help-column>section:first-child>h3{margin-top:0}.help-panel h3{margin:12px 0 4px;font-size:11px;letter-spacing:.16em;color:var(--c-volume)}.help-panel dl{display:grid;grid-template-columns:minmax(9em,auto) 1fr;gap:2px 12px;margin:0}.help-panel dl.effects{grid-template-columns:3.4em 1fr}.help-panel dt{color:var(--c-instrument)}.help-panel dd{margin:0;color:var(--c-text)}.help-primer{border-bottom:1px solid var(--c-border);padding-bottom:10px;margin-bottom:4px}.help-primer h3{margin-top:0}.help-diagram{margin:2px 0 0;font:inherit;line-height:1.45;white-space:pre;overflow-x:auto;color:var(--c-text-dim)}@media(max-width:780px){.help-body{grid-template-columns:minmax(0,1fr)}}.instrument-list li.empty{font-style:italic;opacity:.85}.instrument-list li.empty .kind{color:var(--c-accent);font-style:normal;font-weight:700}.empty-slot{padding:6px 0}.empty-slot p{margin:0 0 6px;color:var(--c-text-dim)}.empty-slot strong{color:var(--c-instrument)}.empty-slot button{width:100%;border-color:var(--c-accent);color:var(--c-accent)}.instrument-actions button:disabled,.order-actions button:disabled{opacity:.55;cursor:not-allowed}@media(hover:hover){.order-actions button:disabled:hover{background:#131922;border-color:var(--c-border)}}.value-flash{color:var(--c-instrument);white-space:nowrap}.value-flash:not(:empty){margin-right:12px}.panel-actions .derived{color:var(--c-text-dim);white-space:nowrap}.panel-actions .signature,.edit-controls .grid,.edit-controls .signature{width:auto;min-width:3.2em}.field.partial-bar,.field.partial-bar label{color:var(--c-warn)}.field.partial-bar input{border-color:var(--c-warn);color:var(--c-warn)}input.rename{flex:1;min-width:0;padding:0 2px;background:var(--c-bg);border:1px solid var(--c-accent);color:var(--c-text);font:inherit}input.rename:focus{outline:none}.edit-controls{display:flex;gap:4px 10px}#controls-panel .edit-controls{flex-direction:column;gap:3px}#controls-panel .edit-controls .field{display:flex;align-items:center;gap:4px}#controls-panel .edit-controls label{width:3.2em;color:var(--c-text-dim);letter-spacing:.06em}#controls-panel .edit-controls output{flex:1;text-align:right;padding-right:4px;color:var(--c-instrument)}#controls-panel .edit-controls input[type=number]{flex:1;min-width:0;text-align:right;color:var(--c-accent);appearance:textfield}#controls-panel .edit-controls input[type=number]::-webkit-outer-spin-button,#controls-panel .edit-controls input[type=number]::-webkit-inner-spin-button{appearance:none;margin:0}#focus-controls-slot .edit-controls{flex-direction:row;flex-wrap:nowrap;align-items:center;gap:10px}#focus-controls-slot .edit-controls .field{display:flex;align-items:center;gap:3px;white-space:nowrap}#focus-controls-slot .edit-controls label{color:var(--c-text-dim);letter-spacing:.06em}#focus-controls-slot .edit-controls output{min-width:2.2em;text-align:center;color:var(--c-instrument)}#focus-controls-slot .edit-controls input[type=number]{width:4.5em;text-align:right;color:var(--c-accent)}#controls-panel .edit-controls .group-break{margin-top:7px;padding-top:7px;border-top:1px solid var(--c-border)}#focus-controls-slot .edit-controls .group-break{margin-left:4px;padding-left:14px;border-left:1px solid var(--c-border)}.edit-controls button:disabled{opacity:.55;cursor:not-allowed}.title-rename{width:12em;color:var(--c-volume);letter-spacing:.1em}.track-rename{position:absolute;z-index:5;padding:0 4px;font-size:13px;letter-spacing:.02em}.dialog-overlay{z-index:30}.dialog-panel{display:flex;flex-direction:column;width:min(440px,90vw);max-height:calc(100% - 24px);background:var(--c-panel);border:1px solid var(--c-border);box-shadow:0 18px 48px #0000008c}.dialog-panel header,.dialog-actions{flex:none}.dialog-actions.stacked{flex:0 1 auto;min-height:0;overflow-y:auto}.dialog-panel header{padding:10px 16px;border-bottom:1px solid var(--c-border)}.dialog-panel h2{margin:0;font-size:12px;letter-spacing:.2em;font-weight:600;color:var(--c-volume)}.dialog-body{flex:1;min-height:0;overflow-y:auto;padding:14px 16px 4px}.dialog-body p{margin:0 0 8px;line-height:1.5}.dialog-body p:first-child{color:var(--c-text)}.progress-track{height:6px;margin:4px 0 12px;background:var(--c-bg);border:1px solid var(--c-border);overflow:hidden}.progress-fill{height:100%;background:var(--c-accent);transition:width .12s linear}.dialog-body p+p{color:var(--c-text-dim)}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;padding:10px 16px 14px}.dialog-actions button{min-width:6.5em;padding:5px 12px}.dialog-actions.stacked{flex-direction:column;align-items:stretch;justify-content:flex-start}.dialog-actions.stacked button{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:7px 12px;text-align:left}.dialog-actions.stacked .detail{color:var(--c-text-dim);letter-spacing:0}.dialog-actions.stacked button:focus-visible .detail{color:var(--c-text)}@media(hover:hover){.dialog-actions.stacked button:hover .detail{color:var(--c-text)}}.dialog-actions button:focus-visible{outline:1px solid var(--c-accent);outline-offset:1px}.dialog-actions .primary{border-color:var(--c-accent);color:var(--c-accent)}.dialog-actions .danger{border-color:var(--c-muted);color:var(--c-muted)}@media(hover:hover){.dialog-actions .danger:hover{background:var(--c-muted);color:#14060a}}.patch-browser-panel{display:flex;flex-direction:column;width:min(420px,92vw);height:min(80vh,720px);background:var(--c-panel);border:1px solid var(--c-border);padding:14px 16px 12px}.patch-browser-panel header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--c-border);margin-bottom:10px}.patch-browser-panel h2{letter-spacing:.2em;font-size:13px;color:var(--c-accent)}.patch-search input{width:100%;margin-bottom:8px}.patch-groups{display:flex;flex-wrap:wrap;gap:3px;margin-bottom:8px}.patch-groups button{font-size:9px;letter-spacing:.08em;padding:2px 6px}.patch-groups button.active{border-color:var(--c-accent);color:var(--c-accent)}.patch-list{flex:1;overflow-y:auto;margin:0;padding:0;list-style:none;border:1px solid var(--c-border);background:var(--c-grid-bg)}.patch-group{position:sticky;top:0;padding:4px 8px 2px;font-size:9px;letter-spacing:.16em;color:var(--c-volume);background:var(--c-panel);border-bottom:1px solid var(--c-border)}.patch-item{padding:3px 10px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(hover:hover){.patch-item:hover{background:var(--c-row-highlight, rgba(255, 255, 255, .06))}}.patch-item.selected{background:var(--c-accent);color:var(--c-panel)}.patch-empty{padding:10px;opacity:.6}.patch-browser-panel footer{display:flex;align-items:center;gap:6px;padding-top:10px}.patch-target{flex:1;font-size:10px;color:var(--c-volume);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.instrument-editor-panel{display:flex;flex-direction:column;width:min(560px,96vw);max-height:88vh;background:var(--c-panel);border:1px solid var(--c-border);padding:14px 16px 12px}.instrument-editor-panel header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--c-border);margin-bottom:8px}.instrument-editor-panel h2{letter-spacing:.16em;font-size:13px;color:var(--c-accent);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.instrument-editor-panel header>div{display:flex;gap:4px;flex:none}.editor-slot{color:var(--c-volume);letter-spacing:normal}.editor-body{overflow-y:auto;overflow-x:hidden}.editor-section{border-bottom:1px solid var(--c-border)}.editor-section.inactive h3 .editor-title{opacity:.5}.editor-section h3{display:flex;align-items:center;gap:6px;margin:0;padding:6px 2px;font-size:10px;letter-spacing:.16em;color:var(--c-volume);cursor:pointer;user-select:none}.editor-summary{flex:1;font-size:9px;letter-spacing:normal;text-transform:none;opacity:.65;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.editor-caret{margin-left:auto;opacity:.7}.editor-enable{display:flex;align-items:center}.editor-controls{padding:2px 0 8px}.editor-row{display:grid;grid-template-columns:12ch minmax(0,1fr) 21ch;align-items:center;gap:8px;padding:2px 0}.editor-row label{font-size:9px;letter-spacing:.08em;color:var(--c-volume);overflow:hidden;text-overflow:ellipsis}.editor-row input[type=range],.editor-row select{width:100%;min-width:0}.editor-row output{font-size:10px;text-align:right;color:var(--c-note);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.editor-empty{padding:12px 2px;opacity:.7}.editor-open{width:100%;margin-top:6px}.mixer-panel{display:flex;flex-direction:column;width:min(1040px,94vw);max-height:min(86vh,620px);background:var(--c-panel);border:1px solid var(--c-border);padding:14px 16px 12px}.mixer-panel header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--c-border);margin-bottom:12px}.mixer-panel h2{letter-spacing:.2em;font-size:13px;color:var(--c-accent)}.mixer-scopes{display:flex;gap:4px;margin-left:auto;margin-right:10px}.mixer-scopes button.active{border-color:var(--c-accent);color:var(--c-accent)}.mixer-panel header button{background:none;border:1px solid var(--c-border);color:var(--c-dim);font:inherit;font-size:11px;padding:2px 8px;cursor:pointer}.mixer-strips{display:flex;gap:6px;flex:1;align-items:flex-start;overflow-x:auto;overflow-y:hidden;padding-bottom:6px}.mixer-strip{display:flex;flex-direction:column;align-items:center;flex:0 0 auto;width:62px;border:1px solid var(--c-border);padding:6px 4px;gap:4px;cursor:pointer}.mixer-strip.selected{border-color:var(--c-accent)}.strip-head{display:flex;align-items:center;gap:3px;width:100%}.strip-slot{font-size:10px;color:var(--c-accent);letter-spacing:.1em;flex:1}.strip-head button{background:none;border:1px solid var(--c-border);color:var(--c-dim);font:inherit;font-size:8px;line-height:1;padding:2px 3px;cursor:pointer}.strip-head [data-action=mute].active{border-color:var(--c-muted);color:var(--c-muted)}.strip-head [data-action=solo].active{border-color:var(--c-accent);color:var(--c-accent)}.mixer-strip.inaudible .strip-body,.mixer-strip.inaudible .strip-readout,.mixer-strip.inaudible .strip-name,.mixer-strip.inaudible .strip-pan{opacity:.4}.strip-name{font-size:9px;color:var(--c-dim);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.strip-body{display:flex;align-items:stretch;justify-content:center;gap:6px;height:var(--fader-length, 180px);width:100%}.strip-fader-well{position:relative;width:22px;height:var(--fader-length, 180px);flex:0 0 auto}.strip-fader{position:absolute;top:0;left:0;width:var(--fader-length, 180px);height:22px;margin:0;transform-origin:top left;transform:rotate(-90deg) translate(calc(var(--fader-length, 180px) * -1))}.strip-fader,.strip-pan,.strip-send{touch-action:none}.strip-meter{position:relative;width:8px;height:100%;border:1px solid var(--c-border);background:linear-gradient(to top,var(--c-accent) 0%,var(--c-accent) 66%,#d8a13a 66%,#d8a13a 88%,var(--c-muted) 88%);overflow:hidden}.meter-mask{position:absolute;left:0;right:0;top:0;height:100%;background:#0b0e13}.meter-hold{position:absolute;left:0;right:0;height:1px;background:var(--c-note)}.strip-readout{font-size:9px;color:var(--c-note);white-space:nowrap}.strip-pan,.strip-send{width:100%;margin:0}.strip-send{accent-color:var(--c-volume)}.mixer-bus{display:flex;align-items:center;gap:8px;border-top:1px solid var(--c-border);margin-top:10px;padding-top:10px}.bus-title{font-size:10px;letter-spacing:.16em;color:var(--c-volume)}.mixer-bus button{background:none;border:1px solid var(--c-border);color:var(--c-dim);font:inherit;font-size:10px;padding:3px 10px;cursor:pointer;max-width:34ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mixer-bus button.active{border-color:var(--c-accent);color:var(--c-accent)}.bus-hint{font-size:9px;color:var(--c-dim);margin-left:auto}.mixer-empty{color:var(--c-dim);font-size:11px;padding:12px}.sample-editor-panel{display:flex;flex-direction:column;gap:8px;width:min(960px,96vw);max-height:90vh;background:var(--c-panel);border:1px solid var(--c-border);padding:14px 16px 12px}.sample-editor-panel header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--c-border);padding-bottom:6px}.sample-editor-panel h2{letter-spacing:.16em;font-size:13px;color:var(--c-accent);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sample-editor-panel header>div{display:flex;gap:4px;flex:none}.sample-editor-canvas{display:block;width:100%;height:220px;border:1px solid var(--c-border);cursor:grab;touch-action:none}.sample-editor-hint{color:var(--c-text-dim);font-size:11px}.sample-editor-readouts{display:flex;flex-wrap:wrap;gap:4px 20px;font-size:11px;color:var(--c-text)}.sample-editor-readouts b{color:var(--c-text-dim);font-weight:400;letter-spacing:.12em;margin-right:4px}.sample-editor-controls{display:flex;align-items:center;gap:18px;flex-wrap:wrap;border-top:1px solid var(--c-border);padding-top:8px}.sample-editor-slider{display:flex;align-items:center;gap:8px;flex:1 1 320px;font-size:11px;letter-spacing:.12em;color:var(--c-text-dim)}.sample-editor-slider input[type=range]{flex:1 1 auto;min-width:120px}.sample-editor-slider output{flex:none;width:150px;text-align:right;color:var(--c-volume);letter-spacing:normal}.sample-editor-buttons{display:flex;gap:4px;flex:none;flex-wrap:wrap}.sample-editor-buttons [data-action=normalise]{min-width:108px}.routing-panel{display:flex;flex-direction:column;gap:8px;width:min(940px,96vw);max-height:90vh;background:var(--c-panel);border:1px solid var(--c-border);padding:14px 16px 12px}.routing-panel header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--c-border);padding-bottom:6px}.routing-panel h2{letter-spacing:.16em;font-size:13px;color:var(--c-accent)}.routing-bulk,.routing-picks{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:11px;letter-spacing:.12em;color:var(--c-text-dim)}.routing-bulk button,.routing-picks button{color:var(--c-text)}.routing-bulk{border-bottom:1px solid var(--c-border);padding-bottom:8px}.routing-scope b{display:inline-block;min-width:10ch;font-family:var(--font-mono);color:var(--c-volume);font-weight:400}.routing-buttons,.routing-picks{display:flex;gap:4px}.routing-bulk-channel{display:flex;align-items:center;gap:6px}.routing-table-scroll{overflow-y:auto;min-height:0;flex:1 1 auto}.routing-table{width:100%;border-collapse:collapse;font-size:11px}.routing-table th{position:sticky;top:0;z-index:1;text-align:left;font-weight:400;letter-spacing:.12em;color:var(--c-text-dim);background:var(--c-panel);border-bottom:1px solid var(--c-border);padding:4px 6px}.routing-table td{padding:2px 6px;border-bottom:1px solid var(--c-bg);white-space:nowrap}.routing-off .routing-name,.routing-off .routing-program,.routing-off .routing-key{color:var(--c-text-dim)}.routing-slot{color:var(--c-volume)}.routing-name{color:var(--c-text);max-width:200px;overflow:hidden;text-overflow:ellipsis}.routing-program,.routing-key{color:var(--c-text-dim)}.routing-summary{font-size:11px;color:var(--c-text-dim);border-top:1px solid var(--c-border);padding-top:8px}.routing-warn{font-size:11px;color:var(--c-warn)}.sample-editor-slices{display:flex;align-items:center;gap:6px;flex:none}.sample-editor-sliceinfo{color:var(--c-instrument);letter-spacing:normal;flex:1 1 auto;text-align:right}.transport-auto-layout[hidden]{display:none}.compact{display:grid;grid-template-rows:auto minmax(0,1fr) auto auto auto;height:100vh;height:100dvh;background:var(--c-bg);color:var(--c-text);overflow:hidden}.compact-bar{display:flex;align-items:center;gap:10px;background:var(--c-panel);padding:6px 10px;padding-top:max(6px,env(safe-area-inset-top))}.compact-foot{display:grid;grid-template-columns:repeat(calc(var(--pad-columns, 4) * 2),minmax(0,1fr));align-items:center;gap:3px;background:var(--c-panel);padding:3px 3px max(3px,env(safe-area-inset-bottom));border-top:1px solid var(--c-border);font-size:11px;color:var(--c-text-dim)}.compact-transport,.compact-foot [data-slot=edit],.compact-foot [data-slot=audition]{grid-column:span 2}.compact-menu{grid-column:-2}.compact-scope{grid-column:-3;width:100%;height:38px;border-radius:2px;background:var(--c-grid-bg);touch-action:none;pointer-events:none}.compact-foot .compact-menu>[data-menu=toggle]{min-width:0;width:100%}.compact-bar{min-width:0;border-bottom:1px solid var(--c-border)}.compact-bar button{min-width:44px;min-height:44px;font-size:18px;flex:none}.compact-foot button,.compact-foot .phone-transport button{min-width:0;width:100%;min-height:38px;font-size:11px;letter-spacing:.1em;flex:none}.compact-foot .phone-transport button{font-size:14px}.compact-where{flex:1 1 auto;min-width:0;text-align:center;overflow:hidden}.compact-track.soloed{background:var(--c-cursor);color:var(--c-cursor-text, #fff);border-radius:2px}.compact-track{padding:8px 4px;display:block;color:var(--c-accent);letter-spacing:.1em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.compact-track[hidden]{display:none}.compact-rename{display:block;width:100%;padding:7px 3px;font:inherit;letter-spacing:.1em;color:var(--c-accent);background:var(--c-bg);border:1px solid var(--c-accent);border-radius:2px}.compact-rename[hidden]{display:none}.compact-pattern{display:block;font-size:10px;color:var(--c-text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.compact-canvas{position:relative;min-height:0;min-width:0}.compact-grid{position:absolute;inset:0;display:block;width:100%;height:100%;touch-action:none}.compact-soon{color:var(--c-gutter-text);letter-spacing:.08em}.compact-octaves{display:grid;grid-template-columns:repeat(var(--pad-columns, 4),minmax(0,1fr));align-items:center;gap:3px;padding:3px 3px 0;background:var(--c-panel);border-top:1px solid var(--c-border);font-size:11px;color:var(--c-text-dim)}.compact-octaves button{min-width:0;min-height:clamp(22px,3.5vh,28px);font-size:14px}.compact-octaves [data-slot=octave]{grid-column:span 2;font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;white-space:nowrap}.compact-octaves{position:relative}.compact-octaves .compact-gap{display:none}.compact-octaves .compact-gap.compact-hint{display:flex;position:absolute;inset:3px 3px 0;align-items:center;justify-content:center;background:var(--c-panel)}.compact-pads{background:var(--c-panel)}.pads{display:grid;grid-template-columns:repeat(var(--pad-columns, 4),minmax(0,1fr));gap:3px;padding:3px;background:var(--c-panel)}.pad{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;min-height:clamp(44px,7vh,56px);padding:0;border:1px solid var(--c-border);background:var(--c-row-alt);color:var(--c-text);touch-action:none;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}.pad-label{font-size:15px;letter-spacing:.04em;color:var(--c-note)}.pad-detail{font-size:9px;color:var(--c-text-dim)}.pad-dead{background:var(--c-bg);border-style:dashed}.pad-dead .pad-label{color:var(--c-text-dim)}.pad-hit{background:var(--c-cursor);border-color:var(--c-accent)}.compact-octave{min-width:1.4em;text-align:center;color:var(--c-text);white-space:nowrap}.compact-gap{flex:1 1 auto}.compact-foot [data-slot=audition].muted{color:var(--c-muted)}.compact-foot [data-action=edit].active{background:var(--c-muted);color:var(--c-cursor-text)}.compact-hint{text-align:center;color:var(--c-accent);letter-spacing:.06em;white-space:nowrap}.medium{display:grid;grid-template-rows:auto minmax(0,1fr) auto;height:100vh;height:100dvh;background:var(--c-bg);color:var(--c-text);overflow:hidden}.medium-tabs{display:flex;gap:2px;padding:4px 4px 0;padding-top:max(4px,env(safe-area-inset-top));background:var(--c-panel);overflow-x:auto;scrollbar-width:none}.medium-tabs button{flex:1 0 auto;min-height:44px;padding:0 9px;font-size:11px;letter-spacing:.12em;border-bottom:2px solid transparent}.medium-tabs button.active{color:var(--c-accent);border-bottom-color:var(--c-accent)}.medium-body{position:relative;min-height:0;overflow:auto;display:flex;justify-content:center}.medium-panel{display:contents}.medium-panel[hidden]{display:none}.medium-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 10px;padding-bottom:max(6px,env(safe-area-inset-bottom));background:var(--c-panel);border-top:1px solid var(--c-border);font-size:11px;color:var(--c-text-dim)}.medium-where{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--c-volume)}.medium-where[hidden]{display:none}.medium-actions{display:flex;align-items:center;gap:4px;margin-left:auto;min-width:0;overflow-x:auto;scrollbar-width:none}.medium-tab-actions{display:flex;align-items:center;gap:6px}.medium-tab-actions[hidden]{display:none}.medium-tab-actions .panel-actions{display:flex;gap:4px;margin:0;padding:0;border:0}.medium-foot button{min-height:34px;flex:none;font-size:11px;letter-spacing:.1em}.phone-transport{display:flex;align-items:center;gap:6px}.phone-transport button svg{width:1.1em;height:1.1em}.phone-transport button{display:inline-flex;align-items:center;justify-content:center;min-width:46px;min-height:40px;font-size:16px;flex:none}.phone-transport button.active{background:var(--c-accent);color:var(--c-cursor-text)}.phone-transport-position{font-size:11px;color:var(--c-text-dim);letter-spacing:.06em;min-width:4.5em;white-space:nowrap}.compact-transport{display:flex;gap:3px}.compact-foot .compact-transport button{flex:1 1 0;width:auto}.compact-transport .phone-transport-position{display:none}.medium-transport{flex:none}.compact-foot button,.compact-octaves button,.compact-bar button,.medium-foot button,.phone-menu-sheet{color:var(--c-text)}.compact-octave,.compact-hint,.phone-transport-position,.phone-menu-item small{color:var(--c-text-dim)}.phone-menu-item.advanced{display:none}.phone-menu-sheet.everything .phone-menu-item.advanced{display:block}.phone-menu-toast{position:absolute;right:0;bottom:calc(100% + 6px);z-index:40;margin:0;padding:8px 10px;max-width:60vw;width:max-content;background:var(--c-panel);border:1px solid var(--c-accent);color:var(--c-text);font-size:11px;letter-spacing:.06em;pointer-events:none}.phone-menu-toast[hidden]{display:none}.phone-menu{position:relative;flex:none}.phone-menu>[data-menu=toggle]{min-width:38px;min-height:38px;font-size:16px}.phone-menu-sheet{position:absolute;right:0;bottom:calc(100% + 6px);z-index:30;min-width:220px;max-height:calc(100dvh - 80px);overflow-y:auto;overscroll-behavior:contain;background:var(--c-panel);border:1px solid var(--c-border);box-shadow:0 -8px 24px #00000080}.phone-menu-sheet[hidden]{display:none}.phone-menu-items{display:flex;flex-direction:column}.phone-menu-item{display:flex;flex-direction:column;align-items:flex-start;gap:1px;min-height:48px;padding:6px 14px;border:0;border-bottom:1px solid var(--c-bg);text-align:left;letter-spacing:.1em}.phone-menu-item small{font-size:10px;letter-spacing:normal;color:var(--c-text-dim)}.phone-menu-item.danger{color:var(--c-muted)}.phone-menu-status:not(:empty){padding:8px 14px;font-size:11px;color:var(--c-accent);border-top:1px solid var(--c-border)}.phone-panel{padding:0;align-items:stretch;justify-content:stretch}.phone-panel>.help-panel,.phone-panel>.settings-panel,.phone-panel>.whistle-panel,.phone-panel>.phone-midi{width:100%;max-width:none;max-height:100%;border:0;padding-bottom:calc(20px + env(safe-area-inset-bottom))}.phone-panel .help-body{grid-template-columns:minmax(0,1fr)}.phone-panel .help-panel header button,.phone-panel .settings-panel header button{min-height:38px;padding:0 14px}.medium-panel>*,.medium-panel .midi-devices,.medium-panel .midi-routing>*{height:auto;max-height:none;width:100%;overflow:visible}.medium-body{align-items:flex-start}.medium-panel .order-list,.medium-panel .pattern-list,.medium-panel .instrument-list,.medium-panel .patch-list,.medium-panel .editor-body,.medium-panel .routing-table-scroll{max-height:none;overflow-y:visible}.medium-panel .sample-editor-canvas{height:120px}.medium-panel [data-action=close]{display:none}.medium-panel.medium-flow:not([hidden]){display:block;width:100%;padding:10px 12px}.compact-patterns{display:flex;align-items:center;justify-content:center;gap:2px;min-width:0}.compact-bar .compact-patterns button{min-width:26px;min-height:26px;padding:0;font-size:13px;line-height:1;flex:none}.medium-panel[data-panel=order]:not([hidden]),.medium-panel[data-panel=patterns]:not([hidden]),.medium-panel[data-panel=instruments]:not([hidden]),.medium-panel[data-panel=sounds]:not([hidden]){display:flex;flex-direction:column;align-self:stretch;height:100%;min-height:0}.medium-panel[data-panel=order] h2,.medium-panel[data-panel=patterns] h2,.medium-panel[data-panel=instruments] h2{display:none}.medium-panel[data-panel=order] .order-list,.medium-panel[data-panel=patterns] .pattern-list,.medium-panel[data-panel=instruments] .instrument-list{flex:1;min-height:0;max-height:none;overflow-y:auto;margin:0}.medium-tab-actions .instrument-editor{display:flex;align-items:center;gap:8px}.medium-tab-actions .instrument-editor .row{display:flex;align-items:center;gap:4px}.medium-tab-actions .instrument-editor input[type=range]{width:72px}.medium-tab-actions .instrument-editor output{min-width:26px;text-align:right;color:var(--c-text-dim)}.medium-tab-actions .instrument-actions{display:flex;gap:4px}.medium-panel .instrument-empty:not(:empty){padding:8px 0}.medium-panel[data-panel=mixer]:not([hidden])>.mixer-panel{display:flex;flex-direction:column;height:100%;min-height:0}.medium-panel[data-panel=mixer] .mixer-panel>header h2,.medium-panel[data-panel=mixer] .strip-name{display:none}.medium-panel[data-panel=mixer] .mixer-strips{flex:1;min-height:0;overflow-y:auto}.medium-panel[data-panel=mixer] .mixer-strip{gap:2px;padding:4px}.medium-panel[data-panel=sample] .sample-editor-canvas{height:70px}.medium-panel[data-panel=sample] .sample-editor-hint{display:none}.medium-panel[data-panel=instrument] .editor-body{padding-top:4px}.medium-panel[data-panel=sounds]:not([hidden])>.patch-browser-panel{display:flex;flex-direction:column;height:100%;min-height:0}.medium-panel[data-panel=sounds] .patch-browser-panel>header h2{display:none}.medium-panel[data-panel=sounds] .patch-list{flex:1;min-height:0;max-height:none;overflow-y:auto}.medium-tab-actions .field{display:flex;align-items:center;gap:4px;white-space:nowrap}.medium-tab-actions .field input[type=number]{width:56px;min-height:34px}.medium-tab-actions .derived{white-space:nowrap;color:var(--c-text-dim)}@media(max-width:340px){.compact-foot [data-slot=edit]{font-size:10px;letter-spacing:.04em}}.tablet-foot [data-slot=edit],.tablet-foot [data-slot=audition]{min-width:14ch}[data-action=listen]{min-width:10ch}.compact-octave{min-width:13ch;font-family:var(--font-mono);letter-spacing:.08em}.tablet{display:grid;grid-template-rows:minmax(0,1fr) minmax(0,1fr);height:100vh;height:100dvh;background:var(--c-bg);color:var(--c-text);overflow:hidden}@media(orientation:landscape){.tablet{grid-template-rows:minmax(0,1fr);grid-template-columns:3fr 2fr}.tablet-panels{order:-1}.tablet.grid-left{grid-template-columns:2fr 3fr}.tablet.grid-left .tablet-panels{order:1;border-right:0;border-left:1px solid var(--c-border)}}.tablet-grid{display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-height:0;min-width:0;background:var(--c-bg)}@media(orientation:portrait){.tablet-grid{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr) auto}.tablet-head{grid-area:1 / 1}.tablet-foot{grid-area:1 / 2;padding-top:max(6px,env(safe-area-inset-top));padding-bottom:6px;border-top:0;border-bottom:1px solid var(--c-border)}.tablet .compact-canvas{grid-area:2 / 1 / 3 / -1}}.tablet-foot{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:6px 10px;padding-bottom:max(6px,env(safe-area-inset-bottom));background:var(--c-panel);border-top:1px solid var(--c-border)}.tablet-foot button{min-height:40px;flex:none;font-size:11px;letter-spacing:.1em}.tablet-panels{min-height:0;min-width:0;border-top:1px solid var(--c-border)}@media(orientation:landscape){.tablet-panels{border-top:0;border-right:1px solid var(--c-border)}}.tablet-panels.medium{height:100%}.tablet-head{display:flex;align-items:center;gap:6px;padding:6px 8px;padding-top:max(6px,env(safe-area-inset-top));background:var(--c-panel);border-bottom:1px solid var(--c-border);font-size:11px;letter-spacing:.1em}.tablet-head button{min-width:44px;min-height:38px;flex:none;font-size:11px;letter-spacing:.1em}.tablet-where{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--c-accent)}.tablet .compact-canvas{min-height:0;min-width:0}@media(orientation:portrait){[data-menu-item=grid-side]{display:none}}.medium-panel.tablet-keys:not([hidden]){display:grid;grid-template-rows:minmax(0,1fr);min-height:0;height:100%;padding:6px}.tablet-keys .compact-pads,.tablet-keys .pads{display:grid;min-height:0;height:100%;grid-auto-rows:minmax(0,1fr)}.compact,.medium,.tablet,.phone-dialogs{touch-action:manipulation;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}.compact :focus:not(:focus-visible),.medium :focus:not(:focus-visible),.tablet :focus:not(:focus-visible),.phone-dialogs :focus:not(:focus-visible){outline:none}.compact input,.compact textarea,.medium input,.medium textarea,.tablet input,.tablet textarea,.phone-dialogs input,.phone-dialogs textarea,.phone-menu-status{user-select:text;-webkit-user-select:text;-webkit-touch-callout:default}.midi-devices .row,.phone-midi .row{display:flex;align-items:center;gap:10px;margin:0 0 6px;min-height:44px}.midi-devices .row label,.phone-midi .row label{width:5em;flex:none;font-size:11px;letter-spacing:.1em;color:var(--c-text-dim)}.midi-devices .row select,.phone-midi .row select{flex:1 1 auto;min-width:0;min-height:38px;padding:0 8px;background:var(--c-bg);border:1px solid var(--c-border);color:var(--c-text);font:inherit}.phone-midi .checkbox{gap:12px;padding-top:6px;border-top:1px solid var(--c-border);font-size:11px;letter-spacing:.1em;color:var(--c-text)}.routing-header-extra .checkbox{display:flex;align-items:center;gap:10px;margin:0;min-height:38px;font-size:11px;letter-spacing:.1em;color:var(--c-text)}.routing-panel header{gap:12px}.routing-header-extra{margin-left:auto}.routing-header-extra .checkbox input[type=checkbox],.phone-midi .checkbox input[type=checkbox]{width:22px;height:22px;flex:none;accent-color:var(--c-accent)}.midi-devices .hint,.phone-midi .hint{margin:8px 0 0;font-size:11px;line-height:1.5;color:var(--c-text-dim)}.midi-devices h2{display:none}.phone-midi h2{margin:0 0 10px;font-size:11px;letter-spacing:.16em;color:var(--c-accent)}.medium-panel .routing-program,.medium-panel .routing-key{display:none}.midi-devices{padding-bottom:10px;margin-bottom:10px;border-bottom:1px solid var(--c-border)}.phone-midi{position:relative;width:min(420px,92vw);max-height:86vh;overflow-y:auto;padding:14px 16px;background:var(--c-panel);border:1px solid var(--c-border)}.phone-midi-close{position:absolute;top:8px;right:8px;min-width:44px;min-height:44px}.whistle-panel{width:100%;max-height:100%;display:flex;flex-direction:column;overflow:hidden;padding:16px;background:var(--c-panel);border:1px solid var(--c-border);text-align:center}.whistle-body{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden}@media(max-height:700px){.whistle-note{font-size:40px}}.whistle-panel header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;border-bottom:1px solid var(--c-border)}.whistle-panel h2{margin:0;font-size:11px;letter-spacing:.16em;color:var(--c-accent)}.whistle-panel header button{min-width:44px;min-height:38px}.whistle-note{margin:0;font-family:var(--font-mono);font-size:56px;line-height:1.1;color:var(--c-accent)}.whistle-cents{margin:0 0 10px;font-size:12px;letter-spacing:.08em;color:var(--c-text-dim);min-height:1.2em}.whistle-bar{position:relative;height:8px;margin:0 0 14px;background:var(--c-grid-bg);border:1px solid var(--c-border)}.whistle-bar:before{content:"";position:absolute;left:50%;top:-3px;bottom:-3px;width:1px;background:var(--c-border)}.whistle-bar span{position:absolute;top:-3px;bottom:-3px;width:3px;margin-left:-1px;background:var(--c-instrument);transition:left 60ms linear}.whistle-bar span.in-tune{background:var(--c-accent)}.whistle-panel h3{margin:4px 0 6px;font-size:10px;letter-spacing:.16em;text-align:left;color:var(--c-volume)}.whistle-numbers{display:grid;grid-template-columns:auto 1fr;gap:2px 10px;margin:0 0 12px;font-size:11px;text-align:left}.whistle-numbers dt{letter-spacing:.1em;color:var(--c-text-dim)}.whistle-numbers dd{margin:0;font-family:var(--font-mono);color:var(--c-text)}.whistle-take{margin:0 0 12px;padding:8px;background:var(--c-grid-bg);border-left:2px solid var(--c-accent);font-family:var(--font-mono);font-size:10px;line-height:1.5;text-align:left;white-space:pre-wrap;overflow-wrap:break-word;color:var(--c-text);user-select:text;-webkit-user-select:text}.whistle-take[hidden]{display:none}.whistle-said{margin:0 0 12px;font-size:11px;line-height:1.5;text-align:left;color:var(--c-text-dim)}.whistle-actions{flex:0 0 auto;display:flex;gap:8px;justify-content:center}.whistle-actions button{min-height:44px;padding:0 18px;font-size:11px;letter-spacing:.1em}.record-panel{width:100%;max-height:100%;display:flex;flex-direction:column;overflow:hidden;padding:16px;background:var(--c-panel);border:1px solid var(--c-border)}.record-panel header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;border-bottom:1px solid var(--c-border)}.record-panel h2{margin:0;font-size:11px;letter-spacing:.16em;color:var(--c-accent)}.record-panel header button{min-width:44px;min-height:38px}.record-body{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;text-align:left}.record-actions{flex:0 0 auto;display:flex;gap:8px;justify-content:center}.record-actions button{min-height:44px;padding:0 18px;font-size:11px;letter-spacing:.1em}.record-meter{height:14px;margin:4px 0 6px;background:var(--c-grid-bg);border:1px solid var(--c-border)}.record-meter span{display:block;height:100%;width:0;background:var(--c-accent);transition:width 60ms linear}.record-meter span.hot{background:var(--c-muted)}.record-clock{display:flex;justify-content:space-between;align-items:baseline;margin:0 0 12px;font-family:var(--font-mono);font-size:24px;color:var(--c-text)}.record-limit{font-size:11px;letter-spacing:.1em;color:var(--c-text-dim)}.record-name{display:flex;align-items:center;gap:10px;margin:0 0 12px;font-size:10px;letter-spacing:.16em;color:var(--c-text-dim)}.record-name input{flex:1 1 auto;min-width:0;min-height:38px;font-family:var(--font-mono);text-transform:uppercase}.record-said{margin:0 0 12px;font-size:11px;line-height:1.5;color:var(--c-text-dim)}.startup-failure{display:flex;align-items:flex-start;justify-content:center;min-height:100vh;padding:24px 16px;background:var(--c-bg, #0a0c10);color:var(--c-text, #cfd8e3);font:13px/1.5 ui-monospace,monospace}.startup-failure-panel{max-width:60ch}.startup-failure h1{font-size:13px;letter-spacing:.16em;color:var(--c-muted, #ff7a7a);margin:0 0 12px}.startup-failure-what{margin:0 0 8px;color:var(--c-text, #cfd8e3)}.startup-failure-where{margin:0 0 16px;padding:8px;overflow-x:auto;background:var(--c-grid-bg, #0d1016);border-left:2px solid var(--c-border, #253044);font-size:11px;white-space:pre;color:var(--c-text-dim, #7c8798)}.startup-failure-ways{display:flex;align-items:center;gap:12px;margin-bottom:16px}.startup-failure-ways button,.startup-failure-ways a{min-height:44px;display:inline-flex;align-items:center;padding:0 14px;border:1px solid var(--c-border, #253044);color:var(--c-accent, #5ee0a0);text-decoration:none;letter-spacing:.1em}.startup-failure-note{margin:0;color:var(--c-text-dim, #7c8798)}
