:root{--cg-bg:#0a0b0e;--cg-surface:#12131a;--cg-surface-2:#1a1b24;--cg-surface-3:#22232e;--cg-border:#2a2b36;--cg-border-subtle:#1e1f28;--cg-text:#e8e9ed;--cg-text-dim:#8b8d98;--cg-text-muted:#5c5e6a;--cg-green:#00d672;--cg-green-dim:#00d67233;--cg-red:#ff3b5c;--cg-red-dim:#ff3b5c33;--cg-amber:#ffa726;--cg-amber-dim:#ffa72633;--cg-blue:#4e8cff;--cg-blue-dim:#4e8cff33;--cg-purple:#a78bfa;--cg-purple-dim:#a78bfa33;--font-mono:"JetBrains Mono","SF Mono","Fira Code",monospace;--font-sans:"DM Sans",-apple-system,BlinkMacSystemFont,sans-serif;--gap-xs:4px;--gap-sm:8px;--gap-md:12px;--gap-lg:16px;--gap-xl:24px;--radius-sm:4px;--radius-md:6px;--radius-lg:10px}*{margin:0;padding:0;box-sizing:border-box}body,html{background:var(--cg-bg);color:var(--cg-text);font-family:var(--font-sans);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--cg-border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--cg-text-muted)}.dashboard{display:flex;flex-direction:column;min-height:100vh}.dashboard-header{display:flex;align-items:center;justify-content:space-between;padding:var(--gap-md) var(--gap-xl);border-bottom:1px solid var(--cg-border-subtle);background:var(--cg-surface);position:-webkit-sticky;position:sticky;top:0;z-index:50}.dashboard-logo{font-family:var(--font-mono);font-size:15px;font-weight:700;letter-spacing:-.5px;color:var(--cg-text)}.dashboard-logo span{color:var(--cg-blue)}.header-controls{display:flex;align-items:center;gap:var(--gap-md)}.asset-selector{display:flex;align-items:center;gap:var(--gap-sm);padding:6px 12px;background:var(--cg-surface-2);border:1px solid var(--cg-border);border-radius:var(--radius-md);font-family:var(--font-mono);font-size:13px;color:var(--cg-text);cursor:pointer;transition:border-color .15s}.asset-selector:hover{border-color:var(--cg-blue)}.asset-selector select{background:transparent;border:none;color:var(--cg-text);font-family:var(--font-mono);font-size:13px;outline:none;cursor:pointer}.asset-selector select option,.interval-bar{background:var(--cg-surface-2)}.interval-bar{display:flex;gap:2px;border-radius:var(--radius-md);padding:2px;border:1px solid var(--cg-border-subtle)}.interval-btn{padding:4px 10px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--cg-text-dim);font-family:var(--font-mono);font-size:11px;cursor:pointer;transition:all .15s}.interval-btn:hover{color:var(--cg-text)}.interval-btn.active{background:var(--cg-blue);color:#fff}.tab-nav{display:flex;gap:1px;padding:0 var(--gap-xl);background:var(--cg-surface);border-bottom:1px solid var(--cg-border-subtle);overflow:visible;position:relative}.tab-nav::-webkit-scrollbar{display:none}.tab-btn{display:flex;align-items:center;gap:var(--gap-xs);padding:10px 14px;background:transparent;color:var(--cg-text-muted);font-family:var(--font-sans);font-size:12px;font-weight:500;cursor:pointer;white-space:nowrap;border:none;border-bottom:2px solid transparent;transition:all .15s}.tab-btn:hover{color:var(--cg-text-dim)}.tab-btn.active{color:var(--cg-text);border-bottom-color:var(--cg-blue)}.tab-icon{font-size:11px}.module-content{flex:1 1;padding:var(--gap-lg) var(--gap-xl)}.card{background:var(--cg-surface);border:1px solid var(--cg-border-subtle);border-radius:var(--radius-lg);padding:var(--gap-lg)}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--gap-md)}.card-title{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--cg-text-dim)}.card-badge{font-family:var(--font-mono);font-size:10px;padding:2px 6px;border-radius:var(--radius-sm);background:var(--cg-surface-3);color:var(--cg-text-muted)}.data-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:var(--gap-md);gap:var(--gap-md)}.data-grid-wide{grid-template-columns:repeat(auto-fill,minmax(380px,1fr))}.metric{display:flex;flex-direction:column;gap:2px}.metric-label{font-size:11px;color:var(--cg-text-muted);text-transform:uppercase;letter-spacing:.3px}.metric-value{font-family:var(--font-mono);font-size:20px;font-weight:600;color:var(--cg-text)}.metric-value.positive{color:var(--cg-green)}.metric-value.negative{color:var(--cg-red)}.metric-value.neutral{color:var(--cg-amber)}.metric-sub{font-size:11px;color:var(--cg-text-dim)}.data-table,.metric-sub{font-family:var(--font-mono)}.data-table{width:100%;border-collapse:collapse;font-size:12px}.data-table th{text-align:left;padding:8px 12px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--cg-text-muted);border-bottom:1px solid var(--cg-border)}.data-table td{padding:8px 12px;border-bottom:1px solid var(--cg-border-subtle);color:var(--cg-text)}.data-table tr:hover td{background:var(--cg-surface-2)}.module-loading{display:flex;align-items:center;justify-content:center;padding:48px;color:var(--cg-text-muted);font-family:var(--font-mono);font-size:12px}.module-loading:before{content:"";width:12px;height:12px;border:2px solid var(--cg-border);border-top-color:var(--cg-blue);border-radius:50%;margin-right:var(--gap-sm);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.module-error{padding:var(--gap-lg);background:var(--cg-red-dim);border:1px solid var(--cg-red);border-radius:var(--radius-md);color:var(--cg-red);font-family:var(--font-mono);font-size:12px}.status-dot{width:6px;height:6px;border-radius:50%;display:inline-block}.status-dot.live{background:var(--cg-green);box-shadow:0 0 6px var(--cg-green);animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.intel-panel{background:var(--cg-surface);border:1px solid var(--cg-border-subtle);border-radius:var(--radius-lg);padding:var(--gap-lg);margin-bottom:var(--gap-lg)}.intel-section{margin-bottom:var(--gap-md)}.intel-section-title{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--cg-blue);margin-bottom:var(--gap-sm)}.intel-text{font-size:13px;line-height:1.6;color:var(--cg-text)}@media (max-width:768px){.dashboard-header{padding:var(--gap-sm) var(--gap-md)}.tab-nav{padding:0 var(--gap-md)}.module-content{padding:var(--gap-md)}.data-grid{grid-template-columns:1fr}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}