:root {
  /* 品牌色 */
  --color-primary: #246bfd;
  --color-primary-dark: #1857d8;
  --color-primary-soft: #edf3ff;
  --color-secondary: #16b8a6;
  --color-secondary-dark: #0d8f83;
  --color-secondary-soft: #e8faf7;
  --color-navy: #0b1f3a;
  --color-navy-light: #12345f;

  /* 中性色 */
  --color-heading: #101828;
  --color-text: #475467;
  --color-muted: #667085;
  --color-subtle: #98a2b3;
  --color-border: #e4e7ec;
  --color-border-soft: #eef1f5;
  --color-white: #ffffff;
  --color-bg: #ffffff;
  --color-bg-blue: #f3f7ff;
  --color-bg-soft: #f7f9fc;
  --color-error: #d92d20;
  --color-success: #087e70;

  /* 字体：不依赖外部字体，兼顾各平台中文显示 */
  --font-sans: "PingFang SC", "Microsoft YaHei", "Noto Sans CJK SC",
    "Source Han Sans SC", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  --font-display: "SF Pro Display", "PingFang SC", "Microsoft YaHei",
    system-ui, sans-serif;
  --font-mono: "SFMono-Regular", Consolas, "Liberation Mono", monospace;

  --font-size-xs: 0.75rem;
  --font-size-sm: 0.875rem;
  --font-size-base: 1rem;
  --font-size-md: 1.125rem;
  --font-size-lg: 1.25rem;
  --font-size-xl: 1.5rem;
  --font-size-2xl: clamp(1.75rem, 3vw, 2.5rem);
  --font-size-hero: clamp(2.5rem, 4.4vw, 3.65rem);

  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;

  /* 间距 */
  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.25rem;
  --space-6: 1.5rem;
  --space-8: 2rem;
  --space-10: 2.5rem;
  --space-12: 3rem;
  --space-16: 4rem;
  --space-20: 5rem;
  --space-24: 6rem;
  --space-section: clamp(5rem, 9vw, 8rem);

  /* 形状与阴影 */
  --radius-xs: 6px;
  --radius-sm: 10px;
  --radius-md: 16px;
  --radius-lg: 24px;
  --radius-xl: 32px;
  --radius-pill: 999px;

  --shadow-xs: 0 2px 8px rgba(16, 24, 40, 0.04);
  --shadow-sm: 0 8px 24px rgba(16, 24, 40, 0.06);
  --shadow-md: 0 18px 48px rgba(16, 24, 40, 0.1);
  --shadow-blue: 0 16px 34px rgba(36, 107, 253, 0.2);

  /* 布局与动画 */
  --container-width: 1200px;
  --content-width: 780px;
  --nav-height: 76px;
  --ease-standard: cubic-bezier(0.22, 1, 0.36, 1);
  --ease-smooth: cubic-bezier(0.4, 0, 0.2, 1);
  --duration-fast: 180ms;
  --duration-normal: 320ms;
  --duration-slow: 700ms;
}
