@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;600;700&family=Space+Mono:wght@400;700&display=swap";.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__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-default,.react-flow__node-input,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:3px;width:150px;font-size:12px;color:#222;text-align:center;border-width:1px;border-style:solid;border-color:#1a192b;background-color:#fff}.react-flow__node-default.selectable:hover,.react-flow__node-input.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:0 1px 4px 1px #00000014}.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:0 0 0 .5px #1a192b}.react-flow__node-group{background-color:#f0f0f040}.react-flow__nodesselection-rect,.react-flow__selection{background:#0059dc14;border:1px dotted rgba(0,89,220,.8)}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow{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;background-color:#333}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:-4px;transform:translate(-50%)}.react-flow__handle-top{left:50%;top:-4px;transform:translate(-50%)}.react-flow__handle-left{top:50%;left:-4px;transform:translateY(-50%)}.react-flow__handle-right{right:-4px;top:50%;transform:translateY(-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.center{left:50%;transform:translate(-50%)}.react-flow__attribution{font-size:10px;background:#ffffff80;padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@-webkit-keyframes dashdraw{0%{stroke-dashoffset:10}}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__node-default,.react-flow__node-input,.react-flow__node-output,.react-flow__node-group{border-width:1px;border-style:solid;border-color:#bbb}.react-flow__node-default.selected,.react-flow__node-default:focus,.react-flow__node-default:focus-visible,.react-flow__node-input.selected,.react-flow__node-input:focus,.react-flow__node-input:focus-visible,.react-flow__node-output.selected,.react-flow__node-output:focus,.react-flow__node-output:focus-visible,.react-flow__node-group.selected,.react-flow__node-group:focus,.react-flow__node-group:focus-visible{outline:none;border:1px solid #555}.react-flow__nodesselection-rect,.react-flow__selection{background:#9696b41a;border:1px dotted rgba(155,155,155,.8)}.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%}:root{--bg: #f8fafc;--text: #0f172a;--border: #e2e8f0;--block-bg: #ffffff;--card-bg: rgba(255, 255, 255, .85);--hover-bg: #f1f5f9;--input-bg: #ffffff;--input-border: #cbd5e1;--button-bg: #ffffff;--button-border: #94a3b8;--secondary-text: #64748b;--chevron: #94a3b8;--chevron-open: #1e293b;--canvas-bg: #f1f5f9;--edge-color: #6366f1;--edge-line: var(--accent);--edge-glow: rgba(99, 102, 241, .2);--glass-border: rgba(255, 255, 255, .5);--node-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--node-surface: linear-gradient(160deg, rgba(255, 255, 255, .98), rgba(241, 245, 249, .85));--node-surface-muted: linear-gradient(160deg, rgba(255, 255, 255, .92), rgba(226, 232, 240, .8));--node-border-strong: rgba(148, 163, 184, .45);--node-shadow-strong: 0 14px 32px -16px rgba(15, 23, 42, .35);--node-glow: rgba(15, 23, 42, .08);--node-icon: #0f172a;--node-border: rgba(15, 23, 42, .4);--group-alpha: .05;--group-border-alpha: .35;--accent: #3b82f6;--sidebar-bg: linear-gradient(180deg, #f8fafc 0%, #f1f5f9 100%);--sidebar-border: #d7dee8;--sidebar-header-bg: #ffffff;--sidebar-chip-bg: #eef2f7;--sidebar-shadow: 0 14px 32px -28px rgba(15, 23, 42, .25);--sidebar-panel-bg: #ffffff;--sidebar-panel-muted: #f3f4f6;--sidebar-panel-border: #d1d5db;--sidebar-panel-hover: #e5e7eb;--sidebar-surface-bg: #f3f4f6;--sidebar-surface-muted: #eceff3;--sidebar-surface-hover: #e6eaf0}[data-theme=dark]{--bg: #020617;--text: #f1f5f9;--border: #1e293b;--block-bg: #0f172a;--card-bg: rgba(15, 23, 42, .7);--hover-bg: #1e293b;--input-bg: #020617;--input-border: #334155;--button-bg: #1e293b;--button-border: #475569;--secondary-text: #94a3b8;--chevron: #64748b;--chevron-open: #f1f5f9;--canvas-bg: #000000;--edge-color: #818cf8;--edge-line: var(--accent);--edge-glow: rgba(129, 140, 248, .4);--glass-border: rgba(255, 255, 255, .1);--node-shadow: 0 10px 15px -3px rgb(0 0 0 / .5), 0 4px 6px -4px rgb(0 0 0 / .5);--node-surface: linear-gradient(160deg, rgba(15, 23, 42, .92), rgba(2, 6, 23, .78));--node-surface-muted: linear-gradient(160deg, rgba(30, 41, 59, .9), rgba(2, 6, 23, .7));--node-border-strong: rgba(148, 163, 184, .25);--node-shadow-strong: 0 16px 34px -16px rgba(0, 0, 0, .6);--node-glow: rgba(148, 163, 184, .12);--node-icon: #ffffff;--node-border: rgba(255, 255, 255, .45);--group-alpha: .12;--group-border-alpha: .6;--accent: #58a6ff;--sidebar-bg: linear-gradient(180deg, #0b1117 0%, #090f14 100%);--sidebar-border: #273040;--sidebar-header-bg: #111821;--sidebar-chip-bg: #192230;--sidebar-shadow: 0 18px 38px -28px rgba(0, 0, 0, .65);--sidebar-panel-bg: #2a2d32;--sidebar-panel-muted: #23262b;--sidebar-panel-border: #3b4048;--sidebar-panel-hover: #343940;--sidebar-surface-bg: #22262c;--sidebar-surface-muted: #1d2127;--sidebar-surface-hover: #2a2f36}html,body,#root{height:100%;margin:0;font-family:Space Grotesk,Segoe UI,sans-serif;background:var(--bg);color:var(--text);transition:background .3s,color .3s}*{box-sizing:border-box}.app{display:grid;grid-template-columns:380px 1fr;height:100dvh;min-height:100vh;overflow:hidden;position:relative;background:var(--bg);--sidebar-width: 380px}.app.sidebar-collapsed{grid-template-columns:0 1fr;--sidebar-width: 0px}.app.sidebar-collapsed .sidebar{width:0;min-width:0;padding:0;overflow:hidden;border-right:none;box-shadow:none}.sidebar{border-right:1px solid var(--sidebar-border);padding:10px 0 14px;overflow:hidden;display:flex;flex-direction:column;background:var(--sidebar-bg);box-shadow:var(--sidebar-shadow);height:100%;transition:transform .3s ease,width .3s ease,box-shadow .3s ease;z-index:100}.sidebar-body{flex:1 1 auto;min-height:0;overflow-y:auto;padding:12px 16px 16px;display:flex;flex-direction:column;gap:12px;scrollbar-width:thin;scrollbar-color:rgba(124,140,162,.5) transparent}.sidebar-body::-webkit-scrollbar{width:8px;height:8px}.sidebar-body::-webkit-scrollbar-track{background:transparent}.sidebar-body::-webkit-scrollbar-thumb{background:#7c8ca28c;border-radius:999px;border:2px solid transparent;background-clip:padding-box}.sidebar-body::-webkit-scrollbar-thumb:hover{background:#7c8ca2cc;background-clip:padding-box}.mobile-toggle{display:none;position:fixed;bottom:calc(20px + env(safe-area-inset-bottom));right:calc(20px + env(safe-area-inset-right));z-index:1000;width:56px;height:56px;border-radius:28px;background:var(--accent);color:#fff;border:none;box-shadow:0 4px 12px #0003;align-items:center;justify-content:center;font-size:24px}.sidebar-edge-toggle{position:absolute;top:50%;left:var(--sidebar-width);z-index:120;width:24px;height:64px;border-radius:0 10px 10px 0;border:1px solid var(--sidebar-panel-border);border-left:none;background:var(--sidebar-surface-bg);color:var(--secondary-text);font-size:13px;font-weight:600;cursor:ew-resize;box-shadow:none;display:flex;align-items:center;justify-content:center;transition:transform .2s ease,background .2s ease,color .2s ease,left .25s ease;transform:translateY(-50%)}.sidebar-edge-toggle:hover{transform:translateY(-50%) translateY(-1px);background:var(--sidebar-surface-hover);color:var(--text)}@media (max-width: 768px){.app{grid-template-columns:1fr}.sidebar{position:fixed;top:0;left:0;width:320px;transform:translate(-100%);box-shadow:10px 0 30px #0003;opacity:0;pointer-events:none;transition:transform .3s ease,opacity .25s ease}.sidebar.open{transform:translate(0);opacity:1;pointer-events:auto}.mobile-toggle{display:flex}.sidebar-edge-toggle{display:none}}.sidebar-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:90;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);opacity:0;pointer-events:none;transition:opacity .2s ease}@media (max-width: 768px){.sidebar-overlay.open{opacity:1;pointer-events:auto}}.sidebar-header{margin:10px 12px;padding:10px 12px;border:1px solid var(--sidebar-panel-border);border-radius:12px;display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;background:var(--sidebar-surface-bg);z-index:10;box-shadow:none}.sidebar-header h1{margin:0;font-size:13px;font-weight:600;letter-spacing:.25px;display:flex;align-items:center;gap:8px;color:var(--text)}.sidebar-header .brand-icon{width:24px;height:24px;border-radius:7px;display:grid;place-items:center;background:var(--sidebar-panel-muted);border:1px solid var(--sidebar-panel-border);color:color-mix(in srgb,#d1d5db 86%,var(--text));font-size:12px;box-shadow:none}.sidebar-header .brand-text{font-size:13px;font-weight:600;letter-spacing:.2px}.theme-toggle{background:var(--sidebar-chip-bg);border:1px solid var(--sidebar-panel-border);color:var(--text);padding:6px 8px;border-radius:8px;min-width:30px;cursor:pointer;font-size:12px;font-weight:600;transition:border-color .18s ease,background .18s ease}.theme-toggle:hover{background:color-mix(in srgb,var(--sidebar-chip-bg) 72%,var(--sidebar-panel-hover));border-color:color-mix(in srgb,#9ca3af 42%,var(--sidebar-panel-border))}.collapse-toggle{font-family:Space Mono,monospace;letter-spacing:.5px}.sidebar-body>*{margin:0}.sidebar .block{background:var(--sidebar-surface-bg);border:1px solid var(--sidebar-panel-border);border-radius:12px;padding:10px 11px}.sidebar .collapsible-block{border-radius:12px;background:var(--sidebar-surface-bg);border-color:var(--sidebar-panel-border)}.sidebar .collapsible-header{padding:10px 11px}.sidebar .collapsible-header:hover{background:var(--sidebar-surface-hover)}.sidebar .collapsible-header h3{font-size:11px;font-weight:600;letter-spacing:.15px}.sidebar .collapsible-content{padding:0 11px}.sidebar .collapsible-content.open{border-top:1px solid var(--sidebar-panel-border);padding:8px 11px 11px}.sidebar .llm-settings.open{display:flex;flex-direction:column;min-height:0}.sidebar .llm-settings.open .collapsible-content.open{max-height:calc(100dvh - 260px)!important;min-height:160px;overflow-y:auto!important;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:rgba(124,140,162,.5) transparent;overscroll-behavior:contain;padding-right:8px}.sidebar .llm-settings.open .collapsible-content.open::-webkit-scrollbar{width:6px}.sidebar .llm-settings.open .collapsible-content.open::-webkit-scrollbar-track{background:transparent}.sidebar .llm-settings.open .collapsible-content.open::-webkit-scrollbar-thumb{background:#7c8ca28c;border-radius:999px}@media (max-height: 860px){.sidebar .llm-settings.open .collapsible-content.open{max-height:calc(100dvh - 230px)!important}}.sidebar .llm-settings.collapsed{margin-bottom:0}.sidebar .llm-settings.collapsed .collapsible-header{padding:7px 9px;min-height:32px}.sidebar .llm-settings.collapsed .collapsible-header h3{font-size:11px;font-weight:600;gap:6px;letter-spacing:.1px}.sidebar .llm-settings.collapsed .settings-icon{font-size:12px;opacity:.9}.sidebar .llm-settings.collapsed .chevron{font-size:14px}.sidebar .settings-icon{font-size:12px;opacity:.9}.sidebar .chevron{font-size:14px;color:var(--secondary-text)}.sidebar .chevron.open{color:var(--text)}.sidebar small{display:block;margin-top:6px;font-size:10px;line-height:1.35;color:var(--secondary-text)}.sidebar label{font-size:11px;font-weight:600;letter-spacing:.25px;color:var(--secondary-text)}.sidebar input,.sidebar textarea,.sidebar select{border-radius:8px;border-color:var(--sidebar-panel-border);background:var(--sidebar-surface-muted);color:var(--text)}.sidebar input:focus,.sidebar textarea:focus,.sidebar select:focus{outline:none;border-color:color-mix(in srgb,#aab2bd 64%,var(--sidebar-panel-border));box-shadow:0 0 0 2px color-mix(in srgb,#aab2bd 18%,transparent)}.sidebar button{border-radius:6px;border-color:var(--sidebar-panel-border);background:var(--sidebar-surface-muted);color:var(--text);font-size:11px;font-weight:600;line-height:1.2;padding:6px 9px;letter-spacing:.15px}.sidebar button:hover:not(:disabled){border-color:color-mix(in srgb,#9ca3af 46%,var(--sidebar-panel-border));background:var(--sidebar-surface-hover)}.sidebar button.primary{background:var(--sidebar-surface-muted);border-color:var(--sidebar-panel-border);color:var(--text)}.sidebar button.primary:hover:not(:disabled){background:var(--sidebar-surface-hover);border-color:color-mix(in srgb,#9ca3af 46%,var(--sidebar-panel-border));box-shadow:none}.sidebar .btnrow{gap:6px;margin-top:7px;justify-content:flex-start}.sidebar .btnrow button{flex:0 0 auto;min-width:auto;padding:6px 9px;border-radius:6px;font-size:11px}.sidebar .question-nav-btn,.sidebar .question-clear-btn,.sidebar .question-custom-add{border-radius:7px;border-color:color-mix(in srgb,var(--sidebar-border) 84%,transparent)}.token-usage-panel{position:fixed;left:calc(var(--sidebar-width) + 12px + env(safe-area-inset-left));bottom:calc(10px + env(safe-area-inset-bottom));z-index:150;margin:0;padding:4px 8px;border:1px solid color-mix(in srgb,var(--sidebar-border) 90%,transparent);border-radius:8px;background:color-mix(in srgb,var(--sidebar-bg) 86%,var(--block-bg));-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;display:inline-flex;align-items:center;gap:6px;max-width:calc(100vw - 16px);opacity:.96;pointer-events:none}.token-usage-reset{border-radius:999px;font-size:11px;font-weight:600}.token-usage-reset-mini{padding:3px 8px;line-height:1.2}.token-mini-item{display:flex;align-items:baseline;gap:4px;white-space:nowrap}.token-mini-label{font-size:9px;color:var(--secondary-text);text-transform:uppercase;letter-spacing:.2px}.token-mini-value{font-size:11px;font-weight:700;color:var(--text);white-space:nowrap}.token-mini-sep{font-size:10px;color:var(--secondary-text)}@media (max-width: 768px){.token-usage-panel{padding:3px 7px;gap:5px;left:calc(6px + env(safe-area-inset-left));bottom:calc(6px + env(safe-area-inset-bottom));opacity:.82}.token-mini-label{font-size:8px}.token-mini-value{font-size:10px}.token-usage-reset-mini{padding:2px 7px;font-size:10px}}.main{height:100dvh;min-height:100vh;background:var(--bg);overflow:hidden}.block{margin-bottom:12px;background:var(--block-bg)}.components-sidebar{width:0}.components-sidebar.open{width:280px}@media (max-width: 768px){.components-sidebar.open{position:fixed;right:0;top:0;width:280px;height:100%;box-shadow:-10px 0 30px #0003;z-index:200}}.collapsible-block{padding:0;overflow:hidden;border:1px solid var(--border);border-radius:6px;margin-bottom:12px;background:var(--block-bg)}.collapsible-header{cursor:pointer;padding:12px;display:flex;justify-content:space-between;align-items:center;-webkit-user-select:none;user-select:none;transition:background .2s ease}.collapsible-header:hover{background:var(--hover-bg)}.collapsible-header h3{margin:0;display:flex;align-items:center;gap:8px;color:var(--text)}.settings-icon{font-size:16px}.chevron{font-size:20px;font-weight:700;color:var(--chevron);transform:rotate(0);transition:transform .2s ease,color .2s ease;line-height:1}.chevron.open{transform:rotate(90deg);color:var(--chevron-open)}.collapsible-content{max-height:0;overflow:hidden;transition:max-height .3s ease;padding:0 12px}.collapsible-content.open{max-height:500px;padding:0 12px 12px}.collapsible-content label:first-child{margin-top:0}label{display:block;font-size:12px;margin-bottom:6px;color:var(--text)}input,textarea,select{width:100%;padding:8px;border:1px solid var(--input-border);border-radius:6px;background:var(--input-bg);color:var(--text)}textarea{min-height:120px;resize:vertical}.row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.btnrow{display:flex;gap:10px;margin-top:16px;flex-wrap:wrap}.btnrow button{flex:1;min-width:90px;padding:12px 16px;font-size:13px;font-weight:600;border-radius:10px}.node-handle,.react-flow__handle{opacity:0;background:transparent!important;border:none!important;box-shadow:none!important}.react-flow__node.selected,.react-flow__node:focus,.react-flow__node:focus-visible{outline:none!important;box-shadow:none!important}.react-flow__node:hover{outline:none!important;box-shadow:none!important;background:transparent!important}.diagram-node-group:hover{background:#6366f10a!important;box-shadow:none!important}.react-flow__node:hover .diagram-node-group,.react-flow__node.selected .diagram-node-group{border-color:var(--border)!important;box-shadow:none!important}.react-flow__node.selected .diagram-node-group{background:inherit!important;filter:none!important}button{padding:8px 14px;border:1px solid var(--button-border);background:var(--button-bg);border-radius:8px;cursor:pointer;color:var(--text);font-size:13px;font-weight:500;transition:all .15s ease}button:hover:not(:disabled){background:var(--hover-bg);border-color:var(--accent)}button:disabled{opacity:.5;cursor:not-allowed}.btn-primary,button.primary{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.btn-primary:hover:not(:disabled),button.primary:hover:not(:disabled){background:#5558e8;border-color:#5558e8;box-shadow:0 4px 12px #6366f14d}.btn-secondary{background:var(--button-bg);color:var(--text);border-color:var(--border)}.btn-secondary:hover:not(:disabled){background:var(--hover-bg);border-color:var(--accent)}.btn-success{background:#10b981;color:#fff;border-color:#10b981}.btn-success:hover:not(:disabled){background:#059669;border-color:#059669}.btn-warning{background:#f59e0b;color:#fff;border-color:#f59e0b}.btn-warning:hover:not(:disabled){background:#d97706;border-color:#d97706}.btn-danger{background:transparent;color:#ef4444;border-color:#ef4444}.btn-danger:hover:not(:disabled){background:#ef44441a}small{color:var(--secondary-text)}.status{font-size:12px;color:var(--text);background:var(--block-bg);padding:8px;border-radius:6px;border:1px solid var(--border)}h3{margin:6px 0 10px;font-size:14px;color:var(--text)}.react-flow{background:var(--canvas-bg)}.react-flow__node{background:transparent!important;border:none!important}.react-flow__node-default{background:transparent!important;border:none!important;padding:0!important;pointer-events:auto!important}.react-flow__handle{background:var(--border)}.react-flow__edge-path{stroke:var(--edge-color);stroke-width:2;filter:drop-shadow(0 0 6px var(--edge-glow))}.react-flow__edge .react-flow__arrowhead{fill:var(--edge-color)}.react-flow__controls{background:var(--block-bg);border:1px solid var(--border)}.react-flow__controls button{background:var(--button-bg);border-bottom:1px solid var(--border);color:var(--text)}.react-flow__controls button:hover{background:var(--hover-bg)}.react-flow__minimap{background:var(--block-bg);border:1px solid var(--border)}.react-flow__background{background:var(--canvas-bg)}.canvas-toolbar-toggle{width:34px;height:34px;border-radius:10px;border:1px solid var(--sidebar-panel-border);background:var(--sidebar-surface-bg);color:var(--text);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}.canvas-toolbar-toggle:hover:not(:disabled){border-color:color-mix(in srgb,#9ca3af 46%,var(--sidebar-panel-border));background:var(--sidebar-surface-hover)}.canvas-toolbar-panel{box-shadow:none}.canvas-toolbar-separator{width:1px;background:var(--sidebar-panel-border);margin:0 4px;align-self:stretch}.canvas-toolbar-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:30px;min-width:72px;white-space:nowrap;padding:6px 10px;border-radius:7px;border:1px solid var(--sidebar-panel-border);background:var(--sidebar-surface-muted);color:var(--text);font-size:11px;font-weight:600;line-height:1.2;letter-spacing:.1px;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease,transform .15s ease}.canvas-toolbar-btn:hover:not(:disabled){border-color:color-mix(in srgb,#9ca3af 46%,var(--sidebar-panel-border));background:var(--sidebar-surface-hover);transform:translateY(-1px)}.canvas-toolbar-btn:disabled{opacity:.48;cursor:not-allowed;transform:none}.canvas-toolbar-btn.is-primary,.canvas-toolbar-btn.is-success,.canvas-toolbar-btn.is-warning,.canvas-toolbar-btn.is-danger{background:var(--sidebar-surface-muted);border-color:var(--sidebar-panel-border);color:var(--text)}.canvas-toolbar-btn.is-primary:hover:not(:disabled),.canvas-toolbar-btn.is-success:hover:not(:disabled),.canvas-toolbar-btn.is-warning:hover:not(:disabled),.canvas-toolbar-btn.is-danger:hover:not(:disabled){background:var(--sidebar-surface-hover);border-color:color-mix(in srgb,#9ca3af 46%,var(--sidebar-panel-border))}.react-flow__handle{opacity:.7;transition:opacity .2s,transform .2s;z-index:10}.react-flow__node:hover .react-flow__handle,.react-flow__handle.connecting,.react-flow__handle.valid,.react-flow__handle:hover{opacity:1;transform:scale(1.3)}.node-handle{opacity:1!important;z-index:10}.react-flow__connection-path{stroke-width:3;animation:dash 1s linear infinite}@keyframes dash{to{stroke-dashoffset:-10}}.react-flow__edge-text{fill:var(--text);font-size:12px;font-weight:600}.react-flow__edge-textbg{fill:var(--bg);opacity:.9;min-height:100dvh}.landing-nav-links{display:flex;gap:24px;align-items:center}.landing-nav-links a{color:#cbd5f5;text-decoration:none;font-size:14px;font-weight:600;transition:color .2s ease}.landing-nav-links a:hover{color:#f1f5f9}.landing{min-height:100vh;background:linear-gradient(135deg,#020617,#0f172a,#1e1b4b);color:#f1f5f9;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;overflow-x:hidden}.landing-nav{display:flex;justify-content:space-between;align-items:center;padding:20px 60px;position:fixed;top:0;left:0;right:0;z-index:100;background:#020617cc;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.1)}.landing-logo{font-size:24px;font-weight:800;display:flex;align-items:center;gap:8px;color:#f1f5f9}.landing-logo .logo-icon{font-size:28px;background:linear-gradient(135deg,#818cf8,#c084fc);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.landing-cta-small{padding:10px 20px;background:transparent;border:1px solid rgba(255,255,255,.2);color:#f1f5f9;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;transition:all .3s ease}.landing-cta-small:hover{background:#ffffff1a;border-color:#818cf8}.landing-hero{min-height:100vh;display:flex;align-items:center;justify-content:space-between;padding:120px 60px 60px;gap:60px}.landing-hero-content{flex:1;max-width:600px}.hero-badge{display:inline-flex;align-items:center;justify-content:center;flex-wrap:wrap;text-decoration:none}.landing-title{font-size:56px;font-weight:800;line-height:1.1;margin:0 0 24px;letter-spacing:-.02em}.gradient-text{background:linear-gradient(135deg,#818cf8,#c084fc,#f472b6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.landing-subtitle{font-size:20px;line-height:1.6;color:#94a3b8;margin:0 0 40px}.landing-cta-group{display:flex;gap:16px}.landing-cta-primary{padding:16px 32px;background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;color:#fff;border-radius:12px;cursor:pointer;font-size:16px;font-weight:700;transition:all .3s ease;box-shadow:0 4px 20px #6366f166}.landing-cta-primary:hover{transform:translateY(-2px);box-shadow:0 8px 30px #6366f180}.landing-cta-secondary{padding:16px 32px;background:transparent;border:2px solid rgba(255,255,255,.2);color:#f1f5f9;border-radius:12px;cursor:pointer;font-size:16px;font-weight:600;transition:all .3s ease}.landing-cta-secondary:hover{background:#ffffff0d;border-color:#ffffff4d}.landing-hero-visual{flex:1;display:flex;justify-content:center;align-items:center}.hero-diagram-preview{width:400px;height:300px;background:#0f172a99;border:1px solid rgba(255,255,255,.1);border-radius:16px;position:relative;box-shadow:0 20px 60px #0006}.preview-node{position:absolute;padding:12px 20px;background:#1e293be6;border:1px solid rgba(129,140,248,.5);border-radius:8px;font-size:12px;font-weight:600;color:#f1f5f9}.preview-node .section-header{text-align:center;max-width:720px;margin:0 auto 60px}.preview-node .section-subtitle{font-size:18px;line-height:1.7;color:#94a3b8;margin:0}.preview-node .landing-auth{padding:100px 60px;background:#020617b3}.preview-node .auth-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;max-width:1100px;margin:0 auto}.preview-node .auth-card{background:#0f172ab3;border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:32px;box-shadow:0 20px 40px #02061766}.preview-node .auth-card.accent{border-color:#818cf866;background:linear-gradient(180deg,#0f172ad9,#1e1b4bbf)}.preview-node .auth-card h3,.preview-node .payment-card h3{margin:0 0 24px;font-size:22px;font-weight:700;color:#f8fafc}.preview-node .auth-form{display:flex;flex-direction:column;gap:16px}.preview-node .input-group{display:flex;flex-direction:column;gap:8px;font-size:14px;color:#cbd5f5}.preview-node .input-group input{padding:12px 14px;border-radius:10px;border:1px solid rgba(148,163,184,.3);background:#02061799;color:#f1f5f9;font-size:14px}.preview-node .input-group input::placeholder{color:#64748b}.preview-node .form-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.preview-node .checkbox{display:flex;align-items:center;gap:8px;color:#cbd5f5;font-size:14px}.preview-node .text-link{background:none;border:none;color:#94a3b8;cursor:pointer;font-size:13px}.preview-node .text-link:hover{color:#f1f5f9}.preview-node .divider{position:relative;text-align:center;color:#94a3b8;font-size:12px}.preview-node .divider:before,.preview-node .divider:after{content:"";position:absolute;top:50%;width:40%;height:1px;background:#94a3b84d}.preview-node .divider:before{left:0}.preview-node .divider:after{right:0}.preview-node .divider span{padding:0 12px;background:#0f172ab3}.preview-node .google-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:12px 16px;border-radius:12px;border:1px solid rgba(255,255,255,.2);background:#0206174d;color:#f1f5f9;font-weight:600;cursor:pointer}.preview-node .google-button:hover{border-color:#818cf899}.preview-node .google-icon{width:28px;height:28px;border-radius:50%;background:#fff;color:#0f172a;display:inline-flex;align-items:center;justify-content:center;font-weight:700}.preview-node .helper-text{color:#94a3b8;font-size:12px;margin:0}.preview-node .full-width{width:100%}.preview-node .landing-payment{padding:100px 60px}.preview-node .payment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;max-width:1200px;margin:0 auto}.preview-node .payment-card{background:#0f172ab3;border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:28px;display:flex;flex-direction:column;gap:18px}.preview-node .plan-option{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px;border-radius:12px;border:1px solid rgba(148,163,184,.2);background:#02061766}.preview-node .plan-option.active{border-color:#818cf899;box-shadow:0 10px 30px #818cf833}.preview-node .plan-option p{margin:4px 0 0;font-size:13px;color:#94a3b8}.preview-node .plan-price{font-weight:700;color:#f1f5f9}.preview-node .plan-benefits{list-style:none;padding:0;margin:0;display:grid;gap:10px;color:#cbd5f5;font-size:14px}.preview-node .plan-benefits li:before{content:"✔";margin-right:8px;color:#818cf8}.preview-node .security-list{display:flex;flex-direction:column;gap:16px}.preview-node .security-item{display:flex;gap:12px;align-items:flex-start;color:#cbd5f5;font-size:14px}.preview-node .security-item p{margin:6px 0 0;color:#94a3b8;font-size:13px}.node-1{top:40px;left:50%;transform:translate(-50%)}.node-2{top:130px;left:50%;transform:translate(-50%)}.node-3{top:220px;left:50%;transform:translate(-50%)}.preview-edge{position:absolute;width:2px;height:40px;background:linear-gradient(180deg,#818cf8,#c084fc);left:50%;transform:translate(-50%)}.edge-1{top:80px}.edge-2{top:175px}.hero-badge{display:inline-block;padding:8px 16px;background:#6366f126;border:1px solid rgba(99,102,241,.3);border-radius:20px;font-size:12px;font-weight:600;color:#818cf8;letter-spacing:.5px;text-transform:uppercase;margin-bottom:20px}.landing-stats{padding:60px;background:#0f172a99;border-top:1px solid rgba(255,255,255,.05);border-bottom:1px solid rgba(255,255,255,.05)}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:40px;max-width:900px;margin:0 auto;text-align:center}.stat-item{display:flex;flex-direction:column;gap:8px}.stat-value{font-size:36px;font-weight:800;color:#f1f5f9;background:linear-gradient(135deg,#818cf8,#c084fc);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.stat-label{font-size:14px;color:#94a3b8;font-weight:500}.landing-usecases{padding:100px 60px;background:#020617b3}.usecases-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;max-width:1200px;margin:0 auto}.usecase-card{background:#1e293b80;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:32px;transition:all .3s ease}.usecase-card:hover{transform:translateY(-4px);border-color:#818cf84d;box-shadow:0 10px 40px #818cf81a}.usecase-card h3{font-size:20px;font-weight:700;margin:0 0 16px;color:#f1f5f9}.usecase-card ul{list-style:none;padding:0;margin:0}.usecase-card li{padding:8px 0;color:#94a3b8;font-size:14px;border-bottom:1px solid rgba(255,255,255,.05)}.usecase-card li:last-child{border-bottom:none}.usecase-card li:before{content:">";margin-right:10px;color:#818cf8;font-weight:600}.landing-contact{padding:80px 60px;background:#0f172a80;text-align:center}.contact-info{display:flex;justify-content:center;gap:60px;margin-top:40px}.contact-item{display:flex;align-items:center;gap:12px;color:#94a3b8;font-size:16px}.contact-item svg{color:#818cf8}.feature-icon svg{color:#818cf8}.how-arrow svg{color:#64748b}.landing-features{padding:100px 60px;background:#0f172a80}.section-title{font-size:40px;font-weight:800;text-align:center;margin:0 0 60px}.features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;max-width:1200px;margin:0 auto}.feature-card{background:#1e293b80;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:32px;transition:all .3s ease}.feature-card:hover{transform:translateY(-4px);border-color:#818cf84d;box-shadow:0 10px 40px #818cf81a}.feature-icon{font-size:40px;margin-bottom:16px}.feature-card h3{font-size:20px;font-weight:700;margin:0 0 12px;color:#f1f5f9}.feature-card p{font-size:15px;line-height:1.6;color:#94a3b8;margin:0}.landing-how{padding:100px 60px}.how-steps{display:flex;justify-content:center;align-items:center;gap:40px;max-width:1000px;margin:0 auto}.how-step{text-align:center;flex:1}.step-number{width:60px;height:60px;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:800;margin:0 auto 20px}.how-step h3{font-size:20px;font-weight:700;margin:0 0 12px;color:#f1f5f9}.how-step p{font-size:15px;line-height:1.6;color:#94a3b8;margin:0}.how-arrow{font-size:32px;color:#64748b}.landing-footer{padding:60px;background:#020617e6;border-top:1px solid rgba(255,255,255,.1)}.footer-content{display:flex;justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto 40px}.footer-brand p{color:#64748b;margin:12px 0 0;font-size:14px}.footer-links{display:flex;gap:32px}.footer-links a{color:#94a3b8;transition:color .2s ease}@media (max-width: 768px){.landing-nav-links{display:none}.auth-grid,.payment-grid{grid-template-columns:1fr}.landing-features,.landing-how,.landing-auth,.landing-payment{padding:60px 20px}}.footer-links a:hover{color:#f1f5f9}.footer-bottom{text-align:center;color:#475569;font-size:13px;padding-top:40px;border-top:1px solid rgba(255,255,255,.05)}@media (max-width: 1024px){.landing-hero{flex-direction:column;text-align:center;padding:120px 30px 60px}.landing-hero-content{max-width:100%}.landing-title{font-size:40px}.landing-cta-group{justify-content:center}.features-grid,.usecases-grid{grid-template-columns:repeat(2,1fr)}.how-steps{flex-direction:column}.how-arrow{transform:rotate(90deg)}.stats-grid{grid-template-columns:repeat(2,1fr);gap:30px}}@media (max-width: 768px){.landing-nav{padding:16px 20px}.landing-nav-links{display:none}.landing-hero{padding:100px 20px 40px}.landing-title{font-size:32px}.landing-subtitle{font-size:16px}.landing-cta-group{flex-direction:column}.features-grid,.usecases-grid{grid-template-columns:1fr}.landing-features,.landing-how,.landing-usecases,.landing-contact{padding:60px 20px}.landing-stats{padding:40px 20px}.stats-grid{grid-template-columns:repeat(2,1fr);gap:20px}.stat-value,.section-title{font-size:28px}.hero-diagram-preview{width:300px;height:220px}.contact-info{flex-direction:column;gap:24px}.footer-content{flex-direction:column;text-align:center;gap:30px}.footer-links{flex-wrap:wrap;justify-content:center}}.conversation-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px}.conversation-panel{width:100%;max-width:700px;max-height:90vh;background:var(--card-bg);border:1px solid var(--border);border-radius:16px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;overflow:hidden}.conversation-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border);background:var(--bg)}.conversation-header h2{margin:0;font-size:18px;font-weight:700;color:var(--text)}.conversation-actions{display:flex;gap:8px}.btn-secondary{padding:8px 16px;background:var(--button-bg);border:1px solid var(--button-border);border-radius:8px;color:var(--text);font-size:13px;cursor:pointer;transition:all .2s}.btn-secondary:hover{background:var(--hover-bg)}.btn-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;font-size:24px;color:var(--secondary-text);cursor:pointer;border-radius:8px}.btn-close:hover{background:var(--hover-bg);color:var(--text)}.conversation-error{padding:12px 20px;background:#ef44441a;border-bottom:1px solid rgba(239,68,68,.3);color:#ef4444;font-size:13px}.category-selection{padding:24px;flex:1;overflow-y:auto}.category-selection h3{margin:0 0 20px;font-size:16px;color:var(--text);text-align:center}.category-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.category-card{display:flex;flex-direction:column;align-items:center;padding:20px 16px;background:var(--block-bg);border:1px solid var(--border);border-radius:12px;cursor:pointer;transition:all .2s;text-align:center}.category-card:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:0 4px 12px #6366f126}.category-icon{font-size:32px;margin-bottom:12px}.category-name{font-size:14px;font-weight:600;color:var(--text);margin-bottom:4px}.category-desc{font-size:11px;color:var(--secondary-text);line-height:1.4}.conversation-tabs{display:flex;border-bottom:1px solid var(--border);background:var(--bg)}.tab{flex:1;padding:12px 16px;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--secondary-text);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.tab:hover{color:var(--text);background:var(--hover-bg)}.tab.active{color:var(--accent);border-bottom-color:var(--accent)}.tab:disabled{opacity:.5;cursor:not-allowed}.chat-container{flex:1;display:flex;flex-direction:column;overflow:hidden}.messages-container{flex:1;overflow-y:auto;padding:16px 20px;display:flex;flex-direction:column;gap:12px}.message{max-width:85%;padding:12px 16px;border-radius:12px;font-size:14px;line-height:1.5}.message.user{align-self:flex-end;background:var(--accent);color:#fff;border-bottom-right-radius:4px}.message.assistant{align-self:flex-start;background:var(--block-bg);border:1px solid var(--border);color:var(--text);border-bottom-left-radius:4px}.message.loading .message-content{display:flex;gap:4px}.message.loading .message-content:after{content:"...";animation:dots 1.5s infinite}@keyframes dots{0%,20%{content:"."}40%{content:".."}60%,to{content:"..."}}.suggested-questions{padding:12px 20px;border-top:1px solid var(--border);background:var(--bg)}.suggested-label{font-size:11px;color:var(--secondary-text);display:block;margin-bottom:8px}.suggested-list{display:flex;flex-wrap:wrap;gap:8px}.suggested-btn{padding:8px 12px;background:var(--block-bg);border:1px solid var(--border);border-radius:8px;font-size:12px;color:var(--text);cursor:pointer;transition:all .2s}.suggested-btn:hover{border-color:var(--accent);background:var(--hover-bg)}.completeness-bar{margin:0 20px;height:24px;background:var(--border);border-radius:12px;position:relative;overflow:hidden}.completeness-fill{height:100%;background:linear-gradient(90deg,var(--accent),#c084fc);border-radius:12px;transition:width .3s ease}.completeness-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:11px;font-weight:600;color:var(--text)}.chat-input-container{display:flex;gap:8px;padding:16px 20px;border-top:1px solid var(--border);background:var(--bg)}.chat-input{flex:1;padding:12px 16px;border:1px solid var(--input-border);border-radius:10px;background:var(--input-bg);color:var(--text);font-size:14px}.chat-input:focus{outline:none;border-color:var(--accent)}.btn-send{padding:12px 20px;background:var(--accent);border:none;border-radius:10px;color:#fff;font-weight:600;font-size:13px;cursor:pointer;transition:all .2s}.btn-send:hover{filter:brightness(1.1)}.btn-send:disabled{opacity:.5;cursor:not-allowed}.btn-generate{padding:12px 20px;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:10px;color:#fff;font-weight:600;font-size:13px;cursor:pointer;transition:all .2s}.btn-generate:hover{filter:brightness(1.1)}.validation-container{padding:20px;overflow-y:auto;flex:1}.validation-score{display:flex;flex-direction:column;align-items:center;padding:24px;border-radius:12px;margin-bottom:20px}.validation-score.valid{background:#10b9811a;border:1px solid rgba(16,185,129,.3)}.validation-score.invalid{background:#ef44441a;border:1px solid rgba(239,68,68,.3)}.score-label{font-size:12px;color:var(--secondary-text);margin-bottom:4px}.score-value{font-size:32px;font-weight:800;color:var(--text)}.violations-list,.suggestions-list{margin-bottom:20px}.violations-list h4,.suggestions-list h4{font-size:14px;margin:0 0 12px;color:var(--text)}.violation,.suggestion{display:flex;gap:10px;padding:12px;background:var(--block-bg);border:1px solid var(--border);border-radius:8px;margin-bottom:8px;font-size:13px}.violation.error{border-color:#ef44444d;background:#ef44440d}.violation.warning{border-color:#f59e0b4d;background:#f59e0b0d}.violation-icon,.suggestion-icon{flex-shrink:0}.violation-message,.suggestion-text{color:var(--text);line-height:1.4}.patterns-container{padding:20px;overflow-y:auto;flex:1}.patterns-container h4{margin:0 0 16px;font-size:16px;color:var(--text)}.patterns-grid{display:grid;gap:12px}.pattern-card{padding:16px;background:var(--block-bg);border:1px solid var(--border);border-radius:12px}.pattern-card h5{margin:0 0 8px;font-size:14px;font-weight:700;color:var(--text)}.pattern-card p{margin:0 0 12px;font-size:13px;color:var(--secondary-text);line-height:1.4}.pattern-details{display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:12px}.pros strong,.cons strong{display:block;margin-bottom:6px;color:var(--text)}.pros ul,.cons ul{margin:0;padding-left:16px}.pros li{color:#10b981}.cons li{color:#ef4444}.complexity-container{padding:20px;overflow-y:auto;flex:1}.complexity-summary{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:24px}.summary-item{padding:16px;background:var(--block-bg);border:1px solid var(--border);border-radius:12px;text-align:center}.summary-label{display:block;font-size:11px;color:var(--secondary-text);margin-bottom:4px}.summary-value{font-size:18px;font-weight:700;color:var(--text)}.summary-value.complexity-low{color:#10b981}.summary-value.complexity-medium{color:#f59e0b}.summary-value.complexity-high{color:#ef4444}.summary-value.complexity-very_high{color:#dc2626}.summary-value.risk-low{color:#10b981}.summary-value.risk-medium{color:#f59e0b}.summary-value.risk-high{color:#ef4444}.skills-section h4{margin:0 0 12px;font-size:14px;color:var(--text)}.skills-list{display:flex;flex-wrap:wrap;gap:8px}.skill-tag{padding:6px 12px;background:var(--accent);color:#fff;border-radius:16px;font-size:12px;font-weight:500}.conversation-btn{width:100%;padding:14px 16px;margin-bottom:12px;background:linear-gradient(135deg,var(--accent),#c084fc);border:none;border-radius:10px;color:#fff;font-size:14px;font-weight:700;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:8px}.conversation-btn:hover{filter:brightness(1.1);transform:translateY(-1px)}@media (max-width: 768px){.conversation-panel{max-width:100%;max-height:100%;border-radius:0}.category-grid{grid-template-columns:repeat(2,1fr)}.complexity-summary{grid-template-columns:1fr}}.prompt-panel-shell{position:relative;display:flex;flex-direction:column;gap:8px;min-height:0;flex:1 1 auto;margin-bottom:0}.prompt-panel-main{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;gap:10px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(124,140,162,.45) transparent;padding-bottom:10px}.prompt-panel-main::-webkit-scrollbar{width:6px}.prompt-panel-main::-webkit-scrollbar-track{background:transparent}.prompt-panel-main::-webkit-scrollbar-thumb{background:#7c8ca280;border-radius:999px}.prompt-panel-main .block{background:transparent;border:0;padding:0;margin-bottom:8px;box-shadow:none}.prompt-panel-shell.questions-active .prompt-panel-main{overflow-y:hidden;gap:6px;padding-bottom:6px}.prompt-repo-controls{flex:0 0 auto;display:flex;flex-direction:column;gap:6px;margin-top:0}.prompt-panel-shell.questions-active .prompt-repo-controls{display:flex;gap:6px;margin-top:0}.prompt-repo-controls .block{background:color-mix(in srgb,var(--sidebar-surface-bg) 86%,var(--sidebar-surface-muted));border:1px solid color-mix(in srgb,var(--sidebar-panel-border) 88%,transparent);border-radius:10px;padding:7px 8px;margin:0;box-shadow:none}.prompt-repo-controls .repo-label{display:block;margin:0 0 5px;font-size:10px;font-weight:600;letter-spacing:.2px;color:var(--secondary-text)}.prompt-repo-controls .repo-url-input,.prompt-repo-controls .repo-branch-select{width:100%;min-height:30px;padding:6px 8px;border:1px solid var(--sidebar-panel-border);border-radius:7px;background:color-mix(in srgb,var(--sidebar-surface-muted) 86%,var(--sidebar-panel-bg));color:var(--text);font-size:11px;line-height:1.2}.prompt-repo-controls .repo-url-input:focus,.prompt-repo-controls .repo-branch-select:focus{outline:none;border-color:color-mix(in srgb,#aab2bd 64%,var(--sidebar-panel-border));box-shadow:0 0 0 2px color-mix(in srgb,#aab2bd 18%,transparent)}.prompt-repo-controls .repo-url-input.invalid{border-color:#ef4444;box-shadow:0 0 0 1px color-mix(in srgb,#ef4444 38%,transparent)}.prompt-repo-controls .repo-hint{display:block;margin-top:4px;font-size:10px;line-height:1.3}.prompt-repo-controls .repo-hint.error{color:#f87171}.prompt-repo-controls .repo-hint.success{color:color-mix(in srgb,#34d399 74%,var(--text))}.prompt-repo-controls .repo-hint.neutral{color:var(--secondary-text)}.prompt-repo-controls .repo-refresh-row{margin-top:6px;display:flex;grid-template-columns:none;align-items:center;gap:6px}.prompt-repo-controls .repo-refresh-row input[type=checkbox]{width:13px;height:13px;margin:0;accent-color:color-mix(in srgb,var(--text) 70%,var(--sidebar-panel-border))}.prompt-repo-controls .repo-refresh-row span{font-size:10px;font-weight:500;line-height:1.2;color:var(--secondary-text)}.prompt-repo-controls .repo-branch-inline{margin-top:6px}.prompt-dock-fixed{position:relative;z-index:26;margin-top:auto;display:flex;flex-direction:column;gap:0;padding:10px 10px 8px;border:1px solid var(--sidebar-panel-border);border-radius:16px;background:var(--sidebar-panel-bg);box-shadow:inset 0 1px #ffffff0a}.prompt-dock-label{display:none}.prompt-dock-input{min-height:44px;max-height:176px;height:44px;margin:0;border:1px solid var(--sidebar-panel-border)!important;background:var(--sidebar-surface-muted)!important;box-shadow:none!important;padding:8px 10px 7px;border-radius:10px;font-size:12px;line-height:1.4;resize:none;overflow-y:hidden;color:var(--text)}.prompt-dock-input::placeholder{color:color-mix(in srgb,var(--secondary-text) 86%,#9ca3af)}.prompt-dock-input:focus{outline:none;border-color:color-mix(in srgb,#aab2bd 64%,var(--sidebar-panel-border))!important;box-shadow:0 0 0 2px color-mix(in srgb,#aab2bd 18%,transparent)!important}.prompt-dock-actions{margin:6px 0 0;padding-top:8px;border-top:1px solid var(--sidebar-panel-border);display:flex;align-items:center;gap:6px;flex-wrap:nowrap;justify-content:flex-start}.prompt-dock-actions .prompt-chip-btn{flex:0 0 auto;min-width:auto;padding:5px 10px;border-radius:999px;border:1px solid var(--sidebar-panel-border);background:var(--sidebar-panel-muted);color:var(--text);font-size:11px;font-weight:500;line-height:1.2}.prompt-dock-actions .prompt-chip-btn:hover:not(:disabled){border-color:color-mix(in srgb,#9ca3af 46%,var(--sidebar-panel-border));background:var(--sidebar-panel-hover)}.prompt-dock-actions .prompt-send-btn{margin-left:auto;width:30px;height:30px;min-width:30px;padding:0;border-radius:999px;border:1px solid var(--sidebar-panel-border);background:var(--sidebar-surface-muted);color:var(--text);font-size:14px;font-weight:700;line-height:1}.prompt-dock-actions .prompt-send-btn:hover:not(:disabled){border-color:color-mix(in srgb,#9ca3af 46%,var(--sidebar-panel-border));background:var(--sidebar-surface-hover)}.prompt-dock-actions .prompt-send-btn:disabled{opacity:.52}.sidebar .block.prompt-dock-status{margin:6px 0 0;border-radius:8px;border:1px solid var(--sidebar-panel-border)!important;padding:6px 8px!important;white-space:normal;overflow-wrap:anywhere;line-height:1.3;background:var(--sidebar-surface-muted)!important;color:var(--secondary-text);font-size:11px;font-weight:400;font-family:inherit;box-shadow:none}[data-theme=dark] .sidebar .block.prompt-dock-status{background:var(--sidebar-surface-muted)!important;border-color:var(--sidebar-panel-border)!important;color:var(--secondary-text)}@media (max-width: 768px){.prompt-panel-main{padding-bottom:8px}.prompt-dock-input{min-height:40px;max-height:84px}}@media (max-height: 860px){.sidebar-body{padding:8px 12px 10px;gap:8px}.prompt-panel-shell{gap:6px}.prompt-panel-main{gap:8px}.prompt-repo-controls{gap:6px}.smart-questions-section{margin-top:6px;padding:8px}.question-carousel-slide{padding:10px;gap:8px}.prompt-dock-input{min-height:36px;max-height:72px}.prompt-dock-actions{margin-top:4px;padding-top:6px}}.detection-badge{display:flex;align-items:center;gap:8px;padding:6px 10px;margin-top:8px;background:color-mix(in srgb,var(--accent) 16%,transparent);border:1px solid color-mix(in srgb,var(--accent) 38%,var(--sidebar-border));border-radius:999px;font-size:12px;color:var(--text);width:fit-content}.detection-badge .category-name{font-weight:600}.detection-badge .confidence{opacity:.9;color:var(--secondary-text);font-size:11px}.smart-questions-section{margin-top:10px;padding:8px;background:var(--sidebar-surface-bg);border:1px solid var(--sidebar-panel-border);border-radius:12px}.prompt-panel-shell.questions-active .smart-questions-section{margin-top:0;padding:6px}.questions-header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;font-size:13px;color:var(--secondary-text);margin-bottom:8px}.prompt-panel-shell.questions-active .questions-header{font-size:12px;margin-bottom:6px}.questions-header>span:first-child{flex:1 1 auto;min-width:0;line-height:1.35;overflow-wrap:anywhere}.analyzing-indicator{color:var(--accent);animation:pulse 1s infinite}@keyframes pulse{0%,to{opacity:.4}50%{opacity:1}}.question-carousel-window{display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--sidebar-panel-border);border-radius:10px;background:var(--sidebar-surface-muted)}.question-carousel-track{display:flex;transition:transform .28s ease;will-change:transform}.question-carousel-slide{min-width:100%;padding:8px;display:flex;flex-direction:column;gap:6px}.question-slide-head{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:start}.question-slide-title-wrap{min-width:0}.question-slide-step{width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;border-radius:5px;border:1px solid var(--sidebar-panel-border);background:color-mix(in srgb,var(--sidebar-panel-muted) 70%,var(--sidebar-chip-bg));font-size:10px;font-weight:700;color:var(--text)}.question-slide-title-wrap .question-label{font-size:12px;font-weight:600;color:var(--text);line-height:1.3;overflow-wrap:anywhere;word-break:break-word}.question-slide-title-wrap .question-desc{display:block;font-size:11px;color:var(--secondary-text);margin-top:4px;line-height:1.4;overflow-wrap:anywhere;word-break:break-word}.prompt-panel-shell.questions-active .question-slide-title-wrap .question-desc{display:none}.question-clear-btn{width:24px;height:24px;border-radius:5px;padding:0;border:1px solid var(--sidebar-panel-border);background:var(--sidebar-panel-muted);color:var(--secondary-text);font-size:13px;font-weight:600;line-height:1;transition:border-color .16s ease,background .16s ease,color .16s ease}.question-clear-btn:hover:not(:disabled){border-color:color-mix(in srgb,#9ca3af 46%,var(--sidebar-panel-border));background:var(--sidebar-panel-hover);color:var(--text)}.question-option-list{display:flex;flex-direction:column;gap:6px}.question-option-row{width:100%;display:flex;align-items:center;gap:7px;min-height:34px;padding:6px 8px;border:1px solid var(--sidebar-panel-border);border-radius:6px;background:var(--sidebar-panel-muted);color:var(--text);text-align:left;transition:border-color .15s ease,background .15s ease}.question-option-row:hover{background:var(--sidebar-panel-hover);border-color:color-mix(in srgb,#8b949e 44%,var(--sidebar-panel-border))}.question-option-row.selected{border-color:color-mix(in srgb,#a7b0bb 56%,var(--sidebar-panel-border));background:color-mix(in srgb,#3a3f47 55%,var(--sidebar-panel-muted));box-shadow:inset 0 0 0 1px color-mix(in srgb,#cad2db 22%,transparent)}.question-option-index{width:18px;height:18px;flex:0 0 18px;border-radius:4px;border:1px solid var(--sidebar-panel-border);background:color-mix(in srgb,var(--sidebar-chip-bg) 72%,var(--sidebar-panel-muted));display:inline-flex;align-items:center;justify-content:center;color:var(--secondary-text);font-size:10px;font-weight:700}.question-option-row.selected .question-option-index{border-color:color-mix(in srgb,#9ca3af 52%,var(--sidebar-panel-border));background:color-mix(in srgb,#4b5058 48%,var(--sidebar-chip-bg));color:var(--text)}.question-option-label{flex:1;min-width:0;font-size:11px;line-height:1.3;overflow-wrap:anywhere;word-break:break-word}.question-option-row.selected .question-option-label{font-weight:600}.question-option-check{width:16px;flex:0 0 16px;text-align:center;font-size:13px;font-weight:700;color:color-mix(in srgb,#d1d5db 80%,var(--text))}.question-custom-row{display:flex;align-items:stretch;gap:6px}.question-custom-input{flex:1;min-width:0;padding:6px 8px;border:1px solid var(--sidebar-panel-border);border-radius:6px;background:var(--sidebar-panel-muted);color:var(--text);font-size:11px}.question-custom-input:focus{outline:none;border-color:color-mix(in srgb,#aab2bd 64%,var(--sidebar-panel-border))}.question-custom-add{min-width:52px;padding:5px 8px;border-radius:6px;border:1px solid var(--sidebar-panel-border);background:var(--sidebar-panel-muted);font-size:10px;font-weight:600}.question-custom-add:hover:not(:disabled){border-color:color-mix(in srgb,#9ca3af 46%,var(--sidebar-panel-border));background:var(--sidebar-panel-hover)}.question-text-answer input[type=text]{width:100%;padding:7px 9px;border:1px solid var(--sidebar-panel-border);border-radius:6px;background:var(--sidebar-panel-muted);color:var(--text);font-size:11px}.question-text-answer input[type=text]:focus{outline:none;border-color:color-mix(in srgb,#aab2bd 64%,var(--sidebar-panel-border))}.question-carousel-footer{display:flex;align-items:center;justify-content:space-between;margin-top:0;padding:5px 8px 6px;border-top:1px solid var(--sidebar-panel-border)}.question-page-indicator{font-size:11px;color:var(--secondary-text)}.question-nav-buttons{display:flex;align-items:center;gap:6px}.question-nav-btn{width:24px;height:24px;border-radius:6px;border:1px solid var(--sidebar-panel-border);background:var(--sidebar-panel-muted);color:var(--secondary-text);padding:0;font-size:12px;font-weight:700;line-height:1;transition:border-color .15s ease,background .15s ease,color .15s ease}.question-nav-btn:hover:not(:disabled){border-color:color-mix(in srgb,#9ca3af 46%,var(--sidebar-panel-border));background:var(--sidebar-panel-hover);color:var(--text)}.question-nav-btn:disabled{opacity:.45}@media (max-width: 768px){.question-carousel-slide{padding:7px}.question-slide-title-wrap .question-label,.question-option-label{font-size:11px}}.btnrow button.primary:not(.prompt-send-btn){background:var(--accent);color:#fff;border-color:var(--accent)}.btnrow button.primary:not(.prompt-send-btn):hover{filter:brightness(1.1)}.diagram-node{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.diagram-node:hover{transform:none;box-shadow:none!important}.diagram-node.selected{transform:none}.diagram-node-group{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;transition:none;background:var(--group-bg)!important}.diagram-node-group:hover{background:var(--group-bg)!important;box-shadow:none!important}.react-flow__node-default:hover .diagram-node-group,.react-flow__node-default.selected .diagram-node-group{background:var(--group-bg)!important;filter:none!important;border-color:var(--group-border)!important}.react-flow__handle:hover .handle-inner-dot,.react-flow__handle:hover>div{transform:scale(1.3)}.react-flow__edge-path{stroke-width:2;transition:none}.react-flow__edges{z-index:1}.react-flow__nodes{z-index:2}.react-flow__edge:hover .react-flow__edge-path,.react-flow__edge.selected .react-flow__edge-path{stroke-width:2}.react-flow__edge-text{font-size:11px;font-weight:600;fill:var(--text)}.react-flow__edge-textbg{fill:transparent;rx:4;ry:4}@keyframes selectionPulse{0%,to{opacity:.6}50%{opacity:1}}.diagram-node.selected:before{content:none}.react-flow__minimap{background:var(--card-bg)!important;border:1px solid var(--border)!important;border-radius:8px!important;overflow:hidden}.react-flow__minimap-mask{fill:var(--accent)!important;opacity:.1}.react-flow__controls{display:none!important}.react-flow__controls-button{background:transparent!important;border-bottom:1px solid var(--border)!important;color:var(--text)!important;transition:all .15s ease}.react-flow__controls-button:hover{background:var(--hover-bg)!important}.react-flow__controls-button:last-child{border-bottom:none!important}.react-flow__controls-button svg{fill:var(--text)!important}
