:root{color-scheme:light dark;--bg: #f7f7f5;--panel: #ffffff;--text: #1d1d1f;--muted: #6b6b70;--line: #e2e2e0;--accent: #2f5bd3;--accent-text: #ffffff;--danger: #b3261e;--ok: #1e7a3c;--warn: #9a6700;--user: #e8eefc;--code: #f1f1ef;--radius: 8px;--mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace;font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-size:15px;line-height:1.45}@media(prefers-color-scheme:dark){:root{--bg: #161618;--panel: #1f1f22;--text: #ececef;--muted: #9a9aa2;--line: #333338;--accent: #7c9cff;--accent-text: #0f1020;--danger: #ff8a80;--ok: #7bd88f;--warn: #e3b341;--user: #24304d;--code: #2a2a2e}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}a{color:var(--accent)}code,pre,textarea.json-editor{font-family:var(--mono);font-size:.88em}pre{white-space:pre-wrap;word-break:break-word;margin:0}h1{font-size:1.3rem;margin:0}h2{font-size:1.1rem;margin:0}.muted{color:var(--muted)}.error-text{color:var(--danger)}.empty{color:var(--muted);padding:2rem 0;text-align:center}header.shell{display:flex;align-items:center;gap:1.5rem;padding:.6rem 1.25rem;background:var(--panel);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:1}header.shell .brand{font-weight:700;text-decoration:none;color:var(--text)}header.shell nav{display:flex;gap:.25rem;flex:1;flex-wrap:wrap}header.shell nav a{padding:.3rem .7rem;border-radius:var(--radius);text-decoration:none;color:var(--muted)}header.shell nav a[aria-current=page]{background:var(--code);color:var(--text)}header.shell .who{display:flex;gap:.8rem;align-items:center;color:var(--muted)}main#app{padding:1rem 1.25rem;max-width:1200px;margin:0 auto}button,input,textarea,select{font:inherit;color:inherit;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:.35rem .7rem}button{cursor:pointer}button:disabled{opacity:.55;cursor:default}button.primary{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}button.danger{color:var(--danger)}button.link{border:none;background:none;color:var(--accent);padding:.2rem}textarea{width:100%;min-height:4.5rem;resize:vertical}form.inline{display:flex;gap:.4rem}.toggle{display:inline-flex;gap:.35rem;align-items:center;color:var(--muted)}.toggle input{margin:0}.page-head{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.page-head h1{margin-right:auto}.banner{padding:.5rem .8rem;border-radius:var(--radius);margin:.5rem 0;display:flex;gap:.5rem;align-items:center}.banner.error{background:color-mix(in srgb,var(--danger) 12%,transparent);color:var(--danger)}.banner span{flex:1}.badge{display:inline-block;padding:.05rem .5rem;border-radius:999px;font-size:.8em;background:var(--code);color:var(--muted);white-space:nowrap}.badge.ok,.badge.open,.badge.ready,.badge.running,.badge.completed,.badge.handled{color:var(--ok)}.badge.error,.badge.failed,.badge.rejected,.badge.timed_out,.badge.exited{color:var(--danger)}.badge.pending,.badge.processing,.badge.connecting,.badge.reconnecting,.badge.stop{color:var(--warn)}pre.json{background:var(--code);padding:.5rem .7rem;border-radius:var(--radius);max-height:22rem;overflow:auto}details>summary{cursor:pointer;color:var(--muted)}ul.cards{list-style:none;margin:0;padding:0;display:grid;gap:.75rem}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:.8rem 1rem;display:grid;gap:.5rem}.card header{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap}.card .capability,.card .tool{font-weight:600}dl.meta{display:grid;grid-template-columns:max-content 1fr;gap:.1rem .8rem;margin:0;font-size:.92em}dl.meta dt{color:var(--muted)}dl.meta dd{margin:0}.task-actions,.approval-actions{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.task-actions .reject{display:inline-flex;gap:.4rem}.approval-actions input{flex:1;min-width:10rem}.submit{display:grid;gap:.4rem}textarea.json-editor{min-height:7rem}.chat{display:grid;grid-template-columns:260px 1fr;gap:1rem;align-items:start}.sessions{display:grid;gap:.75rem;position:sticky;top:4rem}.new-session{display:grid;gap:.4rem}.new-session label{color:var(--muted);font-size:.9em}ul.session-list{list-style:none;margin:0;padding:0;display:grid;gap:.3rem}button.session{width:100%;text-align:left;display:grid;background:transparent}button.session.selected{background:var(--panel);border-color:var(--accent)}button.session small{color:var(--muted);overflow:hidden;text-overflow:ellipsis}.conversation{min-width:0}.session-view{display:grid;gap:.75rem}.session-head{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;align-items:center}.session-status{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}ol.timeline{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}.bubble{padding:.6rem .9rem;border-radius:var(--radius);background:var(--panel);border:1px solid var(--line)}.bubble p{margin:.2rem 0;white-space:pre-wrap;word-break:break-word}.bubble.user{background:var(--user);border-color:transparent;margin-left:15%}.bubble.user.pending{opacity:.7}.bubble.assistant{margin-right:10%}.thinking p{color:var(--muted);font-style:italic}.tool-use{font-size:.9em}.tool-use .args{color:var(--muted);word-break:break-all}.turn-foot{font-size:.8em;margin-top:.3rem}.cursor{animation:blink 1s steps(1) infinite;color:var(--muted)}@keyframes blink{50%{opacity:0}}.tool-call{border-left:3px solid var(--accent);padding:.4rem .8rem;background:var(--panel);border-radius:0 var(--radius) var(--radius) 0;display:grid;gap:.35rem}.tool-call header{display:flex;gap:.5rem;align-items:center}.approval{padding:.4rem .6rem;border-radius:var(--radius);background:color-mix(in srgb,var(--warn) 10%,transparent)}.approval p{margin:0}.egress-url{margin:.25rem 0;overflow-wrap:anywhere}pre.plain{background:var(--panel);padding:.5rem .8rem;border-radius:var(--radius)}.exit{color:var(--muted);text-align:center}.composer{display:grid;grid-template-columns:1fr auto;gap:.5rem;align-items:end;position:sticky;bottom:0;background:var(--bg);padding:.5rem 0}table.grid{width:100%;border-collapse:collapse;background:var(--panel);border-radius:var(--radius);overflow:hidden}table.grid th,table.grid td{padding:.45rem .7rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}table.grid th{color:var(--muted);font-weight:500;font-size:.9em}.row-actions{display:flex;gap:.4rem;justify-content:flex-end}.path-bar input{min-width:22rem}.split{display:grid;grid-template-columns:minmax(220px,320px) 1fr;gap:1rem;align-items:start}nav.tree{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:.5rem;overflow:auto;max-height:75vh}ul.tree-list{list-style:none;margin:0;padding-left:.9rem}nav.tree>ul.tree-list{padding-left:0}ul.tree-list button{border:none;background:none;padding:.1rem .3rem;text-align:left}ul.tree-list button.selected{background:var(--code)}a.open-dir{text-decoration:none;font-size:.8em;margin-left:.2rem}.viewer{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:.75rem 1rem;min-height:12rem;display:grid;gap:.5rem;align-content:start}.viewer header{display:grid;gap:.15rem}pre.file-text{background:var(--code);padding:.6rem .8rem;border-radius:var(--radius);max-height:70vh;overflow:auto}body.login{display:grid;place-items:center;min-height:100vh}.login-card{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:1.75rem 2rem;width:min(360px,92vw)}.login-card h1{margin-bottom:1rem}.login-card form{display:grid;gap:.45rem}.login-card label{color:var(--muted);font-size:.9em;margin-top:.3rem}.login-card button{margin-top:.8rem;background:var(--accent);color:var(--accent-text);border-color:var(--accent)}.login-card a.button{display:block;text-align:center;text-decoration:none;margin-top:.4rem;padding:.45rem .7rem;border:1px solid var(--accent);border-radius:var(--radius);background:var(--accent);color:var(--accent-text)}.login-card .error{color:var(--danger)}@media(max-width:760px){.chat,.split{grid-template-columns:1fr}.sessions{position:static}.bubble.user,.bubble.assistant{margin:0}.path-bar input{min-width:0}}
