/* ============================================================
   legal-page.css — 法务静态页共享样式（2026-08-17 audit 批次3）
   ------------------------------------------------------------
   背景：privacy-policy.html / user-agreement.html 各自内嵌了一份
   几乎逐字克隆的 <style>，且用了一套与 tokens.css 断层的视觉语言：
   - 字体首选 "Outfit"/"Inter"（项目根本没注册这两个 webfont，
     西文字符会退到系统字体，字重与主站 MiSans 不一致）
   - 强调色全是紫靛 rgb(99,102,241)（≈ #6366f1），而 tokens.css 的
     品牌主色是 --brand #1e40af（蓝）——两代设计语言撕裂
   - 引用了不存在的 token（--page-bg / --text-primary），永远走 fallback

   本文件统一收敛：字体走 --font-sans（MiSans），色板全部走 tokens.css
   的 --bg-page / --text-main / --text-sub / --line / --brand / --brand-2
   / --warning，深浅两套自动跟随 data-theme（theme-bootstrap.js 已在
   两页 head 加载）。
   ============================================================ */

body {
  margin: 0; padding: 0;
  background: var(--bg-page, #f8fafc);
  color: var(--text-main, #111827);
  font-family: var(--font-sans, "MiSans", "PingFang SC", "Microsoft YaHei", sans-serif);
  line-height: 1.75;
  -webkit-font-smoothing: antialiased;
}

.legal-shell {
  max-width: 800px;
  margin: 0 auto;
  padding: 48px 24px 72px;
}
@media (max-width: 640px) {
  .legal-shell { padding: 32px 20px 60px; }
}

/* 返回按钮：胶囊轮廓，描边与文字都走品牌蓝 */
.legal-back {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 6px 14px;
  background: transparent;
  border: 1px solid var(--line-strong, #cbd5e1);
  border-radius: 999px;
  color: var(--brand-2, #3b82f6);
  font-size: 13px;
  cursor: pointer;
  text-decoration: none;
  margin-bottom: 24px;
  transition: background 0.15s ease, border-color 0.15s ease;
}
.legal-back:hover {
  background: var(--brand-soft, #eff6ff);
  border-color: var(--brand-2, #3b82f6);
}

h1 { font-size: 28px; font-weight: 700; margin: 0 0 8px; }

.legal-meta {
  font-size: 13px;
  color: var(--text-sub, #475569);
  margin: 0 0 32px;
}

/* 章节分隔线走中性边框，不再用品牌色细线 */
h2 {
  font-size: 18px; font-weight: 700;
  margin: 32px 0 12px; padding-top: 12px;
  border-top: 1px solid var(--line, #e5e7eb);
}
h3 { font-size: 15px; font-weight: 600; margin: 20px 0 8px; }
p, li { font-size: 14px; }
ul, ol { padding-left: 22px; }
li { margin-bottom: 6px; }

/* 文内链接走品牌蓝（替换原来 mailto 上的紫靛 inline 色） */
.legal-shell a:not(.legal-back) { color: var(--brand-2, #3b82f6); }

/* 简明摘要卡（privacy-policy 独有）：品牌蓝浅色面 + 顶部实色条 */
.legal-summary {
  background: var(--brand-soft, #eff6ff);
  border: 1px solid var(--line, #e5e7eb);
  border-top: 2px solid var(--brand-2, #3b82f6);
  padding: 16px 20px;
  border-radius: 10px;
  font-size: 14px;
  margin: 16px 0 24px;
}
html[data-theme="dark"] .legal-summary {
  background: rgba(59, 130, 246, 0.12);
  border-color: rgba(96, 165, 250, 0.25);
  border-top-color: var(--brand-2, #60a5fa);
}

/* 免责提示卡：语义走 --warning，不再硬编码橙 */
.legal-disclaimer {
  margin-top: 48px;
  padding: 16px 20px;
  background: var(--warning-soft, #fffbeb);
  border: 1px solid rgba(180, 83, 9, 0.22);
  border-top: 2px solid var(--warning, #b45309);
  border-radius: 10px;
  font-size: 13px;
  color: var(--warning, #b45309);
}
html[data-theme="dark"] .legal-disclaimer {
  background: rgba(251, 191, 36, 0.12);
  border-color: rgba(251, 191, 36, 0.3);
  border-top-color: var(--warning, #fbbf24);
  color: var(--warning, #fbbf24);
}

/* 表格（privacy-policy 独有）：边框与表头走中性 token */
table {
  width: 100%; border-collapse: collapse; margin: 12px 0;
  font-size: 13px;
}
th, td {
  padding: 10px 12px;
  border: 1px solid var(--line, #e5e7eb);
  text-align: left;
}
th { background: var(--bg-soft, #f1f5f9); font-weight: 600; }
html[data-theme="dark"] th { background: rgba(148, 163, 184, 0.1); }
