.react-flow{direction:ltr;--xy-edge-stroke-default: #b1b1b7;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #555;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(255, 255, 255, .5);--xy-minimap-background-color-default: #fff;--xy-minimap-mask-background-color-default: rgba(240, 240, 240, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #e2e2e2;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: transparent;--xy-background-pattern-dots-color-default: #91919a;--xy-background-pattern-lines-color-default: #eee;--xy-background-pattern-cross-color-default: #e2e2e2;background-color:var(--xy-background-color, var(--xy-background-color-default));--xy-node-color-default: inherit;--xy-node-border-default: 1px solid #1a192b;--xy-node-background-color-default: #fff;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #1a192b;--xy-node-border-radius-default: 3px;--xy-handle-background-color-default: #1a192b;--xy-handle-border-color-default: #fff;--xy-selection-background-color-default: rgba(0, 89, 220, .08);--xy-selection-border-default: 1px dotted rgba(0, 89, 220, .8);--xy-controls-button-background-color-default: #fefefe;--xy-controls-button-background-color-hover-default: #f4f4f4;--xy-controls-button-color-default: inherit;--xy-controls-button-color-hover-default: inherit;--xy-controls-button-border-color-default: #eee;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #ffffff;--xy-edge-label-color-default: inherit;--xy-resize-background-color-default: #3367d9}.react-flow.dark{--xy-edge-stroke-default: #3e3e3e;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #727272;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(150, 150, 150, .25);--xy-minimap-background-color-default: #141414;--xy-minimap-mask-background-color-default: rgba(60, 60, 60, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #2b2b2b;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: #141414;--xy-background-pattern-dots-color-default: #555;--xy-background-pattern-lines-color-default: #333;--xy-background-pattern-cross-color-default: #333;--xy-node-color-default: #f8f8f8;--xy-node-border-default: 1px solid #3c3c3c;--xy-node-background-color-default: #1e1e1e;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #999;--xy-handle-background-color-default: #bebebe;--xy-handle-border-color-default: #1e1e1e;--xy-selection-background-color-default: rgba(200, 200, 220, .08);--xy-selection-border-default: 1px dotted rgba(200, 200, 220, .8);--xy-controls-button-background-color-default: #2b2b2b;--xy-controls-button-background-color-hover-default: #3e3e3e;--xy-controls-button-color-default: #f8f8f8;--xy-controls-button-color-hover-default: #fff;--xy-controls-button-border-color-default: #5b5b5b;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #141414;--xy-edge-label-color-default: #f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props, var(--xy-background-color, var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1;touch-action:none}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width, var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke, var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width, var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{overflow:visible;position:absolute;pointer-events:none}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}svg.react-flow__connectionline{z-index:1001;overflow:visible;position:absolute}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background-color:var(--xy-handle-background-color, var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color, var(--xy-handle-border-color-default));border-radius:100%}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:0;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px) translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px) translateY(-50%)}.react-flow__attribution{font-size:10px;background:var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;left:0;top:0}.react-flow__viewport-portal{position:absolute;width:100%;height:100%;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__minimap{background:var( --xy-minimap-background-color-props, var(--xy-minimap-background-color, var(--xy-minimap-background-color-default)) )}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var( --xy-minimap-mask-background-color-props, var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default)) );stroke:var( --xy-minimap-mask-stroke-color-props, var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default)) );stroke-width:var( --xy-minimap-mask-stroke-width-props, var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default)) )}.react-flow__minimap-node{fill:var( --xy-minimap-node-background-color-props, var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default)) );stroke:var( --xy-minimap-node-stroke-color-props, var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default)) );stroke-width:var( --xy-minimap-node-stroke-width-props, var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default)) )}.react-flow__background-pattern.dots{fill:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default)) )}.react-flow__background-pattern.lines{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default)) )}.react-flow__background-pattern.cross{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default)) )}.react-flow__controls{display:flex;flex-direction:column;box-shadow:var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default))}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{display:flex;justify-content:center;align-items:center;height:26px;width:26px;padding:4px;border:none;background:var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));border-bottom:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) );color:var( --xy-controls-button-color-props, var(--xy-controls-button-color, var(--xy-controls-button-color-default)) );cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px;fill:currentColor}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:var(--xy-node-border-radius, var(--xy-node-border-radius-default));width:150px;font-size:12px;color:var(--xy-node-color, var(--xy-node-color-default));text-align:center;border:var(--xy-node-border, var(--xy-node-border-default));background-color:var(--xy-node-background-color, var(--xy-node-background-color-default))}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover, var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected, var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color, var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color, var(--xy-selection-background-color-default));border:var(--xy-selection-border, var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var( --xy-controls-button-background-color-hover-props, var(--xy-controls-button-background-color-hover, var(--xy-controls-button-background-color-hover-default)) );color:var( --xy-controls-button-color-hover-props, var(--xy-controls-button-color-hover, var(--xy-controls-button-color-hover-default)) )}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) )}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:5px;height:5px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));translate:-50% -50%}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color, var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color, var(--xy-edge-label-color-default))}.infinite-canvas{--canvas-ink: #17191d;--canvas-muted: #737986;--canvas-line: #dde1e8;--canvas-panel: #ffffff;--canvas-blue: #2f6bff;--canvas-blue-soft: #eef3ff;--canvas-teal: #0f9f8f;--canvas-coral: #e95e58;position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:grid;grid-template-rows:68px minmax(0,1fr);overflow:hidden;color:var(--canvas-ink);background:#f7f8fa;font-family:Avenir Next,PingFang SC,Microsoft YaHei,sans-serif;letter-spacing:0}.canvas-topbar{position:relative;z-index:40;display:flex;align-items:center;gap:16px;min-width:0;padding:0 22px;background:#fffffff5;border-bottom:1px solid #e6e8ed;box-shadow:0 1px 10px #1820320a}.canvas-brand-block,.canvas-top-actions,.canvas-document-control,.canvas-save-status,.canvas-balance,.canvas-text-button,.canvas-cost,.canvas-editor-actions,.canvas-node-status,.upstream-badge,.canvas-input-notice{display:flex;align-items:center}.canvas-brand-block{gap:10px;flex-shrink:0}.canvas-brand-mark{display:grid;width:34px;height:34px;place-items:center;border-radius:8px;color:#fff;background:var(--canvas-ink);font-size:17px;font-weight:800}.canvas-brand-name{font-size:17px;font-weight:760}.canvas-icon-button,.canvas-text-button,.canvas-tool-button,.canvas-zoom-controls button,.canvas-node-editor button,.canvas-empty-actions button,.canvas-add-menu button{border:0;color:inherit;background:transparent;letter-spacing:0}.canvas-icon-button{display:inline-grid;width:36px;height:36px;flex-shrink:0;place-items:center;border:1px solid var(--canvas-line);border-radius:8px;color:#555c69;background:#fff}.canvas-icon-button:hover{color:var(--canvas-ink);border-color:#b9c0cc}.canvas-icon-button.back{border-color:transparent;background:#f3f4f6}.canvas-icon-button.danger:hover{color:var(--canvas-coral);border-color:#f1b7b3;background:#fff7f6}.canvas-document-control{position:relative;height:40px;min-width:200px;max-width:420px;margin-left:8px;padding:0 12px;border:1px solid var(--canvas-line);border-radius:8px;background:#f7f8fa}.canvas-document-control input{min-width:120px;flex:1;border:0;outline:0;background:transparent;color:var(--canvas-ink);font:inherit;font-size:14px;font-weight:650}.canvas-save-status{gap:5px;flex-shrink:0;color:var(--canvas-muted);font-size:12px}.canvas-save-status.saved{color:var(--canvas-teal)}.canvas-save-status.error{color:var(--canvas-coral)}.canvas-top-actions{gap:8px;margin-left:auto}.canvas-text-button{gap:6px;height:36px;padding:0 12px;border:1px solid var(--canvas-line);border-radius:8px;background:#fff;font-size:13px;font-weight:620}.canvas-text-button:hover{border-color:#b9c0cc;background:#fafafa}.canvas-balance{gap:6px;height:36px;padding:0 12px;border-radius:8px;color:#765b11;background:#fff7dc;font-size:13px;font-weight:650}.canvas-stage{position:relative;min-width:0;min-height:0;overflow:hidden}.canvas-stage .react-flow{background:#f8f9fb}.canvas-stage .react-flow__pane{cursor:grab}.canvas-stage .react-flow__pane:active{cursor:grabbing}.canvas-stage .react-flow__edge-path{stroke:#9aa3b2;stroke-width:1.6;transition:stroke .16s ease,stroke-width .16s ease}.canvas-stage .react-flow__edge:hover .react-flow__edge-path{stroke:var(--canvas-blue);stroke-width:2}.canvas-stage .react-flow__edge.selected .react-flow__edge-path{stroke:var(--canvas-blue);stroke-width:2.4;filter:drop-shadow(0 0 3px rgba(47,107,255,.32))}.canvas-edge-delete{position:absolute;z-index:12;display:grid;width:22px;height:22px;place-items:center;border:1px solid #d5dae3;border-radius:50%;color:#5c6573;background:#fff;box-shadow:0 4px 12px #1a233429;cursor:pointer;pointer-events:all}.canvas-edge-delete:hover{color:#fff;border-color:var(--canvas-coral);background:var(--canvas-coral)}.canvas-node-delete{position:absolute;top:8px;right:8px;z-index:20;display:grid;width:24px;height:24px;place-items:center;border:1px solid #d5dae3;border-radius:50%;color:#5c6573;background:#fff;box-shadow:0 4px 12px #1a233429;cursor:pointer;opacity:0;visibility:hidden;transition:opacity .14s ease,transform .14s ease,color .14s ease,background .14s ease}.canvas-node-shell:hover .canvas-node-delete,.canvas-node-shell.selected .canvas-node-delete{opacity:1;visibility:visible}.canvas-node-delete:hover{color:#fff;border-color:var(--canvas-coral);background:var(--canvas-coral)}@media(hover:none){.canvas-node-delete{opacity:1;visibility:visible}}.canvas-stage .react-flow__node{width:264px;z-index:5}.canvas-stage .react-flow__nodes{z-index:5}.canvas-stage .react-flow__node:has(.inline-generator-node),.canvas-stage .react-flow__node:has(.inline-text-node){width:620px}.canvas-stage .react-flow__node-output{padding:0;border:0;background:transparent}.canvas-stage .react-flow__node:focus{outline:none}.canvas-stage .react-flow__node.selected{z-index:30!important}.canvas-node-shell{position:relative;width:264px}.canvas-node-shell.inline-generator-node,.canvas-node-shell.inline-text-node{width:620px}.canvas-inline-generator-card{width:620px;overflow:hidden;border:1px solid #d4d9df;border-radius:18px;background:#fff;box-shadow:0 14px 38px #1f2a381a;transition:border-color .14s ease,box-shadow .14s ease}.canvas-inline-generator-card:hover{border-color:#a9bac4;box-shadow:0 15px 38px #1f344024}.canvas-inline-generator-card.selected{border-color:var(--canvas-blue);box-shadow:0 0 0 3px #2f6bff1c,0 16px 38px #1f3a7824}.canvas-inline-generator-head{display:flex;height:34px;align-items:center;justify-content:space-between;gap:12px;padding:0 14px 0 10px;border-bottom:0;background:#fff;cursor:grab;-webkit-user-select:none;user-select:none}.canvas-inline-generator-head:active{cursor:grabbing}.canvas-inline-generator-title{display:inline-flex;align-items:center;gap:7px;color:#7c858e;font-size:11px;font-weight:700}.canvas-inline-generator-title>svg:first-child{color:#9ba9af}.canvas-inline-generator-title>svg:nth-child(2){color:#687781}.canvas-inline-text-card .canvas-inline-generator-title>svg:nth-child(2){color:#a06b32}.canvas-inline-text-title-input{width:min(260px,70%);height:26px;padding:0 8px;border:1px solid #d8dde2;outline:0;border-radius:6px;color:#2f343a;background:#fff;font-size:12px;font-weight:700}.canvas-node-card{width:100%;overflow:hidden;border:1px solid #cfd4dd;border-radius:8px;background:#fff;box-shadow:0 8px 24px #1f2a4014;transition:border-color .14s ease,box-shadow .14s ease,transform .14s ease}.canvas-node-card:hover{border-color:#aeb5c1;box-shadow:0 12px 30px #1f2a401c}.canvas-node-card.selected{border-color:var(--canvas-blue);box-shadow:0 0 0 3px #2f6bff1f,0 14px 34px #1f3a7826}.canvas-node-head{display:flex;align-items:center;gap:7px;height:34px;padding:0 9px;border-bottom:1px solid #edf0f4;background:#fff;cursor:grab;-webkit-user-select:none;user-select:none}.canvas-node-head:active{cursor:grabbing}.canvas-node-kind{display:inline-grid;width:20px;height:20px;place-items:center;border-radius:5px}.kind-text .canvas-node-kind{color:#3e5a8a;background:#edf3fb}.kind-prompt .canvas-node-kind{color:#4d61a8;background:#eef0ff}.kind-image .canvas-node-kind{color:#0d8478;background:#e8f7f4}.kind-video .canvas-node-kind{color:#b35a2b;background:#fff1e7}.kind-asset .canvas-node-kind{color:#78601a;background:#fff7d9}.kind-output .canvas-node-kind{color:#7b4da5;background:#f5edfb}.mode-generator .canvas-node-kind{color:#166f8d;background:#e9f6fa}.canvas-node-title{min-width:0;flex:1;overflow:hidden;font-size:11px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.canvas-node-title-input{min-width:0;height:24px;flex:1;padding:0 6px;border:1px solid #9cbaff;outline:0;border-radius:4px;color:var(--canvas-ink);background:#fff;box-shadow:0 0 0 2px #2f6bff1f;font:inherit;font-size:11px;font-weight:600;cursor:text;-webkit-user-select:text;user-select:text}.canvas-node-status{gap:4px;flex-shrink:0;color:var(--canvas-muted);font-size:10px}.canvas-node-status.status-succeeded{color:var(--canvas-teal)}.canvas-node-status.status-failed{color:var(--canvas-coral)}.canvas-node-status.timed-out{color:#a66f13}.canvas-node-body{width:100%;height:164px;background:#f5f6f8}.kind-text .canvas-node-body,.kind-prompt .canvas-node-body{height:126px;padding:15px 16px;background:#fbfcfe}.kind-prompt .canvas-node-body{background:#fafaff}.canvas-inline-text{display:block;width:100%;height:100%;resize:none;border:0;outline:0;color:#343943;background:transparent;font:inherit;font-size:13px;line-height:1.65}.canvas-inline-text::placeholder{color:#a0a5af}.canvas-node-body p{display:-webkit-box;margin:0;overflow:hidden;color:#343943;font-size:13px;line-height:1.65;white-space:pre-wrap;-webkit-box-orient:vertical;-webkit-line-clamp:5}.canvas-node-body p.empty-copy{color:#a0a5af}.canvas-node-body img,.canvas-node-body video{display:block;width:100%;height:100%;object-fit:cover}.canvas-video-preview{position:relative;width:100%;height:100%;overflow:hidden;background:#11151b}.canvas-video-preview video{object-fit:contain}.canvas-video-preview:not(.playing):not(.failed) video{pointer-events:none}.canvas-video-play-overlay{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:46px;height:46px;border:0;border-radius:50%;padding:0;display:flex;align-items:center;justify-content:center;color:#fff;background:#0f172a85;cursor:pointer;transition:background .15s ease,transform .15s ease}.canvas-video-play-overlay:hover{background:#0f172ab8}.canvas-video-play-overlay:active{transform:translate(-50%,-50%) scale(.94)}.canvas-video-play-overlay svg{margin-left:2px}.canvas-video-preview-error{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;gap:8px;padding:16px;color:#d9dde4;background:#11151be0;font-size:11px;text-align:center}.canvas-video-preview-error a{padding:5px 8px;border:1px solid rgba(255,255,255,.28);border-radius:5px;color:#fff;background:#ffffff1a;white-space:nowrap}.canvas-video-preview-error a:hover{background:#ffffff2e}.canvas-node-body.media-image{background:#f1f3f5}.canvas-node-body.media-image img{object-fit:contain}.canvas-node-body.media-video{min-height:112px;max-height:470px;transition:height .18s ease}.canvas-image-preview-trigger{position:relative;display:block;width:100%;height:100%;overflow:hidden;cursor:grab}.canvas-image-preview-trigger:active{cursor:grabbing}.canvas-node-preview-image{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none}.canvas-preview-tools{position:absolute;top:40px;right:8px;display:flex;gap:5px;opacity:0;transform:translateY(-2px);transition:opacity .14s ease,transform .14s ease}.canvas-preview-tools button{display:grid;width:27px;height:27px;place-items:center;border:1px solid rgba(255,255,255,.38);border-radius:6px;color:#fff;background:#1419219e;box-shadow:0 4px 12px #14192129;cursor:pointer}.canvas-image-preview-trigger:hover .canvas-preview-tools,.canvas-image-preview-trigger:focus-within .canvas-preview-tools{opacity:1;transform:translateY(0)}.canvas-preview-tools button:hover{background:#141921e0}.canvas-preview-tools button:focus-visible{outline:2px solid #fff;outline-offset:2px}.canvas-node-empty{display:flex;height:100%;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:#9aa0ab;font-size:12px}.canvas-output-empty{color:#8b7c99;background:#faf7fc}.canvas-generator-summary{display:flex;height:100%;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:18px;color:#62707c;background:linear-gradient(145deg,#f5fafc,#f0f5f7);text-align:center}.canvas-generator-summary>svg{margin-bottom:4px;color:#2b7f99}.canvas-generator-summary strong{color:#31414a;font-size:13px}.canvas-generator-summary span{width:100%;overflow:hidden;color:#65747e;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.canvas-generator-summary small{color:#8a969e;font-size:10px}.canvas-handle{position:absolute;width:13px!important;height:13px!important;border:3px solid #fff!important;background:#7f8794!important;box-shadow:0 0 0 1px #aeb5c0}.canvas-handle:before{position:absolute;top:-9px;right:-9px;bottom:-9px;left:-9px;content:""}.canvas-handle:hover{background:var(--canvas-blue)!important;box-shadow:0 0 0 2px #2f6bff33}.canvas-handle.target{left:-6px!important}.canvas-handle.source{right:-6px!important}.kind-asset .canvas-node-body{height:164px;background:#fbfcf9}.canvas-asset-empty{display:flex;height:100%;flex-direction:column;align-items:center;justify-content:center;gap:5px;color:#818996}.canvas-asset-empty strong{color:#505965;font-size:12px}.canvas-asset-empty span{font-size:10px}.canvas-asset-actions{display:flex;gap:6px;margin-top:6px}.canvas-asset-actions button{display:inline-flex;height:27px;align-items:center;gap:4px;padding:0 7px;border:1px solid #d8dde3;border-radius:5px;color:#59616c;background:#fff;font-size:10px}.canvas-asset-actions button:hover{color:#156b62;border-color:#8bcfc4;background:#f3fbf9}.canvas-asset-preview{position:relative;width:100%;height:100%}.canvas-asset-preview>img{width:100%;height:100%;object-fit:cover}.canvas-asset-preview-actions{position:absolute;right:8px;bottom:8px;display:flex;gap:5px}.canvas-asset-preview-actions button{display:grid;width:27px;height:27px;place-items:center;border:0;border-radius:5px;color:#fff;background:#141921c2}.canvas-node-editor-layer{position:fixed;z-index:240;pointer-events:auto}.canvas-node-editor-layer.placement-below{transform:translate(-50%)}.canvas-node-editor-layer.placement-above{transform:translate(-50%,-100%)}.canvas-node-editor-layer.placement-left,.canvas-node-editor-layer.placement-right{transform:none}.canvas-node-editor-layer:before{position:absolute;z-index:2;width:10px;height:10px;border:1px solid #d7dbe3;background:#fff;content:"";transform:rotate(45deg);pointer-events:none}.canvas-node-editor-layer.placement-below:before{top:-6px;left:calc(50% - 5px);border-right:0;border-bottom:0}.canvas-node-editor-layer.placement-above:before{bottom:-6px;left:calc(50% - 5px);border-top:0;border-left:0}.canvas-node-editor-layer.placement-right:before{top:calc(var(--canvas-editor-anchor-y) - 5px);left:-6px;border-top:0;border-right:0}.canvas-node-editor-layer.placement-left:before{top:calc(var(--canvas-editor-anchor-y) - 5px);right:-6px;border-bottom:0;border-left:0}.canvas-node-editor{width:min(620px,calc(100vw - 56px));overflow:hidden;border:1px solid #d7dbe3;border-radius:8px;background:#fff;box-shadow:0 18px 60px #1a23342e}.canvas-editor-head{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:52px;padding:8px 10px 8px 16px;border-bottom:1px solid #eceef2}.canvas-editor-title{min-width:0;margin:0;color:var(--canvas-ink);font-size:14px;font-weight:750;line-height:1.2}.canvas-text-editor,.canvas-prompt-input{display:block;width:100%;resize:none;border:0;outline:0;color:#252932;background:#fff;font:inherit;font-size:14px;line-height:1.65}.canvas-text-editor{min-height:180px;padding:16px}.canvas-prompt-input{min-height:132px;padding:15px 16px;border-bottom:1px solid #eceef2}.canvas-text-editor::placeholder,.canvas-prompt-input::placeholder{color:#a2a7b0}.canvas-node-editor.editor-image,.canvas-node-editor.editor-video{display:flex;flex-direction:column;border-color:#dfe2e7;border-radius:16px;box-shadow:0 16px 48px #1a233429}.canvas-node-editor.inline-node-editor{width:100%;border:0;border-radius:0;box-shadow:none}.canvas-node-editor.inline-node-editor.editor-text .canvas-editor-tabs{min-height:45px;padding:3px 20px 8px}.canvas-node-editor.inline-node-editor.editor-text .canvas-text-generation-prompt{min-height:72px;max-height:180px;overflow-y:auto;padding:12px 20px 14px;border-top:1px solid #f1f2f3;border-bottom:1px solid #f1f2f3;font-size:15px;line-height:1.7}.canvas-node-editor.inline-node-editor.editor-text .canvas-text-generation-prompt.has-content{min-height:104px}.canvas-text-apply-label{margin-right:auto;color:#858d96;font-size:10px;font-weight:650}.canvas-text-inline-toolbar{min-height:62px;padding:10px 14px 12px 18px;border-bottom:1px solid #eceef0}.canvas-text-inline-toolbar .model-field{width:210px;flex:0 0 210px}.canvas-text-inline-toolbar .canvas-cost{margin-left:auto}.canvas-text-result-block{padding:12px 20px 18px;background:transparent}.canvas-text-result-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.canvas-text-result-head strong{display:inline-flex;align-items:center;gap:6px;color:#34383d;font-size:11px}.canvas-text-result-head strong svg{color:#a06b32}.canvas-text-result-head>span{color:#969ca3;font-size:10px}.canvas-text-result-meta{display:inline-flex;align-items:center;gap:10px}.canvas-text-count{color:#969ca3;font-size:10px;font-variant-numeric:tabular-nums}.canvas-text-clear{padding:0;border:0;outline:0;color:#969ca3;background:none;font:inherit;font-size:10px;cursor:pointer}.canvas-text-clear:hover{color:var(--canvas-coral)}.canvas-text-result-input{display:block;width:100%;min-height:56px;max-height:240px;resize:none;overflow-y:auto;border:1px solid #e4e8ee;outline:0;border-radius:12px;color:#24282d;background:#fff;box-shadow:0 1px 2px #1f2a400a;font:inherit;font-size:14px;line-height:1.8;padding:12px 14px;transition:border-color .14s ease,box-shadow .14s ease}.canvas-text-result-input:focus{border-color:var(--canvas-blue);box-shadow:0 0 0 3px #2f6bff1f}.canvas-text-result-input::placeholder{color:#a5aab0}.canvas-text-upstream-source{padding-top:10px;padding-bottom:4px}.canvas-node-editor.inline-node-editor .canvas-generator-input-notice{min-height:60px;padding:12px 16px}.canvas-node-editor.inline-node-editor .canvas-image-reference-strip{min-height:62px;padding:7px 20px 0}.canvas-node-editor.inline-node-editor .canvas-image-reference{width:44px;height:44px;flex-basis:44px}.canvas-node-editor.inline-node-editor .canvas-image-toolbar{min-height:62px;padding:10px 12px 12px 18px;border-top:1px solid #f0f1f3}.canvas-node-editor.editor-video:not(.inline-node-editor){min-height:296px;max-height:calc(100vh - 160px)}.canvas-node-editor.editor-video:not(.inline-node-editor) .canvas-video-tabs{display:flex;align-items:center;gap:10px;min-height:50px;padding:8px 14px;border-bottom:1px solid #eef0f3}.canvas-node-editor.editor-video:not(.inline-node-editor) .canvas-video-tabs .canvas-image-reference{width:34px;height:34px;flex:0 0 34px}.canvas-node-editor.editor-video:not(.inline-node-editor) .canvas-video-tabs .canvas-segments{flex:0 0 auto;padding:2px}.canvas-node-editor.editor-video:not(.inline-node-editor) .canvas-video-tabs .canvas-segments button{min-width:0;height:24px;padding:0 8px;font-size:11px}.canvas-node-editor.editor-video:not(.inline-node-editor) .canvas-video-composer{display:flex;flex-direction:column;min-height:0;flex:1 1 auto;border-bottom:1px solid #eef0f3}.canvas-node-editor.editor-video:not(.inline-node-editor) .canvas-video-reference-panel{display:flex;align-items:center;min-width:0;flex:0 1 auto;margin-left:auto;background:#fff;overflow-x:auto}.canvas-node-editor.editor-video:not(.inline-node-editor) .canvas-video-reference-panel .canvas-video-frame-selection{min-height:0;flex:0 0 auto;justify-content:flex-start;margin:0;padding:0}.canvas-node-editor.editor-video:not(.inline-node-editor) .canvas-video-reference-panel .canvas-video-reference-strip{min-height:0;flex:0 0 auto;margin:0;padding:0}.canvas-node-editor.editor-video:not(.inline-node-editor) .canvas-video-tabs .canvas-frame-label{display:none}.canvas-node-editor.editor-video:not(.inline-node-editor) .canvas-video-prompt-column{display:flex;min-width:0;min-height:0;flex:1 1 auto;flex-direction:column}.canvas-node-editor.editor-video:not(.inline-node-editor) .canvas-video-prompt-column .canvas-video-prompt{min-height:120px;max-height:260px;flex:1 1 auto;padding:13px 20px 12px;border-bottom:0;overflow-y:auto}.canvas-node-editor.inline-node-editor.editor-video{height:auto}.canvas-node-editor.inline-node-editor.editor-video .canvas-video-tabs{display:flex;align-items:center;gap:10px;min-height:46px;padding:6px 20px}.canvas-node-editor.inline-node-editor.editor-video .canvas-video-tabs .canvas-image-reference{width:34px;height:34px;flex:0 0 34px}.canvas-node-editor.inline-node-editor.editor-video .canvas-video-reference-panel{display:flex;align-items:center;min-width:0;flex:0 1 auto;margin-left:auto;overflow-x:auto}.canvas-node-editor.inline-node-editor.editor-video .canvas-video-reference-strip,.canvas-node-editor.inline-node-editor.editor-video .canvas-video-reference-panel .canvas-video-frame-selection{min-height:0;margin:0;padding:0}.canvas-node-editor.inline-node-editor.editor-video .canvas-video-tabs .canvas-frame-label{display:none}.canvas-node-editor.inline-node-editor.editor-video .canvas-video-prompt{min-height:108px;max-height:280px;flex:0 0 auto;padding:14px 20px 18px;font-size:15px;line-height:1.7;overflow-y:auto}.canvas-node-editor.inline-node-editor.editor-video .canvas-video-prompt.has-upstream-text{min-height:72px;padding-top:8px;font-size:13px}.canvas-prompt-counter{flex:0 0 auto;padding:0 20px 10px;text-align:right;color:#a3a9b2;font-size:11px;font-variant-numeric:tabular-nums;background:#fff;-webkit-user-select:none;user-select:none}.canvas-node-shell.inline-video-generator .canvas-inline-generator-title>svg:nth-child(2){color:#7657a6}.canvas-image-reference-strip{display:flex;min-height:58px;align-items:center;gap:8px;padding:12px 16px 0}.canvas-image-reference{position:relative;width:42px;height:42px;flex:0 0 42px}.canvas-image-reference img{display:block;width:100%;height:100%;object-fit:cover;border:1px solid #d8dce3;border-radius:8px}.canvas-image-reference>span{position:absolute;right:-3px;bottom:-3px;display:grid;width:17px;height:17px;place-items:center;border:2px solid #fff;border-radius:50%;color:#fff;background:var(--canvas-blue)}.canvas-frame-label{position:absolute;left:50%;bottom:-14px;margin:0;transform:translate(-50%);color:#8a909a;font-size:9px;font-style:normal;font-weight:650;line-height:1;white-space:nowrap}.canvas-image-reference-note{margin-left:3px;color:#8a909a;font-size:10px}.canvas-image-reference.selectable{cursor:pointer;padding:0;border:none;background:none}.canvas-image-reference.selectable img{transition:border-color .15s ease,box-shadow .15s ease}.canvas-image-reference.selectable:hover img{border-color:var(--canvas-blue)}.canvas-image-reference.selectable.active img{border-color:var(--canvas-blue);box-shadow:0 0 0 2px var(--canvas-blue)}.canvas-image-reference.selectable.active .canvas-frame-label{color:var(--canvas-blue)}.canvas-video-frame-selection{display:flex;min-height:72px;align-items:center;gap:12px;box-sizing:border-box;margin-bottom:8px;padding:10px 20px 8px}.canvas-video-frame-selection.pair{gap:14px}.canvas-video-frame-select{border-radius:8px}.canvas-video-frame-select img{transition:border-color .14s ease,box-shadow .14s ease}.canvas-video-frame-select:hover img,.canvas-video-frame-select:focus-within img{border-color:var(--canvas-blue);box-shadow:0 0 0 2px #2f6bff29}.canvas-video-frame-select-input{position:absolute;z-index:2;top:0;right:0;bottom:0;left:0;width:100%;height:100%;cursor:pointer;opacity:0}.canvas-video-frame-select-chevron{position:absolute;right:3px;bottom:3px;z-index:1;width:15px;height:15px;padding:2px;border-radius:50%;color:#fff;background:#16191fc2;pointer-events:none}.canvas-video-frame-direction{flex:0 0 auto;color:#a3a9b2}.canvas-video-frame-note{margin:0 0 8px;padding:0 16px;color:#8a909a;font-size:10px}.canvas-image-reference-strip:has(.canvas-frame-label){margin-bottom:8px}.canvas-video-reference-strip{min-height:72px;margin-bottom:8px;flex:0 0 auto;box-sizing:border-box}.canvas-prompt-input.canvas-image-prompt{min-height:118px;padding:18px 20px 12px;border-bottom:0;font-size:14px;line-height:1.7}.canvas-image-prompt-wrap{min-width:0;background:#fff}.canvas-image-prompt-mode{display:flex;min-width:0;align-items:center;gap:5px;padding:13px 20px 0;color:#167886;font-size:10px;font-weight:700;line-height:1.2}.canvas-image-prompt-mode>svg{flex:0 0 auto}.canvas-image-prompt-mode>span{overflow:hidden;padding:3px 7px;border:1px solid rgba(23,137,151,.18);border-radius:999px;background:#e7f8f8;text-overflow:ellipsis;white-space:nowrap}.canvas-image-prompt-mode.invalid{color:var(--canvas-coral)}.canvas-image-prompt-mode.invalid>span{border-color:#c453433d;background:#ffefeb}.canvas-image-prompt-mode>em{flex:0 0 auto;font-size:9px;font-style:normal;font-weight:650}.canvas-image-prompt-wrap.has-mode .canvas-image-prompt{min-height:96px;padding-top:8px}.canvas-prompt-input.canvas-video-prompt{flex:1 1 auto;min-height:0;height:auto}.canvas-prompt-input.canvas-video-prompt.expanded{padding-top:16px}.canvas-image-reference-strip+.canvas-image-prompt-wrap .canvas-image-prompt{padding-top:10px}.canvas-upstream-text-source{display:flex;align-items:flex-start;gap:9px;padding:12px 20px 0;color:#64717d}.canvas-upstream-text-source>svg{flex:0 0 auto;margin-top:2px;color:var(--canvas-blue)}.canvas-upstream-text-source>div{min-width:0;flex:1}.canvas-upstream-text-source span{display:block;margin-bottom:7px;color:#858d96;font-size:10px;font-weight:650}.canvas-upstream-text-source p{display:-webkit-box;overflow:hidden;margin:0 0 4px;-webkit-box-orient:vertical;-webkit-line-clamp:2;color:#252a31;font-size:14px;line-height:1.65}.canvas-node-editor.inline-node-editor .canvas-image-prompt{min-height:108px;padding:15px 20px 18px;font-size:15px;line-height:1.7}.canvas-node-editor.inline-node-editor .canvas-image-prompt.has-upstream-text{min-height:72px;padding-top:8px;color:#343a42;font-size:13px}.canvas-generator-input-notice{display:flex;min-height:86px;align-items:center;gap:11px;padding:16px 20px;color:#476a9b;background:#f5f8ff}.canvas-generator-input-notice>svg{flex:0 0 auto}.canvas-generator-input-notice>span{display:flex;min-width:0;flex-direction:column;gap:3px}.canvas-generator-input-notice strong{color:#315a91;font-size:12px}.canvas-generator-input-notice small{color:#7589a5;font-size:10px;line-height:1.45}.canvas-generator-input-notice.video-notice{flex:1 1 auto;min-height:0}.canvas-node-editor.editor-video .canvas-image-toolbar,.canvas-node-editor.editor-video .canvas-video-tabs{flex:0 0 auto}.canvas-image-toolbar{display:flex;min-height:58px;align-items:center;gap:12px;padding:8px 10px 10px 14px}.canvas-image-controls,.canvas-image-actions{display:flex;align-items:center;gap:5px}.canvas-image-controls{min-width:0;flex:1}.canvas-image-controls .canvas-field{width:74px;flex:0 0 auto}.canvas-image-controls .model-field{width:min(178px,36%)}.canvas-image-controls .canvas-field>span{display:none}.canvas-image-controls .canvas-field select{height:34px;padding:0 24px 0 8px;border-color:transparent;background-color:transparent;font-size:12px}.canvas-image-controls .canvas-field select:hover{border-color:#dfe2e8;background-color:#f8f9fa}.canvas-image-controls .canvas-image-option{position:relative;width:76px}.canvas-image-controls .canvas-image-option.count-field{width:82px}.canvas-image-option-icon,.canvas-image-option-chevron{position:absolute;z-index:1;top:50%;pointer-events:none;transform:translateY(-50%)}.canvas-image-option-icon{left:8px;color:#777e89}.canvas-image-option-chevron{right:6px;color:#9ba1aa}.canvas-image-controls .canvas-image-option select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:21px;padding-left:27px}.canvas-image-controls .canvas-image-option:hover .canvas-image-option-icon{color:#343943}.canvas-video-sound{display:inline-flex;height:34px;flex:0 0 auto;align-items:center;gap:5px;padding:0 9px;border:1px solid transparent;border-radius:8px;color:#777e89;background:transparent;font-size:11px;font-weight:650;cursor:pointer}.canvas-video-sound:hover{border-color:#e1e4e9;background:#fff;color:#343943}.canvas-video-sound.active{color:#34635e;border-color:#d6e7e4;background:#f1f8f6}.canvas-image-actions{flex-shrink:0;margin-left:auto}.canvas-image-cost{display:inline-flex;height:36px;align-items:center;gap:4px;padding:0 6px;color:#4d535d;font-size:12px;font-weight:650}.canvas-image-generate{display:grid;width:40px;height:40px;place-items:center;border-radius:10px;color:#fff!important;background:#15171a!important}.canvas-image-generate:hover{background:#30343a!important}.canvas-video-toolbar{min-height:66px;padding:10px 12px 12px 16px!important;border-top:1px solid #eceef1;background:linear-gradient(180deg,#fcfcfb,#f8f8f6)}.canvas-video-toolbar .canvas-image-controls{gap:3px}.canvas-video-toolbar .canvas-image-controls .model-field{width:158px;flex-basis:158px;margin-right:4px}.canvas-video-toolbar .canvas-image-controls .canvas-field select,.canvas-video-toolbar .canvas-video-sound{transition:color .14s ease,border-color .14s ease,background .14s ease}.canvas-video-actions{gap:7px;padding-left:10px;border-left:1px solid #e3e5e8}.canvas-video-cost{min-width:42px;justify-content:center;padding:0 5px;color:#5b4c25}.canvas-video-cost>svg{color:#b78a24}.canvas-video-cost strong{font-size:13px;font-weight:750}.canvas-video-generate{width:42px;height:42px;border-radius:12px;box-shadow:0 5px 13px #15171a2b}.canvas-video-generate:hover{transform:translateY(-1px);box-shadow:0 7px 16px #15171a38}.canvas-editor-tabs{display:flex;align-items:center;gap:10px;padding:10px 12px 0}.canvas-video-tabs{padding:12px 14px 0}.canvas-segments{display:inline-flex;gap:2px;padding:3px;border-radius:7px;background:#f0f2f5}.canvas-segments button{height:28px;padding:0 11px;border-radius:5px;color:#6d7480;font-size:12px}.canvas-segments button.active{color:#16191f;background:#fff;box-shadow:0 1px 3px #141a251f;font-weight:700}.canvas-image-reference.empty{display:grid;place-items:center;border:1px dashed #cbd1da;border-radius:8px;background:#fafbfc}.canvas-image-reference.empty>span.canvas-frame-empty{position:static;width:auto;height:auto;border:0;border-radius:0;color:#9aa1ab;background:transparent;font-size:16px;line-height:1}.canvas-image-reference.empty .canvas-frame-label{bottom:-14px}.upstream-badge{gap:4px;margin-left:auto;color:#3265cf;font-size:11px}.canvas-reference-row{display:flex;min-height:72px;align-items:flex-start;gap:8px;padding:10px 12px 8px;border-bottom:1px solid #eceef2;background:#fafbfc}.canvas-upload-button,.canvas-refresh-button{display:inline-flex;height:34px;align-items:center;gap:6px;padding:0 10px;border:1px solid #d7dbe3!important;border-radius:6px;background:#fff!important;color:#4e5561!important;font-size:12px}.canvas-reference-item{display:flex;width:48px;flex:0 0 48px;flex-direction:column;align-items:center;gap:3px}.canvas-reference-item>small,.canvas-reference-add small{max-width:48px;overflow:hidden;color:#858c97;font-size:9px;line-height:12px;text-overflow:ellipsis;white-space:nowrap}.canvas-reference-thumb{position:relative;width:48px;height:48px;overflow:hidden;border:1px solid #d8dce3;border-radius:6px;background:#fff}.canvas-reference-item.upstream .canvas-reference-thumb{border-color:#8fb4f4;box-shadow:0 0 0 2px #edf4ff}.canvas-reference-thumb img{width:100%;height:100%;object-fit:cover}.canvas-reference-thumb button{position:absolute;top:1px;right:1px;display:grid;width:17px;height:17px;place-items:center;border-radius:50%;color:#fff;background:#11141ab8}.canvas-reference-link{position:absolute;right:2px;bottom:2px;display:grid;width:17px;height:17px;place-items:center;border-radius:50%;color:#fff;background:#2f6bdb}.canvas-reference-add{display:flex;width:48px;flex:0 0 48px;flex-direction:column;align-items:center;gap:3px;color:#707783}.canvas-reference-add>svg{width:48px;height:48px;padding:14px;border:1px dashed #cbd1da;border-radius:6px;background:#fff}.canvas-reference-add:hover{color:#2f6bdb}.canvas-reference-add:hover>svg{border-color:#8fb4f4;background:#f5f8ff}.upstream-note{align-self:center;margin-left:auto;color:#5276b8;font-size:11px}.canvas-input-notice{gap:6px;padding:9px 14px;color:#366ac8;background:#f1f5ff;font-size:11px}.canvas-editor-controls{display:grid;grid-template-columns:minmax(190px,1.8fr) repeat(2,minmax(90px,.7fr));gap:8px;padding:10px 12px;border-bottom:1px solid #eceef2}.canvas-field{display:flex;flex-direction:column;min-width:0;gap:3px}.canvas-field>span{color:#858b96;font-size:9px;font-weight:650}.canvas-field select{width:100%;height:29px;padding:0 7px;overflow:hidden;border:1px solid #dfe2e8;outline:0;border-radius:5px;color:#343943;background:#f9fafb;font:inherit;font-size:11px;text-overflow:ellipsis}.canvas-field select:focus{border-color:var(--canvas-blue);background:#fff}.canvas-editor-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:56px;padding:9px 12px}.canvas-cost{gap:6px;color:#7b5e0c;font-size:12px;font-weight:650}.canvas-cost small{padding-left:5px;color:#9298a3;font-size:10px;font-weight:500}.canvas-editor-actions{gap:7px}.canvas-generate-button{display:inline-flex;height:36px;min-width:96px;align-items:center;justify-content:center;gap:7px;padding:0 14px;border-radius:7px;color:#fff!important;background:var(--canvas-ink)!important;font-size:12px;font-weight:700}.canvas-generate-button:hover{background:#30343b!important}.canvas-node-editor button:disabled{cursor:not-allowed;opacity:.48}.canvas-node-error{padding:9px 12px;border-top:1px solid #f1d1cf;color:#b23d38;background:#fff5f4;font-size:11px}.canvas-node-error.warning{border-top-color:#f0dfbb;color:#916116;background:#fff9ed}.canvas-floating-tools{position:absolute;z-index:35;top:50%;left:22px;display:flex;width:54px;flex-direction:column;align-items:center;gap:5px;padding:8px 6px;transform:translateY(-50%);border:1px solid #dde1e7;border-radius:8px;background:#fff;box-shadow:0 12px 32px #1d273a1f}.canvas-tool-button{display:grid;width:40px;height:40px;place-items:center;border-radius:7px;color:#5d6470}.canvas-tool-button:hover{color:#12151a;background:#f0f2f5}.canvas-tool-button.active{color:#fff;background:var(--canvas-ink)}.canvas-tool-button.add{color:var(--canvas-blue)}.canvas-tool-button.add.active{color:#fff;background:var(--canvas-blue)}.canvas-tool-button:disabled{cursor:default;opacity:.25}.canvas-tool-divider{width:30px;height:1px;margin:3px 0;background:#e2e5ea}.canvas-add-wrap{position:relative}.canvas-add-menu{position:absolute;top:0;left:50px;width:228px;padding:7px;border:1px solid #dce0e6;border-radius:8px;background:#fff;box-shadow:0 18px 48px #1a233429}.canvas-add-menu button{display:flex;width:100%;align-items:center;gap:10px;padding:9px;border-radius:6px;text-align:left}.canvas-add-menu button:hover{background:#f5f6f8}.canvas-add-menu button>span:last-child{display:flex;min-width:0;flex-direction:column;gap:2px}.canvas-add-menu strong{font-size:12px}.canvas-add-menu small{color:#8c929c;font-size:10px}.node-menu-icon{display:grid;width:30px;height:30px;flex-shrink:0;place-items:center;border-radius:6px}.node-menu-icon.text{color:#3e5a8a;background:#edf3fb}.node-menu-icon.image{color:#0d8478;background:#e8f7f4}.node-menu-icon.video{color:#b35a2b;background:#fff1e7}.node-menu-icon.asset{color:#78601a;background:#fff7d9}.canvas-connect-drop-menu{position:absolute;z-index:45;width:228px;padding:7px;border:1px solid #dce0e6;border-radius:10px;background:#fff;box-shadow:0 18px 48px #1a23342e}.canvas-connect-drop-title{display:block;padding:5px 8px 7px;color:#9298a2;font-size:10px;font-weight:700}.canvas-connect-drop-menu button{display:flex;width:100%;align-items:center;gap:10px;padding:8px;border:0;border-radius:7px;color:var(--canvas-ink);background:transparent;text-align:left}.canvas-connect-drop-menu button:hover{background:#f4f6f8}.canvas-connect-drop-menu button>span:last-child{display:flex;min-width:0;flex-direction:column;gap:2px}.canvas-connect-drop-menu strong{font-size:12px}.canvas-connect-drop-menu small{color:#8c929c;font-size:10px}.canvas-zoom-controls{position:absolute;z-index:30;right:22px;bottom:20px;display:flex;height:38px;align-items:center;gap:2px;padding:3px;border:1px solid #dde1e7;border-radius:8px;background:#fffffff0;box-shadow:0 8px 24px #1d273a1a}.canvas-zoom-controls button{display:grid;width:31px;height:30px;place-items:center;border-radius:5px;color:#555c67}.canvas-zoom-controls button:hover{color:#15181d;background:#f0f2f5}.canvas-zoom-controls span{min-width:47px;text-align:center;color:#69707b;font-size:12px;font-weight:650}.canvas-empty-state{position:absolute;z-index:15;top:50%;left:50%;width:min(620px,calc(100vw - 160px));transform:translate(-50%,-50%);text-align:center;pointer-events:none}.canvas-empty-kicker{color:var(--canvas-blue);font-size:11px;font-weight:750;text-transform:uppercase}.canvas-empty-state h1{margin:8px 0 5px;font-size:27px;line-height:1.25}.canvas-empty-state p{margin:0;color:#858b95;font-size:13px}.canvas-empty-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:23px;pointer-events:auto}.canvas-empty-actions button{display:flex;min-width:0;height:88px;flex-direction:column;align-items:flex-start;justify-content:center;gap:3px;padding:14px 16px;border:1px solid #dfe3e9;border-radius:8px;background:#ffffffe6;text-align:left;box-shadow:0 6px 18px #1f2a400d}.canvas-empty-actions button:hover{transform:translateY(-2px);border-color:#b9c0cb;box-shadow:0 10px 26px #1f2a401a}.canvas-empty-actions button:nth-child(1) svg{color:#3e5a8a}.canvas-empty-actions button:nth-child(2) svg{color:#0d8478}.canvas-empty-actions button:nth-child(3) svg{color:#b35a2b}.canvas-empty-actions button:nth-child(4) svg{color:#b35a2b}.canvas-empty-actions strong{margin-top:3px;font-size:13px}.canvas-empty-actions span{color:#9298a2;font-size:10px}.canvas-loading{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:grid;place-content:center;justify-items:center;gap:10px;color:#69707b;background-color:#f8f9fb;background-image:radial-gradient(#d9dde4 1px,transparent 1px);background-size:22px 22px}.canvas-loading span{display:grid;width:46px;height:46px;place-items:center;border:1px solid #dce0e6;border-radius:8px;background:#fff;box-shadow:0 10px 28px #1e283a1a}.canvas-loading p{margin:0;font-size:12px}.canvas-image-editor-modal .ant-modal-content{overflow:hidden;padding:0;border:1px solid #d8dde4;border-radius:12px;box-shadow:0 26px 80px #0e141f3d}.canvas-image-editor-modal .ant-modal-close{top:17px;right:18px;color:#68717e}.canvas-image-editor-head{display:flex;min-height:92px;align-items:center;justify-content:space-between;gap:28px;padding:18px 58px 16px 24px;border-bottom:1px solid #e4e7eb;background:#fbfcfd}.canvas-image-editor-head>div{min-width:0}.canvas-image-editor-head span{display:block;margin-bottom:2px;color:#1b8176;font-size:9px;font-weight:800;letter-spacing:.16em}.canvas-image-editor-head h2{margin:0;color:#252b34;font-size:18px;font-weight:720;letter-spacing:-.02em}.canvas-image-editor-head p{overflow:hidden;margin:3px 0 0;color:#89909a;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.canvas-image-editor-head strong{flex-shrink:0;padding:6px 9px;border:1px solid #dce1e7;border-radius:6px;color:#626b77;background:#fff;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;font-weight:600}.canvas-image-editor-modes{display:flex;gap:4px;padding:10px 18px;border-bottom:1px solid #e2e5e9;background:#f6f7f9}.canvas-image-editor-modes button{display:inline-flex;height:34px;align-items:center;gap:6px;padding:0 13px;border:1px solid transparent;border-radius:7px;color:#68717d;background:transparent;font-size:12px;font-weight:650}.canvas-image-editor-modes button:hover{color:#333b46;background:#fff}.canvas-image-editor-modes button.active{color:#156f67;border-color:#b9dcd7;background:#fff;box-shadow:0 2px 8px #17595114}.canvas-image-editor-stage{position:relative;display:grid;min-height:480px;max-height:min(62vh,610px);place-items:center;overflow:auto;padding:26px;background-color:#1d2229;background-image:linear-gradient(45deg,#242a32 25%,transparent 25%),linear-gradient(-45deg,#242a32 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#242a32 75%),linear-gradient(-45deg,transparent 75%,#242a32 75%);background-position:0 0,0 8px,8px -8px,-8px 0;background-size:16px 16px}.canvas-image-editor-stage .ReactCrop{max-width:100%;max-height:100%;line-height:0;box-shadow:0 16px 48px #00000059}.canvas-image-editor-stage .ReactCrop__child-wrapper{max-height:calc(min(62vh,610px) - 52px)}.canvas-image-editor-stage .ReactCrop img,.canvas-grid-crop-preview img{display:block;width:auto;max-width:100%;height:auto;max-height:calc(min(62vh,610px) - 52px);object-fit:contain}.canvas-image-editor-stage .ReactCrop__crop-selection{border:1px solid rgba(255,255,255,.95);box-shadow:0 0 0 9999em #070a0e94}.canvas-image-editor-state{display:flex;align-items:center;gap:9px;color:#ced4dc;font-size:12px}.canvas-image-editor-state.error{max-width:460px;color:#ffb5ad;text-align:center}.canvas-grid-crop-preview{position:relative;max-width:100%;max-height:100%;box-shadow:0 16px 48px #00000059;line-height:0}.canvas-grid-crop-lines{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(var(--grid-columns),1fr);grid-template-rows:repeat(var(--grid-rows),1fr)}.canvas-grid-crop-lines span{display:grid;place-items:center;border-right:1px solid rgba(255,255,255,.92);border-bottom:1px solid rgba(255,255,255,.92);color:#fff;background:#090d1214;font-size:12px;font-weight:750;line-height:1;text-shadow:0 1px 5px #000}.canvas-grid-crop-lines span:nth-child(3n){border-right:0}.canvas-grid-crop-preview[data-columns="2"] .canvas-grid-crop-lines span:nth-child(3n){border-right:1px solid rgba(255,255,255,.92)}.canvas-grid-crop-preview[data-columns="2"] .canvas-grid-crop-lines span:nth-child(2n){border-right:0}.canvas-grid-crop-lines span:nth-last-child(-n+3){border-bottom:0}.canvas-grid-crop-preview[data-rows="2"] .canvas-grid-crop-lines span:nth-last-child(-n+3){border-bottom:0}.canvas-grid-crop-preview[data-columns="2"] .canvas-grid-crop-lines span:nth-last-child(-n+2){border-bottom:0}.canvas-image-editor-controls{display:flex;min-height:70px;align-items:center;justify-content:space-between;gap:18px;padding:14px 18px;border-top:1px solid #e0e4e9;background:#fafbfc}.canvas-image-ratios{display:flex;min-width:0;align-items:center;gap:5px;overflow-x:auto}.canvas-image-ratios>span{flex-shrink:0;margin-right:4px;color:#7b838e;font-size:11px;font-weight:650}.canvas-image-ratios button{height:29px;flex-shrink:0;padding:0 9px;border:1px solid #d9dee5;border-radius:6px;color:#606975;background:#fff;font-size:10px}.canvas-image-ratios button:hover{border-color:#9bc9c3;color:#176f66}.canvas-image-ratios button.active{border-color:#5aaca2;color:#12675f;background:#edf8f6}.canvas-image-grid-hint{display:flex;align-items:center;gap:7px;color:#69727e;font-size:11px}.canvas-image-editor-actions{display:flex;flex-shrink:0;gap:8px}.canvas-image-editor-actions button{display:inline-flex;height:34px;align-items:center;justify-content:center;gap:6px;padding:0 15px;border:1px solid #d5dae1;border-radius:7px;color:#58616d;background:#fff;font-size:11px;font-weight:650}.canvas-image-editor-actions button.primary{min-width:92px;color:#fff;border-color:#176f66;background:#176f66;box-shadow:0 5px 14px #176f662e}.canvas-image-editor-actions button.primary:hover{background:#105f57}.canvas-image-editor-actions button:disabled{cursor:not-allowed;opacity:.52}.canvas-image-editor-error{padding:8px 18px;color:#a9433c;border-top:1px solid #f0d5d2;background:#fff5f4;font-size:11px}.spin{animation:canvas-spin .9s linear infinite}@keyframes canvas-spin{to{transform:rotate(360deg)}}.canvas-image-mode-node-toolbar{z-index:42;max-width:calc(100vw - 32px);pointer-events:auto}.canvas-image-mode-bar{display:flex;width:max-content;max-width:min(1040px,calc(100vw - 32px));min-height:48px;align-items:center;gap:4px;padding:6px;overflow-x:auto;overflow-y:hidden;border:1px solid var(--canvas-line);border-radius:13px;color:var(--canvas-ink);background:#fffffff5;box-shadow:0 12px 32px #1d273a1f,0 2px 8px #1d273a0f;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);scrollbar-width:none}.canvas-image-mode-bar::-webkit-scrollbar{display:none}.canvas-image-mode-brand{display:inline-flex;width:32px;height:32px;flex:0 0 32px;align-items:center;justify-content:center;border-radius:8px;color:var(--canvas-blue);background:var(--canvas-blue-soft)}.canvas-image-mode-loading,.canvas-image-mode-empty{display:inline-flex;height:32px;flex-shrink:0;align-items:center;gap:6px;padding:0 10px;color:var(--canvas-muted);font-size:11px;white-space:nowrap}.canvas-image-mode-category,.canvas-image-mode-more,.canvas-mode-clear{display:inline-flex;height:34px;flex:0 0 auto;align-items:center;justify-content:center;gap:6px;padding:0 10px;border:1px solid transparent;border-radius:8px;color:#5d6470;background:transparent;font-size:11px;font-weight:650;line-height:1;cursor:pointer;transition:color .15s ease,background .15s ease,border-color .15s ease}.canvas-image-mode-category{max-width:176px}.canvas-image-mode-category b{display:inline-flex;width:18px;flex:0 0 18px;align-items:center;justify-content:center;font-size:14px}.canvas-image-mode-category>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.canvas-image-mode-chevron{flex:0 0 auto;color:#9aa1ac;transition:color .15s ease,transform .15s ease}.canvas-image-mode-category:hover,.canvas-image-mode-category.ant-dropdown-open,.canvas-image-mode-more:hover,.canvas-mode-clear:hover{color:var(--canvas-ink);background:#f0f2f5}.canvas-image-mode-category:hover .canvas-image-mode-chevron,.canvas-image-mode-category.ant-dropdown-open .canvas-image-mode-chevron{color:var(--canvas-muted)}.canvas-image-mode-category.ant-dropdown-open .canvas-image-mode-chevron{transform:rotate(180deg)}.canvas-image-mode-category.active{color:#fff;border-color:transparent;background:var(--canvas-blue)}.canvas-image-mode-category.active .canvas-image-mode-chevron{color:#ffffffbf}.canvas-image-mode-category.personal:not(.active) b{color:#8c64b3}.canvas-image-mode-divider{width:1px;height:24px;flex:0 0 1px;margin:0 3px;background:var(--canvas-line)}.canvas-image-mode-more{padding:0 9px}.canvas-image-mode-invalid{display:inline-flex;max-width:150px;height:30px;flex:0 0 auto;align-items:center;gap:5px;padding:0 8px;overflow:hidden;border:1px solid #f1b7b3;border-radius:7px;color:var(--canvas-coral);background:#fff7f6;font-size:10px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.canvas-image-mode-bar.invalid{border-color:#f1b7b3}.canvas-mode-clear{width:32px;padding:0;color:var(--canvas-muted)}.canvas-image-category-dropdown .ant-dropdown-menu{min-width:216px;padding:5px;border-radius:12px;box-shadow:0 12px 32px #1d273a24,0 2px 8px #1d273a14}.canvas-image-category-dropdown .ant-dropdown-menu-item{margin:1px 0;padding:5px 7px;border-radius:7px}.canvas-image-category-dropdown .ant-dropdown-menu-item-group-title{padding:5px 7px 3px;color:var(--canvas-muted);font-size:10px;font-weight:750;letter-spacing:.08em}.canvas-mode-menu-item{display:grid;min-width:184px;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:7px}.canvas-mode-menu-item b{width:24px;height:24px;display:grid;place-items:center;border-radius:6px;color:#4b535b;background:#f0f2f4;font-size:12px}.canvas-mode-menu-copy{display:grid;min-width:0;gap:1px}.canvas-mode-menu-copy strong{overflow:hidden;color:#252a2f;font-size:12px;font-weight:750;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.canvas-mode-menu-copy small{overflow:hidden;color:#858e97;font-size:10px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.canvas-mode-menu-item em{padding:2px 5px;border-radius:5px;color:#8c64b3;background:#f4edfb;font-size:9px;font-style:normal;font-weight:700}.canvas-mode-menu-item.active{color:var(--canvas-blue);font-weight:700}.canvas-mode-menu-item.active b{color:#fff;background:var(--canvas-blue)}.canvas-mode-menu-item.active .canvas-mode-menu-copy strong{color:var(--canvas-blue)}.canvas-mode-manager-list{max-height:430px;overflow:auto}.canvas-mode-avatar{width:38px;height:38px;display:grid;place-items:center;color:var(--canvas-blue);background:var(--canvas-blue-soft);border-radius:9px;font-weight:750}.canvas-mode-form-row{display:grid!important;grid-template-columns:2fr .6fr 1.2fr .7fr;width:100%}.canvas-mode-form-row--five{grid-template-columns:2fr .6fr 1fr 1fr .6fr!important}.canvas-mode-form-row .ant-form-item{margin-bottom:10px}@media(max-width:1100px){.canvas-brand-name{display:none}.canvas-document-control{min-width:200px}.canvas-save-status{display:none}.canvas-text-button{font-size:0;width:36px;padding:0;justify-content:center}.canvas-text-button svg{width:17px;height:17px}.canvas-node-editor{width:min(560px,calc(100vw - 44px))}}@media(max-width:760px){.canvas-topbar{gap:8px;padding:0 10px}.canvas-brand-mark,.canvas-top-actions .canvas-icon-button.danger,.canvas-balance{display:none}.canvas-document-control{min-width:0;flex:1;margin-left:0}.canvas-floating-tools{left:10px}.canvas-zoom-controls{right:10px;bottom:10px}.canvas-empty-state{width:calc(100vw - 100px)}.canvas-empty-actions{grid-template-columns:1fr}.canvas-empty-actions button{height:66px}.canvas-node-editor{width:calc(100vw - 28px)}.canvas-node-editor.editor-video:not(.inline-node-editor){height:auto;min-height:296px}.canvas-node-editor.editor-video:not(.inline-node-editor) .canvas-video-composer{min-height:140px}.canvas-node-editor.editor-video:not(.inline-node-editor) .canvas-video-reference-panel,.canvas-node-editor.editor-video:not(.inline-node-editor) .mode-image-to-video .canvas-video-reference-panel,.canvas-node-editor.editor-video:not(.inline-node-editor) .mode-omni-reference .canvas-video-reference-panel{width:auto;flex-basis:auto}.canvas-image-mode-node-toolbar,.canvas-image-mode-bar{max-width:calc(100vw - 20px)}.canvas-image-mode-category{max-width:128px;padding:0 8px}.canvas-editor-controls{grid-template-columns:1fr 1fr}.model-field{grid-column:1 / -1}.canvas-image-toolbar{flex-wrap:wrap}.canvas-image-controls{flex-basis:100%}.canvas-image-controls .model-field{width:auto;min-width:0;flex:1;grid-column:auto}.canvas-image-controls .canvas-image-option{width:72px}.canvas-image-controls .canvas-image-option.count-field{width:80px}.canvas-image-actions{width:100%;justify-content:flex-end}.canvas-image-editor-modal{max-width:calc(100vw - 16px)}.canvas-image-editor-head{padding-left:16px}.canvas-image-editor-stage{min-height:360px;padding:14px}.canvas-image-editor-controls{align-items:stretch;flex-direction:column}.canvas-image-editor-actions{justify-content:flex-end}}.canvas-stage .react-flow__resize-control{border-color:#4096ff;background:#fff;border-radius:3px;width:7px;height:7px;border-width:2px;border-style:solid}.canvas-stage .react-flow__resize-control.handle{width:9px;height:9px}.canvas-stage .react-flow__resize-control.line{border-color:#4096ff;border-width:1px;background:transparent}.canvas-node-floating-status{position:absolute;top:8px;left:8px;z-index:5;display:flex;align-items:center;gap:4px;padding:3px 8px;border-radius:12px;background:#ffffffe6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);font-size:10px;color:var(--canvas-muted);pointer-events:none}.canvas-node-floating-status.status-succeeded{color:var(--canvas-teal)}.canvas-node-floating-status.status-failed{color:var(--canvas-coral)}.canvas-node-floating-status.timed-out{color:#a66f13}.canvas-group-box{position:absolute;pointer-events:auto;z-index:0;border:1.5px dashed rgba(47,107,255,.55);border-radius:14px;background:#2f6bff0f;box-shadow:0 0 0 1px #2f6bff14 inset;cursor:grab}.canvas-group-box:active{cursor:grabbing}.canvas-group-label{position:absolute;top:-1px;left:-1px;display:flex;align-items:center;gap:4px;padding:2px 4px 2px 2px;border-radius:12px 0;background:#2f6bffeb;color:#fff;font-size:11px;font-weight:600;pointer-events:auto}.canvas-group-name{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;border:none;background:transparent;color:#fff;font-size:11px;font-weight:600;cursor:pointer;max-width:220px}.canvas-group-name span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.canvas-group-delete{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border:none;border-radius:50%;background:#ffffff2e;color:#fff;cursor:pointer}.canvas-group-delete:hover{background:#ffffff59}.canvas-selection-bar{position:absolute;top:18px;left:50%;transform:translate(-50%);z-index:20;display:flex;align-items:center;gap:10px;padding:6px 8px 6px 14px;border-radius:22px;background:#fffffff5;box-shadow:0 6px 20px #0f172a24;font-size:12px;color:var(--canvas-muted)}.canvas-selection-bar button{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border:none;border-radius:16px;background:var(--canvas-blue);color:#fff;font-size:12px;font-weight:600;cursor:pointer}.canvas-selection-bar button:hover{filter:brightness(1.05)}.canvas-group-name-input{width:100%;padding:8px 10px;border:1px solid var(--canvas-border, #d8dce4);border-radius:8px;font-size:14px}.canvas-publish-form{display:flex;flex-direction:column;gap:12px}.canvas-publish-form label{display:flex;flex-direction:column;gap:5px;font-size:12px;color:var(--canvas-muted)}.canvas-publish-form input,.canvas-publish-form select,.canvas-publish-form textarea{padding:8px 10px;border:1px solid #d8dce4;border-radius:8px;font-size:13px;font-family:inherit;resize:vertical}.canvas-publish-form input:focus,.canvas-publish-form select:focus,.canvas-publish-form textarea:focus{outline:none;border-color:var(--canvas-blue)}.canvas-publish-hint{margin:4px 0 0;font-size:11px;color:var(--canvas-muted);line-height:1.5}.canvas-publish-cover-row{display:flex;align-items:center;gap:10px}.canvas-publish-cover-preview{position:relative;width:120px;aspect-ratio:16 / 9;border-radius:8px;overflow:hidden;border:1px solid #e8ebf0}.canvas-publish-cover-preview img{width:100%;height:100%;object-fit:cover;display:block}.canvas-publish-cover-preview button{position:absolute;top:4px;right:4px;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border:none;border-radius:50%;background:#17191da6;color:#fff;cursor:pointer}.canvas-publish-cover-upload{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:1px dashed #c5cdd9;border-radius:8px;background:#fff;color:var(--canvas-muted);font-size:12px;cursor:pointer}.canvas-publish-cover-upload:hover:not(:disabled){border-color:var(--canvas-blue);color:var(--canvas-blue)}.canvas-publish-cover-upload:disabled{opacity:.6;cursor:default}.canvas-publish-public{display:flex;flex-direction:row!important;align-items:center;justify-content:space-between;padding:10px 12px;border:1px solid #e8ebf0;border-radius:8px}.canvas-publish-public span{display:flex;flex-direction:column;gap:3px;font-size:12px;color:var(--canvas-ink)}.canvas-publish-public em{font-style:normal;font-size:11px;color:var(--canvas-muted)}.canvas-list-modal .ant-modal-body{padding-top:12px}.canvas-list-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.canvas-list-hint{margin:0;color:#737986;font-size:13px}.canvas-list-create-btn{display:inline-flex;align-items:center;gap:5px;padding:6px 14px;border:1px solid #2f6bff;border-radius:7px;background:#2f6bff;color:#fff;font-size:13px;font-weight:500;cursor:pointer;transition:background .15s,opacity .15s}.canvas-list-create-btn:hover:not(:disabled){background:#1a57ed}.canvas-list-create-btn:disabled{opacity:.6;cursor:not-allowed}.canvas-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;max-height:60vh;overflow-y:auto;padding:2px}.canvas-card{border:1px solid #ebedf0;border-radius:10px;overflow:hidden;cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .15s;background:#fff}.canvas-card:hover{border-color:#2f6bff;box-shadow:0 4px 14px #2f6bff1f;transform:translateY(-2px)}.canvas-card-cover{position:relative;width:100%;aspect-ratio:16 / 10;background:#f5f6f8;overflow:hidden}.canvas-card-cover img{width:100%;height:100%;object-fit:cover}.canvas-card-cover-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:#c0c4cc}.canvas-card-delete-btn{position:absolute;top:8px;right:8px;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:6px;background:#00000059;color:#fff;cursor:pointer;opacity:0;transition:opacity .15s,background .15s;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.canvas-card:hover .canvas-card-delete-btn{opacity:1}.canvas-card-delete-btn:hover:not(:disabled){background:#e95e58d9}.canvas-card-delete-btn:disabled{opacity:.5;cursor:not-allowed}.canvas-card-info{display:flex;flex-direction:column;gap:3px;padding:10px 12px}.canvas-card-title{font-size:14px;font-weight:500;color:#17191d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.canvas-card-time{font-size:12px;color:#9aa3b2}.canvas-card-loading{grid-column:1 / -1;display:flex;align-items:center;justify-content:center;padding:60px 0;color:#9aa3b2}.canvas-card-empty{grid-column:1 / -1;text-align:center;padding:60px 0;color:#9aa3b2;font-size:14px}@keyframes spin{to{transform:rotate(360deg)}}.canvas-list-modal .spin{animation:spin .8s linear infinite}.director-studio{--director-bg: #070b12;--director-panel: #0e1521;--director-panel-2: #121c2a;--director-border: rgba(182, 208, 235, .14);--director-border-strong: rgba(182, 208, 235, .24);--director-text: #edf5ff;--director-muted: #8fa4ba;--director-blue: #6ab6ff;--director-blue-soft: rgba(72, 153, 228, .18);height:100vh;min-width:1100px;overflow:hidden;color:var(--director-text);background:var(--director-bg);font-family:Avenir Next,PingFang SC,Microsoft YaHei,sans-serif;letter-spacing:.01em}.director-topbar{height:64px;display:flex;align-items:center;gap:22px;padding:0 18px;border-bottom:1px solid var(--director-border);background:#0b111bf5}.director-brand{display:flex;align-items:center;gap:10px;min-width:210px}.director-brand strong{display:block;font-size:14px;letter-spacing:.06em}.director-brand small{display:block;margin-top:2px;color:var(--director-muted);font-size:11px}.director-back,.director-icon-button{display:grid;place-items:center;width:30px;height:30px;color:var(--director-muted);border:1px solid var(--director-border);border-radius:8px;background:transparent}.director-back:hover,.director-icon-button:hover{color:var(--director-text);border-color:var(--director-border-strong);background:var(--director-blue-soft)}.director-mark{display:grid;place-items:center;width:30px;height:30px;color:#06101b;border-radius:9px;background:var(--director-blue);box-shadow:0 0 18px #6ab6ff3d}.director-toolbar{display:flex;align-items:center;gap:4px;flex:1;min-width:0}.director-toolbar button{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 10px;color:var(--director-muted);border:1px solid transparent;border-radius:7px;background:transparent;font-size:12px}.director-toolbar button:hover,.director-toolbar button.active{color:var(--director-text);border-color:var(--director-border-strong);background:var(--director-blue-soft)}.director-toolbar label{display:inline-flex;align-items:center;gap:6px;height:32px;margin-left:4px;padding:0 8px;color:var(--director-muted);border:1px solid var(--director-border);border-radius:7px;font-size:11px}.director-toolbar input,.director-toolbar select{width:48px;color:var(--director-text);border:0;outline:0;background:transparent;font:inherit}.director-toolbar select{width:54px}.director-toolbar option{color:#172231}.director-divider{width:1px;height:21px;margin:0 8px;background:var(--director-border)}.director-actions{display:flex;align-items:center;gap:9px}.director-save-state{color:var(--director-muted);font-size:11px;white-space:nowrap}.director-save-state.dirty{color:#f3bd77}.director-save-button{display:inline-flex;align-items:center;gap:7px;height:34px;padding:0 14px;color:#06101b;border:0;border-radius:8px;background:var(--director-blue);font-weight:700;font-size:12px;box-shadow:0 4px 18px #50a3eb38}.director-save-button:hover{background:#8cc9ff}.director-save-button:disabled{cursor:wait;opacity:.65}.director-pulse{animation:directorPulse 1s ease-in-out infinite}@keyframes directorPulse{50%{opacity:.35;transform:scale(.8)}}.director-workspace{display:grid;grid-template-columns:276px minmax(500px,1fr) 320px;height:calc(100vh - 104px)}.director-sidebar{min-width:0;overflow:hidden;background:linear-gradient(180deg,#101927,#0b121d)}.director-left-panel{border-right:1px solid var(--director-border)}.director-right-panel{overflow-y:auto;border-left:1px solid var(--director-border)}.director-panel-heading{display:flex;align-items:center;justify-content:space-between;padding:20px 18px 14px}.director-panel-heading h1{margin:2px 0 0;font-size:18px;font-weight:600;letter-spacing:-.02em}.director-panel-heading button{display:grid;place-items:center;width:28px;height:28px;color:var(--director-muted);border:1px solid var(--director-border);border-radius:7px;background:#ffffff05}.director-panel-heading button:hover{color:var(--director-blue);border-color:var(--director-blue)}.director-left-tabs{display:flex;gap:6px;margin:0 14px 12px;padding:4px;border:1px solid var(--director-border);border-radius:9px;background:#ffffff06}.director-left-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:6px;flex:1;height:29px;color:var(--director-muted);border:0;border-radius:6px;background:transparent;font:inherit;font-size:11px;cursor:pointer}.director-left-tabs button.active{color:var(--director-text);background:var(--director-blue-soft)}.director-library-panel{height:calc(100% - 126px);overflow:hidden}.director-empty-inspector{display:grid;justify-items:center;gap:9px;margin:90px 24px;color:var(--director-muted);text-align:center}.director-empty-inspector svg{color:var(--director-blue)}.director-empty-inspector strong{color:var(--director-text);font-size:12px}.director-empty-inspector small{line-height:1.6;font-size:10px}.eyebrow{color:var(--director-blue);font-size:9px;font-weight:800;letter-spacing:.18em}.director-scene-summary{display:flex;gap:12px;margin:0 14px 12px;padding:9px 10px;color:var(--director-muted);border:1px solid var(--director-border);border-radius:8px;background:#ffffff06;font-size:11px}.director-scene-summary span{display:inline-flex;align-items:center;gap:5px}.director-outline{height:calc(100% - 185px);overflow:auto;padding:2px 10px}.director-outline-group{margin-bottom:14px}.director-outline-label{display:flex;align-items:center;gap:7px;padding:7px 8px;color:#bccbdd;font-size:12px;font-weight:600}.director-outline-label>span:first-child{color:var(--director-blue)}.director-outline-label em{margin-left:auto;color:var(--director-muted);font-style:normal;font-size:11px}.director-outline button{display:flex;align-items:center;gap:8px;width:100%;min-height:34px;padding:0 8px;color:var(--director-muted);border:1px solid transparent;border-radius:7px;background:transparent;text-align:left;font:inherit;font-size:12px}.director-outline button:hover,.director-outline button.selected{color:var(--director-text);border-color:var(--director-blue);background:#4a97e23d;box-shadow:inset 3px 0 0 var(--director-blue),0 0 0 1px #6ab6ff14}.director-outline button small{margin-left:auto;color:var(--director-muted);font-size:10px}.director-outline button svg:last-child{margin-left:4px;opacity:0}.director-outline button:hover svg:last-child{opacity:.8}.director-person-dot{display:inline-block;width:9px;height:9px;border:2px solid var(--director-blue);border-radius:50%}.director-add-camera{justify-content:center;margin-top:4px;border:1px dashed var(--director-border)!important;color:var(--director-blue)!important}.director-left-actions{display:flex;gap:8px;padding:10px 14px 16px;border-top:1px solid var(--director-border)}.director-left-actions button{display:inline-flex;align-items:center;justify-content:center;gap:5px;flex:1;height:32px;color:var(--director-muted);border:1px solid var(--director-border);border-radius:7px;background:#ffffff05;font:inherit;font-size:11px}.director-left-actions button:hover{color:var(--director-text);border-color:var(--director-blue);background:var(--director-blue-soft)}.director-viewport-panel{position:relative;display:flex;flex-direction:column;min-width:0;background:#05080d}.director-viewport-meta{display:flex;align-items:center;gap:8px;height:38px;padding:0 16px;color:var(--director-muted);border-bottom:1px solid var(--director-border);font-size:11px}.director-live-dot{width:7px;height:7px;border-radius:50%;background:#71d4a2;box-shadow:0 0 10px #71d4a2}.director-viewport-count{margin-left:auto;color:#6c8197}.director-viewport-frame{position:relative;flex:1;min-height:0;overflow:hidden}.director-viewport-frame>div:first-child{height:100%!important}.director-safe-frame{position:absolute;top:7%;bottom:7%;left:50%;width:min(37%,360px);transform:translate(-50%);border:1px solid rgba(174,207,235,.55);border-radius:6px;box-shadow:0 0 0 9999px #00000029;pointer-events:none}.director-viewport-crosshair{position:absolute;top:50%;left:50%;width:12px;height:12px;transform:translate(-50%,-50%);border:1px solid rgba(174,207,235,.55);border-radius:50%;pointer-events:none}.director-viewport-footer{display:flex;justify-content:space-between;height:36px;padding:0 16px;color:#71869a;border-top:1px solid var(--director-border);font-size:11px}.director-viewport-footer span{display:inline-flex;align-items:center;gap:6px}.director-viewport-footer span:first-child{color:var(--director-blue)}.director-tabs{display:flex;gap:0;margin:0 14px 12px;border-bottom:1px solid var(--director-border)}.director-tabs button{position:relative;flex:1;height:34px;color:var(--director-muted);border:0;background:none;font:inherit;font-size:12px}.director-tabs button.active{color:var(--director-text)}.director-tabs button.active:after{position:absolute;right:20%;bottom:-1px;left:20%;height:2px;background:var(--director-blue);content:""}.director-search{display:flex;align-items:center;gap:7px;margin:0 14px 12px;padding:0 10px;height:34px;color:var(--director-muted);border:1px solid var(--director-border);border-radius:8px;background:#ffffff06}.director-search input{width:100%;color:var(--director-text);border:0;outline:0;background:transparent;font:inherit;font-size:12px}.director-search input::placeholder{color:#60758a}.director-asset-list,.director-template-list{height:calc(100% - 220px);overflow:auto;padding:0 14px}.director-category-strip{display:flex;gap:6px;overflow-x:auto;padding:0 0 8px}.director-category-strip button{padding:5px 9px;color:var(--director-muted);border:1px solid var(--director-border);border-radius:8px;background:#ffffff0a;white-space:nowrap;font:inherit;font-size:10px;cursor:pointer}.director-category-strip button.active{color:var(--director-text);border-color:var(--director-blue);background:var(--director-blue-soft)}.director-asset-card,.director-template-card,.director-import-card{display:flex;align-items:center;gap:10px;width:100%;min-height:58px;margin-bottom:8px;padding:8px;color:var(--director-text);border:1px solid var(--director-border);border-radius:9px;background:#ffffff06;text-align:left;font:inherit}.director-asset-card:hover,.director-template-card:hover,.director-import-card:hover{border-color:#6ab6ff80;background:var(--director-blue-soft)}.director-asset-card>span:nth-child(2),.director-template-card>span:nth-child(2),.director-import-card>span:nth-child(2){min-width:0;flex:1}.director-asset-card strong,.director-template-card strong,.director-import-card strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.director-asset-card small,.director-template-card small,.director-import-card small{display:block;margin-top:4px;overflow:hidden;color:var(--director-muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px}.director-asset-thumb,.director-template-icon{display:grid;place-items:center;flex:0 0 40px;height:40px;color:var(--director-blue);border-radius:7px;background:linear-gradient(135deg,#203751,#162433)}.director-asset-thumb.type-prop{color:#e2ae79}.director-asset-thumb.type-environment{color:#7ed2ad}.director-asset-thumb.type-crowd{color:#8fb7e8}.director-import-card{border-style:dashed;color:var(--director-blue);background:transparent}.director-pose-panel{margin:12px 14px 0;padding-top:12px;border-top:1px solid var(--director-border)}.director-subheading{display:flex;align-items:center;justify-content:space-between;color:var(--director-text);font-size:12px}.director-subheading span{display:inline-flex;align-items:center;gap:6px}.director-subheading small{color:var(--director-muted);font-size:10px}.director-pose-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin-top:8px}.director-pose-strip button{min-height:58px;padding:5px 2px;color:var(--director-muted);border:1px solid var(--director-border);border-radius:7px;background:#ffffff06;font:inherit}.director-pose-strip button.active,.director-pose-strip button:hover{color:var(--director-text);border-color:var(--director-blue);background:var(--director-blue-soft)}.director-pose-figure{display:block;margin-bottom:4px;color:#7da9d2;font-size:17px}.director-pose-strip small{font-size:10px}.director-save-pose,.director-delete-selected{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;margin-top:9px;padding:7px 9px;color:#b9dcff;border:1px solid rgba(106,182,255,.35);border-radius:8px;background:#529bdb14;font:inherit;font-size:11px;cursor:pointer}.director-transform-panel{margin:12px 14px 0;padding-top:12px;border-top:1px solid var(--director-border)}.director-position-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:8px}.director-position-grid label{color:var(--director-muted);font-size:10px}.director-position-grid input{box-sizing:border-box;width:100%;margin-top:4px;padding:6px 5px;color:var(--director-text);border:1px solid var(--director-border);border-radius:6px;background:#ffffff0a;font:inherit;font-size:11px}.director-selected-entity{margin-top:8px;padding:7px 8px;color:var(--director-muted);border:1px solid rgba(106,182,255,.22);border-radius:7px;background:#529bdb14;font-size:10px}.director-selected-entity strong{margin-left:3px;color:var(--director-text);font-size:11px}.director-duplicate-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:100%;margin-top:9px;padding:7px 9px;color:#b9dcff;border:1px solid rgba(106,182,255,.25);border-radius:7px;background:#529bdb0f;font:inherit;font-size:10px;cursor:pointer}.director-duplicate-button:hover{border-color:var(--director-blue);background:var(--director-blue-soft)}.director-size-panel{margin:12px 14px 0;padding-top:12px;border-top:1px solid var(--director-border)}.director-size-presets{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:8px}.director-size-presets button{display:grid;gap:3px;min-height:42px;padding:6px 3px;color:var(--director-muted);border:1px solid var(--director-border);border-radius:7px;background:#ffffff06;font:inherit;font-size:10px;cursor:pointer}.director-size-presets button:hover,.director-size-presets button.active{color:var(--director-text);border-color:var(--director-blue);background:var(--director-blue-soft)}.director-size-presets small{color:#6f8ca8;font-size:9px}.director-scale-input{display:grid;grid-template-columns:1fr 76px 14px;gap:7px;align-items:center;margin-top:8px;color:var(--director-muted);font-size:10px}.director-scale-input input{box-sizing:border-box;width:100%;padding:6px 5px;color:var(--director-text);border:1px solid var(--director-border);border-radius:6px;outline:0;background:#ffffff0a;font:inherit;font-size:11px}.director-scale-input span{color:var(--director-muted)}.director-delete-selected{margin:10px 14px 0;width:calc(100% - 28px);color:#faa;border-color:#f871714d;background:#f871710d}.director-joint-panel{margin:12px 14px 0;padding-top:12px;border-top:1px solid var(--director-border)}.director-joint-panel details{margin-top:8px;overflow:hidden;border:1px solid var(--director-border);border-radius:7px;background:#ffffff05}.director-joint-panel summary{display:flex;align-items:center;justify-content:space-between;padding:7px 8px;color:#9fb5ca;cursor:pointer;font-size:10px;list-style-position:inside}.director-joint-panel summary small{margin-left:auto;color:#60778e;font-size:9px}.director-joint-group{padding:0 7px 7px;border-top:1px solid rgba(91,118,143,.16)}.director-joint-panel label{display:grid;grid-template-columns:48px 1fr 31px;gap:6px;align-items:center;margin-top:7px;color:var(--director-muted);font-size:10px}.director-joint-panel input{width:100%;accent-color:var(--director-blue)}.director-joint-panel em{color:var(--director-text);font-style:normal;text-align:right;font-variant-numeric:tabular-nums}.director-bottom-bar{display:flex;align-items:center;justify-content:space-between;height:40px;padding:0 18px;color:var(--director-muted);border-top:1px solid var(--director-border);background:#0b121d;font-size:11px}.director-key-hint{margin:0 4px;padding:2px 5px;color:#b4c6da;border:1px solid var(--director-border);border-radius:4px;font-size:9px}.director-loading{display:grid;place-items:center;gap:10px;height:100vh;color:#8fb8d9;background:#070b12;font-family:Avenir Next,PingFang SC,sans-serif}.director-loading span{font-size:13px}.director-node-shell{position:relative;width:300px}.director-node-shell .canvas-handle.source{right:-7px}.director-node-card{overflow:hidden;border:1px solid #b9cbe0;border-radius:16px;background:linear-gradient(155deg,#f7fbff,#eaf1f8);box-shadow:0 15px 36px #233e5c24}.director-node-shell.selected .director-node-card{border-color:#4d9fe2;box-shadow:0 0 0 3px #4d9fe22e,0 16px 42px #233e5c33}.director-node-head{display:flex;align-items:center;justify-content:space-between;padding:10px 11px;color:#1f344b}.director-node-title{display:flex;align-items:center;gap:6px;font-weight:700;font-size:12px}.director-node-title svg{color:#2385cb}.director-node-open{display:grid;place-items:center;width:28px;height:28px;color:#e8f5ff;border:1px solid #267db7;border-radius:8px;background:#126a9e}.director-node-open:hover{background:#0d81c7}.director-node-preview{position:relative;display:block;width:calc(100% - 18px);margin:0 9px;overflow:hidden;padding:0;border:1px solid rgba(58,103,141,.42);border-radius:11px;background:radial-gradient(circle at 50% 24%,#284463,#08101b 62%);aspect-ratio:9/16}.director-node-preview img{width:100%;height:100%;object-fit:cover}.director-node-preview .ant-image{display:block;width:100%;height:100%}.director-node-empty{display:grid;place-items:center;align-content:center;height:100%;gap:8px;color:#94b0c9}.director-node-empty strong{color:#d7e7f5;font-size:13px}.director-node-empty span{color:#7892ab;font-size:10px}.director-node-badge{position:absolute;right:8px;bottom:8px;display:inline-flex;align-items:center;gap:5px;padding:4px 7px;color:#f8d694;border:1px solid rgba(242,188,100,.35);border-radius:999px;background:#231b0ebd;font-size:10px}.director-node-badge.rendering{color:#9bd2fb}.director-node-spinner{width:8px;height:8px;border:1px solid #9bd2fb;border-top-color:transparent;border-radius:50%;animation:directorSpin .8s linear infinite}@keyframes directorSpin{to{transform:rotate(360deg)}}.director-node-foot{display:flex;justify-content:space-between;padding:9px 12px 4px;color:#627b91;font-size:10px}.director-node-foot span:last-child{display:inline-flex;align-items:center;gap:4px}.director-node-hint{display:flex;align-items:center;justify-content:center;gap:3px;padding:4px 0 8px;color:#8ca3b7;font-size:9px}@keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}:root{--rc-drag-handle-size:12px;--rc-drag-handle-mobile-size:24px;--rc-drag-handle-bg-colour:#0003;--rc-drag-bar-size:6px;--rc-border-color:#ffffffb3;--rc-focus-color:#08f}.ReactCrop{cursor:crosshair;max-width:100%;display:inline-block;position:relative}.ReactCrop *,.ReactCrop :before,.ReactCrop :after{box-sizing:border-box}.ReactCrop--disabled,.ReactCrop--locked{cursor:inherit}.ReactCrop__child-wrapper{max-height:inherit;overflow:hidden}.ReactCrop__child-wrapper>img,.ReactCrop__child-wrapper>video{max-width:100%;max-height:inherit;display:block}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>img,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>video,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__crop-selection{touch-action:none}.ReactCrop__crop-mask{pointer-events:none;width:calc(100% + .5px);height:calc(100% + .5px);position:absolute;top:0;right:0;bottom:0;left:0}.ReactCrop__crop-selection{cursor:move;position:absolute;top:0;left:0;transform:translate(0)}.ReactCrop--disabled .ReactCrop__crop-selection{cursor:inherit}.ReactCrop--circular-crop .ReactCrop__crop-selection{border-radius:50%}.ReactCrop--circular-crop .ReactCrop__crop-selection:after{pointer-events:none;content:"";border:1px solid var(--rc-border-color);opacity:.3;position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px}.ReactCrop--no-animate .ReactCrop__crop-selection{outline:1px dashed #fff}.ReactCrop__crop-selection:not(.ReactCrop--no-animate .ReactCrop__crop-selection){color:#fff;background-image:linear-gradient(90deg,#fff 50%,#444 50%),linear-gradient(90deg,#fff 50%,#444 50%),linear-gradient(#fff 50%,#444 50%),linear-gradient(#fff 50%,#444 50%);background-position:0 0,0 100%,0 0,100% 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;background-size:10px 1px,10px 1px,1px 10px,1px 10px;animation:1s linear infinite marching-ants}.ReactCrop__crop-selection:focus{outline:2px solid var(--rc-focus-color);outline-offset:-1px}.ReactCrop--invisible-crop .ReactCrop__crop-mask,.ReactCrop--invisible-crop .ReactCrop__crop-selection{display:none}.ReactCrop__rule-of-thirds-vt:before,.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-hz:after{content:"";background-color:#fff6;display:block;position:absolute}.ReactCrop__rule-of-thirds-vt:before,.ReactCrop__rule-of-thirds-vt:after{width:1px;height:100%}.ReactCrop__rule-of-thirds-vt:before{left:33.3333%}.ReactCrop__rule-of-thirds-vt:after{left:66.6667%}.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-hz:after{width:100%;height:1px}.ReactCrop__rule-of-thirds-hz:before{top:33.3333%}.ReactCrop__rule-of-thirds-hz:after{top:66.6667%}.ReactCrop__drag-handle{width:var(--rc-drag-handle-size);height:var(--rc-drag-handle-size);background-color:var(--rc-drag-handle-bg-colour);border:1px solid var(--rc-border-color);position:absolute}.ReactCrop__drag-handle:focus{background:var(--rc-focus-color)}.ReactCrop .ord-nw{cursor:nw-resize;top:0;left:0;transform:translate(-50%,-50%)}.ReactCrop .ord-n{cursor:n-resize;top:0;left:50%;transform:translate(-50%,-50%)}.ReactCrop .ord-ne{cursor:ne-resize;top:0;right:0;transform:translate(50%,-50%)}.ReactCrop .ord-e{cursor:e-resize;top:50%;right:0;transform:translate(50%,-50%)}.ReactCrop .ord-se{cursor:se-resize;bottom:0;right:0;transform:translate(50%,50%)}.ReactCrop .ord-s{cursor:s-resize;bottom:0;left:50%;transform:translate(-50%,50%)}.ReactCrop .ord-sw{cursor:sw-resize;bottom:0;left:0;transform:translate(-50%,50%)}.ReactCrop .ord-w{cursor:w-resize;top:50%;left:0;transform:translate(-50%,-50%)}.ReactCrop__disabled .ReactCrop__drag-handle{cursor:inherit}.ReactCrop__drag-bar{position:absolute}.ReactCrop__drag-bar.ord-n{width:100%;height:var(--rc-drag-bar-size);top:0;left:0;transform:translateY(-50%)}.ReactCrop__drag-bar.ord-e{width:var(--rc-drag-bar-size);height:100%;top:0;right:0;transform:translate(50%)}.ReactCrop__drag-bar.ord-s{width:100%;height:var(--rc-drag-bar-size);bottom:0;left:0;transform:translateY(50%)}.ReactCrop__drag-bar.ord-w{width:var(--rc-drag-bar-size);height:100%;top:0;left:0;transform:translate(-50%)}.ReactCrop--new-crop .ReactCrop__drag-bar,.ReactCrop--new-crop .ReactCrop__drag-handle,.ReactCrop--fixed-aspect .ReactCrop__drag-bar,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-n,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-e,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-s,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-w{display:none}@media(pointer:coarse){.ReactCrop .ord-n,.ReactCrop .ord-e,.ReactCrop .ord-s,.ReactCrop .ord-w{display:none}.ReactCrop__drag-handle{width:var(--rc-drag-handle-mobile-size);height:var(--rc-drag-handle-mobile-size)}}.agent-page{max-width:1200px;margin:0 auto;padding:24px 28px 64px}.agent-hero{padding:30px 32px;margin-bottom:20px;border:1px solid #e8ebf0;border-radius:16px;background:#fff}.agent-kicker{display:block;margin-bottom:10px;color:#9aa1ad;font:700 11px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.18em}.agent-hero h1{margin:0;font-size:clamp(26px,3.2vw,34px);line-height:1.1;letter-spacing:-.02em;color:#17191d}.agent-hero p{margin:12px 0 0;max-width:640px;color:#6b7280;font-size:13px;line-height:1.7}.agent-tabs{display:flex;gap:6px;margin-bottom:16px;padding:4px;width:fit-content;border:1px solid #e8ebf0;border-radius:10px;background:#fff}.agent-tabs button{padding:7px 18px;border:none;border-radius:8px;background:transparent;color:#5a6271;font-size:13px;cursor:pointer}.agent-tabs button:hover{color:#1f2733}.agent-tabs button.active{background:#eef3ff;color:#2f6bff;font-weight:600}.agent-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px}.agent-category-tabs{display:flex;gap:6px;flex-wrap:wrap}.agent-category-tabs button{padding:6px 14px;border:1px solid #e1e5ec;border-radius:16px;background:#fff;color:#5a6271;font-size:12px;cursor:pointer}.agent-category-tabs button:hover{color:#1f2733;border-color:#c5cdd9}.agent-category-tabs button.active{color:#fff;background:#2f6bff;border-color:#2f6bff}.agent-search{display:flex;align-items:center;gap:6px;padding:4px 4px 4px 12px;border:1px solid #e1e5ec;border-radius:22px;background:#fff;color:#8a92a0}.agent-search input{width:200px;border:none;outline:none;background:transparent;font-size:13px}.agent-search button{padding:6px 14px;border:none;border-radius:18px;background:#2f6bff;color:#fff;font-size:12px;cursor:pointer}.agent-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px}.agent-grid-loading .agent-card-skeleton{padding:16px;border:1px solid #eef0f4;border-radius:16px}.agent-card{position:relative;aspect-ratio:1 / 1;border:1px solid #e8ebf0;border-radius:16px;background:linear-gradient(135deg,#eef0f4,#e2e6ed);overflow:hidden;transition:box-shadow .18s,transform .18s}.agent-card:hover{box-shadow:0 10px 26px #0f172a1f;transform:translateY(-2px)}.agent-card-cover{width:100%;height:100%;object-fit:cover;display:block}.agent-card-cover-fallback{display:flex;align-items:center;justify-content:center;color:#b6bcc7}.agent-card-category{position:absolute;top:10px;left:10px;padding:3px 10px;border-radius:12px;background:#ffffffeb;color:#2f6bff;font-size:11px;font-weight:600;pointer-events:none}.agent-card-visibility{position:absolute;top:10px;right:10px;display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:12px;background:#17191db8;color:#fff;font-size:11px;font-weight:600;pointer-events:none}.agent-card-visibility.public{background:#2f6bffe0}.agent-card-panel{position:absolute;left:0;right:0;bottom:0;padding:12px 14px 14px;background:#17191dd1;color:#fff;transform:translateY(100%);transition:transform .22s ease}.agent-card:hover .agent-card-panel{transform:translateY(0)}.agent-card-panel h3{margin:0;font-size:13.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.agent-card-panel p{margin:4px 0 0;font-size:11.5px;line-height:1.5;color:#ffffffb8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.agent-card-meta{display:flex;justify-content:space-between;margin-top:6px;font-size:10.5px;color:#ffffff8c}.agent-card-actions{display:flex;gap:6px;margin-top:10px}.agent-card-action{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:7px 0;border:none;border-radius:8px;background:#2f6bff;color:#fff;font-size:12px;font-weight:600;cursor:pointer}.agent-card-action:hover:not(:disabled){background:#1f5af0}.agent-card-action:disabled{opacity:.7;cursor:default}.agent-card-icon{display:inline-flex;align-items:center;justify-content:center;width:34px;padding:7px 0;border:none;border-radius:8px;background:#ffffff29;color:#fff;font-size:13px;cursor:pointer}.agent-card-icon:hover{background:#ffffff47}.agent-card-icon.danger{color:#ffb0b0}.agent-card-icon.danger:hover{background:#d6454566}@media(hover:none){.agent-card-panel{transform:translateY(0)}}.agent-state{display:flex;flex-direction:column;align-items:center;gap:10px;padding:60px 20px;color:#8a92a0;text-align:center}.agent-state strong{color:#1f2733;font-size:15px}.agent-state button{display:inline-flex;align-items:center;gap:5px;padding:6px 14px;border:1px solid #d8dce4;border-radius:8px;background:#fff;color:#2f6bff;font-size:12px;cursor:pointer}.agent-pagination{display:flex;justify-content:center;margin-top:32px}.spin{animation:agent-spin .9s linear infinite}@keyframes agent-spin{to{transform:rotate(360deg)}}.agent-edit-form{display:flex;flex-direction:column;gap:12px}.agent-edit-form label{display:flex;flex-direction:column;gap:5px;font-size:12px;color:#737986}.agent-edit-form input,.agent-edit-form select,.agent-edit-form textarea{padding:8px 10px;border:1px solid #d8dce4;border-radius:8px;font-size:13px;font-family:inherit;resize:vertical}.agent-edit-form input:focus,.agent-edit-form select:focus,.agent-edit-form textarea:focus{outline:none;border-color:#2f6bff}.agent-edit-cover-row{display:flex;align-items:center;gap:10px}.agent-edit-cover-preview{position:relative;width:120px;aspect-ratio:16 / 9;border-radius:8px;overflow:hidden;border:1px solid #e8ebf0}.agent-edit-cover-preview img{width:100%;height:100%;object-fit:cover;display:block}.agent-edit-cover-preview button{position:absolute;top:4px;right:4px;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border:none;border-radius:50%;background:#17191da6;color:#fff;cursor:pointer}.agent-edit-cover-upload{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:1px dashed #c5cdd9;border-radius:8px;background:#fff;color:#737986;font-size:12px;cursor:pointer}.agent-edit-cover-upload:hover:not(:disabled){border-color:#2f6bff;color:#2f6bff}.agent-edit-cover-upload:disabled{opacity:.6;cursor:default}.agent-edit-public{display:flex;flex-direction:row!important;align-items:center;justify-content:space-between;padding:10px 12px;border:1px solid #e8ebf0;border-radius:8px}.agent-edit-public span{display:flex;flex-direction:column;gap:3px;font-size:12px;color:#17191d}.agent-edit-public em{font-style:normal;font-size:11px;color:#737986}.canvas-asset-modal .ant-modal-content{border-radius:8px}.canvas-asset-modal-tools{display:flex;gap:8px;margin-bottom:14px}.canvas-asset-modal-tools label{display:flex;height:36px;flex:1;align-items:center;gap:8px;padding:0 10px;border:1px solid #dce0e6;border-radius:7px;color:#858b95}.canvas-asset-modal-tools input{width:100%;border:0;outline:0;color:#303640;font:inherit;font-size:13px}.canvas-asset-modal-tools>button,.canvas-asset-pagination button{height:36px;padding:0 13px;border:1px solid #d5dae2;border-radius:7px;color:#454d58;background:#fff;font-size:12px}.canvas-asset-library-grid{display:grid;grid-template-columns:repeat(4,1fr);min-height:186px;gap:10px}.canvas-asset-library-grid>button{min-width:0;overflow:hidden;border:1px solid #e0e3e8;border-radius:7px;background:#fff;text-align:left}.canvas-asset-library-grid>button:hover{border-color:#7da8ff;box-shadow:0 5px 14px #2f6bff1f}.canvas-asset-library-grid img{display:block;width:100%;aspect-ratio:1;object-fit:cover}.canvas-asset-library-grid span{display:block;overflow:hidden;padding:7px 7px 1px;color:#3e4550;font-size:11px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.canvas-asset-library-grid small{display:block;padding:0 7px 7px;color:#9298a2;font-size:10px}.canvas-asset-library-loading,.canvas-asset-library-empty{display:grid;grid-column:1 / -1;place-content:center;gap:8px;color:#8a919b;font-size:12px;text-align:center}.canvas-asset-pagination{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:16px;color:#737a85;font-size:12px}.canvas-asset-pagination button:disabled{opacity:.4}.assets-page{--asset-ink: #182033;--asset-line: #dfe4ec;width:min(1480px,100%);margin:0 auto;padding:20px 24px 56px}.assets-hero{position:relative;display:flex;align-items:flex-end;justify-content:space-between;gap:32px;min-height:178px;margin-top:16px;padding:30px 34px;overflow:hidden;color:#fff;background:linear-gradient(110deg,#111e39fa,#223a68f0),repeating-linear-gradient(90deg,transparent 0 44px,rgba(255,255,255,.04) 44px 45px);border-radius:14px;box-shadow:0 18px 40px #14244424}.assets-hero:before{content:"";position:absolute;width:360px;height:360px;right:10%;top:-270px;border:1px solid rgba(111,158,255,.46);border-radius:50%;box-shadow:0 0 0 44px #5284ef12,0 0 0 88px #5284ef0a}.assets-hero:after{content:"01  ·  24";position:absolute;right:30px;top:24px;color:#ffffff52;font:600 11px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.2em}.assets-hero-copy{position:relative;z-index:1;max-width:670px}.assets-kicker{display:block;margin-bottom:13px;color:#9cbcff;font:700 11px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.18em}.assets-hero h1{margin:0;font-size:clamp(30px,4vw,45px);line-height:1;letter-spacing:-.04em}.assets-hero p{margin:15px 0 0;max-width:620px;color:#ffffffb3;font-size:13px;line-height:1.75}.assets-upload-button{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:132px;height:44px;padding:0 19px;color:#17213a;background:#fff;border:none;border-radius:8px;font-size:13px;font-weight:700;box-shadow:0 8px 24px #00000024;transition:transform .18s ease,box-shadow .18s ease}.assets-upload-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 28px #0003}.assets-upload-button:disabled{opacity:.68;cursor:wait}.assets-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:22px 0 18px;padding-bottom:14px;border-bottom:1px solid var(--asset-line)}.assets-filter-stack{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:7px}.assets-type-tabs{display:flex;gap:5px;overflow-x:auto}.assets-type-tabs button{flex:0 0 auto;height:27px;padding:0 11px;color:#647089;background:#fff;border:1px solid var(--asset-line);border-radius:999px;font-size:11px;font-weight:700}.assets-type-tabs button:hover{color:#2b5fb5;border-color:#aebfe3}.assets-type-tabs button.active{color:#234e9a;background:#eaf1ff;border-color:#a9bfea}.assets-source-tabs{display:flex;gap:5px;overflow-x:auto}.assets-source-tabs button{flex:0 0 auto;height:34px;padding:0 13px;color:var(--color-text-secondary);background:transparent;border:1px solid transparent;border-radius:7px;font-size:12px;font-weight:600}.assets-source-tabs button:hover{color:var(--color-text);background:#ffffffb8}.assets-source-tabs button.active{color:#fff;background:var(--asset-ink)}.assets-search-box{display:flex;align-items:center;width:min(360px,100%);height:38px;padding-left:12px;color:var(--color-text-tertiary);background:#fff;border:1px solid var(--asset-line);border-radius:8px;box-shadow:0 2px 8px #1d2b4a08}.assets-search-box:focus-within{border-color:#8aabf8;box-shadow:0 0 0 3px #2b6cff17}.assets-search-box input{min-width:0;flex:1;height:100%;padding:0 9px;border:none;outline:none;color:var(--color-text);background:transparent;font-size:13px}.assets-search-box>button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;border:none;background:transparent;color:var(--color-text-tertiary)}.assets-search-box .assets-search-submit{align-self:stretch;padding:0 15px;color:#fff;background:var(--color-primary);border-radius:0 7px 7px 0;font-size:12px;font-weight:700}.assets-batch-bar{display:flex;align-items:center;gap:10px;min-height:46px;margin:-4px 0 16px;padding:7px 10px 7px 15px;color:#26457f;background:#edf3ff;border:1px solid #cad9fb;border-radius:9px;animation:asset-bar-in .18s ease both}.assets-batch-bar span{display:flex;align-items:center;gap:7px;margin-right:auto;font-size:13px}.assets-batch-bar button{height:30px;padding:0 11px;color:#31528d;background:#fff;border:1px solid #c5d4f2;border-radius:6px;font-size:12px}.assets-batch-bar button.danger{display:inline-flex;align-items:center;gap:6px;color:#fff;background:var(--color-danger);border-color:var(--color-danger)}.assets-batch-bar button:disabled{opacity:.55;cursor:wait}.assets-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}.asset-card{min-width:0;overflow:hidden;background:#fff;border:1px solid var(--asset-line);border-radius:10px;box-shadow:0 2px 8px #18203309;animation:asset-card-in .34s cubic-bezier(.22,.72,.24,1) both;animation-delay:min(calc(var(--asset-index) * 18ms),.22s);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.asset-card:hover{transform:translateY(-3px);border-color:#c9d3e2;box-shadow:0 14px 30px #18203317}.asset-card.selected{border-color:var(--color-primary);box-shadow:0 0 0 2px #2b6cff21,0 12px 24px #2b6cff14}.asset-card.pending{opacity:.55;pointer-events:none}.asset-card-media{position:relative;aspect-ratio:4 / 3;overflow:hidden;cursor:zoom-in;background-color:#f4f5f7;background-image:linear-gradient(45deg,#e5e8ed 25%,transparent 25%),linear-gradient(-45deg,#e5e8ed 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#e5e8ed 75%),linear-gradient(-45deg,transparent 75%,#e5e8ed 75%);background-size:18px 18px;background-position:0 0,0 9px,9px -9px,-9px 0}.asset-card-media:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,rgba(9,16,30,.04),transparent 62%,rgba(9,16,30,.18));pointer-events:none}.asset-card-media>.asset-media{width:100%;height:100%}.asset-card-media .asset-media-image,.asset-card-media .asset-media-video{display:block;object-fit:cover;transition:transform .45s cubic-bezier(.22,.72,.24,1)}.asset-card:hover .asset-card-media .asset-media-image,.asset-card:hover .asset-card-media .asset-media-video{transform:scale(1.035)}.asset-type-badge{position:absolute;right:9px;bottom:29px;z-index:2;padding:3px 7px;color:#ffffffeb;background:#121b2db8;border:1px solid rgba(255,255,255,.2);border-radius:999px;font:700 9px/1 ui-monospace,SFMono-Regular,Menlo,monospace;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.asset-type-badge.video{background:#1f5891db}.asset-type-badge.audio{background:#127468db}.asset-source-badge{display:inline-flex;align-items:center;width:max-content;padding:3px 7px;color:#fff;background:#131c2fc7;border-radius:5px;font-size:10px;font-weight:700;letter-spacing:.02em}.asset-card-media>.asset-source-badge{position:absolute;left:9px;bottom:9px;z-index:2;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.asset-source-badge.generation{background:#2b6cffe0}.asset-source-badge.edit{background:#0a8474e0}.asset-source-badge.director{background:#7c3aede0}.asset-contact-number{position:absolute;right:9px;bottom:10px;z-index:2;color:#ffffffd1;font:700 9px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.12em}.asset-select,.asset-delete{position:absolute;top:9px;z-index:3;display:grid;place-items:center;width:30px;height:30px;color:#fff;background:#121b2dad;border:1px solid rgba(255,255,255,.28);border-radius:7px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;transform:translateY(-3px);transition:opacity .16s ease,transform .16s ease,background .16s ease}.asset-select{left:9px}.asset-delete{right:9px}.asset-card:hover .asset-select,.asset-card:hover .asset-delete,.asset-select.checked{opacity:1;transform:translateY(0)}.asset-select.checked{background:var(--color-primary);border-color:var(--color-primary)}.asset-delete:hover{background:var(--color-danger)}.asset-card-meta{display:flex;flex-direction:column;gap:5px;padding:11px 12px 12px}.asset-card-meta strong{overflow:hidden;color:var(--asset-ink);font-size:12px;font-weight:650;white-space:nowrap;text-overflow:ellipsis}.asset-card-meta time{color:var(--color-text-tertiary);font:500 10px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace}.assets-grid-loading .asset-skeleton{overflow:hidden;padding-bottom:10px;background:#fff;border:1px solid var(--asset-line);border-radius:10px}.asset-skeleton .ant-skeleton-image{width:100%!important;height:auto!important;aspect-ratio:4/3;border-radius:0}.asset-skeleton .ant-skeleton{padding:10px 11px 0}.asset-skeleton .ant-skeleton-title{margin:0!important}.asset-skeleton .ant-skeleton-paragraph{margin-top:8px!important}.asset-skeleton .ant-skeleton-paragraph li{width:58%!important;height:8px!important}.assets-state{min-height:360px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--color-text-tertiary);background:#ffffff9e;border:1px dashed #ccd3de;border-radius:12px}.assets-state.error strong{margin-top:12px;color:var(--asset-ink)}.assets-state.error p{margin:7px 0 16px;font-size:12px}.assets-state button{display:inline-flex;align-items:center;gap:7px;height:34px;padding:0 13px;color:#fff;background:var(--asset-ink);border:none;border-radius:7px;font-size:12px;font-weight:700}.assets-pagination{display:flex;justify-content:center;margin-top:28px}.asset-preview-modal .ant-modal-content{padding:16px;overflow:hidden;background:#111827}.asset-preview-modal .ant-modal-header{margin:0 36px 13px 2px;background:transparent}.asset-preview-modal .ant-modal-title{overflow:hidden;color:#fff;white-space:nowrap;text-overflow:ellipsis}.asset-preview-modal .ant-modal-close{color:#ffffffb8}.asset-preview-image{display:grid;place-items:center;min-height:420px;max-height:72vh;overflow:hidden;border-radius:8px;background-color:#e8ebef;background-image:linear-gradient(45deg,#d9dde3 25%,transparent 25%),linear-gradient(-45deg,#d9dde3 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#d9dde3 75%),linear-gradient(-45deg,transparent 75%,#d9dde3 75%);background-size:22px 22px;background-position:0 0,0 11px,11px -11px,-11px 0}.asset-preview-image>.asset-media-image,.asset-preview-image>.asset-media-video{max-width:100%;max-height:72vh;display:block;object-fit:contain}.asset-preview-image>.asset-media-video{width:100%}.asset-preview-image>.asset-media-audio{width:100%;min-height:420px}.asset-preview-caption{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 2px 0}.asset-preview-caption time{color:#ffffff85;font:500 10px/1 ui-monospace,SFMono-Regular,Menlo,monospace}@keyframes asset-card-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes asset-bar-in{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1320px){.assets-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(max-width:1100px){.assets-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:860px){.assets-hero{align-items:flex-start;flex-direction:column;min-height:0}.assets-toolbar{align-items:stretch;flex-direction:column}.assets-filter-stack{align-items:stretch}.assets-search-box{width:100%}.assets-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:620px){.assets-page{padding:16px 14px 42px}.assets-hero{padding:25px 22px}.assets-upload-button{width:100%}.assets-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.assets-batch-bar{align-items:stretch;flex-wrap:wrap}.assets-batch-bar span{width:100%}}@media(hover:none){.asset-select,.asset-delete{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.asset-card,.assets-batch-bar{animation:none}.asset-card,.asset-card-media .asset-media-image,.asset-card-media .asset-media-video,.assets-upload-button{transition:none}}.commercial-support{max-width:960px;margin:0 auto;padding:40px 24px 64px}.commercial-support .card-empty{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);padding:64px 24px}.cs-html-container{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:24px;overflow:hidden}.cs-article{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:32px 40px}.cs-header h1{margin:0 0 24px;font-size:28px;line-height:1.3;color:var(--color-text)}.cs-sections{display:flex;flex-direction:column;gap:24px}.cs-section h2{margin:0 0 8px;font-size:18px;color:var(--color-text)}.cs-section p{margin:8px 0;font-size:14px;line-height:1.7;color:var(--color-text-secondary);white-space:pre-wrap}:root{--color-bg: #f5f6f8;--color-surface: #ffffff;--color-surface-hover: #f0f2f5;--color-border: #ebedf0;--color-border-strong: #d8dce3;--color-text: #1f2329;--color-text-secondary: #646a73;--color-text-tertiary: #8f959e;--color-primary: #2b6cff;--color-primary-soft: #eaf0ff;--color-danger: #f04838;--color-success: #18a058;--color-warning: #f0a020;--radius-card: 8px;--radius-sm: 6px;--radius-pill: 999px;--shadow-card: 0 1px 2px rgba(15, 23, 42, .04), 0 4px 12px rgba(15, 23, 42, .04);--shadow-pop: 0 6px 24px rgba(15, 23, 42, .12);--sidenav-width: 232px;--topbar-height: 64px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Roboto,Helvetica,Arial,sans-serif;color:var(--color-text);font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100%}body{background:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#0f172a1f;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#0f172a38}.shell{display:flex;height:100vh;height:100dvh;min-height:0;overflow:hidden}.main{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}.content{flex:1;min-height:0;overflow-y:auto;background:var(--color-bg)}.sidenav{width:var(--sidenav-width);height:100vh;height:100dvh;min-height:0;overflow:hidden;background:var(--color-surface);border-right:1px solid var(--color-border);display:flex;flex-direction:column;flex-shrink:0}.brand{height:var(--topbar-height);flex:0 0 var(--topbar-height);display:flex;align-items:center;gap:10px;padding:0 20px;font-weight:700;font-size:18px;border-bottom:1px solid var(--color-border)}.brand-logo{width:28px;height:28px;display:grid;place-items:center;flex:0 0 28px;overflow:hidden;border-radius:8px;font-size:20px}.brand-logo.has-image{background:#fff;box-shadow:0 3px 12px #1b35571a}.brand-logo img{width:100%;height:100%;object-fit:contain}.brand-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-scroll{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch;padding:12px 12px 24px}.nav-group{margin-bottom:16px}.nav-label{font-size:12px;color:var(--color-text-tertiary);padding:8px 12px 6px;letter-spacing:.04em}.nav-link{display:flex;align-items:center;gap:10px;height:38px;padding:0 12px;border-radius:var(--radius-sm);color:var(--color-text-secondary);font-size:14px;width:100%;border:none;background:transparent;text-align:left}.nav-link:hover{background:var(--color-surface-hover);color:var(--color-text)}.nav-link.active{background:var(--color-primary-soft);color:var(--color-primary);font-weight:600}.nav-parent{cursor:pointer}.caret{margin-left:auto;font-size:10px;color:var(--color-text-tertiary);transition:transform .18s}.caret.open{transform:rotate(180deg)}.nav-children{display:grid;grid-template-rows:1fr;transition:grid-template-rows .18s ease;padding-left:14px}.nav-children.collapsed{grid-template-rows:0fr}.nav-children .nav-link{height:34px;font-size:13px;min-height:0;overflow:hidden}.dot{width:6px;height:6px;border-radius:50%;background:var(--color-border-strong);flex-shrink:0}.nav-children .nav-link.active .dot{background:var(--color-primary)}.topbar{height:var(--topbar-height);background:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex;align-items:center;gap:16px;padding:0 24px;position:sticky;top:0;z-index:10}.search{display:flex;align-items:center;gap:8px;width:380px;height:40px;padding:0 14px;background:var(--color-bg);border:1px solid transparent;border-radius:var(--radius-pill);color:var(--color-text-tertiary);transition:border-color .15s,background .15s}.search:focus-within{border-color:var(--color-primary);background:var(--color-surface)}.search-input{flex:1;border:none;outline:none;background:transparent;font-size:14px;color:var(--color-text)}.search-input::placeholder{color:var(--color-text-tertiary)}.tools{margin-left:auto;display:flex;align-items:center;gap:12px}.balance{display:flex;align-items:center;gap:6px;height:34px;padding:0 12px;background:var(--color-primary-soft);color:var(--color-primary);border-radius:var(--radius-pill);font-size:13px;font-weight:600;cursor:pointer}.balance-cta{padding:2px 8px;background:var(--color-primary);color:#fff;border-radius:var(--radius-pill);font-size:12px}.login-link{height:34px;padding:0 16px;border:1px solid var(--color-primary);background:var(--color-primary);color:#fff;border-radius:var(--radius-pill);font-size:13px;font-weight:600}.tool-btn{position:relative;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--color-border);background:var(--color-surface);border-radius:50%;color:var(--color-text-secondary)}.tool-btn:hover{color:var(--color-primary);border-color:var(--color-primary)}.tool-btn.lang{font-size:13px;font-weight:600}.badge{position:absolute;top:-2px;right:-2px;min-width:16px;height:16px;padding:0 4px;background:var(--color-danger);color:#fff;font-size:10px;border-radius:999px;display:flex;align-items:center;justify-content:center}.avatar-wrap{position:relative;width:34px;height:34px;cursor:pointer}.avatar{width:34px;height:34px;border-radius:50%;object-fit:cover;background:var(--color-primary-soft);color:var(--color-primary);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600}.online-dot{position:absolute;right:0;bottom:0;width:9px;height:9px;background:var(--color-success);border:2px solid var(--color-surface);border-radius:50%}.svg-icon{flex-shrink:0}.fab{position:fixed;right:24px;top:50%;transform:translateY(-50%);z-index:50;display:flex;flex-direction:column;align-items:flex-end;gap:12px}.fab-menu{display:flex;flex-direction:column;gap:8px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-pop);padding:8px;width:240px}.fab-item{display:flex;align-items:center;gap:10px;padding:10px;border:none;background:transparent;border-radius:var(--radius-sm);text-align:left}.fab-item:hover{background:var(--color-surface-hover)}.fab-icon{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;background:var(--color-primary-soft);color:var(--color-primary);border-radius:8px}.fab-text{display:flex;flex-direction:column}.fab-label{font-size:13px;font-weight:600;color:var(--color-text)}.fab-desc{font-size:11px;color:var(--color-text-tertiary)}.fab-trigger{width:48px;height:48px;border-radius:50%;border:none;background:var(--color-primary);color:#fff;box-shadow:var(--shadow-pop);display:inline-flex;align-items:center;justify-content:center}.fab-trigger:hover{filter:brightness(1.08)}.previewable-image{width:100%;height:100%;display:block;cursor:zoom-in}.banner-rail{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.banner{position:relative;height:240px;border-radius:var(--radius-card);overflow:hidden;background-size:cover;background-position:center;cursor:default;box-shadow:var(--shadow-card);transition:transform .18s ease,box-shadow .18s ease}.banner.is-clickable{cursor:pointer}.banner.is-clickable:hover{transform:translateY(-2px);box-shadow:0 14px 34px #18304c29}.banner.is-clickable:focus-visible{outline:3px solid rgba(43,108,255,.38);outline-offset:3px}.banner.large{height:240px}.banner-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#0000 40%,#0000008c)}.banner-text{position:absolute;left:18px;right:18px;bottom:16px;color:#fff}.banner-text h3{margin:0 0 4px;font-size:17px;font-weight:700;text-shadow:0 1px 4px rgba(0,0,0,.4)}.banner-text p{margin:0;font-size:13px;opacity:.9}@media(max-width:1180px){.banner-rail{grid-template-columns:1fr}.banner,.banner.large{height:220px}}.featured .section-head{display:flex;align-items:baseline;justify-content:space-between;margin:28px 0 14px}.featured .section-head h2{margin:0;font-size:18px;font-weight:700}.more{border:none;background:transparent;color:var(--color-text-secondary);font-size:13px}.more:hover{color:var(--color-primary)}.featured .grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}@media(max-width:1280px){.featured .grid{grid-template-columns:repeat(4,1fr)}}@media(max-width:1024px){.featured .grid{grid-template-columns:repeat(3,1fr)}}.app-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);overflow:hidden;cursor:pointer;transition:transform .15s,box-shadow .15s}.app-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-card)}.app-card .cover{position:relative;height:132px;background-size:cover;background-position:center}.type-tag{position:absolute;top:10px;left:10px;padding:2px 8px;background:#00000080;color:#fff;font-size:11px;border-radius:var(--radius-pill)}.app-card .meta{padding:12px 14px 14px}.app-card .name{margin:0 0 4px;font-size:15px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-card .desc{margin:0 0 8px;font-size:12px;color:var(--color-text-secondary);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:36px}.app-card .tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.app-card .tag{font-size:11px;color:var(--color-primary);background:var(--color-primary-soft);padding:2px 8px;border-radius:var(--radius-pill)}.app-card .footer{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--color-text-tertiary)}.cost{display:inline-flex;align-items:center;gap:4px;color:var(--color-warning);font-weight:600}.stats{display:inline-flex;align-items:center;gap:4px}.masonry{column-count:5;column-gap:14px}.masonry .art{break-inside:avoid;margin-bottom:14px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);overflow:hidden;cursor:pointer;transition:transform .15s,box-shadow .15s}.masonry .art:hover{transform:translateY(-2px);box-shadow:var(--shadow-card)}.masonry .thumb{position:relative;width:100%;background-size:cover;background-position:center}.masonry .art:nth-child(5n+1) .thumb{aspect-ratio:3/4}.masonry .art:nth-child(5n+2) .thumb{aspect-ratio:1/1}.masonry .art:nth-child(5n+3) .thumb{aspect-ratio:4/3}.masonry .art:nth-child(5n+4) .thumb{aspect-ratio:3/4}.masonry .art:nth-child(5n) .thumb{aspect-ratio:4/5}.masonry .play{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:#fff;background:#00000040}.masonry .media-tag{position:absolute;top:8px;left:8px;padding:2px 8px;background:#00000080;color:#fff;font-size:11px;border-radius:var(--radius-pill)}.masonry .info{padding:10px 12px 12px}.masonry .title{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.masonry .sub{display:flex;align-items:center;justify-content:space-between;margin-top:4px;font-size:11px;color:var(--color-text-tertiary)}.masonry .acts{display:inline-flex;align-items:center;gap:4px}@media(max-width:1280px){.masonry{column-count:4}}@media(max-width:1024px){.masonry{column-count:3}}@media(max-width:768px){.masonry{column-count:2}}.tabs{display:flex;gap:10px;overflow-x:auto;padding-bottom:4px;margin-bottom:14px}.tab{flex-shrink:0;height:32px;padding:0 14px;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-secondary);border-radius:var(--radius-pill);font-size:13px}.tab:hover{border-color:var(--color-primary);color:var(--color-primary)}.tab.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff;font-weight:600}.home{padding:20px 24px 48px;max-width:1480px;margin:0 auto}.home .section-head{display:flex;align-items:baseline;justify-content:space-between;margin:28px 0 14px}.home .section-head h2{margin:0;font-size:18px;font-weight:700}.home .hint{font-size:12px;color:var(--color-text-tertiary)}.login-page{min-height:100vh;min-height:100dvh;display:grid;place-items:center;padding:42px 28px 34px;background:var(--color-bg)}.auth-shell{width:min(1080px,100%)}.auth-header{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:18px}.brand-lockup{display:flex;align-items:center;gap:10px;min-width:0}.brand-lockup-logo{width:34px;height:34px;flex:0 0 34px;object-fit:contain;border-radius:8px}.brand-lockup-badge{width:34px;height:34px;display:grid;place-items:center;flex:0 0 34px;color:#fff;background:var(--color-primary);border-radius:8px}.brand-lockup-name{overflow:hidden;color:var(--color-text);font-size:17px;font-weight:750;letter-spacing:-.02em;text-overflow:ellipsis;white-space:nowrap}.login-panel{width:100%;display:grid;grid-template-columns:minmax(0,1fr) 424px;align-items:stretch;overflow:hidden;border:1px solid var(--color-border);border-radius:18px;background:var(--color-surface);box-shadow:0 18px 45px #1f232914}.login-copy{position:relative;overflow:hidden;min-height:590px;display:flex;flex-direction:column;padding:60px 62px 50px;border-right:1px solid var(--color-border);background:#fff}.login-copy:before{content:"";position:absolute;width:360px;height:360px;top:-190px;right:-155px;border:1px solid rgba(43,108,255,.08);border-radius:50%;box-shadow:0 0 0 34px #2b6cff06,0 0 0 68px #2b6cff05}.auth-copy-hero{position:relative;z-index:1;max-width:500px;margin:auto 0}.auth-eyebrow{display:inline-flex;align-items:center;gap:8px;margin-bottom:19px;color:var(--color-primary);font-size:12px;font-weight:700}.auth-eyebrow:before{content:"";width:18px;height:2px;background:var(--color-primary);border-radius:2px}.login-copy h1{margin:0;color:#181c23;font-family:Avenir Next,PingFang SC,Microsoft YaHei,sans-serif;font-size:clamp(42px,5vw,64px);font-weight:700;letter-spacing:-.065em;line-height:1.08}.login-copy h1 em{color:var(--color-primary);font-style:normal}.login-copy p{max-width:420px;margin:22px 0 0;color:var(--color-text-secondary);font-size:14px;line-height:1.85}.auth-feature-strip{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:56px;padding-top:20px;border-top:1px solid var(--color-border)}.auth-feature-strip>div{display:grid;gap:5px;min-width:0}.auth-feature-strip b{color:var(--color-primary);font-size:11px;font-weight:700;font-variant-numeric:tabular-nums}.auth-feature-strip strong{color:var(--color-text);font-size:12px;font-weight:700;white-space:nowrap}.auth-feature-strip span{overflow:hidden;color:var(--color-text-tertiary);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.login-form{align-self:center;min-width:0;padding:52px 44px;background:var(--color-surface)}.auth-loading{min-height:420px;display:grid;place-items:center}.auth-loading .ant-spin-dot-item{background-color:var(--color-primary)}.auth-form-heading{margin-bottom:28px}.auth-form-kicker{display:block;margin-bottom:10px;color:var(--color-primary);font-size:12px;font-weight:700}.auth-form-heading h2{margin:0;color:var(--color-text);font-size:27px;font-weight:700;letter-spacing:-.04em}.auth-form-heading p{margin:8px 0 0;color:var(--color-text-tertiary);font-size:12px}.auth-method-switch{width:100%;margin-bottom:25px!important;padding:3px;border:1px solid var(--color-border);background:#f7f8fa;border-radius:8px}.auth-method-switch .ant-segmented-item{color:var(--color-text-secondary);font-size:12px;transition:color .18s ease}.auth-method-switch .ant-segmented-item:hover{color:var(--color-text)}.auth-method-switch .ant-segmented-item-selected{color:var(--color-primary);font-weight:700;background:#fff;box-shadow:0 2px 8px #1f232914}.auth-method-switch .ant-segmented-thumb{background:#fff;box-shadow:0 2px 8px #1f232914}.login-form .ant-form-item{margin-bottom:20px}.login-form .ant-form-item-label{padding-bottom:8px}.login-form .ant-form-item-label>label{color:var(--color-text);font-size:12px;font-weight:600}.login-form .ant-input,.login-form .ant-input-affix-wrapper{color:var(--color-text);background:#fbfcfd;border-color:var(--color-border-strong);border-radius:8px}.login-form .ant-input{height:48px;padding:0 14px}.login-form .ant-input-affix-wrapper{min-height:48px;padding:0 14px}.login-form .ant-input-affix-wrapper>input.ant-input{height:auto;padding:0;background:transparent}.login-form .ant-input::placeholder{color:#a7adb7}.login-form .ant-input-affix-wrapper .ant-input-suffix{color:var(--color-text-tertiary)}.login-form .ant-input:hover,.login-form .ant-input-affix-wrapper:hover{border-color:#9db7f5;background:#fff}.login-form .ant-input:focus,.login-form .ant-input-focused,.login-form .ant-input-affix-wrapper:focus,.login-form .ant-input-affix-wrapper-focused{border-color:var(--color-primary);box-shadow:0 0 0 3px #2b6cff1a;background:#fff}.login-form .ant-form-item-explain-error{color:var(--color-danger);font-size:11px}.login-form .ant-form-item-extra{color:var(--color-text-tertiary);font-size:10px}.login-form .ant-btn{height:48px;border-radius:8px}.login-form .ant-btn:not(.login-submit){color:var(--color-text-secondary);border-color:var(--color-border-strong);background:#fff}.login-form .ant-btn:not(.login-submit):hover{color:var(--color-primary);border-color:var(--color-primary);background:var(--color-primary-soft)}.login-submit{width:100%;margin-top:4px;border:none!important;color:#fff!important;font-size:14px;font-weight:700;background:var(--color-primary)!important;box-shadow:0 8px 16px #2b6cff33;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.login-submit:hover{color:#fff!important;background:#1f5de3!important;transform:translateY(-1px);box-shadow:0 11px 20px #2b6cff3d}.login-submit:active{transform:translateY(0)}.login-submit.ant-btn-loading{opacity:.75}.auth-code-row{display:flex;gap:8px}.auth-code-row .ant-input{min-width:0;flex:1}.auth-code-row .ant-btn{width:112px;flex:0 0 112px;padding:0 10px;font-size:12px}.auth-provider-state{padding:30px 0 34px;color:var(--color-text-secondary);text-align:center;font-size:13px}.auth-provider-state p{margin:0 0 18px}.auth-provider-state.is-muted{color:var(--color-text-tertiary)}.auth-provider-button{min-width:160px}.auth-form-switch{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:23px;padding-top:17px;border-top:1px solid var(--color-border);color:var(--color-text-tertiary);font-size:11px}.auth-form-switch a{color:var(--color-primary);font-weight:700}.auth-form-switch a:hover{text-decoration:underline;text-underline-offset:3px}.register-panel{grid-template-columns:minmax(0,1fr) 460px}.register-form{padding-top:42px;padding-bottom:38px}.register-form-title{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin:28px 0 19px;padding-top:15px;border-top:1px solid var(--color-border)}.register-form-title b{color:var(--color-text-secondary);font-size:11px;font-weight:700}.register-form-title span{color:var(--color-text-tertiary);font-size:10px}.register-form .ant-form-item{margin-bottom:16px}.register-form .ant-form-item-label{padding-bottom:6px}.register-form .ant-input,.register-form .ant-input-affix-wrapper{min-height:44px}.register-form .ant-input{height:44px}.register-form .ant-input-affix-wrapper{min-height:44px}.register-benefits{margin-top:56px}.auth-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 4px 0;color:var(--color-text-tertiary);font-size:10px}@media(max-width:980px){.login-panel,.register-panel{grid-template-columns:1fr}.login-copy{min-height:500px;border-right:none;border-bottom:1px solid var(--color-border)}.login-form{width:min(560px,100%);justify-self:center}.register-form{width:min(560px,100%)}}@media(max-width:600px){.login-page{place-items:start center;padding:24px 14px}.auth-header{margin-bottom:14px}.brand-lockup-name{font-size:16px}.login-panel{border-radius:14px}.login-copy{min-height:430px;padding:38px 24px 30px}.login-copy:before{width:260px;height:260px;top:-140px;right:-125px;box-shadow:0 0 0 24px #2b6cff06,0 0 0 48px #2b6cff05}.auth-copy-hero{margin:auto 0}.auth-eyebrow{margin-bottom:15px;font-size:11px}.login-copy h1{font-size:clamp(38px,12vw,52px)}.login-copy p{margin-top:17px;font-size:12px;line-height:1.75}.auth-feature-strip{gap:10px;margin-top:36px;padding-top:16px}.auth-feature-strip strong{font-size:11px}.auth-feature-strip span{font-size:10px}.login-form{padding:34px 22px 28px}.auth-form-heading{margin-bottom:24px}.auth-form-heading h2{font-size:24px}.auth-method-switch{margin-bottom:22px!important}.register-form{padding-top:34px}.register-form-title{margin-top:24px}.auth-footer{padding:11px 2px 0;font-size:9px}}@media(prefers-reduced-motion:reduce){.login-submit{transition:none}}.auth-modal.ant-modal{max-width:calc(100vw - 28px);padding-bottom:0}.auth-modal .ant-modal-content{overflow:hidden;padding:0;border:1px solid rgba(31,35,41,.1);border-radius:16px;background:#fff;box-shadow:0 24px 70px #1f232933}.auth-modal .ant-modal-close{top:14px;right:14px;width:32px;height:32px;color:var(--color-text-tertiary);border-radius:8px}.auth-modal .ant-modal-close:hover{color:var(--color-text);background:var(--color-bg)}.auth-modal-body{padding:30px 38px 32px}.auth-modal-brand{display:flex;align-items:center;gap:10px;margin-bottom:28px;padding-bottom:18px;border-bottom:1px solid var(--color-border)}.auth-modal-brand .brand-lockup-logo{width:32px;height:32px;flex-basis:32px}.auth-modal-brand .brand-lockup-badge{width:32px;height:32px;flex-basis:32px;border-radius:8px}.auth-modal-brand .brand-lockup-name{font-size:16px}.auth-modal .login-form{width:auto;min-height:0;padding:0;border:none;border-radius:0;background:transparent;box-shadow:none}.auth-modal .auth-loading{min-height:220px;display:grid;place-items:center}.auth-modal .auth-form-heading{margin-bottom:24px}.auth-modal .auth-form-kicker{margin-bottom:8px;color:var(--color-primary);font-size:11px}.auth-modal .auth-form-heading h2{color:var(--color-text);font-size:25px}.auth-modal .auth-form-heading p{margin-top:7px;color:var(--color-text-tertiary)}.auth-modal .auth-method-switch{margin-bottom:22px!important}.auth-modal .login-submit{margin-top:5px}.auth-modal .auth-form-switch{margin-top:20px;padding-top:16px}.auth-modal .auth-provider-state{padding:26px 0 30px}.auth-modal .register-form{padding:0}.auth-modal .register-form-title{margin:24px 0 18px;padding-top:14px}.auth-modal .register-form .ant-form-item{margin-bottom:15px}.auth-modal .register-form .ant-form-item-label{padding-bottom:5px}.auth-modal .register-form .ant-input,.auth-modal .register-form .ant-input-affix-wrapper{min-height:44px}.auth-modal .register-form .ant-input{height:44px}.auth-modal .register-form .ant-input-affix-wrapper{min-height:44px}.auth-modal .register-submit{margin-top:3px}@media(max-width:600px){.auth-modal.ant-modal,.auth-register-modal.ant-modal{width:calc(100vw - 28px)!important;max-width:calc(100vw - 28px)}.auth-modal-body{padding:27px 22px 24px}.auth-modal-brand{margin-bottom:24px}.auth-modal .auth-form-heading h2{font-size:23px}.auth-modal .auth-code-row .ant-btn{width:98px;flex-basis:98px;padding:0 6px}}.nf{height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:var(--color-bg)}.nf .code{font-size:72px;font-weight:800;color:var(--color-primary)}.nf p{color:var(--color-text-secondary)}.nf .back{margin-top:8px;padding:10px 24px;border:none;background:var(--color-primary);color:#fff;border-radius:var(--radius-pill)}.placeholder{padding:60px 24px;display:flex;justify-content:center}.placeholder .card{text-align:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);padding:48px 56px;max-width:520px}.placeholder .emoji{font-size:48px}.placeholder h1{margin:12px 0 8px;font-size:20px}.placeholder p{margin:4px 0;color:var(--color-text-secondary);font-size:14px}.placeholder .hint{color:var(--color-text-tertiary);font-size:12px}.search-page{padding:20px 24px 48px;max-width:1480px;margin:0 auto}.search-page h1{margin:0 0 6px;font-size:22px}.search-page .kw{margin:0 0 18px;color:var(--color-text-secondary);font-size:13px}.search-page .group{margin-top:24px}.search-page .group h2{margin:0 0 14px;font-size:16px}.search-page .grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.search-page .work-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}.search-page .work{cursor:pointer}.search-page .thumb{height:140px;border-radius:var(--radius-card);background-size:cover;background-position:center;position:relative}.search-page .play{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:#fff;background:#00000040}.search-page .w-title{margin-top:8px;font-size:13px;text-align:center}.search-page .empty{padding:24px;text-align:center;color:var(--color-text-tertiary);background:var(--color-surface);border:1px dashed var(--color-border);border-radius:var(--radius-card)}@media(max-width:1280px){.search-page .grid{grid-template-columns:repeat(4,1fr)}}.detail{padding:20px 24px 48px;max-width:1200px;margin:0 auto}.detail .hero{display:flex;gap:24px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);overflow:hidden}.detail .cover{width:320px;height:260px;flex-shrink:0;background-size:cover;background-position:center}.detail .hero-meta{padding:22px 24px;flex:1;min-width:0}.detail .type{display:inline-block;background:var(--color-primary-soft);color:var(--color-primary);font-size:12px;padding:2px 10px;border-radius:var(--radius-pill)}.detail .hero-meta h1{margin:10px 0 6px;font-size:22px}.detail .desc{margin:0 0 12px;color:var(--color-text-secondary);font-size:13px}.detail .tags{display:flex;gap:8px;margin-bottom:14px}.detail .tag{font-size:12px;color:var(--color-primary);background:var(--color-primary-soft);padding:2px 10px;border-radius:var(--radius-pill)}.detail .stats{display:flex;flex-wrap:wrap;gap:18px;font-size:12px;color:var(--color-text-tertiary);margin-bottom:18px}.detail .stats span{display:inline-flex;align-items:center;gap:4px}.detail .actions{display:flex;gap:12px}.detail .block{margin-top:24px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);padding:18px 22px}.detail .block h2{margin:0 0 14px;font-size:16px}.detail .scenes{display:flex;flex-wrap:wrap;gap:10px}.detail .scene{padding:6px 14px;border:1px solid var(--color-border);border-radius:var(--radius-pill);font-size:13px;color:var(--color-text-secondary)}.detail .params{display:flex;flex-direction:column;gap:10px}.detail .param{display:flex;gap:16px;align-items:center;padding:10px 12px;background:var(--color-bg);border-radius:var(--radius-sm);font-size:13px}.detail .p-label{font-weight:600;min-width:120px}.detail .p-label b{color:var(--color-danger)}.detail .p-type{color:var(--color-primary);background:var(--color-primary-soft);padding:1px 8px;border-radius:var(--radius-pill);font-size:11px}.detail .p-default{color:var(--color-text-tertiary)}.work-detail{padding:20px 24px 48px;max-width:1200px;margin:0 auto}.work-detail .layout{display:grid;grid-template-columns:1.4fr 1fr;gap:24px;align-items:start}.work-detail .media{height:460px;border-radius:var(--radius-card);background-size:cover;background-position:center;position:relative;border:1px solid var(--color-border)}.work-detail .play{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:#fff;background:#0000004d}.work-detail .info{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);padding:22px 24px}.work-detail .type{display:inline-block;background:var(--color-primary-soft);color:var(--color-primary);font-size:12px;padding:2px 10px;border-radius:var(--radius-pill)}.work-detail .info h1{margin:10px 0 8px;font-size:22px}.work-detail .author{font-size:13px;color:var(--color-text-secondary);display:inline-flex;align-items:center;gap:4px}.work-detail .author a{color:var(--color-primary);cursor:pointer}.work-detail .desc{margin:12px 0;font-size:13px;color:var(--color-text-secondary);line-height:1.6}.work-detail .meta{display:flex;flex-direction:column;gap:10px;margin:16px 0}.work-detail .meta-item label{display:block;font-size:12px;color:var(--color-text-tertiary);margin-bottom:2px}.work-detail .meta-val{font-size:13px;color:var(--color-text);background:var(--color-bg);border-radius:var(--radius-sm);padding:8px 10px;word-break:break-all}.work-detail .acts{display:flex;flex-wrap:wrap;gap:10px}@media(max-width:900px){.work-detail .layout{grid-template-columns:1fr}}.workspace{padding:20px 24px 48px;max-width:1480px;margin:0 auto}.workspace .head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.workspace .head h1{margin:0;font-size:22px}.workspace .head p{margin:4px 0 0;color:var(--color-text-secondary);font-size:13px}.workspace .layout{display:grid;grid-template-columns:1fr 420px;gap:20px;margin-top:18px;align-items:start}.workspace .left{display:flex;flex-direction:column;gap:16px}.submit-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card)}.estimate{font-size:13px;color:var(--color-text-secondary);display:flex;flex-direction:column;gap:4px}.estimate b{color:var(--color-warning)}.estimate .time{font-size:12px;color:var(--color-text-tertiary)}@media(max-width:1100px){.workspace .layout{grid-template-columns:1fr}}.prompt-panel{display:flex;flex-direction:column;gap:8px}.prompt-panel .label{font-size:13px;font-weight:600;color:var(--color-text)}.prompt-panel .prompt-input{width:100%;resize:vertical;border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:12px;font-size:14px;font-family:inherit;line-height:1.6;color:var(--color-text);background:var(--color-surface);outline:none;min-height:120px}.prompt-panel .prompt-input:focus{border-color:var(--color-primary)}.prompt-hint{font-size:11px;color:var(--color-text-tertiary)}.settings{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);overflow:hidden}.settings .head{padding:12px 16px;font-size:13px;font-weight:700;border-bottom:1px solid var(--color-border);background:var(--color-bg)}.settings .rows{padding:8px 16px 14px}.settings .row{padding:10px 0;display:flex;flex-direction:column;gap:6px}.settings .row+.row{border-top:1px solid var(--color-border)}.row-label{font-size:13px;color:var(--color-text-secondary)}.req{color:var(--color-danger);margin-left:2px}.row-desc{font-size:11px;color:var(--color-text-tertiary)}.upload-btn{border:1px dashed var(--color-border-strong);background:var(--color-bg);padding:8px 14px;border-radius:var(--radius-sm);color:var(--color-text-secondary);font-size:13px}.muted{font-size:12px;color:var(--color-text-tertiary)}.gallery{display:flex;flex-direction:column;gap:16px}.gallery .scenes{display:flex;flex-wrap:wrap;gap:8px}.gallery .scene{height:30px;padding:0 14px;border:1px solid var(--color-border);background:var(--color-surface);border-radius:var(--radius-pill);font-size:13px;color:var(--color-text-secondary)}.gallery .scene.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.gallery .templates{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.gallery .tpl{border:1px solid var(--color-border);border-radius:var(--radius-card);overflow:hidden;background:var(--color-surface);cursor:pointer;transition:transform .15s,box-shadow .15s}.gallery .tpl:hover{transform:translateY(-2px);box-shadow:var(--shadow-card)}.tpl-cover{height:96px;background-size:cover;background-position:center}.tpl-meta{padding:10px 12px}.tpl-name{font-size:13px;font-weight:600}.tpl-cost{margin-top:4px;font-size:11px;color:var(--color-warning);display:inline-flex;align-items:center;gap:4px}.gallery .empty{padding:28px;text-align:center;color:var(--color-text-tertiary);background:var(--color-surface);border:1px dashed var(--color-border);border-radius:var(--radius-card)}.results{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);overflow:hidden}.results .head{padding:12px 16px;font-size:13px;font-weight:700;border-bottom:1px solid var(--color-border);background:var(--color-bg)}.results .empty-wrap{padding:24px 0}.results .list{padding:12px 16px;display:flex;flex-direction:column;gap:14px}.results .task{border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:12px}.results .task-head{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--color-text-tertiary)}.results .task-type{background:var(--color-primary-soft);color:var(--color-primary);padding:1px 8px;border-radius:var(--radius-pill);font-size:11px}.results .task-time{margin-left:auto}.results .delete-btn{margin-left:4px;padding:0 6px}.results .task-prompt{margin:8px 0;font-size:13px;color:var(--color-text);line-height:1.5}.results .result{display:flex;gap:14px;align-items:flex-start;margin-top:8px}.result-media-wrap{width:140px;height:140px;flex-shrink:0}.result-media{width:140px;height:140px;border-radius:var(--radius-sm);background-color:var(--color-bg);overflow:hidden}.results .video-thumb{width:140px;height:140px;border-radius:var(--radius-sm);background-size:cover;background-position:center;position:relative;flex-shrink:0}.results .audio{width:100%}.results .badge{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:#fff;background:#00000040}.result-actions{display:flex;flex-wrap:wrap;gap:8px;align-content:flex-start}.results .fail{margin-top:8px;padding:8px 10px;background:#fef0f0;color:var(--color-danger);border-radius:var(--radius-sm);font-size:12px}.results .progress{margin-top:8px;position:relative;height:24px;background:var(--color-bg);border-radius:var(--radius-pill);overflow:hidden}.results .bar{position:absolute;top:0;right:30%;bottom:0;left:0;background:linear-gradient(90deg,var(--color-primary-soft),var(--color-primary));animation:slide 1.2s ease-in-out infinite alternate}@keyframes slide{0%{right:70%}to{right:10%}}.results .bar-text{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:11px;color:var(--color-text-secondary)}.feed{min-height:620px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);overflow:hidden}.feed .empty{padding-top:120px}.feed .groups{padding:16px 18px 22px}.feed .day-group+.day-group{margin-top:22px}.feed .day-group h3{margin:0 0 12px;color:var(--color-text);font-size:20px}.feed .task{padding:14px;border:1px solid var(--color-border);border-radius:var(--radius-card);background:#fff}.feed .task+.task{margin-top:14px}.feed .task-top{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;color:var(--color-text-tertiary);font-size:12px}.feed .meta{min-width:0;overflow:hidden;color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap}.feed .cost{margin-left:auto}.feed .delete-btn{margin-left:4px;padding:0 6px}.feed .prompt{margin:10px 0 12px;color:var(--color-text-secondary);font-size:13px;line-height:1.65}.feed .result{display:flex;flex-direction:column;gap:12px}.feed .media{width:100%;border-radius:var(--radius-sm);background-color:var(--color-bg)}.feed .media.image-wrap{min-height:360px;position:relative;cursor:zoom-in}.feed .media.image{min-height:360px;border-radius:var(--radius-sm);background-color:var(--color-bg)}.feed .media-badge{position:absolute;top:12px;left:12px;padding:4px 10px;border-radius:var(--radius-pill);color:#fff;background:#00000059;font-size:12px;pointer-events:none}.feed .media.video{max-height:420px}.feed .audio{width:100%}.feed .actions{display:flex;flex-wrap:wrap;gap:8px}.feed .failed{padding:10px 12px;border-radius:var(--radius-sm);color:var(--color-danger);background:#fef0f0;font-size:13px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.feed .generating{min-height:84px;padding:14px;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text-secondary);font-size:13px}.feed .pulse{width:10px;height:10px;border-radius:50%;background:var(--color-primary);animation:pulse 1s ease-in-out infinite alternate}@keyframes pulse{0%{opacity:.35;transform:scale(.8)}to{opacity:1;transform:scale(1.15)}}.create-page{padding:20px 24px 24px;max-width:1580px;margin:0 auto;height:100%;display:flex;flex-direction:column}.page-breadcrumb{width:100%;flex-shrink:0;display:inline-flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;line-height:1}.crumb-parent{color:var(--color-text-tertiary);font-weight:600}.crumb-sep{color:var(--color-text-tertiary);font-weight:500}.crumb-current{color:var(--color-text-secondary);font-weight:700}.create-page .layout{flex:1;min-height:0;display:grid;grid-template-columns:minmax(min(540px,52%),1.1fr) minmax(min(480px,44%),.9fr);gap:18px;margin-top:12px;align-items:stretch}.control-pane,.feed-pane{min-height:0;overflow-y:auto}.create-app-entry{border:1px solid rgba(43,108,255,.2);border-radius:999px;background:var(--color-primary-soft);color:var(--color-primary);padding:6px 12px;font-size:12px;font-weight:700;cursor:pointer}.application-composer{overflow:hidden;border:1px solid rgba(43,108,255,.14);border-radius:20px;background:linear-gradient(180deg,rgba(239,248,255,.92),var(--color-surface) 150px);box-shadow:0 18px 55px #1e528c1a}.application-composer-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 20px;border-bottom:1px solid rgba(43,108,255,.1)}.application-title{display:flex;align-items:center;gap:11px;min-width:0}.application-title>span{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;color:#fff;background:linear-gradient(145deg,#1da1e7,#2b6cff);box-shadow:0 8px 18px #2b6cff38}.application-title div{min-width:0;display:flex;flex-direction:column;gap:3px}.application-title b{font-size:16px;color:var(--color-text)}.application-title small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text-tertiary);font-size:11px}.application-switch{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:var(--color-text-secondary);font-weight:700;font-size:12px;cursor:pointer}.application-switch:hover{color:var(--color-primary)}.application-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 14px;padding:18px 20px 8px}.application-field{min-width:0;grid-column:1 / -1;opacity:0;transform:translateY(8px);animation:application-field-in .32s ease forwards}.application-field-image{grid-column:auto}.application-field-image.application-field-wide{grid-column:1 / -1}@keyframes application-field-in{to{opacity:1;transform:none}}.application-field>label{min-height:24px;margin-bottom:7px;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;color:var(--color-text-secondary)}.application-field>label>span{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:800}.application-field>label i{color:var(--color-danger);font-style:normal}.application-field>label small{max-width:58%;padding-top:2px;overflow:hidden;color:var(--color-text-tertiary);font-size:11px;font-weight:500;text-align:right;text-overflow:ellipsis;white-space:nowrap}.application-field .ant-select,.application-field .ant-input-number{width:100%}.application-image-slot{width:100%;height:clamp(220px,24vw,320px);position:relative;display:grid;place-items:center;overflow:hidden;border:1.5px dashed #b8cbd8;border-radius:16px;background:radial-gradient(circle at 50% 35%,rgba(79,180,232,.09),transparent 42%),#f8fcffe0;cursor:pointer;transition:border-color .18s,background .18s,box-shadow .18s,transform .18s}.application-field-wide .application-image-slot{height:clamp(240px,28vw,360px)}.application-image-slot:hover,.application-image-slot.dragging,.application-image-slot:focus-visible{border-color:#159de1;background-color:#f4fbff;box-shadow:inset 0 0 0 3px #159de10f;outline:none}.application-image-slot.dragging{transform:translateY(-2px)}.application-image-slot.filled{padding:12px 12px 32px;cursor:default;background:linear-gradient(145deg,#f7fafc,#edf4f8)}.application-image-slot.image-error{border-color:#e4b467;background:#fffaf1}.application-image-slot.uploading{opacity:.72;pointer-events:none}.application-image-slot img{width:100%;height:100%;display:block;object-fit:contain;border-radius:10px}.application-image-empty{display:flex;flex-direction:column;align-items:center;gap:8px;color:#159de1}.application-image-empty-icon{width:52px;height:52px;display:grid;place-items:center;border:1px solid rgba(21,157,225,.16);border-radius:16px;background:#ffffffd6;box-shadow:0 10px 26px #1567951a}.application-image-slot.image-error .application-image-empty{color:#c27a16}.application-image-empty b{color:var(--color-text-secondary);font-size:13px}.application-image-empty>span:not(.application-image-empty-icon){color:var(--color-text-tertiary);font-size:11px}.application-image-empty-actions{display:flex;gap:8px;margin-top:3px}.application-image-empty-actions button{min-width:104px;height:34px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 13px;border:1px solid #d5e5ed;border-radius:9px;color:#527080;background:#ffffffe0;font-size:12px;font-weight:750;cursor:pointer;transition:color .16s,border-color .16s,background .16s,transform .16s}.application-image-empty-actions button:hover{transform:translateY(-1px);border-color:#55b6e5;color:#087fbc;background:#fff}.application-image-empty-actions button:last-child{border-color:#2b6cff38;color:#2b6cff;background:#eaf0ffd1}.application-image-actions{position:absolute;right:10px;top:10px;display:flex;gap:3px;padding:4px;border:1px solid rgba(255,255,255,.7);border-radius:12px;background:#ffffffe6;box-shadow:0 10px 30px #0f172a29;opacity:0;transform:translateY(-4px);transition:opacity .16s,transform .16s;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.application-image-slot:hover .application-image-actions,.application-image-actions:focus-within{opacity:1;transform:none}.application-image-actions button{width:36px;height:36px;display:grid;place-items:center;border:0;border-radius:9px;background:transparent;color:#1f2937;cursor:pointer}.application-image-actions button:hover{background:#eef7fd;color:#159de1}.application-image-actions button:last-child:hover{background:#fff0f0;color:var(--color-danger)}.application-image-size{position:absolute;bottom:7px;left:50%;transform:translate(-50%);color:var(--color-text-secondary);font-size:11px;font-variant-numeric:tabular-nums}.application-submit{position:sticky;bottom:0;margin-top:12px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 20px;border-top:1px solid rgba(43,108,255,.1);background:#fffffff0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.application-submit>div{display:grid;grid-template-columns:auto auto;gap:2px 8px;align-items:baseline}.application-submit span{color:var(--color-text-tertiary);font-size:11px}.application-submit b{color:#0b8fd3;font-size:15px}.application-submit small{grid-column:1 / -1;color:var(--color-text-tertiary);font-size:10px}.application-submit .ant-btn{min-width:180px;height:44px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:none;border-radius:13px;background:linear-gradient(100deg,#67c9ee,#1199db);box-shadow:0 10px 24px #1199db38}.application-submit .ant-btn:disabled:not(.application-generating){color:#91a3ad;background:#e5edf1;box-shadow:none;cursor:not-allowed}.application-submit .ant-btn.application-generating,.application-submit .ant-btn.application-generating:disabled{position:relative;overflow:hidden;color:#fff;background:linear-gradient(100deg,#4899c1,#2b73b3);box-shadow:0 8px 20px #24699d2e;cursor:wait;opacity:1}.application-submit .ant-btn.application-generating:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(105deg,transparent 28%,rgba(255,255,255,.2) 45%,transparent 62%);transform:translate(-100%);animation:application-generating-shine 1.5s ease-in-out infinite;pointer-events:none}@keyframes application-generating-shine{to{transform:translate(100%)}}.application-switcher-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding-top:6px}.application-switcher-card{min-width:0;padding:0 0 12px;overflow:hidden;display:flex;flex-direction:column;text-align:left;border:1px solid var(--color-border);border-radius:14px;background:var(--color-surface);cursor:pointer;transition:transform .16s,border-color .16s,box-shadow .16s}.application-switcher-card:hover,.application-switcher-card.active{transform:translateY(-2px);border-color:#2b6cff73;box-shadow:0 12px 28px #2b6cff1f}.application-switcher-cover{height:112px;display:grid;place-items:center;margin-bottom:10px;background-size:cover;background-position:center;color:#fff;font-size:30px}.application-switcher-card.ordinary .application-switcher-cover{background:linear-gradient(145deg,#4bbce9,#2b6cff)}.application-switcher-card b,.application-switcher-card small{margin:0 12px}.application-switcher-card b{color:var(--color-text);font-size:13px}.application-switcher-card small{margin-top:4px;overflow:hidden;color:var(--color-text-tertiary);font-size:10px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.asset-picker-modal .ant-modal-content{overflow:hidden;padding:0;border:1px solid #dce8ef;border-radius:18px;box-shadow:0 28px 90px #17354b38}.asset-picker-modal .ant-modal-header{margin:0;padding:20px 22px 15px;border-bottom:1px solid #edf2f5;background:linear-gradient(135deg,#f8fcfe,#f1f7fb)}.asset-picker-modal .ant-modal-title{color:#243845;font-size:17px;font-weight:800}.asset-picker-modal .ant-modal-close{top:14px;right:16px}.asset-picker-modal .ant-modal-body{padding:18px 22px 22px}.asset-picker-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px}.asset-picker-sources{display:flex;align-items:center;gap:4px;padding:4px;border:1px solid #e2ebf0;border-radius:11px;background:#f6f9fb}.asset-picker-sources button{height:30px;padding:0 11px;border:0;border-radius:7px;color:#71808a;background:transparent;font-size:12px;font-weight:700;cursor:pointer}.asset-picker-sources button:hover{color:#157fb5}.asset-picker-sources button.active{color:#087db9;background:#fff;box-shadow:0 2px 8px #23546e1a}.asset-picker-search{width:min(290px,40%);height:39px;display:flex;align-items:center;gap:8px;padding-left:12px;border:1px solid #dbe6ec;border-radius:10px;color:#8796a0;background:#fff;transition:border-color .16s,box-shadow .16s}.asset-picker-search:focus-within{border-color:#52b2df;box-shadow:0 0 0 3px #159de114}.asset-picker-search input{min-width:0;flex:1;border:0;outline:0;color:#314653;background:transparent}.asset-picker-search>button:not(.asset-picker-search-submit){width:26px;height:26px;display:grid;place-items:center;border:0;color:#97a5ad;background:transparent}.asset-picker-search-submit{align-self:stretch;padding:0 14px;border:0;border-radius:0 9px 9px 0;color:#fff;background:#159ddd;font-weight:700}.asset-picker-summary{display:flex;justify-content:space-between;margin:14px 1px 10px;color:#89969e;font-size:11px}.asset-picker-summary b{color:#587080;font-weight:700}.asset-picker-grid{min-height:300px;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));align-content:start;gap:10px}.asset-picker-card{min-width:0;padding:0 0 8px;overflow:hidden;border:1px solid #e2eaee;border-radius:11px;color:#40535f;background:#fff;text-align:left;cursor:pointer;transition:transform .16s,border-color .16s,box-shadow .16s}.asset-picker-card:hover{transform:translateY(-2px);border-color:#70bfe3;box-shadow:0 10px 22px #1f6f971f}.asset-picker-card.selected{border-color:#2b8dd1;box-shadow:0 0 0 2px #2b8dd11f}.asset-picker-card-image{height:104px;position:relative;display:block;overflow:hidden;margin-bottom:7px;background:linear-gradient(145deg,#eef4f7,#f8fbfc)}.asset-picker-card-image>.asset-media{width:100%;height:100%}.asset-picker-card-image .asset-media-image,.asset-picker-card-image .asset-media-video{display:block;object-fit:cover;transition:transform .25s ease}.asset-picker-card:hover .asset-media-image,.asset-picker-card:hover .asset-media-video{transform:scale(1.035)}.asset-media-audio{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:#d7ebf5;background:radial-gradient(circle at 50% 32%,rgba(50,176,220,.3),transparent 42%),linear-gradient(145deg,#193247,#102332)}.asset-audio-disc{width:44px;height:44px;display:grid;place-items:center;border:1px solid rgba(166,226,248,.38);border-radius:50%;background:#05121c57;box-shadow:0 0 0 7px #6bcfef12}.asset-audio-kind{font:700 8px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.12em;opacity:.72}.asset-media-audio.is-preview{min-height:420px;gap:20px}.asset-media-audio.is-preview .asset-audio-disc{width:82px;height:82px;box-shadow:0 0 0 13px #6bcfef12}.asset-media-audio audio{width:min(560px,calc(100% - 64px))}.asset-picker-card-image i{position:absolute;top:7px;right:7px;width:24px;height:24px;display:grid;place-items:center;border-radius:50%;color:#fff;background:#168dd0;box-shadow:0 3px 10px #145c8240}.asset-picker-card-image small{position:absolute;left:6px;bottom:6px;max-width:calc(100% - 12px);padding:3px 6px;overflow:hidden;border:1px solid rgba(255,255,255,.36);border-radius:6px;color:#fff;background:#1f3543ad;font-size:9px;font-weight:700;text-overflow:ellipsis;white-space:nowrap;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.asset-picker-card-image small.source-generation{background:#1974b4bf}.asset-picker-card-image small.source-edit{background:#0d8972bf}.asset-picker-card-image small.source-director{background:#694ca6c7}.asset-picker-card>b{display:block;margin:0 8px;overflow:hidden;font-size:11px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.asset-picker-grid.loading{pointer-events:none}.asset-picker-skeleton{overflow:hidden;border:1px solid #e8eef1;border-radius:11px}.asset-picker-skeleton .ant-skeleton-image{width:100%!important;height:104px!important}.asset-picker-skeleton .ant-skeleton{padding:7px 8px 4px}.asset-picker-state{min-height:300px;display:grid;place-content:center;justify-items:center;gap:8px;color:#8a99a2}.asset-picker-state.error b{color:#4c5e68}.asset-picker-state.error button{display:inline-flex;align-items:center;gap:6px;margin-top:5px;padding:7px 12px;border:1px solid #d8e5eb;border-radius:8px;color:#167fab;background:#fff}.asset-picker-pagination{display:flex;justify-content:center;margin-top:18px}@media(max-width:1360px){.create-page{height:auto;display:block}.create-page .layout{grid-template-columns:1fr;flex:none;overflow:visible}.control-pane,.feed-pane{overflow:visible}}@media(max-width:760px){.application-fields{grid-template-columns:1fr}.application-field-image{grid-column:1 / -1}.application-image-slot,.application-field-wide .application-image-slot{height:clamp(220px,64vw,340px)}.application-composer-head,.application-submit{align-items:stretch}.application-composer-head{flex-direction:column}.application-switch{align-self:flex-end}.application-submit{flex-direction:column}.application-submit .ant-btn{width:100%}.application-switcher-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.asset-picker-toolbar{align-items:stretch;flex-direction:column}.asset-picker-sources{overflow-x:auto}.asset-picker-search{width:100%}.asset-picker-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.asset-picker-card-image{height:92px}}@media(hover:none){.application-image-actions{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.application-field{opacity:1;transform:none;animation:none}}.wallet-page{padding:20px 24px 48px;max-width:960px;margin:0 auto}.wallet-page .loading,.tx-loading{padding:60px 0;text-align:center;color:var(--color-text-tertiary)}.balance-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 26px;border-radius:var(--radius-card);background:linear-gradient(135deg,#2b6cff,#4d8bff 55%,#6ea0ff);color:#fff;box-shadow:0 16px 36px #2b6cff38}.balance-main{display:flex;flex-direction:column;gap:4px}.balance-label{display:inline-flex;align-items:center;gap:6px;font-size:13px;opacity:.92;font-weight:600}.balance-value{display:block;margin-top:8px;font-size:40px;font-weight:800;line-height:1.1;font-variant-numeric:tabular-nums}.balance-hint{margin:8px 0 0;font-size:12px;opacity:.85}.summary-grid{margin-top:14px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.summary-card{padding:16px 18px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card)}.summary-label{font-size:12px;color:var(--color-text-tertiary);font-weight:600}.summary-card strong{display:block;margin-top:8px;font-size:22px;font-weight:700;font-variant-numeric:tabular-nums}.summary-card p{margin:6px 0 0;font-size:11px;color:var(--color-text-tertiary)}.tx-panel{margin-top:20px;padding:18px 20px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card)}.tx-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}.tx-head h2{margin:0;font-size:16px;font-weight:700}.filter-tabs{display:inline-flex;gap:6px;padding:3px;border-radius:var(--radius-pill);background:var(--color-bg);border:1px solid var(--color-border)}.filter-tab{height:28px;padding:0 12px;border:none;border-radius:var(--radius-pill);background:transparent;color:var(--color-text-secondary);font-size:12px;font-weight:600}.filter-tab.active{background:var(--color-surface);color:var(--color-primary);box-shadow:0 1px 3px #0f172a14}.tx-list{display:flex;flex-direction:column;gap:8px}.tx-row{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg)}.tx-icon{width:36px;height:36px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:16px;font-weight:700}.tx-icon.recharge{background:#22c55e1f;color:var(--color-success)}.tx-icon.consume{background:#ef44441a;color:var(--color-danger)}.tx-icon.refund{background:#2b6cff1a;color:var(--color-primary)}.tx-body{flex:1;min-width:0}.tx-title{font-size:14px;font-weight:600;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tx-meta{margin-top:4px;display:flex;align-items:center;gap:10px;font-size:12px;color:var(--color-text-tertiary)}.tx-type{padding:1px 7px;border-radius:var(--radius-pill);background:var(--color-surface);border:1px solid var(--color-border)}.tx-amounts{text-align:right;flex-shrink:0}.tx-amount{display:block;font-size:16px;font-weight:700;font-variant-numeric:tabular-nums}.tx-amount.up{color:var(--color-success)}.tx-amount.down{color:var(--color-danger)}.tx-balance{display:block;margin-top:2px;font-size:11px;color:var(--color-text-tertiary)}.tx-pagination{margin-top:16px;justify-content:center}.recharge{display:flex;flex-direction:column;gap:14px}.recharge-tip{margin:0;font-size:13px;color:var(--color-text-tertiary)}.presets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.preset{padding:12px 10px;border:1px solid var(--color-border);background:var(--color-surface);border-radius:var(--radius-sm);text-align:center;transition:border-color .15s,background .15s}.preset.active{border-color:var(--color-primary);background:var(--color-primary-soft)}.preset-price{display:block;font-size:18px;font-weight:700;color:var(--color-text)}.preset-sub{display:block;margin-top:2px;font-size:11px;color:var(--color-text-tertiary)}.custom{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--color-text-secondary)}.recharge-summary{padding:12px 14px;border-radius:var(--radius-sm);background:var(--color-bg);font-size:13px;color:var(--color-text-secondary)}.recharge-summary b{color:var(--color-primary)}@media(max-width:720px){.balance-hero{flex-direction:column;align-items:stretch}.summary-grid{grid-template-columns:1fr}.tx-row{flex-wrap:wrap}.tx-amounts{width:100%;text-align:left;padding-left:48px}}.profile-page{padding:20px 24px 48px;max-width:1080px;margin:0 auto}.profile-page .loading{padding:80px 0;text-align:center;color:var(--color-text-tertiary)}.profile-page .hero{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 24px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-card)}.hero-main{display:flex;align-items:center;gap:18px;min-width:0}.profile-page .avatar{width:72px;height:72px;border-radius:50%;object-fit:cover;flex-shrink:0;border:2px solid var(--color-border)}.profile-page .avatar-fallback{display:flex;align-items:center;justify-content:center;background:var(--color-primary-soft);color:var(--color-primary);font-size:26px;font-weight:700}.hero-meta{min-width:0}.name-row{display:flex;align-items:center;gap:8px}.hero-meta h1{margin:0;font-size:22px;font-weight:700}.profile-page .online-dot{position:relative;right:auto;bottom:auto;width:8px;height:8px;border-radius:50%;background:var(--color-success);box-shadow:0 0 0 3px #22c55e2e;border:none}.role-badge{display:inline-block;margin-top:6px;padding:2px 10px;border-radius:var(--radius-pill);background:var(--color-primary-soft);color:var(--color-primary);font-size:12px;font-weight:600}.profile-page .bio{margin:8px 0 0;font-size:13px;color:var(--color-text-tertiary)}.hero-actions{display:flex;flex-shrink:0;gap:10px}.stat-grid{margin-top:16px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.stat-card{padding:16px 18px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card)}.stat-card.highlight{background:linear-gradient(135deg,#2b6cff14,#2b6cff05);border-color:#2b6cff38}.stat-label{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--color-text-tertiary);font-weight:600}.stat-value{display:block;margin-top:8px;font-size:24px;font-weight:700;color:var(--color-text);font-variant-numeric:tabular-nums}.stat-link{margin-top:8px;padding:0;border:none;background:none;color:var(--color-primary);font-size:12px;font-weight:700;cursor:pointer}.quick-panel,.tasks-panel{margin-top:20px;padding:18px 20px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card)}.quick-panel h2,.panel-head h2{margin:0;font-size:16px;font-weight:700}.panel-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:14px}.panel-hint{font-size:12px;color:var(--color-text-tertiary)}.quick-list{margin-top:12px;display:flex;flex-wrap:wrap;gap:8px}.quick-item{height:34px;padding:0 14px;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-bg);color:var(--color-text-secondary);font-size:13px;font-weight:600;transition:border-color .15s,color .15s,background .15s}.quick-item:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-soft)}.profile-page .task-list{display:flex;flex-direction:column;gap:10px}.profile-page .task-row{display:flex;align-items:center;gap:14px;padding:12px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg)}.profile-page .task-thumb{width:52px;height:52px;flex-shrink:0;border-radius:8px;overflow:hidden;border:1px solid var(--color-border);background:var(--color-surface)}.profile-page .thumb-image{width:100%;height:100%}.profile-page .thumb-image .ant-image,.profile-page .thumb-image .ant-image-img{width:100%;height:100%;object-fit:cover}.profile-page .thumb-fallback{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:var(--color-text-secondary);background:var(--color-primary-soft)}.profile-page .thumb-fallback.video{color:var(--color-primary)}.profile-page .empty-thumb{display:flex;align-items:center;justify-content:center;color:var(--color-text-tertiary)}.profile-page .task-body{flex:1;min-width:0}.profile-page .task-tags{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.profile-page .type-tag{padding:1px 8px;border-radius:var(--radius-pill);background:var(--color-primary-soft);color:var(--color-primary);font-size:11px;font-weight:700}.profile-page .task-app{font-size:12px;color:var(--color-text-secondary);font-weight:600}.profile-page .task-cost{font-size:12px;color:var(--color-text-tertiary)}.profile-page .task-prompt{margin:6px 0 4px;font-size:13px;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-page .task-time{font-size:11px;color:var(--color-text-tertiary)}.task-go{flex-shrink:0;height:32px;padding:0 12px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text-secondary);font-size:12px;font-weight:700}.task-go:hover{border-color:var(--color-primary);color:var(--color-primary)}@media(max-width:900px){.profile-page .hero{flex-direction:column;align-items:stretch}.hero-actions{justify-content:flex-start}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.profile-page .task-row{flex-wrap:wrap}.task-go{width:100%}}.composer-shell{display:flex;flex-direction:column;gap:14px}.capability-strip{display:flex;flex-wrap:wrap;gap:8px}.capability{height:38px;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--color-border);background:var(--color-surface);border-radius:var(--radius-pill);color:var(--color-text-secondary);font-size:13px;font-weight:600;transition:border-color .15s,background .15s,color .15s}.capability:hover{border-color:var(--color-border-strong);color:var(--color-text)}.capability.active{background:var(--color-primary-soft);border-color:var(--color-primary);color:var(--color-primary)}.capability.disabled{opacity:.55}.composer{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-card);overflow:hidden;padding-top:18px}.prompt-field{margin:0 20px;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-bg);transition:border-color .18s,box-shadow .18s}.prompt-field:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft);background:var(--color-surface)}.prompt-field-head{padding:10px 14px 0;display:flex;align-items:center;justify-content:space-between;gap:12px}.field-label{color:var(--color-text-tertiary);font-size:12px;font-weight:700;letter-spacing:.02em}.prompt-tools{display:inline-flex;gap:6px}.ghost-tool{height:26px;padding:0 12px;display:inline-flex;align-items:center;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text-secondary);font-size:12px;font-weight:700;transition:border-color .15s,color .15s,background .15s}.ghost-tool:hover{border-color:var(--color-border-strong);color:var(--color-text)}.ghost-tool.primary{border-color:transparent;color:var(--color-primary);background:var(--color-primary-soft)}.ghost-tool.primary:hover{background:#dbe4ff}.head-left{display:flex;align-items:center;gap:12px;min-width:0}.ref-bar{display:inline-flex;align-items:center;gap:4px}.reference-input{display:none}.ref-btn{height:26px;padding:0 10px;display:inline-flex;align-items:center;gap:4px;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text-secondary);font-size:12px;font-weight:700;white-space:nowrap;transition:border-color .15s,color .15s,background .15s}.ref-btn:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-soft)}.ref-limit{min-width:28px;color:var(--color-text-tertiary);font-size:11px;font-variant-numeric:tabular-nums;text-align:center}.ref-thumbs{display:inline-flex;align-items:center;gap:6px;margin-left:6px}.ref-thumb{width:40px;height:40px;position:relative;flex-shrink:0;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-bg);overflow:hidden}.ref-thumb-image{width:100%;height:100%}.ref-thumb-image .ant-image,.ref-thumb-image .ant-image-img{width:100%;height:100%;object-fit:cover}.ref-remove{width:16px;height:16px;position:absolute;top:2px;right:2px;border:none;border-radius:50%;background:#141418b8;color:#fff;font-size:10px;line-height:16px;display:flex;align-items:center;justify-content:center}.composer .prompt-input{width:100%;min-height:150px;margin:0;padding:10px 14px;border:none;outline:none;resize:vertical;color:var(--color-text);background:transparent;font:inherit;font-size:15px;line-height:1.7}.composer .prompt-input::placeholder{color:var(--color-text-tertiary)}.outpaint-panel{margin:0 14px 12px;padding:14px;display:grid;grid-template-columns:minmax(0,1.65fr) 200px;gap:16px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface)}.outpaint-preview{min-height:320px;position:relative;display:flex;align-items:center;justify-content:center;border:1.5px dashed rgba(99,102,241,.65);border-radius:var(--radius-sm);background:linear-gradient(90deg,rgba(99,102,241,.08) 1px,transparent 1px),linear-gradient(rgba(99,102,241,.08) 1px,transparent 1px),var(--color-bg);background-size:18px 18px;overflow:hidden;padding:16px}.outpaint-stage{width:100%;max-width:520px;max-height:288px;position:relative;display:flex;align-items:center;justify-content:center;background:var(--color-surface);box-shadow:0 12px 28px #0f172a24}.outpaint-image{width:100%;max-height:288px}.outpaint-image .ant-image-img{width:auto;height:auto;max-width:100%;max-height:288px;object-fit:contain}.replace-btn{position:absolute;top:10px;right:10px;height:28px;padding:0 12px;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:#ffffffeb;color:var(--color-text-secondary);font-size:12px;font-weight:700;z-index:1}.replace-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.image-size{position:absolute;left:10px;bottom:8px;padding:3px 7px;border-radius:var(--radius-pill);color:var(--color-text-secondary);background:#ffffffe0;font-size:11px;font-variant-numeric:tabular-nums}.outpaint-empty{min-height:120px;padding:0 18px;display:inline-flex;align-items:center;gap:8px;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text-secondary);font-size:13px;font-weight:800}.outpaint-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-content:start}.outpaint-input{display:flex;flex-direction:column;gap:6px}.outpaint-input span{color:var(--color-text-tertiary);font-size:12px;font-weight:800}.outpaint-input input{width:100%;height:36px;padding:0 10px;border:1px solid var(--color-border);border-radius:var(--radius-sm);outline:none;background:var(--color-bg);color:var(--color-text);font:inherit;font-size:14px;font-variant-numeric:tabular-nums}.outpaint-input input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft);background:var(--color-surface)}.prompt-field-foot{padding:0 14px 10px;display:flex;align-items:center;justify-content:space-between;gap:12px}.prompt-field-foot .hint{color:var(--color-text-tertiary);font-size:11px}.prompt-field-foot .count{color:var(--color-text-tertiary);font-size:11px;font-variant-numeric:tabular-nums}.omni-tag-bar{margin:0 14px 10px;display:flex;flex-wrap:wrap;gap:6px}.omni-tag-btn{height:26px;padding:0 10px;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-primary);font-size:12px;font-weight:700}.composer .params{margin:16px 20px 0;padding:16px;display:flex;flex-direction:column;gap:14px;background:var(--color-bg);border-radius:var(--radius-card)}.param-row{display:flex;align-items:flex-start;gap:14px}.param-row-center{align-items:center}.param-row-center .param-label{padding-top:0}.param-label{flex:0 0 64px;padding-top:8px;color:var(--color-text-tertiary);font-size:12px;font-weight:700;text-align:right;white-space:nowrap}.param-control{flex:1;min-width:0;display:flex;flex-wrap:wrap;gap:8px}.parameter-chip{min-width:58px;height:34px;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text-secondary);font-size:12px;font-weight:700;font-variant-numeric:tabular-nums;transition:border-color .15s,background .15s,color .15s,box-shadow .15s}.parameter-chip:hover{border-color:var(--color-border-strong);color:var(--color-text)}.parameter-chip.active{border-color:var(--color-primary);background:var(--color-primary-soft);color:var(--color-primary);box-shadow:inset 0 0 0 1px #2b6cff14}.dynamic-number-control{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.dynamic-number-input,.dynamic-number-input.ant-input-number-group-wrapper{width:176px}.dynamic-number-input .ant-input-number-input{height:32px;font-weight:650;font-variant-numeric:tabular-nums}.dynamic-number-input .ant-input-number-group-addon{min-width:40px;padding-inline:10px;color:var(--color-text-tertiary);background:var(--color-bg);font-size:12px;font-weight:700}.parameter-range{color:var(--color-text-tertiary);font-size:11px;font-variant-numeric:tabular-nums}.model-select-wrap{width:min(100%,360px);height:36px;position:relative;display:flex;align-items:center;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);transition:border-color .15s,box-shadow .15s}.model-select-wrap:hover{border-color:var(--color-border-strong)}.model-select-wrap:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}.model-select{width:100%;height:100%;padding:0 36px 0 12px;border:none;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;color:var(--color-text);font:inherit;font-size:13px;font-weight:600}.select-arrow{position:absolute;right:12px;top:50%;transform:translateY(-54%);color:var(--color-text-tertiary);pointer-events:none;font-size:18px;line-height:1}.ratio-btn{height:32px;padding:0 10px;display:inline-flex;align-items:center;gap:6px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text-secondary);font-size:12px;font-weight:600;transition:border-color .15s,color .15s,background .15s}.ratio-btn:hover{border-color:var(--color-border-strong);color:var(--color-text)}.ratio-btn.active{border-color:var(--color-primary);background:var(--color-primary-soft);color:var(--color-primary)}.ratio-mark{flex-shrink:0;border:1.5px solid currentColor;border-radius:2px}.ratio-mark[data-shape=auto]{width:14px;height:10px;border-style:dashed}.ratio-mark[data-shape="1-1"]{width:12px;height:12px}.ratio-mark[data-shape="4-3"]{width:14px;height:11px}.ratio-mark[data-shape="3-4"]{width:11px;height:14px}.ratio-mark[data-shape="16-9"]{width:16px;height:9px}.ratio-mark[data-shape="9-16"]{width:9px;height:16px}.ratio-mark[data-shape="21-9"]{width:18px;height:8px}.ratio-text{font-variant-numeric:tabular-nums}.quality-btn{height:32px;padding:0 12px;display:inline-flex;align-items:center;gap:5px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text-secondary);transition:border-color .15s,color .15s,background .15s}.quality-mark{width:16px;height:14px;display:grid;grid-template-columns:repeat(2,5px);grid-template-rows:repeat(2,5px);gap:2px;color:currentColor}.quality-mark i{width:5px;height:5px;border:1.4px solid currentColor;border-radius:1px;opacity:.34}.quality-mark[data-level="1"] i:nth-child(-n+1),.quality-mark[data-level="2"] i:nth-child(-n+2),.quality-mark[data-level="4"] i:nth-child(-n+4){opacity:1;background:currentColor}.quality-btn:hover{border-color:var(--color-border-strong);color:var(--color-text)}.quality-btn.active{border-color:var(--color-primary);background:var(--color-primary-soft)}.q-name{font-size:13px;font-weight:700;color:var(--color-text)}.q-sep{color:var(--color-text-tertiary);font-size:12px}.q-desc{font-size:11px;color:var(--color-text-tertiary)}.quality-btn.active .q-name,.quality-btn.active .q-desc,.quality-btn.active .q-sep{color:var(--color-primary)}.frame-pair-panel{margin:0 14px 12px}.frame-rail{max-width:300px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr);gap:6px;align-items:center}.frame-slot{min-width:0}.frame-stage{height:64px;position:relative;border-radius:8px;overflow:hidden;border:1px solid var(--color-border);background:var(--color-bg);transition:border-color .15s}.frame-stage:not(.filled):not(.uploading){cursor:pointer}.frame-stage:not(.filled):hover{border-color:var(--color-primary)}.frame-stage.uploading{opacity:.72;pointer-events:none}.frame-stage.filled{border-color:var(--color-border)}.frame-stage-image{width:100%;height:100%}.frame-stage-image .ant-image,.frame-stage-image .ant-image-img{width:100%;height:100%;object-fit:cover}.frame-stage-bar{position:absolute;left:0;right:0;bottom:0;padding:16px 6px 4px;display:flex;align-items:center;justify-content:space-between;gap:4px;background:linear-gradient(180deg,#0f172a00,#0f172ab8)}.frame-file-name{min-width:0;color:#ffffffeb;font-size:10px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.frame-stage-actions{flex-shrink:0;display:inline-flex;gap:3px}.frame-stage-actions button{height:20px;padding:0 6px;border:1px solid rgba(255,255,255,.28);border-radius:var(--radius-pill);background:#ffffff1f;color:#fff;font-size:10px;font-weight:700;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.frame-stage-actions button:hover{background:#ffffff38}.frame-stage-empty{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:6px;text-align:center;background:var(--color-bg)}.frame-upload-icon{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;color:var(--color-primary);background:var(--color-primary-soft)}.frame-upload-title{color:var(--color-text-secondary);font-size:11px;font-weight:600}.frame-library-btn{margin-top:2px;height:20px;padding:0 8px;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text-secondary);font-size:10px;font-weight:600;cursor:pointer}.frame-library-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.frame-bridge{display:flex;flex-direction:column;align-items:center;justify-content:center;height:64px}.frame-bridge-line{flex:1;width:1px;background:linear-gradient(180deg,transparent,rgba(43,108,255,.35),transparent)}.frame-bridge-pulse{width:6px;height:6px;border-radius:50%;background:var(--color-primary);box-shadow:0 0 0 3px #2b6cff29}.omni-input-wrap{display:flex;gap:12px;padding:10px 14px 0;align-items:flex-start}.omni-media-strip{flex-shrink:0;display:flex;flex-wrap:wrap;gap:8px;max-width:168px}.omni-thumb{width:72px;height:72px;position:relative;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-bg);overflow:hidden}.omni-thumb-image{width:100%;height:100%}.omni-thumb-image .ant-image,.omni-thumb-image .ant-image-img{width:100%;height:100%;object-fit:cover}.omni-media-fallback{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);font-size:12px;font-weight:700;background:linear-gradient(180deg,#eef2ff,#f8fafc)}.omni-media-fallback.video{color:var(--color-primary)}.omni-tag{position:absolute;left:4px;bottom:4px;padding:1px 5px;border-radius:4px;background:#0f172ab8;color:#fff;font-size:10px;font-weight:700}.omni-remove{position:absolute;top:4px;right:4px;width:18px;height:18px;border:none;border-radius:50%;background:#141418b8;color:#fff;font-size:11px}.omni-actions{display:flex;flex-direction:column;align-items:stretch;gap:4px}.omni-add{width:72px;height:72px;display:flex;align-items:center;justify-content:center;border:1.5px dashed var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-secondary);background:var(--color-bg);cursor:pointer}.omni-add:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-soft)}.omni-add:disabled{opacity:.6;cursor:not-allowed}.omni-library{width:72px;height:22px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--color-text-secondary);font-size:11px;font-weight:600;cursor:pointer}.omni-library:hover{color:var(--color-primary)}.omni-textarea{flex:1;min-height:120px;padding-top:4px}.video-params .video-chip{height:32px;padding:0 14px;display:inline-flex;align-items:center;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text-secondary);font-size:12px;font-weight:600;transition:border-color .15s,background .15s,color .15s}.video-params .video-chip:hover{border-color:var(--color-border-strong);color:var(--color-text)}.video-params .video-chip.active,.video-params .ratio-btn.video-ratio.active{border-color:var(--color-primary);background:var(--color-primary);color:#fff}.video-params .ratio-btn.video-ratio.active .ratio-text{color:#fff}.sound-control{display:inline-flex;align-items:center;gap:10px;min-height:36px}.sound-toggle{width:44px;height:24px;position:relative;flex-shrink:0;border:none;border-radius:var(--radius-pill);background:#d1d5db;transition:background .15s}.sound-toggle.active{background:var(--color-primary)}.sound-knob{width:18px;height:18px;position:absolute;top:3px;left:3px;border-radius:50%;background:#fff;transition:transform .15s}.sound-toggle.active .sound-knob{transform:translate(20px)}.sound-label{color:var(--color-text-secondary);font-size:12px;font-weight:600;line-height:1}.composer-foot{margin-top:16px;padding:14px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--color-bg);border-top:1px solid var(--color-border)}.composer-foot .cost{display:inline-flex;align-items:center;gap:7px;color:var(--color-text-secondary);font-size:13px}.composer-foot .cost b{color:var(--color-warning)}.composer-foot .balance{color:var(--color-text-tertiary)}@media(max-width:860px){.capability-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.param-row{flex-direction:column;gap:8px}.param-label{flex:none;padding-top:0;text-align:left}.composer-foot{align-items:stretch;flex-direction:column}.outpaint-panel{grid-template-columns:1fr}.outpaint-controls{grid-template-columns:repeat(4,minmax(0,1fr))}.frame-rail{grid-template-columns:1fr;gap:14px}.frame-bridge{height:auto;flex-direction:row;padding:0 12px}.frame-bridge-line{flex:1;width:auto;height:1px;background:linear-gradient(90deg,transparent,rgba(43,108,255,.35),transparent)}.omni-input-wrap{flex-direction:column}.omni-media-strip{max-width:none}}.pricing-page{max-width:1240px;margin:0 auto;padding:32px 28px 72px}.pricing-hero{position:relative;overflow:hidden;padding:46px 48px;border:1px solid #cfe2df;border-radius:26px;background:radial-gradient(circle at 88% 18%,rgba(15,153,141,.18),transparent 31%),linear-gradient(135deg,#f4fbf9,#fff 62%)}.pricing-hero:after{content:"";position:absolute;right:7%;bottom:-75px;width:190px;height:190px;border:1px solid rgba(12,134,125,.15);border-radius:50%;box-shadow:0 0 0 28px #0c867d09,0 0 0 56px #0c867d06}.pricing-eyebrow{color:#087f76;font-size:11px;font-weight:800;letter-spacing:.18em}.pricing-hero h1{max-width:680px;margin:10px 0 12px;color:#163c39;font-size:clamp(30px,4vw,48px);letter-spacing:-.045em;line-height:1.08}.pricing-hero>p{max-width:650px;margin:0;color:#68817e;font-size:15px;line-height:1.8}.current-plan-pill{display:inline-flex;align-items:center;gap:7px;margin-top:24px;padding:8px 12px;border:1px solid #c6dfdc;border-radius:var(--radius-pill);color:#27615c;background:#ffffffb3;font-size:12px}.current-plan-pill span{padding-left:7px;border-left:1px solid #c7d9d7;color:#7b8f8d}.pricing-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:28px 0 22px}.pricing-tabs,.cycle-tabs{display:flex;gap:5px;padding:5px;border-radius:13px;background:#eef4f3}.pricing-tabs button,.cycle-tabs button{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border:0;border-radius:9px;color:#6c807e;background:transparent;font-weight:650}.pricing-tabs button.active,.cycle-tabs button.active{color:#126a63;background:#fff;box-shadow:0 2px 9px #204f4b1a}.pricing-grid{display:grid;gap:14px;align-items:stretch}.pricing-card{position:relative;display:flex;min-width:0;flex-direction:column;padding:24px;border:1px solid #dce7e6;border-radius:18px;background:#fff;box-shadow:0 9px 26px #2a48450a}.pricing-card.featured{border-color:#65b7af;box-shadow:0 18px 40px #1f7d741f;transform:translateY(-5px)}.popular-mark{position:absolute;top:16px;right:16px;padding:4px 8px;border-radius:var(--radius-pill);color:#fff;background:#118b81;font-size:10px;font-weight:800;letter-spacing:.08em}.pricing-card-head h2{margin:0 0 5px;color:#243d3a;font-size:21px}.pricing-card-head p{min-height:40px;margin:0;color:#82918f;font-size:12px;line-height:1.6}.pricing-price{display:flex;align-items:baseline;gap:6px;margin:22px 0 16px}.pricing-price strong{color:#123e39;font-size:30px;letter-spacing:-.04em}.pricing-price span{color:#8b9998;font-size:12px}.seat-summary{display:flex;align-items:center;gap:7px;padding:9px 10px;border-radius:9px;color:#3b706b;background:#edf8f6;font-size:11px}.pricing-benefits{display:grid;align-content:start;flex:1;gap:10px;margin:20px 0 24px}.pricing-benefits>div{display:flex;align-items:flex-start;gap:8px;color:#647774;font-size:12px;line-height:1.45}.pricing-benefits svg{flex:0 0 auto;margin-top:1px;color:#15988d}.pricing-benefits b{color:#2a514d}.pricing-loading{padding:80px 0;color:var(--color-text-tertiary);text-align:center}.membership-order{display:grid;gap:15px;padding:6px 0}.membership-order>div,.membership-order>label{display:flex;align-items:center;justify-content:space-between;gap:20px}.membership-order span{color:var(--color-text-secondary)}.membership-channel{align-items:flex-start!important;flex-direction:column}.membership-total{margin-top:4px;padding-top:15px;border-top:1px solid var(--color-border)}.membership-total strong{color:#118b81;font-size:25px}.membership-payment{display:grid;justify-items:center;gap:14px;padding:16px 0;text-align:center}.membership-payment>span{color:var(--color-text-tertiary);font-size:12px}.membership-banner{display:grid;grid-template-columns:46px 1fr auto;align-items:center;gap:14px;margin-top:14px;padding:16px 18px;border:1px solid #cfe3e0;border-radius:var(--radius-card);background:linear-gradient(100deg,#eff9f7,#fff)}.membership-banner-mark{display:grid;width:44px;height:44px;place-content:center;border-radius:13px;color:#fff;background:#127f76;font-weight:800}.membership-banner>div:nth-child(2) span{color:#77908d;font-size:11px}.membership-banner h2{margin:2px 0;color:#284b47;font-size:17px}.membership-banner p{margin:0;color:#83928f;font-size:11px}@media(max-width:980px){.pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.pricing-card.featured{transform:none}}@media(max-width:640px){.pricing-page{padding:18px 14px 48px}.pricing-hero{padding:30px 24px}.pricing-controls{align-items:stretch;flex-direction:column}.pricing-grid{grid-template-columns:1fr!important}.membership-banner{grid-template-columns:44px 1fr}.membership-banner>button{grid-column:1 / -1}}
