@font-face{font-family:Silkscreen;font-style:normal;font-weight:400;font-display:swap;src:url(data:font/woff2;base64,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)format("woff2")}@font-face{font-family:Silkscreen;font-style:normal;font-weight:700;font-display:swap;src:url(data:font/woff2;base64,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)format("woff2")}@font-face{font-family:Departure Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/departure-mono-400-YazmgA1T.woff2)format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/ibm-plex-mono-400-BJoXLJYV.woff2)format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/ibm-plex-mono-500-C820gu2e.woff2)format("woff2")}@font-face{font-family:VT323;font-style:normal;font-weight:400;font-display:optional;src:url(/assets/vt323-400-EhPR265H.woff2)format("woff2")}@font-face{font-family:"Press Start 2P";font-style:normal;font-weight:400;font-display:optional;src:url(/assets/press-start-2p-400-ClsvrIBJ.woff2)format("woff2")}:root{--color-ground:#0d0b10;--color-ink:#f5f2e9;--color-ink-on-fill:#0d0b10;--color-lane-drums:#f23d4c;--color-lane-bass:#ffb300;--color-lane-chords:#35d07f;--color-lane-lead:#4da6ff;--font-label:"Silkscreen", "IBM Plex Mono", ui-monospace, monospace;--font-value:"Departure Mono", "IBM Plex Mono", ui-monospace, monospace;--font-led:"VT323", "IBM Plex Mono", ui-monospace, monospace;--font-display:"Press Start 2P", "IBM Plex Mono", ui-monospace, monospace;--font-ui:"IBM Plex Mono", ui-monospace, monospace;--text-label-sm:700 10px/1 var(--font-label);--text-value:400 11px/1 var(--font-value);--text-ui:400 13px/1.5 var(--font-ui);--text-numeric-field:500 13px/1.2 var(--font-ui);--space-1:2px;--space-2:4px;--space-3:8px;--space-4:12px;--space-5:16px;--space-6:24px;--space-7:32px;--space-8:48px;--glow-blur:3px;--glow-alpha-min:45%;--glow-alpha-max:60%;--glow-trigger-decay:.18s}html,body{min-height:100%;margin:0;padding:0}body{background:var(--color-ground);color:var(--color-ink);font:var(--text-ui);-webkit-font-smoothing:antialiased}::selection{background:var(--color-lane-chords);color:var(--color-ink-on-fill)}.booth{z-index:10;align-items:flex-end;gap:var(--space-5) var(--space-6);padding:var(--space-4) var(--space-6);background:color-mix(in srgb, var(--color-ink) 4%, var(--color-ground));border-bottom:1px solid color-mix(in srgb, var(--color-ink) 25%, transparent);flex-wrap:wrap;display:flex;position:sticky;top:0;box-shadow:0 2px 8px #0009}.booth-group{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.booth-group-slider{gap:var(--space-3)}.booth-group-position{margin-left:auto}.booth-label{font:var(--text-label-sm);letter-spacing:.05em;text-transform:uppercase;color:color-mix(in srgb, var(--color-ink) 60%, var(--color-ground));font-weight:700}.booth-value{font:var(--text-value);color:var(--color-ink);text-align:right;min-width:4ch}.booth-btn{font:var(--text-label-sm);letter-spacing:.05em;text-transform:uppercase;color:var(--color-ink);border:1px solid color-mix(in srgb, var(--color-ink) 40%, transparent);padding:var(--space-3) var(--space-4);cursor:pointer;background:0 0;border-radius:4px}.booth-btn.is-on{color:var(--color-ink-on-fill);border:2px solid #0000}.booth-btn-play.is-on{background:var(--color-lane-chords);border-color:var(--color-lane-chords);box-shadow:0 0 var(--glow-blur) color-mix(in srgb, var(--color-lane-chords) 50%, transparent)}.booth-btn-loop.is-on{background:var(--color-lane-lead);border-color:var(--color-lane-lead);box-shadow:0 0 var(--glow-blur) color-mix(in srgb, var(--color-lane-lead) 50%, transparent)}.booth-btn-metro.is-on{background:var(--color-lane-bass);border-color:var(--color-lane-bass);box-shadow:0 0 var(--glow-blur) color-mix(in srgb, var(--color-lane-bass) 50%, transparent)}.booth :focus-visible{outline:2px solid var(--color-ink);outline-offset:2px}.booth-stepper{align-items:stretch;display:flex}.booth-step-btn{font:var(--text-label-sm);color:var(--color-ink);border:1px solid color-mix(in srgb, var(--color-ink) 40%, transparent);width:var(--space-6);cursor:pointer;background:0 0;border-radius:4px}.booth-led-input{font:400 22px/1 var(--font-led);color:var(--color-ink);background:color-mix(in srgb, var(--color-ink) 6%, var(--color-ground));border:1px solid color-mix(in srgb, var(--color-ink) 40%, transparent);text-align:center;appearance:textfield;border-radius:4px;width:5ch;padding:2px 0}.booth-led-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.booth-led-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.booth-led{font:400 22px/1 var(--font-led);color:var(--color-ink);text-align:right;min-width:6ch}.booth-beats{gap:var(--space-2);align-items:center;display:flex}.booth-beat-led{border:1px solid color-mix(in srgb, var(--color-ink) 40%, transparent);background:0 0;border-radius:2px;width:8px;height:8px}.booth-beat-led[data-active=true]{background:var(--color-lane-bass);border-color:var(--color-lane-bass);box-shadow:0 0 var(--glow-blur) color-mix(in srgb, var(--color-lane-bass) 50%, transparent)}.booth-range{appearance:none;cursor:pointer;background:0 0;width:96px;height:14px;margin:0}.booth-range::-webkit-slider-runnable-track{background:color-mix(in srgb, var(--color-ink) 14%, var(--color-ground));border:1px solid color-mix(in srgb, var(--color-ink) 12%, var(--color-ground));border-radius:2px;height:4px}.booth-range::-moz-range-track{background:color-mix(in srgb, var(--color-ink) 14%, var(--color-ground));border:1px solid color-mix(in srgb, var(--color-ink) 12%, var(--color-ground));border-radius:2px;height:4px}.booth-range::-webkit-slider-thumb{appearance:none;background:var(--color-ink);border:1px solid color-mix(in srgb, var(--color-lane-bass) 55%, var(--color-ground));border-radius:1px;width:10px;height:10px;margin-top:-4px}.booth-range::-moz-range-thumb{background:var(--color-ink);border:1px solid color-mix(in srgb, var(--color-lane-bass) 55%, var(--color-ground));border-radius:1px;width:10px;height:10px}.booth-range:focus-visible{outline:2px solid var(--color-ink);outline-offset:1px}@media (prefers-reduced-motion:reduce){.booth *,.booth{transition:none}}.booth-sr{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.save-indicator{align-items:center;gap:var(--space-1);font-family:var(--font-label);color:var(--color-ink);margin-left:auto;display:inline-flex}.save-indicator:focus-visible{outline:2px solid var(--color-ink);outline-offset:2px}.save-dot{background:0 0;border:1px solid;border-radius:50%;flex-shrink:0;width:8px;height:8px}.save-indicator[data-status=saved] .save-dot,.save-indicator[data-status=idle] .save-dot{background:currentColor}.save-indicator[data-status=saving] .save-dot{border-style:dashed}.save-indicator[data-status=error]{opacity:.55}.save-label{letter-spacing:.05em;white-space:nowrap;font-size:10px}.booth-btn-play.booth-nudge{border-color:var(--color-lane-lead);animation:1.6s ease-in-out infinite booth-nudge-pulse}@keyframes booth-nudge-pulse{0%,to{box-shadow:0 0 var(--glow-blur) color-mix(in srgb, var(--color-lane-lead) 20%, transparent)}50%{box-shadow:0 0 var(--glow-blur) color-mix(in srgb, var(--color-lane-lead) 70%, transparent)}}@media (prefers-reduced-motion:reduce){.booth-btn-play.booth-nudge{box-shadow:0 0 var(--glow-blur) color-mix(in srgb, var(--color-lane-lead) 55%, transparent);animation:none}}.projects{align-items:center;display:flex;position:relative}.projects-btn{opacity:.9}.projects-pop{top:calc(100% + var(--space-2));z-index:40;min-width:232px;padding:var(--space-3);gap:var(--space-2);background:var(--color-ground);border:1px solid color-mix(in srgb, var(--color-ink) 25%, var(--color-ground));border-radius:6px;flex-direction:column;display:flex;position:absolute;right:0;box-shadow:4px 4px 12px #0000008c}.projects-list{scrollbar-color:color-mix(in srgb, var(--color-ink) 30%, var(--color-ground)) transparent;gap:var(--space-1);flex-direction:column;max-height:40vh;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.projects-item{justify-content:space-between;align-items:baseline;gap:var(--space-3);text-align:left;width:100%;color:var(--color-ink);background:color-mix(in srgb, var(--color-ink) 5%, var(--color-ground));border:1px solid color-mix(in srgb, var(--color-ink) 14%, var(--color-ground));font:var(--text-ui);cursor:pointer;border-radius:3px;padding:4px 8px;font-size:12px;display:flex}.projects-item:hover,.projects-item:focus-visible{background:color-mix(in srgb, var(--color-ink) 12%, var(--color-ground));outline:none}.projects-item.is-current{border-color:var(--color-ink)}.projects-name{font-family:var(--font-label);letter-spacing:.05em;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.projects-when{font-family:var(--font-label);color:color-mix(in srgb, var(--color-ink) 62%, var(--color-ground));flex-shrink:0;font-size:10px}.projects-actions{gap:var(--space-2);border-top:1px solid color-mix(in srgb, var(--color-ink) 25%, var(--color-ground));padding-top:var(--space-2);display:flex}.projects-action{flex:1}.projects-note{font:var(--text-label-sm);letter-spacing:.05em;text-transform:uppercase;color:color-mix(in srgb, var(--color-ink) 62%, var(--color-ground));margin:0}.projects-input{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.help-backdrop{z-index:90;background:#0d0b10d1;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.help-panel{background:var(--color-ground);border:1px solid color-mix(in srgb, var(--color-ink) 25%, var(--color-ground));color:var(--color-ink);padding:var(--space-5) var(--space-6);scrollbar-color:color-mix(in srgb, var(--color-ink) 30%, var(--color-ground)) transparent;border-radius:6px;width:min(92vw,640px);max-width:640px;max-height:84vh;overflow:auto;box-shadow:4px 4px 12px #0000008c}.help-panel:focus-visible{outline:2px solid var(--color-ink);outline-offset:2px}.help-title{font:400 22px/1 var(--font-led);color:var(--color-ink);margin:0 0 var(--space-4)}.help-sections{gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.help-section-title{font:var(--text-label-sm);letter-spacing:.05em;text-transform:uppercase;color:color-mix(in srgb, var(--color-ink) 62%, var(--color-ground));margin:0 0 var(--space-3)}.help-list{margin:0}.help-row{gap:var(--space-3);margin-bottom:var(--space-2);align-items:baseline;display:flex}.help-row dt{flex:none}.help-row kbd{font:var(--text-value);color:var(--color-ink);background:color-mix(in srgb, var(--color-ink) 8%, var(--color-ground));border:1px solid color-mix(in srgb, var(--color-ink) 30%, var(--color-ground));white-space:nowrap;border-radius:3px;padding:1px 4px}.help-row dd{font:var(--text-ui);color:var(--color-ink);margin:0;font-size:12px}.help-close{margin-top:var(--space-5);font:var(--text-label-sm);letter-spacing:.05em;text-transform:uppercase;color:var(--color-ink);border:1px solid color-mix(in srgb, var(--color-ink) 40%, transparent);padding:var(--space-3) var(--space-4);cursor:pointer;background:0 0;border-radius:3px}.help-close:hover{background:color-mix(in srgb, var(--color-ink) 12%, var(--color-ground))}.help-close:focus-visible{outline:2px solid var(--color-ink);outline-offset:1px}.toasts{right:var(--space-4);bottom:var(--space-4);gap:var(--space-3);z-index:60;pointer-events:none;flex-direction:column;max-width:min(420px,100vw - 24px);display:flex;position:fixed}.toasts-polite,.toasts-errors{gap:var(--space-2);flex-direction:column;display:flex}.toast{pointer-events:auto;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--color-ink);background:var(--color-ground);color:var(--color-ink);font-family:var(--font-ui);border-radius:4px;font-size:12px;display:flex}.toast-error{border-width:2px}.toast-body{flex:1;min-width:0}.toast-message{margin:0;font-weight:700}.toast-details{margin:var(--space-2) 0 0;padding-left:var(--space-5);opacity:.85}.toast-suggestion{margin:var(--space-2) 0 0;opacity:.85}.toast-action{margin-top:var(--space-2);font-family:var(--font-label);padding:3px var(--space-3);color:inherit;cursor:pointer;background:0 0;border:1px solid;border-radius:3px;font-size:11px}.toast-dismiss{color:inherit;cursor:pointer;padding:2px var(--space-2);background:0 0;border:none;flex:none;font-size:12px}.toast-dismiss:focus-visible,.toast-action:focus-visible{outline-offset:1px;outline:2px solid}.support-banner{z-index:70;align-items:flex-start;gap:var(--space-4);padding:var(--space-3) var(--space-5);border-bottom:2px solid var(--color-ink);background:var(--color-ground);color:var(--color-ink);font-family:var(--font-label);pointer-events:auto;display:flex;position:fixed;top:0;left:0;right:0}.support-banner-unsupported,.support-banner-degraded-worklet{box-shadow:0 0 0 1px var(--color-ink)}.support-banner-copy{flex:1;min-width:0}.support-banner-title{font:700 13px/1.3 var(--font-label);letter-spacing:.04em;margin:0}.support-banner-body{font:12px/1.4 var(--font-ui);opacity:.9;margin:4px 0 0}.support-banner-dismiss{border:1px solid var(--color-ink);color:var(--color-ink);font:700 14px/1 var(--font-ui);padding:var(--space-3) var(--space-4);cursor:pointer;background:0 0;flex:none}.support-banner-dismiss:focus-visible{outline:2px solid var(--color-ink);outline-offset:1px}.support-banner-dismiss .sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.app{flex-direction:column;min-height:100dvh;display:flex}.stage{background:var(--color-ground);flex:1}.stage-floors{gap:var(--space-3);padding:var(--space-4) 0 var(--space-7);flex-direction:column;width:100%;max-width:1400px;margin:0 auto;display:flex;position:relative}.stage-hint{pointer-events:none;font-family:var(--font-label);letter-spacing:.2em;color:#f5f2e99e;text-align:center;z-index:1;justify-content:center;align-items:center;font-size:14px;display:flex;position:absolute;inset:0}.audio-resume{z-index:70;background:var(--color-ground);color:var(--color-ink);border:2px solid var(--color-ink);font:700 12px/1 var(--font-label);letter-spacing:.1em;cursor:pointer;padding:10px 18px;position:fixed;bottom:64px;left:50%;transform:translate(-50%)}.audio-resume:focus-visible{outline:2px solid var(--color-ink);outline-offset:2px}.lane-floor{--lane-hue:var(--color-ink);padding:var(--space-4) var(--space-5);border-top:1px solid color-mix(in srgb, var(--color-ink) 12%, var(--color-ground))}.lane-floor[data-lane=drums]{--lane-hue:var(--color-lane-drums)}.lane-floor[data-lane=bass]{--lane-hue:var(--color-lane-bass)}.lane-floor[data-lane=chords]{--lane-hue:var(--color-lane-chords)}.lane-floor[data-lane=lead]{--lane-hue:var(--color-lane-lead)}.lane-head{margin-bottom:var(--space-3);justify-content:space-between;align-items:baseline;display:flex}.lane-name{font:var(--text-label-sm);letter-spacing:.05em;color:var(--color-ink)}.lane-count{font:var(--text-value);color:color-mix(in srgb, var(--color-ink) 60%, var(--color-ground))}.lane-grid-scroll{padding-bottom:var(--space-2);scrollbar-color:color-mix(in srgb, var(--color-ink) 30%, var(--color-ground)) transparent;overflow:auto hidden}.lane-grid{width:max-content;position:relative}.grid-body{position:relative}.grid-row{margin-bottom:var(--space-2);align-items:stretch;display:flex}.row-label{width:72px;font:var(--text-label-sm);letter-spacing:.05em;text-transform:uppercase;color:color-mix(in srgb, var(--color-ink) 78%, var(--color-ground));padding-right:var(--space-3);flex:none;align-items:center;display:flex}.row-cells{grid-auto-rows:24px;gap:2px;display:grid;position:relative}.cell{background:color-mix(in srgb, var(--color-ink) 7%, var(--color-ground));border:1px solid color-mix(in srgb, var(--color-ink) 14%, var(--color-ground));cursor:pointer;border-radius:3px;width:24px;height:24px;position:relative}.cell[data-beat="1"]{background:color-mix(in srgb, var(--color-ink) 11%, var(--color-ground));border-color:color-mix(in srgb, var(--color-ink) 18%, var(--color-ground))}.cell:focus-visible{outline:2px solid var(--color-ink);outline-offset:1px}.cell[data-on=true]{background:var(--lane-hue);border-color:color-mix(in srgb, var(--lane-hue) 60%, var(--color-ground));clip-path:polygon(0 0,100% 0,100% 100%,8px 100%,0 calc(100% - 8px))}.cell[data-sustain=true]{background:repeating-linear-gradient(135deg, color-mix(in srgb, var(--lane-hue) 55%, var(--color-ground)) 0 2px, color-mix(in srgb, var(--lane-hue) 20%, var(--color-ground)) 2px 4px);border-color:color-mix(in srgb, var(--lane-hue) 45%, var(--color-ground))}.row-fill{align-items:center;gap:var(--space-2);width:152px;padding-right:var(--space-3);opacity:0;flex:none;transition:opacity .12s;display:flex}.grid-row:hover .row-fill,.row-fill:focus-within{opacity:1}.row-fill-ctl{align-items:center;gap:var(--space-2);display:flex}.row-fill-tag{font:var(--text-label-sm);letter-spacing:.05em;color:color-mix(in srgb, var(--color-ink) 55%, var(--color-ground))}.row-fill-value{font:var(--text-value);color:var(--color-ink);text-align:center;min-width:3ch}.row-fill-apply{font:var(--text-label-sm);letter-spacing:.05em;color:var(--color-ink);background:color-mix(in srgb, var(--color-ink) 7%, var(--color-ground));border:1px solid color-mix(in srgb, var(--lane-hue) 35%, var(--color-ground));height:20px;padding:0 var(--space-2);cursor:pointer;border-radius:3px}.row-fill-apply:disabled{opacity:.55;cursor:default}.row-fill-apply:not(:disabled):hover,.row-fill-apply.is-armed{background:color-mix(in srgb, var(--lane-hue) 18%, var(--color-ground))}.row-fill-apply:focus-visible{outline:2px solid var(--color-ink);outline-offset:1px}.cell[data-preview=true]{outline:2px dashed var(--lane-hue);outline-offset:-2px}.lane-grid.has-fill-rail .grid-playhead{left:224px}.note-runs{pointer-events:none;position:absolute;inset:0}.note-run{background:var(--lane-hue);box-shadow:0 0 3px color-mix(in srgb, var(--lane-hue) 50%, transparent);border-radius:3px;position:absolute;top:1px;bottom:1px}.grid-playhead{background:var(--color-ink);width:2px;box-shadow:0 0 3px color-mix(in srgb, var(--color-ink) 50%, transparent);opacity:0;will-change:transform;pointer-events:none;margin-left:-1px;position:absolute;top:0;bottom:0;left:72px}.cell.is-triggering{animation:.18s ease-out grid-trigger-glow}@keyframes grid-trigger-glow{0%{box-shadow:0 0 3px color-mix(in srgb, var(--lane-hue) 60%, transparent);filter:brightness(1.35)}to{filter:none;box-shadow:0 0 #0000}}@media (prefers-reduced-motion:reduce){.grid-playhead{display:none}.row-fill{transition:none}.cell.is-triggering{animation:none}.cell.is-col-active{border-color:var(--lane-hue);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--lane-hue) 45%, transparent)}}.lane-head-strip{align-items:center;gap:var(--space-3) var(--space-5);flex-wrap:wrap;display:flex}.lane-head-strip .lane-name{margin-right:auto}.lane-head-controls{align-items:center;gap:var(--space-3) var(--space-5);flex-wrap:wrap;display:flex}.head-ctl{align-items:center;gap:var(--space-3);display:flex}.head-ctl-label{font:var(--text-label-sm);letter-spacing:.05em;color:color-mix(in srgb, var(--color-ink) 62%, var(--color-ground))}.head-stepper{align-items:center;gap:var(--space-2);display:flex}.head-step-btn{font:var(--text-label-sm);letter-spacing:.05em;color:var(--color-ink);background:color-mix(in srgb, var(--color-ink) 7%, var(--color-ground));border:1px solid color-mix(in srgb, var(--color-ink) 18%, var(--color-ground));cursor:pointer;border-color:color-mix(in srgb, var(--lane-hue) 35%, var(--color-ground));border-radius:3px;place-items:center;width:20px;height:20px;display:grid}.head-step-btn:hover{background:color-mix(in srgb, var(--color-ink) 12%, var(--color-ground))}.head-step-btn:focus-visible{outline:2px solid var(--color-ink);outline-offset:1px}.head-ctl-value{font:var(--text-value);color:var(--color-ink);text-align:center;min-width:8ch}.head-ctl-unit{color:color-mix(in srgb, var(--color-ink) 55%, var(--color-ground));margin-left:2px}.head-scale-wrap{display:inline-flex;position:relative}.scale-chip{font:var(--text-label-sm);letter-spacing:.05em;color:var(--color-ink);background:color-mix(in srgb, var(--color-ink) 7%, var(--color-ground));border:1px solid color-mix(in srgb, var(--color-ink) 22%, var(--color-ground));cursor:pointer;white-space:nowrap;border-radius:3px;padding:4px 8px}.scale-chip:hover{background:color-mix(in srgb, var(--color-ink) 12%, var(--color-ground))}.scale-chip:focus-visible{outline:2px solid var(--color-ink);outline-offset:1px}.scale-chip.is-lane{border-color:var(--lane-hue);background:color-mix(in srgb, var(--lane-hue) 14%, var(--color-ground));box-shadow:0 0 3px color-mix(in srgb, var(--lane-hue) 45%, transparent)}.scale-chip-booth{text-align:center;min-width:9ch}.scale-pop{top:calc(100% + var(--space-3));z-index:40;width:264px;padding:var(--space-4);gap:var(--space-4);background:var(--color-ground);border:1px solid color-mix(in srgb, var(--color-ink) 25%, var(--color-ground));border-radius:6px;flex-direction:column;display:flex;position:absolute;left:0;box-shadow:4px 4px 12px #0000008c}.scale-pop-group{gap:var(--space-2);flex-direction:column;display:flex}.scale-pop-heading{font:var(--text-label-sm);letter-spacing:.05em;color:color-mix(in srgb, var(--color-ink) 62%, var(--color-ground))}.scale-pop-roots{gap:var(--space-1);grid-template-columns:repeat(6,1fr);display:grid}.scale-pop-root{font:var(--text-value);color:var(--color-ink);background:color-mix(in srgb, var(--color-ink) 7%, var(--color-ground));border:1px solid color-mix(in srgb, var(--color-ink) 18%, var(--color-ground));cursor:pointer;border-radius:3px;padding:4px 0}.scale-pop-root[aria-pressed=true]{background:var(--color-ink);color:var(--color-ink-on-fill);border-color:var(--color-ink)}.scale-pop-modes{gap:var(--space-1);scrollbar-color:color-mix(in srgb, var(--color-ink) 30%, var(--color-ground)) transparent;flex-direction:column;max-height:168px;display:flex;overflow-y:auto}.scale-pop-mode{font:var(--text-ui);text-align:left;color:var(--color-ink);background:color-mix(in srgb, var(--color-ink) 5%, var(--color-ground));border:1px solid color-mix(in srgb, var(--color-ink) 14%, var(--color-ground));cursor:pointer;border-radius:3px;padding:4px 8px;font-size:12px;line-height:1.2}.scale-pop-mode[aria-pressed=true]{background:var(--color-ink);color:var(--color-ink-on-fill);border-color:var(--color-ink)}.scale-pop-root:focus-visible,.scale-pop-mode:focus-visible,.scale-pop-commit:focus-visible,.scale-pop-detach:focus-visible{outline:2px solid var(--color-ink);outline-offset:1px}.scale-pop-actions{gap:var(--space-2);flex-direction:column;display:flex}.scale-pop-commit{font:var(--text-label-sm);letter-spacing:.05em;color:var(--color-ink-on-fill);background:var(--color-ink);border:1px solid var(--color-ink);cursor:pointer;border-radius:3px;padding:6px 8px}.scale-pop-detach{font:var(--text-label-sm);letter-spacing:.05em;color:var(--color-ink);background:color-mix(in srgb, var(--color-ink) 7%, var(--color-ground));border:1px solid color-mix(in srgb, var(--color-ink) 22%, var(--color-ground));cursor:pointer;border-radius:3px;padding:6px 8px}.scale-pop-detach.is-dim{opacity:.55}.head-sr{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.lane-fx-wrap{flex-basis:100%}.fx-strip{gap:var(--space-3);padding:var(--space-4);border:1px solid color-mix(in srgb, var(--lane-hue) 22%, var(--color-ground));background:color-mix(in srgb, var(--color-ink) 3%, var(--color-ground));border-radius:4px;flex-direction:column;display:flex;box-shadow:inset 0 1px #ffffff0a}.fx-strip-modules{gap:var(--space-3);flex-wrap:wrap;display:flex}.fx-strip-empty{font:var(--text-label-sm);letter-spacing:.05em;color:color-mix(in srgb, var(--color-ink) 55%, var(--color-ground));padding:var(--space-4) 0;margin:0}.fx-mod{gap:var(--space-3);padding:var(--space-3) var(--space-4) var(--space-4);background:color-mix(in srgb, var(--color-ink) 5%, var(--color-ground));border:2px solid color-mix(in srgb, var(--lane-hue) 60%, var(--color-ground));cursor:grab;border-radius:4px;flex-direction:column;flex:0 236px;display:flex;box-shadow:0 2px 4px #00000073}.fx-mod.is-drop{border-color:var(--lane-hue)}.fx-mod.is-bypassed{border-color:color-mix(in srgb, var(--color-ink) 16%, var(--color-ground));background:color-mix(in srgb, var(--color-ink) 2%, var(--color-ground))}.fx-mod.is-bypassed .fx-mod-name{color:color-mix(in srgb, var(--color-ink) 55%, var(--color-ground))}.fx-mod-head{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.fx-mod-name{font:var(--text-label-sm);letter-spacing:.05em;color:var(--color-ink)}.fx-mod-actions{gap:var(--space-1);display:flex}.fx-mod-btn{font:var(--text-label-sm);letter-spacing:.05em;color:var(--color-ink);background:color-mix(in srgb, var(--color-ink) 7%, var(--color-ground));border:1px solid color-mix(in srgb, var(--color-ink) 18%, var(--color-ground));cursor:pointer;border-radius:3px;place-items:center;min-width:20px;height:20px;padding:0 4px;display:grid}.fx-mod-btn:hover:not(:disabled){background:color-mix(in srgb, var(--color-ink) 12%, var(--color-ground))}.fx-mod-btn:disabled{opacity:.55;cursor:default}.fx-mod-btn:focus-visible{outline:2px solid var(--color-ink);outline-offset:1px}.fx-bypass-btn[aria-pressed=false]{background:var(--lane-hue);border-color:var(--lane-hue);color:var(--color-ink-on-fill)}.fx-remove-btn:hover:not(:disabled){border-color:color-mix(in srgb, var(--color-lane-drums) 55%, var(--color-ground))}.fx-mod-params{gap:var(--space-2);flex-direction:column;display:flex}.fx-param{align-items:center;gap:var(--space-3);grid-template-columns:64px 1fr auto;display:grid}.fx-param-label{font:var(--text-label-sm);letter-spacing:.05em;color:color-mix(in srgb, var(--color-ink) 62%, var(--color-ground))}.fx-mod.is-bypassed .fx-param-label{color:color-mix(in srgb, var(--color-ink) 55%, var(--color-ground))}.fx-param-slider{appearance:none;cursor:pointer;background:0 0;width:100%;height:14px;margin:0}.fx-param-slider::-webkit-slider-runnable-track{background:color-mix(in srgb, var(--color-ink) 14%, var(--color-ground));border:1px solid color-mix(in srgb, var(--color-ink) 12%, var(--color-ground));border-radius:2px;height:4px}.fx-param-slider::-moz-range-track{background:color-mix(in srgb, var(--color-ink) 14%, var(--color-ground));border:1px solid color-mix(in srgb, var(--color-ink) 12%, var(--color-ground));border-radius:2px;height:4px}.fx-param-slider::-webkit-slider-thumb{appearance:none;background:var(--color-ink);border:1px solid color-mix(in srgb, var(--lane-hue) 55%, var(--color-ground));border-radius:1px;width:10px;height:10px;margin-top:-4px}.fx-param-slider::-moz-range-thumb{background:var(--color-ink);border:1px solid color-mix(in srgb, var(--lane-hue) 55%, var(--color-ground));border-radius:1px;width:10px;height:10px}.fx-param-slider:focus-visible{outline:2px solid var(--color-ink);outline-offset:1px}.fx-mod.is-bypassed .fx-param-slider::-webkit-slider-thumb{border-color:color-mix(in srgb, var(--color-ink) 35%, var(--color-ground))}.fx-mod.is-bypassed .fx-param-slider::-moz-range-thumb{border-color:color-mix(in srgb, var(--color-ink) 35%, var(--color-ground))}.fx-param-select{font:var(--text-value);color:var(--color-ink);background:var(--color-ground);border:1px solid color-mix(in srgb, var(--color-ink) 22%, var(--color-ground));border-radius:3px;width:100%;padding:2px 4px}.fx-param-select:focus-visible{outline:2px solid var(--color-ink);outline-offset:1px}.fx-param-readout{font:var(--text-value);color:var(--color-ink);text-align:right;white-space:nowrap;min-width:7ch}.fx-mod.is-bypassed .fx-param-readout{color:color-mix(in srgb, var(--color-ink) 50%, var(--color-ground))}.fx-strip-footer{align-items:center;min-height:24px;display:flex;position:relative}.fx-add-btn{font:var(--text-label-sm);letter-spacing:.05em;color:var(--color-ink);background:color-mix(in srgb, var(--color-ink) 7%, var(--color-ground));border:1px dashed color-mix(in srgb, var(--lane-hue) 45%, var(--color-ground));cursor:pointer;border-radius:3px;padding:4px 10px}.fx-add-btn:hover{background:color-mix(in srgb, var(--color-ink) 12%, var(--color-ground))}.fx-add-btn:focus-visible{outline:2px solid var(--color-ink);outline-offset:1px}.fx-strip-cap{font:var(--text-label-sm);letter-spacing:.05em;color:color-mix(in srgb, var(--color-ink) 55%, var(--color-ground))}.fx-add-menu{bottom:calc(100% + var(--space-2));z-index:40;gap:var(--space-1);padding:var(--space-2);background:var(--color-ground);border:1px solid color-mix(in srgb, var(--color-ink) 25%, var(--color-ground));border-radius:4px;display:flex;position:absolute;left:0;box-shadow:4px 4px 12px #0000008c}.fx-add-item{font:var(--text-label-sm);letter-spacing:.05em;color:var(--color-ink);background:color-mix(in srgb, var(--color-ink) 7%, var(--color-ground));border:1px solid color-mix(in srgb, var(--color-ink) 18%, var(--color-ground));cursor:pointer;border-radius:3px;padding:5px 8px}.fx-add-item:hover{background:color-mix(in srgb, var(--color-ink) 12%, var(--color-ground));border-color:color-mix(in srgb, var(--lane-hue) 55%, var(--color-ground))}.fx-add-item:focus-visible{outline:2px solid var(--color-ink);outline-offset:1px}.head-fx{font:var(--text-label-sm);letter-spacing:.05em;color:var(--color-ink);background:color-mix(in srgb, var(--color-ink) 7%, var(--color-ground));border:1px solid color-mix(in srgb, var(--lane-hue) 35%, var(--color-ground));cursor:pointer;border-radius:3px;padding:4px 10px}.head-fx:hover{background:color-mix(in srgb, var(--color-ink) 12%, var(--color-ground))}.head-fx:focus-visible{outline:2px solid var(--color-ink);outline-offset:1px}.head-fx.is-open{background:color-mix(in srgb, var(--lane-hue) 14%, var(--color-ground));border-color:var(--lane-hue)}@keyframes fx-mod-flash{0%{box-shadow:0 2px 4px #00000073, 0 0 3px color-mix(in srgb, var(--lane-hue) 60%, transparent)}to{box-shadow:0 2px 4px #00000073}}.fx-mod.is-flash{animation:.18s ease-out both fx-mod-flash}@media (prefers-reduced-motion:reduce){.fx-mod.is-flash{animation:none}}.rail{--lane-hue:var(--color-ink);width:100%;max-width:1400px;padding:var(--space-4) var(--space-5) 0;border-top:1px solid color-mix(in srgb, var(--color-ink) 12%, var(--color-ground));margin:0 auto}.rail-head{margin-bottom:var(--space-3);justify-content:space-between;align-items:baseline;display:flex}.rail-title{font:var(--text-label-sm);letter-spacing:.05em;color:var(--color-ink)}.rail-view-toggle{font:var(--text-label-sm);letter-spacing:.05em;color:var(--color-ink);background:color-mix(in srgb, var(--color-ink) 7%, var(--color-ground));border:1px solid color-mix(in srgb, var(--color-ink) 22%, var(--color-ground));padding:var(--space-2) var(--space-3);cursor:pointer;border-radius:3px}.rail-view-toggle:hover{background:color-mix(in srgb, var(--color-ink) 12%, var(--color-ground))}.rail-view-toggle:focus-visible{outline:2px solid var(--color-ink);outline-offset:1px}.rail-row{--lane-hue:var(--color-ink);align-items:center;gap:var(--space-4);padding:var(--space-2) 0;flex-wrap:wrap;display:flex}.rail-row[data-lane=drums]{--lane-hue:var(--color-lane-drums)}.rail-row[data-lane=bass]{--lane-hue:var(--color-lane-bass)}.rail-row[data-lane=chords]{--lane-hue:var(--color-lane-chords)}.rail-row[data-lane=lead]{--lane-hue:var(--color-lane-lead)}.rail-lane-name{width:64px;font:var(--text-label-sm);letter-spacing:.05em;color:var(--color-ink);flex:none}.rail-tiles{align-items:stretch;gap:var(--space-2);flex-wrap:wrap;display:flex}.rail-tile{align-items:baseline;column-gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid color-mix(in srgb, var(--color-ink) 16%, var(--color-ground));background:color-mix(in srgb, var(--color-ink) 6%, var(--color-ground));cursor:pointer;min-width:64px;font:var(--text-value);border-radius:3px;grid-template-columns:auto auto;display:grid;position:relative}.rail-tile:hover{border-color:color-mix(in srgb, var(--lane-hue) 55%, var(--color-ground))}.rail-tile:focus-visible{outline:2px solid var(--color-ink);outline-offset:1px}.rail-tile-cue{font:var(--text-label-sm);letter-spacing:.05em;color:var(--color-ink);white-space:nowrap;grid-column:1/-1}.rail-tile-cue.is-empty{color:color-mix(in srgb, var(--color-ink) 55%, var(--color-ground))}.rail-tile-name{color:var(--color-ink)}.rail-tile-bars{color:color-mix(in srgb, var(--color-ink) 55%, var(--color-ground))}.rail-tile[data-state=selected] .rail-tile-bars,.rail-tile[data-state=active] .rail-tile-bars,.rail-tile[data-state=pending] .rail-tile-bars{color:var(--color-ink)}.rail-tile[data-state=active]{border-color:var(--lane-hue);background:color-mix(in srgb, var(--lane-hue) 18%, var(--color-ground))}.rail-tile[data-state=selected]{border-color:var(--lane-hue);background:color-mix(in srgb, var(--lane-hue) 28%, var(--color-ground));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--lane-hue) 60%, var(--color-ground))}.rail-tile[data-state=pending]{border-color:var(--color-ink);background:repeating-linear-gradient(135deg, color-mix(in srgb, var(--lane-hue) 32%, var(--color-ground)) 0 4px, color-mix(in srgb, var(--lane-hue) 12%, var(--color-ground)) 4px 8px)}.rail-tile-flag{color:var(--color-ink);font-size:8px;position:absolute;top:2px;right:4px}.rail-append{font:var(--text-value);color:var(--color-ink);background:color-mix(in srgb, var(--color-ink) 6%, var(--color-ground));border:1px dashed color-mix(in srgb, var(--color-ink) 25%, var(--color-ground));padding:var(--space-2) var(--space-3);cursor:pointer;border-radius:3px}.rail-append:hover{border-color:color-mix(in srgb, var(--lane-hue) 55%, var(--color-ground))}.rail-append:focus-visible,.rail-tool:focus-visible{outline:2px solid var(--color-ink);outline-offset:1px}.rail-struct-flag{font:var(--text-label-sm);letter-spacing:.05em;color:var(--color-ink);border:1px solid color-mix(in srgb, var(--color-ink) 35%, var(--color-ground));padding:var(--space-2) var(--space-3);border-radius:3px}.rail-tools{align-items:center;gap:var(--space-2);margin-left:auto;display:flex}.rail-tool{font:var(--text-label-sm);letter-spacing:.05em;color:var(--color-ink);background:color-mix(in srgb, var(--color-ink) 7%, var(--color-ground));border:1px solid color-mix(in srgb, var(--color-ink) 22%, var(--color-ground));padding:var(--space-2) var(--space-3);cursor:pointer;border-radius:3px}.rail-tool:hover:not(:disabled){background:color-mix(in srgb, var(--color-ink) 12%, var(--color-ground))}.rail-tool:disabled{opacity:.55;cursor:not-allowed}.rail-edit{font:var(--text-value);color:var(--color-ink);background:var(--color-ground);border:1px solid var(--lane-hue);padding:var(--space-1) var(--space-2);border-radius:3px;width:9ch}.rail[data-view=focus] .rail-tile:not([data-state=active]):not([data-state=pending]):not([data-state=selected]),.rail[data-view=focus] .rail-tools,.rail[data-view=focus] .rail-append{display:none}.stage-floors[data-view=focus] .lane-grid{zoom:1.25}
