.ae-root[data-v-7d1db675]{display:flex;flex-direction:column;height:100%;min-height:0;background:var(--bg-0, #0e0f12);outline:none}.ae-toolbar[data-v-7d1db675]{display:flex;align-items:center;gap:6px;padding:4px 10px;background:var(--bg-1, #16181d);border-bottom:1px solid var(--line, #2a2d34);flex-shrink:0;flex-wrap:wrap}.ae-toolbar .ae-lbl[data-v-7d1db675]{color:#c8cdd6}.ae-toolbar .ae-tx[data-v-7d1db675],.ae-toolbar .btn[data-v-7d1db675]{color:#fff}.ae-chk[data-v-7d1db675]{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;font-size:10px;background:var(--bg-2, #1d2026);color:var(--txt-1, #e6e8ee);border:1px solid var(--line-bright, #3a3e47);border-radius:3px;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.ae-chk input[data-v-7d1db675]{display:none}.ae-chk .ae-chk-box[data-v-7d1db675]{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border:1px solid var(--line-bright, #3a3e47);border-radius:3px;font-size:9px;color:transparent}.ae-chk.on[data-v-7d1db675]{border-color:var(--accent, #6b8aff);color:#fff}.ae-chk.on .ae-chk-box[data-v-7d1db675]{background:var(--accent, #6b8aff);color:#fff;border-color:var(--accent, #6b8aff)}.btn[data-v-7d1db675]{display:inline-flex;align-items:center;gap:3px;padding:3px 8px;font-size:10px;background:var(--bg-2, #1d2026);color:var(--txt-1, #e6e8ee);border:1px solid var(--line-bright, #3a3e47);border-radius:3px;cursor:pointer;transition:all .1s;white-space:nowrap}.btn[data-v-7d1db675]:hover:not(:disabled){border-color:var(--accent, #6b8aff);color:#fff}.btn[data-v-7d1db675]:disabled{opacity:.4;cursor:not-allowed}.b-ic[data-v-7d1db675]{font-size:10px;color:var(--accent, #6b8aff)}.ae-sep[data-v-7d1db675]{width:1px;height:18px;background:var(--line, #2a2d34);margin:0 2px}.ae-lbl[data-v-7d1db675]{font-size:9px;color:var(--txt-3, #8a8e98)}.ae-zoom[data-v-7d1db675]{width:80px}.ae-fade[data-v-7d1db675]{width:60px}.ae-bpm[data-v-7d1db675]{width:40px;background:var(--bg-2);color:var(--txt-1);border:1px solid var(--line-bright);border-radius:2px;padding:2px 4px;font-family:Consolas,monospace;font-size:10px;text-align:center;-moz-appearance:textfield}.ae-bpm[data-v-7d1db675]::-webkit-inner-spin-button,.ae-bpm[data-v-7d1db675]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.ae-tx[data-v-7d1db675]{font-size:9px;color:var(--txt-1, #e6e8ee)}.ae-spacer[data-v-7d1db675]{flex:1}.ae-kbd[data-v-7d1db675]{font-size:8px;color:var(--txt-3);margin-left:2px;background:var(--bg-3);padding:1px 4px;border-radius:2px}.ae-body[data-v-7d1db675]{flex:1;min-height:0;display:grid;grid-template-columns:175px 1fr;overflow:hidden;position:relative}.ae-zoom-indicator[data-v-7d1db675]{position:absolute;bottom:20px;left:50%;transform:translate(-50%);font-size:42px;color:#ffffff40;font-family:SF Mono,Consolas,monospace;pointer-events:none;z-index:100;white-space:nowrap}.ae-tracks[data-v-7d1db675]{background:var(--bg-1, #16181d);border-right:1px solid var(--line, #2a2d34);display:flex;flex-direction:column;overflow-y:auto}.ae-thead[data-v-7d1db675]{height:24px;line-height:24px;padding:0 12px;font-size:9px;font-weight:700;letter-spacing:2px;color:var(--txt-3, #8a8e98);text-transform:uppercase;background:var(--bg-2, #1d2026);border-bottom:1px solid var(--line, #2a2d34);flex-shrink:0;display:flex;align-items:center}.ae-track-head[data-v-7d1db675]{position:relative;padding:5px 8px 5px 6px;border-bottom:1px solid var(--line, #2a2d34);display:flex;flex-direction:column;background:var(--bg-1, #16181d);transition:background .15s}.ae-track-head[data-v-7d1db675]:hover{background:#1c1f25}.ae-track-head.th-muted[data-v-7d1db675]{opacity:.38}.ae-track-head.th-soloed[data-v-7d1db675]{background:#4285f40f;border-left:2px solid #4285f4}.th-accent[data-v-7d1db675]{position:absolute;left:0;top:0;bottom:0;width:2px;background:#22252d}.ae-track-head:not(.th-muted):not(.th-soloed) .th-accent[data-v-7d1db675]{background:#2e313a}.th-row1[data-v-7d1db675]{display:flex;align-items:center;gap:5px}.th-num[data-v-7d1db675]{width:20px;height:17px;border-radius:3px;border:none;background:#3a3a1e;color:#996;font-weight:700;font-size:9px;cursor:pointer;padding:0;text-align:center;line-height:17px;flex-shrink:0;transition:all .12s}.th-num.on[data-v-7d1db675]{background:#e6b800;color:#1a1400}.th-num[data-v-7d1db675]:hover{filter:brightness(1.2)}.th-solo[data-v-7d1db675]{width:20px;height:17px;border-radius:3px;border:none;background:#1e2130;color:#4a4e5c;font-weight:700;font-size:9px;cursor:pointer;padding:0;text-align:center;line-height:17px;flex-shrink:0;transition:all .12s}.th-solo.on[data-v-7d1db675]{background:#4285f4;color:#fff}.th-solo[data-v-7d1db675]:hover{background:#2a3040;color:#8a8ea0}.th-solo.on[data-v-7d1db675]:hover{background:#5295ff}.th-del[data-v-7d1db675]{color:#4a4e58;cursor:pointer;font-size:13px;line-height:1}.th-del[data-v-7d1db675]:hover{color:#e85454}.th-main[data-v-7d1db675]{width:20px;height:17px;border-radius:3px;border:none;background:#1e2130;color:#4a4e5c;font-size:10px;cursor:pointer;padding:0;text-align:center;line-height:17px;flex-shrink:0;transition:all .12s}.th-main.on[data-v-7d1db675]{background:#f6a623;color:#1a1400}.th-main[data-v-7d1db675]:hover{background:#2a3040;color:#8a8ea0}.th-main.on[data-v-7d1db675]:hover{background:#ffb733}.th-row2[data-v-7d1db675]{margin-top:3px}.th-name[data-v-7d1db675]{font-size:10px;color:var(--txt-1, #e6e8ee);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.th-row3[data-v-7d1db675]{margin-top:4px;display:flex;flex-direction:column;gap:2px}.th-vu-canvas[data-v-7d1db675]{border-radius:1px;display:block;opacity:.85}.th-row4[data-v-7d1db675]{margin-top:3px;font-size:7.5px;color:var(--txt-3, #8a8e98);font-family:Consolas,monospace}.ae-add[data-v-7d1db675]{margin:5px 6px;padding:5px;background:transparent;color:var(--txt-3, #8a8e98);border:1px dashed var(--line-bright, #3a3e47);border-radius:3px;font-size:9px;cursor:pointer;text-align:center}.ae-add[data-v-7d1db675]:hover{border-color:var(--accent, #6b8aff);color:var(--accent, #6b8aff);background:#6b8aff0a}.ae-timeline[data-v-7d1db675]{position:relative;overflow-x:auto;overflow-y:auto;background-color:#2a2a2e}.ae-timeline.cut-mode[data-v-7d1db675],.ae-timeline.cut-mode .ae-clip[data-v-7d1db675]{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 28 28'%3E%3Cpath d='M8 3C8 3 9 9 12 13C9 11 5 9 3 8' stroke='white' stroke-width='1.8' fill='none' stroke-linecap='round'/%3E%3Cpath d='M20 3C20 3 19 9 16 13C19 11 23 9 25 8' stroke='white' stroke-width='1.8' fill='none' stroke-linecap='round'/%3E%3Ccircle cx='8' cy='4' r='2.2' fill='white'/%3E%3Ccircle cx='20' cy='4' r='2.2' fill='white'/%3E%3C/svg%3E") 14 4,crosshair!important}.cut-on[data-v-7d1db675]{color:#ff6b6b;font-weight:700}.ae-ruler-spacer[data-v-7d1db675]{height:1px;pointer-events:none;flex-shrink:0}.ae-grid[data-v-7d1db675]{position:absolute;top:0;left:0;z-index:1;pointer-events:none;display:block;will-change:transform;transform-origin:0 0}.ae-ruler[data-v-7d1db675]{display:block;position:absolute;top:0;left:0;z-index:2;background:var(--bg-1, #16181d);image-rendering:pixelated;image-rendering:crisp-edges}.ae-clips-canvas[data-v-7d1db675],.ae-dyn-canvas[data-v-7d1db675]{position:absolute;top:0;left:0;display:block;pointer-events:none;will-change:transform;transform-origin:0 0}.ae-clips-canvas[data-v-7d1db675]{z-index:1}.ae-dyn-canvas[data-v-7d1db675]{z-index:3}.ce-name-input[data-v-7d1db675]{position:absolute;top:0;z-index:5;min-width:60px;height:14px;border:none;outline:1px solid #6b8aff;border-radius:2px;background:#1b2230;color:#fff;font-size:9px;padding:0 4px;box-sizing:border-box}.ae-lane[data-v-7d1db675]{position:relative;border-bottom:1px solid rgba(255,255,255,.08);transition:background .1s}.ae-lane[data-v-7d1db675]:hover{background:#ffffff05}.ae-lane.selected[data-v-7d1db675]{background:#3a8c5d0f;box-shadow:inset 0 0 0 1px #3a8c5d26}.ae-clip[data-v-7d1db675]{position:absolute;top:2px;height:calc(100% - 4px);border-radius:3px;cursor:grab;-webkit-user-select:none;user-select:none}.ae-clip.selected[data-v-7d1db675]{box-shadow:0 0 0 2px #6b8aff,0 0 12px #6b8aff59}.ae-clip.selected .cl-name-bar[data-v-7d1db675]{filter:brightness(1.3)}.ae-clip[data-v-7d1db675]:active{cursor:grabbing}.cl-name-bar[data-v-7d1db675]{position:absolute;top:0;left:0;right:0;height:14px;line-height:14px;padding:0 6px;font-size:9px;color:#ffffffd9;pointer-events:auto;z-index:2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:2px 2px 0 0;cursor:text}.cl-name-bar[data-v-7d1db675]:hover{filter:brightness(1.2)}.cl-name-input[data-v-7d1db675]{position:absolute;top:0;left:0;right:0;height:14px;border:none;outline:1px solid #6b8aff;border-radius:2px;background:#1b2230;color:#fff;font-size:9px;line-height:14px;padding:0 4px;width:100%;box-sizing:border-box}.cl-wave-wrapper[data-v-7d1db675]{position:absolute;top:14px;left:0;right:0;bottom:0;overflow:hidden}.cl-fade-overlay[data-v-7d1db675]{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:0}.cl-handle[data-v-7d1db675]{position:absolute;top:0;bottom:0;width:4px;cursor:ew-resize;background:#fff3;z-index:3}.cl-h-l[data-v-7d1db675]{left:0;border-radius:3px 0 0 3px}.cl-h-r[data-v-7d1db675]{right:0;border-radius:0 3px 3px 0}.cl-handle[data-v-7d1db675]:hover{background:var(--accent, #6b8aff)}.ae-selection[data-v-7d1db675]{position:absolute;top:0;bottom:0;background:#ffffff14;border:1px dashed rgba(255,255,255,.25);pointer-events:none;z-index:4}@keyframes snapPulse-7d1db675{0%{opacity:1;transform:scaleY(1)}to{opacity:0;transform:scaleY(.6)}}@keyframes trimPulse-7d1db675{0%{opacity:.7}to{opacity:1}}.btn.on[data-v-7d1db675]{border-color:var(--accent);background:#6b8aff26;color:#fff}.ae-lane .ae-locator[data-v-7d1db675]{position:absolute;top:0;bottom:0;width:2px;background:#50a0ffb3;pointer-events:none;z-index:4}.ae-lane .ae-playhead[data-v-7d1db675]{position:absolute;top:0;bottom:0;width:2px;background:#ff6464d9;pointer-events:none;z-index:5}.ae-lane .ae-snap-glow[data-v-7d1db675]{position:absolute;top:0;bottom:0;width:0;pointer-events:none;z-index:6}.ae-lane .ae-snap-glow[data-v-7d1db675]:after{content:"";position:absolute;top:0;bottom:0;left:-1px;width:2px;background:#a3b9ffcc;box-shadow:0 0 6px 2px #a3b9ff80,0 0 12px 4px #6b8aff4d;animation:snapPulse-7d1db675 .3s ease-out}.ae-lane .ae-snap-glow.edge[data-v-7d1db675]:after{background:#ffb43ccc;box-shadow:0 0 6px 2px #ffb43c80}.ae-lane .ae-snap-glow.playhead[data-v-7d1db675]:after{background:#ff5252cc;box-shadow:0 0 6px 2px #ff525280}.ae-lane .ae-trim-limit[data-v-7d1db675]{position:absolute;top:0;bottom:0;width:0;pointer-events:none;z-index:7}.ae-lane .ae-trim-limit[data-v-7d1db675]:after{content:"";position:absolute;top:0;bottom:0;left:-1px;width:2px;background:#ff3c3ce6;box-shadow:0 0 8px 2px #ff282899,0 0 16px 4px #ff3c3c4d;animation:trimPulse-7d1db675 .5s ease-in-out infinite alternate}.ae-lane .ae-trim-limit.r[data-v-7d1db675]:after{left:auto;right:-1px}.ae-status[data-v-7d1db675]{padding:3px 10px;background:var(--bg-1, #16181d);border-top:1px solid var(--line, #2a2d34);flex-shrink:0;font-size:10px;display:flex;align-items:center;gap:6px}.ae-msg[data-v-7d1db675]{color:var(--txt-1, #e6e8ee)}.ae-msg.dim[data-v-7d1db675]{color:var(--txt-3, #8a8e98)}.ae-info[data-v-7d1db675]{margin-left:auto;display:flex;align-items:center;gap:4px}.ai-lbl[data-v-7d1db675]{color:var(--txt-3, #8a8e98);font-size:9px}.ai-val[data-v-7d1db675]{color:var(--txt-1, #e6e8ee);font-family:Consolas,monospace;font-size:10px}.ai-sep[data-v-7d1db675]{color:var(--txt-3, #8a8e98)}.color-menu-overlay[data-v-7d1db675]{position:fixed;top:0;left:0;right:0;bottom:0;z-index:999}.color-menu[data-v-7d1db675]{position:fixed;z-index:1000;min-width:212px;background:#23232b;border:1px solid #3a3a45;border-radius:6px;padding:8px;box-shadow:0 6px 20px #00000073;transform:translate(4px,4px);white-space:nowrap}.cm-title[data-v-7d1db675]{font-size:9px;color:#9a9aa6;margin-bottom:6px;text-align:center}.cm-grid[data-v-7d1db675]{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;width:100%}.cm-swatch[data-v-7d1db675]{width:100%;aspect-ratio:1;height:auto;border-radius:3px;cursor:pointer;border:2px solid transparent;transition:all .1s}.cm-swatch[data-v-7d1db675]:hover{transform:scale(1.2);border-color:#ffffff80}.cm-swatch.active[data-v-7d1db675]{border-color:#fff}.cm-sep[data-v-7d1db675]{height:1px;background:#35353f;margin:8px -8px}.cm-current[data-v-7d1db675]{padding:7px 8px;margin:0 -8px;display:flex;align-items:center;gap:6px;background:linear-gradient(90deg,#4caf502e,#4caf500f);border:1px solid rgba(76,175,80,.35);border-radius:4px;cursor:pointer}.cm-current[data-v-7d1db675]:hover{background:linear-gradient(90deg,#4caf5052,#4caf501f)}.cm-current.disabled[data-v-7d1db675]{opacity:.4;cursor:not-allowed;filter:grayscale(1);pointer-events:none}.cm-cur-ic[data-v-7d1db675]{font-size:11px}.cm-cur-txt[data-v-7d1db675]{font-weight:600;font-size:11px;color:#bff0c8}.cm-cur-val[data-v-7d1db675]{margin-left:auto;font-size:9px;color:#ffffff8c;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:right;flex-shrink:0}.cm-item[data-v-7d1db675]{position:relative;display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:4px;cursor:default;white-space:nowrap;font-size:11px;color:#e6e6ec}.cm-item[data-v-7d1db675]:hover,.cm-item.open[data-v-7d1db675]{background:#2f2f3a;color:#fff}.cm-arrow[data-v-7d1db675]{margin-left:auto;font-size:9px;opacity:.6}.cm-badge[data-v-7d1db675]{min-width:15px;height:15px;line-height:15px;padding:0 4px;border-radius:8px;background:#00d1b24d;font-size:9px;text-align:center;color:#b9f3e8}.cm-sub[data-v-7d1db675]{position:absolute;left:100%;top:-6px;margin-left:2px;background:#23232b;border:1px solid #3a3a45;border-radius:6px;padding:6px;z-index:1001;box-shadow:0 6px 20px #0000008c}.color-menu.flip-x .cm-sub[data-v-7d1db675]{left:auto;right:100%;margin-left:0;margin-right:2px}.color-menu.flip-y .cm-sub[data-v-7d1db675]{top:auto;bottom:-6px}.cm-pads[data-v-7d1db675]{padding:8px}.cm-pads-title[data-v-7d1db675]{font-size:9px;color:#ffffff80;margin-bottom:6px;text-align:center}.cm-grid8[data-v-7d1db675]{display:grid;grid-template-columns:repeat(8,26px);gap:3px}.cm-pad[data-v-7d1db675]{width:26px;height:22px;line-height:22px;text-align:center;font-size:8px;border-radius:3px;cursor:pointer;background:#f2f2f2;color:#555;border:1px solid rgba(0,0,0,.25);transition:transform .08s,box-shadow .08s}.cm-pad[data-v-7d1db675]:hover{transform:scale(1.12);box-shadow:0 0 0 2px #6b8affcc;z-index:2}.cm-pad.bound[data-v-7d1db675]{background:#6b7280;color:#ffffffd9;border-color:#ffffff2e;cursor:pointer}.cm-pad.bound[data-v-7d1db675]:hover{transform:scale(1.12);box-shadow:0 0 0 2px #6b8affcc;z-index:2}.cm-pad.mine[data-v-7d1db675]{background:#6b8aff!important;border-color:#fff!important;color:#fff!important;cursor:pointer}.cm-pad.mine[data-v-7d1db675]:hover{transform:scale(1.12);box-shadow:0 0 0 2px #ffffffe6}.cm-pad-note[data-v-7d1db675]{position:relative;z-index:1}.cm-pad-badge[data-v-7d1db675]{position:absolute;top:1px;right:2px;font-size:8px;line-height:1;background:#0000008c;color:#fff;border-radius:6px;padding:1px 3px;z-index:1}.cm-pads-legend[data-v-7d1db675]{display:flex;gap:12px;justify-content:center;margin-top:7px;font-size:9px;color:#ffffff80}.cm-pads-legend i[data-v-7d1db675]{display:inline-block;width:9px;height:9px;border-radius:2px;margin-right:4px;vertical-align:-1px}.cm-pads-legend i.white[data-v-7d1db675]{background:#f2f2f2;border:1px solid rgba(0,0,0,.3)}.cm-pads-legend i.bound[data-v-7d1db675]{background:#6b7280}.cm-pads-legend i.mine[data-v-7d1db675]{background:#6b8aff}.pe-root[data-v-d7533542]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0e0f13;color:#e6e6e6;display:flex;flex-direction:column;z-index:9999;overflow:hidden}.pe-top[data-v-d7533542]{display:flex;align-items:center;justify-content:space-between;padding:4px 10px;border-bottom:1px solid #2a2d34;background:#16181d;flex-shrink:0}.pe-title[data-v-d7533542]{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:#fff}.pe-title .pe-ic[data-v-d7533542]{color:var(--accent, #6b8aff);font-size:13px}.pe-sub[data-v-d7533542]{font-size:11px;color:#8a8f9a;margin-left:8px;font-weight:400}.pe-actions[data-v-d7533542]{display:flex;align-items:center;gap:6px}.btn[data-v-d7533542]{display:inline-flex;align-items:center;gap:4px;height:24px;padding:0 8px;background:#1d2026;color:#e6e8ee;border:1px solid #3a3e47;border-radius:3px;cursor:pointer;font-size:10px;white-space:nowrap;transition:all .1s}.btn[data-v-d7533542]:hover{background:#2f2f3a;border-color:#6b8aff;color:#fff}.btn.primary[data-v-d7533542]{background:#2f6df6;border-color:#2f6df6;color:#fff}.btn.primary[data-v-d7533542]:hover{background:#3f7bff;border-color:#3f7bff}.btn.danger[data-v-d7533542]{background:#3a2326;border-color:#5a2a2e;color:#ff9a9a}.btn.danger[data-v-d7533542]:hover{background:#4a2a2e;border-color:#ff9a9a}.btn.small[data-v-d7533542]{padding:3px 8px;font-size:10px;height:22px}.btn[data-v-d7533542]:disabled{opacity:.4;cursor:not-allowed}.pe-wizard[data-v-d7533542]{padding:28px;max-width:640px}.pe-wizard h3[data-v-d7533542]{margin:0 0 16px;font-size:15px}.pe-form[data-v-d7533542]{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-end}.pe-form label[data-v-d7533542]{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#9aa0ab}.pe-form input[data-v-d7533542]{background:#181b22;border:1px solid #2a2e38;color:#e6e6e6;padding:7px 9px;border-radius:6px;width:160px;font-size:13px}.pe-hint[data-v-d7533542]{margin-top:18px;font-size:12px;color:#8a8f9a;line-height:1.7}.pe-hint code[data-v-d7533542]{background:#1b1e25;padding:1px 5px;border-radius:4px;color:#9ad}.pe-main[data-v-d7533542]{flex:1;display:flex;flex-direction:column;overflow:hidden}.pe-pages[data-v-d7533542]{display:flex;gap:6px;padding:10px 16px;flex-wrap:wrap;border-bottom:1px solid #23252c}.pe-page-tab[data-v-d7533542]{padding:6px 14px;border-radius:6px;background:#181b22;cursor:pointer;font-size:12px;color:#9aa0ab;border:1px solid transparent}.pe-page-tab.active[data-v-d7533542]{background:#2f6df6;color:#fff}.pe-work[data-v-d7533542]{flex:1;display:flex;overflow:hidden}.pe-grid[data-v-d7533542]{display:grid;grid-template-columns:repeat(8,1fr);gap:6px;padding:16px;overflow-y:auto;align-content:start;width:520px}.pe-cell[data-v-d7533542]{height:56px;border-radius:8px;border:1px solid #2a2e38;background:#15181f;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;color:#cfd3db;gap:2px}.pe-cell.filled[data-v-d7533542]{border-color:#2f6df6;background:#16223a}.pe-cell.sel[data-v-d7533542]{outline:2px solid #ffce54}.pe-cell-note[data-v-d7533542]{font-size:11px;font-weight:600}.pe-cell-info[data-v-d7533542]{font-size:10px;color:#6f7682}.pe-drawer[data-v-d7533542]{flex:1;border-left:1px solid #23252c;overflow-y:auto;padding:16px 20px}.pe-drawer-head[data-v-d7533542]{display:flex;justify-content:space-between;align-items:center;font-size:14px;font-weight:600;margin-bottom:14px}.pe-drawer-head .x[data-v-d7533542]{background:none;border:none;color:#9aa0ab;font-size:20px;cursor:pointer}.pe-sec[data-v-d7533542]{margin-bottom:22px;border:1px solid #23252c;border-radius:8px;padding:14px}.pe-sec h4[data-v-d7533542]{margin:0 0 10px;font-size:13px;color:#b9c0cc}.pe-sec .row[data-v-d7533542]{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#9aa0ab;margin-bottom:8px}.pe-sec input[data-v-d7533542],.pe-ta[data-v-d7533542]{background:#181b22;border:1px solid #2a2e38;color:#e6e6e6;padding:6px 8px;border-radius:6px;font-size:12px;width:100%;box-sizing:border-box}.pe-ta[data-v-d7533542]{resize:vertical;font-family:monospace}.grid2[data-v-d7533542]{display:grid;grid-template-columns:1fr 1fr;gap:8px}.grid2 label[data-v-d7533542]{display:flex;flex-direction:column;gap:3px;font-size:11px;color:#9aa0ab}.grid2 input[data-v-d7533542]{width:100%}.pe-tip[data-v-d7533542]{font-size:11px;color:#6f7682;margin:0 0 6px}.pe-plugin-pick[data-v-d7533542]{display:flex;flex-wrap:wrap;gap:8px 14px;margin-bottom:12px}.pp-item[data-v-d7533542]{display:flex;align-items:center;gap:5px;font-size:12px;color:#cfd3db;cursor:pointer}.pe-plugin[data-v-d7533542]{border:1px solid #2a2e38;border-radius:6px;padding:10px;margin-bottom:10px;background:#15181f}.pe-plugin-head[data-v-d7533542]{display:flex;align-items:center;gap:10px;margin-bottom:8px}.pp-on[data-v-d7533542]{display:flex;align-items:center;gap:5px;font-size:12px;color:#9aa0ab}.pe-plugin-name[data-v-d7533542]{font-size:12px;font-weight:600;color:#e6e6e6}.pe-params[data-v-d7533542]{display:flex;flex-direction:column;gap:6px}.pe-param[data-v-d7533542]{display:flex;align-items:center;gap:8px}.pe-pk[data-v-d7533542]{width:130px;font-size:11px;color:#8a8f9a;font-family:monospace}.pe-param input[data-v-d7533542]{flex:1;background:#181b22;border:1px solid #2a2e38;color:#e6e6e6;padding:5px 7px;border-radius:6px;font-size:12px}.pe-del[data-v-d7533542]{background:#3a2326;border:1px solid #5a2a2e;color:#ff9a9a;border-radius:5px;width:24px;height:26px;cursor:pointer}.pe-addparam[data-v-d7533542]{display:flex;gap:6px;margin-top:8px}.pe-addparam input[data-v-d7533542]{flex:1;background:#181b22;border:1px solid #2a2e38;color:#e6e6e6;padding:5px 7px;border-radius:6px;font-size:12px}.pr[data-v-180ff921]{position:relative;width:100%;height:100%;z-index:1;display:flex;flex-direction:column;background:#1e1e26;border:1px solid #3a3a48;border-radius:6px;overflow:hidden;color:#d8d8e0;font-size:11px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-user-select:none;user-select:none}.pr-bar[data-v-180ff921]{display:flex;align-items:center;gap:6px;padding:5px 10px;background:var(--bg-1, #16181d);border-bottom:1px solid var(--line, #2a2d34);flex-shrink:0;flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start}.pr-bar[data-v-180ff921]::-webkit-scrollbar{height:6px}.pr-bar[data-v-180ff921]::-webkit-scrollbar-thumb{background:var(--line-bright, #3a3e47);border-radius:3px}.pr-title[data-v-180ff921]{font-size:11px;font-weight:700;letter-spacing:1.5px;color:var(--txt-2, #8a8e98);text-transform:uppercase;white-space:nowrap;margin-right:2px;flex-shrink:0}.pr-tools[data-v-180ff921]{display:flex;align-items:center;gap:6px;flex:0 0 auto;min-width:0;flex-wrap:nowrap;flex-shrink:0}.pr-row-break[data-v-180ff921]{display:none}.pr-tool[data-v-180ff921],.pr-btn[data-v-180ff921]{display:inline-flex;align-items:center;justify-content:center;gap:3px;padding:3px 8px;font-size:10px;background:var(--bg-2, #1d2026);color:var(--txt-1, #e6e8ee);border:1px solid var(--line-bright, #3a3e47);border-radius:3px;cursor:pointer;transition:all .1s;white-space:nowrap;box-sizing:border-box;line-height:1}.pr-tool[data-v-180ff921]{font-size:10px}.pr-tool[data-v-180ff921]:hover:not(:disabled),.pr-btn[data-v-180ff921]:hover:not(:disabled){border-color:var(--accent, #6b8aff);color:#fff}.pr-tool[data-v-180ff921]:disabled,.pr-btn[data-v-180ff921]:disabled{opacity:.4;cursor:not-allowed}.pr-tool.on[data-v-180ff921],.pr-btn.on[data-v-180ff921]{border-color:var(--accent, #6b8aff);background:#6b8aff26;color:#fff}.pr-gen-btn[data-v-180ff921]{background:#6f8aff29;border-color:#6f8aff80;color:#b9c8ff;font-weight:600}.pr-gen-btn[data-v-180ff921]:hover{background:#6f8aff47;color:#fff}.pr-gen-drop[data-v-180ff921]{position:relative;display:inline-flex}.pr-gen-toggle[data-v-180ff921]{padding:3px 8px;min-width:64px;justify-content:space-between}.pr-gen-toggle svg[data-v-180ff921]{opacity:.7}.pr-gen-menu[data-v-180ff921]{position:absolute;top:100%;left:0;margin-top:4px;z-index:50;min-width:180px;padding:5px;background:var(--bg-1, #16181d);border:1px solid var(--line-bright, #3a3e47);border-radius:4px;box-shadow:0 8px 24px #00000073}.pr-gen-item[data-v-180ff921]{display:flex;align-items:center;gap:7px;padding:5px 7px;border-radius:3px;font-size:11px;color:var(--txt-1, #e6e8ee);cursor:pointer;-webkit-user-select:none;user-select:none}.pr-gen-item[data-v-180ff921]:hover{background:#ffffff0f}.pr-gen-item.on[data-v-180ff921]{color:#b9c8ff}.pr-gen-item input[data-v-180ff921]{display:none}.pr-gen-box[data-v-180ff921]{width:13px;height:13px;flex-shrink:0;border:1px solid var(--line-bright, #3a3e47);border-radius:3px;display:inline-flex;align-items:center;justify-content:center;font-size:10px;line-height:1;color:transparent;transition:all .12s}.pr-gen-item.on .pr-gen-box[data-v-180ff921]{background:var(--accent, #6b8aff);border-color:var(--accent, #6b8aff);color:#fff}.pr-gen-sep[data-v-180ff921]{height:1px;background:var(--line-bright, #3a3e47);margin:4px 2px}.pr-gen-empty[data-v-180ff921]{padding:8px 10px;font-size:11px;color:var(--txt-3, #8a909c)}.pr-gen-order[data-v-180ff921]{padding:4px 4px 6px}.pr-go-tip[data-v-180ff921]{font-size:10px;color:var(--txt-3, #8a909c);margin:2px 2px 6px;line-height:1.4}.pr-go-list[data-v-180ff921]{display:flex;flex-direction:column;gap:4px;max-height:180px;overflow-y:auto}.pr-go-chip[data-v-180ff921]{display:flex;align-items:center;gap:6px;padding:4px 6px;border-radius:4px;color:#0d0f13;font-size:11px;font-weight:600;cursor:grab}.pr-go-chip.dragging[data-v-180ff921]{opacity:.35;cursor:grabbing}.pr-go-chip.drop-target[data-v-180ff921]{box-shadow:0 0 0 2px #fff,0 0 10px #ffffff80;outline:2px dashed #fff;outline-offset:-2px}.pr-go-idx[data-v-180ff921]{opacity:.7}.pr-go-pg[data-v-180ff921]{flex:1}.pr-go-sel[data-v-180ff921]{flex:1;min-width:0;border:none;border-radius:3px;padding:2px 4px;font-size:11px;font-weight:600;cursor:pointer;background:#00000038;color:#0d0f13}.pr-go-sel[data-v-180ff921]:focus{outline:1px solid rgba(0,0,0,.4)}.pr-go-ops[data-v-180ff921]{display:inline-flex;gap:2px}.pr-go-btn[data-v-180ff921]{width:18px;height:18px;border:none;border-radius:3px;cursor:pointer;background:#0000002e;color:#0d0f13;font-size:10px;line-height:1;display:inline-flex;align-items:center;justify-content:center}.pr-go-btn[data-v-180ff921]:disabled{opacity:.35;cursor:default}.pr-go-btn[data-v-180ff921]:hover:not(:disabled){background:#00000052}.pr-go-empty[data-v-180ff921]{padding:6px 4px;font-size:11px;color:var(--txt-3, #8a909c)}.pr-go-add[data-v-180ff921]{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px;padding-top:7px;border-top:1px solid var(--line-bright, #3a3e47)}.pr-go-addbtn[data-v-180ff921]{padding:3px 7px;font-size:10px;border-radius:3px;cursor:pointer;background:var(--bg-2, #1d2026);color:var(--txt-1, #e6e8ee);border:1px solid var(--line-bright, #3a3e47)}.pr-go-addbtn[data-v-180ff921]:hover{background:#ffffff0f}.pr-go-addbtn.on[data-v-180ff921]{border-color:var(--accent, #6b8aff);color:#b9c8ff}.pr-lbl[data-v-180ff921]{font-size:9px;color:var(--txt-3, #8a8e98);white-space:nowrap}.pr-sel[data-v-180ff921]{font-size:10px;padding:3px 8px;box-sizing:border-box;background:var(--bg-2, #1d2026);color:var(--txt-1, #e6e8ee);border:1px solid var(--line-bright, #3a3e47);border-radius:3px}.pr-sel-sm[data-v-180ff921]{font-size:10px;padding:3px 8px;width:auto;min-width:60px;box-sizing:border-box;background:var(--bg-2, #1d2026);color:var(--txt-1, #e6e8ee);border:1px solid var(--line-bright, #3a3e47);border-radius:3px}.pr-chk[data-v-180ff921]{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;box-sizing:border-box;font-size:10px;background:var(--bg-2, #1d2026);color:var(--txt-1, #e6e8ee);border:1px solid var(--line-bright, #3a3e47);border-radius:3px;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;transition:all .1s}.pr-chk[data-v-180ff921]:hover{border-color:var(--accent, #6b8aff);color:#fff}.pr-chk input[data-v-180ff921]{display:none}.pr-chk.on[data-v-180ff921]{border-color:var(--accent, #6b8aff);color:#fff}.pr-chk-box[data-v-180ff921]{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border:1px solid var(--line-bright, #3a3e47);border-radius:3px;font-size:9px;color:transparent}.pr-chk.on .pr-chk-box[data-v-180ff921]{background:var(--accent, #6b8aff);color:#fff;border-color:var(--accent, #6b8aff)}.pr-sep[data-v-180ff921]{width:1px;height:18px;background:var(--line, #2a2d34);margin:0 2px;flex-shrink:0}.pr-loop[data-v-180ff921]{position:absolute;top:0;bottom:0;background:#78b4ff29;border-left:2px solid rgba(120,180,255,.7);border-right:2px solid rgba(120,180,255,.7);cursor:grab;z-index:3;box-sizing:border-box}.pr-loop.off[data-v-180ff921]{background:#9696961a;border-color:#aaaaaa80}.pr-loop[data-v-180ff921]:active{cursor:grabbing}.pr-loop-line[data-v-180ff921]{position:absolute;top:0;bottom:0;width:9px;cursor:ew-resize}.pr-loop-line.l[data-v-180ff921]{left:-5px}.pr-loop-line.r[data-v-180ff921]{right:-5px}.pr-loop-line[data-v-180ff921]:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:2px;height:40%;background:#ffffff8c;border-radius:1px}.pr-loop-clear[data-v-180ff921]{position:absolute;top:1px;right:1px;width:15px;height:15px;line-height:13px;text-align:center;border:none;border-radius:3px;padding:0;background:#141820b3;color:#cdd3e0;font-size:12px;cursor:pointer}.pr-loop-clear[data-v-180ff921]:hover{background:#ff5a5a;color:#fff}.pr-startpt[data-v-180ff921]{position:absolute;top:0;bottom:0;width:0;border-left:2px solid #ff5a5a;pointer-events:none;z-index:4}.pr-startpt[data-v-180ff921]:before{content:"";position:absolute;top:0;left:-4px;width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:6px solid #ff5a5a}.pr-seg[data-v-180ff921]{display:inline-flex;align-items:stretch;border:1px solid var(--line-bright, #3a3e47);border-radius:3px;overflow:hidden;box-sizing:border-box}.pr-seg-btn[data-v-180ff921]{font-size:10px;padding:3px 8px;background:var(--bg-2, #1d2026);color:var(--txt-1, #e6e8ee);border:none;cursor:pointer;white-space:nowrap;transition:all .1s;display:inline-flex;align-items:center}.pr-seg-btn+.pr-seg-btn[data-v-180ff921]{border-left:1px solid var(--line-bright, #3a3e47)}.pr-seg-btn[data-v-180ff921]:hover{color:#fff}.pr-seg-btn.on[data-v-180ff921]{background:#6b8aff26;border-color:var(--accent, #6b8aff);color:#fff}.pr-mode-btns[data-v-180ff921]{display:inline-flex;flex-direction:row;align-items:stretch;flex-shrink:0;border:1px solid var(--line-bright, #3a3e47);border-radius:3px;overflow:hidden;box-sizing:border-box}.pr-mode-btn[data-v-180ff921]{display:inline-flex;align-items:center;gap:3px;height:100%;padding:3px 8px;border:none;border-radius:0;border-left:1px solid var(--line-bright, #3a3e47);background:var(--bg-2, #1d2026);color:var(--txt-2, #6b6f78);cursor:pointer;white-space:nowrap;justify-content:flex-start;font-size:10px;font-weight:600;letter-spacing:.3px;line-height:1;transition:color .15s,border-color .15s,background .15s,box-shadow .15s;-webkit-tap-highlight-color:transparent}.pr-mode-btn[data-v-180ff921]:first-child{border-left:none}.pr-mode-btn[data-v-180ff921]:hover{color:var(--txt-1, #e6e8ee);border-color:var(--accent, #6b8aff)}.pr-mode-btn[data-v-180ff921]:active{transform:scale(.96)}.pr-mode-btn.on.learn[data-v-180ff921]{color:#6fe9d6;border-color:#6fe9d68c;background:#6fe9d629;box-shadow:0 0 8px #6fe9d659}.pr-mode-btn.on.edit[data-v-180ff921]{color:#9db8ff;border-color:#6f8aff99;background:#6f8aff2e;box-shadow:0 0 10px #6f8aff59}.pr-x[data-v-180ff921]{font-size:10px;line-height:1;padding:3px 8px;background:var(--bg-2, #1d2026);border:1px solid var(--line-bright, #3a3e47);color:var(--txt-1, #e6e8ee);cursor:pointer;border-radius:3px;transition:all .1s}.pr-x[data-v-180ff921]:hover{border-color:var(--accent, #6b8aff);color:#fff}.pr-x[data-v-180ff921]:hover{background:#4a2a2a;color:#ff8a8a;border-color:#4a2a2a}.pr-body[data-v-180ff921]{display:flex;flex:1;min-height:0;background:#14141a}.pr-keys[data-v-180ff921]{background:#0e0e13;border-right:1px solid #2a2a33;flex-shrink:0;display:flex;flex-direction:column}.pr-keys-top[data-v-180ff921]{border-bottom:1px solid #2a2a33;background:#1e1e26;flex-shrink:0}.pr-keys-scroll[data-v-180ff921]{position:relative;overflow:hidden}.pr-key[data-v-180ff921]{position:absolute;left:0;right:0;box-sizing:border-box;display:flex;align-items:center;padding-left:6px}.pr-key.white[data-v-180ff921]{background:#e9e9ee;border-bottom:1px solid #c2c2cc;color:#333}.pr-key.black[data-v-180ff921]{background:#2a2a32;border-bottom:1px solid #111;color:#999;z-index:2}.pr-key.c.white[data-v-180ff921]{background:#fdfdff}.pr-key.flash[data-v-180ff921]{background:#ffe46a!important;color:#1a1a1a!important;box-shadow:inset 0 0 0 2px #ff9d2e}.pr-key.live[data-v-180ff921]{background:#36e27a!important;color:#062814!important;box-shadow:inset 0 0 0 2px #1f9e54}.pr-keyn[data-v-180ff921]{font-size:8px;font-weight:700}.pr-right[data-v-180ff921]{flex:1;display:flex;flex-direction:column;min-width:0}.pr-ruler[data-v-180ff921]{background:#0f1117;border-bottom:1px solid #2a2a33;overflow:hidden;position:relative;flex-shrink:0}.pr-ruler-track[data-v-180ff921]{position:relative;height:100%}.pr-ruler-canvas[data-v-180ff921]{display:block}.pr-grid[data-v-180ff921]{position:relative;overflow:auto;background:#0f1117;flex:1;min-height:0}.pr-grid.grabbing[data-v-180ff921]{cursor:grabbing}.pr-grid-inner[data-v-180ff921]{position:relative}.pr-grid-canvas[data-v-180ff921]{position:absolute;top:0;left:0;pointer-events:none}.pr-seg-title[data-v-180ff921]{position:absolute;top:3px;height:20px;z-index:4;display:flex;align-items:center;gap:2px;pointer-events:none;padding:0 2px;border-radius:3px}.pr-seg-arrow[data-v-180ff921]{pointer-events:auto;width:16px;height:16px;flex-shrink:0;border:1px solid rgba(255,255,255,.35);border-radius:3px;background:#0000008c;color:#fff;font-size:9px;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all .1s;padding:0}.pr-seg-arrow[data-v-180ff921]:hover:not(:disabled){background:var(--accent, #6b8aff);border-color:var(--accent, #6b8aff)}.pr-seg-arrow[data-v-180ff921]:disabled{opacity:.25;cursor:default}.pr-seg-lbl[data-v-180ff921]{pointer-events:none;font-size:10px;font-weight:700;letter-spacing:.3px;background:#0a0a0e8c;padding:1px 4px;border-radius:3px;text-shadow:0 1px 2px rgba(0,0,0,.8);white-space:nowrap}.pr-note[data-v-180ff921]{position:absolute;border-radius:2px;border:1px solid rgba(255,255,255,.18);cursor:move;display:flex;align-items:center;justify-content:center;overflow:hidden}.pr-note[data-v-180ff921]:hover{border-color:#ffffffd9}.pr-note.selected[data-v-180ff921]{border-color:#fff;outline:1px solid #fff;outline-offset:-2px;z-index:3}.pr-note.playing[data-v-180ff921]{border-color:#ffe46a;outline:1px solid #ffe46a;outline-offset:-1px;z-index:4}.pr-note.flash[data-v-180ff921]{outline:2px solid #ffe46a;outline-offset:-1px;box-shadow:0 0 6px #ffba3c;z-index:5}.pr-note.live[data-v-180ff921]{outline:2px solid #36e27a;outline-offset:-1px;box-shadow:0 0 7px #36e27ab3;z-index:6}.pr-note-name[data-v-180ff921]{font-size:8px;color:#000;font-weight:700;pointer-events:none;line-height:1;text-shadow:0 0 2px rgba(255,255,255,.6)}.pr-note-resize[data-v-180ff921]{position:absolute;top:0;bottom:0;width:6px;cursor:ew-resize;background:#0000002e}.pr-note-resize-r[data-v-180ff921]{right:0;border-radius:0 2px 2px 0}.pr-note-resize-l[data-v-180ff921]{left:0;border-radius:2px 0 0 2px}.pr-note-resize[data-v-180ff921]:hover{background:#ffffff8c}.pr-playhead[data-v-180ff921]{position:absolute;top:0;bottom:0;width:2px;background:#ff5a5a;box-shadow:0 0 6px #ff5a5a;pointer-events:none;z-index:5}.pr-boxsel[data-v-180ff921]{position:absolute;border:1px dashed rgba(100,150,255,.7);background:#6496ff1a;pointer-events:none;z-index:6}.pr-vel[data-v-180ff921]{background:#181820;border-top:1px solid #2a2a33;overflow:hidden;flex-shrink:0}.pr-vel-grid[data-v-180ff921]{position:relative}.pr-vel-bar[data-v-180ff921]{position:absolute;border-radius:2px 2px 0 0;cursor:ns-resize;transition:background .08s}.pr-vel-bar[data-v-180ff921]:hover{filter:brightness(1.2)}.pr-vel-bar.selected[data-v-180ff921]{box-shadow:0 0 4px #ffffff4d}.pr-status[data-v-180ff921]{display:flex;align-items:center;gap:8px;font-size:10px;color:#8a8a95;padding:3px 10px;background:#1e1e26;border-top:1px solid #2a2a33;flex-shrink:0}.pr-status-r[data-v-180ff921]{margin-left:auto}.pr-draw-preview[data-v-180ff921]{position:absolute;background:#00d1b24d;border:1px solid rgba(0,209,178,.7);border-radius:3px;pointer-events:none;z-index:6;box-shadow:inset 0 0 0 1px #ffffff1f}.pr-draw-preview.over[data-v-180ff921]{background:#ff5a5a47;border-color:#ff5a5ab3}.pr-ctxmenu[data-v-180ff921]{position:fixed;z-index:9999;background:#23232b;border:1px solid #3a3a45;border-radius:6px;padding:4px;box-shadow:0 6px 20px #00000073;min-width:130px}.pr-ctxmenu-title[data-v-180ff921]{font-size:10px;color:#8a8a95;padding:4px 8px 6px;line-height:1.2}.pr-ctxmenu-item[data-v-180ff921]{display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%;text-align:left;background:transparent;border:0;color:#e6e6ec;font-size:12px;padding:6px 8px;border-radius:4px;cursor:pointer}.pr-ctx-kbd[data-v-180ff921]{font-size:10px;color:#9a9aa6;background:#2c2c36;border:1px solid #3a3a45;border-radius:3px;padding:1px 5px;line-height:1.4;white-space:nowrap}.pr-ctxmenu-item[data-v-180ff921]:hover{background:#2f2f3a}.pr-ctxmenu-item.on[data-v-180ff921]{background:#00d1b22e;color:#00d1b2}.pr-ctxmenu-item.disabled[data-v-180ff921]{opacity:.38;cursor:default}.pr-ctxmenu-item.disabled[data-v-180ff921]:hover{background:transparent}.pr-ctxmenu-item.danger[data-v-180ff921]{color:#ff6b6b}.pr-ctxmenu-item.danger[data-v-180ff921]:hover{background:#ff6b6b29}.pr-ctxmenu-sep[data-v-180ff921]{height:1px;background:#35353f;margin:4px 6px}.pr-ctxmenu-row[data-v-180ff921]{position:relative;display:flex;align-items:center;justify-content:space-between;padding:6px 8px;border-radius:4px;cursor:pointer;color:#e6e6ec;font-size:12px}.pr-ctxmenu-row[data-v-180ff921]:hover{background:#2f2f3a}.pr-ctxmenu-arrow[data-v-180ff921]{margin-left:14px;color:#8a8a95;font-size:10px}.pr-ctxmenu-sub[data-v-180ff921]{position:absolute;left:100%;top:-4px;margin-left:2px;background:#23232b;border:1px solid #3a3a45;border-radius:6px;padding:4px;box-shadow:0 6px 20px #00000073;min-width:120px}<style scoped> .pattern-editor{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;background:#17171d;color:#e6e6ec;overflow:hidden;font-family:-apple-system,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif}.editor-content{display:flex;flex:1;min-width:0;min-height:0;overflow:hidden;gap:10px;padding:0}.left-panel{width:300px;min-width:260px;display:flex;flex-direction:column;gap:10px;background:#1d1d24;border:1px solid #2a2a34;border-radius:2px;padding:12px;overflow:hidden}.frame-panel-card{flex:1;min-height:0;display:flex;flex-direction:column;gap:10px;overflow:hidden}.frame-controls-area{display:flex;flex-direction:column;gap:8px;flex-shrink:0}.frame-controls-divider{height:1px;background:#34343f;margin:2px 0}.frame-list{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:8px;-webkit-user-select:none;user-select:none;padding-right:4px}.frame-list::-webkit-scrollbar{width:8px}.frame-list::-webkit-scrollbar-track{background:transparent}.frame-list::-webkit-scrollbar-thumb{background:#2f2f3a;border-radius:4px}.frame-list::-webkit-scrollbar-thumb:hover{background:#3a3a48}.frame-navigation-controls{display:flex;flex-direction:row;gap:6px;flex-wrap:wrap;border-radius:2px}.frame-navigation-controls .frame-btn{flex:1}.frame-btn{padding:6px 8px;border:1px solid #2f2f3a;background:#23232b;color:#c9c9d1;border-radius:3px;cursor:pointer;font-size:10px;transition:all .15s;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;line-height:1}.frame-btn{font-weight:600}.frame-btn:hover:not(:disabled){background:#2f2f3a;border-color:var(--accent, #6b8aff);color:#fff}.frame-btn:disabled{opacity:.35;cursor:not-allowed}.frame-btn.insert-btn{color:#52d78b;border-color:#52d78b59}.frame-btn.insert-btn:hover:not(:disabled){background:#52d78b26;border-color:#52d78b}.frame-btn.delete-btn{color:#ff7070;border-color:#ff707059}.frame-btn.delete-btn:hover:not(:disabled){background:#ff707026;border-color:#ff7070}.frame-btn.copy-btn{color:#6ea8ff;border-color:#6ea8ff59}.frame-btn.copy-btn:hover:not(:disabled){background:#6ea8ff26;border-color:#6ea8ff}.frame-btn.clear-btn{color:#c79bf0;border-color:#c79bf059}.frame-btn.clear-btn:hover:not(:disabled){background:#c79bf026;border-color:#c79bf0}.frame-delay-field{display:flex;flex-direction:column;gap:6px}.field-label{font-size:12px;color:#9a9aa6;white-space:nowrap}.field-row{display:flex;align-items:center;gap:8px}.field-row .frame-btn{margin-left:auto}.frame-division-select{flex:1;padding:5px 8px;background:#1d1d24;border:1px solid #2f2f3a;border-radius:6px;color:#e6e6ec;font-size:12px}.frame-division-select:focus{outline:none;border-color:var(--accent, #6b8aff)}.frame-division-select option{background:#23232b;color:#e6e6ec}.frame-list-item{display:flex;align-items:center;gap:10px;padding:8px;background:#23232b;border:1px solid #2f2f3a;border-radius:10px;cursor:pointer;transition:all .15s}.frame-list-item:hover{background:#2a2a35;border-color:#3f3f4c}.frame-list-item.selected{border-color:#00d1b2;background:#00d1b214;box-shadow:0 0 0 1px #00d1b24d}.frame-list-item.multiSelected{border-color:#6ea8ff}.frame-list-item.dragover{border-color:#ffb020;border-style:dashed;background:#ffb0201f;box-shadow:0 0 0 1px #ffb02066}.batch-delay-input{flex:1;width:auto;padding:4px 6px;background:#1d1d24;border:1px solid #2f2f3a;border-radius:6px;color:#e6e6ec;font-size:12px}.batch-delay-input:focus{outline:none;border-color:var(--accent, #6b8aff)}.frame-list-item.selected.multiSelected{border-color:#00d1b2}.frame-index{font-size:12px;font-weight:700;color:#00d1b2;min-width:40px;text-align:center}.frame-thumbnail{width:72px;height:72px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:#17171d;border-radius:8px;border:1px solid #2f2f3a}.keyboard-thumbnail{--tcell: 5.2px;--tgap: 1px;width:60px;height:60px;display:flex;flex-direction:column;gap:var(--tgap);padding:0;box-sizing:border-box}.thumb-row{display:flex;align-items:center;gap:var(--tgap)}.thumb-cell{width:var(--tcell);height:var(--tcell);flex:none;display:flex;align-items:center;justify-content:center;box-sizing:border-box}.thumb-cell.corner{background:transparent}.thumb-circle{width:3.4px;height:3.4px;border-radius:50%;background:#d4d4d8;border:1px solid #a0a0b0;box-sizing:border-box}.thumb-circle.active{background:var(--accent, #6b8aff);border-color:var(--accent, #6b8aff);box-shadow:0 0 3px #6b8affcc}.thumb-square{width:100%;height:100%;background:#d4d4d8;border:1px solid #a0a0b0;border-radius:1px;box-sizing:border-box}.thumb-square.active{background:var(--accent, #6b8aff);border-color:var(--accent, #6b8aff);box-shadow:0 0 4px #6b8affd9}border-radius: 2px; background: #2f2f3a; border: 1px solid #4a4a56; box-sizing: border-box; } .thumbnail-grid-button.active{background:#6b7280;border-color:#4b5563;box-shadow:none}.frame-delay-container{display:flex;align-items:center;gap:3px}.frame-delay-input{width:48px;padding:4px 6px;border:1px solid #2f2f3a;border-radius:3px;background:#1d1d24;color:#e6e6ec;font-size:11px;text-align:center}.frame-delay-input:focus{outline:none;border-color:var(--accent, #6b8aff)}.frame-delay-input:disabled{opacity:.4}.frame-delay-input::-webkit-inner-spin-button,.frame-delay-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.delay-unit{color:#6a6a76;font-size:10px;white-space:nowrap}.empty-frame-list{text-align:center;color:#6a6a76;padding:48px 20px;font-size:13px}.midi-keyboard-container{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;background:#1d1d24;border:1px solid #2a2a34;border-radius:2px;padding:20px;overflow-y:auto}.button-matrix{--cell: 52px;--gap: 6px;display:flex;flex-direction:column;gap:var(--gap);align-items:center;padding-top:4px;transform:scale(.9);transform-origin:center top}.button-row{display:flex;align-items:center;gap:var(--gap)}.lp-cell{width:var(--cell);height:var(--cell);flex:none;display:flex;align-items:center;justify-content:center;box-sizing:border-box}.lp-cell.corner{background:transparent}.control-button{width:36px;height:36px;border-radius:50%;background:#d4d4d8;border:1px solid #a0a0b0;cursor:pointer;transition:all .15s;box-sizing:border-box;box-shadow:0 2px 4px #0006,inset 0 1.5px #ffffff59,inset 0 -1.5px #00000026}.control-button:hover{background:#c4c4cc;border-color:#8a8a9a;transform:translateY(-1px)}.control-button:active{transform:translateY(0) scale(.94)}.control-button.active{background:#6b7280;border-color:#4b5563;box-shadow:inset 0 1.5px #ffffff40,inset 0 -1.5px #00000040}.grid-button{width:100%;height:100%;background:#d4d4d8;border:1px solid #a0a0b0;border-radius:4px;cursor:pointer;transition:all .12s;box-sizing:border-box;box-shadow:0 2px 5px #00000073,inset 0 1.5px #ffffff59,inset 0 -1.5px #00000026}.grid-button:hover{background:#c4c4cc;border-color:#8a8a9a}.grid-button:active{transform:scale(.95)}.grid-button.active{background:#6b7280;border-color:#4b5563;box-shadow:inset 0 1.5px #ffffff40,inset 0 -1.5px #00000040}.top-row,.bottom-row{gap:var(--gap)}.side-button{width:36px;height:36px}.section-divider{width:80%;height:1px;margin:8px 0;background:linear-gradient(90deg,transparent,#3a3a45,transparent)}.custom-color-buttons{width:100%;max-width:520px;padding:12px;background:#23232b;border-radius:10px;display:flex;flex-direction:column;gap:10px}.color-controls-row{display:flex;align-items:center;gap:10px}.color-mode-switch{display:inline-flex;border:1px solid #3a3a4a;border-radius:6px;overflow:hidden}.color-mode-switch .mode-btn{background:#1c1c24;color:#b8b8c4;border:none;padding:5px 12px;font-size:12px;cursor:pointer;transition:all .15s}.color-mode-switch .mode-btn+.mode-btn{border-left:1px solid #3a3a4a}.color-mode-switch .mode-btn.active{background:#4a4aff;color:#fff}.color-mode-switch .mode-btn:hover:not(.active){background:#2a2a36}.preset-colors-section{flex:1;display:flex;align-items:center;gap:8px}.preset-controls-row{display:flex;align-items:center;gap:8px}.custom-dropdown{position:relative;flex:1;min-width:120px}.dropdown-toggle{padding:3px 8px;border:1px solid #2f2f3a;border-radius:3px;background:#1d1d24;color:#e6e6ec;font-size:10px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:6px;line-height:1}.dropdown-toggle:hover{border-color:var(--accent, #6b8aff)}.dropdown-arrow{font-size:10px;color:#9a9aa6}.dropdown-menu,.dropdown-menu.fixed-dropdown{position:fixed;margin-top:4px;border:1px solid #3a3a45;border-radius:8px;background:#23232b;box-shadow:0 8px 24px #0009;z-index:9999;max-height:154px;overflow-y:auto;padding:4px}.dropdown-menu.fixed-dropdown{min-width:320px}.dropdown-item{padding:8px 10px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;border-radius:6px;font-size:12px;color:#e6e6ec;transition:background .12s}.dropdown-item:hover{background:#2f2f3a}.dropdown-item.selected{background:#00d1b22e;color:#00d1b2}.color-preview{display:flex;gap:2px}.color-preview-swatch{width:13px;height:13px;border:1px solid #3a3a45;border-radius:3px}.preset-pick-btn{padding:5px 12px;border:1px solid #2f2f3a;border-radius:3px;background:#1d1d24;color:#e6e6ec;font-size:12px;cursor:pointer}.preset-pick-btn:hover{border-color:var(--accent, #6b8aff)}.preset-add-btn{padding:5px 12px;border:1px solid #2f8a6f;border-radius:3px;background:#00d1b21f;color:#00d1b2;font-size:12px;cursor:pointer;white-space:nowrap}.preset-add-btn:hover{border-color:#00d1b2;background:#00d1b238}.preset-picker-modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100000;display:flex;align-items:center;justify-content:center}.preset-picker-popup{position:relative;width:min(900px,92vw);max-height:84vh;background:#1d1d24;border:1px solid #2a2a34;border-radius:3px;box-shadow:0 8px 28px #00000080;display:flex;flex-direction:column;overflow:hidden}.preset-picker-header{display:flex;align-items:center;justify-content:space-between;height:28px;padding:0 6px 0 10px;background:#23232b;border-bottom:1px solid #2a2a34;flex-shrink:0}.preset-tb-left{display:flex;align-items:center;gap:8px;min-width:0}.preset-tb-ic{font-size:11px;color:var(--accent, #6b8aff)}.preset-picker-title{font-size:11px;color:#e6e6ec;font-weight:600;letter-spacing:.3px}.preset-picker-close{width:20px;height:20px;border-radius:3px;display:inline-flex;align-items:center;justify-content:center;background:#23232b;border:1px solid #2f2f3a;color:#9a9aa6;font-size:12px;cursor:pointer;line-height:1;transition:all .1s}.preset-picker-close:hover{color:#fff;border-color:var(--err, #ff6b6b);background:var(--err, #ff6b6b)}.preset-picker-scroll{flex:1;overflow-y:auto;padding:4px 0 10px}.preset-zone{padding:6px 16px 4px}.preset-zone+.preset-zone{border-top:1px solid #2a2a34;margin-top:6px}.preset-zone-title{font-size:12px;color:#9a9aa6;font-weight:600;letter-spacing:.5px;margin:6px 0 8px}.preset-picker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.preset-card{background:#1d1d24;border:1px solid #2f2f3a;border-radius:3px;padding:8px 10px;cursor:pointer;transition:border-color .12s,background .12s}.preset-card:hover{border-color:var(--accent, #6b8aff)}.preset-card.selected{border-color:var(--accent, #6b8aff);background:#6b8aff1f}.preset-card-head{display:flex;justify-content:space-between;margin-bottom:6px}.preset-card-idx{font-size:11px;color:#9a9aa6;font-weight:600}.preset-card-swatches{display:flex;gap:3px;flex-wrap:wrap;margin-bottom:6px}.preset-card-sw{width:18px;height:18px;border-radius:3px;border:1px solid rgba(255,255,255,.16)}.preset-btn{padding:3px 8px;border:1px solid #2f2f3a;background:#1d1d24;color:#e6e6ec;border-radius:3px;cursor:pointer;font-size:10px;white-space:nowrap;line-height:1}.preset-btn:hover{background:#2f2f3a}.preset-add-btn{color:#52d78b;border-color:#52d78b59}.preset-add-btn:hover{background:#52d78b26}.preset-delete-btn{color:#ff7070;border-color:#ff707059}.preset-delete-btn:hover{background:#ff707026}.ccb-open-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:9px 12px;border-radius:9px;border:1px solid #383844;background:#1c1c24;color:#d2d2dd;font-size:13px;font-weight:600;cursor:pointer;transition:all .15s;margin-bottom:12px}.ccb-open-btn:hover{border-color:#6b8aff;color:#fff}.ccb-open-btn.on{background:linear-gradient(135deg,#00d1b2,#16c79a);border-color:transparent;color:#06121a}.ccb-open-dot{width:8px;height:8px;border-radius:50%;background:#55555f;transition:all .15s}.ccb-open-btn.on .ccb-open-dot{background:#06121a;box-shadow:0 0 6px #06121a99}.ccb-open-strip{display:flex;flex-wrap:wrap;gap:2px;margin-top:-6px;margin-bottom:12px;padding:0 2px}.ccb-open-chip{width:18px;height:18px;border-radius:3px;flex:0 0 auto}.ccb-floating{position:fixed;z-index:1000;width:720px;max-width:calc(100vw - 48px);max-height:calc(100vh - 48px);overflow-y:auto;filter:drop-shadow(0 8px 28px rgba(0,0,0,.5));animation:ccb-pop .16s ease-out}.ccb-floating.drag{transition:none!important;cursor:grabbing}.ccb-floating.drag *{cursor:grabbing!important;-webkit-user-select:none!important;user-select:none!important}@keyframes ccb-pop{0%{opacity:0}to{opacity:1}}.ccb-panel{background:#1d1d24;border:1px solid #2a2a34;border-radius:3px;padding:0;overflow:hidden}.ccb-titlebar{display:flex;align-items:center;justify-content:space-between;height:28px;padding:0 6px 0 10px;background:#23232b;border-bottom:1px solid #2a2a34;cursor:move;-webkit-user-select:none;user-select:none;flex-shrink:0}.ccb-titlebar:active{cursor:grabbing}.ccb-tb-left{display:flex;align-items:center;gap:8px;min-width:0}.ccb-tb-ic{font-size:13px;color:var(--accent, #6b8aff)}.ccb-tb-title{font-size:13px;font-weight:600;color:#e6e6ec;letter-spacing:.3px}.ccb-tb-sep{color:#5a5a66}.ccb-tb-cur{font-size:13px;font-weight:500;color:#9a9aa6}.ccb-tb-cur{color:var(--accent, #6b8aff);font-weight:600}.ccb-tb-right{display:flex;align-items:center;gap:4px}.ccb-close{width:20px;height:20px;border-radius:3px;display:inline-flex;align-items:center;justify-content:center;font-size:12px;color:#9a9aa6;background:#23232b;border:1px solid #2f2f3a;cursor:pointer;transition:all .1s}.ccb-close:hover{color:#fff;border-color:var(--err, #ff6b6b);background:var(--err, #ff6b6b)}.ccb-toolbar{display:flex;align-items:center;gap:10px;padding:8px 10px;background:#1d1d24;border-bottom:1px solid #2a2a34;flex-wrap:wrap}.ccb-segment{display:inline-flex;background:#17171d;border:1px solid #2f2f3a;border-radius:3px;padding:2px;gap:2px}.ccb-seg-btn{padding:5px 16px;border:none;border-radius:2px;background:transparent;color:#9a9aa6;font-size:13px;font-weight:600;cursor:pointer;transition:all .1s}.ccb-seg-btn:hover{color:#e6e6ec}.ccb-seg-btn.on{background:var(--accent, #6b8aff);color:#111;font-weight:700}.ccb-actions{margin-left:auto;display:flex;gap:6px}.ccb-btn{display:inline-flex;align-items:center;gap:3px;padding:5px 12px;font-size:13px;font-weight:600;color:#e6e6ec;background:#23232b;border:1px solid #2f2f3a;border-radius:3px;cursor:pointer;transition:all .1s;white-space:nowrap;line-height:1}.ccb-btn:hover{border-color:var(--accent, #6b8aff);color:#fff}.ccb-btn:active{transform:translateY(1px)}.ccb-btn-accent{color:var(--accent, #6b8aff);border-color:#6b8aff66}.ccb-btn-accent:hover{background:#6b8aff1f;border-color:var(--accent, #6b8aff)}.ccb-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:8px 7px;padding:10px}.ccb-card{display:flex;flex-direction:column;align-items:center;gap:4px}.ccb-swatch{position:relative;width:100%;box-sizing:border-box;aspect-ratio:1 / 1;max-width:32px;border-radius:3px;border:1px solid #2f2f3a;padding:0;cursor:pointer;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff0f,0 2px 6px #0006;transition:transform .12s,box-shadow .12s}.ccb-swatch:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000080,0 0 0 1px var(--accent, #6b8aff);border-color:var(--accent, #6b8aff)}.ccb-idx{position:absolute;top:2px;left:3px;font-size:9px;font-weight:700;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.85);pointer-events:none}.ccb-vel{position:absolute;bottom:2px;right:3px;font-size:10px;font-weight:700;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.9);pointer-events:none}.ccb-plus{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:300;color:#5a5a66;pointer-events:none}.ccb-card.empty .ccb-swatch{background:repeating-linear-gradient(45deg,#1b1b22,#1b1b22 6px,#23232c 6px,#23232c 12px)!important;border:1px dashed #3c3c49;box-shadow:none}.ccb-card.empty .ccb-plus{color:#6a6a76}.ccb-meta{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;width:100%}.ccb-dur{width:100%;max-width:36px;box-sizing:border-box;height:20px;text-align:center;font-size:11px;font-weight:500;color:#e6e6ec;background:#17171d;border:1px solid #2f2f3a;border-radius:3px;padding:0 3px}.ccb-dur:focus{outline:none;border-color:var(--accent, #6b8aff)}.ccb-dur:disabled{opacity:.35}.ccb-dur::-webkit-inner-spin-button,.ccb-dur::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.ccb-ms{font-size:9px;color:#6a6a76}.ccb-eq{padding:10px;border-top:1px solid #2a2a34;background:#1a1a21}.ccb-eq-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:8px}.ccb-eq-title{font-size:13px;font-weight:600;color:#e6e6ec;letter-spacing:.3px}.ccb-eq-presets{display:flex;align-items:center;gap:5px}.ccb-eq-preset{font-size:11px;line-height:1;color:#c7c7d1;background:#23232c;border:1px solid #34343f;border-radius:3px;padding:4px 8px;cursor:pointer;transition:background .12s,border-color .12s,color .12s}.ccb-eq-preset:hover{background:#2c2c38;border-color:var(--accent, #6b8aff);color:#fff}.ccb-eq-preset:active{transform:translateY(1px)}.ccb-eq-hint{font-size:11px;color:#8a8a96;margin-bottom:6px}.ccb-eq-curves{display:flex;align-items:center;gap:5px;flex-wrap:wrap;margin-bottom:6px}.ccb-eq-curves-label{font-size:11px;color:#8a8a96;margin-right:2px}.ccb-eq-preset.curve{background:#202a3a;border-color:#2f3f5a;color:#aecbff}.ccb-eq-preset.curve:hover{background:#28344a;border-color:var(--accent, #6b8aff);color:#fff}.ccb-eq-body{display:flex;align-items:stretch;gap:4px}.ccb-eq-axis{flex:0 0 46px;width:46px;height:150px;display:block;-webkit-user-select:none;user-select:none}.ccb-eq-tick{stroke:#3a3a45;stroke-width:1}.ccb-eq-tick-label{fill:#8a8a96;font-size:9px;font-family:inherit}.ccb-eq-svg{flex:1 1 auto;width:auto;min-width:0;height:150px;display:block;-webkit-user-select:none;user-select:none;cursor:default;background:#14141a;border:1px solid #2f2f3a;border-radius:3px;touch-action:none}.ccb-eq-svg.dragging{cursor:ns-resize}.ccb-eq-base{stroke:#4a4a55;stroke-width:1;stroke-dasharray:4 4}.ccb-eq-line{fill:none;stroke:var(--accent, #6b8aff);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.ccb-eq-track{stroke:#26262e;stroke-width:1;cursor:ns-resize}.ccb-eq-dot{stroke:#0d0d12;stroke-width:1.5;cursor:ns-resize;transition:r .08s}.ccb-eq-dot.active{stroke:#fff;filter:drop-shadow(0 0 4px rgba(107,138,255,.8))}.ccb-eq-scale{display:flex;justify-content:center;margin-top:4px;font-size:10px;color:#8a8a96}.fc-open-row{display:flex;align-items:center;gap:8px;margin-top:-6px;margin-bottom:12px;padding:0 2px}.fc-open-hint{font-size:10px;color:#6a6a76}.fc-floating{position:fixed;z-index:10001;width:720px;max-width:calc(100vw - 48px);max-height:calc(100vh - 48px);overflow-y:auto;background:#1d1d24;border:1px solid #2a2a34;border-radius:3px;filter:drop-shadow(0 8px 28px rgba(0,0,0,.5));animation:ccb-pop .16s ease-out}.fc-floating-bar{display:flex;align-items:center;gap:8px;height:28px;padding:0 6px 0 10px;background:#23232b;border-bottom:1px solid #2a2a34;cursor:move;-webkit-user-select:none;user-select:none}.fc-floating-ic{font-size:13px;color:var(--accent, #6b8aff)}.fc-floating-title{font-size:13px;font-weight:600;color:#e6e6ec;letter-spacing:.3px;flex:1}.fc-floating-close{width:20px;height:20px;border-radius:3px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #34344a;color:#9a9aa6;font-size:13px;cursor:pointer;line-height:1;transition:all .12s}.fc-floating-close:hover{color:#fff;border-color:#ff6b6b;background:#ff6b6b}.fc-floating-body{padding:12px}.fc-floating-actions{display:flex;align-items:center;gap:10px;margin-top:10px}.fc-presets{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.fc-preset{font-size:11px;font-weight:600;color:#c2c2cf;padding:4px 11px;background:#23232e;border:1px solid #34344a;border-radius:3px;cursor:pointer;transition:all .12s}.fc-preset:hover{color:#fff;background:#2c2c3a;border-color:#5b6bff;box-shadow:0 0 0 1px #5b6bff40}.fc-preset:active{transform:translateY(1px)}.fc-head{font-size:12px;font-weight:600;color:#c7c7d1;margin-bottom:8px}.fc-grid{stroke:#ffffff0d;stroke-width:1}.fc-base{stroke:#6b8aff73;stroke-width:1;stroke-dasharray:4 4}.fc-area{pointer-events:none}.fc-line{stroke-width:3;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 4px rgba(107,138,255,.5));pointer-events:none}.control-panel{width:300px;min-width:260px;display:flex;flex-direction:column;gap:10px;background:#1d1d24;border:1px solid #2a2a34;border-radius:2px;padding:14px;overflow-y:auto}.control-panel::-webkit-scrollbar{width:8px}.control-panel::-webkit-scrollbar-track{background:transparent}.control-panel::-webkit-scrollbar-thumb{background:#2f2f3a;border-radius:4px}.control-group{background:#23232b;border-radius:10px;padding:12px}.control-group h3{margin:0 0 10px;font-size:11px;font-weight:700;color:#9a9aa6;text-transform:uppercase;letter-spacing:.8px}.rotate-controls{display:flex;flex-direction:column;gap:10px}.rotate-title-row{display:flex;align-items:center;justify-content:space-between}.rotate-section-label{font-size:11px;color:#9a9aa6;text-transform:uppercase;letter-spacing:.8px}.rotate-copy-toggle{display:inline-flex;align-items:center;gap:4px;padding:4px 9px;background:#1d1d24;border:1px solid #2f2f3a;border-radius:7px;color:#9a9aa6;font-size:11px;cursor:pointer;transition:all .15s}.rotate-copy-toggle:hover{border-color:#00d1b2;color:#e6e6ec}.rotate-copy-toggle.active{background:#00d1b226;border-color:#00d1b2;color:#00d1b2}.rotate-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.rotate-icon-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:9px 4px;background:#1d1d24;border:1px solid #2f2f3a;border-radius:9px;color:#c8c8d2;cursor:pointer;transition:all .15s}.rotate-icon-btn:hover{background:#25252e;border-color:#00d1b2;color:#00d1b2;transform:translateY(-1px)}.rotate-icon-btn:active{transform:scale(.95)}.rotate-icon-deg{font-size:10px;font-weight:600;letter-spacing:.3px}.frame-setting-card{background:#23232b;border:1px solid #2a2a34;border-radius:2px;padding:12px;display:flex;flex-direction:column;gap:10px}.frame-setting-card.frame-navigation-controls{background:transparent;border:none;border-radius:0;padding:0;flex-direction:row;flex-wrap:wrap;align-items:stretch}.frame-setting-card .setting-title-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.transform-sub-label{font-size:10px;color:#6e6e7a;text-transform:uppercase;letter-spacing:.6px;margin-top:2px}.loop-card{flex-shrink:0}.loop-card .setting-title-row{margin-bottom:8px;display:flex;align-items:center;justify-content:space-between}.loop-sub{font-size:10px;color:#5a5a66}.loop-rows{display:flex;flex-direction:column;gap:7px}.loop-line{display:flex;align-items:center;gap:10px}.loop-name{flex:0 0 56px;font-size:11px;color:#9a9aa6}.loop-control{flex:1;display:flex;align-items:center;gap:8px;min-width:0}.loop-input,.loop-select{flex:1;min-width:0;background:#1a1a22;border:1px solid #34343f;color:#e6e6ec;border-radius:6px;padding:5px 8px;font-size:11px;outline:none}.loop-select{background:#1a1a22;cursor:pointer}.loop-input:focus,.loop-select:focus{border-color:var(--accent, #6b8aff)}.loop-tip{flex:0 0 auto;font-size:10px;color:#5a5a66;white-space:nowrap}.loop-switch{position:relative;display:inline-block;width:34px;height:18px;flex:0 0 auto;margin-left:auto}.loop-switch input{opacity:0;width:0;height:0}.loop-switch-slider{position:absolute;top:0;right:0;bottom:0;left:0;background:#34343f;border-radius:4px;transition:background .2s;cursor:pointer}.loop-switch-slider:before{content:"";position:absolute;left:2px;top:2px;width:14px;height:14px;background:#c9c9d1;border-radius:3px;transition:transform .2s,background .2s}.loop-switch input:checked+.loop-switch-slider{background:var(--accent, #6b8aff)}.loop-switch input:checked+.loop-switch-slider:before{transform:translate(16px);background:#fff}.loop-line.loop-disabled{opacity:.45;pointer-events:none}.flip-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.shift-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.shift-grid .rotate-icon-btn{padding:8px 2px}.undo-redo-row{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.undo-redo-card .frame-btn{width:100%}.rotate-hint{font-size:11px;color:#ffb020;margin-top:2px}.playback-controls{display:flex;gap:8px}.playback-btn{flex:1;padding:3px 8px;background:#2f2f3a;border:1px solid #3a3a45;color:#e6e6ec;border-radius:3px;font-size:10px;cursor:pointer;transition:all .15s;line-height:1}.playback-btn:hover{background:#3a3a48;border-color:#4a4a56}.playback-btn.primary{background:var(--accent, #6b8aff);border-color:var(--accent, #6b8aff);color:#111;font-weight:600}.playback-btn.primary:hover{background:#7e9bff;border-color:#7e9bff}.midi-checkbox{display:flex;align-items:center;gap:8px;font-size:12px;color:#c9c9d1;margin-top:8px}.midi-checkbox input[type=checkbox]{accent-color:#00d1b2;width:15px;height:15px}.bpm-slider{width:100%;accent-color:#00d1b2}.bpm-value{font-size:12px;color:#00d1b2;font-weight:700}.all-frames-container{display:flex;flex-direction:column;gap:6px}.all-frames-label{font-size:11px;font-weight:700;color:#9a9aa6;text-transform:uppercase;letter-spacing:.8px}.all-frames-textarea{width:100%;min-height:140px;background:#17171d;border:1px solid #2f2f3a;border-radius:8px;color:#b8e6dc;font-size:11px;font-family:Consolas,Menlo,monospace;line-height:1.5;padding:10px;resize:vertical}.all-frames-textarea:focus{outline:none;border-color:#00d1b2}.all-frames-textarea::placeholder{color:#4a4a56}.color-palette-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;justify-content:center;align-items:center;z-index:2000;animation:cp-fade .16s ease}@keyframes cp-fade{0%{opacity:0}to{opacity:1}}.color-palette-popup{background:var(--bg-1, #202026);border:1px solid var(--line-bright, #3a3a44);border-radius:16px;padding:0;box-shadow:0 24px 70px #0009;max-width:620px;width:92%;max-height:84vh;overflow:hidden;display:flex;flex-direction:column;animation:cp-pop .18s cubic-bezier(.2,.8,.3,1)}@keyframes cp-pop{0%{transform:translateY(12px) scale(.97);opacity:0}to{transform:none;opacity:1}}.popup-header{display:flex;justify-content:space-between;align-items:center;padding:16px 18px;border-bottom:1px solid var(--line, #2e2e36);background:linear-gradient(180deg,rgba(255,255,255,.03),transparent)}.popup-title{display:flex;align-items:center;gap:8px}.popup-title-ic{color:var(--accent, #6b8aff);font-size:16px;line-height:1}.popup-header h3{margin:0;font-size:15px;font-weight:700;color:var(--txt-1, #f0f0f4)}.close-btn{background:none;border:none;font-size:22px;cursor:pointer;color:#8a8a96;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .15s}.close-btn:hover{background:#ffffff0f;color:#fff}.popup-body{display:flex;gap:18px;padding:18px;overflow-y:auto}.palette-section{flex:1;min-width:0}.section-label{font-size:11px;font-weight:700;color:#8a8a96;text-transform:uppercase;letter-spacing:.8px;margin-bottom:10px}.color-palette{display:grid;grid-template-columns:repeat(12,1fr);gap:6px}.color-option{position:relative;aspect-ratio:1;border-radius:9px;cursor:pointer;border:2px solid rgba(255,255,255,.08);transition:transform .12s,box-shadow .12s}.color-option:hover{transform:scale(1.07);box-shadow:0 4px 12px #00000073}.color-option.selected{border-color:var(--accent, #6b8aff);box-shadow:0 0 0 3px #6b8aff59;transform:scale(1.05)}.color-option:after{content:attr(data-velocity);position:absolute;top:-8px;right:-8px;background:#14141a;color:var(--accent, #6b8aff);font-size:9px;font-weight:700;padding:1px 4px;border-radius:8px;border:1px solid var(--line-bright, #3a3a44);opacity:0;transition:opacity .15s;pointer-events:none}.color-option:hover:after{opacity:1}@media (max-width: 560px){.popup-body{flex-direction:column}}@media (max-width: 1100px){.left-panel,.control-panel{width:240px;min-width:220px}.grid-button{width:42px;height:42px}}.le-title{display:flex;align-items:center;gap:10px;padding:10px 12px;background:linear-gradient(135deg,#3a5bd6,#5b7bff);border:1px solid #6b8aff;border-radius:10px;box-shadow:0 2px 10px #5b7bff59,inset 0 1px #ffffff2e}.le-edit-ic{flex:none;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:7px;background:#ffffff2e;color:#fff}.le-edit-body{display:flex;flex-direction:column;gap:1px;min-width:0}.le-edit-label{font-size:9px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:#ffffffbf;line-height:1}.le-fname-tx{font-size:13px;font-weight:700;color:#fff;letter-spacing:.3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-shadow:0 1px 2px rgba(0,0,0,.25)}.file-panel{width:300px;min-width:260px;flex-shrink:0;align-self:stretch;height:100%;min-height:0;display:flex;flex-direction:column;gap:12px;background:#1d1d24;border:1px solid #2a2a34;border-radius:2px;padding:12px;overflow:hidden}.file-head{display:flex;align-items:center;justify-content:space-between;padding:2px 2px 9px;border-bottom:1px solid #2c2c38}.file-title{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:700;letter-spacing:1px;color:#aeb0bd;text-transform:uppercase}.file-title-ic{color:var(--accent, #6b8aff)}.file-refresh,.file-new{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;background:#23232d;border:1px solid #33333f;color:#aeb0bd;cursor:pointer;border-radius:6px;transition:all .15s}.file-new{font-size:15px;color:#6ea8ff;margin-right:4px}.file-refresh svg{transition:transform .4s ease}.file-refresh:hover,.file-new:hover{color:#fff;background:#2f2f3a;border-color:#4a4a5a;box-shadow:0 0 0 1px #ffffff0f}.file-refresh:hover svg{transform:rotate(180deg)}.file-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:28px 8px;font-size:11px;color:#62626e;text-align:center}.file-empty svg{color:#3a3a46}.file-list{flex:1;overflow-y:auto;padding:2px;display:flex;flex-direction:column;gap:8px}.file-list::-webkit-scrollbar{width:7px}.file-list::-webkit-scrollbar-track{background:transparent}.file-list::-webkit-scrollbar-thumb{background:#2f2f3a;border-radius:4px}.file-list::-webkit-scrollbar-thumb:hover{background:#3c3c48}.file-item{position:relative;display:flex;align-items:center;gap:9px;text-align:left;padding:9px 10px;font-size:12px;color:#c9c9d1;background:#23232c;border:1px solid #2c2c36;border-radius:9px;cursor:pointer;transition:background .14s,border-color .14s,box-shadow .14s,transform .08s}.file-item:before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:3px;border-radius:3px;background:transparent;transition:background .14s}.file-item:hover{color:#fff;background:#2a2a35;border-color:#3a3a48;box-shadow:0 2px 8px #00000040;transform:translateY(-1px)}.file-item:hover:before{background:#ffffff4d}.file-item.on{color:#fff;background:linear-gradient(135deg,#6b8aff2e,#6b8aff14);border-color:var(--accent, #6b8aff);box-shadow:0 0 0 1px #6b8aff40,0 2px 10px #6b8aff2e}.file-item.on:before{background:var(--accent, #6b8aff)}.file-item.preview{color:#fff;background:linear-gradient(135deg,#2fd96a2e,#2fd96a12);border-color:#2fd96a;box-shadow:0 0 0 1px #2fd96a40}.file-item.preview:before{background:#2fd96a}.file-ic{flex:none;display:inline-flex;align-items:center;justify-content:center;color:#7f8aa8;transition:color .14s}.file-item.on .file-ic{color:var(--accent, #6b8aff)}.file-item.preview .file-ic{color:#2fd96a}.file-info{flex:1;min-width:0;display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:6px}.file-name{flex:1;min-width:0;font-size:12px;font-weight:600;color:inherit;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.3}.file-bind{display:inline-block;align-self:flex-start;margin-top:1px;padding:1px 7px;border-radius:8px;font-size:10px;font-weight:600;letter-spacing:.2px;color:#b9f3e8;background:#00d1b22e;border:1px solid rgba(0,209,178,.35)}.file-meta{display:inline-flex;gap:5px;align-items:center;font-size:10px;color:#6a6a76;line-height:1.2}.file-meta .meta-frames{color:#6ea8ff;font-weight:600}.file-meta .meta-dot{opacity:.5}.file-meta .meta-dur{color:#2fd96a;font-weight:600}.file-meta .meta-size{color:#9a9aa6}.file-edit,.file-play{flex:none;width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;line-height:1;color:#9a9aa6;background:#1c1c24;border:1px solid #33333f;border-radius:6px;cursor:pointer;opacity:0;transform:scale(.9);transition:opacity .14s,transform .14s,color .14s,background .14s,border-color .14s}.file-item:hover .file-edit,.file-item:hover .file-play{opacity:1;transform:scale(1)}.file-edit:hover{color:#fff;background:#6b8aff;border-color:#6b8aff}.file-play:hover{color:#fff;background:var(--accent, #6b8aff);border-color:var(--accent, #6b8aff)}.cm-menu-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:3000}.cm-menu{position:fixed;z-index:3001;min-width:200px;background:#23232b;border:1px solid #3a3a45;border-radius:6px;padding:6px;box-shadow:0 12px 32px #0009;transform:translate(4px,4px);white-space:nowrap}.cm-title{font-size:10px;color:#8a8a96;padding:6px 8px 4px;border-bottom:1px solid #2f2f3a;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cm-item{position:relative;display:flex;align-items:center;gap:8px;text-align:left;padding:6px 8px;border-radius:4px;background:none;border:none;cursor:default;white-space:nowrap;font-size:11px;color:#e6e6ec;width:100%}.cm-item:hover,.cm-item.open{background:#2f2f3a;color:#fff}.cm-item:disabled{opacity:.4;cursor:not-allowed}.cm-arrow{margin-left:auto;font-size:9px;opacity:.6}.cm-badge{min-width:15px;height:15px;line-height:15px;padding:0 4px;border-radius:8px;background:#00d1b24d;font-size:9px;text-align:center;color:#b9f3e8}.cm-sub{position:absolute;left:100%;top:-6px;margin-left:2px;background:#23232b;border:1px solid #3a3a45;border-radius:6px;padding:6px;z-index:3002;box-shadow:0 6px 20px #0000008c;min-width:120px}.cm-pads{padding:8px}.cm-pads-title{font-size:9px;color:#ffffff80;margin-bottom:6px;text-align:center}.cm-grid8{display:grid;grid-template-columns:repeat(8,39px);gap:5px}.cm-pad{width:39px;height:39px;line-height:39px;text-align:center;font-size:11px;border-radius:4px;cursor:pointer;background:#f2f2f2;color:#555;border:1px solid rgba(0,0,0,.25);transition:transform .08s,box-shadow .08s}.cm-pad:hover{transform:scale(1.12);box-shadow:0 0 0 2px #6b8affcc;z-index:2}.cm-pad.bound{background:#6b7280;color:#ffffffd9;border-color:#ffffff2e;cursor:pointer}.cm-pad.bound:hover{transform:scale(1.12);box-shadow:0 0 0 2px #6b8affcc;z-index:2}.cm-pad.mine{background:#6b8aff!important;border-color:#fff!important;color:#fff!important;cursor:pointer}.cm-pad.mine:hover{transform:scale(1.12);box-shadow:0 0 0 2px #ffffffe6}.cm-pad-note{position:relative;z-index:1}.cm-pads-legend{display:flex;gap:12px;justify-content:center;margin-top:7px;font-size:9px;color:#ffffff80}.cm-pads-legend i{display:inline-block;width:9px;height:9px;border-radius:2px;margin-right:4px;vertical-align:-1px}.cm-pads-legend i.white{background:#f2f2f2;border:1px solid rgba(0,0,0,.3)}.cm-pads-legend i.bound{background:#6b7280}.cm-pads-legend i.mine{background:#6b8aff}</style> .lighting-editor[data-v-c0882cff]{display:flex;flex-direction:column;height:100%;background:#17171d}.le-toolbar[data-v-c0882cff]{display:flex;align-items:center;justify-content:flex-start;gap:10px;padding:4px 10px;background:#1d1d24;border-bottom:1px solid #2a2a34;flex-shrink:0}.le-actions[data-v-c0882cff],.le-group[data-v-c0882cff]{display:flex;align-items:center;gap:6px}.le-sep[data-v-c0882cff]{width:1px;height:18px;background:#2a2a34;margin:0 2px}.le-btn[data-v-c0882cff]{display:inline-flex;align-items:center;gap:3px;padding:3px 8px;font-size:10px;color:#e6e6ec;background:#23232b;border:1px solid #2f2f3a;border-radius:3px;cursor:pointer;transition:all .1s;white-space:nowrap;line-height:1}.le-btn svg[data-v-c0882cff]{width:12px;height:12px;flex:none;color:var(--accent, #6b8aff)}.le-btn[data-v-c0882cff]:hover:not(:disabled){border-color:var(--accent, #6b8aff);color:#fff}.le-btn[data-v-c0882cff]:active{transform:translateY(1px)}.le-btn[data-v-c0882cff]:disabled{opacity:.4;cursor:not-allowed}.le-btn.play[data-v-c0882cff]{color:var(--accent, #6b8aff);border-color:#6b8aff66}.le-btn.play[data-v-c0882cff]:hover:not(:disabled){background:#6b8aff1f;border-color:var(--accent, #6b8aff)}.le-btn.play.playing[data-v-c0882cff]{background:var(--accent, #6b8aff);color:#111;border-color:var(--accent, #6b8aff)}.le-btn.danger[data-v-c0882cff]{color:#ff6b6b;border-color:#ff6b6b59}.le-btn.danger[data-v-c0882cff]:hover:not(:disabled){background:#ff6b6b1f;border-color:#ff6b6b;color:#ff6b6b}.le-btn.toggle[data-v-c0882cff]{gap:6px}.le-dot[data-v-c0882cff]{width:8px;height:8px;border-radius:50%;background:#4a4a56;transition:all .2s}.le-dot.on[data-v-c0882cff]{background:var(--accent, #6b8aff);box-shadow:0 0 8px #6b8affcc}.le-btn.toggle.on[data-v-c0882cff]{color:#fff;border-color:var(--accent, #6b8aff);background:#6b8aff26}.le-hint[data-v-c0882cff]{padding:6px 14px;font-size:11px;color:#f0b65e;background:#f0b65e14;border-bottom:1px solid rgba(240,182,94,.2);flex-shrink:0}.le-body[data-v-c0882cff]{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:row;gap:8px;padding:8px;align-items:stretch}.le-body[data-v-c0882cff] .pattern-editor{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;background:#17171d;color:#e6e6ec;overflow:hidden}.np-mask[data-v-df3b325d]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:9998}.np-card[data-v-df3b325d]{width:400px;max-width:calc(100vw - 32px);background:#14161c;border:1px solid #23262f;border-radius:12px;overflow:hidden;box-shadow:0 20px 60px #00000080}.np-head[data-v-df3b325d]{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid #23262f}.np-title[data-v-df3b325d]{font-size:15px;font-weight:600;color:#e6e6e6}.np-x[data-v-df3b325d]{background:none;border:none;color:#8a8f9a;font-size:20px;line-height:1;cursor:pointer;padding:0 4px}.np-x[data-v-df3b325d]:hover{color:#fff}.np-body[data-v-df3b325d]{padding:18px}.np-msg[data-v-df3b325d]{font-size:13px;color:#c7ccd6;line-height:1.6;word-break:break-word}.np-field[data-v-df3b325d]{margin-top:12px}.np-input[data-v-df3b325d]{width:100%;box-sizing:border-box;background:#181b22;border:1px solid #2a2e38;color:#e6e6e6;padding:8px 10px;border-radius:7px;font-size:13px;outline:none;transition:border-color .15s,box-shadow .15s}.np-input[data-v-df3b325d]:focus{border-color:#2f6df6;box-shadow:0 0 0 2px #2f6df633}.np-input[data-v-df3b325d]::placeholder{color:#5b606b}.np-foot[data-v-df3b325d]{display:flex;justify-content:flex-end;gap:10px;padding:14px 18px;border-top:1px solid #23262f;background:#121419}.np-btn[data-v-df3b325d]{padding:8px 18px;border-radius:7px;cursor:pointer;font-size:13px;border:1px solid transparent;transition:opacity .15s,background .15s}.np-btn.ghost[data-v-df3b325d]{background:#23262f;color:#e6e6e6;border-color:#33384599}.np-btn.ghost[data-v-df3b325d]:hover{background:#2c303a}.np-btn.primary[data-v-df3b325d]{background:#2f6df6;color:#fff;border-color:#2f6df6}.np-btn.primary[data-v-df3b325d]:hover{background:#3f7bf7}.modal-fade-enter-active[data-v-df3b325d],.modal-fade-leave-active[data-v-df3b325d]{transition:opacity .2s}.modal-fade-enter-from[data-v-df3b325d],.modal-fade-leave-to[data-v-df3b325d]{opacity:0}.app-toast{position:fixed;right:18px;bottom:18px;z-index:10000;max-width:320px;padding:12px 16px;background:#1f2630;border:1px solid #2f6df6;border-left:4px solid #2f6df6;border-radius:8px;color:#e6e6e6;font-size:12px;line-height:1.6;white-space:pre-line;box-shadow:0 10px 30px #00000080}.toast-fade-enter-active,.toast-fade-leave-active{transition:opacity .3s,transform .3s}.toast-fade-enter-from,.toast-fade-leave-to{opacity:0;transform:translateY(12px)}.np-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:9998}.np-card{width:400px;max-width:calc(100vw - 32px);background:#14161c;border:1px solid #2a2e38;border-radius:12px;box-shadow:0 16px 50px #0000008c;overflow:hidden}.np-head{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid #23262f}.np-title{font-size:15px;font-weight:600;color:#e6e6e6}.np-x{background:none;border:none;color:#8a8f9a;font-size:20px;line-height:1;cursor:pointer;padding:0 4px}.np-x:hover{color:#e6e6e6}.np-body{padding:18px;display:flex;flex-direction:column;gap:14px}.np-field{display:flex;flex-direction:column;gap:6px}.np-field>label{font-size:12px;color:#9aa0ab}.np-req{color:#e06b6b;font-style:normal}.np-input{background:#181b22;border:1px solid #2a2e38;color:#e6e6e6;padding:8px 10px;border-radius:7px;font-size:13px;box-sizing:border-box;width:100%;outline:none;transition:border-color .15s,box-shadow .15s}.np-input:focus{border-color:#2f6df6;box-shadow:0 0 0 2px #2f6df633}.np-input::placeholder{color:#5b606b}.np-row{display:flex;gap:12px}.np-row .np-field{flex:1}.np-pages .np-static{background:#181b22;border:1px solid #2a2e38;color:#9aa0ab;padding:8px 10px;border-radius:7px;font-size:13px}.np-path{display:flex;align-items:center;gap:8px;background:#181b22;border:1px dashed #3a3f4b;color:#9aa0ab;padding:9px 11px;border-radius:7px;font-size:13px;cursor:pointer;text-align:left;width:100%;box-sizing:border-box;transition:border-color .15s,color .15s}.np-path:hover{border-color:#2f6df6;color:#c9cdd6}.np-path.picked{border-style:solid;border-color:#2f6df6;color:#e6e6e6}.np-path-icon{font-size:15px}.np-path-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.np-fullpath{display:flex;align-items:center;gap:8px;background:#121419;border:1px solid #23262f;border-radius:6px;padding:7px 10px;font-size:12px}.np-fp-label{flex-shrink:0;color:#6f7682;background:#1d2027;padding:1px 7px;border-radius:4px;font-size:11px}.np-fp-value{color:#8fb4ff;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.np-hint{font-size:11px;color:#6f7682;line-height:1.7;margin:0}.np-hint code{background:#1d2027;color:#8fb4ff;padding:1px 5px;border-radius:4px;font-size:11px}.np-foot{display:flex;justify-content:flex-end;gap:10px;padding:14px 18px;border-top:1px solid #23262f;background:#121419}.np-btn{padding:8px 18px;border-radius:7px;cursor:pointer;font-size:13px;border:1px solid transparent;transition:opacity .15s,background .15s}.np-btn.ghost{background:#23262f;color:#e6e6e6;border-color:#33384599}.np-btn.ghost:hover{background:#2c303a}.np-btn.primary{background:#2f6df6;color:#fff;border-color:#2f6df6}.np-btn.primary:hover{background:#3f7bf7}.np-btn.primary:disabled{opacity:.45;cursor:not-allowed}.modal-fade-enter-active,.modal-fade-leave-active{transition:opacity .2s}.modal-fade-enter-from,.modal-fade-leave-to{opacity:0}*{margin:0;padding:0;box-sizing:border-box}:root{--bg-0: #1a1a1f;--bg-1: #202026;--bg-2: #26262d;--bg-3: #2c2c34;--bg-4: #34343d;--line: #2e2e36;--line-bright: #3a3a44;--txt-1: #f0f0f4;--txt-2: #c8c8d4;--txt-3: #9a9aa8;--txt-4: #6a6a7a;--accent: #6b8aff;--accent-deep: #3d5bcc;--accent-dim: #2a3a70;--warn: #c89060;--err: #c87070;--ok: #6fa890}html,body,#app{height:100%;width:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,Inter,system-ui,sans-serif;background:var(--bg-0);color:var(--txt-1);overflow:hidden;-webkit-font-smoothing:antialiased;font-size:12px;font-feature-settings:"tnum" 1}.hidden-input{position:absolute;width:0;height:0;opacity:0;pointer-events:none}button{font-family:inherit;cursor:pointer;-webkit-user-select:none;user-select:none;background:none;border:none;color:inherit;padding:0}.mono{font-family:SF Mono,JetBrains Mono,Consolas,ui-monospace,monospace}.small{font-size:10px}.accent{color:var(--accent)}.btn{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 12px;background:var(--bg-2);border:1px solid var(--line-bright);border-radius:3px;color:var(--txt-1);font-size:11px;font-weight:500;transition:background .12s,border-color .12s}.btn:hover{background:var(--bg-3);border-color:var(--accent-deep);color:var(--txt-1)}.btn.primary{background:var(--accent-deep);border-color:var(--accent);color:#fff}.btn.primary:hover{background:var(--accent)}.b-ic{font-size:11px;opacity:.85}.daw-shell{display:grid;grid-template-rows:52px 1fr;height:100vh;background:var(--bg-0);position:relative}@media (max-height: 760px){body{overflow:auto}.daw-shell{height:auto;min-height:100vh;grid-template-rows:52px 1fr}.daw-body{height:auto;min-height:calc(100vh - 52px);overflow:auto}.panel-main{height:calc(100vh - 52px)}}.top-nav{display:flex;align-items:center;justify-content:space-between;padding:0 16px;height:52px;background:linear-gradient(180deg,#24242b 0%,var(--bg-1) 100%);border-bottom:1px solid var(--line);position:relative;z-index:50}.nav-left{display:flex;align-items:center;gap:20px}.brand{display:flex;align-items:center;gap:10px}.brand-icon{color:var(--txt-1);flex-shrink:0}.brand-blocks .b-block{animation:block-shift 3s ease-in-out infinite}.brand-blocks .b2{animation-duration:3.7s;animation-delay:-.5s}.brand-blocks .b3{animation-duration:4.3s;animation-delay:-1.2s}.brand-blocks .b4{animation-duration:3.3s;animation-delay:-2.1s}@keyframes block-shift{0%,to{fill:var(--txt-1)}10%{fill:#ff4757}20%{fill:#ff6b81}30%{fill:#ffa502}40%{fill:#ffdd59}50%{fill:#2ed573}60%{fill:#1e90ff}70%{fill:#5352ed}80%{fill:#a855f7}90%{fill:#ff6eb4}}.brand-name{font-size:15px;font-weight:700;letter-spacing:.5px;display:inline-flex}.brand-char{animation:neon-glow 3s ease-in-out infinite}@keyframes neon-glow{0%,to{color:#ff4757}25%{color:#f59e0b}50%{color:#1e90ff}75%{color:#a855f7}}.top-dropdown{position:relative}.menu-item{display:inline-flex;align-items:center;padding:6px 12px;font-size:12px;font-weight:500;color:var(--txt-2);border-radius:7px;cursor:pointer;transition:color .12s,background .12s}.menu-item:hover{color:var(--txt-1);background:var(--bg-3)}.seg-ctrl{display:inline-flex;padding:3px;gap:2px;background:#00000038;border:1px solid var(--line);border-radius:10px}.seg-tab{padding:5px 14px;font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--txt-3);border-radius:7px;cursor:pointer;transition:color .12s,background .12s,box-shadow .12s;-webkit-user-select:none;user-select:none}.seg-tab:hover{color:var(--txt-1)}.seg-tab.on{color:#fff;background:linear-gradient(180deg,#3a4a8c,#2f3d72);box-shadow:0 1px #ffffff1f inset,0 2px 6px #0000004d}.seg-tab.disabled{color:var(--txt-4);cursor:not-allowed;opacity:.5}.seg-tab.disabled:hover{color:var(--txt-4)}.top-dd-menu{position:absolute;top:100%;left:0;margin-top:6px;min-width:180px;background:#23232b;border:1px solid #3a3a45;border-radius:6px;padding:4px;z-index:200;box-shadow:0 6px 20px #00000073}.top-dd-menu:before{content:"";position:absolute;left:0;right:0;top:-6px;height:6px}.dd-item{display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%;text-align:left;background:transparent;border:0;color:#e6e6ec;font-size:12px;padding:6px 8px;border-radius:4px;cursor:pointer;white-space:nowrap;transition:background .1s,color .1s}.dd-item:hover{background:#2f2f3a;color:#fff}.dd-item.on{background:#00d1b22e;color:#00d1b2}.dd-item.danger{color:#ff6b6b}.dd-item.danger:hover{background:#ff6b6b29}.dd-item.disabled{opacity:.38;cursor:default}.dd-item.disabled:hover{background:transparent}.dd-kbd{font-size:10px;color:#9a9aa6;background:#2c2c36;border:1px solid #3a3a45;border-radius:3px;padding:1px 5px;line-height:1.4;white-space:nowrap}.dd-sep{height:1px;background:#35353f;margin:4px 6px}.nav-right{display:flex;align-items:center;gap:10px}.nav-song,.nav-bpm{display:inline-flex;align-items:center;gap:7px;padding:5px 11px;background:#ffffff08;border:1px solid var(--line);border-radius:9px;transition:border-color .12s,background .12s}.nav-song:hover,.nav-bpm:hover{border-color:var(--line-bright);background:#ffffff0d}.ns-lbl{font-size:10px;color:var(--txt-3);text-transform:uppercase;letter-spacing:.6px}.ns-val{font-size:12.5px;color:var(--txt-1);font-weight:600}.ns-val.accent{color:var(--accent)}.pb-midi.nav-midi{display:inline-flex;align-items:center;gap:7px;padding:5px 11px;border-radius:9px;background:#ffffff08;border:1px solid var(--line);margin-left:auto}.pb-midi.nav-midi.on{background:#6fa89024;border-color:#6fa89066}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--txt-4);box-shadow:0 0 #6fa89000;transition:background .2s,box-shadow .2s}.status-dot.on{background:#6fa890;box-shadow:0 0 8px 1px #6fa89099}.pm-lbl{font-size:10px;color:var(--txt-3);text-transform:uppercase;letter-spacing:.5px}.pm-val{font-size:11px;color:var(--txt-2)}.pb-item{display:flex;align-items:baseline;gap:4px;min-width:0}.pb-lbl{font-size:10px;font-weight:600;color:var(--txt-3);text-transform:uppercase}.pb-val{font-size:11px;font-weight:500;color:var(--txt-1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:140px}.pb-sep{width:1px;height:12px;background:var(--line)}.pb-edit{margin-left:4px;background:none;border:1px solid var(--line);color:var(--txt-3);width:24px;height:24px;border-radius:5px;cursor:pointer;font-size:12px;line-height:1;flex-shrink:0}.pb-edit:hover{color:#fff;border-color:var(--accent);background:#2f6df61f}.status-dot{width:6px;height:6px;border-radius:50%;background:var(--txt-4);flex-shrink:0}.status-dot.on{background:var(--ok)}.daw-body{position:relative;display:block;overflow:hidden}.panel-main.panel-audio,.panel-main.panel-tutorial{padding:0}.ph-title{font-size:10px;font-weight:700;letter-spacing:1.5px;color:var(--txt-2);text-transform:uppercase}.ph-toggle{width:20px;height:20px;background:transparent;border:1px solid var(--line-bright);border-radius:3px;color:var(--txt-2);font-size:9px;transition:all .1s}.ph-toggle:hover{color:var(--txt-1);border-color:var(--accent)}.panel-error{margin:10px;padding:8px 10px;background:#c870701a;border:1px solid rgba(200,112,112,.3);border-left:2px solid var(--err);border-radius:3px;color:var(--err);font-size:11px;cursor:pointer}.panel-loading{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;background:#0a0c10b8;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);color:var(--txt-1);font-size:13px}.spinner{width:34px;height:34px;border:3px solid var(--bg-4);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.panel-empty{margin:40px 16px;text-align:center;color:var(--txt-3)}.empty-mark{font-size:32px;color:var(--txt-4);margin-bottom:8px}.empty-title{font-size:12px;color:var(--txt-2);margin-bottom:4px}.empty-sub{font-size:10px;line-height:1.5;margin-bottom:14px}.sec{padding:10px 0;border-bottom:1px solid var(--bg-4)}.sec+.sec{border-top:1px solid var(--bg-4);margin-top:-1px}.sec:last-child{border-bottom:none}.sec-head{-webkit-user-select:none;user-select:none;display:flex;align-items:center;justify-content:space-between;padding:5px 12px;margin:-10px 0 6px;font-size:9px;font-weight:700;letter-spacing:1.2px;color:var(--txt-3);text-transform:uppercase;background:var(--bg-2);border-bottom:1px solid var(--line)}.sec:first-child .sec-head{border-top:none;margin-top:-10px}.sec.collapsed{padding:0}.sec.collapsed .sec-head{margin:0;border-bottom:none}.sec.collapsed+.sec{border-top:none;margin-top:0}.sec-head:hover{color:var(--txt-1)}.sec-arrow{display:inline-block;width:8px;height:8px;flex-shrink:0;transition:transform .15s}.sec-arrow:before{content:"";display:block;width:6px;height:6px;border:1.5px solid var(--txt-3);border-top:none;border-left:none;transform:rotate(45deg);margin:1px 0 0 1px}.sec-head:hover .sec-arrow:before{border-color:var(--txt-1)}.sec.collapsed .sec-arrow{transform:rotate(-90deg)}.sec-count{padding:1px 6px;background:var(--bg-2);border-radius:8px;font-size:9px;font-weight:600;color:var(--txt-2);letter-spacing:0;text-transform:none}.sec-files{display:flex;flex-direction:column;gap:1px;padding:2px 6px;max-height:200px;overflow-y:auto}.sec-file-row{display:flex;align-items:center;gap:3px;padding:2px 4px;border-radius:2px;font-size:9px;cursor:default}.sec-file-row:hover{background:var(--bg-2)}.sec-file-row.sfr-child{padding-left:22px}.sfr-toggle{width:12px;font-size:8px;color:var(--txt-3);cursor:pointer;flex-shrink:0;text-align:center;-webkit-user-select:none;user-select:none}.sfr-toggle:hover{color:var(--txt-1)}.sfr-spacer{cursor:default}.sfr-icon{font-size:10px;flex-shrink:0}.sfr-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--txt-2)}.sec-file-row:hover .sfr-name{color:var(--txt-1)}.sec-tracks{display:flex;flex-direction:column;gap:1px;padding:0 8px;max-height:240px;overflow-y:auto}.sec-tracks::-webkit-scrollbar{width:4px}.sec-tracks::-webkit-scrollbar-thumb{background:var(--bg-4);border-radius:2px}.trk{display:flex;align-items:center;gap:8px;padding:5px 6px;background:var(--bg-2);border:1px solid transparent;border-radius:3px;cursor:pointer;transition:background .1s}.trk:hover{background:var(--bg-3)}.trk.lit{background:var(--accent-dim);border-color:var(--accent)}.trk-bar{width:2px;height:22px;background:var(--accent);border-radius:1px;flex-shrink:0}.trk-bar.dual{background:linear-gradient(180deg,var(--accent) 0%,var(--accent) 50%,var(--txt-3) 50%,var(--txt-3) 100%)}.trk-info{flex:1;min-width:0}.trk-name{font-size:11px;color:var(--txt-1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trk-meta{display:flex;gap:6px;margin-top:1px;font-size:9px;color:var(--txt-3)}.trk-light{color:var(--txt-2)}.sec-empty{padding:10px 12px;color:var(--txt-3);font-size:10px;text-align:center}.sec-midi{padding:0 8px 4px;display:flex;flex-direction:column;gap:4px}.midi-row{display:flex;justify-content:space-between;align-items:center;padding:4px 8px;background:var(--bg-2);border-radius:3px}.mr-lbl{font-size:9px;color:var(--txt-3);font-weight:600;letter-spacing:.5px;text-transform:uppercase}.mr-val{font-size:10px;color:var(--txt-1)}.mr-val.small{font-size:9px}.smg-items{display:flex;flex-direction:column;gap:2px}.smg-item{font-size:9px;color:var(--txt-2);padding:2px 4px;font-family:monospace}.midi-log{max-height:70px;overflow-y:auto;background:var(--bg-0);border:1px solid var(--line);border-radius:3px;padding:3px;font-size:9px}.midi-log::-webkit-scrollbar{width:3px}.midi-log::-webkit-scrollbar-thumb{background:var(--bg-4)}.log-empty{color:var(--txt-3);padding:4px;text-align:center}.log-item{display:flex;gap:6px;padding:1px 3px}.log-type{font-size:8px;font-weight:600;padding:1px 4px;border-radius:2px;background:var(--bg-3);color:var(--txt-2);flex-shrink:0}.log-type.noteon{background:var(--accent-dim);color:var(--accent)}.log-type.noteoff{background:var(--bg-3);color:var(--txt-3)}.log-type.cc{background:#a8a8b226;color:var(--txt-2)}.log-type.sysex{background:#c8906026;color:var(--warn)}.log-data{color:var(--txt-2)}.sec-stats{display:grid;grid-template-columns:1fr 1fr 1fr;gap:4px;padding:0 8px}.st-card{padding:6px 4px;background:var(--bg-2);border-radius:3px;text-align:center}.st-val{font-size:14px;font-weight:600;color:var(--txt-1);line-height:1}.st-unit{font-size:9px;color:var(--txt-3);margin-left:1px;font-weight:400}.st-lbl{font-size:8px;font-weight:600;letter-spacing:.5px;color:var(--txt-3);margin-top:3px;text-transform:uppercase}.panel-main{position:relative;height:100%;overflow:auto;background:radial-gradient(ellipse at center,rgba(107,138,255,.04) 0%,transparent 70%),var(--bg-0);min-width:0}.taskbar{position:absolute;bottom:8px;left:50%;transform:translate(-50%);z-index:100;background:var(--bg-2);border:1px solid var(--line-bright);border-radius:4px;padding:3px;display:flex;gap:3px;box-shadow:0 4px 12px #0006}.task-item{display:flex;align-items:center;gap:6px;padding:5px 12px;background:var(--bg-3);border-radius:3px;cursor:pointer;font-size:11px;color:var(--txt-1);transition:background .1s}.task-item:hover{background:var(--accent-deep);color:#fff}.ti-ic{font-size:12px;color:var(--accent)}.float-win{position:absolute;left:50%;top:50%;max-height:calc(100vh - 72px);background:var(--bg-1);border:1px solid var(--line-bright);border-radius:6px;overflow:hidden;box-shadow:0 0 0 1px #00000026,0 4px 16px #0000002e}.float-win:hover{box-shadow:0 0 0 1px #00000026,0 6px 24px #00000040}.float-win.drag{transition:none!important;cursor:grabbing}.float-win.drag *{cursor:grabbing!important;-webkit-user-select:none!important;user-select:none!important}.win-titlebar{display:flex;align-items:center;justify-content:space-between;height:28px;padding:0 6px 0 10px;background:linear-gradient(180deg,var(--bg-3),var(--bg-2));border-bottom:1px solid var(--line);cursor:move;-webkit-user-select:none;user-select:none;flex-shrink:0}.win-titlebar:active{cursor:grabbing}.wt-left{display:flex;align-items:center;gap:8px;min-width:0}.wt-ic{font-size:11px;color:var(--accent)}.wt-title{font-size:11px;font-weight:600;color:var(--txt-1)}.wt-nav{display:flex;align-items:center;gap:2px}.wn-btn{width:16px;height:16px;background:var(--bg-3);border-radius:2px;color:var(--txt-2);font-size:10px;transition:all .1s}.wn-btn:hover:not(:disabled){background:var(--accent-deep);color:#fff}.wn-btn:disabled{opacity:.3;cursor:not-allowed}.wn-val{font-size:10px;font-weight:600;color:var(--txt-1);padding:0 3px;min-width:32px;text-align:center}.wt-sub{font-size:10px;color:var(--txt-3);margin-left:4px}.wt-right{display:flex;align-items:center;gap:3px}.wtb-btn{padding:2px 7px;background:var(--bg-3);border-radius:3px;color:var(--txt-2);font-size:10px;transition:all .1s}.wtb-btn:hover{background:var(--bg-4);color:var(--txt-1)}.wtb-btn.active{background:var(--accent-deep);color:#fff}.wtb-btn.on{background:var(--ok);color:#fff}.wt-btn{width:22px;height:18px;display:flex;align-items:center;justify-content:center;background:transparent;border-radius:3px;color:var(--txt-2);font-size:10px;transition:all .1s}.wt-btn:hover{background:var(--bg-3);color:var(--txt-1)}.wt-btn.close:hover{background:var(--err);color:#fff}.win-body{flex:1;overflow:auto;position:relative;background:var(--bg-1);display:flex;align-items:center;justify-content:center;min-height:0;overflow:hidden;padding-top:10px}.pg-strip{position:absolute;display:flex;flex-direction:column;gap:4px;z-index:10}.pgp-btn{width:24px;height:24px;border-radius:50%;border:1px solid var(--line-bright);background:var(--bg-2);color:var(--txt-3);font-size:9px;font-family:SF Mono,Consolas,monospace;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .1s}.pgp-btn:hover{border-color:var(--accent-dim);color:var(--txt-1);background:var(--bg-3)}.pgp-btn.on{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 0 6px #6b8aff66}.win-grid-area{display:none}.win-statusbar{display:flex;align-items:center;gap:10px;height:22px;padding:0 10px;background:var(--bg-2);border-top:1px solid var(--line);font-size:10px;color:var(--txt-3);flex-shrink:0}.wsb-item{display:flex;align-items:center}.wsb-sep{width:1px;height:10px;background:var(--line)}.wsb-spacer{flex:1}.page-strip{background:var(--bg-1);border:1px solid var(--line);border-radius:4px;padding:6px 8px;flex-shrink:0}.ps-head{display:flex;align-items:center;justify-content:space-between;font-size:9px;font-weight:600;letter-spacing:1.2px;color:var(--txt-3);text-transform:uppercase;margin-bottom:4px}.ps-hint{font-size:9px;color:var(--txt-3);font-weight:400;text-transform:none;letter-spacing:0}.ps-row{display:flex;gap:3px;overflow-x:auto;padding-bottom:2px}.ps-row::-webkit-scrollbar{height:4px}.ps-row::-webkit-scrollbar-thumb{background:var(--bg-4);border-radius:2px}.ps-empty{color:var(--txt-3);font-size:11px;padding:8px;text-align:center}.ps-btn{display:flex;flex-direction:column;align-items:flex-start;gap:1px;min-width:68px;padding:4px 8px;background:var(--bg-2);border:1px solid var(--line);border-radius:3px;color:var(--txt-2);text-align:left;transition:all .1s;flex-shrink:0}.ps-btn:hover{background:var(--bg-3);border-color:var(--line-bright);color:var(--txt-1)}.ps-btn.on{background:var(--bg-3);border-color:var(--accent);color:var(--txt-1)}.psb-num{font-size:12px;font-weight:600;color:var(--txt-1)}.psb-name{font-size:10px;max-width:64px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.psb-foot{display:flex;gap:5px;font-size:9px;color:var(--txt-3);margin-top:1px}.ps-btn.on .psb-foot{color:var(--txt-2)}.grid-stage{flex:1;display:flex;align-items:center;justify-content:center;min-height:0;min-width:0;overflow:hidden;padding:4px}.gs-frame{position:relative;width:min(100%,100% - 0px);height:100%;display:flex;align-items:center;justify-content:center;padding:6px;background:var(--bg-1);border:1px solid var(--line);border-radius:4px;min-height:0;min-width:0;overflow:hidden}.gs-toolbar{display:flex;align-items:center;gap:10px;padding:4px 8px;margin-bottom:4px;background:var(--bg-2);border:1px solid var(--line);border-radius:3px;flex-shrink:0}.gst-block{display:flex;align-items:center;gap:5px}.gst-lbl{font-size:9px;color:var(--txt-3);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.gst-val{font-size:12px;font-weight:600;color:var(--txt-1)}.gst-sep{width:1px;height:12px;background:var(--line)}.gst-spacer{flex:1}.gs-btn{padding:3px 9px;background:var(--bg-3);border:1px solid var(--line-bright);border-radius:3px;color:var(--txt-2);font-size:10px;font-weight:500;transition:all .1s}.gs-btn:hover:not(:disabled){background:var(--bg-4);color:var(--txt-1);border-color:var(--accent-deep)}.gs-btn:disabled{opacity:.35;cursor:not-allowed}.gs-btn.active{background:var(--accent-dim);border-color:var(--accent);color:var(--accent)}.grid-wrap{display:flex;align-items:center;justify-content:center;gap:14px}.grid-8x8{display:grid;grid-template-columns:repeat(8,var(--pad-size, 48px));grid-auto-rows:var(--pad-size, 48px);gap:var(--grid-gap, 6px);padding:0;background:transparent;flex-shrink:0}.pad{width:var(--pad-size, 56px);height:var(--pad-size, 56px);border-radius:4px;display:flex;flex-direction:column;align-items:stretch;justify-content:space-between;padding:4px 5px;position:relative;background:var(--bg);border:1px solid var(--bd);transition:background .1s,border-color .1s,box-shadow .1s;box-shadow:0 1px 2px #00000026,0 2px 4px #00000014;overflow:hidden;cursor:default;-webkit-user-select:none;user-select:none}.pad:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:3px;pointer-events:none;box-shadow:inset 0 1.5px #ffffff59,inset 0 -1.5px #00000026}.pad.empty{background:#d4d4d8;border-color:#a0a0b0}.pad.empty.has-light{background:var(--bg-2);border-color:var(--accent);border-style:dashed}.pad.has-led{box-shadow:inset 0 0 0 1px #2fd96a59}.pad-led-badge{position:absolute;right:2px;bottom:2px;font-size:8px;line-height:1.3;padding:0 3px;border-radius:2px;letter-spacing:.3px;background:#2fd96a2e;color:#2fd96a;border:1px solid rgba(47,217,106,.45);pointer-events:none;z-index:3}.pad.has{cursor:pointer}.pad.has:hover{background:var(--bg-3);border-color:var(--accent);box-shadow:0 0 6px #0000004d}.pad.drag-over{outline:2px solid var(--accent);outline-offset:-2px;background:#648cff14}.pad.flash{background:var(--accent)!important;border-color:var(--accent)!important;box-shadow:0 0 10px var(--accent)}.pad.flash .pad-text{color:#fff}.pad.flash .pad-num{color:#fffc}.pad-line{display:flex;align-items:center;justify-content:center;text-align:center;font-size:clamp(8px,1.6vmin,11px);font-weight:500;color:var(--txt-1);line-height:1.15;min-height:0;padding:0;position:relative;z-index:1}.pad-line.top{align-items:flex-end}.pad-line.bot{align-items:flex-start}.pad-text{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.pad-text.small{font-size:clamp(7px,1.3vmin,9px);color:var(--txt-2)}.pad-text.dim{color:var(--txt-4)}.pad-empty-tag{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:12px;color:var(--txt-4);font-weight:600;pointer-events:none}.pad-choice-badge{position:absolute;bottom:1px;right:2px;font-size:clamp(6px,.9vmin,8px);font-weight:700;color:var(--txt-4);background:#00000080;padding:0 2px;border-radius:2px;line-height:1.2;pointer-events:none}.pad-choice-badge.active{color:var(--accent);background:#6b8aff33;box-shadow:0 0 3px #6b8aff4d}.pad-num{position:absolute;top:1px;right:3px;font-size:clamp(6px,1vmin,8px);font-weight:500;color:var(--txt-3);z-index:1;pointer-events:none}.pad-order-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:clamp(11px,2vmin,16px);font-weight:700;color:#ffffff80;text-shadow:0 1px 2px rgba(0,0,0,.6);z-index:0;pointer-events:none;line-height:1}.detail-panel{position:absolute;left:0;right:0;bottom:0;background:var(--bg-1);display:flex;flex-direction:column;min-height:210px;max-height:370px;z-index:10}.detail-panel:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--accent) 0%,var(--accent-dim) 240px,transparent 240px);z-index:1}.detail-panel:after{content:"";position:absolute;top:2px;left:0;right:0;height:1px;background:var(--line)}.dp-device-chain{display:flex;align-items:center;gap:6px;padding:4px 8px 3px;background:var(--bg-2);flex-shrink:0;border-bottom:1px solid var(--line);margin-top:-1px}.dpc-header{display:flex;align-items:center;gap:5px;flex-shrink:0}.dpc-num{font-size:13px;font-weight:700;color:var(--accent);min-width:18px}.dpc-name{font-size:12px;color:var(--txt-1)}.dpc-meta{font-size:11px;color:var(--txt-3)}.dpc-rack{display:flex;align-items:center;gap:2px;flex:1;min-width:0;padding:0 4px}.dpc-device{display:flex;align-items:center;gap:3px;padding:2px 6px;background:var(--bg-3);border:1px solid var(--line);border-radius:3px;font-size:11px;cursor:default;white-space:nowrap}.dpc-device.on{background:var(--accent-dim);border-color:var(--accent);color:#fff}.dpc-device.off{opacity:.45;border-style:dashed}.dpc-device.light{border-color:#5a407a}.dpc-dev-icon{font-size:10px;opacity:.7}.dpc-dev-icon.light{opacity:.9}.dpc-dev-name{font-size:11px}.dpc-badge{font-size:9px;line-height:1;padding:2px 3px;border-radius:2px;font-weight:600;letter-spacing:.3px}.dpc-badge.on{background:#1f6b3a;color:#b9f6c8}.dpc-badge.off{background:#6b1f1f;color:#f6b9b9}.dpc-badge.bypass{background:#6b5a1f;color:#f6e9b9}.dpc-dev-mode{font-size:9px;color:var(--txt-2);margin-left:auto}.dpc-drop{width:22px;height:22px;display:flex;align-items:center;justify-content:center;border:1px dashed var(--line-bright);border-radius:3px;color:var(--txt-4);font-size:14px;cursor:default;transition:all .1s;flex-shrink:0}.dpc-drop:hover{border-color:var(--accent-dim);color:var(--accent);background:var(--accent-dim)}.dpc-drop-hint{line-height:1}.dpc-right{display:flex;align-items:center;gap:5px;margin-left:auto;flex-shrink:0}.dpc-tag{font-size:11px;color:var(--txt-3)}.dpc-close{background:none;border:none;color:var(--txt-4);cursor:pointer;font-size:13px;padding:0 2px}.dpc-close:hover{color:var(--err)}.dp-body{flex:1;font-size:13px;display:flex;gap:6px;min-height:0;overflow:hidden;padding:6px 8px}.dp-card{display:flex;flex-direction:column;gap:4px;padding:6px 8px;background:var(--bg-2);border:1px solid var(--line);border-radius:4px;overflow:hidden}.audio-card,.midi-card{width:auto;flex:0 1 auto;min-width:0}.dp-card-title{font-size:10px;font-weight:700;letter-spacing:1px;color:var(--txt-3);text-transform:uppercase;padding-bottom:3px;border-bottom:1px solid var(--line)}.dp-row{display:flex;align-items:center;gap:6px}.dpr-wave-wrap{position:relative;width:180px;flex-shrink:0}.dp-waveform{display:block;width:180px;height:40px;background:var(--bg-0);border:1px solid var(--line);border-radius:2px}.dpr-wave-marks{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.dpr-mark{position:absolute;top:-1px;bottom:-1px;width:0}.dpr-mark-line{display:block;width:1px;height:100%;background:var(--accent)}.dpr-mark-lbl{position:absolute;top:2px;font-size:9px;color:var(--accent);transform:translate(-50%)}.dpr-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.dpr-inf-val{font-size:12px;color:var(--txt-1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dpr-inf-sub{font-size:11px;color:var(--txt-3)}.dp-controls{display:flex;flex-wrap:wrap;gap:2px 8px;margin-top:4px}.dpc-ctl{display:flex;align-items:center;gap:4px}.dpc-ctl-lbl{font-size:10px;color:var(--txt-3);text-transform:uppercase}.dpc-ctl-val{font-size:11px;color:var(--txt-1)}.dp-audio-body{display:flex;gap:0;flex:1;min-height:0}.dp-audio-samples{display:flex;flex-direction:column;gap:2px;width:180px;flex-shrink:0;overflow-y:auto}.dp-audio-divider{width:1px;background:var(--line);margin:0 6px;flex-shrink:0}.dp-audio-side{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.dp-as-item{display:flex;align-items:center;gap:4px;padding:2px 4px;border-left:3px solid transparent;background:var(--bg-3);border-radius:2px;font-size:11px}.dp-as-item.active{background:var(--accent-dim);border:1px solid var(--accent);padding:1px 3px}.dp-as-child{margin-left:8px;opacity:.85}.dp-as-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--txt-1)}.dp-as-empty{font-size:11px;color:var(--txt-4);padding:4px 0}.dp-as-change{background:none;border:none;color:var(--txt-3);cursor:pointer;padding:0 4px;font-size:13px;line-height:1}.dp-as-change:hover{color:var(--accent)}.dp-as-list-head{display:flex;align-items:center;justify-content:space-between;font-size:10px;font-weight:700;letter-spacing:.5px;color:var(--txt-3);text-transform:uppercase;padding-bottom:2px;border-bottom:1px solid var(--line)}.dp-as-add{background:none;border:none;color:var(--accent);cursor:pointer;font-size:14px;line-height:1;padding:0 3px}.dp-as-add:hover{color:#fff}.dp-as-slice{background:var(--bg-3);border:1px solid var(--line);padding:2px 3px;flex-wrap:wrap;cursor:pointer}.dp-as-slice:hover{border-color:var(--accent)}.dp-as-slice.selected{border-color:#f0c93b;background:#f0c93b1a}.dp-as-slice.primary{border-color:var(--accent);background:#2f6df61a}.dp-as-slice.next{box-shadow:inset 3px 0 #f0a93b}.dp-as-slice.primary.next{box-shadow:inset 3px 0 #f0a93b,0 0 0 1px var(--accent)}.dp-as-item.selected{background:#00c8ff1f;border-left-color:var(--accent)}.dp-as-item.selected .dp-as-name{color:#fff;font-weight:700}.dp-as-idx{font-size:9px;color:var(--accent);font-weight:700;min-width:12px;margin-left:3px}.dp-as-playing{color:#2fd96a;font-size:9px;animation:dpBlink .8s steps(2,jump-none) infinite}@keyframes dpBlink{50%{opacity:.25}}.dp-as-star{background:none;border:none;cursor:pointer;font-size:11px;color:var(--txt-4);padding:0 1px;line-height:1}.dp-as-star.on,.dp-as-star:hover{color:#f0c93b}.dp-as-name{flex:1;min-width:40px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-right:auto}.dp-as-time{white-space:nowrap;font-size:8px;color:var(--txt-3)}.dp-as-mv,.dp-as-play,.dp-as-del,.dp-as-audition{background:none;border:1px solid var(--line);color:var(--txt-3);cursor:pointer;font-size:9px;padding:0 3px;line-height:1.4;border-radius:3px}.dp-as-mv:hover,.dp-as-play:hover,.dp-as-audition:hover{color:#fff;border-color:var(--accent)}.dp-as-audition{color:#2fd96a;border-color:#2fd96a66}.dp-as-audition:hover{color:#fff;background:#2fd96a2e}.dp-as-del:hover{color:#e8584f;border-color:#e8584f}.dp-as-gain{display:flex;align-items:center;gap:5px;flex-basis:100%}.dp-as-gain-lbl{font-size:8px;color:var(--txt-4)}.dp-as-gain input[type=range]{flex:1;height:3px;accent-color:var(--accent)}.dp-as-gain-val{font-size:8px;color:var(--txt-3);min-width:28px;text-align:right}.dp-slice-detail{background:var(--bg-3);border:1px solid #f0c93b;border-radius:4px;padding:4px 6px;display:flex;flex-direction:column;gap:4px}.dp-sd-head{display:flex;align-items:center;gap:6px}.dp-sd-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;color:var(--txt-1)}.dp-sd-star{background:none;border:none;cursor:pointer;font-size:13px;color:var(--txt-4);line-height:1;padding:0 2px}.dp-sd-star.on,.dp-sd-star:hover{color:#f0c93b}.dp-sd-play{background:none;border:1px solid var(--line);color:var(--txt-3);cursor:pointer;font-size:10px;padding:0 4px;line-height:1.5;border-radius:3px}.dp-sd-play:hover{color:#fff;border-color:var(--accent)}.dp-sd-gain{display:flex;align-items:center;gap:6px}.dp-sd-lbl{font-size:9px;color:var(--txt-4)}.dp-sd-gain input[type=range]{flex:1;min-width:40px;height:3px;accent-color:var(--accent)}.dp-sd-val{font-size:9px;color:var(--txt-3);min-width:30px;text-align:right}.dp-sd-time{font-size:8px;color:var(--txt-3);white-space:nowrap}.dpc-playmode{flex-direction:column;align-items:flex-start;gap:3px}.dpc-pm-toggle{display:inline-flex;border:1px solid var(--line);border-radius:3px;overflow:hidden}.dpc-pm-toggle button{background:var(--bg-3);border:none;color:var(--txt-3);font-size:10px;padding:2px 8px;cursor:pointer}.dpc-pm-toggle button.on{background:var(--accent);color:#fff}.dp-midi-body{display:flex;gap:0;flex:1;min-height:0}.dp-midi-left{display:flex;flex-direction:column;gap:4px;width:120px;flex-shrink:0}.dp-midi-left .dp-card-title{font-size:10px;font-weight:700;letter-spacing:1px;color:var(--txt-3);text-transform:uppercase;padding-bottom:3px;border-bottom:1px solid var(--line)}.dp-midi-files{display:flex;flex-direction:column;gap:2px;flex:1;overflow-y:auto}.dp-midi-divider{width:1px;background:var(--line);margin:0 6px;flex-shrink:0}.dp-midi-side{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px;overflow-y:auto}.dp-midi-mps{display:flex;flex-direction:column;gap:3px}.dp-mp-group{display:flex;flex-direction:row;flex-wrap:wrap;gap:4px;padding:4px 6px;background:var(--bg-3);border-radius:3px}.dp-mpg-head{display:flex;align-items:center;justify-content:space-between;gap:4px;margin-bottom:2px;padding-bottom:2px;border-bottom:1px solid var(--line)}.dp-mpg-name{font-size:12px;font-weight:600;color:var(--txt-1)}.dp-mpg-actions{display:inline-flex;align-items:center;gap:4px}.dp-mpg-badges{display:inline-flex;align-items:center;gap:3px}.dpc-badge.toggle{cursor:pointer;border:none;font-size:10px;padding:1px 5px}.dp-mpg-del{cursor:pointer;border:1px solid var(--line);background:var(--bg-1);color:var(--txt-2);border-radius:2px;font-size:11px;line-height:1;padding:1px 4px}.dp-mpg-del:hover{color:#ff8080;border-color:#ff6060}.dp-mpg-plugin{font-size:11px;color:var(--txt-1);padding:2px 5px;background:var(--bg-2);border:1px solid var(--line);border-radius:3px;min-width:0}.dp-mpg-plugin.light{border-left:2px solid #5a407a}.dp-mpg-controls{margin-top:2px;padding:2px 4px;background:var(--bg-2);border-radius:2px}.dp-mpg-dropzone{outline:1px dashed transparent;transition:outline-color .15s;cursor:default}.dp-mpg-dropzone.drag-over{outline-color:var(--accent);background:var(--bg-3)}.dp-mpg-control-row{display:flex;align-items:center;gap:4px;margin:1px 0}.mx-file{display:flex;align-items:center;gap:6px;padding:3px 6px;margin-bottom:4px;background:var(--bg-1);border:1px dashed var(--line-bright);border-radius:3px;cursor:default;font-size:10px}.mx-file-icon{font-size:12px}.mx-file-name{color:var(--accent);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.mx-mode-row{display:flex;gap:2px;margin-bottom:4px;flex-wrap:wrap}.mx-mode-btn{flex:1;min-width:38px;font-size:9px;padding:2px 0;border:1px solid var(--line);border-radius:3px;background:var(--bg-1);color:var(--txt-3);cursor:pointer;text-align:center;transition:all .12s}.mx-mode-btn.on{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.mx-mode-btn:hover:not(.on){background:var(--bg-3);color:var(--txt-1)}.mx-params{display:flex;flex-direction:column;gap:3px;padding:3px 0}.mx-param{display:flex;align-items:center;gap:6px}.mx-plbl{font-size:9px;color:var(--txt-3);min-width:28px;text-align:right}.mx-slider{flex:1;height:4px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--bg-1);border-radius:2px;outline:none;cursor:pointer}.mx-slider::-webkit-slider-thumb{-webkit-appearance:none;width:10px;height:10px;border-radius:50%;background:var(--accent);border:none;cursor:pointer}.mx-pval{font-size:9px;color:var(--txt-2);min-width:28px;text-align:right}.mx-loop{display:flex;align-items:center;gap:4px;font-size:10px;color:var(--txt-2);cursor:pointer}.mx-loop input{accent-color:var(--accent)}.dp-plugin-modern{display:flex;flex-direction:column;gap:6px;padding:6px 8px;background:linear-gradient(180deg,var(--bg-2) 0%,var(--bg-1) 100%);border:1px solid var(--line);border-radius:4px}.dp-pm-vis{position:relative;display:flex;align-items:center;justify-content:center;min-height:48px;background:var(--bg-0);border:1px solid var(--line);border-radius:3px;overflow:hidden}.vis-flip{display:flex;align-items:center;gap:8px}.vis-flip-icon{font-size:20px;color:var(--accent);font-weight:700;line-height:1}.vis-flip-label{font-size:11px;color:var(--txt-2);font-weight:500}.mv-root{display:flex;gap:10px;padding:4px}.mv-left{display:flex;flex-direction:column;align-items:center;gap:3px;flex-shrink:0}.mv-graph{width:68px;height:68px}.mv-op{display:flex;flex-direction:column;align-items:stretch;gap:1px;width:100%}.mv-op-lbl{font-size:8px;color:var(--txt-3);text-align:left}.mv-op-sel{background:var(--bg-1);color:var(--txt-1);border:1px solid var(--line);border-radius:2px;font-size:10px;padding:1px 2px;cursor:pointer}.mv-mode{display:flex;width:100%}.mv-mode-btn{flex:1;font-size:9px;padding:2px 0;background:var(--bg-1);color:var(--txt-3);cursor:pointer;border:1px solid var(--line);border-right:none;transition:all .12s}.mv-mode-btn:first-child{border-radius:2px 0 0 2px}.mv-mode-btn:last-child{border-right:1px solid var(--line);border-radius:0 2px 2px 0}.mv-mode-btn:hover{color:var(--txt-1);background:var(--bg-3)}.mv-mode-btn.on{background:var(--accent);color:#fff;font-weight:600;border-color:var(--accent)}.mv-right{display:flex;flex-direction:column;gap:3px;flex:1;min-width:0}.mv-knob-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px 4px}.mv-knob-cell{display:flex;flex-direction:column;align-items:center;gap:1px}.mv-knob{cursor:ns-resize;-webkit-user-select:none;user-select:none}.mv-knob:hover circle{stroke:var(--accent-deep)}.mv-knob-lbl{font-size:9px;color:var(--txt-3)}.mv-knob-val{font-size:10px;color:var(--txt-1)}.mv-num-row{display:flex;align-items:center;gap:4px}.mv-num-lbl{font-size:9px;color:var(--txt-3);min-width:36px;text-align:right}.mv-nbox{background:var(--bg-1);color:var(--txt-1);border:1px solid var(--line);border-radius:2px;font-size:10px;width:36px;padding:1px 2px;text-align:center}.mv-nbox:focus{outline:none;border-color:var(--accent)}.vis-bh{position:relative;width:64px;height:64px}.vis-bh-ring{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center}.vis-bh-dot{position:absolute;width:14px;height:14px;display:flex;align-items:center;justify-content:center;font-size:8px;font-weight:700;border-radius:50%;background:var(--bg-3);color:var(--txt-3);border:1px solid var(--line);transition:all .2s;transform-origin:0 0}.vis-bh-dot:nth-child(1){transform:translate(25px) translate(-50%,-50%)}.vis-bh-dot:nth-child(2){transform:translate(50px) translate(-50%,-50%)}.vis-bh-dot:nth-child(3){transform:translate(50px,25px) translate(-50%,-50%)}.vis-bh-dot:nth-child(4){transform:translate(50px,50px) translate(-50%,-50%)}.vis-bh-dot:nth-child(5){transform:translate(25px,50px) translate(-50%,-50%)}.vis-bh-dot:nth-child(6){transform:translateY(50px) translate(-50%,-50%)}.vis-bh-dot:nth-child(7){transform:translateY(25px) translate(-50%,-50%)}.vis-bh-dot:nth-child(8){transform:translate(0) translate(-50%,-50%)}.vis-bh-dot.active{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:0 0 6px var(--accent)}.vis-bh-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:14px;color:var(--accent);filter:drop-shadow(0 0 4px var(--accent))}.vis-mx{padding:0 8px;width:100%}.vis-mx-capsule{display:flex;align-items:center;gap:6px;padding:4px 8px;background:var(--bg-2);border:1px dashed var(--line-bright);border-radius:12px;font-size:10px;width:100%}.vis-mx-ic{font-size:12px;flex-shrink:0}.vis-mx-name{color:var(--accent);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.dp-pm-params{display:flex;flex-direction:column;gap:4px}.dp-pm-row{display:flex;align-items:center;gap:6px;min-height:22px}.dp-pm-lbl{font-size:10px;color:var(--txt-3);text-transform:uppercase;letter-spacing:.5px;min-width:36px;text-align:right;flex-shrink:0}.dp-pm-sel{flex:1;min-width:0;background:var(--bg-1);color:var(--txt-1);border:1px solid var(--line);border-radius:2px;font-size:10px;padding:2px 4px;cursor:pointer;outline:none;transition:border-color .12s}.dp-pm-sel:hover,.dp-pm-sel:focus{border-color:var(--accent-deep)}.dp-pm-seg{display:flex;flex:1;min-width:0;background:var(--bg-1);border:1px solid var(--line);border-radius:3px;overflow:hidden}.dp-pm-seg-btn{flex:1;font-size:10px;padding:3px 0;background:transparent;color:var(--txt-3);cursor:pointer;border:none;border-right:1px solid var(--line);transition:all .12s}.dp-pm-seg-btn:last-child{border-right:none}.dp-pm-seg-btn:hover{color:var(--txt-1);background:var(--bg-3)}.dp-pm-seg-btn.on{background:var(--accent-deep);color:#fff;font-weight:600}.dp-pm-slider{flex:1;min-width:0;height:4px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--bg-1);border-radius:2px;outline:none;cursor:pointer;margin:0}.dp-pm-slider::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;border-radius:50%;background:var(--accent);border:1px solid #fff;cursor:pointer;box-shadow:0 0 4px #6b8aff99}.dp-pm-slider::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:var(--accent);border:1px solid #fff;cursor:pointer}.dp-pm-val{font-size:10px;color:var(--txt-2);min-width:28px;text-align:right;flex-shrink:0}.dp-pm-toggle{display:inline-flex;align-items:center;gap:4px;flex:1;padding:3px 6px;background:var(--bg-1);border:1px solid var(--line);border-radius:3px;cursor:pointer;font-size:10px;color:var(--txt-3);transition:all .15s}.dp-pm-toggle-dot{width:6px;height:6px;border-radius:50%;background:var(--txt-4);transition:all .15s}.dp-pm-toggle-txt{font-weight:600}.dp-pm-toggle.on{background:var(--accent-dim);border-color:var(--accent);color:#fff}.dp-pm-toggle.on .dp-pm-toggle-dot{background:var(--accent);box-shadow:0 0 4px var(--accent)}.dp-pm-toggle:hover{border-color:var(--accent-deep)}.dp-flip{display:flex;flex-direction:column;gap:3px}.dp-flip-mode{display:flex;align-items:center;gap:4px}.dp-flip-btn{font-size:10px;padding:1px 5px;border:1px solid var(--line);border-radius:2px;background:var(--bg-1);color:var(--txt-2);cursor:pointer}.dp-flip-btn.active{background:#2a4a6a;color:#cfe6ff;border-color:#3a6a9a}.dp-mpg-select{background:var(--bg-1);color:var(--txt-1);border:1px solid var(--line);border-radius:2px;font-size:10px;padding:1px 2px;cursor:pointer}.dp-mpg-input{background:var(--bg-1);color:var(--txt-1);border:1px solid var(--line);border-radius:2px;font-size:10px;width:40px;padding:1px 2px}.dp-mf-item{display:flex;align-items:center;gap:4px;padding:2px 4px;background:var(--bg-3);border-radius:2px;cursor:pointer;transition:all .1s}.dp-mf-item:hover{background:var(--bg-4)}.dp-mf-item.active{background:var(--accent-dim);border:1px solid var(--accent);padding:1px 3px}.dp-mf-item.previewing{background:#2fd96a24;border-color:#2fd96a8c}.dp-mf-item.previewing .dp-mf-name{color:#fff;font-weight:700}.dp-mf-play{background:none;border:1px solid rgba(47,217,106,.4);color:#2fd96a;cursor:pointer;font-size:9px;padding:0 3px;line-height:1.4;border-radius:3px}.dp-mf-play:hover{color:#fff;background:#2fd96a2e}.dp-mf-prev{font-size:9px;color:#2fd96a}.dp-mf-num{font-size:10px;color:var(--txt-4)}.dp-mf-name{font-size:11px;color:var(--txt-1);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dp-mf-dot{font-size:8px;color:var(--accent)}.dp-mf-del{background:none;border:none;color:var(--txt-4);cursor:pointer;font-size:10px;padding:0 2px;line-height:1.4}.dp-mf-del:hover{color:#ff6b6b}.dp-led-block{margin-top:10px;border-top:1px solid var(--bg-4);padding-top:8px}.dp-led-title{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--txt-2);font-weight:600;margin-bottom:2px}.dp-led-count{font-size:9px;background:var(--accent-dim);color:var(--accent);padding:0 5px;border-radius:6px}.dp-led-tip{font-size:10px;color:var(--txt-4);line-height:1.4;margin-bottom:5px}.dp-led-files{min-height:26px}.dp-midi-empty{font-size:11px;color:var(--txt-4);padding:4px 0}.dp-midi-dropzone{outline:1px dashed transparent;transition:all .15s;cursor:default;text-align:center;padding:10px 4px}.dp-midi-dropzone.drag-over{outline-color:var(--accent);background:var(--bg-3);color:var(--accent)}.dp-midi-plugins{display:flex;flex-wrap:wrap;gap:2px}.dp-mp-item{font-size:10px;padding:1px 5px;background:var(--bg-3);border-radius:2px;color:var(--txt-2)}.dp-wormhole .dp-mpg-control-row{display:flex;align-items:center;gap:2px}.dp-mpg-addpair,.dp-mpg-delpair{font-size:10px;padding:1px 6px;border:1px solid var(--line-bright);border-radius:2px;background:var(--bg-3);color:var(--txt-2);cursor:pointer;line-height:1.4}.dp-mpg-addpair:hover,.dp-mpg-delpair:hover{background:var(--bg-4);color:var(--txt-1)}.dp-mpg-delpair{border-color:#6a3030;color:var(--err)}.dp-mpg-delpair:hover{background:#4a2020}.play-mark{display:flex;align-items:center;line-height:1}*::-webkit-scrollbar{width:6px;height:6px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:var(--bg-4);border-radius:3px}*::-webkit-scrollbar-thumb:hover{background:var(--line-bright)}@media (max-width: 1000px){.menu{display:none}.nav-left{gap:14px}.ps-btn{min-width:60px;padding:4px 6px}.psb-name{max-width:54px}}@media (max-width: 1180px){.pb-fader{display:none}.inspector{width:220px}}@media (max-width: 980px){.pb-fader{display:none}.inspector{width:200px}}@media (max-width: 768px){.inspector{width:200px}}.mobile-block{display:none}@media (max-width: 719px){.daw-shell{display:none!important}.mobile-block{display:flex;position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;align-items:center;justify-content:center;background:#101015;padding:24px}.mobile-card{max-width:340px;text-align:center;background:#1d1d24;border:1px solid #2a2a34;border-radius:12px;padding:32px 24px}.mobile-icon{font-size:44px;margin-bottom:14px}.mobile-title{font-size:18px;font-weight:700;color:#fff;margin-bottom:10px}.mobile-sub{font-size:13px;line-height:1.6;color:#9a9aa6}}@media (max-height: 720px){.daw-shell{grid-template-rows:48px 40px 1fr}.gs-toolbar{padding:4px 6px;margin-bottom:6px}.gs-frame{padding:6px}.page-strip{padding:4px 6px}.ps-btn{padding:3px 6px;min-width:56px}.psb-num{font-size:11px}.psb-foot{display:none}}@media (max-height: 600px){.daw-shell{grid-template-rows:44px 40px 1fr}.top-nav,.project-bar{padding:0 10px}.page-strip,.gs-toolbar{display:none}.gs-frame{padding:4px}.grid-axis{display:none}}.mf-root{display:flex;flex-direction:column;gap:2px;padding:4px;width:100%}.mf-row{display:flex;align-items:center;gap:4px;flex-wrap:wrap;min-height:20px}.mf-group-lbl{font-size:9px;color:var(--txt-4);text-transform:uppercase;letter-spacing:.3px;margin-right:2px;min-width:40px}.mf-lbl{font-size:9px;color:var(--txt-4)}.mf-tog{font-size:9px;padding:2px 5px;background:var(--bg-1);color:var(--txt-3);border:1px solid var(--line);border-radius:2px;cursor:pointer;transition:all .12s;white-space:nowrap}.mf-tog:hover{color:var(--txt-1);background:var(--bg-3)}.mf-tog.on{background:var(--accent);color:#fff;border-color:var(--accent)}.mf-tog.sm{font-size:8px;padding:1px 4px}.mf-tog.sm.on{background:var(--accent-dim);border-color:var(--accent-dim)}.mf-nbox{background:var(--bg-1);color:var(--txt-1);border:1px solid var(--line);border-radius:2px;font-size:10px;padding:1px 2px;text-align:center}.mf-nbox:focus{outline:none;border-color:var(--accent)}.mf-txt{flex:1;min-width:0;background:var(--bg-1);color:var(--txt-1);border:1px solid var(--line);border-radius:2px;font-size:10px;padding:2px 4px}.mf-txt:focus{outline:none;border-color:var(--accent)}.mf-sel{background:var(--bg-1);color:var(--txt-1);border:1px solid var(--line);border-radius:2px;font-size:10px;padding:1px 2px;cursor:pointer}.mf-slider{width:50px;height:3px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--bg-2);border-radius:2px;outline:none;cursor:pointer;margin:0}.mf-slider::-webkit-slider-thumb{-webkit-appearance:none;width:10px;height:10px;border-radius:50%;background:var(--accent);border:1px solid #fff;cursor:pointer}.mf-val{font-size:10px;color:var(--txt-2);min-width:24px;text-align:center}.pad-menu{position:fixed;z-index:1200;min-width:168px;background:#23232b;border:1px solid #3a3a45;border-radius:6px;padding:4px;box-shadow:0 6px 20px #00000073;font-size:12px;color:#e6e6ec}.pm-title{font-size:10px;color:#9a9aa6;padding:2px 6px 6px;border-bottom:1px solid #35353f;margin-bottom:4px}.pm-item{display:flex;align-items:center;gap:6px;padding:6px 8px;border-radius:4px;cursor:pointer;color:#e6e6ec}.pm-item:hover{background:#2f2f3a;color:#fff}.pm-item.warn{color:#ff6b6b}.pm-item.warn:hover{background:#ff6b6b29;color:#ff8585}.pm-ic{font-size:11px;opacity:.8}.pm-subhead{font-size:10px;color:#9a9aa6;padding:6px 6px 3px}.pm-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;padding:0 4px}.pm-pg{display:flex;align-items:center;justify-content:center;height:24px;border-radius:4px;cursor:pointer;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);font-size:11px;color:#e6e6ec}.pm-pg:hover{background:#2f2f3a;border-color:#4a4a56}.pm-pg.on{background:#00d1b22e;border-color:#00d1b2;color:#00d1b2;font-weight:600}.pad-autopage-badge{position:absolute;top:3px;right:3px;width:15px;height:15px;border-radius:50%;background:#e53935;color:#fff;font-size:9px;line-height:15px;text-align:center;box-shadow:0 1px 2px #0006;pointer-events:none;z-index:3}
