/* PainDecode Design Tokens */
/* 基于 PainDecode_UI_Design.md 设计规范 */

:root {
  /* ==========色彩系统 ========== */

  /* 主色（品牌色） */
  --color-primary: #1A73E8;
  --color-primary-light: #E8F0FE;
  --color-primary-dark: #1557B0;

  /* 语义色（红黄蓝评估体系） */
  --color-red: #D93025;
  --color-red-light: #FCE8E6;
  --color-red-dark: #B3261E;

  --color-yellow: #F9AB00;
  --color-yellow-light: #FEF7E0;
  --color-yellow-dark: #E37400;

  --color-blue: #1A73E8;
  --color-blue-light: #E8F0FE;
  --color-blue-dark: #1557B0;

  /* 功能色 */
  --color-success: #0D9488;
  --color-warning: #F9AB00;
  --color-error: #D93025;
  --color-info: #1A73E8;

  /* 中性色 */
  --color-text-primary: #1F1F1F;
  --color-text-secondary: #5F6368;
  --color-text-tertiary: #80868B;
  --color-text-on-color: #FFFFFF;

  --color-border: #DADCE0;
  --color-border-light: #E8EAED;

  --color-surface: #FFFFFF;
  --color-background: #F8F9FA;
  --color-background-warm: #FFF8F0;

  /* ========== 字体系统 ========== */

  /* 字体族（系统字体栈） */
  --font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC",
                 "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue",
                 Helvetica, Arial, sans-serif;

  /* 字号阶梯 */
  --font-size-display: 32px;/* 2rem */
  --font-size-h1: 24px;    /* 1.5rem */
  --font-size-h2: 20px;    /* 1.25rem */
  --font-size-h3: 17px;    /* 1.0625rem */
  --font-size-body-lg: 16px; /* 1rem */
  --font-size-body: 15px;  /* 0.9375rem */
  --font-size-caption: 13px; /* 0.8125rem */
  --font-size-small: 12px; /* 0.75rem */

  /* 字重 */
  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;

  /* 行高 */
  --line-height-display: 1.3;
  --line-height-h1: 1.35;
  --line-height-h2: 1.4;
  --line-height-h3: 1.45;
  --line-height-body: 1.55;
  --line-height-body-lg: 1.6;
  --line-height-caption: 1.5;
  --line-height-small: 1.45;

  /* ==========间距系统（4px 基准网格） ========== */

  --space-xs: 4px;
  --space-sm: 8px;
  --space-md: 12px;
  --space-lg: 16px;
  --space-xl: 24px;
  --space-2xl: 32px;
  --space-3xl: 48px;
  --space-4xl: 64px;

  /* ========== 圆角系统 ========== */

  --radius-none: 0px;
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 12px;
  --radius-xl: 16px;
  --radius-full: 9999px;

  /* ========== 阴影系统 ========== */

  --shadow-sm: 0 1px 2px rgba(0,0,0,0.06);
  --shadow-md: 0 2px 8px rgba(0,0,0,0.08);
  --shadow-lg: 0 4px 16px rgba(0,0,0,0.12);
  --shadow-xl: 0 8px 32px rgba(0,0,0,0.16);

  /* ========== 动效时长 ========== */

  --duration-instant: 100ms;
  --duration-fast: 200ms;
  --duration-normal: 300ms;
  --duration-slow: 500ms;

  /* ========== 缓动函数 ========== */

  --ease-out: ease-out;
  --ease-in: ease-in;
  --ease-in-out: ease-in-out;

  /* ========== 内容宽度 ========== */

  --content-width-sm: 560px;
  --content-width-md: 720px;
  --content-width-lg: 720px;

  /* ========== 导航栏高度 ========== */

  --navbar-height-mobile: 56px;
  --navbar-height-desktop: 64px;

  /* ========== 底部栏高度 ========== */

  --footer-height: 40px;

  /* ========== 安全区域 ========== */

  --safe-area-bottom: env(safe-area-inset-bottom, 0px);
}

/* ========== 响应式断点变量（通过媒体查询实现，此处仅作参考） ========== */

/* Mobile S: 320px – 374px */
/* Mobile: 375px – 413px */
/* Mobile L: 414px – 479px */
/* Tablet: 480px – 767px */
/* Desktop: 768px+ */