body:has(.v2-app){--on-accent:oklch(0.22 0.02 295);--editor-danger:var(--warn);--editor-grid-line:oklch(0.9 0.02 280/0.07);--editor-ink:oklch(0.93 0.02 280)}.v2-editor-projects-screen{padding:0 24px 48px;max-width:1280px;margin:0 auto}.v2-editor-studio input[type=range],.v2-editor-studio-fullscreen input[type=range]{accent-color:var(--warm);cursor:pointer}.v2-editor-search-field{position:relative;display:flex;align-items:center}.v2-editor-search-icon{position:absolute;left:12px;display:inline-flex;color:var(--text-faint);pointer-events:none}.v2-editor-search-input{background:var(--surface-1);border:1px solid var(--border);border-radius:999px;padding:7px 16px 7px 34px;font-size:13px;color:var(--text);width:240px;outline:none;transition:all .15s ease}.v2-editor-search-input:focus{border-color:var(--teal);box-shadow:0 0 0 2px var(--teal-soft)}.v2-editor-textarea-input{padding:10px 12px}.v2-editor-projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px}.v2-editor-project-card{display:flex;flex-direction:column;background:var(--surface-1);border:1px solid var(--border);border-radius:14px;overflow:hidden;text-align:left;cursor:pointer;transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}.v2-editor-project-card:hover{border-color:var(--teal);transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.4)}.v2-editor-card-thumb{position:relative;width:100%;aspect-ratio:16/9;background:var(--bg-deep);display:flex;align-items:center;justify-content:center;overflow:hidden}.v2-editor-card-thumb.ratio-9-16{aspect-ratio:16/9}.v2-editor-card-thumb img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.v2-editor-card-badges{position:absolute;top:8px;left:8px;display:flex;gap:6px;z-index:2}.v2-editor-card-badge{padding:2px 7px;border-radius:6px;font-size:12px;font-weight:600;font-family:var(--mono);background:rgba(0,0,0,.75);color:var(--text);backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.1)}.v2-editor-card-duration{position:absolute;bottom:8px;right:8px;padding:2px 6px;border-radius:4px;font-size:12px;font-family:var(--mono);background:rgba(0,0,0,.85);color:#fff;z-index:2}.v2-editor-card-body{padding:14px 16px;display:flex;flex-direction:column;gap:6px}.v2-editor-card-title{font-size:14.5px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v2-editor-card-meta{display:flex;align-items:center;justify-content:space-between;font-size:11.5px;color:var(--text-muted)}.v2-editor-card-actions{display:flex;align-items:center;gap:8px;margin-top:8px;padding-top:8px;border-top:1px solid var(--border-faint)}.v2-editor-card-action-btn{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--text-muted);background:transparent;border:none;cursor:pointer;padding:4px 6px;border-radius:4px;transition:all .15s ease}.v2-editor-card-action-btn:hover{color:var(--text);background:var(--surface-2)}.v2-editor-card-action-btn.delete:hover{color:var(--warm);background:var(--warm-soft)}.v2-editor-context-menu{position:fixed;z-index:1000;min-width:200px;max-width:280px;padding:5px;border-radius:10px;background:var(--surface-2);border:1px solid var(--border);box-shadow:0 18px 40px -18px rgba(0,0,0,.7);display:flex;flex-direction:column}.v2-editor-context-menu:focus{outline:none}.v2-editor-context-menu-item{display:flex;align-items:flex-start;gap:9px;padding:8px 10px;border:0;border-radius:7px;background:transparent;color:var(--text);font:inherit;font-size:13px;text-align:left;cursor:pointer}.v2-editor-context-menu-item>svg{flex:none;margin-top:2px;color:var(--teal)}.v2-editor-context-menu-item:focus-visible,.v2-editor-context-menu-item:hover:not(:disabled){background:var(--surface-3);outline:none}.v2-editor-context-menu-item:disabled{cursor:default;opacity:.55}.v2-editor-context-menu-text{display:flex;flex-direction:column;gap:2px;min-width:0}.v2-editor-context-menu-desc{font-size:11px;line-height:1.4;color:var(--text-muted)}.v2-editor-projects-screen{position:relative;max-width:1380px;min-height:calc(100vh - 56px);padding:34px 48px 72px;isolation:isolate}.v2-editor-projects-screen:before{position:absolute;inset:0;z-index:-1;background-image:linear-gradient(to right,transparent 0,transparent calc(100% - 1px),var(--editor-grid-line) 100%),linear-gradient(to bottom,transparent 0,transparent calc(100% - 1px),var(--editor-grid-line) 100%);background-size:25% 100%,100% 180px;content:"";pointer-events:none;opacity:.45}.v2-editor-empty-eyebrow,.v2-editor-projects-overview,.v2-editor-section-label{display:flex;align-items:center;gap:10px;color:var(--warm);font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase}.v2-editor-empty-eyebrow-line,.v2-editor-projects-overview-line{display:inline-block;width:36px;height:1px;background:var(--warm-line)}.v2-editor-projects-screen .v2-editor-search-field{flex:1 1 210px}.v2-editor-projects-screen .v2-editor-search-field>svg{left:13px;position:absolute;color:var(--text-faint);pointer-events:none}.v2-editor-projects-screen .v2-editor-search-input{width:100%;min-height:38px;padding:9px 16px 9px 36px;border-radius:8px;background:var(--surface-1)}.v2-editor-projects-overview{min-height:34px;margin-bottom:20px;color:var(--text-faint)}.v2-editor-projects-overview-line{width:min(100px,10vw);background:var(--border-strong)}.v2-editor-projects-overview-meta{color:var(--text-dim);font-size:10px;letter-spacing:.13em}.v2-editor-projects-grid{gap:20px;grid-template-columns:repeat(auto-fill,minmax(290px,1fr))}.v2-editor-project-card{cursor:default;border-color:var(--border-faint);border-radius:10px;background:color-mix(in oklch,var(--surface-1) 90%,var(--bg-deep));box-shadow:0 12px 32px oklch(.05 .01 280/.18);outline:none;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}.v2-editor-project-card-open{display:flex;flex-direction:column;width:100%;padding:0;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.v2-editor-project-card-open:focus-visible{outline:2px solid var(--warm);outline-offset:-2px}.v2-editor-project-card:focus-visible,.v2-editor-project-card:hover{border-color:var(--warm-line);box-shadow:0 18px 40px oklch(.05 .01 280/.36);transform:translateY(-3px)}.v2-editor-project-card:focus-visible{box-shadow:0 0 0 2px var(--warm-soft),0 18px 40px oklch(.05 .01 280/.36)}.v2-editor-project-card.is-loading{min-height:230px;opacity:.55;background:linear-gradient(110deg,var(--surface-1) 8%,var(--surface-2) 18%,var(--surface-1) 33%);background-size:200% 100%;animation:v2-editor-skeleton 1.3s linear infinite}.v2-editor-card-placeholder{display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--text-faint)}.v2-editor-card-placeholder span{font-family:var(--mono);font-size:11px;letter-spacing:.08em}.v2-editor-card-thumb{background:linear-gradient(135deg,var(--surface-2),transparent 55%),var(--bg-deep)}.v2-editor-card-thumb:after{position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,oklch(.05 .01 280/.7));content:"";pointer-events:none}.v2-editor-card-open-hint{position:absolute;right:10px;bottom:10px;z-index:3;color:var(--warm);font-family:var(--mono);font-size:10px;letter-spacing:.08em;opacity:0;transform:translateY(4px);transition:opacity .2s ease,transform .2s ease}.v2-editor-project-card-open:focus-visible .v2-editor-card-open-hint,.v2-editor-project-card-open:hover .v2-editor-card-open-hint{opacity:1;transform:translateY(0)}.v2-editor-card-body{gap:8px;padding:16px 17px 14px}.v2-editor-card-title{font-size:15px}.v2-editor-card-meta{color:var(--text-faint)}.v2-editor-projects-list-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:30px 0 14px}.v2-editor-projects-list-header h2{margin-top:5px;font-family:var(--serif);font-size:24px;font-weight:400}.v2-editor-projects-list-header>span{color:var(--text-dim);font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase}.v2-editor-section-label{display:block;color:var(--text-faint);font-size:10px}.v2-editor-empty-state{position:relative;display:grid;grid-template-columns:90px minmax(0,1fr) 180px;align-items:center;min-height:420px;overflow:hidden;border:1px solid var(--border-faint);border-radius:12px;background:radial-gradient(circle at 60% 40%,var(--warm-soft),transparent 30%),color-mix(in oklch,var(--bg-deep) 90%,var(--surface-2))}.v2-editor-empty-index{align-self:stretch;display:flex;flex-direction:column;justify-content:space-between;padding:24px 16px;border-right:1px solid var(--border-faint);color:var(--text-dim);font-family:var(--mono);font-size:11px;letter-spacing:.12em}.v2-editor-empty-index strong{color:var(--warm);font-size:28px;font-weight:400;letter-spacing:-.08em}.v2-editor-empty-copy{max-width:500px;padding:46px 48px}.v2-editor-empty-eyebrow{margin-bottom:24px}.v2-editor-empty-eyebrow-line{width:54px}.v2-editor-empty-icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;margin-bottom:20px;border:1px solid var(--warm-line);border-radius:50%;color:var(--warm);background:var(--warm-soft)}.v2-editor-empty-copy h2,.v2-editor-empty-state.is-search-empty h2{max-width:440px;font-family:var(--serif);font-size:clamp(28px,3.2vw,44px);font-weight:400;letter-spacing:-.04em;line-height:1.08}.v2-editor-empty-copy>p,.v2-editor-empty-state.is-search-empty>p{max-width:440px;margin-top:14px;color:var(--text-muted);font-size:13px;line-height:1.75}.v2-editor-empty-actions{gap:9px;margin-top:26px}.v2-editor-empty-filmstrip{display:flex;flex-direction:column;gap:8px;align-self:stretch;justify-content:center;padding:28px 22px;border-left:1px solid var(--border-faint);background:oklch(.08 .01 280/.28)}.v2-editor-empty-frame{position:relative;display:flex;align-items:center;justify-content:space-between;height:40px;padding:0 9px;overflow:hidden;border:1px solid var(--border-faint);border-radius:4px;color:var(--text-dim);background:var(--surface-1);font-family:var(--mono);font-size:10px}.v2-editor-empty-frame:after,.v2-editor-empty-frame:before{position:absolute;width:5px;height:5px;border:1px solid var(--border);border-radius:1px;content:""}.v2-editor-empty-frame:before{top:5px;right:7px}.v2-editor-empty-frame:after{right:7px;bottom:5px}.v2-editor-empty-frame i{display:block;width:50%;height:1px;background:var(--border-strong)}.v2-editor-empty-frame:nth-child(2) i{width:28%;background:var(--warm-line)}.v2-editor-empty-frame:nth-child(4) i{width:70%}.v2-editor-empty-frame.is-add{justify-content:center;border-style:dashed;color:var(--warm);background:transparent}.v2-editor-empty-frame.is-add:after,.v2-editor-empty-frame.is-add:before{display:none}.v2-editor-empty-state.is-search-empty{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:320px;padding:40px 24px;text-align:center}.v2-editor-empty-state.is-search-empty .v2-editor-empty-icon{margin-bottom:16px}.v2-editor-empty-state.is-search-empty .v2-editor-empty-eyebrow{margin-bottom:12px}.v2-editor-empty-state.is-search-empty>p{margin-bottom:22px}@keyframes v2-editor-skeleton{to{background-position:-200% 0}}.v2-editor-confirm-body,.v2-editor-new-project-form{display:flex;flex-direction:column;gap:20px}.v2-editor-modal-field{display:flex;flex-direction:column;gap:9px}.v2-editor-modal-label{color:var(--text);font-size:12px;font-weight:600}.v2-editor-modal-input{width:100%;min-height:42px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;outline:none;background:var(--surface-2);color:var(--text);transition:border-color .16s ease,box-shadow .16s ease}.v2-editor-modal-input:focus{border-color:var(--teal);box-shadow:0 0 0 3px var(--teal-soft)}.v2-editor-ratio-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.v2-editor-ratio-option{display:flex;flex-direction:column;align-items:center;gap:8px;min-height:142px;padding:16px 12px 14px;border:1px solid var(--border);border-radius:10px;color:var(--text);background:var(--surface-2);cursor:pointer;outline:none;transition:border-color .16s ease,background .16s ease,transform .16s ease}.v2-editor-ratio-option:focus-visible,.v2-editor-ratio-option:hover{border-color:var(--teal);transform:translateY(-1px)}.v2-editor-ratio-option.is-selected{border-color:var(--teal);background:var(--teal-soft);color:var(--teal);box-shadow:inset 0 0 0 1px var(--teal)}.v2-editor-ratio-shape{display:block;border:1px solid;border-radius:4px}.v2-editor-ratio-shape.is-landscape{width:54px;height:31px}.v2-editor-ratio-shape.is-portrait{width:31px;height:54px}.v2-editor-ratio-shape.is-square{width:40px;height:40px}.v2-editor-ratio-shape.is-tall{width:36px;height:45px}.v2-editor-ratio-grid.is-four{grid-template-columns:repeat(2,1fr)}.editor-workspace-notice .editor-notice-actions{display:inline-flex;gap:6px;margin-left:10px}.editor-workspace-notice .editor-notice-actions button{padding:2px 10px;border:1px solid var(--border);border-radius:6px;background:var(--surface-2);color:var(--text);font-size:12px;cursor:pointer}.editor-workspace-notice .editor-notice-actions button.primary{border-color:var(--warm);color:var(--warm)}.v2-editor-ratio-name{color:currentColor;font-size:13px;font-weight:600}.v2-editor-ratio-note{color:var(--text-muted);font-size:11px;text-align:center}.v2-editor-modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:4px}.v2-editor-confirm-copy{color:var(--text-muted);font-size:13px;line-height:1.7}.v2-editor-modal-error{color:var(--editor-danger);font-size:12px}body:has(.v2-editor-studio-fullscreen),html:has(.v2-editor-studio-fullscreen){overflow:hidden!important;height:100dvh!important;overscroll-behavior:none}.v2-app.vx-app:has(.v2-editor-studio-fullscreen) .vx-side,.v2-app.vx-app:has(.v2-editor-studio-fullscreen) .vx-tabbar,.v2-app.vx-app:has(.v2-editor-studio-fullscreen) .vx-top{display:none!important}.vx-body:has(.v2-editor-studio-fullscreen){height:100dvh;min-height:0;margin-left:0!important;overflow:hidden}.vx-body:has(.v2-editor-studio-fullscreen) .vx-main{min-height:0;height:100%;overflow:hidden}.v2-editor-studio,.v2-editor-studio-fullscreen{color-scheme:dark;position:fixed;inset:0;z-index:55;display:flex;flex-direction:column;background:var(--bg-deep);color:var(--text);overflow:hidden;-webkit-user-select:none;-moz-user-select:none;user-select:none;font-family:inherit}.v2-editor-header{height:52px;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 16px;background:var(--surface-1);border-bottom:1px solid var(--border);z-index:25}.v2-editor-header-center,.v2-editor-header-left,.v2-editor-header-right{display:flex;align-items:center;gap:12px;min-width:0}.v2-editor-header-left{flex:0 1 auto;overflow:hidden}.v2-editor-header-center{flex:1 1 auto;justify-content:center}.v2-editor-header-right{flex:0 0 auto}.v2-editor-title-input{background:transparent;border:1px solid transparent;border-radius:6px;padding:4px 8px;font-size:14.5px;font-weight:600;color:var(--text);outline:none;transition:all .15s ease;min-width:0;max-width:260px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v2-editor-header-left .v2-editor-select{flex-shrink:0}.v2-editor-title-input:hover{background:var(--surface-2);border-color:var(--border-faint)}.v2-editor-title-input:focus{background:var(--surface-2);border-color:var(--teal)}.v2-editor-select{-moz-appearance:none;appearance:none;-webkit-appearance:none;background-color:var(--surface-2);background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'><path d='M1 1l4 4 4-4' fill='none' stroke='%23a09aa5' stroke-width='1.5' stroke-linecap='round'/></svg>");background-repeat:no-repeat;background-position:right 10px center;border:1px solid var(--border);border-radius:999px;padding:4px 26px 4px 12px;font-size:12px;font-weight:500;color:var(--text);outline:none;cursor:pointer;transition:border-color .15s ease,background-color .15s ease}.v2-editor-select:hover{border-color:var(--border-strong);background-color:var(--surface-3)}.v2-editor-select:focus-visible{border-color:var(--warm)}.v2-editor-canvas-quality-label{font-size:11px;color:var(--text-muted);margin-right:2px}.v2-tl-toolbar-zoom{min-width:56px;font-family:var(--mono);font-variant-numeric:tabular-nums}.v2-editor-save-indicator{display:flex;align-items:center;gap:6px;font-size:12px;font-family:var(--mono);color:var(--text-muted)}.v2-editor-save-dot{width:7px;height:7px;border-radius:50%}.v2-editor-save-dot.saved{background:var(--teal);box-shadow:0 0 6px var(--teal)}.v2-editor-save-dot.dirty{background:var(--warm);box-shadow:0 0 6px var(--warm)}.v2-editor-save-dot.saving{background:var(--teal);opacity:.7;animation:v2-pulse 1s infinite}.v2-editor-save-dot.error{background:var(--warn);box-shadow:0 0 6px var(--warn)}.v2-editor-render-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 16px;border-radius:8px;font-size:13px;font-weight:600;background:var(--warm);color:var(--on-accent);border:none;cursor:pointer;transition:all .15s ease;box-shadow:0 2px 10px oklch(.82 .11 350/.28)}.v2-editor-render-btn:hover{background:oklch(.88 .11 350);transform:translateY(-1px);box-shadow:0 4px 14px oklch(.82 .11 350/.38)}.v2-editor-render-btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.v2-editor-workspace-body{position:relative;flex:1;display:flex;min-height:0;overflow:hidden}.v2-editor-studio-fullscreen.is-resizing{-webkit-user-select:none;-moz-user-select:none;user-select:none}.editor-panels.is-resizing,.v2-editor-inspector.is-resizing,.v2-editor-studio-fullscreen.is-resizing .editor-panels,.v2-editor-studio-fullscreen.is-resizing .v2-editor-inspector,.v2-editor-studio-fullscreen.is-resizing .v2-tl-container,.v2-editor-workspace-body.is-resizing .editor-panels,.v2-editor-workspace-body.is-resizing .v2-editor-inspector{transition:none!important}.v2-editor-drawer{width:320px;flex-shrink:0;display:flex;flex-direction:column;background:var(--surface-1);border-right:1px solid var(--border);overflow:hidden}.v2-editor-drawer-tabs{display:flex;padding:8px 12px 0;border-bottom:1px solid var(--border-faint);gap:4px;overflow-x:auto;scrollbar-width:none}.v2-editor-drawer-tabs::-webkit-scrollbar{display:none}.v2-editor-drawer-tab{flex-shrink:0;white-space:nowrap;padding:8px 10px;font-size:12.5px;font-weight:500;color:var(--text-muted);background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all .15s ease}.v2-editor-drawer-tab:hover{color:var(--text)}.v2-editor-drawer-tab.active{color:var(--text);border-bottom-color:var(--warm);font-weight:600}.v2-editor-drawer-filters{padding:10px 12px;display:flex;flex-direction:column;gap:8px;border-bottom:1px solid var(--border-faint)}.v2-editor-type-pills{display:flex;gap:6px;overflow-x:auto}.v2-editor-type-pill{padding:3px 10px;border-radius:999px;font-size:11.5px;background:var(--surface-2);border:1px solid var(--border-faint);color:var(--text-muted);cursor:pointer}.v2-editor-type-pill.active{background:var(--teal-soft);color:var(--teal);border-color:var(--teal);font-weight:600}.v2-editor-dropzone{margin:12px;padding:16px 12px;border:1.5px dashed var(--border);border-radius:12px;text-align:center;background:var(--surface-2);cursor:pointer;transition:all .15s ease;display:flex;flex-direction:column;align-items:center;gap:6px}.v2-editor-dropzone.drag-over,.v2-editor-dropzone:hover{border-color:var(--teal);background:var(--teal-soft)}.v2-editor-upload-progress{width:100%;height:4px;background:var(--surface-3);border-radius:999px;overflow:hidden;margin-top:6px}.v2-editor-upload-bar{height:100%;background:var(--teal);transition:width .2s ease}.v2-editor-drawer-list{flex:1;overflow-y:auto;padding:10px 12px;display:flex;flex-direction:column;gap:12px}.v2-editor-drawer-list section{display:flex;flex-direction:column;gap:8px}.v2-editor-asset-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%}.v2-editor-asset-item{display:flex;flex-direction:column;align-items:stretch;gap:6px;padding:6px;border-radius:8px;background:var(--surface-2);border:1px solid var(--border-faint);cursor:grab;transition:all .15s ease;min-width:0;position:relative;overflow:hidden}.v2-editor-asset-item:hover{background:var(--surface-3);border-color:var(--border)}.v2-editor-asset-thumb{position:relative;width:100%;aspect-ratio:16/9;border-radius:4px;background:var(--bg-deep);overflow:hidden;flex-shrink:0;display:flex;align-items:center;justify-content:center}.v2-editor-asset-thumb img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .2s ease}.v2-editor-asset-item:hover .v2-editor-asset-thumb img{transform:scale(1.04)}.v2-editor-asset-audio-thumb{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:var(--bg-deep);color:var(--teal)}.v2-editor-asset-thumb-usage{top:3px;left:3px;background:rgba(13,148,136,.9);font-weight:600}.v2-editor-asset-thumb-badge,.v2-editor-asset-thumb-duration,.v2-editor-asset-thumb-usage{position:absolute;padding:1px 4px;border-radius:3px;color:#fff;font-size:9.5px;line-height:13px;white-space:nowrap;pointer-events:none;z-index:1}.v2-editor-asset-thumb-badge,.v2-editor-asset-thumb-duration{right:3px;bottom:3px;background:rgba(0,0,0,.75);font-weight:500}.v2-editor-asset-thumb-duration{font-variant-numeric:tabular-nums}.v2-editor-asset-thumb-badge{font-size:9px;background:rgba(0,0,0,.65)}.v2-editor-asset-info{width:100%;min-width:0;display:flex;flex-direction:column;gap:3px;overflow:hidden}.v2-editor-asset-name{font-size:11.5px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3;color:var(--text)}.v2-editor-asset-footer{justify-content:space-between}.v2-editor-asset-footer,.v2-editor-asset-tags{display:flex;align-items:center;gap:4px;min-width:0}.v2-editor-asset-tags{font-size:10.5px;color:var(--text-muted);white-space:nowrap;overflow:hidden;flex:1}.v2-editor-asset-tags>*{flex-shrink:0;white-space:nowrap}.v2-editor-asset-dim{font-variant-numeric:tabular-nums;font-size:10px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v2-editor-asset-usage-badge{padding:0 4px;border-radius:3px;font-size:10px;line-height:14px;background:var(--teal-soft);color:var(--teal);font-weight:600;white-space:nowrap;flex-shrink:0}.v2-editor-asset-actions{display:flex;align-items:center;gap:2px;flex-shrink:0;margin-left:auto}.v2-editor-asset-actions .v2-editor-card-action-btn{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border-radius:4px;color:var(--text-muted);background:var(--surface-3);border:1px solid var(--border-faint);cursor:pointer;transition:all .15s ease;flex-shrink:0}.v2-editor-asset-actions .v2-editor-card-action-btn:hover{color:var(--text);background:var(--surface-4,rgba(255,255,255,.12));border-color:var(--border)}.editor-audio-library{display:flex;flex-direction:column;gap:8px}.editor-audio-library .editor-panel-hint{margin:0}.editor-audio-library-families{padding-bottom:2px;scrollbar-width:none}.editor-audio-library-families::-webkit-scrollbar{display:none}.editor-audio-library-families .v2-editor-type-pill{flex-shrink:0;white-space:nowrap}.editor-audio-library-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.editor-audio-library-item{display:flex;align-items:flex-start;gap:8px;padding:8px;border-radius:8px;background:var(--surface-2);border:1px solid var(--border-faint);transition:border-color .15s ease}.editor-audio-library-item:hover{border-color:var(--border)}.editor-audio-library-play{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;border:1px solid var(--border-faint);background:var(--surface-3);color:var(--text);cursor:pointer}.editor-audio-library-play:hover{border-color:var(--teal);color:var(--teal)}.editor-audio-library-play.has-cover{width:40px;height:40px;border-radius:6px;background-size:cover;background-position:50%;color:#fff;position:relative}.editor-audio-library-play.has-cover:before{content:"";position:absolute;inset:0;border-radius:inherit;background:rgba(0,0,0,.32)}.editor-audio-library-play.has-cover>*{position:relative}.editor-audio-library-play.has-cover:hover{color:#fff}.editor-audio-library-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.editor-audio-library-toolbar .editor-audio-library-families{flex:1 1 auto;min-width:0}.editor-audio-library-sort{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;color:var(--text-dim);margin-left:auto}.editor-audio-library-sort select{font-size:11.5px;padding:3px 6px;border-radius:6px;border:1px solid var(--border-faint);background:var(--surface-2);color:var(--text)}.editor-audio-library-copyright{margin:10px 0 2px;font-size:11px;color:var(--text-dim);text-align:center}.editor-audio-library-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.editor-audio-library-name{font-size:12.5px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.editor-audio-library-facts{font-size:11px;color:var(--text-muted);font-variant-numeric:tabular-nums}.editor-audio-library-failed{color:var(--editor-danger)}.editor-audio-library-desc{margin:2px 0 0;font-size:11px;line-height:1.5;color:var(--text-muted);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.editor-audio-library-add{flex-shrink:0;align-self:center;width:26px;height:26px;justify-content:center;padding:0;background:var(--surface-3);border:1px solid var(--border-faint)}.editor-audio-library-add:disabled{opacity:.5;cursor:progress}.editor-audio-library-empty{padding:24px 8px;text-align:center;font-size:12px;color:var(--text-muted)}.v2-editor-asset-preview-error{font-size:9.5px;color:var(--warm);white-space:nowrap}.v2-editor-canvas-pane{flex:1;display:flex;flex-direction:column;background:var(--bg-deep);min-width:0;overflow:hidden;position:relative}.v2-editor-canvas-stage{flex:1;padding:20px;min-height:0;background-color:var(--surface-2);background-image:linear-gradient(var(--border-faint) 1px,transparent 1px),linear-gradient(90deg,var(--border-faint) 1px,transparent 1px);background-size:32px 32px}.v2-editor-canvas-box,.v2-editor-canvas-stage{display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.v2-editor-canvas-box{background:#000;border:1px solid var(--border-strong);box-shadow:0 0 0 1px oklch(.08 .01 280/.7),0 16px 48px rgba(0,0,0,.75);border-radius:8px}.v2-editor-canvas-box.ratio-1-1,.v2-editor-canvas-box.ratio-16-9,.v2-editor-canvas-box.ratio-4-5,.v2-editor-canvas-box.ratio-9-16{max-width:100%;max-height:100%}.v2-editor-canvas-video{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.v2-editor-canvas-overlay{inset:0;align-items:center;z-index:5}.v2-editor-canvas-overlay,.v2-editor-canvas-subtitle{position:absolute;pointer-events:none;display:flex;justify-content:center}.v2-editor-canvas-subtitle{left:0;right:0;bottom:12%;z-index:10;padding:0 16px}.v2-editor-canvas-subtitle-text{padding:4px 12px;border-radius:6px;max-width:80%;text-align:center;line-height:1.4;word-break:break-word}.v2-editor-bbox{position:absolute;border:1.5px solid var(--warm);box-sizing:border-box;pointer-events:auto;cursor:move;z-index:15}.v2-editor-bbox-handle{position:absolute;width:8px;height:8px;background:#fff;border:1px solid var(--warm);border-radius:2px}.v2-editor-bbox-handle.nw{top:-4px;left:-4px;cursor:nwse-resize}.v2-editor-bbox-handle.ne{top:-4px;right:-4px;cursor:nesw-resize}.v2-editor-bbox-handle.se{bottom:-4px;right:-4px;cursor:nwse-resize}.v2-editor-bbox-handle.sw{bottom:-4px;left:-4px;cursor:nesw-resize}.v2-editor-canvas-controls{height:48px;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:0 20px;background:var(--surface-1);border-top:1px solid var(--border-faint);z-index:5}.v2-editor-transport-btn{background:transparent;border:none;color:var(--text);cursor:pointer;padding:6px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;transition:all .15s ease}.v2-editor-transport-btn:hover{background:var(--surface-2)}.v2-editor-transport-btn.play{background:var(--warm);color:var(--on-accent);width:32px;height:32px;border-radius:50%}.v2-editor-timecode{font-family:var(--mono);font-size:13px;letter-spacing:.05em;color:var(--text)}.v2-editor-inspector{width:300px;flex-shrink:0;display:flex;flex-direction:column;background:var(--surface-1);border-left:1px solid var(--border);overflow-y:auto;transition:width .22s cubic-bezier(.2,0,0,1),min-width .22s cubic-bezier(.2,0,0,1),opacity .22s ease}.v2-editor-inspector.collapsed{width:0!important;min-width:0!important;opacity:0;pointer-events:none;border-left:none}.editor-inspector-resizer{width:5px;flex-shrink:0;background:var(--border-faint);cursor:col-resize;touch-action:none;transition:background .15s ease;position:relative;z-index:25}.editor-inspector-resizer:focus-visible,.editor-inspector-resizer:hover{background:var(--warm)}.editor-inspector-resizer.collapsed{display:none}.v2-editor-inspector-collapse-btn{background:transparent;border:1px solid transparent;color:var(--text-muted);border-radius:4px;cursor:pointer;padding:2px 6px;font-size:13px;line-height:1;display:inline-flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease}.v2-editor-inspector-collapse-btn:hover{background:var(--surface-2);color:var(--text)}.editor-inspector-expand-tab{position:absolute;right:0;top:50%;transform:translateY(-50%);z-index:30;width:18px;height:48px;background:var(--surface-2);border:1px solid var(--border);border-right:none;border-radius:6px 0 0 6px;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:12px;transition:background .15s ease,color .15s ease}.editor-inspector-expand-tab:hover{background:var(--surface-3);color:var(--warm)}.v2-editor-inspector-section{padding:16px;border-bottom:1px solid var(--border-faint);display:flex;flex-direction:column;gap:12px}.v2-editor-inspector-title{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-faint)}.v2-editor-field-row{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12.5px}.v2-editor-field-input{background:var(--surface-2);border:1px solid var(--border-faint);border-radius:6px;padding:4px 8px;font-size:12px;color:var(--text);width:90px;outline:none;font-family:var(--mono)}.v2-editor-field-input:focus{border-color:var(--teal)}.v2-editor-font-select{width:150px;font-family:inherit}.v2-editor-field-select-wide{width:130px}.v2-editor-btn-group{display:flex;gap:4px}.v2-editor-btn-group-item{padding:4px 10px;border-radius:6px;font-size:12px;background:var(--surface-2);border:1px solid var(--border-faint);color:var(--text-muted);cursor:pointer}.v2-editor-btn-group-item.active{background:var(--warm);color:var(--on-accent);border-color:var(--warm);font-weight:600}.editor-timeline-resizer{height:5px;flex-shrink:0;background:var(--border-faint);cursor:row-resize;position:relative;z-index:25;touch-action:none;transition:background .15s ease}.editor-timeline-resizer:after{content:"";position:absolute;inset:-3px 0}.editor-timeline-resizer:focus-visible,.editor-timeline-resizer:hover{background:var(--warm)}.v2-tl-container{height:var(--timeline-height,320px);flex-shrink:0;display:flex;flex-direction:column;background:var(--bg-deep);border-top:1px solid var(--border);position:relative;z-index:20}.v2-tl-toolbar{overflow-x:auto;height:40px;justify-content:space-between;padding:0 16px;background:var(--surface-1);border-bottom:1px solid var(--border-faint)}.v2-tl-toolbar,.v2-tl-toolbar-group{flex-shrink:0;display:flex;align-items:center}.v2-tl-toolbar-group{gap:6px}.v2-tl-tool-btn{flex-shrink:0;white-space:nowrap;display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:6px;background:transparent;border:1px solid transparent;color:var(--text-muted);font-size:12px;cursor:pointer;transition:all .15s ease}.v2-tl-tool-btn:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.v2-tl-tool-btn:disabled{cursor:not-allowed;color:var(--text-faint)}.v2-tl-toolbar-left{display:flex;align-items:center;gap:8px;min-width:0}.v2-tl-toolbar-sep{flex:0 0 auto;width:1px;height:18px;background:var(--border)}.v2-tl-toolbar-status{font-size:12px;color:var(--text-muted);white-space:nowrap}.v2-tl-toolbar-right{gap:8px}.v2-tl-tool-btn.active{background:var(--teal-soft);color:var(--teal);border-color:var(--teal)}.v2-tl-scroll-area{flex:1;display:flex;flex-direction:column;overflow-x:auto;overflow-y:auto;position:relative;overscroll-behavior-x:contain}.v2-tl-ruler-row{display:flex;width:-moz-max-content;width:max-content;min-width:100%}.v2-tl-ruler-corner{width:var(--timeline-track-header-width,220px);flex-shrink:0;background:var(--surface-1);border-right:1px solid var(--border);position:sticky;left:0;z-index:45}.v2-tl-ruler{height:28px;background:var(--surface-2);border-bottom:1px solid var(--border-faint);position:relative;cursor:pointer;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-shrink:0}.v2-tl-playhead{bottom:0;width:2px;z-index:40;pointer-events:none}.v2-tl-playhead,.v2-tl-playhead-handle{position:absolute;top:0;background:var(--warm)}.v2-tl-playhead-handle{left:-7px;width:16px;height:20px;clip-path:polygon(0 0,100% 0,100% 60%,50% 100%,0 60%);cursor:ew-resize;pointer-events:auto;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.v2-tl-track{height:56px;flex-shrink:0;display:flex;border-bottom:1px solid var(--border-faint);position:relative;width:-moz-max-content;width:max-content;min-width:100%}.v2-tl-track-header{width:var(--timeline-track-header-width,220px);min-width:var(--timeline-track-header-width,220px);box-sizing:border-box;gap:12px;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:0 12px;background:var(--surface-1);border-right:1px solid var(--border);font-size:12px;font-weight:500;position:sticky;left:0;z-index:45}.v2-tl-track-lane{flex:1;position:relative;background:var(--surface-2);min-width:1000px}.v2-tl-track-hint{display:block;box-sizing:border-box;width:100%;padding:0 24px;color:var(--text-faint);font-size:12px;line-height:56px;text-align:center;opacity:.65;pointer-events:none;white-space:nowrap}.v2-tl-clip{position:absolute;top:4px;bottom:4px;min-height:44px;box-sizing:border-box;border-radius:6px;background:var(--surface-3);border:1px solid var(--border);display:flex;align-items:center;padding:0 8px;cursor:grab;overflow:hidden;transition:border-color .15s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:none}.v2-tl-clip.selected{border-color:var(--warm);box-shadow:0 0 0 1px var(--warm)}.v2-tl-clip.track-text{background:rgba(126,87,194,.25);border-color:rgba(126,87,194,.5)}.v2-tl-clip.track-v1{background:rgba(30,144,255,.25);border-color:rgba(30,144,255,.5)}.v2-tl-clip.track-v2{background:rgba(46,204,113,.25);border-color:rgba(46,204,113,.5)}.v2-tl-clip.track-a1{background:rgba(230,126,34,.25);border-color:rgba(230,126,34,.5)}.v2-tl-trim-handle{position:absolute;top:0;bottom:0;width:8px;background:rgba(255,255,255,.15);cursor:ew-resize;touch-action:none;opacity:0;transition:opacity .15s ease}.v2-tl-clip.selected .v2-tl-trim-handle,.v2-tl-clip:hover .v2-tl-trim-handle{opacity:1}.v2-tl-trim-handle.start{left:0;border-top-left-radius:5px;border-bottom-left-radius:5px}.v2-tl-trim-handle.end{right:0;border-top-right-radius:5px;border-bottom-right-radius:5px}.v2-tl-transition-btn{position:absolute;top:50%;transform:translateY(-50%);width:20px;height:20px;border-radius:50%;background:var(--surface-hi);border:1px solid var(--border);color:var(--text);display:flex;align-items:center;justify-content:center;font-size:11px;cursor:pointer;z-index:5;transition:all .15s ease}.v2-tl-transition-btn:hover{background:var(--warm);color:var(--on-accent);border-color:var(--warm)}@keyframes v2-pulse{0%,to{opacity:1}50%{opacity:.4}}@media (max-width:1180px){.v2-editor-drawer{width:260px}.v2-editor-inspector{width:250px}.v2-tl-container{height:280px}}@media (max-width:940px){.v2-editor-drawer,.v2-editor-inspector{width:220px}.v2-editor-title-input{max-width:120px}.v2-editor-header-center{display:none}}.v2-tl-snap-guide{position:absolute;top:0;bottom:0;width:1px;background:var(--teal);box-shadow:0 0 6px var(--teal);z-index:38;pointer-events:none}.v2-editor-help-button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:28px;height:28px;padding:0;border:1px solid transparent;border-radius:50%;background:transparent;color:var(--text-muted);cursor:pointer;vertical-align:middle}.v2-editor-help-button:hover{color:var(--text);background:var(--surface-2);border-color:var(--border)}.v2-editor-help-button:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.v2-editor-help-label{display:inline-flex;align-items:center;gap:4px}.v2-editor-help-copy{margin:0;font-size:14px;line-height:1.8;color:var(--text);white-space:pre-line;overflow-wrap:anywhere}.v2-editor-help-actions{display:flex;justify-content:flex-end;margin-top:20px}.v2-editor-canvas-pane{container-type:inline-size}.v2-editor-timecode{white-space:nowrap}@container (max-width: 680px){.v2-editor-canvas-controls{display:grid;grid-template-columns:1fr auto;height:auto;min-height:72px;padding:8px 16px;row-gap:6px}.v2-editor-timecode{grid-column:1/-1}}.v2-modal.v2-editor-modal{--editor-modal-inset:28px}.v2-modal.v2-editor-modal.sm{max-width:520px}.v2-modal.v2-editor-modal.v2-editor-shortcuts-modal{max-width:min(920px,calc(100vw - 32px));width:100%}.v2-editor-modal>.v2-modal-head{padding:24px var(--editor-modal-inset);gap:16px;flex-shrink:0}.v2-editor-modal>.v2-modal-head .v2-modal-title{min-width:0;overflow-wrap:anywhere;line-height:1.5}.v2-editor-modal>.v2-modal-head .v2-modal-x{flex-shrink:0}.v2-editor-modal>.v2-modal-body{padding:var(--editor-modal-inset);min-height:0}.v2-editor-modal .v2-editor-help-actions{margin-top:28px;gap:12px}@media (max-width:540px){.v2-modal.v2-editor-modal{--editor-modal-inset:20px}.v2-editor-modal>.v2-modal-head{padding-block:20px}.v2-editor-ratio-grid{grid-template-columns:1fr}.v2-editor-ratio-option{min-height:118px}.v2-editor-modal-actions>.v2-btn{flex:1;justify-content:center}}@media (max-width:760px){.v2-editor-projects-screen{min-height:calc(100vh - 52px);overflow-y:auto;padding:24px 20px 96px}.v2-editor-projects-screen .v2-tool-head-actions{display:grid;grid-template-columns:1fr 1fr}.v2-editor-projects-screen .v2-editor-search-field{grid-column:1/-1}.v2-editor-projects-screen .v2-tool-head-actions .v2-btn{justify-content:center;width:100%}.v2-editor-projects-overview-meta{display:none}.v2-editor-projects-overview-line{flex:1;width:auto}.v2-editor-empty-state{grid-template-columns:48px minmax(0,1fr);min-height:500px}.v2-editor-empty-index{padding:18px 10px}.v2-editor-empty-index strong{font-size:20px}.v2-editor-empty-copy{padding:26px 24px 20px}.v2-editor-empty-copy .v2-editor-empty-eyebrow{margin-bottom:16px}.v2-editor-empty-copy .v2-editor-empty-icon{width:40px;height:40px;margin-bottom:14px}.v2-editor-empty-copy h2,.v2-editor-empty-state.is-search-empty h2{font-size:30px}.v2-editor-empty-copy>p{margin-top:10px}.v2-editor-empty-actions{margin-top:18px}.v2-editor-empty-filmstrip{grid-column:1/-1;flex-direction:row;align-self:auto;gap:6px;padding:14px 16px;border-top:1px solid var(--border-faint);border-left:0}.v2-editor-empty-frame{flex:1;height:32px;padding:0 6px}.v2-editor-empty-frame i,.v2-editor-empty-frame:after,.v2-editor-empty-frame:before{display:none}.v2-editor-projects-list-header{align-items:flex-start;flex-direction:column;gap:8px}}.v2-editor-projects-screen .sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.editor-panel-rail{width:58px;flex-shrink:0;display:flex;flex-direction:column;gap:5px;padding:10px 4px;overflow-y:auto;background:var(--surface-1);border-right:1px solid var(--border-faint)}.editor-panel-rail button{min-height:43px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;background:transparent;color:var(--text-muted);border:1px solid transparent;border-radius:8px;font-size:11px;cursor:pointer}.editor-panel-rail button span{display:inline-flex;line-height:1}.editor-panel-rail button[aria-pressed=true]{color:var(--warm);background:var(--warm-soft);border-color:var(--warm-line)}.editor-panel-collapse-toggle{margin-top:auto;min-height:38px;justify-content:center;border:1px solid transparent;border-radius:8px;font-size:14px;transition:background .15s ease,color .15s ease}.editor-panel-collapse-toggle:hover{background:var(--surface-2)}.editor-panels{min-width:260px;flex-shrink:0;display:flex;flex-direction:column;min-height:0;overflow:hidden;background:var(--surface-1);transition:width .22s cubic-bezier(.2,0,0,1),min-width .22s cubic-bezier(.2,0,0,1),opacity .22s ease}.editor-panels.collapsed{width:0!important;min-width:0!important;opacity:0;pointer-events:none;border-right:none}.editor-panels .v2-editor-drawer{width:100%;flex:1;min-height:0;border:0}.editor-panel-resizer{width:5px;flex-shrink:0;background:var(--border-faint);cursor:col-resize;touch-action:none}.editor-panel-resizer:focus,.editor-panel-resizer:hover{background:var(--warm)}.editor-panel-resizer.collapsed{display:none}.editor-panel-head{flex-shrink:0;padding:12px;border-bottom:1px solid var(--border-faint)}.editor-panel-head h2{font-size:14px;margin:2px 0 10px}.editor-panel-head p{font-size:12px;color:var(--text-muted);margin:8px 0 0}.editor-panel-tabs{display:flex;gap:3px;padding:3px;background:var(--bg-deep);border-radius:7px;margin-bottom:10px}.editor-panel-tabs button{flex:1;border:0;border-radius:5px;padding:7px 2px;font-size:12px;background:transparent;color:var(--text-muted);cursor:pointer}.editor-panel-tabs button[aria-pressed=true]{background:var(--surface-3);color:var(--text)}.editor-panel-field input[type=number],.editor-panel-head input{width:100%;padding:8px;border:1px solid var(--border);border-radius:6px;background:var(--bg-deep);color:var(--text);font-size:12px}.editor-panel-chips{display:flex;gap:5px;margin-top:10px;flex-wrap:wrap}.editor-panel-chips button{border:1px solid var(--border);background:transparent;color:var(--text-muted);border-radius:12px;padding:3px 8px;font-size:11px;cursor:pointer;display:inline-flex;align-items:center;gap:4px;transition:all .15s ease}.editor-panel-chips button:hover{border-color:var(--border-bright,var(--border));color:var(--text)}.editor-panel-chips button[aria-checked=true],.editor-panel-chips button[aria-pressed=true]{border-color:var(--teal,var(--warm-line));background:var(--teal-soft,var(--warm-soft));color:var(--teal,var(--warm));font-weight:500}.editor-chip-count{display:inline-block;font-family:var(--mono);font-size:10px;line-height:1;padding:1px 4px;border-radius:8px;background:var(--surface-3);color:var(--text-muted)}.editor-panel-chips button[aria-checked=true] .editor-chip-count,.editor-panel-chips button[aria-pressed=true] .editor-chip-count{background:rgba(20,184,166,.2);color:var(--teal)}.editor-panel-body{flex:1;min-height:0;overflow-y:auto;padding:14px 12px}.editor-panel-group,.v2-editor-asset-group-title{font:11px var(--mono);color:var(--text-muted);display:flex;gap:10px;align-items:center;margin:18px 0 12px}.editor-panel-group:after,.v2-editor-asset-group-title:after{content:"";flex:1;height:1px;background:var(--border-faint)}.editor-panel-add{width:100%;border:1px solid var(--border);background:var(--surface-2);color:var(--text);border-radius:7px;padding:10px;text-align:left;cursor:pointer;margin-bottom:8px;font-size:12px}.editor-template-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.editor-template{border:1px solid var(--border-faint);border-radius:8px;overflow:hidden;cursor:grab;background:var(--bg-deep)}.editor-template:hover{border-color:var(--warm-line)}.editor-template-preview{min-height:92px;display:flex;align-items:center;justify-content:center;white-space:pre-line;text-align:center;padding:10px;font-size:16px;font-weight:700;background:linear-gradient(145deg,#363040,#1f2830)}.preset-price{color:#17141f;background:#e5e1de}.preset-cta{color:#17141f;background:#e8a0bd}.preset-chapter{font-family:monospace;font-size:12px}.editor-template-caption{display:flex;padding:8px;gap:4px;justify-content:space-between;font-size:12px}.editor-template-caption small{display:block;font-size:10px;color:var(--text-faint);margin-top:3px}.editor-template-caption button{border:0;background:transparent;color:var(--warm);cursor:pointer;font-size:18px}.editor-panel-hint{font-size:12px;color:var(--text-muted);line-height:1.7;margin:12px 0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;cursor:help;transition:color .15s ease}.editor-panel-hint:focus,.editor-panel-hint:focus-within,.editor-panel-hint:hover{-webkit-line-clamp:unset;color:var(--text)}.editor-panel-hint:has(a),.editor-panel-hint:has(button),.editor-panel-hint[role=status]{display:block;-webkit-line-clamp:unset;cursor:auto}.editor-panel-bottom{margin-top:auto;flex-shrink:0;border-top:1px solid var(--border-faint);padding:12px;font-size:12px}.editor-panel-collapse-toggle{width:100%;display:flex;justify-content:space-between;align-items:center;padding:8px 0;border:0;border-top:1px solid var(--border-faint);background:transparent;color:var(--text-muted);font:inherit;font-size:12px;text-align:left;cursor:pointer}.editor-panel-collapse-toggle:hover{color:var(--text)}.editor-panel-bottom label{display:block}.editor-panel-bottom output{float:right;font-family:var(--mono)}.editor-panel-bottom input[type=range],.editor-panel-field input[type=range]{width:100%;margin-top:12px;accent-color:var(--warm)}.editor-panel-primary{width:100%;padding:10px;border:0;border-radius:7px;background:var(--brand-grad,linear-gradient(135deg,#e8a0bd,#b6a1e7));color:#211a27;font-weight:600;cursor:pointer}.editor-panel-empty{padding:34px 22px;text-align:center;margin:auto 0}.editor-panel-empty-icon{color:var(--warm);font-size:32px}.editor-panel-empty h3{font-size:15px}.editor-panel-empty p{font-size:12px;line-height:1.8;color:var(--text-muted)}.editor-panel-badge{display:inline-block;padding:4px 9px;border:1px solid var(--border);border-radius:12px;color:var(--text-faint);font-size:11px}.editor-caption-track-toolbar{display:flex;align-items:center;gap:8px;margin-bottom:10px}.editor-caption-toolbar-btn{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 10px;border-radius:6px;font-size:11.5px;background:var(--surface-2);border:1px solid var(--border-faint);color:var(--text-muted);cursor:pointer;transition:all .15s ease;white-space:nowrap}.editor-caption-toolbar-btn:hover{background:var(--surface-3);color:var(--text);border-color:var(--border)}.editor-caption-toolbar-btn.is-active{background:var(--teal-soft);color:var(--teal);border-color:rgba(20,184,166,.35)}.editor-caption-toolbar-btn.is-danger{color:var(--danger,#ff4d4f)}.editor-caption-toolbar-btn.is-danger:hover{background:rgba(255,77,79,.1);border-color:rgba(255,77,79,.35)}.editor-caption-add-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:6px;height:34px;margin-bottom:10px;border-radius:6px;font-size:12px;font-weight:500;border:1px dashed var(--border);background:var(--surface-2);color:var(--text-muted);cursor:pointer;transition:all .15s ease}.editor-caption-add-btn:hover{border-color:var(--teal);color:var(--teal);background:var(--surface-3)}.editor-caption-row{padding:10px 12px;margin-bottom:8px;border:1px solid var(--border-faint);border-radius:8px;background:var(--surface-2);transition:all .15s ease}.editor-caption-row:hover{border-color:var(--border)}.editor-caption-row.is-active{border-color:var(--teal);background:rgba(20,184,166,.05)}.editor-caption-row-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.editor-caption-time-btn{display:inline-flex;align-items:center;gap:5px;border:none;background:var(--teal-soft);color:var(--teal);font-family:var(--mono);font-size:11px;font-weight:500;padding:2px 7px;border-radius:4px;cursor:pointer;transition:all .15s ease}.editor-caption-time-btn:hover{filter:brightness(1.1);transform:translateY(-.5px)}.editor-caption-del-btn{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border:none;border-radius:4px;background:transparent;color:var(--text-muted);cursor:pointer;transition:all .15s ease}.editor-caption-del-btn:hover{color:var(--danger,#ff4d4f);background:rgba(255,77,79,.12)}.editor-caption-badge-warning{display:inline-flex;align-items:center;padding:2px 7px;border-radius:4px;font-size:10.5px;margin-bottom:7px;background:rgba(245,158,11,.12);color:#f59e0b;border:1px solid rgba(245,158,11,.25)}.editor-caption-timing-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px}.editor-caption-timing-field{display:flex;align-items:center;gap:6px;font-size:11.5px;color:var(--text-muted);margin:0}.editor-caption-timing-label{flex-shrink:0;font-size:11px}.editor-caption-input-wrap{position:relative;display:flex;align-items:center;flex:1;min-width:0}.editor-caption-time-input{width:100%;min-width:0;background:var(--bg-deep);border:1px solid var(--border-faint);border-radius:5px;padding:4px 16px 4px 6px;font-size:11.5px;font-family:var(--mono);color:var(--text);outline:none;transition:border-color .15s ease}.editor-caption-time-input:focus{border-color:var(--teal)}.editor-caption-input-unit{position:absolute;right:5px;font-size:10px;color:var(--text-faint);font-family:var(--mono);pointer-events:none}.editor-caption-textarea{width:100%;box-sizing:border-box;background:var(--bg-deep);border:1px solid var(--border-faint);border-radius:6px;padding:7px 9px;color:var(--text);font-family:inherit;font-size:12px;line-height:1.5;resize:vertical;min-height:48px;outline:none;transition:border-color .15s ease,background .15s ease;-webkit-user-select:text;-moz-user-select:text;user-select:text}.editor-caption-textarea:focus{border-color:var(--teal);background:var(--surface-1)}.editor-caption-error{margin:5px 0 0;font-size:11px;color:var(--danger,#ff4d4f)}.editor-caption-bottom-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:10px;padding-top:10px;border-top:1px solid var(--border-faint)}.editor-caption-bottom-actions button{height:30px;padding:0 4px;border-radius:6px;font-size:11px;white-space:nowrap;background:var(--surface-2);border:1px solid var(--border-faint);color:var(--text);cursor:pointer;transition:all .15s ease;text-align:center}.editor-caption-bottom-actions button:hover:not(:disabled){background:var(--surface-3);border-color:var(--border)}.editor-caption-bottom-actions button:disabled{opacity:.35;cursor:not-allowed}.editor-panel-field{display:flex;flex-direction:column;gap:8px;font-size:12px;margin:16px 0}.editor-panel-section{margin-bottom:18px;font-size:12px}.editor-panel-options{display:grid;grid-template-columns:1fr 1fr;gap:8px}.editor-panel-option{background:var(--surface-2);color:var(--text);border:1px solid var(--border);padding:12px 8px;border-radius:7px;cursor:pointer}.editor-panel-option.is-active{border-color:var(--warm-line);color:var(--warm);background:var(--warm-soft)}.editor-panel-actions{display:flex;gap:7px;flex-wrap:wrap}.editor-panel-actions button{border:1px solid var(--border);background:var(--surface-2);border-radius:6px;color:var(--text);padding:8px;cursor:pointer;font-size:12px}.editor-panel-notice,.editor-workspace-notice{padding:9px 14px;background:var(--warm-soft);color:var(--warm);font-size:12px}.editor-workspace-notice button{float:right;background:transparent;border:0;color:inherit;cursor:pointer}.editor-panels button:disabled{opacity:.4;cursor:not-allowed}.editor-panel-rail button:focus-visible,.editor-panels button:focus-visible{outline:2px solid var(--warm);outline-offset:2px}.v2-editor-drawer-header{flex-shrink:0}.v2-editor-asset-group-title{width:100%;grid-column:1/-1}@media (max-width:1100px){.editor-panels:not(.is-sheet){width:260px!important}.editor-panel-resizer{display:none}}.editor-panels fieldset{border:0;padding:0;margin:0 0 18px;min-width:0}.editor-panels legend{padding:0 0 12px;color:var(--text-muted);font:11px var(--mono)}.editor-panels [hidden]{display:none!important}.editor-panel-caption-host{min-height:0;overflow-y:auto;flex:1}.ve-panel-stack{display:flex;flex-direction:column;gap:12px}.editor-panel-body .ve-panel-stack>h3{margin:2px 0 4px;color:var(--text);font-size:14px}.editor-panel-body .ve-panel-stack label{color:var(--text-muted);font-size:12px}.ve-panel-stack>fieldset>label,.ve-panel-stack>label{display:flex;flex-direction:column;align-items:stretch;gap:6px;width:100%;box-sizing:border-box}.ve-panel-stack input:not([type=range]),.ve-panel-stack textarea{width:100%;box-sizing:border-box}.ve-panel-stack textarea{min-height:120px;resize:vertical}.editor-panel-body .ve-panel-stack input:not([type=range]),.editor-panel-body .ve-panel-stack textarea{padding:8px;color:var(--text);background:var(--bg-deep);border:1px solid var(--border);border-radius:6px;outline:none}.editor-panel-body .ve-panel-stack input:not([type=range]):focus,.editor-panel-body .ve-panel-stack textarea:focus{border-color:var(--teal);box-shadow:0 0 0 2px var(--teal-soft)}.ve-panel-stack input[type=range]{width:100%}.editor-panel-body .ve-panel-stack button{padding:7px 10px;color:var(--text);background:var(--surface-3);border:1px solid var(--border);border-radius:6px;font-size:12px}.editor-panel-body .ve-panel-stack button:hover:not(:disabled){border-color:var(--warm-line);color:var(--warm)}.editor-panel-body .ve-panel-stack button:disabled{cursor:not-allowed;opacity:.5}.editor-panel-body select,.editor-panel-bottom select{max-width:100%;color:inherit;background:var(--bg-elevated,#24232a);border:1px solid var(--border,#45434d);border-radius:6px;padding:6px}.editor-panel-body>label{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.v2-editor-brand-panel,.v2-editor-sticker-panel{display:flex;flex-direction:column;align-items:stretch;gap:10px;min-width:0;color:var(--text);font-size:12px;line-height:1.55}.v2-editor-sticker-panel+.v2-editor-brand-panel{margin-top:18px;padding-top:18px;border-top:1px solid var(--border-faint)}.v2-editor-brand-panel h3,.v2-editor-sticker-panel h3{margin:0;color:var(--text);font-size:15px;line-height:1.35}.v2-editor-brand-panel h4,.v2-editor-sticker-panel h4{margin:8px 0 0;color:var(--text);font-size:13px;line-height:1.4}.v2-editor-brand-panel p,.v2-editor-sticker-panel p{margin:0;color:var(--text-muted);overflow-wrap:anywhere}.v2-editor-sticker-panel .editor-panel-hint{margin:0;line-height:1.65}.v2-editor-brand-panel div>button,.v2-editor-brand-panel fieldset>button,.v2-editor-brand-panel>button,.v2-editor-sticker-panel>button{align-self:flex-start;max-width:100%;box-sizing:border-box;padding:8px 11px;border:1px solid var(--border);border-radius:7px;background:var(--surface-2);color:var(--text);font-size:12px;line-height:1.35;white-space:normal;cursor:pointer}.v2-editor-brand-panel div>button:hover:not(:disabled),.v2-editor-brand-panel fieldset>button:hover:not(:disabled),.v2-editor-brand-panel>button:hover:not(:disabled),.v2-editor-sticker-panel>button:hover:not(:disabled){border-color:var(--warm-line);color:var(--warm)}.v2-editor-brand-panel fieldset{display:flex;flex-direction:column;gap:10px;min-width:0;margin:0}.v2-editor-brand-panel legend{padding:0;color:var(--text-muted);font:11px var(--mono)}.v2-editor-brand-panel fieldset>label{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;margin:0;color:var(--text-muted)}.v2-editor-brand-panel input[type=color]{width:44px;height:28px;padding:2px;border:1px solid var(--border);border-radius:5px;background:var(--surface-2)}.v2-editor-brand-panel select{width:100%;min-width:0;box-sizing:border-box}.v2-editor-brand-panel .v2-editor-type-pills{flex-wrap:wrap;overflow:visible}.v2-editor-brand-panel .v2-editor-type-pills>span{display:inline-flex;align-items:center;max-width:100%}.v2-editor-brand-panel .v2-editor-type-pills button{min-width:0;padding:4px 7px;border:1px solid var(--border);background:var(--surface-2);color:var(--text-muted);font-size:12px}.v2-editor-brand-panel .v2-editor-type-pills button:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v2-editor-brand-panel .v2-editor-type-pills button:last-child{padding-inline:6px;border-left:0;border-radius:0 5px 5px 0}.v2-editor-brand-panel .v2-editor-type-pills button:first-child{border-radius:5px 0 0 5px}.v2-editor-brand-panel>div{min-width:0}.editor-panel-bottom label:has(input[type=checkbox]){display:flex;align-items:center;gap:6px;margin:8px 0}.v2-tl-roll-handle{position:absolute;bottom:0;height:10px;width:14px;margin-left:-7px;z-index:12;border:1px solid var(--warm);border-radius:3px;color:var(--warm);background:var(--surface-1);cursor:ew-resize;touch-action:none;padding:0;font-size:11px;line-height:8px;opacity:0}.v2-tl-roll-handle:active,.v2-tl-roll-handle:focus-visible,.v2-tl-roll-handle:hover{opacity:1;background:var(--warm);color:var(--surface-1)}.v2-tl-roll-handle:focus-visible{outline:2px solid var(--warm);outline-offset:2px}.v2-editor-empty{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:24px;text-align:center;pointer-events:none}.v2-editor-empty>*{pointer-events:auto}.v2-editor-empty-title{margin:0;font-size:18px;font-weight:600;color:var(--text);text-wrap:balance}.v2-editor-empty-copy{margin:0;font-size:13px;color:var(--text-muted)}.v2-editor-empty-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:4px}.v2-editor-empty-actions .v2-btn{display:inline-flex;align-items:center;gap:6px}.v2-editor-empty-hint{margin-top:8px;padding:4px 8px;border:0;background:transparent;color:var(--text-faint);font-size:12px;cursor:pointer}.v2-editor-empty-hint:hover{color:var(--text)}.v2-editor-empty kbd,.v2-editor-shortcuts kbd,.v2-tl-kbd{display:inline-block;min-width:1.6em;padding:1px 6px;border:solid var(--border);border-width:1px 1px 2px;border-radius:4px;background:var(--surface-2);color:var(--text);font-family:var(--font-mono,ui-monospace,monospace);font-size:12px;line-height:1.5;text-align:center}.v2-tl-kbd{margin-left:4px}.v2-editor-shortcuts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 36px;align-items:start}@media (max-width:720px){.v2-editor-shortcuts{grid-template-columns:1fr;gap:20px}}.v2-editor-shortcuts-col{display:flex;flex-direction:column;gap:24px;min-width:0}.v2-editor-shortcuts-group h3{margin:0 0 8px;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.v2-editor-shortcuts-group dl{margin:0}.v2-editor-shortcuts-row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 12px;padding:8px 0;border-bottom:1px solid var(--border-faint)}.v2-editor-shortcuts-row:last-child{border-bottom:0}.v2-editor-shortcuts-row dt{flex:1 1 170px;min-width:0;font-size:13px;line-height:1.5;color:var(--text);overflow-wrap:break-word;word-break:break-word}.v2-editor-shortcuts-row dd{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:4px;margin:0 0 0 auto;max-width:260px}.v2-editor-shortcuts-row kbd{white-space:nowrap}.v2-editor-export-presets{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.v2-editor-export-preset{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border:1.5px solid var(--border);border-radius:8px;background:var(--surface-2);color:var(--text);text-align:left;cursor:pointer}.v2-editor-export-preset.is-selected{border-color:var(--warm);background:var(--warm-soft);color:var(--warm)}.v2-editor-export-preset-name{font-size:13px;font-weight:600}.v2-editor-export-preset-hint{font-size:12px;color:var(--text-muted)}.v2-editor-export-mismatch{margin-top:8px;padding:8px 10px;border-radius:6px;background:var(--warm-soft);color:var(--text);font-size:12px}.v2-editor-export-mismatch button{margin-left:8px;padding:2px 10px;border:1px solid var(--warm);border-radius:6px;background:transparent;color:var(--warm);font-size:12px;cursor:pointer}.editor-caption-style-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:8px 0}.editor-caption-style{display:flex;flex-direction:column;align-items:stretch;gap:6px;padding:8px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);color:var(--text);cursor:pointer;text-align:center}.editor-caption-style:hover{border-color:var(--warm)}.editor-caption-style-sample{display:block;padding:8px 4px;border-radius:4px;background:linear-gradient(135deg,#5a5f6a,#2b2e35);font-size:19px;font-weight:700;line-height:1.3;white-space:nowrap;overflow:hidden;paint-order:stroke fill}.editor-caption-style-sample em{font-style:normal}.editor-caption-style-name{font-size:12px}.v2-editor-inspector-link{display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:6px;padding:7px 10px;border:1px solid var(--border-faint);border-radius:6px;background:transparent;color:var(--text-muted);font-size:12px;text-align:left;cursor:pointer}.v2-editor-inspector-link:hover{color:var(--text);border-color:var(--border);background:var(--surface-2)}.v2-editor-inspector-link+.v2-editor-inspector-link{margin-top:4px}.v2-editor-field-note{display:block;font-size:11px;color:var(--text-faint);font-family:var(--mono)}.v2-editor-field-row input[type=range]{width:130px}.v2-editor-inspector-export{width:100%;justify-content:center;margin-top:8px}.v2-editor-inspector-hint{padding:20px 16px;text-align:center;color:var(--text-faint);font-size:12px}.editor-workspace-toast{position:absolute;top:12px;left:50%;transform:translateX(-50%);z-index:30;display:flex;align-items:center;gap:4px;max-width:min(720px,calc(100% - 32px));padding:8px 12px;border:1px solid var(--warm-line);border-radius:8px;background:var(--surface-1);color:var(--text);font-size:12px;box-shadow:0 8px 24px #0006}.editor-workspace-toast .editor-notice-actions{display:inline-flex;gap:6px;margin-left:8px}.editor-workspace-toast .editor-notice-actions button,.editor-workspace-toast>button{padding:2px 10px;border:1px solid var(--border);border-radius:6px;background:var(--surface-2);color:var(--text);font-size:12px;cursor:pointer}.editor-workspace-toast .editor-notice-actions button.primary{border-color:var(--warm);color:var(--warm)}.editor-workspace-toast>.editor-workspace-toast-close{border:0;background:transparent;color:var(--text-muted)}.v2-editor-export-preset.is-off{opacity:.55}.v2-editor-export-preset.is-off.is-selected{opacity:1}.v2-editor-export-preset-badge{display:inline-block;margin-left:6px;padding:0 6px;border-radius:999px;background:var(--teal-soft);color:var(--teal);font-size:10px;font-weight:600;vertical-align:middle}.v2-tl-clip-audio-band{position:absolute;left:0;right:0;bottom:0;z-index:3}.v2-tl-clip-volume{position:absolute;left:0;right:0;height:9px;margin-top:-4px;cursor:ns-resize;touch-action:none}.v2-tl-clip-volume:before{content:"";position:absolute;left:0;right:0;top:4px;height:1px;background:rgba(255,255,255,.9);box-shadow:0 0 0 1px rgba(0,0,0,.4)}.v2-tl-clip-volume:focus-visible:before,.v2-tl-clip-volume:hover:before{height:2px;top:3.5px;background:var(--warm);box-shadow:0 0 0 1px rgba(0,0,0,.5)}.v2-tl-clip-volume-badge{position:absolute;top:-18px;left:4px;padding:1px 5px;border-radius:3px;background:rgba(0,0,0,.8);color:#fff;font-size:10px;font-weight:600;line-height:14px;white-space:nowrap;pointer-events:none}.v2-tl-clip-volume-badge.is-below{top:9px}.v2-tl-clip-thumb{position:relative;z-index:2;flex:0 0 auto;width:44px;height:calc(100% - 6px);margin:3px 0 3px 4px;border-radius:3px;overflow:hidden;background:#000}.v2-tl-clip-thumb img,.v2-tl-clip-thumb video{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.v2-editor-empty-recent{display:flex;gap:10px;margin:4px 0 8px}.v2-editor-empty-recent-item{display:flex;flex-direction:column;gap:4px;width:96px;padding:0;border:1px solid var(--border-faint);border-radius:8px;background:var(--surface-1);color:var(--text-muted);font-size:11px;cursor:pointer;overflow:hidden}.v2-editor-empty-recent-item:hover{border-color:var(--warm);color:var(--text)}.v2-editor-empty-recent-thumb{display:block;width:100%;aspect-ratio:16/9;background:#000}.v2-editor-empty-recent-thumb img,.v2-editor-empty-recent-thumb video{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.v2-editor-empty-recent-name{display:block;padding:0 6px 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.editor-look-controls{display:flex;flex-direction:column;gap:8px}.editor-look-controls .editor-look-scope{margin:0 0 4px}.editor-look-controls>label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--text-muted)}.editor-look-controls>label>input[type=range],.editor-look-controls>label>select{width:100%}.editor-look-controls>label>select{padding:5px 8px;border:1px solid var(--border);border-radius:6px;background:var(--surface-2);color:var(--text);font-size:12px}.editor-look-controls .editor-panel-hint{margin:4px 0 0}@media (max-width:1280px){.v2-tl-toolbar-group--style .v2-tl-tool-btn span,.v2-tl-toolbar-zoom{display:none}}