.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))}*{margin:0;padding:0;box-sizing:border-box}:root{--bg: #0d0f14;--panel: #151821;--panel-2: #1c202c;--border: #2a2f3d;--text: #e6e9f0;--text-dim: #8b92a5;--accent: #6c8cff;--accent-2: #9d6cff;--green: #3ecf8e;--red: #ff6b6b;--yellow: #ffc861}html,body,#root{height:100%;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Segoe UI,sans-serif;background:var(--bg);color:var(--text)}.app{display:flex;flex-direction:column;height:100%}.topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 16px;height:52px;background:var(--panel);border-bottom:1px solid var(--border);flex-shrink:0}.topbar-left,.topbar-right{display:flex;align-items:center;gap:12px;min-width:0}.brand-lockup{display:inline-flex;align-items:center;gap:7px;flex-shrink:0;min-width:0}.brand-mark{position:relative;display:block;width:36px;height:26px;overflow:hidden;flex:0 0 auto}.brand-mark img{position:absolute;top:50%;left:50%;width:72px;height:72px;max-width:none;transform:translate(-50%,-41.5%)}.brand-wordmark{display:inline-flex;align-items:baseline;font-size:16px;font-weight:750;letter-spacing:-.035em;line-height:1;white-space:nowrap}.brand-wordmark-base{color:var(--text)}.brand-wordmark-accent{background:linear-gradient(90deg,var(--accent),var(--accent-2));-webkit-background-clip:text;background-clip:text;color:transparent}.brand-lockup-compact{gap:5px}.brand-lockup-compact .brand-mark{width:31px;height:23px}.brand-lockup-compact .brand-mark img{width:64px;height:64px}.brand-lockup-compact .brand-wordmark{font-size:14px}.brand-lockup-large{gap:11px}.brand-lockup-large .brand-mark{width:54px;height:40px}.brand-lockup-large .brand-mark img{width:108px;height:108px}.brand-lockup-large .brand-wordmark{font-size:23px}.brand-wrap{position:relative;flex-shrink:0}.brand-btn{display:flex;align-items:center;gap:6px;padding:4px 8px;margin-left:-8px;border:none;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer}.brand-btn:hover,.brand-btn.open{background:var(--panel-2);color:var(--text)}.brand-btn.open svg{transform:rotate(180deg)}.brand-btn svg{transition:transform .15s}.brand-menu{position:absolute;top:calc(100% + 8px);left:0;z-index:40;width:176px;padding:6px;border:1px solid var(--border);border-radius:12px;background:var(--panel);box-shadow:0 20px 48px #00000080}.brand-item{padding:9px 10px;border-radius:8px;font-size:13px;color:var(--text);cursor:pointer}.brand-item:hover{background:var(--panel-2)}.brand-item.danger{color:#ff7a7a}.brand-item.danger:hover{background:#ff7a7a1f}.brand-sep{height:1px;margin:6px 4px;background:var(--border)}.topbar-divider{width:1px;height:16px;background:var(--border);flex-shrink:0}.workflow-name{font-size:13px;color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.btn{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);background:var(--panel-2);color:var(--text);padding:7px 16px;border-radius:20px;font-size:13px;cursor:pointer;transition:all .15s;white-space:nowrap}.btn:hover{border-color:var(--accent)}.btn.primary{background:linear-gradient(90deg,var(--accent),var(--accent-2));border:none;font-weight:600}.btn.primary:disabled{opacity:.5;cursor:not-allowed}.body{display:flex;flex:1;min-height:0}.icon-rail{width:52px;background:var(--panel);border-right:1px solid var(--border);padding:12px 0;display:flex;flex-direction:column;align-items:center;gap:8px;flex-shrink:0}.rail-flyout-anchor{position:relative}.rail-btn{width:34px;height:34px;border-radius:9px;border:1px solid transparent;background:transparent;color:var(--text-dim);font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.rail-btn:hover{background:var(--panel-2);color:var(--text)}.rail-btn.active{background:var(--panel-2);border-color:var(--accent);color:var(--accent)}.flyout{position:absolute;left:46px;top:0;width:220px;background:var(--panel);border:1px solid var(--border);border-radius:12px;box-shadow:0 12px 32px #00000073;padding:10px;z-index:20}.flyout-title{font-size:11px;color:var(--text-dim);text-transform:uppercase;letter-spacing:1px;margin:2px 0 8px 4px}.flyout-item{display:flex;align-items:center;gap:10px;padding:8px;border-radius:9px;cursor:grab;transition:background .12s;-webkit-user-select:none;user-select:none}.flyout-item:hover{background:var(--panel-2)}.flyout-icon{width:26px;height:26px;display:flex;align-items:center;justify-content:center;background:var(--bg);border-radius:7px;font-size:13px;flex-shrink:0}.flyout-meta{min-width:0}.flyout-item-title{font-size:12.5px;font-weight:500}.flyout-item-desc{font-size:10.5px;color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.flyout-hint{font-size:11px;color:var(--text-dim);line-height:1.6;margin-top:10px;padding:9px;background:var(--panel-2);border-radius:8px}.canvas-wrap{flex:1;min-width:0;position:relative}.react-flow__node{transition:transform .35s cubic-bezier(.4,0,.2,1)}.react-flow__node.dragging{transition:none}.canvas-empty{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;pointer-events:none;z-index:5}.canvas-empty-frame{display:flex;flex-direction:column;align-items:center;gap:8px;padding:64px 96px;border:1.5px dashed var(--border);border-radius:16px}.canvas-empty-title{font-size:15px;color:var(--text)}.canvas-empty-desc{font-size:12px;color:var(--text-dim)}.pane-menu{position:fixed;width:168px;max-height:360px;overflow-y:auto;background:var(--panel);border:1px solid var(--border);border-radius:12px;box-shadow:0 12px 32px #00000080;padding:6px;z-index:30}.drop-menu{position:fixed;display:flex;flex-direction:column;gap:2px;padding:6px;background:var(--panel);border:1px solid var(--border);border-radius:14px;box-shadow:0 12px 32px #00000080;z-index:30}.drop-menu-item{display:grid;place-items:center;width:40px;height:40px;border:none;border-radius:10px;background:transparent;color:var(--text-dim);cursor:pointer;transition:background .12s,color .12s}.drop-menu-item:hover{background:var(--panel-2);color:var(--accent)}.pane-menu-group{font-size:10px;color:var(--text-dim);letter-spacing:1px;padding:6px 8px 4px}.pane-menu-item{display:flex;align-items:center;gap:9px;padding:7px 8px;border-radius:8px;font-size:12.5px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .12s}.pane-menu-item:hover{background:var(--panel-2)}.pane-menu-icon{width:22px;height:22px;display:flex;align-items:center;justify-content:center;background:var(--bg);border-radius:6px;font-size:12px;flex-shrink:0}.toolbar-float{position:absolute;left:50%;bottom:20px;transform:translate(-50%);display:flex;align-items:center;gap:4px;background:var(--panel);border:1px solid var(--border);border-radius:14px;padding:6px;box-shadow:0 12px 32px #00000073;z-index:10}.toolbar-btn{min-width:30px;height:30px;padding:0 8px;border-radius:8px;border:none;background:transparent;color:var(--text-dim);font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.toolbar-btn:hover:not(:disabled){background:var(--panel-2);color:var(--text)}.toolbar-btn.active{background:var(--panel-2);color:var(--accent)}.toolbar-btn:disabled{opacity:.35;cursor:not-allowed}.toolbar-btn.pill{padding:0 14px;background:linear-gradient(90deg,var(--accent),var(--accent-2));color:#fff;font-size:12.5px;font-weight:600}.toolbar-btn.pill:hover{filter:brightness(1.08)}.toolbar-sep{width:1px;height:18px;background:var(--border);margin:0 2px}.toolbar-zoom{font-size:11.5px;color:var(--text-dim);min-width:38px;text-align:center;-webkit-user-select:none;user-select:none}.node-shell{position:relative;width:100%;height:100%;font-size:12px}.node-caption{position:absolute;bottom:100%;left:2px;right:2px;display:flex;align-items:center;gap:6px;margin-bottom:6px;font-size:11.5px;color:var(--text-dim)}.node-caption-icon{display:flex;color:var(--text-dim)}.node-caption-title{color:var(--text);cursor:text;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.node-caption-status{margin-left:auto;color:var(--yellow);font-size:10.5px;flex-shrink:0}.node-box{position:relative;height:100%;background:var(--panel);border:1px solid var(--border);border-radius:10px;overflow:hidden;transition:border-color .15s,box-shadow .15s}.node-box.selected{border-color:var(--accent);box-shadow:0 0 0 2px #6c8cff38}.node-box.done{border-color:#3ecf8e73}.node-box.failed{border-color:var(--red)}.node-busy{position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--accent),transparent);animation:node-busy-slide 1.2s linear infinite}@keyframes node-busy-slide{0%{transform:translate(-100%)}to{transform:translate(100%)}}.node-media-wrap{position:relative;height:100%}.node-media{width:100%;height:100%;object-fit:cover;display:block}.video-player{position:relative;height:100%;background:#000}.video-player-media{width:100%;height:100%;object-fit:contain;display:block}.video-player-badge{position:absolute;right:8px;bottom:8px;padding:1px 6px;border-radius:5px;background:#0000008c;color:#fff;font-size:11px;font-variant-numeric:tabular-nums;pointer-events:none}.video-player-bar{position:absolute;left:8px;right:8px;bottom:8px;display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:8px;background:#0000008c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;opacity:0;pointer-events:none;transition:opacity .12s}.video-player-bar.show{opacity:1;pointer-events:auto}.video-player-btn{display:grid;place-items:center;width:20px;height:20px;flex-shrink:0;border:none;border-radius:5px;background:transparent;color:#fff;cursor:pointer;opacity:.9}.video-player-btn:hover{opacity:1;background:#ffffff29}.video-player-track{flex:1;min-width:24px;height:14px;display:flex;align-items:center;cursor:pointer}.video-player-track:before{content:"";position:absolute;left:0;right:0;height:3px;border-radius:2px;background:#ffffff4d}.video-player-track{position:relative}.video-player-fill{position:relative;height:3px;border-radius:2px;background:#fff}.video-player-time{flex-shrink:0;font-size:11px;font-variant-numeric:tabular-nums;opacity:.9}.node-media-zoom{position:absolute;top:8px;right:8px;display:grid;place-items:center;width:24px;height:24px;border:1px solid var(--border);border-radius:6px;background:#0d0f14b8;color:var(--text-dim);cursor:pointer;opacity:0;transition:opacity .15s,color .15s,border-color .15s}.node-box:hover .node-media-zoom{opacity:1}.node-media-zoom:hover{color:var(--text);border-color:var(--accent)}.node-media-replace{position:absolute;top:8px;right:40px;display:grid;place-items:center;width:24px;height:24px;border:1px solid var(--border);border-radius:6px;background:#0d0f14b8;color:var(--text-dim);cursor:pointer;opacity:0;transition:opacity .15s,color .15s,border-color .15s;z-index:2}.node-box:hover .node-media-replace,.node-box.selected .node-media-replace{opacity:1}.node-media-replace:hover{color:var(--text);border-color:var(--accent)}.account-wrap{position:relative;display:flex;align-items:center;gap:10px;margin-left:4px}.credit-pill{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;border:1px solid var(--border);border-radius:999px;background:var(--panel-2);color:var(--text);font-size:13px;font-variant-numeric:tabular-nums;white-space:nowrap}.avatar-btn{display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--border);border-radius:999px;background:var(--panel-2);color:var(--text-dim);cursor:pointer;transition:color .15s,border-color .15s}.avatar-btn:hover,.avatar-btn.open{color:var(--text);border-color:var(--accent)}.account-menu{position:absolute;top:calc(100% + 10px);right:0;z-index:40;width:250px;padding:8px;border:1px solid var(--border);border-radius:14px;background:var(--panel);box-shadow:0 20px 48px #00000080}.account-head{display:flex;gap:12px;padding:10px 8px 12px}.account-avatar{display:grid;place-items:center;width:42px;height:42px;border-radius:999px;background:var(--panel-2);color:var(--text-dim);flex:none}.account-id{min-width:0}.account-name{font-size:14px;color:var(--text)}.account-sub{margin-top:2px;font-size:12px;color:var(--text-dim)}.account-uid{margin-top:6px;font-size:11px;color:var(--muted);word-break:break-all}.account-sep{height:1px;margin:4px 0;background:var(--border)}.account-item{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:8px;font-size:13px;color:var(--text);cursor:pointer}.account-item:hover{background:var(--panel-2)}.account-item.disabled{color:var(--muted);cursor:default;pointer-events:none}.account-arrow{margin-left:auto;color:var(--muted)}.prompt-add-wrap{position:relative}.prompt-add{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--border);border-radius:999px;background:var(--panel-2);color:var(--text-dim);cursor:pointer;transition:color .15s,border-color .15s,background .15s}.prompt-add:hover,.prompt-add.open{color:var(--accent);border-color:var(--accent)}.prompt-add-menu{position:absolute;bottom:calc(100% + 8px);left:0;z-index:20;min-width:190px;max-height:260px;overflow-y:auto;padding:6px;border:1px solid var(--border);border-radius:12px;background:var(--panel);box-shadow:0 18px 40px #00000073}.prompt-add-item{display:flex;align-items:center;gap:8px;padding:9px 10px;border-radius:8px;font-size:13px;color:var(--text);cursor:pointer;white-space:nowrap}.prompt-add-item:hover{background:var(--panel-2)}.prompt-add-item.disabled{color:var(--muted);cursor:default}.prompt-add-item.disabled:hover{background:transparent}.prompt-add-empty{padding:10px;font-size:12px;color:var(--muted);white-space:nowrap}.node-upload{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:12px;color:var(--text-dim);cursor:pointer;text-align:center;border:1px dashed var(--border);border-radius:9px;transition:color .15s,border-color .15s,background .15s}.node-upload:hover,.node-upload.over{color:var(--accent);border-color:var(--accent);background:#6c8cff0f}.node-upload-title{font-size:12px}.node-upload-hint{font-size:10.5px;opacity:.75}.preview-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center;padding:64px 32px 32px;background:#06070ae0;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.preview-bar{position:absolute;top:16px;right:20px;left:20px;display:flex;align-items:center;gap:8px}.preview-title{flex:1;min-width:0;font-size:13px;color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.preview-btn{display:grid;place-items:center;width:30px;height:30px;flex-shrink:0;border:1px solid var(--border);border-radius:8px;background:var(--panel);color:var(--text-dim);cursor:pointer;transition:color .12s,border-color .12s}.preview-btn:hover{color:var(--text);border-color:var(--accent)}.preview-stage{position:relative;max-width:100%;max-height:100%;display:grid;place-items:center}.preview-stage>*{grid-area:1 / 1}.preview-placeholder{max-width:100%;max-height:calc(100vh - 96px);object-fit:contain;border-radius:8px;filter:blur(12px) saturate(1.1);transform:scale(1.02);opacity:.55}.preview-spinner{width:44px;height:44px;align-self:center;justify-self:center;border-radius:50%;border:3px solid rgba(255,255,255,.16);border-top-color:var(--accent);animation:preview-spin .8s linear infinite;pointer-events:none}@keyframes preview-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.preview-spinner{animation:none}}.preview-media{max-width:100%;max-height:calc(100vh - 96px);object-fit:contain;border-radius:8px;box-shadow:0 24px 64px #0009}.preview-stage>.preview-media{opacity:0;transition:opacity .25s ease}.preview-stage>.preview-media.loaded{opacity:1}.node-text,.node-text-body{font-size:13.5px;line-height:1.85;letter-spacing:.01em;color:var(--text)}.node-text{width:100%;height:100%;border:none;background:transparent;padding:16px;font-family:inherit;resize:none;outline:none}.node-text::placeholder{color:var(--text-dim)}.node-text-wrap{position:relative;height:100%}.node-text-body{height:100%;padding:16px;overflow-y:auto;-webkit-user-select:text;user-select:text;cursor:text;-webkit-mask-image:linear-gradient(to bottom,#000 calc(100% - 24px),transparent 100%);mask-image:linear-gradient(to bottom,#000 calc(100% - 24px),transparent 100%)}.text-line+.text-line{margin-top:6px}.text-line.heading{color:var(--accent);font-weight:600;letter-spacing:.02em}.text-line.heading+.text-line{margin-top:8px}.text-line.numbered{padding-left:26px;text-indent:-26px}.text-line+.text-line.numbered{margin-top:10px}.shot-no{display:inline-block;width:18px;margin-right:8px;text-indent:0;text-align:center;border-radius:4px;background:#6c8cff29;color:var(--accent);font-size:11px;font-weight:600;line-height:18px;vertical-align:1px}.node-text-body{cursor:text}.node-text-tools{position:absolute;top:8px;right:8px;display:flex;gap:4px;opacity:0;transition:opacity .15s}.node-box:hover .node-text-tools{opacity:1}.node-text-tool{display:flex;align-items:center;gap:4px;height:22px;padding:0 7px;border:1px solid var(--border);border-radius:6px;background:var(--panel-2);color:var(--text-dim);font-size:11px;cursor:pointer;transition:color .15s,border-color .15s}.node-text-tool:hover{color:var(--text);border-color:var(--accent)}.node-text::-webkit-scrollbar,.node-text-body::-webkit-scrollbar{width:6px}.node-text::-webkit-scrollbar-thumb,.node-text-body::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.node-text::-webkit-scrollbar-track,.node-text-body::-webkit-scrollbar-track{background:transparent}.react-flow__resize-control.handle.node-resize-handle{width:9px;height:9px;border:1.5px solid var(--accent);border-radius:2px;background:var(--bg)}.node-placeholder{height:100%;display:grid;place-items:center;color:var(--border)}.node-placeholder.text{color:var(--text-dim);font-size:12px}.node-output-name{height:100%;display:grid;place-items:center;font-size:13px;color:var(--text)}.react-flow__handle.node-plus{width:22px;height:22px;display:grid;place-items:center;border:1px solid var(--border);border-radius:50%;background:var(--panel);color:var(--text-dim);opacity:0;transition:opacity .15s,color .15s,border-color .15s,transform .12s}.react-flow__handle.node-plus.react-flow__handle-left{left:-11px}.react-flow__handle.node-plus.react-flow__handle-right{right:-11px}.node-shell:hover .node-plus,.node-shell.connecting .node-plus,.node-box.selected~.node-plus{opacity:1}.node-shell.connecting .node-plus.react-flow__handle-left{left:0;top:0;width:100%;height:100%;transform:none;border-radius:10px;border:1px dashed var(--accent);background:#6c8cff14;color:var(--accent)}.node-shell.connecting .node-plus.react-flow__handle-left:hover{background:#6c8cff29;transform:none}.node-shell.connecting .node-plus.react-flow__handle-left>svg{display:none}.react-flow__handle.node-plus:hover{color:var(--accent);border-color:var(--accent);transform:translateY(-50%) scale(1.12)}.field label{display:block;font-size:10px;color:var(--text-dim);margin-bottom:4px}.field select,.field input,.field textarea{width:100%;background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:7px;padding:6px 8px;font-size:12px;font-family:inherit;outline:none}.field select:focus,.field input:focus,.field textarea:focus{border-color:var(--accent)}.field textarea{resize:vertical;min-height:52px}.field-row{display:flex;gap:8px}.field-row .field{flex:1;min-width:0}.node-output{background:var(--bg);border:1px dashed var(--border);border-radius:8px;padding:8px;font-size:11px;color:var(--text-dim);word-break:break-all;max-height:72px;overflow-y:auto}.node-output.ok{border-color:#3ecf8e66;color:var(--green)}.react-flow__handle{width:10px;height:10px;background:var(--accent);border:2px solid var(--bg)}.react-flow__edge-path{stroke:#4a5268;stroke-width:2}.react-flow__edge.selected .react-flow__edge-path{stroke:var(--accent)}.react-flow__edge-path.hovered{stroke-width:3}.react-flow__edge-path.disabled{stroke-dasharray:7 5;stroke-width:2;opacity:.75}.react-flow__edge-path.active{stroke-width:3;filter:brightness(1.9) drop-shadow(0 0 5px currentColor)}.edge-badge.active .edge-slot{color:var(--text);border-color:var(--accent)}.react-flow__edge-interaction{cursor:pointer}.edge-badge{position:absolute;pointer-events:none;z-index:1}.edge-slot{font-size:10px;color:var(--text-dim);background:var(--bg);border:1px solid var(--border);padding:1px 6px;border-radius:5px;white-space:nowrap}.edge-cut{pointer-events:all;display:grid;place-items:center;width:24px;height:24px;border:1px solid var(--border);border-radius:50%;background:var(--panel);color:var(--text-dim);cursor:pointer;box-shadow:0 2px 8px #00000073;transition:color .12s,border-color .12s}.edge-cut:hover{color:var(--red);border-color:var(--red)}.react-flow__attribution{display:none}.modal-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100}.modal{width:min(720px,90vw);max-height:84vh;background:var(--panel);border:1px solid var(--border);border-radius:14px;display:flex;flex-direction:column;overflow:hidden}.modal-head{display:flex;align-items:center;padding:14px 18px;border-bottom:1px solid var(--border);font-weight:600;font-size:14px}.modal-head .actions{margin-left:auto;display:flex;gap:8px}.modal pre{flex:1;overflow:auto;padding:16px 18px;font-size:12px;line-height:1.55;color:#b8c4e0;font-family:SF Mono,Menlo,Consolas,monospace}.toast{position:fixed;top:64px;left:50%;transform:translate(-50%);background:var(--panel-2);border:1px solid var(--border);padding:8px 18px;border-radius:10px;font-size:13px;z-index:200;box-shadow:0 6px 24px #0006}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.field-grid .field{min-width:0}.checkbox-field{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-dim);cursor:pointer}.checkbox-field input{width:auto}.camera-panel{border:1px solid var(--border);border-radius:8px;background:var(--bg);overflow:hidden}.camera-toggle{width:100%;text-align:left;background:none;border:none;color:var(--text);padding:7px 9px;font-size:11px;cursor:pointer;display:flex;align-items:center;gap:6px}.camera-toggle:hover{background:var(--panel-2)}.camera-summary{margin-left:auto;color:var(--text-dim);font-size:10px}.camera-body{padding:8px 9px;display:flex;flex-direction:column;gap:8px;border-top:1px solid var(--border)}.camera-body input[type=range]{width:100%;accent-color:var(--accent)}.camera-preview{font-size:10px;line-height:1.5;color:#b8c4e0;background:var(--panel-2);border-radius:6px;padding:7px 8px;max-height:92px;overflow-y:auto}.preview-title{display:block;color:var(--text-dim);margin-bottom:3px;font-size:9px}.outputs{display:flex;gap:6px;flex-wrap:wrap}.outputs a{position:relative;display:block;text-decoration:none}.outputs img,.outputs video{width:108px;height:68px;object-fit:cover;border-radius:6px;border:1px solid var(--border);display:block}.text-output{display:grid;place-items:center;width:108px;height:68px;border-radius:6px;border:1px dashed var(--border);font-size:11px;color:var(--text-dim)}.output-tag{position:absolute;bottom:3px;left:3px;font-size:9px;background:#000000b3;color:var(--text);padding:1px 5px;border-radius:4px}.node-error{font-size:10px;color:var(--red);background:#ff6b6b1a;border-radius:6px;padding:6px 8px;line-height:1.5}.node-warning{font-size:10px;color:var(--yellow);background:#ffc86114;border-radius:6px;padding:5px 8px}.retry-btn{border:1px solid var(--border);background:var(--panel-2);color:var(--text);border-radius:6px;padding:5px;font-size:11px;cursor:pointer}.retry-btn:hover{border-color:var(--accent)}.legend{display:flex;flex-direction:column;gap:6px}.legend-item{display:flex;align-items:center;gap:7px;font-size:10px;color:var(--text-dim);line-height:1.4}.legend .dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.status-hint{font-size:11px;color:var(--text-dim);margin-right:auto}.brand-btn .brand-lockup{margin-right:6px}.login{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,42%);height:100%;background:var(--bg)}.login-cover{position:relative;overflow:hidden;background:#000}.login-cover video,.login-cover img{width:100%;height:100%;object-fit:cover;display:block}.login-cover-veil{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent 55%,rgba(10,11,14,.55) 100%);pointer-events:none}.login-sound{position:absolute;left:20px;bottom:20px;display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(255,255,255,.22);border-radius:999px;background:#0000006b;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#ffffffd9;cursor:pointer;transition:background .15s,color .15s}.login-sound:hover{background:#000000a8;color:#fff}.login-panel{position:relative;display:flex;flex-direction:column;justify-content:center;gap:34px;padding:48px clamp(32px,6vw,88px)}.login-brand{position:absolute;top:40px;left:50%;transform:translate(-50%)}.login-copy{text-align:center}.login-kicker{font-size:13px;color:var(--text-dim)}.login-copy h1{margin-top:10px;font-size:30px;font-weight:700;color:var(--text)}.login-copy p{margin-top:10px;font-size:13px;color:var(--text-dim)}.login-form{display:flex;flex-direction:column;gap:12px;width:100%;max-width:320px;margin:0 auto}.login-form>input{background:var(--panel-2);border:1px solid var(--border);color:var(--text);border-radius:10px;padding:12px 14px;font-size:14px;outline:none;transition:border-color .15s}.login-form>input:focus{border-color:var(--accent)}.login-submit{margin-top:4px;background:linear-gradient(90deg,var(--accent),var(--accent-2));border:none;color:#fff;padding:12px;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer}.login-submit:disabled{opacity:.6;cursor:default}.login-consent-copy{color:var(--text-dim);font-size:12px;line-height:1.8;text-align:center}.login-consent-break{display:block}.login-legal-link,.login-retry-legal{display:inline;margin:0;padding:0;border:0;background:none;color:var(--accent);font:inherit;font-weight:500;cursor:pointer}.login-legal-link:hover,.login-retry-legal:hover{color:var(--accent-2);text-decoration:underline}.login-legal-link:disabled{opacity:.5;cursor:default;text-decoration:none}.login-retry-legal{display:block;margin-top:6px}.login-legal-link:focus-visible,.login-retry-legal:focus-visible,.legal-dialog-close:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.login-hint{font-size:11px;color:var(--muted);text-align:center}.login-error{font-size:12px;color:var(--red);background:#ff6b6b1a;padding:9px 12px;border-radius:8px}.legal-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:24px;background:#030509c2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.legal-dialog{width:min(680px,100%);max-height:min(760px,calc(100vh - 48px));display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--border);border-radius:16px;background:var(--panel);box-shadow:0 24px 80px #0000008c}.legal-dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:22px 24px 16px;border-bottom:1px solid var(--border)}.legal-dialog-header h2{font-size:20px}.legal-dialog-header p{margin-top:6px;color:var(--text-dim);font-size:12px}.legal-dialog-close{display:grid;width:44px;height:44px;flex:0 0 44px;place-items:center;padding:0;border:0;background:transparent;color:var(--text-dim);cursor:pointer}.legal-dialog-close:hover{color:var(--text)}.legal-dialog-body{margin:0;padding:24px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--text);font:14px/1.85 -apple-system,BlinkMacSystemFont,PingFang SC,Segoe UI,sans-serif}@media(max-width:860px){.login{grid-template-columns:1fr}.login-cover{display:none}}.loading{display:grid;place-items:center;height:100%;color:var(--text-dim)}svg{display:block;flex-shrink:0}.node-head-icon{display:flex;align-items:center;color:var(--text-dim)}.flyout-icon,.pane-menu-icon,.palette-item .icon{display:flex;align-items:center;justify-content:center;color:var(--text-dim)}.flyout-item:hover .flyout-icon,.pane-menu-item:hover .pane-menu-icon{color:var(--text)}.toolbar-btn{line-height:0}.toolbar-btn.pill{gap:6px;line-height:1}.ctx-menu{position:fixed;width:168px;background:var(--panel);border:1px solid var(--border);border-radius:12px;box-shadow:0 12px 32px #00000080;padding:6px;z-index:30}.ctx-menu-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 10px;border-radius:8px;font-size:13px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .12s}.ctx-menu-item:hover{background:var(--panel-2)}.ctx-menu-item.danger:hover{background:#ff6b6b1f;color:var(--red)}.ctx-menu-item.disabled{color:var(--text-dim);opacity:.45;cursor:not-allowed}.ctx-menu-item.disabled:hover{background:transparent}.ctx-menu-item.slot{justify-content:flex-start;gap:8px}.ctx-menu-item.active{color:var(--accent)}.ctx-menu-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.ctx-menu-title{font-size:10px;color:var(--text-dim);letter-spacing:1px;padding:6px 10px 4px}.ctx-menu-sep{height:1px;background:var(--border);margin:4px 6px}.ctx-menu-shortcut{font-size:11.5px;color:var(--text-dim);letter-spacing:.5px}.node-title{cursor:text}.node-rename{flex:1;min-width:0;background:var(--bg);border:1px solid var(--accent);color:var(--text);border-radius:5px;padding:2px 6px;font-size:12px;font-weight:600;font-family:inherit;outline:none}.prompt-bar{width:max(420px,100%);max-width:720px;background:var(--panel);border:1px solid var(--border);border-radius:16px;box-shadow:0 16px 44px #00000080;padding:14px 16px 10px;z-index:12;transition:max-width .15s}.prompt-bar.expanded{max-width:960px}.prompt-mentions{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.mention{display:inline-flex;align-items:center;gap:5px;padding:2px 6px 2px 7px;border:1px solid var(--border);border-radius:7px;background:var(--panel-2);font-size:11.5px;color:var(--text);white-space:nowrap}.mention-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.mention-slot{font-size:10px;color:var(--text-dim);flex-shrink:0}.mention-remove{border:none;background:transparent;color:var(--text-dim);font-size:14px;line-height:1;padding:0 1px;cursor:pointer}.mention-remove:hover{color:var(--red)}.prompt-input-wrap{position:relative}.prompt-expand{position:absolute;top:0;right:0;display:grid;place-items:center;width:22px;height:22px;border:none;border-radius:6px;background:transparent;color:var(--text-dim);cursor:pointer;opacity:.45;transition:opacity .12s,color .12s}.prompt-bar:hover .prompt-expand{opacity:1}.prompt-expand:hover{color:var(--text);background:var(--panel-2)}.prompt-bar.expanded .prompt-input{min-height:320px;max-height:60vh}.mention-picker{position:absolute;left:0;top:calc(100% + 6px);min-width:240px;max-width:320px;max-height:220px;overflow-y:auto;padding:5px;background:var(--panel);border:1px solid var(--border);border-radius:10px;box-shadow:0 12px 32px #00000080;z-index:40}.mention-option{display:flex;align-items:center;gap:8px;padding:6px;border-radius:8px;font-size:12.5px;cursor:pointer}.mention-option:hover,.mention-option.active{background:var(--panel-2)}.mention-thumb{width:34px;height:34px;flex-shrink:0;display:grid;place-items:center;border-radius:7px;overflow:hidden;background:var(--panel-2);color:var(--text-dim)}.mention-option:hover .mention-thumb,.mention-option.active .mention-thumb{background:var(--panel)}.mention-thumb img,.mention-thumb video{width:100%;height:100%;object-fit:cover;display:block}.mention-option-body{min-width:0;display:flex;flex-direction:column;gap:2px}.mention-option-title{display:flex;align-items:center;gap:6px;min-width:0}.mention-option-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mention-option-sub{font-size:11px;color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mention-empty{padding:8px;font-size:12px;color:var(--text-dim)}.prompt-input{width:100%;min-height:76px;max-height:200px;overflow-y:auto;transition:max-height .15s,min-height .15s;border:none;background:transparent;color:var(--text);font-size:14px;line-height:1.65;font-family:inherit;outline:none;white-space:pre-wrap;overflow-wrap:break-word;cursor:text}.prompt-placeholder{position:absolute;top:0;left:0;right:26px;pointer-events:none;color:var(--text-dim);font-size:14px;line-height:1.65}.prompt-chip{display:inline-flex;align-items:center;gap:4px;max-width:190px;margin:0 1px;padding:1px 6px 1px 3px;border:1px solid var(--border);border-radius:6px;background:var(--panel-2);vertical-align:-3px;font-size:13px;line-height:20px;-webkit-user-select:none;user-select:none;cursor:default}.prompt-chip:hover{border-color:var(--accent)}.prompt-chip-thumb{width:20px;height:20px;border-radius:4px;object-fit:cover;display:block}.prompt-chip-dot{width:6px;height:6px;margin-left:3px;border-radius:50%;flex-shrink:0}.prompt-chip-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chip-preview{position:fixed;z-index:60;padding:4px;border:1px solid var(--border);border-radius:10px;background:var(--panel);box-shadow:0 16px 40px #0000008c;pointer-events:none}.chip-preview img{display:block;width:100%;max-height:320px;object-fit:contain;border-radius:7px}.prompt-input::placeholder{color:var(--text-dim)}.prompt-row{display:flex;align-items:center;gap:8px;margin-top:10px;flex-wrap:wrap}.prompt-row-spacer{flex:1;min-width:12px}.prompt-pill-wrap{position:relative}.prompt-pill{display:inline-flex;align-items:center;gap:5px;height:30px;padding:0 11px;border:1px solid transparent;border-radius:9px;background:var(--panel-2);color:var(--text);font-size:12.5px;font-family:inherit;cursor:pointer;white-space:nowrap;transition:all .14s}.prompt-pill:hover{border-color:var(--border)}.prompt-pill.open{border-color:var(--accent);color:var(--accent)}.prompt-pill.toggle.on{background:#6c8cff29;border-color:#6c8cff80;color:var(--accent)}.prompt-pill svg{transition:transform .15s}.prompt-pill svg.flipped{transform:rotate(180deg)}.prompt-pill.input{gap:7px;cursor:default}.prompt-pill-label{color:var(--text-dim);font-size:11.5px}.prompt-pill.input input{width:56px;border:none;background:transparent;color:var(--text);font-size:12.5px;font-family:inherit;outline:none}.prompt-dropdown{position:absolute;bottom:calc(100% + 6px);left:0;min-width:100%;max-height:280px;overflow-y:auto;background:var(--panel);border:1px solid var(--border);border-radius:10px;box-shadow:0 12px 32px #00000080;padding:5px;z-index:20}.prompt-dropdown.wide{width:320px;padding:10px}.prompt-dropdown-item{padding:7px 10px;border-radius:7px;font-size:12.5px;cursor:pointer;white-space:nowrap;transition:background .12s}.prompt-dropdown-item:hover{background:var(--panel-2)}.prompt-dropdown-item.active{background:var(--panel-2);color:var(--accent)}.prompt-cost{display:inline-flex;align-items:center;gap:5px;font-size:13px;color:var(--text-dim);padding:0 4px}.prompt-send{width:36px;height:36px;border:none;border-radius:50%;background:linear-gradient(90deg,var(--accent),var(--accent-2));color:#fff;display:grid;place-items:center;cursor:pointer;transition:filter .15s,opacity .15s}.prompt-send:hover:not(:disabled){filter:brightness(1.1)}.prompt-send:disabled{opacity:.45;cursor:not-allowed}.camera-panel.embedded{border:none;background:transparent}.camera-panel.embedded .camera-body{border-top:none;padding:0}.prompt-pill.summary{gap:6px}.prompt-pill-sep{color:var(--text-dim);opacity:.5;margin:0 6px}.video-panel{position:absolute;bottom:calc(100% + 6px);left:0;width:344px;background:var(--panel);border:1px solid var(--border);border-radius:12px;box-shadow:0 14px 36px #00000080;padding:14px;z-index:20;display:flex;flex-direction:column;gap:14px}.video-section-title{font-size:11.5px;color:var(--text-dim);margin-bottom:8px}.video-options{display:grid;gap:6px}.video-options.cols-2{grid-template-columns:repeat(2,1fr)}.video-options.cols-3{grid-template-columns:repeat(3,1fr)}.video-options.cols-6{grid-template-columns:repeat(6,1fr)}.video-option{display:flex;align-items:center;justify-content:center;gap:5px;height:32px;padding:0 6px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--text);font-size:12.5px;font-family:inherit;cursor:pointer;white-space:nowrap;transition:all .12s}.video-option:hover{background:var(--panel-2)}.video-option.active{background:#6c8cff29;border-color:#6c8cff80;color:var(--accent)}.video-options.cols-3 .video-option{justify-content:flex-start;padding:0 10px}.history-panel{width:246px;flex-shrink:0;display:flex;flex-direction:column;padding:12px 12px 12px 0;min-height:0;background:transparent}.history-list{flex:1;overflow-y:auto;padding:6px 14px 14px;background:var(--panel);border:1px solid var(--border);border-radius:16px;scrollbar-width:thin}.history-group{margin-bottom:4px}.history-day{padding:8px 2px;font-size:12px;color:var(--text-dim);letter-spacing:.04em}.history-item{position:relative;margin-bottom:10px;border-radius:10px;overflow:hidden}.history-item.pinned{box-shadow:inset 0 0 0 2px var(--accent)}.history-thumb-wrap{position:relative;display:block}.history-thumb{display:block;width:100%;aspect-ratio:16 / 9;object-fit:cover;background:var(--panel-2);cursor:zoom-in;opacity:0;transition:opacity .2s}.history-thumb.loaded{opacity:1}video.history-thumb{opacity:1}.history-thumb-state{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:0 10px;font-size:10px;line-height:1.5;text-align:center;color:var(--text-dim);background:var(--panel-2);pointer-events:none}.history-thumb-state.failed{color:var(--red);cursor:pointer;pointer-events:auto}.history-text{padding:10px 11px 22px;background:var(--panel-2);font-size:11px;line-height:1.75;color:var(--text);white-space:pre-wrap;display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden;cursor:default}.history-time{position:absolute;left:7px;bottom:6px;padding:1px 5px;border-radius:4px;background:#0d0f14a8;font-size:10px;color:#e6e9f0d1;pointer-events:none}.history-actions{position:absolute;right:6px;top:6px;display:flex;gap:4px;opacity:0;transition:opacity .15s}.history-item:hover .history-actions,.history-item.pinned .history-actions{opacity:1}.history-btn{display:inline-flex;align-items:center;gap:3px;padding:3px 7px;border:none;border-radius:6px;background:#0d0f14c7;color:var(--text);font-size:10px;text-decoration:none;cursor:pointer}.history-btn:hover{background:#0d0f14f0}.history-btn.on{background:var(--accent);color:#fff}.history-btn.danger:hover{background:#ff7a7ae6;color:#fff}.history-empty,.history-error{padding:18px 4px;font-size:11px;line-height:1.7;color:var(--text-dim);text-align:center;overflow-wrap:anywhere}.history-error{color:var(--red);text-align:left}.history-more{width:100%;padding:7px;border:1px dashed var(--border);border-radius:8px;background:transparent;color:var(--text-dim);font-size:11px;cursor:pointer}.history-more:hover{color:var(--text);border-color:var(--accent)}.node-pinned-tag{position:absolute;top:8px;left:8px;display:inline-flex;align-items:center;gap:3px;padding:2px 6px;border-radius:5px;background:#6c8cffe6;color:#fff;font-size:10px;pointer-events:none}.shell{display:flex;min-height:100vh}.shell-sidebar{width:200px;flex-shrink:0;padding:16px 12px;border-right:1px solid var(--border);display:flex;flex-direction:column;gap:24px}.shell-brand{padding:0 6px}.shell-sidebar nav{display:flex;flex-direction:column;gap:4px}.shell-nav-item{padding:10px 12px;border-radius:8px;color:inherit;text-decoration:none;font-size:14px;opacity:.75}.shell-nav-item:hover{opacity:1;background:var(--panel)}.shell-nav-item.active{opacity:1;background:var(--panel-2)}.shell-main{flex:1;display:flex;flex-direction:column;min-width:0}.shell-topbar{display:flex;justify-content:flex-end;align-items:center;gap:16px;padding:12px 24px;border-bottom:1px solid var(--border)}.shell-credit{display:flex;align-items:center;gap:6px;font-size:13px}.shell-logout{display:flex;align-items:center;gap:6px;font-size:13px;background:none;border:none;color:inherit;cursor:pointer;opacity:.75}.shell-logout:hover{opacity:1}.shell-content{flex:1;overflow-y:auto;padding:32px 40px}.page-placeholder h1{font-size:20px;margin-bottom:8px}.page-placeholder p{opacity:.6;font-size:14px}.home{max-width:1040px;margin:0 auto}.home-title{font-size:32px;font-weight:700}.home-subtitle{margin-top:8px;opacity:.6;font-size:14px}.home-hero{margin-top:24px;padding:16px;border-radius:14px;border:1px solid rgba(108,140,255,.35);background:var(--panel)}.home-prompt{width:100%;resize:none;background:transparent;border:none;color:inherit;font-size:15px;outline:none;font-family:inherit}.home-hero-actions{display:flex;justify-content:flex-end;margin-top:8px}.home-create{padding:10px 20px;border-radius:10px;border:none;cursor:pointer;background:var(--accent);color:#fff;font-size:14px}.home-create:disabled{opacity:.6;cursor:default}.home-error{margin-top:16px;color:var(--red);font-size:13px}.home-section{margin-top:40px;font-size:18px;font-weight:600}.home-empty{margin-top:12px;opacity:.6;font-size:14px}.home-grid{margin-top:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.home-card{text-align:left;padding:16px;border-radius:12px;cursor:pointer;border:1px solid var(--border);background:var(--panel);color:inherit}.home-card:hover{border-color:#6c8cff80}.home-card-name{font-size:15px;font-weight:600}.home-card-time{margin-top:6px;font-size:12px;opacity:.55}.home-card-open{margin-top:14px;font-size:13px;opacity:.8}.projects-head{display:flex;justify-content:space-between;align-items:center}.template-card{padding:16px;border-radius:12px;border:1px solid var(--border);background:var(--panel);display:flex;flex-direction:column;gap:6px}.template-cover{height:120px;border-radius:8px;background-size:cover;background-position:center;margin-bottom:8px}.template-cover-empty{display:flex;align-items:center;justify-content:center;background:var(--panel-2);opacity:.7;font-size:13px}.template-use{margin-top:10px;align-self:flex-start}.home-section-row{display:flex;align-items:baseline;justify-content:space-between;margin-top:40px}.home-section-row .home-section{margin-top:0}.home-more{font-size:13px;opacity:.7;color:inherit;text-decoration:none}.home-more:hover{opacity:1}.home-hero-actions{justify-content:space-between;align-items:center}.home-modes{display:flex;gap:4px}.home-mode{padding:6px 14px;border-radius:8px;border:1px solid var(--border);background:transparent;color:inherit;font-size:13px;cursor:pointer;opacity:.7}.home-mode:hover{opacity:1}.home-mode.active{opacity:1;background:var(--panel-2);border-color:#6c8cff80}.media-grid{margin-top:16px;display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.media-card{text-align:left;padding:10px;border-radius:12px;cursor:pointer;border:1px solid var(--border);background:var(--panel);color:inherit;display:flex;flex-direction:column;gap:8px}.media-card:hover{border-color:#6c8cff80}.media-thumb{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:8px;background:var(--panel-2);display:block}.media-thumb-text{padding:10px;font-size:12px;line-height:1.5;overflow:hidden;opacity:.85;white-space:pre-wrap}.media-meta{display:flex;justify-content:space-between;font-size:12px;gap:8px}.media-dim{opacity:.55;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-more{margin:20px auto 0;display:block;padding:8px 24px;border-radius:8px;border:1px solid var(--border);background:transparent;color:inherit;cursor:pointer}.media-more:hover{border-color:#6c8cff80}.home-card-cover{width:100%;aspect-ratio:16 / 9;border-radius:8px;margin-bottom:10px;background-size:cover;background-position:center;background-color:var(--panel-2)}.home-card-progress{margin-top:10px;font-size:12px;opacity:.85}.home-progress-track{margin-top:6px;height:4px;border-radius:2px;background:var(--panel-2);overflow:hidden}.home-progress-bar{height:100%;border-radius:2px;background:linear-gradient(90deg,#6c8cff,#a06cff);transition:width .6s}.home-card-wrap{position:relative;display:flex}.home-card-wrap .home-card{flex:1}.card-actions{position:absolute;top:10px;right:10px;display:flex;gap:6px;opacity:0;transition:opacity .15s}.home-card-wrap:hover .card-actions,.card-action:focus-visible{opacity:1}.card-action{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:7px;cursor:pointer;border:1px solid var(--border);background:var(--panel-2);color:inherit;opacity:.85}.card-action:hover{opacity:1}.card-action-danger:hover{color:#ff7a7a;border-color:#ff7a7a80}.bell{position:relative}.bell-button{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;cursor:pointer;border:none;background:transparent;color:inherit;opacity:.75;position:relative}.bell-button:hover{opacity:1;background:var(--panel-2)}.bell-dot{position:absolute;top:1px;right:0;min-width:15px;height:15px;padding:0 4px;border-radius:8px;background:#ff5c5c;color:#fff;font-size:10px;line-height:15px}.bell-panel{position:absolute;top:38px;right:0;width:300px;max-height:380px;overflow-y:auto;border:1px solid var(--border);border-radius:12px;background:var(--panel);box-shadow:0 12px 32px #00000073;z-index:50;padding:6px}.bell-head{padding:8px 10px;font-size:13px;font-weight:600;opacity:.8}.bell-empty{padding:20px 10px;text-align:center;font-size:13px;opacity:.5}.bell-item{display:block;width:100%;text-align:left;padding:10px;border-radius:8px;border:none;background:transparent;color:inherit;cursor:pointer}.bell-item:hover{background:var(--panel-2)}.bell-item.unread{background:#6c8cff1f}.bell-item-title{font-size:13px;font-weight:600}.bell-item-body{margin-top:3px;font-size:12px;opacity:.7}.bell-item-time{margin-top:4px;font-size:11px;opacity:.45}.shell-topbar{justify-content:space-between}.shell-topbar-right{display:flex;align-items:center;gap:16px}.shell-search{display:flex;align-items:center;gap:8px;cursor:pointer;padding:6px 12px;border-radius:8px;min-width:260px;border:1px solid var(--border);background:var(--panel);color:inherit;font-size:13px;opacity:.7}.shell-search:hover{opacity:1}.shell-search span{flex:1;text-align:left}.shell-search kbd{font-size:11px;padding:1px 5px;border-radius:4px;border:1px solid var(--border);background:var(--panel-2)}.palette-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;justify-content:center;padding-top:12vh;background:#00000080}.palette{width:min(560px,92vw);height:fit-content;max-height:60vh;overflow:hidden;display:flex;flex-direction:column;border:1px solid var(--border);border-radius:14px;background:var(--panel);box-shadow:0 24px 64px #0000008c}.palette-input{padding:16px;border:none;border-bottom:1px solid var(--border);background:transparent;color:inherit;font-size:15px;outline:none}.palette-body{overflow-y:auto;padding:6px}.palette-group{padding:8px 10px 4px;font-size:11px;opacity:.5}.palette-empty{padding:24px;text-align:center;font-size:13px;opacity:.5}.palette-item{display:flex;align-items:center;gap:8px;width:100%;text-align:left;padding:9px 10px;border-radius:8px;border:none;background:transparent;color:inherit;font-size:13px;cursor:pointer}.palette-item:hover{background:var(--panel-2)}.palette-tag{margin-left:auto;font-size:11px;opacity:.55;padding:1px 6px;border-radius:4px;background:var(--panel-2)}.team-switch{position:relative}.team-switch-button{display:flex;align-items:center;gap:6px;cursor:pointer;padding:6px 10px;border-radius:8px;max-width:200px;border:1px solid var(--border);background:var(--panel);color:inherit;font-size:13px}.team-switch-button:hover{border-color:#6c8cff80}.team-switch-button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team-switch-panel{position:absolute;top:38px;right:0;width:240px;z-index:60;padding:6px;border:1px solid var(--border);border-radius:12px;background:var(--panel);box-shadow:0 12px 32px #00000073}.team-switch-item{display:flex;align-items:center;gap:8px;width:100%;text-align:left;padding:9px 10px;border-radius:8px;border:none;background:transparent;color:inherit;font-size:13px;cursor:pointer}.team-switch-item:hover{background:var(--panel-2)}.team-switch-item.active{background:#6c8cff24}.team-switch-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team-switch-role{font-size:11px;opacity:.55}.team-switch-new{margin-top:4px;border-top:1px solid var(--border);border-radius:0 0 8px 8px}.team-invite{display:flex;gap:10px;margin-top:20px}.team-invite-input{flex:1;max-width:320px;padding:8px 12px;border-radius:8px;border:1px solid var(--border);background:var(--panel);color:inherit;font-size:13px;outline:none}.team-invite-input:focus{border-color:#6c8cff99}.team-members{margin-top:20px;display:flex;flex-direction:column;gap:8px}.team-member{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--border);border-radius:10px;background:var(--panel)}.team-member-main{flex:1;min-width:0}.team-role-select{padding:5px 8px;border-radius:7px;font-size:12px;border:1px solid var(--border);background:var(--panel-2);color:inherit}.shell-approved{--approved-sidebar-width: 184px;--approved-topbar-height: 64px;--approved-content-width: 1180px;--approved-home-width: 1104px;--approved-bg: #070b14;--approved-nav: #090e18;--approved-surface: #101725;--approved-surface-2: #151d2d;--approved-border: #27334a;--approved-text: #f8fafc;--approved-text-2: #a8b2c3;--approved-text-3: #7f8a9d;--approved-blue: #3b82f6;--approved-purple: #7c5cfc;--approved-success: #34d399;--approved-warning: #fbbf24;--approved-error: #fb7185;--bg: var(--approved-bg);--panel: var(--approved-surface);--panel-2: var(--approved-surface-2);--border: var(--approved-border);--text: var(--approved-text);--text-dim: var(--approved-text-3);--accent: var(--approved-blue);--accent-2: var(--approved-purple);--red: var(--approved-error);width:100%;height:100vh;min-height:100vh;overflow:hidden;background:var(--approved-bg);color:var(--approved-text);font-family:Inter,PingFang SC,Noto Sans CJK SC,Microsoft YaHei,sans-serif}.shell-approved .shell-sidebar{position:relative;z-index:30;width:var(--approved-sidebar-width);height:100vh;flex:0 0 var(--approved-sidebar-width);gap:18px;padding:16px 10px 12px;overflow:hidden;border-right:1px solid var(--approved-border);background:var(--approved-nav)}.shell-approved .shell-brand{min-height:46px;padding:2px 4px 0;color:var(--approved-text)}.shell-approved .shell-brand .brand-mark{width:32px;height:30px}.shell-approved .shell-brand .brand-mark img{width:70px;height:70px;transform:translate(-50%,-41.5%)}.shell-approved .shell-brand .brand-wordmark{font-size:18px;font-weight:750}.shell-approved .brand-wordmark-base{color:var(--approved-text)}.shell-approved .brand-wordmark-accent{background-image:linear-gradient(90deg,#60a5fa,#a78bfa)}.shell-approved .shell-sidebar nav{gap:8px}.shell-approved .shell-nav-item{position:relative;display:flex;align-items:center;width:100%;height:44px;gap:12px;padding:0 12px;overflow:hidden;border:1px solid transparent;border-radius:10px;color:var(--approved-text-2);font-size:14px;font-weight:500;line-height:1;opacity:1;transition:background-color .16s ease,border-color .16s ease,color .16s ease}.shell-approved .shell-nav-item svg{width:20px;height:20px;flex:0 0 auto}.shell-approved .shell-nav-item:hover{background:#7c5cfc17;color:var(--approved-text)}.shell-approved .shell-nav-item:active{background:#7c5cfc24}.shell-approved .shell-nav-item.active{border-color:#6366f129;background:linear-gradient(90deg,#565be83b,#3b82f61a);color:#dbeafe}.shell-approved .shell-nav-item.active svg{color:#6386ff}.shell-approved .approved-team-card{display:flex;align-items:center;min-height:58px;margin-top:auto;gap:10px;padding:8px 10px;overflow:hidden;border:1px solid var(--approved-border);border-radius:10px;background:linear-gradient(145deg,#151d2df0,#101725e6);color:var(--approved-text);text-decoration:none;transition:background-color .16s ease,border-color .16s ease}.shell-approved .approved-team-card>svg{width:28px;height:28px;flex:0 0 auto;padding:6px;border-radius:8px;background:linear-gradient(135deg,#7c5cfcb8,#3b82f69e);color:#fff}.shell-approved .approved-team-card span{display:flex;min-width:0;flex-direction:column;gap:4px}.shell-approved .approved-team-card strong{overflow:hidden;color:var(--approved-text);font-size:13px;font-weight:600;line-height:1;text-overflow:ellipsis;white-space:nowrap}.shell-approved .approved-team-card small{overflow:hidden;color:var(--approved-text-3);font-size:10px;line-height:1;text-overflow:ellipsis;white-space:nowrap}.shell-approved .approved-team-card:hover{border-color:#60a5fa7a;background:var(--approved-surface-2)}.shell-approved .approved-team-card:active{border-color:#7c5cfca6;background:#192236}.shell-approved .shell-main{width:calc(100% - var(--approved-sidebar-width));height:100vh;min-width:0;min-height:0;overflow:hidden;background:var(--approved-bg)}.shell-approved .shell-topbar{position:relative;z-index:50;display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,348px) minmax(0,1fr);align-items:center;width:100%;height:var(--approved-topbar-height);min-height:var(--approved-topbar-height);flex:0 0 var(--approved-topbar-height);gap:16px;padding:0 18px;border-bottom:1px solid rgba(39,51,74,.36);background:#070b14f5}.shell-approved .shell-search{position:static;grid-column:2;width:100%;height:44px;min-width:0;max-width:none;padding:0 12px;border:1px solid var(--approved-border);border-radius:10px;background:#101725e6;color:var(--approved-text-2);font-family:inherit;font-size:13px;opacity:1;transform:none;transition:background-color .16s ease,border-color .16s ease,color .16s ease}.shell-approved .shell-search>svg{width:18px;height:18px;color:var(--approved-text-3)}.shell-approved .shell-search kbd{padding:2px 6px;border-color:transparent;background:transparent;color:var(--approved-text-2);font-family:inherit;font-size:12px}.shell-approved .shell-search:hover{border-color:#3a4965;background:var(--approved-surface-2);color:var(--approved-text)}.shell-approved .shell-search:active{border-color:#60a5faa6}.shell-approved .shell-topbar-right{position:relative;z-index:2;grid-column:3;width:100%;min-width:0;height:100%;margin-left:0;gap:14px;justify-content:flex-end}.shell-approved .team-switch,.shell-approved .bell,.shell-approved .approved-account{position:relative}.shell-approved .team-switch{min-width:0;flex:0 1 176px}.shell-approved .team-switch-button,.shell-approved .shell-credit,.shell-approved .bell-button,.shell-approved .approved-account__trigger{height:44px;min-height:44px;border:1px solid var(--approved-border);border-radius:10px;background:#101725db;color:var(--approved-text-2);font-family:inherit;transition:background-color .16s ease,border-color .16s ease,color .16s ease}.shell-approved .team-switch-button{width:100%;min-width:0;max-width:176px;padding:0 12px;gap:8px}.shell-approved .team-switch-button span,.shell-approved .shell-credit__label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shell-approved .team-switch-button>svg:first-child{width:18px;height:18px;color:var(--approved-text)}.shell-approved .shell-credit{min-width:0;flex:0 1 126px;justify-content:center;padding:0 12px}.shell-approved .shell-credit svg{width:18px;height:18px;color:#a78bfa}.shell-approved .bell-button,.shell-approved .approved-account__trigger{display:inline-grid;width:44px;min-width:44px;place-items:center;padding:0;cursor:pointer;opacity:1}.shell-approved .bell-button{border-color:transparent;background:transparent}.shell-approved .bell-button svg{width:20px;height:20px}.shell-approved .bell-dot{top:5px;right:4px;min-width:8px;width:auto;height:8px;padding:0 2px;overflow:hidden;border:1px solid var(--approved-bg);border-radius:999px;background:#6386ff;color:transparent;font-size:0;line-height:6px}.shell-approved .approved-account__trigger{border-radius:50%;background:linear-gradient(145deg,#28344a,#151d2d);color:var(--approved-text);font-size:14px;font-weight:650}.shell-approved .team-switch-button:hover,.shell-approved .bell-button:hover,.shell-approved .approved-account__trigger:hover{border-color:#60a5fa80;background:var(--approved-surface-2);color:var(--approved-text)}.shell-approved .team-switch-button:active,.shell-approved .bell-button:active,.shell-approved .approved-account__trigger:active{border-color:#7c5cfcb8;background:#1b2538}.shell-approved .team-switch-panel,.shell-approved .bell-panel,.shell-approved .approved-account__menu{z-index:90;border:1px solid var(--approved-border);border-radius:12px;background:#101725;color:var(--approved-text);box-shadow:0 18px 44px #00000075}.shell-approved .team-switch-panel{top:52px}.shell-approved .bell-panel{top:52px;max-height:min(420px,calc(100vh - 80px))}.shell-approved .approved-account__menu{position:absolute;top:52px;right:0;width:220px;padding:8px}.shell-approved .approved-account__phone{display:block;padding:10px;overflow:hidden;color:var(--approved-text-3);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.shell-approved .approved-account__menu button{display:flex;align-items:center;width:100%;min-height:44px;gap:9px;padding:0 10px;border:0;border-radius:8px;background:transparent;color:var(--approved-text-2);font-family:inherit;font-size:13px;cursor:pointer;transition:background-color .15s ease,color .15s ease}.shell-approved .approved-account__menu button:hover{background:var(--approved-surface-2);color:var(--approved-text)}.shell-approved .approved-account__menu button:active{background:#1b2538}.shell-approved .team-switch-item,.shell-approved .bell-item{min-height:44px;color:var(--approved-text-2);transition:background-color .15s ease,color .15s ease}.shell-approved .team-switch-item:hover,.shell-approved .bell-item:hover{background:var(--approved-surface-2);color:var(--approved-text)}.shell-approved .team-switch-item:active,.shell-approved .bell-item:active{background:#1b2538}.shell-approved .team-switch-item.active,.shell-approved .bell-item.unread{background:#6366f121}.shell-approved .palette-mask{z-index:200;background:#03060cb8;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.shell-approved .palette{border-color:var(--approved-border);background:var(--approved-surface);color:var(--approved-text)}.shell-approved .palette-input{min-height:56px;border-color:var(--approved-border);color:var(--approved-text)}.shell-approved .palette-item{min-height:44px;color:var(--approved-text-2)}.shell-approved .palette-item:hover{background:var(--approved-surface-2);color:var(--approved-text)}.shell-approved .shell-content{width:100%;max-width:none;min-width:0;min-height:0;margin:0;flex:1 1 auto;padding:32px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:rgba(127,138,157,.42) transparent;scrollbar-width:thin;background:var(--approved-bg)}.shell-approved .shell-content::-webkit-scrollbar{width:8px}.shell-approved .shell-content::-webkit-scrollbar-track{background:transparent}.shell-approved .shell-content::-webkit-scrollbar-thumb{border:2px solid transparent;border-radius:999px;background:#7f8a9d6b;background-clip:padding-box}.shell-approved .shell-content::-webkit-scrollbar-thumb:hover{background:#a8b2c394;background-clip:padding-box}.shell-approved .approved-home{width:100%;max-width:var(--approved-home-width);margin:0 auto;color:var(--approved-text)}.shell-approved .approved-visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;padding:0;border:0;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.shell-approved .approved-home__heading h1{color:var(--approved-text);font-size:32px;font-weight:700;letter-spacing:-.025em;line-height:1.25}.shell-approved .approved-home__heading p{margin-top:6px;color:var(--approved-text-2);font-size:15px;line-height:1.6}.shell-approved .approved-home-composer{position:relative;display:flex;width:100%;min-height:175px;margin-top:27px;flex-direction:column;padding:16px;border:1px solid rgba(109,94,247,.9);border-radius:16px;background:linear-gradient(115deg,rgba(124,92,252,.08),transparent 38%),var(--approved-surface);box-shadow:0 0 26px #525ef740}.shell-approved .approved-home-composer:has(>.approved-home-composer__prompt:focus-visible){border-color:#60a5fad6;box-shadow:0 0 32px #525ef757}.shell-approved .approved-home-composer__prompt{display:block;width:100%;min-height:82px;flex:1 1 auto;resize:none;padding:5px;border:0;background:transparent;color:var(--approved-text);caret-color:#93c5fd;font-family:inherit;font-size:15px;line-height:1.6;outline:0}.shell-approved .approved-home-composer__prompt::placeholder{color:#c4cad5;opacity:.9}.shell-approved .approved-home-composer__actions{display:flex;min-width:0;min-height:44px;margin-top:8px;align-items:center;justify-content:flex-start;gap:0}.shell-approved .approved-home-composer__tools{display:contents}.shell-approved .approved-home-composer__tool,.shell-approved .approved-home-composer__mode,.shell-approved .approved-home-composer__create{display:inline-flex;height:44px;min-height:44px;align-items:center;justify-content:center;gap:8px;border-radius:10px;color:var(--approved-text-2);font-family:inherit;font-size:14px;line-height:1;white-space:nowrap;transition:background-color .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}.shell-approved .approved-home-composer__tool{order:1;width:auto;min-width:0;padding:0 14px;border:1px solid var(--approved-border);background:#151d2dc2}.shell-approved .approved-home-composer__tool+.approved-home-composer__tool{margin-left:8px}.shell-approved .approved-home-composer__tool svg,.shell-approved .approved-home-composer__mode svg,.shell-approved .approved-home-composer__create svg{width:18px;height:18px;flex:0 0 auto}.shell-approved .approved-home-composer__tool:disabled{color:#d3d8e2;cursor:not-allowed;opacity:.78}.shell-approved .approved-home-composer__modes{display:flex;order:2;height:46px;margin-left:auto;align-items:center;gap:2px;padding:0 3px;border:1px solid var(--approved-border);border-radius:12px;background:#070b145c}.shell-approved .approved-home-composer__mode{height:44px;min-height:44px;padding:0;border:0;background:transparent;cursor:pointer;opacity:1}.shell-approved .approved-home-composer__mode-surface{display:inline-flex;height:36px;align-items:center;justify-content:center;gap:8px;padding:0 15px;border:1px solid transparent;border-radius:10px;transition:background-color .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}.shell-approved .approved-home-composer__mode:hover .approved-home-composer__mode-surface{background:#3b82f617;color:var(--approved-text)}.shell-approved .approved-home-composer__mode:active .approved-home-composer__mode-surface{background:#3b82f626;transform:translateY(1px)}.shell-approved .approved-home-composer__mode.active .approved-home-composer__mode-surface{border-color:#7169ff8c;background:linear-gradient(135deg,#6d5ef787,#3b82f652);color:#f5f3ff}.shell-approved .approved-home-composer__create{order:3;min-width:162px;margin-left:16px;padding:0 17px;border:1px solid rgba(147,197,253,.52);background:linear-gradient(105deg,#6d5ef7,#3b82f6);color:#fff;font-weight:600;cursor:pointer}.shell-approved .approved-home-composer__create:hover:not(:disabled){border-color:#dbeafec7;background:linear-gradient(105deg,#7869ff,#4a8df8);transform:translateY(-1px)}.shell-approved .approved-home-composer__create:active:not(:disabled){background:linear-gradient(105deg,#6556e8,#3175e7);transform:translateY(0)}.shell-approved .approved-home-composer__create:disabled,.shell-approved .approved-template-card__use:disabled{cursor:not-allowed;filter:saturate(.62);opacity:.56}.shell-approved .approved-home-composer__error{width:100%;margin-top:10px;padding:9px 11px;border:1px solid rgba(251,113,133,.28);border-radius:8px;background:#fb718514;color:var(--approved-error);font-size:13px;line-height:1.5}.shell-approved .approved-project-section{margin-top:36px}.shell-approved .approved-template-section{margin-top:32px;padding-bottom:12px}.shell-approved .approved-project-section__heading,.shell-approved .approved-template-section__heading{display:flex;min-height:28px;align-items:center;justify-content:space-between;gap:16px}.shell-approved .approved-home-section-title{color:var(--approved-text);font-size:20px;font-weight:650;letter-spacing:-.015em;line-height:1.4}.shell-approved .approved-project-section__more,.shell-approved .approved-template-section__more{display:inline-flex;min-height:44px;align-items:center;padding:0 4px;color:#7c83ff;font-size:13px;text-decoration:none;transition:color .15s ease}.shell-approved .approved-project-section__more:hover,.shell-approved .approved-template-section__more:hover{color:#a5b4fc}.shell-approved .approved-project-section__more:active,.shell-approved .approved-template-section__more:active{color:#6366f1}.shell-approved .approved-project-grid{display:grid;width:100%;min-height:256px;margin-top:10px;grid-template-columns:minmax(0,2.65fr) repeat(2,minmax(0,1fr));gap:16px}.shell-approved .approved-project-card{position:relative;display:grid;width:100%;height:256px;min-width:0;overflow:hidden;border:1px solid var(--approved-border);border-radius:12px;background:var(--approved-surface);color:var(--approved-text);font-family:inherit;text-align:left;cursor:pointer;transition:background-color .17s ease,border-color .17s ease,transform .17s ease}.shell-approved .approved-project-card:hover{border-color:#3b4c6b;background:#121a29;transform:translateY(-1px)}.shell-approved .approved-project-card:active{border-color:#6366f194;transform:translateY(0)}.shell-approved .approved-project-card--featured{grid-template-columns:minmax(224px,.42fr) minmax(0,.58fr)}.shell-approved .approved-project-card--featured .approved-project-card__details{display:flex;min-width:0;padding:23px 18px 24px 24px;flex-direction:column}.shell-approved .approved-project-card__copy{display:flex;min-width:0;flex-direction:column;gap:7px}.shell-approved .approved-project-card__name{overflow:hidden;color:var(--approved-text);font-size:16px;font-weight:650;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.shell-approved .approved-project-card--featured .approved-project-card__name{font-size:20px}.shell-approved .approved-project-card__updated{overflow:hidden;color:var(--approved-text-3);font-size:12px;line-height:1.45;text-overflow:ellipsis;white-space:nowrap}.shell-approved .approved-project-card__progress{display:flex;margin-top:auto;flex-direction:column;gap:8px;color:var(--approved-text-2);font-size:12px;line-height:1.4}.shell-approved .approved-project-card__progress-track{display:block;width:100%;height:5px;overflow:hidden;border-radius:999px;background:#27303d}.shell-approved .approved-project-card__progress-value{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#7c5cfc,#3b82f6);transition:width .18s ease}.shell-approved .approved-project-card__open{display:flex;min-height:44px;margin-top:14px;align-items:center;justify-content:space-between;padding:0 13px;border:1px solid var(--approved-border);border-radius:8px;background:#151d2db8;color:var(--approved-text-2);font-size:13px}.shell-approved .approved-project-card--featured .approved-project-card__open{margin-top:auto}.shell-approved .approved-project-card:hover .approved-project-card__open{border-color:#3b4c6b;color:var(--approved-text)}.shell-approved .approved-project-card__artwork{display:block;width:100%;height:100%;min-width:0;background:var(--approved-surface-2);object-fit:cover}.shell-approved .approved-project-card--featured .approved-project-card__artwork{border-left:1px solid rgba(39,51,74,.72)}.shell-approved .approved-project-card--compact{grid-auto-rows:max-content;align-content:start}.shell-approved .approved-project-card--compact .approved-project-card__details{display:contents}.shell-approved .approved-project-card--compact .approved-project-card__copy{order:1;padding:16px 15px 9px}.shell-approved .approved-project-card--compact .approved-project-card__progress{order:2;margin:0;padding:0 15px 9px}.shell-approved .approved-project-card--compact .approved-project-card__artwork{width:calc(100% - 14px);height:119px;margin:0 7px;order:3;border:1px solid rgba(39,51,74,.76);border-radius:8px}.shell-approved .approved-project-card--compact:has(.approved-project-card__progress) .approved-project-card__artwork{height:98px}.shell-approved .approved-project-card--compact .approved-project-card__open{min-height:35px;margin:7px;order:4;padding:0 10px;border-radius:7px;font-size:12px}.shell-approved .approved-project-card--skeleton{cursor:default;pointer-events:none}.shell-approved .approved-project-card__skeleton-artwork,.shell-approved .approved-project-card__skeleton-line,.shell-approved .approved-template-card--skeleton{background:linear-gradient(100deg,#111827 15%,#1b2639,#111827 65%);background-size:240% 100%;animation:approved-skeleton-shimmer 1.5s linear infinite}.shell-approved .approved-project-card--skeleton .approved-project-card__details{display:flex;padding:24px;flex-direction:column;gap:12px}.shell-approved .approved-project-card__skeleton-line{display:block;width:72%;height:13px;border-radius:999px}.shell-approved .approved-project-card__skeleton-line+.approved-project-card__skeleton-line{width:45%}.shell-approved .approved-project-card__skeleton-artwork{min-width:0;height:100%}.shell-approved .approved-project-card--compact.approved-project-card--skeleton{display:grid;grid-template-rows:96px 1fr}.shell-approved .approved-project-card--compact.approved-project-card--skeleton .approved-project-card__details{display:flex;padding:18px 15px}.shell-approved .approved-project-card--compact.approved-project-card--skeleton .approved-project-card__skeleton-artwork{width:calc(100% - 14px);height:calc(100% - 7px);margin:0 7px 7px;border-radius:8px}.shell-approved .approved-project-state,.shell-approved .approved-template-state{display:grid;width:100%;place-items:center;padding:24px;border:1px solid var(--approved-border);border-radius:12px;background:var(--approved-surface);color:var(--approved-text-3);font-size:14px;line-height:1.6;text-align:center}.shell-approved .approved-project-state{min-height:256px;margin-top:10px}.shell-approved .approved-template-state{min-height:220px;margin-top:10px}.shell-approved .approved-template-state:has(+.approved-template-grid){min-height:44px;place-items:start;padding:10px 12px;text-align:left}.shell-approved .approved-project-state--error,.shell-approved .approved-template-state--error{border-color:#fb71854d;background:#fb71850f;color:var(--approved-error)}.shell-approved .approved-template-grid{display:grid;width:100%;margin-top:10px;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.shell-approved .approved-template-card{position:relative;min-width:0;overflow:hidden;border:1px solid var(--approved-border);border-radius:12px;background:var(--approved-surface);transition:background-color .17s ease,border-color .17s ease,transform .17s ease}.shell-approved .approved-template-card:hover{border-color:#3b4c6b;background:#121a29;transform:translateY(-1px)}.shell-approved .approved-template-card:active{transform:translateY(0)}.shell-approved .approved-template-card__artwork{display:block;width:100%;aspect-ratio:8 / 5;border-bottom:1px solid var(--approved-border);background:var(--approved-surface-2);object-fit:cover}.shell-approved .approved-template-card__content{display:flex;min-height:58px;padding:10px 12px 11px;flex-direction:column;justify-content:center;gap:4px}.shell-approved .approved-template-card__heading{display:flex;min-width:0;align-items:center;gap:8px}.shell-approved .approved-template-card__heading svg{width:18px;height:18px;flex:0 0 auto;color:var(--approved-text-2)}.shell-approved .approved-template-card__heading h3{overflow:hidden;color:var(--approved-text);font-size:14px;font-weight:600;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.shell-approved .approved-template-card__content p{overflow:hidden;color:var(--approved-text-3);font-size:11px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.shell-approved .approved-template-card__use{position:absolute;top:12px;right:12px;z-index:2;display:inline-flex;min-width:86px;height:44px;align-items:center;justify-content:center;padding:0 12px;border:1px solid rgba(147,197,253,.52);border-radius:10px;background:linear-gradient(105deg,#6d5ef7f5,#3b82f6f5);color:#fff;font-family:inherit;font-size:12px;font-weight:600;cursor:pointer;opacity:0;transform:translateY(3px);transition:opacity .16s ease,transform .16s ease,filter .16s ease}.shell-approved .approved-template-card:hover .approved-template-card__use,.shell-approved .approved-template-card__use:focus-visible,.shell-approved .approved-template-card__use:disabled{opacity:1;transform:translateY(0)}@media(hover:none){.shell-approved .approved-template-card__use{opacity:1;transform:none}}.shell-approved .approved-template-card__use:hover:not(:disabled){filter:brightness(1.1)}.shell-approved .approved-template-card__use:active:not(:disabled){filter:brightness(.92)}.shell-approved .approved-template-card--skeleton{min-height:220px;border:1px solid var(--approved-border);border-radius:12px}.shell-approved :is(.shell-nav-item,.approved-team-card,.shell-search,.team-switch-button,.team-switch-item,.bell-button,.bell-item,.approved-account__trigger,.approved-account__menu button,.palette-input,.palette-item,.approved-home-composer__mode,.approved-home-composer__create,.approved-project-section__more,.approved-template-section__more,.approved-project-card,.approved-template-card__use):focus-visible{outline:2px solid #60a5fa;outline-offset:2px}@keyframes approved-skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media(max-width:1279px){.shell-approved .shell-topbar{display:flex;grid-template-columns:none;align-items:center;justify-content:space-between;gap:10px;padding:0 14px}.shell-approved .shell-search{grid-column:auto;position:static;width:min(300px,34vw);max-width:300px;margin-right:auto;flex:1 1 220px;transform:none}.shell-approved .shell-topbar-right{grid-column:auto;width:auto;margin-left:auto;gap:8px}.shell-approved .team-switch{flex:0 1 auto}.shell-approved .team-switch-button{width:auto}.shell-approved .team-switch-button{max-width:142px}.shell-approved .shell-credit{min-width:108px;flex-basis:108px;padding:0 9px}.shell-approved .shell-content{padding:28px 24px 32px}.shell-approved .approved-home{max-width:100%}.shell-approved .approved-home-composer__actions{flex-wrap:wrap;row-gap:10px}.shell-approved .approved-project-grid{min-height:0;grid-template-columns:repeat(2,minmax(0,1fr))}.shell-approved .approved-project-card--featured{grid-column:1 / -1}.shell-approved .approved-project-card--compact{align-content:stretch;grid-template-columns:minmax(0,.44fr) minmax(0,.56fr);grid-template-rows:auto 1fr auto}.shell-approved .approved-project-card--compact .approved-project-card__copy{grid-column:1;grid-row:1}.shell-approved .approved-project-card--compact .approved-project-card__progress{grid-column:1;grid-row:2}.shell-approved .approved-project-card--compact .approved-project-card__open{margin:8px 12px 12px;grid-column:1;grid-row:3}.shell-approved .approved-project-card--compact .approved-project-card__artwork,.shell-approved .approved-project-card--compact:has(.approved-project-card__progress) .approved-project-card__artwork{width:100%;height:auto;margin:0;align-self:center;aspect-ratio:16 / 9;grid-column:2;grid-row:1 / -1;border-width:0 0 0 1px;border-radius:0}.shell-approved .approved-project-card--compact.approved-project-card--skeleton{height:256px;grid-template-columns:minmax(0,.44fr) minmax(0,.56fr);grid-template-rows:1fr}.shell-approved .approved-project-card--compact.approved-project-card--skeleton .approved-project-card__details{min-width:0;grid-column:1;grid-row:1}.shell-approved .approved-project-card--compact.approved-project-card--skeleton .approved-project-card__skeleton-artwork{width:100%;height:auto;margin:0;align-self:center;aspect-ratio:16 / 9;grid-column:2;grid-row:1;border-left:1px solid rgba(39,51,74,.76);border-radius:0}.shell-approved .approved-template-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:1023px){.shell-approved{--approved-sidebar-width: 72px}.shell-approved .shell-sidebar{width:var(--approved-sidebar-width);flex-basis:var(--approved-sidebar-width);align-items:center;gap:14px;padding:14px 8px 12px}.shell-approved .shell-brand{display:flex;width:44px;min-height:44px;align-items:center;justify-content:center;padding:0}.shell-approved .shell-brand .brand-wordmark{display:none}.shell-approved .shell-brand .brand-mark{width:38px}.shell-approved .shell-sidebar nav{width:100%}.shell-approved .shell-nav-item{width:44px;margin:0 auto;justify-content:center;gap:0;padding:0;font-size:0}.shell-approved .approved-team-card{width:44px;min-height:44px;justify-content:center;gap:0;padding:0}.shell-approved .approved-team-card span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}.shell-approved .shell-main{width:calc(100% - var(--approved-sidebar-width))}.shell-approved .shell-search{width:auto;min-width:148px;max-width:280px;flex:1 1 auto}.shell-approved .shell-search kbd{display:none}.shell-approved .team-switch-button{width:44px;min-width:44px;padding:0;justify-content:center}.shell-approved .team-switch-button span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}.shell-approved .team-switch-button>svg:last-child{display:none}.shell-approved .shell-credit{width:44px;min-width:44px;flex:0 0 44px;padding:0;font-size:0}.shell-approved .shell-content{padding:28px 24px 32px}.shell-approved .approved-home-composer{min-height:175px}.shell-approved .approved-home-composer__tool,.shell-approved .approved-home-composer__mode-surface{padding:0 12px}.shell-approved .approved-project-grid{grid-template-columns:minmax(0,1fr)}.shell-approved .approved-project-card--featured{grid-column:auto;height:auto;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto}.shell-approved .approved-project-card--featured .approved-project-card__details{min-height:210px;grid-column:1;grid-row:1}.shell-approved .approved-project-card--featured .approved-project-card__artwork{width:100%;height:auto;aspect-ratio:16 / 9;grid-column:1;grid-row:2;border-width:1px 0 0;border-radius:0}.shell-approved .approved-project-card--featured.approved-project-card--skeleton .approved-project-card__skeleton-artwork{width:100%;height:auto;aspect-ratio:16 / 9;grid-column:1;grid-row:2;border-top:1px solid rgba(39,51,74,.76);border-radius:0}.shell-approved .approved-project-card--compact,.shell-approved .approved-project-card--compact.approved-project-card--skeleton{grid-template-columns:minmax(0,.56fr) minmax(0,.44fr)}}@media(max-width:760px){.shell-approved .shell-topbar-right{gap:4px}.shell-approved .shell-search{min-width:0}.shell-approved .shell-search span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shell-approved .shell-credit{display:flex}.shell-approved .bell{display:block}.shell-approved .shell-content{padding:24px 16px 28px}.shell-approved .approved-home__heading h1{font-size:28px}.shell-approved .approved-home-composer__actions{align-items:stretch}.shell-approved .approved-home-composer__modes{width:100%;margin-top:2px;margin-left:0;order:2}.shell-approved .approved-home-composer__mode{min-width:0;flex:1 1 0}.shell-approved .approved-home-composer__mode-surface{width:100%}.shell-approved .approved-home-composer__create{margin-left:auto}.shell-approved .approved-project-card--featured,.shell-approved .approved-project-card--compact{height:auto;min-height:0;grid-template-columns:minmax(0,1fr);grid-template-rows:auto}.shell-approved .approved-project-card--featured .approved-project-card__details,.shell-approved .approved-project-card--compact .approved-project-card__copy,.shell-approved .approved-project-card--compact .approved-project-card__progress,.shell-approved .approved-project-card--compact .approved-project-card__open,.shell-approved .approved-project-card--compact .approved-project-card__artwork{grid-column:1;grid-row:auto}.shell-approved .approved-project-card--featured .approved-project-card__details{min-height:210px}.shell-approved .approved-project-card--featured .approved-project-card__artwork,.shell-approved .approved-project-card--compact .approved-project-card__artwork,.shell-approved .approved-project-card--compact:has(.approved-project-card__progress) .approved-project-card__artwork{width:100%;height:auto;min-height:0;margin:0;aspect-ratio:16 / 9;border-width:1px 0 0;border-radius:0}.shell-approved .approved-project-card--compact .approved-project-card__open{margin:8px}.shell-approved .approved-project-card--compact.approved-project-card--skeleton{height:auto;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto}.shell-approved .approved-project-card--compact.approved-project-card--skeleton .approved-project-card__details{min-height:120px;grid-column:1;grid-row:1}.shell-approved .approved-project-card--featured.approved-project-card--skeleton .approved-project-card__skeleton-artwork,.shell-approved .approved-project-card--compact.approved-project-card--skeleton .approved-project-card__skeleton-artwork{width:100%;height:auto;margin:0;aspect-ratio:16 / 9;grid-column:1;grid-row:2;border-width:1px 0 0;border-radius:0}.shell-approved .approved-template-grid{grid-template-columns:minmax(0,1fr)}}@media(prefers-reduced-motion:reduce){.shell-approved *,.shell-approved *:before,.shell-approved *:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.shell-approved .approved-project-card__skeleton-artwork,.shell-approved .approved-project-card__skeleton-line,.shell-approved .approved-template-card--skeleton{animation:none}.shell-approved .approved-home-composer__mode:active .approved-home-composer__mode-surface,.shell-approved .approved-home-composer__create:hover:not(:disabled),.shell-approved .approved-home-composer__create:active:not(:disabled),.shell-approved .approved-project-card:hover,.shell-approved .approved-project-card:active,.shell-approved .approved-template-card:hover,.shell-approved .approved-template-card:active,.shell-approved .approved-template-card__use{transform:none}}.login-approved{--auth-bg: #07090f;--auth-surface: #0b0d14;--auth-border: rgba(255, 255, 255, .24);--auth-muted: rgba(230, 233, 240, .58);--auth-subtle: rgba(230, 233, 240, .44);--auth-accent: #786dff;--auth-accent-2: #6b45ec;display:grid;grid-template-columns:minmax(0,57.03fr) minmax(520px,42.97fr);width:100%;max-width:100vw;height:100dvh;min-height:100dvh;overflow:hidden;background:var(--auth-bg);color:#f4f4f7}.login-approved .login-hero{position:relative;min-width:0;height:100dvh;overflow:hidden;background:#05070c;isolation:isolate}.login-approved .login-hero video,.login-approved .login-hero img{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:50% 50%}.login-approved .login-hero:before,.login-approved .login-hero:after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;content:""}.login-approved .login-hero:before{background:linear-gradient(90deg,transparent 58%,rgba(5,7,13,.12) 77%,rgba(5,7,13,.58) 100%)}.login-approved .login-hero:after{background:linear-gradient(180deg,transparent 48%,rgba(5,7,13,.08) 60%,rgba(5,7,13,.9) 100%)}.login-approved .login-hero-copy{position:absolute;top:69%;left:8%;z-index:2;width:min(520px,84%);color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.5)}.login-approved .login-hero-copy h2{max-width:480px;background:linear-gradient(180deg,#fff 0 45%,transparent 45%),linear-gradient(90deg,#fff 0,#fff 23%,#a568ff 38%,#6384ff);background-clip:text;color:transparent;font-size:clamp(32px,2.7vw,40px);font-weight:750;letter-spacing:.01em;line-height:1.3;-webkit-background-clip:text}.login-approved .login-hero-copy p{margin-top:18px;color:#ffffffc7;font-size:clamp(15px,1.3vw,18px);line-height:1.6}.login-approved .login-hero-indicator{display:flex;align-items:center;gap:7px;margin-top:50px;color:#ffffff7a;font-size:16px;font-variant-numeric:tabular-nums;letter-spacing:.06em}.login-approved .login-hero-indicator span:first-child{color:#816cff;font-size:20px;font-weight:600}.login-approved .login-sound{z-index:3;width:44px;height:44px}.login-approved .login-panel{position:relative;display:block;min-width:0;height:100dvh;min-height:0;padding:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;background:var(--auth-bg);scrollbar-color:rgba(255,255,255,.2) transparent}.login-approved .login-form{display:flex;flex-direction:column;gap:0;width:min(397px,100%);max-width:none;min-height:100%;margin:0 auto;padding:124px 0 70px}.login-approved .login-language{position:absolute;top:27px;right:48px;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:116px;min-height:44px;padding:0 8px;border:0;border-radius:6px;background:transparent;color:#f4f4f7ad;font:inherit;font-size:14px;cursor:pointer}.login-approved .login-language:hover{color:#fff;background:#ffffff0d}.login-approved .login-brand{position:static;align-self:center;gap:12px;height:52px;transform:none}.login-approved .login-brand .brand-mark{width:64px;height:52px}.login-approved .login-brand .brand-mark img{width:128px;height:128px}.login-approved .login-brand .brand-wordmark{font-size:27px;font-weight:780}.login-approved .login-form h1{margin-top:41px;color:#f7f7fa;font-size:34px;font-weight:720;letter-spacing:-.025em;line-height:1.3;text-align:center}.login-approved .login-subtitle{margin-top:10px;color:var(--auth-muted);font-size:16px;line-height:1.5;text-align:center}.login-approved .login-tabs{position:relative;display:grid;grid-template-columns:1fr 1fr;height:50px;margin-top:31px;border-bottom:1px solid rgba(255,255,255,.18)}.login-approved .login-tabs:after{position:absolute;bottom:-1px;width:114px;height:4px;border-radius:999px;background:linear-gradient(90deg,#6b80ff,#8364ff);content:""}.login-approved .login-tabs[data-active=phone]:after{left:calc(25% - 57px)}.login-approved .login-tabs[data-active=account]:after{left:calc(75% - 57px)}.login-approved .login-tabs button{min-width:0;min-height:44px;border:0;background:transparent;color:var(--auth-subtle);font:inherit;font-size:16px;cursor:pointer}.login-approved .login-tabs button[aria-selected=true]{color:#f3f3f7;font-weight:650}.login-approved .login-field{width:100%}.login-approved .login-tabs+.login-method-panel{margin-top:22px}.login-approved .login-field+.login-field{margin-top:21px}.login-approved .login-field label{display:block;color:#f4f4f7cc;font-size:15px;line-height:20px}.login-approved .login-phone-control,.login-approved .login-code-control,.login-approved .login-account-control{display:flex;width:100%;margin-top:8px;overflow:hidden;border:1px solid var(--auth-border);border-radius:5px;background:#ffffff04}.login-approved .login-phone-control{height:49px}.login-approved .login-code-control{height:51px}.login-approved .login-account-control{height:49px}.login-approved .login-country-code,.login-approved .login-phone-control input,.login-approved .login-code-control input,.login-approved .login-account-control input{min-width:0;min-height:44px;border:0;outline:0;background:transparent;color:#f1f1f5;font:inherit;font-size:15px}.login-approved .login-country-code{display:inline-flex;flex:0 0 96px;align-items:center;padding:0 18px;border-right:1px solid rgba(255,255,255,.2)}.login-approved .login-phone-control input,.login-approved .login-code-control input,.login-approved .login-account-control input{flex:1 1 auto;padding:0 18px}.login-approved .login-phone-control input::placeholder,.login-approved .login-code-control input::placeholder,.login-approved .login-account-control input::placeholder{color:#e6e9f061;opacity:1}.login-approved .login-send-code{flex:0 0 auto;min-width:118px;min-height:49px;padding:0 16px;border:0;background:transparent;color:#8d72ff;font:inherit;font-size:14px;cursor:pointer}.login-approved .login-send-code:disabled{cursor:default;opacity:.56}.login-approved .login-sms-error{margin-top:7px;color:#ff8585;font-size:12px}.login-approved .login-invitation{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:44px;margin-top:11px;padding:0;border:0;background:transparent;color:#f4f4f79e;font:inherit;font-size:14px;cursor:pointer}.login-approved .login-submit{width:100%;height:62px;min-height:62px;margin-top:29px;padding:0 20px;border:1px solid rgba(255,255,255,.22);border-radius:5px;background:linear-gradient(102deg,#2968ff,#5e57ff 55%,#8041ea);color:#fff;font:inherit;font-size:18px;font-weight:650;letter-spacing:.01em;cursor:pointer;box-shadow:inset 0 1px #ffffff2e}.login-approved .login-submit:disabled{cursor:default;opacity:.78}.login-approved .login-error{margin-top:10px}.login-approved .login-consent-copy{display:flex;align-items:center;justify-content:center;min-height:44px;margin-top:8px;color:var(--auth-subtle);font-size:12px;line-height:1.5;white-space:nowrap}.login-approved .login-legal-link,.login-approved .login-retry-legal{display:inline-flex;align-items:center;justify-content:center;min-height:44px;color:#8e6dff}.login-approved .login-agreements-feedback{margin-top:8px;text-align:center}.login-approved .login-agreements-error{color:#ff8585;font-size:12px}.login-approved .login-agreements-feedback button{min-height:44px;padding:0 12px;border:0;background:transparent;color:#8e6dff;font:inherit;cursor:pointer}.login-approved .login-alternate-divider{display:flex;align-items:center;gap:20px;min-height:22px;margin-top:30px;color:var(--auth-subtle);font-size:13px;line-height:22px;white-space:nowrap}.login-approved .login-alternate-divider:before,.login-approved .login-alternate-divider:after{flex:1 1 auto;height:1px;background:#ffffff61;content:""}.login-approved .login-wechat{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;height:62px;min-height:62px;margin-top:17px;border:1px solid rgba(255,255,255,.42);border-radius:5px;background:transparent;color:#f1f1f5;font:inherit;font-size:16px;cursor:pointer}.login-approved .login-auto-register{margin-top:23px;color:var(--auth-subtle);font-size:13px;line-height:1.5;text-align:center}.login-approved .login-notice{margin-top:12px;color:var(--auth-muted);font-size:12px;text-align:center}.login-approved button:focus-visible,.login-approved input:focus-visible,.login-approved select:focus-visible{position:relative;z-index:2;outline:2px solid #8d7bff;outline-offset:2px}.login-approved .login-phone-control:focus-within,.login-approved .login-code-control:focus-within,.login-approved .login-account-control:focus-within{border-color:#8d7bffdb;box-shadow:0 0 0 1px #8d7bff33}@media(max-height:960px)and (min-width:861px){.login-approved .login-form{padding-top:clamp(54px,8.6vh,83px);padding-bottom:42px}.login-approved .login-brand,.login-approved .login-brand .brand-mark{height:clamp(42px,5.2vh,50px)}.login-approved .login-form h1{margin-top:clamp(20px,3.6vh,35px)}.login-approved .login-tabs{margin-top:clamp(18px,3vh,29px)}.login-approved .login-tabs+.login-method-panel{margin-top:clamp(14px,2.4vh,22px)}.login-approved .login-field+.login-field{margin-top:clamp(13px,2.3vh,21px)}.login-approved .login-invitation{margin-top:clamp(4px,1.2vh,11px)}.login-approved .login-submit{margin-top:clamp(6px,1.4vh,13px)}.login-approved .login-alternate-divider{margin-top:clamp(10px,2.5vh,24px)}.login-approved .login-wechat{margin-top:clamp(9px,1.8vh,17px)}.login-approved .login-auto-register{margin-top:clamp(12px,2.4vh,23px)}}@media(max-width:860px){.login-approved{grid-template-columns:minmax(0,1fr)}.login-approved .login-hero{display:none}.login-approved .login-panel{width:100%}.login-approved .login-form{width:100%;margin:0;padding:94px 24px 44px}.login-approved .login-language{top:16px;right:16px}.login-approved .login-brand{height:46px}.login-approved .login-brand .brand-mark{width:56px;height:46px}.login-approved .login-brand .brand-mark img{width:112px;height:112px}.login-approved .login-brand .brand-wordmark{font-size:24px}.login-approved .login-form h1{margin-top:30px;font-size:clamp(28px,8vw,34px)}.login-approved .login-tabs{margin-top:27px}}@media(max-width:430px){.login-approved .login-send-code{min-width:108px;padding-inline:10px}.login-approved .login-consent-copy{font-size:11px}}@media(prefers-reduced-motion:reduce){.login-approved *,.login-approved *:before,.login-approved *:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
