.react-flow{direction:ltr;--xy-edge-stroke-default:#b1b1b7;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#555;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:rgba(255,255,255,0.5);--xy-minimap-background-color-default:#fff;--xy-minimap-mask-background-color-default:rgba(240,240,240,0.6);--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#e2e2e2;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:transparent;--xy-background-pattern-dots-color-default:#91919a;--xy-background-pattern-lines-color-default:#eee;--xy-background-pattern-cross-color-default:#e2e2e2;background-color:var(--xy-background-color,var(--xy-background-color-default));--xy-node-color-default:inherit;--xy-node-border-default:1px solid #1a192b;--xy-node-background-color-default:#fff;--xy-node-group-background-color-default:rgba(240,240,240,0.25);--xy-node-boxshadow-hover-default:0 1px 4px 1px rgba(0,0,0,0.08);--xy-node-boxshadow-selected-default:0 0 0 0.5px #1a192b;--xy-node-border-radius-default:3px;--xy-handle-background-color-default:#1a192b;--xy-handle-border-color-default:#fff;--xy-selection-background-color-default:rgba(0,89,220,0.08);--xy-selection-border-default:1px dotted rgba(0,89,220,0.8);--xy-controls-button-background-color-default:#fefefe;--xy-controls-button-background-color-hover-default:#f4f4f4;--xy-controls-button-color-default:inherit;--xy-controls-button-color-hover-default:inherit;--xy-controls-button-border-color-default:#eee;--xy-controls-box-shadow-default:0 0 2px 1px rgba(0,0,0,0.08);--xy-edge-label-background-color-default:#ffffff;--xy-edge-label-color-default:inherit;--xy-resize-background-color-default:#3367d9}.react-flow.dark{--xy-edge-stroke-default:#3e3e3e;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#727272;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:rgba(150,150,150,0.25);--xy-minimap-background-color-default:#141414;--xy-minimap-mask-background-color-default:rgba(60,60,60,0.6);--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#2b2b2b;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:#141414;--xy-background-pattern-dots-color-default:#777;--xy-background-pattern-lines-color-default:#777;--xy-background-pattern-cross-color-default:#777;--xy-node-color-default:#f8f8f8;--xy-node-border-default:1px solid #3c3c3c;--xy-node-background-color-default:#1e1e1e;--xy-node-group-background-color-default:rgba(240,240,240,0.25);--xy-node-boxshadow-hover-default:0 1px 4px 1px rgba(255,255,255,0.08);--xy-node-boxshadow-selected-default:0 0 0 0.5px #999;--xy-handle-background-color-default:#bebebe;--xy-handle-border-color-default:#1e1e1e;--xy-selection-background-color-default:rgba(200,200,220,0.08);--xy-selection-border-default:1px dotted rgba(200,200,220,0.8);--xy-controls-button-background-color-default:#2b2b2b;--xy-controls-button-background-color-hover-default:#3e3e3e;--xy-controls-button-color-default:#f8f8f8;--xy-controls-button-color-hover-default:#fff;--xy-controls-button-border-color-default:#5b5b5b;--xy-controls-box-shadow-default:0 0 2px 1px rgba(0,0,0,0.08);--xy-edge-label-background-color-default:#141414;--xy-edge-label-color-default:#f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props,var(--xy-background-color,var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width,var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke,var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width,var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{overflow:visible;position:absolute;pointer-events:none}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path,.react-flow__edge.selected .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected,var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}svg.react-flow__connectionline{z-index:1001;overflow:visible;position:absolute}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background-color:var(--xy-handle-background-color,var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color,var(--xy-handle-border-color-default));border-radius:100%}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:0;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.bottom.center,.react-flow__panel.top.center{left:50%;transform:translateX(-15px) translateX(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px) translateY(-50%)}.react-flow__attribution{font-size:10px;background:var(--xy-attribution-background-color,var(--xy-attribution-background-color-default));padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{pointer-events:none}.react-flow__edgelabel-renderer,.react-flow__viewport-portal{position:absolute;width:100%;height:100%;-webkit-user-select:none;-moz-user-select:none;user-select:none;left:0;top:0}.react-flow__minimap{background:var(
    --xy-minimap-background-color-props,var(--xy-minimap-background-color,var(--xy-minimap-background-color-default))
  )}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var(
      --xy-minimap-mask-background-color-props,var(--xy-minimap-mask-background-color,var(--xy-minimap-mask-background-color-default))
    );stroke:var(
      --xy-minimap-mask-stroke-color-props,var(--xy-minimap-mask-stroke-color,var(--xy-minimap-mask-stroke-color-default))
    );stroke-width:var(
      --xy-minimap-mask-stroke-width-props,var(--xy-minimap-mask-stroke-width,var(--xy-minimap-mask-stroke-width-default))
    )}.react-flow__minimap-node{fill:var(
      --xy-minimap-node-background-color-props,var(--xy-minimap-node-background-color,var(--xy-minimap-node-background-color-default))
    );stroke:var(
      --xy-minimap-node-stroke-color-props,var(--xy-minimap-node-stroke-color,var(--xy-minimap-node-stroke-color-default))
    );stroke-width:var(
      --xy-minimap-node-stroke-width-props,var(--xy-minimap-node-stroke-width,var(--xy-minimap-node-stroke-width-default))
    )}.react-flow__background-pattern.dots{fill:var(
      --xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-dots-color-default))
    )}.react-flow__background-pattern.lines{stroke:var(
      --xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-lines-color-default))
    )}.react-flow__background-pattern.cross{stroke:var(
      --xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-cross-color-default))
    )}.react-flow__controls{display:flex;flex-direction:column;box-shadow:var(--xy-controls-box-shadow,var(--xy-controls-box-shadow-default))}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{display:flex;justify-content:center;align-items:center;height:26px;width:26px;padding:4px;border:none;background:var(--xy-controls-button-background-color,var(--xy-controls-button-background-color-default));border-bottom:1px solid var(
        --xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default))
      );color:var(
      --xy-controls-button-color-props,var(--xy-controls-button-color,var(--xy-controls-button-color-default))
    );cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px;fill:currentColor}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-default,.react-flow__node-group,.react-flow__node-input,.react-flow__node-output{padding:10px;border-radius:var(--xy-node-border-radius,var(--xy-node-border-radius-default));width:150px;font-size:12px;color:var(--xy-node-color,var(--xy-node-color-default));text-align:center;border:var(--xy-node-border,var(--xy-node-border-default));background-color:var(--xy-node-background-color,var(--xy-node-background-color-default))}.react-flow__node-default.selectable:hover,.react-flow__node-group.selectable:hover,.react-flow__node-input.selectable:hover,.react-flow__node-output.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover,var(--xy-node-boxshadow-hover-default))}.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.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{box-shadow:var(--xy-node-boxshadow-selected,var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color,var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color,var(--xy-selection-background-color-default));border:var(--xy-selection-border,var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var(
        --xy-controls-button-background-color-hover-props,var(--xy-controls-button-background-color-hover,var(--xy-controls-button-background-color-hover-default))
      );color:var(
        --xy-controls-button-color-hover-props,var(--xy-controls-button-color-hover,var(--xy-controls-button-color-hover-default))
      )}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var(
        --xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default))
      )}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.bottom,.react-flow__resize-control.top{cursor:ns-resize}.react-flow__resize-control.bottom.right,.react-flow__resize-control.top.left{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:5px;height:5px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));translate:-50% -50%}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.bottom.left,.react-flow__resize-control.handle.top.left{left:0}.react-flow__resize-control.handle.bottom.right,.react-flow__resize-control.handle.top.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.bottom,.react-flow__resize-control.line.top{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color,var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color,var(--xy-edge-label-color-default))}@keyframes v2spin{to{transform:rotate(1turn)}}@keyframes v2NodeAppear{0%{opacity:0;transform:scale(.85) translateY(6px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes v2MenuIn{0%{opacity:0;transform:scale(.92) translateY(-6px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes v2ShimmerAnim{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes v2-pulse{0%,to{opacity:1}50%{opacity:.4}}[data-canvas-v2]{--v2-bg:#0a0a0a;--v2-surface-node-gradient:linear-gradient(160deg,rgba(255,255,255,0.13),rgba(255,255,255,0.07) 45%,rgba(255,255,255,0.04));--v2-surface-node:rgba(255,255,255,0.07);--v2-surface-float:#181818;--v2-surface-menu:#181818;--v2-surface-panel:#181818;--v2-surface-solid:#181818;--v2-scrollbar-thumb:rgba(255,255,255,0.26);--v2-scrollbar-thumb-hover:rgba(255,255,255,0.34);--v2-panel-inset-shadow:inset 0 1px 0 rgba(255,255,255,0.22),inset 0 -1px 0 rgba(0,0,0,0.25);--v2-bg-input:rgba(255,255,255,0.06);--v2-bg-elevated:#1c1c1c;--v2-text-primary:rgba(255,255,255,0.9);--v2-text-secondary:rgba(255,255,255,0.6);--v2-text-muted:rgba(255,255,255,0.5);--v2-text-subtle:rgba(255,255,255,0.35);--v2-text-placeholder:rgba(255,255,255,0.28);--v2-stroke-default:rgba(255,255,255,0.08);--v2-stroke-strong:rgba(255,255,255,0.12);--v2-stroke-weak:rgba(255,255,255,0.05);--v2-stroke-node:rgba(255,255,255,0.18);--v2-node-shadow:inset 0 1px 0 rgba(255,255,255,0.28),inset 0 -1px 0 rgba(0,0,0,0.15),0 8px 32px rgba(0,0,0,0.5),0 2px 8px rgba(0,0,0,0.3);--v2-stroke-15:rgba(255,255,255,0.15);--v2-blue:#3b82f6;--v2-red:#ef4444;--v2-red-85:rgba(239,68,68,0.85);--v2-green:#10b981;--v2-green-15:rgba(16,185,129,0.15);--v2-green-30:rgba(16,185,129,0.30);--v2-green-border:rgba(16,185,129,0.50);--v2-amber:#f59e0b;--v2-amber-15:rgba(245,158,11,0.15);--v2-hover-surface:rgba(255,255,255,0.06);--v2-hover-surface-sm:rgba(255,255,255,0.04);--v2-selected-surface:#252525;--v2-border-hover:rgba(255,255,255,0.12);--v2-tooltip-bg:rgba(255,255,255,0.95);--v2-tooltip-fg:rgba(0,0,0,0.85);--v2-minimap-mask:rgba(0,0,0,0.45);--v2-accent:#FF0044;--v2-accent-15:rgba(255,0,68,0.15);--v2-accent-20:rgba(255,0,68,0.20);--v2-accent-30:rgba(255,0,68,0.30);--v2-accent-45:rgba(255,0,68,0.45);--v2-accent-text:#ffb3c6;--v2-brand-gradient:linear-gradient(135deg,#cc0033,#FF0044);--v2-shadow-node:0 4px 16px rgba(0,0,0,0.30);--v2-shadow-surface:0 8px 32px rgba(0,0,0,0.40);--v2-shadow-menu:0 24px 60px rgba(0,0,0,0.70),0 0 0 0.5px rgba(255,255,255,0.05) inset;--v2-shadow-fab:0 4px 20px rgba(255,0,68,0.50);--v2-shadow-fab-hover:0 6px 28px rgba(255,0,68,0.70);--v2-conn-color:rgba(255,255,255,0.40);--v2-conn-hover:rgba(255,255,255,0.82);--v2-radius-6:6px;--v2-radius-8:8px;--v2-radius-10:10px;--v2-radius-12:12px;--v2-radius-14:14px;--v2-radius-16:16px;--v2-radius-node:16px;--v2-sidebar-btn-hover:rgba(255,255,255,0.08);--v2-sidebar-sep:rgba(255,255,255,0.10)}[data-canvas-v2] .v2-node-surface{background:var(--v2-surface-node-gradient);border-color:var(--v2-stroke-node)}[data-canvas-v2],[data-canvas-v2] .react-flow__node{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}[data-canvas-v2] .react-flow__node{text-rendering:optimizeLegibility;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}[data-canvas-v2] .react-flow__node img{image-rendering:auto}[data-canvas-v2] .react-flow__node.selected>div{outline:none!important;border-radius:0!important}[data-canvas-v2] .react-flow__node.dragging{z-index:999}[data-canvas-v2] .react-flow__handle{background:transparent;border:none;border-radius:50%;min-width:unset;min-height:unset}[data-canvas-v2] .react-flow__edge .react-flow__edge-path{stroke:var(--v2-conn-color);stroke-width:2;transition:stroke .2s,stroke-width .2s,filter .2s}[data-canvas-v2] .react-flow__edge.selected .react-flow__edge-path,[data-canvas-v2] .react-flow__edge:hover .react-flow__edge-path{stroke:var(--v2-conn-hover);stroke-width:3;filter:drop-shadow(0 0 4px rgba(255,255,255,.22))}[data-canvas-v2] .react-flow__node.selected{z-index:100!important}[data-canvas-v2] .react-flow__node.selected .v2-node-surface{border-color:transparent!important;box-shadow:0 0 0 1px rgba(255,0,68,.35),0 0 10px 0 rgba(255,60,110,.45),0 0 22px 2px rgba(255,0,68,.3),0 0 42px 6px rgba(255,110,40,.16),0 8px 32px rgba(0,0,0,.45)!important}@property --v2-sel-angle{syntax:"<angle>";initial-value:0deg;inherits:false}[data-canvas-v2] .react-flow__node.selected .v2-node-surface:after{content:"";position:absolute;inset:0;border-radius:inherit;padding:1.5px;background:conic-gradient(from var(--v2-sel-angle),#FF0044,#ff5e2e,#ff9a00,#ff2e6d,#ff0055,#ff1e88,#ff4d00,#FF0044);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;pointer-events:none;z-index:3;animation:v2-sel-flow 2.5s linear infinite}@keyframes v2-sel-flow{to{--v2-sel-angle:360deg}}@media (prefers-reduced-motion:reduce){[data-canvas-v2] .react-flow__node.selected .v2-node-surface:after{animation:none}}[data-canvas-v2] .react-flow__node:hover{z-index:50}[data-canvas-v2] .react-flow__pane{cursor:default}[data-canvas-v2] .react-flow{background-color:var(--v2-bg)}[data-canvas-v2][data-cursor-size=sm] .react-flow__pane{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='M2 2l10 5-5 1-2 5z' fill='white' stroke='%23222' stroke-width='1.2'/%3E%3C/svg%3E") 1 1,default}[data-canvas-v2][data-cursor-size=lg] .react-flow__pane{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 16 16'%3E%3Cpath d='M2 2l10 5-5 1-2 5z' fill='white' stroke='%23222' stroke-width='0.8'/%3E%3C/svg%3E") 3 3,default}[data-canvas-v2][data-canvas-bg=light]{--v2-bg:#f0ede8;--v2-surface-node:rgba(255,255,255,0.82);--v2-surface-node-gradient:linear-gradient(160deg,rgba(255,255,255,0.95),rgba(248,247,244,0.90));--v2-surface-panel:rgba(255,255,255,0.96);--v2-surface-solid:#ffffff;--v2-scrollbar-thumb:rgba(10,10,15,0.22);--v2-scrollbar-thumb-hover:rgba(10,10,15,0.32);--v2-panel-inset-shadow:inset 0 1px 0 rgba(255,255,255,0.9),inset 0 -1px 0 rgba(0,0,0,0.06);--v2-surface-float:rgba(255,255,255,0.98);--v2-surface-menu:rgba(255,255,255,0.97);--v2-bg-input:rgba(0,0,0,0.04);--v2-bg-elevated:#ffffff;--v2-text-primary:rgba(10,10,15,0.88);--v2-text-secondary:rgba(10,10,15,0.60);--v2-text-muted:rgba(10,10,15,0.45);--v2-text-subtle:rgba(10,10,15,0.30);--v2-text-placeholder:rgba(10,10,15,0.28);--v2-stroke-node:rgba(0,0,0,0.10);--v2-stroke-default:rgba(0,0,0,0.07);--v2-stroke-strong:rgba(0,0,0,0.13);--v2-stroke-weak:rgba(0,0,0,0.04);--v2-stroke-15:rgba(0,0,0,0.12);--v2-node-shadow:inset 0 1px 0 rgba(255,255,255,0.8),0 2px 12px rgba(0,0,0,0.08),0 1px 3px rgba(0,0,0,0.05);--v2-conn-color:rgba(0,0,0,0.30);--v2-conn-hover:rgba(0,0,0,0.75);--v2-hover-surface:rgba(0,0,0,0.05);--v2-hover-surface-sm:rgba(0,0,0,0.03);--v2-selected-surface:rgba(0,0,0,0.08);--v2-border-hover:rgba(0,0,0,0.10);--v2-tooltip-bg:rgba(24,24,26,0.95);--v2-tooltip-fg:rgba(255,255,255,0.92);--v2-minimap-mask:rgba(0,0,0,0.10)}[data-canvas-v2][data-canvas-bg=light] .react-flow{background-color:var(--v2-bg)}[data-canvas-v2][data-canvas-bg=light] .react-flow__background pattern circle{fill:rgba(0,0,0,.15)}[data-canvas-v2][data-canvas-bg=light] .react-flow__minimap-node{stroke:rgba(0,0,0,.15)}[data-canvas-v2][data-canvas-bg=light] .v2-node-surface{background:rgba(255,255,255,.82)!important;border-color:rgba(0,0,0,.1)!important}[data-canvas-v2][data-canvas-bg=light] .react-flow__node [contenteditable].nowheel,[data-canvas-v2][data-canvas-bg=light] .react-flow__node textarea{color:rgba(10,10,15,.82)!important}[data-canvas-v2][data-canvas-bg=light] .react-flow__node [style*=surface-panel]{border-color:rgba(0,0,0,.08)!important}[data-canvas-v2][data-canvas-bg=light] .react-flow__node>div>div:first-child{color:rgba(10,10,15,.5)!important}[data-canvas-v2][data-canvas-bg=light] .react-flow__node button,[data-canvas-v2][data-canvas-bg=light] .react-flow__node select{color:rgba(10,10,15,.7)!important}[data-canvas-v2][data-canvas-bg=light] .tiptap{color:rgba(10,10,15,.85)!important;caret-color:rgba(10,10,15,.85)!important}[data-canvas-v2][data-canvas-bg=light] .tiptap p.is-editor-empty:first-child:before{color:rgba(10,10,15,.25)!important}[data-canvas-v2][data-canvas-bg=light] .tiptap h1,[data-canvas-v2][data-canvas-bg=light] .tiptap h2,[data-canvas-v2][data-canvas-bg=light] .tiptap h3,[data-canvas-v2][data-canvas-bg=light] .tiptap strong{color:rgba(10,10,15,.92)!important}[data-canvas-v2][data-canvas-bg=light] .tiptap pre{background:rgba(0,0,0,.05)!important;border-color:rgba(0,0,0,.08)!important;color:rgba(10,10,15,.8)!important}[data-canvas-v2][data-canvas-bg=light] .tiptap code{background:rgba(0,0,0,.06)!important;color:rgba(10,10,15,.85)!important}[data-canvas-v2][data-canvas-bg=light] .tiptap hr{border-top-color:rgba(0,0,0,.1)!important}[data-canvas-v2][data-canvas-bg=light] .tiptap blockquote{color:rgba(10,10,15,.6)!important;border-left-color:rgba(255,0,68,.4)!important}.v2-fullscreen-editor[data-canvas-bg=light] .tiptap,[data-canvas-v2][data-canvas-bg=light] .v2-fullscreen-editor .tiptap{color:rgba(10,10,15,.85)!important;caret-color:rgba(10,10,15,.85)!important}[data-canvas-v2] ::-webkit-scrollbar{width:8px;height:8px}[data-canvas-v2] ::-webkit-scrollbar-track{background:transparent}[data-canvas-v2] ::-webkit-scrollbar-thumb{background:rgba(255,255,255,.18);border-radius:4px}[data-canvas-v2] ::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.3)}[data-canvas-v2] *{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.18) transparent}[data-canvas-v2][data-canvas-bg=light] ::-webkit-scrollbar-thumb{background:rgba(0,0,0,.18)}[data-canvas-v2][data-canvas-bg=light] ::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.3)}[data-canvas-v2][data-canvas-bg=light] *{scrollbar-color:rgba(0,0,0,.18) transparent}[data-canvas-v2][data-canvas-bg=light] [data-v2-credit]{color:rgba(10,10,15,.4)!important}[data-canvas-v2][data-canvas-bg=light] [data-v2-empty] svg circle,[data-canvas-v2][data-canvas-bg=light] [data-v2-empty] svg path,[data-canvas-v2][data-canvas-bg=light] [data-v2-empty] svg rect{fill:rgba(0,0,0,.12)!important}[data-canvas-v2][data-canvas-bg=light] [data-v2-empty] span{color:rgba(10,10,15,.35)!important}[data-canvas-v2][data-canvas-bg=light] .react-flow__node textarea::placeholder{color:rgba(10,10,15,.28)!important}[data-canvas-v2][data-canvas-bg=light] .react-flow__node div:has(>[contenteditable].nowheel)>div:not([contenteditable]){color:rgba(10,10,15,.28)!important}[data-canvas-v2][data-input-size=sm] .v2-prompt-view,[data-canvas-v2][data-input-size=sm] [contenteditable].nowheel,[data-canvas-v2][data-input-size=sm] textarea{font-size:10px!important}[data-canvas-v2][data-input-size=md] .v2-prompt-view,[data-canvas-v2][data-input-size=md] [contenteditable].nowheel,[data-canvas-v2][data-input-size=md] textarea{font-size:13px!important}[data-canvas-v2][data-input-size=lg] .v2-prompt-view,[data-canvas-v2][data-input-size=lg] [contenteditable].nowheel,[data-canvas-v2][data-input-size=lg] textarea{font-size:18px!important}.v2-prompt-view:empty:before{content:attr(data-placeholder);color:var(--v2-text-placeholder,rgba(255,255,255,.3));pointer-events:none}[data-canvas-v2] .tiptap{outline:none;color:rgba(255,255,255,.78);font-size:14px;line-height:1.7;min-height:100%;word-break:break-word;caret-color:rgba(255,255,255,.8)}[data-canvas-v2] .tiptap p{margin:0 0 .5em}[data-canvas-v2] .tiptap p:last-child{margin-bottom:0}[data-canvas-v2] .tiptap h1{font-size:1.6em;font-weight:700;margin:0 0 .4em;color:rgba(255,255,255,.92);line-height:1.3}[data-canvas-v2] .tiptap h2{font-size:1.3em;font-weight:600;margin:0 0 .35em;color:rgba(255,255,255,.9);line-height:1.35}[data-canvas-v2] .tiptap h3{font-size:1.1em;font-weight:600;margin:0 0 .3em;color:rgba(255,255,255,.88);line-height:1.4}[data-canvas-v2] .tiptap strong{font-weight:700;color:rgba(255,255,255,.92)}[data-canvas-v2] .tiptap em{font-style:italic}[data-canvas-v2] .tiptap ol,[data-canvas-v2] .tiptap ul{margin:0 0 .5em;padding-left:1.4em}[data-canvas-v2] .tiptap li{margin-bottom:.15em}[data-canvas-v2] .tiptap pre{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:12px 14px;margin:.5em 0;overflow-x:auto;font-family:JetBrains Mono,Fira Code,monospace;font-size:.88em;line-height:1.55;color:rgba(255,255,255,.7)}[data-canvas-v2] .tiptap pre code{background:none;padding:0;border:none;font-size:inherit;color:inherit}[data-canvas-v2] .tiptap code{background:rgba(255,255,255,.08);padding:1px 5px;border-radius:4px;font-size:.9em;font-family:JetBrains Mono,Fira Code,monospace}[data-canvas-v2] .tiptap hr{border:none;border-top:1px solid rgba(255,255,255,.1);margin:.8em 0}[data-canvas-v2] .tiptap blockquote{border-left:3px solid rgba(99,102,241,.4);padding-left:14px;margin:.5em 0;color:rgba(255,255,255,.6)}[data-canvas-v2] .tiptap table{border-collapse:collapse;width:100%;margin:.9em 0;font-size:.92em;table-layout:fixed;overflow:hidden;border-radius:8px;border:1px solid rgba(255,255,255,.1)}[data-canvas-v2] .tiptap td,[data-canvas-v2] .tiptap th{border:1px solid rgba(255,255,255,.08);padding:7px 10px;vertical-align:top;text-align:left;color:rgba(255,255,255,.72);word-break:break-word}[data-canvas-v2] .tiptap th{background:rgba(255,255,255,.045);font-weight:600;color:rgba(255,255,255,.85);letter-spacing:.01em}[data-canvas-v2] .tiptap tbody tr:nth-child(2n) td{background:rgba(255,255,255,.018)}[data-canvas-v2] .tiptap del{color:rgba(255,255,255,.4);text-decoration:line-through}[data-canvas-v2][data-canvas-bg=light] .tiptap table{border-color:rgba(10,10,15,.1)}[data-canvas-v2][data-canvas-bg=light] .tiptap td,[data-canvas-v2][data-canvas-bg=light] .tiptap th{border-color:rgba(10,10,15,.08);color:rgba(10,10,15,.72)}[data-canvas-v2][data-canvas-bg=light] .tiptap th{background:rgba(10,10,15,.04);color:rgba(10,10,15,.88)}[data-canvas-v2][data-canvas-bg=light] .tiptap tbody tr:nth-child(2n) td{background:rgba(10,10,15,.02)}[data-canvas-v2][data-canvas-bg=light] .tiptap del{color:rgba(10,10,15,.4)}[data-canvas-v2] .v2-asset-desc .tiptap{font-size:13px;min-height:60px;color:rgba(255,255,255,.6)}[data-canvas-v2] .v2-asset-desc .tiptap h1{font-size:1.4em}[data-canvas-v2] .v2-asset-desc .tiptap h2{font-size:1.2em}[data-canvas-v2] .v2-asset-desc .tiptap h3{font-size:1.05em}[data-canvas-v2][data-canvas-bg=light] .v2-asset-desc .tiptap{color:rgba(10,10,15,.65)!important}[data-canvas-v2] .tiptap p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:rgba(255,255,255,.22);pointer-events:none;height:0}[data-canvas-v2] .tiptap [style*="text-align: center"]{text-align:center}[data-canvas-v2] .tiptap [style*="text-align: right"]{text-align:right}.v2-fullscreen-editor .tiptap{font-size:17px;line-height:1.95;color:rgba(255,255,255,.82);caret-color:rgba(255,255,255,.7);min-height:unset}.v2-fullscreen-editor .tiptap p{margin:0 0 1.1em}.v2-fullscreen-editor .tiptap h1{font-size:1.75em;margin:1.4em 0 .5em}.v2-fullscreen-editor .tiptap h2{font-size:1.4em;margin:1.2em 0 .45em}.v2-fullscreen-editor .tiptap h3{font-size:1.15em;margin:1em 0 .4em}.v2-fullscreen-editor .tiptap ol,.v2-fullscreen-editor .tiptap ul{padding-left:1.6em;margin:0 0 1em}.v2-fullscreen-editor .tiptap li{margin-bottom:.35em}.v2-fullscreen-editor .tiptap blockquote{border-left:3px solid rgba(99,102,241,.5);padding-left:18px;margin:1em 0;color:rgba(255,255,255,.55);font-style:italic}.v2-fullscreen-editor .tiptap pre{font-size:14px;line-height:1.65;padding:16px 20px;border-radius:10px;margin:1em 0}.v2-fullscreen-editor .tiptap hr{margin:2em 0}.v2-fullscreen-editor .tiptap table{margin:1.3em 0;font-size:.95em}.v2-fullscreen-editor .tiptap td,.v2-fullscreen-editor .tiptap th{padding:10px 14px}@keyframes v2ResizeGlow{0%,to{opacity:.4}50%{opacity:.7}}@keyframes v2AudioBar{0%{transform:scaleY(.4)}to{transform:scaleY(1)}}@keyframes handle-plus-pop{0%{opacity:0;transform:translate(-50%,-50%) scale(.55)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes connBtnFade{0%{opacity:0;transform:scale(.65)}to{opacity:1;transform:scale(1)}}@keyframes sourceGlow{0%,to{box-shadow:0 0 0 2px rgba(255,0,68,.55),0 0 10px rgba(255,0,68,.25)}50%{box-shadow:0 0 0 2px rgba(255,0,68,.95),0 0 24px rgba(255,0,68,.55)}}@keyframes tyndallSweep{0%{box-shadow:0 0 0 0 rgba(255,0,68,0)}40%{box-shadow:0 0 0 5px rgba(255,0,68,.5),0 0 18px rgba(255,0,68,.3)}to{box-shadow:0 0 0 0 rgba(255,0,68,0)}}@keyframes dashFlow{to{stroke-dashoffset:-20}}[data-canvas-v2] .react-flow__connectionline path{stroke:rgba(255,255,255,.55)!important;stroke-width:1.5!important;stroke-dasharray:6 4!important;animation:dashFlow .45s linear infinite}[data-canvas-v2][data-canvas-bg=light] .react-flow__connectionline path{stroke:rgba(0,0,0,.4)!important}@keyframes v2ReviewPulse{0%,to{opacity:1}50%{opacity:.35}}@keyframes v2GeneratingGlow{0%,to{box-shadow:0 0 0 1.5px rgba(255,0,68,.45),0 0 16px rgba(255,0,68,.18)}50%{box-shadow:0 0 0 2px rgba(255,0,68,.85),0 0 32px rgba(255,0,68,.45)}}@keyframes v2GeneratingSweep{0%{transform:translateX(-110%)}to{transform:translateX(110%)}}@keyframes v2ChatBreath{0%,to{box-shadow:0 24px 60px rgba(0,0,0,.7),0 0 0 1px rgba(255,0,68,.18),0 0 18px rgba(255,0,68,.1)}50%{box-shadow:0 24px 60px rgba(0,0,0,.7),0 0 0 1px rgba(255,0,68,.42),0 0 32px rgba(255,0,68,.22)}}@keyframes v2EmptyFadeIn{0%{opacity:0;transform:translate(-50%,-48%)}to{opacity:1;transform:translate(-50%,-50%)}}@keyframes v2EmptyFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}@keyframes v2EmptyGlow{0%,to{box-shadow:0 0 18px rgba(255,0,68,.25),0 0 0 1px rgba(255,0,68,.3)}50%{box-shadow:0 0 36px rgba(255,0,68,.55),0 0 0 1px rgba(255,0,68,.6)}}@keyframes v2EmptyRipple{0%{transform:scale(1);opacity:.5}to{transform:scale(2.4);opacity:0}}@keyframes v2CardFloat0{0%,to{transform:rotate(-6deg) translateY(0)}50%{transform:rotate(-6deg) translateY(-6px)}}@keyframes v2CardFloat1{0%,to{transform:rotate(2deg) translateY(0)}50%{transform:rotate(2deg) translateY(-8px)}}@keyframes v2CardFloat2{0%,to{transform:rotate(7deg) translateY(0)}50%{transform:rotate(7deg) translateY(-5px)}}.v2-inspiration-card{position:absolute;width:148px;padding:14px 16px;border-radius:14px;background:linear-gradient(160deg,rgba(255,255,255,.09),rgba(255,255,255,.04));border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 8px 32px rgba(0,0,0,.35),inset 0 1px 0 rgba(255,255,255,.08);cursor:pointer;pointer-events:auto;transition:border-color .2s,box-shadow .2s,transform .15s;text-align:left;user-select:none}.v2-inspiration-card:hover{border-color:rgba(255,0,68,.45);box-shadow:0 8px 32px rgba(0,0,0,.45),0 0 20px rgba(255,0,68,.18),inset 0 1px 0 rgba(255,255,255,.1)}.v2-inspiration-card:active{transform:scale(.96)!important}[data-canvas-v2] .react-flow__node.v2-asset-drop-active .v2-node-surface{border-color:var(--v2-accent)!important;box-shadow:0 0 0 3px var(--v2-accent-30),var(--v2-shadow-fab)!important}@keyframes v2TutorCursor{0%{transform:translate(18px,22px) scale(1);opacity:0}12%{transform:translate(4px,6px) scale(1);opacity:1}38%{transform:translate(0) scale(1);opacity:1}46%,54%{transform:translate(0) scale(.82);opacity:1}66%{transform:translate(0) scale(1);opacity:1}88%{transform:translate(0) scale(1);opacity:1}to{transform:translate(18px,22px) scale(1);opacity:0}}@keyframes v2TutorRipple{0%,45%{transform:translate(-50%,-50%) scale(.25);opacity:0}50%{transform:translate(-50%,-50%) scale(.35);opacity:.85}75%,to{transform:translate(-50%,-50%) scale(1.6);opacity:0}}.tutorial-cursor-arrow{position:absolute;top:0;left:0;margin:-3px 0 0 -3px;filter:drop-shadow(0 2px 6px rgba(0,0,0,.6));transform-origin:4px 3px;animation:v2TutorCursor 2.4s var(--ease-smooth,ease-in-out) infinite}.tutorial-cursor-ripple{position:absolute;top:0;left:0;width:46px;height:46px;border-radius:50%;border:2px solid var(--v2-accent,#ff0044);background:var(--v2-accent-20,rgba(255,0,68,.18));animation:v2TutorRipple 2.4s var(--ease-smooth,ease-in-out) infinite}@media (prefers-reduced-motion:reduce){.tutorial-cursor-arrow{animation:none}.tutorial-cursor-ripple{animation:none;opacity:.5;transform:translate(-50%,-50%) scale(1)}}@keyframes v2PromptZoomIn{0%{opacity:0;transform:scale(.92) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes v2PromptBackdropIn{0%{opacity:0}to{opacity:1}}.v2-prompt-backdrop{animation:v2PromptBackdropIn .18s ease-out both}.v2-prompt-zoom{transform-origin:center bottom;animation:v2PromptZoomIn .22s var(--ease-smooth,cubic-bezier(.22,1,.36,1)) both}@media (prefers-reduced-motion:reduce){.v2-prompt-backdrop,.v2-prompt-zoom{animation:none}}.v2-autohide-scroll::-webkit-scrollbar{width:8px;height:8px}.v2-autohide-scroll::-webkit-scrollbar-track{background:transparent}.v2-autohide-scroll::-webkit-scrollbar-thumb{background:transparent;border-radius:999px;border:2px solid transparent;background-clip:content-box;transition:background-color .35s ease}.v2-autohide-scroll.is-scrolling::-webkit-scrollbar-thumb{background-color:var(--v2-scrollbar-thumb,rgba(255,255,255,.26))}.v2-autohide-scroll.is-scrolling:hover::-webkit-scrollbar-thumb{background-color:var(--v2-scrollbar-thumb-hover,rgba(255,255,255,.34))}.v2-autohide-scroll{scrollbar-width:thin;scrollbar-color:transparent transparent;transition:scrollbar-color .35s ease}.v2-autohide-scroll.is-scrolling{scrollbar-color:var(--v2-scrollbar-thumb,rgba(255,255,255,.26)) transparent}[data-canvas-v2] .v2-pick-blocked:after{content:"";position:absolute;inset:0;border-radius:16px;background:rgba(10,10,12,.72);pointer-events:none;z-index:50;transition:background .15s}[data-canvas-v2][data-canvas-bg=light] .v2-pick-blocked:after{background:rgba(120,120,130,.55)}[data-canvas-v2] .v2-pick-blocked{pointer-events:none!important}[data-canvas-v2] .v2-pick-ok{cursor:pointer}[data-canvas-v2] .v2-pick-ok:after{content:"";position:absolute;inset:-3px;border-radius:19px;border:2px solid rgba(255,0,68,.55);pointer-events:none;z-index:50;transition:border-color .15s,box-shadow .15s}[data-canvas-v2] .v2-pick-ok:hover:after{border-color:rgba(255,0,68,.95);box-shadow:0 0 0 4px rgba(255,0,68,.18)}[data-canvas-v2] .v2-pick-linked:after{content:"";position:absolute;inset:-3px;border-radius:19px;border:2px solid rgba(16,185,129,.65);pointer-events:none;z-index:50}