/**
 * Copyright (c) 2014 The xterm.js authors. All rights reserved.
 * Copyright (c) 2012-2013, Christopher Jeffrey (MIT License)
 * https://github.com/chjj/term.js
 * @license MIT
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in
 * all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 * THE SOFTWARE.
 *
 * Originally forked from (with the author's permission):
 *   Fabrice Bellard's javascript vt100 for jslinux:
 *   http://bellard.org/jslinux/
 *   Copyright (c) 2011 Fabrice Bellard
 *   The original design remains. The terminal itself
 *   has been extended to include xterm CSI codes, among
 *   other features.
 */.xterm{cursor:text;position:relative;user-select:none;-ms-user-select:none;-webkit-user-select:none}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{position:absolute;top:0;z-index:5}.xterm .xterm-helper-textarea{padding:0;border:0;margin:0;position:absolute;opacity:0;left:-9999em;top:0;width:0;height:0;z-index:-5;white-space:nowrap;overflow:hidden;resize:none}.xterm .composition-view{background:#000;color:#fff;display:none;position:absolute;white-space:nowrap;z-index:1}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{background-color:#000;overflow-y:scroll;cursor:default;position:absolute;right:0;left:0;top:0;bottom:0}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;left:0;top:0}.xterm .xterm-scroll-area{visibility:hidden}.xterm-char-measure-element{display:inline-block;visibility:hidden;position:absolute;top:0;left:-9999em;line-height:normal}.xterm.enable-mouse-events{cursor:default}.xterm.xterm-cursor-pointer,.xterm .xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility:not(.debug),.xterm .xterm-message{position:absolute;left:0;top:0;bottom:0;right:0;z-index:10;color:transparent;pointer-events:none}.xterm .xterm-accessibility-tree:not(.debug) *::selection{color:transparent}.xterm .xterm-accessibility-tree{-webkit-user-select:text;user-select:text;white-space:pre}.xterm .live-region{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{text-decoration:double underline}.xterm-underline-3{text-decoration:wavy underline}.xterm-underline-4{text-decoration:dotted underline}.xterm-underline-5{text-decoration:dashed underline}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:overline underline}.xterm-overline.xterm-underline-2{text-decoration:overline double underline}.xterm-overline.xterm-underline-3{text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;position:absolute;top:0;right:0;pointer-events:none}.xterm-decoration-top{z-index:2;position:relative}:root{--bg: #f7f3ee;--bg-2: #ffffff;--bg-3: #faf9f5;--accent: #ad7a41;--accent-2: #966933;--fg: #1c1b18;--muted: #6e6a62;--faint: #9a958b;--border: #e7e4dd;--border-2: #ddd9d0;--good: #2f9e44;--good-text: #2b8a3e;--warn: #bd7d10;--info: #2f6df0;--danger: #c0392b;--header-bg: #362005;--header-border: #543a18;--header-fg: #e9dcc0;--header-muted: #b39d76;--header-tag: #c9b48c;--sans: "Hanken Grotesk", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--sans);background:var(--bg);color:var(--fg);font-size:14px;-webkit-font-smoothing:antialiased}::selection{background:#ad7a412e}a{color:var(--accent-2);text-decoration:none}a:hover{text-decoration:underline}code{font-family:var(--mono);font-size:12px;background:#f3ece0;color:var(--accent-2);padding:1px 5px;border-radius:3px}pre{font-family:var(--mono);font-size:12px;background:var(--bg-3);border:1px solid var(--border);color:var(--muted);padding:10px;border-radius:7px;white-space:pre-wrap;word-break:break-word;max-height:320px;overflow:auto;margin:4px 0 0}.app{display:block}.app-header{display:flex;align-items:center;gap:30px;padding:0 22px;height:58px;border-bottom:1px solid var(--header-border);background:var(--header-bg);position:fixed;top:0;left:0;right:0;z-index:100}.brand{display:flex;align-items:center;gap:11px;color:var(--header-fg);font-weight:800;font-size:17px;letter-spacing:-.02em;white-space:nowrap}.brand:hover{text-decoration:none;color:var(--header-fg)}.brand-logo{width:34px;height:34px;border-radius:8px;display:block}.brand-tag{font:500 10px/1 var(--mono);color:var(--header-tag);border:1px solid rgba(229,212,177,.28);padding:3px 5px;border-radius:5px}.header-actions{margin-left:auto;display:flex;align-items:center;gap:12px}.app-main{padding-top:58px}.signin-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:32px;background:var(--bg, #f7f7f8)}.nav-tabs{display:flex;align-items:stretch;gap:2px;height:100%}.nav-tab{display:flex;align-items:center;gap:8px;padding:0 14px;color:var(--header-muted);font-size:13.5px;font-weight:600;border-bottom:2px solid transparent;text-decoration:none;transition:color .15s,border-color .15s;white-space:nowrap}.nav-tab:hover{color:var(--header-fg);text-decoration:none}.nav-tab.active{color:var(--header-fg);border-bottom-color:var(--accent)}.btn-sm{padding:6px 11px;font-size:12px}.page{padding:40px 28px 72px;max-width:1800px;width:100%;margin:0 auto}.muted{color:var(--muted)}.small{font-size:12px}.err{color:var(--danger);padding:8px 0}.btn{background:var(--bg-2);border:1px solid var(--border-2);color:#3a3630;padding:8px 15px;border-radius:8px;cursor:pointer;font:600 13px var(--sans);white-space:nowrap;transition:background .12s,border-color .12s,color .12s}.btn:hover{background:var(--bg-3);border-color:#c4bfb3;color:var(--fg)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:700;box-shadow:0 1px 2px #1c1b181a}.btn-primary:hover{background:var(--accent-2);border-color:var(--accent-2);color:#fff}.btn.danger{background:var(--bg-2);border-color:#c0392b4d;color:var(--danger)}.btn.danger:hover{background:#c0392b0f;border-color:var(--danger);color:var(--danger)}.btn-icon{background:transparent;border:1px solid transparent;color:var(--faint);cursor:pointer;padding:4px 8px;border-radius:6px;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center}.btn-icon:hover{background:#f4f2ec;color:#5f5b54}.btn-icon.danger:hover{background:#c0392b14;color:var(--danger)}.workflow-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}.workflow-list li{display:flex;align-items:center;gap:20px;padding:18px 20px;background:var(--bg-2);border:1px solid var(--border);border-radius:14px;box-shadow:0 1px 2px #1c1b180a;transition:border-color .12s,box-shadow .12s}.workflow-list li:hover{border-color:#d4cfc4;box-shadow:0 2px 8px #1c1b180f}.wf-info{min-width:190px;flex-shrink:0}.wf-name{font-size:16px;font-weight:700;letter-spacing:-.01em}.wf-meta{font:500 11.5px var(--mono);color:var(--faint);margin-top:5px}.actions{display:flex;gap:9px;flex-shrink:0}.wf-chips{display:flex;flex-wrap:wrap;align-items:center;gap:7px;flex:1}.wf-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 9px;border-radius:7px;font:500 12px var(--sans);border:1px solid #e7ddcb;background:#f3ece0;color:#74706a}.wf-chip .dot{width:5px;height:5px;border-radius:50%;background:#a9a08c}.wf-chip.llm{color:var(--accent-2);background:#ad7a411f;border-color:#ad7a414d}.wf-chip.llm .dot{background:var(--accent)}.editor-header{display:flex;align-items:center;gap:14px;margin-bottom:24px}.title-input{background:transparent;border:none;border-bottom:1px solid transparent;color:var(--fg);font:800 24px var(--sans);letter-spacing:-.02em;flex:1;padding:4px 0}.title-input:focus{outline:none;border-bottom-color:var(--accent)}.editor-slug-row{display:flex;align-items:center;gap:10px;margin:-12px 0 20px}.editor-slug-label{font-size:13px;color:var(--fg);white-space:nowrap}.editor-slug-input{background:var(--bg-2);border:1px solid var(--border);border-radius:6px;color:var(--fg);font:500 13px var(--mono);padding:5px 9px;min-width:240px}.editor-slug-input:focus{outline:none;border-color:var(--accent)}.stage-list{list-style:none;padding:0;margin:0 0 16px}.stage-card{background:var(--bg-2);border:1px solid var(--border);border-radius:14px;padding:16px 18px;margin-bottom:14px;display:flex;flex-direction:column;gap:8px;box-shadow:0 1px 2px #1c1b180a}.stage-card-header{display:flex;align-items:center;gap:11px;margin-bottom:6px}.stage-card-header .stage-num{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:7px;background:#f4f2ec;border:1px solid #e2dfd6;font:600 12px var(--mono);color:#74706a;flex-shrink:0}.stage-name{flex:1;background:transparent;border:1px solid transparent;color:var(--fg);font:600 15px var(--sans);padding:5px 7px;border-radius:7px}.stage-name:focus{outline:none;border-color:#e2dfd6;background:var(--bg-3)}input,textarea,select{background:var(--bg-3);border:1px solid var(--border);color:var(--fg);padding:9px 11px;border-radius:8px;font-size:13px;font-family:inherit}.entry.stage-failed{border-left:3px solid var(--danger);background:#ef44440f}.entry.stage-failed>summary{cursor:pointer;display:flex;align-items:center;gap:10px;list-style:none}.entry.stage-failed>summary::-webkit-details-marker{display:none}.entry.stage-failed>summary .role{flex-shrink:0;color:var(--danger)}.entry.stage-failed .stage-failed-preview{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:12px var(--mono);color:var(--danger);opacity:.85}.entry.stage-failed .stage-failed-body{margin-top:8px}.entry.stage-failed .stage-failed-body pre{max-height:320px}.entry.stage-failed .stage-failed-label{font:600 9.5px var(--mono);letter-spacing:.08em;text-transform:uppercase;margin:8px 0 2px}.entry.stage-marker.tone-fail{color:var(--danger)}.entry.stage-marker.tone-jump{color:var(--warn)}.entry.stage-marker.tone-skip{color:var(--faint)}.failure-policy{border:1px dashed var(--border);border-radius:4px;padding:6px 10px;margin-top:6px}.failure-policy>summary{cursor:pointer;-webkit-user-select:none;user-select:none;list-style:none}.failure-policy>summary:before{content:"▸";display:inline-block;width:14px;color:var(--muted)}.failure-policy[open]>summary:before{content:"▾"}.failure-policy-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px;padding:8px 0 4px}.failure-policy-grid>label{display:flex;flex-direction:column;gap:4px}.failure-policy-grid>label.allow-failure{grid-column:1 / -1;flex-direction:row;align-items:center;gap:6px}.failure-policy-grid>label.allow-failure>input[type=checkbox]{width:14px;height:14px;padding:0}label.allow-premature-exit{display:flex;flex-direction:row;align-items:flex-start;gap:6px;margin-top:4px}label.allow-premature-exit>input[type=checkbox]{width:14px;height:14px;padding:0;margin-top:2px}.tools-picker{border:1px dashed var(--border);border-radius:4px;padding:6px 10px;margin-top:6px}.tools-picker>summary{cursor:pointer;-webkit-user-select:none;user-select:none;list-style:none}.tools-picker>summary:before{content:"▸";display:inline-block;width:14px;color:var(--muted)}.tools-picker[open]>summary:before{content:"▾"}.tools-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px 12px;padding:8px 0 4px}.tools-grid>label{display:flex;flex-direction:row;align-items:center;gap:6px}.tools-grid>label>input[type=checkbox]{width:14px;height:14px;padding:0}.tools-grid>.label-hint{grid-column:1 / -1}input:focus,textarea:focus,select:focus{outline:none;border-color:#d4cfc4}textarea.code{font:13px/1.6 var(--mono);color:#44413b;border-radius:9px;padding:11px 12px}:root{--rail-width: 320px;--header-height: 58px}.runner{position:relative}.rail{position:fixed;top:var(--header-height);bottom:0;left:0;width:var(--rail-width);border-right:1px solid var(--border);padding:22px 20px;background:#fbfaf7;overflow-y:auto;box-shadow:0 1px 2px #1c1b180a;z-index:10}.rail h2{margin:0 0 14px;font-size:16px;font-weight:700;letter-spacing:-.01em}.run-meta{background:var(--bg-2);border:1px solid var(--border);border-radius:12px;padding:14px;margin-bottom:24px;display:flex;flex-direction:column;gap:9px;font-size:12px;color:var(--muted);box-shadow:0 1px 2px #1c1b180a}.run-meta code{font:500 11.5px var(--mono);color:#5f5b54;background:transparent;padding:0}.run-cost{border-top:1px solid var(--border);padding-top:10px;margin-top:2px;display:flex;flex-direction:column;gap:8px}.run-cost-headline{display:flex;align-items:center;justify-content:space-between}.run-cost-total{font:600 13px var(--mono);color:var(--fg)}.run-cost-breakdown{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:3px}.run-cost-breakdown li{display:flex;justify-content:space-between;gap:8px;font:500 11px var(--mono);color:var(--muted)}.run-cost-label{color:var(--faint)}.run-cost-value{color:var(--fg);text-align:right}.run-cost-sub{color:var(--faint)}.run-cost-stages{margin-top:4px;display:flex;flex-direction:column;gap:2px}.run-cost-stage{display:flex;justify-content:space-between;font:500 11px var(--mono);color:var(--muted);gap:8px}.run-cost-stage-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.run-cost-stage-value{color:var(--fg);flex-shrink:0}.run-cost-total{background:transparent;border:none;padding:0;font:600 13px var(--mono);color:var(--fg);cursor:pointer;font:inherit}.run-cost-total:hover{text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:3px}.run-cost-stage{background:transparent;border:none;width:100%;text-align:left;display:flex;justify-content:space-between;font:500 11px var(--mono);color:var(--muted);gap:8px;cursor:pointer;border-radius:4px;padding:1px 4px}.run-cost-stage:hover{background:var(--bg-3);color:var(--fg)}.stage-cost-chip{background:#fff7ec;border:1px solid rgba(173,122,65,.35);color:var(--accent-2);font:600 11px var(--mono);padding:1px 6px;border-radius:999px;cursor:pointer;flex-shrink:0;margin-left:auto}.stage-cost-chip:hover{background:#fff1dc}.stage-cost-chip--attempt{font-size:10px;padding:0 5px;background:var(--bg-3);border-color:var(--border-2);color:var(--muted)}.stage-cost-chip--attempt:hover{background:var(--bg-2)}.stage-cost-bar{position:relative;display:block;margin:4px 0 6px 26px;height:8px;border-radius:4px;background:#1c1b1814;overflow:hidden}.stage-cost-bar-fill{position:absolute;inset:0 auto 0 0;background:var(--good);border-radius:4px;transition:width .2s ease-out,background .2s ease-out}.stage-cost-bar--warn .stage-cost-bar-fill{background:var(--warn)}.stage-cost-bar--over .stage-cost-bar-fill{background:var(--danger)}.stage-cost-bar--idle .stage-cost-bar-fill{display:none}.stage-cost-bar-label{display:block;margin:4px 0 0 26px;font:500 10.5px var(--mono);letter-spacing:.04em;color:var(--faint)}.stage-cost-bar-label--warn{color:var(--warn)}.stage-cost-bar-label--over{color:var(--danger)}.cost-popover{position:absolute;z-index:30;width:420px;max-width:calc(100vw - 24px);background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:0 12px 32px #1c1b1829,0 2px 6px #1c1b180f;padding:12px 14px 10px;display:flex;flex-direction:column;gap:10px;font:500 12px var(--sans);color:var(--fg);cursor:default}.cost-popover-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.cost-popover-title{font:600 11px var(--mono);letter-spacing:.07em;text-transform:uppercase;color:var(--faint)}.cost-popover-total{font:700 18px var(--mono);color:var(--fg);letter-spacing:-.02em}.cost-popover-body{display:grid;grid-template-columns:128px 1fr;gap:14px;align-items:center}.cost-popover-pie{display:block}.cost-popover-legend{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;font:500 11px var(--mono)}.cost-popover-legend li{display:grid;grid-template-columns:10px 1fr auto;gap:8px;align-items:center;color:var(--muted)}.cost-popover-swatch{width:10px;height:10px;border-radius:2px}.cost-popover-cat{color:var(--fg);white-space:nowrap}.cost-popover-figures{display:grid;grid-template-columns:auto auto auto;gap:6px;color:var(--muted);text-align:right;white-space:nowrap}.cost-popover-tokens{font-variant-numeric:tabular-nums;white-space:nowrap}.cost-popover-cost{font-weight:600;color:var(--fg);font-variant-numeric:tabular-nums;white-space:nowrap}.cost-popover-pct{color:var(--faint);font-variant-numeric:tabular-nums;min-width:34px;white-space:nowrap}.cost-popover-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:8px;border-top:1px solid var(--border-2);font:500 11px var(--mono);color:var(--muted)}.cost-popover-tokens-total{color:var(--muted)}.cost-popover-cache-hit{background:#e7f6ee;color:var(--good-text);border-radius:999px;padding:2px 9px;font:600 11px var(--mono)}.cost-popover-cache-hit--idle{background:var(--bg-3);color:var(--faint)}.cost-cell{font:500 12px var(--mono);color:var(--fg);text-align:right;font-variant-numeric:tabular-nums}.status-running{color:var(--info)}.status-provisioning{color:var(--muted)}.status-awaiting_input{color:var(--warn)}.status-completed{color:var(--good-text)}.status-error{color:var(--danger)}.status-idle{color:var(--info)}.run-session{background:var(--bg-2);border:1px solid var(--border);border-radius:12px;padding:14px;margin-bottom:24px;display:flex;flex-direction:column;gap:9px;font-size:12px;color:var(--muted);box-shadow:0 1px 2px #1c1b180a}.run-session-heading{font:600 10.5px var(--mono);letter-spacing:.07em;text-transform:uppercase;color:var(--faint)}.run-session-note{font:500 11.5px var(--mono);color:var(--muted);display:inline-flex;align-items:center;gap:7px}.run-session-live{color:var(--good-text)}.run-session-dot{width:7px;height:7px;border-radius:50%;background:currentColor;animation:session-pulse 2s ease-in-out infinite}@keyframes session-pulse{0%,to{opacity:1}50%{opacity:.35}}.rail-shell{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--bg-2);color:var(--fg);border:1px solid var(--border-2);transition:background-color 80ms ease,border-color 80ms ease}.rail-shell:hover:not(:disabled){background:var(--bg-3);border-color:var(--accent);color:var(--accent-2)}.shell-panel{position:fixed;left:var(--rail-width);right:0;bottom:0;z-index:30;height:440px;display:flex;flex-direction:column;background:#1c1917;border-top:1px solid var(--border);box-shadow:0 -4px 24px #1c1b182e}.shell-panel-header{display:flex;align-items:center;justify-content:space-between;padding:8px 14px;background:#292524;border-bottom:1px solid #44403c}.shell-panel-title{font:600 11px var(--mono);letter-spacing:.07em;text-transform:uppercase;color:#d6d3d1;display:inline-flex;align-items:center;gap:10px}.shell-panel-state{font:500 10.5px var(--mono);text-transform:none;letter-spacing:.02em;color:#a8a29e}.shell-state-connected{color:#4ade80}.shell-state-error{color:#f87171}.shell-panel-error{padding:8px 14px;font:500 12px var(--mono);color:#fca5a5;background:#f8717114;border-bottom:1px solid #44403c}.shell-panel-term{flex:1;min-height:0;padding:8px 4px 8px 12px}.shell-panel-term .xterm{height:100%}.stage-rail{list-style:none;padding:0;margin:0}.stage-rail-heading{font:600 10.5px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--faint);margin-bottom:16px}.stage-step{display:flex;flex-direction:column;padding-bottom:14px}.stage-step-main{display:flex;gap:13px;align-items:stretch;text-align:left;background:none;border:0;font:inherit;color:inherit;width:100%;cursor:pointer;border-radius:7px;padding:4px 6px 4px 4px;margin:-4px -6px 0 -4px;transition:background-color 80ms ease}.stage-step-main:hover{background:#1c1b180b}.stage-step-main:focus-visible{outline:2px solid rgba(47,109,240,.55);outline-offset:1px}.stage-step-rail{display:flex;flex-direction:column;align-items:center}.stage-step-main .dot{width:14px;height:14px;border-radius:50%;background:#eceae3;border:2px solid #d2cdc2;flex-shrink:0;margin-top:2px;box-sizing:border-box}.stage-step-main .connector{width:2px;flex:1;min-height:22px;background:#e2dfd6;margin:4px 0}.stage-step:last-child .stage-step-main .connector,.stage-step-main:has(+.stage-step-subs) .connector{background:transparent}.stage-step.done .stage-step-main .dot{background:var(--good);border-color:var(--good)}.stage-step.active .stage-step-main .dot{background:var(--info);border-color:var(--info);animation:pulse 1.6s ease-in-out infinite}.stage-step.awaiting .stage-step-main .dot{background:var(--warn);border-color:var(--warn)}.stage-step.failed .stage-step-main .dot{background:var(--danger);border-color:var(--danger);animation:failPulse 1s ease-in-out infinite}.stage-step.skipped .stage-step-main .dot{background:transparent;border-color:var(--faint)}.stage-step.skipped .stage-step-name{color:var(--faint);text-decoration:line-through}.stage-step.jump-target .stage-step-name{color:var(--warn)}.stage-step.jump-target .stage-step-main .dot{box-shadow:0 0 0 3px #bd7d102e}.stage-step-content{display:flex;flex-direction:column;min-width:0}.stage-step-name{font-size:13.5px;font-weight:600;color:var(--fg)}.stage-step.pending .stage-step-name{color:var(--faint)}.stage-step-type{font:500 11px var(--mono);color:var(--faint);margin-top:2px}.stage-step-subs{list-style:none;margin:4px 0 0;padding:0 0 0 36px;display:flex;flex-direction:column;gap:2px}.stage-step-sub{display:block;position:relative}.stage-step-sub-btn{display:flex;align-items:center;gap:8px;width:100%;text-align:left;background:none;border:0;padding:3px 6px;margin:0;font:inherit;color:var(--muted);cursor:pointer;border-radius:5px;transition:background-color 80ms ease,color 80ms ease}.stage-step-sub-btn:hover{background:#1c1b180b;color:var(--fg)}.stage-step-sub-btn:focus-visible{outline:2px solid rgba(47,109,240,.55);outline-offset:1px}.stage-step-sub-dot{width:7px;height:7px;border-radius:50%;background:#d6d2c7;border:1px solid #c4bfb3;flex-shrink:0;position:relative;top:-1px}.stage-step-sub-label{font:500 11.5px var(--mono);letter-spacing:.01em}[data-stage-id]{scroll-margin-top:calc(var(--header-height) + 8px)}@keyframes failPulse{0%,to{box-shadow:0 0 #c0392b73}50%{box-shadow:0 0 0 6px #c0392b00}}@keyframes pulse{0%,to{box-shadow:0 0 #2f6df066}50%{box-shadow:0 0 0 6px #2f6df000}}@keyframes livePulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.8)}}.task-desc-head{position:fixed;top:var(--header-height);left:var(--rail-width);right:0;background:#fffefb;border-bottom:1px solid var(--border);padding:0 20px;z-index:6;box-shadow:0 1px #1c1b1805;overflow:hidden}.task-desc-head-inner{max-width:var(--chat-thread-max, 1200px);margin:0 auto;display:flex;align-items:center;gap:12px;min-width:0;height:46px}.task-desc-head.is-expanded{max-height:40vh;overflow-y:auto}.task-desc-head.is-expanded .task-desc-head-inner{height:auto;min-height:46px;padding:8px 0;align-items:flex-start}.task-desc-head-label{flex-shrink:0;font:600 10.5px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}.task-desc-head-body{flex:1;min-width:0;font-size:13.5px;color:var(--fg)}.task-desc-head-body .md>:first-child{margin-top:0}.task-desc-head-body .md>:last-child{margin-bottom:0}.task-desc-head-body .md p{margin:0}.task-desc-head-body.task-desc-clamped{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-height:1.5em}.task-desc-head-body.task-desc-clamped :is(p,pre,ul,ol,h1,h2,h3,h4,blockquote){display:inline;white-space:nowrap;margin:0}.task-desc-toggle{flex-shrink:0;padding:0;background:none;border:none;cursor:pointer;font:600 11.5px var(--sans);color:var(--accent-2)}.task-desc-toggle:hover{text-decoration:underline}.transcript-pane{margin-left:var(--rail-width);padding-top:46px;padding-bottom:180px;background:var(--bg);min-width:0}.transcript{padding:16px 20px;display:flex;flex-direction:column;gap:7px;position:relative}.load-older-sentinel{height:1px;flex-shrink:0}.load-older-status{display:flex;justify-content:center;padding:4px 0 8px;font:12px var(--sans);color:var(--faint)}.failure-analysis{margin:14px 20px 0;padding:12px 14px;background:var(--bg-2);border:1px solid var(--border);border-left:3px solid var(--danger);border-radius:9px;box-shadow:0 1px 2px #1c1b1808;flex-shrink:0;max-height:38vh;overflow:auto}.failure-analysis-header{display:flex;align-items:center;gap:9px;margin-bottom:8px}.failure-analysis-title{font:600 10.5px var(--mono);letter-spacing:.07em;text-transform:uppercase;color:var(--danger)}.failure-analysis-glyph{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;background:#c0392b1a;color:var(--danger);font:700 11px var(--mono);flex-shrink:0}.failure-analysis.complete .failure-analysis-glyph{background:#ad7a411f;color:var(--accent)}.failure-analysis-body{font-size:13.5px;color:var(--fg)}.entry.failure-analysis .md{white-space:normal}.completion-summary{margin:14px 20px 0;padding:12px 14px;background:var(--bg-2);border:1px solid var(--border);border-left:3px solid var(--good);border-radius:9px;box-shadow:0 1px 2px #1c1b1808;flex-shrink:0;max-height:38vh;overflow:auto}.completion-summary-header{display:flex;align-items:center;gap:9px;margin-bottom:8px}.completion-summary-title{font:600 10.5px var(--mono);letter-spacing:.07em;text-transform:uppercase;color:var(--good-text)}.completion-summary-glyph{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;background:#2f9e441a;color:var(--good-text);font:700 11px var(--mono);flex-shrink:0}.completion-summary.complete .completion-summary-glyph{background:#2f9e4429;color:var(--good-text)}.completion-summary.error .completion-summary-glyph{background:#c0392b1a;color:var(--danger)}.completion-summary-body{font-size:13.5px;color:var(--fg)}.entry.completion-summary .md{white-space:normal}.entry.completion-summary .md a{color:var(--accent-2)}.entry-meta{display:inline-flex;align-items:center;gap:6px;margin-left:auto;font:500 10.5px var(--mono);color:var(--faint);letter-spacing:.04em;white-space:nowrap;flex-shrink:0}.entry>.entry-meta{display:flex;justify-content:flex-end;margin:0 0 4px}.entry-meta-stage{text-transform:uppercase;letter-spacing:.08em;color:var(--accent-2)}.entry-meta-sep{color:var(--faint)}.entry-meta-time{font-variant-numeric:tabular-nums}.entry.stage-marker .stage-marker-label{flex-shrink:0}.entry.stage-marker .stage-marker-time{margin-left:4px;color:var(--faint)}.entry.script-log-wrap{background:var(--bg-3);border:1px solid var(--border);border-left:3px solid #cdc8bd;border-radius:7px;padding:6px 10px}.entry.script-log-wrap.stderr{border-left-color:var(--danger)}.entry.script-log-wrap>.entry-meta{margin-bottom:4px}.entry.script-log-wrap>pre.script-log{margin:0;background:transparent;border:none;padding:0}.entry.script-log-wrap>pre.script-log.stderr{color:var(--danger)}.scroll-to-bottom{position:fixed;bottom:110px;right:24px;width:36px;height:36px;border-radius:50%;background:var(--bg-2);border:1px solid var(--border-2);color:var(--accent-2);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 14px #1c1b1829;transition:transform .12s,background .12s,border-color .12s;z-index:20}.scroll-to-bottom:hover{transform:translateY(-1px);background:var(--bg-3);border-color:var(--accent);color:var(--accent)}.scroll-to-bottom:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.chat-thread .scroll-to-bottom{bottom:300px}.entry{background:var(--bg-2);border:1px solid var(--border);border-radius:9px;padding:9px 13px;box-shadow:0 1px 2px #1c1b1808}.entry .role{font:600 10px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--faint);margin-bottom:4px}.entry .content{white-space:pre-wrap;word-break:break-word;font-size:13.5px;line-height:1.55;color:#33302b}.entry.assistant{border-left:3px solid var(--accent)}.entry.reasoning{border-left:3px dashed var(--warn);background:var(--bg-2)}.entry.reasoning>summary{cursor:pointer;list-style:none;color:var(--faint);font:600 10px var(--mono);letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px;display:flex;align-items:center;gap:8px}.entry.reasoning>summary::-webkit-details-marker{display:none}.entry.reasoning .reasoning-content{color:var(--faint);font-style:italic;font-size:12.5px}.entry.thinking{display:flex;align-items:center;gap:10px;padding:9px 13px;background:var(--bg-2);border:1px solid var(--border);border-left:3px solid var(--info);border-radius:9px;box-shadow:0 1px 2px #1c1b1808;font:500 12.5px var(--mono);color:var(--muted)}.thinking-dot{width:8px;height:8px;border-radius:50%;background:var(--info);animation:livePulse 1.4s ease-in-out infinite;flex-shrink:0}.thinking-label{color:var(--muted)}.thinking-elapsed{margin-left:auto;color:var(--faint);font-variant-numeric:tabular-nums}.assistant-body{display:flex;flex-direction:column;align-items:flex-start}.assistant-body .content{width:100%}.md{white-space:normal}.md>:first-child{margin-top:0}.md>:last-child{margin-bottom:0}.md p{margin:0 0 8px}.md ul,.md ol{margin:0 0 8px;padding-left:1.35em}.md li{margin:2px 0}.md li>p{margin:0}.md h1,.md h2,.md h3,.md h4{margin:12px 0 6px;font-weight:700;line-height:1.3;letter-spacing:-.01em}.md h1{font-size:17px}.md h2{font-size:15.5px}.md h3{font-size:14px}.md h4{font-size:13.5px}.md a{color:var(--accent-2)}.md blockquote{margin:0 0 8px;padding:2px 0 2px 12px;border-left:3px solid var(--border-2);color:var(--muted)}.md hr{border:none;border-top:1px solid var(--border);margin:12px 0}.md pre{margin:0 0 8px}.md table{border-collapse:collapse;margin:0 0 8px;font-size:12.5px;display:block;overflow-x:auto}.md th,.md td{border:1px solid var(--border-2);padding:4px 8px;text-align:left}.md th{background:var(--bg-3);font-weight:600}.md img{max-width:100%}.md-clamped{max-height:4.7em;overflow:hidden;-webkit-mask-image:linear-gradient(180deg,#000 62%,transparent);mask-image:linear-gradient(180deg,#000 62%,transparent)}.md-toggle{margin-top:5px;padding:0;background:none;border:none;cursor:pointer;font:600 11.5px var(--sans);color:var(--accent-2)}.md-toggle:hover{text-decoration:underline}.entry.user{border-left:3px solid var(--accent-2)}.entry.awaiting{border-left:3px solid var(--warn);background:#bd7d100f}.entry.awaiting-approval{border-left-color:#957018;background:#95701812}.tool-name{font:600 12.5px var(--mono);color:var(--accent-2)}.entry.tool-pair{padding:6px 12px;border-left:3px solid #cdc8bd;background:var(--bg-3);box-shadow:none}.entry.tool-pair>summary{cursor:pointer;display:flex;align-items:center;gap:8px;font:12px var(--mono);list-style:none;white-space:nowrap;overflow:hidden}.entry.tool-pair>summary::-webkit-details-marker{display:none}.entry.tool-pair .tool-glyph{flex-shrink:0;width:14px;text-align:center;color:var(--accent-2);font-weight:700}.entry.tool-pair .tool-name{flex-shrink:0;font:600 12px var(--mono);color:var(--accent-2)}.entry.tool-pair .tool-arg{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;color:#5f5b54}.entry.tool-pair .tool-arg.mono{font-family:var(--mono)}.entry.tool-pair .tool-res-preview{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;color:var(--faint);text-align:right}.entry.tool-pair .tool-res-preview.is-err{color:var(--danger)}.tool-pair-body{margin-top:6px}.tool-section-label{font:600 9.5px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--faint);margin:8px 0 2px}.tool-pair-body pre{max-height:260px}.tool-pair-body pre.is-err{color:var(--danger);border-color:#c0392b4d}.entry.system summary{cursor:pointer;color:var(--faint);font:500 12px var(--mono);display:flex;align-items:center;gap:8px}.entry.system{padding:10px 14px}.entry.stage-marker{text-align:center;background:transparent;border:none;box-shadow:none;color:var(--faint);font:500 12px var(--mono);padding:8px 0;letter-spacing:.04em;display:flex;align-items:center;gap:12px}.entry.stage-marker:before,.entry.stage-marker:after{content:"";flex:1;height:1px;background:var(--border)}.entry.stage-marker.done{color:var(--good-text)}.entry.stage-marker.active{color:var(--info);font-weight:600}.entry.err{border-left:3px solid var(--danger);background:#c0392b0f;color:var(--danger)}.composer{position:fixed;left:var(--rail-width);right:0;bottom:0;border-top:1px solid var(--border);padding:14px 18px;background:#fbfaf7;display:flex;flex-direction:column;gap:11px;z-index:5;box-shadow:0 -2px 12px #1c1b180a}.composer textarea{resize:vertical;background:var(--bg-2);border:1px solid #e0ddd4;border-radius:11px;font:14px/1.55 var(--sans);padding:12px 14px}.composer textarea:focus{border-color:#c4bfb3}.composer-actions{display:flex;gap:9px;justify-content:flex-end;align-items:center}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:26px}.page-heading h1{margin:0;font-size:27px;font-weight:800;letter-spacing:-.025em}.page-heading .page-subtitle{margin:7px 0 0;color:var(--muted);font-size:14px}.page-heading-actions{display:flex;align-items:center;gap:10px}.stat-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:28px}.stat-tile{position:relative;overflow:hidden;background:var(--bg-2);border:1px solid var(--border);border-radius:14px;padding:18px 20px;box-shadow:0 1px 2px #1c1b180a}.stat-tile .bar{position:absolute;left:0;top:16px;bottom:16px;width:3px;border-radius:3px}.stat-tile .label{font:600 11px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#8a857b}.stat-tile .value{font-size:34px;font-weight:800;letter-spacing:-.03em;margin-top:6px}.tasks-section{margin-bottom:34px}.tasks-section-heading{display:flex;align-items:center;gap:10px;margin:0 0 14px;font:600 12px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--accent-2)}.tasks-section-heading:after{content:"";flex:1;height:1px;background:var(--border)}.tasks-section--muted .tasks-section-heading{color:var(--faint)}.tasks-section-empty{padding:12px 0}.tasks-table--completed .tasks-table-row{opacity:.7}.tasks-table--completed .tasks-table-row:hover{opacity:1}.tasks-pagination-footer{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 0 6px}.tasks-pagination-sentinel{width:100%;height:1px;pointer-events:none}.tasks-table{border:1px solid var(--border);border-radius:14px;overflow:hidden;background:var(--bg-2);box-shadow:0 1px 2px #1c1b180a}.tasks-table-header,.tasks-table-row{display:grid;grid-template-columns:92px 150px 124px minmax(110px,220px) 1fr 76px 84px 104px;align-items:center;gap:14px;padding:14px 18px}.tasks-table-header{background:var(--bg-3);font:600 10.5px var(--mono);letter-spacing:.07em;text-transform:uppercase;color:var(--faint);border-bottom:1px solid #ece9e2;padding:11px 18px}.tasks-table-row{background:var(--bg-2);border-bottom:1px solid #f0eee7;transition:background .1s}.tasks-table-row:last-child{border-bottom:none}.tasks-table-row:hover{background:var(--bg-3)}.tasks-table-row .run-id code{font:500 12px var(--mono);background:transparent;color:#74706a;padding:0}.tasks-table-row .run-id{display:inline-flex;align-items:center;gap:8px}.chain-badge{display:inline-flex;align-items:center;gap:3px;padding:2px 7px 2px 4px;border-radius:20px;background:#ad7a411a;border:1px solid rgba(173,122,65,.3);color:var(--accent-2);font:600 10.5px var(--mono);cursor:pointer;transition:background-color 80ms ease,border-color 80ms ease,transform 80ms ease;line-height:1}.chain-badge:hover{background:#ad7a412e;border-color:var(--accent)}.chain-badge svg{transition:transform .12s ease}.chain-badge--expanded svg{transform:rotate(-180deg)}.chain-badge-count{letter-spacing:.02em}.tasks-table-row--chain-ancestor{background:var(--bg-3);border-bottom-color:#e7e4dd}.tasks-table-row--chain-ancestor:hover{background:var(--bg-3);filter:brightness(.985)}.tasks-table-row--chain-ancestor .run-id code{color:#98928a}.chain-ancestor-mark{display:inline-block;letter-spacing:0;margin-left:2px}.task-input-cell{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row-actions{display:flex;align-items:center;gap:6px;justify-content:flex-end}.row-actions .btn-sm{background:var(--bg-2);color:var(--accent-2);border:1px solid rgba(173,122,65,.4);border-radius:7px;font:600 12px var(--sans);padding:6px 11px;box-shadow:none}.row-actions .btn-sm:hover{background:#ad7a4114;border-color:var(--accent);color:var(--accent-2)}.status-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 9px;border-radius:20px;font-size:11.5px;font-weight:600}.status-pill:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.status-pill.status-running{background:#2f6df01a;color:var(--info)}.status-pill.status-provisioning{background:#7878781f;color:var(--muted)}.status-pill.status-provisioning:before{animation:status-pulse 1.4s ease-in-out infinite}@keyframes status-pulse{0%,to{opacity:.35}50%{opacity:1}}.status-pill.status-awaiting_input{background:#bd7d101f;color:var(--warn)}.status-pill.status-completed{background:#2f9e441f;color:var(--good-text)}.status-pill.status-error{background:#c0392b1a;color:var(--danger)}.model-picker{position:relative;width:100%}.model-picker input{width:100%}.model-picker-dropdown{position:absolute;top:100%;left:0;right:0;background:var(--bg-2);border:1px solid var(--border);border-radius:8px;z-index:100;max-height:220px;overflow-y:auto;list-style:none;margin:2px 0 0;padding:0;box-shadow:0 4px 16px #1c1b1814}.model-picker-option{padding:8px 12px;cursor:pointer;font-size:13px;font-family:var(--mono);color:var(--fg)}.model-picker-option:hover,.model-picker-option.active{background:var(--bg-3);color:var(--accent-2)}.trigger-picker{position:relative;width:100%}.trigger-picker input{width:100%}.trigger-picker-dropdown{position:absolute;top:100%;left:0;right:0;background:var(--bg-2);border:1px solid var(--border);border-radius:8px;z-index:100;max-height:280px;overflow-y:auto;list-style:none;margin:2px 0 0;padding:4px 0;box-shadow:0 4px 16px #1c1b1814}.trigger-picker-option{padding:9px 12px;cursor:pointer;color:var(--fg);border-radius:0}.trigger-picker-option:hover,.trigger-picker-option.active{background:var(--bg-3)}.trigger-picker-option-label{font-size:13.5px;font-weight:600;letter-spacing:-.005em}.trigger-picker-option-desc{margin-top:2px;font-size:12px;color:var(--muted);line-height:1.4}.trigger-picker-empty{padding:12px;color:var(--muted);font-size:12.5px;text-align:center}.empty-state{text-align:center;padding:64px 24px;color:var(--muted)}.empty-icon{font-size:40px;margin-bottom:12px}.empty-state p{margin:4px 0}.integration-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;margin-bottom:32px}.integration-tile{display:flex;flex-direction:column;gap:12px;background:var(--bg-2);border:1px solid var(--border-2);border-radius:12px;padding:18px}.integration-tile-head{display:flex;align-items:center;gap:12px}.integration-tile-logo{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;background:var(--bg-3);border:1px solid var(--border);color:var(--fg);flex:none}.integration-tile-title{display:flex;flex-direction:column;gap:2px}.integration-tile-title h3{margin:0;font-size:15px}.integration-status{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}.integration-status:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--border-2)}.integration-status.is-on{color:#2f7d4f}.integration-status.is-on:before{background:#2f9e5f}.integration-status.is-off:before{background:var(--border-2)}.integration-tile-desc{margin:0;font-size:13px;line-height:1.45;color:var(--muted)}.integration-tile-detail{display:flex;flex-direction:column;gap:6px;padding:10px 12px;background:var(--bg-3);border:1px solid var(--border);border-radius:8px;font-size:13px}.integration-detail-row{display:flex;justify-content:space-between;gap:12px}.integration-repo-list{margin:4px 0 0;padding-left:18px;max-height:160px;overflow-y:auto;font-size:12px;color:var(--muted)}.integration-repo-list li{margin:2px 0}.integration-tile-actions{display:flex;gap:8px;margin-top:auto}.linklike{background:none;border:none;padding:0;color:var(--accent-2);cursor:pointer;text-align:left}.linklike:hover{text-decoration:underline}.integrations-flash{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;margin-bottom:20px;background:#f1ecde;border:1px solid #e2d8bf;border-radius:8px;color:#6b5826;font-size:14px}.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.section-heading h2{margin:0 0 2px;font-size:17px}.section-heading p{margin:0}.runner-launch{display:flex;flex-direction:column;max-width:880px;margin:0 auto;width:100%;padding:44px 28px 32px;gap:14px;box-sizing:border-box}.launch-header h1{margin:0;font-size:25px;font-weight:800;letter-spacing:-.02em;color:var(--fg)}.launch-body{display:flex;flex-direction:column;gap:14px}.launch-textarea{resize:vertical;background:var(--bg-2);border:1px solid var(--border);border-radius:14px;font-size:15px;line-height:1.7;padding:18px 20px;min-height:320px;width:100%;box-shadow:0 1px 2px #1c1b180a}.launch-meta{display:flex;flex-direction:column;gap:10px}.launch-meta input,.launch-meta select{background:var(--bg-2);border-radius:10px;font:13px var(--mono);padding:12px 14px;box-shadow:0 1px 2px #1c1b180a;width:100%}.launch-field{display:flex;align-items:center;gap:10px}.launch-field-label{font:600 10.5px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--faint);flex-shrink:0}.launch-field select{flex:1}.launch-actions{display:flex;align-items:center;margin-top:4px}.launch-hint{font:500 12px var(--mono);color:var(--faint)}.launch-submit{margin-left:auto;padding:11px 28px;font-size:14px;font-weight:700;box-shadow:0 1px 3px #1c1b1824}.launch-submit:hover{box-shadow:0 4px 14px #ad7a414d}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#1c1b1873;display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px}.modal-card{background:var(--bg-2);border:1px solid var(--border);border-radius:14px;padding:22px 24px;width:100%;max-width:520px;max-height:calc(100vh - 48px);overflow-y:auto;box-shadow:0 12px 40px #1c1b1833;display:flex;flex-direction:column;gap:14px}.modal-id{margin-top:-8px;font-size:12px;color:var(--faint);display:flex;align-items:center;gap:6px}.modal-id code{font:500 12px var(--mono);color:var(--muted);background:var(--bg);border:1px solid var(--border);border-radius:5px;padding:2px 6px;-webkit-user-select:all;user-select:all;word-break:break-all}.modal-card h2{margin:0;font-size:17px;font-weight:700;color:var(--fg);letter-spacing:-.01em}.modal-body{display:flex;flex-direction:column;gap:12px}.modal-body label{display:flex;flex-direction:column;gap:6px;font:600 10.5px var(--mono);color:var(--faint);text-transform:uppercase;letter-spacing:.07em}.modal-body select,.modal-body input,.modal-body textarea{font:13px var(--sans);text-transform:none;letter-spacing:0;color:var(--fg);font-weight:400}.modal-body textarea{resize:vertical;min-height:110px;font-family:inherit;line-height:1.5}.modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:4px}.modal-card-wide{max-width:640px}.modal-card-xwide{max-width:820px}.trigger-picker-help{margin-top:-4px}.data-table{width:100%;border-collapse:collapse;font:13px var(--sans)}.data-table th,.data-table td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--border);vertical-align:middle}.data-table th{font:600 11px var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--faint)}.data-table td.actions{display:flex;gap:6px;justify-content:flex-end}.badge{display:inline-block;padding:2px 8px;border-radius:999px;font:600 10.5px var(--mono);text-transform:uppercase;letter-spacing:.06em}.badge-org{background:#e7eef7;color:#2a517d}.badge-user{background:#f1ecde;color:#6b5826}.radio-row{display:flex;gap:18px;align-items:center}.radio-row label{display:inline-flex!important;flex-direction:row!important;align-items:center;gap:6px;text-transform:none!important;letter-spacing:0!important;font:13px var(--sans)!important;color:var(--fg)!important}.header-rows{display:flex;flex-direction:column;gap:6px}.header-row{display:grid;grid-template-columns:1fr 1fr auto;gap:6px;align-items:center}.mcp-test-row{display:flex;align-items:center;gap:10px;margin-top:6px;flex-wrap:wrap}.triggers-table-wrap{border:1px solid var(--border);border-radius:14px;overflow:hidden;background:var(--bg-2);box-shadow:0 1px 2px #1c1b180a}.triggers-table-trigger div:first-child{display:flex;align-items:center;gap:8px}.triggers-table-trigger div:first-child strong{font-weight:600}.trigger-pill{display:inline-flex;align-items:center;height:18px;padding:0 7px;border-radius:999px;font:600 9.5px var(--mono);letter-spacing:.05em;text-transform:uppercase;background:#eef3f9;color:#2a517d;border:1px solid rgba(42,81,125,.16);flex-shrink:0}.trigger-pill-github{background:#f1ecde;color:#6b5826;border-color:#6b582633}.triggers-banner{padding:10px 14px;margin:0 0 14px;background:#f1ecde;border:1px solid #e2d8bf;border-radius:8px;color:#6b5826;font:500 13px var(--sans)}.triggers-banner a{color:#6b5826;text-decoration:underline}.trigger-conclusion-filter{display:flex;flex-wrap:wrap;gap:6px;align-items:center;max-width:360px}.trigger-conclusion-filter-modal{max-width:none;margin:6px 0 4px}.trigger-conclusion-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border:1px solid var(--border);border-radius:999px;background:var(--bg);color:var(--fg-2);font:500 11.5px var(--mono);text-transform:lowercase;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;transition:background .12s ease,border-color .12s ease}.trigger-conclusion-chip:has(input:checked){background:#f1ecde;border-color:#6b582673;color:#6b5826}.trigger-conclusion-chip input[type=checkbox]{margin:0;width:12px;height:12px}.trigger-conclusion-chip-label{letter-spacing:.02em}.trigger-conclusion-warn{margin-top:4px;color:#b04848;font-weight:500}.skills-toolbar{display:flex;align-items:center;gap:12px;margin:-4px 0 12px}.skill-md-source{max-height:420px;overflow:auto;white-space:pre-wrap;background:var(--bg-2);padding:12px 14px;border:1px solid var(--border);border-radius:8px;font:12.5px var(--mono)}.skill-md-textarea{width:100%;resize:vertical;white-space:pre-wrap}.skill-detail-body{display:flex;flex-direction:column;gap:10px}.skill-frontmatter{border:1px solid var(--border);background:var(--bg-2);border-radius:8px;padding:8px 10px}.skill-import-tabs{display:flex;gap:6px;margin:4px 0 12px}.badge-source-clawhub{background:#e7eef7;color:#2a517d}.badge-source-npx{background:#f1ecde;color:#6b5826}.badge-source-manual{background:#ede5f5;color:#5a3c80}.badge-active{background:#e3eee0;color:#356634}.badge-archived{background:#e9e0db;color:#745c50}.stage-dots,.stage-dot-wrap{display:flex;align-items:center}.stage-dot{width:10px;height:10px;border-radius:50%;background:#d6d2c8;flex-shrink:0;box-sizing:border-box}.stage-dot-line{width:13px;height:2px;background:#e2dfd6;flex-shrink:0}.stage-dot-line.is-done,.stage-dot--done{background:var(--good)}.stage-dot--pending{background:#d6d2c8}.stage-dot--failed{background:var(--danger)}.stage-dot--active,.stage-dot--awaiting{background:var(--warn);animation:dotPulse 1.4s ease-in-out infinite}.stage-dot-container{position:relative;display:inline-flex;align-items:center}.stage-dot-retry-badge{position:absolute;top:-7px;left:100%;margin-left:-4px;font:700 8.5px var(--mono);color:#fff;background:var(--danger);border:1px solid var(--bg-2);border-radius:6px;padding:0 3px;line-height:1.25;letter-spacing:-.02em;pointer-events:none}@keyframes dotPulse{0%,to{box-shadow:0 0 #bd7d108c}50%{box-shadow:0 0 0 5px #bd7d1000}}.rail-retry{width:100%;margin-top:10px;display:inline-flex;align-items:center;justify-content:center;gap:8px}.rail-retry svg{width:15px;height:15px}.rail-retry-link{background:var(--bg-2);color:var(--fg);border:1px solid var(--border-2);text-decoration:none;transition:background-color 80ms ease,border-color 80ms ease}.rail-retry-link:hover{background:var(--bg-3);border-color:var(--accent);color:var(--accent-2)}.run-lineage{background:var(--bg-2);border:1px solid var(--border);border-radius:12px;padding:12px 14px;margin:-12px 0 22px;font-size:12px;box-shadow:0 1px 2px #1c1b180a}.run-lineage-heading{font:600 10.5px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--faint);margin-bottom:9px}.run-lineage-link{display:flex;align-items:center;gap:9px;padding:6px 0;border-top:1px solid var(--border);color:var(--fg);text-decoration:none;transition:color 80ms ease}.run-lineage-link:first-of-type{border-top:0}.run-lineage-link:hover{color:var(--accent-2)}.run-lineage-link svg{flex-shrink:0;color:var(--faint);transition:color 80ms ease}.run-lineage-link:hover svg{color:var(--accent)}.run-lineage-link-text{display:flex;align-items:baseline;gap:8px;min-width:0}.run-lineage-link-label{color:var(--muted);font-weight:500;white-space:nowrap}.run-lineage-link-id{font:500 11.5px var(--mono);color:var(--fg)}.btn-icon svg{display:block}.label-hint{font-weight:400;text-transform:none;letter-spacing:0;color:var(--faint)}:root{--chat-sidebar-width: 260px;--chat-thread-max: 1200px}.chat-shell{position:relative}.chat-sidebar{position:fixed;top:var(--header-height);bottom:0;left:0;width:var(--chat-sidebar-width);display:flex;flex-direction:column;gap:12px;background:#fbfaf7;border-right:1px solid var(--border);padding:14px 12px;overflow-y:auto;z-index:10}.chat-new{align-self:stretch}.chat-list{list-style:none;margin:0;padding:0;flex:1;display:flex;flex-direction:column;gap:2px}.chat-list-item{display:flex;align-items:center;gap:6px;padding:8px 10px;border-radius:8px;cursor:pointer;color:#44413b;font-size:14px;transition:background .12s}.chat-list-item:hover{background:#ad7a4112}.chat-list-item.is-active{background:#ad7a411f;color:#7a531f;font-weight:600}.chat-list-title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-list-delete{background:transparent;border:none;color:var(--faint);font-size:12px;padding:2px 4px;border-radius:5px;cursor:pointer;opacity:0;transition:opacity .1s ease,background .1s ease,color .1s ease}.chat-list-item:hover .chat-list-delete{opacity:.65}.chat-list-delete:hover{background:#c0392b1a;color:var(--danger);opacity:1!important}.chat-list-empty{padding:12px 8px}.chat-sidebar-footer{font:500 10.5px var(--mono);color:var(--faint);letter-spacing:.06em;padding:6px 10px;border-top:1px solid #ece9e2}.chat-thread{margin-left:var(--chat-sidebar-width);padding-bottom:180px;display:flex;flex-direction:column;background:var(--bg);min-height:calc(100vh - var(--header-height))}.chat-thread-head{position:fixed;left:var(--chat-sidebar-width);right:0;top:var(--header-height);background:#fffefb;padding:0 24px;height:54px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:16px;z-index:6}.chat-thread{padding-top:54px}.chat-thread-head-inner{width:100%;max-width:var(--chat-thread-max);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:16px;min-width:0}.chat-thread-head-left{display:flex;align-items:center;gap:10px;min-width:0}.chat-thread-title{font-weight:700;font-size:15px;letter-spacing:-.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-working-pill{display:inline-flex;align-items:center;gap:6px;font:500 11px var(--mono);color:var(--info)}.chat-working-dot{width:7px;height:7px;border-radius:50%;background:var(--info);animation:livePulse 1.4s ease-in-out infinite}.chat-stop{background:#fffefb}.chat-stop:hover{border-color:var(--danger);color:var(--danger)}.chat-thread-head-banner{width:100%;max-width:var(--chat-thread-max);margin:0 auto;padding-top:4px;font:500 12px/1.4 var(--body);color:var(--info)}.chat-empty{padding:64px 48px;text-align:center}.chat-messages{padding:54px 24px 26px}.chat-messages-inner{width:100%;max-width:var(--chat-thread-max);margin:0 auto;display:flex;flex-direction:column;gap:18px;min-width:0}.chat-msg{display:flex;flex-direction:column}.chat-msg-user{align-self:flex-end;align-items:flex-end;max-width:66%}.chat-msg-assistant{align-self:flex-start;align-items:flex-start;max-width:66%}.chat-msg-system,.chat-msg-tool{align-self:stretch;width:100%}.chat-msg-label{font:600 9.5px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--faint);margin:0 4px 5px}.chat-msg-user .chat-msg-label{text-align:right}.chat-bubble{padding:11px 15px;border-radius:14px;background:#fffefb;white-space:pre-wrap;word-wrap:break-word;line-height:1.55;max-width:100%;user-select:text;-webkit-user-select:text;cursor:text}.chat-messages,.chat-msg,.chat-tool,.chat-tool-pre,.chat-reasoning{user-select:text;-webkit-user-select:text}.chat-msg-user .chat-bubble{background:var(--accent);color:#fff;border-radius:14px 14px 4px;box-shadow:0 1px 2px #1c1b181a}.chat-msg-user .chat-bubble::selection{background:#ffffff8c;color:var(--fg)}.chat-msg-user .chat-bubble *::selection{background:#ffffff8c;color:var(--fg)}.chat-msg-assistant .chat-bubble{background:#fffefb;border:1px solid var(--border);border-radius:4px 14px 14px;box-shadow:0 1px 2px #1c1b1808;padding:12px 16px;line-height:1.6}.chat-msg-assistant>.chat-reasoning+.chat-bubble,.chat-msg-assistant>.chat-tool+.chat-bubble{margin-top:0}.chat-reasoning{margin-bottom:8px;background:#fffefb;border:1px solid #efe7d4;border-left:3px solid var(--warn);border-radius:8px;padding:8px 12px;cursor:pointer;font-size:12.5px}.chat-reasoning-head{display:flex;align-items:center;gap:8px;font:600 9.5px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#b08a2f}.chat-reasoning-caret{width:10px;text-align:center}.chat-reasoning-body{color:#8a7a52;font-style:italic;font-size:12.5px;line-height:1.6;margin-top:6px;white-space:pre-wrap}.chat-tool{margin-bottom:8px;border:1px solid var(--border);border-left:3px solid #cdc8bd;border-radius:8px;background:#faf9f5;overflow:hidden;font-size:13px}.chat-tool.is-pending{border-left-color:var(--info)}.chat-tool.is-error{border-left-color:var(--danger)}.chat-tool-head{display:flex;align-items:center;gap:9px;padding:8px 11px;cursor:pointer}.chat-tool-glyph{color:var(--accent-2);font-weight:700;width:13px;text-align:center;flex-shrink:0}.chat-tool-name{font:600 12px var(--mono);color:var(--accent-2);flex-shrink:0}.chat-tool-summary{font:500 11.5px var(--mono);color:var(--faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1 1 auto;min-width:0}.chat-tool-status{margin-left:auto;font:500 11px var(--mono);color:var(--good-text);flex-shrink:0}.chat-tool-status.is-pending{color:var(--info)}.chat-tool-status.is-error{color:var(--danger)}.chat-tool-toggle{color:var(--faint);flex-shrink:0}.chat-tool-body{border-top:1px solid var(--border);padding:9px 12px;display:flex;flex-direction:column;gap:8px}.chat-tool-section-label{font:600 9px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--faint);margin-bottom:3px}.chat-tool-pre{margin:0;max-height:240px;overflow:auto;background:#fff;border:1px solid var(--border);border-radius:6px;padding:8px 10px;font:11.5px/1.5 var(--mono);color:var(--muted);white-space:pre-wrap;word-wrap:break-word}.chat-tool-pre.is-error{color:var(--danger);border-color:#c0392b4d}.chat-msg-with-thinking{display:flex;flex-direction:column;align-items:flex-end;align-self:flex-end;max-width:66%}.chat-msg-with-thinking>.chat-msg-user{max-width:none}.chat-inline-thinking{display:inline-flex;align-items:center;gap:6px;margin-top:4px;font:500 11px var(--mono);color:var(--muted);opacity:.85}.chat-inline-thinking-dot{width:7px;height:7px;border-radius:50%;background:var(--info);animation:livePulse 1.4s ease-in-out infinite;flex-shrink:0}.chat-inline-thinking-elapsed{color:var(--faint);font-variant-numeric:tabular-nums}.chat-error{max-width:var(--chat-thread-max);margin:0 auto 8px;padding:0 24px}.chat-composer{position:fixed;left:var(--chat-sidebar-width);right:0;bottom:0;border-top:1px solid var(--border);padding:14px 24px;background:#fbfaf7;z-index:5;box-shadow:0 -2px 12px #1c1b180a}.chat-composer-inner{max-width:var(--chat-thread-max);margin:0 auto;display:flex;gap:10px;align-items:flex-end}.chat-composer textarea{flex:1;resize:none;min-height:44px;max-height:240px;overflow-y:auto;border:1px solid #e0ddd4;border-radius:11px;padding:12px 14px;font:14px/1.5 var(--sans);background:#fff;color:var(--fg);box-sizing:border-box}.chat-composer textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #ad7a4126}.chat-composer textarea::placeholder{color:var(--faint)}.chat-send{flex-shrink:0;min-height:44px;align-self:flex-end;padding:0 26px;border-radius:11px;font:700 13.5px var(--sans)}.secrets-blurb{max-width:720px;margin:4px 0 24px}.secret-masked{font:12.5px var(--mono);color:var(--faint);-webkit-user-select:none;user-select:none}.secret-value{font:12.5px var(--mono);background:#0000000a;padding:1px 6px;border-radius:3px;word-break:break-all}.data-table td.mono{font-family:var(--mono);font-size:12.5px}@media (max-width: 1024px){.page{padding:28px 20px 56px}.runner-launch{padding:32px 20px 24px}}@media (max-width: 960px){.app-header{gap:16px;padding:0 14px}.brand-tag{display:none}.nav-tabs{flex:1;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.nav-tabs::-webkit-scrollbar{display:none}.nav-tab{padding:0 10px;font-size:13px}.rail{position:static;width:auto;border-right:none;border-bottom:1px solid var(--border);padding:16px 18px;overflow-y:visible}.task-desc-head{position:static;left:auto;right:auto;top:auto}.transcript-pane{margin-left:0;padding-top:0;padding-bottom:0}.composer{position:static;left:auto;right:auto;bottom:auto}.scroll-to-bottom{position:fixed;bottom:18px;right:18px}.chat-sidebar{position:static;width:auto;border-right:none;border-bottom:1px solid var(--border);overflow-y:visible}.chat-thread{margin-left:0;padding-bottom:0;min-height:0}.chat-thread-head{position:static;left:auto;right:auto;top:auto}.chat-thread{padding-top:0}.chat-composer{position:static;left:auto;right:auto;bottom:auto}.stat-tiles{grid-template-columns:repeat(2,1fr)}.tasks-table-header,.tasks-table-row{grid-template-columns:80px 130px 110px 1fr 90px;gap:12px;padding:12px 14px}.tasks-table-header span:nth-child(4),.tasks-table-row>span:nth-child(4),.tasks-table-header span:nth-child(6),.tasks-table-row>span:nth-child(6){display:none}.workflow-list li{flex-wrap:wrap;gap:14px}.wf-info{min-width:0;flex-basis:100%}.wf-chips{flex-basis:100%}.workflow-list .actions{margin-left:auto}}@media (max-width: 720px){body{font-size:13.5px}.page{padding:20px 14px 48px}.page-heading{flex-direction:column;align-items:stretch;gap:12px;margin-bottom:18px}.page-heading h1{font-size:22px}.page-heading-actions{flex-wrap:wrap}.stat-tiles{grid-template-columns:1fr;gap:10px;margin-bottom:18px}.stat-tile{padding:14px 16px}.stat-tile .value{font-size:26px}.tasks-table-header{display:none}.tasks-table-row{display:flex;flex-direction:column;align-items:stretch;gap:6px;padding:12px 14px}.tasks-table-row>span{width:100%}.task-input-cell{white-space:normal}.row-actions{justify-content:flex-end}.workflow-list li{flex-direction:column;align-items:stretch;padding:14px 16px}.workflow-list .actions{margin-left:0;flex-wrap:wrap}.workflow-list .actions .btn{flex:1;min-width:0}.runner-launch{padding:24px 14px 20px;gap:12px}.launch-header h1{font-size:21px}.launch-textarea{font-size:14px;padding:14px 16px}.launch-actions{flex-direction:column;align-items:stretch;gap:10px}.launch-hint{text-align:center}.launch-submit{margin-left:0;width:100%}.rail{max-height:38vh}.transcript,.composer{padding:12px 14px}.composer-actions{flex-wrap:wrap}.composer-actions .btn{flex:1}.task-desc-head{padding:0 14px}.task-desc-head-inner{height:44px}.task-desc-head.is-expanded .task-desc-head-inner{min-height:44px}.stage-card-header{flex-wrap:wrap;gap:8px}.stage-name{flex-basis:100%;order:3}.stage-card-header>select{order:2}.stage-card-header .actions{order:4;margin-left:auto}.editor-header{flex-direction:column;align-items:stretch;gap:10px}.editor-header .actions{flex-wrap:wrap}.editor-header .actions .btn{flex:1}.title-input{font-size:20px}.failure-policy-grid,.tools-grid{grid-template-columns:1fr}.data-table thead{display:none}.data-table,.data-table tbody,.data-table tr,.data-table td{display:block;width:100%}.data-table tr{border:1px solid var(--border);border-radius:12px;padding:10px 12px;margin-bottom:10px;background:var(--bg-2)}.data-table td{border:none;padding:4px 0}.data-table td.actions{justify-content:flex-start}.header-row{grid-template-columns:1fr;gap:4px}.modal-backdrop{padding:12px}.modal-card{padding:18px}.chat-msg-user,.chat-msg-assistant{max-width:100%}.chat-bubble{padding:9px 12px;max-width:100%}.chat-thread-head{padding:0 14px;height:48px}.chat-messages{padding:48px 14px 18px}.chat-composer{padding:12px 14px}}@media (max-width: 420px){.brand span:not(.brand-tag){display:none}.header-actions{gap:6px}}.demobot-app{--bg: #f6f7f9;--bg-2: #ffffff;--bg-3: #f3f5f8;--accent: #2f6df0;--accent-2: #1b57cc;--fg: #10151b;--muted: #5b6472;--faint: #8a919e;--border: #e7e9ee;--border-2: #dde0e6;--header-bg: #0d1117;--header-border: #21262d;--header-fg: #e6edf3;--header-muted: #8b98a5;--header-tag: #8b98a5;background:var(--bg);min-height:100vh;color:var(--fg)}.demobot-logo-img{width:34px;height:34px;border-radius:9px;display:block;box-shadow:0 1px 3px #1b57cc80}.demobot-mark{width:34px;height:34px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#3b82f6,#1b57cc);box-shadow:0 1px 3px #1b57cc80}.menu-icon-spacer{display:inline-block;width:15px}.org-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#10151c73;display:flex;align-items:center;justify-content:center;padding:24px;z-index:1000}.org-modal{max-height:90vh;overflow:auto}.demobot-page{max-width:1240px;margin:0 auto;padding:40px 28px 72px}.demobot-page--narrow{max-width:820px}.demobot-h1{margin:0 0 26px;font-size:27px;font-weight:800;letter-spacing:-.025em}.demobot-attention{display:flex;align-items:center;gap:16px;background:var(--bg-2);border:1px solid var(--border);border-left:3px solid var(--warn);border-radius:14px;padding:16px 20px;margin-bottom:16px;box-shadow:0 1px 2px #10151c0d}.demobot-attention-icon{flex:none;width:34px;height:34px;border-radius:9px;background:#bd7d101f;color:var(--warn);display:inline-flex;align-items:center;justify-content:center}.demobot-attention-body{flex:1}.demobot-attention-title{font-weight:700;font-size:14px}.demobot-attention-sub{color:var(--muted);font-size:13px;margin-top:2px}.demobot-usage{background:var(--bg-2);border:1px solid var(--border);border-radius:14px;padding:18px 22px;margin-bottom:30px;box-shadow:0 1px 2px #10151c0d}.demobot-usage-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}.demobot-usage-plan{display:flex;align-items:baseline;gap:12px}.demobot-usage-plan-name{font-weight:700;font-size:15px}.demobot-usage-label{font:600 11px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--faint)}.demobot-usage-track{height:12px;border-radius:8px;background:#eef1f5;overflow:hidden}.demobot-usage-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#2f6df0);border-radius:8px;transition:width .2s ease}.demobot-usage.is-over .demobot-usage-fill{background:linear-gradient(90deg,#e08a8a,var(--danger))}.demobot-usage-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:10px;font-size:13px}.demobot-usage-count{color:var(--faint);font-weight:600;font-size:13.5px}.demobot-usage-count strong{color:var(--fg)}.demobot-section{margin-bottom:34px}.demobot-section-head{display:flex;align-items:center;gap:10px;margin:0 0 14px;font:600 12px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--faint)}.demobot-section-head--active{color:var(--accent-2)}.demobot-rule{flex:1;height:1px;background:var(--border)}.demobot-table{border:1px solid var(--border);border-radius:14px;overflow:hidden;background:var(--bg-2);box-shadow:0 1px 2px #10151c0d}.demobot-table-header,.demobot-row{display:grid;grid-template-columns:minmax(220px,1.6fr) 148px 132px 160px 96px 96px;gap:16px;align-items:center;padding:13px 18px}.demobot-table-header{background:var(--bg-3);font:600 10.5px var(--mono);letter-spacing:.07em;text-transform:uppercase;color:var(--faint);border-bottom:1px solid var(--border)}.demobot-row{border-bottom:1px solid #f0f1f4}.demobot-row:last-child{border-bottom:0}.demobot-row.is-dim{opacity:.85}.demobot-row:hover{background:#fafbfc;opacity:1}.demobot-cell-pr{display:flex;gap:8px;align-items:baseline;overflow:hidden;min-width:0}.demobot-cell-pr code{font:500 12px var(--mono);color:var(--accent-2)}.demobot-title{font-weight:600;color:var(--fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.demobot-cell-repo{font:12.5px var(--mono);color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.demobot-row-actions{display:flex;align-items:center;gap:6px;justify-content:flex-end}.demobot-icon-btn{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;background:var(--bg-2);border:1px solid rgba(47,109,240,.35);border-radius:7px;color:var(--accent-2);cursor:pointer}.demobot-icon-btn:hover{background:#2f6df014;border-color:var(--accent)}.demobot-icon-btn:disabled{opacity:.5;cursor:default}.demobot-icon-btn.danger{border-color:#c0392b4d;color:var(--danger)}.demobot-icon-btn.danger:hover{background:#c0392b12;border-color:var(--danger)}.demobot-icon-btn svg{width:15px;height:15px}.demobot-empty{text-align:center;padding:60px 0}.demobot-empty-icon{font-size:34px}.demobot-foot-note{text-align:center;padding:16px 0 4px;color:var(--faint);font-size:12px}.demobot-foot-note--left{text-align:left;padding:12px 0 0}.demobot-card{background:var(--bg-2);border:1px solid var(--border);border-radius:14px;padding:22px;margin-bottom:18px;box-shadow:0 1px 2px #10151c0d}.demobot-card--pad{padding:16px 18px;margin-bottom:16px}.demobot-card-head{display:flex;align-items:center;gap:14px}.demobot-card-head h2{margin:0;font-size:16px;font-weight:700}.demobot-card-head-body{flex:1}.demobot-card-head--split{justify-content:space-between;align-items:flex-start;margin-bottom:16px}.demobot-gh-mark{flex:none;width:42px;height:42px;border-radius:10px;background:#0d1117;display:inline-flex;align-items:center;justify-content:center}.demobot-status-line{display:inline-flex;align-items:center;gap:6px;margin-top:3px;font-size:12.5px}.demobot-status-line .dot{width:7px;height:7px;border-radius:50%;background:currentColor}.demobot-status-line--good{color:var(--good-text)}.demobot-status-line--muted{color:var(--faint)}.demobot-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.demobot-step{display:flex;align-items:flex-start;gap:12px;padding:12px 4px;border-top:1px solid var(--border)}.demobot-step:first-child{border-top:none}.demobot-step-icon{flex:none;width:22px;height:22px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font:700 12px var(--sans);margin-top:1px}.demobot-step-icon--todo{background:var(--bg);color:var(--faint);border:1px solid var(--border-2)}.demobot-step-icon--active{background:var(--accent);color:#fff}.demobot-step-icon--done{background:var(--good-text, #1a7f4b);color:#fff}.demobot-step-body{flex:1;min-width:0}.demobot-step-title{font-size:14px;font-weight:600;color:var(--fg)}.demobot-step.is-todo .demobot-step-title{color:var(--muted)}.demobot-step-sub{font-size:12.5px;color:var(--muted);margin-top:2px}.demobot-step .btn{flex:none;margin-top:1px}.demobot-inset{background:#f6f8fb;border:1px solid var(--border);border-radius:10px;padding:12px 14px;margin-top:16px}.demobot-inset-label{font:600 10.5px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--faint);margin-bottom:8px}.demobot-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--border);border:1px solid var(--border);border-radius:10px;overflow:hidden}.demobot-stat-grid>div{background:var(--bg-2);padding:14px 16px}.demobot-stat-label{font:600 10.5px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}.demobot-stat-value{font-size:16px;font-weight:700;margin-top:5px}.demobot-plan-options{display:flex;flex-direction:column;gap:10px}.demobot-plan-option{display:flex;align-items:center;gap:16px;padding:14px 16px;background:var(--bg-2);border:1px solid var(--border);border-radius:10px}.demobot-plan-meta{flex:1;min-width:0}.demobot-plan-price{font-size:16px;font-weight:700;white-space:nowrap}.demobot-plan-price .small{font-weight:500}.demobot-step-plans{margin-top:12px}.demobot-orgid{display:flex;align-items:center;gap:10px}.demobot-orgid code{flex:1;min-width:0;overflow-x:auto;padding:8px 10px;background:var(--bg-2);border:1px solid var(--border);border-radius:8px;font:500 13px var(--mono);white-space:nowrap}.demobot-block{border-left:3px solid var(--warn)}.demobot-block-title{font-size:15px;font-weight:700}.demobot-block-msg{color:var(--muted);margin:6px 0 14px}.demobot-back{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-weight:600;font-size:13px;margin-bottom:18px;text-decoration:none}.demobot-back:hover{color:var(--accent-2)}.demobot-detail{padding-top:28px}.demobot-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}.demobot-detail-badges{display:flex;align-items:center;gap:10px}.demobot-detail-badges code{font:600 14px var(--mono);color:var(--accent-2)}.demobot-detail-title h1{margin:8px 0 6px;font-size:26px;font-weight:800;letter-spacing:-.025em}.demobot-detail-repo{font:13px var(--mono);color:var(--muted)}.demobot-detail-grid{display:grid;grid-template-columns:1fr 280px;gap:22px;align-items:start}.demobot-detail-main{min-width:0;display:flex;flex-direction:column;gap:22px}.demobot-eyebrow{font:600 12px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--accent-2);margin-bottom:12px}.demobot-detail-summary{margin:0;font-size:14px;line-height:1.65;color:#3a4150}.demobot-shots{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.demobot-shot{aspect-ratio:16 / 10;border-radius:11px;border:1px solid var(--border);background:repeating-linear-gradient(135deg,#eef1f5,#eef1f5 11px,#e7ebf1 11px,#e7ebf1 22px);display:flex;align-items:center;justify-content:center;box-shadow:0 1px 2px #10151c0d}.demobot-shot span{font:11px var(--mono);color:var(--faint);background:var(--bg-2);padding:3px 8px;border-radius:5px;border:1px solid var(--border)}.demobot-detail-actions{display:flex;align-items:center;gap:8px;flex:none}.demobot-shot-link{display:block;border-radius:11px;overflow:hidden;border:1px solid var(--border);box-shadow:0 1px 2px #10151c0d}.demobot-shot-link:hover{border-color:var(--accent)}.demobot-shot-img{display:block;width:100%;aspect-ratio:16 / 10;object-fit:cover;background:#eef1f5}.demobot-shots-empty{color:var(--muted);font-size:13px;padding:22px;text-align:center;border:1px dashed var(--border-2);border-radius:11px;background:var(--bg-2)}.demobot-markdown{font-size:14px;line-height:1.65;color:var(--fg)}.demobot-markdown>:first-child{margin-top:0}.demobot-markdown>:last-child{margin-bottom:0}.demobot-markdown img{max-width:100%;height:auto;border-radius:10px;border:1px solid var(--border);margin:8px 0;box-shadow:0 1px 2px #10151c0d}.demobot-detail-side{display:flex;flex-direction:column;gap:16px}.demobot-rail{display:flex;flex-direction:column}.demobot-rail-step{display:flex;gap:12px}.demobot-rail-marker{display:flex;flex-direction:column;align-items:center}.demobot-rail-dot{width:14px;height:14px;border-radius:50%;background:#d6d2c8;box-sizing:border-box}.demobot-rail-dot.is-done{background:var(--good)}.demobot-rail-dot.is-active,.demobot-rail-dot.is-awaiting{background:var(--warn);animation:dotPulse 1.4s ease-in-out infinite}.demobot-rail-dot.is-failed{background:var(--danger)}.demobot-rail-line{width:2px;flex:1;min-height:20px;background:#e2e4e9;margin:4px 0}.demobot-rail-line.is-done{background:var(--good)}.demobot-rail-body{padding-bottom:8px}.demobot-rail-name{font-size:13.5px;font-weight:600}.demobot-rail-state{font:500 11px var(--mono);color:var(--faint);margin-top:2px}.demobot-kv{display:flex;flex-direction:column;gap:10px;font-size:12.5px}.demobot-kv>div{display:flex;justify-content:space-between;gap:10px}.demobot-kv code{font:12px var(--mono);color:#3a4150}@media (max-width: 720px){.demobot-detail-grid,.demobot-shots,.demobot-stat-grid{grid-template-columns:1fr}}
