agent-dag 3.12.0 → 3.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1 @@
1
+ .react-flow{direction:ltr}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1;cursor:-webkit-grab;cursor:grab}.react-flow__pane.selection{cursor:pointer}.react-flow__pane.dragging{cursor:-webkit-grabbing;cursor:grabbing}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow .react-flow__edges{pointer-events:none;overflow:visible}.react-flow__edge-path,.react-flow__connection-path{stroke:#b1b1b7;stroke-width:1;fill:none}.react-flow__edge{pointer-events:visibleStroke;cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;-webkit-animation:dashdraw .5s linear infinite;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;-webkit-animation:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge:focus .react-flow__edge-path,.react-flow__edge:focus-visible .react-flow__edge-path{stroke:#555}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge-textbg{fill:#fff}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;-webkit-animation:dashdraw .5s linear infinite;animation:dashdraw .5s linear infinite}.react-flow__connectionline{z-index:1001}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:-webkit-grab;cursor:grab}.react-flow__node.dragging{cursor:-webkit-grabbing;cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:-webkit-grab;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background:#1a192b;border:1px solid white;border-radius:100%}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:-4px;transform:translate(-50%)}.react-flow__handle-top{left:50%;top:-4px;transform:translate(-50%)}.react-flow__handle-left{top:50%;left:-4px;transform:translateY(-50%)}.react-flow__handle-right{right:-4px;top:50%;transform:translateY(-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.center{left:50%;transform:translate(-50%)}.react-flow__attribution{font-size:10px;background:#ffffff80;padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@-webkit-keyframes dashdraw{0%{stroke-dashoffset:10}}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-default,.react-flow__node-input,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:3px;width:150px;font-size:12px;color:#222;text-align:center;border-width:1px;border-style:solid;border-color:#1a192b;background-color:#fff}.react-flow__node-default.selectable:hover,.react-flow__node-input.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:0 1px 4px 1px #00000014}.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:0 0 0 .5px #1a192b}.react-flow__node-group{background-color:#f0f0f040}.react-flow__nodesselection-rect,.react-flow__selection{background:#0059dc14;border:1px dotted rgba(0,89,220,.8)}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls{box-shadow:0 0 2px 1px #00000014}.react-flow__controls-button{border:none;background:#fefefe;border-bottom:1px solid #eee;box-sizing:content-box;display:flex;justify-content:center;align-items:center;width:16px;height:16px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;padding:5px}.react-flow__controls-button:hover{background:#f4f4f4}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__minimap{background-color:#fff}.react-flow__minimap svg{display:block}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:4px;height:4px;border:1px solid #fff;border-radius:1px;background-color:#3367d9;transform:translate(-50%,-50%)}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:#3367d9;border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}:root,:root[data-theme=dark]{--bg: #0b0c10;--bg-soft: #0f1116;--panel: #14161b;--line: #1f2229;--line-soft: #1a1c22;--text: #d8dae0;--text-secondary: #9aa0ab;--ctl-fill: color-mix(in srgb, var(--text) 7%, transparent);--ctl-edge: color-mix(in srgb, var(--text) 50%, transparent);--sm-edge: color-mix(in srgb, var(--text) 36%, transparent);--sm-fill: color-mix(in srgb, var(--text) 5%, transparent);--muted: #7e828c;--muted-dim: #50535b;--text-dim: #7e828c;--accent: #7dd3fc;--accent-dim: #38bdf850;--ok: #86efac;--warn: #fcd34d;--err: #fca5a5;--inflight: #f0abfc;--shadow-1: 0 6px 18px rgba(0,0,0,.25);--shadow-2: 0 10px 24px rgba(0,0,0,.32);--node-grad: linear-gradient(180deg, var(--panel), var(--bg-soft));--topbar-grad: linear-gradient(to bottom, var(--panel), var(--bg-soft));--bg-grid-1: rgba(125,211,252,.06);--bg-grid-2: rgba(240,171,252,.05);--grid-line: #1a1d24;--minimap-mask: rgba(11,12,16,.85);--session-label-l: 78%;--session-accent-l: 60%;--session-rim-l: 55%;--session-edge-l: 72%;--session-edge-idle-l: 55%;--mcp-dot-l: 65%;--usage-purple: #c4b5fd;--usage-blue: #7dd3fc;--usage-green: #86efac;--usage-amber: #fcd34d;--usage-red: #fca5a5;--usage-indigo: #a5b4fc;--usage-orange: #fdba74;--usage-zinc: #94a3b8;color-scheme:dark}:root[data-theme=light]{--bg: #eef1f6;--bg-soft: #ffffff;--panel: #ffffff;--line: #c8cdd6;--line-soft: #dde1e8;--text: #0d1117;--text-secondary: #303845;--muted: #4a5260;--muted-dim: #7c8493;--text-dim: #5f6673;--ctl-fill: color-mix(in srgb, var(--text) 7%, transparent);--ctl-edge: color-mix(in srgb, var(--text) 50%, transparent);--sm-edge: color-mix(in srgb, var(--text) 46%, transparent);--sm-fill: color-mix(in srgb, var(--text) 5%, transparent);--accent: #0369a1;--accent-dim: rgba(3,105,161,.22);--ok: #157a3a;--warn: #ad4e08;--err: #b91c1c;--inflight: #7e22ce;--shadow-1: 0 4px 14px rgba(15,23,42,.1);--shadow-2: 0 10px 28px rgba(15,23,42,.16);--node-grad: linear-gradient(180deg, #ffffff, #f2f5fa);--topbar-grad: linear-gradient(to bottom, #ffffff, #eef1f6);--bg-grid-1: rgba(3,105,161,.1);--bg-grid-2: rgba(126,34,206,.08);--grid-line: #d0d5dd;--minimap-mask: rgba(238,241,246,.85);--session-label-l: 26%;--session-accent-l: 26%;--session-rim-l: 38%;--session-edge-l: 30%;--session-edge-idle-l: 36%;--mcp-dot-l: 32%;--usage-purple: #7e22ce;--usage-blue: #0369a1;--usage-green: #157a3a;--usage-amber: #7a5c00;--usage-red: #be123c;--usage-indigo: #3730a3;--usage-orange: #b0490c;--usage-zinc: #4a5260;color-scheme:light}:root{--panel-inset: 14px;--ctl-h: 30px}:root{--dim-off: .6;--dim-stale: .45}:root{--edge-transition: opacity .5s ease, stroke-width .2s ease;--ctx-arc-transition: stroke-dasharray .4s ease}@media(prefers-reduced-motion:reduce){:root{--edge-transition: opacity .5s ease;--ctx-arc-transition: none}}:root{--pulse-live: 1.2s ease-in-out}*{box-sizing:border-box}html,body,#root{margin:0;height:100%;background:var(--bg);color:var(--text);font:13px/1.45 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased;overscroll-behavior:none}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background-color:transparent;border:2px solid transparent;background-clip:padding-box;border-radius:999px;transition:background-color .16s ease-out}:hover::-webkit-scrollbar-thumb,:focus-within::-webkit-scrollbar-thumb{background-color:var(--line)}*::-webkit-scrollbar-thumb:hover{background-color:var(--muted-dim)}*{scrollbar-color:transparent transparent;scrollbar-width:thin}:hover,:focus-within{scrollbar-color:var(--line) transparent}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}button:focus-visible{outline-offset:1px}.app{display:grid;grid-template-columns:1fr 360px;grid-template-rows:52px auto 1fr;height:100vh}.app:has(.session-list){grid-template-columns:240px 1fr 360px}.app:has(.accounts-panel){grid-template-columns:288px 1fr 360px}.app:has(.session-list) .canvas-wrap,.app:has(.accounts-panel) .canvas-wrap{grid-column:2}.app:has(.session-list) .conn-banner,.app:has(.accounts-panel) .conn-banner,.app:has(.session-list) .ver-banner,.app:has(.accounts-panel) .ver-banner{grid-column:2}.canvas-wrap{grid-column:1;grid-row:3}.detail{grid-column:2;grid-row:2 / -1}.app:has(.session-list) .detail{grid-column:3}.vis-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.skip-link{position:fixed;top:8px;left:8px;z-index:100;padding:8px 14px;border-radius:8px;background:var(--panel);border:1px solid var(--accent);color:var(--text);font-size:12px;font-weight:600;text-decoration:none;transform:translateY(calc(-100% - 16px))}.skip-link:focus{transform:none}.canvas-wrap:focus-visible{outline-offset:-3px}.topbar{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 18px;background:var(--topbar-grad);border-bottom:1px solid var(--line);-webkit-user-select:none;user-select:none}.topbar .readout{display:flex;align-items:center;gap:24px}.topbar .brand{font-weight:600;letter-spacing:.02em;color:var(--text);display:flex;align-items:center;gap:10px;font-size:14px;white-space:nowrap;flex:none}.topbar .brand h1{font:inherit;margin:0}.topbar .brand .logo{width:14px;height:14px;border-radius:4px;background:conic-gradient(from 220deg,#7dd3fc,#f0abfc,#86efac,#7dd3fc);box-shadow:0 0 12px #7dd3fc73}.topbar .brand .v{color:var(--muted);font-weight:400;font-size:11px;margin-left:2px}.topbar .brand button.v{display:inline-flex;align-items:center;flex:none;gap:5px;min-height:24px;padding:2px 7px;border:1px solid transparent;border-radius:999px;background:none;font:inherit;font-size:11px;font-weight:500;cursor:pointer;transition:background .13s,border-color .13s,color .13s,transform .14s cubic-bezier(.23,1,.32,1)}.topbar .brand button.v:active{transform:scale(.97)}.topbar .brand button.v:not(.stale){color:var(--muted);font-weight:400;border-color:var(--ctl-edge)}.topbar .brand button.v:not(.stale):hover{color:var(--text);border-color:var(--text);background:var(--ctl-fill)}.topbar .brand button.v.checking{cursor:progress;opacity:var(--dim-off)}.topbar .brand button.v.stale{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 85%,transparent);background:color-mix(in srgb,var(--warn) 10%,transparent)}.topbar .brand button.v.stale:hover{border-color:var(--warn);background:color-mix(in srgb,var(--warn) 18%,transparent)}.topbar .brand button.v .v-dot{width:5px;height:5px;border-radius:50%;background:var(--warn);box-shadow:0 0 7px var(--warn);animation:pulse 2.4s infinite}.topbar .actions{display:flex;gap:18px;align-items:center;flex:none}.topbar .action-run{display:flex;align-items:center;gap:8px}.sound-slot{position:relative;display:flex}.sound-menu{position:absolute;top:calc(100% + 8px);right:0;z-index:40;width:268px;padding:12px;display:flex;flex-direction:column;gap:12px;background:var(--panel);border:1px solid var(--line);border-radius:10px;box-shadow:0 1px 2px #0000004d,0 14px 34px #00000057;animation:popIn .14s cubic-bezier(.22,1,.36,1);text-align:left}.sm-switches{display:flex;flex-direction:column;gap:12px}.sm-switch{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:20px}.sm-switch-label{font-weight:500}.sm-toggle{position:relative;width:30px;height:17px;padding:0;border-radius:9px;border:1px solid var(--ctl-edge);background:var(--ctl-fill);cursor:pointer;flex:none;transition:background .14s ease,border-color .14s ease,transform .12s ease}.sm-toggle:hover{border-color:var(--accent)}.sm-toggle:active{transform:scale(.97)}.sm-toggle[aria-checked=true]{background:var(--accent);border-color:var(--accent)}.sm-toggle-knob{position:absolute;top:2px;left:2px;width:11px;height:11px;border-radius:50%;background:var(--muted);transition:transform .14s cubic-bezier(.22,1,.36,1),background .14s ease}.sm-toggle[aria-checked=true] .sm-toggle-knob{transform:translate(13px);background:var(--bg)}.sm-setting,.sm-channel{display:flex;flex-direction:column;gap:5px}.sm-channel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:var(--ctl-h)}.sm-channel-name{margin:0;font-size:11px;font-weight:500;color:var(--text-dim)}button.btn.sm-channel-action{padding:0 10px;font-size:11px;border-color:var(--sm-edge);background:var(--sm-fill)}.sm-tones{display:flex;flex-direction:column;gap:18px;padding-top:14px;border-top:1px solid var(--line)}.sm-tone{display:flex;flex-direction:column;gap:9px}.sm-tone-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.sm-tone-name{margin:0;font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:color-mix(in srgb,var(--muted) 88%,var(--panel));font-weight:500}button.btn.sm-hear{padding:0 8px;gap:4px;font-size:11px;border-color:var(--sm-edge);background:var(--sm-fill);color:color-mix(in srgb,var(--text) 88%,var(--panel))}.sm-channel-state{display:inline-flex;align-items:center;gap:5px;font-size:11px;color:var(--muted)}.sm-channel-state[data-ok]{color:color-mix(in srgb,var(--ok) 70%,var(--text))}.sm-row{display:flex;align-items:center;gap:10px}.sm-row label{font-size:12px;color:var(--muted);min-width:48px}.sm-row input[type=range]{flex:1;min-width:0;margin:0;height:18px;accent-color:var(--accent)}@supports selector(input::-webkit-slider-runnable-track){.sm-row input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent}.sm-row input[type=range]::-webkit-slider-runnable-track{height:3px;border-radius:999px;background:linear-gradient(to right,var(--accent) 0 var(--sm-level, 0%),color-mix(in srgb,var(--text) 14%,transparent) var(--sm-level, 0%) 100%)}.sm-row input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:11px;height:11px;margin-top:-4px;border-radius:50%;background:var(--accent)}}@supports selector(input::-moz-range-track){.sm-row input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent}.sm-row input[type=range]::-moz-range-track{height:3px;border-radius:999px;background:color-mix(in srgb,var(--text) 14%,transparent)}.sm-row input[type=range]::-moz-range-progress{height:3px;border-radius:999px;background:var(--accent)}.sm-row input[type=range]::-moz-range-thumb{width:11px;height:11px;border:none;border-radius:50%;background:var(--accent)}}.sound-menu .sm-read{color:var(--muted);font-size:10px;font-variant-numeric:tabular-nums}.sm-read{min-width:34px;text-align:right;font-variant-numeric:tabular-nums;font-size:11px;color:var(--text)}.sm-select{flex:1;min-width:0;min-height:24px;padding:0 6px;background:var(--sm-fill);color:var(--text);border:1px solid var(--sm-edge);border-radius:6px;font:inherit;font-size:12px;accent-color:var(--accent)}.sm-select:hover{border-color:var(--accent)}.sm-note{margin:0;font-size:11px;line-height:1.45;color:var(--text-dim)}.sm-foot{margin:0;padding-top:12px;border-top:1px solid var(--line);font-size:11px;color:color-mix(in srgb,var(--text-dim) 88%,var(--panel))}.sm-foot kbd{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;font-weight:600;color:var(--text);background:var(--bg-soft);border:1px solid var(--line);border-bottom-width:2px;border-radius:4px;padding:1px 5px;margin-right:7px}.selected-ribbon{display:inline-flex;align-items:center;gap:8px;padding:4px 6px 4px 10px;background:var(--bg-soft);border:1px solid var(--ctl-edge);border-radius:999px;color:var(--text);font:inherit;font-size:12px;cursor:pointer;max-width:min(380px,26vw);min-width:0;transition:border-color .12s,background .12s,transform .14s cubic-bezier(.23,1,.32,1)}.selected-ribbon:hover{border-color:var(--accent);background:var(--bg)}.selected-ribbon:active:not(:has(.selected-close:active)){transform:scale(.97)}.selected-ribbon:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.selected-ribbon .selected-label{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:0 1 auto}.selected-ribbon .selected-cost{color:var(--ok);font-variant-numeric:tabular-nums;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;white-space:nowrap}.selected-ribbon .selected-rate{color:var(--muted);font-size:10px;white-space:nowrap}.selected-ribbon .selected-extra{display:inline-flex;align-items:center;padding:1px 6px;border-radius:999px;background:var(--accent-dim);color:var(--text);font-size:10px;font-weight:600;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.selected-ribbon .selected-close{position:relative;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;flex:none;border-radius:999px;color:var(--muted);font-size:14px;line-height:1;cursor:pointer;transition:background .12s,color .12s,transform .14s cubic-bezier(.23,1,.32,1)}.selected-ribbon .selected-close:after{content:"";position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;border-radius:inherit}.selected-ribbon .selected-close:hover{background:var(--line);color:var(--text)}.selected-ribbon .selected-close:active{transform:scale(.94)}.topbar .status{color:var(--muted);font-size:12px;display:inline-flex;align-items:center;gap:14px}.sysdetail{position:fixed;top:60px;right:var(--rail-r);z-index:20;width:280px;max-height:calc(100vh - 76px);overflow-y:auto;--pad-x: 14px;padding:12px var(--pad-x) 14px;background:var(--panel);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow-2);font-size:11px;color:var(--text);text-align:left;cursor:default;animation:sdIn .16s cubic-bezier(.22,1,.36,1)}.app{--rail-r: 368px}.app:not(:has(.detail)){--rail-r: 8px}.sysdetail.shifted{right:calc(var(--rail-r) + 280px + 20px)}@keyframes sdIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.sd-head{display:flex;align-items:baseline;gap:8px;margin-bottom:12px}.sd-title{font-size:12px;font-weight:600}.sd-sub{color:var(--muted);font-variant-numeric:tabular-nums}.sd-close{margin-left:auto}.sd-section+.sd-section{margin-top:13px}.sd-h{margin:0 0 6px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.sd-cores{display:grid;grid-template-columns:repeat(var(--n),1fr);gap:2px;height:26px}.sd-core{display:flex;align-items:flex-end;background:var(--line);border-radius:2px;overflow:hidden}.sysdetail .sd-core-fill{width:100%;height:100%;background:var(--accent);border-radius:2px;transform-origin:bottom;transition:transform .32s cubic-bezier(.22,1,.36,1)}.sd-row+.sd-row{margin-top:9px}.sysdetail .sd-open{display:block;width:calc(100% + var(--pad-x) * 2);padding:4px var(--pad-x);margin:-4px calc(var(--pad-x) * -1);border:0;background:none;font:inherit;color:inherit;text-align:left;cursor:pointer;transition:background .14s ease,transform .14s ease}.sysdetail .sd-door .sd-door-plate{display:block;padding:8px 10px;border-radius:8px;background:color-mix(in srgb,var(--text) 4%,transparent);transition:background .14s ease}.sysdetail .sd-door:hover .sd-door-plate{background:color-mix(in srgb,var(--text) 8%,transparent)}.sd-door-name{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px;font-weight:600;color:var(--text)}.sd-door-sub{display:block;margin-top:3px;color:var(--muted);font-size:10px}.sysdetail .sd-open.sd-door:hover{background:none}.sysdetail .sd-open:hover{background:color-mix(in srgb,var(--text) 6%,transparent)}.sysdetail .sd-open:active{transform:scale(.97)}.sd-row-more{font-style:normal;font-size:11px;color:var(--text-dim);transition:color .14s ease}.sysdetail .sd-open:hover .sd-row-more{color:var(--text)}.sd-row-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:4px}.sd-row-label{color:var(--muted)}.sd-row-val{font-variant-numeric:tabular-nums;color:var(--muted)}.sd-row-val b{color:var(--text);font-weight:600}.sd-track{display:block;height:4px;border-radius:999px;background:var(--line);overflow:hidden}.sysdetail .sd-fill{display:block;width:100%;height:100%;border-radius:999px;background:var(--accent);transform-origin:left center;transition:transform .42s cubic-bezier(.22,1,.36,1),background .2s ease}.sd-fill.warn{background:var(--warn)}.sd-fill.hot{background:var(--err)}.sd-load{display:flex;gap:14px}.sd-load-item{display:flex;flex-direction:column;gap:1px;font-variant-numeric:tabular-nums}.sd-load-item b{font-size:13px;font-weight:600}.sd-load-item span{color:var(--muted);font-size:10px}.sd-load-item.over b{color:var(--warn)}.sd-note{margin-top:5px;color:var(--muted);font-size:10px}:is(.sysdetail,.pl-body) .sd-procs{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}:is(.sysdetail,.pl-body) .sd-procs :is(.pl-name,.pl-user){font-variant-numeric:normal}:is(.sysdetail,.pl-body) .sd-procs th{padding:0 0 3px}:is(.sysdetail,.pl-body) .sd-procs th:first-child,:is(.sysdetail,.pl-body) .sd-procs th:nth-child(2){width:40px}:is(.sysdetail,.pl-body) .sd-sort{display:flex;align-items:center;gap:3px;width:100%;min-height:24px;padding:0;border:0;border-radius:4px;background:none;font:inherit;font-size:10px;font-weight:500;line-height:1;color:var(--muted);cursor:pointer;transition:color .14s ease,background .14s ease,transform .14s ease}:is(.sysdetail,.pl-body) .sd-procs th:first-child .sd-sort,:is(.sysdetail,.pl-body) .sd-procs th:nth-child(2) .sd-sort{flex-direction:row-reverse;justify-content:flex-start;padding-right:8px}:is(.sysdetail,.pl-body) .sd-sort:hover{background:var(--line);color:var(--text)}:is(.sysdetail,.pl-body) .sd-sort:active{transform:scale(.97)}:is(.sysdetail,.pl-body) .sd-procs th:not([aria-sort=none]) .sd-sort{color:var(--text)}.sd-sort-dir{display:inline-block;width:8px;text-align:center}:is(.sysdetail,.pl-body) .sd-procs td{padding:2px 0}.sd-num{text-align:right;padding-right:8px!important;font-weight:600}.sd-dim{color:var(--muted);font-weight:400}@media(prefers-reduced-motion:reduce){.sysdetail{animation:none}.sysdetail .sd-core-fill,.sysdetail .sd-fill{transition:none}:is(.sysdetail,.pl-body) .sd-sort:active{transform:none}.sysdetail .sd-open:active{transform:none}}.topbar .status .pill{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;border-radius:999px;background:var(--bg-soft);border:1px solid var(--line);font-size:11px;font-weight:600;transition:color .2s ease,background-color .2s ease,border-color .2s ease}.topbar .status .pill:before{transition:background-color .2s ease,box-shadow .2s ease}.topbar .status .pill .pill-box{display:inline-grid;grid-template-areas:"pill-label";align-items:center;justify-items:start;font-variant-numeric:tabular-nums}.topbar .status .pill .pill-widest,.topbar .status .pill .pill-label{grid-area:pill-label;white-space:nowrap}.topbar .status .pill .pill-widest{visibility:hidden}.topbar .status .pill.live{color:var(--ok);border-color:#86efac59;background:#86efac0f}.topbar .status .pill.live:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--ok);box-shadow:0 0 8px var(--ok);animation:pulse 1.6s ease-in-out infinite}.topbar .status .pill.paused{color:var(--warn);border-color:#fcd34d59;background:#fcd34d0f}.topbar .status .pill.paused:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--warn);box-shadow:0 0 8px var(--warn)}.topbar .status .pill.dead{color:var(--err);border-color:#fca5a559;background:#fca5a50f}.topbar .status .pill.dead:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--err);box-shadow:0 0 8px var(--err)}.topbar .notify-ask{display:inline-flex;align-items:center;min-height:24px;margin-left:6px;padding:3px 9px;border-radius:999px;background:transparent;border:1px dashed var(--ctl-edge);color:var(--muted);font:inherit;font-size:11px;cursor:pointer;white-space:nowrap;transition:border-color .12s,color .12s,transform .14s cubic-bezier(.23,1,.32,1)}.topbar .notify-ask:hover{border-color:color-mix(in srgb,var(--warn) 85%,transparent);color:var(--warn)}.topbar .notify-ask:active{transform:scale(.97)}@media(prefers-reduced-motion:reduce){.topbar .notify-ask:active{transform:none}}.topbar .notify-said{display:inline-flex;align-items:center;min-height:24px;margin-left:6px;padding:3px 2px;font-size:11px;white-space:nowrap;color:var(--muted)}.topbar .notify-said-blocked{color:var(--warn)}.topbar .waiting-stat{display:inline-flex;align-items:center;gap:6px;min-height:24px;padding:3px 9px;border-radius:999px;background:transparent;border:1px solid color-mix(in srgb,var(--warn) 85%,transparent);color:var(--warn);font:inherit;font-size:11px;cursor:pointer;white-space:nowrap;transition:border-color .12s,background .12s,transform .14s cubic-bezier(.23,1,.32,1)}.topbar .waiting-stat b{font-weight:700;font-variant-numeric:tabular-nums}.topbar .waiting-stat:hover{border-color:var(--warn);background:color-mix(in srgb,var(--warn) 12%,transparent)}.topbar .waiting-stat:active{transform:scale(.97)}@media(prefers-reduced-motion:reduce){.topbar .waiting-stat:active{transform:none}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}button.btn{background:transparent;color:var(--text);border:1px solid var(--ctl-edge);min-height:var(--ctl-h);padding:0 12px;border-radius:6px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font:inherit;font-size:12px;transition:border-color .12s,color .12s,background .12s,transform .14s cubic-bezier(.23,1,.32,1)}button.btn:hover{border-color:var(--accent);color:var(--accent)}button.btn:active:not(:disabled){transform:scale(.97)}button.btn:disabled{opacity:var(--dim-off);cursor:default}button.btn.primary{background:var(--accent-dim);color:var(--text);border-color:var(--accent)}button.btn.danger{color:var(--err);border-color:color-mix(in srgb,var(--err) 65%,transparent)}button.btn.danger:hover{border-color:var(--err);color:var(--err);background:color-mix(in srgb,var(--err) 12%,transparent)}button.btn.icon-btn{width:var(--ctl-h);height:var(--ctl-h);padding:0;font-size:14px;line-height:1}button.btn.icon-btn[aria-pressed=true],button.btn.icon-btn[aria-expanded=true]{background:var(--accent);border-color:var(--accent);color:var(--bg)}button.btn.icon-btn[aria-pressed=true]:hover,button.btn.icon-btn[aria-expanded=true]:hover{box-shadow:0 0 0 2px var(--accent-dim)}.glyph-btn{display:inline-flex;align-items:center;justify-content:center;min-width:24px;min-height:24px;padding:4px;margin-top:-4px;margin-bottom:-4px;background:none;border:0;border-radius:50%;color:var(--muted);font:inherit;font-size:16px;line-height:1;cursor:pointer;transition:color .12s,transform .14s cubic-bezier(.23,1,.32,1)}.glyph-btn:focus-visible{outline-offset:1px}.glyph-btn:hover{color:var(--text)}.glyph-btn:active:not(:disabled){transform:scale(.94)}.conn-banner{grid-column:1;grid-row:2;display:flex;align-items:center;gap:10px;padding:8px 18px;background:linear-gradient(90deg,rgba(252,165,165,.12),transparent);border-bottom:1px solid rgba(252,165,165,.3);color:var(--err);font-size:12px;font-weight:500;animation:fadeIn .2s ease}.conn-banner .conn-dot{width:7px;height:7px;border-radius:50%;background:var(--err);box-shadow:0 0 8px var(--err);animation:pulse 1.2s infinite}.conn-banner .conn-sub{color:var(--text);font-weight:400}.ver-banner{grid-column:1;grid-row:2;display:flex;align-items:center;gap:10px;padding:8px 18px;background:linear-gradient(90deg,color-mix(in srgb,var(--warn) 13%,transparent),transparent);border-bottom:1px solid color-mix(in srgb,var(--warn) 30%,transparent);color:var(--text);font-size:12px;font-weight:500;animation:fadeIn .2s ease}.ver-banner .ver-dot{flex:none;width:7px;height:7px;border-radius:50%;background:var(--warn);box-shadow:0 0 8px var(--warn)}.ver-banner .ver-dot.armed{animation:pulse 2.4s infinite}.ver-banner strong{font-weight:600}.ver-banner strong,.ver-banner .ver-sub{white-space:nowrap}.ver-banner .ver-sub{color:var(--muted);font-weight:400;min-width:0;overflow:hidden;text-overflow:ellipsis}.ver-banner .ver-cmd{display:inline-flex;align-items:center;gap:8px;padding:3px 5px 3px 9px;border:1px solid var(--ctl-edge);border-radius:999px;background:var(--ctl-fill);color:var(--text);cursor:pointer;transition:border-color .13s,background .13s,transform .14s cubic-bezier(.23,1,.32,1)}.ver-banner .ver-cmd:hover{border-color:var(--accent);background:var(--panel)}.ver-banner .ver-cmd:active{transform:scale(.97)}.ver-banner .ver-cmd code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;-webkit-user-select:text;user-select:text}.ver-banner .ver-cmd-hint{font-size:10px;letter-spacing:.04em;text-transform:uppercase;color:var(--text);background:var(--line);border-radius:999px;padding:2px 7px}.ver-banner.done{background:linear-gradient(90deg,color-mix(in srgb,var(--ok) 13%,transparent),transparent);border-bottom-color:color-mix(in srgb,var(--ok) 30%,transparent)}.ver-banner.done .ver-dot{background:var(--ok);box-shadow:0 0 8px var(--ok);animation:none}.ver-banner .ver-act{padding:3px 11px;border:1px solid color-mix(in srgb,var(--warn) 85%,transparent);border-radius:999px;background:color-mix(in srgb,var(--warn) 16%,transparent);color:var(--text);font:inherit;font-size:11px;font-weight:600;cursor:pointer;transition:background .13s,border-color .13s,transform .14s cubic-bezier(.23,1,.32,1)}.ver-banner .ver-act:hover:not(:disabled){background:color-mix(in srgb,var(--warn) 26%,transparent);border-color:var(--warn)}.ver-banner .ver-act:active:not(:disabled){transform:scale(.97)}.ver-banner .ver-act:disabled{opacity:var(--dim-off);cursor:default}.ver-banner .ver-sub.fail{color:var(--err)}.ver-banner .ver-auto{display:inline-flex;align-items:center;gap:6px;padding:3px 9px;border:1px solid transparent;border-radius:999px;background:none;color:var(--text);font:inherit;font-size:11px;cursor:pointer;transition:color .13s,border-color .13s,transform .14s cubic-bezier(.23,1,.32,1)}.ver-banner .ver-auto:hover{border-color:var(--ctl-edge)}.ver-banner .ver-auto:active{transform:scale(.97)}.ver-banner .ver-auto i{width:6px;height:6px;border-radius:50%;background:var(--muted-dim);transition:background .13s,box-shadow .13s}.ver-banner .ver-auto.on i{background:var(--warn);box-shadow:0 0 6px var(--warn)}.ver-banner .ver-close{display:inline-flex;align-items:center;justify-content:center;margin-left:2px;flex:none;width:24px;height:24px;padding:0;border:0;border-radius:999px;background:none;color:var(--muted);font:inherit;font-size:14px;line-height:1;cursor:pointer;transition:background .12s,color .12s,transform .14s cubic-bezier(.23,1,.32,1)}.ver-banner .ver-close:hover{background:var(--line);color:var(--text)}.ver-banner .ver-close:active{transform:scale(.94)}.react-flow__node.rf-spotlit-out{opacity:.16;filter:saturate(.3) blur(.3px);transition:opacity .2s ease,filter .2s ease}.react-flow__node.rf-spotlit-out:hover{opacity:.55;filter:saturate(.7)}.react-flow__edge.rf-edge-selected .react-flow__edge-path{stroke-dasharray:6 3;animation:dashflow .8s linear infinite;filter:drop-shadow(0 0 4px var(--accent-dim))}.react-flow__node.rf-exiting{pointer-events:none}.react-flow__node.rf-exiting .agent-node{animation:nodeExit .6s cubic-bezier(.55,0,.55,1) forwards}@keyframes nodeExit{0%{opacity:1;filter:blur(0) saturate(1);transform:scale(1)}60%{opacity:.4;filter:blur(2px) saturate(.4)}to{opacity:0;filter:blur(6px) saturate(0);transform:scale(.85)}}.react-flow__edge.rf-edge-exiting .react-flow__edge-path{animation:edgeExit .6s ease forwards}@keyframes edgeExit{to{opacity:0;stroke-dashoffset:40}}.canvas-wrap{position:relative;background:radial-gradient(1200px 600px at 60% -10%,var(--bg-grid-1),transparent 60%),radial-gradient(1000px 500px at 10% 110%,var(--bg-grid-2),transparent 60%),var(--bg);overflow:hidden}.cat-filter-bar{position:absolute;top:14px;left:14px;z-index:6;display:flex;gap:4px;padding:4px;background:#14161bc7;border:1px solid var(--line);border-radius:999px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 6px 18px #0000004d}:root[data-theme=light] .cat-filter-bar{background:#ffffffc7;box-shadow:0 6px 18px #0f172a1a}.cat-filter{display:inline-flex;align-items:center;gap:5px;padding:4px 10px 4px 8px;border-radius:999px;border:1px solid transparent;background:transparent;color:var(--text);font:inherit;font-size:11px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.02em;cursor:pointer;transition:background .12s,color .12s,transform .14s cubic-bezier(.23,1,.32,1)}.cat-filter .cat-emoji{font-size:13px;line-height:1}.cat-filter .cat-name{text-transform:lowercase}.cat-filter:hover{background:var(--ctl-fill)}.cat-filter:active{transform:scale(.97)}.cat-filter:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.cat-filter.off{color:var(--muted)}.cat-filter.off .cat-emoji{filter:grayscale(.7)}.cat-filter.off:hover{color:var(--text)}.cat-filter.off .cat-name{text-decoration:line-through}.detail{position:relative;background:var(--panel);border-left:1px solid var(--line);padding:18px;overflow:auto;display:flex;flex-direction:column;gap:12px}.detail-close{position:absolute;top:10px;right:12px;z-index:2;margin-top:0;margin-bottom:0}.app:not(:has(.detail)){grid-template-columns:1fr}.app:has(.session-list):not(:has(.detail)){grid-template-columns:240px 1fr}.app:has(.accounts-panel):not(:has(.detail)){grid-template-columns:288px 1fr}.detail>h2,.detail h3{margin:0;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:600}.detail .empty{color:var(--muted);font-style:italic}.detail .row{display:flex;justify-content:space-between;align-items:baseline;padding:5px 0;border-bottom:1px solid var(--line-soft);font-size:12px;gap:12px}.detail .row:last-child{border-bottom:none}.detail .row .k{color:var(--muted)}.detail .row .v{color:var(--text);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;overflow:hidden;text-overflow:ellipsis;max-width:220px;white-space:nowrap}.detail .tool{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;padding:5px 0;color:var(--text);display:flex;justify-content:space-between;gap:8px;border-bottom:1px solid var(--line-soft)}.detail .tool:last-child{border-bottom:none}.detail .tool .name{display:inline-flex;align-items:center;gap:8px}.detail .tool .name .status-dot{display:inline-flex;align-items:center;justify-content:center;width:10px;height:10px;flex:0 0 10px;font-size:11px;font-weight:700;line-height:1}.detail .tool .name .status-dot:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.detail .tool .name .status-dot.inflight{color:var(--inflight)}.detail .tool .name .status-dot.inflight:before{animation:pulse var(--pulse-live) infinite}.detail .tool .name .status-dot.done{color:var(--ok)}.detail .tool .name .status-dot.done:before{content:"✓";width:auto;height:auto;background:none}.detail .tool .name .status-dot.err{color:var(--err)}.detail .tool .name .status-dot.err:before{content:"×";width:auto;height:auto;background:none}.react-flow__renderer{background:transparent}.react-flow__node{transition:transform .32s cubic-bezier(.22,1,.36,1);animation:nodeSpawn .36s cubic-bezier(.22,1,.36,1) both}@keyframes nodeSpawn{0%{opacity:0;filter:blur(2px)}}.react-flow__node.dragging,.react-flow__node:active{transition:none}.react-flow__edge-path{stroke:var(--accent-dim);stroke-width:1.5;transition:stroke .2s ease}.react-flow__edge.animated .react-flow__edge-path{stroke:var(--inflight);stroke-dasharray:5;animation:dashflow .8s linear infinite}.react-flow__edge.sess-edge.sess-live .react-flow__edge-path{stroke:hsl(var(--session-hue, 200) 80% var(--session-edge-l))}.react-flow__edge.sess-edge.sess-idle .react-flow__edge-path{stroke:hsl(var(--session-hue, 200) 50% var(--session-edge-idle-l))}@keyframes dashflow{to{stroke-dashoffset:-10}}.react-flow__attribution{display:none}.react-flow__controls{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:none;overflow:hidden}.react-flow__controls-button{background:var(--panel);color:var(--text);border-bottom:1px solid var(--line);fill:var(--text)}.react-flow__controls-button:hover{background:var(--ctl-fill)}.react-flow__controls-button[aria-pressed=true]{background:var(--warn);color:var(--bg);fill:var(--bg)}.react-flow__controls-button[aria-pressed=true]:hover{box-shadow:inset 0 0 0 2px var(--bg)}.agent-node{--accent: hsl(var(--session-hue, 200) 70% var(--session-accent-l));position:relative;min-width:220px;max-width:260px;padding:10px 12px 10px 16px;background:var(--node-grad);border:1px solid var(--line);border-radius:10px;color:var(--text);font-size:12px;box-shadow:var(--shadow-1);transition:border-color .2s ease,box-shadow .2s ease;overflow:hidden;will-change:transform}.agent-node:hover{box-shadow:var(--shadow-2)}.agent-node.selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent-dim),0 10px 24px #0006}.agent-node.state-active{border-color:var(--inflight);box-shadow:0 0 0 1px #f0abfc73,0 8px 22px #f0abfc2e}.agent-node.state-done{border-color:#86efac80}.agent-node.state-err{border-color:#fca5a599}.agent-node .accent-stripe{position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--accent);opacity:.7}.agent-node .head{display:flex;align-items:center;justify-content:space-between;gap:8px}.agent-node .head-right{display:flex;align-items:center;gap:6px}.ctx-donut{background:transparent;border:none;padding:0;cursor:pointer;line-height:0;border-radius:50%;transition:filter .12s ease,transform .12s ease}.ctx-donut:hover{filter:brightness(1.2);transform:scale(1.08)}.ctx-donut:active{transform:scale(.94)}.ctx-donut:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.ctx-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:100;padding:24px;animation:fadeIn .14s ease-out}.ctx-modal{background:var(--panel);border:1px solid var(--line);border-radius:12px;box-shadow:0 20px 50px #00000080;width:min(560px,100%);max-height:80vh;overflow:auto;padding:18px 20px 22px;color:var(--text);animation:popIn .18s cubic-bezier(.22,1,.36,1)}.ctx-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.ctx-modal-title{font-size:14px;font-weight:600}.ctx-modal-sub{font-size:11px;color:var(--muted);margin-top:3px}.ctx-modal-close{transition:color .12s,transform .14s cubic-bezier(.23,1,.32,1)}.ctx-modal-close:hover{color:var(--text)}.ctx-window-row{margin-bottom:16px}.ctx-window-bar{position:relative;height:10px;border-radius:999px;background:var(--bg-soft);border:1px solid var(--line);overflow:hidden}.ctx-window-fill{height:100%;background:linear-gradient(90deg,var(--accent),var(--inflight));transition:width .4s ease}.ctx-window-meta{display:flex;justify-content:space-between;font-size:11px;margin-top:6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--muted)}.ctx-window-pct{color:var(--text);font-weight:600}.ctx-section-title{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:18px 0 8px;font-weight:600}.ctx-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px 16px}.ctx-row{display:flex;justify-content:space-between;padding:4px 0;font-size:12px;border-bottom:1px dashed var(--line)}.ctx-row.accent .ctx-row-val{color:var(--accent);font-weight:600}.ctx-row-label{color:var(--muted)}.ctx-row-val{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-variant-numeric:tabular-nums}.ctx-empty{font-size:12px;color:var(--muted);padding:8px 0}.ctx-md-list{list-style:none;padding:0;margin:0}.ctx-md-list li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:6px 0;border-bottom:1px dashed var(--line);font-size:12px}.ctx-md-path{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ctx-md-size{color:var(--muted);font-variant-numeric:tabular-nums;flex-shrink:0}.agent-node .title{display:flex;align-items:center;gap:8px;min-width:0}.agent-node .title .label{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:160px}.agent-node .time{font-variant-numeric:tabular-nums;font-size:11px;color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.state-pill{display:inline-flex;align-items:center;padding:1px 7px;font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;border-radius:999px;border:1px solid transparent}.state-pill.state-active{color:var(--inflight);border-color:#f0abfc66;background:#f0abfc14}.state-pill.state-active:before{content:"";width:5px;height:5px;border-radius:50%;background:var(--inflight);box-shadow:0 0 6px var(--inflight);margin-right:5px;animation:pulse var(--pulse-live) infinite}.state-pill.state-done{color:var(--ok);border-color:#86efac59;background:#86efac14}.state-pill.state-err{color:var(--err);border-color:#fca5a566;background:#fca5a514}.agent-node .waiting-row{display:flex;align-items:center;gap:6px;margin-top:7px;padding:3px 7px;border:1px solid transparent;border-radius:6px;font-size:10px;font-weight:600;min-width:0}.agent-node .waiting-row.permission{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 85%,transparent)}.agent-node .waiting-row.idle{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 85%,transparent)}.agent-node .waiting-said{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.agent-node .waiting-row b{font-weight:700;font-variant-numeric:tabular-nums}.waiting-dot{width:5px;height:5px;border-radius:50%;background:currentColor;flex-shrink:0}.agent-node .approval-blind-row{display:flex;align-items:center;gap:6px;margin-top:7px;padding:3px 7px;font-size:10px;font-weight:600;min-width:0;color:var(--muted);font-style:italic}.agent-node .approval-blind-said{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.approval-blind-dot{width:5px;height:5px;border-radius:50%;border:1px solid currentColor;flex-shrink:0}.agent-node .sub{color:var(--muted);font-size:11px;margin-top:3px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.agent-node .session-name{margin-top:4px;font-size:11px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tool-spark-row{display:flex;align-items:center;gap:8px;margin-top:6px;height:14px}.tool-spark{flex:0 0 auto;overflow:visible}.tool-spark-bar{fill:var(--muted);transition:fill .2s}.tool-spark-bar.active{fill:var(--accent);opacity:.72}.tool-spark-bar.latest{fill:var(--inflight);opacity:1;filter:drop-shadow(0 0 3px rgba(240,171,252,.55))}.tool-spark-label{color:var(--muted);font-size:9px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.04em;text-transform:uppercase}:root[data-theme=light] .tool-spark-bar{fill:var(--muted-dim)}:root[data-theme=light] .tool-spark-bar.active{fill:var(--accent);opacity:.85}:root[data-theme=light] .tool-spark-bar.latest{fill:var(--inflight);filter:drop-shadow(0 0 3px rgba(126,34,206,.45))}.agent-node .meta{color:var(--muted);font-size:11px;margin-top:8px;display:flex;gap:12px}.agent-node .meta b{color:var(--text);font-weight:600}.agent-node .meta .inflight-meta,.agent-node .meta .inflight-meta b{color:var(--inflight)}.agent-node .meta .tokens-meta{color:var(--accent);margin-left:auto}.agent-node .meta .tokens-meta b{color:var(--accent)}.agent-node .meta .cost-meta{color:var(--ok);display:inline-flex;align-items:baseline;gap:4px}.agent-node .meta .cost-meta b{color:var(--ok)}.agent-node .meta .cost-unpriced{color:var(--muted);font-style:italic}.agent-node .meta .cost-meta .cost-rate{color:var(--muted);font-size:9px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.02em}.tokens-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px 12px;padding:8px 10px;background:var(--bg-soft);border:1px solid var(--line);border-radius:8px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.tokens-grid>div{display:flex;justify-content:space-between;align-items:baseline}.tokens-grid .k{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.06em}.tokens-grid b{color:var(--text);font-weight:600;font-variant-numeric:tabular-nums}.agent-node.synthetic{border-style:dashed;opacity:.92}.agent-node .synth-tag{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border-radius:50%;border:1px solid var(--muted);color:var(--muted);font-size:10px;font-weight:700;margin-left:4px}.spawn-badge{display:inline-flex;align-items:center;padding:1px 6px;margin-left:6px;border-radius:999px;border:1px solid var(--line);color:var(--accent);background:var(--bg-soft);font-size:10px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:600}.model-chip{display:inline-flex;align-items:center;padding:1px 7px;margin-left:6px;border-radius:999px;border:1px solid var(--line);color:var(--text);background:var(--bg-soft);font-size:10px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:600;letter-spacing:.02em}.model-chip[data-family=opus]{color:#f0abfc;border-color:#f0abfc66;background:#f0abfc0f}.model-chip[data-family=sonnet]{color:#7dd3fc;border-color:#7dd3fc66;background:#7dd3fc0f}.model-chip[data-family=haiku]{color:#86efac;border-color:#86efac66;background:#86efac0f}.model-chip[data-family=fable],.model-chip[data-family=mythos]{color:#fcd34d;border-color:#fcd34d66;background:#fcd34d0f}:root[data-theme=light] .model-chip[data-family=opus]{color:#6b21a8;border-color:#7e22ce8c;background:#7e22ce24}:root[data-theme=light] .model-chip[data-family=sonnet]{color:#075985;border-color:#0369a18c;background:#0369a124}:root[data-theme=light] .model-chip[data-family=haiku]{color:#166534;border-color:#15803d8c;background:#15803d24}:root[data-theme=light] .model-chip[data-family=fable],:root[data-theme=light] .model-chip[data-family=mythos]{color:#92400e;border-color:#b453098c;background:#b4530924}.react-flow__edge-textbg{fill:var(--bg-soft);fill-opacity:.9}.react-flow__edge-text{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;fill:var(--text)}.session-clusters{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;transform-origin:0 0;will-change:transform}.cluster-card{position:absolute;border-radius:16px;border:1px solid hsl(var(--session-hue, 200) 65% var(--session-rim-l) / .32);background:hsl(var(--session-hue, 200) 70% 50% / .04);transition:opacity .2s ease,left .32s cubic-bezier(.22,1,.36,1),top .32s cubic-bezier(.22,1,.36,1),width .32s cubic-bezier(.22,1,.36,1),height .32s cubic-bezier(.22,1,.36,1);overflow:visible;pointer-events:auto;cursor:grab}.cluster-label{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:3px 10px;border-radius:999px;background:var(--bg);color:hsl(var(--session-hue, 200) 70% var(--session-label-l));border:1px solid hsl(var(--session-hue, 200) 65% var(--session-rim-l) / .5);box-shadow:0 2px 6px #00000040;white-space:nowrap;line-height:1;cursor:pointer;pointer-events:auto;-webkit-user-select:none;user-select:none;transition:box-shadow .12s ease,filter .12s ease}.cluster-label-name{text-transform:none;letter-spacing:.02em}.cluster-label:hover{filter:brightness(1.25);box-shadow:0 4px 14px #00000073,0 0 0 1px currentColor}.session-group-handle{cursor:grab;background:transparent}.react-flow__node-sessionGroup{cursor:grab}.react-flow__node-sessionGroup.dragging,.react-flow__node-sessionGroup:active{cursor:grabbing}.react-flow__node-sessionGroup.selected{box-shadow:none}:root[data-theme=light] .cluster-label{background:var(--bg-soft);box-shadow:0 1px 4px #0f172a14}:root[data-theme=light] .cluster-label:hover{filter:brightness(.9)}.tool-bursts-layer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:5;overflow:visible}.tool-bursts-svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;overflow:visible}.tool-conn{fill:none;stroke-width:1.4;stroke-dasharray:5 4;stroke-linecap:round;transition:opacity .3s ease}.tool-conn.status-inflight{stroke:var(--inflight);animation:dashflow .7s linear infinite;filter:drop-shadow(0 0 4px rgba(240,171,252,.45))}.tool-conn.status-done{stroke:#86efacd9}.tool-conn.status-err{stroke:#fca5a5d9}.tool-conn.fading{stroke-dasharray:4 6}.tool-burst-wrap{position:absolute;pointer-events:none;will-change:transform}.tool-burst{display:inline-flex;align-items:center;gap:6px;padding:5px 11px 5px 9px;border-radius:999px;background:var(--panel);border:1px solid var(--line);font-size:11px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;box-shadow:0 4px 14px #00000059,0 0 0 1px #00000040;white-space:nowrap;color:var(--text);animation:bubble-spawn .22s cubic-bezier(.34,1.56,.64,1) both}.tool-burst .tb-emoji{font-size:13px;line-height:1;filter:saturate(1.2);display:inline-block}.tool-burst .tb-name{font-weight:600;letter-spacing:.01em}.tool-burst .tb-spin{width:8px;height:8px;border-radius:50%;background:radial-gradient(circle at 30% 30%,var(--inflight),transparent 70%);box-shadow:0 0 8px var(--inflight);animation:pulse var(--pulse-live) infinite}.tool-burst .tb-mark{font-weight:700;font-size:12px;line-height:1;margin-left:2px;animation:mark-pop .26s cubic-bezier(.34,1.56,.64,1) both}.tool-burst .tb-mark.done{color:var(--ok);text-shadow:0 0 6px rgba(134,239,172,.55)}.tool-burst .tb-mark.err{color:var(--err);text-shadow:0 0 6px rgba(252,165,165,.55)}.tool-burst.status-inflight{border-color:#f0abfc8c;background:linear-gradient(180deg,#f0abfc1a,#7dd3fc0d),var(--panel);box-shadow:0 0 0 1px #f0abfc4d,0 6px 18px #f0abfc40}.tool-burst.status-inflight .tb-emoji{animation:emoji-wobble 1.6s ease-in-out infinite}.tool-burst.status-done{border-color:#86efac8c;background:linear-gradient(180deg,rgba(134,239,172,.1),transparent),var(--panel);box-shadow:0 0 0 1px #86efac38,0 4px 14px #86efac26;animation:bubble-spawn .22s cubic-bezier(.34,1.56,.64,1) both,bubble-done-flash .52s ease-out}.tool-burst.status-err{border-color:#fca5a599;background:linear-gradient(180deg,rgba(252,165,165,.1),transparent),var(--panel);box-shadow:0 0 0 1px #fca5a559,0 4px 12px #fca5a52e;animation:bubble-spawn .22s cubic-bezier(.34,1.56,.64,1) both,bubble-err-shake .38s ease-in-out}.tool-burst.fading{animation:bubble-fade-move .6s cubic-bezier(.22,.61,.36,1) forwards,bubble-fade-out .6s linear forwards}.tool-burst{position:relative}.tool-burst:before{content:"";position:absolute;left:4px;top:6px;bottom:6px;width:3px;border-radius:2px;background:var(--cat-accent, transparent);opacity:.85}.tool-burst.cat-file{--cat-accent: #7dd3fc}.tool-burst.cat-shell{--cat-accent: #fcd34d}.tool-burst.cat-web{--cat-accent: #67e8f9}.tool-burst.cat-agent{--cat-accent: #f0abfc}.tool-burst.cat-task{--cat-accent: #86efac}.tool-burst.cat-plan{--cat-accent: #c4b5fd}.tool-burst.cat-mcp{--cat-accent: #5eead4}.tool-burst.cat-other{--cat-accent: #94a3b8}.tool-burst.cat-mcp.mcp-hue{--cat-accent: hsl(var(--mcp-hue, 170) 65% var(--mcp-dot-l))}.tool-burst.dim{opacity:.22;filter:saturate(.4);transition:opacity .18s ease,filter .18s ease}.tool-burst.dim:hover{opacity:.6}.tool-burst.sub{font-size:10px;padding:4px 10px 4px 8px;opacity:.94;animation:bubble-spawn .22s .11s cubic-bezier(.34,1.56,.64,1) both}.tool-burst.sub .tb-emoji{font-size:12px}.tool-burst.sub.status-done{animation:bubble-spawn .22s .11s cubic-bezier(.34,1.56,.64,1) both,bubble-done-flash .52s ease-out}.tool-burst.sub.status-err{animation:bubble-spawn .22s .11s cubic-bezier(.34,1.56,.64,1) both,bubble-err-shake .38s ease-in-out}.tool-burst.sub.fading{animation:bubble-fade-move .6s cubic-bezier(.22,.61,.36,1) forwards,bubble-fade-out .6s linear forwards}.tool-burst.clickable{pointer-events:auto;cursor:pointer;transition:translate .12s ease,scale .14s cubic-bezier(.23,1,.32,1),box-shadow .12s ease,opacity .18s ease,filter .18s ease}.tool-burst.clickable:hover{translate:0 -1px;box-shadow:0 6px 18px #00000073,0 0 0 1px var(--cat-accent, rgba(255,255,255,.15))}.tool-burst.clickable:active{scale:.97}@keyframes bubble-spawn{0%{opacity:0;transform:translate(var(--spawn-dx, -28px),var(--spawn-dy, 0)) scale(.92);filter:blur(3px) brightness(1.4)}55%{opacity:1;transform:translate(0) scale(1.06);filter:blur(0) brightness(1.15);animation-timing-function:cubic-bezier(.23,1,.32,1)}to{transform:translate(0) scale(1)}}@keyframes bubble-done-flash{0%{scale:1;box-shadow:0 0 0 1px #86efac38,0 4px 14px #86efac26}40%{scale:1.14;box-shadow:0 0 0 2px #86efac8c,0 0 22px #86efac8c}to{scale:1;box-shadow:0 0 0 1px #86efac38,0 4px 14px #86efac26}}@keyframes bubble-err-shake{0%,to{translate:0}15%{translate:-4px}35%{translate:4px}55%{translate:-3px}75%{translate:2px}}@keyframes bubble-fade-move{0%{transform:scale(1) translate(0);filter:blur(0)}to{transform:scale(.82) translate(18px,-4px);filter:blur(1.5px)}}@keyframes bubble-fade-out{0%{opacity:1}to{opacity:0}}@keyframes emoji-wobble{0%,to{transform:rotate(-6deg) scale(1)}50%{transform:rotate(6deg) scale(1.08)}}@keyframes mark-pop{0%{opacity:0;transform:scale(.3) rotate(-30deg)}to{opacity:1;transform:scale(1) rotate(0)}}:root[data-theme=light] .tool-burst{box-shadow:0 2px 8px #0f172a1a,0 0 0 1px #0f172a0a}:root[data-theme=light] .tool-burst.status-inflight{border-color:#7e22ce8c;background:linear-gradient(180deg,rgba(126,34,206,.06),transparent),var(--panel);box-shadow:0 0 0 1px #7e22ce33,0 6px 14px #7e22ce2e}:root[data-theme=light] .tool-burst.status-done{border-color:#15803d80}:root[data-theme=light] .tool-burst.status-err{border-color:#b91c1c8c}:root[data-theme=light] .tool-conn.status-inflight{stroke:#7e22ced9;filter:drop-shadow(0 0 3px rgba(126,34,206,.35))}:root[data-theme=light] .tool-conn.status-done{stroke:#15803dd9}:root[data-theme=light] .tool-conn.status-err{stroke:#b91c1cd9}.session-list{grid-column:1;grid-row:2 / -1;background:var(--panel);border-right:1px solid var(--line);display:flex;flex-direction:column;min-height:0;overflow-y:auto}.session-list .sl-header{display:flex;align-items:center;gap:8px;padding:12px var(--panel-inset) 10px;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--panel);z-index:1}.up-header h2,.ap-header h2,.session-list .sl-header h2{font-size:13px;font-weight:600}.session-list .sl-header h2{margin:0;flex:1;display:inline-flex;align-items:center;gap:8px}.session-list .sl-count{display:inline-flex;align-items:center;padding:1px 7px;border-radius:999px;background:var(--bg-soft);border:1px solid var(--line);color:var(--text);font-size:10px;font-weight:600;text-transform:none;letter-spacing:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.session-list .sl-live-count{font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--inflight);font-weight:600}.session-list .sl-waiting-count{font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--warn);font-weight:600}.session-list .sl-close{width:26px;height:26px}.session-list .sl-rows{--sl-card-gutter: 4px;--sl-card-edge: 1px;flex:1;padding:6px var(--sl-card-gutter);display:flex;flex-direction:column;gap:4px}.session-list .sl-empty{padding:16px 12px;color:var(--muted);font-size:12px;font-style:italic}.session-list .sl-row{display:flex;align-items:flex-start;gap:9px;padding:9px calc(var(--panel-inset) - var(--sl-card-gutter) - var(--sl-card-edge));background:transparent;border-width:var(--sl-card-edge);border-style:solid;border-color:transparent;border-radius:8px;cursor:pointer;text-align:left;color:var(--text);font:inherit;transition:background .12s,border-color .12s,transform .14s cubic-bezier(.23,1,.32,1);min-width:0}.session-list .sl-row:hover{background:var(--bg-soft);border-color:var(--ctl-edge)}.session-list .sl-row:active{transform:scale(.97)}.session-list .sl-row.selected{background:var(--bg-soft);border-color:var(--accent)}.session-list .sl-row:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.sl-dot{display:inline-flex;align-items:center;justify-content:center;width:10px;height:10px;margin-top:5px;flex:0 0 10px;font-size:11px;font-weight:700;line-height:1;color:var(--muted)}.sl-dot:before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor}.up-session-row .sl-dot{margin-top:0}.sl-dot.state-active{color:var(--inflight)}.sl-dot.state-active:before{box-shadow:0 0 8px var(--inflight);animation:pulse var(--pulse-live) infinite}.sl-dot.state-done{color:var(--ok)}.sl-dot.state-done:before{content:"✓";width:auto;height:auto;background:none}.sl-dot.state-err{color:var(--err)}.sl-dot.state-err:before{content:"×";width:auto;height:auto;background:none}.session-list .sl-row-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.session-list .sl-row-head{display:flex;align-items:center;gap:6px;min-width:0}.session-list .sl-label{font-weight:600;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1}.session-list .sl-row-meta{display:flex;flex-wrap:wrap;gap:8px;font-size:11px;color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.session-list .sl-row-meta b{color:var(--text);font-weight:600;font-variant-numeric:tabular-nums}.session-list .sl-cost b{color:var(--ok)}.session-list .sl-elapsed{margin-left:auto}.session-list .sl-waiting{margin-left:auto;color:var(--warn);font-weight:600}.session-list .sl-waiting-tool{font-weight:500;opacity:.75}.detail-hero{display:flex;flex-direction:column;gap:8px;padding:4px 0 14px;border-bottom:1px solid var(--line)}.detail-hero .hero-line{display:flex;align-items:center;gap:10px;min-width:0}.detail-hero .hero-title{margin:0;font-size:18px;font-weight:600;letter-spacing:.01em;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.detail-hero .hero-meta{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;flex-wrap:wrap}.detail-hero .hero-meta-item{letter-spacing:.03em}.detail-hero .hero-sep{color:var(--text-dim)}.detail-hero .hero-cost{margin-top:8px;padding:10px 12px;background:var(--bg-soft);border:1px solid var(--line);border-radius:10px}.detail-hero .hero-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.detail-hero .hero-action-btn{padding:5px 12px;font-size:11px}.detail-hero .hero-cost-headline{display:flex;align-items:baseline;gap:6px;margin-bottom:8px}.detail-hero .hero-cost-value{font-size:22px;font-weight:700;color:var(--ok);font-variant-numeric:tabular-nums;letter-spacing:-.01em}.detail-hero .hero-cost-label{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.cost-bar{display:flex;height:8px;width:100%;border-radius:4px;overflow:hidden;background:var(--line)}.cost-bar .cb-seg{height:100%;display:block;transition:filter .12s ease;box-shadow:-1px 0 0 var(--panel)}.cost-bar .cb-seg:hover{filter:brightness(1.3)}:root[data-theme=light] .cost-bar .cb-seg:hover{filter:brightness(.85)}.cost-bar .cb-input{background:var(--usage-blue)}.cost-bar .cb-output{background:var(--usage-purple)}.cost-bar .cb-cache-r{background:var(--usage-green)}.cost-bar .cb-cache-w{background:var(--usage-amber)}.detail-section{display:flex;flex-direction:column;gap:8px;padding-top:4px}.detail-section h3{display:flex;align-items:center;gap:8px}.detail-section h3 .section-count{display:inline-flex;align-items:center;padding:1px 7px;border-radius:999px;background:var(--bg-soft);border:1px solid var(--line);color:var(--text);font-size:10px;font-weight:600;text-transform:none;letter-spacing:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.activity-row{display:flex;flex-direction:column;gap:8px}.activity-counters{display:flex;gap:12px;font-size:12px;color:var(--muted)}.activity-counters .ac-item b{color:var(--text);font-weight:600;font-variant-numeric:tabular-nums}.activity-counters .ac-live,.activity-counters .ac-live b{color:var(--inflight)}.activity-counters .ac-err,.activity-counters .ac-err b{color:var(--err)}.cat-strip{display:flex;flex-wrap:wrap;gap:5px}.cat-chip{display:inline-flex;align-items:center;gap:5px;padding:3px 9px 3px 7px;border-radius:999px;border:1px solid var(--line);background:var(--bg-soft);font-size:11px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.cat-chip .cat-emoji{font-size:12px;line-height:1}.cat-chip .cat-count{color:var(--text);font-weight:600;font-variant-numeric:tabular-nums}.cat-chip .cat-server{color:var(--muted);max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cat-chip.cat-file{border-color:#7dd3fc66}.cat-chip.cat-shell{border-color:#fcd34d66}.cat-chip.cat-web{border-color:#67e8f966}.cat-chip.cat-agent{border-color:#f0abfc66}.cat-chip.cat-task{border-color:#86efac66}.cat-chip.cat-plan{border-color:#c4b5fd66}.cat-chip.cat-mcp{border-color:#5eead466}.cat-chip.cat-other{border-color:#94a3b866}.cat-chip.cat-mcp.mcp-hue{border-color:hsl(var(--mcp-hue, 170) 65% var(--mcp-dot-l) / .4)}.prompts{display:flex;flex-direction:column;gap:8px}.prompt-entry{border:1px solid var(--line);border-radius:8px;padding:8px 10px;background:var(--bg-soft)}.prompt-time{color:var(--muted);font-size:10px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.04em;text-transform:uppercase;margin-bottom:4px}.prompt-text{font-size:12px;line-height:1.5;color:var(--text);white-space:pre-wrap;word-break:break-word}button.tool.clickable{width:100%;background:transparent;border:none;border-bottom:1px solid var(--line-soft);text-align:left;cursor:pointer;color:var(--text);font:inherit;padding:6px 0;display:flex;align-items:center;gap:8px;justify-content:space-between;border-radius:4px;transition:background .12s,transform .14s cubic-bezier(.23,1,.32,1)}button.tool.clickable{padding-left:6px;padding-right:6px}button.tool.clickable:hover{background:var(--ctl-fill)}button.tool.clickable:active{transform:scale(.97)}button.tool.clickable:last-child{border-bottom:none}.shortcuts{display:grid;grid-template-columns:auto 1fr;gap:6px 12px;align-items:center}.shortcuts .sc{display:contents}.shortcuts .sc kbd{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;font-weight:600;color:var(--text);background:var(--bg-soft);border:1px solid var(--line);border-bottom-width:2px;border-radius:4px;padding:2px 7px;text-align:center;min-width:38px}.shortcuts .sc span{color:var(--muted);font-size:12px}.empty-hero .hint-row{margin-top:14px;font-size:12px;opacity:.75}.empty-hero .hint-row+.hint-row{margin-top:6px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0506098c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:100;animation:fadeIn .14s ease-out}:root[data-theme=light] .modal-backdrop{background:#0f172a4d}.modal{width:min(820px,92vw);max-height:82vh;display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow-2),0 0 0 1px #7dd3fc1a;overflow:hidden;animation:popIn .18s cubic-bezier(.22,1,.36,1)}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--line);background:var(--bg-soft)}.modal-title{display:flex;align-items:center;gap:10px;min-width:0}.modal-title .status-dot{display:inline-block;width:8px;height:8px;border-radius:50%}.modal-title .status-dot.inflight{background:var(--inflight);animation:pulse var(--pulse-live) infinite}.modal-title .status-dot.done{background:var(--ok)}.modal-title .status-dot.err{background:var(--err)}.modal-tool-name{font-weight:600;font-size:14px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.modal-tool-id{color:var(--muted);font-size:11px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.modal-actions{display:flex;align-items:center;gap:8px}.modal-dur{color:var(--muted);font-size:12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.modal-body{padding:16px;overflow:auto;display:flex;flex-direction:column;gap:16px}.modal-section h4{margin:0 0 6px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:600;display:flex;align-items:center;gap:8px}.modal-section .err-tag{font-size:9px;font-weight:700;padding:1px 6px;border-radius:4px;color:var(--err);background:#fca5a51a;border:1px solid rgba(252,165,165,.3)}.modal-note{margin:0;padding:8px 12px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--muted);font-size:11px;line-height:1.5}.modal-section pre{margin:0;padding:12px;background:var(--bg);border:1px solid var(--line);border-radius:8px;color:var(--text);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;line-height:1.5;white-space:pre-wrap;word-break:break-word;max-height:320px;overflow:auto}@keyframes fadeIn{0%{opacity:0}}@keyframes popIn{0%{opacity:0;transform:translateY(4px) scale(.985)}to{opacity:1;transform:none}}.modal.clear-confirm{width:min(440px,92vw)}.clear-confirm .cc-actions{display:flex;justify-content:flex-end;gap:8px}.modal.key-help{width:min(560px,92vw)}.kh-group{grid-column:1 / -1;margin:10px 0 0;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:600}.kh-group:first-child{margin-top:0}.modal.release-notes{width:min(620px,92vw)}.release-notes .rn-version{margin:0 0 10px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;font-weight:600;color:var(--muted)}.release-notes .rn-notes{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}.release-notes .rn-note{border-left:2px solid var(--line);padding-left:12px}.release-notes .rn-note-title{margin:0 0 4px;font-size:13px;font-weight:600;line-height:1.45;color:var(--text)}.release-notes .rn-note-icon{margin-right:.15em}.release-notes .rn-note-body{margin:0;font-size:12px;line-height:1.65;color:var(--muted);white-space:pre-line}.release-notes .rn-strong{color:var(--text);font-weight:600}.release-notes .rn-code{background:var(--line);color:var(--text);padding:0 3px;border-radius:3px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;white-space:pre-wrap}.session-summary{width:min(720px,92vw)}.session-summary .ss-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:22px;padding:18px 18px 20px;background:linear-gradient(180deg,rgba(134,239,172,.05),transparent);border-bottom:1px solid var(--line)}.session-summary .ss-hero-left{display:flex;flex-direction:column;gap:8px;min-width:0}.session-summary .ss-cost-label{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.session-summary .ss-cost{font-size:34px;font-weight:700;color:var(--ok);font-variant-numeric:tabular-nums;letter-spacing:-.02em;line-height:1}.session-summary .ss-models{display:flex;gap:6px;flex-wrap:wrap}.session-summary .ss-hero-right{display:flex;flex-direction:column;justify-content:center;gap:10px;min-width:0}.cost-bar.cost-bar-lg{height:14px;border-radius:7px}.session-summary .ss-cost-legend{display:grid;grid-template-columns:1fr 1fr;gap:6px 16px;font-size:11px;color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.session-summary .ssl{display:inline-flex;align-items:baseline;gap:5px}.session-summary .ssl b{color:var(--text);font-weight:600;font-variant-numeric:tabular-nums}.session-summary .ssl:before{content:"";display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:1px}.session-summary .ssl-in:before{background:var(--usage-blue)}.session-summary .ssl-out:before{background:var(--usage-purple)}.session-summary .ssl-cr:before{background:var(--usage-green)}.session-summary .ssl-cw:before{background:var(--usage-amber)}.session-summary .ss-stats{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;padding:14px 18px;border-bottom:1px solid var(--line)}.session-summary .ss-stat{display:flex;flex-direction:column;gap:2px;padding:8px 10px;background:var(--bg-soft);border:1px solid var(--line);border-radius:8px}.session-summary .ss-stat-value{font-size:18px;font-weight:600;color:var(--text);font-variant-numeric:tabular-nums;letter-spacing:-.01em;line-height:1.1}.session-summary .ss-stat-label{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.session-summary .ss-stat.tone-err .ss-stat-value{color:var(--err)}@media(max-width:640px){.session-summary .ss-hero{grid-template-columns:1fr}.session-summary .ss-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}.session-summary .ss-top-tools{display:flex;flex-direction:column;gap:6px}.session-summary .ss-tt{display:grid;grid-template-columns:130px 1fr 36px;gap:10px;align-items:center}.session-summary .ss-tt-name{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.session-summary .ss-tt-bar{height:6px;background:var(--line);border-radius:3px;overflow:hidden}.session-summary .ss-tt-bar-fill{display:block;height:100%;background:linear-gradient(90deg,var(--accent),var(--inflight));border-radius:3px}.session-summary .ss-tt-count{text-align:right;font-variant-numeric:tabular-nums;font-size:11px;color:var(--muted)}.session-summary .ss-prompt{font-size:12px;line-height:1.55;color:var(--text);padding:10px 12px;background:var(--bg-soft);border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:4px;white-space:pre-wrap;word-break:break-word;max-height:200px;overflow:auto}.empty-hero{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;pointer-events:none;color:var(--muted);-webkit-user-select:none;user-select:none;max-width:520px}.empty-hero .orbit-stack{position:relative;width:260px;height:260px;margin:0 auto 28px}.empty-hero .orbit{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:1px dashed rgba(125,211,252,.18)}.empty-hero .orbit.r1{top:0;right:0;bottom:0;left:0;animation:spin 22s linear infinite}.empty-hero .orbit.r2{top:30px;right:30px;bottom:30px;left:30px;animation:spin 14s linear infinite reverse;border-color:#f0abfc33}.empty-hero .orbit.r3{top:60px;right:60px;bottom:60px;left:60px;animation:spin 9s linear infinite;border-color:#86efac38}.empty-hero .orbit .dot{position:absolute;width:14px;height:14px;border-radius:50%;top:-7px;left:50%;margin-left:-7px}.empty-hero .orbit.r1 .dot{background:var(--accent);box-shadow:0 0 22px var(--accent)}.empty-hero .orbit.r2 .dot{background:var(--inflight);box-shadow:0 0 22px var(--inflight);width:12px;height:12px;margin-left:-6px;top:-6px}.empty-hero .orbit.r3 .dot{background:var(--ok);box-shadow:0 0 22px var(--ok);width:10px;height:10px;margin-left:-5px;top:-5px}.empty-hero .orbit .dot.b{top:auto;bottom:-7px}.empty-hero .orbit.r2 .dot.b{bottom:-6px}.empty-hero .orbit.r3 .dot.b{bottom:-5px}.empty-hero .core{position:absolute;top:50%;left:50%;width:56px;height:56px;margin:-28px 0 0 -28px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#f0abfc,#7dd3fc 55%,#14161b);box-shadow:0 0 28px #f0abfc8c,0 0 64px #7dd3fc59;animation:corepulse 2.6s ease-in-out infinite}.empty-hero .core:after{content:"";position:absolute;top:-14px;right:-14px;bottom:-14px;left:-14px;border-radius:50%;border:1px solid rgba(255,255,255,.06);animation:corewave 2.6s ease-out infinite}@keyframes corepulse{0%,to{transform:scale(1);filter:brightness(1)}50%{transform:scale(1.08);filter:brightness(1.15)}}@keyframes corewave{0%{transform:scale(.85);opacity:.6}to{transform:scale(1.6);opacity:0}}.empty-hero h2{color:var(--text);font-size:18px;font-weight:600;margin:0 0 8px;letter-spacing:.01em}.empty-hero p{margin:0;font-size:13px;line-height:1.65}.empty-hero code{background:var(--bg-soft);border:1px solid var(--line);padding:2px 7px;border-radius:5px;color:var(--text);font-size:12px}@keyframes spin{to{transform:rotate(360deg)}}:root[data-theme=light] .topbar .status .pill.live{border-color:#15803d73;background:#e8f2eb}:root[data-theme=light] .topbar .status .pill.paused{border-color:#b4530980;background:#f8eee6}:root[data-theme=light] .topbar .status .pill.dead{border-color:#b91c1c80;background:#f8e8e8}:root[data-theme=light] .agent-node.state-active{border-color:#7e22cea6;box-shadow:0 0 0 1px #7e22ce4d,0 8px 22px #7e22ce2e}:root[data-theme=light] .agent-node.state-done{border-color:var(--ok)}:root[data-theme=light] .agent-node.state-err{border-color:var(--err)}:root[data-theme=light] .state-pill.state-active{border-color:#7e22ce73;background:#7e22ce1a}:root[data-theme=light] .state-pill.state-active:before{box-shadow:0 0 5px #7e22ce8c}:root[data-theme=light] .state-pill.state-done{border-color:#15803d73;background:#15803d1a;color:#166534}:root[data-theme=light] .state-pill.state-err{border-color:#b91c1c80;background:#b91c1c1a}:root[data-theme=light] .modal-section .err-tag{background:#b91c1c1a;border-color:#b91c1c73}:root[data-theme=light] .empty-hero .orbit{border-color:#0369a14d}:root[data-theme=light] .empty-hero .orbit.r2{border-color:#7e22ce4d}:root[data-theme=light] .empty-hero .orbit.r3{border-color:#15803d52}:root[data-theme=light] .empty-hero .core{background:radial-gradient(circle at 30% 30%,#c084fc,#0ea5e9 55%,#1e293b);box-shadow:0 0 28px #7e22ce66,0 0 64px #0369a140}:root[data-theme=light] .conn-banner{background:linear-gradient(90deg,rgba(185,28,28,.14),transparent);border-bottom-color:#b91c1c73}:root[data-theme=light] .react-flow__edge-path{stroke:#0369a166}:root[data-theme=light] .react-flow__minimap-node{stroke:#0f172a40}.usage-panel{position:fixed;top:60px;right:368px;width:280px;max-height:calc(100vh - 76px);overflow-y:auto;background:var(--panel);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow-2);z-index:20;padding:0 0 12px}.up-header{display:flex;align-items:center;gap:8px;padding:10px var(--panel-inset) 8px;border-bottom:1px solid var(--line-soft);position:sticky;top:0;background:var(--panel);z-index:1}.up-header h2{margin:0;flex:1}.up-header-right{display:flex;align-items:center;gap:4px}.up-rate{font-size:11px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-variant-numeric:tabular-nums;color:var(--inflight);padding:2px 6px;border-radius:999px;background:#f0abfc1f}.up-close{color:var(--muted)}.uh-range.up-period{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:14px var(--panel-inset) 10px;padding:0;border:none;border-bottom:1px solid color-mix(in srgb,var(--text) 5%,transparent);border-radius:0;background:transparent}.up-period .uh-range-btn{display:grid;grid-template-columns:max-content;grid-template-rows:1fr auto;align-items:center;justify-content:center;min-height:30px;padding:0;border-radius:0}.up-period .uh-range-btn:after{content:"";margin-inline:-3px;margin-bottom:-1px;height:2px;border-radius:1px;background:transparent;transition:background-color .12s ease-out}.up-period .uh-range-btn:hover{color:color-mix(in srgb,var(--text) 45%,var(--muted))}.up-period .uh-range-btn[aria-pressed=true]{background:transparent;color:var(--text)}.up-period .uh-range-btn[aria-pressed=true]:hover{color:var(--text)}.up-period .uh-range-btn[aria-pressed=true]:after{background:var(--accent)}@keyframes up-period-reading{0%,to{transform:scaleX(1);opacity:1}50%{transform:scaleX(.28);opacity:.55}}.up-period .uh-range-btn[data-pending]:after{animation:up-period-reading 1.1s cubic-bezier(.4,0,.6,1) infinite}.up-period .uh-range-btn:focus-visible{outline-offset:-4px;border-radius:4px}.up-stale{opacity:var(--dim-stale);transition:opacity .14s ease-out}.up-dot-past{visibility:hidden}.up-session-id{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--text-dim)}.up-total{display:flex;align-items:baseline;gap:8px;padding:14px var(--panel-inset) 6px}.up-total-value{font-size:26px;font-weight:700;font-variant-numeric:tabular-nums;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--ok);line-height:1}.up-total-label{font-size:11px;color:var(--muted)}.usage-panel .cost-bar{margin:4px 14px 10px;width:auto;border-radius:3px}.up-tokens-row{display:flex;flex-wrap:wrap;gap:10px 16px;padding:6px var(--panel-inset) 10px}.up-tok{display:flex;align-items:baseline;gap:5px;font-size:12px;font-variant-numeric:tabular-nums;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.up-k,.up-scope{font-size:10px;color:var(--muted);font-family:inherit}.up-section{padding:0 14px;margin-top:4px;border-top:1px solid var(--line-soft)}.up-section-title{display:flex;align-items:baseline;gap:8px;margin:8px 0 6px;font-size:11px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.up-disclose{display:flex;align-items:baseline;gap:8px;flex:1 1 auto;min-width:0;margin:-5px 0;padding:5px 0;border:none;background:transparent;font:inherit;color:inherit;letter-spacing:inherit;text-align:left;text-transform:inherit;cursor:pointer;transition:color .12s ease,transform .14s cubic-bezier(.23,1,.32,1)}.up-disclose:hover{color:var(--text)}.up-disclose:active{transform:scale(.97)}.up-disclose:focus-visible{outline-offset:-2px}.up-chev{flex:none;align-self:center;margin-left:auto;color:var(--text-dim);transition:transform .14s cubic-bezier(.23,1,.32,1),color .12s ease}.up-section-age+.up-chev{margin-left:0}.up-disclose:hover .up-chev{color:var(--text)}.up-disclose[aria-expanded=true] .up-chev{transform:rotate(180deg)}.up-section-age{margin-left:auto;font-size:10px;font-weight:400;color:var(--text-dim);text-transform:none;letter-spacing:0;white-space:nowrap}.up-table{width:100%;border-collapse:collapse;font-size:12px}.up-table th{text-align:left;color:var(--muted);font-weight:500;font-size:10px;padding:0 0 4px;border-bottom:1px solid var(--line-soft)}.up-table th:not(:first-child){text-align:right}.up-table td{padding:4px 0;vertical-align:middle}.up-model-name{color:var(--text);font-weight:500;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.up-num{text-align:right;font-variant-numeric:tabular-nums;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--muted);font-size:11px}.up-cost-val{color:var(--ok)}.up-sessions{display:flex;flex-direction:column;gap:4px}.up-sessions[hidden]{display:none}.up-session-row{display:flex;align-items:center;gap:7px;font-size:12px;padding:3px 0}.up-session-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}.up-session-tokens{font-variant-numeric:tabular-nums;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;color:var(--muted)}.up-session-cost{font-variant-numeric:tabular-nums;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;color:var(--ok);min-width:36px;text-align:right}.up-unpriced{color:var(--muted);font-style:italic}.up-hint{padding:8px 14px 4px;font-size:11px;color:var(--muted);line-height:1.5}.up-empty{padding:20px 14px;font-size:12px;color:var(--muted);text-align:center;line-height:1.6}.app:not(:has(.detail)) .usage-panel{right:8px}.up-quota-section{padding-top:10px;border-top:none}.up-refresh-btn{padding:1px 7px}.up-quota-bars{display:flex;flex-direction:column;gap:10px}.qb-row{display:flex;flex-direction:column;gap:3px}.qb-meta{display:flex;justify-content:space-between;align-items:baseline;font-size:11px}.qb-label{color:var(--muted)}.qb-pct{font-variant-numeric:tabular-nums;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;font-weight:600}.qb-track{position:relative;height:6px;border-radius:3px;background:var(--line);overflow:hidden}.qb-fill{height:100%;border-radius:3px;transition:width .4s ease}.qb-pace-marker{position:absolute;top:0;bottom:0;width:2px;margin-left:-1px;border-radius:1px;box-shadow:0 0 0 1px var(--panel);transition:left .4s ease;z-index:2}.qb-reset-row{display:flex;justify-content:space-between;align-items:baseline;gap:4px;min-height:14px}.qb-reset{font-size:10px;color:var(--text-dim)}.qb-pace{font-size:10px;font-weight:500;text-align:right;flex-shrink:0}.qb-limit-badge{margin-left:4px;font-size:10px}.up-plan-badge{margin-left:6px;padding:1px 5px;border:1px solid var(--line-soft);border-radius:3px;font-size:9px;font-weight:500;color:var(--text-dim);text-transform:none;letter-spacing:0;vertical-align:1px}.up-quota-na{display:flex;flex-direction:column;gap:3px;font-size:11px;color:var(--muted)}.up-quota-hint{color:var(--text-dim)}.up-quota-hint code{background:var(--line);color:var(--text);padding:0 3px;border-radius:3px;font-size:10px}.up-quota-loading{font-size:11px;color:var(--text-dim)}.up-quota-sub{font-size:10px;color:var(--text-dim);margin-top:4px}.up-credits{color:var(--accent)}.up-reset-credits{color:var(--ok)}:root[data-theme=light] .up-rate{background:#7e22ce1a}.uh-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:100;padding:24px;animation:fadeIn .14s ease-out}.uh-modal{background:var(--panel);border:1px solid var(--line);border-radius:12px;box-shadow:0 20px 50px #00000080;width:min(760px,100%);max-height:84vh;overflow:auto;padding:16px 18px 20px;color:var(--text);animation:popIn .18s cubic-bezier(.22,1,.36,1)}.uh-head{display:flex;align-items:center;gap:12px;margin-bottom:14px}.uh-titlewrap{display:flex;flex-direction:column;gap:2px;margin-right:auto}.uh-title{font-size:14px;font-weight:600}.uh-sub{font-size:10px;color:var(--text-dim);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.uh-range{display:inline-flex;gap:2px;background:var(--bg-soft);border:1px solid var(--line);border-radius:999px;padding:2px}.uh-range-btn{font:inherit;font-size:10px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;padding:2px 9px;border:none;border-radius:999px;color:var(--muted);background:transparent;cursor:pointer;transition:background .12s,color .12s,transform .14s cubic-bezier(.23,1,.32,1)}.uh-range-btn:hover{color:var(--text)}.uh-range-btn:active{transform:scale(.97)}.uh-range-btn[aria-pressed=true]{background:var(--accent);color:var(--bg)}.uh-range-btn[aria-pressed=true]:hover{color:var(--bg)}.uh-reload{width:24px;height:24px;padding:0}.uh-reload:disabled{opacity:var(--dim-off);cursor:default}.uh-close{transition:color .12s,transform .14s cubic-bezier(.23,1,.32,1)}.uh-close:hover{color:var(--text)}.uh-status{padding:40px 0;text-align:center;color:var(--muted);font-size:12px}.uh-status-wait{display:flex;flex-direction:column;min-height:184px;padding:0 0 16px}.uh-wait-word{margin:auto}.uh-wait-axis{height:1px;border-radius:1px;background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--accent) 55%,transparent) 50%,transparent 100%) no-repeat,var(--line-soft);background-size:34% 100%,100% 100%;animation:uh-wait-sweep 1.6s cubic-bezier(.5,0,.5,1) infinite}@keyframes uh-wait-sweep{0%{background-position:-40% 0,0 0}to{background-position:140% 0,0 0}}.uh-status.uh-err{color:var(--err);max-width:46ch;margin:0 auto;line-height:1.5}.uh-retry{margin-top:14px}.uh-retry:disabled{opacity:var(--dim-off);cursor:default}.uh-stale{opacity:var(--dim-stale);transition:opacity .12s}.uh-totals{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:14px}.uh-stat{display:flex;flex-direction:column;gap:2px;padding:8px 10px;background:var(--bg-soft);border:1px solid var(--line-soft);border-radius:8px}.uh-stat-val{font-size:14px;font-weight:600;font-variant-numeric:tabular-nums}.uh-stat-val.accent{color:var(--ok)}.uh-stat-label{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.uh-agents{margin-bottom:12px}.uh-agent-bar{display:flex;height:6px;border-radius:3px;background:var(--line);overflow:hidden;margin-bottom:7px}.uh-agent-seg{height:100%;box-shadow:-1px 0 0 var(--panel)}.uh-agent-keys{display:flex;flex-wrap:wrap;gap:12px;font-size:11px;color:var(--muted)}.uh-agent-key{display:inline-flex;align-items:center;gap:5px}.uh-agent-cost{color:var(--text);font-variant-numeric:tabular-nums}.uh-agent-share{color:var(--text-dim);font-variant-numeric:tabular-nums}.uh-chart{display:flex;align-items:flex-end;height:168px;margin-bottom:10px;padding-bottom:16px;border-bottom:1px solid var(--line-soft);overflow-x:auto}.uh-bar-col{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;position:relative;background:none;border:none;padding:0;cursor:pointer;min-width:24px;transition:transform .14s cubic-bezier(.23,1,.32,1)}.uh-bar-col:focus-visible{outline-offset:-1px}.uh-bar-col:hover .uh-bar{filter:brightness(1.15)}.uh-bar-col:active{transform:scale(.97)}.uh-bar-col.sel .uh-bar{outline:1px solid var(--accent);outline-offset:1px}.uh-bar{width:78%;min-height:1px;display:flex;flex-direction:column;border-radius:2px 2px 0 0;overflow:hidden;transition:height .3s ease;transform-origin:bottom;animation:uh-bar-rise .34s cubic-bezier(.16,1,.3,1) both;animation-delay:calc(var(--uh-i, 0) * var(--uh-step, 10ms))}@keyframes uh-bar-rise{0%{transform:scaleY(0);opacity:.4}to{transform:scaleY(1);opacity:1}}.uh-bar-seg{width:100%;box-shadow:0 -1px 0 var(--panel)}.uh-bar-label{position:absolute;bottom:-15px;font-size:9px;color:var(--text-dim);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;white-space:nowrap;transform:rotate(0);overflow:hidden;max-width:100%;text-overflow:ellipsis}.uh-legend{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px;font-size:11px;color:var(--muted)}.uh-legend-item{display:inline-flex;align-items:center;gap:5px}.uh-legend-dot{width:8px;height:8px;border-radius:2px;display:inline-block;flex-shrink:0}.uh-legend-cost{color:var(--text);font-variant-numeric:tabular-nums}.uh-detail{background:var(--bg-soft);border:1px solid var(--line-soft);border-radius:10px;padding:12px 14px}.uh-detail-head{display:flex;align-items:baseline;gap:10px;margin-bottom:10px}.uh-detail-date{font-size:12px;font-weight:600}.uh-detail-cost{font-size:12px;color:var(--ok);font-variant-numeric:tabular-nums}.uh-detail-agents{margin-left:auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;color:var(--text-dim);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.uh-detail-mini{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:12px}.uh-ministat{display:flex;flex-direction:column;gap:1px}.uh-ministat-val{font-size:12px;font-variant-numeric:tabular-nums}.uh-ministat-label{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.uh-detail-models{display:flex;flex-direction:column;gap:5px}.uh-model-row{display:grid;grid-template-columns:130px 1fr auto;align-items:center;gap:8px}.uh-model-name{display:inline-flex;align-items:center;gap:5px;font-size:11px;min-width:0}.uh-model-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.uh-model-bar{height:6px;border-radius:3px;background:var(--line);overflow:hidden}.uh-model-bar-fill{display:block;height:100%;border-radius:3px}.uh-model-cost{font-size:11px;color:var(--text);font-variant-numeric:tabular-nums}:root[data-theme=light] .uh-backdrop{background:#0f172a4d}.accounts-panel{grid-column:1;grid-row:2 / -1;background:var(--panel);border-right:1px solid var(--line);display:flex;flex-direction:column;min-height:0;overflow-y:auto}.ap-header{display:flex;align-items:center;gap:8px;padding:12px var(--panel-inset) 10px;border-bottom:1px solid var(--line);flex-shrink:0}.ap-header h2{margin:0;letter-spacing:.02em}.ap-header-right{margin-left:auto;display:flex;align-items:center;gap:4px}.ap-refresh{padding:1px 6px}.ap-refresh:disabled{opacity:var(--dim-off);cursor:default}.ap-account{padding:9px var(--panel-inset) 8px;border-bottom:1px solid var(--line-soft)}.ap-account.active{background:color-mix(in srgb,var(--accent) 2%,transparent)}.ap-account-head{display:flex;align-items:center;gap:6px;margin-bottom:6px}.ap-num{font-size:10px;color:var(--muted);min-width:9px}.ap-alias{font-size:11px;font-weight:600;color:var(--text);min-width:0;max-width:40%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ap-email{font-size:10px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1}.ap-badge-active{flex-shrink:0;padding:1px 7px;border-radius:999px;background:var(--accent);color:var(--bg);font-size:10px;font-weight:600;line-height:1.5}.ap-badge-held{flex-shrink:0;padding:1px 7px;border-radius:999px;background:var(--ctl-fill);color:var(--text);font-size:10px;line-height:1.5}.ap-switch{flex-shrink:0}.ap-lanes{display:flex;flex-direction:column}.ap-lane{display:grid;grid-template-columns:30px 1fr 32px;grid-template-areas:"label track pct" ". reset reset";align-items:center;gap:2px 6px;margin-bottom:3px}.ap-lane-label{grid-area:label;font-size:10px;color:var(--muted)}.ap-lane-track{grid-area:track;height:4px;border-radius:2px;background:var(--line-soft);overflow:hidden}.ap-lane-fill{height:100%;border-radius:2px}.ap-lane-pct{grid-area:pct;font-size:10px;text-align:right}.ap-lane-reset{grid-area:reset;font-size:9px;color:var(--text-dim)}.ap-lane-reset:empty{display:none}.ap-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;margin-top:5px;font-size:9px;color:var(--muted)}.ap-err,.ap-stale{color:var(--warn)}.ap-age{margin-left:auto;white-space:nowrap;cursor:help}.ap-empty{display:flex;flex-direction:column;gap:4px;padding:12px var(--panel-inset);font-size:11px;color:var(--muted)}.ap-hint{font-size:10px;line-height:1.5;color:var(--muted)}.ap-empty .ap-cmd{display:block;margin:6px 0 2px;padding:7px 9px;border-radius:5px;background:color-mix(in srgb,var(--accent) 7%,transparent);color:var(--text);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}.ap-empty .ap-hint code{padding:1px 4px;border-radius:3px;background:color-mix(in srgb,var(--accent) 7%,transparent);font-size:10px}.ap-failure{display:flex;align-items:flex-start;gap:6px;margin:8px var(--panel-inset) 0;padding:6px 8px;border-radius:4px;background:color-mix(in srgb,var(--err) 12%,transparent);color:var(--err);font-size:10px;word-break:break-word}.ap-failure-text{flex:1;min-width:0}.ap-failure-x{position:relative;flex:none;margin:-2px -2px 0 0;padding:0 3px;border:0;background:none;color:inherit;opacity:.6;font-size:12px;line-height:1.2;cursor:pointer;transition:opacity .12s,transform .14s cubic-bezier(.23,1,.32,1)}.ap-failure-x:after{content:"";position:absolute;top:50%;left:50%;width:24px;height:24px;margin:-12px 0 0 -12px}.ap-failure-x:hover{opacity:1}.ap-failure-x:active{transform:scale(.94)}.ap-auto{padding:12px var(--panel-inset) 11px;border-top:1px solid var(--line)}.ap-auto-head{display:flex;flex-direction:column;gap:8px}.ap-auto-ctl{display:flex;align-items:center;gap:6px}.ap-auto-title{margin:0;font-size:11px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.ap-auto-state{margin-left:auto;display:inline-flex;align-items:center;gap:5px;padding:2px 8px 2px 7px;border:1px solid var(--ctl-edge);border-radius:999px;background:transparent;font:inherit;font-size:10px;color:var(--muted);line-height:1.5}.ap-dot{width:5px;height:5px;border-radius:50%;background:currentColor;opacity:.55;flex-shrink:0}button.ap-auto-state{cursor:pointer;transition:border-color .12s,color .12s,transform .14s cubic-bezier(.23,1,.32,1)}button.ap-auto-state:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}button.ap-auto-state:active:not(:disabled){transform:scale(.97)}button.ap-auto-state:focus-visible{outline:2px solid var(--accent);outline-offset:1px}button.ap-auto-state:disabled{cursor:default;opacity:var(--dim-off)}.ap-auto-state.live{border-color:var(--accent);color:var(--accent)}.ap-pulse{position:relative;width:5px;height:5px;border-radius:50%;background:currentColor;flex-shrink:0}.ap-pulse:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:1px solid currentColor;animation:ap-ping 2.6s cubic-bezier(.22,.61,.36,1) infinite}@keyframes ap-ping{0%{transform:scale(1);opacity:.7}50%{transform:scale(3.2);opacity:0}to{transform:scale(3.2);opacity:0}}@media(prefers-reduced-motion:reduce){.ap-pulse:after{animation:none;opacity:.35;transform:scale(2.2)}}.ap-auto-note{margin:9px 0 0;font-size:9px;line-height:1.6;color:var(--muted)}.ap-auto-note .ap-pulse{display:inline-block;margin-right:5px;vertical-align:1px;color:var(--accent)}.ap-auto-note code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9px;color:var(--text);white-space:nowrap}.ap-auto-now{font-size:10px;color:var(--muted);font-variant-numeric:tabular-nums}.ap-auto-now:after{content:"/";margin-left:8px;color:var(--muted);opacity:.45}.ap-auto-now.near{color:var(--warn)}.ap-field{position:relative;display:inline-block}.ap-field:after{content:"";position:absolute;right:7px;top:50%;width:5px;height:5px;margin-top:-3px;border-right:1.2px solid currentColor;border-bottom:1.2px solid currentColor;transform:rotate(45deg);opacity:.5;pointer-events:none}.ap-field select{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:var(--ctl-fill);color:var(--text);border:1px solid var(--ctl-edge);border-radius:5px;padding:2px 19px 2px 7px;font:inherit;font-size:11px;line-height:1.5;text-align:right;cursor:pointer;transition:border-color .12s,color .12s,transform .14s cubic-bezier(.23,1,.32,1)}.ap-field select:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.ap-field select:active:not(:disabled){transform:scale(.97)}.ap-manage .ap-field select{text-align:left}.ap-field select:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.ap-field select:disabled{cursor:default;opacity:var(--dim-off)}.ap-field:has(select:hover:not(:disabled)):after{color:var(--accent);opacity:1}.ap-auto-foot{display:flex;align-items:baseline;gap:8px;margin-top:8px;padding-top:8px;border-top:1px solid var(--line-soft)}.ap-auto-result{font-size:10px;line-height:1.5;color:var(--muted);min-width:0}.ap-rotate{background:none;border:none;padding:0;font:inherit;font-size:9px;color:var(--muted);cursor:pointer;text-decoration:underline dotted;text-underline-offset:2px;transition:color .12s,transform .14s cubic-bezier(.23,1,.32,1)}.ap-rotate:hover:not(:disabled){color:var(--accent)}.ap-rotate:active:not(:disabled){transform:scale(.97)}.ap-rotate:disabled{cursor:default;opacity:var(--dim-off)}.ap-lanes-more{background:none;border:none;padding:0;font:inherit;font-size:9px;color:var(--muted);cursor:pointer;text-decoration:underline dotted;text-underline-offset:2px;transition:color .12s,transform .14s cubic-bezier(.23,1,.32,1)}.ap-lanes-more:hover{color:var(--accent)}.ap-lanes-more:active{transform:scale(.97)}.ap-footnote{margin:0;padding:9px 14px 2px;border-top:1px solid var(--line-soft);font-size:9px;line-height:1.5;color:var(--muted);cursor:help}.canvas-wrap.bubbling .react-flow__node{transition:transform .42s cubic-bezier(.22,.61,.36,1)}.canvas-wrap.bubbling .react-flow__node.react-flow__node-sessionGroup{transition:transform .42s cubic-bezier(.22,.61,.36,1),width .42s cubic-bezier(.22,.61,.36,1),height .42s cubic-bezier(.22,.61,.36,1)}@media(prefers-reduced-motion:reduce){.canvas-wrap.bubbling .react-flow__node,.canvas-wrap.bubbling .react-flow__node.react-flow__node-sessionGroup{transition:none}}.canvas-wrap.bubbling .react-flow__node.dragging,.canvas-wrap.dragging-any .react-flow__node,.canvas-wrap.dragging-any .react-flow__node.react-flow__node-sessionGroup{transition:none}.canvas-wrap.dragging-any .cluster-card{transition:opacity .2s ease}@media(prefers-reduced-motion:reduce){.react-flow__node{transition:none;animation:fadeIn .14s ease both}.react-flow__node.rf-exiting .agent-node,.react-flow__edge.rf-edge-exiting .react-flow__edge-path{animation:canvas-fade-out .6s linear forwards}.react-flow__edge.animated .react-flow__edge-path,.react-flow__edge.rf-edge-selected .react-flow__edge-path,.tool-conn.status-inflight{animation:none}.cluster-card{transition:opacity .2s ease}.ctx-donut{transition:filter .12s ease}.ctx-donut:hover{transform:none}.tool-burst,.tool-burst.sub,.tool-burst.status-done,.tool-burst.status-err,.tool-burst.sub.status-done,.tool-burst.sub.status-err{animation:fadeIn .14s ease both}.tool-burst.fading,.tool-burst.sub.fading{animation:canvas-fade-out .6s linear forwards}.tool-burst .tb-spin,.tool-burst .tb-mark,.tool-burst.status-inflight .tb-emoji,.state-pill.state-active:before{animation:none}.tool-burst.clickable{transition:box-shadow .12s ease,opacity .18s ease,filter .18s ease}.tool-burst.clickable:hover{translate:none}.empty-hero .orbit.r1,.empty-hero .orbit.r2,.empty-hero .orbit.r3,.empty-hero .core,.empty-hero .core:after{animation:none}@keyframes canvas-fade-out{to{opacity:0}}}.ap-add{line-height:1;margin-right:6px}.ap-more{margin-left:4px;display:inline-grid;place-items:center;min-width:24px;min-height:24px;padding:0 2px;border:1px solid transparent;border-radius:6px;background:none;color:var(--text-dim);font-size:13px;line-height:1;cursor:pointer}.ap-account:hover .ap-more,.ap-more:hover,.ap-more:focus-visible,.ap-more.on{color:var(--text)}.ap-more:hover,.ap-more.on{border-color:var(--ctl-edge)}.ap-manage{display:flex;flex-direction:column;gap:8px;margin-top:8px;padding-top:8px;border-top:1px dashed var(--line-soft)}.ap-manage-name,.ap-manage-slot,.ap-manage-acts{display:flex;align-items:center;gap:8px}.ap-manage-input{flex:1}.ap-manage-slot .ap-field{flex:1;min-width:0}.ap-manage-slot .ap-field select{width:100%}.ap-manage-acts .ap-manage-btn.danger{margin-left:auto;min-width:62px}.ap-manage-hint{color:var(--text-dim);font-size:10px;min-width:0}.ap-manage-hint.ap-manage-swap{color:var(--accent)}.ap-manage-input{min-width:0;padding:3px 7px;border:1px solid var(--ctl-edge);border-radius:6px;background:var(--ctl-fill);color:var(--text);font:inherit;font-size:11px;transition:border-color .12s,background .12s}.ap-manage-input:hover{border-color:var(--accent)}.ap-manage-input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.ap-manage-btn{padding:3px 9px;border:1px solid var(--ctl-edge);border-radius:999px;background:var(--ctl-fill);color:var(--text);font:inherit;font-size:10px;cursor:pointer;transition:border-color .12s,color .12s,background .12s,transform .14s cubic-bezier(.23,1,.32,1)}.ap-manage-btn:hover:not(:disabled){border-color:var(--accent);background:color-mix(in srgb,var(--text) 12%,transparent)}.ap-manage-btn:active:not(:disabled){transform:scale(.97)}.ap-manage-btn:disabled{opacity:var(--dim-off);cursor:default}.ap-manage-btn.danger{color:var(--err);border-color:color-mix(in srgb,var(--err) 65%,transparent)}.ap-manage-btn.danger:hover:not(:disabled){border-color:var(--err)}.ap-manage-btn.danger.armed{color:var(--bg);background:var(--err);border-color:var(--err);font-weight:600}.ap-share{display:flex;flex-direction:column;gap:5px}.ap-share-blob{display:block;max-height:66px;overflow:auto;overflow-wrap:anywhere;padding:6px 8px;border:1px solid var(--line);border-radius:6px;background:var(--bg-soft);color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9px;line-height:1.4;-webkit-user-select:all;user-select:all}.ap-share-foot{display:flex;align-items:center;gap:8px}.aa-modal{width:min(560px,92vw)}.aa-body{gap:18px;display:flex;flex-direction:column}.aa-tabs{display:inline-flex;gap:4px}.aa-tab{padding:4px 12px;border:1px solid var(--ctl-edge);border-radius:999px;background:none;color:var(--muted);font:inherit;font-size:12px;cursor:pointer;transition:color .12s,border-color .12s,background .12s,transform .14s cubic-bezier(.23,1,.32,1)}.aa-tab:hover{color:var(--text)}.aa-tab:active{transform:scale(.97)}.aa-tab.on{color:var(--text);border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent)}.aa-step{display:flex;flex-direction:column;gap:8px}.aa-step h4{margin:0;color:var(--muted);font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.aa-note{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.aa-err{margin:0;color:var(--err);font-size:12px;line-height:1.5}.aa-link{overflow-wrap:anywhere;padding:8px 10px;border:1px solid var(--ctl-edge);border-radius:8px;background:var(--ctl-fill);color:var(--accent);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;line-height:1.5;text-decoration:none;-webkit-user-select:all;user-select:all}.aa-link:hover{border-color:var(--accent);text-decoration:underline}.aa-field{display:flex;align-items:center;gap:8px}.aa-field input{flex:1;min-width:0;padding:7px 11px;border:1px solid var(--ctl-edge);border-radius:8px;background:var(--bg-soft);color:var(--text);font:inherit;font-size:13px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.aa-field input::placeholder{color:var(--text-dim)}.aa-field input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.aa-field input:disabled{opacity:var(--dim-off)}.aa-primer .aa-note{max-width:46ch}.aa-actions{display:flex;gap:8px;align-items:center;margin-top:2px}.aa-done{position:relative;display:flex;flex-direction:column;align-items:center;gap:10px;padding:6px 0 2px;text-align:center;animation:aa-done-in .22s cubic-bezier(.23,1,.32,1) both}.aa-done h4{margin:0;color:var(--text);font-size:13px;font-weight:600;letter-spacing:0;text-transform:none}.aa-done .aa-note{max-width:44ch}@keyframes aa-done-in{0%{opacity:0;transform:scale(.97) translateY(4px)}to{opacity:1;transform:none}}.aa-mark{width:44px;height:44px;overflow:visible}.aa-mark-ring,.aa-mark-tick{fill:none;stroke:var(--ok);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.aa-mark-ring{opacity:.45;stroke-dasharray:126;stroke-dashoffset:126;transform:rotate(-90deg);transform-origin:50% 50%;animation:aa-draw .38s cubic-bezier(.23,1,.32,1) 40ms forwards}.aa-mark-tick{stroke-dasharray:30;stroke-dashoffset:30;animation:aa-draw .26s cubic-bezier(.23,1,.32,1) .2s forwards}@keyframes aa-draw{to{stroke-dashoffset:0}}.confetti{position:fixed;width:0;height:0;z-index:101;pointer-events:none}.confetti-bit{position:absolute;top:0;left:0;width:6px;height:9px;margin:-4px 0 0 -3px;border-radius:1.5px;background:var(--accent);opacity:0;animation:aa-burst-move .9s cubic-bezier(.16,.9,.3,1) both,aa-burst-fade .9s linear both}.confetti-bit.round{width:6px;height:6px;border-radius:50%}.confetti-bit[data-hue="1"]{background:var(--ok)}.confetti-bit[data-hue="2"]{background:var(--warn)}.confetti-bit[data-hue="3"]{background:color-mix(in srgb,var(--accent) 55%,var(--ok))}@keyframes aa-burst-move{0%{transform:translateZ(0) scale(calc(var(--s, 1) * .6)) rotate(0)}70%{transform:translate3d(var(--dx),var(--dy),0) scale(var(--s, 1)) rotate(var(--rot))}to{transform:translate3d(calc(var(--dx) * 1.08),calc(var(--dy) * .82 + 16px),0) scale(calc(var(--s, 1) * .9)) rotate(var(--rot))}}@keyframes aa-burst-fade{0%{opacity:0}10%{opacity:1}62%{opacity:1}to{opacity:0}}@media(prefers-reduced-motion:reduce){.aa-done{animation:aa-done-fade .16s ease both}.aa-mark-ring,.aa-mark-tick{animation:none;stroke-dashoffset:0}@keyframes aa-done-fade{0%{opacity:0}to{opacity:1}}}.cat-filter-bar{transition:background .18s ease,border-color .18s ease,box-shadow .18s ease}.cat-filter-bar.occluded:not(:hover):not(:focus-within){background:#14161b59;border-color:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}:root[data-theme=light] .cat-filter-bar.occluded:not(:hover):not(:focus-within){background:#ffffff59}.ap-manage{animation:ap-manage-in .18s cubic-bezier(.23,1,.32,1) both}@keyframes ap-manage-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.ap-more{transition:color .12s,border-color .12s,transform .14s cubic-bezier(.23,1,.32,1)}.ap-more:active{transform:scale(.94)}.ap-manage-btn.danger.armed{position:relative;overflow:hidden}.ap-manage-btn.danger.armed:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:color-mix(in srgb,var(--bg) 70%,transparent);transform-origin:left center;animation:ap-disarm 4s linear forwards}@keyframes ap-disarm{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.ap-share{animation:ap-manage-in .18s cubic-bezier(.23,1,.32,1) both}.ap-share-blob{-webkit-user-select:all;user-select:all;max-height:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-dim)}.ap-share-foot .ap-manage-btn{color:var(--accent);border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent)}.ap-share-foot .ap-manage-btn:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 18%,transparent)}.ap-share.expired .ap-share-blob{opacity:var(--dim-stale)}.ap-share-warn,.ap-share-expiry.soon{color:var(--warn)}.ap-share-expiry.gone{color:var(--err)}@media(prefers-reduced-motion:reduce){.ap-manage,.ap-share{animation:none}.ap-manage-btn.danger.armed:after{animation:none;transform:scaleX(0)}button.btn:active:not(:disabled),.ap-manage-btn:active:not(:disabled),.ap-more:active,.glyph-btn:active:not(:disabled),.cat-filter:active,.uh-range-btn:active,.selected-ribbon .selected-close:active,.ver-banner .ver-cmd:active,.ver-banner .ver-auto:active,.ver-banner .ver-close:active,.topbar .brand button.v:active,.ver-banner .ver-act:active:not(:disabled),.ctx-donut:active,.session-list .sl-row:active,button.tool.clickable:active,.uh-bar-col:active,.ap-failure-x:active,button.ap-auto-state:active:not(:disabled),.ap-field select:active:not(:disabled),.ap-rotate:active:not(:disabled),.ap-lanes-more:active,.aa-tab:active,.aa-result-fix:active,.bw-ep-head:active,.bw-toggle:active,.sm-toggle:active,.up-disclose:active,.bw-help:active,.bw-settings select:active:not(:disabled),.selected-ribbon:active:not(:has(.selected-close:active)){transform:none}.tool-burst.clickable:active{scale:none}.up-chev{transition:none}.up-period .uh-range-btn[data-pending]:after{animation:none}.uh-wait-axis,.uh-bar{animation:none}}.ap-fix{margin-left:6px;padding:1px 8px;border:1px solid color-mix(in srgb,var(--warn) 85%,transparent);border-radius:999px;background:color-mix(in srgb,var(--warn) 12%,transparent);color:var(--warn);font:inherit;font-size:10px;cursor:pointer;transition:background .12s,border-color .12s,transform .14s cubic-bezier(.23,1,.32,1)}.ap-fix:hover{background:color-mix(in srgb,var(--warn) 22%,transparent);border-color:var(--warn)}.ap-fix:active{transform:scale(.97)}@media(prefers-reduced-motion:reduce){.ap-fix:active{transform:none}}.ap-empty .ap-fix{align-self:flex-start;margin:5px 0 0}.ap-empty .ap-fix:disabled{opacity:var(--dim-off);cursor:default}@media(prefers-reduced-motion:reduce){.ctx-window-fill,.qb-fill,.qb-pace-marker,.uh-bar{transition:none}.modal,.ctx-modal,.uh-modal,.sound-menu{animation:fadeIn .14s ease-out}}.ap-stale-copy{font-size:10px;color:var(--text-dim)}.bw-btn{position:relative}.bw-badge{position:absolute;top:-4px;right:-4px;min-width:14px;height:14px;padding:0 3px;border-radius:7px;background:var(--warn);color:var(--bg);font-size:9px;font-weight:700;line-height:14px;text-align:center;font-variant-numeric:tabular-nums}.bw-btn.watching{color:var(--accent)}.bw-btn.has-findings{color:var(--warn)}.bw-modal{width:min(860px,94vw)}.bw-body{container:bw / inline-size;display:flex;flex-direction:column;gap:16px}.bw-body>*{flex:none}.bw-day{display:flex;flex-direction:column;gap:8px}.bw-day h4{margin:0;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-dim)}.bw-ep{border:1px solid var(--line);border-radius:6px;overflow:hidden;background:var(--panel)}.bw-ep-row{display:flex;align-items:stretch}.bw-ep-row .bw-ep-head{flex:1 1 auto;min-width:0}.bw-ep-x{flex:none;align-self:center;margin-right:6px;color:var(--text-dim);transition:color .12s ease}.bw-ep-x:hover,.bw-ep-x:focus-visible{color:var(--warn)}.bw-ep.open{border-color:var(--ctl-edge)}.bw-ep-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:12px;align-items:baseline;width:100%;padding:10px 12px;background:none;border:0;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:transform .12s ease,background .12s ease}.bw-ep-head:hover{background:var(--bg-soft)}.bw-ep-head:active{transform:scale(.97)}.bw-ep-host{font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bw-ep-meta,.bw-ep-count{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.bw-ep-head:hover .bw-ep-count{color:var(--text)}.bw-urls{list-style:none;margin:0;padding:0 12px 10px;display:flex;flex-direction:column;gap:4px}.bw-urls li{display:grid;grid-template-columns:62px 1fr;gap:8px;font-size:11px;align-items:baseline}.bw-url-time{color:var(--text-dim);font-variant-numeric:tabular-nums;white-space:nowrap}.bw-url{color:var(--muted);word-break:break-all}.bw-status{display:flex;align-items:center;flex-wrap:wrap;gap:10px;min-height:48px;border-top:1px solid var(--line);padding-top:12px}.bw-status-text{font-size:12px;color:var(--muted);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bw-gear{margin-left:auto}.bw-gear.on{color:var(--accent)}.bw-switch{display:flex;align-items:center;gap:12px;padding:8px 0;cursor:pointer}.bw-switch-label{font-size:12px;color:var(--muted);white-space:nowrap}.bw-switch:hover .bw-switch-label{color:var(--text)}.bw-prof-name{font-weight:600}.bw-note{margin:0;font-size:11px;color:var(--text-secondary);max-width:72ch;line-height:1.55}.bw-state{display:flex;flex-direction:column;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:6px;overflow:hidden}.bw-row{display:grid;grid-template-columns:8px auto 1fr auto;gap:8px;align-items:center;background:var(--panel);padding:10px 14px}.bw-dot{width:7px;height:7px;border-radius:50%;background:var(--muted-dim)}.bw-row.err .bw-dot{background:var(--err)}.bw-row.ok .bw-dot{background:var(--ok)}.bw-row.on .bw-dot{background:var(--accent)}.bw-row-label{font-size:13px;font-weight:600;white-space:nowrap}.bw-row.err .bw-row-label{color:var(--err)}.bw-row-detail{font-size:12px;color:var(--text-secondary);min-width:0;overflow:hidden;text-overflow:ellipsis}.bw-write-err{border-color:var(--err)}.bw-write-err .bw-row-detail{white-space:normal;overflow:visible}.bw-write-err-x{color:var(--err)}.bw-row .btn{white-space:nowrap}.bw-why{background:none;border:0;padding:0 0 0 6px;color:var(--muted);font:inherit;font-size:11px;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.bw-why:hover{color:var(--text)}.bw-toggle{position:relative;width:30px;height:17px;padding:0;border-radius:9px;border:1px solid var(--ctl-edge);background:var(--ctl-fill);cursor:pointer;flex:none;transition:background .14s ease,border-color .14s ease,transform .12s ease}.bw-toggle:hover{border-color:var(--accent)}.bw-toggle:active{transform:scale(.97)}.bw-toggle[aria-checked=true]{background:var(--accent);border-color:var(--accent)}.bw-toggle-knob{position:absolute;top:2px;left:2px;width:11px;height:11px;border-radius:50%;background:var(--text);transition:transform .14s ease,background .14s ease}.bw-toggle[aria-checked=true] .bw-toggle-knob{transform:translate(13px);background:var(--bg)}.bw-log{display:flex;flex-direction:column;gap:4px;max-height:320px;overflow-y:auto}.bw-feed{display:flex;flex-direction:column;gap:12px;min-height:0}.bw-feed-note{margin-bottom:-4px;max-width:68ch}.bw-head-row{align-items:baseline}.bw-feed-count{margin-left:auto;font-size:10px;letter-spacing:0;text-transform:none;color:var(--text-dim);font-variant-numeric:tabular-nums}.bw-log-line{display:grid;grid-template-columns:66px minmax(0,96px) minmax(0,1fr) max-content;gap:8px;font-size:11px;align-items:baseline;padding:4px 8px;border-radius:4px;min-width:0;transition:background .14s ease}.bw-log-line:hover{background:var(--bg-soft)}.bw-log-line:hover .bw-log-time,.bw-log-line:hover .bw-log-profile,.bw-log-line:hover .bw-log-sys{color:var(--text)}.bw-log-time,.bw-log-profile,.bw-log-sys,.bw-log-browser{transition:color .14s ease}@media(prefers-reduced-motion:no-preference){.bw-log-line{animation:bw-line-in .26s cubic-bezier(.16,1,.3,1)}}@keyframes bw-line-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:no-preference){.bw-log-line.find{animation:bw-find-in .9s cubic-bezier(.16,1,.3,1)}}@keyframes bw-find-in{0%{background:color-mix(in srgb,var(--accent) 22%,transparent)}to{background:transparent}}.bw-log-time{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--text-dim);font-variant-numeric:tabular-nums;white-space:nowrap}.bw-log-line{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;line-height:1.6;color:var(--muted)}.bw-log-line.find .bw-log-browser,.bw-log-line.find .bw-log-value{color:var(--accent);font-weight:600}.bw-log-line.act .bw-log-sys{color:var(--text);font-style:normal}.bw-log-line.warn .bw-log-sys,.bw-log-line.warn .bw-log-browser,.bw-log-line.warn .bw-log-value{color:var(--warn)}.bw-log-sys{grid-column:2 / -1;color:var(--text-dim);font-style:italic}.bw-log-browser{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bw-log-profile{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bw-log-value{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.bw-log-flag{color:var(--accent)}.bw-rest{margin:0;font-size:10px;color:var(--text-secondary);line-height:1.5}.bw-rest-head{align-self:flex-start}.bw-chev{color:var(--text-dim);font-size:9px}.bw-relay{font-size:10px;color:var(--text-dim);white-space:nowrap}.bw-loading{display:flex;flex-direction:column;gap:8px;padding:18px 0}.bw-loading p{margin:0;font-size:12px;color:var(--text-secondary)}.bw-loading-bar{position:relative;height:2px;border-radius:1px;background:var(--line);overflow:hidden}.bw-loading-bar:after{content:"";position:absolute;top:0;bottom:0;width:32%;border-radius:1px;background:var(--accent);animation:bw-sweep 1.4s ease-in-out infinite}@keyframes bw-sweep{0%{transform:translate(-110%)}to{transform:translate(320%)}}@media(prefers-reduced-motion:reduce){.bw-loading-bar:after{animation:none}}.bw-path{-webkit-user-select:all;user-select:all;word-break:break-all}.bw-mode-dot{width:7px;height:7px;border-radius:50%;background:var(--text-dim);flex:none;align-self:center;transition:background .2s ease,box-shadow .2s ease}.bw-mode-dot.on{background:var(--accent)}@media(prefers-reduced-motion:no-preference){.bw-mode-dot.on{animation:bw-pulse 2.6s ease-in-out infinite}}@keyframes bw-pulse{0%,to{box-shadow:0 0 color-mix(in srgb,var(--accent) 55%,transparent)}50%{box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 0%,transparent)}}.bw-mode-word{flex:none;font-size:12px;color:var(--text);font-weight:600;animation:bw-state-in .22s cubic-bezier(.16,1,.3,1)}@keyframes bw-state-in{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:none}}@keyframes bw-state-fade{0%{opacity:0}to{opacity:1}}.bw-settings{display:flex;gap:16px;flex-wrap:wrap;align-items:flex-start;padding:12px 16px;background:var(--bg-soft);border:1px solid var(--line);border-radius:6px;transform-origin:top}@media(prefers-reduced-motion:no-preference){.bw-settings{animation:bw-settings-in .24s cubic-bezier(.16,1,.3,1)}}@keyframes bw-settings-in{0%{opacity:0;transform:translateY(-6px) scaleY(.96)}to{opacity:1;transform:none}}.bw-why[aria-expanded=true]{color:var(--text)}.bw-settings label{display:flex;flex-direction:column;gap:4px;font-size:11px;color:var(--muted)}.bw-settings select{background:var(--ctl-fill);border:1px solid var(--ctl-edge);color:var(--text);border-radius:4px;padding:4px 6px;font-size:12px;cursor:pointer;transition:border-color .12s ease,color .12s ease,transform .12s ease}.bw-settings select:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.bw-settings select:active:not(:disabled){transform:scale(.97)}.bw-settings-note{margin:0;flex:1 1 30ch;font-size:11px;line-height:1.6;color:var(--text-secondary);max-width:66ch}.bw-settings-note strong{color:var(--text);font-weight:600}.bw-radar{display:block;width:100%;height:168px}@media(prefers-reduced-motion:reduce){.bw-radar{opacity:1}}.bw-work{display:grid;grid-template-columns:280px minmax(0,1fr);gap:32px;align-items:stretch}.bw-side{display:flex;flex-direction:column;gap:24px;min-width:0}.bw-sec{display:flex;flex-direction:column;gap:12px}.bw-sec-head{display:flex;align-items:center;gap:8px;margin:0;font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim)}.bw-help{width:16px;height:16px;padding:0;border:1px solid var(--ctl-edge);border-radius:50%;background:none;color:var(--text-dim);font:inherit;font-size:9px;line-height:1;cursor:pointer;transition:color .12s ease,border-color .12s ease,transform .12s ease}.bw-help{position:relative}.bw-help:after{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:50%}.bw-help:hover{color:var(--text);border-color:var(--accent)}.bw-help:active{transform:scale(.94)}.bw-help[aria-expanded=true]{color:var(--accent);border-color:var(--accent)}.bw-glance{display:flex;align-items:center;gap:16px}.bw-counts{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;min-width:0}.bw-counts li{display:flex;align-items:baseline;gap:8px;min-width:0}.bw-count-n{min-width:3ch;text-align:right;font-size:18px;line-height:1.1;color:var(--text);font-variant-numeric:tabular-nums}.bw-count-of{font-size:11px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bw-since{margin:0;font-size:10px;line-height:1.5;color:var(--text-dim)}.bw-since+.bw-since{margin-top:-8px}.bw-gate{margin:0;font-size:10px;line-height:1.5;color:var(--muted);font-variant-numeric:tabular-nums}.bw-key{margin:0;display:grid;grid-template-columns:max-content minmax(0,1fr);gap:4px 12px;padding:8px 12px;border-radius:6px;background:var(--bg-soft)}.bw-key dt{font-size:10px;font-weight:600;color:var(--muted)}.bw-key dd{margin:0;font-size:10px;line-height:1.5;color:var(--text-secondary)}.bw-rc-verdict{margin:0;font-size:11px;line-height:1.5;color:var(--text-secondary)}.bw-rc-verdict.exposed{color:var(--warn)}.bw-rc-foreign{margin:0;display:flex;flex-direction:column;gap:4px;font-size:10px;line-height:1.5;color:var(--warn)}.bw-rc-body{display:flex;flex-direction:column;gap:8px}.bw-rc-note{margin:0;font-size:10px;line-height:1.5;color:var(--text-secondary)}.bw-rc-cmd{display:flex;align-items:flex-start;gap:8px;padding:8px 10px;border-radius:6px;background:var(--bg-soft);border:1px solid var(--line)}.bw-rc-cmd code{flex:1;min-width:0;font-size:10px;line-height:1.6;white-space:pre-wrap;word-break:break-all;-webkit-user-select:all;user-select:all;color:var(--text)}button.btn.bw-rc-copy{flex:none;font-size:10px;padding:2px 8px}.bw-profiles{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.bw-profiles li{display:flex;align-items:center;gap:8px;min-height:24px;font-size:12px;min-width:0}.bw-prof-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bw-prof-dot{width:6px;height:6px;border-radius:50%;background:var(--text-dim);flex:none}.bw-prof-dot.on{background:var(--accent)}.bw-prof-state{font-size:11px;color:var(--muted);margin-left:auto;flex:none}.bw-work .bw-radar{width:88px;height:88px;flex:none}.bw-work .bw-log{flex:1 1 auto;min-height:220px;max-height:min(42vh,360px)}@container bw (max-width: 720px){.bw-work{grid-template-columns:minmax(0,1fr);gap:24px}.bw-work .bw-radar{width:88px;height:88px}}@media(max-width:640px){.bw-work{grid-template-columns:minmax(0,1fr);gap:24px}}@media(prefers-reduced-motion:reduce){.bw-mode-word,.bw-log-line,.bw-settings{animation:bw-state-fade .22s ease}}.bw-trouble{margin:0;padding:12px;border-radius:6px;border:1px solid var(--line);background:var(--bg-soft);font-size:11px;line-height:1.55;color:var(--text)}.bw-trouble.unreadable{border-color:color-mix(in srgb,var(--warn) 45%,transparent);color:var(--warn)}.bw-access{margin:8px 0 0;display:grid;grid-template-columns:max-content minmax(0,1fr);gap:4px 16px}.bw-access dt{font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim)}.bw-access dd{margin:0;font-size:11px;line-height:1.55;color:var(--text-secondary)}.bw-main{display:flex;flex-direction:column;gap:24px;min-width:0}.bw-findings{display:flex;flex-direction:column;gap:12px;min-height:0}.bw-eps{display:flex;flex-direction:column;gap:16px;max-height:min(30vh,260px);overflow-y:auto}.bw-empty{display:flex;flex-direction:column;gap:8px;max-width:62ch}.bw-empty-head{margin:0;font-size:13px;color:var(--text)}.bw-empty-note{margin:0;font-size:11px;line-height:1.6;color:var(--text-secondary)}.sa-modal{width:min(560px,92vw)}.sa-body{display:flex;flex-direction:column;gap:18px}.sa-step{display:flex;flex-direction:column;gap:10px}.sa-step h4{margin:0;color:var(--muted);font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.sa-note{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.sa-actions{display:flex;gap:8px;align-items:center;margin-top:2px}.sa-count{margin:0;color:var(--text);font-size:12px;line-height:1.5}.sa-count.empty{color:var(--muted)}.sa-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column}.sa-pick{max-height:min(46vh,320px);overflow-y:auto;gap:2px}.sa-row{display:flex;align-items:baseline;gap:8px;padding:6px 8px;border-radius:6px;cursor:pointer}.sa-row:hover{background:color-mix(in srgb,var(--text) 6%,transparent)}.sa-row input{flex:none;accent-color:var(--accent)}.sa-who{color:var(--text);font-size:12px;overflow-wrap:anywhere}.sa-sub{color:var(--text-dim);font-size:11px;overflow-wrap:anywhere}.sa-failed{display:flex;flex-direction:column;gap:4px;padding:8px 10px;border:1px solid color-mix(in srgb,var(--warn) 45%,transparent);border-radius:6px}.sa-failed-head{margin:0;color:var(--warn);font-size:12px}.sa-failed .sa-list{gap:4px}.sa-failed li{display:flex;flex-direction:column}.sa-why{color:var(--text-secondary);font-size:11px;line-height:1.5}.sa-dead{opacity:var(--dim-stale)}.aa-results{margin:0;padding:0;list-style:none;align-self:stretch;display:flex;flex-direction:column;gap:2px;max-height:min(38vh,260px);overflow-y:auto;text-align:left}.aa-result{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;padding:5px 8px;border-radius:6px;font-size:12px}.aa-result-who{color:var(--text);overflow-wrap:anywhere}.aa-result-what{margin-left:auto;color:var(--muted);font-size:11px;white-space:nowrap}.aa-result.imported .aa-result-what{color:var(--ok)}.aa-result.healed .aa-result-what,.aa-result.updated .aa-result-what{color:var(--accent)}.aa-result.failed .aa-result-what{color:var(--err)}.aa-result.failed{background:color-mix(in srgb,var(--err) 8%,transparent)}.aa-result-fix{padding:2px 8px;border:1px solid var(--ctl-edge);border-radius:999px;background:none;color:var(--muted);font:inherit;font-size:10px;cursor:pointer;transition:color .12s,border-color .12s,transform .14s cubic-bezier(.23,1,.32,1)}.aa-result-fix:hover{color:var(--text);border-color:var(--accent)}.aa-result-fix:active{transform:scale(.97)}.aa-result-err{flex-basis:100%;color:var(--err);font-size:11px;line-height:1.5}.ap-share-set{padding:1px 6px}.hist-modal{width:min(620px,92vw)}.hist-since{margin-left:auto;margin-right:10px;font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}.hist-body{padding:14px 16px 16px;overflow-y:auto}.hist-empty{margin:0;padding:20px 0;text-align:center;color:var(--muted);font-size:12px}.hist-series+.hist-series{margin-top:26px}.hist-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:6px}.hist-label{font-size:12px;font-weight:600}.hist-stats{display:flex;align-items:baseline;gap:4px;font-variant-numeric:tabular-nums}.hist-stats b{font-size:16px;font-weight:600}.hist-stats b.warn{color:var(--warn)}.hist-stats b.hot{color:var(--err)}.hist-stats i{font-style:normal;font-size:10px;color:var(--muted);margin-right:8px}.hist-plot{position:relative}.hist-chart{display:block;width:100%;overflow:visible;touch-action:none}.hist-area{fill:var(--accent);opacity:.14}.hist-line{fill:none;stroke:var(--accent);stroke-width:1.5;stroke-linejoin:round;stroke-linecap:round}.hist-dot{fill:var(--accent);stroke:var(--panel);stroke-width:1.5}.hist-floor{stroke:var(--line);stroke-width:1}.hist-rule,.pl-rule{stroke-width:1;opacity:.6;vector-effect:non-scaling-stroke}.hist-rule.warn,.pl-rule.warn{stroke:var(--warn);stroke-dasharray:6 4}.hist-rule.hot,.pl-rule.hot{stroke:var(--err);stroke-dasharray:2 3;opacity:.75}.hist-rule-tag{font-size:9px;fill:var(--muted);font-variant-numeric:tabular-nums}.hist-rule-tag.warn{fill:var(--warn)}.hist-rule-tag.hot{fill:var(--err)}.hist-cross{stroke:var(--muted);stroke-width:1;stroke-dasharray:2 3}.hist-axis{display:flex;justify-content:space-between;margin-top:4px;font-size:10px;color:var(--muted);font-variant-numeric:tabular-nums;min-height:13px}.hist-at b{color:var(--text);font-weight:600}.hist-note{margin-top:5px;font-size:10px;color:var(--muted)}@media(prefers-reduced-motion:reduce){.hist-modal,.pl-modal{animation:none}}.pl-modal{width:min(880px,94vw)}.pl-split{display:flex;flex-direction:column;min-height:0}@media(min-width:1200px){.pl-modal{width:1120px}.pl-split{flex-direction:row;align-items:stretch}.pl-split .pl-body{flex:1 1 auto;min-width:0}.pl-split .pl-strip{order:-1;flex:0 0 216px;flex-direction:column;flex-wrap:nowrap;gap:12px;border-top:0;border-right:1px solid var(--line);padding:10px 16px 12px;min-height:0;overflow-y:auto}.pl-split .pl-cell-head{width:auto}.pl-split .pl-spark{width:100%;height:48px}}.pl-count{margin-left:auto;margin-right:10px;font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}.pl-body{padding:10px 16px;overflow-y:auto;font-size:11px}.pl-empty{margin:0;padding:20px 0;text-align:center;color:var(--muted);font-size:12px}.pl-table thead th{position:sticky;top:0;background:var(--panel);z-index:1;box-shadow:inset 0 -1px 0 var(--line)}.pl-body .pl-table thead th{padding-bottom:6px}.pl-pid-h{width:72px;text-align:right;padding-right:8px!important;font-size:10px;font-weight:500;color:var(--muted)}.pl-pid{width:72px}.pl-body .pl-table th:nth-child(4),.pl-body .pl-table td:nth-child(4),.pl-body .pl-table th:nth-child(6),.pl-body .pl-table td:nth-child(6){padding-right:18px!important}.pl-body .pl-table th:nth-child(2){width:66px}.pl-body .pl-table th:nth-child(3){width:54px}.pl-body .pl-table th:nth-child(4){width:52px}.pl-body .pl-table th:nth-child(5){width:92px}.pl-body .pl-table th:nth-child(3) .sd-sort,.pl-body .pl-table th:nth-child(4) .sd-sort{flex-direction:row-reverse;justify-content:flex-start;padding-right:8px}.pl-user{max-width:92px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pl-name{padding-left:2px;color:var(--text);max-width:0;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pl-cmd{color:var(--text-dim)}.pl-body tbody tr:hover .pl-cmd{color:var(--muted)}.pl-body tbody tr:hover td{color:var(--text)}.pl-strip{display:flex;flex-wrap:wrap;gap:10px 22px;padding:10px 16px 12px;border-top:1px solid var(--line);flex-shrink:0;min-height:64px}.pl-cell{display:flex;flex-direction:column;gap:2px}.pl-cell-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;width:116px;white-space:nowrap}.pl-cell-label{font-size:10px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;min-width:0}.pl-cell-now{flex:none;font-size:11px;font-weight:600;color:var(--text);font-variant-numeric:tabular-nums}.pl-cell.warn .pl-cell-now{color:var(--warn)}.pl-cell.hot .pl-cell-now{color:var(--err)}.pl-spark{display:block;background:var(--line-soft);border-radius:2px}.pl-spark-floor{stroke:var(--line-soft);stroke-width:1;vector-effect:non-scaling-stroke}.pl-spark-area{fill:var(--accent);opacity:.1}.pl-spark-line{fill:none;stroke:var(--accent);stroke-width:.9;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}.pl-cell.warn .pl-spark-area{fill:var(--warn)}.pl-cell.warn .pl-spark-line{stroke:var(--warn)}.pl-cell.hot .pl-spark-area{fill:var(--err)}.pl-cell.hot .pl-spark-line{stroke:var(--err)}
@@ -40,8 +40,8 @@
40
40
  document.documentElement.setAttribute("data-theme", stored === "light" ? "light" : "dark");
41
41
  })();
42
42
  </script>
43
- <script type="module" crossorigin src="/assets/index-DfcEnmf5.js"></script>
44
- <link rel="stylesheet" crossorigin href="/assets/index-ClmtUpYO.css">
43
+ <script type="module" crossorigin src="/assets/index-CinWEMD2.js"></script>
44
+ <link rel="stylesheet" crossorigin href="/assets/index-Xyt_GsRj.css">
45
45
  </head>
46
46
  <body>
47
47
  <div id="root"></div>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agent-dag",
3
- "version": "3.12.0",
3
+ "version": "3.14.0",
4
4
  "description": "Live deck of Claude Code and Codex agents — watch tool calls, token spend and every Claude Code subagent on one calm canvas. Run it with npx ccdeck.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -31,6 +31,46 @@
31
31
  "about a defect in the type, and the suite refuses both it and no space at",
32
32
  "all."
33
33
  ],
34
+ "3.14.0": [
35
+ {
36
+ "title": "📊 The machine comes back beside the list that covers it",
37
+ "body": "**Busiest processes** opens over the machine panel and hides the very readings that sent you looking. They are back beside the list — cores, memory, swap, queued work, temperature — with up to an hour behind each: a column down the side on a wide screen, a band under the table on a narrow one.\n\nEach is drawn against the line it is measured to — memory and swap at 90%, load at your core count, the GPU at 75° and again at 90° — so swap sitting *on* its line is something you see rather than work out. The processor readings get no line on purpose: a CPU at 90% is your machine doing what you asked for. Throttling appears only once your machine has actually been held back, and the band says how much history it really has rather than claiming an hour it has not had."
38
+ },
39
+ {
40
+ "title": "📋 The process dialog's footnote moved onto the columns it was about",
41
+ "body": "A band ran along the bottom of **Busiest processes** saying three things. Two were worth keeping and are now on the header of the column they describe — hover `memory` to read what that number measures, `process` to read that the command-line redaction is a filter rather than a promise.\n\nThe third said the list is the busiest by processor and memory, refreshed every four seconds. The heading, the count beside it and the moving numbers were already saying that."
42
+ },
43
+ {
44
+ "title": "📝 These notes render what they were written in",
45
+ "body": "Every note in this dialog is written in Markdown — **bold** for the sentence that carries the change, backticks for a flag or a path — and the dialog printed the string raw. So the first window you see after an upgrade has been showing you `**this**`, backticks and all, since the feature shipped: 25 of 52 notes, 52 bold spans, 54 code spans.\n\nWhat you are reading is the first version that does not.\n\nNo Markdown library came along for it. Counted in the file: bold 52, code 54, links 0, headings 0, lists 0 — and the smallest library that reads all of Markdown is 40KB on a bundle the deck fetches while you wait for it to start."
46
+ },
47
+ {
48
+ "title": "⎋ Esc leaves the machine panel where it is",
49
+ "body": "The × on **This machine** read `Close (Esc)`, so Escape put the panel away. Escape belongs to the canvas — it deselects and hands the keyboard back — and pressing it while you are reading your instruments should not close them.\n\nThe panel now closes the two ways it opens: its ×, and the meter in the topbar. The × says `Close`, and names no key it does not answer."
50
+ },
51
+ {
52
+ "title": "🖥 The machine moved out of the topbar and into a button",
53
+ "body": "The small CPU sparkline and memory bar in the topbar are gone. A chip glyph in the icon row beside `$` and the accounts silhouette opens the same **This machine** panel — cores, memory, swap, load, temperature, busiest processes — and the bar stops moving in the corner of your eye.\n\nIt also stops asking. The deck read your machine every three seconds for the life of every tab to feed that meter; it now reads only while the panel is open, and the history behind the readings is kept by the deck itself, so a panel opened an hour from now still has the hour behind it."
54
+ },
55
+ {
56
+ "title": "🔎 The panel's eight process rows became one way in",
57
+ "body": "The machine panel drew eight processes in a 280px box: three columns, names cut off mid-word, and a `ps` run every four seconds to keep them moving. **Busiest processes** is a single row you press now, and the dialog behind it is what it always was — every candidate the deck sees, its memory in bytes, threads, user, pid, and the command line that tells you which `node` this one is.\n\nWith that dialog closed, the deck reads no process list at all."
58
+ },
59
+ {
60
+ "title": "⏱ The restart banner says whether the press is safe, and shows the fuse",
61
+ "body": "The button read `Restart now` whether the machine was idle or five agents were mid-turn — and the events fired while the server is down are lost for good. It reads **`Restart anyway`** now when something is running, with the count beside it, and `Restart now` with *nothing is running* when the machine is quiet.\n\nThe automatic restart said only `auto when idle`, while a 30-second clock ran where nobody could see it. It counts — **`auto in 18s`** — which is also how you stop it, since the switch is the label. The amber dot pulses only while that clock runs.\n\nThe switch also says `auto-restart off` in words rather than in a colour, both its label and the button are readable in the light theme now, and a tab you are not looking at no longer restarts the deck under the tab you are."
62
+ }
63
+ ],
64
+ "3.13.0": [
65
+ {
66
+ "title": "📊 Usage history stops jumping out from under you",
67
+ "body": "Pressing **H** put `running ccusage…` in a box 186px tall. Two to four seconds later the chart, the totals and the legend arrived and the box became 429px — and because the dialog is centred, that growth moved the whole thing **121px upward**, under the cursor that had just pressed something.\n\nThe chart's place is now reserved from the first frame: the 168px the chart is tall plus the 16px it keeps for its day labels, both taken from the chart's own rule so the placeholder and the thing it holds room for cannot drift apart. The jump goes from 243px to 156px. It deliberately stops there — the totals and the legend are content, the legend's height depends on how many models ran, and reserving those would have meant drawing four plausible empty cards for a reading that had not arrived.\n\nWhat is drawn in the reserved space is **the chart's baseline and nothing else**: one line, in the same colour, at the height the columns will land on. Not a skeleton of grey bars — a skeleton stands in for content, an axis is furniture, and furniture is honest before the data exists. The light on it travels rather than fills, because the deck knows a subprocess is running and does not know how far through your transcripts it has got.\n\nThen the days rise out of that line, **oldest first**. The stagger is divided rather than fixed — 200ms of spread whether the range is 7 days or 90 — so the longest range is not also the slowest to appear.\n\nWith reduced motion both loops and both entrances are off. The reserved space is layout, not animation, and stays outside that rule: asking for less movement gets you the same dialog that does not jump."
68
+ },
69
+ {
70
+ "title": "⏳ The period mark says it is being read",
71
+ "body": "The first read of **today**, **month** or **all** takes two to three seconds — it walks the transcripts on this machine, and the cost is the walk, not the size of the range you asked for. Until now the panel said nothing for the whole of it, so pressing `month` looked like pressing nothing, and the honest response was to press it again.\n\nThe mark under the period now pulses while that read is in flight, and it **pulses rather than fills**: nothing measures how far through the transcripts ccusage has got, so a bar that filled would be inventing a number. Hovering the pending period says which one is being read, and screen readers are told the same thing through a live region rather than being left with a silent button."
72
+ }
73
+ ],
34
74
  "3.12.0": [
35
75
  {
36
76
  "title": "🔍 Busiest processes tells you which one",
@@ -818,7 +818,7 @@ let procInFlightDetail = false;
818
818
  /**
819
819
  * How old a finished reading may be and still answer a caller.
820
820
  *
821
- * Well under SystemMeter's PROC_POLL_MS of 4000, so the panel that this exists
821
+ * Well under MachinePanel's PROC_POLL_MS of 4000, so the panel that this exists
822
822
  * for never once gets a cached list; long enough that a second tab, a second
823
823
  * browser, or anything else arriving between two of those polls is handed the
824
824
  * list the first tab is already looking at rather than starting its own child.
@@ -1510,6 +1510,11 @@ function seriesFor(group) {
1510
1510
  }
1511
1511
  }
1512
1512
  return labels.map(label => ({
1513
+ // The stable name of this reading, which the display label is not: `Swap`
1514
+ // is `Commit` on Windows, and anything joining on what the eye sees
1515
+ // breaks on the one platform nobody re-reads this on. It is the key the
1516
+ // ring is already recorded under, published rather than invented.
1517
+ key: `thermal:${label}`,
1513
1518
  label,
1514
1519
  unit: label === THROTTLE_LABEL ? "%" : "C",
1515
1520
  top: 100,
@@ -1533,12 +1538,12 @@ function seriesFor(group) {
1533
1538
  // different machine from twelve at 20.
1534
1539
  //
1535
1540
  // No bands, deliberately, and the reason is written at the top of
1536
- // SystemMeter: a CPU at 90% is the machine doing the work you asked for. An
1541
+ // MachinePanel: a CPU at 90% is the machine doing the work you asked for. An
1537
1542
  // indicator that alarms during the normal case teaches you to stop reading
1538
1543
  // it.
1539
1544
  return [
1540
- { label: "All cores", unit: "%", top: 100, warnAt: null, critAt: null, points: at("cpu:all"), restsAtZero: false },
1541
- { label: "Busiest core", unit: "%", top: 100, warnAt: null, critAt: null, points: at("cpu:busiest"), restsAtZero: false },
1545
+ { key: "cpu:all", label: "All cores", unit: "%", top: 100, warnAt: null, critAt: null, points: at("cpu:all"), restsAtZero: false },
1546
+ { key: "cpu:busiest", label: "Busiest core", unit: "%", top: 100, warnAt: null, critAt: null, points: at("cpu:busiest"), restsAtZero: false },
1542
1547
  ].filter(s => s.points.length);
1543
1548
  }
1544
1549
 
@@ -1548,8 +1553,8 @@ function seriesFor(group) {
1548
1553
  // One band, not two. A `critAt` of 100 draws a rule along the top of a
1549
1554
  // chart whose scale ends at 100 — it is the ceiling, drawn again in red,
1550
1555
  // and it says nothing the edge did not.
1551
- { label: "Physical", unit: "%", top: 100, warnAt: 90, critAt: null, restsAtZero: false, points: at("mem:physical") },
1552
- { label: swapLabel, unit: "%", top: 100, warnAt: 90, critAt: null, restsAtZero: false, points: at("mem:swap") },
1556
+ { key: "mem:physical", label: "Physical", unit: "%", top: 100, warnAt: 90, critAt: null, restsAtZero: false, points: at("mem:physical") },
1557
+ { key: "mem:swap", label: swapLabel, unit: "%", top: 100, warnAt: 90, critAt: null, restsAtZero: false, points: at("mem:swap") },
1553
1558
  ].filter(s => s.points.length);
1554
1559
  }
1555
1560
 
@@ -1560,6 +1565,7 @@ function seriesFor(group) {
1560
1565
  const points = at("load:1m");
1561
1566
  if (!points.length) return [];
1562
1567
  return [{
1568
+ key: "load:1m",
1563
1569
  label: "Queued work",
1564
1570
  unit: "",
1565
1571
  top: loadTop(points, coreCount),