@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&display=swap";:root{--font-sans: Tahoma, Verdana, "Segoe UI", Arial, sans-serif;--desktop-sky: #2f8bd8;--desktop-horizon: #7fc35f;--desktop-ground: #2f9e3f;--window-blue: #0a55c9;--window-blue-light: #3a93ff;--window-blue-dark: #003c9f;--taskbar-blue: #245edb;--taskbar-blue-dark: #0f3fbe;--start-green: #36a81d;--start-green-dark: #16720d;--panel: #ece9d8;--panel-light: #fffdf1;--panel-mid: #d8d2bd;--panel-shadow: #7f9db9;--field: #ffffff;--text: #111111;--muted: #4d5d75;--border-dark: #0b3f9d;--border-mid: #7aa4e8;--border-light: #ffffff;--danger: #b00000;--success: #087b2f;--warning: #875400;--info: #0046b8;--shadow: 3px 4px 10px rgba(0, 0, 0, .22);--radius-lg: 8px;--radius-md: 5px;--radius-sm: 3px}*{box-sizing:border-box}html{min-height:100%}body{min-height:100vh;margin:0;color:var(--text);font-family:var(--font-sans);font-size:13px;background-color:var(--desktop-sky);background-image:linear-gradient(180deg,#1d6ed2,#66b9f4 48%,#91d384 49%,#48a944 66%,#2f8e2f),linear-gradient(90deg,rgba(255,255,255,.22),transparent 28% 70%,rgba(255,255,255,.12));background-attachment:fixed;overflow-x:hidden}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background:linear-gradient(16deg,transparent 0 51%,rgba(255,255,255,.24) 52%,transparent 60%),linear-gradient(-12deg,transparent 0 50%,rgba(255,255,255,.16) 51%,transparent 58%);opacity:.55}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}::selection{color:#fff;background:#316ac5}.app{width:min(1240px,100%);margin:0 auto;padding:18px 24px 58px}.topbar{position:sticky;top:10px;z-index:5;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:18px;padding:6px 8px;border:1px solid #083f9f;border-radius:8px;background:linear-gradient(180deg,#5aa7ff 0%,var(--taskbar-blue) 14%,#1d56d4 48%,var(--taskbar-blue-dark) 100%);box-shadow:inset 0 1px #ffffffb8,inset 0 -1px #00000052,var(--shadow)}.brand{display:flex;align-items:center;gap:10px;min-width:230px;color:#fff;text-shadow:1px 1px 1px rgba(0,0,0,.6)}.brand-mark{width:74px;height:34px;flex:0 0 auto;border:1px solid #0c5b12;border-radius:999px 12px 12px 999px;background:linear-gradient(180deg,#8add63 0%,#42b52c 44%,var(--start-green-dark) 100%);color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;font-style:italic;font-weight:700;letter-spacing:0;box-shadow:inset 0 1px #ffffffa8,inset 0 -1px #00000040,1px 1px 2px #00000042}.brand-title{font-size:16px;font-weight:700;line-height:1.15}.brand-subtitle{margin-top:2px;color:#dfeaff;font-size:11px}.tabs{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px;max-width:100%}.tab{min-height:30px;max-width:100%;border:1px solid #1648a6;border-radius:4px 4px 0 0;background:linear-gradient(180deg,#f6fbff,#b9d7ff 8%,#6fa9fb 46%,#2c6fe4);color:#fff;box-shadow:inset 1px 1px #ffffff9e,inset -1px -1px #00000029;cursor:pointer;font-size:12px;font-weight:700;line-height:1.1;padding:7px 12px;text-shadow:1px 1px 1px rgba(0,0,0,.45)}.tab:hover{background:linear-gradient(180deg,#fff,#d9ecff 10%,#87bcff 46%,#3f82ed)}.tab.active{color:#1a2f5a;background:linear-gradient(180deg,#fff,#fff9d6 18%,#f5d36a 56%,#e9a53d);border-color:#8b6f2b;text-shadow:none}.theme-switch{display:flex;flex-wrap:nowrap;gap:2px;padding:3px;border:1px solid #0d3f99;border-radius:var(--radius-md);background:#174db8;box-shadow:inset 1px 1px #ffffff61,inset -1px -1px #0000003d}.theme-option{min-height:26px;border:1px solid #003c74;border-radius:var(--radius-sm);background:linear-gradient(180deg,#fff,#ecebe4 45%,#c9c7b8);color:#111;box-shadow:inset 1px 1px #fff,inset -1px -1px #8a867a;cursor:pointer;font-size:11px;font-weight:700;padding:4px 9px}.theme-option:hover{background:linear-gradient(180deg,#fffdf4,#ffedb8 45%,#f2c05d)}.theme-option.active{border-color:#0b5d13;background:linear-gradient(180deg,#bdf8a3,#55bd37 48%,#16820f);color:#fff;text-shadow:1px 1px 1px rgba(0,0,0,.55)}.content{display:grid;gap:18px;min-width:0}.card{min-width:0;overflow:hidden;border:2px solid var(--window-blue-dark);border-radius:var(--radius-lg) var(--radius-lg) 4px 4px;background:var(--panel);box-shadow:var(--shadow)}.card-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin:0;padding:7px 10px;border-bottom:1px solid #0a3a8d;background:linear-gradient(180deg,#58a6ff 0%,var(--window-blue) 18%,#0958d8 55%,var(--window-blue-dark) 100%);color:#fff;box-shadow:inset 0 1px #ffffffb8,inset 0 -1px #00000047}.card-header:after{content:"_  □  X";margin-left:auto;color:#fff;font-size:11px;font-weight:700;letter-spacing:2px;opacity:.92;text-shadow:1px 1px 1px rgba(0,0,0,.55)}.card-header>div{min-width:0}.card-title{margin:0;color:#fff;font-size:13px;font-weight:700;line-height:1.2;text-shadow:1px 1px 1px rgba(0,0,0,.6)}.card-subtitle{margin:2px 0 0;color:#e8f2ff;font-size:11px}.card>:not(.card-header):not(.modal){margin:14px}.grid-2{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);gap:14px;min-width:0}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;min-width:0}.grid-2>*,.grid-3>*{min-width:0}.stack{display:flex;flex-direction:column;gap:12px;min-width:0}.row{display:flex;align-items:center;flex-wrap:wrap;gap:8px;min-width:0}.field{display:flex;flex-direction:column;gap:5px;min-width:0}.label{color:#039;font-size:11px;font-weight:700}.input,.textarea{width:100%;min-width:0;border:1px solid var(--panel-shadow);border-radius:0;background:var(--field);color:var(--text);box-shadow:inset 1px 1px 1px #0000002e,inset -1px -1px #ffffffe6;padding:5px 7px;outline:none}.input::placeholder,.textarea::placeholder{color:#6e6e6e}select.input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,#003399 50%),linear-gradient(135deg,#003399 50%,transparent 50%),linear-gradient(180deg,#fff,#f8f8f8);background-position:calc(100% - 15px) calc(50% - 2px),calc(100% - 10px) calc(50% - 2px),0 0;background-repeat:no-repeat;background-size:5px 5px,5px 5px,100% 100%;padding-right:28px}.input-inline{width:auto;min-width:220px}.input:focus,.textarea:focus,select.input:focus{border-color:#316ac5;box-shadow:0 0 0 1px #ffce55,inset 1px 1px 1px #0000002e,inset -1px -1px #ffffffe6}.textarea{min-height:120px;resize:vertical;line-height:1.45}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:28px;max-width:100%;border:1px solid #003c74;border-radius:var(--radius-sm);background:linear-gradient(180deg,#fff,#ecebe4 45%,#c9c7b8);color:#111;box-shadow:inset 1px 1px #fff,inset -1px -1px #8a867a,1px 1px #0000001f;cursor:pointer;font-weight:700;line-height:1.15;padding:5px 12px;text-align:center}.btn:hover{border-color:#1c5ac4;background:linear-gradient(180deg,#fffdf4,#ffedb8 45%,#f2c05d)}.btn:active{box-shadow:inset 1px 1px 1px #00000047,inset -1px -1px #ffffffbf;transform:translate(1px,1px)}.btn.ghost{background:linear-gradient(180deg,#f8f8f8,#e6e3d3);color:#039}.btn.primary{border-color:#0b5d13;background:linear-gradient(180deg,#bdf8a3,#55bd37 48%,#16820f);color:#fff;text-shadow:1px 1px 1px rgba(0,0,0,.55)}.btn.primary:hover{background:linear-gradient(180deg,#d3ffc0,#65cf43 48%,#1c9413)}.btn:disabled{color:#8c8c8c;cursor:not-allowed;opacity:.72;text-shadow:none;transform:none}.badge{display:inline-flex;align-items:center;gap:5px;max-width:100%;border:1px solid #aca899;border-radius:var(--radius-sm);background:#f6f3e7;color:#223653;box-shadow:inset 1px 1px #fff;font-size:11px;line-height:1.25;overflow-wrap:anywhere;padding:3px 7px}.badge.subtle{background:#fbfaf3}.status{display:inline-flex;align-items:center;gap:5px;max-width:100%;border:1px solid #808080;border-radius:var(--radius-sm);background:#fff;color:#333;box-shadow:inset 1px 1px #ffffffdb;font-size:10px;font-weight:700;line-height:1.2;overflow-wrap:anywhere;padding:3px 7px;text-transform:uppercase}.status:before{content:"";width:8px;height:8px;flex:0 0 auto;border:1px solid rgba(0,0,0,.24);border-radius:50%;background:currentColor}.status[data-status=idle]{color:#6b6b6b;background:#f7f7f7}.status[data-status=running]{color:var(--info);background:#edf5ff;border-color:#8db2e3}.status[data-status=succeeded]{color:var(--success);background:#efffee;border-color:#84c77e}.status[data-status=failed]{color:var(--danger);background:#fff0ef;border-color:#d8847c}.status[data-status=unknown]{color:var(--warning);background:#fff8dc;border-color:#d6b656}.subcard{position:relative;min-width:0;border:1px solid #aca899;border-radius:var(--radius-md);background:var(--panel);box-shadow:inset 1px 1px 0 var(--panel-light),inset -1px -1px 0 var(--panel-mid);padding:13px 12px 12px}.subheader{display:inline-block;margin:-5px 0 10px;padding:2px 7px;border:1px solid #7aa4e8;border-radius:3px;background:linear-gradient(180deg,#fff,#c7dcff 55%,#8bb6f7);color:#039;font-size:11px;font-weight:700}.log{max-width:100%;max-height:320px;min-width:0;overflow:auto;border:1px solid var(--panel-shadow);background:#fff;box-shadow:inset 1px 1px 1px #0000002e,inset -1px -1px #ffffffe6;padding:8px}.transcript-log{display:flex;flex-direction:column;gap:8px}.transcript-entry{border:1px solid #aca899;background:#f9f8ef;box-shadow:inset 1px 1px #fff;padding:8px 10px}.transcript-entry.user{border-color:#7aa4e8;background:#edf5ff}.transcript-entry.assistant{border-color:#89bd83;background:#f0ffe8}.transcript-entry pre{margin-top:8px}.log-line{padding:7px 0;border-bottom:1px solid #e0dac8}.log-line:last-child{border-bottom:none}.log-meta{display:flex;align-items:center;flex-wrap:wrap;gap:7px;color:var(--muted);font-size:11px}.tag{display:inline-flex;align-items:center;max-width:100%;border:1px solid #316ac5;border-radius:var(--radius-sm);background:linear-gradient(180deg,#fff,#dbe9ff);color:#039;font-size:10px;font-weight:700;overflow-wrap:anywhere;padding:2px 6px;text-transform:uppercase}code,pre,.mono{font-family:Consolas,Lucida Console,Courier New,monospace}pre{margin:8px 0 0;white-space:pre-wrap;word-break:break-word}.code-block{max-width:100%;max-height:320px;min-width:0;overflow:auto;border:1px solid var(--panel-shadow);background:#fff;color:#111;box-shadow:inset 1px 1px 1px #0000002e,inset -1px -1px #ffffffe6;padding:8px}.link{border:none;background:none;color:#039;cursor:pointer;font-weight:700;padding:0;text-align:left;text-decoration:underline}.link:hover{color:#c75000}.tree-item{display:flex;align-items:center;flex-wrap:wrap;gap:8px;min-width:0;margin:4px 0}.cost-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;margin-bottom:12px}.cost-summary-card{display:flex;flex-direction:column;gap:9px;min-width:0;border:1px solid #aca899;background:#f5f2e3;box-shadow:inset 1px 1px #fff,inset -1px -1px #d8d2bd;padding:10px}.cost-card-title{color:#039;font-size:12px;font-weight:700}.cost-metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.cost-metric{min-width:0;border:1px solid #aca899;background:#fff;box-shadow:inset 1px 1px #fff;padding:8px}.cost-metric-emphasis{border-color:#316ac5;background:#edf5ff}.cost-metric-label{margin-bottom:5px;color:var(--muted);font-size:10px;font-weight:700;text-transform:uppercase}.cost-metric-value{font-size:17px;font-weight:700;line-height:1.2}.cost-metric-note{margin-top:3px;color:var(--muted);font-size:11px}.cost-footnote{margin-bottom:9px;color:var(--muted);font-size:11px}.cost-table-wrapper{max-width:100%;min-width:0;overflow-x:auto;margin-bottom:12px;border:1px solid var(--panel-shadow);background:#fff}.cost-table{width:100%;min-width:960px;border-collapse:collapse;background:#fff}.cost-table th,.cost-table td{padding:7px 9px;border-right:1px solid #d8d2bd;border-bottom:1px solid #d8d2bd;font-size:12px;text-align:left;white-space:nowrap}.cost-table th{background:linear-gradient(180deg,#fff,#ece9d8);color:#039;font-size:11px;font-weight:700}.cost-table tbody tr:hover td{background:#fff8dc}.chips{display:flex;flex-wrap:wrap;gap:7px}.chip{display:inline-flex;align-items:center;gap:5px;max-width:100%;border:1px solid #316ac5;border-radius:var(--radius-sm);background:linear-gradient(180deg,#fff,#dbe9ff 48%,#9fc2ff);color:#039;box-shadow:inset 1px 1px #fff,inset -1px -1px #0000001f;cursor:grab;font-size:12px;font-weight:700;overflow-wrap:anywhere;padding:5px 8px}.chip:active{cursor:grabbing}.palette-scroll{display:flex;flex-wrap:wrap;gap:7px;max-height:220px;overflow-y:auto;padding-right:4px}.dropzone{min-height:60px;margin-top:8px;border:1px dashed #316ac5;background:#edf5ff;padding:10px}.checkbox{display:inline-flex;align-items:center;gap:7px;min-width:0;color:#222;cursor:pointer}.checkbox input,.row>input[type=checkbox]{width:15px;height:15px;flex:0 0 auto;accent-color:#316ac5}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;display:flex;align-items:center;justify-content:center;background:#00000047;padding:20px}.modal-body{width:min(760px,92vw);max-height:82vh;overflow:auto;border:2px solid var(--window-blue-dark);border-radius:var(--radius-lg) var(--radius-lg) 4px 4px;background:var(--panel);box-shadow:var(--shadow);padding:12px}.modal-body>.row:first-child{margin:-12px -12px 12px;padding:7px 10px;background:linear-gradient(180deg,#58a6ff 0%,var(--window-blue) 18%,#0958d8 55%,var(--window-blue-dark) 100%);color:#fff}.flow-wrapper{height:480px;overflow:hidden;border:1px solid var(--panel-shadow);background:#fff;box-shadow:inset 1px 1px 1px #0000002e,inset -1px -1px #ffffffe6}.flow-wrapper .react-flow{background:#fff}.flow-wrapper .react-flow__pane{cursor:crosshair}.flow-wrapper .react-flow__node{border:1px solid #316ac5;border-radius:var(--radius-sm);background:linear-gradient(180deg,#fff,#dbe9ff 52%,#9fc2ff);color:#039;box-shadow:inset 1px 1px #fff,inset -1px -1px #0000001f,2px 2px 3px #0000002e;font-weight:700}.flow-wrapper .react-flow__node.selected{border-color:#c75000;box-shadow:0 0 0 2px #ffce55,inset 1px 1px #fff,2px 2px 3px #0003}.flow-wrapper .react-flow__handle{width:8px;height:8px;border:1px solid #003399;background:#ffce55}.flow-wrapper .react-flow__edge-path{stroke:#316ac5;stroke-width:2}.flow-wrapper .react-flow__controls,.flow-wrapper .react-flow__minimap{overflow:hidden;border:1px solid #003c74;border-radius:var(--radius-sm);background:var(--panel);box-shadow:inset 1px 1px #fff,1px 1px 2px #0003}.flow-wrapper .react-flow__controls-button{border-bottom-color:#aca899;background:linear-gradient(180deg,#fff,#ece9d8)}.flow-wrapper .react-flow__controls-button:hover{background:#fff8dc}.flow-wrapper .react-flow__attribution{background:#ece9d8;color:#039}.alert{border:1px solid #d8847c;background:#fff0ef;color:var(--danger);box-shadow:inset 1px 1px #fff;font-size:12px;padding:8px 10px}.muted{color:var(--muted)}.empty{border:1px dashed #aca899;background:#fbfaf3;color:var(--muted);font-size:12px;padding:10px}::-webkit-scrollbar{width:16px;height:16px}::-webkit-scrollbar-track{border:1px solid #aca899;background:#ece9d8}::-webkit-scrollbar-thumb{border:1px solid #003c74;background:linear-gradient(90deg,#dbe9ff,#7aa4e8,#dbe9ff)}::-webkit-scrollbar-thumb:hover{background:linear-gradient(90deg,#fff8dc,#f2c05d,#fff8dc)}:root[data-theme=glass]{--font-sans: "Space Grotesk", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--text: #16202a;--muted: #667485;--muted-strong: #445263;--accent: #0e8fa3;--accent-strong: #05677b;--violet: #7c5cff;--coral: #ff7a59;--mint: #1ab88f;--danger: #c2414b;--success: #16875d;--warning: #d97706;--info: #1668bf;--glass-border: rgba(255, 255, 255, .58);--glass-border-strong: rgba(255, 255, 255, .78);--glass-panel: rgba(255, 255, 255, .34);--glass-panel-strong: rgba(255, 255, 255, .58);--glass-shadow: 0 26px 70px rgba(18, 31, 45, .16);--glass-shadow-sm: 0 12px 28px rgba(18, 31, 45, .12);--inner-highlight: inset 0 1px 0 rgba(255, 255, 255, .78), inset 0 -1px 0 rgba(255, 255, 255, .18);--radius-lg: 24px;--radius-md: 16px;--radius-sm: 12px}:root[data-theme=glass] body{color:var(--text);font-size:14px;background-color:#e9f4fb;background-image:linear-gradient(125deg,#ffffffd1,#ebf8ff5c 28%,#fff4eb85 58%,#eefaf5c2),conic-gradient(from 210deg at 50% -8%,#0e8fa338,#7c5cff29,#ff7a5929,#1ab88f33,#0e8fa338),linear-gradient(180deg,#e9f4fb,#f7efe8)}:root[data-theme=glass] body:before{background-image:repeating-linear-gradient(100deg,rgba(255,255,255,.18) 0 1px,transparent 1px 24px),linear-gradient(90deg,rgba(255,255,255,.22),transparent 22%,rgba(255,255,255,.18) 48%,transparent 76%);-webkit-mask-image:linear-gradient(180deg,#000000e6,#00000040);mask-image:linear-gradient(180deg,#000000e6,#00000040);opacity:1}:root[data-theme=glass] body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background:linear-gradient(135deg,transparent 0 18%,rgba(255,255,255,.24) 29%,transparent 40% 100%),linear-gradient(45deg,transparent 0 40%,rgba(255,255,255,.2) 50%,transparent 62% 100%);mix-blend-mode:soft-light}:root[data-theme=glass] .app{width:min(1260px,100%);padding:28px 28px 64px}:root[data-theme=glass] .topbar{top:16px;align-items:center;gap:14px;margin-bottom:24px;padding:14px;border:1px solid var(--glass-border);border-radius:28px;background:linear-gradient(135deg,#ffffffa3,#ffffff42),#ffffff47;box-shadow:var(--glass-shadow-sm),var(--inner-highlight);backdrop-filter:blur(30px) saturate(160%);-webkit-backdrop-filter:blur(30px) saturate(160%)}:root[data-theme=glass] .brand{min-width:240px;color:var(--text);text-shadow:none}:root[data-theme=glass] .brand-mark{position:relative;width:48px;height:48px;border:1px solid var(--glass-border-strong);border-radius:18px;background:linear-gradient(145deg,#ffffffd6,#ffffff2e),linear-gradient(135deg,#0e8fa3b8,#7c5cff9e 48%,#ff7a599e);color:#fff;font-size:13px;font-style:normal;letter-spacing:.08em;box-shadow:0 14px 30px #0e8fa338,var(--inner-highlight);overflow:hidden;text-shadow:0 1px 12px rgba(14,27,39,.44)}:root[data-theme=glass] .brand-mark:after{content:"";position:absolute;inset:4px 6px auto;height:42%;border-radius:14px;background:linear-gradient(180deg,#ffffffad,#fff0)}:root[data-theme=glass] .brand-title{color:#0c1823eb;font-size:21px}:root[data-theme=glass] .brand-subtitle{margin-top:4px;color:var(--muted);font-size:13px}:root[data-theme=glass] .tabs,:root[data-theme=glass] .theme-switch{gap:6px;padding:6px;border:1px solid rgba(255,255,255,.64);border-radius:999px;background:linear-gradient(135deg,#ffffff85,#fff3),#ffffff3d;box-shadow:inset 0 1px #ffffffad,0 10px 22px #14223214;backdrop-filter:blur(24px) saturate(150%);-webkit-backdrop-filter:blur(24px) saturate(150%)}:root[data-theme=glass] .tab,:root[data-theme=glass] .theme-option{min-height:36px;border:1px solid transparent;border-radius:999px;background:transparent;color:var(--muted-strong);box-shadow:none;cursor:pointer;font-size:13px;font-weight:700;padding:8px 15px;text-shadow:none;transition:transform .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease,border-color .18s ease}:root[data-theme=glass] .tab:hover,:root[data-theme=glass] .theme-option:hover{color:var(--text);background:#ffffff4d;border-color:#ffffff94}:root[data-theme=glass] .tab.active,:root[data-theme=glass] .theme-option.active{color:#fff;border-color:#ffffffad;background:linear-gradient(135deg,rgba(255,255,255,.28),transparent 42%),linear-gradient(135deg,var(--accent),var(--violet) 58%,var(--coral));box-shadow:0 12px 28px #0e8fa33d,inset 0 1px #ffffff6b;text-shadow:none}:root[data-theme=glass] .content{gap:20px}:root[data-theme=glass] .card{position:relative;padding:24px;border:1px solid var(--glass-border);border-radius:var(--radius-lg);background:linear-gradient(145deg,#ffffffa3,#fff3),#ffffff47;box-shadow:var(--glass-shadow),var(--inner-highlight);backdrop-filter:blur(32px) saturate(170%);-webkit-backdrop-filter:blur(32px) saturate(170%)}:root[data-theme=glass] .card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;border-radius:inherit;background:linear-gradient(105deg,rgba(255,255,255,.46),transparent 22% 76%,rgba(255,255,255,.24)),linear-gradient(180deg,rgba(255,255,255,.22),transparent 34%);opacity:.82}:root[data-theme=glass] .card>*{position:relative;z-index:1}:root[data-theme=glass] .card>:not(.card-header):not(.modal){margin:0}:root[data-theme=glass] .card-header{align-items:flex-start;margin:0 0 18px;padding:0;border:none;background:transparent;color:var(--text);box-shadow:none}:root[data-theme=glass] .card-header:after{content:none;display:none}:root[data-theme=glass] .card-title{color:#0c1823f0;font-size:19px;text-shadow:none}:root[data-theme=glass] .card-subtitle{margin-top:6px;color:var(--muted);font-size:13px}:root[data-theme=glass] .grid-2{gap:18px}:root[data-theme=glass] .grid-3{gap:18px}:root[data-theme=glass] .stack{gap:14px}:root[data-theme=glass] .row{gap:10px}:root[data-theme=glass] .field{gap:7px}:root[data-theme=glass] .label{color:var(--muted-strong);font-size:11px;letter-spacing:.08em;text-transform:uppercase}:root[data-theme=glass] .input,:root[data-theme=glass] .textarea{border:1px solid rgba(255,255,255,.64);border-radius:var(--radius-sm);background:linear-gradient(180deg,#ffffffb8,#ffffff70),#ffffff57;color:var(--text);box-shadow:inset 0 1px #ffffffbd,0 8px 18px #16202a0f;padding:11px 12px}:root[data-theme=glass] select.input{background-image:linear-gradient(45deg,transparent 50%,var(--accent-strong) 50%),linear-gradient(135deg,var(--accent-strong) 50%,transparent 50%),linear-gradient(180deg,#ffffffb8,#ffffff70);background-position:calc(100% - 18px) calc(50% - 2px),calc(100% - 13px) calc(50% - 2px),0 0;background-repeat:no-repeat,no-repeat,no-repeat;background-size:5px 5px,5px 5px,100% 100%;padding-right:34px}:root[data-theme=glass] .input:focus,:root[data-theme=glass] .textarea:focus,:root[data-theme=glass] select.input:focus{border-color:#0e8fa3ad;background:linear-gradient(180deg,#ffffffdb,#ffffff80),#ffffff61;box-shadow:0 0 0 4px #0e8fa324,inset 0 1px #ffffffd1,0 10px 24px #0e8fa31f}:root[data-theme=glass] select.input:focus{background-image:linear-gradient(45deg,transparent 50%,var(--accent-strong) 50%),linear-gradient(135deg,var(--accent-strong) 50%,transparent 50%),linear-gradient(180deg,#ffffffdb,#ffffff80);background-position:calc(100% - 18px) calc(50% - 2px),calc(100% - 13px) calc(50% - 2px),0 0;background-repeat:no-repeat,no-repeat,no-repeat;background-size:5px 5px,5px 5px,100% 100%}:root[data-theme=glass] .btn{min-height:38px;border:1px solid rgba(255,255,255,.66);border-radius:999px;background:linear-gradient(145deg,#ffffffb3,#ffffff47),#ffffff47;color:var(--text);box-shadow:0 10px 22px #1422321a,inset 0 1px #ffffffbd;padding:9px 15px;text-shadow:none}:root[data-theme=glass] .btn:hover{border-color:#ffffffdb;background:linear-gradient(145deg,#ffffffc7,#ffffff5c),#ffffff57;box-shadow:0 14px 28px #14223224,inset 0 1px #ffffffdb;transform:translateY(-1px)}:root[data-theme=glass] .btn:active{transform:translateY(0)}:root[data-theme=glass] .btn.ghost{background:#ffffff2e;color:var(--muted-strong)}:root[data-theme=glass] .btn.primary{border-color:#ffffffb8;background:linear-gradient(135deg,rgba(255,255,255,.28),transparent 42%),linear-gradient(135deg,var(--accent),#287ee8 50%,var(--violet));color:#fff;box-shadow:0 16px 32px #0e8fa33d,inset 0 1px #ffffff70}:root[data-theme=glass] .btn.primary:hover{background:linear-gradient(135deg,rgba(255,255,255,.32),transparent 44%),linear-gradient(135deg,var(--accent-strong),#1c73da 50%,#654de8)}:root[data-theme=glass] .badge{border:1px solid rgba(255,255,255,.66);border-radius:999px;background:linear-gradient(145deg,#ffffff94,#ffffff42),#ffffff40;color:var(--muted-strong);box-shadow:inset 0 1px #ffffffb3;font-size:12px;padding:6px 10px}:root[data-theme=glass] .badge.subtle{background:linear-gradient(145deg,#ffffff75,#fff3),#fff3}:root[data-theme=glass] .status{border:1px solid rgba(255,255,255,.62);border-radius:999px;box-shadow:inset 0 1px #ffffffad;font-size:11px;letter-spacing:.08em;padding:6px 10px}:root[data-theme=glass] .status:before{border:none;box-shadow:0 0 14px currentColor}:root[data-theme=glass] .status[data-status=idle]{color:#596778;background:#e2ebf499}:root[data-theme=glass] .status[data-status=running]{color:var(--info);background:#dbefffb8}:root[data-theme=glass] .status[data-status=succeeded]{color:var(--success);background:#dbf8ebb8}:root[data-theme=glass] .status[data-status=failed]{color:var(--danger);background:#ffe1e5c2}:root[data-theme=glass] .status[data-status=unknown]{color:var(--warning);background:#fff3ccc2}:root[data-theme=glass] .subcard{overflow:hidden;border:1px solid var(--glass-border);border-radius:var(--radius-md);background:linear-gradient(145deg,#ffffff7a,#ffffff2e),#ffffff38;box-shadow:0 16px 34px #14223217,var(--inner-highlight);padding:15px;backdrop-filter:blur(26px) saturate(160%);-webkit-backdrop-filter:blur(26px) saturate(160%)}:root[data-theme=glass] .subcard:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;border-radius:inherit;background:linear-gradient(105deg,rgba(255,255,255,.38),transparent 30% 76%,rgba(255,255,255,.18))}:root[data-theme=glass] .subcard>*{position:relative;z-index:1}:root[data-theme=glass] .subheader{display:block;margin:0 0 11px;padding:0;border:none;border-radius:0;background:transparent;color:var(--muted-strong);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}:root[data-theme=glass] .log,:root[data-theme=glass] .code-block{border:1px solid var(--glass-border);border-radius:var(--radius-sm);box-shadow:inset 0 1px #ffffffad}:root[data-theme=glass] .log{background:linear-gradient(145deg,#ffffff80,#ffffff3d),#fff3;padding:10px}:root[data-theme=glass] .code-block{background:linear-gradient(145deg,#172230d6,#1d2b3ab8),#0f1724c7;color:#eef8ff;padding:12px}:root[data-theme=glass] .transcript-entry{border:1px solid var(--glass-border);border-radius:var(--radius-sm);background:#ffffff47;box-shadow:inset 0 1px #ffffff94}:root[data-theme=glass] .transcript-entry.user{border-color:#509ee059;background:#e2f2ff85}:root[data-theme=glass] .transcript-entry.assistant{border-color:#1ab88f57;background:#e2f8ef7a}:root[data-theme=glass] .log-line{border-bottom-color:#2030421a}:root[data-theme=glass] .tag{border:1px solid rgba(14,143,163,.22);border-radius:999px;background:#0e8fa31f;color:var(--accent-strong);font-size:11px;letter-spacing:.06em;padding:3px 8px}:root[data-theme=glass] .link{color:var(--accent-strong);text-decoration:none}:root[data-theme=glass] .link:hover{color:var(--violet)}:root[data-theme=glass] .cost-summary-card,:root[data-theme=glass] .cost-metric{border:1px solid var(--glass-border);border-radius:var(--radius-sm);background:linear-gradient(145deg,#ffffff75,#fff3),#fff3;box-shadow:inset 0 1px #ffffff9e}:root[data-theme=glass] .cost-card-title,:root[data-theme=glass] .cost-metric-value{color:var(--text)}:root[data-theme=glass] .cost-metric-emphasis{border-color:#0e8fa357;background:linear-gradient(145deg,#eefffaa8,#daf2ff6b),#ffffff57}:root[data-theme=glass] .cost-table-wrapper{border:none;border-radius:var(--radius-sm);background:transparent}:root[data-theme=glass] .cost-table{border:1px solid var(--glass-border);border-collapse:separate;border-spacing:0;border-radius:var(--radius-sm);background:#ffffff4d;box-shadow:inset 0 1px #ffffff9e}:root[data-theme=glass] .cost-table th,:root[data-theme=glass] .cost-table td{border-right:none;border-bottom:1px solid rgba(32,48,66,.1);padding:10px 12px}:root[data-theme=glass] .cost-table th{background:#ffffff5c;color:var(--muted-strong)}:root[data-theme=glass] .cost-table tbody tr:hover td{background:#ffffff38}:root[data-theme=glass] .chip{border:1px solid rgba(14,143,163,.28);border-radius:999px;background:linear-gradient(145deg,#e7fff99e,#e5f0ff61),#ffffff3d;color:var(--accent-strong);box-shadow:inset 0 1px #ffffffa3;padding:7px 11px}:root[data-theme=glass] .dropzone{border:1px dashed rgba(14,143,163,.46);border-radius:var(--radius-sm);background:#ebfff95c;padding:12px}:root[data-theme=glass] .modal{background:linear-gradient(135deg,#0c182357,#0c18232e),#0c182338;backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%)}:root[data-theme=glass] .modal-body{border:1px solid var(--glass-border);border-radius:var(--radius-lg);background:linear-gradient(145deg,#ffffffb3,#ffffff4d),#ffffff57;box-shadow:var(--glass-shadow),var(--inner-highlight);backdrop-filter:blur(30px) saturate(160%);-webkit-backdrop-filter:blur(30px) saturate(160%)}:root[data-theme=glass] .modal-body>.row:first-child{margin:0 0 12px;padding:0;background:transparent;color:var(--text)}:root[data-theme=glass] .flow-wrapper{border:1px solid var(--glass-border);border-radius:var(--radius-md);background:linear-gradient(145deg,#ffffff6b,#ffffff29),#ffffff29;box-shadow:inset 0 1px #ffffff9e}:root[data-theme=glass] .flow-wrapper .react-flow{background:transparent}:root[data-theme=glass] .flow-wrapper .react-flow__node{border:1px solid rgba(255,255,255,.72);border-radius:16px;background:linear-gradient(145deg,#ffffffb8,#ffffff4d),#ffffff47;color:var(--text);box-shadow:0 14px 28px #14223224,inset 0 1px #ffffffc2}:root[data-theme=glass] .flow-wrapper .react-flow__node.selected{border-color:#0e8fa3b8;box-shadow:0 0 0 4px #0e8fa324,0 16px 30px #14223229,inset 0 1px #ffffffd1}:root[data-theme=glass] .flow-wrapper .react-flow__handle{border:2px solid rgba(255,255,255,.86);background:var(--accent)}:root[data-theme=glass] .flow-wrapper .react-flow__edge-path{stroke:#0e8fa3c7}:root[data-theme=glass] .flow-wrapper .react-flow__controls,:root[data-theme=glass] .flow-wrapper .react-flow__minimap{border:1px solid var(--glass-border);border-radius:14px;background:#ffffff61;box-shadow:0 10px 22px #1422321f,inset 0 1px #ffffffad;backdrop-filter:blur(18px) saturate(150%);-webkit-backdrop-filter:blur(18px) saturate(150%)}:root[data-theme=glass] .flow-wrapper .react-flow__controls-button{border-bottom-color:#2030421f;background:transparent}:root[data-theme=glass] .alert{border:1px solid rgba(194,65,75,.22);border-radius:var(--radius-sm);background:linear-gradient(145deg,#fff0f2c7,#ffe2e575),#ffffff38;color:#9f2530;box-shadow:inset 0 1px #ffffffad}:root[data-theme=glass] .empty{border:1px dashed rgba(32,48,66,.16);border-radius:var(--radius-sm);background:#ffffff3d}:root[data-theme=glass] ::-webkit-scrollbar-track{border:none;background:#ffffff38;border-radius:999px}:root[data-theme=glass] ::-webkit-scrollbar-thumb{border:2px solid rgba(255,255,255,.32);border-radius:999px;background:#0e8fa35c}:root[data-theme=glass] ::-webkit-scrollbar-thumb:hover{background:#0e8fa385}@media (max-width: 980px){.topbar{align-items:stretch}.tabs{width:100%;justify-content:flex-start}.grid-2,.grid-3,.cost-summary-grid,.cost-metric-grid{grid-template-columns:1fr}}@media (max-width: 640px){.app{padding:12px 10px 42px}.topbar{top:6px}.brand{min-width:0}.brand-mark{width:62px;height:30px;font-size:12px}.brand-title{font-size:14px}.brand-subtitle{font-size:10px}.tab{flex:1 1 auto;padding:7px 9px}.card>:not(.card-header):not(.modal){margin:10px}:root[data-theme=glass] .card{padding:16px}:root[data-theme=glass] .card>:not(.card-header):not(.modal){margin:0}:root[data-theme=glass] .brand-mark{width:42px;height:42px;border-radius:16px}.card-header:after{display:none}.input-inline{width:100%;min-width:100%}.btn{white-space:normal}.flow-wrapper{height:380px}}.react-flow{direction:ltr}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1;cursor:-webkit-grab;cursor:grab}.react-flow__pane.selection{cursor:pointer}.react-flow__pane.dragging{cursor:-webkit-grabbing;cursor:grabbing}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow .react-flow__edges{pointer-events:none;overflow:visible}.react-flow__edge-path,.react-flow__connection-path{stroke:#b1b1b7;stroke-width:1;fill:none}.react-flow__edge{pointer-events:visibleStroke;cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;-webkit-animation:dashdraw .5s linear infinite;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;-webkit-animation:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge:focus .react-flow__edge-path,.react-flow__edge:focus-visible .react-flow__edge-path{stroke:#555}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge-textbg{fill:#fff}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;-webkit-animation:dashdraw .5s linear infinite;animation:dashdraw .5s linear infinite}.react-flow__connectionline{z-index:1001}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:-webkit-grab;cursor:grab}.react-flow__node.dragging{cursor:-webkit-grabbing;cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:-webkit-grab;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background:#1a192b;border:1px solid white;border-radius:100%}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:-4px;transform:translate(-50%)}.react-flow__handle-top{left:50%;top:-4px;transform:translate(-50%)}.react-flow__handle-left{top:50%;left:-4px;transform:translateY(-50%)}.react-flow__handle-right{right:-4px;top:50%;transform:translateY(-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.center{left:50%;transform:translate(-50%)}.react-flow__attribution{font-size:10px;background:#ffffff80;padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@-webkit-keyframes dashdraw{0%{stroke-dashoffset:10}}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-default,.react-flow__node-input,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:3px;width:150px;font-size:12px;color:#222;text-align:center;border-width:1px;border-style:solid;border-color:#1a192b;background-color:#fff}.react-flow__node-default.selectable:hover,.react-flow__node-input.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:0 1px 4px 1px #00000014}.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:0 0 0 .5px #1a192b}.react-flow__node-group{background-color:#f0f0f040}.react-flow__nodesselection-rect,.react-flow__selection{background:#0059dc14;border:1px dotted rgba(0,89,220,.8)}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls{box-shadow:0 0 2px 1px #00000014}.react-flow__controls-button{border:none;background:#fefefe;border-bottom:1px solid #eee;box-sizing:content-box;display:flex;justify-content:center;align-items:center;width:16px;height:16px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;padding:5px}.react-flow__controls-button:hover{background:#f4f4f4}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__minimap{background-color:#fff}.react-flow__minimap svg{display:block}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:4px;height:4px;border:1px solid #fff;border-radius:1px;background-color:#3367d9;transform:translate(-50%,-50%)}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:#3367d9;border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}
