/* ============================================================
   tokens.css — 政浩软件官网 全站唯一样式变量来源
   依据：design-spec.md v1.0（冻结）
   品牌色暂用海报蓝 #0A3D91 色阶；用户后续提供 VI 标准色时，
   仅需替换本文件 :root 中的色值即可全站生效。
   ============================================================ */

:root {
  /* 基础色 */
  --color-white: #FFFFFF;
  --color-black: #000000;

  /* 主色（政浩蓝系） */
  --color-primary-700: #0A3D91;
  --color-primary-600: #1456C4;
  --color-primary-800: #082E6E;
  --color-primary-500: #0F47A8; /* 主按钮悬停（#1456C4 加深 8%） */
  --color-primary-100: #DCE7F8;
  --color-primary-50:  #EFF4FC;

  /* 科技青（数据/AI 强调，仅渐变与图形，禁作正文文字色） */
  --color-cyan-500: #06B6D4;
  --color-cyan-700: #0E7490;
  --color-cyan-300: #67E8F9; /* 深色底上的数据强调文字 */
  --gradient-tech: linear-gradient(135deg, #1456C4 0%, #06B6D4 100%);

  /* 环卫绿（行业点缀 + 成功语义） */
  --color-green-600: #15803D;
  --color-green-50:  #F0FDF4;

  /* 中性色阶 */
  --color-neutral-50:  #F8FAFC;
  --color-neutral-100: #F1F5F9;
  --color-neutral-200: #E2E8F0;
  --color-neutral-300: #CBD5E1;
  --color-neutral-400: #94A3B8;
  --color-neutral-500: #64748B;
  --color-neutral-600: #475569;
  --color-neutral-800: #1E293B;
  --color-neutral-900: #0F172A;

  /* 深色区块（深色数据岛） */
  --color-navy-900: #0A1E3C;
  --color-navy-800: #102A4C;
  --color-screen-dot: #334155; /* 屏幕卡仿窗口栏圆点 */
  --gradient-hero: linear-gradient(160deg, #0A1E3C 0%, #0A3D91 60%, #1456C4 100%);

  /* 语义色（底色 / 文字色成对） */
  --color-success-text: #15803D;
  --color-success-bg:   #F0FDF4;
  --color-warning-text: #B45309;
  --color-warning-bg:   #FFFBEB;
  --color-danger-text:  #B91C1C;
  --color-danger-bg:    #FEF2F2;
  --color-info-text:    #0369A1;
  --color-info-bg:      #F0F9FF;

  /* 字体栈（零外链系统字体） */
  --font-sans: "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei",
               "Noto Sans CJK SC", "Source Han Sans SC", system-ui, sans-serif;
  --font-num: "Bahnschrift", "DIN Alternate", "Segoe UI", var(--font-sans);

  /* 间距刻度（4 基数） */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-6: 24px;
  --space-8: 32px;
  --space-12: 48px;
  --space-16: 64px;
  --space-24: 96px;
  --space-32: 128px;

  /* 容器与栅格 */
  --container-max: 1200px;
  --container-reading: 760px;
  --gutter: 24px;
  --container-pad: 24px;

  /* 结构尺寸 */
  --nav-h-desktop: 72px;
  --nav-h-mobile: 60px;
  --floatbar-h: 56px;

  /* 圆角 */
  --radius-sm: 6px;
  --radius-md: 8px;
  --radius-lg: 12px;
  --radius-xl: 16px;
  --radius-pill: 999px;

  /* 阴影 */
  --shadow-card-hover: 0 8px 24px rgba(15, 23, 42, .08);
  --shadow-btn-hover: 0 4px 12px rgba(20, 86, 196, .28);
  --shadow-nav: 0 1px 8px rgba(15, 23, 42, .06);
  --shadow-floatbar: 0 -2px 12px rgba(15, 23, 42, .08);

  /* 焦点描边 */
  --focus-ring: 2px solid var(--color-primary-700);
  --focus-ring-dark: 2px solid var(--color-cyan-300);
}

@media (max-width: 639px) {
  :root {
    --container-pad: 20px;
    --gutter: 16px;
  }
}
