/* =====================================================
   CSS Variables - 现代配色体系 v4.0
   设计灵感：Linear + Vercel + Notion
   ===================================================== */

:root {
  /* ===== 主色调（深蓝系，专业、稳重、科技感）===== */
  --primary: #18181B;
  --primary-light: #3F3F46;
  --primary-dark: #09090B;
  --primary-bg: #F4F4F5;
  --primary-gradient: linear-gradient(135deg, #18181B 0%, #3F3F46 100%);

  /* ===== 强调色（琥珀橙，活力、温暖）===== */
  --accent: #F59E0B;
  --accent-light: #FCD34D;
  --accent-bg: #FFFBEB;
  --accent-gradient: linear-gradient(135deg, #F59E0B 0%, #FCD34D 100%);

  /* ===== 功能色 ===== */
  --success: #10B981;
  --success-bg: #ECFDF5;
  --success-border: #A7F3D0;
  --warning: #F59E0B;
  --warning-bg: #FFFBEB;
  --warning-border: #FCD34D;
  --danger: #EF4444;
  --danger-bg: #FEF2F2;
  --danger-border: #FECACA;
  --info: #3B82F6;
  --info-bg: #EFF6FF;
  --info-border: #BFDBFE;

  /* ===== 中性色（温暖灰）===== */
  --text: #18181B;
  --text-secondary: #52525B;
  --text-tertiary: #A1A1AA;
  --text-inverse: #FAFAFA;
  --bg: #FAFAFA;
  --bg-secondary: #F4F4F5;
  --bg-tertiary: #E4E4E7;
  --card: #FFFFFF;
  --card-hover: #F9FAFB;
  --border: #E4E4E7;
  --border-light: #F4F4F5;
  --border-focus: #18181B;

  /* ===== 游戏化专用 ===== */
  --xp-bar: #F59E0B;
  --xp-bar-bg: #FFFBEB;
  --xp-bar-gradient: linear-gradient(90deg, #F59E0B, #FCD34D);
  --streak-fire: #EF4444;
  --streak-fire-bg: #FEF2F2;
  --badge-gold: #F59E0B;
  --badge-locked: #D4D4D8;
  --badge-unlocked: #FCD34D;
  --level-up-glow: 0 0 20px rgba(245, 158, 11, 0.4);

  /* ===== 习惯色彩编码 ===== */
  --habit-h1: #8B5CF6;  /* 紫色 - 决策复盘 */
  --habit-h2: #3B82F6;  /* 蓝色 - 深度思考 */
  --habit-h3: #06B6D4;  /* 青色 - 知识输出 */
  --habit-h5: #F59E0B;  /* 琥珀 - 突破舒适区 */
  --habit-h6: #10B981;  /* 绿色 - 清理信息源 */
  --habit-h7: #EF4444;  /* 红色 - 运动 */
  --habit-h8: #EC4899;  /* 粉色 - 花销记录 */
  --habit-h9: #6366F1;  /* 靛蓝 - 情绪延迟满足 */

  /* ===== 字号阶梯（更科学的8px基准）===== */
  --text-xs: 12px;
  --text-sm: 13px;
  --text-base: 14px;
  --text-lg: 16px;
  --text-xl: 18px;
  --text-2xl: 24px;
  --text-3xl: 30px;
  --text-4xl: 36px;

  /* ===== 字重 ===== */
  --font-normal: 400;
  --font-medium: 500;
  --font-semibold: 600;
  --font-bold: 700;

  /* ===== 间距（8px基准）===== */
  --space-0: 0;
  --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;

  /* ===== 圆角（更现代）===== */
  --radius-xs: 6px;
  --radius-sm: 8px;
  --radius: 12px;
  --radius-md: 16px;
  --radius-lg: 20px;
  --radius-xl: 24px;
  --radius-full: 9999px;

  /* ===== 阴影（更精致）===== */
  --shadow-xs: 0 1px 2px rgba(0,0,0,0.04);
  --shadow-sm: 0 1px 3px rgba(0,0,0,0.06), 0 1px 2px rgba(0,0,0,0.04);
  --shadow: 0 4px 6px -1px rgba(0,0,0,0.07), 0 2px 4px -2px rgba(0,0,0,0.05);
  --shadow-md: 0 10px 15px -3px rgba(0,0,0,0.08), 0 4px 6px -4px rgba(0,0,0,0.04);
  --shadow-lg: 0 20px 25px -5px rgba(0,0,0,0.1), 0 8px 10px -6px rgba(0,0,0,0.04);
  --shadow-xl: 0 25px 50px -12px rgba(0,0,0,0.2);

  /* ===== 布局 ===== */
  --header-height: 56px;
  --tabbar-height: 64px;
  --content-max: 720px;
  --content-wide: 960px;
  --sidebar-width: 280px;

  /* ===== 过渡 ===== */
  --transition-fast: 150ms cubic-bezier(0.4, 0, 0.2, 1);
  --transition: 200ms cubic-bezier(0.4, 0, 0.2, 1);
  --transition-slow: 300ms cubic-bezier(0.4, 0, 0.2, 1);
  --transition-bounce: 500ms cubic-bezier(0.34, 1.56, 0.64, 1);

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

/* ===== 暗色模式变量 ===== */
[data-theme="dark"] {
  --primary: #FAFAFA;
  --primary-light: #D4D4D8;
  --primary-dark: #FFFFFF;
  --primary-bg: #27272A;
  --primary-gradient: linear-gradient(135deg, #27272A 0%, #3F3F46 100%);

  --accent: #FCD34D;
  --accent-light: #F59E0B;
  --accent-bg: #27272A;
  --accent-gradient: linear-gradient(135deg, #FCD34D 0%, #F59E0B 100%);

  --text: #FAFAFA;
  --text-secondary: #A1A1AA;
  --text-tertiary: #71717A;
  --text-inverse: #18181B;
  --bg: #09090B;
  --bg-secondary: #18181B;
  --bg-tertiary: #27272A;
  --card: #18181B;
  --card-hover: #27272A;
  --border: #27272A;
  --border-light: #18181B;
  --border-focus: #FAFAFA;

  --success-bg: #052E16;
  --success-border: #166534;
  --warning-bg: #422006;
  --warning-border: #B45309;
  --danger-bg: #450A0A;
  --danger-border: #B91C1C;
  --info-bg: #172554;
  --info-border: #1D4ED8;

  --shadow-xs: 0 1px 2px rgba(0,0,0,0.2);
  --shadow-sm: 0 1px 3px rgba(0,0,0,0.3), 0 1px 2px rgba(0,0,0,0.2);
  --shadow: 0 4px 6px rgba(0,0,0,0.3);
  --shadow-md: 0 10px 15px rgba(0,0,0,0.4);
  --shadow-lg: 0 20px 25px rgba(0,0,0,0.5);
}
