:root{--bg0:#07080b;--bg1:#0c0e12;--bg2:#12151a;--bg3:#191d23;--bg4:#21262e;--line:#fff1;--line2:#ffffff1c;--fg1:#eceef3;--fg2:#a1a8b5;--fg3:#6a717d;--acc:#7d8cff;--acc2:#a5b0ff;--acc-ink:#0a0c1a;--acc-soft:#7d8cff21;--acc-line:#7d8cff5c;--ok:#3dd093;--warn:#f2b54b;--bad:#ff6b78;--info:#46c9e6;--ok-s:#3dd09321;--warn-s:#f2b54b21;--bad-s:#ff6b7821;--info-s:#46c9e621;--glass:#0c0e12bd;--glass-line:#ffffff14;--shadow-pop:0 18px 50px #0000008c, 0 0 0 1px #ffffff0f;--scrim:#03040880;--shadow-card:0 8px 24px #00000059;--sans:"Inter Variable", Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono:"JetBrains Mono Variable", "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--fs-micro:10px;--fs-xs:11.5px;--fs-s:12.5px;--fs-b:14px;--fs-t:15px;--fs-d:19px;--r1:6px;--r2:10px;--r3:14px;--r4:20px;--t1:90ms;--t2:.16s;--t3:.24s;--ease:cubic-bezier(.2,.8,.2,1);--head:52px;--gut:12px;--side:252px;--pane:0px;--state:var(--fg3);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--bg0:#e7e9ee;--bg1:#f4f5f7;--bg2:#fff;--bg3:#eef0f3;--bg4:#e3e6eb;--line:#0f121a14;--line2:#0f121a24;--fg1:#12151b;--fg2:#4d5461;--fg3:#868c97;--acc:#4656df;--acc2:#3341c4;--acc-ink:#fff;--acc-soft:#4656df17;--acc-line:#4656df52;--ok:#0f8a59;--warn:#a3650a;--bad:#cf3446;--info:#0a7f9e;--ok-s:#0f8a591a;--warn-s:#a3650a1a;--bad-s:#cf344617;--info-s:#0a7f9e1a;--glass:#f4f5f7cc;--glass-line:#0f121a14;--shadow-pop:0 18px 50px #1418282e, 0 0 0 1px #0f121a12;--scrim:#14182447;--shadow-card:0 8px 24px #1418281a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:light){:root:not([data-theme=dark]):not([data-theme=light]){--bg0:#e7e9ee;--bg1:#f4f5f7;--bg2:#fff;--bg3:#eef0f3;--bg4:#e3e6eb;--line:#0f121a14;--line2:#0f121a24;--fg1:#12151b;--fg2:#4d5461;--fg3:#868c97;--acc:#4656df;--acc2:#3341c4;--acc-ink:#fff;--acc-soft:#4656df17;--acc-line:#4656df52;--ok:#0f8a59;--warn:#a3650a;--bad:#cf3446;--info:#0a7f9e;--ok-s:#0f8a591a;--warn-s:#a3650a1a;--bad-s:#cf344617;--info-s:#0a7f9e1a;--glass:#f4f5f7cc;--glass-line:#0f121a14;--shadow-pop:0 18px 50px #1418282e, 0 0 0 1px #0f121a12;--scrim:#14182447;--shadow-card:0 8px 24px #1418281a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}}:root{--hover:color-mix(in srgb, var(--fg2) 8%, transparent);--wash:color-mix(in srgb, var(--fg2) 15%, transparent);--panel:color-mix(in srgb, var(--bg2) 80%, transparent);--acc-glow:color-mix(in srgb, var(--acc) 16%, transparent);--ok-line:color-mix(in srgb, var(--ok) 32%, transparent);--bad-line:color-mix(in srgb, var(--bad) 42%, transparent);--info-line:color-mix(in srgb, var(--info) 42%, transparent)}html,body,#root{background:var(--bg1);height:100%;color:var(--fg1);margin:0;font-family:Inter,system-ui,sans-serif}.workspace{height:100%;position:relative}.canvas{width:100%;height:100%;position:relative}.node{box-sizing:border-box;background:var(--bg2);border:1px solid var(--line2);color:var(--fg1);box-shadow:var(--shadow-card);border-radius:12px}.node-head{border-bottom:1px solid var(--line);cursor:grab;align-items:center;gap:8px;padding:8px 10px;font-size:13px;display:flex}.node-head:active{cursor:grabbing}.node-title{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:48px;font-weight:600;overflow:hidden}.node-meta{color:var(--fg2);white-space:nowrap;text-overflow:ellipsis;flex:0 3 auto;min-width:0;font-size:11px;overflow:hidden}.ctl{width:28px;height:28px;color:var(--fg2);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;flex:none;justify-content:center;align-items:center;padding:0;transition:background .15s,color .15s,border-color .15s;display:inline-flex}@media (hover:hover){.ctl:hover{background:var(--bg3);color:var(--fg1)}}.ctl:focus-visible{outline:2px solid var(--acc);outline-offset:1px}@media (hover:hover){.ctl.x:hover{background:var(--bad-s);color:var(--bad)}}.ctl.pin.on{color:var(--info);background:var(--info-s);border-color:var(--info-line)}.ctl.fold svg{transition:transform .15s}.ctl.fold.folded svg{transform:rotate(-90deg)}.lcard .ctl{width:36px;height:36px}@media (pointer:coarse){.ctl{width:36px;height:36px}}.card-node .node-head{font-size:14px}.card-node .ctl{width:32px;height:32px}.card-node .ctl svg{width:18px;height:18px}.full-card .node-head{font-size:16px}.full-card .ctl{width:40px;height:40px}.node-x{color:var(--fg2);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:2px 4px;font-size:13px}.node-x:hover{background:var(--bg3);color:var(--fg1)}.node-x.armed{background:var(--bad-s);width:auto;color:var(--bad);white-space:nowrap;padding:0 8px;font:600 11px Inter,system-ui,sans-serif}.card-node{flex-direction:column;width:100%;height:100%;display:flex;overflow:hidden}.card-node.collapsed .node-head{border-bottom:0}.card-node.auto{height:auto;max-height:560px}.card-node.pinned,.lcard.pinned{border-color:var(--info-line);box-shadow:0 0 0 1px var(--info-s), 0 8px 28px var(--info-s), var(--shadow-card)}.card-body.away{min-height:48px;color:var(--fg3);justify-content:center;align-items:center;font-size:12px;display:flex}.drawing{flex-direction:column;gap:10px;padding:14px 6px;display:flex}.drawing-bar{background:linear-gradient(90deg, var(--bg3) 0%, var(--bg4) 40%, var(--bg3) 80%);background-size:200% 100%;border-radius:6px;height:10px;animation:1.4s linear infinite shimmer;display:block}.drawing-bar.short{width:60%}.drawing-text{color:var(--fg3);letter-spacing:.06em;text-transform:uppercase;font-size:11px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.drawing-bar{animation:none}}.full-back{z-index:20;background:var(--scrim);-webkit-backdrop-filter:blur(6px);justify-content:center;align-items:stretch;padding:32px;animation:.15s ease-out fade-in;display:flex;position:fixed;inset:0}.full-card{outline:none;width:100%;height:100%}.full-card .card-body .plain-wrap{max-width:72ch}.full-card .node-head{cursor:default;padding:10px 12px}.full-card .card-body{padding:4px 14px 12px}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@media (width<=600px){.full-back{padding:0}.full-card{border-left:0;border-right:0;border-radius:0}}.hud{border:1px solid var(--glass-line);background:var(--glass);color:var(--fg2);border-radius:999px;padding:4px 10px;font-size:12px}.plain-wrap{min-width:0}.toast-btn{background:var(--acc);color:var(--acc-ink);font:inherit;cursor:pointer;border:0;border-radius:999px;flex:none;padding:8px 16px;font-weight:600}.toast-btn:hover{background:var(--acc2)}.ghost{box-sizing:border-box;border:1px dashed var(--line2);background:var(--panel);min-height:48px;color:var(--fg2);box-shadow:none;border-radius:12px;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 12px;padding:8px 12px;font-size:13px;display:flex;position:relative;overflow:hidden}.ghost.lcard,.ghost.node{border:1px dashed var(--line2);background:var(--panel);box-shadow:none}.ghost-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.ctl.leave{color:var(--fg2);border-color:var(--line2)}@media (width>=900px){.full-card .card-body{zoom:1.2}}.toast-time{background:var(--acc);transform-origin:0;width:100%;height:2px;animation:linear forwards run-down;position:absolute;bottom:0;left:0}@keyframes run-down{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.full-card .card-body{box-sizing:border-box;width:100%;max-width:980px;margin:0 auto;font-size:1.05em}.card-body,.card-body *{font-family:Inter,system-ui,sans-serif}.card-body{cursor:auto;overflow-wrap:anywhere;flex:1;min-height:0;padding:2px 8px 6px;overflow:auto}.node-status{border-top:1px solid var(--line);color:var(--acc2);padding:6px 10px;font-size:12px}.node-status.refused{color:var(--bad)}.card-progress{border-bottom:1px solid var(--line);background:var(--acc-soft);color:var(--acc2);flex:none;padding:6px 10px;font-size:12px;line-height:1.4}.card-progress.done{background:var(--ok-s);color:var(--ok)}.card-progress.failed{background:var(--bad-s);color:var(--bad)}.card-progress-note{overflow-wrap:anywhere;align-items:baseline;gap:6px;min-width:0;display:flex}.card-progress-mark{flex:none;font-weight:700}.card-progress.working .card-progress-mark{animation:1.2s linear infinite card-progress-spin;display:inline-block}@keyframes card-progress-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.card-progress.working .card-progress-mark{animation:none}}.card-progress-steps{color:var(--fg2);flex-wrap:wrap;gap:4px 6px;margin:6px 0 0;padding:0;list-style:none;display:flex}.card-progress-steps li{box-sizing:border-box;border:1px solid var(--line);overflow-wrap:anywhere;border-radius:999px;max-width:100%;padding:1px 8px}.card-progress-steps li.done{color:var(--fg1);border-color:var(--line2)}.resize-handle{background:var(--acc);border:0;border-radius:3px;width:10px;height:10px}.resize-line{border-color:var(--acc)}.job-node{width:240px}.job-node.state-running{border-color:var(--acc-line);box-shadow:0 0 18px var(--acc-glow), var(--shadow-card)}.job-node.state-failed{border-color:var(--bad-line)}.job-node .node-head{cursor:pointer}.job-node.slim .node-head{border-bottom:0}.job-node.slim{background:var(--panel)}.job-ago{color:var(--fg3);white-space:nowrap;font-size:11px}.job-open{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:0 0 12px 12px;padding:0;display:block}@media (hover:hover){.job-open:hover{background:var(--hover)}}.job-line{color:var(--fg2);-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;padding:6px 10px 0;font-size:12px;display:-webkit-box;overflow:hidden}.job-time{color:var(--fg3);padding:4px 10px 8px;font-size:11px;display:block}.chip{text-transform:uppercase;letter-spacing:.04em;background:var(--wash);color:var(--fg2);white-space:nowrap;border-radius:999px;padding:2px 6px;font-size:10px}.chip.running,.chip.queued{background:var(--acc-soft);color:var(--acc2)}.chip.done{background:var(--ok-s);color:var(--ok)}.chip.failed{background:var(--bad-s);color:var(--bad)}.chip.cancelled{background:var(--warn-s);color:var(--warn)}.card-body .openui-header.repeat .openui-header-top-left,.card-body .openui-header.repeat.empty{display:none}.card-body .openui-header.repeat .openui-header-top:not(:has(.openui-header-top-right>*)){display:none}.plain-note{color:var(--fg2);margin:0;padding:8px 4px 0;font-size:11px}.plain{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;padding:8px 4px;font:12px/1.45 Inter,system-ui,sans-serif}.plain.loading{color:var(--fg2)}.empty{text-align:center;color:var(--fg2);pointer-events:none;justify-content:center;align-items:center;padding:24px;font-size:14px;display:flex;position:absolute;inset:0}.view-list{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;overflow-y:auto}.view-list .empty{min-height:40vh;position:static}.list{box-sizing:border-box;max-width:860px;padding:12px 12px calc(24px + env(safe-area-inset-bottom));flex-direction:column;gap:18px;margin:0 auto;display:flex}.lsection{flex-direction:column;gap:10px;display:flex}.lsection-head{letter-spacing:.14em;text-transform:uppercase;min-height:32px;color:var(--acc2);align-items:center;gap:8px;margin:0;font-size:12px;font-weight:600;display:flex}.lsection-head:after{content:"";background:linear-gradient(90deg, var(--acc-line), transparent);flex:1;order:1;height:1px}.lcount{font-variant-numeric:tabular-nums;color:var(--fg3);letter-spacing:0;order:2}.ldone-toggle{min-height:40px;font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit;cursor:pointer;background:0 0;border:0;flex:none;align-items:center;gap:8px;padding:0 8px 0 2px;display:inline-flex}.ldone-toggle[aria-expanded=false] .caret,.lcard-fold[aria-expanded=false] .caret{transform:rotate(-90deg)}.caret{text-align:center;width:16px;color:var(--fg3);font-size:14px;line-height:1;transition:transform .15s;display:inline-block}.lgroup{flex-direction:column;gap:8px;display:flex}.lgroup-cards{border-left:1px solid var(--line);flex-direction:column;gap:8px;margin-left:9px;padding-left:12px;display:flex}.state-running+.lgroup-cards,.state-queued+.lgroup-cards{border-left-color:var(--acc-line)}.ljob{background:var(--panel);border:1px solid var(--line);border-radius:10px;align-items:center;gap:4px;padding:0 6px 0 0;font-size:13px;display:flex}.ljob-open{min-width:0;min-height:44px;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;flex-wrap:wrap;flex:1;align-items:center;gap:4px 8px;padding:8px 10px;display:flex}@media (hover:hover){.ljob-open:hover{background:var(--hover)}}.ljob-open:focus-visible,.job-open:focus-visible,.lcard-job:focus-visible,.job-cancel:focus-visible,.sheet-btn:focus-visible,.sheet-card:focus-visible{outline:2px solid var(--acc);outline-offset:-2px}.ljob.state-failed{border-color:var(--bad-line)}.job-cancel{border:1px solid var(--bad-line);min-height:34px;color:var(--bad);cursor:pointer;background:0 0;border-radius:999px;flex:none;padding:0 12px;font:600 12px Inter,system-ui,sans-serif}@media (hover:hover){.job-cancel:hover{background:var(--bad-s)}}.job-cancel:disabled{opacity:.6;cursor:default}.lcard-job{border:1px solid var(--ok-line);background:color-mix(in srgb, var(--ok) 8%, transparent);min-height:28px;color:var(--ok);white-space:nowrap;cursor:pointer;border-radius:999px;flex:none;padding:0 10px;font:500 11px Inter,system-ui,sans-serif}@media (hover:hover){.lcard-job:hover{background:var(--ok-s)}}@media (width<=400px){.lcard-job{padding:0 8px}}.ljob.state-running,.ljob.state-queued{border-color:var(--acc-line);box-shadow:0 0 18px var(--acc-glow)}.ljob-title{overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;flex:1;min-width:0;font-weight:600;display:-webkit-box;overflow:hidden}.ljob-time{color:var(--fg3);font-variant-numeric:tabular-nums;font-size:11px}.ljob-line{color:var(--fg2);-webkit-line-clamp:2;-webkit-box-orient:vertical;flex-basis:100%;font-size:12px;display:-webkit-box;overflow:hidden}.ljob.state-running .chip:before,.ljob.state-queued .chip:before{content:"";vertical-align:1px;background:currentColor;border-radius:50%;width:6px;height:6px;margin-right:5px;animation:1.4s ease-in-out infinite pulse;display:inline-block}@keyframes pulse{50%{opacity:.3}}@media (prefers-reduced-motion:reduce){.ljob .chip:before{animation:none}.caret{transition:none}}.lcard{background:var(--bg2);border:1px solid var(--line);min-width:0;box-shadow:var(--shadow-card);border-radius:12px;overflow:hidden}.lcard-head{border-bottom:1px solid var(--line);align-items:center;gap:6px;padding:4px 4px 4px 2px;font-size:13px;display:flex}.lcard.folded .lcard-head{border-bottom:0}.lcard-fold{min-width:0;min-height:36px;font:inherit;color:var(--fg1);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:8px;flex:1;align-items:center;gap:8px;padding:0 8px;display:flex}@media (hover:hover){.lcard-fold:hover{background:var(--hover)}}.lcard-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:600;overflow:hidden}.lcard-meta{color:var(--fg3);white-space:nowrap;text-overflow:ellipsis;max-width:45%;font-size:11px;overflow:hidden}.lcard .node-x{min-width:36px;min-height:36px}.lcard .card-body{padding:2px 8px 8px;overflow:visible}.lcard-fold:focus-visible,.ldone-toggle:focus-visible,.node-x:focus-visible{outline:2px solid var(--acc);outline-offset:-2px}.list>.lsection>.ljob{margin:0}@media (width<=480px){.list{padding-left:8px;padding-right:8px}.lgroup-cards{margin-left:4px;padding-left:8px}}@media (width>=1200px){.list{max-width:1680px;padding:16px 24px 32px}.lsection{columns:2 560px;column-gap:16px;display:block}.lsection-head{column-span:all;margin-bottom:10px}.lsection>.lgroup,.lsection>.lcard,.lsection>.ljob{break-inside:avoid;margin-bottom:12px}.lgroup-cards .lcard{break-inside:avoid}}.sheet-back{align-items:center;padding:24px}.sheet{border-color:var(--acc-line);background:linear-gradient(180deg, color-mix(in srgb, var(--acc) 6%, var(--bg2)), var(--bg2) 40%);width:100%;max-width:560px;max-height:min(720px,100%);box-shadow:0 0 0 1px var(--acc-soft), var(--shadow-pop), 0 0 40px var(--acc-soft);outline:none;flex-direction:column;animation:.18s ease-out sheet-in;display:flex;overflow:hidden}.sheet.state-failed{border-color:var(--bad-line)}.sheet-head{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:12px 10px 12px 16px;display:flex}.sheet-title{overflow-wrap:anywhere;flex:1;min-width:0;margin:0;font-size:16px;font-weight:600;line-height:1.3}.sheet-body{overflow-wrap:anywhere;flex-direction:column;flex:1;gap:12px;min-height:0;padding:14px 16px 6px;font-size:14px;line-height:1.5;display:flex;overflow-y:auto}.sheet-ask{color:var(--fg1);margin:0}.sheet-meta{color:var(--fg2);font-variant-numeric:tabular-nums;margin:0;font-size:12px}.sheet-progress{background:var(--bg3);border-radius:3px;height:3px;overflow:hidden}.sheet-progress i{background:linear-gradient(90deg, transparent, var(--acc), var(--info));border-radius:3px;width:35%;height:100%;animation:1.6s ease-in-out infinite sheet-run;display:block}.sheet h3{letter-spacing:.12em;text-transform:uppercase;color:var(--acc2);margin:0 0 4px;font-size:11px;font-weight:600}.sheet-out p{white-space:pre-wrap;color:var(--fg1);margin:0}.sheet-out{background:var(--bg1);border:1px solid var(--line);border-radius:10px;padding:10px 12px}.sheet-out.failed{border-color:var(--bad-line);background:var(--bad-s)}.sheet-out.failed h3{color:var(--bad)}.sheet-cards{flex-direction:column;gap:6px;display:flex}.sheet-card{border:1px solid var(--line);background:var(--bg1);min-height:44px;color:var(--fg1);font:inherit;text-align:left;cursor:pointer;border-radius:10px;justify-content:space-between;align-items:center;gap:8px;padding:0 12px;display:flex}@media (hover:hover){.sheet-card:hover{border-color:var(--acc-line)}}.sheet-card-go{color:var(--acc2);white-space:nowrap;font-size:12px}.sheet-raw summary{cursor:pointer;color:var(--fg2);align-items:center;gap:6px;min-height:32px;font-size:12px;list-style:none;display:flex}.sheet-raw summary::-webkit-details-marker{display:none}.sheet-raw summary:before{content:"▸";transition:transform .15s}.sheet-raw[open] summary:before{transform:rotate(90deg)}.sheet-raw pre{background:var(--bg0);border:1px solid var(--line);max-height:200px;color:var(--fg2);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:10px;margin:4px 0 0;padding:10px 12px;font:12px/1.45 ui-monospace,SFMono-Regular,Menlo,monospace;overflow:auto}.sheet-foot{padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);justify-content:flex-end;gap:8px;display:flex}.sheet-btn{border:1px solid var(--line2);min-height:44px;color:var(--fg1);cursor:pointer;background:0 0;border-radius:999px;padding:0 18px;font:600 14px Inter,system-ui,sans-serif}.sheet-btn.primary{background:var(--acc);color:var(--acc-ink);border-color:#0000}.sheet-btn.danger{border-color:var(--bad-line);color:var(--bad)}@media (hover:hover){.sheet-btn:hover{background:var(--bg3)}.sheet-btn.primary:hover{background:var(--acc2)}.sheet-btn.danger:hover{background:var(--bad-s)}}.sheet-btn:disabled{opacity:.6;cursor:default}@keyframes sheet-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes sheet-run{0%{transform:translate(-100%)}to{transform:translate(290%)}}@media (width<=600px){.sheet-back{align-items:flex-end;padding:0}.sheet{border-bottom:0;border-left:0;border-right:0;border-radius:16px 16px 0 0;max-width:none;max-height:88%}.sheet-foot .sheet-btn{flex:1}}@media (prefers-reduced-motion:reduce){.sheet,.sheet-progress i{animation:none}}.job-node .node-title{white-space:normal;overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.3;display:-webkit-box}
