/* ============================================
   GeekOzon ERP - Design Tokens
   设计语言：Linear/Vercel/Stripe 克制现代风
   靛蓝主色 + 炭黑侧栏 + 冷白底 + 4pt 网格
   ============================================ */

:root {
  /* === 主色调（优雅蓝 — 更沉稳大气）=== */
  --color-primary: #4361EE;
  --color-primary-light: #6C85F7;
  --color-primary-dark: #3A56D4;
  --color-primary-gradient: linear-gradient(135deg, #4361EE 0%, #7B93FF 100%);
  --color-primary-rgb: 67, 97, 238;
  --color-primary-light-rgb: 108, 133, 247;

  /* === 辅助/语义色（饱和度微调，更和谐）=== */
  --color-accent-blue: #3B82F6;
  --color-accent-green: #10B981;
  --color-accent-red: #EF4444;
  --color-accent-purple: #8B5CF6;
  --color-accent-yellow: #F59E0B;
  --color-accent-cyan: #06B6D4;
  --color-accent-orange: #F97316;

  /* === 背景色（更细腻的灰阶层次）=== */
  --bg-body: #F8F9FB;
  --bg-white: #FFFFFF;
  --bg-card: #FFFFFF;
  --bg-sidebar: #FFFFFF;
  --bg-sidebar-hover: #F1F3F9;
  --bg-sidebar-active: rgba(67, 97, 238, 0.07);
  --bg-overlay: rgba(15, 23, 42, 0.50);
  --bg-input: #F1F3F8;
  --bg-secondary: #F5F7FA;
  --bg-hover: #EEF1F8;

  /* === 文字颜色 === */
  --text-primary: #0F172A;
  --text-secondary: #475569;
  --text-tertiary: #94A3B8;
  --text-inverse: #111827;
  --text-sidebar: #374151;
  --text-sidebar-active: #4361EE;
  --text-link: var(--color-primary);

  /* === 边框与分割线 === */
  --border-color: #E2E5EB;
  --border-color-light: #EAECF2;
  --border-color-lighter: #F1F3F7;
  --divider-color: #EDF0F5;

  /* === 阴影（更柔和自然）=== */
  --shadow-xs: 0 1px 2px rgba(15, 23, 42, 0.03);
  --shadow-sm: 0 1px 3px rgba(15, 23, 42, 0.04), 0 1px 2px rgba(15, 23, 42, 0.02);
  --shadow-md: 0 4px 16px rgba(15, 23, 42, 0.06), 0 2px 4px rgba(15, 23, 42, 0.03);
  --shadow-lg: 0 12px 40px rgba(15, 23, 42, 0.08), 0 4px 8px rgba(15, 23, 42, 0.04);
  --shadow-xl: 0 20px 56px rgba(15, 23, 42, 0.12), 0 8px 16px rgba(15, 23, 42, 0.06);
  --shadow-card-hover: 0 12px 36px rgba(67, 97, 238, 0.12), 0 4px 8px rgba(15, 23, 42, 0.04);
  --shadow-primary: 0 4px 16px rgba(67, 97, 238, 0.28);

  /* === 圆角 === */
  --radius-xs: 6px;
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 14px;
  --radius-xl: 18px;
  --radius-2xl: 22px;
  --radius-full: 999px;

  /* === 字体 === */
  --font-display: 'DM Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-body: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-mono: 'JetBrains Mono', 'Consolas', monospace;

  /* === 字号 === */
  --text-xs: 11px;
  --text-sm: 13px;
  --text-base: 14px;
  --text-md: 15px;
  --text-lg: 17px;
  --text-xl: 20px;
  --text-2xl: 24px;
  --text-3xl: 30px;

  /* === 间距 === */
  --space-xs: 4px;
  --space-sm: 8px;
  --space-md: 16px;
  --space-lg: 24px;
  --space-xl: 32px;
  --space-2xl: 48px;

  /* === 布局尺寸 === */
  --header-height: 60px;
  --sidebar-width: 260px;
  --sidebar-collapsed-width: 72px;

  /* === 过渡动画（更丝滑）=== */
  --transition-fast: 0.18s cubic-bezier(0.4, 0, 0.2, 1);
  --transition-base: 0.25s cubic-bezier(0.4, 0, 0.2, 1);
  --transition-slow: 0.35s cubic-bezier(0.4, 0, 0.2, 1);
  --transition-sidebar: 0.3s cubic-bezier(0.22, 1, 0.36, 1);
  --ease-spring: cubic-bezier(0.16, 1, 0.3, 1);
}

/* === 暗色模式变量（预留）=== */
@media (prefers-color-scheme: dark) {
  :root {
    --bg-body: #0B0B11;
    --bg-card: #15151E;
    --bg-input: #1E1E2A;
    --bg-secondary: #1A1A24;
    --bg-hover: #1E1E2A;
    --text-primary: #F1F5F9;
    --text-secondary: #94A3B8;
    --text-tertiary: #64748B;
    --border-color: #2A2A38;
    --border-color-light: #22222E;
    --border-color-lighter: #1E1E2A;
    --divider-color: #1E1E2A;
    --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.3);
    --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.4);
    --shadow-lg: 0 12px 32px rgba(0, 0, 0, 0.5);
  }
}
