:root{--bg-canvas:#030304;--bg-panel:#0b0b0d;--bg-node:#151517;--bg-chip:#1c1c1f;--bg-input:#111113;--bg-hover:#1a1a1d;--border:rgba(255,255,255,0.06);--border-light:rgba(255,255,255,0.12);--border-focus:rgba(255,92,0,0.4);--text-primary:#ffffff;--text-secondary:#aaaaaa;--text-muted:#666666;--accent:#ff5c00;--accent-glow:rgba(255,92,0,0.35);--green:#4ade80;--yellow:#fbbf24;--blue:#60a5fa;--red:#ef4444;--red-dim:rgba(239,68,68,0.08);--teal:#0ea5a0;--accent-dim:rgba(255,92,0,0.2);--node-event:#c2185b;--node-flow:#ff5c00;--node-function:#1565c0;--node-variable:#2e7d32;--node-action:#7e57c2;--font-ui:var(--font-inter,"Helvetica Neue",Arial,sans-serif);--font-mono:Menlo,Monaco,monospace;--radius-xs:4px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-full:999px;--shadow-sm:0 2px 8px rgba(0,0,0,0.35);--shadow-md:0 12px 32px rgba(0,0,0,0.45);--shadow-lg:0 24px 64px rgba(0,0,0,0.55);--glass-blur:14px;--ease-out:cubic-bezier(0.16,1,0.3,1);--dur-fast:120ms;--dur-base:200ms;--dur-slow:320ms;--sileo-state-action:#ff5c00}*{box-sizing:border-box}body,html{margin:0;padding:0;height:100%;background:var(--bg-panel);color:var(--text-secondary);font-family:var(--font-ui);font-size:12px;overflow:hidden}*{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.16) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background-color:rgba(255,255,255,.16);border-radius:20px;border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background-color:rgba(255,255,255,.28);background-clip:padding-box}::-webkit-scrollbar-corner{background:transparent}button{font-family:inherit}button,select{cursor:pointer}select{appearance:none;-webkit-appearance:none;-moz-appearance:none;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23888888' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;padding-right:22px!important}select:focus{outline:none}select option{background:var(--bg-node);color:var(--text-primary)}.ui-spinner{display:inline-block;width:14px;height:14px;border:2px solid;border-right:2px solid transparent;border-radius:var(--radius-full);opacity:.7;animation:ui-spin .7s linear infinite;flex-shrink:0}.ui-spinner.lg{width:20px;height:20px;border-width:2.5px}@keyframes ui-spin{to{transform:rotate(1turn)}}.ui-status-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;display:inline-block}.ui-radio{width:20px;height:20px;border-radius:var(--radius-full);border:2px solid var(--border-light);flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:border-color var(--dur-fast) var(--ease-out)}.ui-radio.selected{border-color:var(--accent)}.ui-radio-dot{width:10px;height:10px;border-radius:var(--radius-full);background:var(--accent)}.ui-checkbox{width:20px;height:20px;border-radius:var(--radius-xs);border:2px solid var(--border-light);background:transparent;display:flex;align-items:center;justify-content:center;flex-shrink:0;cursor:pointer;transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.ui-checkbox.checked{background:var(--accent);border-color:var(--accent)}.ui-checkbox i{font-size:14px;color:#fff}.ui-checkbox:disabled{opacity:.5;cursor:not-allowed}.ui-badge{display:inline-flex;align-items:center;gap:6px;border-radius:var(--radius-full);padding:4px 10px;font-size:11px}.ui-badge .dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.ui-badge.success{background:rgba(74,222,128,.12);color:var(--green)}.ui-badge.success .dot{background:var(--green)}.ui-badge.warning{background:rgba(251,191,36,.12);color:var(--yellow)}.ui-badge.warning .dot{background:var(--yellow)}.ui-badge.error{background:rgba(239,68,68,.12);color:var(--red)}.ui-badge.error .dot{background:var(--red)}.ui-badge.info{background:rgba(96,165,250,.12);color:var(--blue)}.ui-badge.info .dot{background:var(--blue)}.ui-avatar{display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);background:var(--accent);color:#fff;font-weight:700;flex-shrink:0}.ui-avatar.tint{background:var(--accent-glow);color:var(--accent)}.ui-tag{display:inline-flex;align-items:center;background:var(--bg-chip);border-radius:var(--radius-xs);padding:4px 10px;font-family:var(--font-mono);font-size:11px;color:var(--text-muted)}.ui-divider{height:1px;width:100%;background:var(--border);flex-shrink:0}.ui-eyebrow{font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.8px;color:var(--text-muted)}.ui-tooltip-anchor{position:relative;display:inline-flex}.ui-tooltip-anchor:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translateX(-50%) translateY(2px);background:#fff;color:var(--bg-canvas);border-radius:6px;padding:6px 12px;font-size:12px;white-space:nowrap;box-shadow:var(--shadow-md);opacity:0;pointer-events:none;transition:opacity var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out);z-index:2200}.ui-tooltip-anchor:focus-visible:after,.ui-tooltip-anchor:hover:after{opacity:1;transform:translateX(-50%) translateY(0)}.ui-tooltip-anchor.below:after{bottom:auto;top:calc(100% + 6px);transform:translateX(-50%) translateY(-2px)}.ui-tooltip-anchor.below:focus-visible:after,.ui-tooltip-anchor.below:hover:after{transform:translateX(-50%) translateY(0)}.surface-glass{background:rgba(11,11,13,.72);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--border-light);box-shadow:var(--shadow-lg)}.ide{display:grid;grid-template-columns:250px 1fr 300px;grid-template-rows:46px 1fr;height:100vh;width:100vw}.ide-toolbar{grid-column:1/4}.ide-left{grid-column:1;border-right:1px solid var(--border);overflow-y:auto;background:var(--bg-panel)}.ide-center{grid-column:2;display:flex;flex-direction:column;min-width:0;background:var(--bg-canvas)}.ide-right{grid-column:3;border-left:1px solid var(--border);overflow-y:auto;background:var(--bg-panel)}.bottom-panel-tabs{display:flex;gap:4px;padding:4px 6px 0;border-top:1px solid var(--border);background:var(--bg-panel)}.bottom-panel-tabs button{padding:5px 10px;font-size:11px;color:var(--text-muted);background:transparent;border:none;border-radius:var(--radius-sm) var(--radius-sm) 0 0}.bottom-panel-tabs button:hover{color:var(--text-primary)}.bottom-panel-tabs button.on{color:var(--text-primary);background:var(--bg-node)}.ide.left-collapsed{grid-template-columns:0 1fr 300px}.ide.right-collapsed{grid-template-columns:250px 1fr 0}.ide.left-collapsed.right-collapsed{grid-template-columns:0 1fr 0}@media (max-width:1280px){.ide{grid-template-columns:220px 1fr 260px}.ide.left-collapsed{grid-template-columns:0 1fr 260px}.ide.right-collapsed{grid-template-columns:220px 1fr 0}.ide.left-collapsed.right-collapsed{grid-template-columns:0 1fr 0}}@media (max-width:860px){.ide{grid-template-columns:190px 1fr 230px}.ide.left-collapsed{grid-template-columns:0 1fr 230px}.ide.right-collapsed{grid-template-columns:190px 1fr 0}.ide.left-collapsed.right-collapsed{grid-template-columns:0 1fr 0}}.toolbar{display:flex;align-items:center;gap:6px;height:46px;padding:0 12px;background:var(--bg-panel);border-bottom:1px solid var(--border);overflow-x:auto;overflow-y:hidden;scrollbar-width:thin}.toolbar .brand{font-weight:700;font-size:15px;color:var(--accent);letter-spacing:.5px;margin-right:14px;flex-shrink:0}.toolbar-divider{width:1px;height:22px;margin:0 4px;background:var(--border-light);flex-shrink:0}.toolbar>*{flex-shrink:0}.tbtn.icon-only{padding:0;width:30px;justify-content:center;background:transparent;border-color:transparent}.tbtn.icon-only:hover{background:var(--bg-chip);border-color:var(--border-light)}.notif-badge{position:absolute;top:-4px;right:-4px;min-width:15px;height:15px;padding:0 3px;border-radius:var(--radius-full);background:var(--accent);color:#fff;font-size:9px;font-weight:700;line-height:15px;text-align:center;box-shadow:0 0 0 2px var(--bg-panel)}.notif-panel{width:320px;max-height:360px;overflow-y:auto}.notif-clear{cursor:pointer;color:var(--text-muted);font-size:11px;transition:color var(--dur-fast) var(--ease-out)}.notif-clear:hover{color:var(--text-primary)}.tbtn.panel-toggle.on{color:var(--accent);border-color:var(--accent)}.tbtn.on{color:var(--yellow);border-color:var(--yellow)}.tbtn{display:inline-flex;align-items:center;gap:5px;height:30px;padding:0 11px;background:var(--bg-chip);color:var(--text-secondary);border:1px solid var(--border-light);border-radius:var(--radius-sm);font-size:12px;transition:border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.tbtn:hover{border-color:rgba(255,255,255,.24);color:var(--text-primary)}.tbtn:active:not(:disabled){transform:scale(.97)}.tbtn.primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600;box-shadow:0 0 0 0 var(--accent-glow)}.tbtn.primary:hover{filter:brightness(1.08);box-shadow:0 0 20px 0 var(--accent-glow)}.tbtn.project-chip{background:var(--bg-chip);border-color:transparent;border-radius:var(--radius-xs)}.tbtn.project-chip i:first-child{color:var(--text-muted)}.tbtn.project-chip i:last-child{color:var(--text-muted);font-size:12px}.tbtn:disabled{opacity:.4;cursor:not-allowed}.tbtn i{font-size:15px}a.tbtn{text-decoration:none;cursor:pointer}.locale-switcher{display:flex;gap:2px;background:var(--bg-chip);border-radius:var(--radius-sm);padding:2px}.locale-switcher-option{background:transparent;border:none;border-radius:var(--radius-xs);padding:4px 8px;font-size:10.5px;font-weight:600;letter-spacing:.03em;color:var(--text-muted)}.locale-switcher-option:hover:not(:disabled){color:var(--text-secondary)}.locale-switcher-option.on{background:var(--accent);color:#fff}.locale-switcher-option:disabled{cursor:default}.seg-toggle{display:inline-flex;gap:2px;background:var(--bg-chip);border-radius:var(--radius-sm);padding:3px}.seg-toggle-option{display:inline-flex;align-items:center;gap:6px;background:transparent;border:none;border-radius:var(--radius-xs);padding:6px 14px;font-size:12px;font-weight:600;color:var(--text-muted);cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.seg-toggle-option:hover:not(.on){color:var(--text-secondary)}.seg-toggle-option.on{background:var(--accent);color:#fff}.auth-page>.locale-switcher,.projects-page>.locale-switcher{position:absolute;top:16px;right:16px}.toolbar .spacer{flex:1 1}.toolbar .status{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:11px;font-weight:600;color:var(--text-muted);padding:4px 10px;border-radius:var(--radius-full)}.toolbar .status:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.6;flex-shrink:0}.toolbar .status.running{color:var(--green);background:rgba(74,222,128,.12);border:1px solid rgba(74,222,128,.3)}.toolbar .status.running:before{animation:lia-status-pulse 1.1s ease-in-out infinite}.toolbar .status.paused{color:var(--yellow);background:rgba(251,191,36,.12);border:1px solid rgba(251,191,36,.3)}@keyframes lia-status-pulse{0%,to{opacity:.35;transform:scale(.85)}50%{opacity:1;transform:scale(1)}}.runner-chip-wrap{position:relative;flex-shrink:0}.runner-chip{display:inline-flex;align-items:center;gap:8px;height:30px;padding:0 12px;background:var(--bg-chip);border:none;border-radius:var(--radius-xs);cursor:pointer;font:inherit}.runner-chip-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.runner-chip-label{font-size:12px;color:var(--text-secondary);font-family:var(--font-mono);white-space:nowrap}.runner-chip-chevron{color:var(--text-muted);font-size:12px;flex-shrink:0}.runner-menu-backdrop{position:fixed;inset:0;z-index:1099}.ctx-menu.runner-menu{min-width:210px}.runner-menu-check{margin-left:auto;color:var(--accent);font-size:14px}.runner-menu-connect{display:flex;align-items:center;gap:6px;padding:6px 8px}.runner-menu-input{flex:1 1;min-width:0;height:28px;background:var(--bg-node);color:var(--text-primary);border:1px solid var(--border-light);border-radius:var(--radius-xs);padding:0 8px;font-size:11px;font-family:var(--font-mono)}@media (max-width:700px){.toolbar .lbl{display:none}.toolbar .tbtn:has(.lbl){padding:0 8px}}.tabs{height:34px;background:var(--bg-panel);border-bottom:1px solid var(--border);overflow-x:auto}.tab,.tabs{display:flex;align-items:center}.tab{gap:7px;height:100%;padding:0 14px;border-right:1px solid var(--border);color:var(--text-secondary);white-space:nowrap;font-size:12px}.tab.active{background:var(--bg-canvas);color:var(--text-primary);box-shadow:inset 0 -2px 0 var(--accent)}.tab i{font-size:13px}.tab .close{opacity:.5}.tab .close:hover{opacity:1}.document-tabs{height:30px;background:var(--bg-node)}.document-tabs .tab{font-size:11.5px}.tab-run-badge{width:7px;height:7px;border-radius:50%;flex-shrink:0}.tab-run-badge.paused{background:#ff4444;box-shadow:0 0 4px #ff4444;animation:tab-run-badge-pulse 1.1s ease-in-out infinite}.tab-run-badge.running{background:var(--green);opacity:.7}@keyframes tab-run-badge-pulse{0%,to{opacity:1}50%{opacity:.35}}.pause-notice-banner{display:flex;align-items:center;gap:8px;padding:6px 14px;background:rgba(255,68,68,.12);border-bottom:1px solid rgba(255,68,68,.35);color:var(--text-primary);font-size:12px}.pause-notice-banner i.ri-pause-circle-line{color:#ff4444;font-size:15px}.pause-notice-view{background:#ff4444;color:#fff;border:none;border-radius:var(--radius-xs);padding:3px 10px;font-size:11px;font-weight:600;cursor:pointer}.pause-notice-view:hover{opacity:.88}.pause-notice-dismiss{margin-left:auto;cursor:pointer;color:var(--text-muted)}.pause-notice-dismiss:hover{color:var(--text-primary)}.blueprint-panel-header,.panel-section{border-bottom:1px solid var(--border)}.blueprint-panel-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;font-size:11px;font-weight:600;letter-spacing:.8px;text-transform:uppercase;color:var(--text-muted);-webkit-user-select:none;-moz-user-select:none;user-select:none}.blueprint-panel-header i{cursor:pointer;color:var(--text-muted);transition:color var(--dur-fast) var(--ease-out)}.blueprint-panel-header i:hover{color:var(--text-primary)}.panel-header{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;font-size:10.5px;font-weight:700;letter-spacing:1px;color:var(--text-muted);text-transform:uppercase;-webkit-user-select:none;-moz-user-select:none;user-select:none}.panel-header .add{width:18px;height:18px;display:grid;place-items:center;border-radius:var(--radius-xs);color:var(--text-secondary)}.panel-header .add:hover{background:var(--bg-chip);color:var(--text-primary)}.panel-item{display:flex;align-items:center;gap:8px;padding:6px 12px;font-size:12px;color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.panel-item.active,.panel-item:hover{background:var(--bg-node);color:var(--text-primary)}.panel-item .swatch{width:11px;height:11px;border-radius:var(--radius-xs);flex-shrink:0}.panel-item .grow{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.panel-item .type-badge{font-size:10px;color:var(--text-muted);font-family:var(--font-mono)}.props{padding:9px 10px;font-size:11px}.props .prop-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.props .prop-title-row-inner{display:flex;align-items:center;gap:10px;min-width:0}.props .prop-category-bar{width:4px;align-self:stretch;min-height:28px;border-radius:2px;flex-shrink:0}.props .help-btn{flex-shrink:0;width:22px;height:22px;display:flex;align-items:center;justify-content:center;background:var(--bg-chip);color:var(--text-secondary);border:1px solid var(--border-light);border-radius:50%;cursor:pointer;font-size:13px}.props .help-btn:hover{color:var(--text-primary);border-color:var(--accent)}.props .prop-title{color:var(--text-primary);font-size:12px;font-weight:600;margin-bottom:1px}.props .prop-sub{color:var(--text-muted);font-size:10px;margin-bottom:8px}.props .field{margin-bottom:7px}.props .field label{display:block;font-size:9.5px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px;margin-bottom:3px}.props .field input,.props .field select{width:100%;height:24px;background:var(--bg-node);color:var(--text-primary);border:1px solid var(--border-light);border-radius:var(--radius-sm);padding:0 7px;font-size:11px;font-family:var(--font-mono)}.props .field input:focus,.props .field select:focus{outline:none;border-color:var(--accent)}.prop-prompt-textarea{width:100%;min-height:110px;background:var(--bg-node);color:var(--text-primary);border:1px solid var(--border-light);border-radius:var(--radius-sm);padding:7px;font-size:11px;font-family:var(--font-mono);line-height:1.5;resize:vertical}.prop-prompt-textarea:focus{outline:none;border-color:var(--accent)}.props .empty{color:var(--text-muted);font-size:11px;padding:16px 10px;text-align:center}.props .desc{font-size:10.5px;line-height:1.45;color:var(--text-secondary);background:var(--bg-node);border:1px solid var(--border);border-radius:var(--radius-sm);padding:7px 9px;margin-top:3px}.checkrow{cursor:pointer}.checkrow,.props .checkrow{display:flex;align-items:center;gap:7px}.props .checkrow{font-size:11px;margin-bottom:6px;color:var(--text-secondary)}.prop-advanced-header{display:flex;align-items:center;gap:6px;font-size:10.5px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:var(--text-muted);-webkit-user-select:none;-moz-user-select:none;user-select:none}.prop-advanced-header:hover{color:var(--text-primary)}.prop-advanced-body{margin-top:8px;animation:lia-fade-in .15s var(--ease-out) both}.pin-array-toggle{width:26px;height:26px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;background:var(--bg-node);border:1px solid var(--border-light);border-radius:5px;color:var(--text-muted);cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.pin-array-toggle:hover{color:var(--text-secondary)}.pin-array-toggle.on{background:var(--accent);border-color:var(--accent);color:#fff}.pin-array-toggle i{font-size:13px}.console{height:190px;border-top:1px solid var(--border);background:var(--bg-panel);display:flex;flex-direction:column}.console.console-collapsed{height:auto}.console-collapse-btn{color:var(--text-muted);padding:4px 8px;flex-shrink:0;cursor:pointer;transition:color var(--dur-fast) var(--ease-out)}.console-collapse-btn:hover{color:var(--text-primary)}.console-tabs{min-height:30px;row-gap:4px;border-bottom:1px solid var(--border);padding:4px 6px;gap:6px}.console-filter-bar,.console-tabs{display:flex;align-items:center;flex-wrap:wrap}.console-filter-bar{gap:4px}.console-chip{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;font-size:10.5px;color:var(--text-muted);background:transparent;border:1px solid var(--border-light);border-radius:var(--radius-full);white-space:nowrap}.console-chip:hover{color:var(--text-primary);border-color:#4a4a4a}.console-chip.on{color:var(--text-primary);background:var(--bg-chip);border-color:var(--text-secondary)}.console-chip .dot{width:6px;height:6px;border-radius:50%;background:currentColor}.console-chip.lv-OK.on{border-color:var(--green)}.console-chip.lv-OK .dot{background:var(--green)}.console-chip.lv-INFO.on{border-color:var(--blue)}.console-chip.lv-INFO .dot{background:var(--blue)}.console-chip.lv-WARN.on{border-color:var(--yellow)}.console-chip.lv-WARN .dot{background:var(--yellow)}.console-chip.lv-ERROR.on{border-color:var(--red)}.console-chip.lv-ERROR .dot{background:var(--red)}.console-chip.lv-DEBUG.on{border-color:#9c88ff}.console-chip.lv-DEBUG .dot{background:#9c88ff}.console-chip.lv-TRACE .dot{background:var(--text-muted)}.console-search{height:24px;width:140px;background:var(--bg-node);color:var(--text-primary);border:1px solid var(--border-light);border-radius:var(--radius-sm);padding:0 8px;font-size:11px;margin-left:auto}.console-search:focus{outline:none;border-color:var(--accent)}.console-count{font-size:10.5px;white-space:nowrap}.console-clear,.console-count{color:var(--text-muted);flex-shrink:0}.console-clear{padding:4px 8px}.console-clear:hover{color:var(--text-primary)}.console-body{flex:1 1;overflow-y:auto;padding:6px 10px;font-family:var(--font-mono);font-size:11.5px;line-height:1.7}.log-line{display:flex;align-items:baseline;gap:8px;white-space:pre-wrap;word-break:break-word;animation:log-line-in .15s var(--ease-out) both}@keyframes log-line-in{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}.log-time{flex-shrink:0;width:58px;color:var(--text-muted);font-size:10.5px}.log-level{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;min-width:44px;padding:1px 6px;border-radius:var(--radius-sm);background:#000000;font-weight:600;font-size:9.5px}.lv-INFO{color:var(--blue)}.lv-OK{color:var(--green)}.lv-WARN{color:var(--yellow)}.lv-ERROR{color:var(--red)}.lv-DEBUG{color:#9c88ff}.lv-TRACE{color:var(--text-muted)}.devrun-body{padding:0;display:flex}.devrun-layout{display:flex;width:100%;height:100%}.devrun-list{width:220px;flex-shrink:0;overflow-y:auto;border-right:1px solid var(--border);display:flex;flex-direction:column}.devrun-row{display:flex;align-items:center;gap:8px;padding:6px 10px;border:none;border-bottom:1px solid var(--border-light);background:transparent;color:var(--text-secondary);font-size:11px;text-align:left;cursor:pointer}.devrun-row:hover{background:var(--bg-hover,var(--bg-chip))}.devrun-row.on{background:var(--accent-dim);color:var(--text-primary)}.devrun-row-main{display:flex;flex-direction:column;flex:1 1;min-width:0}.devrun-row-time{font-family:var(--font-mono);font-size:11px}.devrun-row-duration,.devrun-row-status{font-size:10px;color:var(--text-muted)}.devrun-row-status{flex-shrink:0}.devrun-detail{flex:1 1;overflow-y:auto;padding:6px 10px;font-family:var(--font-mono);font-size:11.5px;line-height:1.7}.rf-node{min-width:160px;background:var(--bg-node);border:1px solid var(--border-light);border-radius:var(--radius-sm);color:var(--text-primary);font-size:12px;box-shadow:var(--shadow-sm)}.rf-node.selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),0 4px 18px rgba(255,92,0,.25)}.rf-node.active{border-color:var(--green);box-shadow:0 0 0 2px var(--green),0 0 22px rgba(74,222,128,.4)}.rf-node.done{opacity:.92}.rf-node.disabled{opacity:.45;filter:grayscale(.6)}.rf-node-header{display:flex;align-items:center;gap:6px;padding:6px 10px;border-radius:var(--radius-sm) var(--radius-sm) 0 0;border-bottom:1px solid rgba(0,0,0,.35);background-image:linear-gradient(rgba(255,255,255,.12),rgba(0,0,0,.12));font-weight:600;position:relative}.rf-node-header i{font-size:14px}.rf-node-header .title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rf-node-header .bp{right:-6px;color:#ff4444}.rf-node-header .ai-tool-badge,.rf-node-header .bp{position:absolute;top:-6px;font-size:14px;text-shadow:0 0 2px #000,0 0 2px #000}.rf-node-header .ai-tool-badge{left:-6px;color:#EC4899}.rf-node-body-wrap{display:flex;flex-direction:column;gap:6px;padding:8px 0 10px}.rf-node-body{display:flex;justify-content:space-between;gap:18px}.rf-col{display:flex;flex-direction:column;gap:7px;min-width:0}.rf-col.outputs{align-items:flex-end;text-align:right}.rf-row{position:relative;display:flex;align-items:center;gap:6px;min-height:20px}.rf-col.inputs .rf-row{padding-left:14px}.rf-col.outputs .rf-row{flex-direction:row-reverse;padding-right:14px}.rf-col.outputs .rf-pin-label{margin-right:6px}.rf-pin-label{font-size:11px;color:var(--text-secondary);white-space:nowrap;margin-left:6px}.rf-inline{margin-left:4px}.rf-inline input[type=text]{width:84px;height:17px;background:#252525;color:var(--text-secondary);border:1px solid var(--border-light);border-radius:var(--radius-xs);padding:0 5px;font-family:var(--font-mono);font-size:9.5px}.rf-inline input[type=text]:focus{outline:none;border-color:var(--accent);color:var(--text-primary)}.rf-watch{font-size:9.5px;color:var(--green);font-family:var(--font-mono);background:rgba(74,222,128,.1);border-radius:var(--radius-xs);padding:0 4px}.rf-node .react-flow__handle{position:absolute;top:50%;width:11px;height:11px;border:2px solid var(--bg-node);border-radius:50%;min-width:0;min-height:0}.rf-col.inputs .react-flow__handle{left:10px;right:auto;transform:translate(-50%,-50%)}.rf-col.outputs .react-flow__handle{right:10px;left:auto;transform:translate(50%,-50%)}.rf-node .react-flow__handle.exec{background:transparent!important;width:0;height:0;border:6px solid transparent;border-right:none;border-left:10px solid #fff;border-radius:0;filter:drop-shadow(0 0 1px rgba(0,0,0,.6))}.rf-col.inputs .react-flow__handle.exec{left:10px;transform:translate(-50%,-50%)}.rf-col.outputs .react-flow__handle.exec{right:10px;transform:translate(50%,-50%)}.rf-node .react-flow__handle.array{background:transparent!important;border:none;border-radius:0;width:15px;height:15px;display:flex;align-items:center;justify-content:center}.rf-node .react-flow__handle.array i{font-size:15px;line-height:1;pointer-events:none;filter:drop-shadow(0 0 1px rgba(0,0,0,.6))}.reroute-node{width:20px;height:20px}.reroute-knot{width:14px;height:14px;margin:3px auto;border-radius:50%;border:1.5px solid rgba(0,0,0,.5);cursor:move}.reroute-node .react-flow__handle{opacity:0;width:8px;height:8px}.react-flow__node:has(.comment-node){pointer-events:none}.comment-node{width:100%;height:100%;border:1.5px solid;border-radius:var(--radius-sm);display:flex;flex-direction:column;overflow:hidden;pointer-events:none}.comment-node.selected{box-shadow:0 0 0 1px var(--accent)}.comment-header,.comment-node .react-flow__resize-control{pointer-events:auto}.comment-header{display:flex;align-items:center;gap:6px;padding:4px 8px;font-size:13px;font-weight:600;color:#fff;cursor:move;min-height:26px}.comment-header .title{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.comment-header input{flex:1 1;background:rgba(0,0,0,.35);color:#fff;border:1px solid rgba(255,255,255,.25);border-radius:var(--radius-xs);padding:1px 5px;font-size:13px;font-weight:600}.comment-header .cmt-color{width:13px;height:13px;border-radius:50%;border:1.5px solid rgba(255,255,255,.7);cursor:pointer;flex-shrink:0}.comment-body{flex:1 1}.collapsed-node{min-width:150px;background:var(--bg-node);border:1px solid var(--border-light);border-radius:var(--radius-sm);overflow:hidden}.collapsed-node.selected{box-shadow:0 0 0 1.5px var(--accent);border-color:var(--accent)}.collapsed-header{display:flex;align-items:center;gap:6px;padding:5px 8px;background:var(--accent);color:#fff;font-size:12.5px;font-weight:600}.collapsed-header .title{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.collapsed-header input.title{background:rgba(0,0,0,.35);color:#fff;border:1px solid rgba(255,255,255,.25);border-radius:var(--radius-xs);padding:1px 5px;font-size:12.5px}.collapsed-header .muted{opacity:.75;font-weight:400;font-size:11px}.collapsed-header .expand{cursor:pointer;opacity:.85}.collapsed-header .expand:hover{opacity:1}.collapsed-body{display:flex;justify-content:space-between;gap:16px;padding:6px 0;position:relative}.collapsed-body .rf-col{display:flex;flex-direction:column;gap:6px}.collapsed-body .rf-col.inputs{align-items:flex-start}.collapsed-body .rf-col.outputs{align-items:flex-end}.collapsed-body .react-flow__handle{position:relative;transform:none;width:10px;height:10px;border:2px solid var(--bg-node);border-radius:50%}.collapsed-body .rf-col.inputs .react-flow__handle{left:-5px}.collapsed-body .rf-col.outputs .react-flow__handle{right:-5px}.collapsed-body .react-flow__handle.exec{background:transparent!important;width:0;height:0;border:6px solid transparent;border-right:none;border-left:10px solid #fff;border-radius:0}.collapsed-body .rf-row{display:flex;align-items:center;gap:6px;height:16px}.collapsed-body .rf-pin-label{font-size:10.5px;color:var(--text-secondary)}.rf-edge-flow{stroke:var(--accent);stroke-width:5;stroke-linecap:round;stroke-dasharray:.1 12;animation:rf-edge-flow .55s linear infinite;pointer-events:none;filter:drop-shadow(0 0 3px var(--accent))}@keyframes rf-edge-flow{to{stroke-dashoffset:-12}}[data-perf-mode="1"] .rf-edge-flow{animation:none;stroke-dasharray:none;opacity:.5}.graph-breadcrumb{display:flex;gap:2px;padding:4px 10px;background:var(--bg-panel);border:1px solid var(--border-light);font-size:12px;box-shadow:var(--shadow-sm)}.graph-breadcrumb,.graph-breadcrumb .crumb{align-items:center;border-radius:var(--radius-sm)}.graph-breadcrumb .crumb{display:inline-flex;gap:4px;padding:2px 6px;color:var(--text-secondary);cursor:pointer}.graph-breadcrumb .crumb:hover{background:var(--bg-chip);color:var(--text-primary)}.graph-breadcrumb .crumb.current{color:var(--text-primary);font-weight:600;cursor:default}.graph-breadcrumb .crumb.current:hover{background:transparent}.graph-breadcrumb .crumb-part{display:inline-flex;align-items:center}.graph-breadcrumb .sep{color:var(--text-muted)}.palette{position:fixed;z-index:1000;width:420px;max-height:560px;background:rgba(11,11,13,.99);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;overflow:hidden}.command-palette{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);transform-origin:center;animation:command-palette-in .18s var(--ease-out) both}@keyframes command-palette-in{0%{opacity:0;transform:translate(-50%,-50%) scale(.96) translateY(-4px)}to{opacity:1;transform:translate(-50%,-50%) scale(1) translateY(0)}}.command-palette-backdrop{position:fixed;inset:0;z-index:999;animation:lia-backdrop-in .15s ease both}.palette-item{animation:lia-fade-in var(--dur-base) var(--ease-out) both}.palette-list .palette-item:nth-child(n+2){animation-delay:20ms}.palette-list .palette-item:nth-child(n+3){animation-delay:40ms}.palette-list .palette-item:nth-child(n+4){animation-delay:60ms}.palette-list .palette-item:nth-child(n+5){animation-delay:80ms}.palette-header{display:flex;flex-direction:column;gap:10px;padding:14px 16px;flex-shrink:0}.palette-search-row{display:flex;align-items:center;gap:8px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 14px}.palette-search-row i{color:var(--text-muted);font-size:16px;flex-shrink:0}.palette-search-row input{flex:1 1;background:transparent;border:none;color:var(--text-primary);font-size:14px;padding:0;min-width:0}.palette-search-row input::placeholder{color:var(--text-muted)}.palette-search-row input:focus{outline:none}.palette-esc-chip{flex-shrink:0;background:var(--bg-chip);border-radius:var(--radius-xs);padding:1px 6px;font-family:var(--font-mono);font-size:9px;color:var(--text-muted)}.palette-filters{display:flex;gap:5px;overflow-x:auto;padding-bottom:1px}.palette-filters::-webkit-scrollbar{display:none}.palette-chip{flex-shrink:0;display:flex;align-items:center;gap:5px;padding:4px 10px;border-radius:var(--radius-sm);border:1px solid var(--border-light);background:transparent;color:var(--text-secondary);font-size:10.5px;white-space:nowrap}.palette-chip .dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.palette-chip.on{background:rgba(255,92,0,.12);border-color:var(--accent);color:var(--accent);font-weight:600}.palette-chip:hover:not(.on){border-color:#4a4a4a;color:var(--text-primary)}.palette-list{overflow-y:auto;padding:4px 0;flex:1 1}.palette-section-header{display:flex;align-items:center;gap:6px;padding:7px 12px}.palette-section-header i{font-size:13px;color:var(--text-muted);flex-shrink:0}.palette-section-header .dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.palette-section-label{font-family:var(--font-mono);font-size:10px;font-weight:600;letter-spacing:.6px;text-transform:uppercase;color:var(--text-muted)}.palette-section-count{margin-left:auto;font-size:10px;color:var(--text-muted)}.palette-item,.palette-section-header:hover .palette-section-label{color:var(--text-secondary)}.palette-item{display:flex;align-items:center;gap:9px;margin:0 4px;padding:6px 12px 6px 26px;font-size:12px;border-radius:var(--radius-sm)}.palette-item.hl,.palette-item:hover{background:var(--bg-node);color:var(--text-primary)}.palette-item-bar{width:3px;height:14px;border-radius:2px;flex-shrink:0}.palette-item-label{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.palette-footer,.palette-item-tag{flex-shrink:0;font-size:9.5px;color:var(--text-muted)}.palette-footer{display:flex;align-items:center;justify-content:space-between;padding:8px 16px;background:var(--bg-panel);border-top:1px solid var(--border);font-family:var(--font-mono)}.palette-empty{padding:16px 12px;color:var(--text-muted)}.react-flow__background{background:var(--bg-canvas)}.react-flow__attribution{display:none}.react-flow__minimap{background:var(--bg-panel)!important;border:1px solid var(--border);border-radius:var(--radius-sm)}.react-flow__controls-button{background:var(--bg-node);border-bottom:1px solid var(--border);fill:var(--text-secondary)}.ctx-menu{position:fixed;z-index:1100;min-width:180px;background:rgba(11,11,13,.72);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:4px}.ctx-item{display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:var(--radius-sm);font-size:12px;color:var(--text-secondary);transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.ctx-item:hover{background:var(--bg-node);color:var(--text-primary)}.ctx-item.disabled{color:var(--text-muted);cursor:not-allowed}.ctx-item.disabled:hover{background:transparent;color:var(--text-muted)}.ctx-sep{height:1px;background:var(--border);margin:4px 2px}.modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.6);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:2000}.modal-card{background:var(--bg-panel);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:18px;width:340px;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:10px}.modal-title{font-size:13px;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:6px;margin-bottom:4px}.modal-field-label{font-size:11px;color:var(--text-muted);margin-bottom:-4px}.modal-field{display:flex;flex-direction:column;gap:6px}.modal-input{height:34px;background:var(--bg-input);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-sm);padding:0 10px;font-size:12px;transition:border-color var(--dur-fast) var(--ease-out)}.modal-input:focus{outline:none;border-color:var(--border-focus)}.modal-input-wrap{display:flex;align-items:center;gap:8px;height:34px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);padding:0 10px;transition:border-color var(--dur-fast) var(--ease-out)}.modal-input-wrap:focus-within{border-color:var(--border-focus)}.modal-input-wrap .modal-input-bare{flex:1 1;min-width:0;height:100%;background:none;border:none;outline:none;color:var(--text-primary);font-size:12px;padding:0}.modal-input-wrap i{color:var(--text-muted);font-size:14px;cursor:pointer;flex-shrink:0}.modal-input-wrap i:hover{color:var(--text-primary)}.modal-error{color:var(--red,#E0484F);font-size:11px}.modal-empty{color:var(--text-muted);font-size:12px;padding:8px 0}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}.modal-list{max-height:320px;overflow-y:auto;display:flex;flex-direction:column;gap:2px}.modal-list-item{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:var(--radius-sm);cursor:pointer;font-size:12px;color:var(--text-secondary)}.modal-list-item:hover{background:var(--bg-chip);color:var(--text-primary)}.mli-name{flex:1 1}.mli-date{color:var(--text-muted);font-size:10px}.ui-modal-card{width:460px;padding:0;gap:0;max-height:86vh;overflow:hidden}.ui-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--border);flex-shrink:0}.ui-modal-header-left{display:flex;align-items:center;gap:10px;min-width:0}.ui-modal-icon-wrap{width:36px;height:36px;border-radius:10px;background:var(--accent-dim);display:flex;align-items:center;justify-content:center;flex-shrink:0}.ui-modal-icon-wrap i{color:var(--accent);font-size:18px}.ui-modal-title{font-size:18px;font-weight:700;color:var(--text-primary)}.ui-modal-subtitle{font-size:12px;color:var(--text-muted);margin-top:2px}.ui-modal-close{color:var(--text-muted);font-size:20px;cursor:pointer;flex-shrink:0}.ui-modal-close:hover{color:var(--text-primary)}.ui-modal-body{display:flex;flex-direction:column;gap:20px;padding:24px;overflow-y:auto}.ui-modal-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 24px;border-top:1px solid var(--border);flex-shrink:0}.deploy-modal-card{width:520px;padding:0;gap:0;max-height:86vh;overflow:hidden}.modal-textarea{width:100%;min-height:80px;background:var(--bg-input);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 14px;font-size:14px;line-height:1.5;resize:vertical;font-family:inherit}.modal-textarea:focus{outline:none;border-color:var(--border-focus)}.deploy-runner-option{display:flex;gap:12px;padding:14px 16px;border-radius:var(--radius-md);border:1px solid var(--border-light);background:var(--bg-node);cursor:pointer;align-items:flex-start}.deploy-runner-option.selected{border-color:var(--accent);background:var(--accent-dim)}.deploy-runner-option .ui-radio{margin-top:1px}.deploy-runner-option-title{font-size:14px;font-weight:500;color:var(--text-primary)}.deploy-runner-option-desc{font-size:12px;color:var(--text-muted);margin-top:2px}.deploy-parallelism{margin-top:10px;padding-top:10px;border-top:1px solid var(--border-light)}.deploy-parallelism label{display:block;font-size:12px;font-weight:500;color:var(--text-primary);margin-bottom:6px}.deploy-parallelism input{width:72px;background:var(--bg-panel);border:1px solid var(--border-light);border-radius:var(--radius-sm);padding:6px 8px;color:var(--text-primary);font-size:13px}.deploy-parallelism input:focus{outline:none;border-color:var(--accent)}.deploy-parallelism .deploy-runner-option-desc{margin-top:6px}.deploy-runner-search{display:flex;align-items:center;gap:8px;background:var(--bg-panel);border:1px solid var(--border-light);border-radius:var(--radius-sm) var(--radius-sm) 0 0;padding:10px 12px;margin-top:10px}.deploy-runner-search i{color:var(--text-muted);font-size:14px}.deploy-runner-search input{flex:1 1;background:transparent;border:none;color:var(--text-primary);font-size:13px;min-width:0}.deploy-runner-search input:focus{outline:none}.deploy-runner-list{border:1px solid var(--border-light);border-top:none;border-radius:0 0 var(--radius-sm) var(--radius-sm);max-height:160px;overflow-y:auto}.deploy-runner-row{display:flex;align-items:center;gap:10px;padding:10px 12px;border-top:1px solid var(--border);cursor:pointer}.deploy-runner-row:first-child{border-top:none}.deploy-runner-row.selected{background:var(--accent-dim)}.deploy-runner-row.offline{cursor:not-allowed;opacity:.55}.deploy-runner-name{flex:1 1;font-size:13px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.deploy-runner-row.selected .deploy-runner-name{color:var(--accent)}.deploy-runner-status{font-size:11px;flex-shrink:0}.deploy-modal-footer{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-top:1px solid var(--border);flex-shrink:0;gap:12px}.deploy-modal-footer-info{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-muted)}.deploy-modal-footer-actions{display:flex;gap:10px;align-items:center;flex-shrink:0}.deploy-history{border-top:1px solid var(--border);padding:16px 24px;display:flex;flex-direction:column;gap:8px;overflow-y:auto;flex-shrink:0;max-height:160px}.deploy-history-row{cursor:default}.deploy-history-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:2px}.deploy-history-view-all{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--accent);cursor:pointer}.deploy-history-view-all:hover{text-decoration:underline}.vh-page{display:flex;flex-direction:column;height:100vh;background:var(--bg-canvas);color:var(--text-primary)}.vh-topbar{justify-content:space-between;height:56px;flex-shrink:0;padding:0 20px;background:var(--bg-panel);border-bottom:1px solid var(--border)}.vh-topbar,.vh-topbar-left{display:flex;align-items:center}.vh-topbar-left{gap:14px;min-width:0}.vh-logo{font-weight:700;font-size:16px;letter-spacing:.04em}.vh-topbar-sep{width:1px;height:20px;background:var(--border-light)}.vh-back-btn{display:flex;align-items:center;gap:6px;background:none;border:none;color:var(--text-secondary);font-size:13px;cursor:pointer;padding:6px 8px;border-radius:6px}.vh-back-btn:hover{color:var(--text-primary);background:var(--bg-hover)}.vh-flow-name{font-size:13px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vh-topbar-right{display:flex;align-items:center;flex-shrink:0}.vh-main{flex:1 1}.vh-list-panel,.vh-main{display:flex;min-height:0}.vh-list-panel{width:380px;flex-shrink:0;flex-direction:column;border-right:1px solid var(--border);background:var(--bg-panel)}.vh-list-header{padding:20px 20px 0;flex-shrink:0}.vh-list-title{font-size:16px;font-weight:600;margin-bottom:14px}.vh-tabs{display:flex;gap:4px;border-bottom:1px solid var(--border)}.vh-tab{background:none;color:var(--text-muted);font-size:13px;padding:8px 4px 10px;margin-right:18px;cursor:pointer;border:none;border-bottom:2px solid transparent}.vh-tab.active{color:var(--text-primary);border-bottom-color:var(--accent)}.vh-tab:hover:not(.active){color:var(--text-secondary)}.vh-entries{flex:1 1;overflow-y:auto;padding:8px 12px 20px}.vh-empty{display:flex;align-items:center;gap:8px;justify-content:center;color:var(--text-muted);font-size:13px;padding:32px 12px;text-align:center}.vh-empty-error{color:var(--red)}.vh-entry{display:flex;gap:10px;padding:12px 8px;border-radius:8px;cursor:pointer}.vh-entry:hover{background:var(--bg-hover)}.vh-entry.selected{background:var(--accent-dim)}.vh-entry-dot-wrap{padding-top:4px;flex-shrink:0}.vh-entry-dot{display:block;width:8px;height:8px;border-radius:50%;background:var(--border-light)}.vh-entry-dot.active{background:var(--green)}.vh-entry-info{min-width:0;flex:1 1}.vh-entry-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.vh-entry-version{font-size:13px;font-weight:600}.vh-entry-desc{font-size:12px;color:var(--text-secondary);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vh-entry-meta{display:flex;gap:6px;font-size:11px;color:var(--text-muted);margin-top:4px}.vh-prod-badge{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:700;letter-spacing:.03em;color:var(--green);background:rgba(74,222,128,.12);padding:2px 7px;border-radius:999px}.vh-prod-badge .dot{width:5px;height:5px;border-radius:50%;background:var(--green)}.vh-detail-panel{flex:1 1;min-width:0;overflow-y:auto;padding:28px 36px 60px}.vh-detail-empty{display:flex;align-items:center;justify-content:center;gap:8px;height:100%;color:var(--text-muted);font-size:13px}.vh-detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}.vh-detail-header-left{min-width:0}.vh-detail-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.vh-detail-title{font-size:22px;font-weight:700}.vh-detail-desc{color:var(--text-secondary);font-size:13px;margin-top:6px}.vh-detail-header-right{display:flex;gap:10px;flex-shrink:0}.vh-action-btn{display:flex;align-items:center;gap:6px;background:var(--bg-chip);border:1px solid var(--border-light);color:var(--text-primary);font-size:12.5px;padding:8px 14px;border-radius:7px;cursor:pointer}.vh-action-btn:hover:not(:disabled){background:var(--bg-hover);border-color:var(--accent)}.vh-action-btn:disabled{opacity:.6;cursor:default}.vh-info-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:24px;gap:24px;background:var(--bg-panel);border:1px solid var(--border);border-radius:10px;padding:18px 22px;margin-bottom:28px}.vh-info-col{display:flex;flex-direction:column;gap:14px}.vh-info-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.vh-info-label{font-size:12.5px;color:var(--text-muted)}.vh-info-value{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--text-primary);text-align:right}.vh-section-title{font-size:14px;font-weight:600;margin-bottom:12px}.vh-changes-section{margin-bottom:28px}.vh-changes-card{background:var(--bg-panel);border:1px solid var(--border);border-radius:10px;overflow:hidden}.vh-change-row{display:flex;align-items:center;gap:10px;padding:11px 16px;border-bottom:1px solid var(--border);font-size:12.5px}.vh-change-row:last-child{border-bottom:none}.vh-change-icon{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:6px;flex-shrink:0;font-size:13px}.vh-change-icon.added{color:var(--green);background:rgba(74,222,128,.12)}.vh-change-icon.removed{color:var(--red);background:var(--red-dim)}.vh-change-icon.modified{color:var(--blue);background:rgba(96,165,250,.12)}.vh-change-desc{flex:1 1;min-width:0;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vh-change-pill{font-size:10.5px;font-weight:600;padding:2px 8px;border-radius:999px;flex-shrink:0}.vh-change-pill.added{color:var(--green);background:rgba(74,222,128,.12)}.vh-change-pill.removed{color:var(--red);background:var(--red-dim)}.vh-change-pill.modified{color:var(--blue);background:rgba(96,165,250,.12)}.vh-stats-row{display:flex;gap:16px}.vh-stat{flex:1 1;display:flex;flex-direction:column;align-items:center;gap:6px;background:var(--bg-panel);border:1px solid var(--border);border-radius:10px;padding:18px 12px;text-align:center}.vh-stat i{font-size:18px;color:var(--accent)}.vh-stat-val{font-size:20px;font-weight:700}.vh-stat-lbl{font-size:11.5px;color:var(--text-muted)}.help-modal-card{width:460px;max-height:80vh;overflow-y:auto}.secrets-modal-card{width:620px;max-height:80vh;overflow-y:auto}.help-modal-sub{color:var(--text-muted);font-size:11px;margin-top:-6px}.help-modal-desc{font-size:11.5px;line-height:1.5;color:var(--text-secondary);background:var(--bg-node);border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px 10px}.help-section-title{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);margin-top:4px;margin-bottom:2px}.help-pin-row{display:flex;align-items:center;gap:8px;padding:5px 2px;border-bottom:1px solid var(--border);font-size:12px}.help-pin-row:last-child{border-bottom:none}.help-pin-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0;background:var(--text-muted)}.help-pin-dot.exec{border-radius:2px;background:#fff}.help-pin-name{color:var(--text-primary);font-family:var(--font-mono);flex:1 1}.help-pin-type{color:var(--text-secondary);font-size:10.5px;font-family:var(--font-mono);background:var(--bg-chip);border-radius:var(--radius-xs);padding:1px 6px}.help-pin-default{color:var(--text-muted);font-size:10px}.help-pin-row.expandable{cursor:pointer}.help-pin-row.expandable:hover{background:var(--bg-chip)}.help-pin-caret{flex-shrink:0;font-size:13px;color:var(--text-muted);transition:transform .15s ease}.help-pin-caret.open{transform:rotate(90deg);color:var(--accent)}.help-shape{margin:0 0 4px 26px;padding:2px 0 4px 8px;border-left:2px solid var(--border-light)}.help-shape-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:3px 0;font-size:11px}.help-shape-key{color:var(--text-secondary);font-family:var(--font-mono)}.help-shape-type{color:var(--text-muted);font-size:10px;font-family:var(--font-mono);text-align:right}.help-empty{color:var(--text-muted);font-size:11px;padding:4px 2px}.rf-enums{padding:0 10px;display:flex;flex-wrap:wrap;gap:4px}.rf-enum{background:var(--bg-chip);color:var(--text-primary);border:1px solid var(--border-light);border-radius:var(--radius-sm);padding:2px 6px;font-size:11px;font-family:var(--font-mono);cursor:pointer}.rf-enum:focus{outline:none;border-color:var(--accent)}.rf-format-templates{padding:0 10px}.rf-agent-tool-selector{padding:4px 10px}.rf-agent-tool-selector .rf-inline-select{width:100%;min-width:180px;max-width:260px;font-size:11px;padding:3px 6px}.rf-agent-tool-hint{color:var(--text-muted);font-size:9px;max-width:220px;white-space:normal;margin-top:3px}.rf-format-template{width:100%;min-width:200px;height:18px;background:#252525;color:var(--text-secondary);border:1px solid var(--border-light);border-radius:var(--radius-xs);padding:0 6px;font-family:var(--font-mono);font-size:10px;box-sizing:border-box}.rf-format-template:hover{border-color:#4a4a4a}.rf-format-template:focus{outline:none;border-color:var(--accent);color:var(--text-primary)}.rf-inline-prompt{width:100%;min-width:200px;height:56px;margin-left:14px;background:#252525;color:var(--text-secondary);border:1px solid var(--border-light);border-radius:var(--radius-xs);padding:4px 6px;font-family:var(--font-mono);font-size:10px;line-height:1.4;resize:vertical;box-sizing:border-box}.rf-inline-prompt:hover{border-color:#4a4a4a}.rf-inline-prompt:focus{outline:none;border-color:var(--accent);color:var(--text-primary);background:var(--bg-chip)}.rf-inline-select{background:#252525;color:var(--text-secondary);border:1px solid var(--border-light);border-radius:var(--radius-xs);font-size:10px;font-family:var(--font-mono);padding:1px 4px;max-width:120px}.rf-inline-select:focus{outline:none;border-color:var(--accent);color:var(--text-primary)}.model-picker{display:inline-flex;flex-direction:column;align-items:flex-start;gap:2px}.list-editor{display:flex;flex-direction:column;gap:4px}.list-row{display:flex;gap:4px;align-items:center}.list-row input{flex:1 1;height:24px;background:var(--bg-node);color:var(--text-primary);border:1px solid var(--border-light);border-radius:var(--radius-sm);padding:0 7px;font-size:11px;font-family:var(--font-mono)}.list-row input:focus{outline:none;border-color:var(--accent)}.list-del{width:22px;height:24px;background:var(--bg-chip);color:var(--text-muted);border:1px solid var(--border-light);border-radius:var(--radius-sm);display:grid;place-items:center}.list-del:hover{color:var(--red);border-color:var(--red)}.list-add{margin-top:2px;height:24px;background:transparent;color:var(--text-secondary);border:1px dashed var(--border-light);border-radius:var(--radius-sm);font-size:11px}.list-add:hover{color:var(--text-primary);border-color:var(--accent)}.edge-data-popover{position:fixed;z-index:1500;max-width:340px;max-height:420px;overflow:auto;background:var(--bg-panel);border:1px solid var(--border-light);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);padding:8px 10px}.data-viewer{font-family:var(--font-mono);font-size:11px;line-height:1.5;color:var(--text-secondary);white-space:nowrap}.dv-row{display:flex;align-items:flex-start;gap:5px}.dv-toggle{cursor:default}.dv-caret{color:var(--text-muted);width:10px;flex-shrink:0}.dv-key{color:var(--blue)}.dv-summary{color:var(--text-muted)}.dv-children{padding-left:14px;border-left:1px dotted var(--border-light);margin-left:4px}.dv-val.dv-str{color:var(--green)}.dv-val.dv-num{color:#fbbf24}.dv-val.dv-bool{color:#f472b6}.dv-val.dv-null{color:var(--text-muted);font-style:italic}