:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:var(--lightningcss-light,#eef0f3)var(--lightningcss-dark,#111215);--surface:var(--lightningcss-light,#fff)var(--lightningcss-dark,#1a1b1f);--surface-2:var(--lightningcss-light,#f4f5f7)var(--lightningcss-dark,#22242a);--surface-hover:var(--lightningcss-light,#eceef2)var(--lightningcss-dark,#2a2d34);--border:var(--lightningcss-light,#dcdfe5)var(--lightningcss-dark,#2f3238);--border-strong:var(--lightningcss-light,#c3c7cf)var(--lightningcss-dark,#454952);--text:var(--lightningcss-light,#1c1e22)var(--lightningcss-dark,#e7e8eb);--text-muted:var(--lightningcss-light,#626773)var(--lightningcss-dark,#9ba0aa);--accent:var(--lightningcss-light,#6d28d9)var(--lightningcss-dark,#b197fc);--accent-hover:var(--lightningcss-light,#5b21b6)var(--lightningcss-dark,#cabafd);--accent-soft:var(--lightningcss-light,#6d28d917)var(--lightningcss-dark,#b197fc29);--accent-strong-soft:var(--lightningcss-light,#6d28d92e)var(--lightningcss-dark,#b197fc47);--brand-pink:#ff3d8b;--edit:var(--lightningcss-light,#d0266f)var(--lightningcss-dark,#ff7ab8);--edit-soft:var(--lightningcss-light,#d0266f1f)var(--lightningcss-dark,#ff7ab829);--control-border:var(--lightningcss-light,#8a909b)var(--lightningcss-dark,#6b7079);--handle:#8b5cf6;--brand-gradient:linear-gradient(135deg, #ff3d8b 0%, #8b3dff 100%);--on-accent:var(--lightningcss-light,#fff)var(--lightningcss-dark,#1a0b3d);--danger:var(--lightningcss-light,#d23b3b)var(--lightningcss-dark,#ff6b6b);--danger-soft:var(--lightningcss-light,#d23b3b1a)var(--lightningcss-dark,#ff6b6b24);--tooltip-bg:var(--lightningcss-light,#23262d)var(--lightningcss-dark,#f1f2f4);--tooltip-text:var(--lightningcss-light,#f4f5f7)var(--lightningcss-dark,#1c1e22);--shadow:0 1px 2px #1418200f;--shadow-pop:0 8px 24px #1418202e;--warn-soft:var(--lightningcss-light,#fff4d6)var(--lightningcss-dark,#3a3016);--warn-border:var(--lightningcss-light,#f0d48a)var(--lightningcss-dark,#5a4a1e);--error-soft:var(--lightningcss-light,#fde2e2)var(--lightningcss-dark,#3d1c1c);--error-border:var(--lightningcss-light,#f2a9a9)var(--lightningcss-dark,#6b2b2b);--track-bg:var(--lightningcss-light,#dfe2e8)var(--lightningcss-dark,#2a2d34);--on-danger:var(--lightningcss-light,#fff)var(--lightningcss-dark,#1a0b3d);--radius:10px;--radius-sm:6px;--fs-2xs:.68rem;--fs-xs:.75rem;--fs-sm:.8rem;--fs-md:.85rem;--fs-base:.9rem;--fs-body:1rem;--fs-lg:1.1rem;--fs-xl:1.25rem;--z-tabs:890;--z-header:900;--z-popover:950;--z-overlay:1000;--z-overlay-raised:1001;--z-drag:1002;--z-theater:1003;--z-blocking:2000;--z-debug:10000;--header-h:3.25rem;--tabs-h:2.9rem;--panel-bg:var(--surface-2);font-family:system-ui,Hiragino Kaku Gothic ProN,Yu Gothic UI,Yu Gothic,sans-serif;font-size:15px;line-height:1.5}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--shadow:0 1px 2px #0006;--shadow-pop:0 8px 24px #0000008c}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--shadow:0 1px 2px #0006;--shadow-pop:0 8px 24px #0000008c}}@supports not (color:light-dark(#000, #fff)){:root{--bg:#eef0f3;--surface:#fff;--surface-2:#f4f5f7;--surface-hover:#eceef2;--border:#dcdfe5;--border-strong:#c3c7cf;--text:#1c1e22;--text-muted:#626773;--accent:#6d28d9;--accent-hover:#5b21b6;--accent-soft:#6d28d917;--accent-strong-soft:#6d28d92e;--edit:#d0266f;--edit-soft:#d0266f1f;--control-border:#8a909b;--on-accent:#fff;--danger:#d23b3b;--danger-soft:#d23b3b1a;--tooltip-bg:#23262d;--tooltip-text:#f4f5f7;--warn-soft:#fff4d6;--warn-border:#f0d48a;--error-soft:#fde2e2;--error-border:#f2a9a9;--track-bg:#dfe2e8;--on-danger:#fff}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#111215;--surface:#1a1b1f;--surface-2:#22242a;--surface-hover:#2a2d34;--border:#2f3238;--border-strong:#454952;--text:#e7e8eb;--text-muted:#9ba0aa;--accent:#b197fc;--accent-hover:#cabafd;--accent-soft:#b197fc29;--accent-strong-soft:#b197fc47;--edit:#ff7ab8;--edit-soft:#ff7ab829;--control-border:#6b7079;--on-accent:#1a0b3d;--danger:#ff6b6b;--danger-soft:#ff6b6b24;--tooltip-bg:#f1f2f4;--tooltip-text:#1c1e22;--warn-soft:#3a3016;--warn-border:#5a4a1e;--error-soft:#3d1c1c;--error-border:#6b2b2b;--track-bg:#2a2d34;--on-danger:#1a0b3d}}:root[data-theme=dark]{--bg:#111215;--surface:#1a1b1f;--surface-2:#22242a;--surface-hover:#2a2d34;--border:#2f3238;--border-strong:#454952;--text:#e7e8eb;--text-muted:#9ba0aa;--accent:#b197fc;--accent-hover:#cabafd;--accent-soft:#b197fc29;--accent-strong-soft:#b197fc47;--edit:#ff7ab8;--edit-soft:#ff7ab829;--control-border:#6b7079;--on-accent:#1a0b3d;--danger:#ff6b6b;--danger-soft:#ff6b6b24;--tooltip-bg:#f1f2f4;--tooltip-text:#1c1e22;--warn-soft:#3a3016;--warn-border:#5a4a1e;--error-soft:#3d1c1c;--error-border:#6b2b2b;--track-bg:#2a2d34;--on-danger:#1a0b3d}}*,:before,:after{box-sizing:border-box}[hidden]{display:none!important}body{background:var(--bg);min-height:100svh;color:var(--text);margin:0;overflow-x:clip}button,input,select,textarea{font:inherit;color:inherit}button{font-size:var(--fs-md);color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);cursor:pointer;justify-content:center;align-items:center;gap:.3em;padding:.3rem .7rem;line-height:1.4;transition:background-color .12s,border-color .12s,color .12s;display:inline-flex}input[type=file]::file-selector-button{font-size:var(--fs-md);color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);cursor:pointer;justify-content:center;align-items:center;gap:.3em;padding:.3rem .7rem;line-height:1.4;transition:background-color .12s,border-color .12s,color .12s;display:inline-flex}button:hover:not(:disabled){background:var(--surface-hover);border-color:var(--accent)}input[type=file]::file-selector-button:hover{background:var(--surface-hover);border-color:var(--accent)}button:active:not(:disabled){background:var(--accent-soft)}input:disabled:not([type=checkbox]):not([type=radio]):not([type=range]),select:disabled,textarea:disabled{color:var(--text-muted);background:var(--surface-2);cursor:not-allowed}button:disabled{opacity:.45;cursor:default}.scrub-label{cursor:ew-resize;-webkit-user-select:none;user-select:none;touch-action:pan-y;border-radius:4px;padding:.1rem .3rem}.scrub-label:hover{background:var(--accent-soft)}.scrub-label.dragging{background:var(--accent-strong-soft);color:var(--accent)}input[type=file]{color:#0000;font-size:0}input[type=text],input[type=number],select{font-size:var(--fs-md);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:.28rem .45rem}input[type=text]:hover,input[type=number]:hover,select:hover{border-color:var(--accent)}input[type=checkbox],input[type=range],progress{accent-color:var(--accent)}input[type=checkbox]{width:1rem;height:1rem;margin:0}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}input[type=text]:focus-visible,input[type=number]:focus-visible,select:focus-visible{outline-offset:0;border-color:var(--accent)}label{align-items:center;gap:.4rem;display:inline-flex}.btn-primary{color:var(--on-accent);background:var(--accent);border-color:var(--accent);font-weight:600}.btn-primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.app-header{z-index:var(--z-header);min-height:var(--header-h);background:var(--surface);border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1.5rem;padding:.5rem 1.5rem;display:flex;position:sticky;top:0}.app-header-title{align-items:baseline;gap:1rem;display:flex}.app-header h1{font-size:var(--fs-lg);letter-spacing:.02em;margin:0}.app-brand{white-space:nowrap;align-items:center;gap:.5rem;display:flex}.app-brand-icon{flex:none;width:28px;height:28px}.app-brand-name{font-size:var(--fs-xl);letter-spacing:.01em;font-weight:800}.app-brand-tagline{font-size:var(--fs-xs);letter-spacing:.02em;color:var(--text-muted);font-weight:500}@media (width<=600px){.app-brand-tagline{display:none}}.restore-banner{font-size:var(--fs-xs);color:var(--text-muted);margin:0}.restore-banner.is-pending{visibility:hidden}.header-undo{gap:.3rem;display:inline-flex}.app-header-actions{flex-wrap:wrap;align-items:center;gap:.5rem 1.5rem;display:flex}.project-file-menu{background:var(--surface-2);border:1px solid var(--border);border-radius:999px;align-items:center;gap:0;padding:3px;display:flex}.project-file-menu button{font-size:var(--fs-sm)}.project-btn{align-items:baseline;gap:.3em;max-width:16rem;display:inline-flex}.project-btn-label{color:var(--text-muted);flex:none}.project-btn-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:600;overflow:hidden}.project-dialog-body{padding-top:1rem}.project-name-field{flex-direction:column;align-items:stretch;gap:.3rem;display:flex}.project-name-field span{font-size:var(--fs-sm);color:var(--text-muted)}.project-name-input{box-sizing:border-box;width:100%}.project-dialog-actions{flex-wrap:wrap;gap:.5rem;margin-top:.75rem;display:flex}.project-list,.project-template-list{border:1px solid var(--border);border-radius:var(--radius-sm);margin:.3rem 0;padding:0;list-style:none}.project-row{align-items:center;gap:.5rem;padding:.55rem .75rem;display:flex}.project-row+.project-row{border-top:1px solid var(--border)}.project-row.is-open{background:var(--accent-soft)}.project-row-info{flex-direction:column;flex:1;min-width:0;display:flex}.project-row-name{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.project-row-meta{font-size:var(--fs-xs);color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-row-badge{font-size:var(--fs-xs);color:var(--accent);flex:none}.project-row button{font-size:var(--fs-sm);flex:none}.project-row-delete{color:var(--danger)}.project-backup{border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--fs-md);margin:.2rem 0 .4rem;padding:.6rem .75rem}.project-backup-title{font-size:var(--fs-md);margin:0 0 .3rem}.project-backup-target,.project-backup-status{color:var(--text-muted);margin:.2rem 0}.project-backup-status{min-height:1.5em}.project-backup-auto{flex-wrap:wrap;align-items:center;gap:.3rem .6rem;margin-top:.4rem;display:flex}.project-backup-auto[hidden],.project-backup-actions[hidden]{display:none}.project-storage-note{font-size:var(--fs-xs);color:var(--text-muted)}.blocking-notice{z-index:var(--z-blocking);background:#14182073;background:var(--lightningcss-light,#14182073)var(--lightningcss-dark,#0009);place-items:center;padding:1.5rem;display:grid;position:fixed;inset:0}.blocking-notice-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);max-width:30rem;box-shadow:var(--shadow-pop);padding:1.5rem 1.75rem}.blocking-notice-card h2{font-size:var(--fs-lg);margin:0 0 .75rem}.blocking-notice-card p{font-size:var(--fs-base);margin:0 0 .75rem;line-height:1.7}.step-tabs{top:var(--header-real,var(--header-h));z-index:var(--z-tabs);background:var(--surface);border-bottom:1px solid var(--border);scrollbar-width:none;gap:.25rem;padding:0 1.25rem;display:flex;position:sticky;overflow-x:auto}.step-tab{height:var(--tabs-h);font-size:var(--fs-base);color:var(--text-muted);background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;flex:none;gap:.5rem;padding:0 .9rem}@media (width<=600px){.step-tab{gap:.35rem;padding:0 .55rem}.step-tab-label[data-short]{font-size:0}.step-tab-label[data-short]:after{content:attr(data-short);font-size:var(--fs-md)}.step-tab .step-tab-number{display:none}}.step-tab:hover:not(:disabled){color:var(--text);border-color:#0000;border-bottom-color:var(--border-strong);background:0 0}.step-tab:active:not(:disabled){background:0 0}.step-tab.active{color:var(--text);border-bottom-color:var(--accent);font-weight:600}.step-tab-number{width:1.35rem;height:1.35rem;font-size:var(--fs-xs);color:var(--text-muted);background:var(--surface-2);border:1px solid var(--border);border-radius:50%;place-items:center;font-weight:700;display:inline-grid}.step-tab.active .step-tab-number{color:var(--on-accent);background:var(--accent);border-color:var(--accent)}.app-body{align-items:flex-start;gap:1.5rem;max-width:1480px;margin:0 auto;padding:1.5rem;display:flex}#screen-root{flex:520px;min-width:0;max-width:700px}#stage-panel{min-width:0;max-width:760px;top:calc(var(--header-real,var(--header-h)) + var(--tabs-h) + 1.5rem);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);flex:380px;align-self:flex-start;padding:1rem;position:sticky}#stage-panel .stage-wrap{margin-top:0}#stage-panel .stage{width:min(100%, calc(max(120px, 100vh - var(--header-real,var(--header-h)) - var(--tabs-h) - var(--stage-controls-h,23rem) - var(--sample-guide-h,0px) - 2rem) * var(--stage-aspect,1.7778)));width:min(100%, calc(max(120px, 100svh - var(--header-real,var(--header-h)) - var(--tabs-h) - var(--stage-controls-h,23rem) - var(--sample-guide-h,0px) - 2rem) * var(--stage-aspect,1.7778)));border-radius:var(--radius-sm);margin-inline:auto}@media (width<=960px){.app-body{flex-direction:column;padding:1rem}#screen-root,#stage-panel{width:100%;max-width:none}#stage-panel{order:-1;position:static}#stage-panel .stage{width:min(100%, calc(45vh * var(--stage-aspect,1.7778)));margin-inline:auto}}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.25rem 1.5rem 1.5rem}.panel h2{font-size:var(--fs-lg);letter-spacing:.01em;flex-wrap:wrap;align-items:center;gap:.15rem .5rem;margin:0 0 1rem;display:flex}[data-kicker]:before{content:attr(data-kicker);font-size:var(--fs-2xs);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);flex-basis:100%;font-weight:700;display:block}.panel-section+.panel-section{border-top:1px solid var(--border);margin-top:1.25rem;padding-top:1.25rem}.panel-section-title{font-size:var(--fs-body);flex-wrap:wrap;align-items:center;gap:.1rem .4rem;margin:0 0 .6rem;font-weight:700;display:flex}.help-tip{vertical-align:middle;cursor:help;flex:none;font-weight:400;display:inline-flex;position:relative}.help-tip:focus-visible{outline:none}.help-tip:before{content:"";position:absolute;inset:-4px}.touch .help-tip:before{inset:-12px}.help-tip-mark{width:1.15rem;height:1.15rem;font-size:var(--fs-xs);color:var(--text-muted);border:1px solid var(--border-strong);border-radius:50%;place-items:center;font-weight:700;display:inline-grid}.help-tip:hover .help-tip-mark,.help-tip:focus-visible .help-tip-mark,.help-tip.is-open .help-tip-mark{color:var(--on-accent);background:var(--accent);border-color:var(--accent)}.help-tip-bubble{z-index:var(--z-popover);width:max-content;max-width:min(22rem,80vw);font-size:var(--fs-sm);text-align:left;white-space:normal;color:var(--tooltip-text);background:var(--tooltip-bg);border-radius:var(--radius-sm);box-shadow:var(--shadow-pop);visibility:hidden;opacity:0;margin-left:var(--tip-shift,0px);pointer-events:none;padding:.55rem .75rem;font-weight:400;line-height:1.6;transition:opacity .12s,transform .12s,visibility .12s;position:absolute;top:calc(100% + 8px);left:-.5rem;transform:translateY(-2px)}.help-tip-plain{white-space:pre-line}.help-tip--end .help-tip-bubble{margin-left:0;margin-right:calc(-1 * var(--tip-shift,0px));left:auto;right:-.5rem}.help-tip:hover .help-tip-bubble,.help-tip:focus-visible .help-tip-bubble,.help-tip.is-open .help-tip-bubble{visibility:visible;opacity:1;transform:none}.touch .help-tip:not(.is-open) .help-tip-bubble,.help-tip:not(:hover):not(:focus-visible):not(.is-open) .help-tip-bubble{display:none}.hint{font-size:var(--fs-sm);color:var(--text-muted);margin:.5rem 0}.sample-guide{background:var(--accent-soft);border:1px solid var(--accent-strong-soft);border-radius:var(--radius);align-items:center;gap:.6rem;margin:.4rem 1.5rem 0;padding:.15rem .35rem .15rem .6rem;display:flex}.sample-guide[hidden]{display:none}.sample-guide-badge{font-size:var(--fs-xs);color:var(--accent);border:1px solid var(--accent);border-radius:var(--radius-sm);background:0 0;padding:.1rem .55rem;font-weight:700}.sample-guide .btn-primary{font-size:var(--fs-sm);min-height:0;padding:.2rem .8rem}.sample-guide-close{font-size:var(--fs-lg);background:0 0;border:none;margin-left:auto}@media (width<=600px){.sample-guide{margin:.5rem .75rem 0}}.invite-trigger .trigger-btn,.invite-trigger .tap-pad{animation:1.4s ease-in-out infinite trigger-invite;position:relative}.invite-trigger .trigger-btn:after,.invite-trigger .tap-pad:after{content:"";border-radius:inherit;pointer-events:none;opacity:0;animation:1.4s ease-out infinite trigger-invite-ring;position:absolute;inset:0;box-shadow:0 0 0 12px #ff3d8b8c}@keyframes trigger-invite{0%,to{transform:scale(1)}50%{transform:scale(1.03)}}@keyframes trigger-invite-ring{0%{opacity:.9;transform:scale(.94)}70%,to{opacity:0;transform:scale(1.02)}}@media (prefers-reduced-motion:reduce){.invite-trigger .trigger-btn,.invite-trigger .tap-pad,.invite-trigger .trigger-btn:after,.invite-trigger .tap-pad:after{animation:none}}.effect-tile.unseen-here{opacity:.65}.hint.warn{color:var(--danger)}.active-span-row.invalid .param-input{border-color:var(--danger)}.mode-badge{font-size:var(--fs-xs);color:var(--accent);background:var(--accent-soft);border-radius:999px;align-items:center;gap:.35rem;margin-left:.25rem;padding:.1rem .5rem .1rem .65rem;font-weight:600;display:inline-flex}.record-toggle.recording{background:var(--danger);border-color:var(--danger)}.record-toggle.recording:hover:not(:disabled){background:var(--danger);border-color:var(--danger);filter:brightness(1.08)}.link-btn{color:var(--accent);font:inherit;text-underline-offset:2px;cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.link-btn:hover:not(:disabled){color:var(--accent-hover);background:0 0}.status-missing{color:var(--danger)}.tempo-readout{font-variant-numeric:tabular-nums;color:var(--text-muted)}.record-bar{flex-wrap:wrap;align-items:center;gap:.4rem .75rem;display:flex}.record-destination{font-size:var(--fs-md);color:var(--text-muted)}.record-destination.replacing{color:var(--danger);font-weight:600}.record-settings{font-size:var(--fs-md);margin:.25rem 0 .5rem}.record-settings>summary{cursor:pointer;padding:.25rem 0;font-weight:600}.record-settings-summary{color:var(--text-muted);margin-left:.4rem;font-weight:400}.record-settings[open]>summary{margin-bottom:.4rem}.record-status{font-size:var(--fs-sm);color:var(--text-muted);margin:.5rem 0 0}.nudge-group{display:inline-flex}.nudge-group button{border-radius:0}.nudge-group button+button{margin-left:-1px}.nudge-group button:first-child{border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.nudge-group button:last-child{border-radius:0 var(--radius-sm) var(--radius-sm) 0}.swap-material-status{align-items:center;gap:.4rem;display:flex}.audio-controls{margin-top:1rem}.filename{font-size:var(--fs-base);opacity:.8}.transport{flex-wrap:wrap;align-items:center;gap:.5rem;margin:.75rem 0;display:flex}.stage-wrap{margin-top:1rem}.file-button{font-size:var(--fs-base);border:1px solid var(--border-strong);border-radius:var(--radius-sm);cursor:pointer;align-items:center;margin:.25rem 0 .4rem;padding:.45rem 1rem;display:inline-flex;position:relative}.file-button.btn-primary:hover{background:var(--accent-hover)}.file-button input[type=file]{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.file-button:focus-within{outline:2px solid var(--accent);outline-offset:2px}.canvas-size-section>summary{cursor:pointer}.canvas-size-change{font-weight:400;font-size:var(--fs-sm);color:var(--text-muted)}.canvas-size-change:before{content:"▸ "}.canvas-size-section[open] .canvas-size-change:before{content:"▾ "}.pattern-maker{font-size:var(--fs-md);margin:.4rem 0 .6rem}.pattern-maker>summary{cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--accent);font-weight:600}.pattern-maker-body{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);gap:.6rem;margin-top:.5rem;padding:.75rem;display:grid}.pattern-maker-controls{flex-wrap:wrap;gap:.5rem 1rem;display:flex}.pattern-maker-controls label{align-items:center;gap:.35rem;display:inline-flex}.pattern-maker-controls input[type=number]{width:5em}.pattern-maker-preview{border:1px solid var(--border);border-radius:4px;width:240px;max-width:100%;height:auto}.pattern-maker-add{justify-self:start}.frame-margin-toggle{width:fit-content;font-size:var(--fs-md);align-items:center;gap:.4rem;margin-top:.6rem;display:flex}.stage{width:min(100%, 640px, calc(70vh * var(--stage-aspect,1.7778)));aspect-ratio:1280/720;border-radius:var(--radius-sm);touch-action:none;background-color:#fff;background-image:conic-gradient(#b4b4b4 90deg,#fff 90deg 180deg,#b4b4b4 180deg 270deg,#fff 270deg);background-size:24px 24px;position:relative;overflow:hidden}.touch #global-stage-host{touch-action:pan-y pinch-zoom}.stage canvas{width:100%;height:100%;display:block}.stage:after{content:"";border-radius:inherit;pointer-events:none;border:3px solid #0000;transition:border-color .15s;position:absolute;inset:0}.stage.recording:after{border-color:var(--danger)}.stage.recording .stage-focus-row{top:38px}.stage-rec{color:#fff;font-size:var(--fs-xs);letter-spacing:.04em;pointer-events:none;background:#0009;border-radius:999px;align-items:center;gap:.35rem;padding:.2rem .55rem;font-weight:700;display:flex;position:absolute;top:8px;left:8px}.stage-rec-dot{background:#ff3b3b;border-radius:50%;width:9px;height:9px;animation:1s steps(2,jump-none) infinite stage-rec-blink}@keyframes stage-rec-blink{50%{opacity:.25}}.stage-rec-info{letter-spacing:0;font-weight:400}.stage-count-in{color:#fff;pointer-events:none;background:#00000059;flex-direction:column;justify-content:center;align-items:center;gap:.2rem;display:flex;position:absolute;inset:0}.stage-count-in-number{font-variant-numeric:tabular-nums;text-shadow:0 2px 12px #0009;font-size:clamp(2.5rem,12vw,5rem);font-weight:800;line-height:1}.stage-count-in-label{font-size:var(--fs-sm);opacity:.85}@media (prefers-reduced-motion:reduce){.stage-rec-dot,.metronome-pulse.pulse{animation:none}}.placement-view-fold{margin-block:.4rem .8rem}.placement-view-fold>summary{cursor:pointer;color:var(--text-muted,inherit);font-size:var(--fs-sm)}.placement-on-preview{margin-block:.6rem .2rem}.overlay{-webkit-user-select:none;user-select:none;position:absolute;inset:0}.object-box{box-sizing:border-box;cursor:move;border:1px dashed #ffffff80;position:absolute}.touch .object-box{touch-action:none}.object-box.frame-box{pointer-events:none;cursor:default;border:1px dashed #ffd60ae6;box-shadow:0 0 0 1px #00000059}.object-box.frame-box.selected{border:2px solid #ffd60a}.frame-edge{pointer-events:auto;cursor:move;position:absolute}.frame-edge-top,.frame-edge-bottom{height:16px;left:-8px;right:-8px}.frame-edge-left,.frame-edge-right{width:16px;top:0;bottom:0}.frame-edge-top{top:-8px}.frame-edge-bottom{bottom:-8px}.frame-edge-left{left:-8px}.frame-edge-right{right:-8px}.touch .frame-edge-top,.touch .frame-edge-bottom{height:28px;left:-14px;right:-14px}.touch .frame-edge-left,.touch .frame-edge-right{width:28px}.touch .frame-edge-top{top:-14px}.touch .frame-edge-bottom{bottom:-14px}.touch .frame-edge-left{left:-14px}.touch .frame-edge-right{right:-14px}.param-tabs{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.param-tab,.param-tab-add,.param-tab-remove{border:1px solid var(--border);color:inherit;font-size:var(--fs-sm);cursor:pointer;background:0 0;border-radius:999px;padding:3px 10px}.param-tab[aria-selected=true]{border-color:var(--accent);background:var(--accent);color:var(--on-accent,#fff);font-weight:700}.param-tab-add:disabled,.param-tab-remove:disabled{opacity:.4;cursor:default}.bpm-auto-note.unsure{border:1px solid var(--warn-border);background:var(--warn-soft);color:inherit;border-radius:6px;padding:2px 8px;font-weight:700}.grid-fit-note{font-size:var(--fs-sm,12px);color:var(--text-dim,inherit);flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.grid-fit-note[hidden]{display:none}.grid-fit-note.warn{border:1px solid var(--warn-border);background:var(--warn-soft);color:inherit;border-radius:6px;padding:2px 8px}.grid-fit-note.warn .grid-fit-text{font-weight:700}.pair-panel{flex-direction:column;gap:6px;display:flex}.pair-title{font-size:var(--fs-sm,12px);color:var(--text-dim,inherit);margin:6px 0 0;font-weight:700}.pair-buttons{flex-wrap:wrap;gap:6px;display:flex}.object-box.frame-box .resize-handle,.object-box.frame-box .rotate-handle{pointer-events:auto}.object-box.selected{border:2px solid var(--handle);box-shadow:0 0 0 1px #ffffffd9,0 0 0 2px #00000059}.resize-handle{background:var(--handle);cursor:nwse-resize;border:2px solid #fff;border-radius:3px;width:12px;height:12px;position:absolute;box-shadow:0 1px 3px #00000073}.rotate-handle{background:var(--handle);cursor:grab;border:2px solid #fff;border-radius:50%;width:10px;height:10px;margin-left:-5px;position:absolute;top:-24px;left:50%;box-shadow:0 1px 3px #00000073}.object-list{flex-direction:column;gap:.45rem;margin:1rem 0 0;padding:0;list-style:none;display:flex}.object-row{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--fs-md);justify-content:space-between;align-items:center;gap:.75rem;padding:.45rem .5rem .45rem .75rem;transition:background-color .12s,border-color .12s;display:flex}.object-row:hover{background:var(--surface-hover)}.object-row.selected{background:var(--accent-soft);border-color:var(--accent)}.assign-take-row{font-size:var(--fs-md);flex-wrap:wrap;align-items:center;gap:.4rem;margin:.4rem 0 .6rem;display:flex}.assign-take-row[hidden]{display:none}.loop-toggle{font-size:var(--fs-xs);align-items:center;gap:.2rem;display:flex}.object-selector[hidden]{display:none}.object-selector{flex-wrap:wrap;gap:.4rem;margin-bottom:1rem;display:flex}.object-tab{font-size:var(--fs-md);border-radius:999px;padding:.3rem .8rem}.object-tab.selected{color:var(--accent);border-color:var(--accent);background:var(--accent-soft);font-weight:600}.window-tabs{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);flex-direction:column;align-items:stretch;gap:.4rem;margin:0 0 .75rem;padding:.5rem .6rem;display:flex}.window-tabs[hidden]{display:none}.window-tabs-label{font-size:var(--fs-sm);color:var(--text-muted);font-weight:600}.window-tabs-head{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.window-tabs-targets{flex-wrap:wrap;gap:.35rem;display:flex}.window-tabs-targets:empty{display:none}.window-tabs-list{--tab-row-h:2.2rem;--tab-cols:repeat(auto-fill, minmax(10.5rem, 1fr));grid-template-columns:var(--tab-cols);gap:.35rem;display:grid}.window-tabs-list>.window-tab-wrap{min-width:0;height:var(--tab-row-h)}.window-tabs-group{flex-direction:column;grid-column:1/-1;gap:.35rem;display:flex}.window-tabs-group-line{height:var(--tab-row-h);align-items:center;gap:.35rem;display:flex}.window-tabs-group-line>.window-tab-wrap,.window-tabs-group-line>.window-tab-wrap>.window-tab{height:100%}.window-tabs-group-fold{min-width:2.6rem;height:100%;font-size:var(--fs-sm);color:var(--text-muted);flex:none;padding:0 .45rem}.window-tabs-group-members{grid-template-columns:var(--tab-cols);border-left:3px solid var(--accent-soft);gap:.35rem;margin-left:1.2rem;padding-left:.6rem;display:grid}.window-tabs-group-members>.window-tab-wrap{min-width:0;height:var(--tab-row-h)}.window-tabs-group-members>.window-tab-wrap>.window-tab{flex:auto;justify-content:flex-start;min-width:0;height:100%}.window-tabs-tools{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:.4rem .6rem;padding-top:.45rem;display:flex}.window-tabs-tools[hidden]{display:none}@media (width<=600px){.window-tabs-tools .auto-focus-toggle{font-size:var(--fs-sm);flex:1 0 100%}}.window-tabs-tool,.window-tabs-tool.icon-btn{white-space:nowrap;width:auto;height:auto;min-height:28px;color:var(--text);border:1px solid var(--border);background:var(--surface)}.window-tabs-tool{font-size:var(--fs-xs);align-items:center;gap:.3rem;padding:.2rem .6rem;display:inline-flex}.window-tabs-tool .icon{width:1.1em;height:1.1em}.touch .window-tabs-list{--tab-row-h:42px}@media (width<=600px){.window-tabs-list{--tab-cols:repeat(2, minmax(0, 1fr))}}.window-tabs-list>.window-tab-wrap>.window-tab{flex:auto;justify-content:flex-start;min-width:0;height:100%}.window-tabs.compact,.assign-float-bar .window-tabs.compact{min-width:0;max-width:100%}.window-tabs.compact .window-tabs-list,.window-tabs.compact .window-tabs-list.many{scrollbar-width:thin;flex-wrap:nowrap;max-height:none;display:flex;overflow:auto hidden}.window-tabs.compact .window-tabs-list>*{flex:none}.window-tabs-foot{justify-content:center;align-items:center;min-height:1.6rem;margin:-.15rem 0 -.1rem;display:flex;position:relative}.window-tabs-foot[hidden]{display:none}.window-tabs-head-actions{align-items:center;gap:.3rem;display:inline-flex}.window-tabs-more{font-size:var(--fs-xs);color:var(--accent);background:0 0;border-color:#0000;padding:.1rem .6rem}.window-tabs-more[hidden]{display:none}.window-tabs-grip{cursor:ns-resize;touch-action:none;border-radius:6px;width:96px;height:20px;display:none;position:relative}.window-tabs.has-many .window-tabs-grip{display:block}.window-tabs-grip:before{content:"";background:var(--border-strong);border-radius:3px;width:56px;height:5px;margin:7px auto 0;display:block}.window-tabs-grip:after{content:"⇕";font-size:var(--fs-sm);color:var(--accent);opacity:0;transition:opacity .12s;position:absolute;top:50%;right:-2px;transform:translateY(-50%)}.window-tabs-grip:hover:after,.window-tabs-grip.dragging:after,.window-tabs-grip:focus-visible:after{opacity:1}.window-tabs-grip:hover:before,.window-tabs-grip.dragging:before,.window-tabs-grip:focus-visible:before{background:var(--accent)}.window-tabs-list.many.show-all{max-height:none;overflow:visible}.window-tabs-list.many{max-height:calc(var(--tab-rows,2) * (var(--tab-row-h) + .35rem) - .35rem);scrollbar-width:thin;overflow-y:auto}.auto-focus-toggle{font-size:var(--fs-xs);color:var(--text-muted);align-items:center;gap:.3rem;display:inline-flex}.auto-focus-toggle[hidden]{display:none}.window-tab{font-size:var(--fs-md);border-radius:var(--radius-sm);align-items:center;gap:.35em;padding:.25rem .75rem;display:inline-flex}.window-tab .icon{vertical-align:-.12em;width:.95em;height:.95em;margin-right:.3em}.window-tab.selected{color:var(--accent);-webkit-text-stroke:.035em currentColor;border-color:var(--accent);background:var(--accent-soft)}.window-tab.is-hidden{opacity:.55;text-decoration:line-through}.window-tab-take{font-size:var(--fs-xs);color:var(--text-muted);font-weight:400}.assign-float{top:calc(var(--header-real,var(--header-h)) + var(--tabs-h));z-index:20;height:0;position:sticky}.assign-float-bar{background:var(--surface);border:1px solid var(--border);border-radius:0 0 var(--radius-sm) var(--radius-sm);box-shadow:var(--shadow);border-top:0;flex-wrap:wrap;align-items:center;gap:.35rem .6rem;padding:.4rem .5rem;display:flex}.assign-float-bar[hidden]{display:none}.assign-float-bar .window-tabs,.assign-float-bar .object-selector{margin:0}.window-tabs.compact{background:0 0;border:0;padding:0}.window-tabs.compact .window-tab{font-size:var(--fs-sm);padding:.15rem .6rem}.assign-float-bar .object-tab{font-size:var(--fs-xs);padding:.15rem .6rem}@media (width<=600px){.assign-float-bar{scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.assign-float-bar .window-tabs-list,.assign-float-bar .object-selector{flex-wrap:nowrap}.assign-float-bar .window-tab,.assign-float-bar .object-tab,.assign-float-bar .multi-btn{white-space:nowrap;flex:none}.assign-float-bar .object-selector{order:-1}}.take-share{font-size:var(--fs-md);margin:.5rem 0}.take-share[hidden]{display:none}.take-share summary{cursor:pointer;color:var(--text-muted)}.take-share-list{flex-wrap:wrap;gap:.3rem 1rem;padding:.4rem 0 0 1rem;display:flex}.trigger-key-row{font-size:var(--fs-md);justify-content:space-between;align-items:center;gap:.75rem;padding:.25rem 0;display:flex}.trigger-key-label{flex:1;align-items:center;gap:.4rem;display:inline-flex}.trigger-keys{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.4rem;display:flex}.trigger-key-slot{align-items:center;gap:.15rem;display:inline-flex}.trigger-key-remove,.trigger-key-add{font-size:var(--fs-xs)}.effect-row{border-bottom:1px solid var(--border);font-size:var(--fs-md);flex-wrap:wrap;align-items:center;gap:.6rem;padding:.4rem 0;display:flex}.effect-row:last-child{border-bottom:none}.effect-label{flex:1}.key-bind-btn{font-size:var(--fs-xs);min-width:6em}.key-bind-btn.listening{border-color:var(--accent)}.key-bind-btn.duplicate{border-color:var(--danger);color:var(--danger)}.param-input{width:5.5em;font-size:var(--fs-sm)}.beats-input{width:5.5em}.beats-input-wrap{align-items:center;gap:.3em;display:inline-flex}.beats-select{width:auto}.param-unit{font-size:var(--fs-xs);opacity:.7}.angle-dial{cursor:pointer;touch-action:none;vertical-align:middle;border-radius:50%;flex:none;display:inline-flex}.angle-dial:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.angle-dial-ring{fill:none;stroke:var(--border);stroke-width:1.5px}.angle-dial:hover .angle-dial-ring{stroke:var(--text-muted)}.angle-dial-tick{fill:var(--text-muted)}.angle-dial-off{fill:none;stroke:var(--text-muted);stroke-width:1.5px}.angle-dial-unset .angle-dial-ring{stroke-dasharray:3 3}.angle-dial-off-btn{margin-left:.25rem}.angle-dial-hand{fill:none;stroke:var(--accent);stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round}.angle-dial-hub{fill:var(--accent)}.param-auto{font-size:var(--fs-sm);white-space:nowrap;cursor:pointer;align-items:center;gap:.25rem;display:inline-flex}.is-auto{opacity:.45}.effect-add-section{margin-bottom:1rem;position:relative}.effect-tile-grid{flex-wrap:wrap;gap:.4rem;margin-bottom:.5rem;display:flex}.effect-add-toggle{text-align:left;width:100%;color:var(--accent);border:1px dashed var(--accent);background:var(--accent-soft);margin:0 0 .6rem;padding:.45rem .75rem;font-weight:600;display:block}.effect-add-section[hidden]{display:none}.section-fold{font:inherit;color:inherit;cursor:pointer;text-align:left;background:0 0;border:none;padding:0}.section-fold-mark{width:1em;color:var(--text-muted);display:inline-block}.section-fold-summary{font-size:var(--fs-sm);color:var(--text-muted);font-weight:400}#assign-trigger[hidden]{display:none}.effect-filter{width:100%;max-width:18rem;font-size:var(--fs-md);margin:.4rem 0 .2rem;padding:.3rem .6rem;display:block}.effect-all-toggle{margin-top:.4rem}.effect-detail-rows:empty,.effect-shelves[hidden]{display:none}.effect-shelves{border-top:1px solid var(--border);margin-top:.75rem;padding-top:.75rem}.effect-recommended .effect-tile-grid{margin-left:0}.effect-row.just-added{animation:1.6s ease-out just-added}@keyframes just-added{0%,30%{box-shadow:0 0 0 3px var(--accent);background:var(--accent-soft)}to{box-shadow:0 0 #0000}}@media (prefers-reduced-motion:reduce){.effect-row.just-added{box-shadow:0 0 0 2px var(--accent);animation:none}}.effect-kind-section+.effect-kind-section{border-top:1px solid var(--border);margin-top:.75rem;padding-top:.75rem}.effect-kind-heading{font-size:var(--fs-md);align-items:baseline;gap:.6rem;margin:0 0 .5rem;font-weight:600;display:flex}.effect-kind-section.is-folded .effect-genre-row{display:none}.effect-shelves.is-filtering .effect-kind-section.is-folded .effect-genre-row:not([hidden]){display:grid}.effect-kind-section.is-folded .effect-kind-heading{margin-bottom:0}.effect-kind-fold{color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;min-height:0;padding:.15rem .5rem}.effect-kind-fold:hover{color:var(--accent)}.effect-kind-hint{font-size:var(--fs-xs);color:var(--text-muted);font-weight:400}.effect-genre-row{grid-template-columns:6.5em 1fr;align-items:start;gap:.5rem;display:grid}.effect-genre-row .effect-tile-grid{margin-bottom:.4rem}.effect-genre-label{font-size:var(--fs-xs);color:var(--text-muted);padding-top:.35rem}@media (width<=600px){.effect-genre-row{grid-template-columns:1fr;gap:.2rem}.effect-genre-label{padding-top:0}}.effect-tile{font-size:var(--fs-sm);-webkit-user-select:none;user-select:none;border-radius:999px;padding:.35rem .8rem}.effect-tile.active{color:var(--on-accent);background:var(--accent);border-color:var(--accent);font-weight:600}.effect-tile.active:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.effect-remove-btn{font-size:var(--fs-xs);margin-left:auto}.effect-remove-btn:hover:not(:disabled){color:var(--danger);border-color:var(--danger);background:var(--danger-soft)}.expand-toggle-btn{font-size:var(--fs-xs);color:var(--accent);white-space:nowrap;background:0 0;border-color:#0000}.expand-toggle-btn:hover:not(:disabled){background:var(--accent-soft);border-color:#0000}.pattern-editor{font-size:var(--fs-md);margin-top:.75rem}.pattern-header{flex-wrap:wrap;align-items:center;gap:.5rem 1rem;display:flex}.pattern-header>.help-tip{margin-left:-.6rem}.pattern-header label{white-space:nowrap}.pattern-grid{background:var(--surface-2);border-radius:var(--radius-sm);flex-direction:column;gap:.35rem;margin-top:.75rem;padding:.6rem;transition:opacity .15s;display:flex}.pattern-grid.off{opacity:.45;filter:grayscale()}.pattern-bar{align-items:stretch;gap:.4rem;display:flex}.pattern-bar-label{font-size:var(--fs-xs);text-align:center;color:var(--text-muted);flex:0 0 1.2rem;align-self:center;font-weight:700}.pattern-cells{flex:1;gap:2px;display:grid}.pattern-cell{background:var(--surface);border:1px solid var(--border);touch-action:none;border-radius:3px;min-width:0;height:1.9rem;padding:0}.pattern-cell.beat-start{border-left:2px solid var(--border-strong)}.pattern-cell:hover:not(:disabled){background:var(--accent-soft);border-color:var(--accent)}.pattern-cell.on{background:var(--accent);border-color:var(--accent)}.pattern-cell.on:hover:not(:disabled){background:var(--accent-hover)}.pattern-cell.playing{box-shadow:0 0 0 2px var(--text) inset}.pattern-cell.on.playing{box-shadow:0 0 0 2px var(--on-accent) inset, 0 0 8px var(--accent)}.effect-extras{flex-wrap:wrap;align-items:center;gap:.3rem;margin-top:.5rem;display:flex}.effect-extra-add{font-size:var(--fs-xs);padding:.15rem .5rem}.export-credit{font-size:var(--fs-sm);margin-top:.6rem}.export-credit p{margin:.25rem 0}.export-credit button,.about-credit .copy-btn{font-size:var(--fs-xs);padding:.1rem .5rem}.frame-snapshot-row{font-size:var(--fs-sm);color:var(--text-muted);align-items:center;gap:.4rem;margin-top:.8rem;display:flex}.frame-snapshot-row button{font-size:var(--fs-xs);padding:.15rem .5rem}.effect-tile-about{z-index:20;width:max-content;max-width:min(24rem,100%);font-size:var(--fs-sm);color:var(--tooltip-text);background:var(--tooltip-bg);border-radius:var(--radius-sm);box-shadow:var(--shadow-pop);pointer-events:none;margin:0;padding:.45rem .65rem;line-height:1.55;position:absolute}.effect-tile-about[hidden]{display:none}.effect-section-heading{font-size:var(--fs-base);margin:0 0 .5rem;font-weight:700}.effect-checklist{margin-bottom:1.25rem}.effect-settings-inline{background:var(--panel-bg);border:1px solid var(--border);border-top:none;border-radius:0 0 6px 6px;margin:-.1rem 0 .3rem;padding:.5rem .6rem .6rem}.effect-settings-row{font-size:var(--fs-sm);align-items:center;gap:.5rem;padding:.2rem 0;display:flex}.spawn-adds{flex-wrap:wrap}.spawn-adds button{white-space:nowrap;flex:none}@media (width<=600px){.effect-settings-row{flex-wrap:wrap}.effect-settings-row>.param-unit.long{text-align:right;flex:1 0 100%;margin-top:-.15rem}.effect-settings-row>select{text-overflow:ellipsis;min-width:0;max-width:62%}}.param-joined{align-items:center;gap:.4rem;margin-left:.5rem;display:inline-flex}.param-joined>.effect-settings-label.param-joined-label{flex:none;min-width:0}.param-joined-row{flex-wrap:wrap}.param-reset{font-size:var(--fs-md);color:var(--text-muted);border:1px solid var(--border);background:0 0;flex:none;padding:0 .4rem;line-height:1.5}.param-reset:hover{color:var(--accent);border-color:var(--accent)}.effect-settings-label{opacity:.85;flex:1;min-width:6em}@media (width<=600px){.effect-settings-row:has(>.param-auto){flex-wrap:wrap}.effect-settings-row>.param-auto{flex-basis:100%;justify-content:flex-end}}.effect-branch-badge{font-size:var(--fs-2xs);color:var(--accent);background:var(--accent-soft);border-radius:999px;padding:.05rem .45rem;font-weight:700}.effect-idle-badge{color:var(--danger);background:var(--danger-soft)}.branch-editor{border-top:1px dashed var(--border-strong);font-size:var(--fs-sm);margin-top:.6rem;padding-top:.5rem}.branch-head{align-items:center;gap:.3rem;margin-bottom:.3rem;display:flex}.branch-title{font-weight:700}.branch-arm{border-left:3px solid var(--accent);background:var(--surface-2);border-radius:0 var(--radius-sm) var(--radius-sm) 0;margin:.35rem 0;padding:.4rem .55rem}.branch-line{flex-wrap:wrap;align-items:center;gap:.3rem;display:flex}.branch-keyword{min-width:3.6rem;color:var(--accent);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-weight:700}.branch-remove{font-size:var(--fs-xs);margin-left:auto}.branch-skip{align-items:center;gap:.2rem;margin:.3rem 0 0 3.9rem;display:inline-flex}.branch-overrides{flex-direction:column;gap:.25rem;margin:.3rem 0 0 3.9rem;display:flex}.branch-override{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.branch-override-name{min-width:7rem}.branch-override-drop{font-size:var(--fs-xs);padding:0 .4rem}.branch-override-add{font-size:var(--fs-xs);align-self:flex-start}.branch-actions{gap:.4rem;margin-top:.3rem;display:flex}.branch-actions button{font-size:var(--fs-xs)}@media (width<=600px){.branch-skip,.branch-overrides{margin-left:0}}.effect-settings-label.scrub-label{cursor:ew-resize;-webkit-user-select:none;user-select:none;touch-action:pan-y;border-radius:4px;margin-left:-.3rem;padding:.1rem .3rem}.effect-settings-label.scrub-label:hover{background:var(--accent-soft)}.effect-settings-label.scrub-label.dragging{background:var(--accent-strong-soft);color:var(--accent);opacity:1}.canvas-size-row{font-size:var(--fs-md);flex-wrap:wrap;align-items:center;gap:.6rem 1rem;margin-bottom:1rem;display:flex}.canvas-size-row input[type=number]{width:5.5em}.canvas-size-preset-groups{flex-direction:column;gap:.35rem;margin-bottom:.5rem;display:flex}.canvas-size-presets{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.canvas-size-preset-label{min-width:2.6em;font-size:var(--fs-xs);opacity:.7}.canvas-size-presets button{font-size:var(--fs-xs)}.placement-panel{background:var(--panel-bg);border:1px solid var(--border);border-radius:6px;margin-bottom:1rem;padding:.6rem .8rem}.placement-panel-title{font-size:var(--fs-sm);margin:0 0 .5rem;font-weight:700}#placement-panel{border-left:3px solid var(--accent)}#placement-panel-title{color:var(--accent)}.placement-panel-row{font-size:var(--fs-md);flex-wrap:wrap;gap:1rem;margin-bottom:.5rem;display:flex}.placement-panel button{font-size:var(--fs-sm)}.frame-details{margin:.4rem 0 .75rem}.frame-details>summary{cursor:pointer;-webkit-user-select:none;user-select:none;margin:0}.frame-details[open]>summary{margin-bottom:.5rem}.number-stepper{align-items:center;gap:.3rem;display:inline-flex}.number-stepper-label{font-size:var(--fs-md);cursor:ew-resize;-webkit-user-select:none;user-select:none;touch-action:none;border-radius:4px;padding:.15rem .3rem}.number-stepper-label:hover{background:var(--accent-soft)}.number-stepper-label.dragging{background:var(--accent-strong-soft);color:var(--accent)}.number-stepper-btn{min-width:1.9rem;min-height:1.9rem;font-size:var(--fs-md);padding:.2rem .55rem;line-height:1}.number-stepper-input{text-align:center;width:4.5em}.number-stepper-unit{font-size:var(--fs-xs);color:var(--text-muted)}.record-range-buttons{flex-wrap:wrap;gap:.4rem;margin-top:.3rem;display:flex}.record-range-buttons button{font-size:var(--fs-xs)}.export-action{margin-top:0}.export-summary{flex-basis:100%}@media (width>=601px){.export-summary{flex-basis:auto;margin-left:.25rem}}.record-speed-custom{width:4.5rem;margin-left:.3rem}.export-progress-wrap{align-items:center;gap:.6rem;margin:.75rem 0;display:flex}.export-progress-wrap progress{flex:1}.export-progress-wrap span{font-size:var(--fs-sm);font-variant-numeric:tabular-nums;min-width:9em}.elapsed-time{font-variant-numeric:tabular-nums;font-size:var(--fs-body);text-align:right;min-width:3em;margin-left:auto;font-weight:600}.trigger-btn{width:100%;font-size:var(--fs-lg);letter-spacing:.08em;color:#fff;background:var(--brand-gradient);border-radius:var(--radius);text-shadow:0 1px 2px #3c002859;border:none;margin:.25rem 0 0;padding:.85rem;font-weight:700;display:flex;box-shadow:0 4px 14px #8b3dff47}.trigger-btn:hover:not(:disabled){background:var(--brand-gradient);filter:brightness(1.08)}.trigger-btn:not(:disabled):active{background:var(--brand-gradient);filter:brightness(.95);transform:scale(.99)}.trigger-btn.hit,.invite-trigger .trigger-btn.hit{animation:.2s ease-out trigger-btn-hit}@keyframes trigger-btn-hit{0%{filter:brightness(1.3);transform:scale(.97);box-shadow:0 0 0 6px #ff3d8b59}}@media (prefers-reduced-motion:reduce){.trigger-btn.hit,.invite-trigger .trigger-btn.hit{animation-duration:10ms}}.trigger-btn:disabled{color:var(--text-muted);background:var(--surface-2);border-color:var(--border);opacity:1}.bpm-tap{min-width:5.6em}.metronome-row{font-size:var(--fs-md);flex-wrap:wrap;align-items:center;gap:.5rem 1rem;margin:.75rem 0;display:flex}.metronome-row .speed-field+.help-tip,.metronome-row label+.help-tip,.record-options label+.help-tip{margin-left:-.6rem}.record-options{font-size:var(--fs-md);flex-wrap:wrap;align-items:center;gap:.5rem 1rem;margin:.25rem 0 .75rem;display:flex}.latency-panel{font-size:var(--fs-md)}.latency-row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.latency-row input[type=number]{width:5em}.latency-row label+.help-tip{margin-left:-.3rem}.latency-run{border:1px solid var(--accent);border-radius:var(--radius-sm);background:var(--accent-soft);flex-wrap:wrap;align-items:center;gap:.5rem .75rem;margin-top:.5rem;padding:.6rem .75rem;display:flex}.latency-run-status{flex:100%;margin:0}.latency-tap{min-width:12rem;padding:.9rem 1.2rem;font-weight:600}.latency-tap.tapped{animation:.15s ease-out latency-tap-flash}@keyframes latency-tap-flash{0%{background:var(--accent);color:var(--on-accent)}}.take-shift{font-size:var(--fs-md);flex-wrap:wrap;align-items:center;gap:.35rem .6rem;margin:.5rem 0;display:flex}.take-shift-label{align-items:center;gap:.5rem;display:inline-flex}.take-shift-range{width:min(16rem,50vw)}.take-shift-value{font-variant-numeric:tabular-nums;min-width:4.5em}.take-shift-note{color:var(--text-muted)}.record-latency-hint:not([hidden]){flex-wrap:wrap;align-items:center;gap:.35rem .5rem;display:flex}.latency-lamp{border:2px solid var(--accent);background:0 0;border-radius:50%;width:2.4rem;height:2.4rem;display:none}.latency-run[data-phase=light] .latency-lamp,.latency-run[data-phase=check] .latency-lamp{display:inline-block}.latency-lamp.lit{background:var(--accent);box-shadow:0 0 1rem var(--accent)}.latency-run[data-phase=check] .latency-tap{display:none}.latency-check{align-items:center;gap:.35rem;display:inline-flex}.latency-check-value{text-align:center;font-variant-numeric:tabular-nums;min-width:3.5em}.latency-result{flex-wrap:wrap;align-items:center;gap:.5rem;margin:.5rem 0 0;display:flex}.metronome-row input[type=number]{width:4.5em}.metronome-pulse{background:var(--border);border-radius:50%;width:14px;height:14px;display:inline-block}.metronome-pulse.pulse{animation:.15s ease-out metronome-flash}@keyframes metronome-flash{0%{background:var(--accent);transform:scale(1.4)}to{background:var(--border);transform:scale(1)}}.download-link{border:1px solid var(--accent);border-radius:var(--radius-sm);color:var(--accent);font-size:var(--fs-md);margin-top:.5rem;padding:.4rem .9rem;text-decoration:none;display:inline-block}.export-split-links{flex-direction:column;align-items:flex-start;gap:.25rem;display:flex}.export-split-links .download-link{overflow-wrap:anywhere;margin-top:0}.download-link:hover{background:var(--accent-soft)}.timeline-bar{-webkit-user-select:none;user-select:none;margin:.75rem 0}.timeline-track{border-radius:var(--radius-sm);background:var(--track-bg);height:72px;box-shadow:inset 0 0 0 1px var(--border);cursor:pointer;touch-action:none;position:relative}.timeline-range{background:var(--accent-strong-soft);pointer-events:none;position:absolute;top:0;bottom:0}.timeline-playhead{background:var(--danger);pointer-events:none;width:2px;margin-left:-1px;position:absolute;top:-3px;bottom:-3px}.timeline-handle{background:var(--accent);cursor:ew-resize;border-radius:3px;width:10px;position:absolute;top:-4px;bottom:-4px}.timeline-handle-start{border-radius:3px 0 0 3px;margin-left:-10px}.timeline-handle-end{border-radius:0 3px 3px 0;margin-left:0}.timeline-labels{font-size:var(--fs-xs);opacity:.8;font-variant-numeric:tabular-nums;justify-content:space-between;margin-top:.3rem;display:flex}.take-picker{flex-wrap:wrap;align-items:center;gap:.4rem;margin:.5rem 0;display:flex}.take-picker button{font-size:var(--fs-xs)}.take-picker-name{width:10rem}.midi-import-open{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.midi-import-open button{font-size:var(--fs-xs)}.midi-import-panel{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);font-size:var(--fs-sm);margin-top:.5rem;padding:.6rem .75rem}.midi-import-panel[hidden]{display:none}.midi-import-title{margin:0 0 .4rem;font-weight:600}.midi-import-all{gap:.4rem;margin:.3rem 0;display:flex}.midi-import-tracks{flex-direction:column;gap:.3rem;margin-bottom:.5rem;display:flex;container-type:inline-size}.midi-import-track{grid-template-columns:44px minmax(0,1fr) auto;grid-template-areas:"listen name select""listen detail select";align-items:center;gap:.1rem .6rem;padding:.15rem .3rem;display:grid}.midi-import-listen.is-off{opacity:.4;cursor:default}.midi-import-why{font-size:var(--fs-sm);color:var(--text-muted);grid-column:1/-1}.midi-import-listen{grid-area:listen;width:44px;height:44px;padding:0}.midi-import-track.listening{background:color-mix(in srgb, var(--accent) 12%, transparent);border-radius:6px}.midi-import-track-name{overflow-wrap:anywhere;grid-area:name;font-weight:600}.midi-import-track .hint{overflow-wrap:anywhere;grid-area:detail;margin:0}.midi-import-track select{grid-area:select;max-width:100%}@container (width<=440px){.midi-import-track{grid-template-columns:44px minmax(0,1fr);grid-template-areas:"listen name""listen detail""listen select"}.midi-import-track select{justify-self:start;margin-top:.15rem}}.midi-import-option{flex-wrap:wrap;align-items:center;gap:.3rem;margin:.3rem 0;display:flex}.midi-import-offset{width:6em}.midi-import-buttons{gap:.4rem;margin-top:.5rem;display:flex}.speed-field{font-size:var(--fs-md);align-items:center;gap:.3rem;display:inline-flex}.timeline-toolbar{flex-wrap:wrap;align-items:center;gap:.4rem;margin-bottom:.35rem;display:flex}.timeline-toolbar button{font-size:var(--fs-xs)}.timeline-zoom-label{font-size:var(--fs-xs);opacity:.8;font-variant-numeric:tabular-nums}.timeline-backdrop{pointer-events:none;border-radius:6px;width:100%;height:100%;position:absolute;inset:0}.timeline-pan{width:100%;margin:.4rem 0 0;display:block}.timeline-beat-marker{cursor:ew-resize;opacity:.95;background:#ff8c00;border-radius:4px 4px 0 0;width:12px;height:45%;margin-left:-6px;position:absolute;bottom:0}.timeline-bar:not(.enlarged) .timeline-beat-marker{pointer-events:none;cursor:default}.timeline-beat-marker:after{content:"1";text-align:center;font-size:var(--fs-2xs);color:#fff;pointer-events:none;font-weight:700;position:absolute;top:1px;left:0;right:0}.timeline-shift-label{align-self:center;font-weight:600}.timeline-shift-readout{font-variant-numeric:tabular-nums;color:var(--edit);align-self:center}.timeline-shift-readout:empty{display:none}.beat-offset-row{font-size:var(--fs-md);flex-wrap:wrap;align-items:center;gap:.4rem;margin:.4rem 0;display:flex}.bar-head-group{flex-wrap:wrap;flex-basis:100%;align-items:center;gap:.4rem;display:flex}.bar-head-label{font-weight:600}.bar-head-note{font-size:var(--fs-xs);color:var(--accent)}.beat-offset-row input[type=number]{width:6.5em}.beat-offset-row button{font-size:var(--fs-xs)}.timeline-extras,.timeline-close-btn{display:none}.timeline-bar.enlarged{z-index:var(--z-overlay);background:var(--bg);color:var(--text);box-sizing:border-box;margin:0;padding:1rem 1.5rem;position:fixed;inset:0;overflow:auto}.timeline-bar.enlarged .timeline-track{height:45vh;min-height:200px}.timeline-bar.enlarged .timeline-close-btn{margin-left:auto;display:inline-block}.timeline-bar.enlarged .timeline-extras{margin-top:1rem;display:block}body.timeline-enlarged{overflow:hidden}.timeline-quick{z-index:3;background:color-mix(in srgb, var(--surface,#fff) 92%, transparent);max-width:calc(100% - 6px);box-shadow:0 0 0 1px var(--border);font-size:var(--fs-xs);cursor:default;border-radius:6px;align-items:center;gap:4px;padding:2px 4px 2px 8px;display:flex;position:absolute;top:3px;left:3px}.timeline-quick[hidden]{display:none}.timeline-quick-text{white-space:nowrap;text-overflow:ellipsis;font-variant-numeric:tabular-nums;overflow:hidden}.timeline-quick button{font-size:var(--fs-xs);flex:none;padding:1px 7px}.timeline-more-btn{display:none}@media (width<=600px){.timeline-more-btn{display:inline-flex}.timeline-edit-bar:not(.more-open) .timeline-edit-group.is-extra,.timeline-edit-bar:not(.more-open) .timeline-edit-hint{display:none}}.timeline-status{white-space:nowrap;height:1.6rem;font-size:var(--fs-sm);align-items:center;gap:.9rem;margin-bottom:.2rem;display:flex;overflow:hidden}.timeline-status[hidden]{display:none}.timeline-status>*{text-overflow:ellipsis;flex:0 auto;min-width:0;overflow:hidden}.timeline-edit-bar{border:1px solid var(--edit);font-size:var(--fs-sm);border-radius:6px;flex-wrap:wrap;align-items:center;gap:.4rem;margin-bottom:.4rem;padding:.4rem .5rem;display:flex}.timeline-edit-bar button{font-size:var(--fs-xs)}.timeline-selection-label{font-variant-numeric:tabular-nums;color:var(--edit)}.timeline-selection-label.is-empty{color:var(--text-muted)}.timeline-edit-hint{margin-left:auto}.timeline-edit-group{flex-wrap:wrap;gap:4px;display:inline-flex}.timeline-snap-label{color:var(--accent);align-items:center;gap:.25rem;font-weight:600;display:inline-flex}.timeline-snap-label.off{color:var(--text-muted);font-weight:400}.timeline-snap-label select{font-size:var(--fs-xs)}.timeline-quantize-field{font-size:var(--fs-xs);color:var(--text-muted);align-items:center;gap:.25rem;display:inline-flex}.timeline-quantize-field[hidden]{display:none}.timeline-quantize-field select{font-size:var(--fs-xs)}.record-options .timeline-quantize-field,.record-options .timeline-quantize-field select{font-size:inherit;color:inherit}.timeline-quantize-note{font-size:var(--fs-xs);color:var(--accent);align-self:center}.timeline-select-box{background:var(--edit-soft);border:1px dashed var(--edit);pointer-events:none;border-radius:2px;position:absolute;top:0;bottom:0}.timeline-bar.editing .timeline-track{cursor:crosshair}.timeline-bar.editing .timeline-range{display:none}body.timeline-dragging,body.timeline-dragging *{cursor:grabbing!important}.master-volume{font-size:var(--fs-md);align-items:center;gap:.6rem;display:flex}.master-volume-label{align-items:center;gap:.4rem;display:inline-flex}.master-volume-label input[type=range]{width:7rem;accent-color:var(--accent)}.master-volume-value{font-variant-numeric:tabular-nums;min-width:3.2em;font-size:var(--fs-xs);color:var(--text-muted)}.master-volume-mute{width:30px;height:30px;font-size:var(--fs-base);border-radius:50%;padding:0}.swap-material-block{border-top:1px dashed var(--border);margin-top:.5rem;padding-top:.5rem}.swap-material-row{flex-wrap:wrap;align-items:center;gap:.6rem;margin:.3rem 0;display:flex}.swap-material-block.is-drop-target{outline:2px dashed var(--accent);outline-offset:2px}.swap-material-grid{flex-wrap:wrap;gap:.4rem;margin:.4rem 0;display:flex}.swap-material-tile{border:2px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2,transparent);cursor:grab;touch-action:none;width:4.2rem;height:4.2rem;padding:0;position:relative;overflow:hidden}.swap-material-tile[aria-pressed=true]{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 35%, transparent)}.swap-material-tile.is-dragging{opacity:.45;cursor:grabbing}.swap-material-tile.drop-before{box-shadow:inset 4px 0 0 var(--accent)}.swap-material-tile.drop-after{box-shadow:inset -4px 0 0 var(--accent)}.swap-material-thumb{pointer-events:none;width:100%;height:100%;display:block}.swap-material-number,.swap-material-off{min-width:1.1rem;font-size:var(--fs-2xs);text-align:center;pointer-events:none;border-radius:.55rem;padding:0 .2rem;font-weight:700;line-height:1.1rem;position:absolute;top:2px}.swap-material-number{background:color-mix(in srgb, var(--bg,#000) 75%, transparent);color:var(--text);left:2px}.swap-material-off{color:#1b1b1b;background:#e8a33d;right:2px}.swap-material-chosen,.swap-material-fit{font-size:var(--fs-sm)}.swap-material-sizing{flex-wrap:wrap;align-items:center;gap:.3rem .8rem;margin:.3rem 0;display:flex}.swap-material-sizing .swap-material-fit,.swap-material-sizing .swap-align-btn{margin:0}.swap-material-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:16rem;overflow:hidden}.swap-material-buttons{gap:.25rem;margin-left:auto;display:inline-flex}.swap-material-buttons button{font-size:var(--fs-xs);padding:.1rem .45rem}.swap-material-add{font-size:var(--fs-sm)}.swap-material-row input[type=file]{max-width:100%}.swap-material-row input[type=file]::file-selector-button{font-size:var(--fs-xs)}.fps-detect-btn,.now-btn{font-size:var(--fs-xs)}.now-btn{padding:.1rem .4rem}.active-span-row{flex-wrap:wrap}.fps-detect-reason{font-size:var(--fs-xs);opacity:.7;flex-basis:100%}.export-length-row{font-size:var(--fs-md);flex-wrap:wrap;align-items:center;gap:.5rem 1rem;margin-bottom:.6rem;display:flex}.export-length-row .export-option-label{margin-right:.75rem;display:inline-block}.export-length-row input[type=number]{width:5.5em}.export-length-row label{max-width:100%}.export-length-row select{min-width:0;max-width:100%}.export-option-row{font-size:var(--fs-md);flex-wrap:wrap;align-items:center;gap:.4rem .75rem;margin-bottom:.6rem;display:flex}.export-custom-name{width:14rem;max-width:100%;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:var(--fs-sm);padding:.28rem .45rem}.export-custom-name[hidden],.export-option-row[hidden]{display:none}.export-option-label{min-width:3em;font-weight:600}.export-segmented{border:1px solid var(--border-strong);border-radius:var(--radius-sm);display:inline-flex;overflow:hidden}.export-choice input,.export-swatch input[type=radio]{opacity:0;pointer-events:none;position:absolute}.export-choice span{cursor:pointer;background:var(--surface);padding:.35rem .9rem;display:block}.export-choice+.export-choice span{border-left:1px solid var(--border-strong)}.export-choice:hover span{background:var(--surface-hover)}.export-choice input:checked+span{background:var(--accent);color:var(--on-accent);font-weight:600}.export-choice input:focus-visible+span{outline:2px solid var(--accent);outline-offset:-4px}.export-swatches{flex-wrap:wrap;gap:.4rem;display:flex}.export-swatch{border-radius:var(--radius-sm);cursor:pointer;font-size:var(--fs-xs);border:2px solid #0000;flex-direction:column;align-items:center;gap:.2rem;padding:.3rem .4rem;display:flex;position:relative}.export-swatch:hover{background:var(--surface-hover)}.export-swatch:has(input[type=radio]:checked){border-color:var(--accent);background:var(--accent-soft)}.export-swatch:has(input[type=radio]:focus-visible){outline:2px solid var(--accent)}.export-swatch-chip{border:1px solid var(--border-strong);border-radius:4px;width:2.4rem;height:1.6rem;display:block}.export-swatch-chip.is-transparent{background-color:#fff;background-image:conic-gradient(#b4b4b4 90deg,#fff 90deg 180deg,#b4b4b4 180deg 270deg,#fff 270deg);background-size:10px 10px}.export-swatch-picker{cursor:pointer;background:0 0;padding:0}.export-swatch-picker::-webkit-color-swatch-wrapper{padding:0}.export-swatch-picker::-webkit-color-swatch{border:none;border-radius:3px}.export-swatch-name{white-space:nowrap}.export-idle-details{flex-wrap:wrap;gap:.3rem 1rem;margin-left:1.6rem;display:flex}.export-idle-details input{width:4.5rem}.export-check{cursor:pointer;align-items:center;gap:.35rem;display:inline-flex}.about-btn,.lang-btn{font-size:var(--fs-sm)}.about-dialog{width:min(640px,100vw - 32px);max-height:min(85vh,900px);color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:0;box-shadow:0 20px 60px #00000059}.export-busy-note{font-size:var(--fs-sm);color:var(--text);background:color-mix(in srgb, var(--accent) 18%, var(--surface));border-bottom:1px solid var(--border);flex-basis:100%;margin:0 -1.5rem -.5rem;padding:.4rem 1.5rem}.export-warning{font-size:var(--fs-md);background:var(--warn-soft);border:1px solid var(--warn-border);border-radius:var(--radius-sm);flex-wrap:wrap;align-items:center;gap:.5rem .75rem;margin:.4rem 0 .6rem;padding:.55rem .75rem;display:flex}.confirm-dialog{box-sizing:border-box;width:min(440px,100vw - 32px);padding:1.25rem;overflow:visible}.confirm-message{white-space:pre-line;margin:0 0 1rem;line-height:1.6}.confirm-actions{justify-content:flex-end;gap:.5rem;display:flex}.confirm-ok.danger{color:var(--on-danger);background:var(--danger);border-color:var(--danger)}.about-dialog::backdrop{background:#00000080}.about-head{background:var(--surface);border-bottom:1px solid var(--border);align-items:center;gap:.75rem;padding:1rem 1.25rem;display:flex;position:sticky;top:0}.about-head h2{font-size:var(--fs-xl);margin:0}.about-version{font-size:var(--fs-sm);color:var(--text-muted);margin-left:.3rem;font-weight:500}.about-tagline{font-size:var(--fs-sm);color:var(--text-muted);margin:.1rem 0 0}.about-close{font-size:var(--fs-lg);margin-left:auto;padding:.3rem .6rem;line-height:1}.about-body{font-size:var(--fs-base);padding:.5rem 1.25rem 1.25rem;line-height:1.7}.about-body h3{font-size:var(--fs-base);margin:1.1rem 0 .3rem}.about-body p{margin:.3rem 0}.about-en{color:var(--text-muted)}.about-steps,.about-licenses{margin:.3rem 0;padding-left:1.4rem}.about-body a{color:var(--accent)}.compat-notice{font-size:var(--fs-md);background:var(--warn-soft);border-bottom:1px solid var(--warn-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1rem;padding:.6rem 1.5rem;display:flex}.compat-notice p{margin:0}.storage-warning{font-size:var(--fs-md);background:var(--error-soft);border-bottom:1px solid var(--error-border);flex-wrap:wrap;align-items:center;gap:.4rem 1rem;padding:.6rem 1.5rem;display:flex}.snap-guide{pointer-events:none;z-index:5;background:#ff3db4;position:absolute}.snap-guide-x{width:1px}.snap-guide-y{height:1px}.file-button.is-busy{opacity:.7;cursor:progress}.storage-warning.is-notice{background:var(--accent-soft,#ece6fb);border-bottom-color:var(--border)}.storage-warning[hidden]{display:none}.storage-warning p{flex:20rem;margin:0}.step-next{justify-content:flex-end;margin:1rem 0 .5rem;display:flex}.step-next-btn{color:var(--accent);border-color:var(--accent);background:var(--accent-soft);font-weight:600}.header-tail{align-items:center;gap:.3rem;display:flex}.header-more{position:relative}.header-more-btn{letter-spacing:.05em;min-width:2.2rem;font-weight:700}.header-more-panel{z-index:var(--z-popover);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);min-width:12rem;box-shadow:var(--shadow-pop);flex-direction:column;align-items:stretch;gap:.35rem;padding:.5rem;display:none;position:absolute;top:calc(100% + .4rem);right:0}.header-more.open .header-more-panel{display:flex}.header-more-panel>*,.header-more-panel #about-host>*{justify-content:flex-start;width:100%}.header-more-panel #about-host{flex-direction:column;gap:.35rem;display:flex}.header-menu-btn{display:none}.touch button,.touch .step-tab{touch-action:manipulation}.touch input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),.touch select,.touch textarea{font-size:16px}.touch .transport button{min-height:44px}.touch button,.touch select,.touch input:not([type=checkbox]):not([type=radio]):not([type=range]){min-width:40px;min-height:40px}.touch .pattern-cell{min-width:0;height:44px}.touch .no-touch{display:none}:is(.touch label:has(>input[type=checkbox]),.touch summary){padding-block:.6rem}.touch #global-stage-trigger{display:none}.tap-pad-row{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.5rem;margin-top:.5rem;display:grid}.tap-pad,.touch .tap-pad{min-height:120px;font-size:var(--fs-xl);letter-spacing:.08em;color:var(--on-accent);background:var(--accent);border-color:var(--accent);border-radius:var(--radius);touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;font-weight:800}.tap-pad:hover:not(:disabled),.tap-pad:focus:not(:disabled){color:var(--on-accent);background:var(--accent);border-color:var(--accent)}.tap-pad.hit{animation:.18s ease-out tap-pad-hit}@keyframes tap-pad-hit{0%{background:var(--accent-hover);transform:scale(.97)}}.tap-record-btn{width:100%;min-height:48px;margin-top:1.5rem;font-weight:700}.tap-record-btn.recording{color:var(--on-danger);background:var(--danger);border-color:var(--danger)}@media (width<=1199px){.touch .header-menu-btn{display:inline-flex}.touch .app-header-actions{width:100%;display:none}.touch .app-header.menu-open .app-header-actions{display:flex}.touch .header-more-btn{display:none}.touch .header-more-panel,.touch .header-more-panel #about-host{display:contents}.touch .header-tail{flex-direction:column;align-items:stretch;width:100%}.touch .header-more{display:contents}.touch .app-header.menu-open .header-tail :is(button,a):not(.header-more-btn){text-align:left;width:100%;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);justify-content:flex-start;padding:.5rem .75rem;display:flex}.touch .header-more-panel>*,.touch .header-more-panel #about-host>*{justify-content:flex-start;width:100%}}.effects-link,.feedback-link{white-space:nowrap}.input-error{color:var(--danger)}.effect-description{margin:0 0 .4rem}.loading-note{color:var(--text-muted);text-align:center;padding:2rem 1rem}.undo-toast{z-index:var(--z-overlay);border-radius:var(--radius);background:var(--tooltip-bg);max-width:calc(100vw - 2rem);color:var(--tooltip-text);box-shadow:var(--shadow-pop);font-size:var(--fs-md);align-items:center;gap:.75rem;padding:.6rem .75rem .6rem 1rem;display:flex;position:fixed;bottom:1.25rem;left:50%;transform:translate(-50%)}.undo-toast button{font-size:var(--fs-sm);white-space:nowrap;flex:none}@media (width>=601px){body.stage-mini-on .undo-toast{bottom:calc(140px + env(safe-area-inset-bottom,0px))}}.undo-toast-close{color:inherit;font-size:var(--fs-body);cursor:pointer;background:0 0;border:none}@media (width<=600px){.undo-toast{top:calc(var(--header-real,var(--header-h)) + var(--tabs-h) + .5rem);box-sizing:border-box;width:calc(100vw - 2rem);bottom:auto}.undo-toast button{white-space:nowrap;flex:none}}html:not(.touch) .touch-only,.touch .mouse-only{display:none!important}.timeline-toggle.active{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.placement-options{flex-wrap:wrap;align-items:center;gap:.25rem 1.25rem;margin-bottom:1rem;display:flex}.frame-attach-row{align-items:center;margin-top:.6rem}.metronome-btn.active{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.material-start{font-size:var(--fs-sm);flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:.4rem;display:flex}.material-start-label{flex:14rem;align-items:center;gap:.5rem;min-width:0;display:flex}.material-start-label input[type=range]{flex:auto;min-width:6rem}.material-start input[type=number]{width:5.5rem}.material-start .loop-toggle{font-size:inherit}.layer-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);cursor:default;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.7rem;padding:.45rem .5rem;transition:background-color .12s,border-color .12s,box-shadow .12s;display:grid}.layer-card:hover{border-color:var(--border-strong)}.layer-card.selected{background:var(--accent-soft);border-color:var(--accent);box-shadow:inset 3px 0 0 var(--accent)}.layer-thumb{width:64px;height:40px;box-shadow:0 0 0 1px var(--border);border-radius:6px;display:block}.layer-info{flex-direction:column;gap:.25rem;min-width:0;display:flex}.layer-name{text-overflow:ellipsis;white-space:nowrap;font-size:var(--fs-base);font-weight:600;overflow:hidden}.layer-name-input{width:100%;min-width:0;font-size:var(--fs-base);font-weight:600}.layer-meta{flex-wrap:wrap;gap:.25rem;display:flex}.layer-chip{font-size:var(--fs-xs);color:var(--text-muted);background:var(--surface-2);border:1px solid var(--border);border-radius:999px;padding:0 .45rem;line-height:1.55}.layer-chip.is-frame{color:var(--accent);border-color:var(--accent-strong-soft);background:var(--accent-soft)}.layer-chip.is-take{color:var(--text)}.layer-chip.is-none{font-style:italic}.layer-card.is-hidden .layer-thumb,.layer-card.is-hidden .layer-name{opacity:.4}.layer-card.is-hidden .layer-name{text-decoration:line-through}.layer-actions{align-items:center;gap:1px;display:flex}.icon-btn{width:28px;height:28px;color:var(--text-muted);background:0 0;border-color:#0000;padding:0}.icon-btn:hover:not(:disabled){color:var(--text);background:var(--surface-hover);border-color:#0000}.icon-btn.active{color:var(--accent);background:var(--accent-soft)}.icon-btn.is-off{color:var(--text-muted);opacity:.75}.icon-btn.is-danger:hover:not(:disabled){color:var(--danger);background:var(--danger-soft)}.icon-btn:disabled{opacity:.25}.icon{flex:none;display:block}.object-box.locked{pointer-events:none;border-style:dashed}@media (width<=600px){.layer-actions{grid-column:1/-1;justify-content:flex-end}}.stage-seek{align-items:center;gap:.5rem;margin-top:.6rem;display:flex}.stage-seek-track{background:var(--surface-2);height:18px;box-shadow:inset 0 0 0 1px var(--border);cursor:pointer;touch-action:none;border-radius:9px;flex:1;position:relative;overflow:hidden}.stage-seek-track:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.stage-seek-track.locked{cursor:not-allowed;opacity:.6}.stage-seek-outside{background:repeating-linear-gradient(45deg, transparent 0 4px, color-mix(in srgb, var(--text-muted) 22%, transparent) 4px 6px);pointer-events:none;position:absolute;top:0;bottom:0;left:0}.stage-seek-played{background:var(--accent-soft);pointer-events:none;position:absolute;top:0;bottom:0}.stage-seek-column{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex;position:relative}.stage-seek-column .stage-seek-track{flex:none;width:100%}.stage-loop-strip,.stage-loop-button{display:none}.stage-seek.looping-here .stage-loop-strip{background:color-mix(in srgb, var(--surface-2) 70%, transparent);height:12px;box-shadow:inset 0 0 0 1px var(--border);cursor:crosshair;touch-action:none;border-radius:6px;display:block;position:relative}.stage-loop-hint{font-size:var(--fs-2xs);text-align:center;color:var(--text-muted);pointer-events:none;line-height:12px;position:absolute;inset:0}.stage-loop-band{background:var(--edit);cursor:grab;border-radius:6px;position:absolute;top:0;bottom:0}.stage-loop-track-band{background:color-mix(in srgb, var(--edit) 22%, transparent);pointer-events:none;position:absolute;top:0;bottom:0}.stage-loop-band.off{opacity:.35}.stage-loop-track-band.off{opacity:0}.stage-seek.looping-here .stage-loop-button{min-width:2rem;font-size:var(--fs-body);justify-content:center;align-items:center;padding:.1rem .4rem;line-height:1;display:inline-flex}.stage-loop-button[aria-pressed=true]{background:var(--edit);border-color:var(--edit);color:#fff}.stage-seek-ticks{width:100%;height:calc(100% - 6px);color:var(--edit);pointer-events:none;position:absolute;inset:3px 0}.stage-seek-head{background:var(--accent);pointer-events:none;border-radius:2px;width:3px;margin-left:-1px;position:absolute;top:0;bottom:0}.stage-seek-track.dragging .stage-seek-head,.stage-seek-track:hover .stage-seek-head{width:5px;margin-left:-2px}.stage-seek-total{font-size:var(--fs-xs);font-variant-numeric:tabular-nums;color:var(--text-muted);white-space:nowrap}.stage-transport{grid-template-columns:1fr auto 1fr;align-items:center;gap:.5rem;margin:.75rem 0 .5rem;display:grid}.stage-transport .elapsed-time{text-align:left;font-size:var(--fs-body);margin:0}.transport-center{align-items:center;gap:.6rem;display:flex}.transport-bpm{font-size:var(--fs-xs);font-variant-numeric:tabular-nums;color:var(--text-muted);justify-self:end;font-weight:600}.play-btn{width:48px;height:48px;color:var(--on-accent);background:var(--accent);box-shadow:0 3px 10px var(--accent-strong-soft);border:none;border-radius:50%;padding:0}.play-btn .icon{width:20px;height:20px}.play-btn:hover:not(:disabled){background:var(--accent-hover)}.play-btn:active:not(:disabled){background:var(--accent-hover);transform:scale(.96)}.audition-stop{border:1px solid var(--accent);background:color-mix(in srgb, var(--accent) 12%, var(--surface));min-height:36px;font-size:var(--fs-xs);white-space:nowrap;border-radius:999px;padding:.3rem .7rem;font-weight:600}.transport-side{border:1px solid var(--border);background:var(--surface);border-radius:50%;width:36px;height:36px}.transport-side .icon{width:16px;height:16px}.stage-info{flex-wrap:wrap;justify-content:center;gap:.4rem;margin:0 0 .6rem;display:flex}.stage-info-item{border-radius:var(--radius-sm);background:0 0;border:1px solid #0000;flex-direction:column;align-items:center;min-width:5.5rem;max-width:14rem;padding:.2rem .75rem .25rem;display:inline-flex}.stage-info-label{font-size:var(--fs-xs);letter-spacing:.08em;color:var(--text-muted);font-weight:700}.stage-info-value{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:var(--fs-sm);font-weight:600;overflow:hidden}.stage-info-value.is-muted{color:var(--text-muted);font-weight:400}.stage-badge{font-size:var(--fs-2xs);font-variant-numeric:tabular-nums;color:#fff;pointer-events:none;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1410249e;border-radius:999px;padding:.1rem .5rem;font-weight:600;position:absolute;bottom:8px}.stage-size-badge{left:8px}.stage-place-overlay{pointer-events:none}.stage-place-overlay .object-box:not(.frame-box):not(.locked),.stage-place-overlay .object-box.frame-box .frame-edge,.stage-place-overlay .object-box.frame-box .resize-handle,.stage-place-overlay .object-box.frame-box .rotate-handle{pointer-events:auto}.stage-place-overlay .snap-guide{pointer-events:none}.stage-badge-row{pointer-events:none;gap:4px;display:flex;position:absolute;bottom:8px;left:8px}.stage-badge-row .stage-badge{position:static}.stage-fps-badge{pointer-events:auto;cursor:pointer;position:relative}.stage-badge.stage-light-badge{pointer-events:auto;cursor:pointer;min-height:0;font:inherit;font-size:var(--fs-2xs);line-height:inherit;color:#fff;box-shadow:none;background:#1410249e;border:0}.stage-badge.stage-light-badge[aria-pressed=true]{background:#6d28d9e6}.stage-badge.stage-light-badge:hover,.stage-badge.stage-light-badge:focus-visible{outline:1px solid #fff9}.stage-fps-badge:hover,.stage-fps-badge:focus-within{background:#141024d9;outline:1px solid #ffffff80}.stage-fps-select{opacity:0;cursor:pointer;width:100%;color:var(--text);background:var(--surface);position:absolute;inset:0}.stage-fps-select option{color:var(--text);background:var(--surface)}.stage-status-badge{right:8px}.stage-status-badge:before{content:"●";vertical-align:.1em;margin-right:.3em;font-size:.6rem}.stage-status-badge.is-ok:before{color:#4ade80}.stage-status-badge.is-warn:before{color:#fbbf24}.stage-status-badge.is-idle:before{color:#9ca3af}.export-stats{grid-template-columns:repeat(3,1fr);gap:.5rem;margin:0 0 .75rem;display:grid}.export-stat{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);flex-direction:column;gap:.1rem;padding:.45rem .7rem;display:flex}.export-stat-label{font-size:var(--fs-2xs);letter-spacing:.06em;color:var(--text-muted);font-weight:700}.export-stat-value{font-size:var(--fs-body);font-variant-numeric:tabular-nums;font-weight:700}.number-stepper.has-slider{grid-template-columns:auto auto auto auto auto;row-gap:.15rem;min-width:15rem;display:inline-grid}.number-stepper-slider{width:100%;accent-color:var(--accent);grid-column:1/-1;margin:0}.backup-status{max-width:17rem;font-size:var(--fs-2xs);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;opacity:.85;cursor:default;padding:0 .55rem;overflow:hidden}.backup-status[data-tone=notice]{color:#b45309;color:var(--lightningcss-light,#b45309)var(--lightningcss-dark,#fbbf24)}.backup-status[data-tone=alert]{color:var(--danger);opacity:1;font-weight:600}.backup-status:empty{display:none}.project-file-menu>button{background:0 0;border-color:#0000;border-radius:999px}.project-file-menu>button:hover:not(:disabled){background:var(--surface);border-color:#0000}.project-file-menu>.project-btn{background:var(--surface);box-shadow:var(--shadow)}@media (width<=600px){.project-file-menu{border-radius:var(--radius);flex-wrap:wrap;max-width:100%}.project-file-menu>.project-btn{max-width:100%}.project-btn-name{min-width:4em}.backup-status{max-width:100%}}.project-file-menu>.help-tip{margin:0 .35rem 0 .2rem}.about-btn,.lang-btn{background:0 0;border-color:#0000}.about-btn:hover:not(:disabled),.lang-btn:hover:not(:disabled){background:var(--surface-hover);border-color:#0000}.stage-title{font-size:var(--fs-body);white-space:nowrap;text-overflow:ellipsis;flex-wrap:wrap;margin:0 0 .6rem;font-weight:700;display:flex;overflow:hidden}.window-tab-name{text-overflow:ellipsis;white-space:nowrap;max-width:14em;overflow:hidden}.window-tab-name .icon{display:inline-block}.window-tab-thumb{width:24px;height:16px;box-shadow:0 0 0 1px var(--border);border-radius:3px;display:block}.stage-badge.stage-light-badge[data-coarse=true]:before{content:"▼";color:#ffd54a;margin-right:.3em}.stage-badge.stage-light-badge[aria-busy=true]{animation:.9s ease-in-out infinite stage-light-busy}@keyframes stage-light-busy{50%{opacity:.45}}#global-stage-effects,#global-stage-margin,.stage-badge.stage-light-badge{gap:0}.stage.placing{overflow:visible}.stage.placing .stage-place-overlay{clip-path:inset(-34px -16px -16px)}.stage.placing>canvas{border-radius:inherit}input[type=text],input[type=number],select,textarea{border-color:var(--control-border)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (forced-colors:active){.icon-btn[aria-pressed=true],.metronome-btn[aria-pressed=true],.window-tab[aria-pressed=true],.object-tab[aria-pressed=true],.step-tab[aria-selected=true],.layer-card.selected,.timeline-toggle[aria-pressed=true]{outline-offset:1px;outline:2px solid highlight}.trigger-btn,.play-btn,.btn-primary{border:2px solid buttontext}.icon-btn,.project-file-menu>button,.about-btn,.lang-btn{border-color:buttontext}.stage-badge,.layer-chip{border:1px solid canvastext}}.touch .icon-btn{width:40px;height:40px}.touch .layer-actions{flex-wrap:wrap;justify-content:flex-end}@media (width<=600px){.touch .layer-actions:not(.show-rare){flex-wrap:nowrap}}.layer-select{text-align:left;min-width:0;color:inherit;border-radius:calc(var(--radius) - 2px);background:0 0;border:none;grid-template-columns:auto minmax(0,1fr);justify-content:stretch;align-items:center;gap:.7rem;padding:0;display:grid}.layer-select:hover:not(:disabled),.layer-select:active:not(:disabled){background:0 0;border:none}@media (width<=600px){.layer-card{grid-template-columns:minmax(0,1fr)}.layer-actions{grid-column:auto}}.btn-large{font-size:var(--fs-body);border-radius:var(--radius);padding:.55rem 1.4rem;font-weight:700}.record-toggle:before{content:"";background:#ff4d6d;border-radius:50%;width:.6em;height:.6em;box-shadow:0 0 0 2px #ffffffd9}.record-toggle.recording:before{box-shadow:none;background:#fff}.file-drop-overlay{z-index:var(--z-overlay);background:color-mix(in srgb, var(--accent) 16%, transparent);border:3px dashed var(--accent);pointer-events:none;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.file-drop-overlay[hidden]{display:none}.file-drop-message{font-size:var(--fs-body);color:var(--text);background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);text-align:center;margin:0;padding:.8rem 1.4rem;font-weight:700}.spawn-block{flex-direction:column;gap:.4rem;margin:.25rem 0 .5rem;display:flex}.spawn-status{margin:0}.spawn-pick{font-size:var(--fs-md)}.empty-object-row{align-items:center;gap:.35rem;margin:.4rem 0;display:flex}.empty-object-row,#add-empty-wrap{flex-wrap:wrap}.empty-object-row button{white-space:nowrap}#add-empty-wrap{align-items:center;gap:.35rem;display:inline-flex}.stage-focus-row{z-index:2;flex-wrap:wrap;gap:4px;max-width:calc(100% - 56px);display:flex;position:absolute;top:8px;left:8px}.stage-focus-row>#global-stage-autofocus{order:-1}.stage-focus-badge{font-size:var(--fs-xs);color:#fff;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:#6d28d9d9;border:0;border-radius:999px;max-width:calc(100% - 16px);padding:.15rem .6rem;font-weight:600;overflow:hidden}.stage-focus-badge:hover{background:#5b21b6f2}.window-tab-wrap{align-items:center;gap:2px;min-width:0;display:inline-flex}.window-tab-focus.active{color:var(--accent);background:var(--accent-soft);border-color:var(--accent)}#about-host{align-items:center;gap:.25rem;display:flex}.feedback-link{color:inherit;border-radius:var(--radius-sm);border:1px solid #0000;align-items:center;padding:.3rem .7rem;line-height:1.4;text-decoration:none;display:inline-flex}.feedback-link:hover{background:var(--surface-hover)}.own-keys .trigger-keys{margin:.35rem 0}.effect-delay .effect-settings-row{margin:0}.canvas-size-name{cursor:ew-resize;-webkit-user-select:none;user-select:none}.spawn-shape-row{flex-wrap:wrap;gap:.35rem .6rem}@media (width<=600px){.layer-card.material-row{grid-template-columns:minmax(0,1fr) auto}}.stage-mini{right:8px;bottom:calc(8px + env(safe-area-inset-bottom,0px));z-index:var(--z-popover);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);align-items:stretch;gap:6px;padding:6px;display:flex;position:fixed;box-shadow:0 6px 20px #0000004d}.stage-mini[hidden]{display:none}.stage-mini-canvas{border-radius:var(--radius-sm);width:132px;height:auto}.stage-mini-pad,.touch .stage-mini-pad{color:#fff;background:linear-gradient(135deg, #ec4899, var(--handle));border-radius:var(--radius-sm);touch-action:none;border:none;min-width:72px;font-weight:700}.stage-mini-pad.hit{animation:.18s ease-out tap-pad-hit}.stage-mini-up{min-width:36px;font-size:var(--fs-2xs);white-space:pre-line}.stage-mini.recording{left:8px}.stage-mini.recording .stage-mini-pad{min-height:84px;font-size:var(--fs-lg);flex:1}.touch #screen-root{padding-bottom:120px}.touch .resize-handle{width:28px;height:28px}.touch .resize-nw{top:-14px;left:-14px}.touch .resize-ne{top:-14px;right:-14px}.touch .resize-sw{bottom:-14px;left:-14px}.touch .resize-se{bottom:-14px;right:-14px}.touch .rotate-handle{width:24px;height:24px;margin-left:-12px;top:-40px}.touch .stage-seek-track{border-radius:14px;height:28px}.touch input[type=checkbox]{width:1.25rem;height:1.25rem}.effect-row .effect-label{flex:6em;min-width:6em}@media (width<=600px){.effect-row .expand-toggle-btn{margin-left:auto}.step-tabs:not(.at-end):after{content:"";background:linear-gradient(to right, transparent, var(--surface));pointer-events:none;flex:0 0 3rem;align-self:stretch;margin-left:-3rem;position:sticky;right:-1.25rem}}.layer-more,.layer-rare-name{display:none}.touch .layer-more{display:inline-flex}.touch .layer-actions .layer-rare:not(.active){display:none}.touch .layer-actions.show-rare .layer-rare{gap:.25rem;width:auto;padding-inline:.5rem;display:inline-flex}.touch .layer-actions.show-rare .layer-rare-name{font-size:var(--fs-xs);display:inline}.object-list-rest{margin-top:0}.object-list-rest:empty{display:none}#object-list+.placement-panel{margin-top:.45rem}.resize-nw{cursor:nwse-resize;top:-6px;left:-6px}.resize-ne{cursor:nesw-resize;top:-6px;right:-6px}.resize-sw{cursor:nesw-resize;bottom:-6px;left:-6px}.resize-se{cursor:nwse-resize;bottom:-6px;right:-6px}.effect-row .effect-on{align-items:center;display:inline-flex}.effect-row.is-off .effect-label{opacity:.45;text-decoration:line-through}.effect-row.is-off+.effect-settings-inline{opacity:.55}.effect-extra-block{position:relative}.effect-extra-drop{z-index:1;padding:0 .45rem;line-height:1.4;position:absolute;top:.25rem;right:.25rem}.perf-meter{z-index:var(--z-debug);color:#fff;pointer-events:auto;background:#000000c7;border-radius:6px;padding:.4rem 1.6rem .4rem .6rem;font-size:12px;position:fixed;bottom:8px;left:8px}.perf-meter pre{font:inherit;white-space:pre;margin:0}.perf-meter button{padding:0 .35rem;line-height:1.3;position:absolute;top:2px;right:2px}select.branch-keyword{font-weight:700}.branch-move{padding:0 .4rem;line-height:1.4}.branch-number{width:4.2rem}.pattern-division{width:3.6rem;margin:0 .2rem}body.timeline-enlarged #stage-panel{z-index:var(--z-overlay-raised);width:min(40vw,640px);max-width:none;max-height:calc(100svh - 20px);position:fixed;top:10px;right:12px;overflow:auto}@media (width<=960px){body.timeline-enlarged #stage-panel{width:auto;max-height:55vh;top:8px;left:8px;right:8px}body.timeline-enlarged #stage-panel .stage{width:min(100%, calc(32vh * var(--stage-aspect,1.7778)))}}@media (width<=600px){body.timeline-enlarged #stage-panel{max-height:30svh}body.timeline-enlarged #stage-panel .stage{width:min(100%, calc(17vh * var(--stage-aspect,1.7778)))}body.timeline-enlarged #stage-panel .stage-info,body.timeline-enlarged #stage-panel .trigger-btn{display:none}}.layout-splitter{display:none}@media (width>=961px){.layout-splitter{z-index:2;cursor:col-resize;touch-action:none;flex:0 0 1.5rem;align-self:stretch;margin-inline:-1.5rem;display:block;position:relative}.layout-splitter-grip{background:var(--border);border-radius:2px;width:4px;height:56px;margin:0 auto;transition:background .15s;position:sticky;top:45vh}.layout-splitter:hover .layout-splitter-grip,.layout-splitter:focus-visible .layout-splitter-grip,body.layout-dragging .layout-splitter-grip{background:var(--accent)}.touch .layout-splitter-grip{width:6px;height:72px}.app-body.custom-split{max-width:2200px}.app-body.custom-split #screen-root{flex:1 1 0;max-width:none}.app-body.custom-split #stage-panel{flex-grow:0;flex-shrink:0;max-width:none}}@media (width<=960px){#stage-panel{flex-basis:auto!important}}body.layout-dragging{cursor:col-resize;-webkit-user-select:none;user-select:none}.theme-btn{min-width:2.2rem;font-size:var(--fs-body);align-items:center;gap:.4rem;line-height:1;display:inline-flex}.theme-btn-words{font-size:var(--fs-sm);white-space:nowrap}.stage-theater-btn{z-index:2;width:30px;height:30px;font-size:var(--fs-body);color:#fff;opacity:.6;background:#14141c8c;border:0;border-radius:6px;padding:0;line-height:1;transition:opacity .15s;position:absolute;top:8px;right:8px}.stage:hover .stage-theater-btn,.stage-theater-btn:focus-visible,body.preview-theater .stage-theater-btn{opacity:1}body.preview-theater{overflow:hidden}body.preview-theater #stage-panel{height:auto;z-index:var(--z-theater);border-radius:0;align-self:auto;width:auto;max-width:none;max-height:none;margin:0;position:fixed;inset:0;overflow:auto}body.preview-theater #stage-panel .stage{width:min(100%, calc(max(200px, 100vh - var(--stage-controls-h,23rem) - 1.5rem) * var(--stage-aspect,1.7778)));width:min(100%, calc(max(200px, 100svh - var(--stage-controls-h,23rem) - 1.5rem) * var(--stage-aspect,1.7778)))}@media (width<=600px) and (orientation:portrait){body:not(.preview-theater) .stage-theater-btn{display:none}}body.preview-theater .layout-splitter{display:none}.shortcut-dialog{max-width:min(640px,94vw);padding:1rem 1.4rem 1.2rem}.shortcut-dialog h2{font-size:var(--fs-body);margin:0 0 .25rem}.shortcut-table{border-collapse:collapse;font-size:var(--fs-md);margin:.5rem 0 1rem}.shortcut-table td{border-bottom:1px solid var(--border);vertical-align:top;padding:.3rem .6rem}.shortcut-keys{white-space:nowrap}.shortcut-table kbd{font:inherit;font-size:var(--fs-sm);border:1px solid var(--border-strong);background:var(--surface-2);border-bottom-width:2px;border-radius:4px;padding:.05rem .4rem;display:inline-block}.pattern-demo{font-size:var(--fs-sm);align-items:center;gap:.2rem;margin-top:.3rem;display:inline-flex}.color-field{flex-wrap:wrap;align-items:center;gap:.25rem;display:inline-flex}.color-swatches{vertical-align:middle;flex-wrap:wrap;align-items:center;gap:3px;margin-left:.3rem;display:inline-flex}.color-swatch{border:1px solid var(--border-strong);cursor:pointer;border-radius:50%;width:16px;min-width:0;height:16px;min-height:0;padding:0}.color-swatch:hover,.color-swatch:focus-visible{border-color:var(--accent);transform:scale(1.15)}.color-swatch.recent-first{margin-left:6px}.touch .color-swatch{width:22px;height:22px}.layer-card.multi-selected{background:var(--accent-soft);border-color:var(--accent);border-style:dashed}.object-box.selected-extra{border:2px dashed var(--handle);box-shadow:0 0 0 1px #ffffffb3}.multi-bar{font-size:var(--fs-xs);flex-wrap:wrap;align-items:center;gap:.35rem .5rem;margin:.4rem 0;display:flex}.multi-bar.open{border:1px solid var(--accent);border-radius:var(--radius-sm);background:var(--accent-soft);padding:.45rem .55rem}.multi-btn{font-size:var(--fs-xs);padding:.15rem .5rem;line-height:1.4}.multi-btn.active{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.multi-btn.is-danger{color:var(--danger)}.multi-count{font-weight:700}.multi-group{align-items:center;gap:2px;display:inline-flex}.multi-group-name{color:var(--text-muted);margin-right:.2rem}.multi-percent{width:4.2em;margin-left:.3rem}.multi-group .multi-btn{min-width:1.9rem}.window-tab.multi-selected{color:var(--accent);border-color:var(--accent);background:var(--accent-soft);border-style:dashed}.window-tab-multi,.window-tab-visibility{align-self:center}.effect-tile.partial{border-color:var(--accent);background:var(--accent-soft);border-style:dashed}.effect-multi-note{font-size:var(--fs-sm);border-radius:var(--radius-sm);background:var(--accent-soft);border:1px solid var(--accent);margin:0 0 .5rem;padding:.4rem .6rem}.text-content{width:100%;min-height:4.2rem;font:inherit;font-size:var(--fs-base);resize:vertical;border:1px solid var(--control-border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);margin:.2rem 0 .4rem;padding:.4rem .5rem}.layer-gap{visibility:hidden;pointer-events:none}.pattern-demo-all{margin-left:1.2rem}.export-range-field{flex-wrap:wrap;gap:.4rem;display:inline-flex}.touch .object-box.small-box .resize-nw{top:-28px;left:-28px}.touch .object-box.small-box .resize-ne{top:-28px;right:-28px}.touch .object-box.small-box .resize-sw{bottom:-28px;left:-28px}.touch .object-box.small-box .resize-se{bottom:-28px;right:-28px}.touch .object-box.small-box .rotate-handle{top:-60px}.stage-zoom-row{justify-content:flex-end;margin-top:.35rem;display:flex}@media (width>=601px){.stage-zoom-row{display:none}}.stage-wrap.zoomed{-webkit-overflow-scrolling:touch;max-height:70vh;overflow:auto}.stage-wrap.zoomed>#stage{touch-action:pan-x pan-y;width:200%;max-width:none}html.modal-open{overflow:hidden}dialog{overscroll-behavior:contain}.help-tip.help-tip--up .help-tip-bubble{top:auto;bottom:calc(100% + 8px)}.take-share-note{font-size:var(--fs-xs);color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:.3rem;display:inline-flex}.take-share-note[hidden]{display:none}.take-share-note button{font-size:var(--fs-xs)}.grid-thinned-note{font-size:var(--fs-xs);color:var(--text-muted)}.grid-division-pick{flex-wrap:wrap;align-items:center;gap:.25rem;display:inline-flex}.grid-division-custom{align-items:center;gap:.2rem;display:inline-flex}.grid-division-custom[hidden]{display:none}.grid-division-custom input{width:3.5em}.timeline-edit-hint .help-tip-bubble{max-width:min(36rem,90vw)}.effect-kind-section+.effect-kind-section.is-folded{margin-top:.4rem;padding-top:.4rem}.group-picker{background:var(--panel-bg);border:1px solid var(--border);border-radius:6px;flex-direction:column;align-items:flex-start;gap:.5rem;margin:.5rem 0 .8rem;padding:.6rem .8rem;display:flex}.group-picker-list{flex-wrap:wrap;gap:.3rem 1rem;max-height:12rem;display:flex;overflow-y:auto}.group-picker-item{white-space:nowrap}#placement-panel.is-group .material-only,#placement-panel.is-member .group-follows{display:none!important}.layer-thumb.group-thumb{color:var(--accent);background:var(--accent-soft);justify-content:center;align-items:center;display:flex}.layer-thumb.group-thumb .icon{width:28px;height:28px}#export-split-note{flex-basis:100%}.export-check input{flex-shrink:0}body.stage-mini-on{padding-bottom:calc(150px + env(safe-area-inset-bottom,0px))}.layer-card.group-member{border-left:3px solid var(--border-strong);margin-left:1.1rem}.layer-card:has(>.layer-grip){padding-left:1.35rem;position:relative}.layer-grip{width:1.2rem;color:var(--text-muted);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;font-size:var(--fs-body);justify-content:center;align-items:center;display:flex;position:absolute;top:0;bottom:0;left:0}.layer-card.group-member .layer-grip{visibility:hidden}.layers-reordering #placement-panel{display:none!important}.layers-reordering .object-list{gap:.2rem;margin-top:.2rem}.layers-reordering .layer-card{padding-top:.15rem;padding-bottom:.15rem;transition:none}.layers-reordering .layer-card .layer-thumb{width:38px;height:24px}.layers-reordering .layer-card .layer-actions,.layers-reordering .layer-card .layer-kind,.layers-reordering .layer-card .layer-meta{display:none}.layer-card.layer-dragging{z-index:5;opacity:.85;cursor:grabbing;position:relative;box-shadow:0 6px 18px #00000040}.layer-card.drop-before{box-shadow:inset 0 3px 0 var(--accent)}.layer-card.drop-after{box-shadow:inset 0 -3px 0 var(--accent)}.effect-duty{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);margin-bottom:.75rem;padding:.5rem .75rem}.effect-duty-toggle{font-weight:600}.effect-duty .effect-settings-inline{margin-top:.4rem}.layer-card.file-replace-over{outline:3px dashed var(--accent);outline-offset:-3px;background:color-mix(in srgb, var(--accent) 14%, var(--surface))}.effect-grip{color:var(--text-muted);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;align-self:center;padding:0 .15rem}.effect-drag-ghost{z-index:var(--z-drag);pointer-events:none;border-radius:var(--radius);background:var(--surface);color:var(--text);box-shadow:var(--shadow);font-size:var(--fs-md);white-space:nowrap;padding:.3rem .6rem;font-weight:600;position:fixed}.window-tab.effect-drop-ok{outline:3px solid var(--accent);outline-offset:1px}.window-tab.effect-drop-no{outline:3px dashed var(--text-muted);outline-offset:1px;opacity:.6}.window-tab.effect-copied{animation:.9s ease-out effect-copied}@keyframes effect-copied{0%{box-shadow:0 0 0 6px color-mix(in srgb, var(--accent) 60%, transparent)}to{box-shadow:0 0 #0000}}.effect-settings-row.param-flags-row{flex-wrap:wrap}.param-flags{flex-wrap:wrap;flex:16rem;justify-content:flex-end;gap:.3rem;display:flex}.param-flag{border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:var(--fs-sm);cursor:pointer;border-radius:999px;padding:.2rem .55rem}.param-flag[aria-pressed=true]{border-color:var(--accent);background:var(--accent);color:#fff}.param-flag:disabled{opacity:.35;cursor:not-allowed}.effect-settings-row.param-flags-kinds-row{flex-wrap:wrap}.param-flags-kinds-row>.effect-settings-label{flex:auto}.param-flags-kinds-row>.param-reset{order:1}.param-flags-kinds-row>.param-flags{flex:100%;order:2}.param-flags.param-flags-kinds{flex-direction:column;justify-content:flex-start;align-items:stretch}.param-flags.param-flags-kinds>.param-flag{align-self:flex-start}.param-flags.ways-folded .param-flag[aria-pressed=false]{display:none}.param-flags.ways-folded .param-flags-kind:not(:has(.param-flag[aria-pressed=true])){display:none}.param-flags-change{border:1px dashed var(--border);color:var(--accent);font-size:var(--fs-sm);background:0 0;border-radius:999px;align-self:flex-start;padding:.2rem .8rem}.param-flags-kind{grid-template-columns:4.2em minmax(0,1fr);align-items:start;gap:.3rem;display:grid}@media (width<=600px){.param-flags-kind{grid-template-columns:minmax(0,1fr);gap:.1rem}}.param-flags-kind-name{font-size:var(--fs-xs);color:var(--text-muted);padding-top:.3rem}.param-flags-kind-ways{flex-wrap:wrap;gap:.3rem;display:flex}.stage-autofocus-btn{font-size:var(--fs-xs);color:#fff;cursor:pointer;white-space:nowrap;background:#00000073;border:1px solid #ffffff59;border-radius:999px;padding:.15rem .6rem;font-weight:600}.stage-autofocus-btn[aria-pressed=true]{background:#6d28d9d9;border-color:#0000}.stage-autofocus-btn:hover:not(:disabled),.stage-autofocus-btn:active:not(:disabled){color:#fff;background:#000000b3;border-color:#fff9}.stage-autofocus-btn[aria-pressed=true]:hover:not(:disabled),.stage-autofocus-btn[aria-pressed=true]:active:not(:disabled){background:#6d28d9}.stage-slim .stage-size-badge,.stage-slim .stage-fps-badge,.stage-slim .stage-light-badge,.stage-slim .stage-autofocus-words{display:none}.stage-slim .stage-status-badge{padding:.25rem .35rem;font-size:0}.stage-slim .stage-status-badge:before{margin-right:0}.stage-slim .stage-focus-row{max-width:calc(100% - 16px);top:44px}.stage-slim .stage-autofocus-btn{padding:.15rem .35rem}.stage-slim .stage-focus-badge{max-width:100%}.effect-tile.effect-tile-dim{opacity:.45}.point-picker{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);max-width:calc(100vw - 32px);padding:1rem}.point-picker::backdrop{background:#00000080}.point-picker h3{font-size:var(--fs-body);margin:0 0 .3rem}.point-picker-canvas{border-radius:var(--radius);touch-action:none;cursor:crosshair;max-width:100%;margin:.5rem auto;display:block}.point-picker-readout{font-size:var(--fs-md);font-variant-numeric:tabular-nums;text-align:center;margin:0 0 .6rem}.point-picker>button{margin-left:auto;display:block}.effect-row.drop-before{box-shadow:inset 0 3px 0 var(--accent)}.effect-row.drop-after{box-shadow:inset 0 -3px 0 var(--accent)}.layer-card.off-stage{opacity:.5}.window-tab.off-stage .window-tab-thumb{opacity:.3}.window-tab.off-stage .window-tab-name{color:var(--text-muted)}.swap-align-btn{align-self:flex-start;margin:.3rem 0}.swap-aligner .hint{margin:0 0 .3rem}.swap-aligner-choices,.swap-aligner-foot{flex-wrap:wrap;gap:.4rem;margin:.35rem 0;display:flex}.swap-aligner-choice{border-width:2px;border-color:var(--border);padding:2px;position:relative}.swap-aligner-choice canvas{border-radius:3px;width:48px;height:48px;display:block}.swap-aligner-choice-number{min-width:1.2em;font-size:var(--fs-xs);color:#fff;background:#000000a6;border-radius:3px;padding:0 .25em;font-weight:700;line-height:1.4;position:absolute;bottom:2px;left:2px}.swap-aligner-choice[aria-selected=true],.swap-aligner-choice[aria-selected=true]:hover:not(:disabled){border-color:var(--accent);background:var(--accent-soft)}.swap-aligner-choice[aria-selected=true] .swap-aligner-choice-number{background:var(--accent)}.swap-aligner-stage{width:fit-content;max-width:100%;margin:.4rem auto;position:relative}.swap-aligner-stage .point-picker-canvas{margin:0}.swap-aligner-canvas{cursor:move}.swap-aligner-modes{background:#101018c7;border-radius:999px;padding:2px;display:flex;position:absolute;top:8px;right:8px}.swap-aligner-modes button,.swap-aligner-modes button:hover:not(:disabled),.swap-aligner-modes button:active:not(:disabled){font-size:var(--fs-xs);color:#ffffffd9;background:0 0;border:0;border-radius:999px;padding:.15rem .7rem}.swap-aligner-modes button[aria-pressed=true],.swap-aligner-modes button[aria-pressed=true]:hover:not(:disabled){color:#fff;background:var(--accent)}.swap-aligner-size{align-items:center;gap:.4rem;display:flex}.swap-aligner-size input[type=range]{flex:1;min-width:0}.swap-aligner-size input[type=number]{width:4.5rem}.swap-aligner-foot{justify-content:flex-end}.swap-aligner-foot button{min-width:5.5rem;min-height:2.6rem}@media (pointer:coarse){.swap-aligner-modes button,.swap-aligner-modes button:hover:not(:disabled){padding:.4rem .9rem}}.swap-material-aligned{font-size:var(--fs-xs);color:#fff;text-shadow:0 0 2px #000,0 0 2px #000;pointer-events:none;line-height:1;position:absolute;bottom:3px;left:3px}.swap-material-keys{flex-wrap:wrap;align-items:center;gap:.4rem .7rem;margin:.4rem 0;display:flex}.swap-material-keys-title{font-size:var(--fs-md)}.swap-material-keys-number{font-size:var(--fs-sm);margin-right:.2rem;font-weight:700}.swap-material-key{color:#fff;font-size:var(--fs-2xs);background:#000000b3;border-radius:4px;padding:0 4px;line-height:1.4;position:absolute;bottom:2px;right:2px}.swap-key-clash,.swap-key-midi,.speed-note{font-size:var(--fs-xs);color:var(--danger)}.flip-pair{white-space:nowrap;flex-wrap:nowrap;align-items:center;gap:.6rem;display:inline-flex}.effect-trial-badge{vertical-align:middle;opacity:.9;white-space:nowrap;border:1px dashed;border-radius:999px;margin-left:.35em;padding:0 .4em;font-size:.74em;font-weight:700;line-height:1.5;display:inline-block}:root.tablet-wide{--tabs-h:0px}.tablet-wide .app-header .step-tabs{background:0 0;border-bottom:none;flex:auto;justify-content:center;min-width:0;padding:0;position:static}.tablet-wide .app-header .step-tab{height:2.75rem}.tablet-wide .app-brand-tagline{display:none}@media (width<=600px){.stage-light-why,.stage-chip-more,.has-place-chips .stage-autofocus-words{display:none}}
