:root{--bg:#0e1013;--surface:#161a20;--surface-2:#1d222a;--surface-3:#232935;--text:#e7eaf0;--text-2:#98a2b3;--text-3:#6f7987;--border:#272d38;--border-2:#333b48;--accent:#4353ff;--accent-soft:rgba(67,83,255,.14);--accent-text:#9aa6ff;--success:#3fb27f;--warning:#e0a132;--danger:#e35d5d;--info:#5aa9e6;--radius-xs:4px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--control-h:36px;--sidebar-w:248px;--agent-w:336px;--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,"PingFang SC",sans-serif;--font-mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:14px;line-height:1.6;-webkit-font-smoothing:antialiased}a{color:var(--accent-text);text-decoration:none}a:hover{text-decoration:underline}h1{font-size:24px;font-weight:700;margin:0 0 6px;letter-spacing:-.2px}h2{font-size:16px;margin:0 0 10px}h2,h3{font-weight:650}h3{font-size:13px;margin:0 0 8px;color:var(--text-2)}p{margin:6px 0}.shell{display:grid;grid-template-columns:var(--sidebar-w) minmax(0,1fr) var(--agent-w);min-height:100vh}.shell.no-agent{grid-template-columns:var(--sidebar-w) minmax(0,1fr)}.sidebar{border-right:1px solid var(--border);background:var(--surface);padding:16px 12px}.main{min-width:0;padding:20px 24px 48px}.agent{border-left:1px solid var(--border)}.agent,.topbar{background:var(--surface)}.topbar{display:flex;align-items:center;gap:12px;padding:10px 16px;border-bottom:1px solid var(--border)}.brand{font-weight:700;font-size:14px}.brand span{color:var(--accent-text)}.crumb{color:var(--text-3);font-size:12px}.nav{flex-direction:column;gap:2px;margin-top:6px}.nav,.nav a{display:flex}.nav a{align-items:center;gap:8px;padding:6px 10px;border-radius:var(--radius-sm);color:var(--text-2);font-size:13px}.nav a:hover{background:var(--surface-2);text-decoration:none}.nav a.active{background:var(--accent-soft);color:var(--text)}.nav .step{width:16px;color:var(--text-3);font-family:var(--font-mono);font-size:11px}.nav .done{color:var(--success)}.navLabel{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--text-3);margin:14px 0 4px 10px}.card{border:1px solid var(--border);background:var(--surface);border-radius:var(--radius-md);padding:14px 16px}.grid2{grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px}.grid2,.grid3{display:grid;gap:14px}.grid3{grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:14px}.grid4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:14px;gap:14px}.stack{display:flex;flex-direction:column;gap:14px}.row,.spread{display:flex;align-items:center;gap:8px}.spread{justify-content:space-between}.muted{color:var(--text-2)}.mono,.tiny{font-size:12px}.mono{font-family:var(--font-mono)}.section{margin-top:18px}.metric .l{font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3)}.metric .v{font-size:24px;font-weight:700;font-family:var(--font-mono)}.metric .s{font-size:11.5px;color:var(--text-3)}.btn{display:inline-flex;align-items:center;gap:6px;height:var(--control-h);padding:0 12px;border:1px solid var(--border-2);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text);font-size:13px;font-weight:550;cursor:pointer}.btn:hover{background:var(--surface-3)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:hover{background:#3747ea}.btn.ghost{background:transparent}.btn.sm{height:28px;padding:0 8px;font-size:12px}input,select,textarea{width:100%;height:var(--control-h);padding:0 10px;border:1px solid var(--border-2);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text);font-size:13px;font-family:inherit}textarea{height:auto;padding:8px 10px;min-height:72px}label{display:block;font-size:11.5px;font-weight:600;color:var(--text-2);margin-bottom:4px}.field{margin-bottom:10px}table{width:100%;border-collapse:collapse;font-size:12.5px}td,th{border-bottom:1px solid var(--border);padding:7px 10px;text-align:left;vertical-align:top}th{color:var(--text-3);font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:600}td.num,th.num{text-align:right;font-family:var(--font-mono)}tbody tr:hover{background:hsla(0,0%,100%,.02)}.pill{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:999px;border:1px solid var(--border-2);font-size:11px;font-weight:650;text-transform:uppercase;letter-spacing:.04em;background:var(--surface-2);color:var(--text-2)}.pill.ok{color:#6bd3a2;border-color:rgba(63,178,127,.4);background:rgba(63,178,127,.12)}.pill.warning{color:#f0bd6a;border-color:rgba(224,161,50,.4);background:rgba(224,161,50,.12)}.pill.danger{color:#ff8b8b;border-color:rgba(227,93,93,.4);background:rgba(227,93,93,.12)}.pill.accent{color:var(--accent-text);border-color:rgba(67,83,255,.45);background:var(--accent-soft)}.agentHeader{padding:12px 14px;border-bottom:1px solid var(--border)}.agentTitle{font-weight:650;font-size:13px}.trace{padding:8px 12px;display:flex;flex-direction:column;gap:8px;max-height:calc(100vh - 220px);overflow:auto}.traceRow{border:1px solid var(--border);border-radius:var(--radius-sm);padding:7px 9px;background:var(--surface-2)}.traceTop{display:flex;justify-content:space-between;gap:8px;font-size:12px}.traceMeta{margin-top:2px;word-break:break-all}.traceMeta,.traceTime{font-family:var(--font-mono);font-size:11px;color:var(--text-3)}.dot{color:var(--text-3)}.dot.ok{color:var(--success)}.dot.run{color:var(--warning)}.dot.fail{color:var(--danger)}.empty{border:1px dashed var(--border-2);border-radius:var(--radius-md);padding:28px;text-align:center;color:var(--text-3)}.banner{border:1px solid var(--border-2);border-left:3px solid var(--accent);background:var(--accent-soft);border-radius:var(--radius-sm);padding:10px 12px;font-size:12.5px}.banner.warn{border-left-color:var(--warning);background:rgba(224,161,50,.1)}.banner.danger{border-left-color:var(--danger);background:rgba(227,93,93,.1)}.swatch{width:22px;height:22px;border-radius:4px;border:1px solid var(--border-2);display:inline-block}.kv{display:grid;grid-template-columns:160px 1fr;grid-gap:4px 12px;gap:4px 12px;font-size:12.5px}.kv .k{color:var(--text-3)}@media (max-width:1280px){.shell{grid-template-columns:var(--sidebar-w) minmax(0,1fr)}.agent{display:none}}@media (max-width:900px){.shell{grid-template-columns:minmax(0,1fr)}.sidebar{display:none}.grid2,.grid3,.grid4{grid-template-columns:minmax(0,1fr)}}