:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0a0e12;--bg-top:#131a20f5;--surface:#10171d;--surface-strong:#151d25;--surface-soft:#0c1116;--border:#24303a;--border-strong:#2c3844;--text:#e5edf4;--text-muted:#87939f;--text-soft:#cbd6df;--accent:#4fd1a5;--accent-soft:#14221f;--danger:#ff8b8b;--danger-soft:#251719;--alert-bg:#241216;--alert-border:#6e3940;--alert-text:#ffd5d8;--chart-grid:#26313b;background:var(--bg);color:var(--text);font-synthesis:none;text-rendering:optimizelegibility;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f4f7f9;--bg-top:#f0f5f8fa;--surface:#fff;--surface-strong:#eef4f7;--surface-soft:#f7fafb;--border:#d8e2e8;--border-strong:#bac9d3;--text:#17212b;--text-muted:#687786;--text-soft:#2e3b48;--accent:#087f6f;--accent-soft:#e0f3ef;--danger:#c43d53;--danger-soft:#fae5e9;--alert-bg:#fff2f3;--alert-border:#f0b7c0;--alert-text:#842434;--chart-grid:#dbe4ea}*{box-sizing:border-box}body{background:linear-gradient(180deg, var(--bg-top), var(--bg) 42%), var(--bg);min-width:320px;min-height:100vh;margin:0}button{font:inherit}.shell{width:min(1480px,100% - 32px);margin:0 auto;padding:24px 0 32px}.topbar,.control-strip,.page-nav,.metrics,.grid{width:100%}.topbar{justify-content:space-between;align-items:center;gap:18px;margin-bottom:18px;display:flex}.eyebrow{color:#8d99a5;align-items:center;gap:8px;font-size:13px;line-height:1.2;display:flex}h1,h2{letter-spacing:0;margin:0}h1{margin-top:6px;font-size:28px;line-height:1.12}.active-bot{color:var(--text-muted);margin:6px 0 0;font-size:14px}h2{color:#c9d4df;font-size:14px;font-weight:650}.top-actions{align-items:center;gap:10px;display:flex}.heartbeat{border:1px solid var(--border);min-height:36px;color:var(--text-muted);background:var(--surface);border-radius:6px;align-items:center;gap:8px;padding:0 12px;font-size:13px;display:inline-flex}.heartbeat span{background:var(--accent);width:8px;height:8px;box-shadow:0 0 16px color-mix(in srgb, var(--accent), transparent 35%);border-radius:99px}.language-link{border:1px solid var(--border);min-width:38px;height:36px;color:var(--text);background:var(--surface);border-radius:6px;justify-content:center;align-items:center;padding:0 10px;font-size:12px;font-weight:700;text-decoration:none;display:inline-flex}.language-link:hover{border-color:var(--accent)}.theme-switcher{border:1px solid var(--border);background:var(--surface);min-height:36px;color:var(--text-muted);border-radius:6px;align-items:center;gap:4px;padding:3px 4px 3px 9px;display:inline-flex}.theme-switcher button{height:28px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:5px;padding:0 9px;font-size:12px}.theme-switcher button.active{color:var(--text);background:var(--surface-strong)}.icon-button,.control-buttons button{border:1px solid var(--border-strong);height:36px;color:var(--text);background:var(--surface-strong);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;gap:8px;display:inline-flex}.icon-button{width:40px}.control-buttons button{padding:0 14px}.icon-button:disabled,.control-buttons button:disabled{cursor:not-allowed;opacity:.55}.control-buttons button:hover:not(:disabled),.icon-button:hover:not(:disabled){border-color:var(--accent)}.control-buttons .danger:hover:not(:disabled){border-color:var(--danger)}.spin{animation:1s linear infinite spin}.alert{border:1px solid var(--alert-border);color:var(--alert-text);background:var(--alert-bg);border-radius:6px;margin-bottom:16px;padding:12px 14px;font-size:13px}.page-nav{gap:8px;margin-bottom:16px;padding-bottom:2px;display:flex;overflow-x:auto}.page-nav button{border:1px solid var(--border);min-width:118px;height:40px;color:var(--text-muted);background:var(--surface);cursor:pointer;white-space:nowrap;border-radius:6px;justify-content:center;align-items:center;gap:8px;padding:0 14px;display:inline-flex}.page-nav button.active{color:var(--text);border-color:color-mix(in srgb, var(--accent), var(--border) 35%);background:var(--surface-strong)}.control-strip{border:1px solid var(--border);background:var(--surface);border-radius:8px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;padding:14px 16px;display:flex}.strip-label,.metric span,.metric small,th,.logs span{color:var(--text-muted)}.control-strip strong{margin-top:2px;font-size:16px;display:block}.control-buttons{flex-wrap:wrap;gap:8px;display:flex}.metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px;display:grid}.fleet-metrics{margin-top:0}.bot-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.bot-card{border:1px solid var(--border);min-height:210px;color:var(--text);background:var(--surface);cursor:pointer;text-align:left;border-radius:8px;gap:12px;padding:18px;display:grid;position:relative}.bot-card:hover{border-color:color-mix(in srgb, var(--accent), var(--border) 25%);background:var(--surface-strong)}.bot-card.error{border-color:color-mix(in srgb, var(--danger), var(--border) 35%)}.bot-card strong{padding-right:74px;font-size:19px;line-height:1.2;display:block}.bot-card small{color:var(--text-muted);word-break:break-all;font-size:12px}.bot-card div{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding-top:10px;display:flex}.bot-card span{color:var(--text-muted);font-size:13px}.bot-card b{font-size:17px}.bot-health{min-width:58px;height:26px;color:var(--accent);background:var(--accent-soft);text-transform:uppercase;border-radius:999px;justify-content:center;align-items:center;padding:0 9px;display:inline-flex;position:absolute;top:16px;right:16px}.bot-card.error .bot-health{color:var(--danger);background:var(--danger-soft)}.metric,.panel{border:1px solid var(--border);background:var(--surface);border-radius:8px}.metric{gap:12px;min-height:112px;padding:16px;display:flex}.metric-icon{width:38px;height:38px;color:var(--accent);background:var(--accent-soft);border-radius:6px;place-items:center;display:grid}.metric.negative .metric-icon{color:var(--danger);background:var(--danger-soft)}.metric svg{width:20px;height:20px}.metric span,.metric small{font-size:13px;display:block}.metric strong{margin:7px 0 4px;font-size:22px;line-height:1;display:block}.grid{grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);gap:16px;display:grid}.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.single-grid{grid-template-columns:1fr;gap:16px;display:grid}.panel{min-height:320px;padding:16px;overflow:hidden}.chart-panel{min-height:340px}.panel h2{margin-bottom:14px}.table-wrap{max-height:270px;overflow:auto}table{border-collapse:collapse;width:100%;min-width:560px}th,td{border-bottom:1px solid var(--border);text-align:left;white-space:nowrap;padding:10px 8px;font-size:13px}td{color:var(--text-soft)}.pos{color:var(--accent)}.neg{color:var(--danger)}.logs{gap:8px;max-height:270px;display:grid;overflow:auto}.logs div{background:var(--surface-soft);border-radius:6px;gap:4px;padding:8px;display:grid}.logs span{font-size:11px}.logs code{color:var(--text-soft);white-space:pre-wrap;font-family:JetBrains Mono,Cascadia Code,Consolas,monospace;font-size:12px}.risk-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.risk-grid div{border:1px solid var(--border);background:var(--surface-soft);border-radius:6px;min-height:84px;padding:13px}.risk-grid span{color:var(--text-muted);margin-bottom:8px;font-size:12px;display:block}.risk-grid strong{color:var(--text);font-size:19px;line-height:1.1;display:block}.empty{min-height:220px;color:var(--text-muted);border:1px dashed var(--border-strong);background:var(--surface-soft);border-radius:6px;place-items:center;font-size:14px;display:grid}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=1100px){.metrics,.grid,.portfolio-grid,.bot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.shell{width:min(100% - 20px,1480px);padding-top:14px}.topbar,.control-strip{flex-direction:column;align-items:stretch}.metrics,.grid,.portfolio-grid,.bot-grid{grid-template-columns:1fr}.control-buttons button{flex:110px}}
