:root {
  color-scheme: light;
  --color-bg: #ffffff;
  --color-surface: #f6f7f9;
  --color-surface-strong: #eceef2;
  --color-text: #17191d;
  --color-text-soft: #343840;
  --color-muted: #626873;
  --color-border: #d9dde4;
  --color-border-strong: #b9bec8;
  --color-accent: #5b4bc4;
  --color-accent-strong: #4939ad;
  --color-accent-soft: #efedfb;
  --color-inverse: #ffffff;
  --color-inverse-muted: #c9ccd3;
  --color-dark: #1b1b22;
  --font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", Arial, sans-serif;
  --container: 1180px;
  --container-frame: 1276px;
  --gutter: clamp(20px, 4vw, 48px);
  /* 区块间距。原值 72–128px 是品牌展示站的节奏；本站要的是「精炼、有效率」的观感，
     收到 48–84px 后一屏能看到一个完整区块加下一个区块的标题。 */
  --section-space: clamp(48px, 5.5vw, 84px);
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 24px;
  --space-6: 32px;
  --space-7: 48px;
  --space-8: 64px;

  /* 密度分层（Material 3 density scale 的简化版）。
     一直缺的不是间距「值」，是「同一个值不该用在所有地方」这个概念：
     内容区块与数据行承载的信息密度差一个数量级，用同一套间距，
     数据行就会稀疏到需要用眼睛去连左右两栏。

     marketing —— 内容区块、卡片：留白服务于「慢读与呼吸」
     data      —— 定义列表、表格行：留白服务于「快速扫描与配对」
                  Material 表格行高 default 48 / comfortable 40 / compact 36，
                  这里取 comfortable 一档 */
  --row-pad-y: 10px;
  --row-gap-x: var(--space-5);
  --row-label-width: minmax(140px, 0.28fr);
  --radius-sm: 4px;
  --radius-md: 10px;
  --focus: 0 0 0 3px rgba(91, 75, 196, 0.24);
  --transition: 180ms ease;
}
