:root{--topnav-height: 57px;color-scheme:dark;--page: #0c0e12;--surface-1: #14171d;--surface-2: #1a1e26;--text-primary: #eceae4;--text-secondary: #a8a6a0;--text-muted: #6e6c68;--gridline: #21252c;--baseline: #32363f;--border: rgba(184, 150, 80, .16);--accent: #b8964f;--accent-strong: #d4b876;--series-1: #5b8dbe;--series-2: #9b7fbe;--series-3: #4fb8a8;--series-4: #c9895a;--status-good: #4cb86e;--status-warning: #e0a83c;--status-serious: #d97a4c;--status-critical: #dc5a5a;--success-text: #4cb86e}*{box-sizing:border-box}body{margin:0;font-family:Segoe UI,system-ui,-apple-system,sans-serif;background:var(--page);color:var(--text-primary)}#root{min-height:100vh;display:flex;flex-direction:column}a{color:var(--accent-strong);text-decoration:none}a:hover{text-decoration:underline}.topnav{display:flex;align-items:center;gap:24px;padding:14px 24px;background:var(--surface-1);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:100}.topnav .brand{font-weight:700;font-size:16px;color:var(--accent);letter-spacing:.02em}.topnav a{color:var(--text-secondary);font-size:14px}.topnav a.active{color:var(--accent);font-weight:600}.page{max-width:1900px;width:100%;margin:0 auto;padding:24px;flex:1}.card{background:var(--surface-1);border:1px solid var(--border);border-radius:10px;padding:20px;margin-bottom:20px}.card h2{margin-top:0;font-size:16px;color:var(--text-primary)}.card h3{font-size:14px;color:var(--text-secondary)}table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--gridline);white-space:nowrap}th{color:var(--text-muted);font-weight:600;cursor:pointer;-webkit-user-select:none;user-select:none}tbody tr:hover{background:color-mix(in srgb,var(--accent) 6%,transparent)}.table-scroll{overflow-x:auto}.muted{color:var(--text-muted)}.secondary{color:var(--text-secondary)}.pill{display:inline-block;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:600}.pill.buy{background:color-mix(in srgb,var(--status-good) 18%,transparent);color:var(--status-good)}.pill.sell{background:color-mix(in srgb,var(--status-critical) 18%,transparent);color:var(--status-critical)}.pill.accent{background:color-mix(in srgb,var(--accent) 20%,transparent);color:var(--accent-strong)}.pill.warning{background:color-mix(in srgb,var(--status-warning) 20%,transparent);color:var(--status-warning)}.btn{display:inline-block;padding:8px 14px;border-radius:6px;border:1px solid var(--border);background:var(--accent);color:#1a1408;font-size:13px;font-weight:600;cursor:pointer}.btn:hover{opacity:.9}.btn.secondary{background:transparent;color:var(--text-primary);border-color:var(--border)}.btn.danger{background:var(--status-critical);color:#fff}.btn:disabled{opacity:.5;cursor:not-allowed}.field{display:flex;flex-direction:column;gap:4px;margin-bottom:14px}.field label{font-size:13px;font-weight:600;color:var(--text-secondary)}.field input,.field select,.field textarea{padding:8px 10px;border-radius:6px;border:1px solid var(--border);background:var(--page);color:var(--text-primary);font-size:14px}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:0 20px}.stat{display:flex;flex-direction:column;gap:2px}.stat .value{font-size:22px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text-primary)}.stat .label{font-size:12px;color:var(--text-muted)}.stat-row{display:flex;gap:32px;flex-wrap:wrap}.positive{color:var(--status-good)}.negative{color:var(--status-critical)}.empty-state{text-align:center;padding:48px 24px;color:var(--text-muted)}.tag-list{display:flex;gap:8px;flex-wrap:wrap}.magic-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.magic-tab{padding:6px 14px;border-radius:999px;border:1px solid var(--border);background:var(--surface-2);color:var(--text-secondary);font-size:13px;font-weight:600;cursor:pointer}.magic-tab.active{background:color-mix(in srgb,var(--accent) 22%,transparent);color:var(--accent-strong);border-color:var(--accent)}.error-banner{background:color-mix(in srgb,var(--status-critical) 12%,transparent);color:var(--status-critical);border:1px solid color-mix(in srgb,var(--status-critical) 30%,transparent);padding:10px 14px;border-radius:6px;margin-bottom:16px;font-size:13px}.warning-banner{background:color-mix(in srgb,var(--status-warning) 14%,transparent);color:var(--status-warning);border:1px solid color-mix(in srgb,var(--status-warning) 40%,transparent);padding:10px 14px;border-radius:6px;margin-bottom:16px;font-size:13px}
