@charset "UTF-8";
/* ============================================================
   Signal — 九百步 · 平台全景（1920×1080 fixed stage）
   来源：frontend-slides / bold-template-pack / templates/signal
   CJK 适配（按 design.md「CJK & International Content」官方指引）：
   - 中文走系统栈（PingFang / 雅黑 / 本地 Noto），不加载中文 webfont；拉丁字体自托管（fonts.css）
   - 中文 <em>：仅颜色变金（不斜体）；拉丁 <em class="latin">：Source Serif 4 真斜体金字
   - CJK letter-spacing: 0；行高 body 1.75+ / display 1.16
   - 字体栈 / 网格指纹 / hairline / 双表面 / 金色规则全部按原规范
   ============================================================ */
:root{
  --navy:#1C2644; --navy-alt:#232F55; --cream:#F0ECE3; --cream-alt:#E6E0D4;
  --warm:#E2DCD0; --muted-dark:#8A96A8; --hint-dark:#4E5A6E;
  --ink:#1A2030; --muted-light:#5A6270; --hint-light:#9AA0A8;
  --gold:#C8A870; --border-dark:#2E3D5C; --border-light:#CAC4B4;
  --serif:"Source Serif 4","PingFang SC","HarmonyOS Sans SC","Microsoft YaHei","Noto Sans SC",sans-serif;
  --sans:"DM Sans","PingFang SC","HarmonyOS Sans SC","Microsoft YaHei","Noto Sans SC",system-ui,sans-serif;
  --mono:"IBM Plex Mono","PingFang SC","HarmonyOS Sans SC","Microsoft YaHei","Noto Sans SC",monospace;
  --pad-x:144px; --pad-y:59px; --gap-lg:43px; --gap-md:27px; --gap-sm:13px;
}
*{margin:0;padding:0;box-sizing:border-box}
html,body{width:100%;height:100%;overflow:hidden;background:#131A2E}
.deck-viewport{position:fixed;inset:0;overflow:hidden;background:#131A2E}
.deck-stage{position:absolute;left:0;top:0;width:1920px;height:1080px;overflow:hidden;transform-origin:0 0}

.slide{position:absolute;inset:0;display:grid;grid-template-rows:auto 1fr auto;padding:var(--pad-y) var(--pad-x)}
.slide>*{position:relative}
.slide.dark{background:var(--navy);color:var(--warm)}
.slide.dark::before{ /* 80px grid fingerprint — 深色面专属 */
  content:"";position:absolute;inset:0;pointer-events:none;
  background-image:
    linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);
  background-size:80px 80px;
}
.slide.light{background:var(--cream);color:var(--ink)}

/* ---------- chrome / foot（标准页） ---------- */
.chrome{display:flex;justify-content:space-between;align-items:baseline;
  border-bottom:1px solid var(--border-dark);padding-bottom:var(--gap-sm);
  font-family:var(--mono);font-size:15px;font-weight:500;color:var(--muted-dark);letter-spacing:.05em}
.light .chrome{border-color:var(--border-light);color:var(--hint-light)}
.foot{display:flex;justify-content:space-between;align-items:baseline;
  border-top:1px solid var(--border-dark);padding-top:var(--gap-sm);
  font-family:var(--mono);font-size:14px;color:var(--hint-dark);letter-spacing:.05em}
.light .foot{border-color:var(--border-light);color:var(--hint-light)}
.foot .page{color:var(--muted-dark)}
.light .foot .page{color:var(--hint-light)}

/* ---------- typography ---------- */
.rule-short{width:36px;height:1px;background:var(--gold)}
h1.display{font-family:var(--serif);font-weight:700;font-size:174px;line-height:1.16;letter-spacing:0}
h2{font-family:var(--serif);font-weight:700;font-size:56px;line-height:1.3;letter-spacing:0}
h3{font-family:var(--serif);font-weight:600;font-size:25px;line-height:1.45;letter-spacing:0}
.lead{font-family:var(--sans);font-size:26px;font-weight:400;line-height:1.7}
.caption{font-family:var(--sans);font-size:17px;line-height:1.75}
em{font-style:normal;color:var(--gold)} /* CJK em：仅颜色 */
em.latin{font-family:"Source Serif 4",Georgia,serif;font-style:italic;font-weight:700;color:var(--gold)}
.muted-dark-t{color:var(--muted-dark)}
.muted-light-t{color:var(--muted-light)}

/* ---------- 标准页骨架 ---------- */
.page-body{display:flex;flex-direction:column;min-height:0}
.page-head{padding-top:44px;padding-bottom:38px}
.page-head .lead{margin-top:18px}

/* ---------- 封面（chromeless） ---------- */
.cover-top{display:flex;justify-content:space-between;align-items:baseline}
.cover-top .brand{font-family:var(--sans);font-size:30px;font-weight:500;color:var(--warm);letter-spacing:0}
.cover-top .counter{font-family:var(--mono);font-size:14px;color:var(--hint-dark);letter-spacing:.05em}
.cover-body{align-self:center;display:flex;flex-direction:column;align-items:flex-start}
.cover-body h1{margin-top:var(--gap-lg)}
.cover-body .lead{margin-top:var(--gap-lg)}
.cover-foot{display:grid;grid-template-columns:repeat(4,1fr)}
.cover-foot .stat{border-top:1px solid var(--border-dark);padding-top:22px;margin-right:56px}
.cover-foot .stat:last-child{margin-right:0}
.cover-foot .no{font-family:var(--serif);font-weight:600;font-size:22px;color:var(--gold);letter-spacing:0}
.cover-foot .lb{margin-top:12px;font-family:var(--sans);font-size:21px;font-weight:500;color:var(--warm)}

/* ---------- 3×3 hairline 网格（dense editorial，navy） ---------- */
.grid-9{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr)}
.grid-9 .cell{border-top:1px solid var(--border-dark);padding:0 48px 0 0;
  display:flex;flex-direction:column;justify-content:center}
.grid-9 .cell:nth-child(3n+2),
.grid-9 .cell:nth-child(3n){border-left:1px solid var(--border-dark);padding-left:48px}
.grid-9 .cell h3{color:var(--warm);font-size:27px}
.grid-9 .cell .caption{margin-top:14px;color:var(--muted-dark);font-size:17px;line-height:1.7}
/* hi = 金色标注（扩展能力总线）：底色 + 前景色，与 03 页 .cellb.hi 同配方 */
.grid-9 .cell.hi{background:rgba(200,168,112,.13)}
.grid-9 .cell.hi h3{color:#f4e2b8}
.grid-9 .cell.hi .caption{color:rgba(238,217,171,.62)}

/* ---------- hairline 行列表（dark，阶梯） ---------- */
.rows{flex:1;display:flex;flex-direction:column;justify-content:center;min-height:0}
.rows .row{display:grid;grid-template-columns:64px 168px 1.1fr 1.4fr;align-items:baseline;
  border-top:1px solid var(--border-dark);padding:26px 0}
.rows .row:last-child{border-bottom:1px solid var(--border-dark)}
.rows .no{font-family:var(--mono);font-size:15px;color:var(--gold);letter-spacing:.08em}
.rows .lv{font-family:var(--sans);font-size:19px;font-weight:500;color:var(--muted-dark)}
.rows .tt{font-family:var(--sans);font-size:23px;font-weight:600;color:var(--warm)}
.rows .ds{font-family:var(--sans);font-size:17px;font-weight:400;color:var(--muted-dark);line-height:1.7}

/* ---------- 底部注记区 ---------- */
.note-region{margin-top:40px;padding-bottom:26px}
.note-region h3{margin-top:16px;color:var(--warm)}
.note-region .caption{margin-top:10px;color:var(--muted-dark)}
.light .note-region h3{color:var(--ink)}
.light .note-region .caption{color:var(--muted-light)}

/* ---------- 统计行（金衬线大数字） ---------- */
.stats-row{display:grid;grid-template-columns:repeat(4,1fr)}
.stats-row .stat{border-top:1px solid var(--border-dark);padding:36px 40px 30px 0}
.light .stats-row .stat{border-color:var(--border-light)}
.stats-row .no{font-family:var(--serif);font-weight:600;font-size:76px;line-height:1;color:var(--gold)}
.stats-row .lb{margin-top:16px;font-family:var(--sans);font-size:20px;font-weight:500;color:var(--warm)}
.light .stats-row .lb{color:var(--ink)}

/* ---------- 通用 hairline 网格 ---------- */
.hgrid{display:grid}
.hgrid .cell{border-top:1px solid var(--border-dark);padding:32px 44px 36px 0}
.light .hgrid .cell{border-color:var(--border-light)}
.hgrid.cols-2{grid-template-columns:1fr 1fr}
.hgrid.cols-3{grid-template-columns:repeat(3,1fr)}
.hgrid.cols-4{grid-template-columns:repeat(4,1fr)}
.hgrid.cols-2 .cell:nth-child(2n),
.hgrid.cols-3 .cell:nth-child(3n+2),.hgrid.cols-3 .cell:nth-child(3n),
.hgrid.cols-4 .cell:nth-child(4n+2),.hgrid.cols-4 .cell:nth-child(4n+3),.hgrid.cols-4 .cell:nth-child(4n){
  border-left:1px solid var(--border-dark);padding-left:44px}
.light .hgrid.cols-2 .cell:nth-child(2n),
.light .hgrid.cols-3 .cell:nth-child(3n+2),.light .hgrid.cols-3 .cell:nth-child(3n),
.light .hgrid.cols-4 .cell:nth-child(4n+2),.light .hgrid.cols-4 .cell:nth-child(4n+3),.light .hgrid.cols-4 .cell:nth-child(4n){
  border-left-color:var(--border-light)}

/* ---------- bullets（金 em-dash） ---------- */
.bullets{list-style:none}
.bullets li{position:relative;padding-left:32px;font-family:var(--sans);
  font-size:17px;line-height:1.85;color:var(--warm)}
.light .bullets li{color:var(--ink)}
.bullets li .m{color:var(--muted-dark)}
.light .bullets li .m{color:var(--muted-light)}
.bullets li::before{content:"—";position:absolute;left:0;top:0;font-family:var(--mono);color:var(--gold)}
.bullets li b{font-weight:600}

/* ---------- gold tag（直角描边） ---------- */
.gold-tag{display:inline-block;border:1px solid var(--gold);color:var(--gold);
  font-family:var(--sans);font-size:15px;font-weight:500;padding:10px 20px}

/* ---------- 格言行（cell 底部） ---------- */
.qline{font-family:var(--sans);font-size:16px;color:var(--muted-dark);margin-top:24px}
.light .qline{color:var(--muted-light)}
