:root{--bg-0: #0e0f12;--bg-1: #15171c;--bg-2: #1c1f26;--bg-3: #242831;--border: #2a2e38;--border-strong: #363b47;--text-1: #ecedef;--text-2: #a8acb6;--text-3: #6b6f7a;--text-disabled: #4a4d56;--accent: #6B5BFF;--accent-hover: #7c6dff;--accent-dim: rgba(107, 91, 255, .18);--accent-soft: rgba(107, 91, 255, .08);--accent-text: #ffffff;--danger: #ef4444;--success: #22c55e;--wave: #4a5160;--wave-progress: #6B5BFF;--wave-cursor: #7c6dff;--wave-selection: rgba(107, 91, 255, .22);--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700;--fs-xs: 11px;--fs-sm: 12px;--fs-md: 13px;--fs-lg: 15px;--fs-xl: 18px;--fs-2xl: 22px;--fs-3xl: 28px;--fs-4xl: 36px;--lh-tight: 1.2;--lh-normal: 1.5;--lh-relaxed: 1.75;--ls-tight: -.02em;--ls-normal: 0;--ls-loose: .04em;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 24px;--sp-6: 32px;--sp-7: 48px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 10px;--shadow-1: 0 1px 2px rgba(0, 0, 0, .4);--shadow-2: 0 4px 12px rgba(0, 0, 0, .5);--shadow-3: 0 12px 32px rgba(0, 0, 0, .6);--topbar-h: 48px;--transport-h: 68px;--tools-h: 56px;--minimap-h: 56px}[data-theme=light]{--bg-0: #f5f5f7;--bg-1: #ffffff;--bg-2: #ebebed;--bg-3: #dcdcde;--border: #d1d1d6;--border-strong: #b0b0b8;--text-1: #1d1d1f;--text-2: #3d3d42;--text-3: #8e8e93;--text-disabled: #b8b8be;--accent: #5749e8;--accent-hover: #4739c9;--accent-dim: rgba(87, 73, 232, .15);--accent-soft: rgba(87, 73, 232, .08);--accent-text: #ffffff;--wave: #b0b4be;--wave-progress: #5749e8;--wave-cursor: #4739c9;--wave-selection: rgba(87, 73, 232, .2);--shadow-1: 0 1px 2px rgba(0, 0, 0, .08);--shadow-2: 0 4px 12px rgba(0, 0, 0, .12);--shadow-3: 0 12px 32px rgba(0, 0, 0, .16)}*,*:before,*:after{box-sizing:border-box}[hidden]{display:none!important}html,body{margin:0;padding:0;height:100%;background:var(--bg-0);color:var(--text-1);font-family:var(--font-sans);font-size:var(--fs-md);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow:hidden}#app{height:100vh;display:flex;flex-direction:column}button{font:inherit;color:inherit;background:none;border:none;cursor:pointer;padding:0}button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}input,select,textarea{font:inherit;color:inherit}::selection{background:var(--accent-dim);color:var(--text-1)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--bg-3);border-radius:10px;border:2px solid var(--bg-0)}::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}h1{margin:0;font-size:var(--fs-4xl);font-weight:var(--fw-bold);line-height:var(--lh-tight);letter-spacing:var(--ls-tight)}h2{margin:0;font-size:var(--fs-3xl);font-weight:var(--fw-bold);line-height:var(--lh-tight);letter-spacing:var(--ls-tight)}h3{margin:0;font-size:var(--fs-2xl);font-weight:var(--fw-semibold);line-height:var(--lh-tight);letter-spacing:var(--ls-tight)}h4{margin:0;font-size:var(--fs-xl);font-weight:var(--fw-semibold);line-height:var(--lh-normal);letter-spacing:var(--ls-normal)}h5{margin:0;font-size:var(--fs-lg);font-weight:var(--fw-semibold);line-height:var(--lh-normal);letter-spacing:var(--ls-normal)}h6{margin:0;font-size:var(--fs-md);font-weight:var(--fw-semibold);line-height:var(--lh-normal);letter-spacing:var(--ls-normal)}p{margin:0;font-weight:var(--fw-regular);line-height:var(--lh-normal)}.text-small{font-size:var(--fs-sm);line-height:var(--lh-normal)}.text-large{font-size:var(--fs-lg);line-height:var(--lh-relaxed)}.text-label{font-size:var(--fs-sm);font-weight:var(--fw-medium);line-height:var(--lh-normal);letter-spacing:var(--ls-loose);text-transform:uppercase}.text-button{font-size:var(--fs-md);font-weight:var(--fw-semibold);line-height:var(--lh-normal)}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover)}.icon{width:14px;height:14px;flex-shrink:0;display:inline-block}.app-shell{display:flex;flex-direction:column;height:100%;background:var(--bg-0);position:relative}.topbar{height:var(--topbar-h);flex-shrink:0;display:grid;grid-template-columns:1fr auto 1fr;column-gap:var(--sp-6);align-items:center;padding:0 var(--sp-4);background:#0e0f12;border-bottom:1px solid rgba(255,255,255,.07);position:relative;z-index:50}.topbar .topbar__brand-name,.topbar .topbar-time__current,.topbar .topbar-time__sep,.topbar .topbar-time__total{color:#e8e8f0}.topbar .btn--icon{color:#b0b4c8}.topbar .btn--icon:hover:not(:disabled){background:#ffffff14;color:#e8e8f0}.topbar .topbar__title-input{color:#e8e8f0;background:transparent;border-color:#ffffff26}.topbar .topbar__title-input::placeholder{color:#e8e8f059}.topbar-menu{background:#15171c;border-color:#ffffff14;color:#e8e8f0}.topbar-menu__item{color:#b0b4c8}.topbar-menu__item:hover{background:#ffffff0f;color:#e8e8f0}.topbar-menu__sep{background:#ffffff14}.topbar-menu__lang-btn{color:#b0b4c8}.topbar-menu__lang-btn.is-active{background:#6b5bff40;color:#e8e8f0}.topbar__left{grid-column:1;display:flex;align-items:center;gap:var(--sp-2);min-width:0;overflow:hidden}.topbar__center{grid-column:2;display:flex;align-items:center;gap:var(--sp-3);justify-content:center}.topbar__center[hidden]{display:flex;visibility:hidden;pointer-events:none}.topbar__right{grid-column:3;display:flex;align-items:center;justify-content:flex-end;gap:var(--sp-2)}.topbar__brand{display:flex;align-items:center;gap:var(--sp-2);text-decoration:none;flex-shrink:0;transition:opacity .15s}.topbar__brand:hover{opacity:.8}.topbar__brand-logo{height:36px;width:auto;display:block}.topbar__brand-name{font-size:var(--fs-2xl);font-weight:var(--fw-semibold);color:var(--text-1);letter-spacing:var(--ls-tight);white-space:nowrap}.topbar__sep{width:1px;height:16px;background:var(--border);flex-shrink:0}.topbar__title-input{background:transparent;border:1px solid transparent;font-size:var(--fs-md);font-weight:var(--fw-medium);color:var(--text-1);font-family:inherit;padding:3px 6px;border-radius:var(--radius-sm);max-width:240px;width:240px;transition:border-color .15s,background .15s}.topbar__title-input:hover{border-color:var(--border-strong)}.topbar__title-input:focus{outline:none;border-color:var(--accent);background:var(--bg-1)}.topbar__menu-wrap{position:relative}.topbar__menu-btn{color:var(--text-2)}.topbar__menu-btn:hover{color:var(--text-1)}.topbar-transport{display:flex;align-items:center;gap:var(--sp-1)}.topbar-transport__btn{width:42px;height:42px;border-radius:50%;background:var(--bg-2);color:var(--text-1);transition:background .15s,transform .1s}.topbar-transport__btn:hover:not(:disabled){background:var(--bg-3)}.topbar-transport__btn svg{width:19px;height:19px}.topbar-transport__play{width:48px;height:48px;background:var(--bg-3)}.topbar-transport__play:hover:not(:disabled){background:var(--accent);color:var(--accent-text);transform:scale(1.05)}.topbar-transport__play svg{width:22px;height:22px}.topbar-time{display:flex;align-items:center;gap:4px;font-family:var(--font-mono);font-size:var(--fs-lg);font-variant-numeric:tabular-nums;color:var(--text-2);white-space:nowrap;letter-spacing:.02em}.topbar-time__current{color:var(--text-1);font-weight:var(--fw-semibold)}.topbar-time__sep{color:var(--text-3);font-size:var(--fs-md)}.topbar-time__total{color:var(--text-3)}.topbar-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:200;min-width:200px;background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-3);padding:var(--sp-2) 0;display:flex;flex-direction:column}.topbar-menu__item{display:flex;align-items:center;gap:var(--sp-3);width:100%;padding:var(--sp-2) var(--sp-4);font-size:var(--fs-md);color:var(--text-1);text-align:left;border-radius:0;transition:background .12s}.topbar-menu__item:hover{background:var(--bg-2)}.topbar-menu__item .icon,.topbar-menu__item svg{width:16px;height:16px;color:var(--text-3);flex-shrink:0}.topbar-menu__sep{height:1px;background:var(--border);margin:var(--sp-1) 0}.topbar-menu__lang{display:flex;align-items:center;gap:var(--sp-1);padding:var(--sp-2) var(--sp-4)}.topbar-menu__lang-btn{font-size:var(--fs-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:var(--ls-loose);padding:3px 9px;border-radius:var(--radius-sm);color:var(--text-3);background:transparent;transition:background .12s,color .12s}.topbar-menu__lang-btn:hover{background:var(--bg-2);color:var(--text-1)}.topbar-menu__lang-btn.is-active{background:var(--accent);color:var(--accent-text)}.bottom-bar{flex-shrink:0;display:flex;align-items:center;background:var(--bg-1);border-top:1px solid var(--border)}.bottom-bar__info{flex:1;min-width:0;padding:0 var(--sp-4);font-size:var(--fs-sm);font-family:var(--font-mono);color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.zoom-bar{flex-shrink:0;display:flex;align-items:center;justify-content:flex-end;gap:var(--sp-2);padding:var(--sp-1) var(--sp-4);background:transparent;border-top:none}.zoom-bar__label{font-size:var(--fs-xs);color:var(--text-3);font-family:var(--font-mono);font-variant-numeric:tabular-nums;user-select:none}.zoom-bar input[type=range]{width:140px}.add-track-menu{position:relative}.add-track-dropdown{position:absolute;top:calc(100% + 6px);left:0;z-index:200;min-width:180px;background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:0 4px 16px #0000004d;overflow:hidden}.add-track-option{display:flex;align-items:center;gap:var(--sp-2);width:100%;padding:var(--sp-2) var(--sp-3);background:none;border:none;color:var(--text-1);font-size:var(--fs-sm);font-family:inherit;cursor:pointer;text-align:left}.add-track-option:hover{background:var(--bg-2)}.status-pill{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--text-3);padding:3px 10px;border-radius:999px;background:var(--bg-2);border:1px solid var(--border);opacity:0;transition:opacity .2s ease;white-space:nowrap}.status-pill.is-visible{opacity:1}.memory-badge{font-size:var(--fs-xs);color:var(--text-3);padding:3px 8px;border-radius:var(--radius-sm);background:var(--bg-2);border:1px solid transparent;transition:color .2s,border-color .2s,background .2s}.memory-badge--warn{color:#e6a817;border-color:#e6a81740;background:#e6a81710}.memory-badge--alert{color:#e05252;border-color:#e0525240;background:#e0525215;font-weight:var(--fw-semibold)}.editor-body{flex:1;display:flex;flex-direction:column;min-height:0}.timeline-host{flex:1;min-height:0;display:flex}.tl{flex:1;min-height:0;display:flex;background:var(--bg-0);overflow:hidden}.tl__heads{width:220px;flex-shrink:0;background:var(--bg-1);border-right:1px solid var(--border);overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column}.tl__head-gap{height:32px;flex-shrink:0;border-bottom:1px solid var(--border);background:var(--bg-1)}.tl__head{height:96px;flex-shrink:0;border-bottom:1px solid var(--border);display:flex;flex-direction:row;cursor:pointer;transition:background .1s}.tl__head:hover{background:var(--bg-3)}.tl__head.is-active{background:var(--accent-soft)}.tl__head.is-muted{opacity:.25}.tl__head.is-muted:hover{opacity:.45}.tl__head.is-dimmed{opacity:.18}.tl__head.is-dimmed:hover{opacity:.38}.tl__head-stripe{width:3px;flex-shrink:0;align-self:stretch;transition:width .15s}.tl__head.is-active .tl__head-stripe{width:4px}.tl__head-content{flex:1;min-width:0;padding:var(--sp-2) var(--sp-3);display:flex;flex-direction:column;justify-content:center;gap:var(--sp-2)}.tl__head-row{display:flex;align-items:center;gap:var(--sp-1);min-width:0}.tl__head-name{flex:1;min-width:0;background:transparent;border:1px solid transparent;padding:3px 6px;border-radius:var(--radius-sm);font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text-1);font-family:inherit}.tl__head-name:hover{border-color:var(--border)}.tl__head-name:focus{outline:none;border-color:var(--accent);background:var(--bg-0)}.tl__head-remove,.tl__head-mute,.tl__head-solo{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;flex-shrink:0;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-2);color:var(--text-3);cursor:pointer;transition:background .12s,color .12s,border-color .12s}.tl__head-mute:hover:not(.is-active),.tl__head-solo:hover:not(.is-active){border-color:var(--border-strong);background:var(--bg-3);color:var(--text-2)}.tl__head-mute svg{width:13px;height:13px}.tl__head-mute.is-active{color:var(--danger);background:#ef44441a;border-color:#ef444466}.tl__head-solo{font-size:10px;font-weight:var(--fw-bold);letter-spacing:.04em}.tl__head-solo.is-active{color:var(--accent);background:var(--accent-dim);border-color:var(--accent)}.tl__head-remove{color:var(--text-3)}.tl__head-remove:hover{color:var(--danger)!important}.tl__head-gain{flex:1;min-width:0;height:4px}.tl__head-add{margin:var(--sp-3);flex-shrink:0;display:flex;align-items:center;justify-content:center;gap:var(--sp-2);height:40px;padding:0 var(--sp-3);border:1.5px dashed var(--border);border-radius:var(--radius-md);background:transparent;color:var(--text-3);font-size:var(--fs-sm);cursor:pointer;transition:border-color .15s,color .15s,background .15s}.tl__head-add:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.tl__head-add-wrap{position:relative;margin:var(--sp-3)}.tl__head-add-wrap .tl__head-add{margin:0;width:100%}.tl__head-add-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:200;background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:0 4px 16px #0000004d;overflow:hidden}.tl__head-add-option{display:flex;align-items:center;gap:var(--sp-2);width:100%;padding:var(--sp-2) var(--sp-3);background:none;border:none;color:var(--text-1);font-size:var(--fs-sm);font-family:inherit;cursor:pointer;text-align:left}.tl__head-add-option:hover{background:var(--bg-2)}.tl__scroll-wrap{flex:1;min-width:0;position:relative;overflow:hidden}.tl__canvas{position:absolute;inset:0;pointer-events:none;display:block}.tl__scroll{position:absolute;inset:0;overflow-x:auto;overflow-y:auto}.tl__sizer{position:relative;pointer-events:none}.tl__scroll>.tl__sizer{pointer-events:auto}.tools{flex-shrink:0;min-height:var(--tools-h);display:flex;align-items:center;flex-wrap:wrap;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);background:var(--bg-1);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.tools__group{display:flex;align-items:center;gap:var(--sp-2)}.tools__group[hidden]{display:none}.tools__sep{width:1px;height:24px;background:var(--border);margin:0 var(--sp-2)}.tools__sep[hidden]{display:none}.tools__info{margin-left:auto;font-size:var(--fs-xs);color:var(--text-3);font-family:var(--font-mono);font-variant-numeric:tabular-nums}.tools__section-label{font-size:.6rem;font-weight:var(--fw-semibold);letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);align-self:center;margin-right:var(--sp-1);white-space:nowrap}.tools__fade-ctrl{display:flex;align-items:center;gap:2px}.tools__fade-input{width:2.8rem;padding:2px 4px;background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-1);font-size:var(--fs-xs);font-family:var(--font-mono);font-variant-numeric:tabular-nums;text-align:center;-moz-appearance:textfield;transition:border-color .12s}.tools__fade-input:focus{outline:none;border-color:var(--accent)}.tools__fade-input::-webkit-inner-spin-button,.tools__fade-input::-webkit-outer-spin-button{opacity:1}.tools__fade-unit{font-size:.65rem;color:var(--text-3);margin-left:1px}.tools__auto-master{gap:var(--sp-2);background:linear-gradient(135deg,var(--accent) 0%,#5042d4 100%);color:var(--accent-text);border:1px solid rgba(107,91,255,.4);font-weight:var(--fw-semibold);letter-spacing:-.01em;transition:background .12s,box-shadow .12s,transform 80ms}.tools__auto-master:hover:not(:disabled){background:linear-gradient(135deg,var(--accent-hover) 0%,var(--accent) 100%);box-shadow:0 0 14px #6b5bff66;transform:translateY(-1px)}.tools__auto-master:active:not(:disabled){transform:translateY(0)}.tools__auto-master:disabled{cursor:not-allowed;background:var(--bg-2);color:var(--text-disabled);border-color:var(--border)}.tools__auto-master[hidden]{display:none}.tools__auto-master .icon{width:16px;height:16px}.tools__process-wrap{position:relative}.tools__process-btn{gap:var(--sp-2)}.tools__process-btn .icon--sm{width:14px;height:14px;margin-left:2px}.tools__process-btn.is-active{background:var(--accent-dim);color:var(--accent);border-color:var(--accent)}.tools__dropdown{position:fixed;min-width:220px;background:var(--bg-2);border:1px solid var(--border-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-3);z-index:1000;overflow:hidden}.tools__dropdown[hidden]{display:none}.tools__dropdown-page{display:flex;flex-direction:column}.tools__dropdown-page[hidden]{display:none}.tools__dropdown-item{display:flex;align-items:center;gap:var(--sp-3);width:100%;padding:var(--sp-3) var(--sp-4);background:none;border:none;color:var(--text-1);font-size:var(--fs-sm);cursor:pointer;text-align:left;transition:background .1s}.tools__dropdown-item:hover:not(:disabled){background:var(--bg-3)}.tools__dropdown-item:disabled{opacity:.4;cursor:not-allowed}.tools__dropdown-item .icon{flex-shrink:0;opacity:.7}.tools__dropdown-item span{flex:1}.tools__item-arrow{flex:0!important;color:var(--text-2);font-size:1.1rem;line-height:1}.tools__dropdown-back{display:flex;align-items:center;gap:var(--sp-2);width:100%;padding:var(--sp-3) var(--sp-4);background:var(--bg-1);border:none;border-bottom:1px solid var(--border);color:var(--text-1);font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer}.tools__dropdown-back:hover{background:var(--bg-3)}.tools__dropdown-params{display:flex;flex-direction:column;padding:var(--sp-2) 0}.tools__param-option{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-2) var(--sp-4);cursor:pointer;transition:background .1s}.tools__param-option:hover{background:var(--bg-3)}.tools__param-option input[type=radio]{accent-color:var(--accent);flex-shrink:0}.tools__param-label{font-size:var(--fs-sm);font-weight:var(--fw-semibold);min-width:5.5rem}.tools__param-sub{font-size:var(--fs-xs);color:var(--text-2)}.tools__dropdown-foot{display:flex;justify-content:flex-end;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);border-top:1px solid var(--border)}.btn--sm{padding:var(--sp-1) var(--sp-3);font-size:var(--fs-xs)}.btn--accent{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}.btn--accent:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 85%,white)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);height:32px;padding:0 var(--sp-3);border-radius:var(--radius-md);font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text-2);background:transparent;border:1px solid transparent;transition:background .12s,color .12s,border-color .12s;white-space:nowrap}.btn:hover:not(:disabled){background:var(--bg-3);color:var(--text-1)}.btn:disabled{color:var(--text-disabled);cursor:not-allowed}.btn--ghost{background:var(--bg-2);border-color:var(--border)}.btn--ghost:hover:not(:disabled){background:var(--bg-3);border-color:var(--border-strong)}.btn--primary{background:var(--accent);color:var(--accent-text)}.btn--primary:hover:not(:disabled){background:var(--accent-hover);color:var(--accent-text)}.btn--icon{width:32px;padding:0}.btn.is-active{background:var(--accent-dim);color:var(--accent);border-color:var(--accent)}.btn.is-active:hover:not(:disabled){background:var(--accent-dim);color:var(--accent)}.btn--lg{height:40px;padding:0 var(--sp-4);font-size:var(--fs-md)}.btn--danger{background:var(--danger);color:#fff;border-color:var(--danger)}.btn--danger:hover:not(:disabled){background:color-mix(in srgb,var(--danger) 85%,white);color:#fff}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn--primary:focus-visible,.btn--accent:focus-visible{outline-color:var(--accent-hover);outline-offset:3px}.btn:active:not(:disabled){transform:scale(.97)}.btn--primary:active:not(:disabled),.btn--accent:active:not(:disabled){transform:scale(.97)}input[type=range]{-webkit-appearance:none;appearance:none;height:4px;border-radius:999px;background:var(--bg-3);outline:none;cursor:pointer;accent-color:var(--accent)}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:var(--accent);border:2px solid var(--bg-1);box-shadow:0 0 0 1px var(--accent);cursor:pointer;transition:transform .12s,box-shadow .12s}input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.2);box-shadow:0 0 0 3px var(--accent-dim)}input[type=range]::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--accent);border:2px solid var(--bg-1);box-shadow:0 0 0 1px var(--accent);cursor:pointer}input[type=range]:focus-visible{outline:none;box-shadow:0 0 0 2px var(--accent-dim);border-radius:999px}.kbd{display:inline-block;font-family:var(--font-mono);font-size:10px;padding:2px 5px;border-radius:3px;background:var(--bg-2);color:var(--text-3);border:1px solid var(--border)}.dropzone{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--sp-6)}.dropzone__inner{width:100%;max-width:520px;border:1.5px dashed var(--border-strong);border-radius:var(--radius-lg);padding:var(--sp-7) var(--sp-5);text-align:center;background:var(--bg-1);cursor:pointer;transition:border-color .15s,background .15s,transform .15s}.dropzone__inner:hover,.dropzone__inner.is-dragover{border-color:var(--accent);background:var(--accent-soft)}.dropzone__icon{margin-bottom:var(--sp-3);color:var(--text-3);display:flex;justify-content:center}.dropzone__icon .icon{width:40px;height:40px}.dropzone__title{font-size:var(--fs-lg);font-weight:var(--fw-medium);color:var(--text-1);margin-bottom:var(--sp-2)}.dropzone__sub{font-size:var(--fs-sm);color:var(--text-3)}.dropzone__formats{margin-top:var(--sp-4);font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-3);letter-spacing:.05em}.dropzone__loading{font-size:var(--fs-sm);color:var(--accent);margin-top:var(--sp-3);font-family:var(--font-mono)}.dropzone__error{font-size:var(--fs-sm);color:var(--danger);margin-top:var(--sp-3)}.overlay{position:fixed;inset:0;background:#0009;backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:100;animation:fade-in .15s ease}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.shortcuts-panel{width:480px;max-width:90vw;max-height:80vh;overflow-y:auto;background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-3);padding:var(--sp-5)}.shortcuts-panel h2{font-size:var(--fs-lg);margin-bottom:var(--sp-4)}.shortcuts-list{display:grid;grid-template-columns:1fr auto;gap:var(--sp-2) var(--sp-4);font-size:var(--fs-sm)}.shortcuts-list dt{color:var(--text-2)}.shortcuts-list dd{margin:0;text-align:right}.shortcuts-footer{margin-top:var(--sp-4);padding-top:var(--sp-3);border-top:1px solid var(--border);display:flex;flex-direction:column;align-items:center;text-align:center}.shortcuts-links{display:flex;flex-wrap:wrap;gap:var(--sp-5);justify-content:center}.shortcuts-docs-link{display:inline-flex;align-items:center;gap:var(--sp-2);color:var(--accent);font-size:var(--fs-sm);font-weight:var(--fw-medium);text-decoration:none}.shortcuts-docs-link:hover{color:var(--accent-hover);text-decoration:underline}.shortcuts-version{margin:var(--sp-3) 0 0;font-size:var(--fs-xs);color:var(--text-3);letter-spacing:.02em}.contact-panel{width:480px;max-width:90vw;max-height:85vh;overflow-y:auto;background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-3);padding:var(--sp-5)}.contact-panel h2{font-size:var(--fs-lg);margin:0 0 var(--sp-2)}.contact-intro{margin:0 0 var(--sp-4);color:var(--text-2);font-size:var(--fs-sm)}.contact-form{display:flex;flex-direction:column;gap:var(--sp-3)}.contact-field{display:flex;flex-direction:column;gap:var(--sp-1)}.contact-label{font-size:var(--fs-sm);color:var(--text-2);font-weight:var(--fw-medium)}.contact-field input,.contact-field textarea{width:100%;padding:var(--sp-2) var(--sp-3);background:var(--bg-0);color:var(--text-1);border:1px solid var(--border);border-radius:var(--radius-md);font:inherit;font-size:var(--fs-sm);resize:vertical;box-sizing:border-box}.contact-field input:focus,.contact-field textarea:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:var(--accent)}.contact-status{min-height:1.25em;font-size:var(--fs-sm)}.contact-status--error{color:var(--danger, #e04b4b)}.contact-status--success{color:var(--success, #3ab97a)}.contact-status--loading{color:var(--text-2)}.contact-actions{display:flex;justify-content:flex-end;gap:var(--sp-2);margin-top:var(--sp-2)}.contact-submit[disabled]{opacity:.6;cursor:not-allowed}.projects-screen{flex:1;overflow-y:auto;background:var(--bg-0)}.projects-screen__inner{max-width:820px;margin:0 auto;padding:var(--sp-7) var(--sp-5)}.projects-screen__head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);margin-bottom:var(--sp-6)}.projects-screen__head h1{font-size:var(--fs-3xl);font-weight:var(--fw-bold);letter-spacing:var(--ls-tight);color:var(--text-1);margin:0 0 var(--sp-1);line-height:var(--lh-tight)}.projects-screen__usage{font-size:var(--fs-xs);color:var(--text-3);font-family:var(--font-mono)}.projects-screen__actions{display:flex;align-items:center;gap:var(--sp-2);flex-shrink:0}.projects-screen__foot{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);margin-top:var(--sp-6);padding-top:var(--sp-4);border-top:1px solid var(--border)}.projects-screen__notice{font-size:var(--fs-xs);color:var(--text-3);margin:0}.projects-screen__foot-actions{display:flex;gap:var(--sp-2);flex-shrink:0}.projects-list{display:flex;flex-direction:column;gap:var(--sp-2)}.projects-empty{display:flex;flex-direction:column;align-items:center;gap:var(--sp-3);padding:var(--sp-7) var(--sp-5);text-align:center;color:var(--text-3);font-size:var(--fs-md);border:1.5px dashed var(--border);border-radius:var(--radius-lg);background:var(--bg-1)}.projects-empty__icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-lg);background:var(--accent-soft);color:var(--accent);margin-bottom:var(--sp-1)}.projects-empty__icon svg,.projects-empty__icon .icon{width:24px;height:24px}.projects-empty__title{font-size:var(--fs-lg);font-weight:var(--fw-semibold);color:var(--text-2)}.projects-empty__sub{font-size:var(--fs-sm);color:var(--text-3);max-width:320px}.projects-row{display:flex;align-items:center;gap:var(--sp-4);padding:var(--sp-3) var(--sp-4);background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-lg);cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s;position:relative}.projects-row:hover{border-color:var(--accent);background:var(--bg-1);box-shadow:0 0 0 1px var(--accent),var(--shadow-1)}.projects-row__icon{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);background:var(--accent-soft);color:var(--accent);flex-shrink:0;border:1px solid var(--accent-dim);transition:background .15s}.projects-row:hover .projects-row__icon{background:var(--accent-dim)}.projects-row__icon svg,.projects-row__icon .icon{width:22px;height:22px}.projects-row__main{flex:1;min-width:0}.projects-row__name{font-size:var(--fs-lg);color:var(--text-1);font-weight:var(--fw-semibold);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;letter-spacing:var(--ls-tight)}.projects-row__meta{font-size:var(--fs-xs);color:var(--text-3);margin-top:3px;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.projects-row__actions{display:flex;align-items:center;gap:var(--sp-1);flex-shrink:0}.projects-row__open{opacity:0;transition:opacity .15s}.projects-row:hover .projects-row__open{opacity:1}.projects-row__icons{display:flex;align-items:center;gap:2px;opacity:0;transition:opacity .15s}.projects-row:hover .projects-row__icons{opacity:1}.marker-dialog{width:340px;max-width:92vw;background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-3);padding:var(--sp-5);display:flex;flex-direction:column;gap:var(--sp-4)}.marker-dialog__title{font-size:var(--fs-md);font-weight:var(--fw-semibold)}.marker-dialog__input{width:100%;background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-1);font-size:var(--fs-sm);font-family:inherit;padding:7px 10px;outline:none}.marker-dialog__input:focus{border-color:var(--accent)}.marker-dialog__actions{display:flex;justify-content:space-between;gap:var(--sp-2)}.marker-dialog__actions-right{display:flex;gap:var(--sp-2)}.rec-panel{width:480px;max-width:92vw;display:flex;flex-direction:column;background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-3)}.rec-panel__head{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-4) var(--sp-5);border-bottom:1px solid var(--border)}.rec-panel__head h2{font-size:var(--fs-lg);font-weight:var(--fw-medium);color:var(--text-1);margin:0}.rec-panel__body{padding:var(--sp-5);display:flex;flex-direction:column;gap:var(--sp-4)}.rec-panel__foot{display:flex;align-items:center;justify-content:center;gap:var(--sp-3);padding:var(--sp-4) var(--sp-5);border-top:1px solid var(--border);background:var(--bg-2)}.rec-controls{display:flex;align-items:center;gap:var(--sp-2)}.rec-btn .icon{color:var(--danger)}.rec-gain{display:flex;align-items:center;gap:var(--sp-3)}.rec-gain__label{font-size:var(--fs-xs);color:var(--text-3);text-transform:uppercase;letter-spacing:.04em;flex-shrink:0;min-width:5rem}.rec-gain__slider{flex:1;accent-color:var(--accent)}.rec-gain__value{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-2);min-width:4.5rem;text-align:right;font-variant-numeric:tabular-nums}.rec-meter{display:flex;align-items:center;gap:var(--sp-3)}.rec-meter__bar{flex:1;height:14px;background:var(--bg-2);border-radius:999px;overflow:hidden;border:1px solid var(--border)}.rec-meter__fill{height:100%;width:0%;background:#22c55e;transition:width 60ms linear,background-color .15s}.rec-meter__fill.is-hot{background:#f59e0b}.rec-meter__fill.is-clip{background:#ef4444}.rec-meter__clip{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-3);padding:4px 8px;border-radius:var(--radius-sm);background:var(--bg-2);border:1px solid var(--border);transition:background .12s,color .12s,border-color .12s}.rec-meter__clip.is-on{background:var(--danger);color:#fff;border-color:var(--danger)}.rec-time{font-family:var(--font-mono);font-size:28px;font-variant-numeric:tabular-nums;text-align:center;color:var(--text-1);letter-spacing:.04em}.rec-error{font-size:var(--fs-sm);color:var(--danger);background:#ef44441a;padding:var(--sp-2) var(--sp-3);border-radius:var(--radius-sm)}.rec-preview{display:flex;flex-direction:column;gap:var(--sp-4);padding:var(--sp-4) 0}.rec-preview__label{font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.rec-preview__player{display:flex;align-items:center;gap:var(--sp-3)}.rec-preview__progress{flex:1;display:flex;flex-direction:column;gap:6px}.rec-preview__bar{height:6px;background:var(--bg-3);border-radius:999px;overflow:hidden}.rec-preview__fill{height:100%;background:var(--accent);border-radius:999px;transition:width .1s linear;width:0%}.rec-preview__times{display:flex;justify-content:space-between;font-size:var(--fs-xs);font-family:var(--font-mono);color:var(--text-3)}.export-panel{width:640px;max-width:92vw;max-height:88vh;display:flex;flex-direction:column;background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-3);overflow:hidden}.export-panel__head{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-4) var(--sp-5);border-bottom:1px solid var(--border)}.export-panel__head h2{font-size:var(--fs-lg);font-weight:var(--fw-medium);color:var(--text-1);margin:0}.export-panel__body{flex:1;overflow-y:auto;padding:var(--sp-5);display:flex;flex-direction:column;gap:var(--sp-4)}.export-panel__foot{display:flex;justify-content:flex-end;gap:var(--sp-3);padding:var(--sp-4) var(--sp-5);border-top:1px solid var(--border);background:var(--bg-2)}.export-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--sp-3) var(--sp-4)}.export-grid .field:nth-child(1),.export-grid .field:nth-child(2),.export-grid .field:nth-child(3){grid-column:span 3}.export-grid .field--sm{grid-column:span 1}.export-row{display:flex;gap:var(--sp-4);align-items:flex-end}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field--inline{flex:1}.field__label{font-size:var(--fs-xs);color:var(--text-3);text-transform:uppercase;letter-spacing:.04em}.field__input{width:100%;height:34px;padding:0 var(--sp-3);border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-0);color:var(--text-1);font-size:var(--fs-sm);font-family:inherit}.field__input:focus{outline:none;border-color:var(--accent)}select.field__input{appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--text-3) 50%),linear-gradient(135deg,var(--text-3) 50%,transparent 50%);background-position:calc(100% - 14px) 50%,calc(100% - 9px) 50%;background-size:5px 5px;background-repeat:no-repeat;padding-right:26px}.export-mastering{display:flex;flex-direction:column;gap:8px;padding:12px 14px;border:1px solid var(--border, rgba(255,255,255,.08));border-radius:8px;background:var(--surface-2, rgba(255,255,255,.03))}.export-mastering__title{font-weight:var(--fw-semibold);font-size:.95em}.export-mastering__checklist{list-style:none;padding:0;margin:4px 0 0;font-size:.85em;opacity:.75;display:flex;flex-direction:column;gap:3px}.export-mastering__checklist li:before{content:"✓ ";color:var(--accent, #4caf50);font-weight:var(--fw-bold)}.export-cover{display:flex;flex-direction:column;gap:6px}.export-cover__drop{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-3);border:1.5px dashed var(--border-strong);border-radius:var(--radius-md);background:var(--bg-0);cursor:pointer;transition:border-color .15s,background .15s}.export-cover__drop:hover,.export-cover__drop.is-dragover{border-color:var(--accent);background:var(--accent-soft)}.export-cover__thumb{width:64px;height:64px;flex-shrink:0;border-radius:var(--radius-sm);background:var(--bg-2);overflow:hidden;display:flex;align-items:center;justify-content:center;color:var(--text-3)}.export-cover__thumb img{width:100%;height:100%;object-fit:cover;display:block}.export-cover__sub{font-size:var(--fs-sm);color:var(--text-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.export-progress{display:flex;flex-direction:column;gap:var(--sp-2)}.export-progress__track{height:6px;background:var(--bg-2);border-radius:999px;overflow:hidden}.export-progress__bar{height:100%;width:0%;background:var(--accent);transition:width .12s ease}.export-progress__label{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-3)}.progress-overlay{position:fixed;inset:0;background:#0000008c;backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:200;opacity:0;transition:opacity .2s ease;pointer-events:none}.progress-overlay[hidden]{display:none}.progress-overlay.is-visible{opacity:1;pointer-events:auto}.progress-overlay__card{background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 12px 40px #00000080;padding:var(--sp-6) var(--sp-7);min-width:320px;max-width:440px;display:flex;flex-direction:column;align-items:center;gap:var(--sp-4)}.progress-overlay__spinner{width:28px;height:28px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:progress-spin .7s linear infinite}@keyframes progress-spin{to{transform:rotate(360deg)}}.progress-overlay__label{font-size:var(--fs-sm);color:var(--text-2);text-align:center;min-height:1.4em}.progress-overlay__track{width:100%;height:6px;background:var(--bg-2);border-radius:999px;overflow:hidden}.progress-overlay__bar{height:100%;width:0%;background:var(--accent);border-radius:999px;transition:width .15s ease}.storage-warning{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);background:#f59e0b1f;border:1px solid rgba(245,158,11,.4);border-radius:var(--radius-md);color:#f59e0b;font-size:var(--fs-sm);margin-bottom:var(--sp-4)}.lang-switcher{display:flex;gap:2px;background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-md);padding:3px}.lang-switcher__btn{background:none;border:none;color:var(--text-3);font-size:var(--fs-xs);font-weight:var(--fw-semibold);padding:3px 8px;border-radius:calc(var(--radius-md) - 2px);cursor:pointer;font-family:var(--font-sans);letter-spacing:.04em;transition:background .15s,color .15s}.lang-switcher__btn:hover{background:var(--bg-2);color:var(--text-1)}.lang-switcher__btn.is-active{background:var(--accent);color:var(--accent-text)}.track__wave ::part(cursor){background:var(--wave-cursor)!important;width:1px!important}@keyframes slide-up-fade{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slide-down-fade{0%{opacity:0;transform:translateY(-8px) scaleY(.96)}to{opacity:1;transform:translateY(0) scaleY(1)}}@keyframes scale-in{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}@keyframes pulse-play{0%,to{box-shadow:0 0 #6b5bff80}50%{box-shadow:0 0 0 7px #6b5bff00}}@keyframes shimmer-loading{0%{background-position:-400px 0}to{background-position:400px 0}}.anim-enter{animation:slide-up-fade .22s cubic-bezier(.16,1,.3,1) both}.topbar-menu:not([hidden]){animation:slide-down-fade .16s cubic-bezier(.16,1,.3,1);transform-origin:top right}.tools__dropdown:not([hidden]){animation:slide-down-fade .16s cubic-bezier(.16,1,.3,1);transform-origin:top left}.tl__head-add-dropdown:not([hidden]){animation:slide-down-fade .14s cubic-bezier(.16,1,.3,1);transform-origin:top left}.topbar-menu__lang:not([hidden]){animation:slide-down-fade .12s ease}.shortcuts-panel,.rec-panel,.export-panel{animation:scale-in .2s cubic-bezier(.16,1,.3,1)}.marker-dialog{animation:scale-in .18s cubic-bezier(.16,1,.3,1)}.progress-overlay.is-visible .progress-overlay__card{animation:scale-in .22s cubic-bezier(.16,1,.3,1)}.projects-row{animation:slide-up-fade .25s cubic-bezier(.16,1,.3,1) both}.projects-row:nth-child(1){animation-delay:0ms}.projects-row:nth-child(2){animation-delay:40ms}.projects-row:nth-child(3){animation-delay:80ms}.projects-row:nth-child(4){animation-delay:.12s}.projects-row:nth-child(5){animation-delay:.16s}.projects-row:nth-child(6){animation-delay:.19s}.projects-row:nth-child(7){animation-delay:.22s}.projects-row:nth-child(8){animation-delay:.25s}.projects-row:nth-child(9){animation-delay:.27s}.projects-row:nth-child(10){animation-delay:.29s}.status-pill{transform:translateY(3px);transition:opacity .2s ease,transform .2s ease}.status-pill.is-visible{opacity:1;transform:translateY(0)}.progress-overlay__bar{transition:width .3s cubic-bezier(.25,1,.5,1)}.topbar-transport__play.is-playing{animation:pulse-play 2s ease-in-out infinite}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
