/* ============================================================
   Envoyly base.css — 重置 + 设计变量 + 字体 + 蓝标组件类
   视觉规范 V1.0：克莱因蓝 #002FA7 / 纸白 #FAFAF7 / 墨黑 / 全直角 / 衬线标题
   ============================================================ */

*,
*::before,
*::after { box-sizing: border-box; margin: 0; padding: 0; }

:root {
  --klein: #002FA7;        /* 克莱因蓝：主色、按钮、分隔线 */
  --klein-deep: #00227F;   /* 深一档：hover / 强调 */
  --paper: #FAFAF7;        /* 纸白：页面底色（不用纯白 #FFF） */
  --ink: #1A1A1A;          /* 墨黑：正文 */
  --gray: #5F5E5A;         /* 辅助灰：次要文字 */
  --line: #E5E4DF;         /* 浅灰线：分隔线、边框 */
  --white: #FFFFFF;
  --serif: "Noto Serif SC", "Songti SC", "STSong", "SimSun", serif;
  --sans: "Noto Sans SC", "PingFang SC", "Microsoft YaHei", "Helvetica Neue", Arial, sans-serif;
  /* —— Logo 体系（2026-10 定稿） —— */
  --navy: #0A1438;         /* 字标与深色底用的品牌深藏青 */
  --logo-violet: #6B4FFC;  /* 图形标记渐变：紫 */
  --logo-blue: #3A6FFE;    /* 图形标记渐变：蓝 */
  --logo-azure: #4EBAFE;   /* 图形标记渐变：亮青 */
  --brand: "Poppins", "Nunito", "Avenir Next", "Century Gothic", "Quicksand", "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;
  --nav-h: 64px;
  --max-w: 1200px;
}

html { scroll-behavior: smooth; }

body {
  background: var(--paper);
  color: var(--ink);
  font-family: var(--sans);
  font-size: 16px;
  line-height: 1.75;
  -webkit-font-smoothing: antialiased;
}

img, svg { display: block; max-width: 100%; }

a { color: var(--klein); text-decoration: none; }
a:hover { text-decoration: underline; }

h1, h2, h3, h4, h5, .serif {
  font-family: var(--serif);
  font-weight: 600;
  line-height: 1.32;
}

.container { max-width: var(--max-w); margin: 0 auto; padding: 0 24px; }

section[id] { scroll-margin-top: calc(var(--nav-h) + 12px); }

.dim { color: var(--gray); }

/* —— 蓝标的三种用法（规格 2.3，全站统一组件类）—— */
.blue-mark {           /* 用法一：纯色方块（编号 / 图标底） */
  width: 24px; height: 24px;
  background: var(--klein);
  display: inline-block; flex: none;
}
.blue-mark--outline {  /* 用法二：描边方块（正文中的强调） */
  width: 24px; height: 24px;
  border: 2px solid var(--klein);
  background: transparent;
  display: inline-block; flex: none;
}

/* —— Logo 图形标记（2026-10 定稿）——
   注意：与上面的 .blue-mark 是两套东西。
   .blue-mark 承担产品语义（实心＝分身 AI 发言 / 描边＝真人实名，见 /policies/ai-disclosure/），
   绝不可替换成 logo；.brand-mark 才是品牌图形标记。 */
.brand-mark {
  display: inline-block; flex: none;
  width: 30px; height: 25px;
  background: url("/assets/img/logo-mark.svg") center / contain no-repeat;
}
.brand-mark--white { background-image: url("/assets/img/logo-mark-white.svg"); }
.brand-mark--lg { width: 42px; height: 34px; }
.brand-mark--sm { width: 22px; height: 18px; }

/* 品牌字标：与 logo 的圆润粗体无衬线一致，深藏青 */
.brand-word {
  font-family: var(--brand);
  font-weight: 800;
  font-size: 21px;
  letter-spacing: -.015em;
  color: var(--navy);
  line-height: 1;
}
.on-dark .brand-word { color: var(--white); }

/* —— 滚动渐显 —— */
.reveal { opacity: 0; transform: translateY(16px); transition: opacity .6s ease, transform .6s ease; }
.reveal.is-in { opacity: 1; transform: none; }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .reveal { opacity: 1; transform: none; transition: none; }
}

::selection { background: var(--klein); color: #fff; }
