:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#131722;--bg-soft:#1c2030;--bg-card:#1a1e2c;--border:#ffffff14;--text:#ffffffeb;--text-dim:#ffffff8c;--green:#26a69a;--red:#ef5350;--amber:#ffb74d;--blue:#5193cf;--font:-apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;font-size:13px}.app{max-width:1500px;margin:0 auto;padding:16px 20px 40px}.header{justify-content:space-between;align-items:baseline;margin-bottom:8px;display:flex}.header h1{letter-spacing:-.3px;margin:0;font-size:22px;font-weight:600}.header .meta{color:var(--text-dim);font-size:11px}.metrics{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:16px 0;display:grid}.asset-tabs{border-bottom:1px solid var(--border);gap:4px;margin:8px 0 0;display:flex}.asset-tab{color:var(--text-dim);font:inherit;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:8px 14px;font-size:13px;transition:color .15s,border-color .15s}.asset-tab:hover{color:var(--text)}.asset-tab.active{color:var(--text);border-bottom-color:var(--amber)}.metric{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;padding:12px 14px}.metric .label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px;font-size:11px}.metric .value{margin-top:4px;font-size:22px;font-weight:600}.metric .delta{color:var(--text-dim);margin-top:2px;font-size:11px}.status-strip{flex-wrap:wrap;gap:8px;margin:12px 0 16px;display:flex}.chip{border:1px solid var(--border);background:var(--bg-card);border-radius:16px;padding:6px 12px;font-size:11px;font-weight:500}.chip.ok{color:var(--green);border-color:#26a69a4d}.chip.warn{color:var(--amber);border-color:#ffb74d4d}.chip.err{color:var(--red);border-color:#ef53504d}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;margin:12px 0;padding:14px 16px}.card .card-title{color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;font-size:12px;font-weight:600}.chart-wrap{background:var(--bg);border:1px solid var(--border);border-radius:8px;margin:16px 0;padding:4px;position:relative}.chart-wrap .chart-caption{color:var(--text-dim);padding:6px 12px 8px;font-size:11px;line-height:1.5}.two-col{grid-template-columns:1fr 1fr;gap:12px;display:grid}table.dt{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}table.dt th,table.dt td{text-align:left;border-bottom:1px solid var(--border);padding:7px 10px;font-size:12px}table.dt th{color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px;font-size:10px;font-weight:500}table.dt th.num,table.dt td.num{text-align:right;font-variant-numeric:tabular-nums}table.dt tr:last-child td{border-bottom:0}.dir-up{color:var(--green);font-weight:600}.dir-down{color:var(--red);font-weight:600}.dir-none{color:var(--text-dim)}.banner{border-radius:8px;margin:12px 0;padding:14px 18px;font-size:14px}.banner.info{color:var(--blue);background:#5193cf14;border:1px solid #5193cf4d}.banner.success{color:var(--green);background:#26a69a14;border:1px solid #26a69a4d}.banner strong{color:var(--text)}button.btn{background:var(--bg-soft);color:var(--text);border:1px solid var(--border);cursor:pointer;border-radius:6px;padding:7px 14px;font-family:inherit;font-size:12px}button.btn:hover{background:#ffffff0d}button.btn:disabled{opacity:.5;cursor:not-allowed}.header-right{align-items:center;gap:10px;display:flex}.live-badge{color:var(--text-dim);background:var(--bg-card);border:1px solid var(--border);border-radius:14px;align-items:center;padding:4px 10px;font-size:11px;display:inline-flex}.live-dot{background:var(--green);border-radius:50%;width:8px;height:8px;margin-right:8px;animation:2s ease-in-out infinite pulse;display:inline-block}.live-dot.fetching{background:var(--amber);animation:.8s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:.45;transform:scale(.85);box-shadow:0 0 #26a69a00}50%{opacity:1;transform:scale(1.15);box-shadow:0 0 8px #26a69a8c}}.section-divider{color:var(--text-dim);text-transform:uppercase;letter-spacing:1.5px;align-items:center;gap:12px;margin:24px 0 6px;font-size:10px;display:flex}.section-divider:before,.section-divider:after{content:"";background:var(--border);flex:1;height:1px}.rec-card{border:1px solid #ffffff1f}.rec-card .card-title{color:var(--text);text-transform:none;letter-spacing:0;font-size:13px}input.input{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:6px;width:100%;padding:8px 12px;font-family:inherit;font-size:13px}.login-page{justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.login-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;width:100%;max-width:380px;padding:32px}.login-card h1{margin:0 0 8px;font-size:24px;font-weight:600}.login-card .sub{color:var(--text-dim);margin-bottom:24px;font-size:12px}.login-card label{color:var(--text-dim);text-transform:uppercase;margin:12px 0 4px;font-size:11px;display:block}.login-card button.btn{background:var(--blue);color:#fff;border:none;width:100%;margin-top:20px;padding:10px;font-weight:600}.login-card .err{color:var(--red);margin-top:12px;font-size:12px}@media (width<=760px){.metrics{grid-template-columns:repeat(2,1fr)}.two-col{grid-template-columns:1fr}.header{flex-direction:column;gap:4px}}
