*{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Helvetica Neue,sans-serif;background:#f5f5f7;color:#1d1d1f;overflow:hidden}#root{height:100vh;width:100vw}.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:rgba(255,255,255,.5);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:rgba(0,89,220,.08);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%}.app{height:100vh;display:flex;flex-direction:column;background:#fafafa}.canvas-wrapper{flex:1;position:relative;min-width:0}.header{height:56px;background:rgba(255,255,255,.92);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-bottom:1px solid rgba(0,0,0,.07);z-index:100;position:relative;flex-shrink:0}.header-inner{height:100%;padding:0 20px;display:flex;align-items:center;gap:16px}.logo{display:flex;align-items:center;gap:8px;flex-shrink:0}.logo-icon{font-size:17px;color:#0071e3}.logo-text{font-size:14px;font-weight:600;color:#1d1d1f;letter-spacing:-.3px}.logo-badge{font-size:10px;font-weight:600;color:#86868b;background:#f0f0f2;padding:2px 7px;border-radius:20px}.header-hint{flex:1;text-align:center;font-size:12px;color:#86868b}.header-hint kbd{font-family:inherit;background:#f0f0f2;border:1px solid #d2d2d7;border-radius:5px;padding:1px 6px;font-size:11px;color:#3d3d3f}.header-actions{flex-shrink:0;display:flex;gap:8px;align-items:center}.btn-template{height:32px;padding:0 14px;border-radius:20px;border:1.5px solid rgba(0,0,0,.1);background:white;font-size:13px;font-weight:500;font-family:inherit;color:#3d3d3f;cursor:pointer;transition:background .15s,border-color .15s}.btn-template:hover{background:#f5f5f7;border-color:#00000026}.btn-primary{height:32px;padding:0 18px;border-radius:20px;border:none;background:#0071e3;font-size:13px;font-weight:500;font-family:inherit;color:#fff;cursor:pointer;transition:background .15s,transform .1s}.btn-primary:hover{background:#0077ed}.btn-primary:active{transform:scale(.96)}.node-panel{background:rgba(255,255,255,.96)!important;backdrop-filter:blur(24px)!important;-webkit-backdrop-filter:blur(24px)!important;border:1px solid rgba(0,0,0,.08)!important;border-radius:18px!important;padding:12px 10px!important;box-shadow:0 4px 28px #0000001a,0 1px 4px #0000000f!important;display:flex;flex-direction:column;gap:5px;width:156px;max-height:calc(100vh - 80px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.12) transparent}.node-panel::-webkit-scrollbar{width:4px}.node-panel::-webkit-scrollbar-thumb{background:rgba(0,0,0,.12);border-radius:4px}.panel-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px}.panel-btn-sm{flex-direction:column!important;align-items:center!important;justify-content:center!important;padding:9px 4px 7px!important;gap:3px!important;min-height:54px}.panel-btn-sm .panel-btn-icon{font-size:18px!important;line-height:1}.panel-btn-label{font-size:9px;font-weight:600;line-height:1;color:inherit}.panel-title{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.7px;color:#86868b;padding:0 4px;margin-bottom:4px}.panel-divider{height:1px;background:rgba(0,0,0,.07);margin:4px 0}.panel-btn{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;border-radius:10px;border:1.5px solid transparent;background:#f5f5f7;font-size:13px;font-weight:500;font-family:inherit;cursor:pointer;transition:all .15s;text-align:left}.panel-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.panel-btn-icon{font-size:13px}.panel-btn-postit{color:#c47e00;border-color:#f5a62340}.panel-btn-postit:hover{background:#fff8e0;border-color:#f5a62380}.panel-btn-text{color:#0071e3;border-color:#0071e333}.panel-btn-text:hover{background:#eef4fd;border-color:#0071e366}.panel-btn-llm{color:#7c3aed;border-color:#7c3aed33}.panel-btn-llm:hover{background:#f3eeff;border-color:#7c3aed66}.panel-btn-preset{color:#c04a00;border-color:#ff6b3533}.panel-btn-preset:hover{background:#fff2ec;border-color:#ff6b3566}.panel-btn-condition{color:#cc7a00;border-color:#ff950033}.panel-btn-condition:hover{background:#fff4e0;border-color:#ff950066}.panel-btn-output{color:#1a8c3e;border-color:#30d15840}.panel-btn-output:hover{background:#e6f9ec;border-color:#30d15880}.panel-btn-kpi{color:#be123c;border-color:#f43f5e33}.panel-btn-kpi:hover{background:#fff0f3;border-color:#f43f5e66}.panel-btn-quote{color:#0284c7;border-color:#0ea5e933}.panel-btn-quote:hover{background:#f0f9ff;border-color:#0ea5e966}.panel-btn-competitor{color:#b91c1c;border-color:#dc262633}.panel-btn-competitor:hover{background:#fff1f2;border-color:#dc262666}.panel-btn-roadmap{color:#475569;border-color:#64748b33}.panel-btn-roadmap:hover{background:#f1f5f9;border-color:#64748b66}.panel-btn-canvas-action{color:#0071e3;border-color:#0071e333}.panel-btn-canvas-action:hover{background:#eef4fd;border-color:#0071e366}.panel-btn-canvas-clear{color:#ff3b30;border-color:#ff3b3033}.panel-btn-canvas-clear:hover{background:#fff1f0;border-color:#ff3b3073}.panel-btn[draggable]:hover{cursor:grab}.panel-btn[draggable]:active{cursor:grabbing}.node{width:100%;height:100%;min-height:120px;background:white;border-radius:16px;border:1.5px solid rgba(0,0,0,.07);box-shadow:0 1px 2px #0000000d,0 4px 16px #00000012;overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .2s;position:relative}.node:hover{box-shadow:0 2px 8px #00000014,0 12px 28px #0000001a}.node-selected,.node-selected-text{border-color:#0071e380!important;box-shadow:0 0 0 3px #0071e31f,0 8px 24px #0000001a!important}.node-selected-llm{border-color:#7c3aed80!important;box-shadow:0 0 0 3px #7c3aed1f,0 8px 24px #0000001a!important}.node-selected-preset{border-color:#ff6b3580!important;box-shadow:0 0 0 3px #ff6b351f,0 8px 24px #0000001a!important}.node-condition.node-selected{border-color:#ff950080!important;box-shadow:0 0 0 3px #ff95001f,0 8px 24px #0000001a!important}.node-selected-output{border-color:#30d15880!important;box-shadow:0 0 0 3px #30d1581f,0 8px 24px #0000001a!important}.node-selected-postit{border-color:#f5a62380!important;box-shadow:0 0 0 3px #f5a6231f,0 8px 24px #0000001a!important}.node-header{display:flex;align-items:center;gap:7px;padding:10px 12px;flex-shrink:0;border-bottom:1px solid rgba(0,0,0,.055)}.node-request .node-header,.node-text .node-header,.text-header{background:#eef4fd;color:#0071e3}.node-condition .node-header{background:#fff4e0;color:#b86200}.llm-header{background:#f3eeff;color:#7c3aed}.preset-header{background:#fff2ec;color:#c04a00}.output-header{background:#e6f9ec!important;color:#1a8c3e!important}.ai-badge{font-size:9px;font-weight:800;letter-spacing:.5px;padding:2px 6px;border-radius:5px;background:rgba(0,0,0,.07);color:inherit;text-transform:uppercase;margin-right:2px}.node-icon{font-size:12px;color:inherit}.node-type-label{font-size:10px;font-weight:700;color:inherit;text-transform:uppercase;letter-spacing:.7px;flex:1}.node-type-label-editable{cursor:text;min-width:40px}.node-type-label-editable:hover{text-decoration:underline;text-decoration-style:dashed;text-decoration-color:#0000004d}.node-label-edit-input{background:white;border:1.5px solid #0071e3;border-radius:5px;padding:1px 6px;font-size:10px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;outline:none;max-width:130px;min-width:60px;flex:1;color:#1d1d1f;font-family:inherit}.flow-name-input{background:white;border:1.5px solid #0071e3;border-radius:4px;padding:1px 5px;font-size:11px;font-weight:600;outline:none;min-width:60px;max-width:110px;color:#1d1d1f;font-family:inherit}.node-delete{width:24px;height:24px;border-radius:50%;border:none;background:rgba(0,0,0,.06);color:#00000059;font-size:11px;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s,background .15s;padding:0;flex-shrink:0;font-weight:700}.node:hover .node-delete{opacity:1}.node-delete:hover{background:rgba(255,59,48,.15)!important;color:#ff3b30!important}.node-body{padding:12px 14px 8px;display:flex;flex-direction:column;gap:9px;flex:1;min-height:0;overflow:hidden}.node-title{font-size:13px;font-weight:600;color:#1d1d1f;letter-spacing:-.2px;line-height:1.3}.node-textarea{width:100%;background:#f5f5f7;border:1px solid transparent;border-radius:9px;padding:8px 10px;font-size:12px;font-family:inherit;color:#3d3d3f;line-height:1.55;resize:none;outline:none;transition:border-color .15s,background .15s;flex:1;min-height:80px;box-sizing:border-box}.node-textarea:focus{border-color:#0071e3;background:white}.textarea-hl-wrapper{position:relative;border-radius:9px;background:#f5f5f7;border:1px solid transparent;transition:border-color .15s,background .15s}.textarea-hl-wrapper:focus-within{border-color:#7c3aed;background:white}.textarea-mirror{position:absolute;top:0;left:0;right:0;bottom:0;padding:8px 10px;font-size:12px;font-family:inherit;line-height:1.55;white-space:pre-wrap;word-break:break-word;pointer-events:none;overflow:hidden;color:transparent;box-sizing:border-box;z-index:0}.node-textarea-hl{background:transparent!important;border:none!important;border-radius:0!important;position:relative!important;z-index:1!important}.node-textarea-hl:focus{background:transparent!important;border-color:transparent!important}.prompt-var-ok{background:rgba(109,40,217,.15);color:#5b21b6;border-radius:3px;padding:0 2px;font-weight:600}.prompt-var-empty{background:rgba(217,119,6,.15);color:#92400e;border-radius:3px;padding:0 2px;font-weight:600}.node-textarea-hl::placeholder{color:#86868b}.nif-hl-wrapper{background:#f5f5f7;border:1.5px solid #e5e5ea;border-radius:9px;transition:border-color .15s,background .15s}.nif-hl-wrapper:focus-within{border-color:#7c3aed;background:white}.nif-textarea-mirror{padding:9px 11px;font-size:12.5px;line-height:1.6}.node-footer{padding:8px 14px 12px;border-top:1px solid rgba(0,0,0,.05);flex-shrink:0}.output-type-row{display:flex;align-items:center;gap:8px}.output-type-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:#86868b;flex-shrink:0}.output-type-options{display:flex;gap:3px;flex-wrap:wrap}.output-type-btn{width:26px;height:26px;border-radius:7px;border:1.5px solid transparent;background:#f0f0f2;cursor:pointer;font-size:13px;display:flex;align-items:center;justify-content:center;transition:all .15s;padding:0}.output-type-btn:hover{background:#e5e5e9;transform:scale(1.1)}.output-type-btn.active{background:#eef4fd;border-color:#0071e3}.field{display:flex;flex-direction:column;gap:4px}.field-label{font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:#86868b}.condition-divider{height:1px;background:#e5e5ea;margin:4px 0}.tag{flex-shrink:0;font-size:8.5px;font-weight:700;letter-spacing:.5px;padding:2px 6px;border-radius:5px}.tag-if{background:rgba(22,163,74,.15);color:#15803d}.tag-else{background:#ebebed;color:#6b7280}.condition-body{padding:10px 14px 6px;display:flex;flex-direction:column;gap:7px;flex:1}.condition-branch{display:flex;flex-direction:column;gap:4px}.condition-branch-label{display:flex;align-items:center;gap:6px}.condition-branch-hint{font-size:9px;color:#b0b0b5;font-weight:500;flex:1;text-align:right}.condition-edit-textarea{width:100%;border:1.5px solid transparent;border-radius:9px;padding:7px 10px;font-size:11.5px;font-family:inherit;color:#3d3d3f;line-height:1.5;resize:none;outline:none;transition:border-color .15s,background .15s}.condition-if-textarea{background:rgba(22,163,74,.06)}.condition-if-textarea:focus{border-color:#16a34a;background:rgba(22,163,74,.09)}.condition-else-textarea{background:rgba(134,134,139,.07)}.condition-else-textarea:focus{border-color:#86868b;background:rgba(134,134,139,.1)}.condition-outputs{display:flex;justify-content:space-around;padding:5px 14px 13px;border-top:1px solid rgba(0,0,0,.05);flex-shrink:0}.condition-output-label{font-size:9.5px;font-weight:700;letter-spacing:.4px;padding:2px 10px;border-radius:20px}.condition-output-yes{background:rgba(22,163,74,.12);color:#15803d}.condition-output-no{background:rgba(107,114,128,.12);color:#6b7280}.condition-handle-yes-dot{background:#16a34a!important;border-color:#16a34a!important}.condition-handle-no-dot{background:#86868b!important;border-color:#86868b!important}.node-switch{background:#fffbeb;border:1.5px solid rgba(245,158,11,.28);min-height:220px}.node-switch:hover{box-shadow:0 2px 8px #f59e0b26,0 12px 28px #00000014}.node-switch-selected{border-color:#f59e0b8c!important;box-shadow:0 0 0 3px #f59e0b21,0 8px 24px #0000001a!important}.switch-header{background:rgba(245,158,11,.12);color:#92400e}.switch-branches{display:flex;flex-direction:column;gap:6px;margin-top:8px}.switch-branch{display:flex;align-items:center;gap:8px}.switch-branch-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.dot-a{background:#16a34a}.dot-b{background:#0071e3}.dot-c{background:#dc2626}.switch-branch-input{flex:1;border:1.5px solid rgba(0,0,0,.1);border-radius:8px;padding:5px 9px;font-size:11.5px;font-family:inherit;color:#3d3d3f;background:white;transition:border-color .15s}.switch-branch-input:focus{outline:none;border-color:#f59e0b;background:#fffdf5}.switch-outputs{display:flex;justify-content:space-around;padding:5px 10px 13px;border-top:1px solid rgba(0,0,0,.05);flex-shrink:0}.switch-out-label{font-size:9px;font-weight:700;letter-spacing:.4px;padding:2px 8px;border-radius:20px;max-width:60px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sw-a{background:rgba(22,163,74,.12);color:#15803d}.sw-b{background:rgba(0,113,227,.1);color:#0055b3}.sw-c{background:rgba(220,38,38,.1);color:#b91c1c}.switch-handle-a{background:#16a34a!important;border-color:#16a34a!important}.switch-handle-b{background:#0071e3!important;border-color:#0071e3!important}.switch-handle-c{background:#dc2626!important;border-color:#dc2626!important}.node-merge{background:#f0fdfe;border:1.5px solid rgba(8,145,178,.28);min-height:160px}.node-merge:hover{box-shadow:0 2px 8px #0891b226,0 12px 28px #00000014}.node-merge-selected{border-color:#0891b28c!important;box-shadow:0 0 0 3px #0891b221,0 8px 24px #0000001a!important}.merge-header{background:rgba(8,145,178,.1);color:#0e5a75}.merge-handle-in{background:#0891b2!important;border-color:#0891b2!important}.merge-inputs-row{display:flex;align-items:center;gap:6px;margin-bottom:8px}.merge-in-badge{font-size:9px;font-weight:800;padding:2px 7px;border-radius:20px}.badge-a{background:rgba(22,163,74,.12);color:#15803d}.badge-b{background:rgba(0,113,227,.1);color:#0055b3}.badge-c{background:rgba(220,38,38,.1);color:#b91c1c}.merge-inputs-hint{font-size:9.5px;color:#b0b0b5;flex:1;text-align:right}.panel-btn-switch{color:#92400e;border-color:#f59e0b40}.panel-btn-switch:hover{background:#fffbeb;border-color:#f59e0b80}.panel-btn-merge{color:#0e5a75;border-color:#0891b240}.panel-btn-merge:hover{background:#f0fdfe;border-color:#0891b280}.btn-canvas-clear{height:32px;padding:0 14px;border-radius:20px;border:1.5px solid rgba(255,59,48,.3);background:rgba(255,59,48,.05);font-size:12.5px;font-weight:500;font-family:inherit;color:#dc2626;cursor:pointer;transition:background .15s,border-color .15s}.btn-canvas-clear:hover{background:rgba(255,59,48,.1);border-color:#ff3b3080}.node-postit{background:var(--pi-bg, #fff9e6);border-color:var(--pi-border, rgba(245,166,35,.28))!important;min-height:120px}.node-postit:hover{box-shadow:0 2px 8px #f5a62326,0 12px 28px #00000014}.postit-header{display:flex;align-items:center;gap:6px;padding:9px 10px 9px 12px;background:var(--pi-accent, rgba(245,166,35,.15));border-bottom:1px solid var(--pi-border-light, rgba(245,166,35,.18));flex-shrink:0}.postit-pin{font-size:13px}.postit-type-label{font-size:10px;font-weight:700;color:var(--pi-label, #c47e00);text-transform:uppercase;letter-spacing:.7px;flex:1}.postit-colors{display:flex;gap:5px;align-items:center}.postit-color-dot{width:13px;height:13px;border-radius:50%;border:2px solid transparent;cursor:pointer;padding:0;transition:transform .12s,border-color .12s}.postit-color-dot:hover{transform:scale(1.25)}.postit-color-active{border-color:#00000059!important;transform:scale(1.15)}.postit-delete{background:var(--pi-accent, rgba(245,166,35,.2))!important;color:var(--pi-label, #c47e00)!important;opacity:.4}.node-postit:hover .postit-delete{opacity:1}.postit-body{padding:10px 12px;flex:1}.postit-textarea{width:100%;border:none;background:transparent;resize:none;outline:none;font-size:13px;font-family:inherit;color:#3d3d3f;line-height:1.6;min-height:80px}.postit-footer{padding:8px 12px 10px;border-top:1px solid var(--pi-border-light, rgba(245,166,35,.15));flex-shrink:0}.postit-transform-btn{width:100%;padding:6px 10px;border-radius:8px;border:1.5px solid var(--pi-border, rgba(245,166,35,.4));background:rgba(245,166,35,.1);color:#c47e00;font-size:11.5px;font-weight:600;font-family:inherit;cursor:pointer;transition:all .15s;text-align:left}.postit-transform-btn{color:var(--pi-label, #c47e00)}.postit-transform-btn:hover{background:var(--pi-accent, rgba(245,166,35,.2))}.postit-transform-menu{margin-top:6px;display:flex;flex-direction:column;gap:4px}.postit-transform-menu button{display:flex;align-items:center;gap:7px;width:100%;padding:7px 10px;border-radius:8px;border:none;background:white;font-size:12px;font-weight:500;font-family:inherit;color:#1d1d1f;cursor:pointer;transition:background .12s;text-align:left;box-shadow:0 1px 4px #00000014}.postit-transform-menu button:hover{background:#f5f5f7}.node-output{background:white}.node-output-v2{display:flex;flex-direction:column;min-height:320px}.out-format-row{display:flex;flex-wrap:wrap;gap:4px;padding:8px 12px;border-bottom:1px solid rgba(0,0,0,.06);flex-shrink:0}.out-fmt-chip{padding:3px 9px;border-radius:20px;border:1.5px solid rgba(48,209,88,.25);background:transparent;font-size:11px;font-family:inherit;cursor:pointer;color:#3d3d3f;transition:all .13s}.out-fmt-chip:hover{background:rgba(48,209,88,.1)}.out-fmt-active{background:rgba(48,209,88,.15);border-color:#30d158;color:#1a7a36;font-weight:600}.out-content-area{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:200px}.out-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:#b0b0b5;padding:32px 20px}.out-empty-icon{font-size:36px;opacity:.25}.out-empty-title{font-size:13px;font-weight:600;color:#c0c0c5}.out-empty-hint{font-size:11px;color:#c8c8cd;text-align:center}.out-text-wrap{flex:1;display:flex;flex-direction:column;position:relative;overflow:hidden}.out-copy-btn{position:absolute;top:8px;right:8px;z-index:2;padding:4px 10px;border-radius:8px;border:1px solid rgba(0,0,0,.1);background:rgba(255,255,255,.9);backdrop-filter:blur(6px);font-size:11px;font-family:inherit;cursor:pointer;color:#3d3d3f;transition:background .13s}.out-copy-btn:hover{background:#f0f0f2}.out-text-body{flex:1;overflow-y:auto;padding:14px;font-size:12.5px;line-height:1.68;color:#1d1d1f}.out-h1{font-size:14px;font-weight:700;margin:10px 0 3px}.out-h2{font-size:13px;font-weight:700;margin:8px 0 3px;color:#2d2d2f}.out-h3{font-size:12px;font-weight:600;margin:6px 0 2px}.out-p{margin:2px 0}.out-spacer{height:6px}.out-hr{border:none;border-top:1px solid #e8e8ea;margin:8px 0}.out-link-area{padding:20px 16px;flex:1;display:flex;align-items:flex-start}.out-link{color:#0071e3;font-size:13px;word-break:break-all;text-decoration:none}.out-link:hover{text-decoration:underline}.out-image-area{flex:1;padding:12px;display:flex;align-items:center;justify-content:center}.out-image{max-width:100%;max-height:300px;border-radius:8px;object-fit:contain}.out-json{flex:1;margin:0;padding:12px;overflow:auto;font-size:11px;line-height:1.5;color:#1d1d1f;background:#f5f5f7;font-family:SF Mono,monospace}.out-clear-btn{padding:2px 8px;border-radius:6px;border:1px solid rgba(255,59,48,.25);background:rgba(255,59,48,.08);color:#c0392b;font-size:10px;font-family:inherit;cursor:pointer;margin-right:4px;transition:background .13s}.out-clear-btn:hover{background:rgba(255,59,48,.16)}.output-intermedio-footer{padding:6px 12px;font-size:10.5px;color:#86868b;border-top:1px solid rgba(0,0,0,.06);text-align:center;flex-shrink:0}.edge-menu-backdrop{position:fixed;inset:0;z-index:998}.edge-menu{position:fixed;z-index:999;background:white;border:1px solid rgba(0,0,0,.1);border-radius:14px;padding:8px;box-shadow:0 8px 40px #0000002e,0 2px 8px #00000014;min-width:190px;transform:translate(-50%,10px);max-height:calc(100vh - 60px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.12) transparent}.edge-menu-title{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.7px;color:#86868b;padding:4px 8px 6px}.edge-menu-section{font-size:11px;font-weight:600;color:#3d3d3f;padding:2px 8px 6px}.edge-menu-btn{width:100%;text-align:left;padding:8px 10px;border:none;background:none;border-radius:8px;font-size:13px;font-family:inherit;color:#1d1d1f;cursor:pointer;display:flex;align-items:center;gap:9px;transition:background .1s}.edge-menu-btn:hover{background:#f5f5f7}.edge-menu-icon{font-size:13px;width:18px;text-align:center}.edge-menu-divider{height:1px;background:#f0f0f2;margin:6px 0}.edge-menu-danger{color:#ff3b30}.edge-menu-danger:hover{background:#fff0f0!important}.react-flow__handle{width:14px!important;height:14px!important;background:white!important;border:2.5px solid #c7c7cc!important;border-radius:50%!important;transition:border-color .15s,background .15s,transform .15s!important;z-index:10}.react-flow__handle:hover{background:#0071e3!important;border-color:#0071e3!important;transform:scale(1.3)!important}.react-flow__handle-bottom{bottom:-8px!important}.react-flow__handle-top{top:-8px!important}.react-flow__controls{border-radius:12px!important;overflow:hidden;box-shadow:0 2px 12px #0000001a!important;border:1px solid rgba(0,0,0,.07)!important;bottom:20px!important;left:20px!important;flex-direction:row!important}.react-flow__controls-button{background:white!important;border:none!important;border-right:1px solid rgba(0,0,0,.06)!important;width:28px!important;height:28px!important;color:#3d3d3f!important}.react-flow__controls-button:last-child{border-right:none!important}.react-flow__controls-button:hover{background:#f5f5f7!important}.react-flow__minimap{bottom:60px!important;right:20px!important}.react-flow__edge-path{stroke-linecap:round}.react-flow__selection{background:rgba(0,113,227,.04)!important;border:1.5px dashed #0071e3!important;border-radius:6px!important}.text-node-badge{display:flex;align-items:center;gap:5px;background:#f0f0f2;border-radius:7px;padding:4px 8px;margin-top:2px}.badge-icon{font-size:11px}.badge-text{font-size:10px;color:#86868b;font-weight:500}.node-llm{background:white}.node-llm .node-textarea:focus{border-color:#7c3aed}.node-card-expand{width:22px;height:22px;border-radius:6px;border:1.5px solid rgba(0,0,0,.11);background:rgba(0,0,0,.04);color:inherit;font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;flex-shrink:0;opacity:0;transition:opacity .15s,background .15s}.node:hover .node-card-expand{opacity:.7}.node-card-expand:hover{background:rgba(0,0,0,.11)!important;opacity:1!important}.node-card-run{width:26px;height:26px;border-radius:8px;border:none;background:rgba(0,0,0,.08);color:inherit;font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;flex-shrink:0;transition:background .15s}.node-card-run:hover{background:rgba(0,0,0,.16)}.node-card-run:disabled{opacity:.38;cursor:default}.node-card-status{font-size:11px;font-weight:600;padding:5px 0 0;border-top:1px solid rgba(0,0,0,.06);margin-top:5px}.node-card-status-running{color:#7c3aed}.node-card-status-done{color:#1a8c3e}.node-card-output-preview{font-size:11px;color:#1a8c3e;line-height:1.5;background:rgba(48,209,88,.08);border-radius:8px;padding:6px 9px;max-height:56px;overflow:hidden;position:relative;margin-top:6px}.node-card-output-preview:after{content:"";position:absolute;bottom:0;left:0;right:0;height:18px;background:linear-gradient(transparent,rgba(240,253,244,.9))}.node-card-output-expanded{font-size:11px;color:#1a8c3e;line-height:1.6;background:rgba(48,209,88,.08);border-radius:8px;padding:8px 10px;overflow-y:auto;max-height:340px;margin-top:6px;white-space:pre-wrap}.node-card-header-label{flex:1;font-size:11px;font-weight:600;color:inherit;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;opacity:.8}.node-preset-running{box-shadow:0 0 0 2px #ff6b35,0 0 12px #ff6b3540!important}.handle-side{width:14px!important;height:14px!important;border-radius:50%!important;border:2.5px solid #86868b!important;background:white!important;opacity:.7;transition:opacity .15s,transform .15s,background .15s,border-color .15s}.handle-side:hover{opacity:1!important;transform:scale(1.25)!important}.node-input .handle-side{border-color:#0071e3!important}.node-llm .handle-side{border-color:#7c3aed!important}.node-preset .handle-side{border-color:#ff6b35!important}.node-display .handle-side{border-color:#30d158!important}.node-input .handle-side:hover{background:#0071e3!important;border-color:#0071e3!important}.node-llm .handle-side:hover{background:#7c3aed!important;border-color:#7c3aed!important}.node-preset .handle-side:hover{background:#ff6b35!important;border-color:#ff6b35!important}.node-display .handle-side:hover{background:#30d158!important;border-color:#30d158!important}.node-preset{background:white}.preset-select{width:100%;padding:7px 28px 7px 10px;border-radius:9px;border:1.5px solid #e5e5ea;background:#f5f5f7;font-size:12px;font-family:inherit;color:#1d1d1f;cursor:pointer;outline:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%2386868b'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;transition:border-color .15s}.preset-select:focus{border-color:#ff6b35;background-color:#fff}.sintesi-chars-row{display:flex;align-items:center;gap:8px;padding:6px 2px 2px}.sintesi-chars-label{font-size:11px;color:#86868b;white-space:nowrap;flex-shrink:0}.sintesi-chars-label strong{color:#ff6b35}.sintesi-chars-slider{flex:1;height:4px;accent-color:#ff6b35;cursor:pointer}.preset-prompt-preview{font-size:11px;color:#86868b;line-height:1.55;background:#f5f5f7;border-radius:9px;padding:8px 10px;max-height:72px;overflow:hidden;position:relative}.preset-prompt-preview:after{content:"";position:absolute;bottom:0;left:0;right:0;height:24px;background:linear-gradient(transparent,#f5f5f7);border-radius:0 0 9px 9px}.flow-panel-wrapper{padding:0!important}.flow-panel{background:rgba(255,255,255,.94);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(0,0,0,.08);border-radius:16px;padding:14px 12px;box-shadow:0 4px 24px #0000001a;min-width:200px;max-width:240px;max-height:calc(100vh - 160px);overflow-y:auto;display:flex;flex-direction:column;gap:8px}.flow-panel-header{display:flex;align-items:center;gap:8px;padding:0 4px;margin-bottom:2px}.flow-panel-title{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.7px;color:#86868b;flex:1}.flow-panel-count{font-size:11px;font-weight:700;color:#86868b;background:#f0f0f2;padding:1px 7px;border-radius:20px}.flow-item{background:#f9f9fb;border-radius:12px;padding:10px 10px 8px;border:1.5px solid rgba(0,0,0,.05);display:flex;flex-direction:column;gap:7px;transition:border-color .2s}.flow-item-active{border-color:#34c75966;background:#f0fbf4}.flow-item-header{display:flex;align-items:center;gap:7px}.flow-dot{width:8px;height:8px;border-radius:50%;background:#c7c7cc;flex-shrink:0;transition:background .3s}.flow-dot-active{background:#34c759;box-shadow:0 0 0 3px #34c75933;animation:pulse-dot 1.5s ease-in-out infinite}@keyframes pulse-dot{0%,to{box-shadow:0 0 0 3px #34c75933}50%{box-shadow:0 0 0 5px #34c75914}}.flow-name{font-size:12px;font-weight:600;color:#1d1d1f;flex:1}.flow-count-badge{font-size:10px;font-weight:700;color:#86868b;background:rgba(0,0,0,.06);padding:1px 6px;border-radius:10px}.flow-chips{display:flex;flex-wrap:wrap;gap:4px}.flow-chip{width:26px;height:26px;border-radius:8px;border:1.5px solid;background:white;display:flex;align-items:center;justify-content:center;font-size:13px;box-shadow:0 1px 3px #00000012}.flow-run-btn{width:100%;padding:6px;border-radius:8px;border:none;background:#0071e3;color:#fff;font-size:11.5px;font-weight:600;font-family:inherit;cursor:pointer;transition:background .15s}.flow-run-btn:hover{background:#0077ed}.flow-stop-btn{background:#ff3b30}.flow-stop-btn:hover{background:#ff453a}.output-header-intermedio{background:#e6f9ec!important;color:#1a8c3e!important}.output-mode-toggle{display:flex;gap:4px;padding:8px 10px 0;flex-shrink:0}.output-mode-btn{flex:1;padding:5px 4px;border-radius:8px;border:1.5px solid #e5e5ea;background:#f5f5f7;font-size:11px;font-weight:600;font-family:inherit;color:#86868b;cursor:pointer;transition:all .15s}.output-mode-btn:hover{background:#ebebed}.output-mode-active{background:white!important;border-color:#30d158!important;color:#1a8c3e!important;box-shadow:0 1px 4px #30d1582e}.output-intermedio-info{margin:6px 10px 0;padding:5px 8px;border-radius:7px;background:rgba(52,199,89,.1);border:1px solid rgba(52,199,89,.2);font-size:10.5px;color:#1a7a3a;font-weight:500}.llm-prompt-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.llm-improve-btn{padding:3px 9px;border-radius:12px;border:1.5px solid #7c3aed;background:#f3eeff;font-size:11px;font-weight:600;font-family:inherit;color:#7c3aed;cursor:pointer;transition:all .15s;white-space:nowrap}.llm-improve-btn:hover{background:#ede9fe}.llm-improve-btn:disabled{opacity:.4;cursor:default}.node-llm-running{box-shadow:0 0 0 2px #7c3aed,0 0 12px #7c3aed40!important}.llm-vars-section{padding:7px 10px 6px;border-bottom:1px solid #f0f0f2;background:#fafafa}.llm-vars-label{font-size:10px;color:#86868b;margin-bottom:5px;font-weight:500}.llm-vars-chips{display:flex;flex-wrap:wrap;gap:4px}.llm-var-chip{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border-radius:10px;cursor:pointer;border:1.5px solid transparent;font-family:inherit;background:none;font-size:11.5px;font-weight:500;transition:all .15s}.llm-var-chip-ok{background:#f0fdf4;border-color:#16a34a;color:#166534}.llm-var-chip-ok:hover{background:#dcfce7;transform:scale(1.03)}.llm-var-chip-empty{background:#fffbeb;border-color:#d97706;color:#92400e}.llm-var-chip-empty:hover{background:#fef3c7;transform:scale(1.03)}.llm-var-chip code{font-family:SF Mono,Menlo,Consolas,monospace;font-size:10px;background:rgba(0,0,0,.07);padding:1px 4px;border-radius:4px}.llm-chip-name{opacity:.8}.llm-chip-warn{font-size:11px}.llm-autocomplete{margin-top:3px;background:white;border:1.5px solid rgba(124,58,237,.35);border-radius:10px;box-shadow:0 4px 12px #0000001f;overflow:hidden}.llm-autocomplete-item{display:flex;align-items:center;gap:7px;width:100%;padding:7px 10px;background:none;border:none;cursor:pointer;font-family:inherit;font-size:12px;text-align:left;transition:background .1s}.llm-autocomplete-item:hover{background:#f3f0ff}.llm-autocomplete-code{font-family:SF Mono,Menlo,Consolas,monospace;font-size:11px;background:rgba(124,58,237,.12);color:#6d28d9;padding:1px 5px;border-radius:4px;flex-shrink:0}.llm-autocomplete-label{font-weight:600;color:#1d1d1f;flex-shrink:0}.llm-autocomplete-preview{font-size:11px;color:#86868b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.zoom-badge-panel{padding:0!important;margin:0 0 52px 4px!important}.zoom-badge{height:28px;padding:0 10px;background:rgba(255,255,255,.9);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(0,0,0,.09);border-radius:14px;font-size:11.5px;font-weight:600;color:#3d3d3f;display:flex;align-items:center;gap:4px;box-shadow:0 1px 6px #00000014;pointer-events:none}.output-mode-chip{font-size:13px;margin-right:2px}.minimap-toggle-panel{padding:0!important}.minimap-toggle-btn{width:36px;height:36px;border-radius:50%;border:1.5px solid rgba(0,0,0,.1);background:rgba(255,255,255,.94);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);font-size:16px;cursor:pointer;box-shadow:0 2px 10px #0000001f;transition:all .2s;display:flex;align-items:center;justify-content:center}.minimap-toggle-btn:hover{transform:scale(1.1);box-shadow:0 4px 16px #00000029}.minimap-toggle-active{background:#0071e3!important;border-color:#0071e3!important}.selection-bar{position:absolute;bottom:24px;left:50%;transform:translate(-50%);z-index:500;display:flex;align-items:center;gap:10px;background:rgba(29,29,31,.92);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:14px;padding:10px 16px;box-shadow:0 8px 32px #0000004d,0 2px 8px #0003;border:1px solid rgba(255,255,255,.1);pointer-events:all;white-space:nowrap}.selection-count{font-size:12px;font-weight:600;color:#fff9;padding-right:10px;border-right:1px solid rgba(255,255,255,.15)}.selection-actions{display:flex;gap:6px}.sel-btn{padding:6px 14px;border-radius:8px;border:none;font-size:12.5px;font-weight:600;font-family:inherit;cursor:pointer;transition:all .15s}.sel-btn-connect{background:#0071e3;color:#fff}.sel-btn-connect:hover{background:#0077ed}.sel-btn-disconnect{background:rgba(255,255,255,.12);color:#fff}.sel-btn-disconnect:hover{background:rgba(255,255,255,.2)}.sel-btn-delete{background:rgba(255,59,48,.2);color:#ff6961}.sel-btn-delete:hover{background:rgba(255,59,48,.35)}.node-input{background:white}.node-selected-input{border-color:#0071e380!important;box-shadow:0 0 0 3px #0071e31f,0 8px 24px #0000001a!important}.input-header{background:#eef4fd;color:#0071e3}.input-tabs{display:flex;border-bottom:1px solid rgba(0,0,0,.06);flex-shrink:0}.input-tab{flex:1;padding:7px 4px;border:none;background:transparent;font-size:11.5px;font-weight:600;font-family:inherit;color:#86868b;cursor:pointer;transition:color .15s;border-bottom:2px solid transparent;margin-bottom:-1px}.input-tab:hover{color:#3d3d3f}.input-tab-active{color:#0071e3!important;border-bottom-color:#0071e3!important}.node-input-field{width:100%;padding:8px 10px;border:1.5px solid #e5e5ea;border-radius:9px;font-size:12px;font-family:inherit;color:#1d1d1f;background:#f5f5f7;outline:none;box-sizing:border-box;transition:border-color .15s,background .15s}.node-input-field:focus{border-color:#0071e3;background:white}.input-url-hint{font-size:10px;color:#aeaeb2;margin-top:2px}.file-drop-zone{border:1.5px dashed #d2d2d7;border-radius:12px;padding:18px 12px;text-align:center;cursor:pointer;transition:all .2s;min-height:110px;display:flex;align-items:center;justify-content:center}.file-drop-zone:hover{border-color:#0071e3;background:#f0f7ff}.file-drop-over{border-color:#0071e3!important;background:#eef4fd!important}.file-placeholder{display:flex;flex-direction:column;align-items:center;gap:3px;pointer-events:none}.file-drop-icon{font-size:26px;margin-bottom:4px}.file-drop-text{font-size:12px;font-weight:600;color:#3d3d3f}.file-drop-hint{font-size:11px;color:#86868b}.file-drop-types{font-size:10px;color:#aeaeb2;margin-top:3px;letter-spacing:.2px}.file-preview{position:relative;width:100%}.file-image-preview{width:100%;border-radius:9px;display:block;max-height:150px;object-fit:cover}.file-video-preview{width:100%;border-radius:9px;display:block;max-height:160px;background:#000}.file-doc-preview{display:flex;align-items:center;gap:9px;padding:10px 12px;background:#f5f5f7;border-radius:9px}.file-doc-icon{font-size:24px;flex-shrink:0}.file-doc-name{font-size:11.5px;font-weight:500;color:#3d3d3f;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.file-remove-btn{position:absolute;top:-8px;right:-8px;width:20px;height:20px;border-radius:50%;border:none;background:rgba(29,29,31,.65);color:#fff;font-size:9px;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;font-weight:700;transition:background .15s}.file-remove-btn:hover{background:rgba(255,59,48,.85)}.panel-btn-input{color:#0071e3;border-color:#0071e333}.panel-btn-input:hover{background:#eef4fd;border-color:#0071e366}.panel-section-label{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:#b0b0b5;padding:0 4px;margin-top:2px}.panel-btn-persona{color:#4f46e5;border-color:#6366f133}.panel-btn-persona:hover{background:#eef2ff;border-color:#6366f166}.panel-btn-hypothesis{color:#92400e;border-color:#f5a62340}.panel-btn-hypothesis:hover{background:#fffbeb;border-color:#f5a62380}.panel-btn-checklist{color:#0e7490;border-color:#0891b233}.panel-btn-checklist:hover{background:#ecfeff;border-color:#0891b266}.node-persona{border-color:#6366f133!important}.node-persona:hover{box-shadow:0 2px 8px #6366f11a,0 12px 28px #00000014}.node-selected-persona{box-shadow:0 0 0 2px #6366f1!important}.persona-header{background:rgba(99,102,241,.08);border-bottom:1px solid rgba(99,102,241,.15)}.persona-header .node-type-label{color:#4f46e5}.persona-header .node-delete{background:rgba(99,102,241,.12)!important;color:#4f46e5!important}.persona-body{padding:10px 12px;display:flex;flex-direction:column;gap:8px}.persona-avatar-row{display:flex;align-items:center;gap:8px}.persona-avatar-select{font-size:22px;border:none;background:transparent;cursor:pointer;width:36px}.persona-name{flex:1;font-weight:600;font-size:14px}.persona-row-2{display:flex;gap:8px}.persona-age{width:52px;flex-shrink:0}.persona-job{flex:1}.persona-input{border:1.5px solid #e5e5ea;border-radius:8px;padding:5px 9px;font-size:12.5px;font-family:inherit;color:#1d1d1f;outline:none;transition:border-color .15s;background:white}.persona-input:focus{border-color:#6366f1}.persona-input::placeholder{color:#c0c0c5}.persona-field{display:flex;flex-direction:column;gap:3px}.persona-field-label{font-size:10px;font-weight:700;color:#86868b;letter-spacing:.3px}.persona-textarea{border:1.5px solid #e5e5ea;border-radius:8px;padding:6px 9px;font-size:12.5px;font-family:inherit;color:#1d1d1f;resize:none;outline:none;transition:border-color .15s;line-height:1.45}.persona-textarea:focus{border-color:#6366f1}.persona-textarea::placeholder{color:#c0c0c5}.node-hypothesis{background:var(--hyp-bg, #f9f9fb);border-color:var(--hyp-border, rgba(134,134,139,.28))!important}.node-hypothesis:hover{box-shadow:0 2px 8px #0000000f,0 12px 28px #00000014}.node-selected-hyp{box-shadow:0 0 0 2px var(--hyp-color, #86868b)!important}.hyp-header{background:var(--hyp-header, rgba(134,134,139,.1));border-bottom:1px solid var(--hyp-border, rgba(134,134,139,.18))}.hyp-header .node-type-label{color:var(--hyp-color, #86868b)}.hyp-header .node-delete{background:var(--hyp-header, rgba(134,134,139,.15))!important;color:var(--hyp-color, #86868b)!important}.hyp-status-select{font-size:11px;font-weight:600;font-family:inherit;border:1px solid rgba(0,0,0,.1);border-radius:6px;background:white;color:var(--hyp-color, #86868b);padding:2px 4px;cursor:pointer;outline:none;max-width:130px}.hyp-body{padding:10px 12px;display:flex;flex-direction:column;gap:8px}.hyp-field{display:flex;flex-direction:column;gap:3px}.hyp-field-label{font-size:10px;font-weight:700;color:#86868b;letter-spacing:.3px}.hyp-textarea{border:1.5px solid #e5e5ea;border-radius:8px;padding:6px 9px;font-size:12.5px;font-family:inherit;color:#1d1d1f;resize:none;outline:none;transition:border-color .15s;line-height:1.45}.hyp-textarea:focus{border-color:var(--hyp-color, #86868b)}.hyp-textarea::placeholder{color:#c0c0c5}.hyp-input{border:1.5px solid #e5e5ea;border-radius:8px;padding:6px 9px;font-size:12.5px;font-family:inherit;color:#1d1d1f;outline:none;transition:border-color .15s}.hyp-input:focus{border-color:var(--hyp-color, #86868b)}.hyp-input::placeholder{color:#c0c0c5}.node-checklist{border-color:#0891b233!important}.node-checklist:hover{box-shadow:0 2px 8px #0891b21a,0 12px 28px #00000014}.node-selected-checklist{box-shadow:0 0 0 2px #0891b2!important}.checklist-header{background:rgba(8,145,178,.08);border-bottom:1px solid rgba(8,145,178,.15)}.checklist-header .node-type-label{color:#0e7490}.checklist-header .node-delete{background:rgba(8,145,178,.12)!important;color:#0e7490!important}.checklist-title-input{flex:1;border:none;background:transparent;font-size:13px;font-weight:600;font-family:inherit;color:#1d1d1f;outline:none}.checklist-count{font-size:11px;font-weight:700;color:#0891b2;background:rgba(8,145,178,.1);padding:1px 7px;border-radius:20px;flex-shrink:0;white-space:nowrap}.checklist-progress-bar{height:3px;background:#e5e5ea;flex-shrink:0}.checklist-progress-fill{height:100%;background:#0891b2;border-radius:0 2px 2px 0;transition:width .3s ease}.checklist-body{padding:8px 12px 10px;display:flex;flex-direction:column;gap:4px}.checklist-item{display:flex;align-items:center;gap:8px;padding:4px 6px;border-radius:7px;transition:background .1s}.checklist-item:hover{background:#f5f5f7}.checklist-checkbox{width:15px;height:15px;flex-shrink:0;cursor:pointer;accent-color:#0891b2}.checklist-text{flex:1;font-size:13px;color:#1d1d1f;line-height:1.35}.checklist-done .checklist-text{text-decoration:line-through;color:#b0b0b5}.checklist-remove{width:18px;height:18px;border-radius:50%;border:none;background:transparent;color:#c0c0c5;font-size:9px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;opacity:0;transition:opacity .15s,background .15s}.checklist-item:hover .checklist-remove{opacity:1}.checklist-remove:hover{background:#fee2e2;color:#ef4444}.checklist-add-row{display:flex;gap:6px;margin-top:4px}.checklist-add-input{flex:1;border:1.5px solid #e5e5ea;border-radius:8px;padding:5px 9px;font-size:12.5px;font-family:inherit;color:#1d1d1f;outline:none;transition:border-color .15s}.checklist-add-input:focus{border-color:#0891b2}.checklist-add-input::placeholder{color:#c0c0c5}.checklist-add-btn{width:28px;height:28px;border-radius:8px;border:none;background:#0891b2;color:#fff;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .15s}.checklist-add-btn:hover{background:#0e7490}.tpl-overlay{position:fixed;inset:0;z-index:1000;background:rgba(0,0,0,.38);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:20px}.tpl-modal{background:white;border-radius:22px;padding:28px 28px 24px;width:100%;max-width:660px;box-shadow:0 32px 80px #00000038,0 4px 16px #0000001a;max-height:90vh;overflow-y:auto}.tpl-modal-head{display:flex;align-items:flex-start;gap:12px;margin-bottom:22px}.tpl-modal-title{font-size:18px;font-weight:700;color:#1d1d1f;letter-spacing:-.4px;margin-bottom:4px}.tpl-modal-sub{font-size:13px;color:#86868b;line-height:1.45}.tpl-close{margin-left:auto;flex-shrink:0;width:30px;height:30px;border-radius:50%;border:none;background:#f0f0f2;color:#3d3d3f;font-size:13px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-weight:700;transition:background .15s}.tpl-close:hover{background:#e5e5ea}.tpl-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.tpl-card{text-align:left;padding:16px;border-radius:14px;border:1.5px solid #e5e5ea;background:white;cursor:pointer;transition:all .18s;font-family:inherit;display:flex;flex-direction:column;gap:4px}.tpl-card:hover{border-color:var(--tpl-color, #0071e3);box-shadow:0 4px 20px #0000001a;transform:translateY(-2px)}.tpl-card-blank{background:#f9f9fb}.tpl-card-icon{font-size:26px;margin-bottom:6px}.tpl-card-name{font-size:13.5px;font-weight:700;color:#1d1d1f;letter-spacing:-.2px}.tpl-card-desc{font-size:11.5px;color:#86868b;line-height:1.5;flex:1}.tpl-card-badge{font-size:10px;font-weight:700;color:var(--tpl-color, #86868b);background:#f0f0f2;padding:2px 8px;border-radius:20px;display:inline-block;margin-top:6px;width:fit-content}.tpl-section-divider{display:flex;align-items:center;gap:12px;margin:22px 0 14px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:#86868b}.tpl-section-divider:before,.tpl-section-divider:after{content:"";flex:1;height:1px;background:#e5e5ea}.tpl-card-custom{padding:28px 16px 16px;position:relative;cursor:default}.tpl-card-custom:hover{border-color:var(--tpl-color, #5e5ce6);box-shadow:0 4px 20px #0000001a;transform:translateY(-2px)}.tpl-card-body{padding:16px;display:flex;flex-direction:column;gap:4px;cursor:pointer;height:100%;box-sizing:border-box}.tpl-card-delete{position:absolute;top:8px;right:8px;z-index:1;width:22px;height:22px;border-radius:50%;border:none;background:rgba(0,0,0,.06);color:#86868b;font-size:9px;font-weight:700;cursor:pointer;line-height:1;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.tpl-card-delete:hover{background:#ff3b30;color:#fff}.save-modal{background:white;border-radius:22px;padding:28px 28px 24px;width:480px;max-width:calc(100vw - 40px);box-shadow:0 32px 80px #00000038}.save-modal-body{display:flex;flex-direction:column;gap:18px;margin-bottom:22px}.save-field{display:flex;flex-direction:column;gap:7px}.save-label{font-size:12px;font-weight:600;color:#3d3d3f;letter-spacing:.1px}.save-emoji-grid{display:flex;flex-wrap:wrap;gap:6px}.save-emoji-btn{width:36px;height:36px;border-radius:9px;border:1.5px solid #e5e5ea;background:white;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .12s,background .12s}.save-emoji-btn:hover{border-color:#0071e3;background:#eef4fd}.save-emoji-active{border-color:#0071e3!important;background:#eef4fd!important}.save-input{height:38px;border-radius:10px;border:1.5px solid #e5e5ea;padding:0 12px;font-size:13.5px;font-family:inherit;color:#1d1d1f;outline:none;transition:border-color .15s}.save-input:focus{border-color:#0071e3}.save-input::placeholder{color:#b0b0b5}.save-textarea{border-radius:10px;border:1.5px solid #e5e5ea;padding:10px 12px;font-size:13px;font-family:inherit;color:#1d1d1f;resize:none;outline:none;transition:border-color .15s;line-height:1.5}.save-textarea:focus{border-color:#0071e3}.save-textarea::placeholder{color:#b0b0b5}.save-info-row{display:flex;align-items:center}.save-info-text{font-size:12px;color:#86868b}.save-modal-footer{display:flex;justify-content:flex-end;gap:10px;padding-top:20px;border-top:1px solid #f0f0f2}.save-btn-cancel{height:36px;padding:0 18px;border-radius:20px;border:1.5px solid rgba(0,0,0,.1);background:white;font-size:13px;font-weight:500;font-family:inherit;color:#3d3d3f;cursor:pointer;transition:background .15s}.save-btn-cancel:hover{background:#f5f5f7}.save-btn-confirm{height:36px;padding:0 20px;border-radius:20px;border:none;background:#0071e3;font-size:13px;font-weight:600;font-family:inherit;color:#fff;cursor:pointer;transition:background .15s,opacity .15s}.save-btn-confirm:hover{background:#0077ed}.save-btn-confirm:disabled{opacity:.4;cursor:not-allowed}.node-kpi{border-color:#f43f5e33!important}.node-kpi:hover{box-shadow:0 2px 8px #f43f5e1a,0 12px 28px #00000014}.node-selected-kpi{border-color:#f43f5e80!important;box-shadow:0 0 0 3px #f43f5e1f,0 8px 24px #0000001a!important}.kpi-header{background:rgba(244,63,94,.08);border-bottom:1px solid rgba(244,63,94,.15);color:#be123c}.kpi-header .node-type-label{color:#be123c}.kpi-header .ai-badge{background:rgba(244,63,94,.1);color:#be123c}.kpi-header .node-delete{background:rgba(244,63,94,.1)!important;color:#be123c!important}.kpi-body{padding:10px 12px 12px;display:flex;flex-direction:column;gap:8px}.kpi-name-input{border:none;background:transparent;font-size:14px;font-weight:700;font-family:inherit;color:#1d1d1f;outline:none;width:100%;letter-spacing:-.3px}.kpi-name-input::placeholder{color:#c0c0c5;font-weight:400}.kpi-value-row{display:flex;align-items:center;gap:6px}.kpi-value-input{flex:1;border:1.5px solid #e5e5ea;border-radius:8px;padding:5px 9px;font-size:22px;font-weight:700;font-family:inherit;color:#1d1d1f;outline:none;transition:border-color .15s;min-width:0}.kpi-value-input:focus{border-color:#f43f5e}.kpi-unit-input{width:38px;border:1.5px solid #e5e5ea;border-radius:8px;padding:5px 6px;font-size:13px;font-family:inherit;color:#86868b;outline:none;text-align:center;transition:border-color .15s}.kpi-unit-input:focus{border-color:#f43f5e}.kpi-trend-group{display:flex;gap:3px}.kpi-trend-btn{width:28px;height:28px;border-radius:7px;border:1.5px solid #e5e5ea;background:white;font-size:13px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#86868b;transition:all .12s;padding:0;font-weight:600}.kpi-trend-btn:hover{background:#f5f5f7}.kpi-target-row{display:flex;align-items:center;gap:6px}.kpi-target-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#86868b;white-space:nowrap}.kpi-target-input{flex:1;border:1.5px solid #e5e5ea;border-radius:7px;padding:4px 8px;font-size:12.5px;font-family:inherit;color:#1d1d1f;outline:none;transition:border-color .15s;min-width:0}.kpi-target-input:focus{border-color:#f43f5e}.kpi-unit-hint{font-size:12px;color:#86868b;min-width:18px}.kpi-progress{display:flex;align-items:center;gap:8px}.kpi-progress-bar{flex:1;height:4px;background:#f0f0f2;border-radius:99px;overflow:hidden}.kpi-progress-fill{height:100%;border-radius:99px;transition:width .3s ease}.kpi-pct{font-size:11px;font-weight:700;color:#86868b;flex-shrink:0;min-width:30px;text-align:right}.node-quote{border-color:#0ea5e933!important}.node-quote:hover{box-shadow:0 2px 8px #0ea5e91a,0 12px 28px #00000014}.node-selected-quote{border-color:#0ea5e980!important;box-shadow:0 0 0 3px #0ea5e91f,0 8px 24px #0000001a!important}.quote-header{background:rgba(14,165,233,.08);border-bottom:1px solid rgba(14,165,233,.15);color:#0284c7}.quote-header .node-type-label{color:#0284c7}.quote-header .node-delete{background:rgba(14,165,233,.1)!important;color:#0284c7!important}.quote-body{padding:10px 12px 12px;display:flex;flex-direction:column;gap:8px}.quote-mark{font-size:34px;font-weight:900;color:#0ea5e938;line-height:1;margin-bottom:-8px;font-family:Georgia,serif}.quote-textarea{width:100%;border:none;background:transparent;resize:none;outline:none;font-size:13px;font-family:inherit;color:#3d3d3f;line-height:1.6;font-style:italic;min-height:72px}.quote-textarea::placeholder{color:#c0c0c5;font-style:italic}.quote-stars{display:flex;gap:2px}.quote-star{border:none;background:none;font-size:18px;cursor:pointer;color:#e5e5ea;padding:0;transition:color .12s,transform .1s}.quote-star:hover{transform:scale(1.2)}.quote-star-active{color:#f59e0b}.quote-author-row{display:flex;gap:6px}.quote-author-input,.quote-role-input{flex:1;border:1.5px solid #e5e5ea;border-radius:8px;padding:5px 9px;font-size:12px;font-family:inherit;color:#1d1d1f;outline:none;transition:border-color .15s;min-width:0}.quote-role-input{color:#86868b}.quote-author-input:focus,.quote-role-input:focus{border-color:#0ea5e9}.quote-author-input::placeholder,.quote-role-input::placeholder{color:#c0c0c5}.node-competitor{border-color:#dc262633!important}.node-competitor:hover{box-shadow:0 2px 8px #dc26261a,0 12px 28px #00000014}.node-selected-competitor{border-color:#dc262680!important;box-shadow:0 0 0 3px #dc26261f,0 8px 24px #0000001a!important}.competitor-header{background:rgba(220,38,38,.08);border-bottom:1px solid rgba(220,38,38,.15);color:#b91c1c}.competitor-header .node-delete{background:rgba(220,38,38,.1)!important;color:#b91c1c!important}.competitor-name-input{flex:1;border:none;background:transparent;font-size:13px;font-weight:600;font-family:inherit;color:#1d1d1f;outline:none;min-width:0}.competitor-name-input::placeholder{color:#c0c0c5;font-weight:400}.competitor-body{padding:10px 12px 12px;display:flex;flex-direction:column;gap:9px}.competitor-field{display:flex;flex-direction:column;gap:4px}.competitor-textarea{width:100%;border:1.5px solid #e5e5ea;border-radius:9px;padding:7px 9px;font-size:12px;font-family:inherit;color:#3d3d3f;line-height:1.5;resize:none;outline:none;transition:border-color .15s;background:#f9f9fb}.competitor-textarea:focus{border-color:#dc2626;background:white}.competitor-textarea::placeholder{color:#c0c0c5}.competitor-levels{display:flex;flex-direction:column;gap:6px;padding-top:2px}.competitor-level-row{display:flex;align-items:center;gap:8px}.competitor-level-label{font-size:11px;font-weight:600;color:#86868b;white-space:nowrap;flex-shrink:0;min-width:70px}.competitor-btn-group{display:flex;gap:4px;flex:1}.competitor-level-btn{flex:1;padding:4px 6px;border-radius:6px;border:1.5px solid #e5e5ea;background:white;font-size:11px;font-weight:600;font-family:inherit;cursor:pointer;transition:all .12s;color:#86868b}.competitor-level-btn:hover{background:#f5f5f7}.competitor-level-active{background:#f5f5f7!important;border-color:#86868b!important;color:#1d1d1f!important}.node-roadmap{border-color:#64748b33!important}.node-roadmap:hover{box-shadow:0 2px 8px #64748b1a,0 12px 28px #00000014}.node-selected-roadmap{border-color:#64748b80!important;box-shadow:0 0 0 3px #64748b1f,0 8px 24px #0000001a!important}.roadmap-header{background:rgba(100,116,139,.08);border-bottom:1px solid rgba(100,116,139,.15);color:#475569}.roadmap-header .node-delete{background:rgba(100,116,139,.1)!important;color:#475569!important}.roadmap-title-input{flex:1;border:none;background:transparent;font-size:13px;font-weight:600;font-family:inherit;color:#1d1d1f;outline:none;min-width:0}.roadmap-title-input::placeholder{color:#c0c0c5;font-weight:400}.roadmap-body{padding:10px 12px;display:flex;flex-direction:column}.roadmap-item{display:flex;gap:10px}.roadmap-item-left{display:flex;flex-direction:column;align-items:center;width:14px;flex-shrink:0;padding-top:8px}.roadmap-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.roadmap-line{flex:1;width:2px;background:#e5e5ea;min-height:16px;margin-top:3px}.roadmap-item-right{flex:1;display:flex;flex-direction:column;gap:4px;padding-bottom:10px;min-width:0}.roadmap-item-row{display:flex;gap:4px;align-items:center}.roadmap-phase-input{flex:1;border:1.5px solid #e5e5ea;border-radius:7px;padding:4px 8px;font-size:12.5px;font-weight:500;font-family:inherit;color:#1d1d1f;outline:none;transition:border-color .15s;min-width:0}.roadmap-phase-input:focus{border-color:#64748b}.roadmap-phase-input::placeholder{color:#c0c0c5}.roadmap-date-input{width:66px;border:1.5px solid #e5e5ea;border-radius:7px;padding:4px 6px;font-size:11px;font-family:inherit;color:#86868b;outline:none;transition:border-color .15s;text-align:center;flex-shrink:0}.roadmap-date-input:focus{border-color:#64748b}.roadmap-date-input::placeholder{color:#c0c0c5}.roadmap-remove-btn{width:20px;height:20px;border-radius:50%;border:none;background:transparent;color:#c0c0c5;font-size:9px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;opacity:0;transition:opacity .15s,background .15s}.roadmap-item:hover .roadmap-remove-btn{opacity:1}.roadmap-remove-btn:hover{background:#fee2e2;color:#ef4444}.roadmap-status-select{border:1.5px solid #e5e5ea;border-radius:6px;padding:3px 7px;font-size:11px;font-weight:600;font-family:inherit;outline:none;cursor:pointer;transition:border-color .15s;width:100%;appearance:none;text-align:center}.roadmap-add-btn{margin-top:6px;width:100%;padding:6px;border-radius:8px;border:1.5px dashed rgba(100,116,139,.3);background:transparent;font-size:12px;font-weight:500;font-family:inherit;color:#64748b;cursor:pointer;transition:all .15s}.roadmap-add-btn:hover{background:rgba(100,116,139,.06);border-color:#64748b}.ctx-backdrop{position:fixed;inset:0;z-index:1000}.ctx-menu{position:fixed;z-index:1001;background:white;border-radius:14px;border:1px solid rgba(0,0,0,.08);box-shadow:0 8px 40px #00000029,0 2px 8px #0000000f;padding:6px;min-width:195px;max-height:calc(100vh - 60px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.12) transparent}.ctx-menu-title{font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:.7px;color:#86868b;padding:4px 10px 6px}.ctx-menu-divider{height:1px;background:rgba(0,0,0,.06);margin:3px 0}.ctx-menu-btn{display:flex;align-items:center;gap:9px;width:100%;padding:7px 10px;border-radius:9px;border:none;background:transparent;font-size:13px;font-family:inherit;color:#1d1d1f;cursor:pointer;text-align:left;transition:background .1s}.ctx-menu-btn:hover{background:#f5f5f7}.ctx-menu-btn-active{background:#eef4fd!important;color:#0071e3;font-weight:600}.ctx-menu-icon{font-size:14px;width:18px;text-align:center}.ctx-menu-current{margin-left:auto;color:#0071e3;font-size:12px;font-weight:700}.settings-overlay{position:fixed;inset:0;background:rgba(0,0,0,.28);backdrop-filter:blur(6px);z-index:2000;display:flex;align-items:center;justify-content:center}.settings-modal{background:white;border-radius:22px;padding:28px;width:420px;max-width:calc(100vw - 40px);box-shadow:0 24px 80px #0000002e}.settings-title{font-size:17px;font-weight:700;color:#1d1d1f;margin-bottom:4px}.settings-sub{font-size:12.5px;color:#86868b;margin-bottom:20px;line-height:1.5}.settings-label{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#86868b;margin-bottom:6px;display:block}.settings-input{width:100%;padding:10px 14px;border-radius:11px;border:1.5px solid rgba(0,0,0,.12);font-size:13px;font-family:SF Mono,Fira Code,monospace;outline:none;transition:border-color .15s;box-sizing:border-box}.settings-input:focus{border-color:#0071e3}.settings-note{font-size:11px;color:#b0b0b5;margin-top:9px;line-height:1.55}.settings-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:20px}.preset-run-btn{height:22px;padding:0 9px;border-radius:7px;border:none;background:rgba(255,107,53,.14);color:#c04a00;font-size:11px;font-weight:700;cursor:pointer;transition:background .15s;flex-shrink:0}.preset-run-btn:hover:not(:disabled){background:rgba(255,107,53,.28)}.preset-run-btn:disabled{opacity:.55;cursor:default}.preset-run-loading{animation:spin-pulse 1.2s ease-in-out infinite}@keyframes spin-pulse{0%,to{opacity:1}50%{opacity:.4}}.node-preset-running{box-shadow:0 0 0 2.5px #ff6b35,0 0 24px #ff6b3559!important;animation:node-ai-pulse 1.1s ease-in-out infinite}@keyframes node-ai-pulse{0%,to{box-shadow:0 0 0 2px #ff6b35,0 0 12px #ff6b3540}50%{box-shadow:0 0 0 3.5px #ff6b35,0 0 32px #ff6b358c}}.preset-output{border-radius:10px;overflow:hidden;border:1px solid rgba(22,163,74,.18);margin-top:2px}.preset-output-header{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;background:rgba(22,163,74,.09);font-size:10px;font-weight:700;color:#15803d}.preset-output-clear{background:none;border:none;cursor:pointer;color:#86868b;font-size:11px;padding:2px 5px;border-radius:5px;line-height:1}.preset-output-clear:hover{background:rgba(0,0,0,.07)}.preset-output-text{padding:10px;font-size:11.5px;color:#2d2d2f;line-height:1.65;max-height:260px;overflow-y:auto;white-space:pre-wrap;word-break:break-word;font-family:inherit;background:#fbfbfc}.output-text-area,.output-text-empty{display:none}.tpl-card{flex-direction:column;cursor:default!important}.tpl-card-actions{display:flex;gap:5px;margin-top:8px;width:100%}.tpl-card-action-btn{flex:1;padding:6px;border-radius:8px;border:1.5px solid rgba(0,0,0,.1);background:transparent;font-size:10.5px;font-weight:600;cursor:pointer;font-family:inherit;transition:all .15s;color:var(--tpl-color, #0071e3);border-color:color-mix(in srgb,var(--tpl-color, #0071e3) 25%,transparent)}.tpl-card-action-btn:hover{background:color-mix(in srgb,var(--tpl-color, #0071e3) 8%,transparent)}.tpl-card-append{border-style:dashed}.canvas-layout{flex:1;display:flex;overflow:hidden}.canvas-wrapper{flex:1;position:relative;min-width:0}.results-panel{flex-shrink:0;background:#f5f5f7;border-left:1px solid rgba(0,0,0,.08);display:flex;flex-direction:column;overflow:hidden;position:relative;min-width:300px;max-width:720px}.results-panel-drag-handle{position:absolute;left:0;top:0;bottom:0;width:6px;cursor:col-resize;z-index:10;transition:background .15s}.results-panel-drag-handle:hover{background:rgba(0,113,227,.25)}.results-panel-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:white;border-bottom:1px solid rgba(0,0,0,.08);flex-shrink:0}.results-panel-title{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:#1d1d1f}.results-panel-icon{font-size:16px}.results-panel-count{background:#e8e8ea;color:#86868b;font-size:11px;font-weight:600;padding:2px 7px;border-radius:20px}.results-panel-close{width:26px;height:26px;border-radius:50%;border:none;background:#e8e8ea;cursor:pointer;font-size:12px;color:#3d3d3f;display:flex;align-items:center;justify-content:center;transition:background .13s}.results-panel-close:hover{background:#d8d8da}.results-panel-body{flex:1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:10px}.rp-card{background:white;border-radius:14px;border:1.5px solid rgba(0,0,0,.07);overflow:hidden;transition:border-color .2s}.rp-card-streaming{border-color:#ff6b35;box-shadow:0 0 0 2px #ff6b3526;animation:rp-card-pulse 1.1s ease-in-out infinite}.rp-card-done{border-color:#30d15866}.rp-card-selected{border-color:#0071e3!important;box-shadow:0 0 0 3px #0071e31f!important}.rp-no-output-card{background:white;border-radius:14px;border:1.5px dashed #d1d5db;padding:20px 16px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px}.rp-no-output-icon{font-size:28px;opacity:.35}.rp-no-output-label{font-size:12.5px;color:#86868b;line-height:1.4}.rp-run-now-btn{padding:7px 18px;border-radius:20px;border:none;background:#0071e3;color:#fff;font-size:12px;font-weight:600;font-family:inherit;cursor:pointer;transition:background .13s,transform .1s}.rp-run-now-btn:hover{background:#0077ed;transform:scale(1.03)}@keyframes rp-card-pulse{0%,to{box-shadow:0 0 0 2px #ff6b3526}50%{box-shadow:0 0 0 4px #ff6b3559}}.rp-card-header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid rgba(0,0,0,.06);background:#fafafa}.rp-card-title{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:#1d1d1f}.rp-card-icon{color:#30d158}.rp-card-badge{font-size:10px;color:#86868b;font-weight:500;background:#f0f0f2;padding:1px 6px;border-radius:20px}.rp-card-actions{display:flex;align-items:center;gap:4px}.rp-locate-btn{width:28px;height:28px;border-radius:8px;border:1.5px solid rgba(0,0,0,.08);background:white;cursor:pointer;font-size:13px;display:flex;align-items:center;justify-content:center;transition:background .15s,transform .1s}.rp-locate-btn:hover{background:#f0f0f2;transform:scale(1.08)}.rp-copy-btn{width:24px;height:24px;border-radius:7px;border:1px solid rgba(0,0,0,.1);background:white;font-size:12px;cursor:pointer;color:#3d3d3f;display:flex;align-items:center;justify-content:center;transition:background .13s}.rp-copy-btn:hover{background:#f0f0f2}.rp-card-body{padding:12px;min-height:60px;max-height:600px;overflow-y:auto}.rp-text-body{font-size:12.5px;line-height:1.7;color:#1d1d1f}.rp-h1{font-size:14px;font-weight:700;margin:8px 0 3px}.rp-h2{font-size:13px;font-weight:700;margin:6px 0 2px}.rp-h3{font-size:12px;font-weight:600;margin:5px 0 2px}.rp-p{margin:2px 0}.rp-spacer{height:5px}.rp-hr{border:none;border-top:1px solid #e8e8ea;margin:6px 0}.rp-cursor{display:inline-block;animation:rp-blink .8s step-start infinite;color:#ff6b35;font-weight:700}@keyframes rp-blink{0%,to{opacity:1}50%{opacity:0}}.rp-streaming-wait{display:flex;align-items:center;padding:10px 0;font-size:16px}.rp-empty{color:#b0b0b5;font-size:12px;padding:8px 0}.rp-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:60px 20px;color:#c0c0c5}.rp-empty-icon{font-size:36px;opacity:.2}.rp-empty-title{font-size:14px;font-weight:600}.rp-empty-sub{font-size:12px;text-align:center}.rp-link{color:#0071e3;font-size:13px;word-break:break-all;text-decoration:none}.rp-link:hover{text-decoration:underline}.rp-image-wrap{display:flex;justify-content:center}.rp-image{max-width:100%;border-radius:8px}.rp-json{font-size:11px;line-height:1.5;color:#1d1d1f;background:#f5f5f7;border-radius:8px;padding:10px;overflow:auto;margin:0}.btn-results-active{background:rgba(48,209,88,.1)!important;border-color:#30d15866!important;color:#1a7a36!important}.ctx-menu-btn-duplicate{color:#0071e3!important;font-weight:600}.ctx-menu-btn-duplicate:hover{background:rgba(0,113,227,.08)!important}.node-output-compact{min-height:auto}.output-compact-body{padding:8px 12px 10px;display:flex;flex-direction:column;flex:1;min-height:0}.output-fmt-row-compact{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:8px;align-items:center}.output-char-count{margin-left:auto;font-size:10px;color:#86868b;font-variant-numeric:tabular-nums}.output-content-preview{flex:1;min-height:60px;overflow-y:auto;border-radius:8px;border:1px solid rgba(0,0,0,.07);background:#f9f9fb;padding:8px 10px;scrollbar-width:thin;scrollbar-color:#d0d0d5 transparent}.output-content-active{background:#f5f5f7;border-color:#30d15833}.output-preview-text{font-size:11.5px;line-height:1.6;color:#1d1d1f;white-space:pre-wrap;word-break:break-word}.output-preview-cursor{display:inline-block;color:#ff6b35;animation:blink-cursor .7s step-end infinite}@keyframes blink-cursor{0%,to{opacity:1}50%{opacity:0}}.output-preview-empty{font-size:11px;color:#b0b0b5;padding:4px 0}.output-compact-has-content{color:#30d158;font-weight:500}.output-streaming-dot{color:#ff6b35}.node-output-streaming{box-shadow:0 0 0 2px #ff6b35,0 0 16px #ff6b3540!important;animation:node-ai-pulse 1.1s ease-in-out infinite}.help-overlay{position:fixed;inset:0;z-index:3000;background:rgba(0,0,0,.38);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:20px}.help-modal{background:#fff;border-radius:22px;box-shadow:0 24px 80px #00000038,0 4px 16px #0000001a;width:100%;max-width:860px;max-height:88vh;display:flex;flex-direction:column;overflow:hidden;animation:help-in .22s cubic-bezier(.34,1.4,.64,1)}@keyframes help-in{0%{opacity:0;transform:scale(.94) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}.help-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 0;flex-shrink:0}.help-header-left{display:flex;align-items:center;gap:12px}.help-header-icon{font-size:28px;line-height:1}.help-header-title{font-size:17px;font-weight:700;color:#1d1d1f;line-height:1.2}.help-header-sub{font-size:12px;color:#86868b;margin-top:1px}.help-close{width:32px;height:32px;border-radius:50%;border:none;background:#f0f0f2;color:#6e6e73;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .12s,color .12s;flex-shrink:0}.help-close:hover{background:#e5e5ea;color:#1d1d1f}.help-tabs{display:flex;gap:4px;padding:14px 24px 0;border-bottom:1px solid #f0f0f2;flex-shrink:0}.help-tab{padding:8px 16px;border-radius:10px 10px 0 0;border:none;background:transparent;font-size:13px;font-family:inherit;color:#6e6e73;cursor:pointer;font-weight:500;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .12s,background .12s}.help-tab:hover{color:#1d1d1f;background:#f5f5f7}.help-tab-active{color:#0071e3;font-weight:600;border-bottom-color:#0071e3;background:#f0f7ff}.help-body{flex:1;overflow-y:auto;padding:24px;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.1) transparent}.help-body::-webkit-scrollbar{width:5px}.help-body::-webkit-scrollbar-thumb{background:rgba(0,0,0,.1);border-radius:4px}.help-section{display:flex;flex-direction:column;gap:20px}.help-intro{font-size:14px;line-height:1.65;color:#3d3d3f;background:#f5f5f7;border-radius:12px;padding:14px 16px;margin:0}.help-intro strong{color:#1d1d1f}.help-steps{display:flex;align-items:stretch;gap:0;flex-wrap:wrap}.help-step-wrap{display:flex;align-items:center;gap:0;flex:1;min-width:160px}.help-step{flex:1;background:var(--step-bg);border-radius:16px;padding:18px 16px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;border:1.5px solid color-mix(in srgb,var(--step-color) 18%,transparent);position:relative}.help-step-num{position:absolute;top:10px;left:12px;font-size:10px;font-weight:800;color:var(--step-color);opacity:.5}.help-step-icon{font-size:26px;line-height:1}.help-step-title{font-size:13px;font-weight:700;color:#1d1d1f}.help-step-desc{font-size:11.5px;color:#6e6e73;line-height:1.5}.help-step-arrow{font-size:20px;color:#c7c7cc;padding:0 4px;flex-shrink:0;font-weight:300}.help-tip-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.help-tip{display:flex;gap:12px;align-items:flex-start;background:#f9f9fb;border-radius:12px;padding:14px;border:1px solid rgba(0,0,0,.06)}.help-tip-icon{font-size:20px;flex-shrink:0;margin-top:1px}.help-tip p{margin:4px 0 0;font-size:12px;color:#6e6e73;line-height:1.5}.help-tip strong{font-size:13px;color:#1d1d1f}.help-cat-filter{display:flex;gap:6px;flex-wrap:wrap}.help-cat-btn{padding:5px 14px;border-radius:20px;border:1.5px solid rgba(0,0,0,.1);background:white;font-size:12px;font-weight:500;color:#6e6e73;cursor:pointer;font-family:inherit;transition:all .12s}.help-cat-btn:hover{background:#f5f5f7;color:#1d1d1f}.help-cat-active{font-weight:600}.help-node-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(185px,1fr));gap:10px}.help-node-card{background:var(--card-bg);border-radius:14px;padding:14px;border:1.5px solid color-mix(in srgb,var(--card-color) 15%,transparent);display:flex;flex-direction:column;gap:8px;transition:transform .12s,box-shadow .12s}.help-node-card:hover{transform:translateY(-2px);box-shadow:0 6px 18px #00000014}.help-node-card-top{display:flex;align-items:center;gap:10px}.help-node-card-icon{font-size:22px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:white;border-radius:10px;box-shadow:0 1px 4px #00000014;flex-shrink:0}.help-node-card-name{font-size:13px;font-weight:700;color:#1d1d1f}.help-node-card-cat{display:inline-block;font-size:10px;font-weight:600;padding:2px 7px;border-radius:6px;margin-top:2px}.help-node-card-desc{font-size:11.5px;color:#6e6e73;line-height:1.5}.help-preset-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.help-preset-card{border-radius:14px;padding:14px;border:1.5px solid rgba(0,0,0,.06);background:#fafafa;display:flex;flex-direction:column;gap:6px;transition:transform .12s,box-shadow .12s;border-left:3px solid var(--preset-color)}.help-preset-card:hover{transform:translateY(-2px);box-shadow:0 6px 18px #00000014}.help-preset-card-icon{font-size:20px}.help-preset-card-label{font-size:13px;font-weight:700;color:#1d1d1f}.help-preset-card-desc{font-size:11.5px;color:#6e6e73;line-height:1.5}.help-callout{display:flex;gap:12px;align-items:flex-start;background:#fff8ee;border-radius:12px;padding:16px;border:1.5px solid rgba(245,166,35,.25)}.help-callout-icon{font-size:22px;flex-shrink:0;margin-top:1px}.help-callout strong{font-size:13px;color:#1d1d1f}.help-callout p{margin:4px 0 0;font-size:12px;color:#6e6e73;line-height:1.5}.help-shortcut-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.help-shortcut-group{background:#f9f9fb;border-radius:14px;padding:14px;border:1px solid rgba(0,0,0,.06)}.help-shortcut-group-title{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.7px;color:#86868b;margin-bottom:10px}.help-shortcut-row{display:flex;align-items:center;gap:10px;padding:5px 0;border-bottom:1px solid rgba(0,0,0,.04)}.help-shortcut-row:last-child{border-bottom:none;padding-bottom:0}.help-shortcut-keys{display:flex;align-items:center;gap:3px;flex-shrink:0;min-width:110px}.help-kbd-plus{font-size:10px;color:#aeaeb2;margin:0 1px}.help-shortcut-desc{font-size:12px;color:#3d3d3f;line-height:1.4}.help-kbd{display:inline-block;background:white;border:1px solid rgba(0,0,0,.14);border-bottom-width:2px;border-radius:5px;padding:2px 7px;font-size:11px;font-family:inherit;color:#1d1d1f;font-weight:600;box-shadow:0 1px 2px #0000000f;white-space:nowrap}.help-footer{display:flex;align-items:center;justify-content:space-between;padding:12px 24px;border-top:1px solid #f0f0f2;flex-shrink:0;background:#fafafa}.help-footer-badge{font-size:11px;font-weight:600;color:#86868b;background:#f0f0f2;padding:3px 10px;border-radius:20px}.help-footer-hint{font-size:11px;color:#aeaeb2}@media (max-width: 600px){.help-modal{border-radius:16px}.help-steps{flex-direction:column}.help-step-arrow{transform:rotate(90deg);align-self:center;padding:2px 0}.help-tip-grid,.help-shortcut-grid,.help-preset-grid{grid-template-columns:1fr}.help-node-grid{grid-template-columns:1fr 1fr}}.btn-help{height:32px;padding:0 14px;border-radius:20px;border:1.5px solid rgba(0,0,0,.1);background:white;font-size:13px;font-weight:600;font-family:inherit;color:#1d1d1f;cursor:pointer;transition:all .12s;display:flex;align-items:center;gap:5px}.btn-help:hover{background:#f5f5f7;border-color:#0000002e}.node-airesult{background:#fff;border:2px solid #06b6d4;border-radius:14px;box-shadow:0 4px 22px #06b6d424,0 1px 4px #0000000f}.node-airesult:hover{box-shadow:0 6px 28px #06b6d438,0 2px 8px #00000014}.node-selected-airesult{border-color:#06b6d4cc!important;box-shadow:0 0 0 3px #06b6d433,0 6px 24px #06b6d42e!important}.airesult-header{background:linear-gradient(135deg,#0891b2 0%,#0e7490 100%);color:#fff;border-bottom:none;padding:9px 12px;border-radius:11px 11px 0 0}.airesult-header .node-type-label{color:#ffffffeb;font-weight:600}.airesult-icon{font-size:13px;color:#ffffffe6}.airesult-badge{background:rgba(255,255,255,.22);color:#fff;font-size:9px;font-weight:700;padding:2px 6px;border-radius:4px;letter-spacing:.6px}.airesult-chars{font-size:10px;color:#ffffffb3;margin-left:auto;background:rgba(255,255,255,.12);padding:2px 6px;border-radius:4px}.airesult-delete{background:rgba(255,255,255,.15)!important;color:#fffc!important;border-radius:50%!important;width:20px!important;height:20px!important;display:flex!important;align-items:center;justify-content:center}.airesult-delete:hover{background:rgba(255,255,255,.3)!important;color:#fff!important}.airesult-body{flex:1;padding:10px 12px;overflow:hidden;display:flex;flex-direction:column}.airesult-content{flex:1;font-size:11.5px;line-height:1.65;color:#164e63;overflow-y:auto;white-space:pre-wrap;word-break:break-word;scrollbar-width:thin;scrollbar-color:rgba(6,182,212,.3) transparent}.airesult-content::-webkit-scrollbar{width:4px}.airesult-content::-webkit-scrollbar-thumb{background:rgba(6,182,212,.35);border-radius:2px}.airesult-empty{flex:1;display:flex;align-items:center;justify-content:center;color:#94a3b8;font-size:12px;font-style:italic}.nep-backdrop{position:fixed;inset:0;z-index:999;background:rgba(0,0,0,.38);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}.node-edit-panel{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:min(640px,92vw);max-height:min(86vh,720px);background:#fff;border-radius:20px;box-shadow:0 24px 64px #00000038,0 4px 16px #0000001a;z-index:1000;display:flex;flex-direction:column;animation:nep-pop-in .22s cubic-bezier(.34,1.4,.64,1)}@keyframes nep-pop-in{0%{transform:translate(-50%,-46%);opacity:0}to{transform:translate(-50%,-50%);opacity:1}}.nep-header{display:flex;align-items:center;justify-content:space-between;padding:15px 18px;border-bottom:1px solid #e5e7eb;background:#f9fafb;flex-shrink:0}.nep-header-info{display:flex;flex-direction:column;gap:2px}.nep-type-label{font-size:13px;font-weight:700;color:#1f2937}.nep-node-name{font-size:11px;color:#6b7280}.nep-close{background:none;border:none;color:#9ca3af;font-size:16px;cursor:pointer;padding:4px 8px;border-radius:6px;transition:background .15s,color .15s;line-height:1}.nep-close:hover{background:#f3f4f6;color:#374151}.nep-body{flex:1;overflow-y:auto;padding:18px;display:flex;flex-direction:column;gap:14px}.nep-section{display:flex;flex-direction:column;gap:6px}.nep-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#6b7280}.nep-textarea{width:100%;box-sizing:border-box;border:1.5px solid #e5e7eb;border-radius:8px;padding:10px 12px;font-size:13px;font-family:inherit;color:#1f2937;background:#fff;line-height:1.6;resize:none;overflow:hidden;transition:border-color .15s,box-shadow .15s;min-height:80px}.nep-textarea:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11f}.nep-textarea-readonly{background:#f9fafb;color:#6b7280;cursor:default}.nep-input-field{width:100%;box-sizing:border-box;border:1.5px solid #e5e7eb;border-radius:8px;padding:8px 12px;font-size:13px;font-family:inherit;color:#1f2937;background:#fff;transition:border-color .15s,box-shadow .15s}.nep-input-field:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11f}.nep-select{width:100%;box-sizing:border-box;border:1.5px solid #e5e7eb;border-radius:8px;padding:8px 12px;font-size:13px;color:#1f2937;background:#fff;cursor:pointer}.nep-run-btn{background:#6366f1;color:#fff;border:none;border-radius:8px;padding:10px 20px;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s;align-self:flex-start}.nep-run-btn:hover:not(:disabled){background:#4f46e5}.nep-run-btn:disabled{opacity:.55;cursor:not-allowed}.nep-run-loading{background:#a5b4fc}.nep-output{background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;padding:12px;font-size:13px;color:#374151;white-space:pre-wrap;line-height:1.65;max-height:380px;overflow-y:auto}.nep-output-full{max-height:65vh}.nep-output::-webkit-scrollbar{width:4px}.nep-output::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:2px}.nep-chip{background:#f3f4f6;border-radius:8px;padding:8px 12px;border-left:3px solid #6366f1}.nep-chip-label{font-size:10px;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}.nep-chip-value{font-size:12px;color:#374151;white-space:pre-wrap;max-height:72px;overflow-y:auto;line-height:1.5}.node-compact{position:relative;width:220px;background:white;border-radius:10px;border:1.5px solid #e2e8f0;box-shadow:0 2px 8px #00000012;transition:border-color .15s,box-shadow .15s;cursor:pointer;overflow:visible;border-left:4px solid #94a3b8}.node-compact:hover{border-color:#cbd5e0;box-shadow:0 4px 16px #0000001c}.node-compact-selected{border-color:#3b82f6!important;box-shadow:0 0 0 3px #3b82f62e,0 4px 16px #0000001a!important}.node-compact-inner{display:flex;align-items:center;padding:10px 12px;gap:8px;min-height:52px}.nc-icon{font-size:18px;flex-shrink:0;width:26px;text-align:center;line-height:1}.nc-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.nc-type{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#94a3b8;line-height:1.2}.nc-label{font-size:12px;font-weight:500;color:#1e293b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.nc-label-empty{color:#94a3b8;font-weight:400;font-style:italic}.nc-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.nc-dot-green{background:#22c55e}.nc-dot-orange{background:#f97316}.nc-dot-purple{background:#7c3aed}.nc-dot-blue{background:#0071e3}.nc-spinner{font-size:14px;flex-shrink:0}.nc-cursor{animation:nc-blink 1s step-end infinite}@keyframes nc-blink{0%,to{opacity:1}50%{opacity:0}}.nc-run{background:transparent;border:1.5px solid #e2e8f0;border-radius:6px;width:26px;height:26px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:10px;padding:0;color:#64748b;flex-shrink:0;transition:background .12s,border-color .12s}.nc-run:hover:not(:disabled){background:#f8fafc;border-color:#94a3b8}.nc-run:disabled{opacity:.45;cursor:not-allowed}.nc-expand{background:transparent;border:1.5px solid #e2e8f0;border-radius:6px;width:22px;height:22px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:10px;color:#94a3b8;opacity:0;transition:opacity .12s,background .12s,border-color .12s,color .12s;padding:0;flex-shrink:0}.node-compact:hover .nc-expand{opacity:1}.nc-expand:hover{background:#eef4fd;border-color:#0071e3;color:#0071e3;opacity:1!important}.nc-delete{background:transparent;border:none;width:22px;height:22px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:11px;color:#cbd5e0;opacity:0;transition:opacity .12s,color .12s,background .12s;padding:0;border-radius:5px;flex-shrink:0}.node-compact:hover .nc-delete{opacity:1}.nc-delete:hover{background:#fee2e2;color:#ef4444;opacity:1!important}.node-compact-input{border-left-color:#0071e3}.node-compact-preset{border-left-color:#ff6b35}.node-compact-llm{border-left-color:#7c3aed}.node-compact-output{border-left-color:#22c55e}.node-compact-running{border-color:#7c3aed!important;animation:nc-pulse-purple 1.6s ease-in-out infinite}.node-compact-streaming{border-color:#22c55e!important;animation:nc-pulse-green 1.6s ease-in-out infinite}@keyframes nc-pulse-purple{0%,to{box-shadow:0 2px 8px #00000012}50%{box-shadow:0 0 0 4px #7c3aed2e,0 2px 8px #00000012}}@keyframes nc-pulse-green{0%,to{box-shadow:0 2px 8px #00000012}50%{box-shadow:0 0 0 4px #22c55e33,0 2px 8px #00000012}}.handle-n8n{width:14px!important;height:14px!important;border-radius:50%!important;border:2px solid white!important;box-shadow:0 0 0 1.5px #cbd5e0!important;transition:transform .12s,box-shadow .12s!important}.handle-n8n:hover{transform:scale(1.25)!important;box-shadow:0 0 0 2px #3b82f6!important}.handle-n8n-in{left:-8px!important;background:#94a3b8!important}.handle-n8n-out{right:-8px!important;background:#3b82f6!important}.node-compact-input .handle-n8n-out{background:#0071e3!important}.node-compact-preset .handle-n8n-out{background:#ff6b35!important}.node-compact-llm .handle-n8n-out{background:#7c3aed!important}.node-compact-output .handle-n8n-in{background:#22c55e!important}.nep-btn-row{display:flex;gap:8px;margin-bottom:12px}.nep-improve-btn{flex:1;padding:10px;background:#f5f3ff;border:1.5px solid #ddd6fe;border-radius:8px;color:#6d28d9;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s}.nep-improve-btn:hover:not(:disabled){background:#ede9fe}.nep-improve-btn:disabled{opacity:.45;cursor:not-allowed}.nep-run-btn{flex:2}.nep-badge-readonly{display:inline-block;margin-left:8px;padding:1px 7px;background:#f1f5f9;border-radius:20px;font-size:10px;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.04em;vertical-align:middle}.nep-label-output{color:#059669}.nep-output-streaming{border-color:#6ee7b7;background:#f0fdf4}.nep-cursor{display:inline-block;color:#059669;animation:nc-blink 1s step-end infinite}.nep-tab-row{display:flex;gap:6px;margin-bottom:4px}.nep-tab{flex:1;padding:7px 10px;background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:7px;font-size:12px;font-weight:500;color:#64748b;cursor:pointer;transition:background .12s,border-color .12s,color .12s}.nep-tab:hover{background:#f1f5f9}.nep-tab-active{background:#eff6ff;border-color:#3b82f6;color:#1d4ed8;font-weight:600}.nep-hint{font-size:11px;color:#94a3b8;margin-top:4px}.nep-chip-var{cursor:pointer;background:#ede9fe;color:#6d28d9;padding:1px 6px;border-radius:4px;border:1px solid #c4b5fd;font-size:.82em;font-family:monospace;transition:background .15s,border-color .15s;user-select:none}.nep-chip-var:hover{background:#c4b5fd;border-color:#7c3aed}.react-flow__node-input,.react-flow__node-output{background:transparent!important;border:none!important;border-radius:0!important;box-shadow:none!important;padding:0!important;width:auto!important}.nep-prompt-wrap{position:relative}.nep-autocomplete{position:absolute;top:calc(100% + 2px);left:0;right:0;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 4px 20px #00000024;z-index:200;overflow:hidden}.nep-autocomplete-item{display:flex;align-items:center;gap:10px;padding:9px 14px;cursor:pointer;font-size:13px;transition:background .1s}.nep-autocomplete-item:hover{background:#f5f3ff}.nep-autocomplete-item code{background:#ede9fe;color:#6d28d9;padding:2px 7px;border-radius:4px;font-size:.83em;flex-shrink:0;border:1px solid #c4b5fd;font-family:monospace}.nep-ac-label{color:#64748b;font-size:.88em}.nc-label-done{color:#16a34a;font-size:11px}.node-compact-airesult{border-left-color:#06b6d4}.node-compact-airesult .handle-n8n-in,.node-compact-airesult .handle-n8n-out{background:#06b6d4}.nc-chars{font-size:10px;color:#94a3b8;flex-shrink:0;margin-right:2px}.node-airesult-final{background:#fff;border:1.5px solid #06b6d4;border-left:3px solid #06b6d4;border-radius:10px;min-width:280px;max-width:360px;box-shadow:0 2px 12px #06b6d426;font-family:inherit}.node-airesult-final-selected{box-shadow:0 0 0 2px #06b6d4,0 4px 20px #06b6d440}.airesult-final-header{display:flex;align-items:center;gap:6px;padding:7px 10px;border-bottom:1px solid #e0f7fa}.airesult-final-icon{font-size:14px}.airesult-final-type{font-size:11px;font-weight:700;color:#0891b2;text-transform:uppercase;letter-spacing:.4px;flex:1}.airesult-final-chars{font-size:10px;color:#94a3b8;margin-right:4px}.airesult-final-body{padding:10px 12px;max-height:320px;overflow-y:auto}.airesult-final-content{font-size:12px;line-height:1.65;color:#1e293b;white-space:pre-wrap;word-break:break-word}.airesult-final-empty{font-size:12px;color:#94a3b8;font-style:italic}.node-exec-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;margin:0 2px}.node-exec-dot-done{background:#30d158;box-shadow:0 0 0 2px #30d15833}.node-exec-dot-pending{background:#d1d1d6}.panel-btn-display{border-color:#0071e34d}.panel-btn-display:hover{background:rgba(0,113,227,.08);border-color:#0071e3}.node-display{background:#fff;border:1.5px solid rgba(0,113,227,.25);border-radius:16px;min-width:300px;min-height:180px;width:100%;height:100%;display:flex;flex-direction:column;box-shadow:0 2px 16px #0071e314,0 1px 4px #0000000f;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif;box-sizing:border-box}.node-display-selected{border-color:#0071e3;box-shadow:0 0 0 3px #0071e326,0 4px 20px #0071e31f}.node-display-streaming{border-color:#ff9500;box-shadow:0 0 0 3px #ff95001f}.display-header{display:flex;align-items:center;gap:6px;padding:8px 10px 8px 12px;background:rgba(0,113,227,.04);border-bottom:1px solid rgba(0,113,227,.1);flex-shrink:0}.display-icon{font-size:14px}.display-title{flex:1;font-size:12px;font-weight:600;color:#1d1d1f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.display-streaming-badge{font-size:10px;font-weight:600;color:#ff9500;background:rgba(255,149,0,.1);border-radius:4px;padding:1px 5px;text-transform:uppercase;letter-spacing:.5px}.display-body{flex:1;overflow-y:auto;padding:12px 14px;min-height:0}.display-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;height:100%;min-height:80px;font-size:12px;color:#86868b;text-align:center}.display-empty-icon{font-size:20px}.display-content{font-size:13px;line-height:1.6}.display-cursor{display:inline-block;color:#0071e3;animation:blink .8s step-end infinite;font-size:13px}.node-card-reset{background:none;border:1px solid rgba(0,0,0,.12);color:#86868b;border-radius:6px;cursor:pointer;font-size:13px;padding:1px 5px;margin-left:1px;line-height:1;transition:color .15s,border-color .15s,background .15s;flex-shrink:0}.node-card-reset:hover{color:#ff3b30;border-color:#ff3b3066;background:rgba(255,59,48,.06)}.node-compact-expanded{height:100%;min-height:70px;display:flex;flex-direction:column}.node-compact-content-area{flex:1;overflow-y:auto;padding:8px 10px 10px;border-top:1px solid rgba(0,0,0,.07);font-size:12px;line-height:1.5;color:#3c3c3e}.toast-container{position:fixed;bottom:80px;left:50%;transform:translate(-50%);z-index:9999;display:flex;flex-direction:column;gap:8px;pointer-events:none;max-width:480px;width:90%}.toast{padding:12px 18px;border-radius:14px;font-size:13px;font-weight:500;font-family:inherit;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 4px 20px #00000026;animation:toast-in .25s ease;line-height:1.4}@keyframes toast-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.toast-info{background:rgba(29,29,31,.92);color:#fff}.toast-warning{background:rgba(255,149,0,.95);color:#fff}.toast-error{background:rgba(255,59,48,.95);color:#fff}.toast-success{background:rgba(52,199,89,.95);color:#fff}.confirm-overlay{position:fixed;inset:0;z-index:8000;background:rgba(0,0,0,.35);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center}.confirm-modal{background:white;border-radius:20px;padding:28px 32px;max-width:380px;width:90%;box-shadow:0 20px 60px #0003}.confirm-title{font-size:16px;font-weight:700;color:#1d1d1f;margin-bottom:10px}.confirm-msg{font-size:13.5px;color:#3d3d3f;line-height:1.5;margin-bottom:20px}.confirm-actions{display:flex;gap:10px;justify-content:flex-end}.node-body-expanded{overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:10px;padding:12px 14px}.nif-field{display:flex;flex-direction:column;gap:4px}.nif-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:#86868b}.nif-label-output{color:#1a8c3e}.nif-input{width:100%;padding:7px 10px;border-radius:9px;border:1.5px solid #e5e5ea;background:#f5f5f7;font-size:12.5px;font-family:inherit;color:#1d1d1f;outline:none;transition:border-color .15s;box-sizing:border-box}.nif-input:focus{border-color:#0071e3;background:white}.nif-textarea{width:100%;min-height:80px;padding:9px 11px;border-radius:9px;border:1.5px solid #e5e5ea;background:#f5f5f7;font-size:12.5px;font-family:inherit;color:#1d1d1f;line-height:1.6;resize:vertical;outline:none;transition:border-color .15s;box-sizing:border-box;flex:1}.nif-textarea:focus{border-color:#0071e3;background:white}.nif-textarea-prompt:focus{border-color:#7c3aed;background:white}.nif-readonly{background:#f9f9fb!important;color:#86868b;resize:none;cursor:default}.nif-hint{font-size:11px;color:#86868b;padding:2px}.nif-output-section{display:flex;flex-direction:column;gap:4px;border-top:1px solid rgba(0,0,0,.07);padding-top:10px;margin-top:4px}.nif-output-content{font-size:12px;color:#1a8c3e;line-height:1.6;background:rgba(48,209,88,.08);border-radius:9px;padding:9px 11px;overflow-y:auto;max-height:220px;white-space:pre-wrap}.nif-run-row{display:flex;gap:8px;align-items:center}.nif-run-btn{flex:1;padding:8px 12px;border-radius:10px;border:none;background:#0071e3;color:#fff;font-size:12.5px;font-weight:600;font-family:inherit;cursor:pointer;transition:background .15s}.nif-run-btn:hover{background:#0077ed}.nif-run-btn:disabled{opacity:.45;cursor:default}.nif-run-btn-preset{background:#ff6b35}.nif-run-btn-preset:hover{background:#e85c26}.nif-run-btn-llm{background:#7c3aed}.nif-run-btn-llm:hover{background:#6d28d9}.nif-improve-btn{padding:8px 12px;border-radius:10px;border:1.5px solid #7c3aed;background:#f3eeff;color:#7c3aed;font-size:12px;font-weight:600;font-family:inherit;cursor:pointer;transition:all .15s}.nif-improve-btn:hover{background:#ede9fe}.nif-improve-btn:disabled{opacity:.4;cursor:default}.node-overlay-backdrop{position:fixed;inset:0;z-index:9000;background:rgba(0,0,0,.4);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:24px;box-sizing:border-box}.node-overlay-modal{background:#fff;border-radius:18px;box-shadow:0 24px 80px #00000038;width:100%;max-width:680px;max-height:88vh;display:flex;flex-direction:column;overflow:hidden}.node-overlay-header{display:flex;align-items:center;gap:8px;padding:14px 18px;border-bottom:1px solid rgba(0,0,0,.08);flex-shrink:0}.node-overlay-title{font-size:14px;font-weight:600;color:#1d1d1f;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.node-overlay-close{background:none;border:none;cursor:pointer;font-size:16px;color:#86868b;padding:4px 6px;border-radius:6px;line-height:1}.node-overlay-close:hover{background:#f5f5f7;color:#1d1d1f}.node-overlay-body{padding:18px 20px;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:10px}.slash-menu{position:absolute;left:0;right:0;top:calc(100% + 4px);background:#fff;border:1.5px solid #e5e5ea;border-radius:10px;box-shadow:0 8px 28px #00000024;z-index:9999;overflow:hidden;max-height:200px;overflow-y:auto}.slash-menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:9px 14px;background:none;border:none;cursor:pointer;font-family:inherit;font-size:13px;color:#1d1d1f;text-align:left;transition:background .1s}.slash-menu-item:hover{background:#f0eeff;color:#7c3aed}.slash-menu-icon{color:#7c3aed;font-size:12px;flex-shrink:0}.auth-splash{height:100vh;display:flex;align-items:center;justify-content:center;font-size:18px;color:#86868b;background:#f5f5f7}.auth-overlay{position:fixed;inset:0;background:rgba(0,0,0,.35);display:flex;align-items:center;justify-content:center;z-index:1000;backdrop-filter:blur(6px)}.auth-modal{background:white;border-radius:20px;padding:36px 32px;width:380px;box-shadow:0 24px 60px #0000002e;display:flex;flex-direction:column;gap:20px}.auth-logo{display:flex;align-items:center;gap:10px;justify-content:center}.auth-logo-icon{font-size:24px;color:#0071e3}.auth-logo-text{font-size:18px;font-weight:700;color:#1d1d1f}.auth-tabs{display:flex;gap:0;background:#f0f0f2;border-radius:10px;padding:3px}.auth-tab{flex:1;padding:7px;border:none;background:transparent;border-radius:8px;font-size:13px;font-weight:600;color:#86868b;font-family:inherit;cursor:pointer;transition:all .15s}.auth-tab-active{background:white;color:#1d1d1f;box-shadow:0 1px 4px #0000001a}.auth-form{display:flex;flex-direction:column;gap:14px}.auth-field{display:flex;flex-direction:column;gap:5px}.auth-label{font-size:11.5px;font-weight:600;color:#86868b;text-transform:uppercase;letter-spacing:.5px}.auth-input{padding:10px 13px;border-radius:10px;border:1.5px solid rgba(0,0,0,.12);font-size:14px;font-family:inherit;background:#fafafa;outline:none;transition:border .15s}.auth-input:focus{border-color:#0071e3;background:white}.auth-error{font-size:13px;color:#d32f2f;background:#fff2f2;padding:10px 14px;border-radius:8px;border-left:3px solid #ff3b30;line-height:1.5;word-break:break-word}.auth-submit{padding:11px;border-radius:12px;border:none;background:#0071e3;color:#fff;font-size:14px;font-weight:700;font-family:inherit;cursor:pointer;transition:background .15s;margin-top:4px}.auth-submit:hover{background:#0077ed}.auth-submit:disabled{opacity:.5;cursor:default}.auth-hint{font-size:11.5px;color:#aeaeb2;text-align:center;line-height:1.5}.auth-info{font-size:13px;color:#0a5c36;background:#f0faf4;padding:10px 14px;border-radius:8px;border-left:3px solid #30d158;line-height:1.5;word-break:break-word}.auth-google-btn{display:flex;align-items:center;justify-content:center;gap:10px;padding:11px 16px;border-radius:12px;border:1.5px solid rgba(0,0,0,.14);background:white;font-size:14px;font-weight:600;color:#1d1d1f;font-family:inherit;cursor:pointer;transition:background .15s}.auth-google-btn:hover{background:#f5f5f7}.auth-divider{display:flex;align-items:center;gap:10px;color:#aeaeb2;font-size:12px}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:rgba(0,0,0,.08)}.auth-footer{display:flex;justify-content:center}.auth-text-btn{background:none;border:none;color:#0071e3;font-size:12.5px;cursor:pointer;font-family:inherit;padding:0}.auth-text-btn:hover{text-decoration:underline}.auth-forgot-title,.auth-needs-username-title{font-size:16px;font-weight:700;color:#1d1d1f;text-align:center}.ws-overlay{position:fixed;inset:0;background:#f5f5f7;display:flex;align-items:flex-start;justify-content:center;z-index:900;overflow-y:auto;padding:40px 20px}.ws-modal{background:white;border-radius:20px;width:640px;max-width:100%;box-shadow:0 12px 40px #0000001f;overflow:hidden}.ws-header{padding:20px 28px;border-bottom:1px solid #f0f0f2;display:flex;align-items:center;justify-content:space-between}.ws-logo{display:flex;align-items:center;gap:9px}.ws-logo-icon{font-size:18px;color:#0071e3}.ws-logo-text{font-size:16px;font-weight:700;color:#1d1d1f}.ws-user{display:flex;align-items:center;gap:10px}.ws-avatar{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:#fff}.ws-username{font-size:13px;font-weight:600;color:#3c3c3e}.ws-signout{padding:5px 9px;border:1.5px solid rgba(0,0,0,.12);border-radius:8px;background:transparent;font-size:13px;cursor:pointer;color:#86868b;transition:all .15s}.ws-signout:hover{background:#f5f5f7;color:#ff3b30;border-color:#ff3b30}.ws-body{padding:24px 28px;display:flex;flex-direction:column;gap:18px}.ws-title-row{display:flex;align-items:center;justify-content:space-between}.ws-title{font-size:18px;font-weight:700;color:#1d1d1f;margin:0}.ws-create-btn{padding:7px 14px;border-radius:10px;border:none;background:#0071e3;color:#fff;font-size:13px;font-weight:600;font-family:inherit;cursor:pointer;transition:background .15s}.ws-create-btn:hover{background:#0077ed}.ws-create-form{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.ws-create-input{flex:1;padding:9px 13px;border-radius:10px;border:1.5px solid rgba(0,0,0,.12);font-size:13.5px;font-family:inherit;outline:none;min-width:160px}.ws-create-input:focus{border-color:#0071e3}.ws-create-submit{padding:9px 16px;border-radius:10px;border:none;background:#0071e3;color:#fff;font-size:13px;font-weight:600;font-family:inherit;cursor:pointer}.ws-error{font-size:12.5px;color:#d32f2f;background:#fff2f2;padding:8px 12px;border-radius:7px;border-left:3px solid #ff3b30;line-height:1.5;word-break:break-word;width:100%}.ws-loading{color:#86868b;font-size:14px;padding:20px 0;text-align:center}.ws-empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:40px 0;color:#aeaeb2;font-size:14px;text-align:center;line-height:1.5}.ws-empty-icon{font-size:36px}.ws-list{display:flex;flex-direction:column;gap:10px}.ws-item{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1.5px solid #f0f0f2;border-radius:14px;cursor:pointer;transition:all .15s}.ws-item:hover{border-color:#0071e3;background:#f0f7ff}.ws-item-icon{font-size:22px;flex-shrink:0}.ws-item-info{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.ws-item-name{font-size:14px;font-weight:600;color:#1d1d1f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ws-item-meta{font-size:11.5px;color:#aeaeb2}.ws-item-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.ws-item-delete{padding:5px 8px;border:none;background:transparent;border-radius:7px;font-size:14px;cursor:pointer;opacity:.4;transition:opacity .15s}.ws-item-delete:hover{opacity:1;background:#fff2f2}.ws-item-open{padding:6px 12px;border-radius:9px;border:1.5px solid #0071e3;background:transparent;color:#0071e3;font-size:12.5px;font-weight:600;font-family:inherit;cursor:pointer;transition:all .15s}.ws-item-open:hover{background:#0071e3;color:#fff}.share-link-box{background:#f5f5f7;border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:8px}.share-link-label{font-size:11.5px;font-weight:600;color:#86868b;text-transform:uppercase;letter-spacing:.5px}.share-link-row{display:flex;align-items:center;gap:8px}.share-link-text{flex:1;font-size:12px;color:#1d1d1f;background:white;padding:7px 10px;border-radius:8px;border:1px solid rgba(0,0,0,.1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.share-link-copy{padding:7px 12px;border-radius:8px;border:none;background:#0071e3;color:#fff;font-size:12.5px;font-weight:600;font-family:inherit;cursor:pointer;white-space:nowrap;transition:background .15s}.share-link-copy:hover{background:#0077ed}.share-overlay{position:fixed;inset:0;background:rgba(0,0,0,.3);display:flex;align-items:center;justify-content:center;z-index:1000;backdrop-filter:blur(4px)}.share-modal{background:white;border-radius:18px;padding:28px;width:420px;box-shadow:0 20px 50px #0000002e;display:flex;flex-direction:column;gap:18px}.share-header{display:flex;align-items:center;justify-content:space-between}.share-title{font-size:16px;font-weight:700;color:#1d1d1f}.share-close{width:28px;height:28px;border-radius:50%;border:none;background:#f0f0f2;font-size:13px;cursor:pointer;display:flex;align-items:center;justify-content:center}.share-ws-name{font-size:13px;color:#86868b;background:#f5f5f7;padding:8px 12px;border-radius:9px}.share-form{display:flex;flex-direction:column;gap:8px}.share-label{font-size:11.5px;font-weight:600;color:#86868b;text-transform:uppercase;letter-spacing:.5px}.share-input-row{display:flex;gap:8px}.share-input{flex:1;padding:9px 12px;border-radius:10px;border:1.5px solid rgba(0,0,0,.12);font-size:13.5px;font-family:inherit;outline:none}.share-input:focus{border-color:#0071e3}.share-invite-btn{padding:9px 14px;border-radius:10px;border:none;background:#0071e3;color:#fff;font-size:13px;font-weight:600;font-family:inherit;cursor:pointer}.share-invite-btn:disabled{opacity:.5}.share-error{font-size:12.5px;color:#d32f2f;background:#fff2f2;padding:8px 12px;border-radius:7px;border-left:3px solid #ff3b30;line-height:1.5;word-break:break-word}.share-success{font-size:12.5px;color:#1a7a3c;background:#f0faf4;padding:8px 12px;border-radius:7px;border-left:3px solid #30d158;line-height:1.5;word-break:break-word}.share-hint{font-size:11.5px;color:#aeaeb2}.share-section-label{font-size:11.5px;font-weight:600;color:#86868b;text-transform:uppercase;letter-spacing:.5px}.share-no-members{font-size:13px;color:#aeaeb2;padding:8px 0}.share-members{display:flex;flex-direction:column;gap:6px}.share-member-row{display:flex;align-items:center;gap:10px;padding:8px;background:#f5f5f7;border-radius:10px}.share-member-avatar{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff;flex-shrink:0}.share-member-name{flex:1;font-size:13px;font-weight:600;color:#1d1d1f}.share-member-role{font-size:11.5px;color:#86868b}.share-member-remove{width:22px;height:22px;border-radius:50%;border:none;background:transparent;font-size:11px;cursor:pointer;color:#aeaeb2;transition:color .15s}.share-member-remove:hover{color:#ff3b30}.ws-back-btn{padding:4px 10px;border-radius:8px;border:1.5px solid rgba(0,0,0,.12);background:transparent;font-size:11.5px;font-weight:600;color:#86868b;font-family:inherit;cursor:pointer;transition:all .15s;margin-left:6px}.ws-back-btn:hover{border-color:#0071e3;color:#0071e3}.viewer-badge{background:#fff8e6;color:#c47e00;border:1px solid rgba(245,166,35,.3)}.presence-bar{display:flex;align-items:center;gap:4px;flex-shrink:0}.presence-avatar{width:28px;height:28px;border-radius:50%;border:2px solid white;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff;box-shadow:0 1px 4px #00000026}.presence-more{font-size:11px;color:#86868b;background:#f0f0f2;padding:3px 7px;border-radius:20px}
