.react-flow{direction:ltr}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1;cursor:-webkit-grab;cursor:grab}.react-flow__pane.selection{cursor:pointer}.react-flow__pane.dragging{cursor:-webkit-grabbing;cursor:grabbing}.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 .react-flow__edges{pointer-events:none;overflow:visible}.react-flow__edge-path,.react-flow__connection-path{stroke:#b1b1b7;stroke-width:1;fill:none}.react-flow__edge{pointer-events:visibleStroke;cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;-webkit-animation:dashdraw .5s linear infinite;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;-webkit-animation: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:focus .react-flow__edge-path,.react-flow__edge:focus-visible .react-flow__edge-path{stroke:#555}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge-textbg{fill:#fff}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;-webkit-animation:dashdraw .5s linear infinite;animation:dashdraw .5s linear infinite}.react-flow__connectionline{z-index:1001}.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:-webkit-grab;cursor:grab}.react-flow__node.dragging{cursor:-webkit-grabbing;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:-webkit-grab;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background:#1a192b;border:1px solid white;border-radius:100%}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:-4px;transform:translate(-50%)}.react-flow__handle-top{left:50%;top:-4px;transform:translate(-50%)}.react-flow__handle-left{top:50%;left:-4px;transform:translateY(-50%)}.react-flow__handle-right{right:-4px;top:50%;transform:translateY(-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.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.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.center{left:50%;transform:translate(-50%)}.react-flow__attribution{font-size:10px;background:#ffffff80;padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@-webkit-keyframes dashdraw{0%{stroke-dashoffset:10}}@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}.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-default,.react-flow__node-input,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:3px;width:150px;font-size:12px;color:#222;text-align:center;border-width:1px;border-style:solid;border-color:#1a192b;background-color:#fff}.react-flow__node-default.selectable:hover,.react-flow__node-input.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:0 1px 4px 1px #00000014}.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.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:0 0 0 .5px #1a192b}.react-flow__node-group{background-color:#f0f0f040}.react-flow__nodesselection-rect,.react-flow__selection{background:#0059dc14;border:1px dotted rgba(0,89,220,.8)}.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{box-shadow:0 0 2px 1px #00000014}.react-flow__controls-button{border:none;background:#fefefe;border-bottom:1px solid #eee;box-sizing:content-box;display:flex;justify-content:center;align-items:center;width:16px;height:16px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;padding:5px}.react-flow__controls-button:hover{background:#f4f4f4}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__minimap{background-color:#fff}.react-flow__minimap svg{display:block}.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:4px;height:4px;border:1px solid #fff;border-radius:1px;background-color:#3367d9;transform: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:#3367d9;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%}.aura-chat{display:flex;flex-direction:column;height:100%;min-height:0;background:var(--bg-panel);font-family:var(--font-body);color:var(--text-900);overflow:hidden}.aura-chat--embedded{border-radius:0;border:none}.aura-header{display:flex;align-items:center;justify-content:space-between;padding:11px 14px;background:var(--bg-panel);border-bottom:1px solid var(--border-subtle);flex-shrink:0;position:relative}.aura-header:after{content:"";position:absolute;bottom:-1px;left:16px;right:16px;height:1px;background:linear-gradient(90deg,transparent,var(--primary),transparent);opacity:.25;pointer-events:none}.aura-header-left{display:flex;align-items:center;gap:9px}.aura-header-icon{width:26px;height:26px;border-radius:var(--r-sm);background:var(--primary-soft);border:1px solid var(--primary-border);display:flex;align-items:center;justify-content:center;color:var(--primary);box-shadow:0 0 10px var(--primary-glow);flex-shrink:0}.aura-header-title{font-family:var(--font-display);font-size:12.5px;font-weight:700;color:var(--text-900);letter-spacing:.01em;line-height:1}.aura-header-sub{font-size:10px;color:var(--text-500);letter-spacing:.04em;text-transform:uppercase;margin-top:2px;font-family:var(--font-body)}.aura-header-user{font-family:var(--font-display);font-size:10.5px;font-weight:700;color:var(--primary);background:var(--primary-soft);border:1px solid var(--primary-border);padding:3px 8px;border-radius:var(--r-2xl);letter-spacing:.02em}.aura-messages{flex:1;overflow-y:auto;padding:14px 12px;display:flex;flex-direction:column;gap:12px;min-height:0;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:var(--border-mid) transparent}.aura-messages::-webkit-scrollbar{width:4px}.aura-messages::-webkit-scrollbar-track{background:transparent}.aura-messages::-webkit-scrollbar-thumb{background:var(--border-mid);border-radius:4px}.aura-msg{display:flex;align-items:flex-start;gap:8px;animation:aura-msg-in .22s ease both}@keyframes aura-msg-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.aura-msg--user{flex-direction:row-reverse}.aura-avatar{width:26px;height:26px;border-radius:var(--r-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px}.aura-avatar--bot{background:var(--primary-soft);border:1px solid var(--primary-border);color:var(--primary)}.aura-avatar--user{background:var(--bg-hover);border:1px solid var(--border-mid);color:var(--text-500)}.aura-bubble{max-width:84%;padding:9px 13px;border-radius:var(--r-md);font-size:13px;line-height:1.65;word-break:break-word;position:relative}.aura-bubble--assistant{background:var(--bg-hover);border:1px solid var(--border-subtle);color:var(--text-900);border-top-left-radius:var(--r-xs)}.aura-bubble--user{background:var(--primary);color:#fff;border-top-right-radius:var(--r-xs);border:none;box-shadow:0 4px 14px var(--primary-glow)}.aura-bubble--success{background:#22c55e14;border-color:#22c55e47;color:var(--success)}.aura-bubble-text strong{color:var(--primary);font-weight:700}.aura-bubble--user .aura-bubble-text strong{color:#ffffffeb}.aura-bubble-text code{font-family:var(--font-mono);font-size:11.5px;background:#6366f124;color:#a5b4fc;padding:1px 5px;border-radius:4px}.aura-bubble--user .aura-bubble-text code{background:#0003;color:#ffffffe6}.aura-cursor{display:inline-block;width:2px;height:12px;background:var(--primary);border-radius:1px;margin-left:3px;vertical-align:middle;animation:aura-blink .85s steps(1) infinite}@keyframes aura-blink{0%,to{opacity:1}50%{opacity:0}}.aura-task-wrap{padding-left:34px}.aura-task-panel{background:var(--bg-input);border:1px solid var(--primary-border);border-radius:var(--r-md);overflow:hidden;box-shadow:var(--shadow-sm),0 0 0 1px var(--primary-soft) inset}.aura-task-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;padding:9px 12px;background:var(--primary-soft);border:none;cursor:pointer;color:var(--primary);font-family:var(--font-body);font-size:11.5px;transition:background var(--ease-fast)}.aura-task-toggle:hover{background:#6366f12e}.aura-task-toggle-label{display:flex;align-items:center;gap:6px;font-family:var(--font-display);font-weight:700;font-size:11px;letter-spacing:.05em;text-transform:uppercase}.aura-task-toggle-steps{display:flex;align-items:center;gap:5px;color:var(--text-500);font-size:10.5px;font-family:var(--font-body)}.aura-task-body{border-top:1px solid var(--border-subtle)}.aura-task-content{padding:11px 13px;margin:0;font-family:var(--font-body);font-size:12.5px;line-height:1.8;color:var(--text-700);white-space:pre-wrap;word-break:break-word;max-height:200px;overflow-y:auto}.aura-task-editor{width:100%;min-height:130px;padding:11px 13px;background:var(--bg-node);border:none;border-bottom:1px solid var(--border-subtle);color:var(--text-900);font-family:var(--font-mono);font-size:11.5px;line-height:1.7;resize:vertical;outline:none;box-sizing:border-box;transition:border-color var(--ease-fast)}.aura-task-editor:focus{border-bottom-color:var(--primary-border)}.aura-task-actions{display:flex;gap:7px;padding:9px 11px;background:var(--bg-panel);border-top:1px solid var(--border-subtle)}.aura-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:6px 13px;border-radius:var(--r-sm);font-family:var(--font-body);font-size:12px;font-weight:700;cursor:pointer;border:1px solid transparent;transition:all var(--ease-fast);white-space:nowrap}.aura-btn:disabled{opacity:.45;cursor:not-allowed}.aura-btn-ghost{background:var(--bg-hover);border-color:var(--border-mid);color:var(--text-700)}.aura-btn-ghost:hover:not(:disabled){background:var(--bg-node);color:var(--text-900);border-color:var(--border-strong)}.aura-btn-primary{background:var(--primary-soft);border-color:var(--primary-border);color:var(--primary)}.aura-btn-primary:hover:not(:disabled){background:var(--primary);color:#fff;box-shadow:0 4px 14px var(--primary-glow)}.aura-btn-glow{flex:1;background:linear-gradient(135deg,var(--primary),#7c3aed);border-color:transparent;color:#fff;font-weight:700;font-family:var(--font-display);box-shadow:0 3px 12px var(--primary-glow)}.aura-btn-glow:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 20px var(--primary-glow);filter:brightness(1.07)}.aura-input-area{flex-shrink:0;padding:10px 12px 12px;border-top:1px solid var(--border-subtle);background:var(--bg-panel);display:flex;flex-direction:column;gap:7px}.aura-key-warning{display:flex;align-items:center;gap:6px;font-size:11.5px;color:var(--warning);background:#eab30814;border:1px solid rgba(234,179,8,.22);border-radius:var(--r-sm);padding:6px 10px}.aura-key-warning code{font-family:var(--font-mono);font-size:10.5px;background:#eab30826;padding:1px 4px;border-radius:3px}.aura-input-shell{display:flex;align-items:flex-end;gap:7px;background:var(--bg-input);border:1px solid var(--border-mid);border-radius:var(--r-md);padding:8px 8px 8px 13px;transition:border-color var(--ease-fast),box-shadow var(--ease-fast)}.aura-input-shell:focus-within{border-color:var(--primary-border);box-shadow:0 0 0 3px var(--primary-soft)}.aura-input{flex:1;background:none;border:none;outline:none;color:var(--text-900);font-family:var(--font-body);font-size:13px;line-height:1.55;resize:none;min-height:20px;max-height:120px;padding:2px 0;caret-color:var(--primary)}.aura-input::placeholder{color:var(--text-500)}.aura-input:disabled{opacity:.5;cursor:not-allowed}.aura-input-actions{display:flex;align-items:center;gap:4px;flex-shrink:0;padding-bottom:1px}.aura-icon-btn{width:30px;height:30px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-subtle);border-radius:var(--r-sm);background:transparent;color:var(--text-500);cursor:pointer;transition:all var(--ease-fast);flex-shrink:0}.aura-icon-btn:hover{background:var(--bg-hover);color:var(--text-900);border-color:var(--border-mid)}.aura-icon-btn--active{color:var(--danger);border-color:#ef444466;background:#ef44441a;animation:aura-record-pulse 1.3s ease infinite}@keyframes aura-record-pulse{0%,to{box-shadow:0 0 #ef444400}50%{box-shadow:0 0 0 4px #ef444426}}.aura-icon-btn--danger:hover{color:var(--danger);border-color:#ef444459;background:#ef44441a}.aura-send-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--r-sm);background:linear-gradient(135deg,var(--primary),#7c3aed);border:none;color:#fff;cursor:pointer;transition:all var(--ease-fast);flex-shrink:0;box-shadow:0 3px 10px var(--primary-glow)}.aura-send-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 18px var(--primary-glow);filter:brightness(1.08)}.aura-send-btn:active:not(:disabled){transform:translateY(0) scale(.95)}.aura-send-btn:disabled{background:var(--bg-hover);color:var(--text-500);cursor:not-allowed;box-shadow:none}.aura-input-hint{font-size:10px;color:var(--text-500);text-align:right;letter-spacing:.02em;padding-right:2px;opacity:.7}.aura-spin{animation:aura-rotate .75s linear infinite}@keyframes aura-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}body[data-theme=light] .aura-bubble--assistant{background:var(--bg-node);border-color:var(--border-mid);box-shadow:var(--shadow-sm)}body[data-theme=light] .aura-input-shell{background:#ffffffb3;border-color:var(--border-mid)}body[data-theme=light] .aura-task-editor{background:#ffffffd9}.right-panel-body .aura-chat{flex:1;border:none;border-radius:0;box-shadow:none}.ai-chat-container{display:flex;flex-direction:column;height:100%;background:var(--bg-panel);overflow:hidden}.ai-chat-container.embedded{border-radius:0;border:none;margin:0;box-shadow:none}.ai-chat-header{flex-shrink:0;display:flex;align-items:center;gap:8px;padding:12px 16px;background:var(--bg-panel);border-bottom:1px solid var(--border-subtle);color:var(--primary);font-family:var(--font-display);font-size:13px;font-weight:700}.ai-chat-header-title{flex:1;letter-spacing:.04em}.ai-chat-header-user{font-size:11px;color:var(--text-500);font-family:var(--font-body);font-weight:400}.ai-chat-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:14px;scrollbar-width:thin;scrollbar-color:var(--primary-soft) transparent;overscroll-behavior:contain}.ai-chat-messages::-webkit-scrollbar{width:4px}.ai-chat-messages::-webkit-scrollbar-thumb{background:var(--primary-soft);border-radius:4px}.chat-msg-row{display:flex;gap:10px;align-items:flex-start;animation:msg-in .2s ease}@keyframes msg-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.chat-msg-row.user{flex-direction:row-reverse}.chat-avatar{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px}.chat-avatar.assistant{background:var(--primary-soft);border:1px solid var(--primary-border);color:var(--primary)}.chat-avatar.user{background:var(--bg-hover);border:1px solid var(--border-mid);color:var(--text-500)}.chat-bubble{max-width:78%;padding:10px 14px;border-radius:14px;font-size:13px;line-height:1.6;font-family:var(--font-body);word-break:break-word}.chat-bubble.assistant{background:var(--bg-hover);color:var(--text-900);border:1px solid var(--border-subtle);border-top-left-radius:4px}.chat-bubble.user{background:var(--primary);color:#fff;border-top-right-radius:4px}.chat-bubble.graph-ok{background:#22c55e1a;border:1px solid rgba(34,197,94,.3);color:#4ade80}.chat-bubble.streaming:after{content:"▍";animation:cursor-blink .7s steps(1) infinite;color:var(--primary);margin-left:2px}@keyframes cursor-blink{0%,to{opacity:1}50%{opacity:0}}.chat-bubble code{background:#6366f126;padding:1px 5px;border-radius:4px;font-family:var(--font-mono);font-size:11.5px}.task-list-wrap{padding-left:38px}.task-list-view{border:1px solid var(--primary-border);border-radius:var(--r-md);background:var(--primary-soft);overflow:hidden}.task-list-header{display:flex;align-items:center;justify-content:space-between;padding:9px 14px;cursor:pointer;-webkit-user-select:none;user-select:none;font-size:12px;font-weight:700;color:var(--primary);font-family:var(--font-display);letter-spacing:.04em}.task-list-title{display:flex;align-items:center;gap:6px}.task-list-content{padding:10px 14px;font-size:12px;line-height:1.7;color:var(--text-700);font-family:var(--font-body);white-space:pre-wrap;border-top:1px solid var(--border-subtle);max-height:180px;overflow-y:auto}.task-list-editor{width:100%;min-height:120px;background:var(--bg-input);border:none;border-top:1px solid var(--border-subtle);padding:10px 14px;color:var(--text-900);font-size:12px;font-family:var(--font-mono);resize:vertical;outline:none}.task-list-actions{display:flex;gap:8px;padding:10px 14px;border-top:1px solid var(--border-subtle)}.tl-btn{flex:1;height:32px;border-radius:var(--r-sm);border:1px solid var(--border-mid);background:var(--bg-hover);color:var(--text-700);font-size:12px;font-family:var(--font-body);font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:5px;transition:all var(--ease-fast)}.tl-btn:hover:not(:disabled){background:var(--bg-node);color:var(--text-900)}.tl-btn.tl-btn-primary{background:var(--primary);border-color:var(--primary);color:#fff}.tl-btn.tl-btn-primary:hover:not(:disabled){background:var(--primary-dim);transform:translateY(-1px);box-shadow:0 4px 14px var(--primary-glow)}.tl-btn:disabled{opacity:.5;cursor:not-allowed}.ai-chat-input-area{flex-shrink:0;padding:12px;border-top:1px solid var(--border-subtle);background:var(--bg-panel)}.ai-chat-input-row{display:flex;gap:8px;align-items:flex-end}.ai-chat-input{flex:1;background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--r-md);padding:10px 12px;color:var(--text-900);font-size:13px;font-family:var(--font-body);resize:none;outline:none;line-height:1.5;transition:border-color var(--ease-fast),box-shadow var(--ease-fast);min-height:44px;max-height:120px}.ai-chat-input:focus{border-color:var(--primary-border);box-shadow:0 0 0 3px var(--primary-soft)}.ai-chat-input:disabled{opacity:.6;cursor:not-allowed}.ai-chat-input-btns{display:flex;flex-direction:column;gap:6px}.chat-icon-btn{width:34px;height:34px;border-radius:var(--r-sm);border:1px solid var(--border-mid);background:var(--bg-hover);color:var(--text-500);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--ease-fast)}.chat-icon-btn:hover{background:var(--bg-node);color:var(--text-900);border-color:var(--border-strong)}.chat-icon-btn.recording{background:#ef444426;border-color:#ef444480;color:var(--danger);animation:pulse-record 1.2s ease infinite}.chat-icon-btn.danger:hover{background:#ef444426;border-color:#ef444466;color:var(--danger)}.chat-send-btn{width:34px;height:34px;border-radius:var(--r-sm);border:none;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--ease-fast);flex-shrink:0}.chat-send-btn:hover:not(:disabled){background:var(--primary-dim);transform:translateY(-2px);box-shadow:0 6px 18px var(--primary-glow)}.chat-send-btn:disabled{background:var(--bg-hover);color:var(--text-500);cursor:not-allowed}.chat-no-key-warning{margin-top:8px;font-size:11px;color:var(--warning);text-align:center;opacity:.8}.spin-icon{animation:spin .7s linear infinite}@keyframes pulse-record{0%,to{opacity:1}50%{opacity:.6}}:root{--primary: #6366f1;--primary-dim: #4f46e5;--primary-soft: rgba(99, 102, 241, .14);--primary-glow: rgba(129, 140, 248, .42);--primary-border: rgba(99, 102, 241, .6);--success: #22c55e;--warning: #eab308;--danger: #ef4444;--r-xs: 6px;--r-sm: 10px;--r-md: 14px;--r-lg: 20px;--r-xl: 28px;--r-2xl: 44px;--ease: .45s cubic-bezier(.16, 1, .3, 1);--ease-fast: .18s cubic-bezier(.16, 1, .3, 1);--node-emerald: #10b981;--node-violet: #7c3aed;--node-blue: #3b82f6;--node-amber: #f59e0b;--node-cyan: #06b6d4;--node-orange: #f97316;--node-indigo: #6366f1;--node-rose: #f43f5e;--font-display: "Syne", system-ui, sans-serif;--font-body: "Figtree", system-ui, sans-serif;--font-mono: "JetBrains Mono", monospace}:root,body[data-theme=dark]{--bg-app: #070709;--bg-panel: #0f0f14;--bg-node: #111118;--bg-input: #1a1a24;--bg-hover: #1f1f2c;--bg-canvas: #070709;--text-900: #eeeef5;--text-700: #b8b8cc;--text-500: #686880;--text-400: #686880;--text-300: #252536;--border-subtle: rgba(255, 255, 255, .06);--border-mid: rgba(255, 255, 255, .1);--border-strong: rgba(255, 255, 255, .18);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .5);--shadow-md: 0 8px 30px rgba(0, 0, 0, .7);--shadow-lg: 0 20px 70px rgba(0, 0, 0, .85);--grid-dot: rgba(129, 140, 248, .28);--grid-line: rgba(79, 70, 229, .08);--grid-size: 28px}body[data-theme=light]{--bg-app: #f0ebe0;--bg-panel: #faf6ee;--bg-node: #fffdf8;--bg-input: #ede8dc;--bg-hover: #e8e2d5;--bg-canvas: #e8e2d5;--text-900: #1a1510;--text-700: #3c3020;--text-500: #86756a;--text-400: #a89080;--text-300: #c8bfb0;--border-subtle: rgba(100, 75, 40, .1);--border-mid: rgba(100, 75, 40, .18);--border-strong: rgba(100, 75, 40, .32);--shadow-sm: 0 1px 3px rgba(80, 55, 20, .06), 0 4px 14px rgba(80, 55, 20, .05);--shadow-md: 0 4px 20px rgba(80, 55, 20, .1), 0 12px 40px rgba(80, 55, 20, .07);--shadow-lg: 0 10px 50px rgba(80, 55, 20, .14), 0 28px 80px rgba(80, 55, 20, .09);--primary: #b45309;--primary-dim: #92400e;--primary-soft: rgba(180, 83, 9, .1);--primary-glow: rgba(180, 83, 9, .22);--primary-border: rgba(180, 83, 9, .45);--grid-dot: rgba(100, 75, 40, .28);--grid-line: rgba(100, 75, 40, .08);--grid-size: 28px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;height:100dvh;width:100%;overflow:hidden;background:var(--bg-app);color:var(--text-900);font-family:var(--font-body);font-size:15px;-webkit-font-smoothing:antialiased;transition:background var(--ease),color var(--ease)}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:700;line-height:1.2;color:var(--text-900)}p,li,span,label,td,th{font-family:var(--font-body)}code,pre,kbd,samp,.font-mono,.node-info-badge{font-family:var(--font-mono)}input,textarea,select,button{font-family:var(--font-body)}.stat-value,.credit-num,.price-amount,.node-stat,.header-stat-chip,.pricing-price-amount{font-family:var(--font-display)}.app-container{display:flex;height:100vh;height:100dvh;width:100vw;overflow:hidden;position:relative}.main-content{flex:1;display:flex;flex-direction:column;height:100%;overflow:hidden;min-width:0}.canvas-wrapper{flex:1;position:relative;background:var(--bg-canvas);overflow:hidden;height:100%;transition:background var(--ease)}.canvas-wrapper:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background-image:radial-gradient(circle,var(--grid-dot) 1px,transparent 1px);background-size:var(--grid-size) var(--grid-size)}.canvas-wrapper:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background-image:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px);background-size:calc(var(--grid-size) * 4) calc(var(--grid-size) * 4)}.canvas-bg-orbs{position:absolute;top:-20%;right:-20%;bottom:-20%;left:-20%;z-index:0;pointer-events:none;background:radial-gradient(ellipse 60% 50% at 15% 20%,rgba(217,119,6,.07) 0%,transparent 60%),radial-gradient(ellipse 50% 40% at 85% 80%,rgba(99,102,241,.04) 0%,transparent 60%);filter:blur(60px);animation:orb-drift 60s infinite linear}body[data-theme=light] .canvas-bg-orbs{background:radial-gradient(ellipse 70% 60% at 10% 20%,rgba(180,83,9,.06) 0%,transparent 60%),radial-gradient(ellipse 50% 40% at 85% 80%,rgba(120,90,50,.04) 0%,transparent 60%);filter:blur(80px)}@keyframes orb-drift{0%{transform:rotate(0) scale(1)}50%{transform:rotate(180deg) scale(1.06)}to{transform:rotate(360deg) scale(1)}}.react-flow{position:relative;z-index:1}.react-flow__background,.react-flow__controls{display:none!important}.sidebar-container{width:clamp(250px,18vw,340px);background:var(--bg-panel);border-right:1px solid var(--border-subtle);display:flex;flex-direction:column;z-index:200;height:100%;flex-shrink:0;transition:transform var(--ease)}body[data-theme=light] .sidebar-container{border-right-color:var(--border-mid);box-shadow:2px 0 30px #50371414}.toolbar{height:100%;display:flex;flex-direction:column;overflow:hidden;background:var(--bg-panel)}.toolbar-header{padding:24px 20px 16px;display:flex;flex-direction:column;gap:12px;flex-shrink:0}.toolbar-actions{display:flex;gap:4px;flex-wrap:wrap;border-top:1px solid var(--border-subtle);padding-top:12px}.toolbar-action-btn{flex:1;min-width:40px;display:flex;align-items:center;justify-content:center;gap:5px;padding:7px 4px;border-radius:8px;border:1px solid var(--border-subtle);background:var(--bg-node);color:var(--text-500);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;transition:all var(--ease-fast)}.toolbar-action-btn:hover{background:var(--primary-soft);color:var(--primary);border-color:var(--primary-border);transform:translateY(-1px)}.toolbar-action-btn span{display:inline}@media (max-width: 1280px){.toolbar-action-btn span{display:none}}body[data-theme=light] .toolbar-header{border-bottom-color:var(--border-mid)}.toolbar-brand-logo{font-family:var(--font-display);font-size:clamp(19px,1.5vw,24px);font-weight:800;letter-spacing:-.04em;color:var(--text-900);line-height:1}.toolbar-brand-logo span{color:var(--primary);text-shadow:0 0 24px var(--primary-glow)}.toolbar-section{flex:1;padding:0 14px 30px;overflow-y:auto;background:var(--bg-panel);scrollbar-width:thin;scrollbar-color:var(--border-mid) transparent}.toolbar-section::-webkit-scrollbar{width:4px}.toolbar-section::-webkit-scrollbar-thumb{background:var(--border-mid);border-radius:4px}.toolbar-section-title{font-family:var(--font-display);font-size:10px;font-weight:700;color:var(--text-500);text-transform:uppercase;letter-spacing:.22em;margin-top:24px;margin-bottom:10px;display:flex;align-items:center;gap:10px}.toolbar-section-title:after{content:"";flex:1;height:1px;background:linear-gradient(to right,var(--border-mid),transparent)}.toolbar-nodes{display:flex;flex-direction:column;gap:4px}.toolbar-credit{padding:12px 20px;font-size:10px;color:var(--text-500);border-top:1px solid var(--border-subtle);flex-shrink:0;letter-spacing:.02em}.toolbar-credit a{color:var(--text-500);text-decoration:none;font-weight:600;transition:color var(--ease-fast)}.toolbar-credit a:hover{color:var(--primary)}.draggable-node{display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:var(--r-md);background:transparent;color:var(--text-700);font-size:13.5px;font-weight:600;cursor:grab;transition:all var(--ease-fast);border:1px solid transparent;-webkit-user-select:none;user-select:none}.draggable-node:hover{background:var(--primary-soft);color:var(--primary);transform:translate(5px);border-color:var(--primary-border)}.draggable-node:active{cursor:grabbing;transform:scale(.97)}.draggable-node-icon{width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:var(--bg-input);color:var(--primary);flex-shrink:0;transition:all var(--ease-fast)}.draggable-node:hover .draggable-node-icon{background:var(--primary);color:#fff;box-shadow:0 4px 16px var(--primary-glow)}.draggable-node-label{font-weight:600;font-size:13px;color:var(--text-900);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.draggable-node-tap-badge{display:none;font-size:9px;font-weight:800;color:var(--primary);background:var(--primary-soft);border:1px solid var(--primary-border);border-radius:4px;padding:2px 6px;text-transform:uppercase;letter-spacing:.05em;flex-shrink:0}.pipeline-node{display:flex;flex-direction:column;background:var(--bg-node);border:1px solid var(--border-subtle);border-radius:var(--r-lg);min-width:clamp(200px,16vw,270px);overflow:visible;transition:box-shadow var(--ease),border-color var(--ease-fast),transform var(--ease-fast)}body[data-theme=dark] .pipeline-node{box-shadow:var(--shadow-sm),inset 0 1px #ffffff09}body[data-theme=light] .pipeline-node{border-color:var(--border-mid);box-shadow:var(--shadow-md);background:var(--bg-node)}.pipeline-node:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.pipeline-node.selected{border-color:var(--primary-border);box-shadow:0 0 0 2px var(--primary-soft),0 0 28px var(--primary-glow),var(--shadow-lg)}.pipeline-node-header{padding:13px 18px;display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--border-subtle)}body[data-theme=light] .pipeline-node-header{border-bottom-color:var(--border-mid);background:#fff8eb99;border-radius:var(--r-lg) var(--r-lg) 0 0}.pipeline-node-icon{color:var(--primary)}.pipeline-node-title{font-family:var(--font-display);font-weight:700;font-size:12.5px;letter-spacing:.02em;color:var(--text-900);flex:1}.node-delete-btn{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:6px;border:none;background:transparent;color:var(--text-500);cursor:pointer;transition:all var(--ease-fast);opacity:0}.pipeline-node:hover .node-delete-btn,.pipeline-node.selected .node-delete-btn{opacity:1}.node-delete-btn:hover{background:#ef44441a;color:var(--danger);transform:scale(1.1)}.pipeline-node-body{flex:1;padding:14px 18px;display:flex;flex-direction:column;gap:12px}.node-field{display:flex;flex-direction:column;gap:5px}.node-field-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--text-500)}.node-input-row{display:flex;gap:6px;align-items:stretch}.node-input-row .node-field-input{flex:1;min-width:0}.node-field-input,.node-field-textarea{width:100%;background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--r-sm);padding:9px 12px;color:var(--text-900);font-size:12px;font-family:var(--font-body);outline:none;transition:all var(--ease-fast)}body[data-theme=light] .node-field-input,body[data-theme=light] .node-field-textarea{background:#ffffffa6;border-color:var(--border-mid)}.node-field-input:focus,.node-field-textarea:focus{border-color:var(--primary-border);box-shadow:0 0 0 3px var(--primary-soft);background:var(--bg-hover)}body[data-theme=light] .node-field-input:focus,body[data-theme=light] .node-field-textarea:focus{background:#fffffff2}.node-field-textarea{min-height:68px;resize:none;font-family:var(--font-mono);font-size:11px;line-height:1.6}.node-field-input::placeholder,.node-field-textarea::placeholder{color:var(--text-400)}.node-info{font-size:11px;color:var(--text-500);line-height:1.5}.custom-select-wrapper{position:relative;width:100%;-webkit-user-select:none;user-select:none}.custom-select-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 12px;background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--r-sm);color:var(--text-900);font-size:12px;font-family:var(--font-body);font-weight:500;cursor:pointer;transition:all var(--ease-fast);outline:none}body[data-theme=light] .custom-select-trigger{background:#ffffffa6;border-color:var(--border-mid)}.custom-select-trigger:hover{border-color:var(--border-strong);background:var(--bg-hover)}.custom-select-trigger.open{border-color:var(--primary-border);box-shadow:0 0 0 3px var(--primary-soft);border-bottom-left-radius:0;border-bottom-right-radius:0}.custom-select-trigger-text{flex:1;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.custom-select-chevron{color:var(--text-500);transition:transform var(--ease-fast);flex-shrink:0}.custom-select-trigger.open .custom-select-chevron{transform:rotate(180deg);color:var(--primary)}.custom-select-dropdown{position:absolute;left:0;right:0;top:100%;z-index:9999;background:var(--bg-panel);border:1px solid var(--primary-border);border-top:none;border-bottom-left-radius:var(--r-sm);border-bottom-right-radius:var(--r-sm);box-shadow:var(--shadow-md);overflow:hidden;animation:dropdown-open .15s cubic-bezier(.16,1,.3,1)}body[data-theme=light] .custom-select-dropdown{background:#fffdf8fc}@keyframes dropdown-open{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.custom-select-option{display:flex;align-items:center;justify-content:space-between;padding:9px 12px;font-size:12px;font-family:var(--font-body);font-weight:500;color:var(--text-700);cursor:pointer;transition:background var(--ease-fast),color var(--ease-fast);border-left:2px solid transparent}.custom-select-option:hover{background:var(--primary-soft);color:var(--primary);border-left-color:var(--primary)}.custom-select-option.selected{background:var(--primary-soft);color:var(--primary);font-weight:700;border-left-color:var(--primary)}.voice-btn{display:flex;align-items:center;justify-content:center;width:32px;flex-shrink:0;align-self:stretch;border-radius:var(--r-sm);border:1px solid var(--border-subtle);background:var(--bg-input);color:var(--text-500);cursor:pointer;transition:all var(--ease-fast);position:relative;overflow:hidden}body[data-theme=light] .voice-btn{background:#ffffffa6;border-color:var(--border-mid)}.voice-btn:hover{background:var(--primary-soft);color:var(--primary);border-color:var(--primary-border)}.voice-btn.recording{background:#ef44441a;color:var(--danger);border-color:#ef444466;animation:pulse-record 1s ease-in-out infinite}@keyframes pulse-record{0%,to{box-shadow:0 0 #ef444466}50%{box-shadow:0 0 0 6px #ef444400}}.voice-btn.recording:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle,rgba(239,68,68,.15) 0%,transparent 70%);animation:voice-ripple 1s ease-in-out infinite}@keyframes voice-ripple{0%{transform:scale(.8);opacity:1}to{transform:scale(2.5);opacity:0}}.node-textarea-row{position:relative}.voice-btn-float{position:absolute;bottom:8px;right:8px;width:26px;height:26px;border-radius:8px;border:1px solid var(--border-subtle);background:var(--bg-input);color:var(--text-500);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--ease-fast);z-index:2}body[data-theme=light] .voice-btn-float{background:#fffc;border-color:var(--border-mid);box-shadow:var(--shadow-sm)}.voice-btn-float:hover{background:var(--primary-soft);color:var(--primary);border-color:var(--primary-border)}.voice-btn-float.recording{background:#ef44441a;color:var(--danger);border-color:#ef444466;animation:pulse-record 1s ease-in-out infinite}.node-textarea-row .node-field-textarea{padding-bottom:34px}.handles-layer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:visible}.handle-label{position:absolute;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--text-500);white-space:nowrap;pointer-events:none;background:var(--bg-node);padding:2px 6px;border-radius:4px;border:1px solid var(--border-subtle);box-shadow:var(--shadow-sm);z-index:10}.handle-label-left{right:calc(100% + 10px);transform:translateY(-50%);text-align:right}.handle-label-right{left:calc(100% + 10px);transform:translateY(-50%)}.handle-label-top{bottom:calc(100% + 10px);transform:translate(-50%)}.handle-label-bottom{top:calc(100% + 10px);transform:translate(-50%)}body[data-theme=light] .handle-label{background:var(--bg-panel);border-color:var(--border-mid);box-shadow:0 2px 8px #5037140d}.react-flow__handle{width:12px!important;height:12px!important;background:var(--bg-app)!important;border:2.5px solid var(--primary)!important;box-shadow:0 0 8px var(--primary-glow);transition:transform var(--ease-fast),box-shadow var(--ease-fast)}body[data-theme=light] .react-flow__handle{background:#fff!important}.react-flow__handle:hover{transform:scale(1.5);box-shadow:0 0 16px var(--primary-glow)}.react-flow__edge-path{stroke:var(--text-300)!important;stroke-width:2.5!important}body[data-theme=light] .react-flow__edge-path{stroke:var(--border-strong)!important}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge:hover .react-flow__edge-path{stroke:var(--primary)!important;filter:drop-shadow(0 0 5px var(--primary-glow))}.react-flow__node-resizer .react-flow__node-resizer-handle{width:8px;height:8px;background:var(--primary);border:2px solid var(--bg-app);border-radius:50%}.react-flow__node-resizer .react-flow__node-resizer-line{border-color:var(--primary-soft)}.theme-toggle{position:absolute;top:clamp(14px,2vw,28px);right:clamp(14px,2vw,28px);z-index:300;background:var(--bg-panel);padding:5px;border-radius:100px;border:1px solid var(--border-mid);display:flex;gap:4px;box-shadow:var(--shadow-sm)}.theme-btn{display:flex;align-items:center;gap:5px;padding:7px 16px;border-radius:100px;border:none;background:transparent;color:var(--text-500);font-size:12px;font-weight:700;font-family:var(--font-body);cursor:pointer;transition:all var(--ease-fast);white-space:nowrap}.theme-btn:hover{color:var(--text-900)}.theme-btn.active{background:var(--primary);color:#fff;box-shadow:0 3px 12px var(--primary-glow)}.bottom-bar{position:absolute;bottom:clamp(16px,3vh,40px);left:50%;transform:translate(-50%);z-index:300;display:flex;align-items:center;padding:6px 7px;background:var(--bg-panel);border:1px solid var(--border-mid);border-radius:100px;box-shadow:var(--shadow-lg);white-space:nowrap;gap:0}.bottom-bar-group{display:flex;align-items:center;gap:2px;padding:0 8px;border-right:1px solid var(--border-subtle)}.bottom-bar-group:last-child{border-right:none;padding-right:2px}.bottom-bar-group:first-child{padding-left:2px}.bottom-bar-btn{width:clamp(34px,3vw,40px);height:clamp(34px,3vw,40px);display:flex;align-items:center;justify-content:center;border-radius:100px;border:none;background:transparent;color:var(--text-500);cursor:pointer;transition:all var(--ease-fast)}.bottom-bar-btn:hover:not(:disabled){background:var(--primary-soft);color:var(--primary);transform:translateY(-2px)}.bottom-bar-btn:disabled{opacity:.28;cursor:not-allowed}.bottom-bar-btn:active:not(:disabled){transform:scale(.9)}.submit-btn-premium{display:flex;align-items:center;gap:clamp(6px,.7vw,10px);padding:0 clamp(16px,1.8vw,26px);height:clamp(36px,3vw,44px);background:linear-gradient(135deg,var(--primary) 0%,#ea580c 100%);color:#fff;border:none;border-radius:100px;font-family:var(--font-display);font-weight:700;font-size:clamp(11px,.8vw,13px);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:all var(--ease);box-shadow:0 4px 18px var(--primary-glow),inset 0 1px #fff3;position:relative;overflow:hidden}.submit-btn-premium:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,rgba(255,255,255,.12) 0%,transparent 60%);pointer-events:none}.submit-btn-premium:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 28px var(--primary-glow);filter:brightness(1.08)}.submit-btn-premium:active:not(:disabled){transform:scale(.97)}.submit-btn-premium:disabled{opacity:.65;cursor:not-allowed}.animate-spin{animation:spin .7s linear infinite}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;background:#00000080;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;padding:20px;animation:fade-in .2s ease}.modal-card{width:90vw;max-width:480px;background:var(--bg-panel);border:1px solid var(--border-mid);border-radius:var(--r-xl);padding:clamp(22px,3vw,36px);box-shadow:var(--shadow-lg);animation:slide-up .28s cubic-bezier(.16,1,.3,1)}body[data-theme=light] .modal-card{background:var(--bg-node);border-color:var(--border-mid)}.modal-header{display:flex;align-items:center;gap:12px;margin-bottom:20px}.modal-header-icon{color:var(--primary)}.modal-header-title{font-family:var(--font-display);font-size:clamp(16px,1.3vw,19px);font-weight:800;letter-spacing:-.02em;color:var(--text-900);flex:1}.modal-close-x{width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:8px;border:1px solid var(--border-subtle);background:transparent;color:var(--text-500);cursor:pointer;transition:all var(--ease-fast)}.modal-close-x:hover{background:#ef44441a;color:var(--danger);border-color:#ef44444d}.modal-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-bottom:28px}.modal-stat{padding:14px;background:var(--bg-input);border-radius:var(--r-md);display:flex;flex-direction:column;gap:5px;border:1px solid var(--border-subtle)}body[data-theme=light] .modal-stat{background:#ffffffb3;border-color:var(--border-mid)}.modal-stat-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--text-500)}.modal-stat-value{font-family:var(--font-display);font-size:24px;font-weight:800;color:var(--text-900);line-height:1}.modal-badge{padding:5px 12px;border-radius:100px;font-size:12px;font-weight:700}.modal-badge-success{background:#22c55e1f;color:#22c55e}.modal-badge-warning{background:#eab3081f;color:#eab308}.modal-close-btn{width:100%;padding:13px;background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:100px;color:var(--text-900);font-family:var(--font-body);font-weight:700;font-size:13px;cursor:pointer;transition:all var(--ease-fast)}.modal-close-btn:hover{background:var(--text-900);color:var(--bg-app);border-color:transparent}.modal-input{width:100%;background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--r-sm);padding:10px 14px;color:var(--text-900);font-size:13px;font-family:var(--font-body);outline:none;transition:all var(--ease-fast);margin-bottom:12px}.modal-input:focus{border-color:var(--primary-border);box-shadow:0 0 0 3px var(--primary-soft)}body[data-theme=light] .modal-input{background:#ffffffb3;border-color:var(--border-mid)}.modal-btn-row{display:flex;gap:8px;margin-bottom:16px}.modal-btn{flex:1;padding:10px;border-radius:10px;border:1px solid var(--border-subtle);background:var(--bg-input);color:var(--text-700);font-size:12px;font-weight:700;cursor:pointer;transition:all var(--ease-fast);font-family:var(--font-body)}.modal-btn:hover{background:var(--primary-soft);color:var(--primary);border-color:var(--primary-border)}.modal-btn-primary{background:var(--primary);color:#fff;border-color:var(--primary)}.modal-btn-primary:hover{background:var(--primary-dim);color:#fff;border-color:var(--primary-dim)}.modal-btn-danger:hover{background:#ef44441f;color:var(--danger);border-color:#ef444466}.wf-list{display:flex;flex-direction:column;gap:6px;max-height:300px;overflow-y:auto;margin-bottom:12px;scrollbar-width:thin;scrollbar-color:var(--border-mid) transparent}.wf-list-empty{text-align:center;padding:32px 16px;color:var(--text-500);font-size:13px}.wf-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;border:1px solid var(--border-subtle);background:var(--bg-input);transition:all var(--ease-fast)}body[data-theme=light] .wf-item{background:#ffffff80;border-color:var(--border-mid)}.wf-item:hover{border-color:var(--primary-border);background:var(--primary-soft)}.wf-item-info{flex:1;min-width:0}.wf-item-name{font-weight:700;font-size:13px;color:var(--text-900);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wf-item-meta{font-size:10px;color:var(--text-500);margin-top:2px}.wf-item-open{padding:5px 12px;border-radius:6px;border:1px solid var(--border-subtle);background:var(--bg-node);color:var(--text-700);font-size:11px;font-weight:700;cursor:pointer;transition:all var(--ease-fast)}.wf-item-open:hover{background:var(--primary);color:#fff;border-color:var(--primary)}.wf-item-del{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:6px;border:1px solid transparent;background:transparent;color:var(--text-400);cursor:pointer;transition:all var(--ease-fast)}.wf-item-del:hover{background:#ef44441a;color:var(--danger);border-color:#ef44444d}.modal-divider{height:1px;background:var(--border-subtle);margin:16px 0}@keyframes slide-up{0%{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.mobile-toggle-btn{display:none!important}.sidebar-backdrop{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:490;background:#00000073;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:fade-in .25s ease}@media (min-width: 2560px){:root{font-size:19px;--grid-size: 40px}.sidebar-container{width:400px}.toolbar-brand-logo{font-size:30px}.submit-btn-premium{height:54px;padding:0 38px;font-size:15px}.theme-btn{padding:10px 22px;font-size:14px}}@media (min-width: 1920px) and (max-width: 2559px){.sidebar-container{width:310px}}@media (min-width: 1024px) and (max-width: 1279px){.sidebar-container{width:235px}.toolbar-brand-logo{font-size:18px}.toolbar-header{padding:22px 14px 16px}}@media (min-width: 768px) and (max-width: 1023px){.sidebar-container{width:210px}.toolbar-brand-logo{font-size:16px}.toolbar-header{padding:18px 12px 14px}.draggable-node{padding:9px 10px;gap:8px}.draggable-node-icon{width:28px;height:28px;border-radius:8px}.draggable-node-label{font-size:12px}.bottom-bar{bottom:14px}.theme-toggle{right:14px;top:14px}.theme-btn{padding:6px 12px;font-size:11px}}@media (max-width: 767px){.sidebar-container{position:fixed;left:0;top:0;bottom:0;width:min(82vw,290px);transform:translate(-110%);z-index:800;background:var(--bg-panel)!important;box-shadow:none;transition:transform var(--ease),box-shadow var(--ease);overflow-y:auto}.sidebar-container.open{transform:translate(0);box-shadow:6px 0 50px #00000080}body[data-theme=light] .sidebar-container.open{box-shadow:6px 0 40px #50371440}.toolbar,.toolbar-header,.toolbar-section{background:var(--bg-panel)!important}.sidebar-backdrop.visible{display:block}.mobile-toggle-btn{display:flex!important;position:fixed;top:14px;left:14px;z-index:700;width:42px;height:42px;align-items:center;justify-content:center;background:var(--bg-panel);border:1px solid var(--border-mid);border-radius:50%;color:var(--text-900);cursor:pointer;box-shadow:var(--shadow-md);transition:all var(--ease-fast)}.mobile-toggle-btn:hover{background:var(--primary-soft);color:var(--primary);border-color:var(--primary-border)}html,body,#root{font-size:14px}:root{--grid-size: 22px}.toolbar-brand-logo{font-size:20px}.toolbar-header{padding:60px 18px 18px}.toolbar-section{padding:0 14px 28px}.draggable-node{padding:12px 14px;gap:12px;border-radius:12px;cursor:pointer}.draggable-node:active{cursor:pointer;transform:scale(.96)}.draggable-node-icon{width:36px;height:36px;border-radius:10px}.draggable-node-label{font-size:14px}.draggable-node-tap-badge{display:block}.bottom-bar{bottom:14px;padding:5px;max-width:calc(100vw - 24px)}.bottom-bar-group{padding:0 5px;gap:0}.bottom-bar-btn{width:36px;height:36px}.submit-btn-premium{height:38px;padding:0 14px;font-size:11px;gap:6px}.theme-toggle{top:14px;right:14px;padding:4px}.theme-btn{padding:6px 11px;font-size:11px;gap:4px}.pipeline-node{min-width:170px;border-radius:14px}.pipeline-node-header{padding:10px 14px}.pipeline-node-title{font-size:11px}.pipeline-node-body{padding:10px 14px;gap:10px}.modal-card{border-radius:20px;padding:20px}.modal-stats{grid-template-columns:1fr;gap:10px}.modal-stat-value{font-size:20px}}@media (max-width: 380px){.submit-btn-premium span,.theme-btn span{display:none}.theme-btn{padding:8px 10px}}.edge-delete-btn{width:18px;height:18px;border-radius:50%;background:var(--danger);color:#fff;border:2px solid var(--bg-app);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--shadow-sm);transition:transform var(--ease-fast)}.edge-delete-btn:hover{transform:scale(1.2)}.handle-delete-btn{position:absolute;width:14px;height:14px;border-radius:50%;background:var(--danger);color:#fff;border:1.5px solid var(--bg-app);display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:20;padding:0;pointer-events:auto;transition:transform var(--ease-fast)}.handle-delete-btn:hover{transform:scale(1.2)}.pipeline-node-footer{padding:4px 8px 8px;flex-shrink:0}.add-handle-btn{display:flex;align-items:center;justify-content:center;gap:4px;width:100%;padding:5px;background:transparent;border:1px dashed var(--border-mid);border-radius:var(--r-sm);color:var(--text-500);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;cursor:pointer;transition:all var(--ease-fast)}.add-handle-btn:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-soft)}.add-handle-form{display:flex;flex-direction:column;gap:8px;padding:10px;background:var(--bg-input);border:1px solid var(--primary-border);border-radius:var(--r-sm)}.add-handle-form-row{display:flex;gap:6px}.add-handle-direction-btn{flex:1;padding:6px 8px;border-radius:6px;border:1px solid var(--border-subtle);background:var(--bg-node);color:var(--text-700);font-size:11px;font-weight:700;cursor:pointer;transition:all var(--ease-fast)}.add-handle-direction-btn.active{background:var(--primary);color:#fff;border-color:var(--primary)}.edge-label-group{display:flex;align-items:center;gap:4px}.edge-label{padding:2px 8px;background:var(--bg-node);border:1px solid var(--border-mid);border-radius:999px;color:var(--text-700);font-size:10px;font-weight:600;white-space:nowrap;cursor:default;-webkit-user-select:none;user-select:none;box-shadow:var(--shadow-sm)}.edge-label:hover{border-color:var(--primary)}.edge-actions{display:flex;align-items:center;gap:3px}.edge-action-btn{width:18px;height:18px;border-radius:50%;background:var(--bg-node);color:var(--text-500);border:1.5px solid var(--border-mid);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--shadow-sm);transition:all var(--ease-fast)}.edge-action-btn:hover{background:var(--primary);color:#fff;border-color:var(--primary);transform:scale(1.15)}.edge-label-input{padding:3px 8px;background:var(--bg-input);border:1.5px solid var(--primary);border-radius:999px;color:var(--text-900);font-size:11px;font-weight:600;outline:none;width:110px;box-shadow:0 0 0 3px var(--primary-soft)}.app-shell{display:flex;flex-direction:column;height:100vh;height:100dvh;width:100vw;overflow:hidden;background:var(--bg-app)}.app-body{display:flex;flex:1;overflow:hidden;min-height:0}.left-palette{width:220px;flex-shrink:0;background:var(--bg-panel);border-right:1px solid var(--border-subtle);display:flex;flex-direction:column;overflow:hidden;z-index:10}body[data-theme=light] .left-palette{border-right-color:var(--border-mid);box-shadow:2px 0 20px #5037140f}.canvas-area{flex:1;position:relative;overflow:hidden;background:var(--bg-canvas)}.canvas-area--settings{background:var(--bg-app)}.node-palette{display:flex;flex-direction:column;height:100%;overflow:hidden}.node-palette-header{padding:14px 16px 10px;border-bottom:1px solid var(--border-subtle);flex-shrink:0}.node-palette-title{font-family:var(--font-display);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:var(--text-500)}.node-palette-body{flex:1;overflow-y:auto;padding:10px 10px 16px;scrollbar-width:thin;scrollbar-color:var(--primary-soft) transparent}.node-palette-group{margin-bottom:16px}.node-palette-group-label{font-size:9.5px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--text-500);padding:0 4px 6px;position:relative}.node-palette-group-label:after{content:"";position:absolute;bottom:0;left:4px;right:4px;height:1px;background:var(--border-subtle)}.node-palette-nodes{display:flex;flex-direction:column;gap:3px;margin-top:8px}.node-palette-footer{padding:10px 14px;border-top:1px solid var(--border-subtle);font-size:10px;color:var(--text-500);text-align:center;flex-shrink:0}.node-palette-footer a{color:var(--primary);text-decoration:none}.node-palette-footer a:hover{text-decoration:underline}.app-header{height:52px;min-height:52px;display:flex;align-items:center;gap:0;padding:0 16px;background:var(--bg-panel);border-bottom:1px solid var(--border-subtle);z-index:300;flex-shrink:0}body[data-theme=light] .app-header{border-bottom-color:var(--border-mid);box-shadow:0 1px 12px #5037140f}.header-brand{display:flex;align-items:center;gap:8px;min-width:160px;padding-right:16px;border-right:1px solid var(--border-subtle);flex-shrink:0;cursor:pointer;text-decoration:none}.header-logo-mark{width:28px;height:28px;border-radius:8px;background:linear-gradient(135deg,var(--primary),#7c3aed);display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 2px 12px var(--primary-glow)}.header-logo-text{font-family:var(--font-display);font-size:17px;font-weight:800;letter-spacing:-.04em;color:var(--text-900)}.header-logo-text span{color:var(--primary)}.header-badge{font-size:8px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;background:var(--primary-soft);color:var(--primary);border:1px solid var(--primary-border);border-radius:4px;padding:2px 5px;line-height:1}.header-actions{display:flex;align-items:center;gap:2px;flex:1;padding:0 16px;overflow:visible}.header-btn{display:flex;align-items:center;gap:5px;padding:5px 10px;background:transparent;border:none;border-radius:7px;color:var(--text-500);font-family:var(--font-body);font-size:12.5px;font-weight:600;cursor:pointer;white-space:nowrap;transition:background var(--ease-fast),color var(--ease-fast)}.header-btn:hover{background:var(--bg-hover);color:var(--text-900)}.header-btn-primary{background:var(--primary-soft);color:var(--primary);border:1px solid var(--primary-border)}.header-btn-primary:hover{background:var(--primary);color:#fff}.header-divider{width:1px;height:20px;background:var(--border-subtle);margin:0 4px;flex-shrink:0}.header-save-row{display:flex;align-items:center;gap:4px}.header-save-input{padding:5px 10px;background:var(--bg-input);border:1px solid var(--primary-border);border-radius:7px;color:var(--text-900);font-size:12.5px;font-family:var(--font-body);outline:none;width:160px;box-shadow:0 0 0 3px var(--primary-soft)}.header-right{display:flex;align-items:center;gap:8px;flex-shrink:0;padding-left:16px;border-left:1px solid var(--border-subtle)}.header-stats{display:flex;gap:4px}.header-stat-chip{font-size:10.5px;font-weight:700;padding:2px 8px;border-radius:100px;background:var(--bg-input);color:var(--text-500);border:1px solid var(--border-subtle);white-space:nowrap}.header-icon-btn{width:32px;height:32px;border-radius:8px;border:1px solid var(--border-subtle);background:transparent;color:var(--text-500);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--ease-fast)}.header-icon-btn:hover{background:var(--bg-hover);color:var(--text-900);border-color:var(--border-mid)}.header-user-menu{position:relative}.header-user-btn{display:flex;align-items:center;gap:7px;padding:4px 10px 4px 5px;background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:100px;cursor:pointer;color:var(--text-700);font-family:var(--font-body);font-size:12.5px;font-weight:600;transition:all var(--ease-fast)}.header-user-btn:hover{border-color:var(--primary-border);color:var(--text-900)}.header-avatar{width:24px;height:24px;border-radius:50%;object-fit:cover}.header-avatar-fallback{width:24px;height:24px;border-radius:50%;background:linear-gradient(135deg,var(--primary),#7c3aed);color:#fff;font-size:11px;font-weight:800;display:flex;align-items:center;justify-content:center}.header-user-name{max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-premium-crown{color:#f59e0b}.header-dropdown{position:absolute;top:calc(100% + 6px);right:0;min-width:200px;background:var(--bg-panel);border:1px solid var(--border-mid);border-radius:12px;box-shadow:var(--shadow-md);overflow:hidden;z-index:9999;animation:slide-up .18s cubic-bezier(.16,1,.3,1)}.header-dropdown-user{padding:12px 14px 10px}.header-dropdown-email{font-size:11.5px;color:var(--text-500);margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-plan-badge{font-size:9.5px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;padding:2px 8px;border-radius:100px}.header-plan-badge.premium{background:#f59e0b26;color:#f59e0b;border:1px solid rgba(245,158,11,.3)}.header-plan-badge.free{background:var(--bg-input);color:var(--text-500);border:1px solid var(--border-subtle)}.header-dropdown-divider{height:1px;background:var(--border-subtle);margin:2px 0}.header-dropdown-item{width:100%;padding:9px 14px;background:transparent;border:none;color:var(--text-700);font-family:var(--font-body);font-size:13px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:10px;text-align:left;transition:background var(--ease-fast),color var(--ease-fast)}.header-dropdown-item:hover{background:var(--bg-hover);color:var(--text-900)}.header-dropdown-item.danger:hover{background:#ef444414;color:var(--danger)}.right-panel{width:0;flex-shrink:0;background:var(--bg-panel);border-left:1px solid transparent;display:flex;flex-direction:column;overflow:hidden;z-index:20;transition:width .28s cubic-bezier(.16,1,.3,1),border-color .28s}.right-panel.open{width:340px;border-left-color:var(--border-subtle)}body[data-theme=light] .right-panel.open{border-left-color:var(--border-mid);box-shadow:-2px 0 20px #5037140f}.right-panel-header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--border-subtle);flex-shrink:0;background:var(--primary-soft)}.right-panel-title{display:flex;align-items:center;gap:7px;color:var(--primary);font-family:var(--font-display);font-size:12.5px;font-weight:800;letter-spacing:.02em}.right-panel-close{width:26px;height:26px;border-radius:7px;border:none;background:transparent;color:var(--primary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background var(--ease-fast)}.right-panel-close:hover{background:#6366f126}.right-panel-body{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0}.right-panel-body .ai-chat-container.embedded{flex:1;margin:0;border:none;border-radius:0;box-shadow:none;background:var(--bg-panel)}.right-panel-body .ai-chat-container.embedded .ai-chat-messages{max-height:none;flex:1}.bottom-bar{position:absolute;bottom:16px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:4px;padding:6px 8px;background:var(--bg-panel);border:1px solid var(--border-mid);border-radius:14px;box-shadow:0 8px 32px #00000080,0 0 0 1px #ffffff0a inset;z-index:50;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}body[data-theme=light] .bottom-bar{box-shadow:0 4px 24px #50371426,0 0 0 1px #0000000a inset}.bottom-bar-group{display:flex;align-items:center;gap:2px;padding:0 4px;border-right:1px solid var(--border-subtle)}.bottom-bar-group:last-child{border-right:none;padding-right:0}.bottom-bar-group:first-child{padding-left:0}.bottom-bar-group.ml-auto{margin-left:auto}.bottom-bar-btn{display:flex;align-items:center;gap:5px;width:32px;height:32px;border-radius:8px;border:none;background:transparent;color:var(--text-500);cursor:pointer;transition:background var(--ease-fast),color var(--ease-fast),transform var(--ease-fast);justify-content:center}.bottom-bar-btn:has(.bottom-bar-label){width:auto;padding:0 10px}.bottom-bar-label{font-size:12px;font-weight:600;white-space:nowrap}.bottom-bar-btn:hover:not(:disabled){background:var(--bg-hover);color:var(--text-900);transform:translateY(-1px)}.bottom-bar-btn:disabled{opacity:.35;cursor:not-allowed}.bottom-bar-btn.active{background:var(--primary-soft);color:var(--primary);border:1px solid var(--primary-border)}.bottom-bar-run-btn{display:flex;align-items:center;gap:7px;padding:7px 16px;background:linear-gradient(135deg,var(--primary),#7c3aed);border:none;border-radius:10px;color:#fff;font-family:var(--font-display);font-size:12.5px;font-weight:700;cursor:pointer;box-shadow:0 3px 14px var(--primary-glow);transition:opacity var(--ease-fast),transform var(--ease-fast);white-space:nowrap}.bottom-bar-run-btn:hover:not(:disabled){opacity:.9;transform:translateY(-1px);box-shadow:0 6px 20px var(--primary-glow)}.bottom-bar-run-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.auth-full-screen{height:100vh;width:100vw;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--bg-app);position:relative;overflow:hidden}.auth-loading-orb{position:absolute;width:400px;height:400px;border-radius:50%;background:var(--primary);filter:blur(120px);opacity:.08;animation:pulse-record 3s ease-in-out infinite}.auth-loading-icon{animation:spin 3s linear infinite;position:relative;z-index:1;margin-bottom:16px}.auth-loading-text{font-family:var(--font-display);font-size:18px;font-weight:700;color:var(--text-700);letter-spacing:-.02em;position:relative;z-index:1}.auth-loading-text span{color:var(--primary)}.login-bg{background:#070709}.login-bg-grid{position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(circle,rgba(129,140,248,.2) 1px,transparent 1px);background-size:28px 28px;opacity:.4}.login-bg-glow{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 80% 60% at 10% 10%,rgba(99,102,241,.12) 0%,transparent 60%),radial-gradient(ellipse 60% 50% at 90% 90%,rgba(124,58,237,.08) 0%,transparent 60%)}.login-card{position:relative;z-index:10;width:90%;max-width:440px;background:#0f0f14d9;-webkit-backdrop-filter:blur(40px);backdrop-filter:blur(40px);border:1px solid rgba(255,255,255,.07);border-radius:32px;padding:48px 40px;box-shadow:0 30px 100px #000c,inset 0 1px #ffffff12;text-align:center;animation:slide-up .4s cubic-bezier(.16,1,.3,1)}.login-card-glow{position:absolute;top:-60px;left:50%;transform:translate(-50%);width:240px;height:240px;background:var(--primary);filter:blur(80px);opacity:.12;border-radius:50%;pointer-events:none;z-index:-1}.login-logo-wrap{display:inline-flex;padding:14px;border-radius:20px;background:#6366f11f;border:1px solid rgba(99,102,241,.25);margin-bottom:24px}.login-title{font-family:var(--font-display);font-size:clamp(32px,5vw,42px);font-weight:800;letter-spacing:-.05em;color:#fff;margin-bottom:6px;line-height:1}.login-title span{color:#818cf8;text-shadow:0 0 30px rgba(129,140,248,.5)}.login-tagline{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.2em;color:#ffffff4d;margin-bottom:20px}.login-desc{font-size:15px;color:#ffffff73;line-height:1.65;margin-bottom:28px}.login-pills{display:flex;flex-wrap:wrap;gap:7px;justify-content:center;margin-bottom:32px}.login-pill{padding:4px 12px;border-radius:100px;background:#6366f11a;border:1px solid rgba(99,102,241,.2);color:#818cf8cc;font-size:10.5px;font-weight:700;letter-spacing:.03em}.login-google-btn{width:100%;padding:15px 20px;background:#fff;border:1px solid rgba(255,255,255,.1);border-radius:100px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;transition:transform .2s,box-shadow .2s,opacity .2s;box-shadow:0 4px 24px #0006}.login-google-btn:disabled{opacity:.75;cursor:not-allowed}.login-google-btn:not(:disabled):hover{transform:translateY(-2px);box-shadow:0 8px 40px #00000080}.login-google-left{display:flex;align-items:center;gap:12px;font-family:var(--font-display);font-weight:700;font-size:15px;color:#111}.login-error{margin-top:14px;font-size:12px;line-height:1.5;color:#fca5a5;background:#ef444414;border:1px solid rgba(239,68,68,.2);border-radius:8px;padding:8px 12px}.login-terms{margin-top:20px;font-size:11px;color:#fff3}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9000;background:#000000b3;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);display:flex;align-items:center;justify-content:center;padding:20px}.modal-card{width:100%;max-width:480px;background:var(--bg-panel);border:1px solid var(--border-mid);border-radius:28px;padding:36px 32px;box-shadow:0 30px 100px #000c;animation:slide-up .3s cubic-bezier(.16,1,.3,1)}.modal-icon-wrap{width:60px;height:60px;border-radius:18px;background:var(--primary-soft);border:1px solid var(--primary-border);display:flex;align-items:center;justify-content:center;margin:0 auto 20px}.modal-title{font-family:var(--font-display);font-size:21px;font-weight:800;letter-spacing:-.03em;color:var(--text-900);text-align:center;margin-bottom:8px}.modal-subtitle{color:var(--text-500);font-size:13px;line-height:1.6;text-align:center;margin-bottom:24px}.modal-label{display:block;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text-500);margin-bottom:6px}.modal-select-wrap{position:relative;margin-bottom:4px}.modal-select-btn{width:100%;padding:10px 12px;background:var(--bg-input);border:1px solid var(--border-mid);border-radius:10px;color:var(--text-900);font-family:var(--font-body);font-size:13px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:8px;text-align:left}.modal-select-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.modal-select-dropdown{position:absolute;left:0;right:0;top:calc(100% + 4px);background:var(--bg-panel);border:1px solid var(--primary-border);border-radius:10px;z-index:100;overflow:hidden;box-shadow:var(--shadow-md)}.modal-select-option{width:100%;padding:10px 12px;background:transparent;border:none;border-left:3px solid transparent;color:var(--text-700);font-family:var(--font-body);font-size:13px;font-weight:600;cursor:pointer;text-align:left;display:flex;align-items:center;gap:8px;transition:background var(--ease-fast)}.modal-select-option:hover,.modal-select-option.active{background:var(--primary-soft);border-left-color:var(--primary);color:var(--primary)}.modal-input-wrap{position:relative;margin-bottom:4px}.modal-key-input{width:100%;padding:10px 40px 10px 12px;background:var(--bg-input);border:1px solid var(--border-mid);border-radius:10px;color:var(--text-900);font-family:var(--font-mono);font-size:12.5px;outline:none;transition:border-color var(--ease-fast),box-shadow var(--ease-fast)}.modal-key-input:focus{border-color:var(--primary-border);box-shadow:0 0 0 3px var(--primary-soft)}.modal-key-input.error{border-color:var(--danger);box-shadow:0 0 0 3px #ef44441a}.modal-eye-btn{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-500);cursor:pointer}.modal-error{margin:10px 0;padding:8px 12px;border-radius:8px;background:#ef444414;border:1px solid rgba(239,68,68,.25);color:var(--danger);font-size:12px}.modal-submit-btn{width:100%;margin-top:20px;padding:14px;background:linear-gradient(135deg,var(--primary),#7c3aed);border:none;border-radius:100px;color:#fff;font-family:var(--font-display);font-weight:700;font-size:14.5px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 6px 24px var(--primary-glow);transition:opacity .2s,transform .2s}.modal-submit-btn:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.modal-submit-btn:disabled{opacity:.55;cursor:not-allowed}.modal-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}.modal-footnote{text-align:center;margin-top:14px;font-size:11.5px;color:var(--text-500);line-height:1.5}.modal-footnote a{color:var(--primary);text-decoration:none}.task-list-view{background:var(--bg-input);border:1px solid var(--primary-border);border-radius:10px;overflow:hidden;margin:6px 0}.task-list-header{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:var(--primary-soft);cursor:pointer;border-bottom:1px solid var(--border-subtle)}.task-list-title{display:flex;align-items:center;gap:5px;font-size:11px;font-weight:700;color:var(--primary)}.task-list-content{padding:10px 12px;font-family:var(--font-mono);font-size:10px;line-height:1.7;color:var(--text-700);white-space:pre-wrap;max-height:180px;overflow-y:auto;margin:0}.task-list-editor{width:100%;min-height:150px;padding:10px 12px;background:var(--bg-input);border:none;color:var(--text-900);font-family:var(--font-mono);font-size:10.5px;line-height:1.7;resize:vertical;outline:none}.task-list-actions{display:flex;gap:5px;padding:7px 10px;border-top:1px solid var(--border-subtle)}.tl-btn{flex:1;padding:6px 0;border-radius:7px;border:1px solid var(--border-mid);background:transparent;color:var(--text-700);font-family:var(--font-body);font-size:11.5px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:4px;transition:background var(--ease-fast)}.tl-btn:hover{background:var(--bg-hover)}.tl-btn.tl-btn-primary{background:linear-gradient(135deg,var(--primary),#7c3aed);border-color:transparent;color:#fff}.tl-btn.tl-btn-primary:disabled{opacity:.6;cursor:not-allowed}.chat-error{padding:6px 10px;border-radius:8px;background:#ef444414;border:1px solid rgba(239,68,68,.2);color:var(--danger);font-size:11px;margin:4px 0}.chat-message-bubble.graph-success{background:#22c55e1a;border:1px solid rgba(34,197,94,.3);color:var(--success)}@keyframes slide-up{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.upgrade-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:8000;background:#000000bf;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:20px;animation:fade-in .15s ease}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.upgrade-card{width:100%;max-width:440px;background:var(--bg-panel);border:1px solid var(--border-mid);border-radius:24px;padding:36px 32px;box-shadow:0 24px 80px #000000b3;text-align:center;position:relative;animation:slide-up .25s ease}.upgrade-close{position:absolute;top:16px;right:16px;width:32px;height:32px;border-radius:50%;border:1px solid var(--border-mid);background:var(--bg-hover);color:var(--text-500);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--ease-fast)}.upgrade-close:hover{background:var(--bg-node);color:var(--text-900)}.upgrade-icon{font-size:36px;margin-bottom:12px}.upgrade-title{font-family:var(--font-display);font-size:24px;font-weight:800;color:var(--text-900);margin-bottom:8px}.upgrade-subtitle{font-size:14px;color:var(--text-700);line-height:1.6;margin-bottom:24px}.upgrade-features{list-style:none;text-align:left;margin-bottom:28px;display:flex;flex-direction:column;gap:10px}.upgrade-feature{display:flex;align-items:center;gap:10px;font-size:13.5px;color:var(--text-700)}.upgrade-feature-check{color:var(--success);flex-shrink:0}.upgrade-cta-btn{width:100%;padding:14px 24px;border-radius:100px;background:linear-gradient(135deg,#6366f1,#7c3aed);color:#fff;font-family:var(--font-display);font-size:15px;font-weight:700;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 8px 28px #6366f173;transition:all var(--ease-fast)}.upgrade-cta-btn:hover{transform:translateY(-2px);box-shadow:0 12px 36px #6366f199}.upgrade-note{margin-top:12px;font-size:11.5px;color:var(--text-500)}.header-upgrade-btn{display:flex;align-items:center;gap:5px;padding:6px 14px;border-radius:100px;background:linear-gradient(135deg,#6366f126,#7c3aed26);border:1px solid var(--primary-border);color:var(--primary);font-size:12px;font-weight:700;font-family:var(--font-display);cursor:pointer;transition:all var(--ease-fast);white-space:nowrap}.header-upgrade-btn:hover{background:linear-gradient(135deg,#6366f147,#7c3aed47);transform:translateY(-1px);box-shadow:0 4px 16px var(--primary-glow)}.pricing-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:8500;background:#000c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:16px;animation:fade-in .15s ease}.pricing-modal{width:100%;max-width:900px;max-height:90vh;overflow-y:auto;background:var(--bg-panel);border:1px solid var(--border-mid);border-radius:24px;box-shadow:0 32px 100px #000c;animation:slide-up .2s ease;scrollbar-width:thin;scrollbar-color:var(--primary-soft) transparent}.pricing-header{display:flex;align-items:center;justify-content:space-between;padding:24px 28px 0;gap:16px}.pricing-header-left{display:flex;align-items:center;gap:12px}.pricing-title{font-family:var(--font-display);font-size:22px;font-weight:800;color:var(--text-900);margin:0}.pricing-sub{font-size:13px;color:var(--text-500);margin:2px 0 0}.pricing-close{width:32px;height:32px;border-radius:50%;border:1px solid var(--border-mid);background:var(--bg-hover);color:var(--text-500);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--ease-fast);flex-shrink:0}.pricing-close:hover{background:var(--bg-node);color:var(--text-900)}.pricing-currency-toggle{display:flex;border:1px solid var(--border-mid);border-radius:100px;overflow:hidden}.pricing-currency-toggle button{padding:5px 12px;font-size:12px;font-weight:600;font-family:var(--font-display);background:transparent;border:none;color:var(--text-500);cursor:pointer;transition:all var(--ease-fast)}.pricing-currency-toggle button.active{background:var(--primary);color:#fff}.pricing-tabs{display:flex;gap:4px;padding:16px 28px 0;border-bottom:1px solid var(--border-subtle)}.pricing-tabs button{display:flex;align-items:center;gap:7px;padding:10px 16px;border:none;background:transparent;color:var(--text-500);font-family:var(--font-display);font-size:13px;font-weight:600;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all var(--ease-fast)}.pricing-tabs button.active{color:var(--primary);border-bottom-color:var(--primary)}.pricing-tabs button:hover:not(.active){color:var(--text-700)}.pricing-plans-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding:24px 28px}@media (max-width: 700px){.pricing-plans-grid{grid-template-columns:1fr}}.pricing-plan-card{background:var(--bg-node);border:1px solid var(--border-mid);border-radius:16px;padding:24px 20px;position:relative;display:flex;flex-direction:column;gap:12px;transition:transform var(--ease-fast),box-shadow var(--ease-fast)}.pricing-plan-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.pricing-plan-card.highlighted{border-color:var(--primary-border);background:linear-gradient(160deg,rgba(99,102,241,.06) 0%,var(--bg-node) 100%);box-shadow:0 0 0 1px var(--primary-border),var(--shadow-md)}.pricing-plan-card.current{opacity:.75}.pricing-plan-badge{position:absolute;top:-10px;left:50%;transform:translate(-50%);background:var(--primary);color:#fff;font-size:10px;font-weight:800;font-family:var(--font-display);padding:3px 10px;border-radius:100px;white-space:nowrap;letter-spacing:.04em}.pricing-plan-saving{position:absolute;top:-10px;right:12px;background:var(--success);color:#fff;font-size:10px;font-weight:700;padding:3px 8px;border-radius:100px}.pricing-plan-name{font-family:var(--font-display);font-size:16px;font-weight:800;color:var(--text-900)}.pricing-plan-price{display:flex;align-items:baseline;gap:4px}.pricing-price-amount{font-family:var(--font-display);font-size:32px;font-weight:800;color:var(--text-900)}.pricing-price-period{font-size:13px;color:var(--text-500)}.pricing-features{list-style:none;display:flex;flex-direction:column;gap:9px;flex:1}.pricing-features li{display:flex;align-items:flex-start;gap:8px;font-size:12.5px;color:var(--text-700);line-height:1.4}.pricing-check{color:var(--success);flex-shrink:0;margin-top:1px}.pricing-current-badge{text-align:center;padding:10px;font-size:12px;color:var(--text-500);font-weight:600;border:1px dashed var(--border-mid);border-radius:var(--r-md)}.pricing-downgrade-btn{width:100%;padding:10px;border:1px solid var(--border-mid);background:transparent;color:var(--text-500);border-radius:var(--r-md);font-size:12px;cursor:pointer;transition:all var(--ease-fast);font-family:var(--font-body)}.pricing-downgrade-btn:hover{background:var(--bg-hover);color:var(--text-700)}.pricing-pay-section{display:flex;flex-direction:column;gap:8px}.pricing-pay-label{font-size:11px;color:var(--text-500);font-weight:600;text-transform:uppercase;letter-spacing:.06em}.pricing-pay-btns{display:flex;flex-wrap:wrap;gap:6px}.pricing-pay-btn{flex:1;min-width:80px;height:38px;border-radius:var(--r-sm);border:1px solid var(--border-mid);background:var(--bg-hover);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0 10px;transition:all var(--ease-fast)}.pricing-pay-btn:hover:not(:disabled){background:var(--bg-node);border-color:var(--border-strong);transform:translateY(-1px)}.pricing-pay-btn:disabled{opacity:.5;cursor:not-allowed}.pricing-pay-btn.stripe{border-color:#6772e566}.pricing-pay-btn.razorpay{border-color:#3395ff66}.pricing-pay-btn.payu{border-color:#fc6a2666}.pricing-pay-btn.paypal{border-color:#0030874d}.pricing-credits-section{padding:20px 28px;display:flex;flex-direction:column;gap:16px}.pricing-credits-desc{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-700)}.pricing-credits-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}@media (max-width: 600px){.pricing-credits-grid{grid-template-columns:1fr}}.pricing-credit-card{background:var(--bg-node);border:1px solid var(--border-mid);border-radius:14px;padding:20px 16px;display:flex;flex-direction:column;align-items:center;gap:8px;position:relative;text-align:center;transition:all var(--ease-fast)}.pricing-credit-card.popular{border-color:var(--primary-border);background:linear-gradient(160deg,rgba(99,102,241,.07) 0%,var(--bg-node) 100%)}.pricing-credit-badge{position:absolute;top:-9px;left:50%;transform:translate(-50%);background:var(--primary);color:#fff;font-size:10px;font-weight:800;padding:2px 8px;border-radius:100px;font-family:var(--font-display)}.pricing-credit-amount{display:flex;align-items:baseline;gap:4px}.pricing-credit-num{font-family:var(--font-display);font-size:32px;font-weight:800;color:var(--text-900)}.pricing-credit-label{font-size:12px;color:var(--text-500)}.pricing-credit-price{font-family:var(--font-display);font-size:20px;font-weight:700;color:var(--primary)}.pricing-credit-per{font-size:11px;color:var(--text-500)}.pricing-credit-pays{display:flex;flex-wrap:wrap;gap:5px;width:100%}.credit-pay-btn{flex:1;height:32px;border-radius:var(--r-sm);border:1px solid var(--border-mid);background:var(--bg-hover);color:var(--text-700);font-size:11px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:4px;transition:all var(--ease-fast)}.credit-pay-btn:hover{background:var(--bg-node);color:var(--text-900)}.credit-pay-btn.primary{background:var(--primary);border-color:var(--primary);color:#fff}.credit-pay-btn.primary:hover{background:var(--primary-dim)}.pricing-credits-note{font-size:12px;color:var(--text-500);text-align:center}.pricing-footer{text-align:center;font-size:11.5px;color:var(--text-500);padding:0 28px 20px}.header-credits-bar{display:flex;align-items:center;gap:6px;padding:5px 10px;border-radius:100px;border:1px solid var(--border-mid);background:var(--bg-hover);color:var(--text-700);font-size:11px;font-weight:600;cursor:pointer;transition:all var(--ease-fast);white-space:nowrap;font-family:var(--font-display)}.header-credits-bar:hover{border-color:var(--primary-border);color:var(--primary)}.header-credits-bar.depleted{border-color:#ef444466;color:var(--danger);animation:pulse-record 2s ease infinite}.header-credits-track{width:48px;height:4px;background:var(--bg-app);border-radius:2px;overflow:hidden}.header-credits-fill{height:100%;background:var(--primary);border-radius:2px;transition:width .4s ease}.header-credits-bar.depleted .header-credits-fill{background:var(--danger)}.header-plan-pill{display:flex;align-items:center;gap:5px;padding:5px 10px;border-radius:100px;font-size:11px;font-weight:700;font-family:var(--font-display)}.header-plan-pill.pro{background:#6366f126;border:1px solid var(--primary-border);color:var(--primary)}.header-plan-pill.annual{background:#eab3081f;border:1px solid rgba(234,179,8,.4);color:#d97706}.node-plan-lock{display:flex;align-items:center;gap:5px;background:#ef44441a;border:1px solid rgba(239,68,68,.25);border-radius:var(--r-sm);padding:5px 8px;font-size:11px;color:var(--danger);margin-bottom:4px}.node-info-badge{background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--r-sm);padding:4px 8px;font-family:var(--font-mono);font-size:11px;color:var(--text-700)}.node-code-editor{width:100%;background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--r-sm);padding:8px 10px;color:var(--text-900);font-family:var(--font-mono);font-size:11.5px;resize:vertical;outline:none;line-height:1.6;transition:border-color var(--ease-fast);min-height:90px}.node-code-editor:focus{border-color:var(--primary-border)}.palette-search-wrap{display:flex;align-items:center;gap:6px;margin:8px 12px;padding:6px 10px;background:var(--bg-input);border:1px solid var(--border-mid);border-radius:var(--r-sm);transition:border-color var(--ease-fast)}.palette-search-wrap:focus-within{border-color:var(--primary-border)}.palette-search-icon{color:var(--text-500);flex-shrink:0}.palette-search-input{flex:1;background:transparent;border:none;outline:none;font-family:var(--font-body);font-size:12px;color:var(--text-900);caret-color:var(--primary)}.palette-search-input::placeholder{color:var(--text-500)}.palette-search-clear{background:transparent;border:none;color:var(--text-500);cursor:pointer;display:flex;align-items:center;padding:0;transition:color var(--ease-fast)}.palette-search-clear:hover{color:var(--text-900)}.palette-empty{padding:12px 16px;font-size:12px;color:var(--text-500);text-align:center}.draggable-node-text{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1}.draggable-node-desc{font-size:10px;color:var(--text-500);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.rf-minimap{border:1px solid var(--border-mid)!important;border-radius:var(--r-md)!important;background:var(--bg-panel)!important;box-shadow:var(--shadow-md)!important;bottom:60px!important;right:16px!important}.rf-controls{border:1px solid var(--border-mid)!important;border-radius:var(--r-sm)!important;background:var(--bg-panel)!important;box-shadow:var(--shadow-sm)!important;bottom:60px!important;left:16px!important;gap:2px!important}.rf-controls button{background:var(--bg-hover)!important;border:none!important;border-radius:var(--r-xs)!important;color:var(--text-700)!important;transition:all var(--ease-fast)!important}.rf-controls button:hover{background:var(--bg-node)!important;color:var(--text-900)!important}.react-flow__panel{z-index:5}.pricing-upgrade-cta{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;padding:12px 16px;border-radius:var(--r-md);background:linear-gradient(135deg,var(--primary) 0%,#7c3aed 100%);color:#fff;border:none;cursor:pointer;font-family:var(--font-display);font-size:13px;font-weight:700;box-shadow:0 6px 20px #6366f166;transition:all var(--ease-fast)}.pricing-upgrade-cta:hover{transform:translateY(-2px);box-shadow:0 10px 30px #6366f18c}.checkout-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9000;background:#000000d9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;padding:16px;animation:fade-in .15s ease}.checkout-modal{width:100%;max-width:520px;max-height:92vh;overflow-y:auto;background:var(--bg-panel);border:1px solid var(--border-mid);border-radius:24px;box-shadow:0 40px 120px #000000e6;animation:slide-up .2s ease;padding:0 0 24px;scrollbar-width:thin;scrollbar-color:var(--primary-soft) transparent}.checkout-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 0;gap:12px}.checkout-header-left{display:flex;align-items:center;gap:12px}.checkout-plan-icon{width:40px;height:40px;border-radius:var(--r-md);background:linear-gradient(135deg,#6366f133,#7c3aed33);border:1px solid var(--primary-border);display:flex;align-items:center;justify-content:center;color:var(--primary)}.checkout-title{font-family:var(--font-display);font-size:18px;font-weight:800;color:var(--text-900);margin:0}.checkout-sub{font-size:12px;color:var(--text-500);margin:2px 0 0}.checkout-close{width:30px;height:30px;border-radius:50%;border:1px solid var(--border-mid);background:var(--bg-hover);color:var(--text-500);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--ease-fast);flex-shrink:0}.checkout-close:hover{background:var(--bg-node);color:var(--text-900)}.checkout-back-btn{background:var(--bg-hover);border:1px solid var(--border-mid);border-radius:var(--r-sm);color:var(--text-700);font-size:12px;font-weight:600;padding:5px 10px;cursor:pointer;transition:all var(--ease-fast);font-family:var(--font-display)}.checkout-back-btn:hover{background:var(--bg-node);color:var(--text-900)}.checkout-currency-toggle{display:flex;border:1px solid var(--border-mid);border-radius:100px;overflow:hidden}.checkout-currency-toggle button{padding:4px 10px;font-size:11px;font-weight:700;font-family:var(--font-display);background:transparent;border:none;color:var(--text-500);cursor:pointer;transition:all var(--ease-fast)}.checkout-currency-toggle button.active{background:var(--primary);color:#fff}.checkout-price-row{display:flex;align-items:baseline;gap:6px;padding:20px 24px 0}.checkout-price{font-family:var(--font-display);font-size:42px;font-weight:800;color:var(--text-900);line-height:1}.checkout-period{font-size:14px;color:var(--text-500);align-self:flex-end;padding-bottom:4px}.checkout-saving-pill{background:#22c55e26;border:1px solid rgba(34,197,94,.3);color:var(--success);font-size:11px;font-weight:700;padding:3px 8px;border-radius:100px;font-family:var(--font-display);align-self:center}.checkout-section{padding:18px 24px 0}.checkout-section-title{display:flex;align-items:center;gap:6px;font-family:var(--font-display);font-size:11px;font-weight:700;color:var(--text-500);text-transform:uppercase;letter-spacing:.06em;margin-bottom:10px}.checkout-model-grid{display:flex;flex-wrap:wrap;gap:6px}.checkout-model-pill{display:flex;align-items:center;gap:5px;padding:5px 10px;border-radius:100px;font-size:11.5px;font-weight:600;font-family:var(--font-body)}.checkout-model-pill.free{background:var(--bg-hover);border:1px solid var(--border-mid);color:var(--text-700)}.checkout-model-pill.pro{background:#6366f11f;border:1px solid var(--primary-border);color:var(--primary)}.checkout-model-pill.annual{background:#eab3081a;border:1px solid rgba(234,179,8,.35);color:#d97706}.checkout-model-note{font-size:10px;opacity:.7;margin-left:2px}.checkout-features{list-style:none;display:flex;flex-direction:column;gap:8px}.checkout-features li{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-700);font-family:var(--font-body)}.co-check{color:var(--success);flex-shrink:0}.checkout-cta-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:calc(100% - 48px);margin:20px 24px 0;padding:14px 24px;border-radius:var(--r-lg);background:linear-gradient(135deg,var(--primary) 0%,#7c3aed 100%);color:#fff;border:none;cursor:pointer;font-family:var(--font-display);font-size:15px;font-weight:800;box-shadow:0 8px 28px #6366f173;transition:all var(--ease-fast)}.checkout-cta-btn:hover{transform:translateY(-2px);box-shadow:0 14px 40px #6366f199}.checkout-trust{display:flex;align-items:center;justify-content:center;gap:5px;font-size:11px;color:var(--text-500);padding:10px 24px 0;font-family:var(--font-body)}.checkout-methods{padding:16px 24px 0;display:flex;flex-direction:column;gap:10px}.checkout-methods-hint{font-size:13px;color:var(--text-700);font-family:var(--font-body)}.checkout-methods-list{display:flex;flex-direction:column;gap:8px}.checkout-method-btn{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-radius:var(--r-md);background:var(--bg-hover);border:1px solid var(--border-mid);cursor:pointer;transition:all var(--ease-fast);text-align:left;width:100%}.checkout-method-btn:hover:not(:disabled){background:var(--bg-node);border-color:var(--primary-border);transform:translate(3px)}.checkout-method-btn:disabled{opacity:.5;cursor:not-allowed}.checkout-method-left{display:flex;align-items:center;gap:12px}.checkout-method-name{display:flex;align-items:center;gap:6px;font-size:14px;font-family:var(--font-display)}.checkout-link-pill{display:inline-flex;align-items:center;gap:3px;background:#22c55e1f;border:1px solid rgba(34,197,94,.3);color:var(--success);font-size:9px;font-weight:700;font-family:var(--font-body);padding:2px 6px;border-radius:100px}.checkout-method-sub{font-size:11px;color:var(--text-500);font-family:var(--font-body);margin-top:2px}.checkout-method-price{font-family:var(--font-display);font-size:16px;font-weight:800;color:var(--text-900);flex-shrink:0}.node-palette-group:nth-child(1) .draggable-node-icon{color:var(--node-amber)}.node-palette-group:nth-child(1) .draggable-node:hover .draggable-node-icon{background:var(--node-amber);color:#fff;box-shadow:0 4px 16px #f59e0b66}.node-palette-group:nth-child(2) .draggable-node-icon{color:var(--node-violet)}.node-palette-group:nth-child(2) .draggable-node:hover .draggable-node-icon{background:var(--node-violet);color:#fff;box-shadow:0 4px 16px #7c3aed66}.node-palette-group:nth-child(3) .draggable-node-icon{color:var(--node-orange)}.node-palette-group:nth-child(3) .draggable-node:hover .draggable-node-icon{background:var(--node-orange);color:#fff;box-shadow:0 4px 16px #f9731666}.node-palette-group:nth-child(4) .draggable-node-icon{color:var(--node-indigo)}.node-palette-group:nth-child(4) .draggable-node:hover .draggable-node-icon{background:var(--node-indigo);color:#fff;box-shadow:0 4px 16px #6366f166}.node-palette-group:nth-child(5) .draggable-node-icon{color:var(--node-cyan)}.node-palette-group:nth-child(5) .draggable-node:hover .draggable-node-icon{background:var(--node-cyan);color:#fff;box-shadow:0 4px 16px #06b6d466}.node-palette-group:nth-child(6) .draggable-node-icon{color:var(--node-emerald)}.node-palette-group:nth-child(6) .draggable-node:hover .draggable-node-icon{background:var(--node-emerald);color:#fff;box-shadow:0 4px 16px #10b98166}.header-stat-chip{font-family:var(--font-mono)!important;font-size:11px!important;padding:3px 8px!important;background:var(--bg-input)!important;border:1px solid var(--border-subtle)!important;border-radius:6px!important;color:var(--text-500)!important;letter-spacing:0}.header-right{gap:6px!important;flex-wrap:nowrap;min-width:0}.header-dropdown-item{font-family:var(--font-body)!important}.header-plan-badge.pro,.header-plan-badge.annual{font-family:var(--font-display)!important;font-weight:700!important}.bottom-bar-btn.active{background:var(--primary-soft);color:var(--primary)}.bottom-bar-label{font-family:var(--font-display);font-size:12px;font-weight:700;margin-left:2px}.right-panel-header{background:var(--bg-panel)!important;border-bottom:1px solid var(--border-subtle)!important}.right-panel-title{font-family:var(--font-display)!important;font-weight:700!important;font-size:13px!important;color:var(--text-700)!important}.right-panel-title svg{color:var(--primary)}body[data-theme=light] .rf-minimap{background:#ffffffe6!important}body[data-theme=light] .rf-controls button{background:var(--bg-hover)!important}*{scrollbar-width:thin;scrollbar-color:var(--border-mid) transparent}*::-webkit-scrollbar{width:5px;height:5px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:var(--border-mid);border-radius:10px}*::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--primary);outline-offset:2px}::selection{background:var(--primary-soft);color:var(--text-900)}.auth-screen{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;overflow:hidden;z-index:9999;background:#07070a}.auth-bg-img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:.85;filter:saturate(1.2);pointer-events:none;-webkit-user-select:none;user-select:none;z-index:0}.auth-orb{position:absolute;border-radius:50%;filter:blur(80px);pointer-events:none;animation:auth-orb-float 12s ease-in-out infinite}.auth-orb-1{width:560px;height:560px;top:-160px;left:-160px;background:radial-gradient(circle,rgba(99,102,241,.38) 0%,transparent 70%);animation-delay:0s}.auth-orb-2{width:420px;height:420px;bottom:-120px;right:-120px;background:radial-gradient(circle,rgba(217,119,6,.32) 0%,transparent 70%);animation-delay:-4s}.auth-orb-3{width:300px;height:300px;bottom:30%;left:20%;background:radial-gradient(circle,rgba(168,85,247,.2) 0%,transparent 70%);animation-delay:-8s}@keyframes auth-orb-float{0%,to{transform:translate(0) scale(1)}33%{transform:translate(20px,-30px) scale(1.05)}66%{transform:translate(-15px,20px) scale(.97)}}.auth-bg-grid{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1;opacity:.6;background-image:linear-gradient(rgba(129,140,248,.13) 1px,transparent 1px),linear-gradient(90deg,rgba(129,140,248,.13) 1px,transparent 1px),linear-gradient(rgba(167,139,250,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(167,139,250,.07) 1px,transparent 1px);background-size:40px 40px,40px 40px,160px 160px,160px 160px}.auth-bg-grid:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(99,102,241,.08) 0%,transparent 50%),linear-gradient(225deg,rgba(217,119,6,.07) 0%,transparent 50%),radial-gradient(ellipse 100% 100% at 50% 50%,transparent 40%,rgba(5,5,8,.5) 100%)}.auth-bg-overlay{display:none}.auth-center-card{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;text-align:center;gap:0;width:min(440px,94vw);padding:40px 36px 32px;background:#0a0a126b;border:1px solid rgba(129,140,248,.18);border-radius:28px;-webkit-backdrop-filter:blur(32px) saturate(1.6) brightness(.95);backdrop-filter:blur(32px) saturate(1.6) brightness(.95);box-shadow:0 0 0 1px #6366f124,0 30px 80px #00000080,0 0 60px #6366f114,inset 0 1px #ffffff0f;animation:auth-card-in .55s cubic-bezier(.16,1,.3,1) both}@keyframes auth-card-in{0%{opacity:0;transform:translateY(24px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.auth-card-glow{position:absolute;top:-1px;left:50%;transform:translate(-50%);width:60%;height:2px;background:linear-gradient(90deg,transparent,rgba(99,102,241,.7),transparent);border-radius:2px;pointer-events:none}.auth-icon-ring{width:72px;height:72px;border-radius:21px;background:#6366f11f;border:1px solid rgba(99,102,241,.28);display:flex;align-items:center;justify-content:center;margin-bottom:16px;box-shadow:0 0 24px #6366f133}.auth-icon-img{width:52px;height:52px;border-radius:14px;object-fit:cover}.auth-brand-row{display:flex;align-items:center;gap:8px;margin-bottom:6px}.auth-brand-name{font-family:var(--font-display);font-size:22px;font-weight:800;letter-spacing:-.04em;color:var(--text-900)}.auth-brand-name span{color:var(--primary);text-shadow:0 0 20px rgba(99,102,241,.6)}.auth-brand-beta{font-family:var(--font-display);font-size:9px;font-weight:800;letter-spacing:.12em;color:var(--primary);background:#6366f126;border:1px solid rgba(99,102,241,.3);border-radius:4px;padding:2px 6px;align-self:flex-start;margin-top:2px}.auth-headline{font-family:var(--font-display);font-size:clamp(22px,3vw,28px);font-weight:800;color:var(--text-900);line-height:1.2;letter-spacing:-.03em;margin-bottom:8px}.auth-headline-accent{background:linear-gradient(135deg,#818cf8,#a78bfa,#f472b6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.auth-subline{font-size:13px;color:var(--text-500);line-height:1.6;max-width:300px;margin-bottom:18px}.auth-pills-row{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin-bottom:24px}.auth-pill{display:flex;align-items:center;gap:5px;padding:5px 11px;border-radius:99px;border:1px solid rgba(255,255,255,.08);background:#ffffff0a;color:var(--text-500);font-size:11.5px;font-weight:600;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.auth-saved-accounts{width:100%;margin-bottom:14px}.auth-saved-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text-500);margin-bottom:8px;text-align:left}.auth-saved-row{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;margin-bottom:6px;background:#ffffff0a;border:1px solid rgba(255,255,255,.07);border-radius:14px;cursor:pointer;text-align:left;transition:all .2s ease;color:var(--text-900)}.auth-saved-row:hover{background:#6366f11a;border-color:#6366f14d;transform:translate(2px)}.auth-saved-avatar{width:36px;height:36px;border-radius:50%;object-fit:cover;flex-shrink:0;border:1px solid rgba(255,255,255,.12)}.auth-saved-avatar-fallback{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#6366f1,#a78bfa);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:700;font-size:15px;color:#fff;flex-shrink:0}.auth-saved-info{flex:1;display:flex;flex-direction:column;gap:1px;min-width:0}.auth-saved-name{font-size:13px;font-weight:600;color:var(--text-900);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.auth-saved-email{font-size:11.5px;color:var(--text-500);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.auth-saved-remove{width:28px;height:28px;border-radius:8px;border:none;background:transparent;color:var(--text-500);display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:all .16s ease}.auth-saved-remove:hover{background:#ef444426;color:#f87171}.auth-or-row{display:flex;align-items:center;gap:10px;width:100%;margin:12px 0 0;color:var(--text-500);font-size:11.5px}.auth-or-row:before,.auth-or-row:after{content:"";flex:1;height:1px;background:#ffffff12}.auth-google-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:14px 20px;margin-top:12px;border-radius:14px;border:1px solid rgba(255,255,255,.1);background:#ffffff12;color:var(--text-900);font-family:var(--font-body);font-size:14.5px;font-weight:600;cursor:pointer;transition:all .2s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);letter-spacing:.01em;position:relative;overflow:hidden}.auth-google-btn:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(99,102,241,.06),transparent 60%);opacity:0;transition:opacity .2s ease}.auth-google-btn:hover:not(:disabled){background:#ffffff1c;border-color:#ffffff2e;transform:translateY(-1px);box-shadow:0 8px 28px #00000059,0 0 0 1px #6366f126}.auth-google-btn:hover:before{opacity:1}.auth-google-btn:active:not(:disabled){transform:translateY(0) scale(.99)}.auth-google-btn--loading{opacity:.7;cursor:wait}.auth-google-btn:disabled{cursor:not-allowed}.auth-spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.2);border-top-color:#fff;border-radius:50%;animation:auth-spin .7s linear infinite;flex-shrink:0}@keyframes auth-spin{to{transform:rotate(360deg)}}.auth-error-text{font-size:12px;color:#f87171;margin-top:8px;text-align:center;line-height:1.5}.auth-trust-row{display:flex;align-items:center;gap:10px;margin-top:20px;color:var(--text-500);font-size:11px}.auth-trust-item{display:flex;align-items:center;gap:4px}.auth-trust-dot{width:3px;height:3px;border-radius:50%;background:var(--text-500)}.auth-terms{margin-top:10px;font-size:11px;color:var(--text-500);line-height:1.6}.auth-terms a{color:var(--text-700);text-decoration:underline;text-underline-offset:2px;transition:color .16s ease}.auth-terms a:hover{color:var(--primary)}.auth-loading-screen{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#07070a;z-index:9999}.auth-loading-bg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;opacity:.2;filter:blur(4px);pointer-events:none}.auth-loading-bg-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#07070abf;pointer-events:none}.auth-loading-orb{position:absolute;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(99,102,241,.18) 0%,transparent 70%);filter:blur(60px);animation:auth-orb-float 8s ease-in-out infinite}.auth-loading-content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:12px}.auth-loading-icon-wrap{width:72px;height:72px;border-radius:21px;background:#6366f11f;border:1px solid rgba(99,102,241,.28);display:flex;align-items:center;justify-content:center;box-shadow:0 0 32px #6366f140;animation:auth-pulse 2s ease-in-out infinite}@keyframes auth-pulse{0%,to{box-shadow:0 0 32px #6366f140}50%{box-shadow:0 0 56px #6366f173}}.auth-app-icon{width:52px;height:52px;border-radius:14px;object-fit:cover}.auth-loading-title{font-family:var(--font-display);font-size:20px;font-weight:800;letter-spacing:-.04em;color:var(--text-900)}.auth-loading-sub{font-size:13px;color:var(--text-500);letter-spacing:.02em}.auth-google-btn-wrap{width:100%;margin-top:16px;display:flex;justify-content:center}.auth-google-btn-wrap>div,.auth-google-btn-wrap>div>div{background:transparent!important;border-radius:0!important;box-shadow:none!important;border:none!important}.auth-google-btn-wrap iframe{display:block;border-radius:24px!important;box-shadow:0 0 0 1px #6366f12e,0 8px 30px #00000073!important;transition:box-shadow .2s ease,transform .2s ease!important}.auth-google-btn-wrap iframe:hover{box-shadow:0 0 0 1px #6366f159,0 12px 36px #0000008c!important;transform:translateY(-1px)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#000000b8;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:20px}.modal-panel{position:relative;background:var(--bg-panel);border:1px solid var(--border-mid);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;overflow:hidden;max-height:calc(100dvh - 40px);width:100%}.modal-header{padding:20px 20px 16px;border-bottom:1px solid var(--border-subtle);flex-shrink:0}.modal-title-row{display:flex;align-items:center;gap:10px;margin-bottom:4px}.modal-title-row h2{font-size:17px;font-weight:700;letter-spacing:-.02em;color:var(--text-900)}.modal-title-icon{color:var(--primary);flex-shrink:0}.modal-subtitle{font-size:13px;color:var(--text-500);line-height:1.4}.modal-close{position:absolute;top:16px;right:16px;width:30px;height:30px;border-radius:var(--r-sm);border:1px solid var(--border-subtle);background:transparent;color:var(--text-500);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--ease-fast),color var(--ease-fast)}.modal-close:hover{background:var(--bg-hover);color:var(--text-900)}.io-panel{max-width:560px}.io-body{padding:20px;display:flex;flex-direction:column;gap:14px;overflow-y:auto;flex:1}.io-prompt-wrap{position:relative;display:flex;align-items:flex-start;gap:10px}.io-prompt-icon{color:var(--primary);flex-shrink:0;margin-top:10px}.io-textarea{flex:1;background:var(--bg-input);border:1px solid var(--border-mid);border-radius:var(--r-sm);color:var(--text-900);font-size:14px;line-height:1.5;padding:10px 12px;resize:none;outline:none;font-family:var(--font-body);transition:border-color var(--ease-fast)}.io-textarea:focus{border-color:var(--primary-border)}.io-textarea::placeholder{color:var(--text-400)}.io-examples{display:flex;flex-wrap:wrap;gap:6px}.io-example-chip{padding:5px 10px;border-radius:20px;font-size:12px;background:var(--bg-input);border:1px solid var(--border-subtle);color:var(--text-700);cursor:pointer;transition:background var(--ease-fast),border-color var(--ease-fast),color var(--ease-fast)}.io-example-chip:hover{background:var(--primary-soft);border-color:var(--primary-border);color:var(--primary)}.io-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:4px}.io-footer-center{justify-content:center}.io-hint{font-size:12px;color:var(--text-400)}.io-generate-btn{display:inline-flex;align-items:center;gap:7px;padding:9px 18px;border-radius:var(--r-sm);background:linear-gradient(135deg,var(--primary),var(--primary-dim));color:#fff;font-size:13px;font-weight:600;border:none;cursor:pointer;transition:opacity var(--ease-fast),transform var(--ease-fast)}.io-generate-btn:hover:not(:disabled){opacity:.88;transform:translateY(-1px)}.io-generate-btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.io-back-btn{padding:9px 14px;border-radius:var(--r-sm);background:transparent;border:1px solid var(--border-mid);color:var(--text-700);font-size:13px;cursor:pointer;transition:background var(--ease-fast),color var(--ease-fast)}.io-back-btn:hover{background:var(--bg-hover);color:var(--text-900)}.io-error{padding:10px 14px;border-radius:var(--r-sm);background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#ef4444;font-size:13px}.io-loading-row{display:flex;align-items:center;gap:10px;color:var(--text-700);font-size:14px}.io-plan-preview{background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--r-sm);padding:12px 14px;max-height:200px;overflow-y:auto}.io-plan-preview pre{font-size:13px;line-height:1.55;white-space:pre-wrap;color:var(--text-700);font-family:var(--font-body)}.io-spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.io-cursor{display:inline-block;animation:blink 1s step-end infinite;color:var(--primary);margin-left:2px}@keyframes blink{50%{opacity:0}}.io-plan-header{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--text-700)}.io-plan-ok{color:var(--success)}.io-steps-list{display:flex;flex-direction:column;gap:4px;max-height:260px;overflow-y:auto}.io-step{display:flex;align-items:flex-start;gap:8px;padding:8px 10px;border-radius:var(--r-sm);background:var(--bg-input);border:1px solid var(--border-subtle);font-size:13px;color:var(--text-700);transition:background var(--ease-fast),border-color var(--ease-fast)}.io-step.done{background:#10b98114;border-color:#10b98140;color:var(--text-900)}.io-step-done{color:var(--success);flex-shrink:0}.io-success{display:flex;flex-direction:column;align-items:center;gap:12px;padding:20px 0;text-align:center}.io-success-icon{color:var(--success)}.io-success h3{font-size:18px;color:var(--text-900)}.io-success p{font-size:14px;color:var(--text-700)}.io-success-hint{font-size:12px;color:var(--text-400)!important}.exec-panel{max-width:620px}.exec-controls{padding:14px 20px;border-bottom:1px solid var(--border-subtle);display:flex;flex-direction:column;gap:8px;flex-shrink:0}.exec-controls-row{display:flex;align-items:center;gap:10px}.exec-warning{display:flex;align-items:center;gap:7px;padding:8px 12px;border-radius:var(--r-sm);background:#f59e0b1a;border:1px solid rgba(245,158,11,.3);color:#f59e0b;font-size:12px}.exec-speed-label{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-500);flex-shrink:0}.exec-speed-select{background:var(--bg-input);border:1px solid var(--border-mid);border-radius:var(--r-xs);color:var(--text-900);font-size:12px;padding:3px 7px;cursor:pointer;outline:none}.exec-run-btn{display:inline-flex;align-items:center;gap:7px;padding:8px 16px;border-radius:var(--r-sm);background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:13px;font-weight:600;border:none;cursor:pointer;transition:opacity var(--ease-fast)}.exec-run-btn:hover:not(:disabled){opacity:.85}.exec-run-btn:disabled{opacity:.4;cursor:not-allowed}.exec-stop-btn{display:inline-flex;align-items:center;gap:7px;padding:8px 16px;border-radius:var(--r-sm);background:#ef444426;border:1px solid rgba(239,68,68,.4);color:#ef4444;font-size:13px;font-weight:600;cursor:pointer;transition:background var(--ease-fast)}.exec-stop-btn:hover{background:#ef444440}.exec-reset-btn{width:34px;height:34px;border-radius:var(--r-sm);border:1px solid var(--border-mid);background:transparent;color:var(--text-500);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--ease-fast),color var(--ease-fast);flex-shrink:0}.exec-reset-btn:hover{background:var(--bg-hover);color:var(--text-900)}.exec-reset-btn:disabled{opacity:.4;cursor:not-allowed}.exec-stats{display:flex;gap:8px;padding:10px 20px;border-bottom:1px solid var(--border-subtle);flex-wrap:wrap;flex-shrink:0}.exec-stat{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:20px;background:var(--bg-input);border:1px solid var(--border-subtle);font-size:12px;color:var(--text-700)}.exec-stat-status{font-weight:600;text-transform:capitalize}.exec-stat-completed{background:#10b9811a;border-color:#10b9814d;color:#10b981}.exec-stat-failed{background:#ef44441a;border-color:#ef44444d;color:#ef4444}.exec-steps{flex:1;overflow-y:auto;padding:12px 20px;display:flex;flex-direction:column;gap:4px}.exec-step{border-radius:var(--r-sm);border:1px solid var(--border-subtle);background:var(--bg-input);overflow:hidden;transition:border-color var(--ease-fast)}.exec-step-success{border-color:#10b98140}.exec-step-failed{border-color:#ef444440}.exec-step-running{border-color:#f59e0b66}.exec-step-header{width:100%;display:flex;align-items:center;gap:8px;padding:9px 12px;background:transparent;border:none;color:var(--text-900);cursor:pointer;text-align:left;font-size:13px;transition:background var(--ease-fast)}.exec-step-header:hover{background:var(--bg-hover)}.exec-step-icon{flex-shrink:0}.exec-step-name{flex:1;font-weight:500}.exec-step-type{font-size:11px;color:var(--text-500);font-family:var(--font-mono)}.exec-step-dur,.exec-step-tokens{font-size:11px;color:var(--text-400);flex-shrink:0}.exec-status-ok{color:#10b981}.exec-status-fail{color:#ef4444}.exec-status-running{color:#f59e0b;animation:spin .8s linear infinite}.exec-status-pending{color:var(--text-400)}.exec-step-logs{padding:8px 12px 10px;border-top:1px solid var(--border-subtle);display:flex;flex-direction:column;gap:2px}.exec-log-line{font-size:11px;font-family:var(--font-mono);color:var(--text-500);line-height:1.5}.exec-log-error{color:#ef4444}.exec-empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:40px 20px;text-align:center;color:var(--text-400)}.exec-empty p{font-size:13px}.export-panel{max-width:580px}.export-steps-indicator{display:flex;align-items:center;gap:8px;margin-top:10px}.export-step-dot{width:24px;height:24px;border-radius:50%;border:1.5px solid var(--border-mid);background:var(--bg-input);color:var(--text-500);font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;transition:background var(--ease-fast),border-color var(--ease-fast),color var(--ease-fast)}.export-step-dot.active{background:var(--primary-soft);border-color:var(--primary-border);color:var(--primary)}.export-body{padding:20px;display:flex;flex-direction:column;gap:16px;overflow-y:auto;flex:1}.export-field{display:flex;flex-direction:column;gap:7px}.export-label{font-size:12px;font-weight:600;color:var(--text-500);text-transform:uppercase;letter-spacing:.05em}.export-input{background:var(--bg-input);border:1px solid var(--border-mid);border-radius:var(--r-sm);color:var(--text-900);font-size:14px;padding:9px 12px;outline:none;width:100%;transition:border-color var(--ease-fast)}.export-input:focus{border-color:var(--primary-border)}.export-type-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.export-type-card{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:11px 13px;border-radius:var(--r-sm);border:1.5px solid var(--border-subtle);background:var(--bg-input);cursor:pointer;text-align:left;transition:border-color var(--ease-fast),background var(--ease-fast)}.export-type-card:hover{border-color:var(--border-mid);background:var(--bg-hover)}.export-type-card.selected{border-color:var(--primary-border);background:var(--primary-soft)}.export-type-icon{color:var(--primary)}.export-type-label{font-size:13px;font-weight:600;color:var(--text-900)}.export-type-desc{font-size:11px;color:var(--text-500);line-height:1.3}.export-summary{background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--r-sm);overflow:hidden}.export-summary-row{display:flex;justify-content:space-between;align-items:center;padding:9px 14px;font-size:13px;color:var(--text-700);border-bottom:1px solid var(--border-subtle)}.export-summary-row:last-child{border-bottom:none}.export-summary-row strong{color:var(--text-900)}.export-prompt-section{display:flex;flex-direction:column;gap:8px}.export-prompt-header{display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:600;color:var(--text-500);text-transform:uppercase;letter-spacing:.05em}.export-copy-btn{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:var(--r-xs);border:1px solid var(--border-mid);background:var(--bg-input);color:var(--text-700);font-size:12px;cursor:pointer;transition:background var(--ease-fast),color var(--ease-fast)}.export-copy-btn:hover{background:var(--bg-hover);color:var(--text-900)}.export-prompt-preview{background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--r-sm);padding:12px 14px;font-size:11px;font-family:var(--font-mono);color:var(--text-500);max-height:180px;overflow-y:auto;white-space:pre-wrap;line-height:1.5}.export-footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding-top:4px}.export-done-instructions{display:flex;flex-direction:column;gap:4px;background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--r-sm);padding:12px 14px;margin-top:4px;text-align:left;width:100%}.export-done-instructions code{font-size:12px;color:var(--primary);font-family:var(--font-mono);display:block}.version-panel{max-width:440px;max-height:min(600px,calc(100dvh - 40px))}.version-body{padding:16px;display:flex;flex-direction:column;gap:10px;overflow-y:auto;flex:1}.version-current{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-radius:var(--r-sm);background:var(--bg-input);border:1px solid var(--border-subtle)}.version-current-info{display:flex;align-items:center;gap:10px}.version-current-dot{width:8px;height:8px;border-radius:50%;background:var(--success);flex-shrink:0}.version-current-label{font-size:13px;font-weight:600;color:var(--text-900)}.version-meta{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--text-400);margin-top:2px}.version-snapshot-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 13px;border-radius:var(--r-sm);border:1px solid var(--primary-border);background:var(--primary-soft);color:var(--primary);font-size:12px;font-weight:600;cursor:pointer;transition:background var(--ease-fast);flex-shrink:0}.version-snapshot-btn:hover{background:#6366f133}.version-list{display:flex;flex-direction:column;gap:6px}.version-item{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-radius:var(--r-sm);border:1px solid var(--border-subtle);background:var(--bg-input);transition:border-color var(--ease-fast)}.version-item:hover{border-color:var(--border-mid)}.version-item-info{flex:1;min-width:0}.version-item-label{font-size:13px;font-weight:500;color:var(--text-900)}.version-item-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.version-restore-btn,.version-delete-btn{width:28px;height:28px;border-radius:var(--r-xs);border:1px solid var(--border-subtle);background:transparent;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--ease-fast),color var(--ease-fast),border-color var(--ease-fast)}.version-restore-btn{color:var(--primary)}.version-restore-btn:hover{background:var(--primary-soft);border-color:var(--primary-border)}.version-delete-btn{color:var(--text-500)}.version-delete-btn:hover{background:#ef44441a;border-color:#ef44444d;color:#ef4444}.version-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:32px 20px;text-align:center;color:var(--text-400)}.version-empty p{font-size:13px}.node-sidebar{display:flex;flex-direction:column;height:100%;background:var(--bg-panel);overflow:hidden}.node-sidebar-empty{align-items:center;justify-content:center}.ns-empty-msg{display:flex;flex-direction:column;align-items:center;gap:10px;color:var(--text-400);text-align:center;padding:32px 20px}.ns-empty-msg p{font-size:13px}.ns-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 12px;border-bottom:1px solid var(--border-subtle);flex-shrink:0;gap:12px}.ns-title{display:flex;align-items:center;gap:10px;min-width:0;flex:1}.ns-type-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.ns-node-name{font-size:14px;font-weight:700;color:var(--text-900);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ns-node-type{font-size:11px;color:var(--text-400);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ns-close{width:28px;height:28px;border-radius:var(--r-xs);border:1px solid var(--border-subtle);background:transparent;color:var(--text-500);display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background var(--ease-fast),color var(--ease-fast)}.ns-close:hover{background:var(--bg-hover);color:var(--text-900)}.ns-validation-errors{display:flex;align-items:flex-start;gap:8px;padding:10px 16px;background:#ef444414;border-bottom:1px solid rgba(239,68,68,.2);color:#ef4444;font-size:12px;flex-shrink:0}.ns-scroll{flex:1;overflow-y:auto;padding:0 0 16px}.ns-section{border-bottom:1px solid var(--border-subtle)}.ns-section-header{width:100%;display:flex;align-items:center;gap:8px;padding:11px 16px;background:transparent;border:none;color:var(--text-700);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:background var(--ease-fast)}.ns-section-header:hover{background:var(--bg-hover)}.ns-section-header span:first-of-type{flex:1;text-align:left}.ns-cred-badge{padding:2px 7px;border-radius:20px;background:#ef44441f;color:#ef4444;font-size:10px;font-weight:700;text-transform:none;letter-spacing:0}.ns-section-body{padding:8px 16px 12px;display:flex;flex-direction:column;gap:12px}.ns-field{display:flex;flex-direction:column;gap:5px}.ns-label{font-size:12px;font-weight:500;color:var(--text-700)}.ns-required{color:#ef4444}.ns-input{background:var(--bg-input);border:1px solid var(--border-mid);border-radius:var(--r-xs);color:var(--text-900);font-size:13px;padding:7px 10px;width:100%;outline:none;transition:border-color var(--ease-fast)}.ns-input:focus{border-color:var(--primary-border)}.ns-input::placeholder{color:var(--text-400)}.ns-textarea{resize:vertical;min-height:72px;font-family:var(--font-mono)}.ns-toggle{display:flex;align-items:center;gap:10px;cursor:pointer}.ns-toggle input[type=checkbox]{display:none}.ns-toggle-track{position:relative;width:32px;height:18px;border-radius:9px;background:var(--bg-input);border:1px solid var(--border-mid);transition:background var(--ease-fast),border-color var(--ease-fast);flex-shrink:0}.ns-toggle-track:after{content:"";position:absolute;top:2px;left:2px;width:12px;height:12px;border-radius:50%;background:var(--text-400);transition:transform var(--ease-fast),background var(--ease-fast)}.ns-toggle input:checked+.ns-toggle-track{background:var(--primary-soft);border-color:var(--primary-border)}.ns-toggle input:checked+.ns-toggle-track:after{transform:translate(14px);background:var(--primary)}.ns-toggle-label{font-size:13px;color:var(--text-900)}.ns-cred-field{display:flex;flex-direction:column;gap:6px;padding:10px 12px;border-radius:var(--r-sm);background:var(--bg-input);border:1px solid var(--border-subtle)}.ns-cred-header{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-700);font-weight:600}.ns-cred-ok{color:var(--success);margin-left:auto}.ns-cred-saved{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-400);font-family:var(--font-mono)}.ns-cred-clear{width:18px;height:18px;border-radius:var(--r-xs);border:1px solid var(--border-subtle);background:transparent;color:var(--text-500);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--ease-fast),color var(--ease-fast);flex-shrink:0}.ns-cred-clear:hover{background:#ef44441a;color:#ef4444}.ns-cred-input-row{display:flex;align-items:center;gap:5px}.ns-cred-input{flex:1}.ns-cred-vis-btn{width:30px;height:30px;border-radius:var(--r-xs);border:1px solid var(--border-mid);background:transparent;color:var(--text-500);display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background var(--ease-fast),color var(--ease-fast)}.ns-cred-vis-btn:hover{background:var(--bg-hover);color:var(--text-900)}.ns-cred-save-btn{padding:5px 12px;border-radius:var(--r-xs);border:1px solid var(--primary-border);background:var(--primary-soft);color:var(--primary);font-size:12px;font-weight:600;cursor:pointer;flex-shrink:0;transition:background var(--ease-fast),opacity var(--ease-fast)}.ns-cred-save-btn:hover:not(:disabled){background:#6366f133}.ns-cred-save-btn:disabled{opacity:.4;cursor:not-allowed}.ns-cred-note{font-size:11px;color:var(--text-400);line-height:1.4;padding-top:2px}.ns-field-desc{font-size:11px;color:var(--text-400);line-height:1.4}.ns-description{padding:14px 16px;font-size:13px;color:var(--text-500);line-height:1.5;border-top:1px solid var(--border-subtle)}.node-exec-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:20px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px}.node-exec-badge[data-state=running]{background:#f59e0b26;color:#f59e0b;border:1px solid rgba(245,158,11,.35)}.node-exec-badge[data-state=success]{background:#10b9811f;color:#10b981;border:1px solid rgba(16,185,129,.3)}.node-exec-badge[data-state=failed]{background:#ef44441a;color:#ef4444;border:1px solid rgba(239,68,68,.28)}.node-exec-badge[data-state=skipped]{background:#6b72801f;color:#9ca3af;border:1px solid rgba(107,114,128,.25)}.node-exec-spinner{width:8px;height:8px;border:1.5px solid #f59e0b;border-top-color:transparent;border-radius:50%;animation:spin .7s linear infinite;display:inline-block}.node-cred-warning{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:20px;font-size:10px;font-weight:600;background:#ef44441a;border:1px solid rgba(239,68,68,.28);color:#ef4444;margin-bottom:4px}.generic-node-type-label{font-size:11px;color:var(--text-500);font-family:var(--font-mono);margin-bottom:2px}.generic-node-desc{font-size:11px;color:var(--text-400);line-height:1.4;max-width:200px}.right-panel-header{display:flex;align-items:center;gap:6px;padding:8px 10px;border-bottom:1px solid var(--border-subtle);flex-shrink:0}.right-panel-tabs{display:flex;align-items:center;gap:2px;flex:1}.right-panel-tab{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:var(--r-sm);border:1px solid transparent;background:transparent;color:var(--text-500);font-size:12px;font-weight:500;cursor:pointer;position:relative;transition:background var(--ease-fast),color var(--ease-fast),border-color var(--ease-fast)}.right-panel-tab:hover{background:var(--bg-hover);color:var(--text-700)}.right-panel-tab.active{background:var(--primary-soft);border-color:var(--primary-border);color:var(--primary)}.right-panel-tab.has-node .right-panel-tab-dot{display:inline-block}.right-panel-tab-dot{width:6px;height:6px;border-radius:50%;background:var(--success);display:inline-block;flex-shrink:0}.right-panel-body{flex:1;overflow:hidden;display:flex;flex-direction:column}.header-btn-magic{background:linear-gradient(135deg,#6366f12e,#8b5cf62e)!important;border-color:#6366f166!important;color:#a78bfa!important}.header-btn-magic:hover{background:linear-gradient(135deg,#6366f147,#8b5cf647)!important;color:#c4b5fd!important}.header-btn-run{background:#10b9811f!important;border-color:#10b98159!important;color:#10b981!important}.header-btn-run:hover{background:#10b98138!important;color:#34d399!important}.header-btn-export{background:#06b6d41a!important;border-color:#06b6d44d!important;color:#06b6d4!important}.header-btn-export:hover{background:#06b6d433!important;color:#22d3ee!important}.ns-cred-status{display:flex;align-items:center;gap:7px;padding:8px 12px;border-radius:var(--r-sm);font-size:12px;font-weight:500;margin-bottom:8px}.ns-cred-status--ok{background:#10b98114;border:1px solid rgba(16,185,129,.22);color:#10b981}.ns-cred-status--warn{background:#f59e0b14;border:1px solid rgba(245,158,11,.25);color:#f59e0b}.ns-cred-field{display:flex;flex-direction:column;gap:7px;padding:12px;border-radius:var(--r-sm);background:var(--bg-input);border:1px solid var(--border-subtle);transition:border-color var(--ease-fast)}.ns-cred-field--saved{border-color:#10b9814d;background:#10b9810a}.ns-cred-field--required:not(.ns-cred-field--saved){border-color:#ef444440;background:#ef444408}.ns-cred-header{display:flex;align-items:center;gap:7px}.ns-cred-key-icon{color:var(--text-400);flex-shrink:0}.ns-cred-label{flex:1;font-size:12px;font-weight:600;color:var(--text-700);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ns-cred-header-badges{display:flex;align-items:center;gap:4px;flex-shrink:0}.ns-cred-pill{display:inline-flex;align-items:center;gap:3px;padding:2px 7px;border-radius:20px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.ns-cred-pill--required{background:#ef44441a;color:#ef4444;border:1px solid rgba(239,68,68,.25)}.ns-cred-pill--optional{background:#6b72801a;color:var(--text-500);border:1px solid var(--border-subtle)}.ns-cred-pill--saved{background:#10b9811f;color:#10b981;border:1px solid rgba(16,185,129,.3)}.ns-cred-saved-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.ns-cred-saved-value{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-500);font-family:var(--font-mono)}.ns-cred-ok-icon{color:#10b981;flex-shrink:0}.ns-cred-clear-btn{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:var(--r-xs);border:1px solid rgba(239,68,68,.25);background:transparent;color:#ef4444;font-size:11px;cursor:pointer;transition:background var(--ease-fast);flex-shrink:0}.ns-cred-clear-btn:hover{background:#ef44441a}.ns-cred-hint{font-size:11px;color:var(--text-400);line-height:1.4;font-style:italic}.ns-cred-divider{text-align:center;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-400);padding:6px 0 2px;position:relative}.ns-cred-divider:before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:var(--border-subtle);z-index:0}.ns-cred-divider span{position:relative;z-index:1;background:var(--bg-panel);padding:0 8px}.ns-cred-save-btn{padding:5px 12px;border-radius:var(--r-xs);border:1px solid var(--primary-border);background:var(--primary-soft);color:var(--primary);font-size:12px;font-weight:600;cursor:pointer;flex-shrink:0;display:inline-flex;align-items:center;gap:4px;white-space:nowrap;transition:background var(--ease-fast),opacity var(--ease-fast)}.ns-cred-save-btn:hover:not(:disabled){background:#6366f138}.ns-cred-save-btn:disabled{opacity:.35;cursor:not-allowed}.ns-cred-save-btn.saved{background:#10b98126;border-color:#10b98166;color:#10b981}.ns-empty-sub{font-size:12px;color:var(--text-400)}.ctx-menu{position:fixed;z-index:9999;min-width:220px;background:var(--bg-panel, #1a1a2e);border:1px solid var(--border-mid, rgba(255, 255, 255, .1));border-radius:10px;padding:6px;box-shadow:0 8px 32px #00000073,0 2px 8px #0000004d,inset 0 1px #ffffff0f;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);animation:ctx-appear .12s cubic-bezier(.16,1,.3,1);transform-origin:top left;-webkit-user-select:none;user-select:none}@keyframes ctx-appear{0%{opacity:0;transform:scale(.92) translateY(-4px)}to{opacity:1;transform:scale(1) translateY(0)}}.ctx-menu-heading{font-size:10px;font-weight:600;color:var(--text-400, #888);text-transform:uppercase;letter-spacing:.06em;padding:4px 10px 6px}.ctx-menu-item{display:flex;align-items:center;gap:9px;width:100%;padding:7px 10px;border:none;background:transparent;border-radius:6px;color:var(--text-primary, #e2e8f0);font-size:13px;cursor:pointer;text-align:left;transition:background .1s,color .1s}.ctx-menu-item:hover{background:#6366f126;color:#fff}.ctx-menu-item--danger{color:#f87171}.ctx-menu-item--danger:hover{background:#ef444426;color:#fca5a5}.ctx-menu-icon{display:flex;align-items:center;opacity:.75;flex-shrink:0}.ctx-menu-item:hover .ctx-menu-icon{opacity:1}.ctx-menu-label{flex:1}.ctx-menu-shortcut{font-size:11px;color:var(--text-400, #888);font-family:JetBrains Mono,monospace;margin-left:auto;padding-left:12px;opacity:.7}.ctx-menu-divider{height:1px;background:var(--border-subtle, rgba(255, 255, 255, .07));margin:4px 0}.kb-help-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:8888;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;animation:modal-fade-in .18s ease}.kb-help-panel{background:var(--bg-panel, #1a1a2e);border:1px solid var(--border-mid, rgba(255, 255, 255, .1));border-radius:14px;padding:24px 28px;width:480px;max-height:80vh;overflow-y:auto;box-shadow:0 24px 64px #00000080}.kb-help-title{font-size:16px;font-weight:700;color:var(--text-primary, #e2e8f0);margin-bottom:18px;display:flex;align-items:center;gap:8px}.kb-help-section{margin-bottom:16px}.kb-help-section-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-400, #888);margin-bottom:8px}.kb-help-row{display:flex;justify-content:space-between;align-items:center;padding:5px 0;border-bottom:1px solid var(--border-subtle, rgba(255, 255, 255, .05));font-size:13px;color:var(--text-secondary, #cbd5e1)}.kb-help-row:last-child{border-bottom:none}.kb-help-keys{display:flex;gap:4px}.kb-key{display:inline-flex;align-items:center;padding:2px 7px;background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:5px;font-family:JetBrains Mono,monospace;font-size:11px;color:var(--text-primary, #e2e8f0)}.settings-page{height:100%;min-height:100%;overflow-y:auto;overflow-x:hidden;padding:18px 16px 26px;background:radial-gradient(140% 120% at 0% -30%,var(--primary-soft),transparent 46%),radial-gradient(120% 80% at 100% 0%,rgba(99,102,241,.08),transparent 58%),var(--bg-app);scrollbar-width:thin;scrollbar-color:var(--border-mid) transparent}.settings-page::-webkit-scrollbar{width:10px}.settings-page::-webkit-scrollbar-track{background:transparent}.settings-page::-webkit-scrollbar-thumb{background:var(--border-mid);border-radius:999px}.settings-shell{width:min(1240px,100%);margin:0 auto;padding-bottom:22px}.settings-header{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:12px;border:1px solid var(--border-subtle);background:linear-gradient(155deg,var(--bg-panel),rgba(99,102,241,.07));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:var(--r-lg);padding:14px 18px;box-shadow:var(--shadow-md)}body[data-theme=light] .settings-header{border-color:var(--border-mid);background:linear-gradient(145deg,#ffffffdb,#b453091a)}.settings-header-main{display:flex;flex-direction:column;gap:8px;min-width:0;flex:1 1 440px}.settings-overline{margin:0;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-500);font-weight:700}.settings-header-title h1{margin:0;font-size:clamp(1.24rem,2vw,1.52rem);letter-spacing:-.01em}.settings-header-title p{margin:4px 0 0;color:var(--text-700);font-size:.88rem;max-width:720px;line-height:1.5}.settings-back-btn{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--border-subtle);background:var(--bg-input);color:var(--text-700);border-radius:var(--r-sm);padding:8px 11px;cursor:pointer;font-weight:700;font-size:12px;transition:all var(--ease-fast);width:fit-content}.settings-back-btn:hover{color:var(--text-900);background:var(--bg-hover);border-color:var(--border-strong)}.settings-header-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-width:min(360px,100%);flex:0 0 360px}.settings-metric{border:1px solid var(--border-subtle);background:var(--bg-input);border-radius:var(--r-sm);padding:8px 10px;display:flex;flex-direction:column;gap:1px}.settings-metric-label{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--text-500);font-weight:700}.settings-metric-value{font-size:.84rem;color:var(--text-900);font-family:var(--font-display)}.settings-notice{display:flex;align-items:center;gap:9px;margin-bottom:12px;border:1px solid;padding:9px 11px;border-radius:var(--r-sm);font-size:.84rem;font-weight:600;box-shadow:var(--shadow-sm);width:min(760px,100%)}.settings-notice--success{background:#22c55e21;border-color:#22c55e66;color:#bbf7d0}.settings-notice--error{background:#ef444421;border-color:#f8717166;color:#fecaca}.settings-notice--info{background:#3b82f61f;border-color:#60a5fa66;color:#bfdbfe}body[data-theme=light] .settings-notice--success{color:#166534;background:#bbf7d0cc}body[data-theme=light] .settings-notice--error{color:#991b1b;background:#fecacac7}body[data-theme=light] .settings-notice--info{color:#1e3a8a;background:#bfdbfeb8}.settings-layout{display:grid;grid-template-columns:minmax(230px,280px) minmax(0,1fr);gap:12px;align-items:start}.settings-sidebar{border:1px solid var(--border-subtle);background:var(--bg-panel);border-radius:var(--r-lg);padding:12px;position:sticky;top:12px;max-height:calc(100dvh - 36px);overflow-y:auto;box-shadow:var(--shadow-sm);scrollbar-width:thin;scrollbar-color:var(--border-mid) transparent}body[data-theme=light] .settings-sidebar{border-color:var(--border-mid)}.settings-sidebar::-webkit-scrollbar{width:7px}.settings-sidebar::-webkit-scrollbar-thumb{background:var(--border-mid);border-radius:999px}.settings-sidebar-head h2{margin:0;font-size:1rem}.settings-sidebar-head p{margin-top:4px;font-size:.8rem;color:var(--text-500)}.settings-nav{margin-top:12px;display:flex;flex-direction:column;gap:6px}.settings-nav-btn{width:100%;display:inline-flex;align-items:center;gap:8px;border:1px solid transparent;background:transparent;color:var(--text-700);border-radius:var(--r-sm);padding:9px 10px;cursor:pointer;font-size:.82rem;font-weight:700;text-align:left;transition:all var(--ease-fast)}.settings-nav-btn:hover{background:var(--primary-soft);color:var(--primary);border-color:var(--primary-border)}.settings-nav-btn.active{background:var(--primary-soft);border-color:var(--primary-border);color:var(--primary);box-shadow:inset 0 0 0 1px #6366f11f}.settings-sidebar-meta{margin-top:12px;border-top:1px dashed var(--border-subtle);padding-top:12px}.settings-meta-item{display:inline-flex;align-items:center;gap:7px;font-size:.79rem;color:var(--text-500)}.settings-content{min-width:0}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}.settings-panel{border:1px solid var(--border-subtle);background:var(--bg-panel);border-radius:var(--r-lg);padding:14px;display:flex;flex-direction:column;gap:9px;box-shadow:var(--shadow-sm);scroll-margin-top:16px}body[data-theme=light] .settings-panel{border-color:var(--border-mid)}.settings-panel--wide{grid-column:1 / -1}.settings-panel--danger{border-color:#f871715c}body[data-theme=light] .settings-panel--danger{border-color:#dc262647}.settings-panel-head{display:flex;flex-direction:column;gap:5px;margin-bottom:2px}.settings-panel-head h2{margin:0;font-size:.97rem;display:inline-flex;align-items:center;gap:8px}.settings-panel-head p{margin:0;color:var(--text-500);font-size:.8rem;line-height:1.45}.settings-row{display:flex;justify-content:space-between;gap:14px;font-size:.85rem;color:var(--text-700);padding:4px 0;border-bottom:1px dashed var(--border-subtle)}.settings-row:last-of-type{border-bottom:none}.settings-row strong{text-align:right;word-break:break-word}.settings-label{font-size:.79rem;color:var(--text-500);font-weight:700;letter-spacing:.02em}.settings-input{width:100%;border:1px solid var(--border-subtle);background:var(--bg-input);color:var(--text-900);border-radius:var(--r-sm);padding:9px 11px;outline:none;transition:all var(--ease-fast)}body[data-theme=light] .settings-input{border-color:var(--border-mid)}.settings-input:focus{border-color:var(--primary-border);box-shadow:0 0 0 3px var(--primary-soft);background:var(--bg-hover)}.settings-help{margin:0;font-size:.77rem;color:var(--text-500);line-height:1.45}.settings-help code{font-family:var(--font-mono);font-size:.72rem;padding:2px 6px;border-radius:6px;background:var(--bg-input);border:1px solid var(--border-subtle)}.settings-segment{display:flex;flex-wrap:wrap;gap:8px}.settings-segment-btn{border:1px solid var(--border-subtle);background:var(--bg-input);color:var(--text-700);border-radius:999px;padding:8px 12px;cursor:pointer;font-size:.82rem;display:inline-flex;align-items:center;gap:6px;transition:all var(--ease-fast);font-weight:600}.settings-segment-btn:hover{border-color:var(--border-strong);color:var(--text-900);background:var(--bg-hover)}.settings-segment-btn.active{border-color:var(--primary-border);background:var(--primary-soft);color:var(--primary)}.settings-progress{display:flex;flex-direction:column;gap:6px}.settings-progress-track{width:100%;height:8px;border-radius:999px;background:var(--bg-input);overflow:hidden}.settings-progress-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--primary),var(--primary-dim))}.settings-progress-label{font-size:.76rem;color:var(--text-500)}.settings-actions{display:flex;flex-wrap:wrap;gap:8px}.settings-btn{border:1px solid var(--border-subtle);background:var(--bg-input);color:var(--text-900);border-radius:var(--r-sm);padding:8px 12px;font-size:.82rem;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:7px;transition:all var(--ease-fast)}.settings-btn:focus-visible,.settings-nav-btn:focus-visible,.settings-segment-btn:focus-visible,.settings-back-btn:focus-visible{outline:2px solid var(--primary-border);outline-offset:1px}.settings-btn:hover{background:var(--bg-hover);border-color:var(--border-strong)}.settings-btn--primary{background:var(--primary-soft);color:var(--primary);border-color:var(--primary-border)}.settings-btn--primary:hover{filter:brightness(1.08)}.settings-btn--ghost{background:transparent;color:var(--text-700)}.settings-btn--danger{background:#ef444424;color:#fecaca;border-color:#f8717159}.settings-btn:disabled{opacity:.65;cursor:not-allowed}@media (max-width: 1140px){.settings-header{gap:10px}.settings-header-metrics{flex:1 1 100%;max-width:520px}}@media (max-width: 980px){.settings-page{padding:12px 12px 20px}.settings-layout{grid-template-columns:1fr;gap:10px}.settings-sidebar{position:static;top:auto;max-height:none}.settings-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.settings-header{padding:12px}.settings-grid{grid-template-columns:1fr}.settings-panel--wide{grid-column:auto}}@media (max-width: 760px){.settings-header{gap:10px;padding:11px}.settings-header-title h1{font-size:1.05rem}.settings-header-title p{font-size:.81rem}.settings-header-metrics{grid-template-columns:1fr;min-width:100%}.settings-metric{padding:7px 9px}.settings-nav{grid-template-columns:1fr}.settings-actions{flex-direction:column}.settings-actions .settings-btn{width:100%;justify-content:center}}[data-tooltip]{position:relative}[data-tooltip]:after{content:attr(data-tooltip);position:absolute;top:calc(100% + 9px);left:50%;transform:translate(-50%) translateY(-4px);background:var(--bg-panel, #1e1e2e);color:var(--text-900, #f8fafc);font-size:11px;font-weight:600;font-family:var(--font-body, sans-serif);line-height:1.4;padding:5px 10px;border-radius:8px;white-space:nowrap;pointer-events:none;opacity:0;z-index:99999;border:1px solid var(--border-mid, rgba(255, 255, 255, .12));box-shadow:0 8px 24px #0006;letter-spacing:.01em;transition:opacity .15s ease,transform .15s ease}[data-tooltip]:before{content:"";position:absolute;top:calc(100% + 4px);left:50%;transform:translate(-50%) translateY(-4px);border:5px solid transparent;border-bottom-color:var(--border-mid, rgba(255, 255, 255, .12));pointer-events:none;opacity:0;z-index:99999;transition:opacity .15s ease,transform .15s ease}[data-tooltip]:hover:after,[data-tooltip]:hover:before{opacity:1;transform:translate(-50%) translateY(0)}.header-right [data-tooltip]:after{left:auto;right:0;transform:translateY(-4px)}.header-right [data-tooltip]:before{left:auto;right:12px;transform:translateY(-4px)}.header-right [data-tooltip]:hover:after,.header-right [data-tooltip]:hover:before{transform:translateY(0)}.settings-hero{background:linear-gradient(135deg,#6366f114,#8b5cf60d 40%,#0000)!important;border-color:#6366f133!important}body[data-theme=light] .settings-hero{background:linear-gradient(135deg,#6366f10f,#ffffffe6)!important}.settings-kicker{display:inline-block;background:var(--primary-soft);color:var(--primary);border:1px solid var(--primary-border);border-radius:999px;padding:3px 10px;font-size:10px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;margin-bottom:4px}.settings-card{border-left:3px solid var(--border-subtle);transition:border-color var(--ease-fast),box-shadow var(--ease-fast)}.settings-card:hover{box-shadow:0 4px 20px #00000026}#account.settings-card{border-left-color:#6366f1}#appearance.settings-card{border-left-color:#8b5cf6}#plan.settings-card{border-left-color:#f59e0b}#runtime-api.settings-card{border-left-color:#10b981}#runtime-key.settings-card{border-left-color:#3b82f6}#workspace.settings-card{border-left-color:#06b6d4}#danger.settings-card.danger-zone{border-left-color:#ef4444}#account .settings-card-head h2{color:#818cf8}#appearance .settings-card-head h2{color:#a78bfa}#plan .settings-card-head h2{color:#fbbf24}#runtime-api .settings-card-head h2{color:#34d399}#runtime-key .settings-card-head h2{color:#60a5fa}#workspace .settings-card-head h2{color:#22d3ee}#danger .settings-card-head h2{color:#f87171}.settings-sidebar-btn.active{background:linear-gradient(90deg,var(--primary-soft),transparent)!important;border-left:2px solid var(--primary)!important;border-color:var(--primary-border)!important;padding-left:8px}.settings-input:focus{border-color:var(--primary)!important;box-shadow:0 0 0 3px #6366f12e,0 1px 4px #00000026!important}.settings-pill.active{box-shadow:0 0 0 2px var(--primary-border),inset 0 0 0 1px #6366f11a;font-weight:700}.settings-btn.primary{background:linear-gradient(120deg,var(--primary-soft),rgba(139,92,246,.12));border-color:var(--primary-border)}.settings-card.danger-zone{background:#ef44440a}.settings-status-chip{font-weight:700;letter-spacing:.04em;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.settings-sidebar-card{background:#6366f10a;border:1px solid var(--primary-border);border-radius:var(--r-sm);padding:10px}.settings-back-btn{font-weight:700;letter-spacing:.01em}.settings-back-btn:hover{background:var(--primary-soft)!important;color:var(--primary)!important;border-color:var(--primary-border)!important}.settings-avatar{width:52px;height:52px;border-radius:50%;border:2px solid var(--primary-border);box-shadow:0 0 0 4px var(--primary-soft);object-fit:cover}.settings-avatar-fallback{width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,var(--primary),#7c3aed);display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:800;color:#fff;border:2px solid var(--primary-border);box-shadow:0 0 0 4px var(--primary-soft);font-family:var(--font-display)}.settings-account-row{display:flex;align-items:center;gap:14px;margin-bottom:4px}.toast-container{position:fixed;bottom:24px;right:24px;z-index:100000;display:flex;flex-direction:column;gap:10px;max-width:380px;width:calc(100vw - 48px);pointer-events:none}.toast-card{display:flex;align-items:flex-start;gap:10px;background:var(--bg-panel);border:1px solid var(--border-mid);border-radius:12px;padding:12px 14px;box-shadow:0 12px 40px #00000073,0 2px 8px #00000040;pointer-events:all;opacity:0;transform:translate(20px) scale(.96);transition:opacity .25s ease,transform .25s ease;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.toast-card--visible{opacity:1;transform:translate(0) scale(1)}.toast-card--leaving{opacity:0;transform:translate(20px) scale(.96)}.toast-card--success{border-color:#22c55e66;background:linear-gradient(135deg,rgba(34,197,94,.08),var(--bg-panel))}.toast-card--success .toast-icon{color:#4ade80}.toast-card--error{border-color:#ef444466;background:linear-gradient(135deg,rgba(239,68,68,.08),var(--bg-panel))}.toast-card--error .toast-icon{color:#f87171}.toast-card--warning{border-color:#fbbf2466;background:linear-gradient(135deg,rgba(251,191,36,.08),var(--bg-panel))}.toast-card--warning .toast-icon{color:#fbbf24}.toast-card--info{border-color:#6366f159;background:linear-gradient(135deg,rgba(99,102,241,.08),var(--bg-panel))}.toast-card--info .toast-icon{color:#818cf8}.toast-icon{flex-shrink:0;margin-top:1px}.toast-body{flex:1;min-width:0}.toast-title{font-size:.82rem;font-weight:700;color:var(--text-900);margin-bottom:2px}.toast-message{font-size:.8rem;color:var(--text-700);line-height:1.45;word-break:break-word}.toast-close{flex-shrink:0;background:transparent;border:none;color:var(--text-500);cursor:pointer;padding:2px;border-radius:4px;display:flex;align-items:center;transition:color var(--ease-fast);margin-top:-1px}.toast-close:hover{color:var(--text-900)}body[data-theme=light] .toast-card{background:#fffffff2;box-shadow:0 12px 40px #00000026,0 2px 8px #00000014}.header-mobile-menu-btn,.header-mobile-menu{display:none}@media (max-width: 1024px){.settings-layout{flex-direction:column;gap:24px}.settings-sidebar{width:100%;max-width:none;border-right:none;border-bottom:1px solid var(--border-subtle);padding-bottom:16px}.settings-nav{flex-direction:row;flex-wrap:wrap}}@media (max-width: 768px){.header-actions{display:none}.header-mobile-menu-btn{display:flex;align-items:center;justify-content:center;position:fixed;top:52px;left:0;width:42px;height:42px;background:var(--bg-panel);border:1px solid var(--border-mid);border-right:none;border-top-right-radius:50%;border-bottom-right-radius:50%;color:var(--text-400);cursor:pointer;z-index:100}.header-mobile-menu{display:block;position:absolute;top:52px;left:0;right:0;background:var(--bg-panel);border-bottom:1px solid var(--border-subtle);z-index:200;box-shadow:var(--shadow-md)}.header-mobile-menu-inner{padding:16px;display:flex;flex-direction:column;gap:8px}.header-user-name{display:none}.settings-shell{padding:16px}.settings-header-main{flex-direction:column;align-items:flex-start;gap:16px}.settings-header-metrics{grid-template-columns:repeat(2,1fr)}.settings-grid{grid-template-columns:1fr}.settings-panel--wide{grid-column:span 1}.canvas-area{overflow:auto}.react-flow__node{transform:scale(.8)}.left-palette{position:fixed;top:0;left:0;bottom:0;width:80vw;transform:translate(-100%);transition:transform .3s ease-in-out;z-index:300}.left-palette.open{transform:translate(0);box-shadow:6px 0 50px #00000080}.left-palette-backdrop{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:299}.left-palette.open+.left-palette-backdrop{display:block}.modal-card,.modal-panel{width:90vw;padding:24px}.right-panel{position:fixed;top:52px;right:0;bottom:0;width:80vw;transform:translate(100%);transition:transform .3s ease-in-out;z-index:200}.right-panel.open{transform:translate(0);box-shadow:-6px 0 50px #00000080}.node-sidebar{padding:16px}.ns-cred-input-row{flex-direction:column;align-items:stretch;gap:8px}.bottom-bar{padding:4px}.bottom-bar-btn{width:36px;height:36px}.draggable-node{padding:10px}.pipeline-node{min-width:200px}}.right-panel-open-btn{display:flex;align-items:center;justify-content:center;position:fixed;top:52px;right:0;width:42px;height:42px;background:var(--bg-panel);border:1px solid var(--border-mid);border-right:none;border-top-left-radius:50%;border-bottom-left-radius:50%;color:var(--text-400);cursor:pointer;z-index:199}.right-panel-open-btn.hidden{display:none}@media (max-width: 480px){.settings-header-metrics{grid-template-columns:1fr}.settings-actions,.settings-segment{flex-direction:column;align-items:stretch}.modal-card,.modal-panel{padding:16px}.modal-header{margin-bottom:16px}.bottom-bar{padding:2px}.bottom-bar-btn{width:32px;height:32px}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.3)}}.landing-scroll{height:100dvh;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:rgba(99,102,241,.3) transparent}.landing-scroll::-webkit-scrollbar{width:5px}.landing-scroll::-webkit-scrollbar-track{background:transparent}.landing-scroll::-webkit-scrollbar-thumb{background:#6366f159;border-radius:100px}.landing-scroll::-webkit-scrollbar-thumb:hover{background:#6366f199}
