:root{--bg:#f6f5fa;--bg-soft:#eeecf4;--surface:#fff;--surface-2:#faf9fd;--line:#e6e3ef;--line-strong:#d8d4e6;--txt:#1c1726;--txt-dim:#6b6480;--txt-faint:#9a93ac;--c-infer:#6d4aff;--c-infer-soft:#efeaff;--c-agent:#0fa9b4;--c-agent-soft:#e0f6f7;--c-data:#e8821e;--c-data-soft:#fdf0dd;--c-pink:#e0479a;--c-pink-soft:#fbe6f1;--ok:#16a866;--ok-soft:#e1f5ec;--warn:#d99411;--warn-soft:#fbf0d8;--bad:#e0443e;--shadow-sm:0 1px 2px #1c17260d, 0 1px 3px #1c17260a;--shadow:0 4px 16px -4px #1c17261a, 0 2px 6px -2px #1c17260f;--shadow-lg:0 18px 40px -14px #1c172638;--sidebar-width:236px;--font-sans:"Sora", sans-serif;--font-mono:"IBM Plex Mono", monospace;--login-grad:linear-gradient(118deg, #1d2b7a 0%, #1aa7e0 30%, #d8418a 64%, #f9a526 100%);--login-font-display:"Space Grotesk", sans-serif;--login-font-body:"Manrope", sans-serif}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--txt);font-family:var(--font-sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{border:2px solid var(--bg);background:#dad6e6;border-radius:6px}::-webkit-scrollbar-thumb:hover{background:#c6c0d8}.mono{font-family:var(--font-mono)}.card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:14px}.pill{font-size:10px;font-weight:600;font-family:var(--font-mono);border-radius:20px;align-items:center;gap:5px;padding:3px 8px;display:inline-flex}.pill.ok{background:var(--ok-soft);color:var(--ok)}.pill.warn{background:var(--warn-soft);color:var(--warn)}.pill.idle{background:var(--bg-soft);color:var(--txt-faint)}.pill .ld{background:currentColor;border-radius:50%;width:6px;height:6px}.pill.ok .ld{animation:1.8s infinite pulse}.btn{font-family:var(--font-sans);cursor:pointer;border:1px solid var(--line);background:var(--surface);color:var(--txt);border-radius:9px;align-items:center;gap:7px;padding:9px 15px;font-size:12.5px;font-weight:600;transition:all .13s;display:inline-flex}.btn:hover{border-color:var(--line-strong);box-shadow:var(--shadow-sm)}.btn svg{width:14px;height:14px}.btn.primary{background:var(--c-infer);border-color:var(--c-infer);color:#fff}.btn.primary:hover{filter:brightness(1.08);box-shadow:0 6px 16px -6px #6d4aff99}.btn.ghost{background:0 0}.grid-2{grid-template-columns:1fr 1fr;gap:14px;display:grid}.grid-3{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.grid-4{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.sec-head{align-items:center;gap:11px;margin:28px 0 14px;display:flex}.sec-head:first-child{margin-top:2px}.sec-head h3{font-size:13.5px;font-weight:600}.sec-head .ln{background:var(--line);flex:1;height:1px}.sec-head .cnt{color:var(--txt-faint);font-size:10.5px;font-family:var(--font-mono)}.meter{background:var(--bg-soft);border-radius:4px;height:6px;overflow:hidden}.meter>div{background:linear-gradient(90deg, var(--c-agent), var(--c-infer));border-radius:4px;height:100%;transition:width .6s}.meter.dt>div{background:linear-gradient(90deg, var(--c-data), var(--c-pink))}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}@media (width<=1100px){.grid-3,.grid-4,.grid-2{grid-template-columns:1fr}}[data-theme=dark]{--bg:#070a11;--bg-soft:#0e1118;--surface:#111827;--surface-2:#0f1520;--line:#ffffff14;--line-strong:#ffffff24;--txt:#f0f0f5;--txt-dim:#8a96a3;--txt-faint:#ffffff47;--c-infer:#7c5cff;--c-infer-soft:#6d4aff26;--c-agent:#0fc4d0;--c-agent-soft:#0fa9b424;--c-data:#f09030;--c-data-soft:#e8821e24;--c-pink:#e85aac;--c-pink-soft:#e0479a24;--ok:#2c8;--ok-soft:#16a86626;--warn:#f0a820;--warn-soft:#d9941126;--bad:#f05050;--shadow-sm:0 1px 4px #00000080;--shadow:0 4px 16px #0000008c;--shadow-lg:0 18px 40px #000000a6}[data-theme=dark] body{background:var(--bg);color:var(--txt)}[data-theme=dark] ::-webkit-scrollbar-thumb{border-color:var(--bg);background:#ffffff1a}[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:#ffffff2e}[data-theme=dark] .card{background:var(--surface);border-color:var(--line)}[data-theme=dark] .meter{background:var(--bg-soft)}[data-theme=dark] .pill.idle{background:var(--bg-soft);color:var(--txt-faint)}[data-theme=dark] .btn{background:var(--surface);border-color:var(--line);color:var(--txt)}[data-theme=dark] .btn:hover{border-color:var(--line-strong)}[data-theme=dark] .btn.ghost{background:0 0}
