:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#121211;--surface-1:#1a1a19;--surface-2:#232321;--border:#2e2e2b;--text-primary:#f0efec;--text-secondary:#c3c2b7;--text-muted:#8d8c84;--series-1:#3987e5;--series-1-soft:#3987e52e;--good:#0ca30c;--good-text:#3fcf3f;--warning:#fab219;--serious:#ec835a;--critical:#d03b3b;--critical-text:#f07272;--grid:#2a2a28;--radius:12px;--font:"Inter", system-ui, -apple-system, sans-serif;--mono:"JetBrains Mono", ui-monospace, monospace}@media (prefers-color-scheme:light){:root:not([data-theme=dark]){--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f4f4f2;--surface-1:#fcfcfb;--surface-2:#f0efec;--border:#e2e1dc;--text-primary:#0b0b0b;--text-secondary:#52514e;--text-muted:#7a7974;--series-1:#2a78d6;--series-1-soft:#2a78d624;--good-text:#006300;--critical-text:#b42828;--grid:#ebeae6}}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text-primary);font-family:var(--font);margin:0;font-size:14px}button{font:inherit;cursor:pointer}.wrap{max-width:1400px;margin:0 auto;padding:20px 16px 48px}.header{flex-wrap:wrap;align-items:center;gap:12px 20px;margin-bottom:20px;display:flex}.brand{letter-spacing:-.01em;align-items:center;gap:10px;font-size:18px;font-weight:700;display:flex}.brand-logo{flex:none;width:28px;height:28px;display:block}.header .spacer{flex:1}.badge{border:1px solid var(--border);background:var(--surface-2);color:var(--text-secondary);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.badge.paper{color:var(--warning);border-color:var(--warning)}.badge.live{color:#fff;background:var(--critical);border-color:var(--critical)}.badge .dot{background:currentColor;border-radius:50%;width:7px;height:7px}.btn{border:1px solid var(--border);background:var(--surface-2);color:var(--text-primary);border-radius:8px;padding:8px 14px;font-weight:500}.btn:hover:not(:disabled){border-color:var(--text-muted)}.btn:disabled{opacity:.5;cursor:default}.btn.primary{background:var(--series-1);border-color:var(--series-1);color:#fff}.btn.small{padding:4px 10px;font-size:12px}.toggle{color:var(--text-secondary);align-items:center;gap:8px;font-weight:500;display:inline-flex}.switch{background:var(--surface-2);border:1px solid var(--border);border-radius:999px;width:38px;height:22px;padding:0;transition:background .15s;position:relative}.switch:after{content:"";background:var(--text-muted);border-radius:50%;width:16px;height:16px;transition:transform .15s,background .15s;position:absolute;top:2px;left:2px}.switch[aria-checked=true]{background:var(--good);border-color:var(--good)}.switch[aria-checked=true]:after{background:#fff;transform:translate(16px)}.alert{border:1px solid var(--critical);color:var(--critical-text);background:color-mix(in srgb, var(--critical) 10%, transparent);border-radius:10px;margin-bottom:16px;padding:10px 14px}.alert.info{border-color:var(--series-1);color:var(--text-secondary);background:var(--series-1-soft)}.kpis{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-bottom:16px;display:grid}.grid{grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:16px;margin-bottom:16px;display:grid}@media (width<=1000px){.grid{grid-template-columns:minmax(0,1fr)}}.card{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius);min-width:0;padding:16px}.card+.card{margin-top:0}.card-head{flex-wrap:wrap;align-items:baseline;gap:8px 10px;margin-bottom:12px;display:flex}.card-title{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;margin:0;font-size:13px;font-weight:600}.card-sub{color:var(--text-muted);font-size:12px}.card-head .spacer{flex:1}.stack{flex-direction:column;gap:16px;display:flex}.kpi-label{color:var(--text-muted);font-size:12px;font-weight:500}.kpi-value{letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin-top:6px;font-size:24px;font-weight:700}.kpi-sub{color:var(--text-secondary);font-variant-numeric:tabular-nums;margin-top:4px;font-size:12px}.up{color:var(--good-text)}.down{color:var(--critical-text)}.table-wrap{margin:0 -16px;padding:0 16px;overflow-x:auto}table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}th{text-align:left;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border);white-space:nowrap;padding:6px 8px;font-size:11px;font-weight:600}td{border-bottom:1px solid var(--grid);white-space:nowrap;padding:9px 8px}tr:last-child td{border-bottom:none}th.r,td.r{text-align:right}.sym{font-family:var(--mono);font-weight:500}.muted{color:var(--text-muted)}.empty{color:var(--text-muted);text-align:center;padding:24px 0}.range{width:160px;height:28px;position:relative}.range-track{background:linear-gradient(90deg, color-mix(in srgb, var(--critical) 55%, transparent), var(--surface-2) 45%, var(--surface-2) 55%, color-mix(in srgb, var(--good) 55%, transparent));border-radius:2px;height:4px;position:absolute;top:12px;left:0;right:0}.range-entry{background:var(--text-muted);width:2px;height:12px;position:absolute;top:8px}.range-now{background:var(--text-primary);border:2px solid var(--surface-1);border-radius:50%;width:14px;height:14px;margin-left:-7px;position:absolute;top:7px}.range-labels{color:var(--text-muted);font-size:10px;font-family:var(--mono);justify-content:space-between;display:flex;position:absolute;top:18px;left:0;right:0}.chip{background:var(--surface-2);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em;border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.chip.buy{color:var(--good-text);background:color-mix(in srgb, var(--good) 14%, transparent)}.chip.sell{color:var(--critical-text);background:color-mix(in srgb, var(--critical) 14%, transparent)}.feed{flex-direction:column;gap:10px;max-height:560px;display:flex;overflow-y:auto}.feed-item{background:var(--surface-2);border-radius:10px;padding:10px 12px}.feed-top{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.feed-top .spacer{flex:1}.feed-reason{color:var(--text-secondary);margin-top:6px;font-size:13px;line-height:1.45}.feed-note{color:var(--text-muted);font-size:12px;font-family:var(--mono);white-space:normal;margin-top:4px}.view{color:var(--text-secondary);font-size:13px;line-height:1.55}.chart{height:280px}.tooltip{background:var(--surface-2);border:1px solid var(--border);border-radius:8px;padding:8px 10px;font-size:12px;box-shadow:0 6px 20px #00000040}.tooltip .t{color:var(--text-muted);margin-bottom:2px}.tooltip .v{font-variant-numeric:tabular-nums;font-weight:600}.seg{border:1px solid var(--border);border-radius:8px;display:inline-flex;overflow:hidden}.seg button{color:var(--text-muted);white-space:nowrap;background:0 0;border:none;padding:4px 10px;font-size:12px}.seg button[aria-pressed=true]{background:var(--surface-2);color:var(--text-primary)}.footer{color:var(--text-muted);text-align:center;margin-top:24px;font-size:12px;line-height:1.6}.login-wrap{place-items:center;min-height:100vh;padding:16px;display:grid}.login{width:100%;max-width:360px}.login .brand{margin-bottom:20px}.login label{color:var(--text-muted);margin-bottom:6px;font-size:12px;font-weight:500;display:block}.login input{border:1px solid var(--border);background:var(--surface-2);width:100%;color:var(--text-primary);font:inherit;border-radius:8px;padding:10px 12px;font-size:15px}.login input:focus{outline:2px solid var(--series-1);outline-offset:1px}.login .btn{width:100%;margin-top:14px;padding:10px}.login .alert{margin:14px 0 0}.login .hint{color:var(--text-muted);margin-top:16px;font-size:12px;line-height:1.5}.stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:18px;display:grid}.stat{background:var(--surface-2);border-radius:10px;min-width:0;padding:12px}.stat-value{font-variant-numeric:tabular-nums;margin-top:4px;font-size:20px;font-weight:700}.analytics-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;margin-top:8px;display:grid}.analytics-grid+.analytics-grid{margin-top:20px}@media (width<=900px){.analytics-grid{grid-template-columns:minmax(0,1fr)}}.sub-title{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin:0 0 8px;font-size:12px;font-weight:600}.cost-table td{white-space:normal;vertical-align:top}.cost-table tr.total td{border-top:1px solid var(--border);font-weight:700}.cost-table tr.info td{color:var(--text-muted)}.chart.small{height:220px}.stop-badge{color:var(--text-secondary);white-space:nowrap;margin-top:2px;font-size:11px}.stop-badge.warn{color:var(--warning)}
