
html:not([data-lang="zh"]) .l-zh{display:none}
html[data-lang="zh"] .l-en{display:none}
html[data-lang="zh"] body{font-family:"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans CJK SC",Inter,sans-serif}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-ui);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}
a{color:var(--link);text-decoration:none}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px 72px}
.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}
.pg-brand{font-weight:800;font-size:23px;color:var(--text);letter-spacing:-.02em;margin:8px 0 2px;display:flex;align-items:center;gap:9px}
.pg-brand .gn{color:var(--info)}
.pg-lead{color:var(--muted);font-size:14px;margin:0 0 22px;max-width:60ch}
.asof-chip{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:600;color:var(--muted);
  border:1px solid var(--line);border-radius:999px;padding:4px 12px;margin-left:4px;vertical-align:middle}
.asof-chip::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--info)}

/* ── two-column tape ── */
.tape{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:6px}
@media(max-width:720px){.tape{grid-template-columns:1fr}}
.col{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:6px 6px 8px;overflow:hidden}
.col-h{display:flex;align-items:center;gap:9px;padding:14px 16px 10px}
.col-h .dot{width:9px;height:9px;border-radius:50%;flex:none}
.col.gain .col-h .dot{background:var(--up)}
.col.lose .col-h .dot{background:var(--down)}
.col-h .lbl{font-size:13px;font-weight:800;color:var(--text);letter-spacing:-.01em}
.col-h .cnt{margin-left:auto;font-size:11.5px;font-weight:600;color:var(--muted);font-family:var(--font-mono)}

/* mover row */
.mv{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;
  padding:10px 14px;border-radius:11px;transition:background .14s}
.mv:hover{background:color-mix(in srgb,var(--info) 7%,transparent)}
.mv .rank{font-family:var(--font-mono);font-size:11px;font-weight:600;color:var(--muted);width:16px;text-align:right}
.mv .mid{min-width:0}
.mv .tkr{font-family:var(--font-mono);font-weight:800;font-size:14.5px;color:var(--text);letter-spacing:.01em}
.mv .co{display:block;font-size:11.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px}
.mv .co .sect{opacity:.72}
.mv .chg{font-family:var(--font-mono);font-weight:800;font-size:15px;text-align:right;white-space:nowrap}
.chg.up{color:var(--up)}.chg.down{color:var(--down)}
/* subtle magnitude bar under the row — shared scale within a column */
.mv .bar{grid-column:2 / -1;height:3px;border-radius:2px;margin-top:2px;background:color-mix(in srgb,var(--muted) 18%,transparent);overflow:hidden}
.mv .bar i{display:block;height:100%;border-radius:2px}
.col.gain .bar i{background:color-mix(in srgb,var(--up) 65%,transparent)}
.col.lose .bar i{background:color-mix(in srgb,var(--down) 65%,transparent)}

/* ── theme ribbon (signature) ── */
.sec-h{display:flex;align-items:baseline;gap:10px;margin:34px 0 4px;flex-wrap:wrap}
.sec-h h2{margin:0;font-size:16px;font-weight:800;color:var(--text);letter-spacing:-.01em}
.sec-h .sub{font-size:12.5px;color:var(--muted)}
.ribbons{display:flex;flex-direction:column;gap:10px;margin-top:14px}
.rb{display:grid;grid-template-columns:180px 1fr;gap:16px;align-items:center;
  background:var(--panel);border:1px solid var(--line);border-radius:13px;padding:13px 16px;transition:border-color .16s}
.rb:hover{border-color:color-mix(in srgb,var(--info) 32%,var(--line))}
.rb-head{min-width:0}
.rb-name{font-size:14px;font-weight:700;color:var(--text);line-height:1.25;display:flex;align-items:center;gap:8px}
.rb-arrow{font-size:13px;font-weight:800}
.rb.up .rb-arrow{color:var(--up)}.rb.down .rb-arrow{color:var(--down)}
.rb-agg{font-family:var(--font-mono);font-size:12px;font-weight:700;margin-top:2px}
.rb.up .rb-agg{color:var(--up)}.rb.down .rb-agg{color:var(--down)}
.rb-members{display:flex;flex-wrap:wrap;gap:6px}
.mchip{display:inline-flex;align-items:baseline;gap:5px;font-family:var(--font-mono);font-size:12px;font-weight:700;
  color:var(--text);background:var(--panel2);border:1px solid var(--line);border-radius:8px;padding:4px 9px;transition:transform .14s,border-color .14s}
.mchip:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--info) 40%,var(--line))}
.mchip .mp{font-size:10.5px;font-weight:700}
.mchip .mp.up{color:var(--up)}.mchip .mp.down{color:var(--down)}
@media(max-width:560px){.rb{grid-template-columns:1fr;gap:9px}}

/* CTA */
.cta-band{margin-top:26px;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;
  background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);
  border:1px solid var(--glass-brd);border-radius:16px;padding:20px 24px;box-shadow:var(--glass-shadow)}
.cta-band .cb-tx{font-size:15px;font-weight:700;color:var(--text)}
.cta-band .cb-sub{font-size:12.5px;color:var(--muted);font-weight:400;margin-top:3px}
.btn{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:700;border-radius:10px;padding:9px 16px;
  background:var(--info);color:#fff;border:0;cursor:pointer;transition:filter .15s,transform .15s;white-space:nowrap}
.btn:hover{filter:brightness(1.08);transform:translateY(-1px)}
.btn.ghost{background:transparent;color:var(--info);border:1px solid color-mix(in srgb,var(--info) 40%,var(--line))}

/* empty / degraded */
.empty-col{padding:26px 16px 30px;text-align:center;color:var(--muted);font-size:13px;line-height:1.5}
.empty-col .ec-ic{font-size:22px;display:block;margin-bottom:6px;opacity:.7}
.empty-block{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:36px 24px;text-align:center;margin-top:14px}
.empty-block .ec-ic{font-size:28px;margin-bottom:10px;opacity:.7}
.empty-block h3{margin:0 0 6px;font-size:17px;font-weight:800;color:var(--text)}
.empty-block p{margin:0 auto;font-size:13.5px;color:var(--muted);max-width:42ch;line-height:1.55}

.site-foot{max-width:1080px;margin:34px auto 0;padding:18px 20px;border-top:1px solid var(--line);
  display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:12px}

a:focus-visible,.btn:focus-visible{outline:2px solid var(--info);outline-offset:2px;border-radius:8px}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
