:root{--bg:#0b0e14;--panel:#131722;--panel-2:#1a1f2e;--border:#262b3a;--text:#d1d4dc;--muted:#787b86;--up:#26a69a;--down:#ef5350;--accent:#2962ff;--warn:#f59e0b;--danger:#d32f2f;color-scheme:dark}*{box-sizing:border-box}body,html{margin:0;padding:0;height:100%}body{background:var(--bg);color:var(--text);font:14px/1.5 ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{cursor:pointer}button,input,select{font:inherit}.shell{display:grid;grid-template-columns:200px 1fr;min-height:100vh}.sidebar{background:var(--panel);border-right:1px solid var(--border);padding:20px 12px;display:flex;flex-direction:column;gap:4px}.brand{font-weight:600;letter-spacing:.3px;padding:0 10px 18px;color:#fff}.brand small{display:block;color:var(--muted);font-weight:400;font-size:11px}.navlink{padding:9px 10px;border-radius:6px;color:var(--muted)}.navlink:hover{background:var(--panel-2);color:var(--text)}.navlink.active{background:var(--accent);color:#fff}.sidebar-foot{margin-top:auto;border-top:1px solid var(--border);padding-top:12px}.main{padding:22px 26px;overflow:auto}h1{font-size:19px;margin:0 0 4px;color:#fff;font-weight:600}.sub{color:var(--muted);margin:0 0 20px;font-size:13px}.grid{display:grid;grid-gap:14px;gap:14px}.cards{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.panel{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:16px}.panel h2{font-size:13px;margin:0 0 12px;color:var(--muted);font-weight:500;text-transform:uppercase;letter-spacing:.5px}.stat{font-size:22px;font-weight:600;color:#fff;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stat.up{color:var(--up)}.stat.down{color:var(--down)}.stat-pct{font-size:13px;font-weight:500;margin-left:8px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stat-pct.up{color:var(--up)}.stat-pct.down{color:var(--down)}.stat-label,.stat-pct.flat{color:var(--muted)}.stat-label{font-size:12px;margin-bottom:6px}table{width:100%;border-collapse:collapse;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}th{text-align:left;color:var(--muted);font-weight:500;font-size:12px;padding:8px 10px}td,th{border-bottom:1px solid var(--border)}td{padding:9px 10px}tr:last-child td{border-bottom:0}td.up{color:var(--up)}td.down{color:var(--down)}.btn{background:var(--panel-2);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:8px 14px}.btn:hover{border-color:var(--muted)}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.danger{background:var(--danger);border-color:var(--danger);color:#fff}.btn:disabled{opacity:.5;cursor:not-allowed}.field{display:block;margin-bottom:14px}.field span{display:block;color:var(--muted);font-size:12px;margin-bottom:6px}.field input,.field select{width:100%;padding:10px 12px;background:var(--bg);border:1px solid var(--border);border-radius:6px;color:var(--text)}.field input:focus,.field select:focus{outline:2px solid var(--accent);outline-offset:-1px}.badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;border:1px solid var(--border);color:var(--muted)}.badge.ok{color:var(--up);border-color:var(--up)}.badge.bad{color:var(--down);border-color:var(--down)}.badge.warn{color:var(--warn);border-color:var(--warn)}.alert{padding:11px 14px;border-radius:6px;margin-bottom:14px;font-size:13px}.alert.error{background:rgba(211,47,47,.12);border:1px solid var(--danger);color:#ffb4b4}.alert.warn{background:rgba(245,158,11,.1);border:1px solid var(--warn);color:#ffd591}.center{display:grid;place-items:center;min-height:100vh}.card-narrow{width:100%;max-width:380px}.muted{color:var(--muted)}.row{gap:10px}.row,.spread{display:flex;align-items:center}.spread{justify-content:space-between}tr[role=link]{cursor:pointer}tr[role=link]:hover{background:var(--panel-2)}.collapsible{background:var(--panel);border:1px solid var(--border);border-radius:10px;margin-bottom:14px;overflow:hidden}.collapsible-header{display:flex;align-items:flex-start;gap:14px;width:100%;padding:16px 18px;background:none;border:none;color:inherit;text-align:left;border-radius:10px}.collapsible-header:hover{background:var(--panel-2)}.collapsible-icon{width:38px;height:38px;border-radius:10px;flex-shrink:0;background:rgba(41,98,255,.14);color:var(--accent);display:flex;align-items:center;justify-content:center}.collapsible-heading{flex:1 1;min-width:0;padding-top:2px}.collapsible-title{font-size:15px;font-weight:600;color:#fff;display:flex;align-items:center;gap:9px;flex-wrap:wrap}.collapsible-badge{font-size:11px;font-weight:500;color:var(--muted);background:var(--bg);border:1px solid var(--border);border-radius:999px;padding:2px 9px}.collapsible-badge-right{margin-left:auto;font-size:14px;font-weight:600;color:var(--text);padding:3px 12px}.collapsible-desc{font-size:12.5px;line-height:1.5;color:var(--muted);margin:5px 0 0;max-width:760px}.collapsible-toggle{margin-left:auto;padding-top:3px;flex-shrink:0;white-space:nowrap;display:flex;align-items:center;gap:7px;font-size:12.5px;font-weight:500;color:var(--accent)}.collapsible-chevron{transition:transform .15s ease}.collapsible-chevron.open{transform:rotate(90deg)}.collapsible-body{padding:4px 18px 18px;border-top:1px solid var(--border)}.collapsible-body>:first-child{margin-top:14px}.instrument-card{border:1px solid var(--border);border-radius:8px;margin-top:10px;overflow:hidden}.instrument-card:first-child{margin-top:0}.instrument-card-header{display:flex;align-items:center;gap:16px;width:100%;padding:11px 14px;background:none;border:none;color:inherit;text-align:left}.instrument-card-header:hover{background:var(--panel-2)}.instrument-card-title{font-size:13.5px;font-weight:600;color:#fff;flex-shrink:0}.instrument-card-stats{display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-size:12.5px;flex:1 1}.instrument-card-toggle{margin-left:auto;flex-shrink:0;white-space:nowrap;display:flex;align-items:center;gap:6px;font-size:12px;font-weight:500;color:var(--accent)}.instrument-card-body{padding:0 14px 14px;border-top:1px solid var(--border)}.instrument-card-body>:first-child{margin-top:10px}