@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600&family=Syne:wght@600;700&display=swap";.vue-flow{position:relative;width:100%;height:100%;overflow:hidden;z-index:0;direction:ltr}.vue-flow__container{position:absolute;height:100%;width:100%;left:0;top:0}.vue-flow__pane{z-index:1}.vue-flow__pane.draggable{cursor:grab}.vue-flow__pane.selection{cursor:pointer}.vue-flow__pane.dragging{cursor:grabbing}.vue-flow__transformationpane{transform-origin:0 0;z-index:2;pointer-events:none}.vue-flow__viewport{z-index:4;overflow:clip}.vue-flow__selection{z-index:6}.vue-flow__edge-labels{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.vue-flow__nodesselection-rect:focus,.vue-flow__nodesselection-rect:focus-visible{outline:none}.vue-flow .vue-flow__edges{pointer-events:none;overflow:visible}.vue-flow__edge-path,.vue-flow__connection-path{stroke:#b1b1b7;stroke-width:1;fill:none}.vue-flow__edge{pointer-events:visibleStroke;cursor:pointer}.vue-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.vue-flow__edge.animated path.vue-flow__edge-interaction{stroke-dasharray:none;animation:none}.vue-flow__edge.inactive{pointer-events:none}.vue-flow__edge.selected,.vue-flow__edge:focus,.vue-flow__edge:focus-visible{outline:none}.vue-flow__edge.selected .vue-flow__edge-path,.vue-flow__edge:focus .vue-flow__edge-path,.vue-flow__edge:focus-visible .vue-flow__edge-path{stroke:#555}.vue-flow__edge-textwrapper{pointer-events:all}.vue-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.vue-flow__connection{pointer-events:none}.vue-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.vue-flow__connectionline{z-index:1001}.vue-flow__nodes{pointer-events:none;transform-origin:0 0}.vue-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.vue-flow__node.draggable{cursor:grab;pointer-events:all}.vue-flow__node.draggable.dragging{cursor:grabbing}.vue-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.vue-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.vue-flow__nodesselection-rect.dragging{cursor:grabbing}.vue-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px}.vue-flow__handle.connectable{pointer-events:all;cursor:crosshair}.vue-flow__handle-bottom{left:50%;bottom:0;transform:translate(-50%,50%)}.vue-flow__handle-top{left:50%;top:0;transform:translate(-50%,-50%)}.vue-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.vue-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.vue-flow__edgeupdater{cursor:move;pointer-events:all}.vue-flow__panel{position:absolute;z-index:5;margin:15px}.vue-flow__panel.top{top:0}.vue-flow__panel.bottom{bottom:0}.vue-flow__panel.left{left:0}.vue-flow__panel.right{right:0}.vue-flow__panel.center{left:50%;transform:translate(-50%)}@keyframes dashdraw{0%{stroke-dashoffset:10}}:root{--vf-node-bg: #fff;--vf-node-text: #222;--vf-connection-path: #b1b1b7;--vf-handle: #555}.vue-flow__edge.updating .vue-flow__edge-path{stroke:#777}.vue-flow__edge-text{font-size:10px}.vue-flow__edge-textbg{fill:#fff}.vue-flow__connection-path{stroke:var(--vf-connection-path)}.vue-flow__node{cursor:grab}.vue-flow__node.selectable:focus,.vue-flow__node.selectable:focus-visible{outline:none}.vue-flow__node-default,.vue-flow__node-input,.vue-flow__node-output{padding:10px;border-radius:3px;width:150px;font-size:12px;text-align:center;border-width:1px;border-style:solid;color:var(--vf-node-text);background-color:var(--vf-node-bg);border-color:var(--vf-node-color)}.vue-flow__node-default.selected,.vue-flow__node-default.selected:hover,.vue-flow__node-input.selected,.vue-flow__node-input.selected:hover,.vue-flow__node-output.selected,.vue-flow__node-output.selected:hover{box-shadow:0 0 0 .5px var(--vf-box-shadow)}.vue-flow__node-default.selected,.vue-flow__node-default:focus,.vue-flow__node-default:focus-visible,.vue-flow__node-input.selected,.vue-flow__node-input:focus,.vue-flow__node-input:focus-visible,.vue-flow__node-output.selected,.vue-flow__node-output:focus,.vue-flow__node-output:focus-visible{outline:none;border:1px solid #555}.vue-flow__node-default .vue-flow__handle,.vue-flow__node-input .vue-flow__handle,.vue-flow__node-output .vue-flow__handle{background:var(--vf-handle)}.vue-flow__node-default.selectable:hover,.vue-flow__node-input.selectable:hover,.vue-flow__node-output.selectable:hover{box-shadow:0 1px 4px 1px #00000014}.vue-flow__node-input{--vf-node-color: var(--vf-node-color, #0041d0);--vf-handle: var(--vf-node-color, #0041d0);--vf-box-shadow: var(--vf-node-color, #0041d0);background:var(--vf-node-bg);border-color:var(--vf-node-color, #0041d0)}.vue-flow__node-input.selected,.vue-flow__node-input:focus,.vue-flow__node-input:focus-visible{outline:none;border:1px solid var(--vf-node-color, #0041d0)}.vue-flow__node-default{--vf-handle: var(--vf-node-color, #1a192b);--vf-box-shadow: var(--vf-node-color, #1a192b);background:var(--vf-node-bg);border-color:var(--vf-node-color, #1a192b)}.vue-flow__node-default.selected,.vue-flow__node-default:focus,.vue-flow__node-default:focus-visible{outline:none;border:1px solid var(--vf-node-color, #1a192b)}.vue-flow__node-output{--vf-handle: var(--vf-node-color, #ff0072);--vf-box-shadow: var(--vf-node-color, #ff0072);background:var(--vf-node-bg);border-color:var(--vf-node-color, #ff0072)}.vue-flow__node-output.selected,.vue-flow__node-output:focus,.vue-flow__node-output:focus-visible{outline:none;border:1px solid var(--vf-node-color, #ff0072)}.vue-flow__nodesselection-rect,.vue-flow__selection{background:#0059dc14;border:1px dotted rgba(0,89,220,.8)}.vue-flow__nodesselection-rect:focus,.vue-flow__nodesselection-rect:focus-visible,.vue-flow__selection:focus,.vue-flow__selection:focus-visible{outline:none}.vue-flow__handle{width:6px;height:6px;background:var(--vf-handle);border:1px solid #fff;border-radius:100%}:root,[data-theme=slate]{--ink: #13202a;--muted: #5a6b78;--line: #b7c4d0;--paper: #c5d0db;--card: #f7fafc;--accent: #1d4f8c;--forest: #1a3344;--hero: #e4edf5;--canvas: #cfd9e4;--chip: #d5e0ea;--chip-ink: #143047;--chip-ok: #cfe6d6;--chip-ok-ink: #14532d;--chip-warn: #f0e0b8;--chip-warn-ink: #7a4a10;--step: #dce6ef;--step-ink: #143047;--input: #ffffff;--code: #e8eef3;--code-ink: #13202a;--fault: #f4e4c4;--fault-ink: #8a4b12;--python: #1f8a7a;--python-ink: #f4fffc;--gold: #c4a35a;--gold-2: #e8d7a8;--ask-bg: #e4edf5;--ask-ink: #13202a;--ask-muted: #5a6b78;--ask-line: #b7c4d0;--ask-bubble: #f7fafc;--ask-input: #ffffff;--ask-user: #c9dcea;--ask-link: #1d4f8c;--ask-btn: #1d4f8c;--ask-btn-ink: #ffffff;--ask-error: #8a2f2f;--ok: #1f6b3a;--warn: #8a5a12;--nav-ink: #e8f0f6;--nav-muted: #9fbfb2;--glow: rgba(247, 250, 252, .88);--dot: #8aa0b0;--python-deep: #14665b;--shadow: 0 10px 28px rgba(18, 32, 51, .08);--processor-surface: #d7eaf8;--processor-ink: #111;--processor-input: #fff;--processor-line: #7aa4c4;--processor-button: #b8d4ea;--processor-button-line: #5e8faf;--processor-well: #1a2430;--processor-well-ink: #dce6ef;--vf-node-bg: var(--card);--vf-node-text: var(--ink);--vf-connection-path: var(--muted);--vf-handle: var(--muted);color-scheme:light;font-family:IBM Plex Sans,Segoe UI,system-ui,sans-serif;color:var(--ink);background:var(--paper)}[data-theme=sand]{--ink: #12211c;--muted: #5d6b64;--line: #cfc4b0;--paper: #d8d0c0;--card: #fffdf8;--accent: #1d4f8c;--forest: #16362c;--hero: #f3eee3;--canvas: #d5dfd8;--chip: #e6dcc8;--chip-ink: #1a241c;--chip-ok: #d7e6d4;--chip-ok-ink: #14532d;--chip-warn: #f0e0b8;--chip-warn-ink: #7a4a10;--step: #ece4d4;--step-ink: #1a241c;--input: #fffdf8;--code: #efe8da;--code-ink: #12211c;--fault: #f4e4c4;--fault-ink: #8a4b12;--python: #1f8a7a;--python-ink: #f4fffc;--nav-ink: #eef6f1;--nav-muted: #9fbfb2;--glow: rgba(255, 253, 248, .92);--dot: #9eb3a6;--python-deep: #14665b;--shadow: 0 10px 28px rgba(18, 33, 28, .08);--processor-surface: #efe6d4;--processor-ink: #12211c;--processor-input: #fffdf8;--processor-line: #c4b89a;--processor-button: #e0d4bc;--processor-button-line: #a8946c;--processor-well: #2a2620;--processor-well-ink: #efe8da;--ask-bg: #f3eee3;--ask-ink: #12211c;--ask-muted: #5d6b64;--ask-line: #cfc4b0;--ask-bubble: #fffdf8;--ask-input: #fffdf8;--ask-user: #e6dcc8;--ask-link: #1d4f8c;--ask-btn: #1d4f8c;--ask-btn-ink: #ffffff;--ask-error: #8a2f2f;color-scheme:light}[data-theme=pine]{--ink: #e8f2ec;--muted: #b4c6bc;--line: #3a5248;--paper: #24332c;--card: #31453c;--accent: #8ec4f0;--forest: #15221c;--hero: #2c3f36;--canvas: #1f2d27;--chip: #3d564c;--chip-ink: #e8f2ec;--chip-ok: #3f5c4a;--chip-ok-ink: #d4f0da;--chip-warn: #5a4c32;--chip-warn-ink: #f0d9a0;--step: #3a5248;--step-ink: #e8f2ec;--input: #2a3d34;--code: #1c2a24;--code-ink: #e8f2ec;--fault: #4a3d28;--fault-ink: #f0d9a0;--python: #1a7a6a;--python-ink: #f4fffc;--ok: #8fce9f;--warn: #e0b56a;--nav-ink: #e8f2ec;--nav-muted: #8fb5a8;--glow: rgba(36, 51, 44, .88);--dot: #5a7368;--python-deep: #12564d;--shadow: 0 12px 32px rgba(8, 16, 12, .35);--processor-surface: #2c3f36;--processor-ink: #e8f2ec;--processor-input: #24332c;--processor-line: #4a6358;--processor-button: #3d564c;--processor-button-line: #6a8578;--processor-well: #15221c;--processor-well-ink: #d4e8dc;--ask-bg: #1c2a24;--ask-ink: #e8f2ec;--ask-muted: #b4c6bc;--ask-line: #3a5248;--ask-bubble: #31453c;--ask-input: #2a3d34;--ask-user: #3d564c;--ask-link: #8ec4f0;--ask-btn: #3d564c;--ask-btn-ink: #e8f2ec;--ask-error: #f0b4b4;color-scheme:dark}[data-theme=night]{--ink: #e8eef4;--muted: #9aaabb;--line: #334155;--paper: #1a222c;--card: #243040;--accent: #7eb4ea;--forest: #101820;--hero: #222c38;--canvas: #151c26;--chip: #334155;--chip-ink: #e8eef4;--chip-ok: #2d4a3a;--chip-ok-ink: #d4f0da;--chip-warn: #4a3d28;--chip-warn-ink: #f0d9a0;--step: #2c3948;--step-ink: #e8eef4;--input: #1c2632;--code: #151c26;--code-ink: #e8eef4;--fault: #4a3d28;--fault-ink: #f0d9a0;--python: #1a7a6a;--python-ink: #f4fffc;--ok: #8fce9f;--warn: #e0b56a;--nav-ink: #e8eef4;--nav-muted: #8aa0b0;--glow: rgba(26, 34, 44, .9);--dot: #4a5c70;--python-deep: #12564d;--shadow: 0 12px 32px rgba(8, 12, 20, .4);--processor-surface: #222c38;--processor-ink: #e8eef4;--processor-input: #1c2632;--processor-line: #4a5c70;--processor-button: #334155;--processor-button-line: #6a7d94;--processor-well: #0f141c;--processor-well-ink: #d7e0ea;--ask-bg: #151c26;--ask-ink: #e8eef4;--ask-muted: #9aaabb;--ask-line: #334155;--ask-bubble: #243040;--ask-input: #1c2632;--ask-user: #2a3d55;--ask-link: #7eb4ea;--ask-btn: #2f7ad1;--ask-btn-ink: #ffffff;--ask-error: #f0b4b4;color-scheme:dark}*{box-sizing:border-box}html,body,#app{height:100%}body{margin:0;background:var(--paper);color:var(--ink)}a{color:var(--accent)}.shell{display:grid;grid-template-columns:minmax(0,1fr) 7px var(--ask-width, 400px);grid-template-rows:auto 1fr;height:100vh;overflow:hidden}.shell.ask-closed{grid-template-columns:minmax(0,1fr) 7px 2.4rem}.shell.is-ask-resizing{cursor:col-resize;-webkit-user-select:none;user-select:none}.shell.is-ask-resizing iframe{pointer-events:none}.workspace{min-width:0;min-height:0;overflow:hidden;display:flex;flex-direction:column;grid-column:1;grid-row:2}.workspace>main{flex:1;min-height:0;overflow:auto;padding-bottom:.5rem}.workspace.is-view-stage>main{overflow:hidden;display:flex;flex-direction:column;padding-bottom:.35rem}.shell-embed{height:100vh;overflow:hidden;background:var(--paper)}.shell-embed .view-stage{height:100%}.ask-resize{grid-column:2;grid-row:2;z-index:3;cursor:col-resize;touch-action:none;background:transparent}.ask-resize:hover,.ask-resize.is-dragging{background:var(--ask-line)}.shell>.ask{grid-column:3;grid-row:2;height:100%;min-height:0;z-index:2}.activity-dock{position:relative;flex-shrink:0;z-index:4;background:var(--forest);color:var(--nav-ink);border-top:1px solid var(--line);min-height:36px;box-shadow:0 -10px 28px #08100c47}.activity-toggle{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.75rem;align-items:center;width:100%;border:0;background:transparent;color:inherit;padding:.45rem 1rem;cursor:pointer;text-align:left}.activity-bar{display:grid;gap:.15rem}.activity-filters{display:flex;flex-wrap:wrap;gap:.35rem;padding:0 1rem .4rem}.activity-chip{border:1px solid color-mix(in srgb,var(--nav-ink) 28%,transparent);background:transparent;color:var(--nav-muted);border-radius:999px;padding:.12rem .55rem;font-size:.72rem;cursor:pointer}.activity-chip.on{background:var(--chip-ok);color:var(--chip-ok-ink);border-color:var(--ok)}.activity-kicker{font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--nav-muted)}.activity-latest{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.85rem}.activity-latest time,.activity-list time{font-variant-numeric:tabular-nums;color:var(--nav-muted);margin-right:.6rem}.activity-chevron{color:var(--nav-muted);font-size:.7rem}.activity-body{max-height:220px;overflow:auto;padding:0 1rem .7rem;border-top:1px solid color-mix(in srgb,var(--nav-ink) 22%,transparent)}.activity-list{list-style:none;margin:.4rem 0 0;padding:0;display:grid;gap:.28rem;font-size:.85rem}.activity-list a{color:inherit;text-decoration:none}.activity-list a:hover{text-decoration:underline}.activity-list .warn{color:var(--gold-2)}.activity-list .alert{color:#f0b4b4}.activity-list .info,.activity-dock .muted{color:var(--nav-muted)}.top{grid-column:1 / -1;grid-row:1;display:flex;align-items:center;justify-content:space-between;gap:16px 24px;flex-wrap:wrap;padding:12px 22px;background:var(--forest);color:var(--nav-ink);z-index:2}main{padding:.5rem 1.5rem 2rem}.brand{display:flex;flex-direction:column;text-decoration:none;color:inherit;line-height:1.05;min-width:120px}.brand-co{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--nav-muted)}.brand-product{font-family:Syne,IBM Plex Sans,sans-serif;font-weight:700;font-size:20px;letter-spacing:-.03em}.site{display:flex;flex-direction:column;gap:.1rem;margin:0;min-width:0;line-height:1.15}.site-name{font-size:.88rem;font-weight:600}.site-kind{font-size:.7rem;color:var(--nav-muted)}.nav-meta{display:flex;align-items:center;gap:.75rem;margin-left:auto}.build-stamp{font-size:.72rem;font-variant-numeric:tabular-nums;color:var(--nav-muted);white-space:nowrap;letter-spacing:.02em}.build-stamp.is-stale{color:var(--gold-2)}.theme-pick{display:flex;align-items:center;gap:.35rem;font-size:.78rem}.theme-pick select{border:1px solid rgba(255,255,255,.28);background:#152028;color:#e8f0f6;color-scheme:dark;border-radius:8px;padding:.25rem .4rem;font:inherit}.theme-pick select option{background:#152028;color:#e8f0f6}.who{font-size:.75rem;color:var(--nav-muted);white-space:nowrap}.identity-roles{display:grid;grid-template-columns:8rem 1fr;gap:.35rem 1rem;margin:0}.identity-roles dt{font-weight:600}.identity-roles dd{margin:0}.logout{border:1px solid rgba(255,255,255,.28);background:transparent;color:inherit;border-radius:8px;padding:.25rem .55rem;font:inherit;font-size:.75rem;cursor:pointer}.auth-error{margin:.75rem 1rem 0;padding:.6rem .8rem;border:1px solid var(--line);border-radius:8px;background:var(--card)}.nav-links{display:flex;align-items:center;gap:4px 6px;flex-wrap:wrap}.nav-links a{color:var(--nav-ink);text-decoration:none;font-size:14px;font-weight:500;padding:6px 10px;border-radius:999px}.nav-links a:hover{background:#ffffff14}.nav-links a.is-on{background:#c4a35a2e;color:var(--gold-2)}.ask{min-width:0;min-height:0;height:100vh;border-left:1px solid var(--ask-line);background:var(--ask-bg);color:var(--ask-ink);padding:1rem 1rem .85rem;display:flex;flex-direction:column;gap:.55rem}.ask a{color:var(--ask-link)}.ask-open{display:flex;flex-direction:column;gap:inherit;flex:1;min-width:0;min-height:0}.ask.is-closed{padding:.45rem .15rem;align-items:center}.ask-rail{writing-mode:vertical-rl;transform:rotate(180deg);border:0;background:transparent;color:inherit;cursor:pointer;font:inherit;font-size:.86rem;font-weight:650;letter-spacing:.08em;padding:.7rem .15rem}.ask-head{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem}.ask-head-actions{display:flex;align-items:center;gap:.4rem}.ask-kicker{margin:0;font-size:.68rem;letter-spacing:.02em;color:var(--ask-muted)}.ask h2{margin:.1rem 0 0;font-size:1.25rem;font-weight:650}.ask-new,.ask-send-btn{border:0;border-radius:999px;background:var(--ask-btn);color:var(--ask-btn-ink);padding:.35rem .75rem;cursor:pointer;white-space:nowrap}.ask-ghost,.chip{border:1px solid var(--ask-line);background:transparent;color:var(--ask-ink);border-radius:999px;padding:.28rem .6rem;cursor:pointer}.ask .chip-do{background:var(--ok);color:var(--ask-bg);border:0;font-weight:700;font-size:.82rem;padding:.42rem 1rem;letter-spacing:.03em;box-shadow:0 0 0 2px color-mix(in srgb,var(--ok) 45%,transparent)}.ask .chip-do:hover:not(:disabled){filter:brightness(1.1)}.ask-confirm{margin:.65rem 0 0}.ask-confirm .chip-do{min-width:7.5rem}.ask-session{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.4rem}.ask-session select,.ask-model-select,.ask textarea{width:100%;min-width:0;border:1px solid var(--ask-line);background:var(--ask-input);color:var(--ask-ink);border-radius:10px;padding:.4rem .55rem}.ask-session select option,.ask-model-select option{background:var(--ask-input);color:var(--ask-ink)}.ask-page,.ask-title,.ask .muted,.ask .tiny{color:var(--ask-muted)}.ask-page,.ask-title{margin:0;overflow-wrap:anywhere;white-space:pre-wrap}.ask-page{font-size:.78rem}.ask-page.is-elsewhere .ask-page-link{color:var(--ask-ink)}.ask-page-link,.ask-bubble a,.ask-context a{color:var(--ask-ink);text-decoration:underline;text-underline-offset:.15em}.ask-title{font-size:.8rem}.ask-thread{flex:1;min-height:0;overflow:auto;display:grid;gap:.65rem;align-content:start;padding-right:.15rem}.ask-empty{padding:.9rem;border:1px dashed var(--ask-line);border-radius:14px}.ask-empty p{margin:0;overflow-wrap:anywhere}.ask-empty p+p{margin-top:.4rem}.ask-bubble{padding:.75rem .85rem;border-radius:14px;font-size:.92rem;line-height:1.45;overflow-wrap:anywhere;word-break:break-word;white-space:pre-wrap;max-width:100%;min-width:0}.ask-bubble.user{background:var(--ask-user);color:var(--ask-ink);justify-self:end;max-width:92%}.ask-bubble.assistant{background:var(--ask-bubble);border:1px solid var(--ask-line)}.ask-bubble h3{margin:.2rem 0 .25rem;font-size:.92rem}.ask-body,.ask-bubble p,.ask-bubble li{overflow-wrap:anywhere;word-break:break-word;white-space:pre-wrap;margin:.25rem 0}.ask-context{margin:0;font-size:.75rem;color:var(--ask-muted);overflow-wrap:anywhere;white-space:pre-wrap}.ask-compose{display:grid;gap:.4rem}.ask textarea{min-height:5.5rem;resize:vertical;overflow-wrap:anywhere}.ask-send{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.45rem;align-items:center}.ask-send-selects{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:.35rem;min-width:0}.ask-error{margin:0;color:var(--ask-error);overflow-wrap:anywhere;white-space:pre-wrap}.ask-tokens{display:grid;gap:.28rem;margin:0;font-size:.75rem;color:var(--ask-muted)}.ask-token-bar{display:flex;height:6px;border-radius:999px;overflow:hidden;background:var(--ask-line)}.ask-token-bar .prompt{background:#2f7ad1}.ask-token-bar .completion{background:#c43c32}.ask-token-spark{display:flex;align-items:flex-end;gap:2px;height:28px}.ask-token-spark i{flex:1;min-width:4px;background:var(--ask-link);border-radius:2px 2px 0 0}.chips{display:flex;flex-wrap:wrap;gap:.35rem}.chip,.tiny{font-size:.75rem}.muted{color:var(--muted)}.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:1.1rem 1.2rem;margin-bottom:1rem;box-shadow:var(--shadow)}.view-kpis{display:grid;grid-template-columns:repeat(auto-fill,minmax(9rem,1fr));gap:.75rem}.view-kpi{border:1px solid var(--line);border-radius:12px;padding:.65rem .8rem;background:var(--hero)}.view-kpi-value{font-size:1.35rem;font-weight:650;margin:.15rem 0 0}.view-spark{width:100%;max-width:36rem;height:auto;color:var(--accent, var(--ink))}.text-btn{border:0;background:transparent;color:var(--accent, var(--ink));cursor:pointer;text-decoration:underline;padding:0;font:inherit}h1{font-family:Syne,IBM Plex Sans,sans-serif;letter-spacing:-.03em}.flow-hero{background:var(--hero);border:1px solid var(--line);border-radius:14px;padding:.75rem 1rem;margin-bottom:.75rem}.flow-hero h1,.flow-hero h2,.flow-index-head h1{margin:0 0 .35rem}.flow-hero h2{font-size:1.35rem}.flow-hero-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.flow-summary{margin:.45rem 0 0;font-size:1.02rem}.flow-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin-bottom:1.25rem}.view-group h2{margin:.25rem 0 .65rem;font-size:.82rem;font-weight:650;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.filter{width:min(28rem,100%);margin:0 0 1rem;padding:.45rem .7rem;border:1px solid var(--line);border-radius:10px;background:var(--card);color:inherit}.flow-card{display:block;text-decoration:none;color:inherit;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:1rem 1.1rem;box-shadow:var(--shadow)}.flow-card h2{margin:.35rem 0 .75rem;font-size:1.05rem}.flow-card-kicker{display:flex;gap:.5rem;align-items:center;margin:0;font-size:.8rem;color:var(--muted)}.flow-steps{margin:0;padding:0;list-style:none}.flow-steps li{position:relative;padding:.45rem .6rem;margin:0;background:var(--step);color:var(--step-ink);border-radius:10px;font-size:.85rem}.flow-steps li+li{margin-top:.55rem}.flow-steps li+li:before{content:"↓";position:absolute;top:-.85rem;left:50%;transform:translate(-50%);color:var(--muted);font-size:.75rem}.badge{display:inline-block;padding:.1rem .45rem;border-radius:999px;font-size:.7rem;letter-spacing:.04em;text-transform:uppercase;background:var(--chip);color:var(--chip-ink)}.badge.active{background:var(--chip-ok);color:var(--chip-ok-ink)}.badge.draft{background:var(--chip-warn);color:var(--chip-warn-ink)}.badge.info{background:var(--chip);color:var(--accent)}.flow-intent,.flow-create{display:grid;gap:.55rem;max-width:640px}.flow-intent textarea,.flow-create input,.flow-create select,.flow-props input,.flow-props select{width:100%;padding:.45rem .55rem;border:1px solid var(--line);border-radius:10px;background:var(--input);color:var(--ink)}.flow-props select option,.flow-create select option{background:var(--input);color:var(--ink)}.flow-create label,.flow-props label{display:grid;gap:.25rem;font-size:.85rem}.secret-reveal{display:flex;gap:.55rem;align-items:center;max-width:640px}.secret-value{flex:1;min-width:0;margin:0;padding:.45rem .55rem;border:1px solid var(--line);border-radius:10px;background:var(--input);color:var(--ink);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.14em;overflow-wrap:anywhere}.secret-value.revealed{letter-spacing:0}.flow-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem;align-items:start}.flow-layout.has-inspector{grid-template-columns:minmax(0,1fr)}.flow-props.below-node{grid-template-columns:minmax(0,1.2fr) minmax(18rem,1fr);align-items:start}.flow-props.below-node>*{grid-column:1 / -1}.flow-props.below-node .processor-host,.flow-props.below-node .processor-code-panel{grid-column:auto}@media(max-width:900px){.flow-props.below-node{grid-template-columns:minmax(0,1fr)}}.vue-flow.flow-canvas{height:640px;background-color:var(--canvas);background-image:radial-gradient(ellipse at 20% 0%,var(--glow),transparent 55%),radial-gradient(var(--dot) 1.15px,transparent 1.2px);background-size:auto,22px 22px;border:1px solid var(--line)}.vue-flow.flow-canvas .vue-flow__node{padding:0;border:none;background:transparent;box-shadow:none;width:auto}.vue-flow.flow-canvas .vue-flow__handle{opacity:0;width:2px;height:2px;min-width:2px;border:none;background:transparent}.fn{width:248px;padding:16px 18px 16px 20px;border-radius:22px;font-size:14px;text-align:left;background:var(--card);border:1px solid rgba(22,54,44,.12);box-shadow:0 18px 40px #16362c24;position:relative}.fn:before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:4px;border-radius:0 4px 4px 0;background:#3d7a64}.fn-icon{display:inline-block;margin-right:.4rem;font-size:.85rem}.fn .kind{margin:0 0 .35rem;font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.fn-n{display:inline-flex;align-items:center;justify-content:center;min-width:1.15rem;height:1.15rem;margin-right:.35rem;padding:0 .2rem;border-radius:999px;letter-spacing:0;font-weight:600;color:var(--ink);background:color-mix(in srgb,var(--paper-2) 80%,transparent);border:1px solid var(--line)}.fn strong{display:block;font-size:.98rem;line-height:1.3;overflow-wrap:anywhere}.fn .sub{margin:.3rem 0 0;color:var(--muted);font-size:.75rem;overflow-wrap:anywhere}.fn.entity:before{background:#2f6f9f}.fn.condition:before{background:#c4a35a}.fn.action:before{background:#c47b16}.fn.processor{color:var(--python-ink);background:linear-gradient(165deg,var(--python) 0%,var(--python-deep) 100%);border:1px solid rgba(10,60,52,.4);clip-path:polygon(12px 0,calc(100% - 12px) 0,100% 12px,100% calc(100% - 12px),calc(100% - 12px) 100%,12px 100%,0 calc(100% - 12px),0 12px);box-shadow:0 18px 40px #145a5047}.fn.processor:before{display:none}.fn.processor .kind,.fn.processor .sub{color:color-mix(in srgb,var(--python-ink) 82%,transparent)}.fn.processor strong{color:var(--python-ink)}.fn.selected{outline:2px solid var(--accent)}.fn.processor.selected{outline:3px solid var(--python-ink);box-shadow:0 0 0 3px var(--python-deep),0 18px 40px #145a5047}.fn.changed{box-shadow:0 0 0 2px #c47b16}.change{color:var(--fault-ink);font-size:.9rem}.flow-fault{white-space:pre-wrap;color:var(--fault-ink);background:var(--fault);border:1px solid var(--line);border-radius:10px;padding:.6rem .75rem;max-width:52rem}.flow-props{display:grid;gap:.55rem;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:1rem}.node-inspect{gap:.7rem;padding:0;overflow:hidden;box-shadow:var(--shadow);animation:inspect-swap .22s ease}.node-inspect-head{padding:.75rem 1rem .65rem;background:var(--hero);border-bottom:1px solid var(--line)}.node-inspect[data-kind=processor] .node-inspect-head{background:color-mix(in srgb,var(--python) 22%,var(--hero))}.node-inspect[data-kind=condition] .node-inspect-head{background:color-mix(in srgb,var(--chip-warn) 55%,var(--hero))}.node-inspect[data-kind=action] .node-inspect-head{background:color-mix(in srgb,var(--chip-warn) 70%,var(--hero))}.node-inspect[data-kind=entity] .node-inspect-head{background:color-mix(in srgb,var(--accent) 16%,var(--hero))}.node-inspect-kicker{display:flex;gap:.4rem;align-items:center;margin:0 0 .25rem}.node-inspect-head h2{margin:0;font-size:1.15rem}.node-inspect-meta{display:flex;flex-wrap:wrap;gap:.35rem .85rem;margin:.3rem 0 0;color:var(--muted);font-size:.78rem}.node-io{display:flex;flex-wrap:wrap;gap:.35rem 1rem;margin:0;padding:0 1rem;color:var(--muted);font-size:.75rem}.node-io em{font-style:normal;font-weight:600;color:var(--ink);margin-right:.25rem}.node-inspect .processor-host,.node-inspect .processor-code-panel,.node-inspect .muted,.node-inspect label,.node-inspect button,.node-inspect .flow-fault{margin-left:1rem;margin-right:1rem}.node-inspect .processor-host{margin-bottom:.85rem}.node-inspect .processor-code-panel{margin-bottom:1rem}.node-inspect>.muted,.node-inspect>button{margin-bottom:1rem}@keyframes inspect-swap{0%{opacity:.65;transform:translateY(8px)}to{opacity:1;transform:none}}.badge.processor{background:var(--chip-ok);color:var(--chip-ok-ink)}.badge.condition,.badge.action{background:var(--chip-warn);color:var(--chip-warn-ink)}.badge.entity{background:var(--chip);color:var(--accent)}.flow-props .check{display:flex;gap:.35rem;align-items:center}.fn.processor.has-ui{width:248px}.processor-host{margin-top:.15rem}.node-window{background:linear-gradient(180deg,#5d7f8c,#3d5c68);border:1px solid #243e48;border-radius:14px;box-shadow:0 18px 36px #182e3838,inset 0 1px #ffffff47;overflow:hidden}.node-window-bar{display:flex;align-items:center;gap:.55rem;padding:.42rem .7rem .38rem;color:#f3fbff;font-size:.72rem;letter-spacing:.03em}.node-window-title{flex:1;min-width:0}.node-window-restore{margin-left:auto;border:1px solid rgba(243,251,255,.35);background:transparent;color:#f3fbff;border-radius:999px;padding:.12rem .55rem;font:inherit;font-size:.68rem;cursor:pointer}.node-window-restore:hover{background:#f3fbff1f}.node-window-controls{display:flex;gap:.28rem}.node-window-controls i{display:block;width:9px;height:9px;border-radius:50%;background:#d5e4eb;box-shadow:inset 0 0 0 1px #14283240}.node-window-controls i:nth-child(1){background:#e8c4c0}.node-window-controls i:nth-child(2){background:#e4d7b4}.node-window-controls i:nth-child(3){background:#c5dcc8}.node-window-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.node-window-pane{margin:0 8px 8px;border:2px solid #1e3944;border-radius:8px;box-shadow:inset 0 0 0 1px #ffffff47;background:var(--processor-surface);overflow:hidden}.processor-ui-frame{display:block;width:100%;height:400px;border:0;background:var(--processor-surface)}.view-ui-frame{display:block;flex:1;width:100%;height:auto;min-height:0;border:0;background:transparent}.view-canvas{flex:1;min-height:0;display:flex;flex-direction:column}.view-canvas-fault{margin:.35rem .2rem;color:var(--fault-ink);font-size:.8rem}.view-stage{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.view-stage-host{flex:1;min-height:0}.view-fallback{flex:1;min-height:0;overflow:auto}.view-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.35rem .15rem .55rem;flex-shrink:0}.view-toolbar-title{display:flex;align-items:center;gap:.5rem;margin:0;min-width:0}.view-toolbar-title strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.view-toolbar-actions{display:flex;flex-shrink:0;gap:.35rem}.view-meta{flex-shrink:0;margin:.2rem 0 0;font-size:.85rem}.view-meta summary{cursor:pointer;color:var(--muted)}.view-stage:fullscreen{background:var(--paper);padding:.5rem .75rem .75rem}.view-run-log{margin:.4rem .6rem .2rem;padding:0 0 0 1.1rem;color:var(--fault-ink, #8b1e1e);font-size:.75rem}.processor-host.compact .processor-ui-frame{height:160px}.processor-host-fault{margin:.4rem 0 0;color:var(--fault-ink);font-size:.75rem}.processor-code-panel{display:grid;gap:.45rem;min-width:0}.processor-code{margin:0;min-height:240px;max-height:360px;width:100%;overflow:auto;padding:.7rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.72rem;line-height:1.35;background:var(--code);color:var(--code-ink);border:1px solid var(--line);border-radius:10px;white-space:pre}.vue-flow .vue-flow__pane,.vue-flow .vue-flow__viewport,.vue-flow .vue-flow__container{background:transparent}.vue-flow{height:560px;background:var(--canvas);border:1px solid var(--line);border-radius:16px}.vue-flow__edge-path,.vue-flow__connection-path{stroke:var(--muted)}.vue-flow__edge-textbg{fill:var(--card)}.vue-flow__edge-text{fill:var(--ink)}.vue-flow.lineage-flow{height:420px;margin-top:1rem}.vue-flow.lineage-flow .vue-flow__node{padding:0;border:none;background:transparent;box-shadow:none;width:auto}.fn.lineage-fn{width:196px}.fn.lineage-fn.focus{outline:2px solid var(--accent)}.fn.lineage-fn.view:before,.fn.lineage-fn.flow:before{background:#3d7a64}.fn.lineage-fn.processor{background:var(--chip-warn);border-color:color-mix(in srgb,var(--chip-warn-ink) 35%,var(--line));color:var(--chip-warn-ink)}.fn.lineage-fn.processor .kind{color:var(--chip-warn-ink)}.fn.lineage-fn.processor:before{background:var(--chip-warn-ink)}.fn.lineage-fn.source:before{background:#2f6f9f}.view-overview{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,240px);gap:1.25rem;align-items:stretch;margin-top:1rem}.view-overview-sources{display:grid;gap:.75rem}.view-sink{align-self:stretch;display:flex;flex-direction:column;justify-content:center;height:auto;min-height:100%;box-sizing:border-box}.source-pick{width:100%;text-align:left;cursor:pointer}.source-pick.selected{outline:2px solid var(--accent)}.view-sink{justify-self:center}.status-line{margin:.45rem 0 0;font-size:.85rem}.status-line.ok{color:var(--ok)}.status-line.warn{color:var(--warn)}.status-line.idle{color:var(--muted)}.text-link{align-self:center;font-size:.9rem}@media(max-width:900px){.view-overview{grid-template-columns:1fr}}.definition,.definition-editor{margin:0;padding:1rem;overflow:auto;width:100%;min-height:16rem;max-height:28rem;box-sizing:border-box;background:var(--code);color:var(--code-ink);border:1px solid var(--line);border-radius:12px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.8rem;line-height:1.45;white-space:pre;resize:vertical}.definition-card .flow-hero-actions{margin-top:.75rem}.definition-card summary{cursor:pointer;list-style:none}.definition-card summary h2{display:inline;margin:0;font-size:1.05rem}.definition-card summary .muted{margin:.25rem 0 0}.flow-hero-note{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-width:46rem}.alert-strip{padding:.5rem .9rem;margin-bottom:.75rem}.alert-strip h2{margin:0;font-size:1rem}.flow-sources-line{margin:.75rem 0 0;color:var(--muted);font-size:.82rem}.alert-list.compact{margin:.25rem 0 0;padding-left:1.1rem}.pipeline-steps{max-width:420px}.flow-steps .tiny{display:block;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.use-group h3{margin:.75rem 0 .25rem;font-size:.95rem}.alert-list{margin:0;padding:0;list-style:none;display:grid;gap:.55rem}.alert-list li{padding:.7rem .8rem;background:var(--card);border:1px solid var(--line);border-radius:12px}.alert-console{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,1.1fr);gap:1rem;align-items:start}.alert-log{background:var(--code);color:var(--code-ink);border-radius:16px;padding:1rem 1.1rem}.alert-log h2{margin:0 0 .7rem;color:var(--muted)}.alert-log ol{margin:0;padding:0;list-style:none;font-family:ui-monospace,IBM Plex Mono,monospace;font-size:.78rem;line-height:1.45}.alert-log li{display:grid;gap:.15rem;padding:.45rem 0;border-top:1px solid var(--line);overflow-wrap:anywhere}.alert-log time{color:var(--muted)}ul.plain{padding-left:1.1rem}.source-facts{display:grid;gap:.7rem;margin:.75rem 0 0}.source-facts>div{display:grid;gap:.2rem}.source-facts dt{font-size:.78rem;color:var(--muted)}.source-facts dd{margin:0;overflow-wrap:anywhere}.source-facts a{color:var(--accent)}main button{font:inherit;background:var(--chip);color:var(--chip-ink);border:1px solid var(--line);border-radius:10px;padding:.4rem .75rem;cursor:pointer}.activity-toggle,.activity-chip{background:transparent}details.manual-create{margin-top:.5rem}.token-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.75rem;margin:0 0 1rem}.token-kpi{font-size:1.6rem;font-weight:600;margin:.15rem 0 0}.token-chart{display:block;width:100%;max-width:40rem;height:auto}.token-table{width:100%;border-collapse:collapse}.token-table th,.token-table td{text-align:left;padding:.35rem .5rem .35rem 0;border-bottom:1px solid var(--line)}.activity-list.light{color:var(--ink)}.activity-list.light time{color:var(--muted);margin-right:.5rem}
