:root{
  --bg:#05080b;--panel:#0b1117;--panel2:#0e151c;--line:#22303b;--text:#e6edf3;--muted:#8c98a4;
  --orange:#ff9f1a;--cyan:#5cc8ff;--green:#63d471;--red:#ff5c5c;--yellow:#ffd166;--shell:1260px
}
*{box-sizing:border-box}
html{background:var(--bg);color-scheme:dark}
body{margin:0;background:
  radial-gradient(circle at 70% -10%,rgba(92,200,255,.08),transparent 28%),
  linear-gradient(#05080b,#070b0f 340px,#05080b 900px);
  color:var(--text);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;
  -webkit-font-smoothing:antialiased
}
a{color:inherit;text-decoration:none}
.shell{width:min(var(--shell),calc(100% - 28px));margin:0 auto}
.top{border-bottom:1px solid var(--line);background:#070b0f;position:sticky;top:0;z-index:30}
.top .shell{height:58px;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:22px}
.logo{font-weight:900;letter-spacing:.04em;color:var(--orange);font-size:15px}
.status{font-size:11px;color:var(--muted);letter-spacing:.08em}
.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--green);margin-right:7px;box-shadow:0 0 10px rgba(99,212,113,.7)}
.clock{font-size:12px;color:var(--cyan);min-width:84px;text-align:right}
.nav{border-bottom:1px solid var(--line);background:#0a0f14;position:sticky;top:58px;z-index:25}
.nav .shell{display:flex;gap:0;overflow:auto;scrollbar-width:none}
.nav .shell::-webkit-scrollbar{display:none}
.nav a{padding:13px 15px;font-size:11px;color:var(--muted);border-right:1px solid #151f27;white-space:nowrap}
.nav a:hover,.nav a.active{background:#111922;color:#fff}
.nav a.active{color:var(--orange);box-shadow:inset 0 -2px 0 var(--orange)}
.ticker{overflow:hidden;border-bottom:1px solid var(--line);background:#030506}
.ticker-track{display:flex;width:max-content;animation:ticker 30s linear infinite}
.ticker-track span{padding:10px 22px;border-right:1px solid #18212a;font-size:11px;color:var(--muted);white-space:nowrap}
.ticker-track b{color:#fff;margin:0 6px}.ticker-track i{font-style:normal}
@keyframes ticker{to{transform:translateX(-50%)}}
.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;padding:42px 0 26px}
.page-head h1{margin:0;color:#fff;font-size:clamp(28px,4vw,48px);letter-spacing:-.045em}
.page-head p{max-width:820px;color:var(--muted);line-height:1.65;font-family:Inter,system-ui,sans-serif;font-size:14px;margin:12px 0 0}
.stamp{text-align:right;color:var(--orange);font-size:11px;line-height:1.6;white-space:nowrap}
.grid{display:grid;gap:12px;margin:12px 0}
.g2{grid-template-columns:repeat(2,minmax(0,1fr))}
.g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.g4{grid-template-columns:repeat(4,minmax(0,1fr))}
.panel,.kpi{border:1px solid var(--line);background:linear-gradient(180deg,rgba(15,23,31,.95),rgba(8,13,18,.95));min-width:0}
.panel-title{height:39px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 14px;border-bottom:1px solid var(--line);font-size:11px;color:var(--orange);letter-spacing:.06em;font-weight:900}
.panel-title span{color:var(--muted);font-weight:500;letter-spacing:0}
.panel-body{padding:14px}
.kpi{padding:14px 15px;min-height:112px}
.kpi small{display:block;color:var(--muted);font-size:10px;letter-spacing:.06em;margin-bottom:9px}
.kpi strong{display:block;font-size:26px;letter-spacing:-.035em;color:#fff;margin-bottom:13px}
.moves{display:flex;gap:12px;flex-wrap:wrap;font-size:10px;color:var(--muted)}
.moves b{font-weight:800}
.up{color:var(--green)!important}.down{color:var(--red)!important}.flat{color:var(--yellow)!important}
.chart{display:block;width:100%;height:230px}
.chart.tall{height:300px}
.legend{display:flex;gap:16px;flex-wrap:wrap;padding-top:10px;color:var(--muted);font-size:10px}
.legend span{display:flex;align-items:center;gap:6px}
.legend i{width:18px;height:2px;display:inline-block}
.read,.source{font-family:Inter,system-ui,sans-serif;color:var(--muted);font-size:13px;line-height:1.6}
.read{margin-top:12px}.read b{color:#dce6ee}
.big-number{font-size:48px;line-height:1;font-weight:900;color:var(--orange);letter-spacing:-.06em}
.split{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.tag{display:inline-block;border:1px solid var(--line);padding:4px 7px;color:var(--muted);font-size:9px;letter-spacing:.07em}
.tag.hot{border-color:rgba(255,159,26,.55);color:var(--orange)}
.callout{border-left:3px solid var(--orange);background:#0a1016;padding:14px 16px;color:#bdc8d1;line-height:1.65;font-family:Inter,system-ui,sans-serif;font-size:13px}
.callout b{color:#fff}
.news{display:grid;grid-template-columns:92px 1fr;gap:12px;padding:13px 14px;border-bottom:1px solid #18232c}
.news:last-child{border-bottom:0}
.news time{color:var(--orange);font-size:10px}.news b{font-size:12px}.news p{margin:5px 0 0;color:var(--muted);font-family:Inter,system-ui,sans-serif;font-size:12px;line-height:1.5}
.table{width:100%;border-collapse:collapse;font-size:11px}
.table th,.table td{padding:10px 9px;border-bottom:1px solid #19242d;text-align:right}
.table th{color:var(--muted);font-weight:600}.table th:first-child,.table td:first-child{text-align:left}
.table td:first-child{color:#fff}
.source{padding:18px 0 48px;font-size:11px}
.source a{color:var(--cyan)}
.barline{display:grid;grid-template-columns:160px 1fr 74px;gap:12px;align-items:center;margin:16px 0;font-size:11px}
.barline label{color:var(--muted)}.bartrack{height:8px;background:#18242d;overflow:hidden}.barfill{height:100%;background:var(--orange)}.barvalue{text-align:right;color:#fff}
canvas{touch-action:pan-y}
@media(max-width:900px){
  .g4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .g3{grid-template-columns:1fr}
  .g2{grid-template-columns:1fr}
  .top .shell{grid-template-columns:1fr auto}.status{display:none}
  .page-head{align-items:flex-start;flex-direction:column}.stamp{text-align:left}
}
@media(max-width:560px){
  .shell{width:min(var(--shell),calc(100% - 18px))}
  .g4{grid-template-columns:1fr 1fr}
  .kpi{padding:12px}.kpi strong{font-size:21px}
  .page-head{padding:28px 0 18px}.panel-body{padding:10px}
  .chart{height:210px}.chart.tall{height:250px}
  .barline{grid-template-columns:110px 1fr 58px}
}
@media(prefers-reduced-motion:reduce){.ticker-track{animation:none}}
