/**
 * CSS Variables - 变量系统
 * 支持需求: 3.2 (响应式断点), 10.2 (颜色对比度)
 */

:root {
  /* ========== 颜色变量 ========== */
  
  /* 主色调 - 品牌色 */
  --color-primary: #1a73e8;
  --color-primary-light: #4285f4;
  --color-primary-dark: #1557b0;
  --color-primary-hover: #1557b0;
  
  /* 辅助色 */
  --color-secondary: #34a853;
  --color-secondary-light: #5bb974;
  --color-secondary-dark: #2d8e47;
  
  /* 强调色 */
  --color-accent: #fbbc04;
  --color-accent-light: #fcc934;
  --color-accent-dark: #f9ab00;
  
  /* 文字颜色 - 确保对比度符合WCAG 2.1 AA标准 (4.5:1) */
  --color-text-primary: #202124;      /* 主要文字 - 对比度 15.8:1 */
  --color-text-secondary: #5f6368;    /* 次要文字 - 对比度 7.0:1 */
  --color-text-tertiary: #80868b;     /* 三级文字 - 对比度 4.6:1 */
  --color-text-inverse: #ffffff;      /* 反色文字 */
  
  /* 背景颜色 */
  --color-bg-primary: #ffffff;
  --color-bg-secondary: #f8f9fa;
  --color-bg-tertiary: #e8eaed;
  --color-bg-dark: #202124;
  
  /* 边框颜色 */
  --color-border-light: #e8eaed;
  --color-border-medium: #dadce0;
  --color-border-dark: #5f6368;
  
  /* 状态颜色 */
  --color-success: #34a853;
  --color-warning: #fbbc04;
  --color-error: #ea4335;
  --color-info: #1a73e8;
  
  /* 阴影颜色 */
  --color-shadow: rgba(0, 0, 0, 0.1);
  --color-shadow-medium: rgba(0, 0, 0, 0.15);
  --color-shadow-dark: rgba(0, 0, 0, 0.2);
  
  /* ========== 字体变量 ========== */
  
  /* 字体族 */
  --font-family-base: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, 
                      "Helvetica Neue", Arial, "Noto Sans", sans-serif, 
                      "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", 
                      "Noto Color Emoji";
  --font-family-heading: var(--font-family-base);
  --font-family-mono: "SF Mono", Monaco, "Cascadia Code", "Roboto Mono", 
                      Consolas, "Courier New", monospace;
  
  /* 字体大小 - 移动端最小14px (需求 3.4) */
  --font-size-xs: 0.75rem;      /* 12px */
  --font-size-sm: 0.875rem;     /* 14px - 移动端最小 */
  --font-size-base: 1rem;       /* 16px */
  --font-size-lg: 1.125rem;     /* 18px */
  --font-size-xl: 1.25rem;      /* 20px */
  --font-size-2xl: 1.5rem;      /* 24px */
  --font-size-3xl: 1.875rem;    /* 30px */
  --font-size-4xl: 2.25rem;     /* 36px */
  --font-size-5xl: 3rem;        /* 48px */
  --font-size-6xl: 3.75rem;     /* 60px */
  
  /* 字体粗细 */
  --font-weight-light: 300;
  --font-weight-normal: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  
  /* 行高 */
  --line-height-tight: 1.25;
  --line-height-normal: 1.5;
  --line-height-relaxed: 1.75;
  --line-height-loose: 2;
  
  /* ========== 间距变量 ========== */
  
  /* 基础间距单位 */
  --spacing-unit: 0.25rem;      /* 4px */
  
  /* 间距尺寸 */
  --spacing-0: 0;
  --spacing-1: calc(var(--spacing-unit) * 1);   /* 4px */
  --spacing-2: calc(var(--spacing-unit) * 2);   /* 8px */
  --spacing-3: calc(var(--spacing-unit) * 3);   /* 12px */
  --spacing-4: calc(var(--spacing-unit) * 4);   /* 16px */
  --spacing-5: calc(var(--spacing-unit) * 5);   /* 20px */
  --spacing-6: calc(var(--spacing-unit) * 6);   /* 24px */
  --spacing-8: calc(var(--spacing-unit) * 8);   /* 32px */
  --spacing-10: calc(var(--spacing-unit) * 10); /* 40px */
  --spacing-12: calc(var(--spacing-unit) * 12); /* 48px */
  --spacing-16: calc(var(--spacing-unit) * 16); /* 64px */
  --spacing-20: calc(var(--spacing-unit) * 20); /* 80px */
  --spacing-24: calc(var(--spacing-unit) * 24); /* 96px */
  --spacing-32: calc(var(--spacing-unit) * 32); /* 128px */
  
  /* ========== 断点变量 ========== */
  /* 需求 3.2: 移动端(<768px)、平板端(768px-1199px)、桌面端(≥1200px) */
  
  --breakpoint-mobile: 768px;
  --breakpoint-tablet: 1200px;
  
  /* ========== 布局变量 ========== */
  
  /* 容器最大宽度 */
  --container-max-width: 1200px;
  --container-padding: var(--spacing-4);
  
  /* 导航栏高度 */
  --header-height: 64px;
  --header-height-mobile: 56px;
  
  /* ========== 圆角变量 ========== */
  
  --radius-sm: 0.25rem;   /* 4px */
  --radius-md: 0.5rem;    /* 8px */
  --radius-lg: 0.75rem;   /* 12px */
  --radius-xl: 1rem;      /* 16px */
  --radius-full: 9999px;
  
  /* ========== 阴影变量 ========== */
  
  --shadow-sm: 0 1px 2px 0 var(--color-shadow);
  --shadow-md: 0 4px 6px -1px var(--color-shadow), 
               0 2px 4px -1px var(--color-shadow);
  --shadow-lg: 0 10px 15px -3px var(--color-shadow), 
               0 4px 6px -2px var(--color-shadow);
  --shadow-xl: 0 20px 25px -5px var(--color-shadow), 
               0 10px 10px -5px var(--color-shadow);
  
  /* ========== 过渡变量 ========== */
  
  --transition-fast: 150ms ease-in-out;
  --transition-base: 250ms ease-in-out;
  --transition-slow: 350ms ease-in-out;
  
  /* ========== Z-index变量 ========== */
  
  --z-index-dropdown: 1000;
  --z-index-sticky: 1020;
  --z-index-fixed: 1030;
  --z-index-modal-backdrop: 1040;
  --z-index-modal: 1050;
  --z-index-popover: 1060;
  --z-index-tooltip: 1070;
  
  /* ========== 触摸目标变量 ========== */
  /* 需求 3.5: 移动端触摸目标至少44x44px */
  
  --touch-target-min: 44px;
}

/* ========== 媒体查询断点 ========== */

/* 移动端优先的媒体查询辅助注释 */
/* 
  使用方式:
  
  移动端 (默认, <768px):
  直接编写样式
  
  平板端 (≥768px):
  @media (min-width: 768px) { ... }
  
  桌面端 (≥1200px):
  @media (min-width: 1200px) { ... }
*/
