.drama-episode-workspace{display:flex;min-width:0;flex-direction:column}.drama-episode-workspace.has-inspector{display:flex;grid-template-columns:none}.drama-episode-workspace.has-inspector>:where(.drama-canvas-toolbar,.drama-snapshot-recovery,.drama-canvas-error,.drama-canvas-notice,.drama-canvas-viewbar,.drama-episode-view-shell){margin-right:340px}.drama-canvas-toolbar{min-height:52px;flex:0 0 auto}.drama-canvas-toolbar-primary,.drama-canvas-toolbar-actions,.drama-canvas-navigation-controls{display:flex;min-width:0;align-items:center;gap:8px}.drama-canvas-toolbar-primary{overflow:hidden}.drama-canvas-toolbar-primary strong,.drama-canvas-toolbar-primary span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drama-canvas-toolbar-actions{flex:0 0 auto}.drama-canvas-navigation-controls{height:32px;border:1px solid var(--stroke-regular);border-radius:6px;background:var(--bg-panel)}.drama-canvas-navigation-controls>span{width:42px;text-align:center}.drama-canvas-navigation-controls .icon-button{width:30px;height:30px;border-radius:5px}.drama-snapshot-recovery{display:grid;grid-template-columns:auto minmax(0,1fr) auto;flex:0 0 auto;align-items:center;gap:10px;margin:8px 12px 0;padding:9px 10px;border:1px solid var(--stroke-regular);border-left-width:3px;border-radius:6px;color:var(--text-secondary);background:var(--bg-panel)}.drama-snapshot-recovery.is-loading{border-left-color:var(--accent)}.drama-snapshot-recovery.is-error{border-left-color:var(--color-danger);background:color-mix(in srgb,var(--color-danger) 7%,var(--bg-panel))}.drama-snapshot-recovery.is-readonly{border-left-color:var(--color-warning);background:color-mix(in srgb,var(--color-warning) 7%,var(--bg-panel))}.drama-snapshot-recovery>div:nth-child(2){min-width:0}.drama-snapshot-recovery strong{display:block;color:var(--text-primary);font-size:12px}.drama-snapshot-recovery p{margin:2px 0 0;color:var(--text-secondary);font-size:11px;line-height:1.5}.drama-snapshot-recovery-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.drama-snapshot-recovery-actions button,.drama-snapshot-recovery-actions a{display:inline-flex;min-height:30px;align-items:center;justify-content:center;gap:5px;padding:0 9px;border:1px solid var(--stroke-regular);border-radius:5px;color:var(--text-secondary);background:var(--bg-panel);font-size:11px;text-decoration:none;white-space:nowrap}.drama-snapshot-recovery-actions .primary{border-color:var(--accent);color:#fff;background:var(--accent)}.drama-canvas-viewbar{display:flex;min-width:0;min-height:45px;flex:0 0 auto;align-items:center;gap:10px;padding:6px 12px;border-bottom:1px solid var(--stroke-subtle);background:var(--bg-panel)}.drama-view-switch{display:inline-grid;grid-template-columns:repeat(3,minmax(76px,1fr));flex:0 0 auto;overflow:hidden;border:1px solid var(--stroke-regular);border-radius:6px}.drama-view-switch button{display:inline-flex;min-height:32px;align-items:center;justify-content:center;gap:5px;padding:0 10px;border-right:1px solid var(--stroke-regular);color:var(--text-secondary);background:var(--bg-panel);font-size:12px;white-space:nowrap}.drama-view-switch button:last-child{border-right:0}.drama-view-switch button.is-active{color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--bg-panel))}.drama-shot-filters{display:flex;min-width:0;flex:1 1 auto;gap:5px;overflow-x:auto;scrollbar-width:thin}.drama-shot-filters button{display:inline-flex;min-height:32px;flex:0 0 auto;align-items:center;gap:6px;padding:0 9px;border:1px solid transparent;border-radius:5px;color:var(--text-secondary);background:transparent;font-size:11px;white-space:nowrap}.drama-shot-filters button:hover,.drama-shot-filters button.is-active{border-color:var(--stroke-regular);color:var(--text-primary);background:var(--bg-elevated)}.drama-shot-filters button.is-active{border-color:color-mix(in srgb,var(--accent) 38%,var(--stroke-regular));color:var(--accent)}.drama-shot-filters button span{min-width:18px;padding:1px 4px;border-radius:4px;color:var(--text-tertiary);background:var(--bg-base);text-align:center;font-size:10px}.drama-episode-view-shell{display:flex;min-width:0;min-height:0;flex:1 1 auto;overflow:hidden}.drama-episode-canvas,.drama-episode-list-view,.drama-episode-board-view{width:100%;min-width:0;min-height:0;flex:1 1 auto}.drama-episode-list-view{overflow:auto;background:var(--bg-base)}.drama-shot-summary-entry{display:grid;grid-template-columns:minmax(0,1fr) auto 82px;width:100%;min-height:76px;align-items:center;gap:14px;padding:10px 14px;border:0;border-bottom:1px solid var(--stroke-subtle);border-left:3px solid transparent;border-radius:0;color:var(--text-secondary);background:var(--bg-panel);text-align:left}.drama-shot-summary-entry:hover:not(:disabled){background:var(--bg-elevated)}.drama-shot-summary-entry.is-selected{border-left-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--bg-panel))}.drama-shot-summary-entry:disabled{cursor:default;opacity:.72}.drama-shot-summary-main{display:grid;min-width:0;gap:2px}.drama-shot-summary-main>span{overflow:hidden;color:var(--text-tertiary);text-overflow:ellipsis;white-space:nowrap;font-size:10px}.drama-shot-summary-main strong{overflow:hidden;color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:13px}.drama-shot-summary-main small{display:-webkit-box;overflow:hidden;color:var(--text-secondary);font-size:11px;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}.drama-shot-summary-meta{display:grid;justify-items:end;gap:4px;color:var(--text-tertiary);font-size:10px;white-space:nowrap}.drama-shot-summary-status{color:var(--text-secondary);font-size:11px;font-weight:650}.drama-shot-summary-entry:is(.is-failed,.is-blocked,.is-unknown) .drama-shot-summary-status{color:var(--color-danger)}.drama-shot-summary-entry.is-stale .drama-shot-summary-status{color:var(--color-warning)}.drama-shot-summary-entry:is(.is-ready,.is-completed) .drama-shot-summary-status{color:var(--color-success)}.drama-shot-stage-strip{display:grid;grid-template-columns:repeat(7,8px);width:82px;justify-content:end;gap:3px}.drama-shot-stage-strip>span{width:8px;height:8px;border-radius:2px;background:var(--stroke-bold)}.drama-shot-stage-strip>span:is(.is-ready,.is-completed){background:var(--color-success)}.drama-shot-stage-strip>span:is(.is-running,.is-review){background:var(--accent)}.drama-shot-stage-strip>span:is(.is-failed,.is-blocked,.is-unknown){background:var(--color-danger)}.drama-shot-stage-strip>span.is-stale{background:var(--color-warning)}.drama-episode-board-view{display:grid;grid-template-columns:repeat(4,minmax(220px,1fr));align-items:stretch;overflow:auto;background:var(--bg-base)}.drama-episode-board-view>section{min-width:0;border-right:1px solid var(--stroke-subtle)}.drama-episode-board-view>section:last-child{border-right:0}.drama-episode-board-view>section>header{position:sticky;z-index:1;top:0;display:flex;min-height:42px;align-items:center;justify-content:space-between;gap:8px;padding:0 10px;border-bottom:1px solid var(--stroke-subtle);background:var(--bg-panel)}.drama-episode-board-view>section>header strong{color:var(--text-primary);font-size:12px}.drama-episode-board-view>section>header span{min-width:20px;color:var(--text-tertiary);text-align:center;font-size:10px}.drama-episode-board-view>section>div{display:grid;align-content:start;gap:7px;padding:8px}.drama-episode-board-view>section>div>p{margin:24px 0;color:var(--text-tertiary);text-align:center;font-size:11px}.drama-shot-summary-entry.is-compact{grid-template-columns:minmax(0,1fr) auto;min-height:92px;padding:9px;border:1px solid var(--stroke-subtle);border-left:3px solid transparent;border-radius:6px}.drama-shot-summary-entry.is-compact.is-selected{border-left-color:var(--accent)}.drama-shot-summary-entry.is-compact .drama-shot-summary-meta{align-self:start}.drama-shot-view-empty{display:grid;min-height:180px;place-items:center;color:var(--text-tertiary);font-size:12px}.drama-production-node:is(.is-blocked,.is-unknown){border-color:var(--color-danger)}.drama-generation-mobile-list{display:none}.drama-generation-table{min-width:1180px}.drama-generation-table td:nth-child(4)>span{color:var(--text-tertiary)}.drama-generation-table tr:is(.is-failed,.is-blocked,.is-unknown) td:nth-child(4)>span{color:var(--color-danger)}.drama-generation-table td>button,.drama-generation-mobile-item footer>button{display:inline-flex;min-height:30px;align-items:center;justify-content:center;gap:5px;padding:0 8px;border:1px solid var(--stroke-regular);border-radius:4px;color:var(--text-secondary);background:var(--bg-panel);font-size:11px;white-space:nowrap}.drama-generation-table td>button.primary,.drama-generation-mobile-item footer>button.primary{border-color:var(--accent);color:#fff;background:var(--accent)}.drama-generation-table td>button.is-selected,.drama-generation-mobile-item footer>button.is-selected{border-color:var(--color-success);color:var(--color-success)}.drama-generation-table tr.is-unknown .drama-generation-status{color:var(--color-danger)!important;background:color-mix(in srgb,var(--color-danger) 10%,var(--bg-elevated))}@media(max-width:1024px){.drama-episode-workspace.has-inspector>:where(.drama-canvas-toolbar,.drama-snapshot-recovery,.drama-canvas-error,.drama-canvas-notice,.drama-canvas-viewbar,.drama-episode-view-shell){margin-right:min(320px,46vw)}.drama-canvas-toolbar{min-height:58px;flex-wrap:wrap;padding-block:6px}.drama-canvas-viewbar{align-items:flex-start;flex-direction:column}.drama-shot-filters{width:100%}.drama-episode-board-view{grid-template-columns:repeat(2,minmax(240px,1fr))}}@media(max-width:760px){.drama-generation-stage{padding:12px}.drama-generation-table-wrap{display:none}.drama-generation-mobile-list{display:grid;grid-template-columns:minmax(0,1fr);max-width:1500px;gap:8px;margin:0 auto}.drama-generation-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible}.drama-generation-filters button{min-width:0;justify-content:space-between;padding:0 8px;white-space:normal}.drama-generation-mobile-item{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;padding:12px;border:1px solid var(--stroke-regular);border-left-width:3px;border-radius:7px;color:var(--text-secondary);background:var(--bg-panel)}.drama-generation-mobile-item:is(.is-failed,.is-blocked,.is-unknown){border-left-color:var(--color-danger)}.drama-generation-mobile-item.is-stale{border-left-color:var(--color-warning)}.drama-generation-mobile-item:is(.is-ready,.is-completed){border-left-color:var(--color-success)}.drama-generation-mobile-item>header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px}.drama-generation-mobile-item>header>div{display:grid;min-width:0;gap:2px}.drama-generation-mobile-item>header>div span{overflow:hidden;color:var(--text-tertiary);text-overflow:ellipsis;white-space:nowrap;font-size:10px}.drama-generation-mobile-item>header strong{overflow:hidden;color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:13px}.drama-generation-mobile-reason{display:flex;min-width:0;align-items:flex-start;gap:6px;margin:0;color:var(--text-secondary);font-size:11px;line-height:1.5}.drama-generation-mobile-reason svg{flex:0 0 auto;margin-top:1px}.drama-generation-mobile-item dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;border-block:1px solid var(--stroke-subtle)}.drama-generation-mobile-item dl>div{min-width:0;padding:8px;border-right:1px solid var(--stroke-subtle)}.drama-generation-mobile-item dl>div:first-child{padding-left:0}.drama-generation-mobile-item dl>div:last-child{padding-right:0;border-right:0}.drama-generation-mobile-item dt{display:flex;align-items:center;gap:4px;color:var(--text-tertiary);font-size:10px}.drama-generation-mobile-item dd{overflow:hidden;margin:3px 0 0;color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:11px}.drama-generation-mobile-item footer{display:grid;grid-template-columns:minmax(0,1fr)}.drama-generation-mobile-item footer>button{width:100%;min-height:36px}.drama-row-actions.is-mobile{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.drama-row-actions.is-mobile button{min-width:0;min-height:36px;justify-content:center;white-space:normal}.drama-generation-mobile-empty{display:grid;min-height:160px;place-items:center;color:var(--text-tertiary);font-size:12px}}@media(max-width:620px){.drama-episode-workspace{height:calc(100vh - var(--drama-topbar-height));min-height:460px}.drama-episode-workspace.has-inspector>:where(.drama-canvas-toolbar,.drama-snapshot-recovery,.drama-canvas-error,.drama-canvas-notice,.drama-canvas-viewbar,.drama-episode-view-shell){margin-right:0}.drama-canvas-toolbar{min-height:88px;align-content:center;align-items:flex-start;padding:8px 10px}.drama-canvas-toolbar-primary,.drama-canvas-toolbar-actions{width:100%;justify-content:space-between}.drama-canvas-snapshot-action{min-width:0}.drama-snapshot-recovery{grid-template-columns:minmax(0,1fr);align-items:start;margin:6px 8px 0}.drama-snapshot-recovery>svg{display:none}.drama-snapshot-recovery-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch}.drama-snapshot-recovery-actions>:first-child{grid-column:1 / -1}.drama-snapshot-recovery-actions button,.drama-snapshot-recovery-actions a{min-width:0;white-space:normal}.drama-canvas-viewbar{min-height:0;padding:7px 8px}.drama-view-switch{display:none}.drama-shot-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}.drama-shot-filters button{min-width:0;justify-content:space-between;white-space:normal}.drama-episode-desktop-view{display:none!important}.drama-mobile-canvas-summary{display:grid;grid-template-rows:auto minmax(0,1fr);width:100%;min-width:0;min-height:0;padding:0;overflow:hidden;background:var(--bg-base)}.drama-mobile-canvas-summary>header{display:flex;min-height:46px;align-items:center;justify-content:space-between;gap:8px;padding:7px 10px;border-bottom:1px solid var(--stroke-subtle);background:var(--bg-panel)}.drama-mobile-canvas-summary>header>div{display:grid;min-width:0}.drama-mobile-canvas-summary>header strong{overflow:hidden;color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:12px}.drama-mobile-canvas-summary>header span{color:var(--text-tertiary);font-size:10px}.drama-mobile-shot-list{min-height:0;overflow-y:auto}.drama-mobile-shot-list .drama-shot-summary-entry{grid-template-columns:minmax(0,1fr) auto;min-height:86px;border:0;border-bottom:1px solid var(--stroke-subtle);border-left:3px solid transparent;border-radius:0}.drama-mobile-shot-list .drama-shot-summary-entry.is-selected{border-left-color:var(--accent)}.drama-generation-mobile-item dl{grid-template-columns:minmax(0,1fr)}.drama-generation-mobile-item dl>div,.drama-generation-mobile-item dl>div:first-child,.drama-generation-mobile-item dl>div:last-child{padding:7px 0;border-right:0;border-bottom:1px solid var(--stroke-subtle)}.drama-generation-mobile-item dl>div:last-child{border-bottom:0}}@media(max-width:420px){.drama-canvas-navigation-controls>span{display:none}.drama-generation-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.drama-row-actions.is-mobile{grid-template-columns:minmax(0,1fr)}}.drama-story-stage .drama-review-layout{grid-template-columns:138px minmax(440px,1fr) minmax(280px,320px)}.drama-review-category-content{display:grid;min-width:0;min-height:0;grid-template-rows:auto minmax(0,1fr)}.drama-evidence-overview{display:flex;min-height:54px;align-items:center;justify-content:space-between;gap:16px;padding:9px 14px;border-bottom:1px solid var(--stroke-subtle);background:var(--bg-base)}.drama-evidence-overview>div{display:grid;gap:2px}.drama-evidence-overview>div>span{color:var(--text-tertiary);font-size:11px}.drama-evidence-overview dl{display:flex;gap:12px;margin:0}.drama-evidence-overview dl>div{display:flex;align-items:baseline;gap:4px}.drama-evidence-overview dt{color:var(--text-tertiary);font-size:11px}.drama-evidence-overview dd{margin:0;font-size:13px;font-weight:700}.drama-evidence-overview .is-hit dd{color:var(--color-success)}.drama-evidence-overview .is-possible dd{color:var(--color-warning)}.drama-evidence-overview .is-unmatched dd{color:var(--color-danger)}.drama-evidence-badge{display:inline-flex;flex:0 0 auto;align-items:center;min-height:20px;padding:0 6px;border:1px solid currentColor;border-radius:4px;color:var(--color-danger);font-size:10px;font-weight:700;line-height:1;white-space:nowrap}.drama-evidence-badge.is-hit{color:var(--color-success)}.drama-evidence-badge.is-possible,.drama-evidence-badge.is-unmatched.is-undecidable{color:var(--color-warning)}.drama-review-entity-list{gap:6px;padding:12px}.drama-review-entity-list article{align-items:flex-start;padding:10px 11px}.drama-review-entity-list article.is-evidence-hit{border-left:3px solid var(--color-success)}.drama-review-entity-list article.is-evidence-possible{border-left:3px solid var(--color-warning)}.drama-review-entity-list article.is-evidence-unmatched{border-left:3px solid var(--color-danger)}.drama-review-entity-main{min-width:0}.drama-review-entity-heading{display:flex;align-items:center;gap:8px}.drama-review-entity-heading>strong{overflow-wrap:anywhere}.drama-evidence-detail{display:grid;gap:3px;margin-top:7px}.drama-evidence-detail p{display:grid;grid-template-columns:34px minmax(0,1fr);gap:6px;margin:0;color:var(--text-secondary);font-size:11px;line-height:1.45}.drama-evidence-detail p>span{color:var(--text-tertiary)}.drama-evidence-detail q{min-width:0;overflow-wrap:anywhere;color:var(--text-primary)}.drama-evidence-detail.is-compact{min-width:0;margin:0}.drama-review-episode-link{align-self:center;white-space:nowrap}.drama-character-review{min-height:0}.drama-character-review>aside{overflow:auto}.drama-character-review>aside button{gap:5px}.drama-character-review-name{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:6px}.drama-character-review-name>strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drama-character-review-detail{display:grid;min-width:0;min-height:0;grid-template-rows:auto minmax(0,1fr)}.drama-selected-evidence{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px;padding:9px 18px;border-bottom:1px solid var(--stroke-subtle);background:var(--bg-base)}.drama-character-review-detail .drama-character-editor{min-height:0}.drama-review-problem-list{display:grid;align-content:start;gap:14px;padding:12px;overflow:auto}.drama-review-issue-group{min-width:0}.drama-review-issue-group>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px;color:var(--text-secondary)}.drama-review-issue-group>header>span{min-width:24px;color:var(--text-tertiary);text-align:right}.drama-review-issue-group article{padding:10px 11px;border:1px solid var(--stroke-subtle);border-left:3px solid var(--color-warning);background:var(--bg-base)}.drama-review-issue-group article+article{margin-top:6px}.drama-review-issue-group.is-blocking article{border-left-color:var(--color-danger)}.drama-review-issue-group article>strong{display:block;overflow-wrap:anywhere;font-size:13px}.drama-review-issue-group article p{margin:5px 0 0;color:var(--text-secondary);font-size:11px;line-height:1.5}.drama-review-issue-group .drama-issue-action{color:var(--text-primary)}.drama-issue-action>span{margin-right:6px;color:var(--color-warning);font-weight:700}.drama-review-issue-group.is-blocking .drama-issue-action>span{color:var(--color-danger)}.drama-review-group-empty{padding:10px 11px;border:1px dashed var(--stroke-regular);color:var(--text-tertiary);font-size:12px}.drama-story-stage .drama-review-issues{min-width:0;padding:14px;overflow:auto}.drama-adoption-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding-bottom:10px;border-bottom:1px solid var(--stroke-subtle)}.drama-adoption-heading>div{display:grid;gap:3px}.drama-adoption-heading span{color:var(--text-tertiary);font-size:11px}.drama-adoption-heading>strong{color:var(--color-success);font-size:11px;white-space:nowrap}.drama-adoption-heading>strong.is-blocked{color:var(--color-danger)}.drama-story-stage .drama-review-issues>.drama-adoption-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:8px;padding:0;border-top:1px solid var(--stroke-subtle);border-left:1px solid var(--stroke-subtle);background:transparent}.drama-adoption-summary-group{min-width:0;padding:8px;border-right:1px solid var(--stroke-subtle);border-bottom:1px solid var(--stroke-subtle)}.drama-adoption-summary-group>header{display:flex;align-items:center;justify-content:space-between;gap:8px}.drama-adoption-summary-group>header>span{color:var(--text-secondary);font-size:11px}.drama-adoption-summary-group>header>strong{font-size:14px}.drama-adoption-summary-group ul{display:grid;gap:3px;margin:7px 0 0;padding:0;list-style:none}.drama-adoption-summary-group li{display:grid;min-width:0;grid-template-columns:auto minmax(0,1fr);gap:5px;align-items:baseline}.drama-adoption-summary-group li>span{color:var(--text-tertiary);font-size:9px}.drama-adoption-summary-group li>strong{overflow:hidden;color:var(--text-secondary);font-size:10px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.drama-story-stage .drama-adoption-summary-group>p{margin:5px 0 0;color:var(--text-tertiary);font-size:10px}.drama-review-issues>.drama-adoption-note{margin:9px 0 0;color:var(--text-tertiary);font-size:10px;line-height:1.5}.drama-story-stage .drama-review-gate{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;margin-top:12px;padding:10px;border:1px solid color-mix(in srgb,var(--color-success) 40%,var(--stroke-regular));border-left:3px solid var(--color-success);background:var(--bg-panel);color:var(--color-success)}.drama-story-stage .drama-review-gate.is-blocked{border-color:color-mix(in srgb,var(--color-danger) 40%,var(--stroke-regular));border-left-color:var(--color-danger);color:var(--color-danger)}.drama-story-stage .drama-review-gate p{margin:4px 0 0;color:var(--text-secondary);font-size:11px;line-height:1.45}.drama-review-gate button{margin-top:8px;padding:0;border:0;color:var(--color-danger);background:transparent;font-size:11px;font-weight:700;text-decoration:underline}.drama-inline-status{display:grid;gap:3px}.drama-inline-status>span{color:var(--text-secondary);font-size:11px}@media(max-width:1200px){.drama-story-stage .drama-review-layout{grid-template-columns:124px minmax(0,1fr) 280px}.drama-character-review{grid-template-columns:168px minmax(0,1fr)}}@media(max-width:900px){.drama-story-stage .drama-review-layout{grid-template-columns:112px minmax(0,1fr)}.drama-story-stage .drama-review-issues{grid-column:1 / -1;border-top:1px solid var(--stroke-subtle);border-left:0}}@media(max-width:700px){.drama-story-stage .drama-review-layout{grid-template-columns:1fr}.drama-story-stage .drama-review-layout>nav{display:flex;overflow-x:auto;border-right:0;border-bottom:1px solid var(--stroke-subtle)}.drama-story-stage .drama-review-layout>nav button{min-width:88px}.drama-evidence-overview{align-items:flex-start;flex-direction:column;gap:8px}.drama-character-review{grid-template-columns:1fr}.drama-character-review>aside{display:flex;overflow-x:auto;border-right:0;border-bottom:1px solid var(--stroke-subtle)}.drama-character-review>aside button{min-width:150px}.drama-review-entity-list article{align-items:stretch;flex-direction:column;gap:8px}}:root{color-scheme:dark;--bg-base: #07090d;--bg-canvas: #0a0d12;--bg-panel: rgba(18, 21, 28, .96);--bg-glass: rgba(24, 28, 36, .88);--bg-light: rgba(255, 255, 255, .06);--bg-elevated: rgba(34, 40, 51, .92);--stroke-soft: rgba(255, 255, 255, .06);--stroke-subtle: rgba(255, 255, 255, .08);--stroke-regular: rgba(255, 255, 255, .11);--stroke-bold: rgba(255, 255, 255, .18);--text-primary: #f3f6fb;--text-secondary: rgba(243, 246, 251, .68);--text-tertiary: rgba(243, 246, 251, .42);--accent: #6bd7ff;--accent-text: #07080a;--studio-glow: rgba(107, 215, 255, .08);--color-grid-dot: rgba(148, 163, 184, .16);--color-node-text: #4fa3ff;--color-node-image: #34d399;--color-node-video: #a78bfa;--color-node-audio: #fbbf24;--color-node-agent: #22d3ee;--color-success: #8bd66b;--color-warning: #f4bf63;--color-danger: #ff6b7a;--color-info: #6bd7ff;--color-vip: #ffcf7a;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-panel: 22px;--radius-round: 999px;--radius-control: 999px;--topbar-height: 56px;--left-rail-width: 56px;--right-agent-width: 380px;--right-agent-min: 340px;--right-agent-max: 440px;--right-panel-gutter: 20px;--right-drawer-gap: 12px;--agent-drawer-width: 370px;--agent-collapse-handle-width: 34px;--result-drawer-width: 260px;--bottom-toolbar-height: 44px;--z-result-drawer: 26;--z-node-inspector: 27;--z-agent-drawer: 28;--z-rail: 30;--z-side-panel: 32;--z-bottom-toolbar: 35;--z-topbar: 40;--z-context-menu: 60;--z-modal: 80;font-family:DM Sans,Inter,PingFang SC,Microsoft YaHei,system-ui,sans-serif;background:var(--bg-base);color:var(--text-primary);font-synthesis:none;text-rendering:geometricPrecision}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;overflow:hidden;background:var(--bg-base)}button,textarea,input{font:inherit}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid rgba(107,215,255,.32);outline-offset:0}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}.workbench-shell{position:relative;width:100vw;height:100vh;background:var(--bg-base);color:var(--text-primary);overflow:hidden}.workbench-shell.theme-light{color-scheme:light;--bg-base: #f4f5f7;--bg-panel: rgba(255, 255, 255, .94);--bg-glass: rgba(255, 255, 255, .78);--bg-light: rgba(0, 0, 0, .055);--stroke-subtle: rgba(5, 6, 8, .08);--stroke-regular: rgba(5, 6, 8, .12);--stroke-bold: rgba(5, 6, 8, .18);--text-primary: #0c0d10;--text-secondary: rgba(12, 13, 16, .66);--text-tertiary: rgba(12, 13, 16, .44);--accent: #0c0d10;--accent-text: #fff}.topbar,.topbar-left,.topbar-right,.topbar-tabs,.agent-header-actions,.composer-toolbar,.bottom-toolbar,.node-params,.segmented,.history-tabs,.feedback-types,.theme-row,.modal-actions{display:flex;align-items:center}.topbar{position:fixed;inset:14px 18px auto 20px;z-index:var(--z-topbar);justify-content:space-between;height:46px;pointer-events:none}.topbar-left,.topbar-right{gap:8px;pointer-events:auto;min-width:0}.icon-button,.ghost-button,.primary-button,.credit-pill,.member-pill,.sync-pill,.project-name-input,.topbar-tabs,.topbar-tabs button,.segmented button,.bottom-toolbar button,.context-menu button,.agent-composer button,.conversation-list article,.conversation-manager-search,.conversation-edit-row input,.upload-strip,.rail-item,.history-tabs button,.theme-row button,.feedback-types button,.cut-left button,.conversation-select{border:1px solid var(--stroke-regular);background:var(--bg-glass);color:var(--text-primary)}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-control)}.icon-button.is-active{border-color:var(--stroke-bold);background:var(--accent);color:var(--accent-text)}.ghost-button,.primary-button,.credit-pill,.member-pill,.sync-pill{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:0 12px;border-radius:var(--radius-control);white-space:nowrap}.primary-button{justify-content:center;border-color:transparent;background:var(--accent);color:var(--accent-text);font-weight:760}.sync-pill{height:40px;padding-right:11px;padding-left:11px;color:var(--text-primary)}.sync-pill small{color:var(--text-tertiary);font-size:11px}.sync-pill.is-dirty{border-color:#fbbf2452;background:#fbbf241a}.sync-status-button{display:inline-flex;align-items:center;gap:6px;min-width:auto;padding:0 10px}.sync-status-label{max-width:9.5em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:var(--text-secondary)}.sync-status-button.is-saving .sync-status-label,.sync-status-button.is-dirty .sync-status-label,.sync-status-button.is-pending .sync-status-label{color:var(--text-primary)}.sync-status-button.is-conflict .sync-status-label,.sync-status-button.is-error .sync-status-label{color:#fca5a5}.sync-conflict-actions{display:inline-flex;align-items:center;gap:6px;max-width:min(42vw,520px);flex-wrap:wrap}.sync-conflict-label{font-size:12px;color:#fca5a5;white-space:nowrap}.gen-progress-pill{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:0 12px;border-radius:var(--radius-control);white-space:nowrap;border:1px solid var(--stroke-regular);background:var(--bg-glass);color:var(--text-secondary);font-size:13px}.gen-progress-pill.is-active{border-color:#6bd7ff57;background:#6bd7ff1a;color:var(--text-primary)}.gen-progress-dot{width:7px;height:7px;border-radius:var(--radius-round);background:var(--text-tertiary)}.gen-progress-pill.is-active .gen-progress-dot{background:var(--color-info);animation:gen-progress-pulse 1.1s ease-in-out infinite}@keyframes gen-progress-pulse{0%,to{opacity:.35;transform:scale(.85)}50%{opacity:1;transform:scale(1.15)}}.share-project-pill{gap:6px}.project-name-input{width:128px;height:40px;border-radius:var(--radius-control);padding:0 16px;outline:none;font-weight:700;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.topbar-tabs{gap:3px;height:40px;padding:4px;border-radius:var(--radius-control);background:var(--bg-glass)}.topbar-tabs button,.segmented button,.history-tabs button,.theme-row button,.feedback-types button{height:30px;padding:0 12px;border:0;border-radius:var(--radius-control);background:transparent}.topbar-tabs .is-active,.segmented .is-active,.bottom-toolbar .is-active,.history-tabs .is-active,.theme-row .is-active,.feedback-types .is-active,.conversation-list .is-active{background:var(--bg-light);color:var(--text-primary)}.topbar-tabs button:hover,.segmented button:hover,.history-tabs button:hover,.theme-row button:hover,.feedback-types button:hover{color:var(--text-primary);background:var(--bg-light)}.topbar-tabs button:focus-visible,.segmented button:focus-visible,.history-tabs button:focus-visible,.theme-row button:focus-visible,.feedback-types button:focus-visible{outline:2px solid rgba(107,215,255,.32);outline-offset:1px}.left-rail{position:fixed;left:28px;top:46%;z-index:var(--z-rail);display:flex;width:36px;flex-direction:column;align-items:center;gap:8px;padding:0;border:1px solid var(--stroke-regular);border-radius:18px;background:transparent;transform:translateY(-50%)}.rail-item{display:grid;place-items:center;width:36px;min-height:36px;border-radius:999px}.rail-item.is-active{background:#fafafa;color:#0a0a0a}.workbench-shell.is-empty-canvas-shell .left-rail{top:50%}.side-panel{position:fixed;left:78px;top:72px;bottom:20px;z-index:var(--z-side-panel);width:348px;padding:18px;overflow:auto;border:1px solid var(--stroke-regular);border-radius:var(--radius-panel);background:var(--bg-panel);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.panel-head span,.modal-label,.muted-label{display:block;color:var(--text-secondary);font-size:12px}.panel-head strong{font-size:16px}.segmented{gap:3px;width:fit-content;padding:4px;border:1px solid var(--stroke-subtle);border-radius:var(--radius-control);background:var(--bg-light)}.asset-filter-bar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:12px;padding:10px 0 12px;border-bottom:1px solid var(--stroke-subtle)}.asset-search-box{display:flex;align-items:center;gap:7px;min-width:0;height:34px;padding:0 10px;border:1px solid var(--stroke-subtle);border-radius:var(--radius-control);background:var(--bg-light);color:var(--text-tertiary)}.asset-search-box input{min-width:0;width:100%;border:0;outline:0;background:transparent;color:var(--text-primary);font-size:12px}.asset-folder-list{display:grid;margin:0 -18px}.asset-folder-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;min-height:41px;padding:0 10px 0 calc(10px + var(--folder-depth, 0) * 14px);border-bottom:1px solid var(--stroke-subtle)}.asset-folder-create-row,.asset-folder-rename-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:6px;min-height:41px;padding:0 10px;border-bottom:1px solid var(--stroke-subtle)}.asset-folder-rename-row{padding:0 6px;border-bottom:0}.asset-folder-create-row input,.asset-folder-rename-row input{min-width:0;height:28px;padding:0 10px;border:1px solid var(--stroke-regular);border-radius:9px;outline:none;background:var(--bg-light);color:var(--text-primary);font-size:12px}.asset-folder-create-row input:focus,.asset-folder-rename-row input:focus{border-color:var(--stroke-bold);background:var(--bg-elevated, var(--bg-light))}.asset-folder-create-row button,.asset-folder-rename-row button{display:inline-grid;place-items:center;width:26px;height:26px;border:1px solid var(--stroke-regular);border-radius:8px;background:var(--bg-light);color:var(--text-secondary)}.asset-folder-row.is-active{background:#ffffff0e}.asset-folder-main{display:inline-grid;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:7px;min-width:0;height:36px;padding:0 6px;border:0;background:transparent;color:var(--text-primary);text-align:left}.asset-folder-main span{overflow:hidden;font-size:12px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.asset-folder-main small{color:var(--text-tertiary);font-size:11px}.asset-folder-actions{display:inline-flex;gap:6px}.asset-folder-actions button{display:inline-grid;place-items:center;width:26px;height:26px;border:1px solid var(--stroke-regular);border-radius:8px;background:var(--bg-light);color:var(--text-secondary)}.asset-folder-actions button.is-active{border-color:var(--stroke-bold);background:var(--bg-elevated, var(--bg-light));color:var(--text-primary)}.asset-folder-menu-wrap,.asset-copy-popover-wrap{position:relative}.asset-copy-popover{position:absolute;right:0;top:calc(100% + 6px);z-index:9;display:grid;gap:10px;width:248px;padding:12px;border:1px solid var(--stroke-regular);border-radius:16px;background:#121214fa;box-shadow:0 18px 44px #0000006b}.asset-copy-popover header{display:flex;align-items:center;justify-content:space-between;min-width:0}.asset-copy-popover header strong{font-size:13px}.asset-copy-popover header button{width:24px;height:24px;border:0;background:transparent}.asset-copy-scope-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.asset-copy-scope-tabs button,.asset-copy-target-list button,.asset-copy-actions button{width:100%;min-height:30px;border-radius:10px;font-size:12px}.asset-copy-scope-tabs button{border:1px solid var(--stroke-subtle);background:var(--bg-light);color:var(--text-secondary)}.asset-copy-scope-tabs button.is-active,.asset-copy-target-list button.is-active{border-color:var(--stroke-bold);background:#ffffff17;color:var(--text-primary)}.asset-copy-target-list{display:grid;max-height:186px;overflow-y:auto;border:1px solid var(--stroke-subtle);border-radius:12px}.asset-copy-target-list button{justify-content:start;padding:0 10px;border:0;border-bottom:1px solid var(--stroke-subtle);border-radius:0;background:transparent;color:var(--text-secondary);text-align:left}.asset-copy-target-list button:last-child{border-bottom:0}.asset-copy-target-list button:hover:not(:disabled){background:var(--bg-light);color:var(--text-primary)}.asset-copy-target-list button:disabled{opacity:.38}.asset-copy-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.asset-copy-actions button{border:1px solid var(--stroke-regular);background:var(--bg-light);color:var(--text-secondary)}.asset-copy-actions .primary-button{border-color:transparent;background:var(--accent);color:var(--accent-text)}.asset-folder-menu{position:absolute;right:0;top:calc(100% + 3px);z-index:8;display:grid;min-width:90px;padding:6px;border:1px solid var(--stroke-regular);border-radius:14px;background:#121214fa;box-shadow:0 14px 36px #00000059}.asset-folder-menu button{width:100%;height:32px;justify-content:start;padding:0 10px;border:0;border-radius:9px;background:transparent;color:var(--text-secondary);font-size:12px}.asset-folder-menu button:hover:not(:disabled){background:var(--bg-light);color:var(--text-primary)}.asset-folder-menu button.is-danger{color:#f87171}.asset-folder-menu button:disabled{opacity:.38}.asset-new-folder-button{position:sticky;bottom:0;width:100%;min-height:38px;margin-top:12px;border:0;border-radius:var(--radius-control);background:var(--accent);color:var(--accent-text);font-weight:760}.upload-stack{display:grid;gap:8px;margin-top:14px}.upload-strip{display:flex;align-items:center;gap:9px;width:100%;min-height:38px;padding:0 12px;border-radius:13px;text-align:left}.asset-upload-queue{display:grid;gap:8px;margin-top:12px}.asset-upload-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;min-height:48px;padding:8px 9px;border:1px solid var(--stroke-subtle);border-radius:10px;background:#ffffff0a}.asset-upload-row strong,.asset-upload-row small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.asset-upload-row strong{color:var(--text-primary);font-size:12px}.asset-upload-row small,.asset-upload-row span{color:var(--text-tertiary);font-size:11px}.asset-upload-row.is-completed{border-color:#8bd66b61}.asset-upload-row.is-failed{border-color:#ff6b7a7a}.asset-upload-row.is-failed small{color:var(--danger)}.asset-upload-row button{height:26px;padding:0 8px;border:1px solid rgba(255,107,122,.45);border-radius:7px;background:#ff6b7a1a;color:var(--danger);font-size:12px}.asset-list,.history-list,.result-list,.conversation-list{display:grid;gap:8px;margin-top:16px}.asset-list p,.history-list p,.search-results p{color:var(--text-tertiary);text-align:center}.asset-list button,.conversation-select{display:flex;align-items:center;justify-content:space-between;min-height:42px;padding:0 12px;border-radius:12px;text-align:left}.asset-list button span{display:inline-flex;align-items:center;min-width:0;gap:8px}.asset-list-item{cursor:grab}.asset-list-item:active{cursor:grabbing}.conversation-list article{display:grid;position:relative;gap:6px;padding:8px;border-radius:14px}.conversation-select{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:8px;width:100%;background:transparent}.conversation-select span{display:grid;gap:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-select strong,.conversation-select small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-select em{color:var(--text-tertiary);font-size:11px;font-style:normal;white-space:nowrap}.conversation-edit-row{display:flex;align-items:center;justify-content:flex-end;gap:7px;padding:7px;border-radius:12px;background:#ffffff0b}.conversation-edit-row .ghost-button{min-height:30px;padding:0 9px;font-size:12px}.conversation-edit-row .icon-button{width:30px;height:30px}.conversation-manager-actions{display:flex;justify-content:flex-end}.conversation-manager-popover{display:grid;gap:9px;padding:9px;border:1px solid var(--stroke-regular);border-radius:18px;background:var(--bg-glass);box-shadow:var(--shadow-panel)}.agent-drawer>.conversation-manager-popover{position:absolute;top:56px;left:12px;right:12px;z-index:5;max-height:min(420px,calc(100% - 140px));overflow:auto;background:var(--bg-panel)}.conversation-manager-search{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:7px;min-height:34px;padding:0 10px;border-radius:13px}.conversation-manager-search input{width:100%;min-width:0;border:0;outline:none;background:transparent;color:var(--text-primary)}.conversation-manager-popover .conversation-list{max-height:244px;margin-top:0;overflow-y:auto}.conversation-manager-popover .conversation-manager-actions{justify-content:flex-start}.conversation-manager-popover .conversation-manager-actions .ghost-button{border:1px solid var(--stroke-regular);background:var(--bg-light)}.conversation-manager-row .conversation-edit-row{position:absolute;right:8px;top:8px;padding:0;background:transparent;opacity:0;pointer-events:none}.conversation-manager-row:hover .conversation-edit-row,.conversation-manager-row:focus-within .conversation-edit-row{opacity:1;pointer-events:auto}.conversation-manager-row .conversation-edit-row:has(input){position:static;opacity:1;pointer-events:auto}.conversation-manager-row .conversation-edit-row .icon-button{width:28px;height:28px}.conversation-manager-row .conversation-edit-row input{min-width:0;flex:1}.conversation-manager-empty{margin:10px 0 12px;color:var(--text-tertiary);text-align:center;font-size:12px}.asset-list small,.conversation-list small,.result-list span,.history-list span{color:var(--text-tertiary);font-size:12px}.history-tabs{gap:8px}.history-list article,.result-list article,.search-results article,.task-list article{display:grid;gap:5px;padding:12px;border:1px solid var(--stroke-subtle);border-radius:14px;background:var(--bg-light)}.search-results article{cursor:pointer}.canvas-area{position:absolute;inset:0 380px 0 0;overflow:hidden;background:radial-gradient(ellipse 70% 55% at 50% 28%,var(--studio-glow),transparent 62%),var(--bg-canvas)}.workbench-shell.is-empty-canvas-shell .canvas-area{right:370px}.workbench-shell.is-agent-collapsed .canvas-area{right:calc(var(--right-panel-gutter) + var(--agent-collapse-handle-width) + var(--right-drawer-gap))}.canvas-area.is-hand-tool,.canvas-area.is-space-pan{cursor:grab}.canvas-area:before{position:absolute;inset:0;content:"";background-image:radial-gradient(circle,var(--color-grid-dot) 1px,transparent 1px);background-position:0 0;background-size:24px 24px;opacity:.9;pointer-events:none}.theme-light .canvas-area:before{background-image:radial-gradient(circle,rgba(0,0,0,.12) 1px,transparent 1px)}.canvas-empty-hint{position:absolute;left:50%;top:50%;z-index:1;color:var(--text-tertiary);font-size:30px;font-weight:700;transform:translate(-50%,-50%);pointer-events:none}.canvas-surface{position:relative;width:1600px;height:1000px;transform-origin:0 0}.edge-layer{position:absolute;inset:0;z-index:2;width:1600px;height:1000px}.edge-layer text{fill:var(--text-tertiary);font-size:12px;paint-order:stroke;stroke:var(--bg-base);stroke-width:4px;pointer-events:none}.group-layer{position:absolute;inset:0;z-index:1;pointer-events:none}.node-group-frame{position:absolute;border:1px solid rgba(246,247,248,.2);border-radius:18px;background:#f6f7f809}.node-group-frame span{position:absolute;left:14px;top:-13px;max-width:calc(100% - 28px);padding:3px 8px;overflow:hidden;border:1px solid var(--stroke-subtle);border-radius:999px;background:var(--bg-panel);color:var(--text-secondary);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.canvas-minimap{position:absolute;right:24px;bottom:78px;z-index:12;display:grid;gap:9px;width:208px;padding:10px;border:1px solid var(--stroke-regular);border-radius:16px;background:var(--bg-panel);box-shadow:0 18px 56px #00000057;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.canvas-minimap-head{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--text-secondary);font-size:12px}.canvas-minimap-head span{font-weight:760}.canvas-minimap-head small{color:var(--text-tertiary)}.minimap-map{position:relative;overflow:hidden;border:1px solid var(--stroke-subtle);border-radius:12px;background:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),#ffffff0b;background-size:18px 18px}.minimap-pan-target{cursor:grab}.minimap-pan-target:active{cursor:grabbing}.minimap-group,.minimap-node,.minimap-viewport{position:absolute}.minimap-group{border:1px solid rgba(246,247,248,.18);border-radius:5px;background:#f6f7f80a;pointer-events:none}.minimap-node{min-width:3px;min-height:3px;padding:0;border:0;border-radius:4px;background:#f6f7f88f}.minimap-node.tone-image{background:#34d399b8}.minimap-node.tone-video{background:#a78bfac2}.minimap-node.tone-audio{background:#fbbf24b8}.minimap-node.tone-agent{background:#22d3eec2}.minimap-node.tone-text{background:#4fa3ffb8}.minimap-node.is-selected{box-shadow:0 0 0 2px #f6f7f8b8}.minimap-viewport{border:1px solid rgba(246,247,248,.64);border-radius:6px;background:#f6f7f812;cursor:grab;pointer-events:auto}.minimap-viewport:active{cursor:grabbing}.node-navigator{display:grid;gap:5px;max-height:116px;overflow:auto;scrollbar-width:none}.node-navigator-item{display:grid;grid-template-columns:16px minmax(0,1fr);align-items:center;gap:6px;height:28px;padding:0 8px;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--text-secondary);text-align:left}.node-navigator-item span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.node-navigator-item.is-selected,.node-navigator-item:hover{border-color:var(--stroke-subtle);background:var(--bg-light);color:var(--text-primary)}.edge-layer .edge-kind-agent-output .conn-path{stroke:#22d3ee8f}.edge-layer .edge-kind-reference .conn-path{stroke:#a78bfa8a}.edge-layer .edge-kind-upload-batch .conn-path{stroke:#fbbf2480}.node-card{position:absolute;z-index:3;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#141820;box-shadow:0 2px 10px #0000006b;color:#fafafa;overflow:visible;-webkit-user-select:none;user-select:none;cursor:grab}.node-card:active{cursor:grabbing}.node-card.is-selected{z-index:10;box-shadow:0 0 0 1.5px #6bd7ffb8,0 0 18px #6bd7ff24,0 4px 16px #00000080;transition:box-shadow .12s ease-out}.node-card.is-connect-target{outline:1.5px solid rgba(139,214,107,.55);outline-offset:1px}.node-card.tone-text{border-color:color-mix(in srgb,var(--color-node-text) 42%,transparent);background:linear-gradient(180deg,#4fa3ff14,#141820 42%)}.node-card.tone-image{border-color:color-mix(in srgb,var(--color-node-image) 42%,transparent);background:linear-gradient(180deg,#34d39912,#141820 40%)}.node-card.tone-video{border-color:color-mix(in srgb,var(--color-node-video) 42%,transparent);background:linear-gradient(180deg,#a78bfa14,#141820 40%)}.node-card.tone-audio{border-color:color-mix(in srgb,var(--color-node-audio) 42%,transparent);background:linear-gradient(180deg,#fbbf2414,#141820 40%)}.node-card.tone-agent{border-color:color-mix(in srgb,var(--color-node-agent) 42%,transparent);background:linear-gradient(180deg,#22d3ee14,#141820 42%)}.node-card[data-status=queued]:after,.node-card[data-status=running]:after,.node-card[data-status=failed]:after{position:absolute;top:8px;left:8px;z-index:6;padding:2px 7px;border-radius:999px;font-size:10px;line-height:14px;letter-spacing:.02em;pointer-events:none}.node-card[data-status=queued]:after{content:"排队中";color:#f3f6fbd1;background:#6bd7ff29;border:1px solid rgba(107,215,255,.28)}.node-card[data-status=running]:after{content:"生成中";color:#f3f6fbe6;background:#6bd7ff38;border:1px solid rgba(107,215,255,.4)}.node-card[data-status=failed]:after{content:"失败";color:#ffd0d6;background:#ff6b7a33;border:1px solid rgba(255,107,122,.4)}.node-card.is-empty .node-inner{background:#ffffff05}.node-type-label{position:absolute;z-index:5;display:flex;align-items:center;color:#737373;font-size:14px;line-height:20px;white-space:nowrap;overflow:hidden;cursor:pointer}.drag-handle{position:absolute;top:2px;left:50%;z-index:4;display:flex;align-items:center;justify-content:center;width:66px;height:12px;transform:translate(-50%);cursor:grab}.drag-pill{width:21px;height:4px;border-radius:999px;background:#fff3}.resize-handle{position:absolute;z-index:4;background:transparent}.resize-e{top:0;right:-1px;width:7px;height:100%;cursor:ew-resize}.resize-s{left:0;bottom:-1px;width:100%;height:7px;cursor:ns-resize}.resize-se{right:-1px;bottom:-1px;width:10px;height:10px;cursor:nwse-resize}.resize-se:after{position:absolute;right:2px;bottom:2px;width:6px;height:6px;border-right:2px solid rgba(255,255,255,.3);border-bottom:2px solid rgba(255,255,255,.3);content:""}.node-quick-bar{position:absolute;z-index:12;display:inline-flex;align-items:center;gap:4px;height:34px;padding:4px;border:1px solid var(--stroke-regular);border-radius:10px;background:var(--bg-elevated);box-shadow:0 16px 42px #0000005c;-webkit-user-select:none;user-select:none}.node-quick-bar button{display:inline-flex;align-items:center;justify-content:center;gap:5px;height:26px;padding:0 8px;border:0;border-radius:7px;background:transparent;color:var(--text-secondary);font-size:12px;white-space:nowrap}.node-quick-bar button:hover:not(:disabled){background:var(--bg-light);color:var(--text-primary)}.node-quick-bar button:disabled{cursor:not-allowed;opacity:.42}.node-quick-bar.is-image-ops{gap:2px}.node-quick-bar.is-image-ops button{width:28px;padding:0}.node-quick-bar-hint{margin-left:6px;padding:0 8px;height:24px;display:inline-flex;align-items:center;border-radius:7px;background:var(--bg-light);color:var(--text-secondary);font-size:11px;white-space:nowrap}.node-preview-modal{width:min(880px,92vw);max-height:88vh;display:flex;flex-direction:column;gap:14px}.node-preview-head{display:flex;align-items:center;justify-content:space-between}.node-preview-grid{display:grid;grid-template-columns:1fr;gap:12px;overflow:auto}.node-preview-grid.is-quad{grid-template-columns:1fr 1fr}.node-preview-image{width:100%;border-radius:12px;border:1px solid var(--stroke-subtle);background:var(--bg-light);object-fit:cover;aspect-ratio:1 / 1}.node-preview-grid.is-single .node-preview-image{aspect-ratio:auto;max-height:70vh;object-fit:contain}.node-preview-empty{padding:24px;color:var(--text-secondary);text-align:center}.node-inner{position:relative;width:100%;height:100%;overflow:hidden;border-radius:8px;cursor:pointer}.node-card.tone-text .node-inner,.node-card.tone-agent .node-inner{padding:10px 12px}.node-card.tone-image .node-inner,.node-card.tone-video .node-inner,.node-card.tone-audio .node-inner{padding:0}.node-card .node-text-content{height:100%;margin:0;padding:0;max-height:none;overflow:hidden;color:#fafafa;font-size:14px;line-height:22.4px;white-space:pre-wrap;word-break:break-word;outline:none;border-radius:0;background:transparent;transition:none}.node-card .node-text-content:empty:before{content:"双击编辑文字...";color:#ffffff47}.node-card .node-text-content[contenteditable=true]{background:transparent;border:0;box-shadow:none}.media-preview{display:block;width:100%;height:100%;margin-top:0;object-fit:cover;overflow:hidden;border:0;border-radius:0;background:transparent}.media-preview.is-kind-image,.media-preview.is-grid-cell{object-fit:contain}.media-preview-placeholder{display:grid;place-items:center;gap:8px;color:#ffffff47;background:linear-gradient(180deg,rgba(255,255,255,.03),transparent 55%),#0000002e}.media-preview-placeholder svg{opacity:.88}.media-preview-placeholder.is-video svg,.media-preview-placeholder.is-image svg{opacity:.9}.media-preview-placeholder:after{content:attr(data-empty-hint);max-width:80%;color:#ffffff61;font-size:11px;line-height:1.3;text-align:center}.media-preview-placeholder.is-compact:after{display:none}.media-preview.is-compact{width:34px;height:34px;flex:0 0 auto;margin-top:0;border-radius:10px}.audio-preview,.document-preview{display:grid;place-items:center;color:#fff9}.node-grid-badge{position:absolute;top:8px;right:8px;z-index:4;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border-radius:999px;background:#262626e6;border:1px solid rgba(255,255,255,.18);color:#fafafa;font-size:12px;font-weight:600;line-height:1;pointer-events:none}.node-grid{display:grid;grid-template-columns:1fr;gap:0;height:100%}.node-grid.is-quad{grid-template-columns:1fr 1fr}.node-grid-cell{position:relative;overflow:hidden;border:0;border-radius:0;background:transparent;aspect-ratio:1 / 1}.media-preview.is-grid-cell{width:100%;height:100%;margin-top:0;border:0;border-radius:0}.port{position:absolute;top:50%;z-index:6;display:flex;align-items:center;justify-content:center;width:8px;height:8px;padding:0;border:1px solid rgb(250,250,250);border-radius:50%;background:#0a0a0a;color:transparent;transform:translateY(-50%);opacity:0;transition:opacity .16s ease}.port.port-l{left:-4px}.port.port-r{right:-4px}.port svg{display:none}.node-card:hover .port,.node-card.is-selected .port,.port:hover{opacity:1}.conn-hitarea{fill:none;stroke:transparent;stroke-width:12px;pointer-events:stroke;cursor:pointer}.conn-path{fill:none;stroke:#525252;stroke-width:2.75;pointer-events:none}.edge-layer g.is-selected .conn-path{stroke:#6bd7ff;stroke-width:3}.connection-preview{position:absolute;inset:0;z-index:4;width:1600px;height:1000px;pointer-events:none}.connection-preview path{fill:none;stroke:#22d3eeb8;stroke-dasharray:7 7;stroke-linecap:round;stroke-width:2.5}.node-progress,.task-progress{height:4px;margin-top:12px;overflow:hidden;border-radius:999px;background:var(--bg-light)}.node-card>.node-progress{position:absolute;left:8px;right:8px;bottom:8px;z-index:6;margin-top:0;height:3px;background:#ffffff14}.node-progress span,.task-progress span{display:block;width:48%;height:100%;border-radius:inherit;background:var(--accent);animation:node-progress-pulse 1.2s ease-in-out infinite}@keyframes node-progress-pulse{0%,to{transform:translate(-20%);opacity:.7}50%{transform:translate(70%);opacity:1}}.tone-blue{border-color:#4fa3ff40}.tone-green{border-color:#34d3993d}.tone-purple{border-color:#a78bfa47}.tone-gold{border-color:#fbbf2447}.tone-cyan{border-color:#22d3ee4d}.agent-drawer{position:fixed;right:var(--right-panel-gutter);top:72px;bottom:20px;z-index:var(--z-agent-drawer);display:grid;width:var(--agent-drawer-width);grid-template-rows:auto minmax(0,1fr) auto;gap:12px;padding:12px;border:1px solid var(--stroke-regular);border-radius:var(--radius-panel);background:var(--bg-panel);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);isolation:isolate}.agent-drawer header{display:flex;align-items:center;justify-content:space-between;gap:10px}.agent-logo{display:inline-flex;align-items:center;gap:7px;min-width:0;color:var(--text-primary);font-size:13px;font-weight:700}.agent-logo-mark{display:inline-grid;width:24px;height:24px;place-items:center;border:1px solid var(--stroke-bold);border-radius:6px;background:var(--bg-light);color:var(--accent);font-size:10px}.agent-logo-wordmark{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.agent-header-actions{gap:6px}.agent-toolbar-button{height:30px;padding:0 10px;border:1px solid var(--stroke-regular);border-radius:10px;background:var(--bg-glass);color:var(--text-secondary);font-size:12px}.agent-toolbar-button:hover,.agent-toolbar-button.is-active{background:var(--bg-light);color:var(--text-primary)}.agent-header-actions .icon-button{width:30px;height:30px}.conversation-edit-row input{width:100%;min-width:0;height:30px;border-radius:12px;padding:0 9px;outline:none}.agent-collapse-handle{position:fixed;right:var(--right-panel-gutter);top:50%;z-index:29;width:var(--agent-collapse-handle-width);height:64px;border:1px solid var(--stroke-regular);border-radius:12px 0 0 12px;background:var(--bg-panel);color:var(--text-primary)}.agent-drawer.has-context-card{grid-template-rows:auto minmax(0,1fr) auto auto}.agent-context-card{display:grid;gap:8px;min-height:0;max-height:min(42vh,360px);overflow:auto}.agent-new-messages-button{position:sticky;bottom:4px;justify-self:center;z-index:2;min-height:30px;padding:0 12px;border:1px solid var(--stroke-regular);border-radius:999px;background:var(--bg-panel);color:var(--text-primary);font-size:12px;box-shadow:0 8px 24px #00000047}.agent-messages{display:grid;align-content:start;gap:10px;min-height:0;overflow:auto;scrollbar-width:none}.agent-disclaimer{padding:8px 12px;font-size:11px;color:var(--text-tertiary);text-align:center;border-bottom:1px solid var(--stroke-subtle);margin-bottom:4px}.agent-messages .is-assistant,.agent-messages .is-user{margin:0;padding:11px;border-radius:14px;color:var(--text-secondary);font-size:13px;line-height:1.55}.agent-messages .is-assistant{display:grid;gap:6px;background:transparent;text-align:center}.agent-greeting-emoji{font-size:24px;line-height:1}.agent-messages p{margin:0}.agent-messages .is-user{justify-self:end;max-width:86%;background:var(--bg-light);color:var(--text-primary);text-align:left}.agent-plan-card,.suggested-steps{display:grid;gap:7px}.agent-plan-card{padding:10px;border:1px solid rgba(79,163,255,.24);border-radius:16px;background:#4fa3ff13;text-align:left}.agent-plan-card header,.agent-plan-meta,.agent-plan-actions{display:flex;align-items:center}.agent-plan-card header{justify-content:space-between;gap:10px}.agent-plan-card header div{display:grid;min-width:0;gap:2px}.agent-plan-card header span,.agent-plan-card header small{color:var(--text-tertiary);font-size:11px}.agent-plan-card header strong{overflow:hidden;color:var(--text-primary);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.agent-plan-prompt-input{width:100%;min-height:52px;padding:8px 10px;border:1px solid var(--stroke-subtle);border-radius:8px;background:var(--surface-elevated);color:var(--text-primary);font:inherit;resize:vertical}.agent-plan-editor{display:grid;gap:8px}.agent-plan-editor-row{display:grid;gap:6px}.agent-plan-editor-row label,.agent-plan-editor-row>span{color:var(--text-secondary);font-size:11px}.agent-plan-editor-row select,.agent-plan-editor-row input{width:100%;padding:7px 10px;border:1px solid var(--stroke-subtle);border-radius:8px;background:var(--surface-elevated);color:var(--text-primary);font:inherit}.agent-plan-editor-options{display:flex;flex-wrap:wrap;gap:6px}.agent-plan-editor-row small{color:var(--status-warning, #c47a00);font-size:11px}.agent-plan-meta{flex-wrap:wrap;gap:6px}.agent-plan-meta span{padding:4px 7px;border:1px solid var(--stroke-subtle);border-radius:999px;color:var(--text-secondary);font-size:11px}.agent-plan-quote{display:grid;min-width:0;gap:5px}.agent-plan-quote>strong{color:var(--text-secondary);font-size:11px;font-weight:600}.agent-plan-quote-list{display:grid;max-height:124px;gap:5px;overflow-y:auto;padding-right:2px}.agent-plan-quote-item{display:grid;min-width:0;gap:5px;padding:7px 8px;border:1px solid var(--stroke-subtle);border-radius:8px;background:#ffffff09}.agent-plan-quote-item>code{overflow:hidden;color:var(--text-primary);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.agent-plan-quote-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.agent-plan-quote-metrics span{display:grid;min-width:0;gap:1px;color:var(--text-tertiary);font-size:10px}.agent-plan-quote-metrics strong{overflow:hidden;color:var(--text-secondary);font-size:11px;font-weight:600;text-overflow:ellipsis}.agent-plan-cost-change{display:grid;gap:3px;padding:8px;border:1px solid rgba(244,191,99,.34);border-radius:8px;background:#f4bf6317;color:var(--text-secondary);font-size:11px;line-height:1.45}.agent-plan-cost-change strong{color:var(--color-warning);font-size:12px}.agent-plan-cost-change code{overflow-wrap:anywhere;color:var(--text-tertiary);font-size:10px}.agent-plan-steps{display:grid;gap:6px}.suggested-steps span{padding:8px 10px;border:1px solid var(--stroke-subtle);border-radius:12px;color:var(--text-secondary);font-size:12px}.agent-plan-steps span{padding:8px 10px;border:1px solid var(--stroke-subtle);border-radius:12px;background:#ffffff09;color:var(--text-secondary);font-size:12px}.agent-plan-actions{justify-content:flex-end;gap:7px}.agent-plan-actions .primary-button,.agent-plan-actions .ghost-button{min-height:34px}.suggested-steps .primary-button{width:100%;min-height:36px;margin-top:3px}.wizard-steps{padding:12px;border:1px solid var(--stroke-regular);border-radius:16px;background:var(--bg-glass)}.wizard-step-indicators{display:flex;gap:4px;margin-bottom:12px}.wizard-step-button{flex:1;padding:8px 12px;border:none;border-radius:20px;background:transparent;color:var(--text-tertiary);font-size:12px;cursor:pointer;transition:background .2s,color .2s}.wizard-step-button:hover{background:var(--bg-light)}.wizard-step-button.is-active{background:var(--bg-light);color:var(--text-primary)}.wizard-content{padding:8px 0}.wizard-content p{margin:0 0 12px;font-size:13px;color:var(--text-secondary)}.wizard-options{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.wizard-option-button{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:12px;border:1px solid var(--stroke-regular);border-radius:10px;background:var(--bg-panel);color:var(--text-primary);font-size:12px;cursor:pointer;transition:border-color .2s,background .2s}.wizard-option-button:hover{border-color:var(--stroke-bold)}.wizard-option-button.is-selected{border-color:var(--accent);background:var(--bg-light)}.wizard-option-button strong{font-size:13px}.wizard-option-button small{color:var(--text-tertiary)}.wizard-field{margin-top:12px}.wizard-field label{display:block;margin-bottom:6px;font-size:12px;color:var(--text-secondary)}.wizard-custom-input{width:100%;padding:8px 12px;border:1px solid var(--stroke-regular);border-radius:9999px;background:var(--bg-panel);color:var(--text-primary);font-size:12px}.wizard-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.wizard-actions .primary-button,.wizard-actions .ghost-button{min-height:34px;padding:0 16px}.agent-suggestions{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.agent-suggestions button{padding:6px 12px;border:1px solid var(--stroke-regular);border-radius:9999px;background:var(--bg-panel);color:var(--text-secondary);font-size:12px;cursor:pointer;transition:background .2s,color .2s}.agent-suggestions button:hover{background:var(--bg-light);color:var(--text-primary)}.agent-composer{display:grid;gap:8px;padding:10px;border-radius:18px;background:var(--bg-light)}.agent-execution-mode-wrap{position:relative}.agent-skill-links{position:relative;display:flex;align-items:center;gap:18px;min-height:24px;color:var(--text-secondary);font-size:12px}.skill-link-button{display:inline-flex;align-items:center;gap:5px;width:auto;height:auto;padding:0;border:0;border-radius:0;background:transparent;color:var(--text-secondary);font-size:12px}.skill-link-button.is-active,.skill-link-button:hover{color:var(--text-primary)}.agent-skill-popover{position:absolute;left:0;right:0;bottom:28px;z-index:5;display:grid;max-height:328px;overflow:hidden;border:1px solid var(--stroke-regular);border-radius:18px;background:var(--bg-panel);box-shadow:var(--shadow-panel)}.agent-skill-popover header{display:flex;align-items:center;justify-content:space-between;min-height:44px;padding:0 14px;border-bottom:1px solid var(--stroke-subtle)}.agent-skill-popover header strong{font-size:14px}.agent-skill-popover header button{width:auto;height:auto;padding:0;color:var(--text-secondary);font-size:12px}.agent-skill-row-list{display:grid;gap:1px;padding:8px;overflow-y:auto}.agent-skill-row{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;min-height:44px;padding:6px 8px;border:0;border-radius:10px;background:transparent;text-align:left}.agent-skill-row:hover{background:var(--bg-light)}.skill-row-icon{display:grid;width:32px;height:32px;place-items:center;border-radius:8px;color:var(--text-secondary)}.skill-row-copy{display:grid;min-width:0;gap:1px}.skill-row-copy strong,.skill-row-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.skill-row-copy strong{font-size:13px}.skill-row-copy small{color:var(--text-tertiary);font-size:12px}.agent-skill-row em{min-width:40px;padding:3px 7px;border:1px solid var(--stroke-subtle);border-radius:999px;color:var(--text-secondary);font-size:11px;font-style:normal;text-align:center}.agent-skill-row.is-community .skill-row-icon,.agent-skill-row.is-installed .skill-row-icon{background:#38bdf814;color:var(--text-primary)}.agent-reference-picker{display:grid;gap:6px}.agent-reference-picker>span{color:var(--text-secondary);font-size:12px}.agent-reference-picker>div{display:flex;flex-wrap:wrap;gap:6px;max-height:72px;overflow:auto}.agent-reference-chip{display:inline-grid;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:6px;max-width:138px;min-height:32px;padding:3px 8px 3px 4px;border:1px solid var(--stroke-subtle);border-radius:999px;background:#ffffff0b;color:var(--text-secondary);font-size:12px}.agent-reference-chip .media-preview{width:24px;height:24px;border-radius:999px}.agent-reference-chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.agent-reference-chip.is-selected{border-color:#f6f7f880;background:#ffffff1f;color:var(--text-primary)}.selected-reference-row{display:grid;gap:6px}.selected-reference-row>span{color:var(--text-secondary);font-size:12px}.selected-reference-row>div{display:flex;flex-wrap:wrap;gap:6px}.selected-reference-chip{display:inline-grid;grid-template-columns:22px minmax(0,1fr) 12px;align-items:center;gap:6px;max-width:168px;min-height:30px;padding:3px 8px 3px 4px;border:1px solid rgba(246,247,248,.42);border-radius:999px;background:#ffffff1a;color:var(--text-primary);font-size:12px}.selected-reference-chip .media-preview{width:22px;height:22px;border-radius:999px}.selected-reference-chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.composer-input-wrap{position:relative}.composer-command-popover{position:absolute;right:0;bottom:calc(100% + 8px);left:0;z-index:8;display:grid;gap:8px;max-height:214px;padding:10px;overflow:auto;border:1px solid var(--stroke-regular);border-radius:16px;background:var(--bg-panel);box-shadow:0 18px 48px #0000005c}.composer-command-popover>span{color:var(--text-secondary);font-size:12px}.composer-command-popover>div{display:grid;gap:6px}.composer-command-popover small{color:var(--text-tertiary);font-size:11px}.composer-command-option{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:34px;padding:5px 8px;border:1px solid var(--stroke-subtle);border-radius:12px;background:#ffffff0b;color:var(--text-primary);text-align:left}.composer-command-option.is-active{border-color:#4fa3ff80;background:#4fa3ff29}.composer-command-option span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.composer-command-option .media-preview{width:18px;height:18px;margin:0;border-radius:6px}.agent-composer textarea{width:100%;min-height:86px;max-height:180px;resize:none;border:0;background:transparent;color:var(--text-primary);padding:4px 2px;outline:none}.composer-toolbar{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:8px 6px}.composer-toolbar button{display:inline-flex;align-items:center;justify-content:center;gap:5px;width:32px;height:32px;border-radius:999px;background:transparent}.composer-tool-button{color:var(--text-secondary)}.composer-upload-row{display:flex;align-items:center;gap:4px;min-width:0;overflow:hidden;grid-column:1 / -1}.composer-upload-button{min-width:0;max-width:78px;padding:0 7px;color:var(--text-secondary)}.composer-upload-button span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.composer-tool-button.is-active{background:var(--bg-light);color:var(--accent)}.agent-execution-mode-select{width:auto;min-width:62px;height:32px;padding:0 24px 0 9px;border:1px solid var(--stroke-regular);border-radius:16px;background:var(--bg-panel);color:var(--text-secondary);font-size:12px;font-weight:650;line-height:32px;outline:none}.agent-execution-mode-select:hover,.agent-execution-mode-select:focus{border-color:var(--stroke-strong);color:var(--text-primary);background:var(--bg-light)}.composer-toolbar .send-button{margin-left:auto;background:var(--accent);color:var(--accent-text)}.bottom-toolbar{position:fixed;left:50%;bottom:20px;z-index:var(--z-bottom-toolbar);gap:5px;min-height:40px;padding:5px;border:1px solid var(--stroke-regular);border-radius:20px;background:var(--bg-panel);box-shadow:0 16px 44px #0000005c;transform:translate(-50%);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.timeline-dock{position:fixed;left:84px;right:370px;bottom:76px;z-index:var(--z-rail);display:grid;gap:8px;max-height:232px;padding:12px 14px;border:1px solid var(--stroke-regular);border-radius:16px;background:var(--bg-panel);box-shadow:0 18px 48px #0006;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);overflow:auto}.workbench-shell.is-agent-collapsed .timeline-dock{right:calc(var(--right-panel-gutter) + var(--agent-collapse-handle-width) + var(--right-drawer-gap))}.timeline-dock-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.timeline-dock-tabs{display:flex;gap:4px;padding:3px;border:1px solid var(--stroke-subtle);border-radius:999px;background:var(--bg-light)}.timeline-dock-tabs button{min-height:28px;padding:0 14px;border:0;border-radius:999px;background:transparent;color:var(--text-secondary)}.timeline-dock-tabs button.is-active{background:var(--accent);color:var(--accent-text)}.timeline-dock-controls{display:flex;align-items:center;gap:10px}.timeline-dock-zoom{display:inline-flex;align-items:center;gap:6px;color:var(--text-secondary);font-size:12px}.timeline-dock-controls .ghost-button{display:inline-flex;align-items:center;gap:5px}.timeline-dock-ruler{display:flex;justify-content:space-between;padding:0 4px;color:var(--text-tertiary);font-size:11px}.timeline-dock-tracks{display:grid;gap:6px}.timeline-dock-track{display:grid;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:10px}.timeline-dock-track-label{color:var(--text-secondary);font-size:12px}.timeline-dock-track-lane{display:flex;gap:6px;min-height:34px;padding:4px;border:1px solid var(--stroke-subtle);border-radius:10px;background:var(--bg-light)}.timeline-dock-track-empty{align-self:center;padding-left:6px;color:var(--text-tertiary);font-size:11px}.timeline-dock-clip{display:inline-flex;align-items:center;padding:0 10px;border-radius:7px;background:#6bd7ff38;color:var(--text-primary);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.timeline-dock-clip.kind-audio{background:#8bd66b33}.timeline-dock-hint{margin:0;color:var(--text-tertiary);font-size:12px}.bottom-toolbar button{display:grid;place-items:center;min-width:28px;height:28px;border:0;border-radius:999px;background:transparent}.batch-selection-bar{position:fixed;left:50%;top:86px;z-index:42;display:flex;align-items:center;flex-wrap:wrap;justify-content:center;gap:8px;max-width:min(820px,calc(100vw - 560px));min-height:42px;padding:5px 8px 5px 14px;border:1px solid var(--stroke-regular);border-radius:22px;background:var(--bg-panel);box-shadow:0 16px 44px #00000057;transform:translate(-50%);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.batch-selection-bar span,.batch-selection-bar small,.batch-selection-bar button{display:inline-flex;align-items:center}.batch-selection-bar>span{color:var(--text-primary);font-size:13px;white-space:nowrap}.batch-selection-bar small{color:var(--text-tertiary);font-size:12px;white-space:nowrap}.batch-selection-bar button{justify-content:center;gap:5px;min-height:30px;padding:0 10px;border:0;border-radius:999px;background:var(--bg-light);color:var(--text-primary)}.bottom-toolbar .zoom-readout{min-width:54px;color:var(--text-primary);font-size:12px}.toolbar-divider,.menu-separator{width:1px;height:24px;background:var(--stroke-regular)}.context-menu{position:fixed;z-index:var(--z-context-menu);width:218px;padding:7px;border:1px solid var(--stroke-regular);border-radius:14px;background:var(--bg-panel);box-shadow:0 18px 52px #00000073}.context-menu button{display:flex;align-items:center;gap:8px;width:100%;height:36px;padding:0 10px;border:0;border-radius:10px;background:transparent}.context-menu button:hover,.upload-strip:hover,.ghost-button:hover,.icon-button:hover,.rail-item:hover,.bottom-toolbar button:hover,.batch-selection-bar button:hover,.param-preset-row{display:grid;gap:8px;margin-bottom:10px}.param-preset-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.param-preset-actions select{min-width:120px;height:30px;border-radius:10px;border:1px solid var(--stroke-regular);background:var(--bg-elevated);color:var(--text-primary);padding:0 8px}.param-preset-hint{margin:0;color:var(--text-secondary);font-size:12px}.composer-toolbar button:hover,.conversation-select:hover,.conversation-edit-row button:hover{background:var(--bg-light)}.ghost-button:focus-visible,.icon-button:focus-visible{outline:2px solid rgba(246,247,248,.3);outline-offset:1px}.ghost-button:disabled,.icon-button:disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.member-entry:hover{opacity:.9}.selection-marquee{position:fixed;z-index:38;pointer-events:none;border:1px solid rgba(246,247,248,.58);border-radius:8px;background:#f6f7f817;box-shadow:0 0 0 1px #05060838 inset}.menu-separator{display:block;width:100%;height:1px;margin:6px 0}.result-drawer{position:fixed;right:calc(var(--right-panel-gutter) + var(--agent-drawer-width) + var(--right-drawer-gap));top:40px;bottom:40px;z-index:var(--z-result-drawer);width:var(--result-drawer-width);max-height:calc(100vh - 80px);padding:0;overflow:auto;border:1px solid var(--stroke-regular);border-radius:16px;background:#0a0a0bf0;box-shadow:0 18px 48px #0000005c}.workbench-shell.is-agent-collapsed .result-drawer{right:calc(var(--right-panel-gutter) + var(--agent-collapse-handle-width) + var(--right-drawer-gap))}@media(max-width:1200px){.bottom-toolbar{left:84px;right:calc(var(--right-panel-gutter) + var(--agent-drawer-width) + var(--right-drawer-gap));justify-content:center;flex-wrap:wrap;transform:none}.workbench-shell.is-agent-collapsed .bottom-toolbar{right:calc(var(--right-panel-gutter) + var(--agent-collapse-handle-width) + var(--right-drawer-gap))}}.result-drawer-head{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;min-height:42px;padding:0 12px;border-bottom:1px solid var(--stroke-subtle);background:#0a0a0bfa;font-size:14px}.result-toggle-tab{position:absolute;right:-14px;top:calc(50vh - 80px);width:24px;height:52px;border:1px solid var(--stroke-bold);border-radius:9px;background:#121214fa;color:#ffd44d}.result-empty-state{display:grid;min-height:300px;place-items:center;padding:18px;color:var(--text-tertiary);font-size:13px}.node-inspector{position:fixed;right:398px;bottom:86px;z-index:var(--z-node-inspector);display:flex;flex-direction:column;gap:8px;width:var(--anchor-width, 288px);min-width:var(--anchor-width, 288px);max-height:calc(100vh - 188px);padding:12px;overflow:visible;border:1px solid var(--stroke-regular);border-radius:18px;background:var(--bg-panel);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.node-inspector.is-generative{min-width:304px}.node-inspector-scroll{display:grid;gap:10px;flex:1 1 auto;min-height:0;overflow:auto;padding-right:2px}.node-inspector-scroll>.form-field:first-child textarea{min-height:104px}.node-inspector-head{display:flex;align-items:center;gap:9px;padding-right:32px}.node-inspector-badge{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:30px;height:30px;border:1px solid var(--stroke-soft);border-radius:9px;background:var(--bg-elevated)}.node-inspector-badge.tone-blue{color:#9cc9ff}.node-inspector-badge.tone-green{color:#9ee6c6}.node-inspector-badge.tone-purple{color:#cfb8ff}.node-inspector-badge.tone-gold{color:#f1d58a}.node-inspector-badge.tone-cyan{color:#86e7f0}.node-inspector-head>div{display:grid;gap:1px;min-width:0}.node-inspector-eyebrow{color:var(--text-tertiary);font-size:11px;letter-spacing:.04em}.node-inspector-head strong{overflow:hidden;color:var(--text-primary);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.node-inspector-references{display:grid;gap:7px}.node-inspector-more{display:grid;gap:9px}.node-inspector-more>summary{padding:5px 2px;color:var(--text-secondary);font-size:12px;list-style:none;cursor:pointer}.node-inspector-more>summary::-webkit-details-marker{display:none}.node-inspector-more>summary:before{content:"⋯ "}.node-inspector-more[open]>summary:before{content:"⌃ "}.node-inspector-more[open]>summary{color:var(--text-primary)}.node-inspector-controls{display:flex;align-items:center;flex-wrap:wrap;gap:8px;flex:0 0 auto;padding-top:10px;border-top:1px solid var(--stroke-soft)}.node-controls-spacer{flex:1 1 auto;min-width:8px}.node-inspector-model-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0 4px}.node-model-card{display:grid;gap:2px;min-height:54px;padding:10px 12px;border:1px solid var(--stroke-regular);border-radius:8px;background:#ffffff08;color:var(--text-primary);text-align:left;transition:border-color .12s ease,background .12s ease}.node-model-card strong{font-size:13px;line-height:1.3}.node-model-card small{color:var(--text-tertiary);font-size:11px}.node-model-card:hover,.node-model-card:focus-visible{border-color:#6bd7ff59;outline:none}.node-model-card.is-selected{border-color:#6bd7ff8c;background:#6bd7ff1a;box-shadow:0 0 0 1px #6bd7ff2e}.node-inspector-param-stack{display:grid;gap:10px;margin:8px 0 4px}.node-param-field{display:grid;gap:6px}.node-param-field .modal-label{margin:0;color:var(--text-secondary);font-size:12px}.node-inspector-controls.is-text-node-controls{align-items:center;gap:6px}.node-text-editor-shell{display:block;border:0;border-radius:0;background:transparent}.node-text-editor-shell textarea{width:100%;min-height:160px;padding:2px 0 0;resize:none;border:0;border-radius:0;background:transparent;color:var(--text-primary);line-height:1.65;outline:none}.node-text-action{gap:5px;min-height:30px;padding:0 8px;border-radius:999px;border:1px solid var(--stroke-soft);background:var(--bg-glass)}.node-submit.is-text-submit{padding:0 10px 0 8px;height:30px}.node-pill{display:inline-flex;align-items:center;gap:5px;max-width:150px;height:32px;padding:0 9px;border:1px solid var(--stroke-soft);border-radius:999px;background:var(--bg-elevated);color:var(--text-secondary);font-size:12px;cursor:pointer;transition:border-color .15s ease,color .15s ease}.node-pill:hover,.node-pill.is-open{border-color:var(--stroke-bold);color:var(--text-primary)}.node-pill.is-disabled{opacity:.6;cursor:not-allowed}.node-pill select{appearance:none;max-width:116px;border:0;padding:0;background:transparent;color:inherit;font-size:12px;text-overflow:ellipsis;cursor:pointer;outline:none}.node-pill select:disabled{cursor:not-allowed}.node-pill select option{background:#1a1a1a;color:var(--text-primary);font-size:12px}.node-pill-summary{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.node-pill-caret{flex:0 0 auto;color:var(--text-tertiary)}.node-pill.tone-blue{color:#9cc9ff}.node-pill.tone-green{color:#9ee6c6}.node-pill.tone-purple{color:#cfb8ff}.node-pill.tone-gold{color:#f1d58a}.node-pill.tone-cyan{color:#86e7f0}.node-spec{position:relative;display:inline-flex}.node-spec-popover{position:absolute;left:0;bottom:calc(100% + 8px);z-index:5;display:grid;gap:9px;width:max-content;min-width:200px;max-width:260px;padding:12px;border:1px solid var(--stroke-regular);border-radius:14px;background:var(--bg-panel);box-shadow:0 16px 40px #00000075}.node-cost{display:inline-flex;align-items:center;gap:4px;flex:0 0 auto;color:var(--text-secondary);font-size:13px;white-space:nowrap}.node-submit{display:inline-flex;align-items:center;gap:5px;flex:0 0 auto;height:32px;padding:0 12px 0 10px;border:0;border-radius:999px;background:var(--accent);color:var(--accent-text);font-size:12px;font-weight:600;cursor:pointer}.node-submit:disabled{opacity:.55;cursor:not-allowed}.node-submit-notice{width:100%;margin:6px 0 0;font-size:12px;line-height:1.4;color:#ff6b6b}.node-inspector.is-anchored{max-height:var(--anchor-max-height, min(58vh, 380px));box-shadow:0 20px 60px #0000007a;animation:node-inspector-pop .12s ease-out}@keyframes node-inspector-pop{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.node-inspector.is-expanded{right:50%;top:50%;bottom:auto;transform:translate(50%,-50%);width:min(720px,86vw);max-height:86vh;z-index:90;box-shadow:0 24px 80px #0000008c}.node-inspector-expand{position:absolute;top:10px;right:12px;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:1px solid var(--stroke-soft);border-radius:8px;background:var(--bg-elevated);color:var(--text-secondary);cursor:pointer;z-index:1}.node-inspector-expand:hover{color:var(--text-primary)}.node-inspector .panel-head{margin-bottom:0}.node-inspector .form-field textarea{min-height:88px}.node-content-editor{display:grid;gap:10px;padding:10px;border:1px solid var(--stroke-soft);border-radius:14px;background:var(--bg-elevated)}.node-editor-type{display:inline-flex;align-items:center;gap:6px;width:fit-content;padding:5px 9px;border:1px solid var(--stroke-soft);border-radius:var(--radius-control);color:var(--text-secondary);font-size:12px}.node-editor-type.tone-blue{color:#9cc9ff}.node-editor-type.tone-green{color:#9ee6c6}.node-editor-type.tone-purple{color:#cfb8ff}.node-editor-type.tone-gold{color:#f1d58a}.node-editor-type.tone-cyan{color:#86e7f0}.node-type-field>.node-editor-type{width:100%}.node-editor-type select{appearance:none;flex:1;border:0;padding:0;background:transparent;color:inherit;font:inherit;cursor:pointer;outline:none}.node-editor-type select:disabled{cursor:not-allowed;opacity:.7}.node-editor-type select option{background:var(--bg-elevated);color:var(--text-primary)}.inspector-preview .media-preview{height:126px;margin-top:0}.inspector-segmented{width:100%;flex-wrap:wrap}.inspector-segmented button{flex:1 1 auto;min-width:54px}.inspector-summary{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--text-secondary);font-size:12px}.reference-input-list{display:grid;gap:7px}.reference-input-list p{margin:0;padding:9px 10px;border:1px dashed var(--stroke-subtle);border-radius:12px;color:var(--text-tertiary);font-size:12px}.reference-input-item{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:6px;padding:8px;border:1px solid var(--stroke-subtle);border-radius:12px;background:var(--bg-light)}.reference-input-item div{display:grid;grid-template-columns:16px minmax(0,1fr) auto;align-items:center;gap:6px;min-width:0}.reference-input-item span{overflow:hidden;color:var(--text-secondary);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.reference-input-item small{color:var(--text-tertiary);font-size:11px}.reference-input-item button{height:26px;padding:0 8px;border:1px solid var(--stroke-subtle);border-radius:999px;background:transparent;color:var(--text-secondary);font-size:12px}.reference-input-item button:hover{border-color:var(--stroke-regular);color:var(--text-primary)}.node-mode-tabs{display:flex;gap:4px;padding:3px;border:1px solid var(--stroke-subtle);border-radius:12px;background:var(--bg-light)}.node-mode-tabs button{flex:1 1 auto;min-width:0;height:30px;padding:0 8px;border:0;border-radius:9px;background:transparent;color:var(--text-secondary);font-size:12px;cursor:pointer;transition:background .15s ease,color .15s ease}.node-mode-tabs button:hover{color:var(--text-primary)}.node-mode-tabs button.is-active{background:var(--accent);color:var(--accent-text)}.node-mode-tabs button:focus-visible{outline:2px solid rgba(107,215,255,.32);outline-offset:1px}.reference-slot-list{display:grid;gap:9px}.reference-slot{display:grid;gap:6px}.reference-slot-label{color:var(--text-secondary);font-size:12px;font-weight:500}.reference-slot-hint{margin:0;padding:9px 10px;border:1px dashed var(--stroke-subtle);border-radius:12px;color:var(--text-tertiary);font-size:12px}.model-chip-grid{display:grid;gap:7px}.model-chip-grid button{display:grid;gap:4px;padding:10px;border:1px solid var(--stroke-regular);border-radius:14px;background:var(--bg-light);color:var(--text-primary);text-align:left}.model-chip-grid button.is-active{border-color:#f6f7f88c;background:#ffffff1f}.model-chip-grid button.is-vip{border-color:#fbbf2452}.model-chip-grid span{color:var(--text-tertiary);font-size:11px}.task-list{display:grid;gap:8px;margin-bottom:12px}.task-empty-state{margin-bottom:12px;padding:10px;border:1px solid var(--stroke-subtle);border-radius:14px;background:var(--bg-light);color:var(--text-tertiary);font-size:12px}.entitlement-notice{display:grid;gap:7px;margin-bottom:12px;padding:10px;border:1px solid rgba(251,191,36,.28);border-radius:14px;background:#fbbf241a}.entitlement-notice span{color:var(--text-secondary);font-size:12px}.entitlement-notice .ghost-button{justify-self:start;min-height:30px}.entitlement-notice.kind-credits{border-color:#f8717147;background:#f8717117}.task-summary-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.task-select-toggle{display:inline-flex;align-items:center;gap:8px;min-width:0}.task-select-toggle input{flex:0 0 auto}.task-select-toggle strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-user-status{flex:0 0 auto;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600}.task-user-status.is-queued{color:#cbd5e1;background:#94a3b829}.task-user-status.is-running,.task-user-status.is-saving{color:#93c5fd;background:#3b82f629}.task-user-status.is-stalled{color:#fcd34d;background:#fbbf2429}.task-user-status.is-completed{color:#86efac;background:#22c55e29}.task-user-status.is-failed{color:#fca5a5;background:#f8717129}.task-user-status.is-cancelled{color:#d4d4d8;background:#a1a1aa29}.task-queue-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px;padding:8px;border:1px solid var(--stroke-subtle);border-radius:12px;background:#ffffff08}.task-queue-counts{color:var(--text-tertiary);font-size:11px}.task-queue-batch-actions{display:flex;flex-wrap:wrap;gap:6px}.task-queue-item{border:1px solid var(--stroke-subtle);border-radius:14px;padding:10px;background:#ffffff08}.task-queue-summary{display:grid;gap:6px;margin-top:8px}.task-queue-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 10px;color:var(--text-secondary);font-size:11px}.task-queue-summary-grid span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-dependency-hint,.task-next-step{margin:0;color:var(--text-secondary);font-size:11px;line-height:1.45}.task-next-step strong{color:var(--text-primary);font-weight:600}.task-failure-guidance{display:grid;gap:3px;padding:7px 8px;border:1px solid rgba(248,113,113,.24);border-radius:10px;background:#f8717114}.task-failure-guidance strong,.task-failure-guidance span,.task-failure-guidance em{display:block;font-size:11px;line-height:1.45}.task-failure-guidance strong{color:#fecaca}.task-failure-guidance span{color:var(--text-secondary)}.task-failure-guidance em{color:var(--text-tertiary);font-style:normal}.task-execution-meta{display:grid;gap:3px;margin-top:7px;padding:7px;border-radius:10px;background:#ffffff0b}.task-execution-meta span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-output-preview{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;margin-top:7px;padding:7px;border:1px solid var(--stroke-subtle);border-radius:12px;background:#ffffff0e}.task-output-preview strong,.task-output-preview span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-share-url{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;margin:0;padding:6px 8px;border:1px solid var(--stroke-subtle);border-radius:9px;background:#ffffff0a}.task-share-url span,.task-share-url small{min-width:0;overflow:hidden;color:var(--text-tertiary);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.task-share-url small{color:var(--text-muted)}.task-actions{display:flex;flex-wrap:wrap;gap:6px}.task-actions .ghost-button{min-height:28px;padding:0 9px;font-size:12px}.task-error{margin:0;color:#fca5a5;font-size:12px}.task-tracking-recovery{display:grid;gap:8px;padding:9px;border:1px solid rgba(245,158,11,.28);border-radius:10px;background:#f59e0b14}.task-tracking-recovery>div{display:flex;flex-wrap:wrap;gap:6px}.task-tracking-recovery .ghost-button{min-height:28px;padding:0 9px;font-size:12px}.task-log{display:grid;gap:3px;margin:0;padding-left:16px;color:var(--text-tertiary);font-size:11px}.task-detail-panel{gap:12px;border-color:var(--stroke-regular);background:#ffffff13}.task-detail-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.task-detail-head>div{display:grid;min-width:0;gap:3px}.task-detail-head span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-detail-head .icon-button{width:30px;height:30px;flex:0 0 auto}.task-detail-section{display:grid;gap:8px}.task-detail-section>strong,.task-detail-error>strong{font-size:12px}.task-detail-grid{display:grid;gap:6px;margin:0}.task-detail-grid div{display:grid;grid-template-columns:70px minmax(0,1fr);gap:8px;padding:6px 7px;border:1px solid var(--stroke-subtle);border-radius:10px;background:#ffffff0b}.task-detail-grid dt,.task-detail-grid dd{min-width:0;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-detail-grid dt{color:var(--text-tertiary);font-size:11px}.task-detail-grid dd{color:var(--text-secondary);font-size:12px}.task-detail-reference-list{display:flex;flex-wrap:wrap;gap:6px}.task-detail-reference-list span{max-width:100%;padding:5px 7px;border:1px solid var(--stroke-subtle);border-radius:999px;background:var(--bg-light);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-detail-error{display:grid;gap:5px;padding:8px;border:1px solid rgba(248,113,113,.28);border-radius:10px;background:#f8717117}.task-detail-error span{color:#fca5a5}.task-detail-log{display:grid;gap:6px;margin:0;padding:0;list-style:none}.task-detail-log li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 8px;padding:7px;border:1px solid var(--stroke-subtle);border-radius:10px;background:#ffffff0b}.task-detail-log span,.task-detail-log strong,.task-detail-log em,.task-detail-empty{min-width:0;overflow:hidden;color:var(--text-tertiary);font-size:11px;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.task-detail-log strong{color:var(--text-secondary)}.task-detail-log em{grid-column:1 / -1;color:var(--text-secondary)}.task-list span{color:var(--text-tertiary);font-size:12px}.result-list article{grid-template-columns:auto minmax(0,1fr);align-items:center}.result-list article strong,.result-list article span{grid-column:2}.result-list .media-preview{grid-row:1 / span 2}.cut-mode{position:absolute;inset:74px 398px 18px 78px;display:grid;grid-template-columns:210px minmax(0,1fr) 250px;grid-template-rows:48px minmax(0,1fr) 1fr;gap:8px}.cut-editor-mode{grid-template-columns:52px clamp(248px,13.5vw,276px) minmax(0,1fr) clamp(320px,28.5vw,586px);grid-template-rows:52px minmax(320px,1fr) minmax(240px,.92fr);gap:8px}.workbench-shell.is-cut-editor-shell .cut-mode{inset:8px}.cut-toolbar{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:40px}.cut-toolbar-center{display:grid;gap:2px;justify-items:center;text-align:center}.cut-toolbar-center strong{font-size:13px;font-weight:600;color:#f6f7f8eb}.cut-toolbar-center span{font-size:10px;color:#f6f7f880}.cut-toolbar-title{color:var(--text-secondary);font-size:13px;font-weight:500}.cut-toolbar-actions{display:flex;align-items:center;gap:8px}.cut-toolbar .ghost-button,.cut-toolbar .primary-button{min-height:32px;font-size:12px}.cut-left,.cut-preview,.cut-inspector,.timeline,.cut-preview-panel,.cut-timeline-panel,.cut-source-shell-panel{border:1px solid var(--stroke-regular);border-radius:14px;background:var(--bg-panel)}.cut-left,.cut-inspector{display:grid;gap:8px;padding:10px}.cut-source-sidebar{grid-column:1;grid-row:2 / span 2;display:grid;align-content:start;justify-items:center;gap:8px;padding:4px 0 0}.cut-source-panel{grid-column:2;grid-row:2;min-height:0;display:grid;border:0;background:transparent;padding:0;gap:0}.cut-source-rail{display:grid;align-content:start;justify-items:center;gap:8px;padding:0}.cut-source-shell{min-height:0;display:grid;grid-template-rows:auto auto auto auto minmax(0,1fr);gap:8px}.cut-source-shell-panel{min-height:0;padding:10px}.cut-inspector{grid-column:4;grid-row:2;min-height:0;align-content:stretch;grid-template-rows:auto minmax(0,1fr) auto}.cut-inspector.is-empty{grid-template-rows:auto minmax(0,1fr) auto auto}.cut-source-panel-tab{display:grid;justify-items:center;grid-template-rows:16px auto;gap:4px;width:38px;min-height:52px;padding:7px 1px 6px;border:1px solid rgba(255,255,255,.07);border-radius:13px;background:#ffffff05;color:#f6f7f88f;font-size:9px;letter-spacing:.01em;transition:background .14s ease,border-color .14s ease,color .14s ease,box-shadow .14s ease}.cut-source-panel-tab:hover{border-color:#7dd3fc38;background:#7dd3fc1a;color:#ecf9ff}.cut-source-panel-tab:focus-visible{outline:1px solid rgba(125,211,252,.5);outline-offset:0}.cut-source-panel-tab-label{display:grid;justify-items:center;gap:1px;text-align:center;line-height:1.08}.cut-source-panel-tab-line{display:block;white-space:nowrap}.cut-source-panel-tab.is-active{border-color:#7dd3fc73;background:#38bdf829;color:#f2fcff}.cut-source-panel-tab:active{transform:translateY(.5px)}.cut-source-header{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:30px;padding-bottom:10px;border-bottom:1px solid var(--stroke-subtle)}.cut-source-title{display:inline-flex;align-items:center;gap:8px;color:var(--text-primary)}.cut-source-title strong{font-size:14px;font-weight:600}.cut-source-header-actions{display:inline-flex;align-items:center;gap:6px}.cut-source-icon-button{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid var(--stroke-subtle);border-radius:8px;background:var(--bg-light);color:var(--text-secondary)}.cut-source-toolbar{display:grid;grid-template-columns:minmax(0,1fr) 76px;align-items:center;gap:8px}.cut-source-hint{margin:0;display:inline-flex;align-items:center;min-height:24px;padding:0 9px;border:1px solid rgba(56,189,248,.16);border-radius:999px;background:#38bdf814;color:var(--text-secondary);font-size:10px}.cut-source-tabs,.cut-source-filter-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.cut-source-tabs button,.cut-source-filter-row button{min-height:34px;border:1px solid var(--stroke-subtle);border-radius:12px;background:var(--bg-light);color:var(--text-secondary);font-size:12px}.cut-source-tabs button.is-active,.cut-source-filter-row button.is-active{border-color:#f6f7f842;background:#f6f7f814;color:var(--text-primary)}.cut-source-list{display:grid;gap:6px;min-height:0;overflow-y:auto}.cut-source-search input{flex:1;min-height:32px;border:0;background:transparent;color:var(--text-primary);padding:0}.cut-source-search{display:inline-flex;align-items:center;gap:8px;min-height:30px;padding:0 9px;border:1px solid var(--stroke-regular);border-radius:10px;background:var(--bg-light);color:var(--text-tertiary)}.cut-source-filter-select select{width:100%;min-height:30px;border:1px solid var(--stroke-regular);border-radius:10px;background:var(--bg-light);color:var(--text-primary);padding:0 8px}.cut-source-import-card{display:grid;justify-items:start;align-content:start;gap:4px;min-height:60px;padding:11px 12px;border:1px solid rgba(246,247,248,.08);border-radius:12px;background:#ffffff05;color:var(--text-primary);text-align:left}.cut-source-import-card strong{font-size:13px;font-weight:600}.cut-source-import-card span{color:var(--text-tertiary);font-size:10px}.cut-source-item{display:grid;grid-template-columns:28px minmax(0,1fr) 18px;align-items:center;gap:8px;min-height:40px;padding:0 10px;border:1px solid var(--stroke-subtle);border-radius:10px;background:var(--bg-light);color:var(--text-primary);text-align:left}.cut-source-item small,.cut-empty-state{color:var(--text-tertiary);font-size:11px}.cut-source-item-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:10px;background:#ffffff0f;color:var(--text-secondary)}.cut-source-item-copy{display:grid;min-width:0}.cut-source-item-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:500}.cut-text-source textarea{min-height:140px;border:1px solid var(--stroke-regular);border-radius:14px;background:var(--bg-light);color:var(--text-secondary);padding:12px;resize:none;outline:none}.cut-text-create{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:38px;border:1px solid rgba(125,211,252,.24);border-radius:12px;background:linear-gradient(135deg,#0e749047,#0f172ae0);color:#e0f2fe}.cut-text-source-list{display:grid;gap:8px}.cut-left button{display:flex;align-items:center;justify-content:space-between;min-height:38px;padding:0 10px;border-radius:12px;text-align:left}.cut-left p,.cut-inspector p,.timeline-empty{margin:0;color:var(--text-tertiary);font-size:12px}.cut-left small{color:var(--text-tertiary);font-size:11px}.cut-preview{display:grid;place-items:center;color:var(--text-secondary)}.cut-preview-panel{grid-column:3;grid-row:2;display:grid;grid-template-rows:minmax(0,1fr) auto;gap:8px;padding:8px}.cut-preview-stage{display:grid;place-items:center;min-height:0;border-radius:12px;border:1px solid rgba(246,247,248,.04);background:#000;color:var(--text-secondary)}.cut-preview-stage>span{font-size:10px;color:#f6f7f8b8}.cut-preview video{width:min(82%,620px);max-height:78%;object-fit:contain;border-radius:12px}.cut-preview-stage img{width:min(82%,620px);max-height:78%;object-fit:contain;border-radius:12px}.cut-audio-preview{display:grid;place-items:center}.cut-text-preview-card{display:grid;gap:12px;width:min(78%,560px);padding:22px 24px;border:1px solid rgba(125,211,252,.18);border-radius:22px;background:radial-gradient(circle at top left,rgba(56,189,248,.16),transparent 42%),linear-gradient(160deg,#0f172af5,#082f49eb);box-shadow:0 24px 64px #02081757;text-align:left}.cut-text-preview-card strong{color:#f8fafc;font-size:13px;letter-spacing:.08em}.cut-text-preview-card p{margin:0;color:#e2e8f0e0;font-size:clamp(16px,1.7vw,24px);line-height:1.6;white-space:pre-wrap}.cut-preview-controls{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto;gap:4px;align-items:center}.cut-preview-timecode{display:flex;align-items:center;gap:8px;min-width:0;min-height:28px}.cut-preview-assistive-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.cut-preview-timecode-row{display:inline-flex;align-items:center;gap:0;min-width:0;font-size:10px;line-height:1}.cut-preview-jog{display:inline-flex;align-items:center;gap:4px}.cut-preview-timecode-input{min-width:88px;min-height:26px;border:1px solid rgba(246,247,248,.12);border-radius:6px;background:#0f172ad6;color:var(--text-primary);padding:0 8px;font-size:10px;font-variant-numeric:tabular-nums;outline:none}.cut-preview-timecode-current{min-width:0;min-height:16px;padding:0 4px;border:0;border-radius:6px;background:transparent;color:#7dd3fc;font:inherit;font-variant-numeric:tabular-nums;white-space:nowrap}.cut-preview-timecode-current:hover,.cut-preview-timecode-current:focus-visible{background:#f6f7f814;outline:none}.cut-preview-timecode-separator,.cut-preview-timecode-total{color:var(--text-primary);font-variant-numeric:tabular-nums}.cut-preview-timecode-separator{padding:0 8px;color:var(--text-secondary)}.cut-preview-timecode-total{white-space:nowrap;font-size:10px}.cut-preview-option-pills{display:flex;align-items:center;justify-self:end;min-width:0;gap:3px}.cut-preview-pill-select{min-width:0;min-height:26px;max-width:112px;border:1px solid rgba(246,247,248,.08);border-radius:7px;background:#f6f7f80f;color:var(--text-primary);padding:0 7px;font-size:10px}.cut-preview-icon-button{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:1px solid var(--stroke-subtle);border-radius:7px;background:#ffffff05;color:var(--text-secondary);transition:background .14s ease,border-color .14s ease,color .14s ease,box-shadow .14s ease}.cut-preview-icon-button:hover,.cut-preview-pill-select:hover{border-color:#7dd3fc3d;background:#38bdf81a;color:#e7f8ff}.cut-preview-icon-button:focus-visible,.cut-preview-pill-select:focus-visible{outline:1px solid rgba(125,211,252,.5);outline-offset:0}.cut-preview-icon-button:active{transform:translateY(.5px)}.cut-inspector label,.form-field{display:grid;gap:6px;color:var(--text-secondary);font-size:12px}.cut-inspector-body{min-height:0;display:grid;align-content:start;gap:8px;overflow-y:auto;padding-right:2px}.cut-inspector-trim{display:grid;gap:6px}.cut-inspector-empty{display:grid;justify-items:center;align-self:center;gap:8px;padding:24px 14px 18px;border:0;border-radius:0;background:transparent;text-align:center}.cut-inspector-empty strong{color:var(--text-primary);font-size:15px;font-weight:600}.cut-inspector-empty p{max-width:220px;font-size:11px}.cut-inspector-empty-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid rgba(246,247,248,.12);border-radius:12px;background:#f6f7f808;color:var(--text-secondary)}.cut-inspector input,.form-field input,.form-field textarea{min-height:36px;border:1px solid var(--stroke-regular);border-radius:10px;background:var(--bg-light);color:var(--text-primary);padding:0 10px;font-size:13px;line-height:1.5;outline:none}.form-field textarea{min-height:106px;padding:10px;resize:none}.cut-summary{display:flex;align-items:center;justify-content:space-between;color:var(--text-secondary);font-size:11px}.cut-inspector-footer{display:grid;gap:8px}.cut-inspector-status{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--text-secondary);font-size:11px}.cut-inspector-status span:last-child{overflow:hidden;text-align:right;text-overflow:ellipsis;white-space:nowrap}.cut-status-chip{display:inline-flex;align-items:center;min-height:24px;padding:0 9px;border:1px solid rgba(246,247,248,.08);border-radius:999px;background:#ffffff0a;color:var(--text-secondary);font-size:10px;white-space:nowrap}.cut-status-chip.is-synced{border-color:#22c55e38;background:#22c55e1a;color:#bbf7d0}.cut-status-chip.is-pending{border-color:#38bdf838;background:#38bdf81a;color:#bae6fd}.cut-status-chip.is-error{border-color:#f871713d;background:#f871711a;color:#fecaca}.cut-inspector-error{margin:0;color:#fca5a5;font-size:11px}.cut-inspector-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.cut-inspector-actions .ghost-button,.cut-inspector-actions .primary-button{min-height:30px;justify-content:center;font-size:12px}.timeline-clip-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.timeline-clip-trim-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.timeline-clip-actions button{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:30px;padding:0 6px;border:1px solid var(--stroke-subtle);border-radius:10px;background:var(--bg-light);color:var(--text-secondary);font-size:12px}.timeline{grid-column:1 / -1;display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:10px;padding:14px;overflow:hidden}.cut-timeline-panel{grid-column:2 / -1;grid-row:3;display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:8px;padding:10px 12px 12px;overflow:hidden}.cut-timeline-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:30px}.cut-timeline-tools,.cut-timeline-toolbar-meta{display:inline-flex;align-items:center;gap:6px;min-width:0}.cut-timeline-toolbar-meta{margin-left:auto}.cut-timeline-toolbar-divider{width:1px;height:16px;background:var(--stroke-subtle)}.cut-timeline-tool,.cut-timeline-snap{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:28px;min-width:28px;padding:0 8px;border:1px solid var(--stroke-subtle);border-radius:8px;background:#ffffff05;color:var(--text-secondary)}.cut-timeline-tool.is-active,.cut-timeline-snap.is-active{border-color:#7dd3fc38;background:#38bdf81f;color:#dff6ff}.cut-timeline-tool:disabled{opacity:.38}.cut-timeline-snap span{font-size:11px}.timeline-append-track{display:inline-flex;align-items:center;gap:6px}.cut-timeline-toolbar .timeline-dock-zoom{display:inline-flex;align-items:center;gap:6px;color:var(--text-secondary);font-size:11px}.cut-timeline-toolbar .timeline-dock-zoom input[type=range]{width:96px;height:4px;cursor:pointer}.timeline-ruler{position:relative;display:flex;align-items:flex-end;height:20px;border-bottom:1px solid var(--stroke-subtle)}.timeline-ruler span{position:absolute;transform:translate(-50%);color:var(--text-tertiary);font-size:10px;line-height:1;white-space:nowrap}.timeline-frame-ruler{position:relative;height:24px;border-bottom:1px solid var(--stroke-subtle)}.timeline-frame-ruler span{position:absolute;top:6px;transform:translate(-50%);color:var(--text-tertiary);font-size:9px;white-space:nowrap}.timeline-frame-ruler-label{letter-spacing:.02em}.timeline-playhead{position:absolute;top:0;bottom:-1px;width:2px;border-radius:999px;background:#ffad54f2;box-shadow:0 0 0 1px #ffad543d}.timeline-tracks{display:grid;gap:8px;overflow-y:auto;min-height:0}.cut-track-row{display:grid;grid-template-columns:170px minmax(0,1fr);gap:10px;align-items:stretch}.cut-track-meta{display:grid;gap:10px;padding:10px;border:1px solid var(--stroke-subtle);border-radius:12px;background:#ffffff05}.cut-track-name{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:center}.cut-track-name strong{color:var(--text-primary);font-size:11px}.cut-preview-modal{position:fixed;inset:0;z-index:calc(var(--z-modal) + 2);display:grid;place-items:center;padding:32px;background:#06080cd1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.cut-preview-modal-stage{position:relative;display:grid;gap:12px;place-items:center;width:min(100%,960px);min-height:min(72vh,720px);padding:24px;border:1px solid rgba(246,247,248,.12);border-radius:24px;background:linear-gradient(180deg,#ffffff0a,#ffffff03),#0a0c12f5}.cut-preview-modal-stage img,.cut-preview-modal-stage video{width:100%;max-height:60vh;object-fit:contain;border-radius:18px}.cut-preview-modal-stage .cut-text-preview-card{width:min(72vw,820px)}.cut-preview-modal-close{position:absolute;top:24px;right:24px;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid rgba(246,247,248,.12);border-radius:999px;background:#ffffff0f;color:var(--text-primary)}.cut-track-name span{color:var(--text-tertiary);font-size:10px}.cut-track-kind-chip{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:10px;background:#38bdf81f;color:#7dd3fcf2}.cut-track-kind-chip.is-audio{background:#fbbf241f;color:#fde047f5}.cut-track-tools{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.cut-track-tool{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:28px;height:28px;padding:0;border:1px solid var(--stroke-subtle);border-radius:8px;background:#ffffff05;color:var(--text-secondary);transition:background .14s ease,border-color .14s ease,color .14s ease,box-shadow .14s ease}.cut-track-tool span{font-size:11px;font-weight:600;letter-spacing:.04em}.cut-track-tool:hover{border-color:#7dd3fc3d;background:#38bdf81a;color:#e7f8ff}.cut-track-tool:focus-visible{outline:1px solid rgba(125,211,252,.5);outline-offset:0}.cut-track-tool.is-active{border-color:#7dd3fc85;background:#38bdf82e;color:#f0fbff;box-shadow:0 0 0 1px #7dd3fc38}.cut-track-tool:active{transform:translateY(.5px)}.timeline-track{display:grid;grid-template-columns:52px minmax(0,1fr);align-items:stretch;gap:10px;min-height:42px}.timeline-track-label{display:flex;align-items:center;color:var(--text-secondary);font-size:11px;font-weight:500;padding:4px 0}.timeline-track-lane{display:flex;gap:6px;min-height:34px;padding:3px;border:1px solid var(--stroke-subtle);border-radius:10px;background:#ffffff05;overflow-x:auto;align-items:center}.timeline-track-empty{padding-left:8px;color:var(--text-tertiary);font-size:10px}.timeline-clip{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;height:30px;min-width:80px;padding:0 9px;border:1px solid rgba(56,189,248,.24);border-radius:7px;background:#38bdf81c;color:var(--text-primary);font-size:11px;text-align:left;cursor:pointer;flex-shrink:0}.timeline-clip.kind-audio{border-color:#fbbf2440;background:#fbbf241a}.timeline-clip.is-selected{border-color:#f6f7f8b3;box-shadow:0 0 0 2px #f6f7f81c}.timeline-clip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.timeline-clip small{color:var(--text-tertiary);font-size:9px}.modal-overlay{position:fixed;inset:0;z-index:var(--z-modal);display:grid;place-items:center;background:#00000061;pointer-events:auto}.system-docked-panels{position:fixed;left:-10000px;top:0;width:1px;height:1px;overflow:hidden;pointer-events:none}.docked-system-panel{width:560px}.modal-box,.search-modal{width:min(560px,calc(100vw - 32px));max-height:calc(100vh - 48px);overflow:auto;padding:18px;border:1px solid var(--stroke-regular);border-radius:22px;background:var(--bg-panel);box-shadow:0 24px 80px #0006}.modal-box.credit-modal{width:min(640px,calc(100vw - 32px));max-height:min(calc(100vh - 48px),720px)}.modal-box.compact{width:min(420px,calc(100vw - 32px))}.modal-hd{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.credit-summary-formula,.credit-metrics-row{display:grid;gap:10px}.credit-summary-formula{grid-template-columns:minmax(0,1.3fr) auto minmax(0,1fr) auto minmax(0,1fr);align-items:stretch}.credit-metrics-row{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:10px}.project-sync-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px}.credit-summary-total,.credit-summary-part,.credit-metrics-row div,.project-sync-grid div{display:grid;gap:8px;padding:12px;border-radius:14px;background:var(--bg-light)}.credit-summary-total span,.credit-summary-part span,.credit-metrics-row span,.project-sync-grid span{color:var(--text-secondary);font-size:12px}.credit-summary-total strong,.credit-summary-part strong,.credit-metrics-row strong,.project-sync-grid strong{font-size:20px}.credit-summary-equals,.credit-summary-plus{align-self:center;color:var(--text-secondary);font-size:18px}.credit-short-info{width:18px;height:18px;margin-left:6px;border:1px solid var(--stroke-regular);border-radius:999px;background:transparent;color:var(--text-tertiary);font-size:11px}.project-sync-grid strong{font-size:14px}.project-version-modal .form-field{margin-top:12px}.project-share-modal{width:min(720px,calc(100vw - 32px));max-height:min(720px,calc(100vh - 56px));overflow:auto}.project-share-grid{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:10px}.share-link-card,.share-stats-card,.collaborator-list,.activity-feed{border:1px solid var(--stroke-subtle);border-radius:14px;background:var(--bg-light)}.share-link-card{display:grid;gap:10px;padding:12px}.share-link-card .segmented{width:fit-content}.share-url-box{display:grid;gap:6px;min-width:0;padding:10px;border:1px solid var(--stroke-subtle);border-radius:12px;background:#00000024}.share-url-box small,.collaborator-list header span,.activity-feed header span,.collaborator-list article span,.activity-feed small{color:var(--text-tertiary);font-size:12px}.share-url-box strong{min-width:0;overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px}.share-stats-card{display:grid;gap:8px;padding:10px}.share-stats-card div{display:grid;gap:6px}.share-stats-card span{color:var(--text-secondary);font-size:12px}.share-stats-card strong{font-size:18px}.collaborator-list,.activity-feed{display:grid;gap:8px;margin-top:10px;padding:10px}.collaborator-list header,.activity-feed header{display:flex;align-items:center;justify-content:space-between}.collaborator-list article{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px;border:1px solid var(--stroke-subtle);border-radius:12px;background:#0000001f}.collaborator-list article div:nth-child(2){display:grid;gap:4px;min-width:0}.member-avatar{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid var(--stroke-regular);border-radius:50%;background:var(--bg-glass);font-size:12px;font-weight:800}.member-avatar.is-online{border-color:#34d39980;box-shadow:0 0 0 3px #34d39917}.role-badge,.role-switch button{border:1px solid var(--stroke-regular);border-radius:var(--radius-control);background:var(--bg-glass);color:var(--text-primary)}.role-badge{padding:7px 10px;color:var(--text-secondary);font-size:12px}.role-switch{display:inline-flex;gap:4px;padding:3px;border:1px solid var(--stroke-subtle);border-radius:var(--radius-control)}.role-switch button{min-width:54px;height:26px;padding:0 8px;font-size:12px}.role-switch button.is-active{background:var(--accent);color:var(--accent-text)}.activity-feed article{display:grid;grid-template-columns:54px minmax(0,1fr) 150px;align-items:center;gap:8px;padding:8px;border-top:1px solid var(--stroke-subtle)}.activity-feed article:first-of-type{border-top:0}.activity-feed article span{color:var(--text-secondary);font-size:12px}.activity-feed article p{margin:0;color:var(--text-primary);font-size:13px}.package-textarea{width:100%;min-height:92px;margin-top:12px;padding:10px;border:1px solid var(--stroke-regular);border-radius:14px;background:var(--bg-light);color:var(--text-secondary);outline:none;resize:vertical;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px}.version-list{display:grid;gap:8px;max-height:230px;margin-top:12px;overflow:auto}.version-list article{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;border:1px solid var(--stroke-subtle);border-radius:14px;background:var(--bg-light)}.version-list article div{display:grid;gap:4px;min-width:0}.version-list article .version-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.version-list article span,.sync-error{color:var(--text-tertiary);font-size:12px}.sync-error{color:#fca5a5}.modal-actions{gap:8px;margin-top:14px}.credit-card-code-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:14px;padding:12px;border:1px solid var(--stroke-subtle);border-radius:12px;background:var(--bg-light)}.credit-card-code-form strong,.credit-card-code-form small{grid-column:1 / -1}.credit-card-code-form input{min-width:0;height:36px;padding:0 11px;border:1px solid var(--stroke-regular);border-radius:10px;background:var(--bg-panel);color:var(--text-primary)}.version-diff-panel{display:grid;gap:12px;margin-top:12px;padding:12px;border:1px solid var(--stroke-regular);border-radius:14px;background:#ffffff0d}.version-diff-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.version-diff-header div{display:grid;gap:4px;min-width:0}.version-diff-header span{color:var(--text-tertiary);font-size:12px}.version-diff-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.version-diff-sections{display:grid;gap:8px;max-height:180px;overflow:auto}.version-diff-sections article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 10px;padding:10px;border:1px solid var(--stroke-subtle);border-radius:12px;background:var(--bg-light)}.version-diff-sections article>div:first-child{display:grid;gap:3px;min-width:0}.version-diff-sections span,.version-diff-sections p{color:var(--text-tertiary);font-size:12px}.version-diff-sections p{grid-column:1 / -1;margin:0}.diff-counts{display:flex;align-items:center;gap:6px;white-space:nowrap}.diff-counts span:first-child{color:#86efac}.diff-counts span:nth-child(2){color:#fca5a5}.card-redemption-form{display:grid;gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid var(--stroke-subtle)}.card-redemption-form label{color:var(--text-secondary);font-size:13px;font-weight:700}.card-redemption-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.card-redemption-controls input{min-width:0;height:38px;padding:0 12px;border:1px solid var(--stroke-regular);border-radius:8px;background:var(--bg-light);color:var(--text-primary);outline:none}.card-redemption-controls input:focus{border-color:var(--accent)}.card-redemption-feedback{margin:0;color:#86efac;font-size:12px}.card-redemption-feedback.is-error{color:#fca5a5}.credit-ledger-tabs{display:flex;align-items:center;gap:8px;margin-top:14px}.credit-ledger-tabs button{height:30px;padding:0 12px;border:1px solid var(--stroke-regular);border-radius:999px;background:transparent;color:var(--text-secondary)}.credit-ledger-tabs button.is-active{background:var(--bg-light);color:var(--text-primary)}.ledger-table{display:grid;gap:8px;margin-top:16px;color:var(--text-secondary);font-size:12px}.ledger-table p{grid-column:1 / -1;text-align:center}.ledger-table div,.credit-ledger-header{display:grid;grid-column:1 / -1;grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;padding:8px 0;border-top:1px solid var(--stroke-subtle)}.credit-ledger-header{border-top:0;color:var(--text-tertiary)}.ledger-table strong{color:var(--text-primary);text-align:right}.ledger-table .is-credit strong{color:#86efac}.ledger-table .is-spend strong{color:#fca5a5}.feedback-types,.theme-row{gap:8px;margin:8px 0 14px}.preference-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:8px 0 14px}.preference-option{display:inline-flex;align-items:center;justify-content:space-between;min-width:0;height:42px;padding:0 11px;border:1px solid var(--stroke-regular);border-radius:var(--radius-control);background:var(--bg-glass);color:var(--text-secondary)}.preference-option span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preference-option.is-active{background:var(--bg-light);color:var(--text-primary)}.preference-option:hover{border-color:var(--stroke-bold);color:var(--text-primary)}.preference-option:focus-visible{outline:2px solid rgba(107,215,255,.32);outline-offset:1px}.search-modal{align-self:start;margin-top:72px}.search-input-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 10px;border-radius:16px;background:var(--bg-light)}.search-input-row input{height:38px;border:0;background:transparent;color:var(--text-primary);outline:none}.search-scope-row{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-top:12px}.search-scope-row button,.search-recent-chips button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:30px;padding:0 10px;border:1px solid var(--stroke-subtle);border-radius:999px;background:var(--bg-light);color:var(--text-secondary);font-size:12px}.search-scope-row button.is-active{border-color:var(--stroke-bold);background:var(--accent);color:var(--accent-text)}.search-count-badge{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--bg-glass);color:var(--text-tertiary);font-size:11px}.search-recent-row{display:grid;gap:8px;margin-top:12px;padding:10px;border-radius:14px;background:var(--bg-light)}.search-recent-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--text-tertiary);font-size:12px}.search-recent-heading button{border:0;background:transparent;color:var(--text-secondary);font-size:12px}.search-recent-chips{display:flex;flex-wrap:wrap;gap:7px}.search-results{display:grid;gap:8px;margin-top:14px;max-height:360px;overflow:auto}.hotkey-listener{position:fixed;width:1px;height:1px;opacity:0;pointer-events:none}.visually-hidden-file{display:none}@media(max-width:1180px){.side-panel{display:none}.canvas-area{inset-right:380px}}@media(max-width:860px){:root{--agent-drawer-width: 304px}.canvas-area,.cut-mode{right:326px}.topbar-right .member-pill,.topbar-tabs{display:none}.bottom-toolbar{left:12px;bottom:12px;flex-direction:column;max-height:calc(100vh - 96px);overflow:auto;transform:none}.bottom-toolbar .toolbar-divider,.bottom-toolbar .zoom-readout{display:none}.bottom-toolbar button{flex:0 0 32px}}.platform-page{width:100%;min-width:0;height:100vh;overflow:auto;background:var(--bg-base);color:var(--text-primary)}.platform-page.creator-home{position:relative;overflow-x:hidden;background:radial-gradient(ellipse 80% 50% at 50% -8%,var(--studio-glow),transparent 58%),radial-gradient(ellipse 45% 35% at 88% 18%,rgba(139,214,107,.05),transparent 55%),var(--bg-base)}.platform-page.creator-home:before{position:fixed;inset:0;z-index:0;content:"";background-image:radial-gradient(circle,var(--color-grid-dot) 1px,transparent 1px);background-size:28px 28px;opacity:.35;pointer-events:none}.platform-page.creator-home>:not(.modal-overlay):not(.platform-modal-overlay){position:relative;z-index:1}.platform-page a{color:inherit;text-decoration:none}.platform-page-header,.home-header,.skills-toolbar,.skills-filter-bar,.platform-section,.platform-footer{width:min(1180px,calc(100vw - 40px));margin:0 auto}.platform-page-header,.home-header{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:var(--home-header-height, 64px);padding:10px 0}.platform-page-header>span,.platform-page-header>a{color:var(--text-secondary);font-size:13px}.platform-brand,.home-header nav,.platform-upload-row,.skill-capsule-row,.skills-toolbar,.skills-filter-bar,.skill-category-row,.platform-tabs,.password-row,.platform-footer{display:flex;align-items:center}.platform-brand{gap:10px;min-width:0;font-weight:800}.platform-brand-mark{display:inline-grid;width:32px;height:32px;place-items:center;border:1px solid var(--stroke-bold);border-radius:8px;background:var(--bg-light);color:var(--accent);font-size:12px}.home-header nav{gap:8px;flex-wrap:nowrap;justify-content:flex-end}.home-header nav a,.home-header nav button,.platform-tabs button,.skill-category-row button,.sort-button,.skill-card button{min-height:34px;border:1px solid var(--stroke-regular);border-radius:999px;background:var(--bg-glass);color:var(--text-primary)}.home-header nav a,.home-header nav button{display:inline-flex;align-items:center;gap:6px;padding:0 11px;white-space:nowrap}.member-entry{color:#ffcf7a!important}.avatar-entry{max-width:160px}.avatar-entry span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.login-page{display:flex;width:100vw;height:100vh;overflow:hidden;background:#09090a}.login-hero{position:relative;flex:1 1 auto;min-width:0;height:100vh;overflow:hidden;background:linear-gradient(135deg,#1a2030,#11151f 45%,#0a0a0a)}.login-hero:after{content:"";position:absolute;inset:0;z-index:2;background:linear-gradient(90deg,#09090a00 54%,#09090ac7 82%,#0a0a0a);pointer-events:none}.login-hero-fallback{position:absolute;inset:0;z-index:0;width:100%;height:100%;background:#12141c;animation:login-hero-canvas-presence 8s ease-in-out infinite}.login-hero-media{position:absolute;inset:0;z-index:1;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .42s ease}.login-hero-media.is-ready{opacity:.86}.login-hero-caption{position:absolute;left:40px;bottom:40px;z-index:3;max-width:60%}.login-hero-tagline{margin:0;font-size:28px;font-weight:700;line-height:1.25;color:#fafafaeb;text-shadow:0 2px 18px rgba(0,0,0,.5)}@keyframes login-hero-canvas-presence{0%,to{filter:saturate(1) contrast(1)}50%{filter:saturate(1.08) contrast(1.04)}}.login-aside{position:relative;z-index:1;flex:0 0 clamp(430px,36vw,560px);height:100vh;display:flex;flex-direction:column;justify-content:center;padding:44px 48px;background:#0a0a0a;overflow-y:auto}.login-aside-head{position:absolute;top:28px;right:32px;display:flex;align-items:center;justify-content:flex-end}.login-aside-head>a{color:#f6f7f8c7;font-size:12px;text-decoration:none}.login-copy h1,.home-creation-panel h1,.skills-toolbar h1{margin:0;font-size:32px;line-height:1.2;letter-spacing:0}.login-copy p,.platform-section-heading span,.platform-section-heading a,.platform-kicker,.skill-card span,.skill-card p,.skill-card small,.project-card span,.project-card small,.platform-footer{color:var(--text-secondary)}.platform-kicker{margin:0 0 8px;font-size:12px;text-transform:uppercase}.login-copy{text-align:center}.login-copy>p:last-child{max-width:none;margin:8px 0 0;font-size:16px;line-height:1.45;color:#f6f7f875}.login-panel{display:grid;align-content:start;gap:12px;width:min(420px,100%);margin:0 auto}.login-panel>.platform-brand{justify-content:center;gap:0;margin-bottom:38px;color:#f6f7f8f5;font-size:34px;font-weight:850;line-height:1}.login-panel>.platform-brand .platform-brand-mark,.login-panel>.platform-brand .platform-brand-logo{width:50px;height:50px;border-color:#ffffff2e;border-radius:14px;background:#ffffff13;font-size:13px}.login-panel>.platform-brand .platform-brand-logo{width:min(268px,78%);height:auto;border:0;border-radius:0;background:transparent;object-fit:contain}.login-panel>.platform-brand .platform-brand-logo+span{display:none}.login-panel .login-copy h1{font-size:36px;font-weight:500;line-height:1.35;text-align:center}.platform-tabs{gap:4px;padding:4px;border:1px solid var(--stroke-subtle);border-radius:999px;background:var(--bg-light)}.platform-tabs button{flex:1;padding:0 12px;border-color:transparent;background:transparent}.platform-tabs button.is-active{background:var(--accent);color:var(--accent-text)}.platform-tabs.is-compact button{min-height:30px;font-size:12px}.login-panel .platform-tabs{gap:4px;height:40px;margin-top:28px;padding:3px;border:0;border-radius:999px;background:#ffffff1a}.login-panel .platform-tabs button{flex:1;padding:0 12px;min-height:32px;border:0;background:transparent;color:#f6f7f87a;font-size:14px;font-weight:500;line-height:1}.login-panel .platform-tabs button.is-active{background:var(--accent);color:var(--accent-text)}.login-panel .platform-tabs.is-compact{justify-content:center;gap:40px;height:36px;margin-top:2px;padding:0;border-radius:0;background:transparent}.login-panel .platform-tabs.is-compact button{position:relative;flex:0 0 auto;min-height:32px;padding:0;background:transparent;color:#f6f7f875;font-size:14px}.login-panel .platform-tabs.is-compact button.is-active{background:transparent;color:#f6f7f8eb}.login-panel .platform-tabs.is-compact button.is-active:after{content:"";position:absolute;left:50%;bottom:0;width:34px;height:2px;border-radius:999px;background:var(--accent);transform:translate(-50%)}.login-field{display:grid;gap:0}.login-field>span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.login-input-wrap{position:relative;display:flex;align-items:center}.login-panel input,.home-prompt-box textarea,.skills-search input{width:100%;border:1px solid var(--stroke-regular);border-radius:8px;background:var(--bg-light);color:var(--text-primary);outline:none}.login-panel input{height:40px;padding:0 44px;border-color:#ffffff1c;border-radius:999px;background:#ffffff13;color:#f6f7f8eb;font-size:14px}.login-panel input::placeholder{color:#f6f7f86b}.login-panel input:focus-visible{border-color:#ffffff3d;outline:none;box-shadow:0 0 0 2px #ffffff0f}.login-panel input[aria-invalid=true]{border-color:#ff9a8b94}.login-field-icon{position:absolute;left:16px;z-index:1;color:#f6f7f84d;pointer-events:none}.password-row{gap:8px}.login-panel .password-row{gap:0}.login-visibility-button,.login-code-button{position:absolute;right:4px;display:inline-flex;align-items:center;justify-content:center;height:32px;border:0;border-radius:999px;background:transparent;color:#f6f7f87a}.login-visibility-button{width:36px;padding:0}.login-code-row input{padding-right:104px}.login-code-button{min-width:104px;padding:0 12px;background:#ffffff1a;font-size:13px}.login-visibility-button:hover:not(:disabled),.login-code-button:hover:not(:disabled){color:#f6f7f8db;background:#ffffff24}.login-panel .field-error{min-height:12px;font-size:11px;line-height:12px}.login-panel .field-error:empty{min-height:0}.platform-primary-action{min-height:42px;border:0;border-radius:8px;background:var(--accent);color:var(--accent-text);font-weight:800;transition:opacity .12s,transform .12s}.platform-primary-action:hover:not(:disabled){opacity:.92}.platform-primary-action:active:not(:disabled){transform:scale(.98)}.platform-primary-action:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.platform-primary-action:disabled{opacity:.4;cursor:not-allowed}.login-panel .platform-primary-action{min-height:40px;margin-top:4px;border-radius:999px;font-size:16px;font-weight:750}.login-legal{margin:0;color:var(--text-tertiary);font-size:12px;line-height:1.9;text-align:center}.login-legal a{color:var(--accent);text-decoration:none}.login-beian{display:inline-block;margin-top:8px;color:#f6f7f875}.home-creation-panel{display:grid;gap:18px;width:min(760px,calc(100vw - 40px));margin:56px auto 36px;text-align:center}.home-drama-import{display:inline-flex;align-items:center;gap:8px;min-height:40px;margin:16px 0 10px;padding:0 14px;border:1px solid var(--stroke-bold);border-radius:6px;color:var(--text-primary);background:var(--bg-elevated)}.home-drama-import:hover,.home-drama-import:focus-visible{border-color:var(--accent);color:var(--accent)}.drama-import-dialog{width:min(640px,calc(100vw - 32px))}.drama-import-dialog .platform-modal-head p{margin:4px 0 0;color:var(--text-secondary)}.drama-import-modes{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;border-radius:6px;background:var(--bg-base)}.drama-import-modes button{min-height:36px;border-radius:4px;color:var(--text-secondary)}.drama-import-modes button.is-active{color:var(--text-primary);background:var(--bg-elevated)}.drama-import-dialog .form-field{display:grid;gap:6px;margin-top:16px}.drama-import-dialog input,.drama-import-dialog textarea{width:100%;border:1px solid var(--stroke-regular);border-radius:6px;color:var(--text-primary);background:var(--bg-base)}.drama-import-dialog input{min-height:40px;padding:0 10px}.drama-import-dialog textarea{resize:vertical;min-height:200px;padding:10px}.drama-file-drop,.drama-import-blank{display:grid;place-items:center;gap:8px;min-height:220px;margin-top:16px;border:1px dashed var(--stroke-bold);border-radius:8px;color:var(--text-secondary);background:var(--bg-base);text-align:center}.drama-file-drop input{position:absolute;width:1px;height:1px;opacity:0}.drama-file-drop strong{color:var(--text-primary)}.drama-import-error{min-height:20px;margin:10px 0 0;color:var(--color-danger)}.drama-project-shell{--drama-topbar-height: 58px;min-height:100vh;color:var(--text-primary);background:var(--bg-base)}.drama-project-topbar{position:sticky;z-index:var(--z-rail);top:0;display:grid;grid-template-columns:40px minmax(160px,1fr) auto minmax(120px,1fr);align-items:center;gap:12px;min-height:var(--drama-topbar-height);padding:8px 16px;border-bottom:1px solid var(--stroke-subtle);background:var(--bg-panel)}.drama-project-title{display:grid;min-width:0}.drama-project-title strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drama-project-title span{color:var(--text-tertiary);font-size:11px}.drama-save-status{display:inline-flex;width:max-content;align-items:center;gap:4px;padding:0;color:var(--text-tertiary);font-size:11px}.drama-save-status.is-failed,.drama-save-status.is-conflict{color:var(--color-danger)}.drama-project-topbar nav{display:flex;align-items:center;gap:4px}.drama-project-topbar nav a{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 10px;border-radius:6px;color:var(--text-secondary)}.drama-project-topbar nav a.is-active{color:var(--accent);background:var(--bg-elevated)}.drama-open-canvas{justify-self:end;color:var(--text-secondary)}.drama-project-stage{min-height:calc(100vh - var(--drama-topbar-height))}.drama-stage-placeholder{display:grid;min-height:calc(100vh - var(--drama-topbar-height));place-items:center;padding:32px}.drama-stage-placeholder>div{width:min(720px,100%)}.drama-stage-placeholder span{color:var(--accent);font-size:12px}.drama-stage-placeholder h1{margin:8px 0;font-size:32px;letter-spacing:0}.drama-stage-placeholder p{color:var(--text-secondary)}.drama-story-stage,.drama-style-stage{min-height:calc(100vh - var(--drama-topbar-height));padding:18px}.drama-stage-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 auto 16px;max-width:1500px}.drama-stage-toolbar span{color:var(--accent);font-size:12px}.drama-stage-toolbar h1{margin:4px 0 0;font-size:22px;letter-spacing:0}.drama-stage-actions{display:flex;gap:8px}.drama-stage-actions button,.drama-source-entry button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:0 12px;border:1px solid var(--stroke-regular);border-radius:6px;color:var(--text-primary);background:var(--bg-elevated)}.drama-stage-actions button.primary,.drama-source-entry button.primary{border-color:var(--accent);background:var(--accent);color:#fff}.drama-stage-actions button:disabled{cursor:not-allowed;opacity:.45}.drama-source-entry{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:12px;max-width:1500px;margin:0 auto 16px;padding:16px;border:1px solid var(--stroke-regular);border-radius:8px;background:var(--bg-panel)}.drama-source-entry textarea{min-height:160px;resize:vertical;border:1px solid var(--stroke-regular);border-radius:6px;padding:10px;color:var(--text-primary);background:var(--bg-base)}.drama-inline-status{max-width:1500px;margin:0 auto 12px;padding:9px 12px;border-left:3px solid var(--accent);background:var(--bg-panel);color:var(--text-secondary)}.drama-inline-status.is-error{border-color:var(--color-danger);color:var(--color-danger)}.drama-review-layout,.drama-style-layout{display:grid;grid-template-columns:150px minmax(0,1fr) 260px;min-height:calc(100vh - 150px);max-width:1500px;margin:0 auto;border:1px solid var(--stroke-regular);border-radius:8px;overflow:hidden;background:var(--bg-panel)}.drama-review-layout>nav,.drama-style-versions{padding:10px;border-right:1px solid var(--stroke-subtle);background:var(--bg-base)}.drama-review-layout>nav button,.drama-style-versions>button{display:flex;width:100%;min-height:38px;align-items:center;justify-content:space-between;padding:0 9px;border-radius:5px;color:var(--text-secondary);text-align:left}.drama-review-layout>nav button.is-active,.drama-style-versions>button.is-active{color:var(--text-primary);background:var(--bg-elevated)}.drama-review-layout>nav button strong{color:var(--text-tertiary);font-size:11px}.drama-character-review{display:grid;grid-template-columns:190px minmax(0,1fr);min-width:0}.drama-character-review>aside{padding:10px;border-right:1px solid var(--stroke-subtle)}.drama-character-review>aside button{display:grid;width:100%;gap:3px;padding:9px;border-radius:5px;color:var(--text-secondary);text-align:left}.drama-character-review>aside button.is-active{color:var(--text-primary);background:var(--bg-elevated)}.drama-character-review>aside span{font-size:11px;color:var(--text-tertiary)}.drama-character-editor{min-width:0;padding:18px;overflow:auto}.drama-character-editor>header{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:16px}.drama-character-editor h2{margin:3px 0 0;font-size:20px}.drama-character-editor header p,.drama-look-list p{margin:0;color:var(--text-tertiary);font-size:12px}.drama-age-stage-list{display:grid;gap:12px}.drama-age-stage{padding:14px;border:1px solid var(--stroke-subtle);border-radius:7px;background:var(--bg-base)}.drama-section-heading,.drama-look-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.drama-section-heading span{color:var(--accent)}.drama-age-stage label,.drama-style-form label{display:grid;gap:6px;margin-bottom:10px;color:var(--text-secondary);font-size:12px}.drama-age-stage input,.drama-age-stage textarea,.drama-style-form input,.drama-style-form textarea,.drama-look-row input{width:100%;border:1px solid var(--stroke-regular);border-radius:5px;padding:8px;color:var(--text-primary);background:var(--bg-panel)}.drama-age-stage textarea,.drama-style-form textarea{min-height:76px;resize:vertical}.drama-look-list{display:grid;gap:6px}.drama-look-row{display:grid;grid-template-columns:minmax(0,1fr) 32px;gap:6px}.drama-review-entity-list{display:grid;align-content:start;gap:8px;padding:16px;overflow:auto}.drama-review-entity-list article{padding:12px;border:1px solid var(--stroke-subtle);border-radius:6px;background:var(--bg-base);display:flex;align-items:center;justify-content:space-between;gap:16px}.drama-review-entity-list p{margin:5px 0 0;color:var(--text-secondary)}.drama-review-episode-link{flex:0 0 auto;color:var(--accent-primary);font-size:13px;font-weight:600;text-decoration:none}.drama-review-episode-link:hover{text-decoration:underline}.drama-empty-state{display:grid;min-height:180px;place-items:center;padding:24px;color:var(--text-tertiary);text-align:center}.drama-review-issues,.drama-style-summary{padding:16px;border-left:1px solid var(--stroke-subtle);background:var(--bg-base)}.drama-review-issues>p,.drama-style-summary>p{color:var(--text-secondary);font-size:12px;line-height:1.55}.drama-review-issues>div{margin-top:10px;padding:10px;border-left:3px solid var(--color-warning);background:var(--bg-panel)}.drama-review-issues>div.is-blocking{border-color:var(--color-danger)}.drama-review-issues div p{margin:5px 0 0;color:var(--text-secondary);font-size:12px}.drama-review-ok{display:flex;align-items:center;gap:7px;color:var(--color-success)}.drama-style-versions header{display:flex;justify-content:space-between;margin:4px 7px 12px}.drama-style-versions>button{display:grid;justify-content:stretch;gap:3px;margin-bottom:4px}.drama-style-versions>button span{color:var(--text-tertiary);font-size:11px}.drama-style-form{padding:18px;overflow:auto}.drama-style-name{max-width:420px}.drama-style-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 14px}.drama-style-summary dl{display:grid;gap:8px;margin-top:18px}.drama-style-summary dl div{padding:8px 0;border-bottom:1px solid var(--stroke-subtle)}.drama-style-summary dt{color:var(--text-tertiary);font-size:11px}.drama-style-summary dd{margin:3px 0 0}.drama-episode-workspace{position:relative;display:flex;min-width:0;flex-direction:column;height:calc(100vh - var(--drama-topbar-height));min-height:520px;overflow:hidden}.drama-canvas-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 14px;border-bottom:1px solid var(--stroke-subtle);background:var(--bg-panel)}.drama-canvas-error{margin:8px 12px 0;padding:9px 12px;border:1px solid color-mix(in srgb,#ef4444 58%,transparent);border-radius:6px;background:color-mix(in srgb,#ef4444 12%,var(--surface-2));color:#fecaca;font-size:13px}.drama-canvas-notice{margin:8px 12px 0;padding:9px 12px;border:1px solid rgba(36,87,214,.24);border-radius:6px;background:#edf2fff5;color:#2457d6;font-size:12px}.drama-canvas-snapshot-action{display:inline-flex;min-height:32px;align-items:center;gap:6px;padding:0 10px;border:1px solid var(--stroke-regular);border-radius:6px;background:var(--bg-panel);color:var(--text-secondary);font-size:12px}.drama-canvas-snapshot-action:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.drama-canvas-toolbar>div{display:flex;align-items:center;gap:9px}.drama-canvas-toolbar span{color:var(--text-tertiary);font-size:12px}.drama-episode-canvas{position:relative;min-width:0;min-height:0;overflow:hidden;cursor:grab;background-color:var(--bg-base);background-image:radial-gradient(circle,var(--stroke-subtle) 1px,transparent 1px);background-size:20px 20px;touch-action:none}.drama-episode-canvas:active{cursor:grabbing}.drama-episode-canvas-world{position:absolute;top:0;left:0;transform-origin:0 0}.drama-scene-lane{position:absolute;border:1px solid var(--stroke-regular);border-radius:7px;background:color-mix(in srgb,var(--bg-panel) 84%,transparent)}.drama-scene-lane header{display:flex;align-items:center;justify-content:space-between;height:42px;padding:0 14px;border-bottom:1px solid var(--stroke-subtle)}.drama-scene-lane header span{color:var(--text-tertiary);font-size:11px}.drama-production-node{position:absolute;z-index:2;display:grid;grid-template-rows:auto 1fr auto auto;gap:6px;padding:11px;border:1px solid var(--stroke-regular);border-radius:7px;overflow:hidden;color:var(--text-primary);background:var(--bg-elevated);box-shadow:0 5px 18px #00000024;text-align:left;cursor:pointer}.drama-production-node.is-selected{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 24%,transparent)}.drama-production-node.is-failed,.drama-production-node.is-stale{border-color:var(--color-danger)}.drama-node-stage{color:var(--accent);font-size:11px}.drama-production-node strong{display:-webkit-box;overflow:hidden;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2}.drama-node-candidates{color:var(--text-tertiary);font-size:11px}.drama-node-status{display:flex;align-items:center;gap:5px;color:var(--text-secondary);font-size:11px}.drama-production-edges{position:absolute;z-index:1;inset:0;overflow:visible;pointer-events:none}.drama-production-edges line{stroke:var(--stroke-bold);stroke-width:2}.drama-canvas-empty{position:absolute;top:120px;left:120px;width:360px;padding:18px;border:1px dashed var(--stroke-bold);border-radius:7px;color:var(--text-tertiary);background:var(--bg-panel);text-align:center}.drama-shot-inspector{position:absolute;z-index:6;top:0;right:0;bottom:0;width:340px;overflow:auto;border-left:1px solid var(--stroke-regular);background:var(--bg-panel);box-shadow:-12px 0 28px #0003}.drama-shot-inspector>header{position:sticky;z-index:2;top:0;display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:58px;padding:10px 12px;border-bottom:1px solid var(--stroke-subtle);background:var(--bg-panel)}.drama-shot-inspector>header>div{display:grid;min-width:0}.drama-shot-inspector>header span{color:var(--accent);font-size:11px}.drama-shot-inspector>header strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drama-shot-inspector>section{padding:12px;border-bottom:1px solid var(--stroke-subtle)}.drama-shot-inspector h2{margin:0 0 8px;color:var(--text-secondary);font-size:12px;letter-spacing:0}.drama-shot-inspector p{margin:0;color:var(--text-secondary);font-size:12px}.drama-shot-inspector select,.drama-shot-inspector textarea,.drama-binding-editor input{width:100%;border:1px solid var(--stroke-regular);border-radius:5px;padding:8px;color:var(--text-primary);background:var(--bg-base)}.drama-shot-inspector textarea{min-height:88px;resize:vertical}.drama-binding-editor{display:grid;gap:9px}.drama-binding-editor label{display:grid;gap:5px;color:var(--text-tertiary);font-size:11px}.drama-inspector-metrics{display:grid;grid-template-columns:1fr 1fr;gap:10px}.drama-stale-reason{margin:12px;padding:9px;border-left:3px solid var(--color-warning);color:var(--text-secondary);background:var(--bg-base);font-size:12px}.drama-candidate-strip{display:grid;gap:8px}.drama-candidate-strip article{display:grid;grid-template-columns:54px minmax(0,1fr);gap:8px;padding:7px;border:1px solid var(--stroke-subtle);border-radius:6px;background:var(--bg-base)}.drama-candidate-strip article.is-adopted{border-color:var(--accent)}.drama-candidate-preview{display:grid;grid-row:1 / span 3;width:54px;height:54px;place-items:center;overflow:hidden;border-radius:4px;color:var(--text-tertiary);background:var(--bg-elevated);font-size:10px}.drama-candidate-preview img{width:100%;height:100%;object-fit:cover}.drama-candidate-strip article>div:nth-child(2){display:grid;min-width:0}.drama-candidate-strip article span{color:var(--text-tertiary);font-size:10px}.drama-candidate-strip article button,.drama-shot-inspector footer button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:30px;padding:0 8px;border:1px solid var(--stroke-regular);border-radius:5px;color:var(--text-secondary);background:var(--bg-elevated);font-size:11px}.drama-empty-candidates{padding:18px 0;color:var(--text-tertiary);text-align:center;font-size:12px}.drama-shot-inspector>footer{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:12px}.drama-single-node-hint{grid-column:1 / -1;color:var(--text-tertiary);font-size:11px}.drama-shot-inspector footer button.primary{border-color:var(--accent);color:#fff;background:var(--accent)}.drama-generation-stage{min-height:calc(100vh - var(--drama-topbar-height));padding:18px}.drama-production-feedback{max-width:1500px;margin:0 auto 12px;padding:10px 12px;border:1px solid var(--stroke-regular);border-left-width:3px;border-radius:5px;color:var(--text-secondary);background:var(--bg-panel);font-size:12px}.drama-production-feedback.is-success{border-left-color:var(--color-success)}.drama-production-feedback.is-warning{border-left-color:var(--color-warning)}.drama-production-feedback.is-error{border-left-color:var(--color-danger);color:var(--color-danger)}.drama-generation-filters{display:flex;gap:5px;max-width:1500px;margin:0 auto 12px;overflow-x:auto}.drama-generation-filters button{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:0 10px;border-radius:5px;color:var(--text-secondary);white-space:nowrap}.drama-generation-filters button.is-active{color:var(--text-primary);background:var(--bg-elevated)}.drama-generation-filters button span{color:var(--text-tertiary);font-size:10px}.drama-generation-table-wrap{max-width:1500px;margin:0 auto;overflow:auto;border:1px solid var(--stroke-regular);border-radius:7px}.drama-generation-table{width:100%;min-width:980px;border-collapse:collapse;background:var(--bg-panel)}.drama-generation-table th,.drama-generation-table td{padding:10px;border-bottom:1px solid var(--stroke-subtle);color:var(--text-secondary);font-size:12px;text-align:left;vertical-align:middle}.drama-generation-table th{position:sticky;z-index:1;top:0;background:var(--bg-base)}.drama-generation-table td strong{display:block;color:var(--text-primary)}.drama-generation-table td>span{display:block;margin-top:3px;color:var(--color-danger);font-size:11px}.drama-generation-status{display:inline-flex!important;margin:0!important;padding:3px 7px;border-radius:4px;color:var(--text-secondary)!important;background:var(--bg-elevated)}.drama-row-actions{display:flex;gap:5px}.drama-row-actions button{min-height:28px;padding:0 7px;border:1px solid var(--stroke-regular);border-radius:4px;color:var(--text-secondary);white-space:nowrap}.drama-table-empty{height:160px;color:var(--text-tertiary)!important;text-align:center!important}.drama-batch-backdrop{position:fixed;z-index:var(--z-modal);inset:0;display:grid;place-items:center;padding:16px;background:#00000094}.drama-batch-dialog{width:min(560px,100%);max-height:calc(100vh - 32px);overflow:auto;border:1px solid var(--stroke-bold);border-radius:8px;background:var(--bg-panel)}.drama-batch-dialog>header,.drama-batch-dialog>footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px;border-bottom:1px solid var(--stroke-subtle)}.drama-batch-dialog h2{margin:4px 0 0;font-size:18px;letter-spacing:0}.drama-batch-dialog header span{color:var(--accent);font-size:11px}.drama-batch-dialog dl{margin:0;padding:8px 14px}.drama-batch-dialog dl div{display:grid;grid-template-columns:130px minmax(0,1fr);gap:10px;padding:9px 0;border-bottom:1px solid var(--stroke-subtle)}.drama-batch-dialog dt{color:var(--text-tertiary)}.drama-batch-dialog dd{margin:0}.drama-batch-dialog>footer{justify-content:flex-end;border-top:1px solid var(--stroke-subtle);border-bottom:0}.drama-batch-dialog footer button{min-height:36px;padding:0 14px;border:1px solid var(--stroke-regular);border-radius:5px}.drama-batch-dialog footer button.primary{border-color:var(--accent);color:#fff;background:var(--accent)}.drama-batch-dialog footer button:disabled{opacity:.45}.drama-quote-expired{margin:12px 14px;padding:9px;border-left:3px solid var(--color-warning);color:var(--text-secondary);background:var(--bg-base)}.drama-conflict-dialog{width:min(760px,100%);max-height:calc(100vh - 32px);overflow:auto;border:1px solid var(--stroke-bold);border-radius:8px;background:var(--bg-panel)}.drama-conflict-dialog>header,.drama-conflict-dialog>footer{display:flex;align-items:center;justify-content:space-between;padding:14px;border-bottom:1px solid var(--stroke-subtle)}.drama-conflict-dialog h2{margin:4px 0 0;font-size:18px}.drama-conflict-dialog header span{color:var(--color-danger);font-size:11px}.drama-conflict-compare{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:14px}.drama-conflict-compare article{min-width:0;padding:10px;border:1px solid var(--stroke-subtle);border-radius:6px;background:var(--bg-base)}.drama-conflict-compare pre{max-height:260px;overflow:auto;white-space:pre-wrap;color:var(--text-secondary);font-size:11px}.drama-conflict-dialog>footer{justify-content:flex-end;gap:8px;border-top:1px solid var(--stroke-subtle);border-bottom:0}.drama-conflict-dialog footer button{min-height:36px;padding:0 12px;border:1px solid var(--stroke-regular);border-radius:5px}.drama-conflict-dialog footer button.primary{border-color:var(--accent);color:#fff;background:var(--accent)}.drama-mobile-canvas-summary{display:none}.drama-director-panel{position:absolute;z-index:7;top:58px;left:14px;width:min(340px,calc(100vw - 28px));max-height:calc(100% - 74px);overflow:auto;border:1px solid var(--stroke-bold);border-radius:7px;background:var(--bg-panel);box-shadow:0 14px 34px #00000047}.drama-director-panel>header{display:flex;align-items:center;justify-content:space-between;padding:11px;border-bottom:1px solid var(--stroke-subtle)}.drama-director-panel>header>div{display:grid}.drama-director-panel>header span,.drama-director-panel article>span{color:var(--accent);font-size:10px}.drama-director-panel>p{margin:0;padding:10px 11px;color:var(--text-secondary);font-size:11px}.drama-director-findings,.drama-director-actions{display:grid;gap:7px;padding:0 11px 11px}.drama-director-actions button{display:inline-flex;width:max-content;align-items:center;gap:5px;min-height:30px;padding:0 9px;border:1px solid var(--stroke-regular);border-radius:4px;color:var(--text-primary)}.drama-director-actions button:disabled{opacity:.5}.drama-director-actions span{color:var(--text-tertiary);font-size:11px}.drama-director-panel .drama-director-error{margin:0 11px 11px;padding:8px 9px;border-left:3px solid var(--color-danger);color:var(--color-danger);background:var(--bg-base)}.drama-director-panel article{display:grid;gap:5px;padding:9px;border:1px solid var(--stroke-subtle);border-radius:5px;background:var(--bg-base)}.drama-director-panel article p{margin:0;color:var(--text-secondary);font-size:11px}.drama-director-panel article button{display:inline-flex;width:max-content;align-items:center;gap:5px;min-height:28px;color:var(--accent)}.drama-director-empty{padding:24px 8px;color:var(--text-tertiary);text-align:center;font-size:12px}.drama-delivery-stage{min-height:calc(100vh - var(--drama-topbar-height));padding:18px}.drama-episode-select{display:flex;align-items:center;gap:8px;color:var(--text-secondary);font-size:12px}.drama-episode-select select{min-width:180px;min-height:36px;border:1px solid var(--stroke-regular);border-radius:5px;padding:0 8px;color:var(--text-primary);background:var(--bg-panel)}.drama-delivery-layout{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:16px;max-width:1400px;margin:0 auto}.drama-export-options{display:grid;align-content:start;gap:10px}.drama-export-options article{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:10px;padding:14px;border:1px solid var(--stroke-regular);border-radius:7px;background:var(--bg-panel)}.drama-export-options article p{margin:4px 0 0;color:var(--text-secondary);font-size:12px}.drama-export-options button{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 11px;border:1px solid var(--stroke-regular);border-radius:5px}.drama-export-options button:disabled{opacity:.4}.drama-delivery-warning{padding:10px;border-left:3px solid var(--color-warning);color:var(--text-secondary);background:var(--bg-panel)}.drama-editing-suggestions{border:1px solid var(--stroke-regular);border-radius:7px;background:var(--bg-panel)}.drama-editing-suggestions>header,.drama-editing-suggestions>section{padding:12px;border-bottom:1px solid var(--stroke-subtle)}.drama-editing-suggestions>header{display:flex;justify-content:space-between}.drama-editing-suggestions header span,.drama-editing-suggestions p{color:var(--text-secondary);font-size:12px}.drama-editing-suggestions h2{margin:0 0 7px;font-size:13px}.drama-editing-suggestions p{margin:4px 0}@media(max-width:860px){.drama-delivery-layout{grid-template-columns:1fr}}@media(max-width:1024px){.drama-shot-inspector{width:min(340px,46vw)}.drama-review-layout,.drama-style-layout{grid-template-columns:132px minmax(0,1fr) 220px}}@media(max-width:860px){.drama-project-topbar{grid-template-columns:40px 1fr auto}.drama-project-topbar nav{grid-column:1 / -1;overflow-x:auto;order:4}.drama-open-canvas{display:none}.drama-stage-toolbar{align-items:flex-start;flex-direction:column}.drama-review-layout,.drama-style-layout{grid-template-columns:1fr}.drama-review-layout>nav{display:flex;overflow-x:auto;border-right:0;border-bottom:1px solid var(--stroke-subtle)}.drama-review-layout>nav button{min-width:92px}.drama-character-review{grid-template-columns:140px minmax(0,1fr)}.drama-review-issues,.drama-style-summary{border-top:1px solid var(--stroke-subtle);border-left:0}.drama-style-versions{display:flex;gap:6px;overflow-x:auto;border-right:0;border-bottom:1px solid var(--stroke-subtle)}.drama-style-versions header{display:none}}@media(max-width:620px){.drama-story-stage,.drama-style-stage{padding:12px}.drama-stage-actions{width:100%}.drama-stage-actions button{flex:1}.drama-character-review{grid-template-columns:1fr}.drama-character-review>aside{display:flex;overflow-x:auto;border-right:0;border-bottom:1px solid var(--stroke-subtle)}.drama-character-review>aside button{min-width:130px}.drama-style-field-grid,.drama-source-entry{grid-template-columns:1fr}.drama-episode-canvas{display:none}.drama-mobile-canvas-summary{display:grid;align-content:start;gap:8px;padding:14px;overflow:auto;background:var(--bg-base)}.drama-mobile-canvas-summary>span{color:var(--text-secondary);font-size:12px}.drama-mobile-canvas-summary>div{display:grid;gap:6px}.drama-mobile-canvas-summary button{min-height:40px;padding:0 10px;border:1px solid var(--stroke-subtle);border-radius:5px;color:var(--text-secondary);background:var(--bg-panel);text-align:left}.drama-shot-inspector{width:100%}.drama-conflict-compare{grid-template-columns:1fr}}.home-creation-panel h1{margin:0;font-size:clamp(28px,3.2vw,36px);font-weight:720;line-height:1.15;letter-spacing:0;color:var(--text-primary)}.home-creation-panel .home-creation-sub{margin:-6px 0 0;color:var(--text-secondary);font-size:14px;line-height:1.5}.home-prompt-box{position:relative;display:flex;align-items:flex-end;gap:12px;min-height:128px;padding:18px 18px 14px;border:1px solid var(--stroke-regular);border-radius:8px;background:linear-gradient(180deg,rgba(255,255,255,.03),transparent 40%),var(--bg-panel);box-shadow:0 18px 48px #00000047}.home-prompt-box:focus-within{border-color:#6bd7ff6b;box-shadow:0 0 0 1px #6bd7ff2e,0 18px 48px #00000047}.home-prompt-input{flex:1;min-height:96px;max-height:240px;overflow-y:auto;padding:0;outline:none;font:inherit;font-size:15px;line-height:1.55;color:inherit;text-align:left}.home-prompt-input:empty:before{content:attr(data-placeholder);color:var(--text-tertiary);pointer-events:none}.home-send-button{position:relative;flex-shrink:0;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;border-radius:8px;background:var(--accent);color:var(--accent-text);cursor:pointer;transition:opacity .12s ease,background .12s ease}.home-send-button:hover:not(:disabled){opacity:.92}.home-send-button:active:not(:disabled){opacity:.85}.home-send-button:disabled{opacity:.4;cursor:not-allowed}.home-send-label{position:absolute;width:1px;height:1px;margin:0;padding:0;overflow:hidden;white-space:nowrap;opacity:0;pointer-events:none}.prompt-counter{position:absolute;bottom:8px;right:64px;font-size:12px;color:var(--text-tertiary)}.prompt-counter.is-over-limit{color:var(--color-danger)}.slash-skill-picker{position:absolute;bottom:100%;left:0;right:0;max-height:240px;overflow-y:auto;padding:6px;margin-bottom:4px;border:1px solid var(--stroke-regular);border-radius:10px;background:var(--bg-panel);box-shadow:0 -4px 16px #0003;z-index:100}.slash-skill-item{display:block;width:100%;padding:8px 12px;border:none;border-radius:6px;background:transparent;color:var(--text-primary);font-size:14px;text-align:left;cursor:pointer;transition:background .15s}.slash-skill-item:hover,.slash-skill-item.is-selected{background:var(--bg-light)}.platform-upload-row,.skill-capsule-row{justify-content:center;flex-wrap:wrap;gap:10px}.platform-upload-button{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:108px;min-height:40px;padding:0 14px;border:1px solid var(--stroke-regular);border-radius:8px;background:#ffffff08;color:var(--text-primary);cursor:pointer;transition:background .12s ease,border-color .12s ease}.platform-upload-button:hover{background:#6bd7ff14;border-color:#6bd7ff52}.platform-upload-button .upload-chip-label{font-size:13px;line-height:1;color:var(--text-secondary)}.platform-upload-button:hover .upload-chip-label{color:var(--text-primary)}.platform-upload-button input{position:absolute;inset:0;opacity:0;pointer-events:none}.skill-capsule-row a{min-height:32px;padding:6px 12px;border:1px solid var(--stroke-subtle);border-radius:999px;color:var(--text-secondary);background:transparent;font-size:13px;transition:border-color .12s ease,color .12s ease,background .12s ease}.skill-capsule-row a:hover,.skill-capsule-row a:focus-visible{border-color:#6bd7ff66;color:var(--accent);background:#6bd7ff14;outline:none}.platform-section{margin-top:24px}.platform-section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}.platform-section-heading h2,.skills-toolbar h1{margin:0}.project-card-grid,.skill-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.project-card,.skill-card{display:grid;min-width:0;gap:8px;min-height:142px;padding:14px;border:1px solid var(--stroke-regular);border-radius:8px;background:linear-gradient(180deg,rgba(255,255,255,.025),transparent 36%),var(--bg-panel);transition:border-color .12s ease,box-shadow .12s ease}.project-card:hover,.project-card:focus-visible,.skill-card:hover,.skill-card:focus-within{border-color:#6bd7ff47;box-shadow:0 10px 28px #00000047;outline:none}.new-project-card{place-content:center;justify-items:center;text-align:center;border-style:dashed;border-color:#6bd7ff47;background:#6bd7ff0a;color:var(--text-secondary)}.new-project-card:hover,.new-project-card:focus-visible{border-color:#6bd7ff80;background:#6bd7ff14;color:var(--text-primary)}.skill-cover{display:inline-grid;width:40px;height:40px;place-items:center;border:1px solid var(--stroke-subtle);border-radius:8px;background:linear-gradient(135deg,#6bd7ff3d,#8bd66b24);color:var(--accent);font-size:13px;font-weight:700}.skill-cover[data-tone="0"]{background:linear-gradient(135deg,#6bd7ff47,#4fa3ff1f);color:#9cc9ff}.skill-cover[data-tone="1"]{background:linear-gradient(135deg,#34d39947,#6bd7ff1a);color:#9ee6c6}.skill-cover[data-tone="2"]{background:linear-gradient(135deg,#a78bfa47,#6bd7ff1a);color:#cfb8ff}.skill-cover[data-tone="3"]{background:linear-gradient(135deg,#fbbf2442,#6bd7ff14);color:#f1d58a}.skill-cover[data-tone="4"]{background:linear-gradient(135deg,#22d3ee47,#8bd66b1a);color:#86e7f0}.skill-cover[data-tone="5"]{background:linear-gradient(135deg,#ff6b7a38,#6bd7ff1a);color:#ffb0ba}.skill-card strong{font-size:14px;line-height:1.35}.skill-card span{color:var(--text-tertiary);font-size:12px}.skill-card p{margin:0;color:var(--text-secondary);font-size:13px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.skill-card small{color:var(--text-tertiary);font-size:11px}.project-card-cover{position:relative;height:88px;margin:-14px -14px 0;border-radius:8px 8px 0 0;overflow:hidden}.project-card-cover-gradient{position:absolute;inset:0;background:linear-gradient(135deg,#6bd7ff38,#8bd66b1a 48%,#a78bfa29),radial-gradient(circle at 20% 30%,rgba(255,255,255,.08),transparent 45%)}.project-card-cover[data-tone="0"] .project-card-cover-gradient{background:linear-gradient(135deg,#4fa3ff47,#6bd7ff1a)}.project-card-cover[data-tone="1"] .project-card-cover-gradient{background:linear-gradient(135deg,#34d39942,#6bd7ff1a)}.project-card-cover[data-tone="2"] .project-card-cover-gradient{background:linear-gradient(135deg,#a78bfa47,#22d3ee1a)}.project-card-cover[data-tone="3"] .project-card-cover-gradient{background:linear-gradient(135deg,#fbbf243d,#6bd7ff1a)}.project-card-agent-suggestion{display:flex;align-items:center;gap:6px;padding:8px 12px;border:1px solid var(--stroke-subtle);border-radius:8px;font-size:12px;color:var(--text-secondary);background:var(--bg-panel);cursor:pointer;transition:background .2s}.project-card-agent-suggestion:hover{background:var(--bg-light)}.project-card-agent-suggestion svg{color:var(--accent);flex-shrink:0}.skill-card p{margin:0;min-height:42px;overflow-wrap:anywhere}.skill-card button{justify-self:start;padding:0 12px}.platform-footer{justify-content:center;flex-wrap:wrap;gap:12px;padding:28px 0 36px;font-size:12px}.skills-toolbar{justify-content:space-between;gap:20px;margin-top:34px}.skills-filter-bar{justify-content:space-between;flex-wrap:wrap;gap:10px;margin-top:20px;padding:12px;border:1px solid var(--stroke-regular);border-radius:8px;background:var(--bg-panel)}.skill-category-row{flex-wrap:wrap;gap:7px}.skill-category-row button,.sort-button{padding:0 11px;color:var(--text-secondary)}.skill-category-row button.is-active{background:var(--accent);color:var(--accent-text)}.skills-search{display:flex;align-items:center;gap:8px;width:min(260px,100%);min-height:36px;padding:0 10px;border:1px solid var(--stroke-regular);border-radius:8px;background:var(--bg-light);color:var(--text-secondary)}.skills-search input{height:32px;border:0;background:transparent}.skill-gallery-grid{width:min(1180px,calc(100vw - 40px));margin:16px auto 40px}.field-error{display:block;min-height:16px;color:#ff9a8b;font-size:12px}.field-error.form-error{text-align:center}.login-beian{color:var(--text-tertiary)}.space-switcher{opacity:.82}.avatar-menu-wrap{position:relative}.avatar-entry.is-active{border-color:var(--stroke-bold)}.avatar-menu{position:absolute;top:calc(100% + 8px);right:0;z-index:var(--z-topbar);display:grid;gap:2px;min-width:200px;padding:8px;border:1px solid var(--stroke-regular);border-radius:14px;background:var(--bg-panel);box-shadow:0 18px 44px #0000006b}.avatar-menu-group{display:grid;gap:2px}.avatar-menu-divider{height:1px;margin:6px 2px;background:var(--stroke-subtle)}.avatar-menu-item{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:34px;padding:0 10px;border:0;border-radius:9px;background:transparent;color:var(--text-primary);text-align:left}.avatar-menu-item:hover:not(:disabled){background:var(--bg-light)}.avatar-menu-item:disabled{color:var(--text-tertiary);cursor:not-allowed}.avatar-menu-item small{color:var(--text-tertiary);font-size:11px}.avatar-menu-item.is-logout{color:#ff9a8b}.platform-modal-overlay{position:fixed;inset:0;z-index:var(--z-context-menu);display:grid;place-items:center;padding:24px;background:#0405079e}.platform-modal{display:grid;gap:16px;width:min(460px,calc(100vw - 48px));max-height:calc(100vh - 80px);overflow:auto;padding:20px;border:1px solid var(--stroke-regular);border-radius:16px;background:var(--bg-panel);box-shadow:0 28px 64px #00000075}.platform-modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.platform-modal-head strong{font-size:16px}.announcement-list{display:grid;gap:12px}.announcement-list article{display:grid;gap:4px;padding:12px;border:1px solid var(--stroke-subtle);border-radius:12px;background:var(--bg-light)}.announcement-list p{margin:0;color:var(--text-secondary);font-size:13px}.confirm-modal-body{margin:0;color:var(--text-secondary)}.confirm-modal-actions{display:flex;justify-content:flex-end;gap:10px}.confirm-modal-actions .platform-primary-action,.confirm-modal-actions .ghost-button{min-width:96px;padding:0 16px}.link-button{border:0;background:transparent;color:var(--text-secondary)}.section-empty-hint{margin:8px 0 0;color:var(--text-tertiary)}.platform-upload-button-wrap{display:grid;justify-items:center;gap:4px}.platform-upload-button .upload-hint{color:var(--text-tertiary);font-size:11px}.upload-feedback{min-height:0;max-width:120px;overflow:hidden;color:var(--text-tertiary);font-size:11px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.platform-upload-button-wrap.is-idle .upload-feedback{visibility:hidden}.platform-upload-button-wrap.is-done .upload-feedback{color:var(--color-success)}.prompt-counter{grid-column:1 / -1;color:var(--text-tertiary);font-size:12px;text-align:right}.prompt-counter.is-over-limit{color:#ff9a8b}.home-prompt-box.is-over-limit{border-color:#ff9a8b}.project-card-interactive{position:relative;padding:0}.project-card-link{display:grid;gap:8px;min-height:142px;padding:14px}.project-card-actions{position:absolute;top:10px;right:10px;opacity:0}.project-card-interactive:hover .project-card-actions,.project-card-interactive:focus-within .project-card-actions{opacity:1}.project-card-more{width:28px;height:28px}.project-card-menu{position:absolute;top:34px;right:0;z-index:var(--z-rail);display:grid;gap:2px;min-width:120px;padding:6px;border:1px solid var(--stroke-regular);border-radius:12px;background:var(--bg-panel);box-shadow:0 14px 36px #0006}.project-card-menu button{min-height:32px;padding:0 10px;border:0;border-radius:8px;background:transparent;color:var(--text-primary);text-align:left}.project-card-menu button:hover{background:var(--bg-light)}.project-card-menu button.is-danger{color:#ff9a8b}.project-card-renaming{display:grid;gap:10px;padding:14px}.project-card-renaming input{width:100%;height:36px;padding:0 10px;border:1px solid var(--stroke-regular);border-radius:8px;background:var(--bg-light);color:var(--text-primary)}.project-card-rename-actions{display:flex;justify-content:flex-end;gap:8px}.project-card-rename-actions .platform-primary-action,.project-card-rename-actions .ghost-button{min-height:32px;padding:0 12px}.new-project-card.is-loading{opacity:.72}.skills-header-left{display:flex;align-items:center;gap:12px}.skills-back{width:34px;height:34px;flex:0 0 auto}.sort-select{min-height:36px;padding:0 12px;border:1px solid var(--stroke-regular);border-radius:999px;background:var(--bg-glass);color:var(--text-secondary)}.skill-card-footer{display:flex;align-items:center;justify-content:space-between;gap:8px}.skill-card-likes{color:var(--text-tertiary)}.skill-card-interactive{cursor:pointer;text-align:left}.skill-card-interactive:focus-visible{border-color:var(--stroke-bold);outline:none}.skills-empty-state{display:grid;gap:6px;place-items:center;width:min(1180px,calc(100vw - 40px));margin:16px auto 40px;padding:48px 0;color:var(--text-secondary);text-align:center}.skills-empty-state p{margin:0;font-size:15px;color:var(--text-primary)}.skill-card-link{display:contents}.skill-detail-page .home-header{position:sticky;top:0;z-index:10}.skill-detail-header-title{font-size:15px;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:260px}.skill-detail-loading,.skill-detail-error{display:grid;gap:12px;place-items:center;padding:80px 0;color:var(--text-secondary)}.skill-detail-error a{color:var(--accent-primary, #5b7fff);text-decoration:underline}.skill-detail-layout{display:grid;grid-template-columns:1fr 300px;gap:24px;width:min(1180px,calc(100vw - 40px));margin:16px auto 40px;align-items:start}.skill-detail-main{display:grid;gap:20px;min-width:0}.skill-detail-hero{display:flex;gap:16px;align-items:center}.skill-detail-cover{width:64px;height:64px;border-radius:12px;background:var(--bg-elevated, #f0f0f0);display:grid;place-items:center;flex-shrink:0;color:var(--text-tertiary)}.skill-detail-meta{display:grid;gap:4px}.skill-detail-owner-status{display:inline-flex;align-items:center;gap:8px;width:fit-content;margin-top:4px;font-size:12px;color:var(--text-tertiary)}.skill-detail-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.skill-detail-title{margin:0;font-size:22px;font-weight:700;color:var(--text-primary)}.skill-detail-version{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border-radius:999px;background:var(--bg-elevated, #f0f0f0);color:var(--text-secondary);font-size:12px;font-weight:600}.skill-detail-author{margin:0;font-size:14px;color:var(--text-secondary)}.skill-detail-category{display:inline-block;font-size:12px;padding:2px 8px;border-radius:999px;background:var(--bg-elevated, #f0f0f0);color:var(--text-secondary);width:fit-content}.skill-detail-tabs{display:flex;gap:0;border-bottom:1px solid var(--stroke-regular, #e0e0e0)}.skill-detail-tabs button{padding:10px 20px;font-size:14px;font-weight:500;color:var(--text-secondary);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:color .15s,border-color .15s}.skill-detail-tabs button.is-active{color:var(--text-primary);border-bottom-color:var(--accent-primary, #5b7fff)}.skill-detail-tabs button:hover:not(.is-active){color:var(--text-primary)}.skill-detail-intro{display:grid;gap:16px}.skill-detail-intro h2,.skill-detail-intro h3{margin:0;font-size:15px;font-weight:600;color:var(--text-primary)}.skill-detail-description{margin:0;font-size:14px;line-height:1.7;color:var(--text-secondary);white-space:pre-wrap;word-break:break-word}.skill-detail-author-card{display:grid;gap:12px;padding:16px;border:1px solid var(--stroke-regular, #e0e0e0);border-radius:12px;background:var(--bg-card, #fafafa)}.skill-author-profile{display:flex;gap:12px;align-items:center}.skill-author-avatar{width:44px;height:44px;border-radius:50%;background:var(--bg-elevated, #e8e8e8);display:grid;place-items:center;font-size:18px;font-weight:600;color:var(--text-secondary);flex-shrink:0}.skill-author-info{display:grid;gap:4px}.skill-author-info strong{font-size:14px;color:var(--text-primary)}.skill-author-bio{margin:0;font-size:13px;line-height:1.6;color:var(--text-secondary)}.skill-author-stats{display:flex;gap:12px;font-size:12px;color:var(--text-tertiary)}.skill-author-stats span{display:flex;align-items:center;gap:3px}.skill-author-showcase{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.skill-author-showcase-card{display:grid;gap:8px}.skill-author-showcase-card strong{font-size:12px;color:var(--text-primary)}.skill-author-showcase-cover{min-height:92px;border-radius:10px;background:linear-gradient(135deg,#5b7fff24,#f5a62324);border:1px solid var(--stroke-regular, #e0e0e0);display:grid;place-items:center;color:var(--text-secondary);font-size:12px;text-align:center;padding:10px}.skill-detail-reviews{display:grid;gap:24px;padding:20px 0}.skill-detail-empty-tab{text-align:center;color:var(--text-tertiary);font-size:14px}.skill-review-form{display:grid;gap:10px;padding:16px;border:1px solid var(--stroke-regular, #e0e0e0);border-radius:12px;background:var(--bg-card, #fafafa)}.skill-review-form h3{margin:0;font-size:15px;font-weight:600;color:var(--text-primary)}.skill-review-stars-input{display:flex;align-items:center;gap:4px}.skill-review-star-btn{display:grid;place-items:center;padding:2px;background:none;border:none;cursor:pointer;transition:transform .1s}.skill-review-star-btn:hover{transform:scale(1.15)}.skill-review-rating-label{font-size:13px;color:var(--text-secondary);margin-left:6px}.skill-review-textarea{width:100%;padding:10px;border:1px solid var(--stroke-regular, #e0e0e0);border-radius:8px;font-size:14px;font-family:inherit;resize:vertical;min-height:60px;background:var(--bg-input, #fff);color:var(--text-primary)}.skill-review-textarea::placeholder{color:var(--text-tertiary)}.skill-review-submit{justify-self:end;padding:8px 20px;border:none;border-radius:8px;background:var(--accent-primary, #5b7fff);color:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:opacity .15s}.skill-review-submit:disabled{opacity:.5;cursor:not-allowed}.skill-review-submit:hover:not(:disabled){opacity:.85}.skill-review-list{display:grid;gap:12px}.skill-review-total{margin:0;font-size:12px;color:var(--text-tertiary)}.skill-review-item{display:grid;gap:6px;padding:14px;border:1px solid var(--stroke-regular, #e0e0e0);border-radius:10px;background:var(--bg-card, #fafafa)}.skill-review-header{display:flex;justify-content:space-between;align-items:center}.skill-review-stars{display:flex;gap:2px}.skill-review-time{font-size:12px;color:var(--text-tertiary)}.skill-review-comment{margin:0;font-size:14px;line-height:1.6;color:var(--text-secondary);white-space:pre-wrap;word-break:break-word}.skill-detail-sidebar{position:sticky;top:56px}.skill-detail-sidebar-card{display:grid;gap:14px;padding:20px;border:1px solid var(--stroke-regular, #e0e0e0);border-radius:12px;background:var(--bg-card, #fafafa)}.skill-sidebar-owner-status{display:grid;gap:4px;padding:12px 14px;border-radius:12px;background:var(--bg-elevated, #f7f7f8)}.skill-sidebar-owner-status span{font-size:12px;color:var(--text-tertiary)}.skill-sidebar-owner-status strong{font-size:13px;color:var(--text-primary)}.skill-sidebar-updated,.skill-sidebar-rating{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:var(--text-secondary)}.skill-sidebar-updated time{color:var(--text-primary);font-weight:500}.skill-rating-stars{display:flex;align-items:center;gap:4px;font-size:14px;font-weight:600;color:var(--text-primary)}.skill-rating-stars small{font-weight:400;color:var(--text-tertiary)}.skill-sidebar-stats{display:flex;gap:16px;font-size:13px;color:var(--text-secondary)}.skill-sidebar-actions{display:flex;gap:8px}.skill-action-share,.skill-action-like{flex:1;display:flex;align-items:center;justify-content:center;gap:4px;padding:8px;border:1px solid var(--stroke-regular, #e0e0e0);border-radius:8px;background:none;cursor:pointer;font-size:13px;color:var(--text-secondary);transition:background .15s,color .15s}.skill-action-share:hover,.skill-action-like:hover{background:var(--bg-elevated, #f0f0f0);color:var(--text-primary)}.skill-action-activate{width:100%;padding:10px;border:none;border-radius:8px;background:var(--accent-primary, #5b7fff);color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:opacity .15s}.skill-action-activate:disabled{opacity:.5;cursor:not-allowed}.skill-action-activate:hover:not(:disabled){opacity:.85}.skill-action-deactivate{width:100%;padding:10px;border:1px solid var(--stroke-regular, #e0e0e0);border-radius:8px;background:none;color:var(--text-secondary);font-size:14px;font-weight:600;cursor:pointer;transition:background .15s,color .15s}.skill-action-deactivate:disabled{opacity:.5;cursor:not-allowed}.skill-action-deactivate:hover:not(:disabled){background:var(--bg-elevated, #f0f0f0);color:var(--text-primary)}.skill-sidebar-owner-action{width:100%}.skill-sidebar-action-error{margin:0;font-size:12px;color:#e53935;text-align:center}.skill-sidebar-action-success{margin:0;font-size:12px;color:var(--accent-success, #1f8f55);text-align:center}.skill-sidebar-install-status{margin:0;font-size:12px;color:var(--text-tertiary);text-align:center}.creator-console{width:min(1180px,calc(100vw - 40px));margin:16px auto 40px;display:grid;gap:18px}.creator-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.creator-stat-card{display:grid;gap:4px;padding:16px;border:1px solid var(--stroke-regular);border-radius:12px;background:var(--bg-panel)}.creator-stat-card strong{font-size:24px;letter-spacing:0}.creator-stat-card span{color:var(--text-secondary);font-size:13px}.creator-console-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.creator-subtabs{flex:0 0 auto;width:auto}.creator-console-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.creator-create{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 14px}.creator-console-actions .ghost-button{display:inline-flex;align-items:center;gap:6px}.creator-status-filters{display:flex;flex-wrap:wrap;gap:8px}.status-chip{min-height:32px;padding:0 12px;border:1px solid var(--stroke-regular);border-radius:999px;background:var(--bg-glass);color:var(--text-secondary)}.status-chip.is-active{border-color:var(--stroke-bold);background:var(--accent);color:var(--accent-text)}.creator-empty-state{display:grid;gap:6px;place-items:center;padding:56px 0;color:var(--text-secondary);text-align:center}.creator-empty-art{width:96px;height:64px;border:1px dashed var(--stroke-bold);border-radius:12px;background:var(--bg-light)}.creator-empty-state p{margin:8px 0 0;color:var(--text-primary)}.creator-skill-list{display:grid;gap:8px}.creator-skill-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border:1px solid var(--stroke-regular);border-radius:12px;background:var(--bg-panel)}.creator-skill-main{display:grid;gap:2px;min-width:0}.creator-skill-main span{color:var(--text-secondary);font-size:13px}.creator-skill-meta{display:grid;justify-items:end;gap:4px;flex:0 0 auto}.creator-skill-side{display:grid;justify-items:end;gap:8px;flex:0 0 auto}.creator-skill-meta small{color:var(--text-tertiary);font-size:11px}.creator-skill-action{min-width:84px;justify-content:center}.status-badge{padding:2px 10px;border-radius:999px;border:1px solid var(--stroke-subtle);background:var(--bg-light);color:var(--text-secondary);font-size:12px}.status-badge.is-published,.status-badge.is-enabled{color:#8bd66b}.status-badge.is-unpublished,.status-badge.is-reviewing{color:#ffcf7a}.status-badge.is-disabled{color:var(--text-tertiary)}@media(max-width:1024px){.creator-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-card-grid,.skill-card-grid{grid-template-columns:1fr}.login-hero{display:none}.login-aside{flex:1 1 auto;border-left:none}.home-prompt-box{grid-template-columns:1fr}.skills-toolbar{align-items:flex-start;flex-direction:column}.skill-detail-layout{grid-template-columns:1fr}.skill-detail-sidebar{position:static}.skill-author-showcase{grid-template-columns:1fr}}.node-edit-modal-overlay{z-index:80}.node-edit-modal{width:min(600px,calc(100vw - 32px))}.node-edit-titlebar{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.node-edit-titlebar strong{font-size:16px;font-weight:700}.node-edit-titlebar-right{display:flex;align-items:center;gap:6px}.node-edit-content{display:grid}.node-edit-textarea{min-height:300px;padding:14px;border:1px solid var(--stroke-regular);border-radius:12px;background:var(--bg-elevated);color:var(--text-primary);font-size:14px;line-height:1.7;resize:vertical;outline:none}.node-edit-textarea:focus-visible{border-color:#6bd7ff66}.node-edit-preview{min-height:300px;padding:14px;border:1px solid var(--stroke-soft);border-radius:12px;background:var(--bg-elevated);color:var(--text-primary);font-size:14px;line-height:1.7;white-space:pre-wrap;word-break:break-word;overflow-y:auto}.node-edit-toggle-btn{width:34px;height:34px}.node-edit-actions{justify-content:flex-end;gap:8px;margin-top:14px}.drama-workbench{display:flex;flex-direction:column;height:100vh;background:var(--bg-base, #0b0c10);color:var(--text-primary, #e2e8f0);font-family:inherit;overflow:hidden}.drama-header{display:flex;justify-content:space-between;align-items:center;padding:12px 24px;background:var(--bg-surface, rgba(17, 18, 23, .85));border-bottom:1px solid var(--stroke-soft, rgba(255, 255, 255, .08));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:10}.drama-canvas-error{display:flex;align-items:center;gap:8px;margin:8px 24px 0;padding:8px 12px;border:1px solid rgba(239,68,68,.2);border-radius:6px;background:#ef44441a;color:#f87171;font-size:12px;line-height:1.4;flex:0 0 auto}.header-left{display:flex;align-items:center;gap:16px}.back-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);color:inherit;cursor:pointer;transition:all .2s ease}.back-button:hover{background:#ffffff1a;transform:translate(-2px)}.project-title-area{display:flex;flex-direction:column}.project-eyebrow{font-size:11px;color:var(--text-tertiary, #64748b);text-transform:uppercase;letter-spacing:.05em}.project-name{font-size:15px;font-weight:600;margin:0;color:#fff}.header-actions{display:flex;align-items:center;gap:12px}.credits-badge{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#eab3081a;border:1px solid rgba(234,179,8,.2);border-radius:20px;font-size:13px;font-weight:500;color:#eab308}.gold-icon{color:#eab308}.control-btn{display:flex;align-items:center;gap:8px;padding:6px 14px;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);border-radius:6px;color:var(--text-secondary, #94a3b8);font-size:13px;cursor:pointer;transition:all .2s ease}.control-btn:hover{background:#ffffff1a;color:#fff}.accent-btn{background:var(--brand-color, #00c2ff);border-color:var(--brand-color, #00c2ff);color:#000!important;font-weight:600}.accent-btn:hover{background:#00b0e6;opacity:.9}.export-btn{background:#2563eb;border-color:#3b82f6;color:#fff}.export-btn:hover{background:#1d4ed8}.drama-workspace-container{display:flex;flex:1;overflow:hidden}.drama-main-layout{display:flex;flex:1;height:100%}.drama-sidebar{width:320px;background:var(--bg-elevated, #16181d);border-right:1px solid var(--stroke-soft, rgba(255, 255, 255, .08));display:flex;flex-direction:column}.drama-assets-panel{width:340px;border-right:none;border-left:1px solid var(--stroke-soft, rgba(255, 255, 255, .08))}.drama-storyboard-panel{flex:1;background:#0f1115;display:flex;flex-direction:column}.panel-header{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;border-bottom:1px solid var(--stroke-soft, rgba(255, 255, 255, .08));background:#ffffff03}.panel-header h3{font-size:14px;font-weight:600;margin:0;color:#e2e8f0}.badge{padding:2px 8px;background:#ffffff14;border-radius:4px;font-size:11px;color:var(--text-secondary, #94a3b8)}.panel-body{flex:1;padding:20px;overflow-y:auto;display:flex;flex-direction:column}.flex-center{justify-content:center;align-items:center}.novel-upload-placeholder{display:flex;flex-direction:column;align-items:center;text-align:center;height:100%}.placeholder-icon{color:var(--text-tertiary, #475569);margin-bottom:12px}.placeholder-text{font-size:14px;font-weight:500;color:var(--text-secondary, #cbd5e1);margin-bottom:4px}.placeholder-sub{font-size:12px;color:var(--text-tertiary, #64748b);margin-bottom:16px;line-height:1.5}.novel-textarea{width:100%;flex:1;min-height:240px;background:#0000004d;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:12px;color:#fff;font-size:13px;line-height:1.6;resize:none;outline:none;margin-bottom:16px;transition:border-color .2s ease}.novel-textarea:focus{border-color:var(--brand-color, #00c2ff)}.action-btn{width:100%;padding:10px;background:var(--brand-color, #00c2ff);border:none;border-radius:6px;color:#000;font-weight:600;font-size:13px;cursor:pointer;transition:opacity .2s ease}.action-btn:hover{opacity:.9}.header-controls{display:flex;align-items:center;gap:8px}.style-label{font-size:12px;color:var(--text-tertiary, #64748b)}.style-select{background:#0000004d;border:1px solid rgba(255,255,255,.08);border-radius:4px;color:#fff;font-size:12px;padding:4px 8px;outline:none}.storyboard-empty{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:320px}.storyboard-empty h4{font-size:15px;font-weight:600;margin:12px 0 6px;color:#fff}.storyboard-empty p{font-size:12px;color:var(--text-tertiary, #64748b);line-height:1.6;margin:0}.asset-section{margin-bottom:24px}.section-title{font-size:12px;color:var(--text-tertiary, #64748b);margin:0 0 12px;text-transform:uppercase;letter-spacing:.03em}.asset-list{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.asset-card{aspect-ratio:1;background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:8px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:8px;font-size:12px;color:var(--text-secondary, #cbd5e1);cursor:pointer;transition:all .2s ease}.asset-card:hover{background:#ffffff0d;border-color:#ffffff1f}.add-card{border-style:dashed;color:var(--text-tertiary, #475569)}.add-card:hover{color:var(--brand-color, #00c2ff);border-color:var(--brand-color, #00c2ff)}.drama-timeline-dock{background:var(--bg-surface, #111217);border-top:1px solid var(--stroke-soft, rgba(255, 255, 255, .08));display:flex;flex-direction:column;height:200px}.timeline-header{display:flex;justify-content:space-between;align-items:center;padding:8px 20px;border-bottom:1px solid rgba(255,255,255,.04)}.tab-group{display:flex;gap:12px}.tab-item{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:500;color:var(--text-secondary, #64748b);cursor:pointer}.tab-item.active{color:var(--brand-color, #00c2ff)}.playhead-time{font-family:monospace;font-size:11px;color:var(--text-tertiary, #64748b)}.timeline-tracks{flex:1;display:flex;flex-direction:column;overflow-y:auto}.track-row{display:flex;border-bottom:1px solid rgba(255,255,255,.03);min-height:36px}.track-label{width:100px;min-width:100px;padding:8px 16px;background:#00000026;border-right:1px solid rgba(255,255,255,.04);font-size:11px;color:var(--text-secondary, #94a3b8);display:flex;align-items:center;gap:6px}.track-content{flex:1;display:flex;align-items:center;padding:0 16px;background:#0000000d}.track-placeholder-text{font-size:11px;color:var(--text-tertiary, #475569)}.node-card.tone-drama-character{background:#1a1523d9!important;border-color:#a855f766!important}.node-drama-character{padding:12px;display:flex;flex-direction:column;height:100%;box-sizing:border-box}.character-avatar{width:100%;flex:1;background-size:cover;background-position:center;background-repeat:no-repeat;background-color:#0003;border-radius:6px;display:flex;align-items:center;justify-content:center;color:#a855f7;border:1px solid rgba(168,85,247,.15)}.character-info{margin-top:10px}.character-name{font-size:13px;font-weight:600;color:#fff;margin-bottom:4px}.character-desc{font-size:11px;color:var(--text-tertiary, #64748b);line-height:1.4;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.ip-lock-badge{display:inline-flex;align-items:center;gap:4px;margin-top:6px;padding:2px 6px;background:#a855f726;border:1px solid rgba(168,85,247,.3);border-radius:4px;font-size:10px;color:#c084fc}.node-card.tone-drama-scene{background:#0f1717d9!important;border-color:#14b8a666!important}.node-drama-scene{height:100%;background-size:cover;background-position:center;background-repeat:no-repeat;border-radius:12px;overflow:hidden;position:relative}.scene-overlay{position:absolute;inset:0;background:linear-gradient(to top,#0f1717f2,#0f171766 60%,#0f171700);display:flex;align-items:flex-end;padding:12px;box-sizing:border-box}.scene-info{width:100%}.scene-name{font-size:13px;font-weight:600;color:#fff;margin-bottom:4px}.scene-desc{font-size:11px;color:var(--text-tertiary, #94a3b8);line-height:1.4;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.node-card.tone-drama-shot{background:#0f171ed9!important;border-color:#0ea5e966!important}.node-drama-shot{display:flex;height:100%;box-sizing:border-box}.shot-preview{width:120px;min-width:120px;background-size:cover;background-position:center;background-repeat:no-repeat;background-color:#0000004d;border-right:1px solid rgba(255,255,255,.06);display:flex;align-items:center;justify-content:center;color:#0ea5e9;position:relative;overflow:hidden}.shot-preview video{width:100%;height:100%;object-fit:cover}.shot-info{flex:1;padding:12px;display:flex;flex-direction:column;overflow:hidden}.shot-number{font-size:12px;font-weight:600;color:#0ea5e9;margin-bottom:6px}.shot-prompt{font-size:11px;color:var(--text-secondary, #cbd5e1);line-height:1.5;overflow-y:auto}.script-editor-container{display:flex;flex-direction:column;height:100%}.script-editor-meta{padding:16px;background:#0003;border-bottom:1px solid rgba(255,255,255,.04)}.script-editor-meta h4{font-size:14px;font-weight:600;margin:0 0 6px;color:#fff}.episode-synopsis{font-size:12px;color:var(--text-tertiary, #64748b);line-height:1.5;margin:0}.script-lines-list{flex:1;overflow-y:auto;padding:8px 0}.script-line-item{display:flex;gap:12px;padding:12px 16px;border-bottom:1px solid rgba(255,255,255,.02);cursor:pointer;transition:background .2s ease}.script-line-item:hover{background:#ffffff05}.script-line-item.is-selected{background:#00c2ff14;border-left:3px solid var(--brand-color, #00c2ff)}.line-num{font-size:11px;font-weight:600;color:var(--brand-color, #00c2ff);background:#00c2ff1a;padding:2px 6px;border-radius:4px;height:fit-content}.line-detail{flex:1;display:flex;flex-direction:column;gap:4px}.line-dialogue{font-size:13px;color:#fff;margin:0}.line-narration{font-size:13px;color:var(--text-secondary, #cbd5e1);margin:0}.line-prompt{font-size:11px;color:var(--text-tertiary, #64748b);margin:0;font-style:italic}.storyboard-cards-grid{display:flex;flex-direction:column;gap:20px;padding:10px 0}.storyboard-card-wrapper{background:var(--bg-elevated, #16181d);border:1px solid var(--stroke-soft, rgba(255, 255, 255, .08));border-radius:12px;overflow:hidden;display:flex;flex-direction:column;transition:all .2s ease}.storyboard-card-wrapper.is-active{border-color:var(--brand-color, #00c2ff);box-shadow:0 0 12px #00c2ff26}.storyboard-card-num{padding:8px 16px;background:#ffffff05;border-bottom:1px solid rgba(255,255,255,.04);font-size:12px;font-weight:600;color:var(--brand-color, #00c2ff)}.storyboard-media-box{aspect-ratio:16/9;background:#000;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.media-preview-video{width:100%;height:100%;object-fit:cover}.keyframe-preview{position:relative;width:100%;height:100%}.media-preview-image{width:100%;height:100%;object-fit:cover;display:block}.keyframe-actions{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:6px;padding:8px;background:linear-gradient(transparent,#000000b8)}.keyframe-status-text{font-size:11px;color:#ffffffd9}.keyframe-regen-btn,.keyframe-skip-btn{padding:4px 10px;font-size:11px;color:#fffc;background:#0006;border:1px solid rgba(255,255,255,.25);border-radius:20px;cursor:pointer;white-space:nowrap}.keyframe-regen-btn:disabled,.keyframe-skip-btn:disabled{opacity:.5;cursor:default}.drama-audio-toggle{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--text-secondary, #94a3b8);cursor:pointer}.drama-native-audio-hint{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--text-tertiary, #64748b);white-space:nowrap}.media-placeholder{display:flex;flex-direction:column;align-items:center;gap:12px;color:var(--text-tertiary, #475569);font-size:13px}.spark-icon{color:var(--brand-color, #00c2ff)}.render-single-btn{padding:6px 16px;background:var(--brand-color, #00c2ff);border:none;border-radius:20px;color:#000;font-weight:600;font-size:12px;cursor:pointer;transition:opacity .2s ease;margin-top:8px}.render-single-btn:hover{opacity:.9}.storyboard-details{padding:16px;display:flex;flex-direction:column;gap:10px;background:#0000001a}.detail-row{display:flex;gap:8px;font-size:12px}.detail-lbl{color:var(--text-tertiary, #64748b);width:40px}.detail-val{color:#fff;font-weight:500}.detail-textarea-group{display:flex;flex-direction:column;gap:6px}.detail-textarea-group label{font-size:12px;color:var(--text-tertiary, #64748b)}.detail-textarea-group textarea{width:100%;height:60px;background:#0000004d;border:1px solid rgba(255,255,255,.08);border-radius:6px;padding:8px;color:#fff;font-size:12px;line-height:1.5;resize:none;outline:none}.section-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.section-subtitle-hint{font-size:10px;color:var(--brand-color, #00c2ff);opacity:.8}.active-asset-card{display:flex;align-items:center;gap:12px;padding:8px 12px;background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:8px;grid-column:span 2;height:auto;aspect-ratio:auto}.asset-card-avatar{width:48px;height:48px;border-radius:6px;background-size:cover;background-position:center;border:1px solid rgba(255,255,255,.08)}.scene-avatar-bg{border-color:#14b8a64d}.asset-card-avatar-empty{display:flex;align-items:center;justify-content:center;flex:0 0 48px;background:#ffffff0d;color:#ffffff8c;font-size:18px;font-weight:600}.portrait-generate-btn{margin-left:auto;display:inline-flex;align-items:center;gap:4px;padding:4px 8px;font-size:10px;color:#ffffffbf;background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-radius:6px;cursor:pointer;white-space:nowrap}.portrait-generate-btn:disabled{opacity:.5;cursor:default}.portrait-candidates-row{display:flex;gap:6px;padding:2px 2px 8px;grid-column:span 2}.portrait-candidate{width:40px;height:52px;border-radius:6px;background-size:cover;background-position:center;background-color:#ffffff0d;border:1px solid rgba(255,255,255,.12);cursor:pointer;padding:0}.portrait-candidate.is-selected{border-color:var(--brand-color, #00c2ff);box-shadow:0 0 0 1px var(--brand-color, #00c2ff)}.asset-card-info{flex:1;display:flex;flex-direction:column;gap:4px}.asset-card-info .name{font-size:13px;font-weight:600;color:#fff}.ip-locked-tag{display:inline-flex;align-items:center;gap:4px;font-size:9px;color:#a855f7;background:#a855f726;padding:1px 4px;border-radius:4px;width:fit-content}.ip-unlocked-tag{font-size:9px;color:var(--text-tertiary, #64748b)}.add-character-inline{grid-column:span 2;display:flex;gap:8px;margin-top:8px}.add-character-inline input{flex:1;background:#0000004d;border:1px solid rgba(255,255,255,.08);border-radius:4px;padding:6px 10px;color:#fff;font-size:12px;outline:none}.add-char-btn{background:#ffffff0d;border:1px solid rgba(255,255,255,.08);color:#fff;border-radius:4px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.add-char-btn:hover:not(:disabled){background:var(--brand-color, #00c2ff);color:#000;border-color:var(--brand-color, #00c2ff)}.portrait-disclaimer-modal{position:fixed;inset:0;background:#000000d9;z-index:1000;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:20px}.modal-content{background:var(--bg-elevated, #16181d);border:1px solid rgba(255,255,255,.1);border-radius:16px;max-width:420px;padding:24px;text-align:center;display:flex;flex-direction:column;align-items:center}.warning-icon{color:#eab308;margin-bottom:16px}.modal-content h4{font-size:16px;font-weight:600;margin:0 0 10px;color:#fff}.modal-content p{font-size:13px;color:var(--text-secondary, #94a3b8);line-height:1.6;margin:0 0 20px}.modal-actions{display:flex;gap:12px;width:100%}.modal-actions button{flex:1;padding:10px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease}.modal-actions .cancel-btn{background:#ffffff0d;border:1px solid rgba(255,255,255,.08);color:#fff}.modal-actions .cancel-btn:hover{background:#ffffff1a}.modal-actions .confirm-btn{background:#eab308;border:none;color:#000}.modal-actions .confirm-btn:hover{background:#ca8a04}.timeline-clip-block{height:24px;border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:600;margin-right:4px;box-sizing:border-box}.video-clip{background:#0ea5e926;border:1px solid rgba(14,165,233,.3);color:#38bdf8}.video-clip.is-rendered{background:#0ea5e9;color:#fff;border-color:#0ea5e9}.audio-clip{background:#a855f726;border:1px solid rgba(168,85,247,.3);color:#c084fc}.audio-clip.has-audio{background:#a855f7;color:#fff;border-color:#a855f7}.parse-error-box{display:flex;align-items:center;gap:8px;background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:6px;padding:8px 12px;color:#ef4444;font-size:12px;width:100%;box-sizing:border-box;margin-bottom:16px;text-align:left}.drama-asset-library{max-width:1500px;margin:18px auto 0;overflow:hidden;border:1px solid var(--stroke-regular);border-radius:8px;background:var(--bg-panel)}.avatar-menu-account{display:grid;gap:3px;padding:8px 10px 10px}.avatar-menu-account strong{overflow:hidden;color:var(--text-primary);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.avatar-menu-account span{color:var(--text-tertiary);font-size:11px}.drama-asset-library>header{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid var(--stroke-subtle)}.drama-asset-library>header span{color:var(--accent);font-size:12px;font-weight:700}.drama-asset-library>header h2{margin:3px 0 0;font-size:18px}.drama-asset-library>nav{display:flex;gap:4px;padding:8px 12px;border-bottom:1px solid var(--stroke-subtle);background:var(--bg-base)}.drama-asset-library>nav button{display:flex;min-height:34px;align-items:center;gap:8px;padding:0 10px;border-radius:5px;color:var(--text-secondary)}.drama-asset-library>nav button span{color:var(--text-tertiary);font-size:11px}.drama-asset-library>nav button.is-active{color:var(--text-primary);background:var(--bg-elevated)}.drama-asset-create{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(180px,.7fr) minmax(0,1.6fr) auto;gap:10px;align-items:end;padding:14px 16px;border-bottom:1px solid var(--stroke-subtle)}.drama-asset-create label{display:grid;gap:6px;color:var(--text-secondary);font-size:12px}.drama-asset-create label.is-wide{grid-column:span 2}.drama-asset-create input,.drama-asset-create select,.drama-asset-create textarea{width:100%;min-width:0;padding:8px;border:1px solid var(--stroke-regular);border-radius:5px;color:var(--text-primary);background:var(--bg-panel)}.drama-asset-create textarea{min-height:70px;resize:vertical}.drama-asset-create>button{min-height:36px;margin-bottom:1px}.drama-asset-version-list{display:grid}.drama-asset-version-list article{display:grid;grid-template-columns:76px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 16px;border-bottom:1px solid var(--stroke-subtle)}.drama-asset-version-list article:last-child{border-bottom:0}.drama-asset-preview{display:grid;width:76px;aspect-ratio:4 / 3;place-items:center;overflow:hidden;border:1px solid var(--stroke-subtle);border-radius:6px;color:var(--text-tertiary);background:var(--bg-base)}.drama-asset-preview img{width:100%;height:100%;object-fit:cover}.drama-asset-version-list article>div:nth-child(2){min-width:0}.drama-asset-version-list article span,.drama-asset-version-list article small{color:var(--text-tertiary);font-size:11px}.drama-asset-version-list article strong{display:block;margin-top:2px}.drama-asset-version-list article p{margin:4px 0;overflow:hidden;color:var(--text-secondary);font-size:12px;text-overflow:ellipsis;white-space:nowrap}@media(max-width:1120px){.drama-asset-create{grid-template-columns:repeat(2,minmax(0,1fr))}.drama-asset-create>button{justify-self:start}}@media(max-width:760px){.drama-asset-create{grid-template-columns:1fr}.drama-asset-create label.is-wide{grid-column:auto}.drama-asset-version-list article{grid-template-columns:64px minmax(0,1fr)}.drama-asset-version-list article>button{grid-column:1 / -1;justify-self:end}}.platform-page.login-page{color-scheme:light;--bg-light: #f6f7f9;--stroke-regular: #d9dde3;--text-primary: #17191d;--text-secondary: #626974;--text-tertiary: #9299a3;--accent: #2457d6;--accent-text: #ffffff;background:#15181d;color:#17191d}.login-page .login-hero{background:#15181d}.login-page .login-hero:after{background:#0a0c1033}.login-page .login-hero-fallback{background:#15181d}.login-page .login-hero-caption{left:clamp(28px,4vw,64px);bottom:clamp(28px,5vw,64px)}.login-page .platform-kicker{color:#ffffffa3;font-weight:700}.login-page .login-hero-tagline{max-width:520px;color:#fff;font-size:clamp(28px,3vw,44px);font-weight:720;text-shadow:0 2px 16px rgba(0,0,0,.34)}.login-page .login-aside{flex-basis:clamp(420px,34vw,520px);padding:42px clamp(36px,4vw,64px);border-left:1px solid #e4e7eb;background:#fff}.login-page .login-aside-head>a{color:#5f6670}.login-page .login-panel{gap:12px;width:min(388px,100%)}.login-page .login-panel>.platform-brand{justify-content:flex-start;gap:10px;margin-bottom:34px;color:#17191d;font-size:20px;font-weight:760}.login-page .login-panel>.platform-brand .platform-brand-mark,.login-page .login-panel>.platform-brand .platform-brand-logo{width:36px;height:36px;border:0;border-radius:7px;background:#17191d;color:#fff}.login-page .login-panel>.platform-brand .platform-brand-logo{width:min(220px,72%);height:auto;border-radius:0;background:transparent}.login-page .login-copy{text-align:left}.login-page .login-panel .login-copy h1{color:#17191d;font-size:30px;font-weight:720;text-align:left}.login-page .login-copy>p:last-child{margin-top:7px;color:#858c96;font-size:14px}.login-page .login-panel .platform-tabs{height:40px;margin-top:22px;padding:3px;border:1px solid #e1e4e8;border-radius:7px;background:#f3f4f6}.login-page .login-panel .platform-tabs button{min-height:32px;border-radius:5px;color:#777e88}.login-page .login-panel .platform-tabs button.is-active{background:#fff;color:#2457d6;box-shadow:0 1px 4px #1e24301a}.login-page .login-panel .platform-tabs.is-compact{gap:30px;height:34px;margin-top:2px;border:0;background:transparent}.login-page .login-panel .platform-tabs.is-compact button{border-radius:0;color:#8b929c}.login-page .login-panel .platform-tabs.is-compact button.is-active{color:#202329;box-shadow:none}.login-page .login-panel input{height:42px;border:1px solid #d9dde3;border-radius:7px;background:#f8f9fb;color:#17191d}.login-page .login-panel input::placeholder{color:#a0a6af}.login-page .login-panel input:focus-visible{border-color:#8ba5e7;background:#fff;box-shadow:0 0 0 3px #2457d61a}.login-page .login-field-icon{color:#9299a3}.login-page .login-visibility-button,.login-page .login-code-button{border-radius:5px;color:#727985}.login-page .login-code-button{background:#edf2ff;color:#2457d6}.login-page .login-visibility-button:hover:not(:disabled),.login-page .login-code-button:hover:not(:disabled){background:#e8edf8;color:#2457d6}.login-page .login-panel .platform-primary-action{min-height:42px;border-radius:7px;background:#2457d6;font-size:14px;font-weight:700}.login-page .login-legal,.login-page .login-beian{color:#9299a3}.announcement-modal{color-scheme:light;width:min(460px,calc(100vw - 32px));padding:0;border:1px solid #dfe3e8;border-radius:8px;background:#fff;color:#17191d;box-shadow:0 24px 64px #13182033}.announcement-modal .platform-modal-head{padding:18px 20px 14px;border-bottom:1px solid #edf0f3}.announcement-modal .platform-modal-head strong{font-size:16px}.announcement-modal .icon-button{width:32px;height:32px;border:1px solid #e0e3e7;border-radius:6px;background:#fff;color:#69717c}.announcement-modal .announcement-list{gap:0;padding:4px 20px}.announcement-modal .announcement-list article{padding:14px 0;border:0;border-bottom:1px solid #edf0f3;border-radius:0;background:transparent}.announcement-modal .announcement-list article:last-child{border-bottom:0}.announcement-modal .announcement-list strong{color:#25292f;font-size:13px}.announcement-modal .announcement-list p{margin-top:5px;color:#747b86;font-size:12px;line-height:1.6}.announcement-modal>.platform-primary-action{width:calc(100% - 40px);min-height:40px;margin:12px 20px 20px;border-radius:6px;background:#2457d6;font-size:14px}.platform-page.creator-home,.drama-project-shell{color-scheme:light;--bg-base: #f4f5f7;--bg-canvas: #15181d;--bg-panel: #ffffff;--bg-glass: rgba(255, 255, 255, .92);--bg-light: #f1f3f6;--bg-elevated: #f7f8fa;--stroke-soft: #edf0f3;--stroke-subtle: #e7e9ed;--stroke-regular: #d9dde3;--stroke-bold: #c4cad2;--text-primary: #17191d;--text-secondary: #5d636d;--text-tertiary: #8a919d;--accent: #2457d6;--accent-text: #ffffff;--studio-glow: transparent;--color-grid-dot: rgba(255, 255, 255, .11);background:var(--bg-base);color:var(--text-primary)}.platform-page.creator-home{background:#f4f5f7}.platform-page.creator-home:before{display:none}.creator-home .home-header{position:sticky;z-index:var(--z-topbar);top:0;width:100%;min-height:62px;padding:0 max(24px,calc((100vw - 1240px)/2));border-bottom:1px solid #e4e7eb;background:#ffffffeb;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-sizing:border-box}.creator-home .platform-brand{flex:0 1 auto;font-size:14px;font-weight:760;white-space:nowrap}.creator-home .platform-brand-mark{width:30px;height:30px;border:0;border-radius:7px;background:#17191d;color:#fff;box-shadow:0 3px 10px #17191d29}.creator-home .home-header nav{flex:0 0 auto;gap:4px}.creator-home .home-header nav a,.creator-home .home-header nav button{min-height:34px;border-color:transparent;border-radius:6px;background:transparent;color:#4e5560;font-size:13px;font-weight:550}.creator-home .home-header nav a:hover,.creator-home .home-header nav button:hover:not(:disabled),.creator-home .avatar-entry.is-active{border-color:#e1e4e8;background:#f3f4f6;color:#17191d}.creator-home .home-header .member-entry{border-color:#dce2f3;background:#f5f7fd;color:#2457d6!important}@media(max-width:1040px){.creator-home .home-header{padding:0 16px}.creator-home .home-secondary-action{display:none}.creator-home .home-credit-entry{padding-inline:9px}.creator-home .project-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.creator-home .home-creation-panel{gap:18px;width:min(980px,calc(100vw - 40px));margin:46px auto 44px;text-align:left}.home-creation-heading{display:grid;justify-items:start;gap:8px}.home-creation-eyebrow{display:inline-flex;align-items:center;gap:7px;color:#2457d6;font-size:12px;font-weight:700}.creator-home .home-creation-panel h1{max-width:720px;font-size:40px;font-weight:760;line-height:1.12}.creator-home .home-creation-panel .home-creation-sub{margin:0;color:#707782;font-size:15px}.home-project-type{min-width:0;overflow:hidden;border:1px solid #dfe3e8;border-radius:8px;background:#fff}.home-project-type-primary{border-color:#cbd5e9;border-left:3px solid var(--accent);box-shadow:0 10px 28px #1e243012}.home-project-type-secondary{border-color:var(--stroke-regular);box-shadow:none}.home-project-type-header{display:flex;align-items:center;justify-content:space-between;gap:20px;min-width:0;padding:16px 18px}.home-project-type-primary .home-project-type-header{min-height:104px}.home-project-type-copy{display:grid;gap:4px;min-width:0}.home-creation-deck-header>.home-project-type-copy{display:grid;align-items:initial;gap:4px}.home-project-type-label{display:inline-flex;align-items:center;gap:6px;width:fit-content;max-width:100%;color:var(--accent);font-size:12px;font-weight:700;line-height:1.4}.home-project-type-secondary .home-project-type-label{color:var(--text-secondary)}.home-creation-deck-header>div .home-project-type-label{color:var(--text-secondary);font-size:12px}.home-project-type-copy h2{margin:0;color:var(--text-primary);font-size:17px;line-height:1.4;overflow-wrap:anywhere}.home-project-type-copy p{margin:0;color:var(--text-secondary);font-size:13px;line-height:1.55;overflow-wrap:anywhere}.home-project-type-note{flex:0 0 auto;padding:5px 8px;border:1px solid var(--stroke-regular);border-radius:5px;background:var(--bg-light);color:var(--text-secondary);font-size:11px;white-space:nowrap}.home-creation-deck{overflow:hidden}.home-creation-deck-header,.home-creation-deck-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 16px}.home-creation-deck-header{border-bottom:1px solid #edf0f3}.home-creation-deck-footer>span{color:#9299a3;font-size:12px}.creator-home .home-drama-import{flex:0 0 auto;min-height:40px;margin:0;padding:0 14px;border-color:transparent;border-radius:6px;background:var(--accent);color:var(--accent-text);font-weight:700}.creator-home .home-drama-import:hover,.creator-home .home-drama-import:focus-visible{border-color:transparent;background:#1f4cbf;color:var(--accent-text)}.creator-home .home-prompt-box{min-height:122px;padding:16px 18px 14px;border:0;border-radius:0;background:#fff;box-shadow:none}.creator-home .home-prompt-box:focus-within{border:0;box-shadow:inset 3px 0 #2457d6}.creator-home .home-prompt-input{min-height:78px;color:#17191d;font-size:15px;line-height:1.65}.creator-home .home-prompt-input:empty:before{color:#a0a6af}.creator-home .home-send-button{width:auto;min-width:114px;height:40px;gap:8px;padding:0 14px;border-radius:6px;background:#2457d6;color:#fff;font-weight:700}.creator-home .home-send-label{position:static;width:auto;height:auto;overflow:visible;opacity:1}.creator-home .prompt-counter{right:148px;bottom:12px;color:#969da7}.home-creation-deck-footer{min-height:56px;border-top:1px solid #edf0f3;background:#fafbfc}.creator-home .platform-upload-row{justify-content:flex-start;gap:5px}.creator-home .platform-upload-button-wrap{min-height:34px}.creator-home .platform-upload-button{min-width:auto;min-height:34px;padding:0 10px;border-color:transparent;border-radius:5px;background:transparent;color:#626a75}.creator-home .platform-upload-button:hover{border-color:#dfe3e8;background:#fff;color:#17191d}.creator-home .upload-feedback{display:none}.home-production-flow{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin:0;padding:0;border-top:1px solid #dfe3e8;border-bottom:0;background:#fafbfc;list-style:none}.home-production-flow li{position:relative;display:grid;gap:4px;min-width:0;padding:14px 12px 14px 18px}.home-production-flow li:not(:last-child):after{position:absolute;top:14px;right:0;bottom:14px;width:1px;content:"";background:#dfe3e8}.home-production-flow span{color:#9aa1ab;font-size:10px;font-variant-numeric:tabular-nums}.home-production-flow strong{overflow:hidden;color:#666d77;font-size:12px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.home-production-flow .is-current span,.home-production-flow .is-current strong{color:#2457d6}.creator-home .skill-capsule-row{justify-content:flex-start;gap:6px}.creator-home .skill-capsule-row>span{margin-right:4px;color:#8a919b;font-size:12px}.creator-home .skill-capsule-row a{min-height:28px;padding:4px 9px;border-color:#e0e3e7;border-radius:5px;background:#f8f9fa;color:#666d77;font-size:12px}.creator-home .skill-capsule-row a:hover,.creator-home .skill-capsule-row a:focus-visible{border-color:#bfcbea;background:#f1f4fc;color:#2457d6}.creator-home .platform-section{width:min(1180px,calc(100vw - 40px));margin-top:34px}.creator-home .platform-section-heading{align-items:flex-end;margin-bottom:14px}.creator-home .platform-section-heading>div{display:grid;gap:3px;min-width:0}.creator-home .platform-section-heading h2{color:#202329;font-size:18px}.creator-home .platform-section-heading>div>span{color:var(--text-tertiary);font-size:12px;line-height:1.4}.creator-home .platform-section-heading a,.creator-home .link-button{color:#68707b;font-size:12px}.creator-home .project-card,.creator-home .skill-card{min-width:0;border-color:#e0e3e7;border-radius:8px;background:#fff;box-shadow:0 4px 14px #1e243009}.creator-home .project-card:hover,.creator-home .project-card:focus-visible,.creator-home .skill-card:hover,.creator-home .skill-card:focus-within{border-color:#bdc8df;box-shadow:0 12px 28px #1e243017;transform:translateY(-1px)}.creator-home .new-project-card{min-height:278px;gap:7px;border-color:#bfcbea;background:#f6f8fd;color:#566078}.creator-home .new-project-card small{color:var(--text-tertiary);font-size:11px}.creator-home .new-project-card:hover,.creator-home .new-project-card:focus-visible{border-color:#2457d6;background:#f0f4ff;color:#2457d6}.creator-home .project-card-cover-gradient{background:linear-gradient(115deg,#1f232bf5,#3a445bad),#252a33}.creator-home .project-card[data-project-kind=drama] .project-card-cover-gradient{background:linear-gradient(115deg,#181f2dfa,#2457d6c7),#202633}.creator-home .project-card-link{grid-template-rows:88px auto minmax(70px,1fr) auto;gap:10px;min-width:0;min-height:278px;color:var(--text-primary)}.creator-home .project-card-cover{min-width:0}.creator-home .project-card-type-badge{position:absolute;bottom:10px;left:12px;display:inline-flex;align-items:center;gap:5px;max-width:calc(100% - 54px);padding:5px 8px;overflow:hidden;border:1px solid rgba(255,255,255,.22);border-radius:5px;background:#10131994;color:#fff;font-size:11px;font-weight:700;line-height:1;text-overflow:ellipsis;white-space:nowrap}.creator-home .project-card-title{min-width:0;overflow:hidden;color:var(--text-primary);font-size:14px;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}.creator-home .project-card-continuation{display:grid;align-content:start;gap:8px;min-width:0}.creator-home .project-card-stage{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0;padding:7px 9px;border:1px solid var(--stroke-soft);border-radius:5px;background:var(--bg-elevated)}.creator-home .project-card-stage span,.creator-home .project-card-progress span{color:var(--text-secondary);font-size:11px}.creator-home .project-card-stage strong{flex:0 0 auto;color:var(--accent);font-size:12px}.creator-home .project-card-progress{display:grid;gap:5px;min-width:0}.creator-home .project-card-progress>div{display:flex;align-items:center;justify-content:space-between;gap:8px}.creator-home .project-card-progress>div strong{color:var(--text-primary);font-size:11px;font-variant-numeric:tabular-nums}.creator-home .project-card-progress-track{display:block;width:100%;height:4px;overflow:hidden;border-radius:2px;background:#e7eaf0}.creator-home .project-card-progress-track i{display:block;height:100%;border-radius:inherit;background:var(--accent)}.creator-home .project-card-status{display:-webkit-box;min-width:0;margin:0;overflow:hidden;color:var(--text-secondary);font-size:12px;line-height:1.5;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:2}.creator-home .project-card-status>span{margin-right:6px;color:#996500;font-size:11px;font-weight:700}.creator-home .project-card-status.is-blocked,.creator-home .project-card-status.is-blocked>span{color:#b23b35}.creator-home .project-card-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0;padding-top:9px;border-top:1px solid var(--stroke-soft)}.creator-home .project-card-footer small{min-width:0;overflow:hidden;color:var(--text-tertiary);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.creator-home .project-card-continue{display:inline-flex;flex:0 0 auto;align-items:center;gap:4px;color:var(--text-primary);font-size:12px;font-weight:700;white-space:nowrap}.creator-home .project-card[data-project-kind=drama] .project-card-continue{color:var(--accent)}.creator-home .project-card-more{border-color:#fff3;background:#11141b8f;color:#fff}.creator-home .project-card-more:hover,.creator-home .project-card-more:focus-visible{border-color:#fff6;background:#11141bc2;color:#fff}.creator-home .skill-cover{border:0;border-radius:6px;background:#eef2fb;color:#2457d6}.creator-home .platform-footer{color:#8a919b}.creator-home .avatar-menu,.creator-home .slash-skill-picker{border-color:#dfe3e8;border-radius:8px;background:#fff;color:#17191d;box-shadow:0 18px 44px #1e243024}.creator-home .avatar-menu-item{color:#3d444d}.creator-home .avatar-menu-item:hover:not(:disabled),.creator-home .slash-skill-item:hover,.creator-home .slash-skill-item.is-selected{background:#f2f4f7}.drama-import-dialog{color-scheme:light;--bg-base: #f4f5f7;--bg-panel: #ffffff;--bg-elevated: #f5f6f8;--stroke-subtle: #e7e9ed;--stroke-regular: #d9dde3;--stroke-bold: #c4cad2;--text-primary: #17191d;--text-secondary: #5d636d;--text-tertiary: #8a919d;--accent: #2457d6;border-radius:8px;background:#fff;color:#17191d}.drama-import-dialog .platform-modal-head .icon-button{border:1px solid #e0e3e7;background:#fff;color:#5f6670}.drama-import-dialog .drama-import-modes{gap:3px;padding:3px;border:1px solid #e3e6ea;border-radius:7px;background:#f3f4f6}.drama-import-dialog .drama-import-modes button{min-height:34px;border:0;border-radius:5px;background:transparent;color:#707781}.drama-import-dialog .drama-import-modes button.is-active{background:#fff;color:#2457d6;box-shadow:0 1px 4px #1e243017}.drama-import-dialog input,.drama-import-dialog textarea{border-color:#d9dde3;background:#f8f9fb}.drama-import-dialog input:focus,.drama-import-dialog textarea:focus{border-color:#8ba5e7;background:#fff;outline:2px solid rgba(36,87,214,.1)}.drama-import-dialog .drama-file-drop,.drama-import-dialog .drama-import-blank{border-color:#cbd1d9;background:#f8f9fb}.drama-import-dialog .modal-actions{gap:10px}.drama-import-dialog .modal-actions button{min-height:40px;border-radius:6px}.drama-import-dialog .modal-actions .ghost-button{border:1px solid #d9dde3;background:#fff;color:#454c56}.drama-import-dialog .modal-actions .platform-primary-action{background:#2457d6}.drama-project-topbar{min-height:64px;padding:8px 20px;border-color:#e2e5e9;background:#fffffff5}.drama-project-title strong{font-size:14px}.drama-project-topbar nav{align-self:stretch}.drama-project-topbar nav a{position:relative;min-height:100%;border-radius:0;font-weight:600}.drama-project-topbar nav a.is-active{background:transparent;color:#2457d6}.drama-project-topbar nav a.is-active:after{position:absolute;right:10px;bottom:-8px;left:10px;height:2px;content:"";background:#2457d6}.drama-story-stage,.drama-style-stage,.drama-generation-stage,.drama-delivery-stage{background:#f4f5f7}.drama-stage-toolbar{margin-bottom:18px}.drama-stage-toolbar span{color:#2457d6;font-weight:700}.drama-review-layout,.drama-style-layout,.drama-source-entry,.drama-generation-table-wrap,.drama-editing-suggestions,.drama-export-options article{border-color:#dfe3e8;border-radius:8px;background:#fff;box-shadow:0 8px 24px #1e24300b}.drama-review-layout>nav,.drama-style-versions,.drama-review-issues,.drama-style-summary{background:#f8f9fb}.drama-review-layout>nav button,.drama-style-versions>button,.drama-character-review>aside button{border:0;background:transparent;box-shadow:none}.drama-review-layout>nav button.is-active,.drama-style-versions>button.is-active,.drama-character-review>aside button.is-active{background:#eaf0ff;color:#2457d6}.drama-asset-library{border-color:#dfe3e8;background:#fff;box-shadow:0 8px 24px #1e24300b}.drama-asset-library>nav{background:#f8f9fb}.drama-asset-library>nav button{border:0;background:transparent;box-shadow:none}.drama-asset-library>nav button.is-active{background:#eaf0ff;color:#2457d6}.drama-generation-filters button{border:1px solid #dfe3e8;background:#fff;box-shadow:none}.drama-generation-filters button:hover{border-color:#bfc8d5;color:#282d34}.drama-generation-filters button.is-active{border-color:#b9c8ee;background:#edf2ff;color:#2457d6}.drama-generation-filters button.is-active span{color:#5d78b8}.drama-generation-table th{background:#f8f9fb;color:#737b86;font-weight:650}.drama-generation-status{background:#f1f3f6}.drama-generation-table tr.is-blocked .drama-generation-status,.drama-generation-table tr.is-failed .drama-generation-status{background:#fff1f0;color:#c13b35!important}.drama-episode-canvas{background-color:#15181d;background-image:radial-gradient(circle,rgba(255,255,255,.12) 1px,transparent 1px)}.drama-scene-lane{border-color:#ffffff2b;background:#1b1f26db}.drama-scene-lane header{border-color:#ffffff17;color:#f5f7fa}.drama-production-node{border-color:#d9dde3;background:#fff;box-shadow:0 8px 22px #0003}.drama-shot-inspector,.drama-director-panel{border-color:#dfe3e8;background:#fff;box-shadow:-12px 0 32px #13182024}@media(max-width:760px){.platform-page.login-page{height:auto;min-height:100vh;overflow-y:auto;background:#f4f5f7}.login-page .login-hero{display:none}.login-page .login-aside{flex:1 1 auto;width:100%;min-height:100vh;height:auto;padding:44px 24px 32px;border-left:0;background:#f4f5f7}.login-page .login-panel{width:min(100%,390px);padding:28px 22px 24px;border:1px solid #e0e3e7;border-radius:8px;background:#fff;box-shadow:0 12px 32px #1e243014}.login-page .login-panel>.platform-brand{margin-bottom:24px}.login-page .login-panel .login-copy h1{font-size:28px}.drama-project-topbar{gap:8px;padding:7px 12px 0}.drama-project-topbar nav{gap:0;margin:0 -12px;padding:0 12px;scrollbar-width:none}.drama-project-topbar nav::-webkit-scrollbar{display:none}.drama-project-topbar nav a{flex:0 0 auto;min-height:42px;padding:0 12px;white-space:nowrap}.drama-project-topbar nav a.is-active:after{bottom:0}.creator-home .home-header{padding:0 14px}.creator-home .home-credit-entry{display:none}.creator-home .avatar-entry{width:36px;min-width:36px;padding:0;justify-content:center}.creator-home .avatar-entry span,.creator-home .avatar-entry>svg:last-child{display:none}.creator-home .home-header nav>a,.creator-home .home-header nav>.space-switcher,.creator-home .home-header nav>button:nth-of-type(2),.creator-home .home-header nav>.member-entry{display:none}.creator-home .home-creation-panel{margin-top:28px}.creator-home .home-creation-panel h1{font-size:32px}.home-project-type-header{align-items:stretch;flex-direction:column;gap:12px}.home-project-type-primary .home-project-type-header{min-height:0}.creator-home .home-drama-import{width:100%;justify-content:center}.home-project-type-note{align-self:flex-start}.home-creation-deck-header,.home-creation-deck-footer{align-items:flex-start;flex-direction:column}.creator-home .home-creation-deck-footer,.creator-home .platform-upload-row{width:100%}.creator-home .home-send-button{min-width:40px;width:40px;padding:0}.creator-home .home-send-label{position:absolute;width:1px;height:1px;overflow:hidden}.creator-home .prompt-counter{right:64px}.home-production-flow{grid-template-columns:repeat(5,minmax(0,1fr));overflow:visible}.home-production-flow li{justify-items:center;gap:3px;padding:12px 4px;text-align:center}.home-production-flow strong{max-width:100%;font-size:11px}.creator-home .project-card-grid{grid-template-columns:1fr}.creator-home .project-card-footer{align-items:flex-start;flex-wrap:wrap}}
