.vue-flow{z-index:0;direction:ltr;width:100%;height:100%;position:relative;overflow:hidden}.vue-flow__container{width:100%;height:100%;position:absolute;top:0;left:0}.vue-flow__pane{z-index:1}.vue-flow__pane.draggable{cursor:grab}.vue-flow__pane.selection{cursor:pointer}.vue-flow__pane.dragging{cursor:grabbing}.vue-flow__transformationpane{transform-origin:0 0;z-index:2;pointer-events:none}.vue-flow__viewport{z-index:4;overflow:clip}.vue-flow__selection{z-index:6}.vue-flow__edge-labels{pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute}.vue-flow__nodesselection-rect:focus,.vue-flow__nodesselection-rect:focus-visible{outline:none}.vue-flow .vue-flow__edges{pointer-events:none;overflow:visible}.vue-flow__edge-path,.vue-flow__connection-path{stroke:#b1b1b7;stroke-width:1px;fill:none}.vue-flow__edge{pointer-events:visibleStroke;cursor:pointer}.vue-flow__edge.animated path{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.vue-flow__edge.animated path.vue-flow__edge-interaction{stroke-dasharray:none;animation:none}.vue-flow__edge.inactive{pointer-events:none}.vue-flow__edge.selected,.vue-flow__edge:focus,.vue-flow__edge:focus-visible{outline:none}.vue-flow__edge.selected .vue-flow__edge-path,.vue-flow__edge:focus .vue-flow__edge-path,.vue-flow__edge:focus-visible .vue-flow__edge-path{stroke:#555}.vue-flow__edge-textwrapper{pointer-events:all}.vue-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.vue-flow__connection{pointer-events:none}.vue-flow__connection .animated{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.vue-flow__connectionline{z-index:1001}.vue-flow__nodes{pointer-events:none;transform-origin:0 0}.vue-flow__node{-webkit-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default;position:absolute}.vue-flow__node.draggable{cursor:grab;pointer-events:all}.vue-flow__node.draggable.dragging{cursor:grabbing}.vue-flow__nodesselection{z-index:3;transform-origin:0 0;pointer-events:none}.vue-flow__nodesselection-rect{pointer-events:all;cursor:grab;position:absolute}.vue-flow__nodesselection-rect.dragging{cursor:grabbing}.vue-flow__handle{pointer-events:none;min-width:5px;min-height:5px;position:absolute}.vue-flow__handle.connectable{pointer-events:all;cursor:crosshair}.vue-flow__handle-bottom{bottom:0;left:50%;transform:translate(-50%,50%)}.vue-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.vue-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.vue-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.vue-flow__edgeupdater{cursor:move;pointer-events:all}.vue-flow__panel{z-index:5;margin:15px;position:absolute}.vue-flow__panel.top{top:0}.vue-flow__panel.bottom{bottom:0}.vue-flow__panel.left{left:0}.vue-flow__panel.right{right:0}.vue-flow__panel.center{left:50%;transform:translate(-50%)}@keyframes dashdraw{0%{stroke-dashoffset:10px}}:root{--vf-node-bg:#fff;--vf-node-text:#222;--vf-connection-path:#b1b1b7;--vf-handle:#555}.vue-flow__edge.updating .vue-flow__edge-path{stroke:#777}.vue-flow__edge-text{font-size:10px}.vue-flow__edge-textbg{fill:#fff}.vue-flow__node{cursor:grab}.vue-flow__node.selectable:focus,.vue-flow__node.selectable:focus-visible{outline:none}.vue-flow__node-default,.vue-flow__node-input,.vue-flow__node-output{text-align:center;width:150px;color:var(--vf-node-text);background-color:var(--vf-node-bg);border-style:solid;border-width:1px;border-color:var(--vf-node-color);border-radius:3px;padding:10px;font-size:12px}.vue-flow__node-default.selected,.vue-flow__node-default.selected:hover,.vue-flow__node-input.selected,.vue-flow__node-input.selected:hover,.vue-flow__node-output.selected,.vue-flow__node-output.selected:hover{box-shadow:0 0 0 .5px var(--vf-box-shadow)}.vue-flow__node-default.selected,.vue-flow__node-default:focus,.vue-flow__node-default:focus-visible,.vue-flow__node-input.selected,.vue-flow__node-input:focus,.vue-flow__node-input:focus-visible,.vue-flow__node-output.selected,.vue-flow__node-output:focus,.vue-flow__node-output:focus-visible{border:1px solid #555;outline:none}.vue-flow__node-default .vue-flow__handle,.vue-flow__node-input .vue-flow__handle,.vue-flow__node-output .vue-flow__handle{background:var(--vf-handle)}.vue-flow__node-default.selectable:hover,.vue-flow__node-input.selectable:hover,.vue-flow__node-output.selectable:hover{box-shadow:0 1px 4px 1px #00000014}.vue-flow__node-input{--vf-node-color:var(--vf-node-color,#0041d0);--vf-handle:var(--vf-node-color,#0041d0);--vf-box-shadow:var(--vf-node-color,#0041d0);background:var(--vf-node-bg);border-color:var(--vf-node-color,#0041d0)}.vue-flow__node-input.selected,.vue-flow__node-input:focus,.vue-flow__node-input:focus-visible{border:1px solid var(--vf-node-color,#0041d0);outline:none}.vue-flow__node-default{--vf-handle:var(--vf-node-color,#1a192b);--vf-box-shadow:var(--vf-node-color,#1a192b);background:var(--vf-node-bg);border-color:var(--vf-node-color,#1a192b)}.vue-flow__node-default.selected,.vue-flow__node-default:focus,.vue-flow__node-default:focus-visible{border:1px solid var(--vf-node-color,#1a192b);outline:none}.vue-flow__node-output{--vf-handle:var(--vf-node-color,#ff0072);--vf-box-shadow:var(--vf-node-color,#ff0072);background:var(--vf-node-bg);border-color:var(--vf-node-color,#ff0072)}.vue-flow__node-output.selected,.vue-flow__node-output:focus,.vue-flow__node-output:focus-visible{border:1px solid var(--vf-node-color,#ff0072);outline:none}.vue-flow__nodesselection-rect,.vue-flow__selection{background:#0059dc14;border:1px dotted #0059dccc}.vue-flow__nodesselection-rect:focus,.vue-flow__nodesselection-rect:focus-visible,.vue-flow__selection:focus,.vue-flow__selection:focus-visible{outline:none}.vue-flow__handle{background:var(--vf-handle);border:1px solid #fff;border-radius:100%;width:6px;height:6px}.vue-flow__controls{box-shadow:0 0 2px 1px #00000014}.vue-flow__controls-button{box-sizing:content-box;cursor:pointer;-webkit-user-select:none;user-select:none;background:#fefefe;border:none;border-bottom:1px solid #eee;justify-content:center;align-items:center;width:16px;height:16px;padding:5px;display:flex}.vue-flow__controls-button svg{width:100%;max-width:12px;max-height:12px}.vue-flow__controls-button:disabled{pointer-events:none}.vue-flow__controls-button:disabled svg{fill-opacity:.4}.vue-flow__minimap{background-color:#fff}.vue-flow__minimap.pannable{cursor:grab}.vue-flow__minimap.dragging{cursor:grabbing}.vue-flow__minimap-mask.pannable{cursor:grab}:root{--bg:#101315;--panel:#1a1e22;--panel-2:#23282d;--border:#333a40;--text:#f0f3f5;--text-dim:#99a3ad;--accent:#b9f35e;--accent-soft:#b9f35e1f;--danger:#ff8b87;--radius:16px;--sidebar-width:260px;--text-muted:#71808c;--accent-ink:#17240c;--border-soft:#fff1;--shadow-panel:0 16px 48px #00000052;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#app{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Segoe UI,Microsoft YaHei,sans-serif;font-size:13px;overflow:hidden}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none}img{-webkit-user-select:none;user-select:none}.canvas-view{flex-direction:column;height:100%;display:flex}.canvas-body{flex:1;min-height:0;display:flex}.flow-wrap{flex:1;min-width:0;position:relative;overflow:hidden}.topbar{background:var(--panel);border-bottom:1px solid var(--border);z-index:10;justify-content:space-between;align-items:center;height:48px;padding:0 12px;display:flex}.topbar .left,.topbar .center,.topbar .right{align-items:center;gap:8px;display:flex}.logo{letter-spacing:.5px;margin-right:4px;font-weight:700}.canvas-name{width:140px;color:var(--text);background:0 0;border:1px solid #0000;border-radius:6px;padding:5px 8px}.canvas-name:hover,.canvas-name:focus{border-color:var(--border);background:var(--panel-2);outline:none}.canvas-switch{background:var(--panel-2);max-width:140px;color:var(--text);border:1px solid var(--border);border-radius:6px;padding:5px 6px}.tb-btn{color:var(--text-dim);white-space:nowrap;border:1px solid #0000;border-radius:6px;padding:5px 10px;text-decoration:none}.tb-btn:hover{background:var(--panel-2);color:var(--text)}.zoom-pct{text-align:center;min-width:46px;color:var(--text-dim)}.cost-chip{color:var(--text-dim)}.sidebar{background:var(--panel);border-right:1px solid var(--border);flex-direction:column;width:224px;display:flex}.tabs{gap:4px;padding:8px;display:flex}.tabs button{color:var(--text-dim);border-radius:6px;flex:1;padding:6px 0}.tabs button.active{background:var(--panel-2);color:var(--text)}.search{background:var(--panel-2);border:1px solid var(--border);color:var(--text);border-radius:6px;outline:none;margin:0 8px 8px;padding:6px 8px}.list{flex:1;padding:0 6px;overflow-y:auto}.list-item{cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:7px 8px;display:flex}.list-item:hover{background:var(--panel-2)}.item-icon{text-align:center;width:22px}.item-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.list-empty{color:var(--text-dim);text-align:center;padding:24px 12px;line-height:1.6}.asset-grid{flex:1;grid-template-columns:1fr 1fr;align-content:start;gap:8px;padding:8px;display:grid;overflow-y:auto}.asset-cell{aspect-ratio:1;background:var(--panel-2);border:1px solid var(--border);cursor:grab;border-radius:8px;justify-content:center;align-items:center;display:flex;overflow:hidden}.asset-cell img{object-fit:cover;pointer-events:none;width:100%;height:100%}.cell-icon{font-size:24px}.frame-btn{color:#fff;cursor:pointer;z-index:5;opacity:.7;background:#0009;border:none;border-radius:6px;justify-content:center;align-items:center;width:26px;height:26px;font-size:13px;display:flex;position:absolute;top:6px;right:6px}.asset-body:hover .frame-btn{opacity:1}.frame-btn:hover{background:#000000d9}.frame-btn:disabled{opacity:.4}.sidebar-toggle{z-index:20;background:var(--panel);border:1px solid var(--border);width:22px;height:52px;color:var(--text-dim);cursor:pointer;border-left:none;border-radius:0 6px 6px 0;justify-content:center;align-items:center;font-size:11px;transition:left .2s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.sidebar-toggle:hover{color:var(--text);border-color:var(--accent)}.node{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;width:240px;display:flex;position:relative;box-shadow:0 2px 10px #00000059;container-type:inline-size}@container (width<=430px){.gen-footer .cost-text{display:none}}@container (width<=350px){.gen-footer .polish-btn{display:none}}.node-head{align-items:baseline;gap:8px;padding:8px 10px 6px;display:flex}.node-title{text-overflow:ellipsis;white-space:nowrap;cursor:text;max-width:150px;font-weight:600;overflow:hidden}.node-sub{color:var(--text-dim);white-space:nowrap;margin-left:auto;font-size:11px}.rename-input{background:var(--panel-2);border:1px solid var(--accent);border-radius:4px;outline:none;width:140px;padding:2px 6px}.node-body{flex-direction:column;flex:1;min-height:0;padding:0 10px 10px;display:flex}.node.resized .at-wrapper{flex:1;min-height:0;display:flex}.node.resized .text-input,.node.resized .prompt-input{resize:none;flex:1;min-height:60px}.node.resized .gen-body{flex:1;min-height:0}.resize-handle{background:var(--panel-2);border:1.5px solid var(--accent);opacity:0;z-index:10;border-radius:3px;width:10px;height:10px;transition:opacity .15s;position:absolute}.resize-handle:before{content:"";position:absolute;inset:-9px}.resize-handle{pointer-events:none}.node.selected .resize-handle,.node:hover .resize-handle{opacity:1;pointer-events:auto}.resize-se{cursor:nwse-resize;bottom:-5px;right:-5px}.resize-sw{cursor:nesw-resize;bottom:-5px;left:-5px}.resize-ne{cursor:nesw-resize;top:-5px;right:-5px}.resize-nw{cursor:nwse-resize;top:-5px;left:-5px}.resize-e{cursor:ew-resize;width:7px;height:24px;top:50%;right:-5px;transform:translateY(-50%)}.resize-w{cursor:ew-resize;width:7px;height:24px;top:50%;left:-5px;transform:translateY(-50%)}.resize-n{cursor:ns-resize;width:24px;height:7px;top:-5px;left:50%;transform:translate(-50%)}.resize-s{cursor:ns-resize;width:24px;height:7px;bottom:-5px;left:50%;transform:translate(-50%)}.asset-body{flex:1;justify-content:center;align-items:center;min-height:0;display:flex;position:relative}.asset-body img{object-fit:contain;background:#0a0a0c;width:100%;height:100%;display:block}.asset-body video{object-fit:contain;background:#000;width:100%;height:100%;display:block}.node:not(.resized) .asset-body img,.node:not(.resized) .asset-body video{background:#0a0a0c;width:auto;max-width:100%;height:auto;max-height:240px;margin:0 auto}.asset-body video{background:#000;width:100%;max-height:200px;display:block}.asset-body audio{width:100%;height:36px}.asset-placeholder{text-align:center;color:var(--text-dim);padding:28px 0}.upload-mask{background:#ffffff14;height:4px;position:absolute;inset:auto 0 0}.upload-bar{background:var(--accent);height:100%;transition:width .15s}.node-error{color:var(--danger);padding:6px 8px;font-size:12px;line-height:1.4}.text-input,.prompt-input{background:var(--panel-2);border:1px solid var(--border);width:100%;color:var(--text);font-family:inherit;line-height:1.5;font-size:inherit;border-radius:8px;outline:none;padding:8px}.text-input{resize:vertical}.text-input:focus,.prompt-input:focus{border-color:var(--accent)}.at-wrapper .prompt-input{color:#0000;caret-color:var(--text);resize:none;z-index:1;background:0 0;border-color:#0000;position:relative}.prompt-input::placeholder{color:var(--text-dim)}.concat-body{flex-direction:column;gap:8px;display:flex}.concat-inputs{flex-direction:column;gap:6px;display:flex}.concat-slot{background:var(--panel-2);border:1px dashed var(--border);border-radius:8px;align-items:center;gap:8px;min-height:36px;padding:6px 8px;display:flex}.concat-slot.filled{border-style:solid}.slot-label{color:var(--text-dim);flex-shrink:0;font-size:11px}.slot-thumb{object-fit:cover;background:#000;border-radius:4px;flex-shrink:0;width:44px;height:30px}.slot-name{text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12px;overflow:hidden}.slot-empty{color:var(--text-dim);font-size:12px}.concat-opts{gap:8px;display:flex}.opt{color:var(--text-dim);flex:1;align-items:center;gap:6px;font-size:12px;display:flex}.opt select{background:var(--panel-2);border:1px solid var(--border);min-width:0;color:var(--text);border-radius:6px;outline:none;flex:1;padding:4px 6px;font-size:12px}.concat-btn{border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer;border-radius:8px;padding:6px 0;font-weight:600}.concat-btn:disabled{opacity:.5;cursor:not-allowed}.concat-result{border-radius:8px;overflow:hidden}.concat-result video{background:#000;width:100%;max-height:200px;display:block}.crop-body{flex-direction:column;gap:8px;display:flex}.crop-preview{background:#000;border-radius:8px;width:100%;max-height:180px;display:block}.crop-sliders{flex-direction:column;gap:4px;display:flex}.crop-slider-row{align-items:center;gap:8px;display:flex}.crop-label{width:30px;color:var(--text-dim);flex-shrink:0;font-size:12px}.crop-slider-row input[type=range]{min-width:0;accent-color:var(--accent);flex:1}.crop-num{background:var(--panel-2);border:1px solid var(--border);width:56px;color:var(--text);text-align:right;font-variant-numeric:tabular-nums;border-radius:6px;flex-shrink:0;padding:2px 4px;font-size:12px}.crop-val{text-align:right;width:44px;color:var(--text-dim);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:12px}.crop-seg{color:var(--text-dim);text-align:center;font-size:12px}.crop-btn{border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer;border-radius:8px;padding:6px 0;font-weight:600}.crop-btn:disabled{opacity:.5;cursor:not-allowed}.crop-result{border:1px solid var(--border);border-radius:8px;overflow:hidden}.crop-result-title{color:var(--text-dim);background:var(--panel-2);padding:4px 8px;font-size:11px}.crop-result video{background:#000;width:100%;max-height:180px;display:block}.vue-flow__handle{background:var(--panel-2);border:1.5px solid var(--border);border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;display:flex}.vue-flow__handle:after{content:"+";color:var(--text-dim);pointer-events:none;font-size:13px;line-height:1}.vue-flow__handle:hover{border-color:var(--accent)}.vue-flow__handle:hover:after{color:var(--accent)}.vue-flow__handle-left{left:-10px}.vue-flow__handle-right{right:-10px}.vue-flow__edge.selected .lib-edge-base{stroke:var(--accent);stroke-width:2.5px}.edge-current{stroke:#8fd8ff;stroke-width:2px;stroke-linecap:round;stroke-dasharray:8 106;filter:drop-shadow(0 0 4px #7dd8ffe6);pointer-events:none;animation:1.3s linear infinite edge-flow}@keyframes edge-flow{0%{stroke-dashoffset:114px}to{stroke-dashoffset:0}}.vue-flow__connection-path{stroke:#8fd8ff;stroke-width:2px;stroke-dasharray:8 106;animation:1.3s linear infinite edge-flow}.gen-body{flex-direction:column;gap:8px;display:flex}.ref-strip{flex-wrap:wrap;gap:6px;display:flex}.ref-item{background:var(--panel-2);border:2px solid var(--border);border-radius:8px;justify-content:center;align-items:center;width:56px;height:56px;display:flex;position:relative;overflow:hidden}.ref-item img{object-fit:cover;width:100%;height:100%}.ref-index{color:#fff;text-shadow:0 0 3px #000;z-index:2;font-size:11px;font-weight:700;position:absolute;top:2px;left:4px}.ref-role{text-align:center;color:#fff;background:#0000008c;padding:1px 0;font-size:10px;position:absolute;bottom:0;left:0;right:0}.ref-icon{font-size:20px}.ref-remove{color:#fff;text-align:center;z-index:3;background:#0009;border-radius:50%;width:16px;height:16px;font-size:11px;line-height:16px;display:none;position:absolute;top:2px;right:2px}.ref-item:hover .ref-remove{display:block}.prompt-link{color:var(--text-dim);font-size:12px}.gen-footer{flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.gen-footer>*{flex-shrink:0}.gen-footer .model-select{flex:1 1 0;min-width:0}.gen-footer .params-select{flex:0 auto;min-width:0}.model-chip{background:var(--panel-2);border:1px solid var(--border);color:var(--text-dim);white-space:nowrap;border-radius:999px;padding:3px 10px}.gen-btn{background:var(--accent);color:#fff;white-space:nowrap;border-radius:8px;flex-shrink:0;padding:6px 14px;font-weight:600}.gen-btn:disabled{opacity:.45;cursor:not-allowed}.menu-overlay{z-index:100;position:fixed;inset:0}.context-menu{background:var(--panel-2);border:1px solid var(--border);z-index:101;border-radius:10px;min-width:160px;max-height:320px;padding:4px;font-size:12px;position:fixed;overflow-y:auto;box-shadow:0 8px 30px #00000080}.context-menu button{text-align:left;border-radius:6px;width:100%;padding:6px 8px;display:block}.context-menu button:hover{background:var(--accent-soft)}.context-menu button.danger{color:var(--danger)}.menu-title{color:var(--text-dim);padding:4px 8px 2px;font-size:11px}.menu-empty{color:var(--text-dim);padding:6px 8px;font-size:11px;line-height:1.5}.toast-host{z-index:200;flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.toast{background:var(--panel-2);border:1px solid var(--border);border-radius:8px;padding:10px 16px;box-shadow:0 6px 20px #00000080}.toast.error{border-color:var(--danger);color:var(--danger)}.vue-flow__controls{border-radius:8px;overflow:hidden;box-shadow:0 2px 10px #00000059}.vue-flow__controls-button{background:var(--panel-2);border-bottom:1px solid var(--border);fill:var(--text-dim)}.vue-flow__minimap{background:var(--panel);border-radius:8px}.minimap-toggle{z-index:15;background:var(--panel-2);border:1px solid var(--border);width:32px;height:32px;color:var(--text-dim);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;font-size:15px;transition:bottom .2s;display:flex;position:absolute;left:12px}.minimap-toggle:hover{border-color:var(--accent);color:var(--text)}.settings-page{max-width:860px;height:100%;margin:0 auto;padding:24px 32px 60px;overflow-y:auto}.settings-head{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.settings-head h1{margin:0;font-size:20px}.settings-tabs{border-bottom:1px solid var(--border);gap:6px;margin-bottom:20px;display:flex}.settings-tabs button{color:var(--text-dim);border-bottom:2px solid #0000;padding:8px 16px}.settings-tabs button.active{color:var(--text);border-bottom-color:var(--accent)}.settings-section{margin-bottom:28px}.section-head{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.section-head h2{color:var(--text-dim);margin:0;font-size:14px;font-weight:600}.section-empty{color:var(--text-dim);text-align:center;border:1px dashed var(--border);border-radius:10px;padding:18px}.tb-btn.accent{background:var(--accent);color:#fff}.tb-btn.accent:hover{opacity:.9;color:#fff}.tb-btn.accent:disabled{opacity:.4}.tb-btn.danger{color:var(--danger)}.provider-card,.model-row{background:var(--panel);border:1px solid var(--border);border-radius:10px;align-items:center;gap:12px;margin-bottom:8px;padding:12px 14px;display:flex}.provider-info,.model-info{flex:1;min-width:0}.provider-name,.model-title{flex-wrap:wrap;align-items:center;gap:8px;font-weight:600;display:flex}.provider-sub,.model-sub{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:12px;overflow:hidden}.protocol-badge{background:var(--accent-soft);color:var(--accent);border-radius:4px;padding:1px 6px;font-size:11px;font-weight:600}.provider-actions,.model-actions{flex-shrink:0;gap:4px;display:flex}.model-tag{color:#ffc04d;background:#ffbe3c2e;border-radius:4px;padding:1px 5px;font-size:10px;font-weight:600}.model-tag.default{background:var(--accent-soft);color:var(--accent)}.model-tag.off{color:var(--danger);background:#ff626226}.dialog-mask{z-index:300;background:#0000008c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.dialog{background:var(--panel);border:1px solid var(--border);border-radius:14px;width:380px;padding:20px}.dialog h3{margin:0 0 14px;font-size:15px}.form-label{color:var(--text-dim);margin:10px 0 4px;font-size:12px;display:block}.form-input{background:var(--panel-2);border:1px solid var(--border);width:100%;color:var(--text);border-radius:8px;outline:none;padding:8px 10px}.form-input:focus{border-color:var(--accent)}.form-hint{color:var(--text-dim);margin:10px 0 0;font-size:12px;line-height:1.5}.dialog-actions{justify-content:flex-end;gap:8px;margin-top:18px;display:flex}.polish-textarea{resize:vertical;min-height:120px;font-family:monospace;font-size:12px;line-height:1.6}.model-select{position:relative}.model-chip.current{background:var(--panel-2);border:1px solid var(--border);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;max-width:100%;padding:4px 10px;display:flex}.model-chip.current>span:first-child{text-overflow:ellipsis;min-width:0;overflow:hidden}.model-chip.current .caret{flex-shrink:0}.model-chip.current .dim{color:var(--text-dim)}.caret{color:var(--text-dim);font-size:10px}.model-panel{background:var(--panel-2);border:1px solid var(--border);z-index:50;border-radius:10px;width:260px;max-height:300px;padding:6px;position:absolute;bottom:calc(100% + 8px);left:0;overflow-y:auto;box-shadow:0 8px 30px #00000080}.model-empty{color:var(--text-dim);text-align:center;padding:14px 8px;font-size:12px;line-height:1.6}.model-item{text-align:left;border-radius:6px;justify-content:space-between;align-items:center;gap:8px;width:100%;padding:8px 10px;display:flex}.model-item:hover,.model-item.active{background:var(--accent-soft)}.model-est{color:var(--text-dim);flex-shrink:0;font-size:11px}.params-chip{background:var(--panel-2);border:1px solid var(--border);color:var(--text-dim);white-space:nowrap;text-overflow:ellipsis;border-radius:999px;max-width:100%;padding:4px 10px;display:inline-block;overflow:hidden}.params-chip:hover{color:var(--text)}.params-select{position:relative}.params-panel{z-index:50;width:264px;max-height:320px;position:absolute;bottom:calc(100% + 8px);left:50%;overflow-y:auto;transform:translate(-50%);box-shadow:0 8px 30px #00000080}.cost-text{color:#ffc04d;white-space:nowrap;font-size:11px}.params-popover{background:var(--panel-2);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:10px;padding:10px 12px;display:flex}.params-label{color:var(--text-dim);margin-bottom:5px;font-size:11px}.params-grid{flex-wrap:wrap;gap:5px;display:flex}.params-option{background:var(--panel);border:1px solid var(--border);color:var(--text-dim);border-radius:6px;padding:5px 12px}.params-option:hover{color:var(--text)}.params-option.active{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.params-row{align-items:center;gap:8px;display:flex}.params-slider{accent-color:var(--accent);flex:1}.params-value{color:var(--text);text-align:right;min-width:30px}.gen-btn.cancel{background:var(--panel-2);color:var(--danger);border:1px solid var(--border)}.gen-btn.waiting{background:var(--panel-2);color:var(--text-dim);border:1px solid var(--border);cursor:not-allowed}.result-area{background:#000;border-radius:8px;position:relative;overflow:hidden}.result-area video{width:100%;max-height:260px;display:block}.result-pending{color:var(--text-dim);background:var(--panel-2);justify-content:center;align-items:center;gap:8px;padding:34px 10px;display:flex}.elapsed{color:var(--accent);font-variant-numeric:tabular-nums;font-size:12px}.spinner{border:2px solid var(--accent-soft);border-top-color:var(--accent);border-radius:50%;width:14px;height:14px;animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.version-pager{color:#fff;background:#0000008c;border-radius:999px;align-items:center;gap:8px;padding:2px 8px;font-size:11px;display:flex;position:absolute;bottom:6px;left:50%;transform:translate(-50%)}.version-pager.static{background:var(--panel-2);color:var(--text-dim);justify-content:center;margin-top:4px;position:static;transform:none}.version-pager button{color:#fff;padding:2px 6px;font-size:14px}.version-pager.static button{color:var(--text)}.version-pager button:disabled{opacity:.3}.node-badge{color:var(--accent);font-size:11px;font-weight:600}.asset-blank{flex-direction:column;gap:8px;display:flex}.blank-actions{gap:6px;display:flex}.blank-btn{border:1px dashed var(--border);color:var(--text-dim);background:var(--panel-2);white-space:nowrap;border-radius:8px;flex:1;padding:12px 0}.blank-btn:hover{color:var(--text);border-color:var(--accent)}.blank-btn.accent{color:var(--accent)}.blank-hint{color:var(--text-dim);text-align:center;font-size:11px;line-height:1.6}.ai-panel{border-top:1px solid var(--border);flex-direction:column;gap:8px;padding-top:8px;display:flex}.ai-actions{justify-content:flex-end;display:flex}.text-footer{align-items:center;gap:6px;margin-top:8px;display:flex}.text-btn{background:var(--panel-2);border:1px solid var(--border);color:var(--text-dim);white-space:nowrap;border-radius:8px;padding:5px 10px}.text-btn:hover{color:var(--text)}.text-btn.accent{color:var(--accent);border-color:var(--accent)}.text-btn:disabled{opacity:.4}.polish-btn{background:var(--panel-2);border:1px solid var(--border);color:var(--accent);white-space:nowrap;border-radius:8px;flex-shrink:0;padding:5px 9px}.polish-btn:hover{border-color:var(--accent)}.polish-btn:disabled{opacity:.4}.at-wrapper{position:relative}.at-popup{background:var(--panel-2);border:1px solid var(--border);z-index:50;border-radius:10px;max-height:180px;padding:4px;position:absolute;bottom:calc(100% + 4px);left:0;right:0;overflow-y:auto}.at-item{text-align:left;border-radius:6px;align-items:center;gap:6px;width:100%;padding:7px 8px;display:flex}.at-item:hover{background:var(--accent-soft)}.at-type{color:var(--text-dim);margin-left:auto;font-size:11px}.at-empty{color:var(--text-dim);text-align:center;padding:10px}.prompt-highlight{white-space:pre-wrap;word-break:break-word;border:1px solid var(--border);color:var(--text);pointer-events:none;-webkit-user-select:none;user-select:none;line-height:1.5;font-size:inherit;border-radius:8px;padding:8px;font-family:inherit;position:absolute;inset:0;overflow:hidden}.at-token{font-weight:600}.drama-btn{border-color:var(--accent);color:var(--accent);white-space:nowrap;flex-shrink:0;font-weight:600}.drama-dialog{width:560px;max-height:82vh;overflow-y:auto}.drama-text{resize:vertical;min-height:160px;font-size:13px;line-height:1.6}.drama-row{grid-template-columns:1fr 1fr 1fr;align-items:end;gap:10px;display:grid}.drama-range{width:100%;accent-color:var(--accent)}.drama-logline{color:var(--text);margin:0 0 4px;font-size:13px}.drama-style{color:var(--text-dim);margin:0 0 6px;font-size:12px}.drama-chars{flex-direction:column;gap:6px;display:flex}.drama-char{background:var(--panel-2);border:1px solid var(--border);border-radius:8px;gap:8px;padding:8px 10px;font-size:12px;display:flex}.drama-char b{color:var(--accent);flex-shrink:0}.drama-char span{color:var(--text-dim);line-height:1.5}.drama-shots{flex-direction:column;gap:6px;max-height:300px;display:flex;overflow-y:auto}.drama-shot{background:var(--panel-2);border:1px solid var(--border);border-radius:8px;padding:8px 10px;font-size:12px}.shot-head{justify-content:space-between;margin-bottom:4px;display:flex}.shot-head b{color:var(--accent)}.shot-meta{color:var(--text-dim);font-size:11px}.shot-visual{color:var(--text);line-height:1.5}.shot-dialogue{color:var(--text-dim);margin-top:3px}.drama-generating{color:var(--text-dim);font-size:12px;animation:1.2s ease-in-out infinite pulse}.tb-btn.primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.tb-btn.primary:disabled{opacity:.5;cursor:not-allowed}.agent-adv-toggle{border:1px dashed var(--border);background:var(--panel-2);width:100%;color:var(--text-dim);border-radius:8px;justify-content:space-between;align-items:center;margin-top:12px;padding:9px 12px;font-size:12px;transition:all .15s;display:flex}.agent-adv-toggle:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.agent-fill{color:var(--accent);cursor:pointer;margin-left:8px;font-weight:400}.redo-bar{justify-content:space-between;align-items:center;gap:6px;margin-top:6px;display:flex}.redo-btn{color:var(--text-dim);border:1px solid var(--border);white-space:nowrap;border-radius:999px;padding:3px 8px;font-size:11px}.redo-btn:hover,.redo-btn.active{color:var(--accent);border-color:var(--accent)}.redo-ref{color:var(--accent);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.redo-panel{border-top:1px dashed var(--border);flex-direction:column;gap:6px;margin-top:6px;padding-top:8px;display:flex}.redo-ref-hint{color:var(--accent);font-size:11px;line-height:1.4}.redo-ref-hint.dim{color:var(--text-dim)}.redo-style-tip{color:var(--text-dim);background:var(--accent-soft);border-radius:6px;padding:5px 8px;font-size:11px;line-height:1.4}.asset-body.detail{outline:2px solid var(--accent);outline-offset:-2px;border-radius:8px}.detail-float{background:var(--panel);border:1px solid var(--border);z-index:20;cursor:default;border-radius:12px;flex-direction:column;gap:8px;width:calc(100% + 96px);min-width:380px;max-width:760px;padding:12px 14px;animation:.16s ease-out detailFloatIn;display:flex;position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%);box-shadow:0 12px 36px #0000008c}@keyframes detailFloatIn{0%{opacity:0;transform:translate(-50%,-6px)}to{opacity:1;transform:translate(-50%)}}.detail-float-head{border-bottom:1px dashed var(--border);justify-content:space-between;align-items:center;gap:8px;padding-bottom:6px;display:flex}.detail-float-head b{color:var(--accent);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.detail-field{flex-direction:column;gap:3px;display:flex}.detail-field label{color:var(--text-dim);font-size:11px}.detail-field input,.detail-field textarea{box-sizing:border-box;background:var(--panel-2);border:1px solid var(--border);width:100%;color:var(--text);border-radius:6px;padding:5px 8px;font-size:12px}.detail-field textarea{resize:vertical;min-height:56px;font-family:inherit}.detail-actions{gap:6px;display:flex}.compose-btn{white-space:nowrap;flex-shrink:0}.batch-btn{border-color:var(--accent);color:var(--accent);white-space:nowrap;flex-shrink:0;font-weight:600}.batch-btn.active{background:var(--accent);color:#fff}.batch-btn.active:hover{opacity:.9;color:#fff}.sidebar-settings{border-top:1px solid var(--border);color:var(--text-dim);white-space:nowrap;margin-top:auto;padding:10px 12px;font-size:12px;text-decoration:none;display:block}.agent-scope{color:var(--accent);border:1px solid var(--accent);vertical-align:2px;border-radius:999px;margin-left:8px;padding:1px 8px;font-size:11px;font-weight:400}.shot-beat{color:var(--accent);border:1px solid var(--accent);border-radius:4px;margin-left:6px;padding:0 4px;font-size:10px;font-weight:400}.shot-link{color:var(--text-dim);margin-top:3px;font-size:11px;line-height:1.4}.tb-btn.danger{color:var(--danger);white-space:nowrap}.tb-btn.danger:hover{border-color:var(--danger);background:#ff505014}.tb-btn.danger-solid{background:var(--danger);border-color:var(--danger);color:#fff;white-space:nowrap;font-weight:600}.drama-shot.dup{border-color:var(--danger);opacity:.65}.shot-dup{color:var(--danger);margin-bottom:3px;font-size:11px}.agent-skill-desc{margin-top:4px}.genre-chips{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.genre-chips .params-option{cursor:pointer;padding:4px 10px;font-size:12px}.drama-dialog.wide{flex-direction:column;width:min(1720px,97vw);max-height:94vh;display:flex;position:relative;overflow:hidden}.drama-head{flex-direction:column;gap:8px;margin-bottom:12px;display:flex}.drama-title-edit{border:none;border-bottom:1px solid var(--border);color:var(--text);background:0 0;padding:4px 0;font-size:18px;font-weight:700}.drama-logline-edit,.drama-style-edit{background:var(--panel-2);border:1px solid var(--border);color:var(--text);resize:vertical;border-radius:8px;padding:8px 10px;font-family:inherit;font-size:13px;line-height:1.6}.drama-style-edit{color:var(--text-dim)}.drama-tabs{border-bottom:1px solid var(--border);flex-shrink:0;gap:3px;margin-bottom:0;display:flex}.drama-tab{background:var(--panel-2);border:1px solid var(--border);color:var(--text-dim);cursor:pointer;border-bottom:none;border-radius:10px 10px 0 0;padding:9px 20px;font-size:14px;position:relative;top:1px}.drama-tab:hover{color:var(--text)}.drama-tab.active{background:var(--panel);color:var(--accent);border-bottom:1px solid var(--panel);z-index:1;font-weight:600}.drama-tab-body{flex:1;min-height:380px;padding:12px 4px;overflow-y:auto}.shot-table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:13px}.shot-table th{text-align:left;color:var(--text-dim);border-bottom:1px solid var(--border);white-space:nowrap;background:var(--panel);z-index:1;padding:8px 10px;font-weight:600;position:sticky;top:0}.shot-table td{border-bottom:1px solid var(--border);vertical-align:top;color:var(--text);padding:10px;line-height:1.65}.shot-table tr:hover td{background:var(--panel-2)}.shot-table tr.dup td{opacity:.55}.col-idx{width:62px}.col-dur{white-space:nowrap;width:78px}.col-visual{width:24%}.col-size{width:92px}.col-light{width:13%}.col-dialogue{width:18%}.col-sound{width:12%}.col-camera{width:104px}.col-prompt{width:11%}.col-ops{width:82px}.dur-wrap{background:var(--panel-2);border:1px solid var(--border);color:var(--text-dim);border-radius:6px;align-items:center;padding:0 7px 0 4px;font-size:12px;display:inline-flex}.dur-wrap:focus-within{border-color:var(--accent)}.dur-input{text-align:right;width:22px;color:var(--text);background:0 0;border:none;outline:none;padding:6px 0;font-size:13px}.dur-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.dur-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.cell-view{cursor:pointer;word-break:break-word;border-radius:6px;min-height:22px;margin:-4px;padding:4px;transition:background .12s;display:block}.cell-view:hover{background:var(--accent-soft)}.cell-view.empty{color:var(--text-dim);opacity:.6}.cell-edit,.cell-input,.cell-select{box-sizing:border-box;background:var(--panel-2);border:1px solid var(--accent);width:100%;color:var(--text);border-radius:6px;padding:6px 8px;font-family:inherit;font-size:13px;line-height:1.6}.cell-edit{resize:vertical}.cell-input{border-color:var(--border)}.cell-select{border-color:var(--border);padding:4px}.speaker-token{color:#7ec8ff;font-weight:600}.op-btn{border:1px solid var(--border);color:var(--text-dim);cursor:pointer;background:0 0;border-radius:6px;margin-right:4px;padding:2px 6px;font-size:12px}.op-btn:hover{color:var(--accent);border-color:var(--accent)}.op-btn.danger:hover{color:var(--danger);border-color:var(--danger)}.prompt-preview{color:var(--text-dim)}.prompt-preview:hover{color:var(--accent)}.edit-float-mask{z-index:10;border-radius:inherit;background:#00000059;position:absolute;inset:0}.edit-float{background:var(--panel);border-left:1px solid var(--border);z-index:11;flex-direction:column;gap:10px;width:420px;max-width:45%;padding:16px;animation:.18s ease-out editFloatIn;display:flex;position:absolute;top:0;bottom:0;right:0;box-shadow:-12px 0 32px #00000073}@keyframes editFloatIn{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}.edit-float-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.edit-float-head b{color:var(--accent);font-size:14px;line-height:1.5}.edit-float-body{border-color:var(--border);flex:1;min-height:200px;font-size:14px}.edit-float-body:focus{border-color:var(--accent)}.edit-float-foot{justify-content:space-between;align-items:center;display:flex}.edit-float-hint{color:var(--text-dim);font-size:11px}.asset-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;display:grid}.asset-card{background:var(--panel-2);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:6px;padding:14px;display:flex}.asset-card-head{justify-content:space-between;align-items:center;gap:6px;display:flex}.asset-name{color:var(--accent);cursor:text;font-size:14px}.asset-name-input{font-weight:600}.asset-label{color:var(--text-dim);font-size:12px}.asset-card .cell-edit{border-color:var(--border);font-size:13px}.asset-card .cell-edit:focus{border-color:var(--accent)}.asset-add{border:1px dashed var(--border);color:var(--text-dim);cursor:pointer;background:0 0;border-radius:12px;padding:28px 0;font-size:14px}.asset-add:hover{border-color:var(--accent);color:var(--accent)}.face-mgr{flex-direction:column;flex:1;gap:10px;min-height:0;padding:8px;display:flex;overflow-y:auto}.face-section-title{color:var(--text-dim);justify-content:space-between;align-items:center;gap:6px;margin-bottom:6px;font-size:12px;display:flex}.face-input{background:var(--panel-2);border:1px solid var(--border);min-width:0;color:var(--text);border-radius:6px;outline:none;flex:1;padding:6px 8px}.face-input:focus{border-color:var(--accent)}.face-btn{background:var(--panel-2);border:1px solid var(--border);color:var(--text);border-radius:6px;flex-shrink:0;padding:6px 10px}.face-btn:hover{border-color:var(--accent);color:var(--accent)}.face-btn:disabled{opacity:.5;cursor:not-allowed}.face-group-add{gap:6px;margin-bottom:6px;display:flex}.face-group-list{flex-direction:column;gap:4px;display:flex}.face-group-item{color:var(--text-dim);text-align:left;border-radius:8px;align-items:center;gap:6px;padding:7px 8px;display:flex}.face-group-item:hover{background:var(--panel-2)}.face-group-item.active{background:var(--panel-2);color:var(--text)}.face-group-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.face-group-type{background:var(--accent-soft);color:var(--accent);border-radius:4px;flex-shrink:0;padding:1px 6px;font-size:11px}.face-group-del{color:var(--text-dim);flex-shrink:0;padding:0 2px}.face-group-del:hover{color:var(--danger)}.face-assets{flex-direction:column;display:flex}.face-asset-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.face-asset-cell{aspect-ratio:3/4;background:var(--panel-2);border:1px solid var(--border);border-radius:8px;position:relative;overflow:hidden}.face-asset-cell.draggable{cursor:grab}.face-asset-cell.draggable:active{cursor:grabbing}.face-asset-cell img{object-fit:cover;width:100%;height:100%}.face-asset-ph{justify-content:center;align-items:center;font-size:22px;display:flex;position:absolute;inset:0}.face-asset-status{color:var(--text-dim);background:#0009;border-radius:4px;padding:1px 6px;font-size:10px;position:absolute;top:4px;left:4px}.face-asset-status.active{color:#4cd08a}.face-asset-status.failed{color:var(--danger)}.face-asset-ops{justify-content:center;gap:6px;display:flex;position:absolute;bottom:22px;left:0;right:0}.face-mini{color:var(--text);background:#000000a6;border-radius:4px;padding:2px 8px;font-size:11px}.face-mini:hover{background:var(--accent)}.face-mini.danger:hover{background:var(--danger)}.face-asset-name{text-overflow:ellipsis;white-space:nowrap;background:#0009;padding:3px 6px;font-size:11px;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.face-empty{color:var(--text-dim);text-align:center;padding:18px 8px;font-size:12px;line-height:1.6}.picker-mask{z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.picker-panel{background:var(--panel);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:10px;width:480px;max-width:92vw;max-height:80vh;padding:14px;display:flex;overflow-y:auto}.picker-head{justify-content:space-between;align-items:center;font-size:14px;font-weight:600;display:flex}.picker-close{color:var(--text-dim);padding:2px 6px}.picker-close:hover{color:var(--danger)}.picker-error{color:var(--danger);font-size:12px}.picker-groups{flex-wrap:wrap;gap:6px;display:flex}.picker-group{background:var(--panel-2);border:1px solid var(--border);color:var(--text-dim);border-radius:6px;padding:5px 10px}.picker-group.active{border-color:var(--accent);color:var(--text)}.picker-gtype{color:var(--accent);margin-left:4px;font-size:10px}.picker-assets{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.picker-asset{aspect-ratio:3/4;background:var(--panel-2);border:1px solid var(--border);cursor:pointer;border-radius:8px;position:relative;overflow:hidden}.picker-asset:hover{border-color:var(--accent)}.picker-asset img{object-fit:cover;width:100%;height:100%}.picker-ph{justify-content:center;align-items:center;font-size:20px;display:flex;position:absolute;inset:0}.picker-name{text-overflow:ellipsis;white-space:nowrap;background:#0009;padding:3px 6px;font-size:11px;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.picker-empty{color:var(--text-dim);text-align:center;padding:16px 8px;font-size:12px;line-height:1.6}.picker-loading{color:var(--text-dim);text-align:center;padding:8px;font-size:12px}:root .save-indicator{white-space:nowrap;color:#91ae99;font-size:11px}:root .batch-alert{color:#f1c586;background:#332b20;border-bottom:1px solid #5a4830;padding:8px 16px;font-size:12px}.site-page{scroll-behavior:smooth;background:#101315;height:100%;font-size:14px;overflow:hidden auto}.site-page a{color:inherit;text-decoration:none}.site-page .eyebrow{color:#a4b395;letter-spacing:.12em;font-size:10px;line-height:1.8}.site-nav{border-bottom:1px solid #ffffff0c;justify-content:space-between;align-items:center;gap:24px;min-height:88px;padding:0 5.5%;display:flex}.site-brand{letter-spacing:-.8px;white-space:nowrap;align-items:center;gap:9px;font-size:23px;font-weight:750;display:inline-flex}.site-brand:first-letter{color:var(--accent)}.site-nav nav,.nav-actions{align-items:center;gap:30px;display:flex}.site-nav nav{color:#a6ada9;font-size:13px}.site-nav nav a:hover,.nav-actions>a:not(.site-button):hover{color:var(--accent)}.nav-actions{gap:22px;font-size:13px}.site-page .site-button{white-space:nowrap;background:var(--accent);color:#18240e;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:30px;min-height:52px;padding:14px 24px;font-size:14px;font-weight:650;transition:transform .2s,background .2s,box-shadow .2s;display:inline-flex}.site-page .site-button:hover:not(:disabled){background:#c9ff7b;transform:translateY(-2px);box-shadow:0 8px 32px #b9f35e20}.site-page .site-button.secondary{color:#dbe1d7;background:#ffffff03;border-color:#fff2}.site-page .site-button.secondary:hover{box-shadow:none;background:#ffffff09}.site-page .site-button.small{min-height:40px;padding:10px 17px;font-size:12px}.hero{grid-template-columns:1fr 1.1fr;align-items:center;gap:56px;max-width:1600px;min-height:700px;margin:auto;padding:100px 5.5% 96px;display:grid;position:relative}.hero:before{content:"";pointer-events:none;background:radial-gradient(#7aad3515,#0000 67%);width:650px;max-width:100%;height:650px;position:absolute;top:-140px;right:0}.hero-copy{z-index:1;position:relative}.hero .eyebrow{color:#b9ce9d;letter-spacing:.07em;border:1px solid #b9f35e20;border-radius:30px;align-items:center;gap:10px;padding:7px 14px;display:inline-flex}.live-dot{background:var(--accent);border-radius:50%;width:6px;height:6px;box-shadow:0 0 10px #b9f35e70}.hero h1{letter-spacing:-2.5px;margin:27px 0 24px;font-size:clamp(36px,3.8vw,66px);font-weight:720;line-height:1.25}.site-page em{color:var(--accent);font-style:normal}.hero-copy>p{color:#9ba59c;text-wrap:balance;font-size:15px;line-height:1.9}.hero-actions{flex-wrap:wrap;gap:13px;margin-top:32px;display:flex}.hero-footnote{color:#6f7b71;gap:12px;margin-top:27px;font-size:11px;display:flex}.canvas-showcase{background:#171d19;border:1px solid #46513a;border-radius:17px;height:450px;position:relative;transform:perspective(1000px)rotateY(-6deg)rotateX(3deg);box-shadow:0 35px 80px #0008,0 0 70px #b9f35e09}.preview-top,.preview-bottom{color:#c8d1c2;justify-content:space-between;align-items:center;gap:16px;padding:15px 19px;font-size:10px;display:flex}.preview-top{border-bottom:1px solid #ffffff0a}.preview-status{color:#b7e377;border:1px solid #b9f35e22;border-radius:5px;padding:4px 7px;font-size:9px}.preview-grid{background:radial-gradient(#7e926337 1px,#0000 1px) 0 0/18px 18px;height:347px;position:relative;overflow:hidden}.preview-grid>svg{width:100%;height:100%;position:absolute;inset:0}.preview-grid path{fill:none;stroke:#a0c26c;stroke-width:1.4px;stroke-dasharray:7 5;opacity:.7;animation:14s linear infinite flow-dash}.preview-card{background:#242e23;border:1px solid #4c5c3a;border-radius:8px;position:absolute;overflow:hidden;box-shadow:0 8px 20px #0004}.preview-card small{color:#c9d2c2;padding:10px;font-size:9px;display:block}.preview-card small span{float:right;color:#91ab75;font-size:8px}.story-card{width:180px;padding:7px;top:62px;left:5%;transform:rotate(-3deg)}.story-card small{color:#b9f35e}.story-card h3{margin:7px 10px;font-size:12px}.story-card p{color:#98a58f;margin:9px 10px 15px;font-size:10px;line-height:1.9}.preview-tags{color:#aec888;border-top:1px solid #ffffff13;margin:10px;padding-top:10px;font-size:8px}.character-card{width:135px;top:18px;right:5%;transform:rotate(5deg)}.planet-art{background:radial-gradient(circle at 70% 5%,#8a6bb37a,#0000 60%),#212337;height:80px;position:relative;overflow:hidden}.planet{background:linear-gradient(140deg,#a9aaf0,#766395 45%,#181831 95%);border-radius:50%;width:54px;height:54px;position:absolute;top:15px;left:42px;box-shadow:-8px -4px 25px #989ce33b}.orbit{border:2px solid #acafe579;border-radius:50%;width:102px;height:20px;position:absolute;top:32px;left:17px;transform:rotate(-30deg)}.shot-card{width:175px;top:143px;left:36%;transform:rotate(2deg)}.city-art{background:linear-gradient(#353b43,#ad8d6c 80%);justify-content:center;align-items:flex-end;gap:6px;height:102px;display:flex;position:relative;overflow:hidden}.city-art i{z-index:2;background:repeating-linear-gradient(0deg,#1b292a 0 9px,#49534b 10px 11px);width:19px;height:62px;display:block;position:relative;box-shadow:5px 0 #151d22}.city-art i:nth-child(2n){width:22px;height:86px}.city-art i:nth-child(3){width:30px;height:44px}.sun{background:#e2b780;border-radius:50%;width:44px;height:44px;position:absolute;top:18px;left:53px;box-shadow:0 0 30px #dfb97e}.video-card{width:152px;bottom:17px;right:3%;transform:rotate(-3deg)}.video-art{background:linear-gradient(25deg,#111e23,#486c65 45%,#1c3e3d 55%,#101e22);place-items:center;height:70px;display:grid}.video-art>span{color:#e2f0da;border:1px solid #c7dfc780;border-radius:50%;place-items:center;width:30px;height:30px;display:grid}.preview-progress{background:#b9f35e;height:3px}.floating-label{color:#b9d894;background:#182516;border:1px solid #b9f35e40;border-radius:20px;padding:9px 13px;font-size:9px;animation:6s ease-in-out infinite label-float;position:absolute;bottom:27px;left:6%}.preview-bottom{color:#77856e;border-top:1px solid #ffffff0a;font-size:9px}.workflow-section{border-top:1px solid #ffffff0c;max-width:1600px;margin:auto;padding:72px 5.5% 95px;scroll-margin-top:20px}.section-heading{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:38px;display:flex}.site-page h2{letter-spacing:-1px;font-size:28px;font-weight:620;line-height:1.4}.section-heading h2{margin:12px 0 0}.section-heading>p{color:#8e998f;font-size:12px}.feature-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.feature-grid article{background:linear-gradient(140deg,#20281e55,#161b1755);border:1px solid #ffffff0f;border-radius:14px;padding:29px;transition:transform .25s,border-color .25s}.feature-grid article:hover{border-color:#b9f35e40;transform:translateY(-5px)}.feature-top{justify-content:space-between;align-items:center;display:flex}.feature-top>span{color:#b9f35e;background:#b9f35e0a;border:1px solid #b9f35e24;border-radius:11px;place-items:center;width:42px;height:42px;font-size:23px;display:grid}.feature-top small{color:#697365;font-family:monospace}.feature-grid h3{margin:25px 0 12px;font-size:18px;font-weight:600}.feature-grid p{color:#8e9a8c;margin:0;font-size:12px;line-height:1.9}.capability-banner{background:radial-gradient(at 0 0,#63862a15,#0000 80%);border:1px solid #aaca7230;border-radius:16px;grid-template-columns:1fr 1fr;gap:70px;margin:0 5.5% 70px;padding:44px;display:grid}.capability-banner h2{margin-bottom:0}.capability-tags{grid-template-columns:1fr 1fr;align-content:center;gap:12px;display:grid}.capability-tags span{color:#b7c2ad;background:#ffffff03;border:1px solid #ffffff0b;border-radius:8px;padding:16px;font-size:12px}.home-cta{letter-spacing:-.5px;justify-content:space-between;align-items:center;padding:30px 5.5% 90px;font-size:25px;display:flex}.site-footer{color:#6f7d6c;border-top:1px solid #ffffff0c;justify-content:space-between;padding:25px 5.5%;font-size:11px;display:flex}.auth-page{background:radial-gradient(at 0 70%,#6d942715,#0000 65%),#101315}.auth-brand{margin:32px 5.5%}.auth-layout{grid-template-columns:1.1fr 1fr;align-items:center;gap:100px;max-width:1100px;margin:50px auto 70px;padding:0 40px;display:grid}.auth-intro h1{letter-spacing:-1.5px;font-size:39px;font-weight:650;line-height:1.5}.auth-intro>p{color:#8e9b86;line-height:1.9}.auth-orb{color:#c5f579;background:radial-gradient(circle at 35% 35%,#4f762c,#182217 60%);border:1px solid #b9f35e28;border-radius:50%;place-items:center;width:180px;height:180px;margin-top:45px;font-size:80px;display:grid;box-shadow:inset 0 0 50px #b9f35e17,0 0 70px #b9f35e0a}.auth-form{background:#1a211be0;border:1px solid #ffffff10;border-radius:18px;padding:36px;box-shadow:0 20px 60px #0003}.auth-form h2{margin:12px 0;font-size:26px}.auth-form>p,.account-panel p{color:#8f9b87;font-size:12px;line-height:1.8}.site-page label{color:#c6cdbf;flex-direction:column;gap:9px;margin-top:23px;font-size:12px;display:flex}.site-page input,.site-page select{color:#e5eadf;background:#111611;border:1px solid #ffffff18;border-radius:8px;width:100%;min-width:0;padding:13px 14px;font-size:13px}.site-page input:disabled{color:#7e8976}.password-input{display:flex;position:relative}.password-input input{padding-right:62px}.password-input button{color:#92a382;height:100%;font-size:11px;position:absolute;top:0;right:10px}.auth-form>button{width:100%;margin-top:27px}.auth-form .auth-switch{text-align:center;margin-top:22px}.auth-switch a{color:var(--accent)}.auth-form>small{color:#728267;border-top:1px solid #ffffff0c;padding-top:13px;font-size:10px;line-height:1.8;display:block}.site-page .form-error{color:#ffaaa0;background:#c53d2715;border:1px solid #ff8b8720;border-radius:8px;padding:12px 15px;font-size:12px;line-height:1.7}.site-page .success-message{color:#b9e888;border:1px solid #b9f35e20;border-radius:8px;padding:12px 15px}.account-main{max-width:1150px;margin:auto;padding:55px 30px 80px}.account-main>h1{letter-spacing:-1px;margin:12px 0;font-size:34px}.account-main>p{color:#8e9a85;font-size:13px}.account-grid{grid-template-columns:1fr 1fr;gap:24px;margin:30px 0;display:grid}.account-panel{background:#19201a;border:1px solid #ffffff10;border-radius:14px;padding:28px}.account-panel h2{letter-spacing:0;margin:0 0 12px;font-size:20px}.account-panel>button{margin-top:10px}.user-heading{justify-content:space-between;align-items:center;gap:30px;display:flex}.user-heading h2 small{color:#7e8f71;margin-left:15px;font-size:11px;font-weight:400}.user-heading>input{max-width:240px}.table-scroll{overflow-x:auto}.user-panel table{text-align:left;border-collapse:collapse;width:100%;margin-top:18px;font-size:12px}.user-panel th{color:#899b7c;border-bottom:1px solid #ffffff10;padding:14px 10px;font-size:11px;font-weight:400}.user-panel td{white-space:nowrap;border-bottom:1px solid #ffffff08;padding:18px 10px}.user-panel td small{color:#7f8a76;margin-top:7px;font-size:11px;display:block}.user-panel td select{width:auto;min-width:105px;padding:8px;font-size:11px}.user-panel td button{border:1px solid #ffffff18;border-radius:6px;padding:8px 12px}.user-panel td button:hover{border-color:#b9f35e55}.status-active{color:#b9df86}.status-disabled{color:#a18c80}@keyframes flow-dash{to{stroke-dashoffset:-120px}}@keyframes label-float{50%{transform:translateY(-6px)}}@media (width>=1600px){.capability-banner,.home-cta{max-width:1424px;margin-left:auto;margin-right:auto}}@media (width<=1100px){.hero{gap:25px;min-height:630px;padding-top:70px}.hero h1{letter-spacing:-1.5px;font-size:40px}.canvas-showcase{height:410px}.preview-grid{height:308px}.story-card{width:150px;left:3%}.shot-card{width:148px;left:33%}.video-card{width:124px;right:2%}.auth-layout{gap:45px}}@media (width<=800px){.site-nav{gap:15px;min-height:75px;padding:0 6%}.site-nav nav{display:none}.nav-actions{gap:16px}.site-brand{font-size:20px}.hero{grid-template-columns:1fr;gap:52px;padding:55px 6% 70px}.hero h1{font-size:clamp(36px,6vw,52px)}.canvas-showcase{width:100%;max-width:600px;height:450px;margin:auto;transform:none}.preview-grid{height:347px}.story-card{width:180px;left:5%}.shot-card{width:175px;left:36%}.video-card{width:152px;right:3%}.section-heading{display:block}.feature-grid{grid-template-columns:1fr}.feature-grid article{padding:26px}.capability-banner{grid-template-columns:1fr;gap:28px;padding:28px}.home-cta{flex-wrap:wrap;gap:25px;font-size:21px}.auth-layout{grid-template-columns:1fr;gap:25px;max-width:500px;margin:25px auto 45px;padding:0 20px}.auth-intro h1{margin:10px 0;font-size:25px}.auth-intro>p,.auth-orb{display:none}.auth-intro .eyebrow{font-size:9px}.account-grid{grid-template-columns:1fr}.account-main{padding:40px 20px}.user-heading{flex-wrap:wrap;gap:15px}.user-heading>input{max-width:none}.site-page h2{font-size:24px}.account-panel h2{font-size:20px}}@media (width<=450px){.hero h1{font-size:35px}.hero-actions{flex-direction:column;align-items:flex-start}.hero-actions .site-button{width:100%}.canvas-showcase{height:390px}.preview-grid{height:288px}.story-card{width:140px;top:36px;left:3%}.story-card h3{font-size:10px}.story-card p{font-size:8px}.character-card{width:99px;top:12px;right:4%}.planet{left:25px}.orbit{left:0}.shot-card{width:127px;top:137px;left:29%}.city-art{height:65px}.video-card{width:100px;bottom:12px;right:3%}.video-art{height:50px}.preview-card small{padding:7px;font-size:8px}.preview-card small span{float:none;margin-top:4px;display:block}.floating-label{padding:7px;font-size:7px;bottom:13px;left:3%}.capability-tags{grid-template-columns:1fr}.auth-form{padding:25px}.site-footer{flex-wrap:wrap;gap:18px}.account-page .nav-actions{gap:10px;font-size:10px}.account-page .site-brand{font-size:17px}}@media (prefers-reduced-motion:reduce){.site-page{scroll-behavior:auto}.site-page *,.site-page :before{transition:none!important;animation:none!important}}.self-tag{color:#b9d593;border:1px solid #b9f35e30;border-radius:4px;margin-left:6px;padding:2px 5px;font-size:9px;font-weight:400;display:inline-block}.topbar a.brand{color:inherit;text-decoration:none}body{-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}button,input,textarea,select{font-family:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button,a{transition:background-color .16s,border-color .16s,color .16s,box-shadow .16s}button:disabled{cursor:not-allowed;opacity:.45}button:focus-visible,a:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:3px}input::placeholder,textarea::placeholder{color:#7f8994}input:not([type=range]):focus-visible,textarea:focus-visible,select:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}input[type=checkbox],input[type=range]{accent-color:var(--accent)}::selection{color:var(--text);background:#b9f35e42}*{scrollbar-width:thin;scrollbar-color:#444d55 transparent}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-thumb{background:#444d55;border-radius:10px}.app-icon{vertical-align:middle;pointer-events:none;flex:none;display:inline-block}.eyebrow{letter-spacing:.16em;color:var(--text-muted);font-size:9px;font-weight:600}.tb-btn{border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:34px;padding:7px 12px;font-size:12px;font-weight:500;line-height:1.35;display:inline-flex}.tb-btn:hover:not(:disabled){color:var(--text);background:#2b3238}.tb-btn.primary,.tb-btn.accent{color:var(--accent-ink);background:var(--accent);border-color:var(--accent);font-weight:650}.tb-btn.primary:hover:not(:disabled),.tb-btn.accent:hover:not(:disabled){color:var(--accent-ink);background:#cafa7f;border-color:#cafa7f;box-shadow:0 2px 14px #b9f35e1a}.tb-btn.secondary{background:var(--panel-2);color:var(--text);border-color:#3b444b}.tb-btn.icon-btn{width:32px;min-height:32px;padding:6px}.toolbar-divider{background:var(--border-soft);flex:0 0 1px;width:1px;height:22px;margin:0 5px}.topbar{border-color:var(--border-soft);background:#191d20;flex:none;gap:20px;height:72px;min-height:72px;padding:0 22px}.topbar .left{gap:8px;min-width:0}.topbar .right{flex-shrink:0;gap:8px}.topbar .center{border:1px solid var(--border-soft);background:#161a1d;border-radius:9px;gap:1px;padding:1px 2px}.brand{align-items:center;gap:10px;margin-right:13px;display:flex}.brand-symbol{width:35px;height:35px;color:var(--accent-ink);background:var(--accent);border-radius:10px;justify-content:center;align-items:center;display:flex;box-shadow:inset 0 0 0 1px #ffffff38}.brand-wordmark{letter-spacing:-.6px;font-size:17px;font-weight:700;line-height:1.05}.brand-wordmark small{letter-spacing:.16em;color:var(--text-dim);margin-top:6px;font-size:9px;font-weight:450;display:block}.project-identity{flex-direction:column;justify-content:center;gap:2px;min-width:80px;display:flex}.project-name-row{align-items:center;gap:2px;display:flex}.canvas-name{border-radius:5px;width:154px;max-width:15vw;padding:3px 5px;font-size:13px;font-weight:550}.canvas-switch-wrap{width:20px;height:24px;color:var(--text-dim);border-radius:5px;place-items:center;display:grid;position:relative}.canvas-switch-wrap:hover,.canvas-switch-wrap:focus-within{color:var(--accent);background:var(--panel-2)}.canvas-switch-wrap .canvas-switch{opacity:0;cursor:pointer;width:100%;height:100%;padding:0;position:absolute;inset:0}:root .save-indicator{color:#8cae7c;align-items:center;gap:4px;padding-left:6px;font-size:10px;line-height:16px;display:flex}:root .save-indicator.saving{color:#b5bdc5}:root .save-indicator.offline,:root .save-indicator.error{color:#f1c68b}.topbar .project-delete{color:var(--text-muted)}.topbar .project-delete:hover{color:var(--danger);background:#ff8b8717}.zoom-pct{font-variant-numeric:tabular-nums;color:#c0c7cd;min-width:39px;font-size:11px}.topbar .drama-btn{border-color:var(--border);color:#d3d9de;background:var(--panel-2);font-weight:500}.topbar .compose-btn{color:#d5e8bd;background:#252e21;border:1px solid #424b3b;font-weight:500}.topbar .batch-btn.active{color:var(--accent);background:var(--accent-soft);border-color:#536940}.topbar .agent-config-btn{color:var(--text-dim)}.canvas-body{position:relative}.sidebar{width:var(--sidebar-width);flex:0 0 var(--sidebar-width);border-color:var(--border-soft);background:#191d20;min-height:0}.sidebar>.sidebar-heading,.sidebar>.tabs,.sidebar>.sidebar-search,.sidebar>.sidebar-section-label,.sidebar>.sidebar-create,.sidebar>.sidebar-settings{flex-shrink:0}.sidebar-heading{justify-content:space-between;align-items:center;padding:25px 20px 19px;display:flex}.sidebar-heading h2{letter-spacing:.03em;margin:6px 0 0;font-size:15px;font-weight:600;line-height:1.3}.sidebar-count{border:1px solid var(--border);color:#a5afb7;font-variant-numeric:tabular-nums;border-radius:7px;place-items:center;min-width:25px;height:25px;padding:0 7px;font-size:10px;display:grid}.sidebar .tabs{border:1px solid var(--border-soft);background:#111618;border-radius:10px;gap:3px;margin:0 15px 17px;padding:4px}.sidebar .tabs button{justify-content:center;align-items:center;gap:6px;padding:8px 0;font-size:12px;display:inline-flex}.sidebar .tabs button:hover{color:var(--text)}.sidebar .tabs button.active{color:#e2e8dc;background:#30382d;box-shadow:0 1px 3px #0004}.sidebar .tabs button.active .app-icon{color:var(--accent)}.sidebar-search{border:1px solid var(--border-soft);color:#818e98;background:#13181b;border-radius:9px;align-items:center;gap:9px;min-height:37px;margin:0 16px 21px;padding:0 10px;display:flex}.sidebar-search:focus-within{box-shadow:0 0 0 2px var(--accent-soft);border-color:#769447}.sidebar .search{width:100%;min-width:0;color:var(--text);background:0 0;border:none;border-radius:0;outline:none;margin:0;padding:8px 0;font-size:11px;box-shadow:none!important}.sidebar-search kbd{font:inherit;color:#71808c;border:1px solid #354049;border-radius:4px;padding:0 4px;font-size:12px}.sidebar-section-label{color:#8c99a3;letter-spacing:.03em;justify-content:space-between;align-items:center;margin-bottom:10px;padding:0 20px;font-size:10px;font-weight:500;display:flex}.sidebar-section-label>span:last-child{color:#74838e;font-size:10px}.sidebar .list{min-height:0;padding:0 10px 14px}.sidebar .list-item{text-align:left;border:1px solid #0000;border-radius:10px;gap:10px;width:100%;margin-bottom:4px;padding:11px 9px}.sidebar .list-item:hover{background:#252c31}.sidebar .list-item.is-selected{background:#2b3327;border-color:#435436}.item-icon{color:#89c2dc;background:#253139;border:1px solid #39474f;border-radius:8px;flex:0 0 33px;place-items:center;width:33px;height:35px;display:grid}.item-icon[data-kind=generate]{color:#c4e88e;background:#2d3725;border-color:#485637}.item-icon[data-kind=text]{color:#c6b6e6;background:#302b39;border-color:#484052}.item-icon[data-kind=assetImage]{color:#8dcab9;background:#23352f;border-color:#3b5048}.item-icon[data-kind=assetAudio]{color:#e4bf89;background:#383126;border-color:#524734}.item-details{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.item-name{color:#d4dce1;font-size:12px;line-height:1.35}.item-details small{color:#80909c;font-size:10px}.item-locate{color:#5f6f7c;opacity:0}.list-item:hover .item-locate,.list-item:focus-visible .item-locate{opacity:1}.sidebar .list-empty{color:var(--text-muted);flex-direction:column;align-items:center;gap:10px;padding:38px 14px;font-size:11px;display:flex}.list-empty strong{color:#bac4cc;font-size:12px;font-weight:500}.empty-state-icon{border:1px solid var(--border-soft);color:#7e929e;background:#252c31;border-radius:15px;place-items:center;width:50px;height:50px;margin-bottom:4px;display:grid}.sidebar-assets{flex-direction:column;flex:1 1 0;min-width:0;min-height:0;display:flex}.sidebar-assets>.sidebar-section-label{flex:none;margin-bottom:5px}.sidebar-assets-hint{color:#72818d;flex:none;margin:0 20px 12px;font-size:10px;line-height:1.5}.sidebar-assets-scroll{overscroll-behavior:contain;scrollbar-gutter:stable;flex:1 1 0;min-width:0;min-height:0;padding:3px 12px 16px 15px;overflow:hidden auto}.sidebar-assets-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:max-content;align-content:start;align-items:start;gap:10px;display:grid}.sidebar-asset-card{cursor:grab;background:#20282d;border:1px solid #344047;border-radius:11px;align-self:start;width:100%;min-width:0;transition:border-color .16s,box-shadow .16s;display:block;overflow:hidden}.sidebar-asset-card:hover,.sidebar-asset-card:focus-visible{box-shadow:0 0 0 2px var(--accent-soft);border-color:#718353}.sidebar-asset-card:active{cursor:grabbing}.sidebar-asset-preview{aspect-ratio:1;background:#151d21;width:100%;min-height:78px;display:block;position:relative;overflow:hidden}.sidebar-asset-preview>img{object-fit:cover;pointer-events:none;width:100%;height:100%;display:block;position:absolute;inset:0}.sidebar-asset-placeholder{color:#6d838f;flex-direction:column;justify-content:center;align-items:center;gap:7px;padding-top:13px;display:flex;position:absolute;inset:0}.sidebar-asset-placeholder>span{font-size:9px}.sidebar-asset-type{color:#e0e7e9;pointer-events:none;background:#131a20d9;border-radius:5px;align-items:center;gap:4px;padding:3px 5px;font-size:9px;line-height:1.2;display:inline-flex;position:absolute;top:6px;left:6px}.sidebar-asset-duration{color:#eff3f5;font-variant-numeric:tabular-nums;pointer-events:none;background:#101719d9;border-radius:4px;padding:3px 5px;font-size:9px;line-height:1.2;position:absolute;bottom:6px;right:6px}.sidebar-asset-info{border-top:1px solid #2c383e;flex-direction:column;gap:5px;padding:9px 8px 10px;display:flex}.sidebar-asset-id{color:#c2cdd3;font-variant-numeric:tabular-nums;font-size:10px;line-height:1.2}.sidebar-asset-meta{text-overflow:ellipsis;white-space:nowrap;color:#7d909b;font-variant-numeric:tabular-nums;min-width:0;font-size:9px;line-height:1.3;overflow:hidden}.sidebar-create{border-top:1px solid var(--border-soft);padding:17px 15px}.sidebar-create .sidebar-section-label{padding:0 3px}.sidebar-create-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.sidebar-create-grid button{color:#b6c0c8;background:#232a2e;border:1px solid #343d43;border-radius:8px;justify-content:center;align-items:center;gap:5px;padding:9px 3px;font-size:10px;display:flex}.sidebar-create-grid button:hover{color:var(--accent);background:#303a30;border-color:#536742}.sidebar-settings{border-top:1px solid var(--border-soft);color:#c8d1d6;background:#1c2226;align-items:center;gap:10px;margin:0;padding:16px 19px;font-size:12px;text-decoration:none;display:flex}.settings-link-icon{color:#a7b5bf;background:#293137;border:1px solid #3c464e;border-radius:9px;place-items:center;width:33px;height:33px;display:grid}.sidebar-settings>span:nth-child(2){flex:1}.sidebar-settings small{color:#81909b;margin-top:5px;font-size:10px;display:block}.sidebar-settings:hover{color:var(--accent);background:#242d2b}.sidebar-toggle{color:#8b9ba6;background:#21282c;border-color:#343e45;border-radius:0 8px 8px 0;width:19px;height:42px}.lib-flow{background:#111719}.canvas-caption{color:#778c99;pointer-events:none;z-index:4;align-items:center;gap:13px;font-size:11px;display:flex;position:absolute;top:21px;left:28px}.canvas-mode{color:#b6c4cc;align-items:center;gap:7px;font-size:12px;display:flex}.canvas-caption-divider{background:#34434a;width:1px;height:13px}.caption-ready{color:#a4bc87;padding-left:12px;display:inline-block}.canvas-workflow{color:#687c87;pointer-events:none;z-index:4;background:#172024d9;border:1px solid #2c383e;border-radius:8px;align-items:center;gap:11px;padding:8px 12px;font-size:10px;display:flex;position:absolute;top:18px;right:25px}.canvas-workflow span{align-items:center;gap:5px;display:flex}.canvas-workflow .active{color:#adc58c}.canvas-welcome{text-align:center;z-index:4;width:min(520px,88%);position:absolute;top:43%;left:50%;transform:translate(-50%,-50%)}.welcome-emblem{color:#c2ea91;background:#283424;border:1px solid #47583b;border-radius:23px;place-items:center;width:74px;height:74px;margin:0 auto 26px;display:grid;position:relative;box-shadow:0 0 0 9px #1c261c,0 0 0 10px #2b3829}.welcome-spark{width:26px;height:26px;color:var(--accent-ink);background:var(--accent);border:3px solid #15201a;border-radius:9px;place-items:center;display:grid;position:absolute;top:-6px;right:-6px}.canvas-welcome .eyebrow{letter-spacing:.19em;color:#7d936f;font-size:9px}.canvas-welcome h1{letter-spacing:.04em;margin:15px 0 13px;font-size:clamp(24px,2.3vw,32px);font-weight:550}.canvas-welcome p{color:#82949f;margin:0;font-size:13px;line-height:1.9}.welcome-actions{justify-content:center;gap:10px;margin-top:26px;display:flex}.welcome-actions .tb-btn{border-radius:10px;height:40px;padding:0 16px}.welcome-steps{color:#536972;justify-content:center;align-items:center;gap:14px;margin-top:38px;display:flex}.welcome-steps span{color:#93a3aa;align-items:center;gap:7px;font-size:11px;display:flex}.canvas-dock{z-index:12;background:#232b2ef5;border:1px solid #414a4f;border-radius:14px;align-items:center;gap:3px;padding:7px;display:flex;position:absolute;bottom:20px;left:50%;transform:translate(-50%);box-shadow:0 10px 32px #0005,inset 0 1px #ffffff08}.canvas-dock button{color:#a1b1bb;border-radius:8px;place-items:center;width:34px;height:35px;display:grid}.canvas-dock button:hover{color:#e3ebed;background:#39454a}.canvas-dock .dock-generate{color:#c0ec89;background:#39482c;border:1px solid #536740}.canvas-dock .toolbar-divider{height:19px;margin:0 3px}.vue-flow__controls{border:1px solid #3b494f;border-radius:10px;margin:20px;box-shadow:0 8px 24px #0003}.vue-flow__controls-button{box-sizing:content-box;color:#afc0c8;fill:#afc0c8;background:#232d32;border-color:#39454c;width:30px;height:30px}.vue-flow__controls-button:hover{background:#354138}.vue-flow__minimap{opacity:.85;border:1px solid #364148;border-radius:11px;width:174px;height:138px;margin:20px;overflow:hidden}.minimap-toggle{background:#253036;border-color:#3c484f;border-radius:7px;width:27px;height:27px;left:20px}.lib-edge-base{stroke:#62765a;stroke-width:1.5px}.lib-edge-base.sequence-edge{stroke:#849774;stroke-width:1.8px;stroke-dasharray:5 7}.vue-flow__edge.selected .lib-edge-base.sequence-edge{stroke:#c7f494;stroke-width:2.3px}.edge-current{stroke:#b0db88;filter:none;stroke-width:1.5px;opacity:.38;animation-duration:3.5s}.vue-flow__edge.selected .edge-current{opacity:.85}.vue-flow__connection-path{stroke:var(--accent)}:root .batch-alert{color:#ebc68d;background:#332c20;border-color:#544631;justify-content:center;align-items:center;gap:9px;padding:11px 20px;line-height:1.5;display:flex}@media (width<=1340px){.topbar{gap:12px;padding:0 16px}.topbar .center{display:none}.brand{margin-right:5px}.canvas-name{max-width:16vw}}@media (width<=1100px){:root{--sidebar-width:236px}.brand-wordmark small{display:none}.brand-wordmark{font-size:15px}.brand{gap:7px}.topbar .agent-config-btn span{display:none}.topbar .right{gap:6px}.topbar .right .tb-btn{padding:7px 9px}.topbar .project-delete,.canvas-workflow{display:none}.canvas-caption{left:23px}}@media (width<=860px){.topbar{flex-wrap:wrap;gap:6px;height:auto;min-height:110px;padding:10px 16px}.topbar .left{flex:100%}.topbar .right{flex:100%;justify-content:flex-end}.canvas-name{width:220px;max-width:40vw}.project-identity{flex:1}.brand-wordmark small{display:block}.topbar .project-delete{display:inline-flex}.sidebar-heading{padding-top:19px}.canvas-dock{gap:1px;padding:5px}.canvas-dock button{width:29px}.canvas-dock .toolbar-divider{margin:0 1px}.vue-flow__minimap{width:134px;height:105px}.canvas-welcome h1{font-size:23px}.welcome-steps{gap:8px}}@media (width<=620px){:root{--sidebar-width:218px}.sidebar{z-index:18;position:absolute;inset:0 auto 0 0;box-shadow:16px 0 32px #0005}.canvas-caption{top:17px;left:22px}.canvas-caption>span:last-child{display:none}.topbar .toolbar-divider{margin-inline:2px}.topbar .right{justify-content:space-between}.topbar .right .toolbar-divider{display:none}.topbar .right .tb-btn{gap:4px;padding-inline:7px;font-size:11px}.brand{margin-right:0}.brand-wordmark{font-size:14px}.canvas-name{max-width:32vw}.canvas-welcome{top:42%}.welcome-actions .tb-btn{padding-inline:11px}.welcome-steps{gap:7px}.welcome-steps span{gap:4px;font-size:10px}.vue-flow__minimap,.minimap-toggle{display:none}.vue-flow__controls{margin-right:16px;bottom:68px}}@media (height<=640px){.canvas-welcome{top:45%}.welcome-emblem{border-radius:15px;width:48px;height:48px;margin-bottom:16px}.canvas-welcome h1{margin-top:10px;font-size:23px}.welcome-steps{display:none}.welcome-actions{margin-top:18px}.sidebar-heading{padding-block:14px}.sidebar-heading .eyebrow{display:none}.sidebar-search{margin-bottom:12px}.sidebar-assets-hint{display:none}.sidebar-create{padding:8px 12px}.sidebar-create>.sidebar-section-label{display:none}.sidebar-create-grid button{white-space:nowrap;font-size:9px}.sidebar-settings{padding-block:10px}.sidebar-settings small{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.sidebar-asset-tabs{border:1px solid var(--border);background:var(--bg);border-radius:10px;flex:none;gap:4px;margin:0 16px 12px;padding:4px;display:flex}.sidebar-asset-tabs button{min-width:0;color:var(--text-dim);cursor:pointer;background:0 0;border:0;border-radius:7px;flex:1;justify-content:center;align-items:center;gap:5px;padding:8px 2px;font-size:11px;display:flex}.sidebar-asset-tabs button.active{color:var(--accent);background:var(--accent-soft)}.sidebar-asset-tabs button:hover{color:var(--text)}.sidebar-asset-tabs small{opacity:.75;font-size:10px}.sidebar-asset-name{color:var(--text);-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;font-size:11px;line-height:1.5;display:-webkit-box;overflow:hidden}.canvas-next-episode{z-index:4;color:#c5e48e;background:#202b24ed;border-color:#647b414d;position:absolute;top:62px;right:25px;box-shadow:0 4px 16px #0002}.canvas-next-episode:hover{background:#2d3a28;border-color:#b1eb584d}.sidebar-asset-source{color:#adc58c;font-size:10px}@media (width<=760px){.canvas-next-episode{top:16px;right:16px}}.node{color:var(--text,#f0f3f5);background:var(--panel,#1a1e22);border:1px solid #ccdbe621;border-radius:16px;font-size:12px;transition:border-color .16s,box-shadow .16s;overflow:visible;box-shadow:0 6px 22px #0003,0 1px 2px #00000026;container-type:inline-size}.node:hover{border-color:#ccdbe640}.node.selected{border-color:var(--accent,#b9f35e);box-shadow:0 0 0 1px #b9f35e29,0 10px 30px #00000047}.node .node-head{border-bottom:1px solid #ccdbe612;align-items:center;gap:10px;min-height:56px;padding:11px 14px}.node .node-kind-icon{color:#b7c1c9;background:#ccdbe611;border:1px solid #ccdbe60e;border-radius:10px;flex:0 0 31px;place-items:center;width:31px;height:31px;display:grid}.node-type-generate .node-kind-icon{color:var(--accent);background:#b9f35e17;border-color:#b9f35e1a}.node-type-assetImage .node-kind-icon{color:#a7c7b9}.node-type-assetAudio .node-kind-icon{color:#b9b6d5}.node .node-heading{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.node .node-title{letter-spacing:.1px;max-width:none;font-size:12px;font-weight:650;line-height:17px;display:block}.node .node-sub{color:var(--text-dim,#99a3ad);text-overflow:ellipsis;white-space:nowrap;max-width:100%;margin:0;font-size:10px;line-height:14px;overflow:hidden}.node .node-drag-cue{color:#616c75;opacity:0;flex-shrink:0;transition:opacity .15s}.node:hover .node-drag-cue,.node.selected .node-drag-cue{opacity:.8}.node .node-badge{color:var(--accent);white-space:nowrap;background:#b9f35e12;border:1px solid #b9f35e2e;border-radius:5px;padding:3px 6px;font-size:9px;font-weight:600}.node .rename-input{width:100%;min-width:0;font:inherit;color:var(--text);background:var(--panel-2);border:1px solid var(--accent);border-radius:4px;outline:none;padding:1px 4px}.node .node-body{gap:10px;padding:12px}.node.resized .node-body{overflow:visible}.node button,.node a{-webkit-tap-highlight-color:transparent}.node button:focus-visible,.node a:focus-visible,.node [role=button]:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.node button:disabled{cursor:not-allowed}.node svg{flex-shrink:0}.node .vue-flow__handle{z-index:25;background:#1e262c;border:1.5px solid #64717a;width:14px;height:14px}.node .vue-flow__handle-left{left:-8px}.node .vue-flow__handle-right{right:-8px}.node .vue-flow__handle:after{color:#b6c3cb;font-size:10px}.node .vue-flow__handle.node-handle-output{background:#809b5d;border-color:#a4c879}.node .vue-flow__handle.node-handle-output:after{color:#182113}.node .vue-flow__handle:hover{border-color:var(--accent);box-shadow:0 0 0 4px #b9f35e1a}.node .node-port-label{letter-spacing:.2px;white-space:nowrap;color:#b2bfc6;pointer-events:none;opacity:0;z-index:20;background:#161c20f0;border:1px solid #ccdbe614;border-radius:4px;padding:1px 5px;font-size:9px;line-height:16px;transition:opacity .15s;position:absolute;top:50%}.node .node-port-label.input{right:calc(100% + 14px);transform:translateY(-50%)}.node .node-port-label.output{left:calc(100% + 14px);transform:translateY(-50%)}.node:hover .node-port-label,.node.selected .node-port-label{opacity:1}.node .resize-handle{background:#1a2218;border-color:#b9f35e99;width:5px;height:5px}.node .resize-e,.node .resize-w{width:5px;height:16px;top:18%}.node .resize-n,.node .resize-s{width:16px;height:5px}.node:hover .resize-handle{opacity:.5}.node.selected .resize-handle{opacity:1}.node .asset-body{background:#13181b;border:1px solid #ccdbe613;border-radius:11px;min-height:60px;overflow:hidden}.node .asset-body img,.node .asset-body video{background:#12171a}.node:not(.resized) .asset-body img,.node:not(.resized) .asset-body video{background:#12171a;width:100%;max-width:100%;height:auto;max-height:290px}.node .asset-body.detail{border-color:#b9f35e61}.node .asset-blank{flex-direction:column;align-items:stretch;gap:14px;padding:15px 4px 5px;display:flex}.node .node-empty-visual{color:#8caaa0;background:linear-gradient(145deg,#a9c5b717,#8ea99a06);border:1px solid #aec7bf1a;border-radius:17px;align-self:center;place-items:center;width:56px;height:56px;display:grid}.node .node-empty-copy{text-align:center;flex-direction:column;gap:5px;display:flex}.node .node-empty-copy strong{color:#d5dfe4;font-size:12px;font-weight:550}.node .node-empty-copy span,.node .blank-hint{color:#84919b;font-size:10px;line-height:1.65}.node .blank-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.node .blank-actions>:only-child,.node .blank-actions>:nth-child(3):last-child{grid-column:1/-1}.node .blank-btn{color:#c3ced5;background:#ffffff06;border:1px solid #ccdbe61f;border-radius:8px;justify-content:center;align-items:center;gap:6px;min-height:34px;padding:9px 8px;font-size:11px;transition:background .15s,border-color .15s;display:inline-flex}.node .blank-btn:hover{color:var(--text);background:#b9f35e0b;border-color:#b9f35e59}.node .blank-btn.accent{color:var(--accent);background:#b9f35e0f;border-color:#b9f35e2e}.node .node-media-footer{color:#8999a1;justify-content:space-between;align-items:center;min-height:22px;margin-top:-4px;font-size:10px;display:flex}.node .node-media-footer>span,.node .node-inline-action{align-items:center;gap:5px;display:inline-flex}.node .node-inline-action{color:#99a9b2;background:0 0;border:0;padding:3px 0;font-size:10px}.node .node-inline-action:hover{color:var(--accent)}.node .node-icon-button{color:#99a9b2;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;width:27px;height:27px;display:inline-flex}.node .node-icon-button:hover{color:var(--text);background:#ffffff0f}.node .frame-btn{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#e1e8ed;background:#11171bd1;border:1px solid #ffffff24;border-radius:8px;justify-content:center;align-items:center;width:29px;height:29px;display:flex;top:8px;right:8px}.node .result-area:hover .frame-btn,.node .frame-btn:focus-visible{opacity:1}.node .upload-mask{border-radius:0 0 10px 10px;height:3px;overflow:hidden}.node .node-error{color:#efaaa3;background:#d7686011;border:1px solid #d7686021;border-radius:8px;align-items:flex-start;gap:7px;padding:9px;font-size:11px;line-height:1.6;display:flex}.node .node-error svg{margin-top:2px}.node .node-error span{overflow-wrap:anywhere;min-width:0}.node .node-generating-empty{color:var(--text-dim);flex-direction:column;align-items:center;gap:12px;padding:12px 4px;font-size:11px;display:flex}.node .node-generating-empty strong{color:#d1dbdd;font-weight:500}.node .audio-asset-body{flex-direction:column;align-items:stretch;gap:14px;padding:14px 10px 10px}.node .audio-preview-heading{align-items:center;gap:12px;display:flex}.node .audio-cover{color:#b6b2d1;background:#b6b2d114;border-radius:12px;place-items:center;width:48px;height:48px;display:grid}.node .audio-preview-heading>div{flex-direction:column;gap:4px;display:flex}.node .audio-preview-heading strong{color:#d1d7e0;font-size:12px;font-weight:500}.node .audio-preview-heading span{color:var(--text-dim);font-size:10px}.node .asset-body audio{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;width:100%;height:34px}.node .gen-body{flex-direction:column;gap:12px;min-width:0;display:flex}.node .node-section-label{color:#a9b6bf;justify-content:space-between;align-items:center;gap:10px;min-height:16px;font-size:10px;line-height:16px;display:flex}.node .node-section-label>span:first-child{align-items:center;gap:5px;display:inline-flex}.node .node-section-label>span:last-child{color:#73828c;font-size:9px}.node .generation-preview,.node .generation-editor,.node .generation-prompt{flex-direction:column;gap:8px;min-width:0;min-height:0;display:flex}.node .generation-editor{gap:12px}.node .generation-prompt{flex:1}.node .generation-references{flex-direction:column;gap:7px;display:flex}.node.node-type-generate .gen-body:not(.has-result) .generation-editor{flex:1}.node.node-type-generate .gen-body:not(.has-result) .generation-references{flex-shrink:0}.node.node-type-generate .gen-body:not(.has-result) .ref-strip{scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.node.node-type-generate .gen-body:not(.has-result) .ref-item{flex-shrink:0}.node .result-area{background:#111719;border:1px solid #ccdbe613;border-radius:11px;min-height:90px;position:relative}.node .result-area video{object-fit:contain;background:#111719;width:100%;max-height:240px;display:block}.node .result-pending{color:#8d9ca5;background:radial-gradient(at 50% 30%,#b9f35e11,#0000 70%),#13191c;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:135px;padding:18px 12px;font-size:10px;display:flex}.node .result-pending strong{color:#c5d3d8;font-size:12px;font-weight:500}.node .result-status-icon{width:44px;height:44px;color:var(--accent);background:#b9f35e0d;border:1px solid #b9f35e1a;border-radius:14px;place-items:center;display:grid}.node .result-pending .elapsed{color:#87999e;align-items:center;gap:4px;padding:0;font-size:10px;display:inline-flex;position:static}.node .result-failure{color:#d7978f;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:9px;min-height:135px;padding:15px;display:flex}.node .result-failure strong{font-size:11px;font-weight:500}.node .result-failure>span{overflow-wrap:anywhere;color:#ad8e8a;max-height:68px;font-size:10px;line-height:1.6;overflow-y:auto}.node .node-state-pill{color:#899da8;background:#ffffff06;border-radius:4px;align-items:center;gap:4px;padding:1px 5px;font-size:9px;display:inline-flex}.node .node-state-dot{background:currentColor;border-radius:50%;width:4px;height:4px}.node .node-state-pill.succeeded{color:#b5d786}.node .node-state-pill.running,.node .node-state-pill.queued{color:#c9ce9f}.node .node-state-pill.failed{color:#dd9b93}.node .node-result-meta{justify-content:space-between;align-items:center;gap:8px;min-height:24px;display:flex}.node .version-pager{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0f1417d9;border:1px solid #ffffff1f;gap:2px;padding:3px 5px;font-size:10px}.node .version-pager.static{color:#bbc6ce;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;justify-content:flex-start;margin-top:0;padding:0}.node .version-pager button{border-radius:5px;justify-content:center;align-items:center;width:23px;height:23px;padding:0;display:inline-flex}.node .version-pager button:not(:disabled):hover{background:#fff1}.node .version-total{color:#677a87}.node .ref-strip{flex-wrap:wrap;gap:7px}.node .ref-item{background:#202a2e;border-width:1px;border-radius:8px;width:49px;height:49px}.node .ref-icon{color:#a3b9c0;place-items:center;display:grid}.node .ref-index{font-size:9px;top:3px;left:4px}.node .ref-role{background:#0d1316c7;font-size:8px;line-height:14px}.node .ref-remove{background:#253038;border:1px solid #ffffff24;border-radius:5px;justify-content:center;align-items:center;width:16px;height:16px;padding:0}.node .ref-item:hover .ref-remove,.node .ref-remove:focus-visible{display:flex}.node .prompt-link{color:#9cae9e;align-items:center;gap:4px;font-size:9px;line-height:14px;display:flex}.node .at-wrapper{background:#151c20;border:1px solid #ccdbe61c;border-radius:10px;min-height:90px;transition:border-color .15s,box-shadow .15s;position:relative}.node .at-wrapper:focus-within{border-color:#b9f35e73;box-shadow:0 0 0 2px #b9f35e0b}.node .prompt-highlight,.node .at-wrapper .prompt-input{box-sizing:border-box;letter-spacing:normal;white-space:pre-wrap;word-break:break-word;overflow-wrap:break-word;tab-size:4;border:0;border-radius:10px;width:100%;margin:0;padding:12px 13px;font-family:inherit;font-size:12px;font-weight:400;line-height:1.7}.node .prompt-highlight{color:#d1dce2;pointer-events:none;inset:0;overflow:hidden}.node .prompt-highlight .at-token{font-weight:inherit}.node .at-wrapper .prompt-input{z-index:1;color:#0000;-webkit-text-fill-color:transparent;caret-color:var(--accent);resize:none;scrollbar-width:none;background:0 0;min-height:90px;display:block;position:relative}.node .at-wrapper .prompt-input::-webkit-scrollbar{width:0;height:0}.node .at-wrapper .prompt-input::placeholder{color:#657985;-webkit-text-fill-color:#657985}.node.node-type-generate .gen-body:not(.has-result) .at-wrapper{flex:1;min-height:108px;display:flex}.node.node-type-generate .gen-body:not(.has-result) .at-wrapper .prompt-input{flex:1;min-height:108px}.node .at-popup{background:#232c32;border-color:#3a494f;border-radius:10px;padding:5px;box-shadow:0 12px 30px #00000059}.node .at-item{gap:6px;font-size:11px}.node .at-item>span:not(.at-type){text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.node .at-type,.node .at-empty{font-size:10px}.node .gen-footer{border-top:1px solid #ccdbe613;flex-direction:column;flex-shrink:0;align-items:stretch;gap:8px;padding-top:10px;display:flex}.node .gen-settings,.node .gen-actions{align-items:center;gap:8px;min-width:0;display:flex}.node .gen-settings>.model-select{flex:1;min-width:0}.node .gen-settings>.params-select{flex:0 auto;min-width:0;max-width:58%}.node .gen-settings .model-chip.current,.node .params-chip{color:#afbdc6;background:#ffffff06;border:1px solid #ccdbe61a;border-radius:7px;align-items:center;gap:5px;height:30px;padding:5px 8px;font-size:10px;display:flex}.node .params-chip>span{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.node .params-chip:hover,.node .model-chip.current:hover{color:var(--text);border-color:#ccdbe640}.node .gen-actions .cost-text{color:#94a387;margin-left:auto;font-size:10px}.node .gen-actions>.gen-btn:last-child{margin-left:auto}.node .gen-actions .cost-text+.gen-btn{margin-left:0}.node .gen-btn,.node .concat-btn,.node .crop-btn{background:var(--accent,#b9f35e);color:#1e2c13;border:1px solid #b9f35e73;border-radius:8px;justify-content:center;align-items:center;gap:6px;min-height:33px;padding:7px 13px;font-size:11px;font-weight:650;display:inline-flex;box-shadow:0 1px 3px #0000001a}.node .gen-btn:not(:disabled):hover,.node .concat-btn:not(:disabled):hover,.node .crop-btn:not(:disabled):hover{background:#c8fa7f}.node .gen-btn:disabled,.node .concat-btn:disabled,.node .crop-btn:disabled{opacity:.5}.node .gen-btn.cancel{color:#dfaaa4;background:#d7686011;border-color:#d768602e}.node .gen-btn.waiting{color:#8f9a91;background:#ffffff06;border-color:#ffffff0f}.node .polish-btn{color:#acbbb1;background:0 0;border:0;border-radius:6px;align-items:center;gap:5px;padding:6px 1px;font-size:10px;display:inline-flex}.node .polish-btn:hover{color:var(--accent)}.node .generation-revision-notice{color:#e4c591;background:#332c20;border-radius:7px;align-items:flex-start;gap:6px;margin:0;padding:8px;font-size:10px;line-height:1.5;display:flex}.node .text-input,.node .detail-field .prompt-input{color:#cfdae1;background:#151c20;border-color:#ccdbe61c;border-radius:10px;padding:12px;font-size:12px;line-height:1.7}.node .text-input::placeholder{color:#657985}.node .text-input:focus{border-color:#b9f35e73}.node .text-footer{flex-direction:column;align-items:stretch;gap:10px;margin-top:0;display:flex}.node .text-footer .model-chip.current{border-radius:7px;width:100%;padding:7px 9px;font-size:10px}.node .text-actions{justify-content:flex-end;gap:7px;display:flex}.node .text-btn{background:#ffffff06;border-color:#ccdbe61a;border-radius:7px;align-items:center;gap:5px;min-height:30px;padding:6px 9px;font-size:10px;display:inline-flex}.node .text-btn.accent{color:#203019;background:var(--accent);border-color:var(--accent)}.node .concat-body,.node .crop-body{gap:11px}.node .concat-inputs{gap:7px}.node .concat-slot{background:#171f23;border:1px dashed #ccdbe624;border-radius:9px;gap:9px;min-height:49px;padding:8px}.node .concat-slot.filled{border-style:solid}.node .slot-label{color:#a3b9a2;background:#aec7a60f;border-radius:6px;flex:0 0 23px;place-items:center;height:23px;font-size:10px;display:grid}.node .slot-empty{color:#82969f;align-items:center;gap:6px;font-size:10px;display:inline-flex}.node .slot-name{font-size:11px}.node .slot-thumb{border-radius:5px;width:44px;height:30px}.node .concat-opts{gap:10px}.node .concat-opts .opt{flex-direction:column;align-items:stretch;gap:6px;font-size:10px;display:flex}.node .opt select{background:#20282d;border-color:#ccdbe61f;border-radius:7px;min-height:31px;padding:6px 8px;font-size:11px}.node .concat-result,.node .crop-result{background:#13191c;border:1px solid #ccdbe61a;border-radius:10px;overflow:hidden}.node .node-result-heading{color:#acc593;justify-content:space-between;align-items:center;gap:8px;min-height:34px;padding:4px 9px;font-size:10px;display:flex}.node .node-result-heading>span{align-items:center;gap:5px;display:inline-flex}.node .crop-preview{border:1px solid #ccdbe613;border-radius:10px;max-height:210px}.node .crop-sliders{gap:10px;padding:2px 0}.node .crop-label{color:#93a2ab;font-size:10px}.node .crop-num{background:#171f23;border-color:#ccdbe61a;border-radius:6px;width:57px;padding:5px 6px;font-size:11px}.node .crop-slider-row input[type=range]{accent-color:#accb86;height:4px}.node .crop-seg{color:#9cabb2;background:#171f23;border-radius:7px;align-items:center;gap:7px;padding:8px;font-size:10px;display:flex}.node .crop-seg b{color:#bdd696;margin-left:auto;font-weight:500}.node .detail-float{background:#20292e;border:1px solid #38464b;border-radius:14px;gap:12px;width:max(100%,360px);padding:14px;box-shadow:0 15px 42px #0000006b}.node .detail-float-head{border-bottom:1px solid #ccdbe61a;padding-bottom:10px}.node .detail-float-head b{color:#dce5e8;font-size:12px}.node .detail-float .op-btn{border:0;border-radius:6px;place-items:center;width:26px;height:26px;margin:0;padding:0;display:grid}.node .detail-field label{color:#9eafb7;font-size:10px}.node .detail-field input{color:#d4e0e7;background:#192126;border:1px solid #36454b;border-radius:7px;padding:8px 9px;font-size:11px}.node .detail-actions{flex-wrap:wrap;gap:7px;display:flex}.node .detail-actions .blank-btn{flex:40%}.node .redo-ref-hint,.node .redo-style-tip{color:#99b397;font-size:10px;line-height:1.6}@container (width>=540px){.gen-body.has-result{grid-template-rows:minmax(0,1fr) auto;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:10px 14px;display:grid}.gen-body.has-result>.gen-footer{grid-column:1/-1}.gen-body.has-result .generation-preview{gap:5px}.gen-body.has-result .generation-preview .result-area{flex:1;min-height:65px}.gen-body.has-result .generation-preview video{height:100%;max-height:235px}.gen-body.has-result .result-pending,.gen-body.has-result .result-failure{gap:6px;height:100%;min-height:0;padding:10px}.gen-body.has-result .result-status-icon{border-radius:10px;width:35px;height:35px}.gen-body.has-result .generation-editor{gap:8px}.gen-body.has-result .generation-references{gap:4px}.gen-body.has-result .ref-strip{scrollbar-width:none;flex-wrap:nowrap;max-height:42px;overflow-x:auto}.gen-body.has-result .ref-item{flex:0 0 42px;width:42px;height:42px}.gen-body.has-result .generation-prompt{gap:5px}.gen-body.has-result .at-wrapper{flex:1;min-height:48px;display:flex}.gen-body.has-result .at-wrapper .prompt-input{flex:1;min-height:48px}.node .gen-body .gen-footer{flex-direction:row;align-items:center;gap:12px}.node .gen-body .gen-settings{flex:1;min-width:0}.node .gen-body .gen-actions{flex:none}.node .gen-body .gen-actions .polish-btn{justify-content:center;gap:0;width:25px;font-size:0}.node .gen-body .gen-settings>.params-select{max-width:53%}.node .gen-body:not(.has-result) .generation-references{gap:5px}.node .gen-body:not(.has-result) .ref-item{flex-basis:44px;width:44px;height:44px}}.node .is-spinning{animation:1.4s linear infinite node-spin}@keyframes node-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.node .is-spinning{animation:none}.node,.node *{transition-duration:0s}}.panel-heading{border-bottom:1px solid var(--border);flex-shrink:0;align-items:flex-start;gap:14px;padding:24px;display:flex}.panel-heading>div{flex:1;min-width:0}.panel-heading-icon{width:44px;height:44px;color:var(--accent);background:#b9f35e14;border:1px solid #b9f35e33;border-radius:13px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.panel-eyebrow{color:var(--text-dim);letter-spacing:.08em;margin-bottom:5px;font-size:10px;font-weight:600;line-height:1.6}.panel-heading h3,.dialog .panel-heading h3{letter-spacing:-.03em;color:var(--text);margin:0;font-size:20px;font-weight:650;line-height:1.35}.panel-heading p{color:var(--text-dim);margin:7px 0 0;font-size:12px;line-height:1.6}.panel-close{width:30px;height:30px;color:var(--text-dim);background:0 0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.panel-close:hover{background:var(--panel-2);color:var(--text)}.panel-scroll{overscroll-behavior:contain;scrollbar-gutter:stable;flex:auto;min-height:0;padding:24px;overflow:auto}.panel-section+.panel-section{border-top:1px solid var(--border);margin-top:24px;padding-top:22px}.panel-section-heading{align-items:flex-start;gap:10px;margin-bottom:15px;display:flex}.panel-section-heading>svg{color:var(--accent);margin-top:2px}.panel-section-heading h4{color:var(--text);margin:0;font-size:13px;font-weight:600}.panel-section-heading p{color:var(--text-dim);margin:4px 0 0;font-size:11px;line-height:1.6}.panel-mini-heading{color:var(--text);align-items:center;gap:8px;font-size:12px;font-weight:600;display:flex}.panel-mini-heading>svg{color:var(--accent)}.panel-count{min-width:22px;height:20px;color:var(--text-dim);font-variant-numeric:tabular-nums;background:#ffffff0d;border-radius:6px;justify-content:center;align-items:center;padding:0 6px;font-size:10px;font-weight:500;display:inline-flex}.field-optional{color:var(--text-dim);margin-left:5px;font-size:11px;font-weight:400}.panel-notice{color:var(--text-dim);background:#b9f35e0d;border:1px solid #b9f35e24;border-radius:10px;align-items:flex-start;gap:9px;padding:11px 13px;font-size:12px;line-height:1.6;display:flex}.panel-notice>svg{color:var(--accent);flex-shrink:0;margin-top:2px}.panel-notice.warning{color:#f0ce9d;background:#e7ab5714;border-color:#e7ab573b}.panel-notice.warning>svg{color:#e7ab57}.story-dialog,.agent-dialog,.settings-dialog{border-radius:16px;flex-direction:column;max-width:calc(100vw - 32px);max-height:calc(100dvh - 40px);padding:0;display:flex;overflow:hidden;box-shadow:0 32px 100px #00000080,inset 0 1px #ffffff08}.story-dialog .dialog-actions,.agent-dialog .dialog-actions,.settings-dialog .dialog-actions{border-top:1px solid var(--border);background:var(--panel);flex-shrink:0;align-items:center;margin:0;padding:16px 24px}.story-dialog .tb-btn,.agent-dialog .tb-btn,.settings-page .tb-btn{white-space:nowrap;border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:36px;padding:8px 13px;display:inline-flex}.story-dialog .tb-btn.primary,.agent-dialog .tb-btn.primary,.settings-page .tb-btn.primary,.settings-page .tb-btn.accent{background:var(--accent);color:#17210d;border-color:var(--accent);font-weight:650}.story-dialog .tb-btn.primary:hover,.agent-dialog .tb-btn.primary:hover,.settings-page .tb-btn.primary:hover,.settings-page .tb-btn.accent:hover{color:#17210d;filter:brightness(1.06)}.story-dialog .form-input,.agent-dialog .form-input,.settings-dialog .form-input{background:var(--bg);border-radius:10px;min-height:40px;padding:10px 12px;font-size:12px}.story-dialog .form-label,.agent-dialog .form-label,.settings-dialog .form-label{color:#c7cfd6;margin:14px 0 8px;font-size:12px}.story-dialog .form-input:focus,.agent-dialog .form-input:focus,.settings-dialog .form-input:focus{border-color:#b9f35eb3;box-shadow:0 0 0 3px #b9f35e0f}.footer-note{color:var(--text-dim);flex:1;font-size:11px}.story-dialog{width:740px}.story-dialog .drama-input-body>.form-label{margin-top:0}.story-dialog .drama-text{min-height:220px;max-height:40vh;font-size:13px;line-height:1.85}.drama-run-summary{border:1px solid var(--border);background:#ffffff04;border-radius:12px;margin-top:18px;padding:14px}.drama-summary-heading{color:var(--text-dim);align-items:center;gap:7px;font-size:11px;display:flex}.drama-summary-format{color:var(--text);margin-left:auto}.drama-model-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:17px 0 14px;display:grid}.drama-model-summary>div{flex-direction:column;gap:7px;min-width:0;display:flex}.drama-model-summary span{color:var(--text-dim);align-items:center;gap:6px;font-size:11px;display:flex}.drama-model-summary span svg{width:13px;height:13px}.drama-model-summary strong{text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-size:12px;font-weight:500;overflow:hidden}.drama-model-summary small{text-overflow:ellipsis;white-space:nowrap;color:var(--text-dim);font-size:10px;overflow:hidden}.drama-run-summary .form-hint{border-top:1px solid var(--border);padding-top:12px;font-size:11px}.story-dialog.wide{width:min(1560px,100vw - 40px);height:min(920px,100dvh - 40px);max-height:calc(100dvh - 40px)}.story-dialog.wide .panel-heading{padding:18px 24px}.story-dialog.wide .panel-heading h3{font-size:17px}.story-dialog.wide .panel-heading p{margin-top:4px}.story-dialog .drama-head{flex-shrink:0;grid-template-columns:minmax(0,1fr) 260px;gap:8px 18px;margin:0;padding:16px 24px;display:grid}.story-dialog .drama-title-edit{border:1px solid #0000;border-radius:7px;grid-column:1;min-width:0;padding:4px 8px;font-size:20px}.story-dialog .drama-title-edit:hover,.story-dialog .drama-title-edit:focus{border-color:var(--border)}.story-dialog .drama-logline-edit{background:0 0;border-color:#0000;grid-area:2/1;min-height:40px;max-height:80px;padding:7px 9px;font-size:12px}.story-dialog .drama-logline-edit:hover,.story-dialog .drama-logline-edit:focus{border-color:var(--border)}.story-dialog .drama-style-edit{border-radius:9px;grid-area:1/2/3;align-self:center;min-width:0;font-size:12px}.story-dialog>.panel-notice,.story-dialog .drama-record-content>.panel-notice{flex-shrink:0;margin:0 24px 12px}.story-dialog .drama-tabs{gap:4px;padding:0 24px;overflow-x:auto}.story-dialog .drama-tab{white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;justify-content:center;align-items:center;gap:8px;padding:12px 14px;font-size:12px;display:inline-flex;position:static}.story-dialog .drama-tab.active{border-bottom-color:var(--accent);color:var(--accent);background:0 0}.story-dialog .drama-tab.active .panel-count{color:var(--accent);background:#b9f35e1a}.drama-tab-duration{color:var(--text-dim);font-size:10px;font-weight:400}.story-dialog .drama-tab-body{overscroll-behavior:contain;flex:1 1 0;min-height:0;padding:16px 24px 24px;overflow:auto}.story-dialog .shot-table{min-width:1220px;font-size:12px}.story-dialog .shot-table th{color:#a6b0b9;background:var(--panel);padding:12px 10px;font-size:11px}.story-dialog .shot-table td{padding:14px 10px;line-height:1.7}.story-dialog .shot-table tr.dup td{opacity:1}.story-dialog .cell-view{text-align:left;width:calc(100% + 8px);color:inherit;font:inherit}.story-dialog .cell-view.empty,.story-dialog .cell-view.prompt-preview{color:var(--text-dim)}.story-dialog .shot-table .col-idx{width:102px}.story-dialog .shot-table .col-dur{width:100px}.story-dialog .shot-table .col-ops{width:84px}.story-dialog .shot-table .col-visual{width:22%}.story-dialog .shot-table .col-prompt{width:13%}.story-dialog .shot-link,.story-dialog .shot-dup{align-items:center;gap:4px;margin-top:7px;font-size:10px;line-height:1.5;display:flex}.story-dialog .shot-link{color:var(--text-dim)}.story-dialog .shot-dup{color:#e7ab57}.story-dialog .shot-link svg,.story-dialog .shot-dup svg{flex-shrink:0;width:12px;height:12px}.story-dialog .shot-identity{flex-direction:column;align-items:flex-start;gap:6px;min-width:0;display:flex}.story-dialog .shot-number{font-variant-numeric:tabular-nums;letter-spacing:.03em;min-height:34px;color:var(--text);align-items:center;font-size:16px;font-weight:600;line-height:1;display:flex}.story-dialog .shot-beat{box-sizing:border-box;border:1px solid color-mix(in srgb, var(--text-dim) 14%, transparent);background:color-mix(in srgb, var(--text-dim) 7%, transparent);max-width:100%;color:var(--text-dim);white-space:nowrap;text-overflow:ellipsis;border-radius:6px;margin:0;padding:3px 7px;font-size:10px;font-weight:400;line-height:1.5;display:block;overflow:hidden}.story-dialog .dur-wrap{box-sizing:border-box;border:1px solid var(--border);background:color-mix(in srgb, var(--bg) 55%, var(--panel));border-radius:9px;justify-content:center;align-items:center;gap:5px;width:76px;min-height:34px;padding:0 8px;transition:border-color .15s,box-shadow .15s;display:inline-flex}.story-dialog .dur-wrap:hover{border-color:color-mix(in srgb, var(--text-dim) 50%, var(--border))}.story-dialog .dur-wrap:focus-within{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.story-dialog .dur-input{box-sizing:border-box;width:4.5ch;min-width:0;height:32px;box-shadow:none;text-align:center;font-variant-numeric:tabular-nums;appearance:textfield;background:0 0;border:0;border-radius:0;outline:none;flex:1;margin:0;padding:0;font-size:13px;line-height:1}.story-dialog .dur-unit{color:var(--text-dim);-webkit-user-select:none;user-select:none;flex:none;font-size:10px;line-height:1}.story-dialog .cell-select{background:var(--bg);padding:6px 4px;font-size:11px}.story-dialog .op-btn{border-color:#0000;border-radius:7px;justify-content:center;align-items:center;width:29px;height:29px;margin:0 3px 4px 0;padding:6px;display:inline-flex}.story-dialog .op-btn:hover{background:var(--panel-2);border-color:var(--border)}.story-dialog .op-btn svg{width:14px;height:14px}.story-dialog .asset-grid{grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:16px}.story-dialog .asset-card{background:var(--panel-2);border-radius:14px;gap:8px;padding:18px}.story-dialog .asset-card-head{min-height:32px;margin-bottom:8px}.story-dialog .asset-name{color:var(--text);align-items:center;gap:7px;display:inline-flex}.story-dialog .asset-label{margin-top:6px;font-size:11px}.story-dialog .asset-card .cell-edit{background:var(--bg);border-radius:9px;padding:10px;font-size:12px;line-height:1.7}.story-dialog .asset-add{border-radius:14px;justify-content:center;align-items:center;gap:8px;min-height:140px;font-size:12px;display:flex}.story-dialog .edit-float{gap:18px;width:min(560px,100%);max-width:100%;padding:24px}.story-dialog .edit-float-head b{color:var(--text);line-height:1.7}.story-dialog .edit-float-body{resize:none;background:var(--bg);border-radius:10px;min-height:0;padding:14px;line-height:1.9}.story-dialog .edit-float-foot{flex-shrink:0;gap:10px}.story-dialog .dialog-actions>.tb-btn:first-child{margin-right:auto}.agent-dialog{width:760px}.agent-dialog .drama-row{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:14px}.agent-dialog .drama-row>div{min-width:0}.agent-dialog .drama-row .form-label{margin-top:0}.agent-dialog .genre-chips{gap:7px;margin-top:8px}.agent-dialog .genre-chips .params-option{background:0 0;border-radius:8px;padding:7px 10px;font-size:11px}.agent-dialog .genre-chips .params-option.active{background:#b9f35e14}.agent-dialog .genre-chips+.form-hint{margin-bottom:20px;font-size:11px}.agent-dialog .agent-adv-toggle{color:var(--text);background:0 0;border:0;margin:0;padding:0 0 8px;font-size:13px}.agent-dialog .agent-adv-toggle>span{align-items:center;gap:8px;display:flex}.agent-dialog .agent-adv-toggle>span>svg{color:var(--accent)}.advanced-field-head{justify-content:space-between;align-items:center;gap:8px;margin-top:14px;display:flex}.advanced-field-head .form-label{margin:0 0 8px;font-size:11px}.agent-dialog .agent-fill{white-space:nowrap;align-items:center;gap:5px;margin:0 0 8px;font-size:10px;display:inline-flex}.agent-dialog .agent-fill svg{width:12px;height:12px}.agent-dialog .polish-textarea{min-height:140px;font-family:inherit;line-height:1.8}.settings-page{width:100%;max-width:1240px;color:var(--text);margin:0 auto;padding:48px 40px 80px}.settings-page .settings-head{align-items:flex-start;gap:24px;margin-bottom:34px}.settings-page .settings-head h1{letter-spacing:-.04em;align-items:center;gap:12px;margin:10px 0;font-size:28px;font-weight:650;display:flex}.settings-page .settings-head h1 svg{color:var(--accent)}.settings-heading-copy>p{color:var(--text-dim);margin:0;font-size:13px;line-height:1.7}.settings-page .settings-head>.tb-btn{margin-top:14px}.settings-page .settings-tabs{border:1px solid var(--border);background:var(--panel);border-radius:12px;gap:6px;width:fit-content;max-width:100%;margin-bottom:34px;padding:5px;overflow-x:auto}.settings-page .settings-tabs button{white-space:nowrap;border:0;border-radius:8px;align-items:center;gap:9px;padding:10px 16px;font-size:12px;display:flex}.settings-page .settings-tabs button:hover{background:var(--panel-2);color:var(--text)}.settings-page .settings-tabs button.active{color:var(--accent);background:var(--panel-2)}.settings-page .settings-tabs button.active .panel-count{color:var(--accent);background:#b9f35e1a}.settings-page .settings-section{margin-bottom:36px}.settings-page .section-head{gap:18px;margin-bottom:16px}.settings-page .section-head h2{color:var(--text);align-items:center;gap:8px;font-size:16px;font-weight:600;display:flex}.settings-page .section-head p{color:var(--text-dim);margin:6px 0 0;font-size:12px;line-height:1.6}.settings-page .provider-card,.settings-page .model-row{background:var(--panel);border-radius:14px;gap:16px;margin-bottom:10px;padding:20px;transition:border-color .15s}.settings-page .provider-card:hover,.settings-page .model-row:hover{border-color:#ffffff29}.settings-item-icon{border:1px solid var(--border);background:var(--panel-2);width:42px;height:42px;color:var(--text-dim);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.settings-page .provider-name,.settings-page .model-title{gap:8px;font-size:14px;font-weight:550;line-height:1.6}.settings-page .provider-sub,.settings-page .model-sub{margin-top:5px;font-size:11px}.settings-page .provider-key,.model-provider-name{color:var(--text-dim);align-items:center;gap:5px;margin-top:6px;font-size:10px;display:flex}.settings-page .provider-key svg{width:12px;height:12px}.settings-page .protocol-badge{background:var(--panel-2);color:var(--text-dim);border-radius:5px;padding:2px 6px;font-size:10px;font-weight:400}.connection-status{color:var(--accent);align-items:center;gap:5px;font-size:10px;font-weight:400;display:inline-flex}.connection-status:before{content:"";background:currentColor;border-radius:50%;width:5px;height:5px}.connection-status.disabled{color:var(--text-dim)}.settings-page .provider-actions,.settings-page .model-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px}.settings-page .provider-actions .tb-btn,.settings-page .model-actions .tb-btn{min-height:32px;padding:6px 9px;font-size:11px}.settings-page .provider-actions .tb-btn.accent{color:var(--accent);background:#b9f35e14;border-color:#b9f35e2e}.settings-page .settings-icon-button{width:32px}.settings-page .model-tag{border-radius:5px;align-items:center;gap:4px;padding:2px 6px;font-size:10px;display:inline-flex}.settings-page .model-tag svg{width:11px;height:11px}.settings-page .model-row-disabled .settings-item-icon{opacity:.5}.settings-page .section-empty{background:#ffffff03;border-radius:16px;flex-direction:column;align-items:center;gap:10px;padding:34px 20px;display:flex}.settings-page .section-empty strong{color:var(--text);font-size:14px;font-weight:500}.settings-page .section-empty p{max-width:360px;margin:0 0 4px;font-size:12px;line-height:1.7}.empty-icon{background:var(--panel);border:1px solid var(--border);width:60px;height:60px;color:var(--text-dim);border-radius:18px;justify-content:center;align-items:center;margin-bottom:4px;display:flex}.settings-dialog{width:520px}.settings-form .form-label:first-child{margin-top:0}.settings-form .form-hint{margin-top:6px;font-size:11px}.settings-form .panel-notice{margin:20px 0 0}.ai-panel{border:1px solid var(--border);background:var(--panel);border-radius:12px;gap:12px;padding:14px}.ai-panel .params-row{flex-wrap:wrap;gap:6px}.ai-panel .prompt-input{background:var(--bg);border-radius:9px;min-height:100px;padding:12px;font-size:12px;line-height:1.8}.ai-panel .gen-btn{color:#17210d;border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:36px;display:inline-flex}.ai-panel .params-option,.params-popover .params-option{border-radius:7px;justify-content:center;align-items:center;gap:5px;min-height:30px;padding:5px 9px;font-size:11px;display:inline-flex}.params-popover{background:var(--panel);border-radius:13px;gap:17px;padding:16px}.params-popover .panel-mini-heading{border-bottom:1px solid var(--border);padding-bottom:12px}.params-popover .params-label{color:var(--text-dim);margin-bottom:8px;font-size:11px}.params-popover .params-grid{gap:6px}.params-popover .params-option{background:var(--panel-2)}.params-popover .params-option.active{background:#b9f35e12}.params-popover .params-value{font-variant-numeric:tabular-nums;font-size:12px}.params-popover .params-slider{min-width:0}.model-select .model-chip.current{background:var(--panel-2);border-radius:9px;gap:7px;min-height:32px;padding:6px 9px;font-size:11px}.model-select .model-chip.current>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.model-select .model-chip.current>svg:first-child{width:14px;height:14px;color:var(--text-dim)}.model-select .caret{width:13px;height:13px;margin-left:auto;transition:transform .15s}.model-select .caret.rotated{transform:rotate(180deg)}.model-select .model-panel{background:var(--panel);border-radius:12px;width:310px;max-width:calc(100vw - 32px);max-height:340px;padding:7px;box-shadow:0 18px 60px #00000073}.model-select .model-item{border-radius:8px;padding:10px;font-size:12px}.model-select .model-name{overflow-wrap:anywhere;min-width:0}.model-select .model-est{align-items:center;font-size:10px;display:flex}.model-select .model-item.active .model-est{color:var(--accent)}.model-select .model-empty,.ai-panel .model-empty{flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:22px 10px;font-size:11px;display:flex}.face-mgr{gap:22px;padding:14px}.face-library-config{border:1px solid var(--border);background:var(--panel-2);border-radius:12px;padding:12px}.face-config-form{gap:10px;margin-top:12px;display:grid}.face-config-form label{color:var(--text-dim);gap:5px;font-size:10px;display:grid}.face-config-form input{box-sizing:border-box;width:100%;min-width:0}.face-config-hint{color:var(--text-dim);margin:5px 0;font-size:10px;line-height:1.7}.face-config-error{color:var(--danger);overflow-wrap:anywhere;font-size:10px;line-height:1.7}.face-config-form details label{margin-top:10px}.face-config-form summary,.face-group-import summary{color:var(--text-dim);cursor:pointer;padding:5px 0;font-size:10px}.face-group-import{margin:8px 0}.face-mgr .face-section-title{gap:8px;margin-bottom:12px;font-size:11px}.face-section-title>span:first-child{color:var(--text);align-items:center;gap:7px;min-width:0;display:flex;overflow:hidden}.face-section-title .field-optional{margin:0;font-size:10px}.face-mgr .face-input{background:var(--bg);border-radius:9px;min-height:36px;padding:8px 10px;font-size:11px}.face-mgr .face-btn{border-radius:8px;justify-content:center;align-items:center;gap:5px;min-height:32px;padding:7px 9px;font-size:10px;display:flex}.face-mgr .face-group-list{gap:5px;margin-top:10px}.face-group-row{border:1px solid #0000;border-radius:9px;align-items:center;display:flex}.face-group-row.active{background:var(--panel-2);border-color:var(--border)}.face-mgr .face-group-item{flex:1;gap:8px;min-width:0;padding:9px;font-size:11px}.face-mgr .face-group-item.active{background:0 0}.face-mgr .face-group-del{border-radius:7px;justify-content:center;align-items:center;width:26px;height:28px;margin-right:4px;display:flex}.face-mgr .face-group-del:hover{background:#f474741a}.face-mgr .face-group-del svg{width:13px;height:13px}.face-mgr .face-group-type{background:#b9f35e12;font-size:9px}.face-mgr .face-groups,.face-mgr .face-assets{flex:none;min-width:0}.face-mgr .face-section-title>span:first-child{overflow-wrap:anywhere;flex:1}.face-mgr .face-refresh{padding:6px}.face-mgr .face-asset-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:max-content;align-items:start;gap:10px}.face-mgr .face-asset-cell{aspect-ratio:auto;border-radius:12px;min-width:0}.face-mgr .face-asset-image{aspect-ratio:3/4;width:100%}.face-mgr .face-asset-name{white-space:normal;overflow-wrap:anywhere;-webkit-line-clamp:2;background:0 0;-webkit-box-orient:vertical;height:40px;padding:7px 8px 3px;font-size:10px;line-height:15px;display:-webkit-box;position:static}.face-mgr .face-asset-ops{justify-content:space-between;gap:4px;padding:4px 6px 8px;position:static}.face-mgr .face-mini{background:#101315e0;border-radius:6px;justify-content:center;align-items:center;gap:4px;padding:5px;font-size:9px;display:flex}.face-mgr .face-mini:hover{background:var(--panel-2);color:var(--accent)}.face-mgr .face-mini.danger:hover{color:var(--danger)}.face-mgr .face-mini svg{width:12px;height:12px}.face-mgr .face-asset-status{border-radius:5px;padding:3px 5px;font-size:9px;top:6px;left:6px}.face-mgr .face-asset-status.active{color:var(--accent)}.face-empty,.picker-empty{flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex}.face-empty strong,.picker-empty strong{color:var(--text);font-size:12px;font-weight:500}.face-mgr .face-asset-grid>.face-empty{grid-column:1/-1}.face-loading{color:var(--text-dim);justify-content:center;align-items:center;gap:7px;padding:14px 0;font-size:11px;display:flex}.picker-panel{border-radius:16px;gap:0;width:640px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 48px);padding:0;overflow:hidden;box-shadow:0 24px 80px #00000080}.picker-panel .picker-error{background:#f4747412;border:1px solid #f4747433;border-radius:9px;align-items:flex-start;gap:8px;margin-bottom:16px;padding:11px;line-height:1.6;display:flex}.picker-panel .picker-groups{gap:8px;margin-bottom:20px}.picker-panel .picker-group{border-radius:8px;align-items:center;gap:6px;padding:8px 10px;font-size:11px;display:inline-flex}.picker-panel .picker-group.active{color:var(--accent);background:#b9f35e12}.picker-panel .picker-assets{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.picker-panel .picker-asset{text-align:left;border-radius:12px;padding:0}.picker-panel .picker-name{background:linear-gradient(#0000,#000000e6);padding:30px 10px 10px;font-size:11px}.picker-select-mark{width:25px;height:25px;color:var(--text);opacity:0;background:#101315bf;border-radius:8px;justify-content:center;align-items:center;transition:opacity .15s;display:flex;position:absolute;top:8px;right:8px}.picker-asset:hover .picker-select-mark,.picker-asset:focus-visible .picker-select-mark{opacity:1}.picker-panel .picker-empty{grid-column:1/-1;width:100%;padding:30px 14px;font-size:12px}.picker-panel .picker-loading{justify-content:center;align-items:center;gap:8px;padding:22px;display:flex}.context-menu{background:var(--panel);border-radius:12px;max-width:calc(100vw - 20px);padding:7px;box-shadow:0 16px 60px #00000073}.context-menu button{border-radius:7px;align-items:center;gap:10px;padding:9px 10px;font-size:12px;display:flex}.context-menu button>svg{width:15px;height:15px;color:var(--text-dim);flex-shrink:0}.context-menu button:hover>svg{color:var(--accent)}.context-menu button.danger>svg{color:var(--danger)}.context-menu .menu-title,.model-select .menu-title{color:var(--text-dim);padding:8px 10px 6px;font-size:10px}.menu-detail{color:var(--text-dim);white-space:nowrap;margin-left:auto;font-size:10px}.menu-node-name{white-space:nowrap;text-overflow:ellipsis;min-width:0;max-width:180px;overflow:hidden}.context-menu .menu-empty{padding:14px 10px;font-size:11px;line-height:1.7}.toast-host{z-index:1500;max-width:min(520px,100vw - 32px)}.toast-host .toast{background:var(--panel-2);max-width:100%;color:var(--text);border:1px solid var(--border);white-space:normal;overflow-wrap:anywhere;border-radius:12px;align-items:flex-start;gap:10px;padding:13px 17px;font-size:12px;line-height:1.6;display:flex;box-shadow:0 12px 40px #00000059}.toast-host .toast>svg{color:var(--accent);flex-shrink:0;margin-top:2px}.toast-host .toast.error{border-color:#f4747459}.toast-host .toast.error>svg{color:var(--danger)}.icon-spin{animation:1.1s linear infinite panel-icon-spin}@keyframes panel-icon-spin{to{transform:rotate(360deg)}}@media (width<=1000px){.settings-page{padding:32px 24px 64px}.settings-page .provider-card,.settings-page .model-row{flex-wrap:wrap}.settings-page .provider-actions,.settings-page .model-actions{justify-content:flex-start;width:100%;padding-left:58px}}@media (width<=640px){.panel-heading{gap:10px;padding:18px}.panel-heading h3,.dialog .panel-heading h3{font-size:17px}.panel-heading-icon{border-radius:11px;width:36px;height:36px}.panel-scroll{padding:18px}.story-dialog .dialog-actions,.agent-dialog .dialog-actions,.settings-dialog .dialog-actions{padding:13px 18px}.agent-dialog .drama-row{grid-template-columns:minmax(0,1fr)}.drama-model-summary{gap:10px}.drama-summary-format{font-size:10px}.story-dialog.wide{width:calc(100vw - 20px);max-width:calc(100vw - 20px);height:calc(100dvh - 20px);max-height:calc(100dvh - 20px)}.story-dialog.wide .panel-heading{padding:14px 18px}.story-dialog .drama-head{grid-template-columns:minmax(0,1fr);padding:12px 18px}.story-dialog .drama-title-edit{font-size:17px}.story-dialog .drama-logline-edit{min-height:32px;max-height:48px;display:block}.story-dialog .drama-style-edit{grid-area:3/1;width:100%}.story-dialog .drama-tabs{padding:0 10px}.story-dialog .drama-tab{gap:6px;padding:10px}.drama-tab-duration{display:none}.story-dialog .drama-tab-body{padding:12px 16px}.story-dialog>.panel-notice,.story-dialog .drama-record-content>.panel-notice{margin:0 16px 10px}.story-dialog .edit-float{padding:18px}.settings-page{padding:24px 16px 48px}.settings-page .settings-head{flex-direction:column;gap:8px;margin-bottom:24px}.settings-page .settings-head h1{font-size:23px}.settings-page .settings-head>.tb-btn{margin-top:8px}.settings-page .settings-tabs{width:100%}.settings-page .settings-tabs button{gap:7px;padding:9px 12px}.settings-page .settings-tabs .panel-count{display:none}.settings-page .section-head{align-items:flex-start}.settings-page .section-head>.tb-btn{padding:7px 9px;font-size:11px}.settings-page .provider-card,.settings-page .model-row{gap:12px;padding:16px}.settings-page .provider-actions,.settings-page .model-actions{padding-left:0}.settings-page .settings-item-icon{width:36px;height:36px}.picker-panel .picker-assets{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-note{display:none}}@media (height<=640px) and (width>=641px){.story-dialog.wide .panel-heading{padding:12px 20px}.story-dialog.wide .panel-heading p,.story-dialog.wide .panel-eyebrow{display:none}.story-dialog .drama-head{gap:5px 16px;padding:10px 20px}.story-dialog .drama-logline-edit{min-height:30px;max-height:42px}.story-dialog .dialog-actions{padding:11px 20px}}@media (prefers-reduced-motion:reduce){.icon-spin{animation-duration:2.5s}.story-dialog .edit-float{animation:none}.model-select .caret,.picker-select-mark{transition:none}}.drama-record-content{display:contents}.drama-record-loading{min-height:220px;color:var(--text-dim);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:32px;display:flex}.drama-record-status{border-bottom:1px solid var(--border);background:var(--panel);color:var(--text-dim);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:10px 28px;font-size:12px;display:flex}.drama-record-status>span{align-items:center;gap:8px;line-height:1.6;display:flex}.drama-record-status .tb-btn{flex-shrink:0}@media (width<=640px){.drama-record-status{flex-wrap:wrap;padding:10px 16px}}.story-dialog.wide{width:min(1800px,100vw - 24px);max-width:calc(100vw - 24px);height:calc(100dvh - 24px);max-height:calc(100dvh - 24px)}.drama-editor-heading{border-bottom:1px solid var(--border);flex:none;align-items:center;gap:12px;min-width:0;padding:9px 16px;display:flex}.drama-editor-mark{width:34px;height:34px;color:var(--accent);background:var(--accent-soft);border-radius:10px;flex-shrink:0;place-items:center;display:grid}.drama-editor-title{flex:1;min-width:0}.dialog .drama-editor-title h3{color:var(--text-dim);margin:0 5px 1px;font-size:10px;font-weight:500;line-height:1.4}.story-dialog .drama-editor-title .drama-title-edit{text-overflow:ellipsis;width:100%;min-width:0;padding:2px 4px;font-size:16px;font-weight:650;line-height:1.4;display:block}.drama-save-indicator{color:var(--text-dim);white-space:nowrap;flex-shrink:0;align-items:center;gap:5px;font-size:11px;display:inline-flex}.drama-editor-tools{flex-shrink:0;align-items:center;gap:6px;display:flex}.drama-toolbar-btn{border:1px solid var(--border);min-height:32px;color:var(--text-dim);white-space:nowrap;background:0 0;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:6px 9px;font-size:12px;display:inline-flex}.drama-toolbar-btn:hover{color:var(--text);background:var(--panel-2)}.drama-toolbar-btn.active{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.drama-toolbar-btn.has-warning{color:#efc58c;border-color:#e7ab5766}.drama-editor-workspace{flex:1 1 0;min-width:0;min-height:0;display:flex;position:relative;overflow:hidden}.drama-editor-main{flex-direction:column;flex:1 1 0;min-width:0;min-height:0;display:flex;overflow:hidden}.story-dialog.wide .drama-tabs{padding:0 16px}.story-dialog.wide .drama-tab{padding:10px 12px}.story-dialog.wide .drama-tab-body{scrollbar-gutter:stable;padding:0 16px 16px}.story-dialog.wide .drama-tab-body>.asset-grid{align-items:start;padding-top:16px}.story-dialog.wide .shot-table th{padding:10px}.story-dialog.wide .shot-table td{padding:11px 10px}.story-dialog.wide .shot-table .cell-view{-webkit-line-clamp:5;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.story-dialog.wide .dialog-actions{gap:12px;padding:8px 16px}.drama-editor-footnote{min-width:0;color:var(--text-dim);text-align:right;white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:11px;overflow:hidden}.drama-inspector{border-left:1px solid var(--border);background:var(--panel);outline:none;flex-direction:column;flex:0 0 340px;min-width:0;min-height:0;display:flex}.drama-inspector-heading{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;gap:10px;padding:12px 16px;display:flex}.drama-inspector-heading h4{margin:0;font-size:13px;font-weight:600}.drama-inspector-body{overscroll-behavior:contain;scrollbar-gutter:stable;flex:1 1 0;min-height:0;padding:16px;overflow:auto}.drama-info-field{color:var(--text-dim);flex-direction:column;gap:8px;margin-bottom:20px;font-size:12px;display:flex}.story-dialog .drama-inspector .cell-edit{border-color:var(--border);background:var(--bg);resize:vertical;border-radius:8px;min-height:70px;font-size:13px;line-height:1.7}.story-dialog .drama-inspector .cell-edit:focus{border-color:var(--accent)}.drama-info-meta{color:var(--text-dim);gap:7px;margin-bottom:20px;font-size:11px;display:grid}.drama-info-meta strong{color:var(--text);overflow-wrap:anywhere;margin-bottom:5px;font-weight:400;line-height:1.6}.drama-inspector .panel-notice{margin:0 0 14px;font-size:12px}.drama-inspector .panel-notice p{margin:0 0 10px}.drama-inspector .panel-notice>div{min-width:0}.drama-inspector-hint{color:var(--text-dim);margin:0 0 16px;font-size:12px;line-height:1.8}.drama-check-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.drama-check-list li{border:1px solid var(--border);color:var(--text);overflow-wrap:anywhere;border-radius:9px;padding:12px;font-size:12px;line-height:1.75}.drama-check-empty{color:var(--text-dim);align-items:flex-start;gap:8px;font-size:12px;line-height:1.7;display:flex}.drama-check-empty svg{color:var(--accent);flex-shrink:0}@media (width<=1000px){.drama-inspector{z-index:4;width:min(360px,100%);position:absolute;inset:0 0 0 auto;box-shadow:-12px 0 32px #00000052}.drama-editor-footnote{display:none}.drama-save-indicator{font-size:10px}}@media (width<=640px){.story-dialog.wide{border-radius:12px;width:calc(100vw - 12px);max-width:calc(100vw - 12px);height:calc(100dvh - 12px);max-height:calc(100dvh - 12px)}.drama-editor-heading{flex-wrap:wrap;gap:7px;padding:8px 10px}.drama-editor-mark{display:none}.drama-editor-title{flex-basis:calc(100% - 38px)}.drama-editor-heading>.panel-close{order:-1;position:absolute;top:12px;right:10px}.drama-editor-title .drama-title-edit{max-width:calc(100% - 32px)}.drama-editor-tools{margin-left:auto}.drama-toolbar-btn{min-height:30px;padding:5px 8px;font-size:11px}.story-dialog.wide .drama-tabs{padding:0 6px}.story-dialog.wide .drama-tab{gap:5px;padding:9px;font-size:11px}.story-dialog.wide .drama-tab-body{padding:0 10px 12px}.story-dialog.wide .dialog-actions{gap:8px;padding:8px 10px}.story-dialog.wide .dialog-actions .tb-btn{padding:8px;font-size:11px}}.app-tooltip{z-index:100000;box-sizing:border-box;color:#f0f3f5;text-align:left;overflow-wrap:anywhere;pointer-events:auto;background:#232b29;border:1px solid #48534b;border-radius:12px;width:max-content;max-width:min(260px,100vw - 20px);padding:11px 14px;font-size:12px;line-height:1.6;position:fixed;top:0;left:0;box-shadow:0 8px 28px #0006}.app-tooltip strong{color:#c7f58b;font-size:13px;font-weight:600;display:block}.app-tooltip span{color:#c3cdc7;margin-top:4px;display:block}
