/* ============================================================
   BayesAI · 版式系统（最后加载的一层）

   量出来的问题：
   - 页面 60% 的文字用的是等宽体，落地页读起来像调试控制台；
   - 112 处文字 ≤ 11px，最小 8px；
   - 每一节的 h2 只有 14.5px，和正文一样大，全站没有层级；
   - 中文一直落在系统字体上（思源黑体从没加载成功过），还被套了负字距。

   这一层做的事：
   1. 字体分角色：正文/标题/标签一律 Bayes Sans（IBM Plex，Binance 字体的底子）
      + Bayes Hei（思源黑体）；等宽体只留给数字、倒计时、地址和代码。
   2. 字号阶梯 12 / 13 / 15 / 17 / 19 / h2 / h1，最小 12px。
   3. 中文规则：标题不用负字距，行高放宽，标签不再大写加宽。
   4. 版式：区块标题改成真正的标题；发丝线行改成卡片；组件统一圆角。
   ============================================================ */

/* ---------- 1. 字体角色与刻度 ---------- */
:root{
  --font-sans:"Bayes Sans","Bayes Hei","PingFang SC","Hiragino Sans GB","Microsoft YaHei UI","Microsoft YaHei",system-ui,-apple-system,"Segoe UI",sans-serif;
  --font-num:"Bayes Mono","Bayes Hei","PingFang SC","Microsoft YaHei",ui-monospace,SFMono-Regular,Consolas,monospace;
  /* 旧变量全站被引用上百次：--mono 这个名字留着，但它从此指向无衬线。
     要等宽的地方在下面点名使用 --num。 */
  --sans:var(--font-sans);
  --disp:var(--font-sans);
  --mono:var(--font-sans);
  --num:var(--font-num);

  --fs-cap:12px;
  --fs-ui:13px;
  --fs-body:15px;
  --fs-lead:17px;
  --fs-title:19px;
  --fs-h2:clamp(30px,3.3vw,46px);

  --r-lg:16px;
  --r:12px;
  --r-sm:8px;
  --card:linear-gradient(172deg,#151a21 0%,#0f1318 72%);
  --card-line:#232930;
}

body{
  font-family:var(--font-sans);
  font-size:var(--fs-body);
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
  font-kerning:normal;
}
html[data-lang="zh"] body{line-height:1.8}
html[data-lang="en"] body,html[data-lang="en"] .hero-sub,html[data-lang="en"] .btn,
html[data-lang="en"] .dl-row dt,html[data-lang="en"] .dl-body,html[data-lang="en"] .sec-head .sec-lead,
html[data-lang="en"] .sec-head .sec-sub,html[data-lang="en"] .note,html[data-lang="en"] .story li,
html[data-lang="en"] .srcs a{font-family:var(--font-sans)}

/* 只有这些地方配用等宽：数字要对齐，代码要像代码 */
.arena-countdown,.arena-probability,.arena-outcome strong,.arena-settled-round__outcome,
.arena-settled-table td:nth-child(n+2),.arena-axis__scale span,.arena-step-number,.arena-count,
.bar-num,.dl-fig,.num,.mono,.pval,.pticks,.stat-val,.kv-v,.tbl td.r,.tbl td.mono,
.arena-message__meta time,.arena-console__counter,.launchpad em,.srcs a span:first-child,
.sec-head>.kicker::before,pre.code,code,kbd,.arena-stage__value,
.tape-val:not(.pending):not(.tape-val--text){
  font-family:var(--font-num)!important;
  font-variant-numeric:tabular-nums;
}
.stat-val.pending,.kv-v.pending,.tape-val.pending{font-family:var(--font-sans)!important}

/* ---------- 2. 标签：一种样式，不再十几种 ---------- */
.kicker,.tape-lbl,.stat-lbl,.block-lbl,.block-tag,.kv-k,.plabel,.pticks-inline,.brand-tag,
.hero-principles,.visual-top,.visual-bottom,.rig-read-sub,.tbl th,.warn b,
.arena-panel__eyebrow,.arena-stage__label,.arena-stage__meta,.arena-round__meta,
.arena-chain-status,.arena-status,.arena-spectator,.arena-foot,.arena-settled-round__time,
.arena-settled-round__title>span,.arena-console__label{
  font-family:var(--font-sans)!important;
  font-size:var(--fs-cap)!important;
  font-weight:600!important;
  letter-spacing:.07em!important;
  line-height:1.5!important;
}
/* 中文标签：不大写、不加宽。加宽的汉字像一个个散开的格子 */
html[data-lang="zh"] :is(.kicker,.tape-lbl,.stat-lbl,.block-lbl,.block-tag,.kv-k,.plabel,
.pticks-inline,.hero-principles,.visual-top,.visual-bottom,.rig-read-sub,.tbl th,.warn b,
.arena-panel__eyebrow,.arena-stage__label,.arena-stage__meta,.arena-round__meta,.arena-chain-status,
.arena-status,.arena-spectator,.arena-foot,.arena-settled-round__time,.arena-settled-round__title>span,
.arena-console__label){
  letter-spacing:.04em!important;
  text-transform:none!important;
  font-weight:500!important;
}

/* ---------- 3. 顶部导航：交易所的导航是句子式的，不是全大写的终端菜单 ---------- */
.nav-bar>.wrap{min-height:60px}
.brand{font:700 18px/1 var(--font-sans);letter-spacing:-.02em}
.nav-links a{
  min-height:60px;padding:0 13px;
  font-family:var(--font-sans)!important;font-size:14px;font-weight:500;
  letter-spacing:0!important;text-transform:none!important;color:#b7bdc6;
}
.nav-links a:hover{color:#fff}
.lang{border-radius:var(--r-sm);overflow:hidden}
.lang button{font:600 13px/1 var(--font-sans);min-width:36px;min-height:30px}
:root{--chrome:112px}
.tape-val{font-size:15px}
.tape-cell{padding-block:10px}

/* ---------- 4. 首屏 ---------- */
.hero-title .l1{
  font-family:var(--font-sans)!important;font-weight:700!important;
  font-size:clamp(44px,6.2vw,82px)!important;
  line-height:1.02!important;letter-spacing:-.04em!important;
}
.hero-title .l2{
  font-family:var(--font-sans)!important;font-weight:500!important;
  font-size:clamp(18px,1.9vw,24px)!important;line-height:1.45!important;letter-spacing:-.01em!important;
}
html[data-lang="zh"] .hero-title .l1{
  font-size:clamp(40px,5.6vw,72px)!important;line-height:1.14!important;letter-spacing:.01em!important;
}
html[data-lang="zh"] .hero-title .l2{letter-spacing:.03em!important}
.hero-sub{font:600 16px/1.6 var(--font-sans)}
.hero-description{font-size:16px;line-height:1.75;color:#b7bdc6}
html[data-lang="zh"] .hero-description{line-height:1.95}
.hero-visual{border-radius:var(--r-lg)}
.stats--hero .stat-lbl{letter-spacing:.07em!important}

/* ---------- 5. 按钮：圆角、实心、触得到 ---------- */
.btn{
  border-radius:var(--r-sm)!important;
  min-height:46px!important;padding:12px 24px!important;
  font-family:var(--font-sans)!important;font-size:15px!important;font-weight:600!important;
  letter-spacing:0!important;
}
.btn>span[aria-hidden]{font-family:var(--font-sans)!important;font-size:15px}
.arena-join{border-radius:var(--r-sm)!important;font-size:14px!important}
.arena-shell .arena-console__button{border-radius:var(--r-sm)!important}

/* ---------- 6. 区块节奏：标题要像标题，节与节之间要有呼吸 ---------- */
/* 上一节的下内边距 + 这一节的上内边距是叠加的，128px 两份就是 256px 的空洞 */
main>section>.wrap{padding-block:clamp(56px,5.6vw,92px)!important}
main>section+section{border-top:1px solid #1a1f26}
main>section:nth-of-type(even){background:linear-gradient(180deg,#0e1217 0%,#0b0e11 64%)}

.sec-head{display:block!important;max-width:900px;margin:0 0 clamp(32px,3.6vw,52px)!important;padding:0!important;border:0!important}
.sec-head>.kicker{
  display:inline-flex!important;align-items:center;gap:12px;margin:0 0 18px!important;
  color:var(--yes)!important;
}
.sec-head>.kicker::before{
  display:inline-grid;place-items:center;min-width:34px;height:24px;padding:0 7px;
  border:1px solid #f0b90b59;border-radius:6px;background:#f0b90b14;
  color:#f0b90b;font-size:12px!important;letter-spacing:.02em;
}
.sec-head h2{
  margin:0 0 16px!important;
  font-family:var(--font-sans)!important;font-size:var(--fs-h2)!important;font-weight:700!important;
  line-height:1.12!important;letter-spacing:-.03em!important;color:#fff;
  text-wrap:balance;
}
html[data-lang="zh"] .sec-head h2{letter-spacing:.01em!important;line-height:1.28!important;font-weight:700!important}
.sec-head .sec-sub{
  margin:0 0 12px!important;max-width:60ch;
  font-size:var(--fs-lead)!important;line-height:1.6!important;color:#b7bdc6!important;
}
.sec-head .sec-lead{
  max-width:68ch!important;
  font-size:var(--fs-body)!important;line-height:1.8!important;color:#848e9c!important;
}
html[data-lang="zh"] .sec-head .sec-lead,html[data-lang="zh"] .sec-head .sec-sub{line-height:1.9!important}

/* ---------- 7. 定义行 → 卡片 ---------- */
.dl{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));
  gap:16px;margin:0 0 24px!important;border-top:0!important;
}
.dl-row{
  position:relative;
  display:flex!important;flex-direction:column;align-items:stretch!important;gap:10px!important;
  padding:28px 26px 26px!important;
  border:1px solid var(--card-line)!important;border-radius:var(--r);
  background:var(--card)!important;
  box-shadow:inset 0 1px 0 #ffffff08,0 26px 52px -40px #000;
  transition:border-color .22s,transform .22s,box-shadow .22s;
}
.dl-row::before{
  content:"";position:absolute;left:26px;right:26px;top:-1px;height:1px;
  background:linear-gradient(90deg,#f0b90b99,#f0b90b00 72%);
}
.dl-row:hover{
  border-color:#f0b90b4d!important;transform:translateY(-3px);
  box-shadow:inset 0 1px 0 #ffffff0d,0 34px 64px -38px #000,0 0 0 1px #f0b90b1a;
}
.dl-fig{
  order:-1;margin:0 0 6px!important;text-align:left!important;
  font-size:clamp(32px,2.8vw,42px)!important;line-height:1.05!important;letter-spacing:-.03em!important;
}
.dl-row dt{
  font-family:var(--font-sans)!important;font-size:var(--fs-title)!important;font-weight:600!important;
  line-height:1.35!important;color:#fff;
}
.dl-body{
  font-size:var(--fs-body)!important;line-height:1.75!important;color:#b7bdc6!important;max-width:none!important;
}
html[data-lang="zh"] .dl-body{line-height:1.9!important}

/* ---------- 8. 数据条 → 数据卡（首屏那条横排除外） ---------- */
.stats:not(.stats--hero){gap:16px!important;border:0!important;background:transparent!important}
.stats:not(.stats--hero) .stat{
  padding:26px!important;border:1px solid var(--card-line)!important;border-radius:var(--r);
  background:radial-gradient(130% 150% at 0 0,#f0b90b0f,transparent 52%),var(--card);
  box-shadow:inset 0 1px 0 #ffffff08;
}
.stats:not(.stats--hero) .stat-val{
  margin:8px 0 6px;font-size:clamp(30px,3vw,44px)!important;line-height:1.05!important;color:#fff;
}
.stats:not(.stats--hero) .stat-val.c-yes,.stats:not(.stats--hero) .stat-val.c-mint{color:inherit}
.stats:not(.stats--hero) .stat-foot{font-size:14px!important;line-height:1.6;color:#848e9c}

/* ---------- 9. 区域、表格、代码：同一套卡片语言 ---------- */
.block,.tbl-scroll,.rig,.kv,.launchpad{border-radius:var(--r)}
.block,.rig{
  overflow:hidden;border-color:var(--card-line)!important;
  background:linear-gradient(176deg,#12171d,#0d1115)!important;
  box-shadow:inset 0 1px 0 #ffffff07,0 26px 56px -42px #000;
}
.block-head{padding:15px 22px!important;background:#ffffff05!important;border-bottom-color:var(--card-line)!important}
.block-q{
  padding:24px 22px!important;border-bottom-color:var(--card-line)!important;
  font-family:var(--font-sans)!important;font-size:clamp(18px,1.8vw,24px)!important;
  font-weight:600!important;line-height:1.45!important;letter-spacing:-.01em;color:#fff;
}
html[data-lang="zh"] .block-q{letter-spacing:.01em}
.block-foot{padding:20px 22px!important}
.note{font-size:14px!important;line-height:1.75!important;color:#848e9c}
html[data-lang="zh"] .note{line-height:1.9!important}

.tbl-scroll{border-color:var(--card-line)!important;overflow:auto}
.tbl{font-family:var(--font-sans)!important;font-size:14px}
.tbl th{padding:13px 20px!important;background:#ffffff05!important;color:#848e9c!important}
.tbl td,.tbl tbody th{padding:14px 20px!important;border-bottom-color:#1d2229!important}
.tbl td{color:#b7bdc6}
.tbl td.r{font-size:15px!important;color:#fff}
.tbl tbody tr:hover td,.tbl tbody tr:hover th{background:#f0b90b08!important}

pre.code{
  border-radius:var(--r);border-color:var(--card-line)!important;background:#07090c!important;
  padding:22px 24px!important;font-size:13.5px!important;line-height:1.9!important;
  box-shadow:inset 0 1px 0 #ffffff06;
}

.kv-row{padding:14px 20px!important}
.kv-k{color:#848e9c!important}
.kv-v{font-size:15px!important}
.kv-note{font-family:var(--font-sans)!important;font-size:13px!important;padding:12px 20px!important}

.srcs{border-top:0!important;gap:10px}
.srcs a{
  border:1px solid var(--card-line)!important;border-radius:var(--r-sm);
  padding:16px 20px!important;background:var(--card);font-size:15px;line-height:1.65;
}
.srcs a:hover{border-color:#f0b90b4d!important}

.story-details{border:1px solid var(--card-line)!important;border-radius:var(--r);padding:0 22px}
.story-details summary{padding:18px 0!important;font-size:15px!important;color:#eaecef!important}
.story li{font-size:15px;line-height:1.8}

.warn{border-radius:var(--r-sm);font-size:14px;line-height:1.75;padding:14px 18px}

/* ---------- 10. 大厅里的字号也要过 12px 这条线 ---------- */
.arena-shell{border-radius:var(--r-lg)!important}
.arena-heading h2{
  font-family:var(--font-sans)!important;font-size:var(--fs-h2)!important;font-weight:700!important;
  letter-spacing:-.03em!important;line-height:1.12!important;
}
html[data-lang="zh"] .arena-heading h2{letter-spacing:.01em!important;line-height:1.28!important}
.arena-intro{font-size:var(--fs-lead)!important;line-height:1.7!important;color:#b7bdc6!important}
.arena-stage__question{font-family:var(--font-sans)!important;font-weight:700!important}
html[data-lang="zh"] .arena-stage__question{letter-spacing:.01em!important;line-height:1.4!important}
.arena-message__text{font-size:15px!important;line-height:1.75!important}
.arena-message__meta strong{font-size:13px!important}
.arena-empty strong{font-size:15px!important}
.arena-empty p{font-size:14px!important}
.arena-steps li{font-size:14px!important}
.arena-service-note{font-size:13px!important}
.arena-panel__head h3{font-size:16px!important;font-weight:600!important}
.arena-readonly{font-size:12px!important}

/* 实测剩下的 12px 以下文字，逐个点名抬上来（1440 与 390 两档都量过） */
.arena-step-number{font-size:12px!important;min-width:26px!important;height:26px!important}
.arena-stage__def{font-size:13px!important;line-height:1.6!important}
.arena-stage__sub,.arena-axis__scale span,.arena-count,.arena-readonly span,
.pticks span,.pval small,.motion-toggle__label,.launchpad em{font-size:12px!important}
.arena-count{min-width:28px!important;height:28px!important}
.launchpad strong{font-size:14px!important}
.arena-eligibility,.arena-tab{font-size:13px!important}

/* ---------- 11. 页脚 ---------- */
.foot-links a{font-family:var(--font-sans)!important;font-size:13px!important;letter-spacing:.02em!important;text-transform:none!important}

/* ---------- 12. 窄屏 ---------- */
@media (max-width:880px){
  :root{--chrome:150px}
  .nav-bar>.wrap{min-height:50px}
  .nav-links a{min-height:44px;font-size:13px;padding:0 10px}
  .dl-row{padding:24px 20px 22px!important}
}
@media (max-width:540px){
  .btn{width:100%}
  .sec-head h2{font-size:clamp(28px,8vw,34px)!important}
  .stats:not(.stats--hero){grid-template-columns:minmax(0,1fr)!important}
}

/* 中文词典里的眉标本来就是英文，原设计拿它当装饰。中文模式下取消大写会读成漏翻译，
   所以这几处在中文模式下仍按英文眉标排：大写、加宽。 */
html[data-lang="zh"] :is(.sec-head>.kicker,.hero-copy>.kicker,.arena-heading .kicker){
  text-transform:uppercase!important;letter-spacing:.12em!important;font-weight:600!important;
}

/* 中文模式：思源黑体排在前面。它的子集里只有汉字和中文标点，没有拉丁字母，
   所以字母和数字仍然落到 Plex 上，而「——」「“”」「·」「…」取中文全角字形——
   否则 Plex 的西文破折号会让「——」断成两截。 */
html[data-lang="zh"]{
  --font-sans:"Bayes Hei","Bayes Sans","PingFang SC","Hiragino Sans GB","Microsoft YaHei UI","Microsoft YaHei",system-ui,sans-serif;
}
/* 只读标签不换行只适用于宽屏；窄屏上它会把输入框挤出面板（面板 overflow:hidden，看起来是被截断） */
@media (min-width:801px){
  .arena-readonly{flex:0 0 auto}
  .arena-readonly span{white-space:nowrap}
}

/* 手机上固定顶栏占到屏幕的 18–21%，压矮导航行和状态条 */
@media (max-width:540px){
  .nav-bar>.wrap{min-height:46px}
  .nav-links a{min-height:38px;font-size:13px;padding:0 9px}
  .tape-cell{padding-block:6px}
  .tape-lbl{font-size:12px!important}
  .tape-val{font-size:13px}
}
