/* ============================================================
   Design Tokens / CSS Variables
   ----------------------------------------------------------
   全部页面通过 CSS 变量驱动主题色，全局可在此切换
   ============================================================ */
:root {
  /* ---------- 颜色：主色系 ---------- */
  --color-primary:        #0B5FFF;     /* 主蓝 */
  --color-primary-dark:   #0844C2;
  --color-primary-light:  #3D7FFF;
  --color-accent:         #00C2FF;     /* 科技青 */
  --color-accent-dark:    #0099CC;

  /* ---------- 颜色：品牌深色 ---------- */
  --color-dark:           #0A1A2F;     /* 深空蓝（顶部/底部） */
  --color-dark-2:         #14253D;
  --color-dark-3:         #1E3556;

  /* ---------- 颜色：中性 ---------- */
  --color-text:           #1F2937;     /* 主文本 */
  --color-text-2:         #4B5563;     /* 次文本 */
  --color-text-3:         #6B7280;     /* 副文本 */
  --color-text-light:     #9CA3AF;
  --color-text-inverse:   #FFFFFF;

  /* ---------- 颜色：背景 / 表面 ---------- */
  --color-bg:             #FFFFFF;
  --color-bg-2:           #F8FAFC;     /* 页码底色 */
  --color-bg-3:           #F1F5F9;
  --color-bg-dark:        #0A1A2F;
  --color-surface:        #FFFFFF;
  --color-surface-2:      #F8FAFC;
  --color-surface-hover:  #F1F5F9;

  /* ---------- 颜色：边框 / 分隔 ---------- */
  --color-border:         #E5E7EB;
  --color-border-2:       #D1D5DB;
  --color-divider:        #E5E7EB;

  /* ---------- 颜色：状态 ---------- */
  --color-success:        #10B981;
  --color-warning:        #F59E0B;
  --color-danger:         #EF4444;
  --color-info:           #0B5FFF;

  /* ---------- 颜色：whatsapp ---------- */
  --color-whatsapp:       #25D366;

  /* ---------- 渐变 ---------- */
  --gradient-primary:     linear-gradient(135deg, #0B5FFF 0%, #00C2FF 100%);
  --gradient-primary-hover: linear-gradient(135deg, #0844C2 0%, #0099CC 100%);
  --gradient-dark:        linear-gradient(135deg, #0A1A2F 0%, #14253D 100%);
  --gradient-mask:        linear-gradient(180deg, rgba(10,26,47,0.0) 0%, rgba(10,26,47,0.6) 100%);
  --gradient-card:        linear-gradient(180deg, rgba(11,95,255,0.05) 0%, rgba(11,95,255,0) 100%);

  /* ---------- 字体 ---------- */
  --font-sans: "Inter", "PingFang SC", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
  --font-mono: "JetBrains Mono", "SF Mono", Consolas, monospace;

  --fs-12: 12px;
  --fs-13: 13px;
  --fs-14: 14px;
  --fs-15: 15px;
  --fs-16: 16px;
  --fs-18: 18px;
  --fs-20: 20px;
  --fs-24: 24px;
  --fs-28: 28px;
  --fs-32: 32px;
  --fs-36: 36px;
  --fs-42: 42px;
  --fs-48: 48px;
  --fs-56: 56px;
  --fs-64: 64px;

  --fw-normal: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700;
  --fw-extrabold: 800;

  --lh-tight: 1.2;
  --lh-snug: 1.4;
  --lh-normal: 1.6;
  --lh-relaxed: 1.8;

  /* ---------- 间距（8px 基准） ---------- */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-10: 40px;
  --space-12: 48px;
  --space-16: 64px;
  --space-20: 80px;
  --space-24: 96px;
  --space-32: 128px;

  /* ---------- 圆角 ---------- */
  --radius-xs: 4px;
  --radius-sm: 6px;
  --radius-md: 8px;
  --radius-lg: 12px;
  --radius-xl: 16px;
  --radius-2xl: 24px;
  --radius-pill: 999px;
  --radius-circle: 50%;

  /* ---------- 阴影 ---------- */
  --shadow-xs: 0 1px 2px rgba(15, 23, 42, 0.04);
  --shadow-sm: 0 2px 4px rgba(15, 23, 42, 0.06);
  --shadow-md: 0 4px 12px rgba(15, 23, 42, 0.08);
  --shadow-lg: 0 8px 24px rgba(15, 23, 42, 0.10);
  --shadow-xl: 0 16px 48px rgba(15, 23, 42, 0.12);
  --shadow-2xl: 0 24px 64px rgba(15, 23, 42, 0.16);
  --shadow-primary: 0 8px 24px rgba(11, 95, 255, 0.25);
  --shadow-primary-lg: 0 16px 48px rgba(11, 95, 255, 0.35);
  --shadow-card-hover: 0 20px 60px rgba(11, 95, 255, 0.12);

  /* ---------- 边框 ---------- */
  --border-default: 1px solid var(--color-border);
  --border-dark: 1px solid var(--color-dark-2);

  /* ---------- 过渡 ---------- */
  --transition-fast: 150ms cubic-bezier(0.4, 0, 0.2, 1);
  --transition-base: 250ms cubic-bezier(0.4, 0, 0.2, 1);
  --transition-slow: 400ms cubic-bezier(0.4, 0, 0.2, 1);
  --transition-spring: 400ms cubic-bezier(0.34, 1.56, 0.64, 1);

  /* ---------- 容器 ---------- */
  --container-max: 1280px;
  --container-padding: var(--space-6);

  /* ---------- 头部高度 ---------- */
  --header-top-height: 36px;
  --header-middle-height: 76px;

  /* ---------- z-index ---------- */
  --z-base: 1;
  --z-dropdown: 100;
  --z-fixed: 500;
  --z-modal-back: 800;
  --z-modal: 900;
  --z-toast: 1000;
}
