@font-face{font-family:Plex Sans;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Plex Sans;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Plex Sans;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Plex Sans;src:url(/assets/ibm-plex-sans-latin-700-normal-Bxkt5Cjx.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Plex Mono;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Plex Mono;src:url(/assets/ibm-plex-mono-latin-600-normal-BgSNZQsw.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}:root,[data-theme=dark]{color-scheme:dark;--canvas: #101318;--surface: #1A1F27;--raised: #262D37;--sunken: #0C0F13;--overlay: rgba(6, 8, 11, .72);--text: #F2F3F4;--text-2: #BAC3CC;--text-3: #8E98A4;--text-disabled: #6A737E;--divider: #232932;--border: #2E3540;--border-strong: #717B89;--brand: #E8AE69;--brand-ink: #1B1206;--brand-soft: #3A2C1C;--brand-line: #8A6640;--signal: #76C5BC;--signal-ink: #06201D;--signal-soft: #15302D;--signal-line: #3E7C75;--sim: #B7AEE0;--sim-soft: #24223A;--sim-line: #6F679C;--info: #8DB8F2;--info-soft: #18273B;--info-line: #3F5F8F;--warn: #E9CF6B;--warn-ink: #231C02;--warn-soft: #332C12;--warn-line: #7D6C2E;--danger: #F08A80;--danger-ink: #2A0806;--danger-soft: #3A1A18;--danger-line: #8A403B;--danger-fill: #C9483D;--on-fill: #FFFFFF;--focus: #A9D4FF;--hover: rgba(242, 243, 244, .06);--pressed: rgba(242, 243, 244, .11);--selected: var(--brand-soft);--selected-line: var(--brand);--display-bg: #0B0E12;--display-ink: #E8AE69;--display-dim: #3A2E20;--display-grid: rgba(232, 174, 105, .06);--m-nr: #F8F8F8;--m-fx1: #4C7CFF;--m-drv: #F84840;--m-amp: #F88028;--m-ir: #F8D028;--m-eq: #80C028;--m-fx2: #50D0F8;--m-dly: #1898F8;--m-rvb: #9A4CFF;--shadow-1: 0 1px 0 rgba(0, 0, 0, .35);--shadow-2: 0 12px 32px rgba(0, 0, 0, .45);--hatch: repeating-linear-gradient(135deg, transparent 0 6px, rgba(183, 174, 224, .1) 6px 8px)}[data-theme=light]{color-scheme:light;--canvas: #F4F5F3;--surface: #FFFFFF;--raised: #E9EBE8;--sunken: #E9EBE8;--overlay: rgba(34, 40, 45, .38);--text: #22282D;--text-2: #525F67;--text-3: #5A666E;--text-disabled: #8F989E;--divider: #E3E6E2;--border: #D5D9D4;--border-strong: #7D878D;--brand: #96531D;--brand-ink: #FFFFFF;--brand-soft: #F6EADF;--brand-line: #C8986F;--signal: #176F69;--signal-ink: #FFFFFF;--signal-soft: #E1F0EE;--signal-line: #7DB3AE;--sim: #5B4F99;--sim-soft: #EEEBF8;--sim-line: #A69DD3;--info: #2D5F9E;--info-soft: #E6EEF8;--info-line: #8FB0DA;--warn: #7A5A00;--warn-ink: #FFFFFF;--warn-soft: #F7E9B5;--warn-line: #C9B26A;--danger: #B3261E;--danger-ink: #FFFFFF;--danger-soft: #FBE9E7;--danger-line: #D9918B;--danger-fill: #B3261E;--on-fill: #FFFFFF;--focus: #1D4F91;--hover: rgba(34, 40, 45, .05);--pressed: rgba(34, 40, 45, .1);--selected: var(--brand-soft);--selected-line: var(--brand);--display-bg: #E4E7E1;--display-ink: #22282D;--display-dim: #CDD2CB;--display-grid: rgba(34, 40, 45, .05);--m-nr: #6B7378;--m-fx1: #2F55D6;--m-drv: #D0302A;--m-amp: #C2570A;--m-ir: #9A7400;--m-eq: #4D7F0C;--m-fx2: #0F7FA8;--m-dly: #0A6CC4;--m-rvb: #6A2BD0;--shadow-1: 0 1px 2px rgba(34, 40, 45, .08);--shadow-2: 0 12px 32px rgba(34, 40, 45, .16);--hatch: repeating-linear-gradient(135deg, transparent 0 6px, rgba(91, 79, 153, .1) 6px 8px)}@supports (color: oklch(.5 .1 30)){:root[data-accent=custom]:not([data-theme=light]){--brand: oklch(.8 .115 var(--accent-h));--brand-ink: oklch(.18 .03 var(--accent-h));--brand-soft: oklch(.29 .045 var(--accent-h));--brand-line: oklch(.56 .09 var(--accent-h))}:root[data-accent=custom][data-theme=light]{--brand: oklch(.49 .12 var(--accent-h));--brand-ink: oklch(1 0 0);--brand-soft: oklch(.95 .025 var(--accent-h));--brand-line: oklch(.72 .075 var(--accent-h))}.accent-track{background:linear-gradient(to right,#6ca7f5,#a795ef,#d086ce,#e7809b,#e98664,#d39837,#b8a636)}}:root{--accent-h: 68;--raised-hover: color-mix(in srgb, var(--raised) 100%, var(--text) 7%);--surface-hover: color-mix(in srgb, var(--surface) 100%, var(--text) 5%);--font-sans: "Plex Sans", "Segoe UI", system-ui, -apple-system, sans-serif;--font-mono: "Plex Mono", ui-monospace, "Cascadia Mono", Consolas, monospace;--fs-11: 11px;--fs-12: 12px;--fs-13: 13px;--fs-14: 14px;--fs-16: 16px;--fs-18: 18px;--fs-20: 20px;--fs-24: 24px;--fs-32: 32px;--fs-40: 40px;--fs-56: 56px;--lh-tight: 1.15;--lh: 1.45;--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 20px;--s-6: 24px;--s-8: 32px;--s-10: 40px;--s-12: 48px;--r-1: 4px;--r-2: 6px;--r-3: 10px;--r-pill: 999px;--tap: 44px;--tap-lg: 52px;--tap-stage: 64px;--nav-h: 64px;--safe-b: env(safe-area-inset-bottom, 0px);--t-fast: .12s;--t-med: .18s;--ease: cubic-bezier(.2, .7, .2, 1)}@media(prefers-reduced-motion:reduce){:root{--t-fast: 0ms;--t-med: 0ms}}:root{font-family:var(--font-sans);color:var(--text);background:var(--canvas);font-synthesis:none;-webkit-font-smoothing:antialiased;accent-color:var(--brand)}*{box-sizing:border-box}body{margin:0;min-width:320px;background:var(--canvas);color:var(--text);font:400 var(--fs-14)/var(--lh) var(--font-sans)}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled,[aria-disabled=true]{opacity:.5;cursor:not-allowed}.btn:disabled,.btn[aria-disabled=true]{background:transparent;border-style:dashed;border-color:var(--border-strong);color:var(--text-disabled);opacity:1}.btn-primary:disabled{background:transparent;color:var(--text-disabled);border-color:var(--border-strong)}input,select,textarea{background:var(--sunken);border:1px solid var(--border-strong);border-radius:var(--r-2);padding:10px 12px;min-width:0;min-height:var(--tap)}textarea{resize:vertical;min-height:0}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}input::placeholder,textarea::placeholder{color:var(--text-3)}kbd{font:600 11px/1 var(--font-mono);padding:3px 5px;border-radius:var(--r-1);border:1px solid var(--border);background:var(--raised);color:var(--text-2)}a{color:var(--brand)}h1,h2,h3,h4{margin:0 0 8px;letter-spacing:-.01em;line-height:var(--lh-tight)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.muted{color:var(--text-2)}.small{font-size:12px}.strong{font-weight:700}.warn{color:var(--warn)}.ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.eyebrow{color:var(--brand);letter-spacing:.08em;font-size:var(--fs-11);font-weight:600;text-transform:uppercase}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:var(--tap);background:var(--raised);color:var(--text);border:1px solid var(--border);border-radius:var(--r-2);padding:9px 14px;font-weight:600;white-space:nowrap;transition:background var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease)}.btn:hover:not(:disabled){background:var(--raised-hover)}.btn:active:not(:disabled){background:color-mix(in srgb,var(--raised) 100%,var(--text) 12%)}.btn-primary{background:var(--brand);color:var(--brand-ink);border-color:var(--brand);font-weight:700}.btn-primary:hover:not(:disabled){background:color-mix(in srgb,var(--brand) 88%,var(--text) 12%)}.btn-danger{background:var(--danger-fill);border-color:var(--danger-fill);color:var(--on-fill)}.btn-danger-ghost{background:transparent;color:var(--danger);border-color:var(--danger)}.btn-warn{background:var(--warn-soft);border-color:var(--warn);color:var(--warn)}.btn-add{border:1px dashed var(--brand-line);background:var(--brand-soft);color:var(--brand)}.btn-small{min-height:34px;padding:5px 10px;font-size:13px}.btn-xl{min-height:56px;padding:12px 22px;font-size:var(--fs-16)}.icon-btn{min-width:var(--tap);min-height:var(--tap);border-radius:var(--r-2);background:var(--raised);border:1px solid var(--border-strong);color:var(--text-2);font-size:18px}.link{background:none;border:0;padding:0 4px;color:var(--brand);text-decoration:underline;min-height:0;text-align:left}.star{background:none;border:0;font-size:22px;color:var(--text-3);min-width:var(--tap);min-height:var(--tap)}.star.on{color:var(--brand)}.file-button{cursor:pointer}.button-row,.row{display:flex;gap:8px;align-items:center}.wrap{flex-wrap:wrap}.push{margin-left:auto}.grow{flex:1}.stack{display:grid;gap:10px}.status-dot{display:inline-block;width:8px;height:8px;background:var(--signal);border-radius:50%;margin-right:4px}.status-dot.off{background:var(--warn)}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-3);padding:18px;display:grid;gap:14px}.list-panel{position:sticky;top:72px;max-height:calc(100vh - 88px);overflow:auto}.card{background:var(--raised);border:1px solid var(--border);border-radius:var(--r-3);padding:16px;display:grid;gap:10px}.card .btn:not(.btn-primary):not(.btn-danger):not(.btn-add){border-color:var(--border-strong)}.page-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;flex-wrap:wrap}.page-head p{margin:0;max-width:70ch;line-height:1.6}.section-title{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap;margin-top:6px}.section-title h3{margin:0}.loading{padding:40px;color:var(--text-3)}.field{display:grid;gap:5px;font-size:12px;font-weight:700;color:var(--text-3)}.field>span{letter-spacing:.3px}.field input,.field select,.field textarea{font-weight:400;color:var(--text);font-size:15px}.bpm-field input{width:100px}.check{display:flex;gap:8px;align-items:center;font-size:14px;min-height:var(--tap)}.check input{min-height:0;width:20px;height:20px}.radio-group{border:0;padding:0;margin:0;display:grid;gap:2px}.radio-group legend{font-weight:700;margin-bottom:6px}.grid-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}.title-input{font-size:22px;font-weight:700;background:transparent;border-color:transparent;flex:1;padding:6px 8px;margin-left:-8px}.title-input:hover,.title-input:focus{border-color:var(--border-strong)}.editor-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.metric{background:var(--sunken);border:1px solid var(--border);border-radius:10px;padding:8px 14px;min-width:110px}.metric small{display:block;color:var(--text-3);font-size:10px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase}.metric strong{font-family:var(--font-mono);font-size:22px;font-variant-numeric:tabular-nums}.item-list{display:grid;gap:6px}.item{display:grid;gap:3px;text-align:left;background:var(--raised);border:1px solid var(--border);border-radius:10px;padding:11px 13px;min-height:var(--tap)}.item small{color:var(--text-2);font-size:12px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.item.active{border-color:var(--brand);background:var(--brand-soft)}.empty,.notice{background:var(--raised);border:1px solid var(--border-strong);border-radius:10px;padding:14px;color:var(--text-2);line-height:1.55;font-size:14px;margin:0}.notice.small{font-size:13px;padding:10px}.alert{display:flex;flex-wrap:wrap;gap:8px;align-items:center;background:var(--danger-soft);border:1px solid var(--danger-line);border-radius:9px;padding:11px 14px;color:var(--danger);margin:0 0 12px}.alert ul{width:100%;margin:4px 0 0;padding-left:18px;font-size:13px}.chips{display:flex;flex-wrap:wrap;gap:4px}.chip{font-size:12px;font-weight:700;color:var(--brand);background:var(--brand-soft);border:1px solid var(--brand-line);border-radius:6px;padding:2px 7px}.bpm-tag{font-size:12px;color:var(--text-2);white-space:nowrap;font-variant-numeric:tabular-nums}.results{list-style:none;margin:0;padding:0;display:grid;gap:4px}.results li{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:6px 8px;background:var(--raised);border-radius:8px}.add-box{display:grid;gap:8px;padding:12px;border:1px dashed var(--border-strong);border-radius:var(--r-3)}.footer-actions{border-top:1px solid var(--border);padding-top:12px}.sortable{list-style:none;margin:0;padding:0;display:grid;gap:8px}.sortable-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}.sortable-item{position:relative;border-radius:10px;transition:transform .12s ease}.sortable-item.is-dragging{opacity:.55}.sortable-list .drop-before:before,.sortable-list .drop-after:after{content:"";position:absolute;left:0;right:0;height:3px;background:var(--brand);border-radius:2px}.sortable-list .drop-before:before{top:-6px}.sortable-list .drop-after:after{bottom:-6px}.sortable-grid .drop-before,.sortable-grid .drop-after{outline:3px solid var(--brand)}.drag-handle{min-width:var(--tap);min-height:var(--tap);border-radius:8px;border:1px solid var(--border-strong);background:var(--raised);color:var(--text-2);font-size:18px;cursor:grab;touch-action:none}.drag-handle:active{cursor:grabbing}.entry-row{display:flex;align-items:center;gap:10px;background:var(--raised);border:1px solid var(--border);border-radius:10px;padding:8px 10px}.entry-main{display:grid;gap:4px;flex:1;min-width:0}.index{font:600 var(--fs-14) var(--font-mono);color:var(--brand);min-width:26px;font-variant-numeric:tabular-nums}.inline-note{min-height:34px;padding:5px 8px;font-size:13px;background:transparent;border-color:transparent}.inline-note:hover,.inline-note:focus{border-color:var(--border-strong)}.step-card{display:grid;gap:6px;background:var(--raised);border:1px solid var(--border);border-radius:10px;padding:10px}.step-code{font:600 22px var(--font-mono);color:var(--brand)}.preset-picker{display:flex;gap:8px;flex-wrap:wrap}.preset-picker select{flex:1;min-width:200px;max-width:360px}.toolbar{padding:0}.preset-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}.preset-card{display:grid;gap:6px;background:var(--raised);border:1px solid var(--border);border-radius:10px;padding:10px}.preset-card .small{min-height:34px;padding:6px 8px}.audio-player{width:100%}.tracks{list-style:none;padding:0;margin:0;display:grid;gap:8px}.track{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;background:var(--raised);border:1px solid var(--border);border-radius:9px;padding:12px}.track small{display:block;color:var(--text-3);margin-top:3px}.track.is-playing{border-color:var(--brand)}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:14px}th,td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--border);vertical-align:top}th{color:var(--text-2);font-size:12px}.ev{display:inline-block;font-size:12px;font-weight:700;padding:2px 8px;border-radius:999px;border:1px solid;white-space:nowrap}.ev-hardware-verified-on-this-device{color:var(--signal);border-color:var(--signal-line)}.ev-yes{color:var(--text-2);border-color:var(--border-strong)}.ev-third-party-hardware-tested,.ev-interface{color:var(--sim);border-color:var(--sim-line)}.ev-experimental-operator-approved{color:var(--warn);border-color:var(--warn-line)}.ev-simulated{color:var(--info);border-color:var(--info-line)}.ev-capture-verified{color:var(--signal);border-color:var(--signal-line)}.ev-blocked,.ev-no{color:var(--danger);border-color:var(--danger-line)}.ev-unsupported{color:var(--text-2);border-color:var(--border-strong)}.diagnostics{border:1px solid var(--border);border-radius:10px;padding:10px 12px;display:grid;gap:10px}.diagnostics summary{cursor:pointer;font-weight:700;min-height:var(--tap);display:flex;align-items:center}.diagnostics td.num{text-align:right;font-variant-numeric:tabular-nums;font-weight:700}.diagnostics tr.row-problem td{color:var(--danger)}.diag-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.diag-grid h4{margin:0 0 4px;font-size:13px;color:var(--text-2)}.plain{list-style:none;margin:0;padding:0;display:grid;gap:2px;font-size:13px}.plain li{display:flex;justify-content:space-between;gap:8px}.physical{display:flex;align-items:center;gap:12px;padding:10px 14px;border:2px solid var(--border-strong);border-radius:14px;background:var(--sunken)}.physical-code{font-family:var(--font-mono);font-size:44px;font-weight:600;line-height:1;letter-spacing:-1px;font-variant-numeric:tabular-nums;color:var(--text-2)}.physical-text{display:grid;gap:2px;min-width:0}.physical-text small{color:var(--text-2);font-size:13px}.physical-live{border-color:var(--signal)}.physical-live .physical-code{color:var(--signal)}.physical-stale{border-style:dashed;border-color:var(--warn)}.physical-stale .physical-code{color:var(--warn);opacity:.7}.physical-stale small{color:var(--warn)}.physical.compact{padding:4px 12px;gap:8px}.physical.compact .physical-code{font-size:28px}.physical.compact .physical-text small{font-size:12px;max-width:220px}.physical-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}.physical-grid h4{margin:0 0 6px;font-size:13px;color:var(--text-2)}.physical-grid p{margin:0}.port-list{list-style:none;padding:0;margin:0;display:grid;gap:6px}.port-list li{background:var(--raised);padding:10px;border-radius:7px}.capture{display:grid;gap:10px;border-top:1px solid var(--border);padding-top:12px}.capture-log{font-size:12px;max-height:300px;overflow:auto;background:var(--sunken);border-radius:8px;padding:10px 10px 10px 40px;margin:0}.capture-log code{color:var(--text-2)}.import-panel{display:grid;gap:10px}.import-preview{border:1px solid var(--warn);background:var(--warn-soft);border-radius:10px;padding:12px}.import-preview ul{margin:0 0 8px;padding-left:18px;line-height:1.6}.danger-zone{border:1px solid var(--danger-line);border-radius:10px;padding:14px;display:grid;gap:8px}.fatal{max-width:760px;margin:40px auto;padding:24px;display:grid;gap:14px;line-height:1.6}.fatal pre{white-space:pre-wrap;background:var(--sunken);padding:12px;border-radius:8px}.tap-tempo{display:flex;gap:14px;align-items:center;justify-content:space-between;flex-wrap:wrap;background:var(--brand-soft);border:1px solid var(--brand-line);border-radius:var(--r-3);padding:12px 16px}.tap-readout{display:grid;gap:2px}.tap-readout strong{font-family:var(--font-mono);font-size:34px;font-variant-numeric:tabular-nums}.tap-readout strong small{font-size:13px;color:var(--brand)}.tap-controls{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap}.tap-button{min-width:110px;min-height:64px;display:grid;place-items:center;font-size:20px;-webkit-user-select:none;user-select:none;touch-action:manipulation}.tap-button small{font-weight:500;font-size:10px}.tap-button.flash{background:var(--text);color:var(--canvas)}@media(max-width:767px){.list-panel{position:static;max-height:none}}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.physical-name{color:var(--text-2);margin:0}.sp-name.physical-name{color:var(--text-2);font-style:italic}.link-panel{border-color:var(--warn-line)}.preview{display:grid;gap:10px;border:1px dashed var(--border-strong);border-radius:var(--r-3);padding:12px}.preview h4{margin:0}.preview-table{max-height:320px;overflow:auto}.preview-table tr.row-changed td{color:var(--warn)}.live-panel{display:grid;gap:8px;border:2px dashed var(--warn);border-radius:var(--r-3);padding:12px;background:var(--warn-soft)}.live-panel h4{margin:0;color:var(--warn)}.live-badge{border-color:var(--warn);color:var(--warn);background:var(--warn-soft);margin:0;justify-self:start}.selection-status{margin:0;font-weight:700}.selection-status.tone-ok{color:var(--signal)}.selection-status.tone-warn{color:var(--warn)}.selection-status.tone-bad{color:var(--danger)}.selection-status.tone-info{color:var(--text-2)}.stage-live-form{display:grid;gap:8px;border:2px dashed var(--warn);border-radius:var(--r-3);padding:12px;background:var(--warn-soft)}.readiness{list-style:none;margin:0;padding:0;display:grid;gap:4px;font-size:14px}.readiness li.ok{color:var(--signal)}.readiness li.bad{color:var(--danger)}.readiness small{color:var(--text-2)}.setlist-preview{border:1px solid var(--border);border-radius:10px;padding:10px 12px;display:grid;gap:8px}.setlist-preview summary{cursor:pointer;font-weight:700;min-height:var(--tap);display:flex;align-items:center}.preview-songs{list-style:none;margin:0;padding:0;display:grid;gap:10px}.preview-steps{list-style:none;margin:4px 0 0;padding:0 0 0 12px;display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center}.preview-steps li{display:inline-flex;gap:6px;align-items:baseline}.sp-phys{font-size:14px;font-style:italic;text-align:center}.ev-lab-readonly{color:var(--info);border-color:var(--info-line)}.ev-lab-live{color:var(--signal);border-color:var(--signal-line)}.ev-lab-preview{color:var(--brand);border-color:var(--brand-line)}.ev-hypothesis{color:var(--sim);border-color:var(--sim-line)}.lab-panel{gap:14px}.lab-result,.lab-preview,.lab-blocked{border-top:1px solid var(--border);padding-top:12px;display:grid;gap:10px}.lab-dl{display:grid;grid-template-columns:minmax(130px,max-content) 1fr;gap:6px 14px;margin:0}.lab-dl dt{color:var(--text-2);font-size:13px}.lab-dl dd{margin:0}.lab-reasons{margin:0;padding-left:18px;color:var(--warn);font-size:14px}.lab-blocked{opacity:.85}@media(max-width:640px){.lab-dl{grid-template-columns:1fr}.lab-dl dt{margin-top:6px}}.lab-monitor{border-top:1px solid var(--border);padding-top:12px;display:grid;gap:10px}.lab-params{margin:0;padding-left:18px;display:grid;gap:2px}.lab-monitor table{width:100%;border-collapse:collapse;font-size:14px}.lab-monitor th,.lab-monitor td{text-align:left;padding:4px 8px;border-bottom:1px solid var(--border);vertical-align:top}@media(max-width:640px){.lab-monitor table{display:block;overflow-x:auto}}.control-header .spacer,.view-head+.control-header .spacer{flex:1}.controls-view .card,.effects-view .card{margin-bottom:12px}.onoff{align-items:center;gap:8px;margin:6px 0}.onoff-label{min-width:11rem;font-weight:600}.controls-view .btn,.effects-view .btn{min-height:44px}.commit-range{display:grid;gap:6px;margin:8px 0}.commit-range input[type=range],.param input[type=range]{width:100%;min-height:36px}.results,.log-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.log-list{max-height:18rem;overflow:auto;font-size:.85rem}.log-list code{word-break:break-all}.chain{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}.chain-item{display:grid;gap:2px;justify-items:center;min-width:5.5rem;padding:8px;border:1px solid var(--border-strong);border-radius:10px}.chain-item.off{opacity:.65}.chain-pos{font-size:.75rem;opacity:.7}.module-card .params{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));margin-top:8px}.module-card h3{margin:0}@media(max-width:640px){.onoff-label{min-width:100%}}svg{flex-shrink:0}.px-text,.px-glyph{display:block}.display{display:inline-grid;place-items:center;padding:8px 10px;border-radius:var(--r-2);background-color:var(--display-bg);color:var(--display-ink);background-image:linear-gradient(var(--display-grid) 1px,transparent 1px),linear-gradient(90deg,var(--display-grid) 1px,transparent 1px);background-size:4px 4px;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--display-ink) 14%,transparent)}.display.is-sim{color:var(--sim);box-shadow:inset 0 0 0 1px var(--sim-line);background-image:var(--hatch)}.display.is-off{color:var(--text-disabled)}.display.lg{padding:14px 18px;border-radius:var(--r-3)}.display.xl{padding:20px 26px;border-radius:var(--r-3)}.badge{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 9px 0 7px;border-radius:var(--r-pill);font-size:var(--fs-12);font-weight:600;border:1px solid var(--border);background:var(--raised);color:var(--text-2);white-space:nowrap}.badge .px-glyph{width:12px;height:12px}.b-live,.b-confirmed{background:var(--signal-soft);border-color:var(--signal-line);color:var(--signal)}.b-stale{background:transparent;border:1px dashed var(--signal-line);color:var(--text-2)}.b-sim{background:var(--sim-soft) var(--hatch);border:1px dashed var(--sim-line);color:var(--sim)}.b-pending{background:var(--info-soft);border:1px dashed var(--info);color:var(--info)}.b-unconfirmed{background:var(--warn-soft);border-color:var(--warn-line);color:var(--warn)}.b-error{background:var(--danger-soft);border-color:var(--danger-line);color:var(--danger)}.b-local{background:var(--raised);border-color:var(--border);color:var(--text-2)}.b-off,.b-readonly{background:transparent;border-color:var(--border);color:var(--text-3)}.b-brand{background:var(--brand-soft);border-color:var(--brand-line);color:var(--brand)}.t-label{font-size:var(--fs-11);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.t-meta{font-size:var(--fs-12);color:var(--text-3)}.t-body2{font-size:var(--fs-13);color:var(--text-2);margin:0}.t-h2{font-size:var(--fs-20);font-weight:600;line-height:var(--lh-tight)}.t-h3{font-size:var(--fs-16);font-weight:600;line-height:var(--lh-tight)}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.dim{color:var(--text-3)}.hide-sm{display:initial}.step-select{display:grid;justify-items:start;gap:6px;min-height:var(--tap);padding:0;background:none;border:0;text-align:left;color:inherit}.step-card{border-radius:var(--r-3)}.step-card.is-selected{border-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand)}.new-form{border-top:1px solid var(--divider);padding-top:12px}[data-theme=light] .panel,[data-theme=light] .pane,[data-theme=light] .card{box-shadow:var(--shadow-1)}[data-theme=light] .card .card,[data-theme=light] .panel .card,[data-theme=light] .panel .pane{box-shadow:none}details.menu>summary.btn{-webkit-user-select:none;user-select:none}input[type=file]::file-selector-button{min-height:34px;margin-right:10px;padding:0 12px;border-radius:var(--r-2);border:1px solid var(--border-strong);background:var(--raised);color:var(--text);font:inherit;font-weight:600;cursor:pointer}input[type=file]::file-selector-button:hover{background:var(--raised-hover)}.link-glyph{display:inline-grid;place-items:center;width:30px;height:30px;flex-shrink:0}.btn:has(>.link-glyph){padding-left:10px}input[type=range].slider,input[type=range].big-range{--fill: 0%;-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:44px;min-height:44px;padding:0;border:0;background:transparent;accent-color:var(--brand)}input[type=range].slider::-webkit-slider-runnable-track,input[type=range].big-range::-webkit-slider-runnable-track{height:4px;border-radius:2px;background:linear-gradient(90deg,var(--brand) 0 var(--fill, 0%),var(--border-strong) var(--fill, 0%))}input[type=range].slider::-moz-range-track,input[type=range].big-range::-moz-range-track{height:4px;border-radius:2px;background:var(--border-strong)}input[type=range].slider::-moz-range-progress,input[type=range].big-range::-moz-range-progress{height:4px;border-radius:2px;background:var(--brand)}input[type=range].slider::-webkit-slider-thumb,input[type=range].big-range::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;margin-top:-8px;border-radius:3px;background:var(--text);border:2px solid var(--canvas);box-shadow:0 0 0 1px var(--border-strong)}input[type=range].slider::-moz-range-thumb,input[type=range].big-range::-moz-range-thumb{width:16px;height:16px;border-radius:3px;background:var(--text);border:2px solid var(--canvas);box-shadow:0 0 0 1px var(--border-strong)}input[type=range].slider:disabled::-webkit-slider-thumb,input[type=range].big-range:disabled::-webkit-slider-thumb{background:var(--text-disabled)}input[type=range].slider:disabled::-webkit-slider-runnable-track,input[type=range].big-range:disabled::-webkit-slider-runnable-track{background:var(--border)}input[type=range].big-range[data-unknown]::-webkit-slider-thumb,input[type=range].big-range[data-unknown]::-moz-range-thumb{background:var(--raised);border-color:var(--border-strong)}input[type=range].slider:focus-visible::-webkit-slider-thumb,input[type=range].big-range:focus-visible::-webkit-slider-thumb{outline:2px solid var(--focus);outline-offset:2px}@media(pointer:coarse){input[type=range].slider::-webkit-slider-thumb,input[type=range].big-range::-webkit-slider-thumb{width:28px;height:28px;margin-top:-12px}input[type=range].slider::-moz-range-thumb,input[type=range].big-range::-moz-range-thumb{width:24px;height:24px}}.view{display:grid;gap:16px;align-content:start;min-width:0}.view>*,.content>*{min-width:0}.view-head h2{margin:0 0 4px}.view-head p{margin:0}.spacer{flex:1}.app{min-height:100vh;min-height:100dvh;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto 1fr auto;grid-template-areas:"header" "main" "nav"}.app-header{grid-area:header;display:flex;align-items:center;gap:12px;padding:8px 16px;background:var(--canvas);border-bottom:1px solid var(--divider);min-height:56px;position:sticky;top:0;z-index:25}.brand{display:flex;gap:10px;align-items:center;color:var(--text);text-decoration:none;flex-shrink:0}.wordmark{display:inline-flex;align-items:center;gap:3px;color:var(--text);white-space:nowrap}.wordmark .wm-stage{color:var(--brand);display:inline-flex}.px-icon{flex-shrink:0;--icon-ink: var(--text);--icon-body: var(--raised);--icon-display: var(--display-bg);--icon-brand: var(--brand);--icon-signal: var(--signal)}.header-actions{display:flex;gap:8px;align-items:center}.header-error{color:var(--danger);font-size:12px;max-width:28ch}.soon{display:inline-flex;align-items:center;height:18px;padding:0 6px;border-radius:var(--r-pill);border:1px dashed var(--border-strong);color:var(--text-2);font-size:10px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.theme-toggle{display:inline-grid;place-items:center;width:var(--tap);height:36px;border-radius:var(--r-2);border:1px solid var(--border-strong);background:var(--surface);color:var(--text-2);cursor:pointer}.theme-toggle:hover{background:var(--surface-hover);color:var(--text)}.save-state{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-12);color:var(--text-3);white-space:nowrap}.save-state.bad{color:var(--danger);font-weight:600}.conn-chip{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;border:1px solid var(--border-strong);background:var(--sunken);font-size:13px;font-weight:700;white-space:nowrap;min-height:32px}.conn-dot{width:9px;height:9px;border-radius:50%;background:var(--text-2);flex-shrink:0}.conn-chip.tone-ok{border-color:var(--signal-line);color:var(--signal)}.conn-chip.tone-ok .conn-dot{background:var(--signal)}.conn-chip.tone-warn{border-color:var(--warn-line);color:var(--warn)}.conn-chip.tone-warn .conn-dot{background:var(--warn)}.conn-chip.tone-busy .conn-dot{background:var(--info);animation:pulse 1s ease-in-out infinite}.phys-chip{display:inline-flex;gap:8px;align-items:baseline;padding:4px 10px;border-radius:10px;background:var(--sunken);border:1px solid var(--border-strong);max-width:220px;min-width:0}.phys-chip strong{color:var(--signal);font-variant-numeric:tabular-nums}.phys-chip.is-stale strong{color:var(--warn)}.phys-chip.is-stale{border-style:dashed}.pill{display:inline-block;padding:3px 10px;border-radius:999px;border:1px solid var(--border-strong);font-size:12px;font-weight:700}.pill.tone-ok,.pill-ok{color:var(--signal);border-color:var(--signal-line)}.pill.tone-warn,.pill-warn{color:var(--warn);border-color:var(--warn-line)}.pill.tone-off{color:var(--text-2)}.save-pill{padding:5px 11px;border:1px solid var(--border);background:var(--raised);border-radius:999px;color:var(--text-2);font-size:12px}.save-pill.bad{border-color:var(--danger);color:var(--danger);background:var(--danger-soft)}.device-pill{display:inline-flex;align-items:center;gap:var(--s-2);min-height:40px;max-width:100%;padding:0 var(--s-3) 0 var(--s-2);border-radius:var(--r-2);border:1px solid var(--border-strong);background:var(--surface);color:var(--text);text-align:left;cursor:pointer}.device-pill:hover{background:var(--surface-hover)}.device-pill .dp-glyph{display:grid;place-items:center;width:28px;height:28px;border-radius:var(--r-1);background:var(--raised);color:var(--text-2);flex-shrink:0}.device-pill .dp-glyph.has-link{width:34px;height:34px}.device-pill .dp-text{display:grid;line-height:1.15;min-width:0}.device-pill .dp-text strong{font-size:var(--fs-13);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.device-pill .dp-text small{font-size:var(--fs-11);color:var(--text-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.device-pill.is-live{border-color:var(--signal-line)}.device-pill.is-live .dp-glyph{background:var(--signal-soft);color:var(--signal)}.device-pill.is-live .dp-text small{color:var(--signal)}.device-pill.is-stale{border-style:dashed;border-color:var(--signal-line)}.device-pill.is-pending{border-style:dashed;border-color:var(--info)}.device-pill.is-pending .dp-glyph{background:var(--info-soft);color:var(--info)}.device-pill.is-warn{border-color:var(--warn-line)}.device-pill.is-warn .dp-glyph{background:var(--warn-soft);color:var(--warn)}.app-nav{grid-area:nav;display:flex;background:var(--canvas)}.nav-group{display:grid;gap:2px}.nav-group-title{padding:0 var(--s-3) 4px;font-size:var(--fs-11);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.nav-item{position:relative;display:flex;align-items:center;gap:var(--s-3);min-height:var(--tap);padding:0 var(--s-3);border-radius:var(--r-2);color:var(--text-2);text-decoration:none;font-weight:500;font-size:14px;white-space:nowrap}.nav-item:hover{background:var(--hover);color:var(--text)}.nav-item.active{background:var(--raised);color:var(--text);font-weight:600}.nav-item.active .icon{color:var(--brand)}.nav-item .icon{flex-shrink:0}.nav-count{margin-left:auto;font:500 11px var(--font-mono);color:var(--text-3)}.nav-short{display:none}.nav-stage{justify-content:center;background:var(--brand);color:var(--brand-ink);font-weight:700}.nav-stage:hover{background:color-mix(in srgb,var(--brand) 88%,var(--text) 12%);color:var(--brand-ink)}.nav-stage.is-unavailable{background:transparent;border:1px dashed var(--border-strong);color:var(--text-disabled)}.nav-stage.is-unavailable:hover{background:transparent;color:var(--text-disabled)}.content{grid-area:main;width:100%;max-width:1480px;margin:0 auto;padding:18px 20px 32px;min-width:0;display:grid;gap:14px;align-content:start}.app-footer{margin-top:24px;font-size:11px;color:var(--text-3);padding:16px 0;border-top:1px solid var(--divider)}@keyframes pulse{50%{opacity:.35}}@media(max-width:767px){.app-header{padding:6px 12px;gap:8px}.nav-group-title{display:none}.spacer{display:block}.save-state:not(.bad){display:none}.device-pill{padding:0 8px 0 6px;min-height:40px}.device-pill .dp-text small{display:none}.device-pill .dp-text strong{max-width:15ch}.app-nav{position:fixed;left:0;right:0;bottom:0;z-index:30;height:calc(var(--nav-h) + var(--safe-b));padding:4px 6px calc(4px + var(--safe-b));justify-content:space-around;gap:2px;border-top:1px solid var(--divider)}.nav-group{display:contents}.nav-item{flex:1;flex-direction:column;justify-content:center;gap:2px;font-size:10px;padding:4px 1px;min-width:0;min-height:48px}.nav-item .nav-full,.nav-count{display:none}.nav-item .nav-short{display:inline}.hide-phone{display:none}[data-nav=home]{order:1}[data-nav=setlists]{order:2}[data-nav=stage]{order:3}[data-nav=presets]{order:4}[data-nav=device]{order:5}.nav-stage,.nav-stage:hover{background:transparent;color:var(--brand);font-weight:600}.nav-stage.is-unavailable{border:0;color:var(--text-disabled)}.content{padding:14px 14px calc(var(--nav-h) + var(--safe-b) + 24px)}.panel{padding:12px}}@media(min-width:768px){.app{grid-template-columns:76px minmax(0,1fr);grid-template-rows:auto 1fr;grid-template-areas:"nav header" "nav main"}.app-nav{position:sticky;top:0;height:100vh;height:100dvh;flex-direction:column;gap:var(--s-3);padding:var(--s-3) var(--s-2);border-right:1px solid var(--divider);overflow-y:auto}.nav-group{padding-top:var(--s-2);border-top:1px solid var(--divider)}.nav-group:first-of-type{border-top:0;padding-top:0}.nav-item{justify-content:center;padding:0}.nav-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.nav-count{display:none}.nav-item.active:before{content:"";position:absolute;left:-8px;top:10px;bottom:10px;width:3px;border-radius:0 2px 2px 0;background:var(--brand)}.nav-group-title{display:none}.nav-stage{min-height:48px}.more-card{display:none}}.nav-toggle{display:none}@media(min-width:1200px){.app{grid-template-columns:224px minmax(0,1fr)}.app-nav{padding:var(--s-3) var(--s-3) var(--s-4)}.nav-item{justify-content:flex-start;padding:0 var(--s-3)}.nav-stage{justify-content:center}.nav-label{position:static;width:auto;height:auto;clip:auto;overflow:visible}.nav-count{display:inline}.nav-group-title{display:block}.nav-item.active:before{left:-12px}.nav-toggle{display:flex;align-items:center;gap:var(--s-3);margin-top:auto;min-height:var(--tap);padding:0 var(--s-3);border-radius:var(--r-2);border:0;background:none;color:var(--text-3);font:inherit;font-size:13px;cursor:pointer}.nav-toggle:hover{background:var(--hover);color:var(--text)}.app.nav-collapsed{grid-template-columns:76px minmax(0,1fr)}.nav-collapsed .app-nav{padding:var(--s-3) var(--s-2)}.nav-collapsed .nav-item,.nav-collapsed .nav-toggle{justify-content:center;padding:0}.nav-collapsed .nav-label,.nav-collapsed .nav-toggle-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.nav-collapsed .nav-count,.nav-collapsed .nav-group-title{display:none}.nav-collapsed .nav-item.active:before{left:-8px}}@media(min-width:768px)and (max-width:1100px){.save-state .ss-text{display:none}}.work{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-items:start;min-width:0}.work>*{min-width:0}.pane{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-3);min-width:0}.pane-head{display:flex;align-items:center;gap:var(--s-2);padding:var(--s-3) var(--s-4);border-bottom:1px solid var(--divider);min-height:52px}.pane-head h2{margin:0}details.pane>summary.pane-head{cursor:pointer;list-style:none}details.pane>summary.pane-head::-webkit-details-marker{display:none}details.pane:not([open])>summary.pane-head{border-bottom:0}.pane-body{padding:var(--s-4);display:grid;gap:var(--s-3)}.ctx{display:grid;gap:var(--s-4);min-width:0}.pedal-now{gap:var(--s-3)}.pedal-row{display:flex;align-items:center;gap:var(--s-3);min-width:0}.pedal-text{min-width:0;display:grid;gap:2px}.kv{display:grid;grid-template-columns:64px 1fr;gap:6px var(--s-3);font-size:var(--fs-13);margin:0}.kv dt{color:var(--text-3)}.kv dd{margin:0;color:var(--text-2)}.legend{gap:var(--s-2)}.legend .row{justify-content:space-between;font-size:var(--fs-12);color:var(--text-2);gap:var(--s-3)}.ctx-step .step-code-inline{font-size:var(--fs-18)}@media(min-width:768px){.work{grid-template-columns:280px minmax(0,1fr)}.work>.ctx{grid-column:1 / -1;grid-template-columns:1fr 1fr;align-items:start}}@media(min-width:1200px){.work{grid-template-columns:280px minmax(0,1fr) 304px}.work>.ctx{grid-column:3;grid-template-columns:1fr;position:sticky;top:72px}}@media(max-width:767px){.work>.ctx{display:none}}@media(min-width:1200px){.segmented.library-tabs{display:none}}.sheet-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex}.sheet-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--overlay)}.sheet-panel{position:relative;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border-strong);color:var(--text);max-height:100dvh;outline:none}.sheet-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px 6px}.sheet-head h2{margin:0;font-size:20px}.sheet-body{padding:8px 16px 16px;display:grid;gap:12px;overflow:auto;overscroll-behavior:contain}.sheet-sheet{align-items:flex-end;justify-content:center}.sheet-sheet .sheet-panel{width:min(600px,100%);max-height:90dvh;border-radius:20px 20px 0 0;padding-bottom:var(--safe-b)}.sheet-drawer{justify-content:flex-start}.sheet-drawer .sheet-panel{width:min(360px,92vw);height:100dvh;border-radius:0 18px 18px 0;padding-bottom:var(--safe-b)}.sheet-actions{justify-content:flex-end}@media(min-width:768px){.sheet-sheet{align-items:center}.sheet-sheet .sheet-panel{border-radius:20px}}.icon-btn{display:inline-grid;place-items:center}.big-value{font-family:var(--font-mono);font-size:64px;font-weight:600;margin:0;text-align:center;line-height:1;font-variant-numeric:tabular-nums}.big-value small{font-size:22px;color:var(--text-2);font-weight:600}.big-status{font-size:18px;font-weight:700;margin:0}.vol-row{display:grid;grid-template-columns:var(--tap-lg) 1fr var(--tap-lg);gap:12px;align-items:center}.vol-row .btn-xl{padding:0;font-size:28px;line-height:1}.vol-row input[type=range],.param input[type=range]{width:100%;min-height:44px;accent-color:var(--brand)}.tuner-actions .btn{flex:1;min-width:150px}.live-feedback{margin:0;padding:8px 10px;border-radius:10px;background:var(--sunken);border:1px solid var(--border)}.live-feedback.fb-confirmed{border-color:var(--signal-line)}.live-feedback.fb-diverged,.live-feedback.fb-failed{border-color:var(--danger-line)}.home-view{grid-template-columns:minmax(0,1fr)}.conn-card .row{gap:10px}.menu{position:relative}.menu summary{list-style:none;cursor:pointer}.menu summary::-webkit-details-marker{display:none}.menu-list{position:absolute;right:0;top:calc(100% + 6px);z-index:10;display:grid;gap:6px;padding:8px;background:var(--surface);border:1px solid var(--border-strong);border-radius:12px;min-width:210px;box-shadow:var(--shadow-2)}.menu-list .btn{justify-content:flex-start}.active-preset{display:flex;align-items:center;gap:16px}.active-code{font-family:var(--font-mono);font-size:56px;font-weight:600;line-height:1;letter-spacing:-1px;font-variant-numeric:tabular-nums;color:var(--text)}.active-names{display:grid;gap:2px;min-width:0}.active-names strong{font-size:18px;overflow-wrap:anywhere}.quick-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.quick-tile{display:grid;gap:2px;align-content:center;text-align:left;padding:12px 14px;min-height:96px;border-radius:16px;background:var(--raised);border:1px solid var(--border-strong);color:var(--text)}.quick-tile:hover:not(:disabled){border-color:var(--brand)}.qt-label{display:inline-flex;gap:6px;align-items:center;font-size:13px;font-weight:700;color:var(--text-2)}.qt-value{font-size:30px;font-weight:700;line-height:1.1;font-variant-numeric:tabular-nums}.qt-hint{font-size:12px;color:var(--text-2)}.quick-stage{border-color:var(--brand-line);grid-column:span 2}.looper-footswitches{margin:0;padding-left:18px;display:grid;gap:4px}.quick-stage .qt-value{color:var(--brand)}.hero-label{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.more-links{display:grid;grid-template-columns:1fr 1fr;gap:8px}.more-links .btn{justify-content:flex-start}.hint-offline{margin:0}.resume-main{display:grid;gap:4px}.resume-song{font-size:24px;line-height:1.15;overflow-wrap:anywhere}@media(min-width:768px){.home-view{grid-template-columns:repeat(2,minmax(0,1fr))}.home-view>.conn-card,.home-view>.alert,.home-view>.quick-row,.home-view>.hint-offline{grid-column:1 / -1}}@media(max-width:420px){.qt-value{font-size:24px}.active-code{font-size:46px}.quick-tile{padding:10px}}.accordion summary,.card>summary{cursor:pointer;font-weight:700;min-height:var(--tap);display:flex;align-items:center}.accordion-body{display:grid;gap:14px;padding-top:6px}.log-list{max-height:26rem}.log-row{display:grid;grid-template-columns:auto auto auto 1fr;gap:6px 10px;align-items:baseline;padding:6px 8px;border-radius:8px;background:var(--sunken);border-left:3px solid transparent}.log-row.sev-warn{border-left-color:var(--warn)}.log-row.sev-error{border-left-color:var(--danger);background:var(--danger-soft)}.log-row time{color:var(--text-2);font-variant-numeric:tabular-nums;font-size:12px}.log-text{min-width:0;overflow-wrap:anywhere}@media(max-width:560px){.log-row{grid-template-columns:auto auto 1fr}.log-row .log-text{grid-column:1 / -1}}.tab-kind{margin:0}.tabs-scroll .seg{white-space:nowrap}.library-tabs{justify-self:start}@media(max-width:767px){.app-footer{margin-bottom:8px}.hide-sm,.conn-card .conn-chip{display:none}.card{padding:12px}.home-view{gap:10px}}.active-code.empty{color:var(--text-2);font-size:40px}.conn-menu{position:relative;min-width:0;flex:0 1 auto}.conn-trigger{cursor:pointer;min-height:var(--tap);max-width:100%}.conn-trigger:hover{background:var(--raised-hover)}.conn-text{overflow:hidden;text-overflow:ellipsis}.conn-preset{color:var(--text);font-variant-numeric:tabular-nums;padding-left:8px;border-left:1px solid var(--border-strong)}.conn-preset.is-stale{color:var(--warn)}.conn-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40}.conn-pop{position:absolute;right:0;top:calc(100% + 8px);z-index:41;width:min(360px,calc(100vw - 24px));max-height:calc(100dvh - 88px);overflow:auto;display:grid;gap:10px;padding:14px;background:var(--surface);border:1px solid var(--border-strong);border-radius:16px;box-shadow:var(--shadow-2)}.conn-pop p{margin:0}.conn-pop-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.conn-pop-preset strong{font-size:18px}.conn-actions{display:grid;gap:8px}.connect-actions .btn,.conn-actions .btn,.control-header .btn{gap:8px}.conn-actions .btn{justify-content:flex-start}.conn-actions-row{display:flex;gap:8px}.conn-actions-row .btn-tool{flex:1 1 0;width:auto;min-width:0}.conn-quick{display:grid;gap:4px}.conn-quick h3{margin:4px 0 0;font-size:15px}.conn-quick .param-list .param{grid-template-columns:minmax(0,1fr) auto}.conn-quick .param-list .param .p-slider{grid-column:1 / -1;grid-row:2}.conn-quick .param-list .param .p-note,.conn-quick .param-list .param .p-hint{grid-column:1 / -1}.conn-about{padding-top:8px;border-top:1px solid var(--border)}.icon-btn{min-width:var(--tap);min-height:var(--tap);border-radius:10px;background:transparent;border:1px solid transparent;color:var(--text-2)}.icon-btn:hover{background:var(--raised);color:var(--text)}@media(max-width:767px){.conn-backdrop{background:var(--overlay)}.conn-pop{position:fixed;left:0;right:0;top:auto;bottom:calc(var(--nav-h) + var(--safe-b));width:100%;border-radius:20px 20px 0 0;padding-bottom:16px;max-height:calc(100dvh - var(--nav-h) - var(--safe-b) - 56px);overflow:auto}}.connect-cta{display:grid;gap:10px;grid-template-columns:minmax(0,1fr) auto;align-items:center;border-color:var(--border-strong)}.connect-cta p{margin:2px 0 0}.connect-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}@media(max-width:560px){.connect-actions{justify-content:stretch}.connect-actions .btn{flex:1 1 100%}}.connect-cta>.alert,.connect-cta>.row{grid-column:1 / -1}@media(max-width:560px){.connect-cta{grid-template-columns:minmax(0,1fr)}}.preset-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:stretch;padding:0;overflow:hidden}.preset-hero>.btn{align-self:center;margin-right:14px}.preset-hero-main{display:grid;gap:6px;text-align:left;padding:16px;background:transparent;border:0;color:var(--text);border-radius:var(--r-3);min-width:0}.preset-hero-main:hover:not(:disabled){background:var(--raised-hover)}.preset-hero-main:disabled{opacity:1;cursor:default}.hero-row{display:flex;align-items:baseline;gap:14px;min-width:0;flex-wrap:wrap}.hero-name{font-size:22px;font-weight:700;overflow-wrap:anywhere;min-width:0}.preset-hero.is-empty .hero-name{font-size:15px;font-weight:600;color:var(--text-2)}.hero-hint{display:inline-flex;gap:6px;align-items:center;color:var(--brand);font-size:13px;font-weight:700}.active-code.is-previous{color:var(--warn)}@media(max-width:560px){.preset-hero{grid-template-columns:minmax(0,1fr)}.preset-hero>.btn{margin:0 14px 14px;justify-self:start}}.qt-meter{display:block;height:6px;border-radius:3px;background:var(--sunken);overflow:hidden;margin-top:4px}.qt-meter span{display:block;height:100%;background:var(--brand)}.resume-row{display:flex;gap:14px;align-items:center;justify-content:space-between;flex-wrap:wrap}@media(min-width:768px){.home-view>.connect-cta,.home-view>.preset-hero,.home-view>.resume-card{grid-column:1 / -1}}@media(min-width:1200px){.home-view{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);max-width:1180px}.home-view>.preset-hero{grid-column:1}.home-view>.quick-row{grid-column:2;grid-template-columns:repeat(2,minmax(0,1fr))}.home-view>.quick-row .quick-stage{grid-column:1 / -1}}input[type=range].big-range{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:48px;background:transparent;padding:0;border:0;min-height:48px}input[type=range].big-range::-webkit-slider-runnable-track{height:12px;border-radius:6px;background:var(--border-strong)}input[type=range].big-range::-moz-range-track{height:12px;border-radius:6px;background:var(--border-strong)}input[type=range].big-range::-moz-range-progress{height:12px;border-radius:6px;background:var(--brand)}input[type=range].big-range::-webkit-slider-thumb{-webkit-appearance:none;width:30px;height:30px;margin-top:-9px;border-radius:50%;background:var(--text);border:4px solid var(--brand)}input[type=range].big-range::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:var(--text);border:4px solid var(--brand)}input[type=range].big-range[data-unknown]::-webkit-slider-thumb{background:var(--raised);border-color:var(--border-strong)}input[type=range].big-range[data-unknown]::-moz-range-thumb{background:var(--raised);border-color:var(--border-strong)}.commit-range{gap:2px}.cr-head{display:flex;justify-content:space-between;gap:8px;align-items:baseline}.cr-value{font-size:20px;font-variant-numeric:tabular-nums}.cr-origin{margin-top:-4px}.hold-btn{--hold-ms: 1s;position:relative;overflow:hidden}.hold-content{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px}.hold-word{position:relative;display:inline-block}.hold-hint{position:absolute;left:0;right:0;top:100%;margin-top:-1px;text-align:center;pointer-events:none;font-size:10px;font-weight:300;font-style:italic;line-height:1;letter-spacing:.03em;opacity:.55}.hold-btn:before{content:"";position:absolute;left:0;right:0;bottom:0;height:0;background:color-mix(in srgb,var(--brand) 62%,transparent);pointer-events:none}.hold-btn.is-holding:before{height:100%;transition:height var(--hold-ms) linear}@media(prefers-reduced-motion:reduce){.hold-btn.is-holding:before{transition:height var(--hold-ms) steps(5,end)}}.looper-preset{display:grid;justify-items:center;gap:6px;margin:4px 0}.looper-preset-row{display:flex;align-items:center;justify-content:center;gap:14px}.looper-preset-led{display:inline-flex;padding:0;border:0;background:transparent;border-radius:6px;cursor:pointer}.looper-preset-led:hover:not(:disabled) .display,.looper-preset-led[aria-expanded=true] .display{outline:2px solid var(--brand)}.looper-preset-name{font-weight:600;text-align:center;overflow-wrap:anywhere}.looper-preset-list{--list-ms: .22s;animation:looper-list-in var(--list-ms) ease-out both;width:100%;max-height:260px;overflow-y:auto;display:grid;gap:2px;padding:4px;border:1px solid var(--border-strong);border-radius:12px;background:var(--sunken)}.looper-preset-item{display:flex;gap:12px;align-items:baseline;text-align:left;padding:8px 10px;min-height:40px;border:0;border-radius:8px;background:transparent;color:var(--text)}.looper-preset-item:hover:not(:disabled){background:var(--raised)}.looper-preset-item.is-current{background:var(--brand-soft);box-shadow:inset 0 0 0 1px var(--brand)}.looper-preset-item-code{font-family:var(--font-mono);font-weight:600;min-width:3.2ch}.looper-preset-item-name{color:var(--text-2);overflow-wrap:anywhere}.looper-transport{display:flex;flex-wrap:wrap;gap:10px;margin:6px 0}.looper-transport .btn-xl{flex:1 1 0;min-width:104px;justify-content:center}.looper-transport .looper-rec{flex-basis:100%}.looper-transport .looper-rec:not(.btn-primary) .px-glyph,.looper-transport .looper-erase .px-glyph{color:var(--danger)}.looper-transport .looper-erase{border-color:var(--danger-line)}.looper-transport .looper-play:not(.btn-primary) .px-glyph{color:var(--m-eq)}.looper-preset-list.is-closing{animation:looper-list-out var(--list-ms) ease-in both;pointer-events:none}@keyframes looper-list-in{0%{max-height:0;opacity:0;padding-block:0;overflow:hidden}to{max-height:260px;opacity:1}}@keyframes looper-list-out{0%{max-height:260px;opacity:1}to{max-height:0;opacity:0;padding-block:0;overflow:hidden}}@media(prefers-reduced-motion:reduce){.looper-preset-list,.looper-preset-list.is-closing{animation-duration:1ms}}.looper-transport .btn.is-flash{animation:looper-stop-flash .45s ease-out}@keyframes looper-stop-flash{0%{background:var(--brand);border-color:var(--brand);color:var(--brand-ink)}}@media(prefers-reduced-motion:reduce){.looper-transport .btn.is-flash{animation:none;background:var(--brand);border-color:var(--brand);color:var(--brand-ink)}}.tl-btn{position:relative;overflow:hidden;isolation:isolate}.tl-btn.is-active{border-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand)}.tl-fill,.tl-extent{--tl-extent: 100%;--tl-dur: 20s;--tl-delay: 0ms;--tl-iter: 1}.tl-fill,.tl-extent{position:absolute;left:0;top:0;bottom:0;z-index:-1;pointer-events:none}.tl-extent{width:var(--tl-extent);background:color-mix(in srgb,var(--danger) 14%,transparent)}.tl-fill{width:0;animation:tl-grow var(--tl-dur) linear var(--tl-delay) var(--tl-iter) both}.tl-rec{background:color-mix(in srgb,var(--danger) 42%,transparent)}.tl-overdub{background:color-mix(in srgb,var(--m-dly) 48%,transparent)}.looper-note{margin:4px 0 0}.tl-play{background:color-mix(in srgb,var(--m-eq) 38%,transparent)}@keyframes tl-grow{0%{width:0}to{width:var(--tl-extent)}}.drum-led{display:grid;justify-items:center;gap:6px;margin:4px 0}.drum-led-name{font-weight:600;text-align:center;color:var(--text-2)}.drum-transport .btn-xl{flex:1 1 0}.drum-browser{display:grid;gap:8px;margin:6px 0 10px}.drum-styles{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}.drum-style{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 12px;border-radius:10px;border:1px solid var(--border-strong);background:var(--raised);color:var(--text);font-weight:600;white-space:nowrap}.drum-style:hover{border-color:var(--brand)}.drum-style.is-current{background:var(--brand-soft);border-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand)}.drum-style .soon{height:16px;font-size:9px}.drum-types{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:4px;max-height:248px;overflow-y:auto;padding:4px;border:1px solid var(--border-strong);border-radius:12px;background:var(--sunken)}.drum-soon,.drum-partial{grid-column:1 / -1;margin:2px 4px}.drum-type{min-height:40px;padding:8px 10px;border:0;border-radius:8px;background:transparent;color:var(--text);text-align:left;font-family:var(--font-mono)}.drum-type:hover:not(:disabled){background:var(--raised)}.drum-type:disabled{color:var(--text-3);cursor:not-allowed}.drum-type.is-current{background:var(--brand-soft);box-shadow:inset 0 0 0 1px var(--brand);color:var(--text);font-weight:600}.param-soon{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--text-2)}.drum-source{display:flex;width:100%;margin-bottom:10px}.drum-source .seg{flex:1 1 0}.drum-beats{display:flex;gap:6px;justify-content:center;min-height:10px}.drum-beat{width:10px;height:10px;border-radius:2px;background:var(--border-strong)}.drum-beat.is-first{outline:1px solid var(--text-3);outline-offset:1px}.drum-beat.is-on{background:var(--brand)}.drum-meter{color:var(--text-3);font-size:11px}.mini-dock{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px 8px;min-width:0}.app-header .mini-dock{flex:1 1 0;margin:0 4px}.app-header .mini-dock+.spacer{display:none}.stage-top .mini-dock{flex:1 1 0}.stage-top .stage-title:has(+.mini-dock){flex:0 1 auto}@media(max-width:767px){.app-header:has(.mini-dock){display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"brand conn act" "dock dock dock";row-gap:6px}.app-header:has(.mini-dock) .brand{grid-area:brand}.app-header:has(.mini-dock) .conn-menu{grid-area:conn;justify-self:end;min-width:0}.app-header:has(.mini-dock) .header-actions{grid-area:act}.app-header:has(.mini-dock) .spacer{display:none}.app-header .mini-dock{grid-area:dock;justify-content:flex-start;margin:0}.stage-top .mini-dock{order:6;flex:1 1 100%;justify-content:flex-start}.stage-top .stage-title:has(+.mini-dock){flex:1 1 0;min-width:0}}.mini-player{display:inline-flex;align-items:center;gap:2px;min-height:38px;max-width:100%;padding:2px 4px 2px 10px;border:1px solid var(--border-strong);border-radius:var(--r-pill);background:var(--raised)}.mini-open{display:inline-flex;align-items:center;gap:6px;min-width:0;min-height:36px;padding:0 6px 0 0;border:0;background:transparent;color:var(--text);font-weight:600}.mini-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:12ch}.mini-meta{color:var(--text-2);font-family:var(--font-mono);font-size:12px;font-weight:500;white-space:nowrap}.mini-btn{display:inline-grid;place-items:center;min-width:36px;min-height:36px;padding:0 6px;border:1px solid transparent;border-radius:var(--r-pill);background:transparent;color:var(--text);font-size:18px;line-height:1}.mini-btn:hover:not(:disabled){background:var(--sunken);border-color:var(--border-strong)}.mini-btn:disabled{color:var(--text-3);cursor:not-allowed}.mini-beat{flex:none;width:8px;height:8px;margin-right:6px;border-radius:2px;background:var(--border-strong)}.mini-beat.is-on{background:var(--brand)}.mini-looper.is-rec{border-color:var(--danger-line)}.mini-rec .px-glyph{color:var(--danger)}.mini-error{color:var(--danger);font-size:12px;padding:0 8px}.minimize-btn{margin-left:auto}.sheet-head .minimize-btn+.icon-btn{margin-left:0}.filter-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.filter-bar input[type=search]{flex:1 1 220px}.segmented{display:inline-flex;border:1px solid var(--border-strong);border-radius:10px;overflow:hidden}.seg{min-height:var(--tap);padding:8px 14px;background:var(--raised);border:0;border-right:1px solid var(--border-strong);color:var(--text-2);font-weight:700}.seg:last-child{border-right:0}.seg.on{background:var(--brand);color:var(--brand-ink)}.tile-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px}.recent-strip .tile-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}.preset-tile{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;background:var(--raised);border:1px solid var(--border);border-radius:14px;overflow:hidden}.preset-tile.is-active{border-color:var(--signal-line);box-shadow:inset 4px 0 0 var(--signal)}.preset-tile.compact{grid-template-columns:1fr}.tile-open{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"code names" "code extra";gap:2px 12px;align-items:center;text-align:left;padding:12px 14px;min-height:72px;background:none;border:0;color:var(--text)}.tile-open:hover{background:var(--raised-hover)}.tile-open .pill,.tile-open>small{grid-column:2;justify-self:start}.tile-code{grid-area:code;grid-row:1 / span 2;display:grid;align-items:center;font-family:var(--font-mono);font-size:28px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--brand);min-width:3.1ch}.tile-names{display:grid;gap:2px;min-width:0;overflow-wrap:anywhere}.tile-names strong{font-size:16px}.tile-actions{display:grid;align-content:center;justify-items:end;gap:4px;padding:6px 10px 6px 0}.preset-tile.compact .tile-open{min-height:60px}.editor-view{gap:14px}.editor-bar{position:sticky;top:0;z-index:15;display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;padding:10px 12px;margin:0 -4px;background:color-mix(in srgb,var(--canvas) 94%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid var(--border);border-radius:14px}.editor-title{display:flex;align-items:center;gap:10px;flex:1 1 220px;min-width:0;flex-wrap:wrap}.editor-title h2{margin:0;font-size:22px;overflow-wrap:anywhere}.editor-actions{display:flex;gap:8px;flex-wrap:wrap}.live-banner{margin:0;padding:10px 12px;border:1px solid var(--sim-line);border-radius:12px;background:var(--sim-soft);font-size:14px;line-height:1.5}@media(max-width:767px){.editor-bar{top:52px}}.module-chain{list-style:none;margin:0;padding:4px 2px 8px;display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}.module-chain li{scroll-snap-align:start;flex:0 0 auto}.chain-chip{display:grid;grid-template-columns:auto 1fr;gap:0 8px;align-items:center;min-width:108px;min-height:64px;padding:8px 12px;border-radius:12px;background:var(--raised);border:2px solid var(--border);color:var(--text);text-align:left}.chain-chip .chain-pos{grid-row:1 / span 2;font-size:12px;color:var(--text-2)}.chain-chip strong{font-size:16px}.chain-chip small{grid-column:2;font-size:11px;color:var(--text-2);max-width:12ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chain-chip .chain-state{grid-column:1 / -1;font-size:10px;font-weight:700;letter-spacing:1px;color:var(--text-2)}.chain-chip.on .chain-state{color:var(--brand)}.chain-chip.off{opacity:.72}.chain-chip.selected{border-color:var(--brand);background:var(--brand-soft);opacity:1}.module-panel{gap:14px}.module-panel .params{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}.param{display:grid;gap:6px;padding:10px 12px;border-radius:12px;background:var(--sunken);border:1px solid var(--border)}.param-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.param-label{font-weight:700;color:var(--text-2)}.param-value{font-size:22px;font-variant-numeric:tabular-nums}.param-row{display:grid;grid-template-columns:var(--tap-lg) minmax(0,1fr) var(--tap-lg);gap:8px;align-items:center}.param-step{padding:0;font-size:24px;line-height:1;min-height:var(--tap-lg)}.param-toggle{width:100%}.results-details summary{cursor:pointer;font-weight:700;min-height:var(--tap);display:flex;align-items:center}.presets-view .view-head{align-items:center;gap:10px}.sort-field select{min-width:12ch}.tile-help{margin:-4px 0 0}.tile-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px}@media(min-width:1200px){.tile-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}}.preset-tile{border-radius:12px}.preset-tile.is-active{border-color:var(--signal);box-shadow:inset 4px 0 0 var(--signal);background:var(--signal-soft)}.preset-tile.is-pending{border-style:dashed;border-color:var(--info)}.tile-main{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"code name" "code state";gap:0 10px;align-items:center;text-align:left;padding:8px 10px 8px 12px;min-height:60px;background:none;border:0;color:var(--text);min-width:0}.tile-main:hover{background:var(--raised-hover)}.tile-main .tile-code{grid-area:code;grid-row:1 / span 2;min-width:0}.tile-name{grid-area:name;font-weight:700;font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tile-state{grid-area:state;justify-self:start}.tile-actions{display:flex;align-items:center;gap:2px;padding:0 4px 0 0}.tile-icon{display:inline-grid;place-items:center;width:var(--tap);height:var(--tap);border-radius:10px;background:none;border:1px solid transparent;color:var(--text-2);font-size:18px}.tile-icon:hover{background:var(--raised-hover);color:var(--text)}.tile-icon.star.on{color:var(--brand)}@media(max-width:480px){.tile-grid{grid-template-columns:minmax(0,1fr)}}.chain-nav{min-width:0}.module-chain{gap:6px;padding-bottom:10px}.module-chain li{position:relative}.module-chain li.dragging .chain-chip{border-style:dashed;border-color:var(--brand);background:transparent;opacity:.7}.module-chain li{transition:none}@media(prefers-reduced-motion:reduce){.module-chain li{animation:none!important}}.chain-chip{position:relative;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"icon key" "icon name";min-width:112px;min-height:60px;padding:8px 12px 8px 10px;gap:0 8px}.chain-icon{grid-area:icon;display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--sunken);color:var(--text-2)}.chain-chip.on .chain-icon{color:var(--brand)}.chain-chip strong{grid-area:key;font-size:15px}.chain-chip small{grid-area:name;grid-column:auto}.chain-led{position:absolute;top:7px;right:8px;width:8px;height:8px;border-radius:50%;background:var(--border-strong)}.chain-chip.on .chain-led{background:var(--brand);box-shadow:0 0 8px var(--brand)}.chain-grip{position:absolute;bottom:4px;right:8px;font-size:10px;color:var(--text-2);letter-spacing:-1px}@media(min-width:1100px){.module-chain{flex-wrap:wrap;overflow:visible}}.module-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.module-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:12px;background:var(--sunken);color:var(--brand)}.module-title{flex:1;min-width:0}.module-title h3{margin:0}.switch{display:inline-flex;align-items:center;gap:10px;min-height:var(--tap-lg);padding:6px 16px 6px 8px;border-radius:999px;background:var(--raised);border:1px solid var(--border-strong);color:var(--text-2);font-weight:700}.switch-knob{position:relative;width:46px;height:28px;border-radius:14px;background:var(--border-strong);transition:background .15s}.switch-knob:after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:var(--text-2);transition:transform .15s}.switch.on .switch-knob{background:var(--brand)}.switch.on .switch-knob:after{transform:translate(18px);background:var(--text)}.model-row{align-items:center}.model-button{flex:1 1 240px;justify-content:space-between;gap:10px;min-height:var(--tap-lg)}.model-button strong{flex:1;text-align:left;overflow:hidden;text-overflow:ellipsis}.model-list{list-style:none;margin:0;padding:0;display:grid;gap:4px;max-height:55dvh;overflow:auto}.model-option{width:100%;text-align:left;min-height:var(--tap);padding:10px 12px;border-radius:10px;background:var(--raised);border:1px solid var(--border);color:var(--text);font-weight:600}.model-option.on{border-color:var(--brand);color:var(--brand);background:var(--brand-soft)}.module-panel .params{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:10px}.param-row input[type=range]{accent-color:var(--brand);height:44px}.save-options{display:grid;gap:8px}.save-option{display:grid;gap:4px;padding:12px;border-radius:12px;background:var(--sunken);border:1px solid var(--border)}.save-option .btn{justify-self:start;margin-top:4px}.save-option.is-blocked{opacity:.75}.snap-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}.snap-list li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px;align-items:center;padding:8px 10px;border-radius:10px;background:var(--sunken)}.import-preview{display:grid;gap:8px;padding:10px;border:1px solid var(--border-strong);border-radius:12px}.import-preview p{margin:0}.chain-line{color:var(--text-2);overflow-wrap:anywhere}.tile-main{grid-template-rows:auto auto;align-content:center}.save-group{display:grid;gap:8px}.save-group h4{margin:0;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.persistent-arm{display:grid;gap:8px;padding:10px 12px;border-radius:12px;border:1px dashed var(--border-strong)}.persistent-preview{display:grid;gap:8px;margin-top:8px}.persistent-preview ul{margin:0;padding-left:18px}.persistent-confirm{display:grid;gap:8px}.persistent-result{padding:10px 12px;border-radius:12px;border:1px solid var(--border-strong);display:grid;gap:8px}.persistent-result.tone-ok{border-color:var(--signal-line)}.persistent-result.tone-warn{border-color:var(--warn-line)}.persistent-result.tone-bad{border-color:var(--danger-line)}.save-sheet .sheet-body{display:grid;gap:12px}.save-main{display:grid;gap:8px;padding:12px;border-radius:12px;background:var(--sunken);border:1px solid var(--border-strong)}.save-main .btn{min-height:var(--tap-lg);justify-self:stretch}.save-target{margin:0;overflow-wrap:anywhere}.save-more{display:grid;gap:8px}.save-row{display:grid;gap:6px;padding:10px 12px;border-radius:12px;background:var(--sunken);border:1px solid var(--border)}.save-row .btn,.save-sheet select{min-height:var(--tap)}.save-sheet select{max-width:100%}.confirm-overwrite{display:grid;gap:8px;padding:10px 12px;border-radius:12px;border:1px solid var(--warn);background:var(--warn-soft)}.confirm-overwrite p{margin:0;overflow-wrap:anywhere}.confirm-overwrite .btn{min-height:var(--tap)}@media(max-width:480px){.save-main .btn,.confirm-overwrite .row .btn{flex:1 1 100%}}.mod-nr{--mc: var(--m-nr)}.mod-fx1{--mc: var(--m-fx1)}.mod-drv{--mc: var(--m-drv)}.mod-amp{--mc: var(--m-amp)}.mod-ir{--mc: var(--m-ir)}.mod-eq{--mc: var(--m-eq)}.mod-fx2{--mc: var(--m-fx2)}.mod-dly{--mc: var(--m-dly)}.mod-rvb{--mc: var(--m-rvb)}.module-chain{flex-wrap:nowrap;overflow-x:auto;gap:0;padding:8px 2px 10px;align-items:stretch;scrollbar-width:thin}.module-chain:before,.module-chain:after{flex-shrink:0;align-self:center;font:600 10px var(--font-mono);letter-spacing:.08em;color:var(--text-3);writing-mode:vertical-rl}.module-chain:before{content:"ENTRADA";transform:rotate(180deg);margin-right:6px}.module-chain:after{content:"SAÍDA";margin-left:6px}.module-chain li{display:flex;align-items:stretch;flex:1 0 92px}.module-chain .chain-chip{flex:1;min-width:0}.wire{align-self:center;width:14px;height:2px;background:var(--border-strong);flex-shrink:0}.wire.off{background:repeating-linear-gradient(90deg,var(--border-strong) 0 3px,transparent 3px 6px)}.module-chain .chain-chip{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"icon key" "name name" "state state";gap:2px 8px;align-items:center;align-content:start;min-width:104px;min-height:80px;padding:12px 10px 8px;border:1px solid var(--border);border-radius:var(--r-2);background:var(--raised);color:var(--text);text-align:left;opacity:1}.module-chain .chain-chip:before{content:"";position:absolute;left:8px;right:8px;top:-1px;height:3px;border-radius:0 0 2px 2px;background:var(--mc, var(--text-3))}.module-chain .chain-chip:hover{border-color:var(--border-strong)}.module-chain .chain-chip .chain-icon{grid-area:icon;width:auto;height:auto;background:none;border-radius:0;color:var(--mc, var(--text-3))}.module-chain .chain-chip strong{grid-area:key;font:600 13px var(--font-mono);letter-spacing:.04em}.module-chain .chain-chip small{grid-area:name;grid-column:auto;max-width:14ch;font-size:12px;color:var(--text-2)}.module-chain .chain-chip .chain-state{grid-area:state;display:inline-flex;align-items:center;gap:5px;margin-top:2px;font:600 10px var(--font-mono);letter-spacing:.06em;color:var(--text-2)}.module-chain .chain-chip .chain-state:before{content:"";width:8px;height:8px;border-radius:1px;background:currentColor}.module-chain .chain-chip.off{background:var(--surface)}.module-chain .chain-chip.off strong,.module-chain .chain-chip.off small,.module-chain .chain-chip.off .chain-icon,.module-chain .chain-chip.off .chain-state{color:var(--text-3)}.module-chain .chain-chip.off .chain-state:before{background:transparent;box-shadow:inset 0 0 0 1.5px currentColor}.module-chain .chain-chip.selected{border-color:var(--brand);box-shadow:0 0 0 1px var(--brand);background:var(--raised)}.module-chain .chain-grip{right:8px;bottom:6px}.module-panel .module-icon{background:var(--sunken);color:var(--mc, var(--text-3));border-radius:var(--r-2)}.editor-title .display{flex-shrink:0}.param-note{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.param-note .t-meta{flex:1 1 18ch}.module-chain .chain-chip{grid-template-columns:auto minmax(0,1fr);grid-template-areas:"icon key" "name name" "state state";min-height:92px;padding:14px 10px 8px}.module-chain .chain-chip strong{justify-self:end}.module-chain .chain-chip small{grid-column:1 / -1;max-width:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.module-chain .chain-chip.on{border-color:color-mix(in srgb,var(--mc, var(--border-strong)) 55%,var(--border))}.module-chain .chain-chip.on strong{color:var(--text)}.module-chain .chain-chip.off{background:var(--sunken);border:1px dashed var(--border-strong)}.module-chain .chain-chip.off:before{background:var(--border-strong);opacity:.5}.module-chain .chain-chip.off .chain-icon{color:var(--text-disabled)}.module-chain .chain-chip.selected{border-style:solid;border-color:var(--brand);box-shadow:0 0 0 1px var(--brand),var(--shadow-1)}.module-chain .chain-chip.off.selected{background:var(--sunken)}.module-panel .module-icon{width:52px;height:52px}.module-panel .module-icon.is-off{color:var(--text-disabled)}.tile-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:10px}@media(min-width:1200px){.tile-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}}.preset-tile{grid-template-columns:minmax(0,1fr) auto;align-items:stretch;transition:background var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease)}.preset-tile:hover{background:var(--raised-hover);border-color:var(--border-strong)}.preset-tile.is-active,.preset-tile.is-active:hover{background:var(--signal-soft);border-color:var(--signal)}.preset-tile:focus-within{outline:2px solid var(--focus);outline-offset:2px}.tile-main{align-items:center;padding:10px 6px 10px 12px;min-height:68px}.tile-main:hover{background:transparent}.tile-main:focus-visible,.tile-icon:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.tile-name{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;line-height:1.2}.tile-state{margin-top:4px}.tile-actions{flex-direction:column;justify-content:flex-start;align-items:center;gap:2px;padding:5px 5px 5px 0}.tile-icon{width:30px;height:30px;font-size:15px;border-radius:var(--r-2)}@media(pointer:coarse){.tile-icon{width:var(--tap);height:var(--tap)}.tile-actions{gap:0}}.module-chain li.fixed:after{content:"";position:absolute;left:0;right:0;bottom:-7px;height:2px;background:var(--border-strong)}.module-chain .chain-chip .chain-lock{position:absolute;right:8px;bottom:6px;color:var(--text-3);line-height:0}.chain-hint{margin:2px 0 0;font-size:var(--fs-12);color:var(--text-3)}.chain-hint.is-refused{color:var(--warn);font-weight:600}.module-chain li.dragging{z-index:2}.minichain{display:inline-flex;gap:3px;vertical-align:middle}.minichain i{display:block;width:12px;height:6px;border-radius:1px;background:var(--mc, var(--text-3))}.minichain i.off{background:transparent;box-shadow:inset 0 0 0 1px var(--border-strong)}.tile-main{grid-template-areas:"code name" "code state" "code strip"}.tile-main .tile-code{grid-row:1 / span 3}.tile-strip{grid-area:strip;margin-top:6px}.step-card .minichain{margin-top:2px}.module-panel .params{display:grid;grid-template-columns:minmax(0,1fr);gap:0}.module-panel .param{display:grid;grid-template-columns:120px minmax(0,1fr) auto;align-items:center;gap:4px var(--s-4);padding:12px 0;border:0;border-bottom:1px solid var(--divider);border-radius:0;background:none}.module-panel .param:last-child{border-bottom:0}.p-label{display:grid;gap:2px;min-width:0}.p-label .param-label{font-weight:600;color:var(--text)}.p-range{font:400 11px var(--font-mono);color:var(--text-3)}.p-slider{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--s-2);min-width:0}.p-slider .param-step{min-height:32px;min-width:32px;padding:0;font-size:18px;line-height:1}.p-value-wrap{display:flex;align-items:center;gap:6px}.p-value{display:flex;align-items:center;gap:4px;height:36px;padding:0 8px;border-radius:var(--r-2);border:1px solid var(--border-strong);background:var(--sunken)}.p-number{width:6ch;min-width:0;min-height:0;height:34px;padding:0;border:0;background:none;text-align:right;font:600 var(--fs-14) var(--font-mono);color:var(--text)}.p-number:focus-visible{outline:none}.p-value:focus-within{outline:2px solid var(--focus);outline-offset:2px}.p-value small{color:var(--text-3);font-weight:400}.p-value-wrap .icon-btn.sm{width:32px;height:32px;min-width:0;min-height:0;font-size:16px;border:1px solid var(--border);background:var(--raised);color:var(--text-2)}.p-value-wrap .icon-btn.sm:disabled{border-style:dashed;background:none}.module-panel .param .p-note{grid-column:2 / -1;font-size:var(--fs-12);color:var(--text-3)}.module-panel .param .p-hint{grid-column:2 / -1}.module-panel .param-toggle-row{grid-template-columns:minmax(0,1fr)}.module-panel .param-toggle-row .p-note{grid-column:1}@media(max-width:767px){.module-panel .param{grid-template-columns:minmax(0,1fr) auto}.module-panel .param .p-slider{grid-column:1 / -1;grid-row:2}.module-panel .param .p-note,.module-panel .param .p-hint{grid-column:1 / -1}}.fullread-bar{width:100%;height:10px;accent-color:var(--brand)}.fullread-sheet .sheet-body{gap:12px}.module-panel .param{padding:5px 0;gap:0 var(--s-4)}.module-panel .param:last-child{padding-bottom:0}.status-mark{position:relative;display:inline-flex;align-items:center}.status-mark-btn{display:inline-grid;place-items:center;width:28px;height:28px;padding:0;border:0;border-radius:var(--r-2);background:none;cursor:pointer}.status-mark.is-confirmed .status-mark-btn{color:var(--signal)}.status-mark.is-unconfirmed .status-mark-btn,.status-mark.is-error .status-mark-btn{color:var(--warn)}.status-mark.is-pending .status-mark-btn{color:var(--info);cursor:default}.status-mark-btn:hover{background:var(--hover)}.spinner{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.spinner{animation:none;border-right-color:currentColor;opacity:.5}}.status-detail{position:absolute;right:0;top:calc(100% + 6px);z-index:20;width:max-content;max-width:260px;padding:8px 10px;border-radius:var(--r-2);border:1px solid var(--border-strong);background:var(--surface);box-shadow:var(--shadow-2);font-size:var(--fs-12);color:var(--text-2);text-align:left}.param-list{display:grid;grid-template-columns:minmax(0,1fr);gap:0}.param-list .param{display:grid;grid-template-columns:120px minmax(0,1fr) auto;align-items:center;gap:4px var(--s-4);padding:12px 0;border:0;border-bottom:1px solid var(--divider);border-radius:0;background:none}.param-list .param:last-child{border-bottom:0}.param-list .param .p-note{grid-column:2 / -1;font-size:var(--fs-12);color:var(--text-3)}.param-list .param .p-hint{grid-column:2 / -1}.param-list .param-toggle-row{grid-template-columns:minmax(0,1fr)}.param-list .param-toggle-row .p-note{grid-column:1}@media(max-width:767px){.param-list .param{grid-template-columns:minmax(0,1fr) auto}.param-list .param .p-slider{grid-column:1 / -1;grid-row:2}.param-list .param .p-note,.param-list .param .p-hint{grid-column:1 / -1}}.stage{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;gap:12px;padding:12px 16px 0;background:var(--canvas)}.stage-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.stage-title{display:grid;flex:1;min-width:140px}.stage-title span{color:var(--text-2);font-size:13px}.stage-exit{gap:6px}.stage-banner{display:grid;gap:8px;padding:8px 12px;border-radius:14px;border:1px solid var(--border-strong);background:var(--surface)}.stage-banner.is-live{border-color:var(--signal-line);background:var(--signal-soft)}.stage-banner.is-lost{border-color:var(--danger-line);background:var(--danger-soft)}.stage-banner .alert{margin:0}.stage-banner .btn-danger{min-height:var(--tap)}.stage-song{display:flex;gap:18px;align-items:flex-start;background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:14px 18px}.stage-counter{font-family:var(--font-mono);font-size:44px;font-weight:600;color:var(--brand);line-height:1;font-variant-numeric:tabular-nums}.stage-counter small{font-size:18px;color:var(--text-2)}.stage-song-main{flex:1;min-width:0}.stage-song-main h1{font-weight:700;font-size:clamp(26px,4.6vw,48px);line-height:1.05;margin:0 0 6px;overflow-wrap:anywhere}.stage-meta{font-size:17px;color:var(--text-2);margin:0}.stage-note{margin:8px 0 0;font-size:16px;color:var(--text);white-space:pre-wrap}.stage-note.strong{color:var(--warn)}.stage-presets{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;flex:1 1 auto;align-content:start}.stage-preset{position:relative;min-height:150px;display:grid;align-content:center;justify-items:center;gap:4px;padding:16px;background:var(--surface);border:3px solid var(--border-strong);border-radius:18px;color:var(--text);user-select:none;-webkit-user-select:none;touch-action:manipulation;-webkit-touch-callout:none}.stage-preset:hover{border-color:var(--text-3)}.sp-key{position:absolute;top:8px;left:12px;font-size:13px;color:var(--text-2);font-weight:700}.sp-code{font-family:var(--font-mono);font-size:clamp(34px,5vw,56px);font-weight:600;letter-spacing:-1px;line-height:1;font-variant-numeric:tabular-nums}.sp-name{font-size:18px;color:var(--text-2);text-align:center;overflow-wrap:anywhere}.sp-label{font-size:15px;font-weight:700;color:var(--brand);text-transform:uppercase;letter-spacing:1px}.sp-hint{font-size:13px;font-weight:700;color:var(--brand);text-align:center}.sp-hint.ok{color:var(--signal)}.sp-hint.warn{color:var(--warn)}.sp-pedal{font-size:13px;font-weight:700;color:var(--signal)}.stage-preset.is-preview{border-color:var(--brand);background:var(--brand-soft);box-shadow:0 0 0 4px color-mix(in srgb,var(--brand) 22%,transparent)}.stage-preset.desired{border-style:dashed;border-color:var(--info)}.stage-preset.pending{background:var(--info-soft);border-style:dashed;border-color:var(--info)}.stage-preset.armed{border-color:var(--warn);background:var(--warn-soft)}.stage-preset.holding{background:linear-gradient(to top,var(--brand-soft) 0%,var(--surface) 100%)}.stage-preset.on-pedal{border-color:var(--signal-line)}.stage-preset.is-confirmed{border-color:var(--signal);background:var(--signal-soft);box-shadow:0 0 0 4px color-mix(in srgb,var(--signal) 22%,transparent)}.stage-preset.diverged{border-color:var(--danger);background:var(--danger-soft)}.stage-preset.diverged .sp-hint{color:var(--danger)}.stage-preset:focus-visible,.tool:focus-visible{outline-offset:3px}.stage-status{margin:0;font-size:15px;color:var(--text-2)}.pedal-mismatch{border-color:var(--signal-line)}.follow-status{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.tempo-strip{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:0;padding:8px 12px;border-radius:12px;background:var(--brand-soft);border:1px solid var(--brand-line)}.stage-nav{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:stretch}.stage-step{min-height:72px;font-size:20px;justify-content:flex-start;text-align:left;white-space:normal}.stage-step span{display:grid;min-width:0;overflow-wrap:anywhere}.stage-step small{font-size:12px;color:var(--text-2);text-transform:uppercase;letter-spacing:1px}.stage-step.next{justify-content:flex-end;text-align:right}.stage-help{margin:0;text-align:center}.stage-toolbar{position:sticky;bottom:0;z-index:40;margin:auto -16px 0;padding:8px 12px calc(8px + var(--safe-b));display:grid;grid-template-columns:repeat(2,minmax(0,1fr)) minmax(0,1.35fr) repeat(2,minmax(0,1fr));gap:8px;background:var(--surface);border-top:1px solid var(--border)}.tool{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:64px;padding:6px 4px;border-radius:14px;background:var(--raised);border:1px solid var(--border);color:var(--text);font-size:13px;font-weight:700;touch-action:manipulation}.tool small{font-weight:500;color:var(--text-2)}.tool:hover:not(:disabled){background:var(--raised-hover)}.tool>span{display:grid;text-align:center;line-height:1.15}.tool-tap{display:grid;grid-template-rows:1fr auto;gap:4px;min-width:0}.tool-tap-btn{background:var(--brand);border-color:var(--brand);color:var(--brand-ink);font-size:15px;min-height:64px;user-select:none;-webkit-user-select:none}.tool-tap-btn small{color:var(--brand-ink)}.tool-tap-btn.flash{background:var(--text)}.tool-tempo{min-height:28px;border-radius:8px;border:0;background:none;color:var(--brand);font-size:12px;font-weight:700}.tempo-sheet .tap-tempo,.tools-sheet .card{margin:0}.tabs-scroll{overflow-x:auto;max-width:100%}@media(max-width:767px){.stage{padding:8px 10px 0;gap:10px}.stage-toolbar{margin:auto -10px 0;padding:6px 8px calc(6px + var(--safe-b));gap:6px}.stage-top .wake,.stage-title span{display:none}.stage-top .physical{order:6;width:100%}.stage-song{flex-direction:column;gap:6px;padding:12px}.stage-counter{font-size:28px}.stage-presets{grid-template-columns:1fr 1fr;gap:10px}.stage-preset{min-height:120px;padding:10px}.stage-step{font-size:17px;min-height:64px}.stage-help{display:none}.tool{font-size:12px}.tool .icon{width:20px;height:20px}.tap-tempo{padding:10px}}@media(max-height:520px)and (orientation:landscape){.stage{gap:8px;padding-top:6px}.stage-top{flex-wrap:nowrap}.stage-song{padding:8px 12px;flex-direction:row;align-items:center}.stage-counter{font-size:28px}.stage-song-main h1{font-size:22px;margin:0}.stage-meta{font-size:14px}.stage-presets{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px}.stage-preset{min-height:84px;padding:6px;border-width:2px}.sp-code{font-size:30px}.sp-name{font-size:14px}.stage-step{min-height:52px;font-size:15px}.stage-help,.stage-status{display:none}.tool,.tool-tap-btn{min-height:52px;flex-direction:row;gap:8px}.stage-toolbar{padding-top:4px}.tool-tempo{display:none}}@media(prefers-reduced-motion:reduce){.tool,.stage-preset{transition:none}}.stage-preset{min-height:112px;padding:12px;gap:2px}.sp-code{font-size:clamp(30px,4.2vw,48px)}.stage-preset.on-pedal{border-color:var(--signal);background:var(--signal-soft);box-shadow:0 0 0 3px color-mix(in srgb,var(--signal) 22%,transparent)}.stage-preset.is-confirmed{box-shadow:0 0 0 3px color-mix(in srgb,var(--signal) 22%,transparent);background:var(--signal-soft);border-color:var(--signal)}.pedal-mismatch{margin:0;font-size:14px;text-align:center;border:0}.stage-banner.compact{padding:4px 8px;background:transparent;border-color:transparent}.stage-banner.compact .conn-chip{min-height:28px}.stage-toolbar{grid-template-columns:repeat(2,minmax(0,1fr)) minmax(0,1.35fr) repeat(2,minmax(0,1fr))}.stage-tools{display:flex;align-items:center;gap:8px;margin-left:auto}.btn-tool{display:inline-grid;place-items:center;width:48px;min-width:48px;min-height:48px;padding:0;touch-action:manipulation}.btn-tool[aria-pressed=true]{background:var(--brand);border-color:var(--brand);color:var(--brand-ink)}.btn-tool .px-glyph{display:block}.stage-top .conn-chip{flex:none}.btn-tool-danger:not(:disabled){color:var(--danger);border-color:var(--danger-line)}@media(max-width:560px){.stage-title{min-width:0}.stage-title strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-tool{width:44px;min-width:44px;min-height:44px}.stage-tools{gap:6px}.stage-top .conn-chip{order:5;flex:1 1 100%;justify-content:center}}.source-tag{display:inline-block;margin-left:6px;padding:2px 8px;border-radius:999px;border:1px solid var(--border-strong);font-size:11px;font-weight:700;color:var(--brand);vertical-align:middle}.source-tag.local{color:var(--sim);border-color:var(--sim-line)}.transport .btn-xl{min-width:104px}@media(max-width:420px){.stage-toolbar{gap:4px;padding-left:4px;padding-right:4px}.tool{font-size:11px;padding:4px 2px}.stage-preset{min-height:104px}}.stage-banner.truthbar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:0;padding:0;border-radius:var(--r-3);border:1px solid var(--border-strong);background:var(--surface)}.truthbar>div{display:flex;align-items:center;gap:var(--s-3);padding:10px var(--s-4);min-width:0;border-right:1px solid var(--divider)}.truthbar>div:last-of-type{border-right:0}.truthbar .tb-wide{grid-column:1 / -1;margin:8px}.tb-pedal .display{flex-shrink:0;padding:6px 10px}.tb-pedal .display svg{width:52px;height:auto}.tb-text{display:grid;gap:4px;min-width:0}.tb-actions{flex-wrap:wrap}.stage-banner.truthbar.is-live{border-color:var(--signal-line);background:var(--surface)}.stage-banner.truthbar.is-live .tb-pedal{background:var(--signal-soft);border-radius:var(--r-3) 0 0 var(--r-3)}.stage-banner.truthbar.is-sim{border:1px dashed var(--sim-line);background:var(--surface) var(--hatch)}.stage-banner.truthbar.is-lost{border-color:var(--danger-line);background:var(--danger-soft)}.truthbar .btn-primary{min-height:48px}.stage-main{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.stage-hero{display:grid;gap:12px;align-content:start;padding:18px 20px;border-radius:14px;border:1px solid var(--border);background:var(--surface);min-width:0}.stage-hero .hero-top{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.stage-hero .hero-row{display:flex;align-items:center;gap:20px;min-width:0}.stage-hero .display svg{width:clamp(104px,13vw,170px);height:auto}.stage-hero .hero-text{display:grid;gap:6px;min-width:0}.stage-hero .hero-role{font:600 14px var(--font-mono);letter-spacing:.1em;color:var(--text-2)}.stage-hero .hero-name{font-size:clamp(24px,2.6vw,36px);font-weight:700;line-height:1.05;overflow-wrap:anywhere}.stage-hero.is-live{border-color:var(--signal-line);box-shadow:inset 6px 0 0 var(--signal)}.stage-hero.is-stale{border-style:dashed;border-color:var(--signal-line)}.stage-hero.is-sim{border:1px dashed var(--sim-line);background:var(--surface) var(--hatch)}@media(min-width:1100px){.stage-main{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:20px;align-items:stretch}}.stage-preset .sp-code{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.stage-preset .display{padding:6px 10px}.stage-preset .display svg{width:clamp(64px,8vw,92px);height:auto}.stage-preset .sp-label{color:var(--text-2)}.stage-preset .sp-hint{display:inline-flex;align-items:center;gap:6px;font:600 11px var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--text-2);text-align:center}.stage-preset .sp-hint.is-armed{color:var(--brand)}.stage-preset .sp-hint.is-sim{color:var(--sim)}.stage-preset .sp-hint.is-pending{color:var(--info)}.stage-preset .sp-hint.is-onpedal{color:var(--signal)}.stage-preset .sp-hint.warn{color:var(--warn)}.stage-preset.is-preview{border-style:dashed;border-color:var(--sim);background:var(--sim-soft) var(--hatch);box-shadow:none}.stage-preset.armed{border-style:dashed;border-color:var(--brand);background:var(--surface)}.stage-preset.on-pedal:not(.is-confirmed){border-style:solid}.tool{min-height:var(--tap-stage)}.stage-step{gap:var(--s-3)}[data-theme=light] .stage-preset,[data-theme=light] .stage-hero,[data-theme=light] .stage-song,[data-theme=light] .stage-banner.truthbar{box-shadow:var(--shadow-1)}@media(max-width:1100px){.stage-banner.truthbar{grid-template-columns:minmax(0,1fr) auto}.truthbar .tb-session{display:none}.stage-hero{padding:14px 16px}}@media(max-width:600px){.stage-banner.truthbar{grid-template-columns:minmax(0,1fr)}.truthbar>div{border-right:0}.truthbar>.tb-actions{padding-top:0}.truthbar>.tb-actions .btn{flex:1 1 100%}.stage-hero .hero-row{gap:12px}}.tool.tool-on,.quick-tile.is-on{background:var(--brand-soft);border-color:var(--brand)}.tool.tool-on{color:var(--text)}.volume-sheet .sheet-body{display:grid;gap:10px}.volume-sheet .param-list{margin-bottom:4px}.preset-volume{max-width:720px}.preset-volume .param{padding:2px 12px}.settings-view{gap:var(--s-4)}.settings-layout{display:grid;gap:var(--s-4);grid-template-columns:minmax(0,1fr);align-items:start}.settings-body{display:grid;gap:var(--s-3);min-width:0}.settings-title{font-size:var(--fs-20);margin:0}.settings-body h4{margin:0;font-size:var(--fs-16);display:flex;align-items:center;gap:var(--s-2);flex-wrap:wrap}.settings-nav{display:flex;gap:var(--s-2);overflow-x:auto;padding-bottom:var(--s-1);scrollbar-width:thin}.settings-group{display:contents}.settings-group-title{display:none}.settings-link{flex:0 0 auto;display:inline-flex;align-items:center;min-height:var(--tap);padding:0 var(--s-4);border-radius:var(--r-pill);border:1px solid var(--border-strong);color:var(--text-2);text-decoration:none;font-weight:600;font-size:var(--fs-14);white-space:nowrap}.settings-link:hover{background:var(--hover);color:var(--text)}.settings-link.active{background:var(--selected);border-color:var(--selected-line);color:var(--text)}@media(min-width:900px){.settings-layout{grid-template-columns:232px minmax(0,1fr);gap:var(--s-6)}.settings-nav{flex-direction:column;overflow:visible;gap:2px;position:sticky;top:72px}.settings-group{display:flex;flex-direction:column;gap:2px;margin-bottom:var(--s-3)}.settings-group-title{display:block;padding:0 var(--s-3) var(--s-1);font-size:var(--fs-11);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.settings-link{border:0;border-radius:var(--r-2);border-left:3px solid transparent;padding:0 var(--s-3);min-height:40px}.settings-link.active{border-left-color:var(--selected-line)}}.accent-picker{display:grid;gap:var(--s-2);max-width:460px}.accent-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:14px;border-radius:var(--r-pill);border:1px solid var(--border-strong);cursor:pointer}.accent-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:28px;height:28px;border-radius:50%;background:var(--brand);border:3px solid var(--text);box-shadow:var(--shadow-1)}.accent-slider::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:var(--brand);border:3px solid var(--text)}.accent-slider:focus-visible{outline:2px solid var(--focus);outline-offset:4px}.accent-state{justify-content:space-between;align-items:center}.accent-preview{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-3);padding:var(--s-3);border-radius:var(--r-2);background:var(--surface);border:1px solid var(--border)}.accent-chip{display:inline-flex;align-items:center;min-height:32px;padding:0 var(--s-3);border-radius:var(--r-2);background:var(--selected);border:1px solid var(--selected-line);font-size:var(--fs-13);font-weight:600}.shortcut-table{width:100%;border-collapse:collapse;font-size:var(--fs-14)}.shortcut-table th,.shortcut-table td{padding:var(--s-2) var(--s-2);text-align:left;border-bottom:1px solid var(--divider);vertical-align:middle}.shortcut-table thead th{font-size:var(--fs-12);color:var(--text-3);font-weight:600}.shortcut-table tbody th{font-weight:500}.shortcut-table td:last-child,.shortcut-actions{text-align:right;white-space:nowrap}.shortcut-table kbd{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;padding:0 var(--s-2);margin-right:var(--s-1);border-radius:var(--r-1);border:1px solid var(--border-strong);background:var(--sunken);color:var(--text);font-family:var(--font-mono);font-size:var(--fs-13)}.shortcut-fixed th,.shortcut-fixed td{border-bottom:0;color:var(--text-2)}.cloud-card{border-style:dashed;border-color:var(--border-strong)}.cloud-list,.credit-list{margin:0;padding-left:var(--s-5);display:grid;gap:var(--s-1)}.about-head{display:flex;align-items:center;gap:var(--s-4);grid-auto-flow:column;justify-content:start}.about-head h4{font-size:var(--fs-20)}.legal{display:grid;gap:var(--s-2);max-width:72ch}.legal h4{margin-top:var(--s-4)}.legal p,.legal li{line-height:var(--lh)}.legal ul{margin:0;padding-left:var(--s-5);display:grid;gap:var(--s-2)}
