/**
 * CSS Variables - Theme System with Auto Light/Dark Mode
 * 根据用户操作系统主题自动切换亮色/暗色模式
 */

:root {
  /* === Color Palette === */

  /* Light Mode Colors (Default) */
  --bg-primary: #ffffff;
  --bg-secondary: #f5f5f5;
  --bg-card: #ffffff;
  --bg-card-hover: #fafafa;

  --text-primary: #1a1a1a;
  --text-secondary: #666666;
  --text-tertiary: #999999;

  --border-color: #e0e0e0;
  --shadow-color: rgba(0, 0, 0, 0.1);

  /* Accent Colors (same for both themes) */
  --accent-primary: #00d9a3;
  --accent-secondary: #0099ff;
  --accent-warning: #ff9800;
  --accent-danger: #f44336;

  /* Gradients */
  --gradient-primary: linear-gradient(135deg, rgba(0, 217, 163, 0.15), rgba(0, 153, 255, 0.15));
  --gradient-card: linear-gradient(135deg, rgba(0, 217, 163, 0.08), rgba(0, 153, 255, 0.08));

  /* Air Quality Colors */
  --aqi-excellent: #00d9a3;
  --aqi-good: #ffd700;
  --aqi-light: #ff9800;
  --aqi-moderate: #ff5722;
  --aqi-heavy: #9c27b0;
  --aqi-severe: #7b1fa2;

  /* === Typography === */
  --font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Helvetica Neue', Arial, sans-serif;
  --font-size-xs: 12px;
  --font-size-sm: 14px;
  --font-size-base: 16px;
  --font-size-lg: 18px;
  --font-size-xl: 24px;
  --font-size-2xl: 32px;
  --font-size-3xl: 48px;
  --font-size-4xl: 72px;

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

  --line-height-tight: 1.2;
  --line-height-normal: 1.5;
  --line-height-relaxed: 1.8;

  /* === Spacing === */
  --spacing-xs: 4px;
  --spacing-sm: 8px;
  --spacing-md: 16px;
  --spacing-lg: 24px;
  --spacing-xl: 32px;
  --spacing-2xl: 48px;

  /* === Layout === */
  --container-max-width: 1200px;
  --container-padding: 16px;

  --border-radius-sm: 8px;
  --border-radius-md: 12px;
  --border-radius-lg: 16px;
  --border-radius-xl: 24px;
  --border-radius-full: 9999px;

  /* === Shadows === */
  --shadow-sm: 0 1px 2px var(--shadow-color);
  --shadow-md: 0 4px 6px var(--shadow-color);
  --shadow-lg: 0 10px 15px var(--shadow-color);
  --shadow-xl: 0 20px 25px var(--shadow-color);

  /* === Transitions === */
  --transition-fast: 150ms ease-in-out;
  --transition-base: 300ms ease-in-out;
  --transition-slow: 500ms ease-in-out;

  /* === Z-index === */
  --z-index-dropdown: 100;
  --z-index-modal: 200;
  --z-index-loading: 300;
  --z-index-toast: 400;
}

/**
 * Dark Mode - Automatically applied when user's OS is in dark mode
 * 使用 prefers-color-scheme 媒体查询自动检测系统主题
 */
@media (prefers-color-scheme: dark) {
  :root {
    /* Background Colors */
    --bg-primary: #1a1a1a;
    --bg-secondary: #252525;
    --bg-card: rgba(255, 255, 255, 0.08);
    --bg-card-hover: rgba(255, 255, 255, 0.12);

    /* Text Colors */
    --text-primary: #ffffff;
    --text-secondary: #b0b0b0;
    --text-tertiary: #808080;

    /* Border & Shadow */
    --border-color: rgba(255, 255, 255, 0.1);
    --shadow-color: rgba(0, 0, 0, 0.3);

    /* Gradients for Dark Mode */
    --gradient-primary: linear-gradient(135deg, rgba(0, 217, 163, 0.2), rgba(0, 153, 255, 0.2));
    --gradient-card: linear-gradient(135deg, rgba(0, 217, 163, 0.1), rgba(0, 153, 255, 0.1));
  }
}

/**
 * Manual Theme Toggle (Optional)
 * 可选的手动主题切换支持
 */
[data-theme="light"] {
  --bg-primary: #ffffff;
  --bg-secondary: #f5f5f5;
  --bg-card: #ffffff;
  --bg-card-hover: #fafafa;

  --text-primary: #1a1a1a;
  --text-secondary: #666666;
  --text-tertiary: #999999;

  --border-color: #e0e0e0;
  --shadow-color: rgba(0, 0, 0, 0.1);

  --gradient-primary: linear-gradient(135deg, rgba(0, 217, 163, 0.15), rgba(0, 153, 255, 0.15));
  --gradient-card: linear-gradient(135deg, rgba(0, 217, 163, 0.08), rgba(0, 153, 255, 0.08));
}

[data-theme="dark"] {
  --bg-primary: #1a1a1a;
  --bg-secondary: #252525;
  --bg-card: rgba(255, 255, 255, 0.08);
  --bg-card-hover: rgba(255, 255, 255, 0.12);

  --text-primary: #ffffff;
  --text-secondary: #b0b0b0;
  --text-tertiary: #808080;

  --border-color: rgba(255, 255, 255, 0.1);
  --shadow-color: rgba(0, 0, 0, 0.3);

  --gradient-primary: linear-gradient(135deg, rgba(0, 217, 163, 0.2), rgba(0, 153, 255, 0.2));
  --gradient-card: linear-gradient(135deg, rgba(0, 217, 163, 0.1), rgba(0, 153, 255, 0.1));
}

/**
 * Color Scheme Support
 * 告诉浏览器支持亮色和暗色模式
 */
:root {
  color-scheme: light dark;
}
