/* Design tokens — Beijing Yinglite Construction Corporate Theme */
:root {
  --color-bg: #FFFFFF;
  --color-bg-subtle: #F8FAFC;
  --color-bg-elevated: #FFFFFF;
  --color-surface-dark: #0A192F;
  --color-surface-dark-2: #0F325E;
  --color-text: #1E293B;
  --color-text-muted: #64748B;
  --color-heading: #0F172A;

  --color-primary: #0052A3;
  --color-primary-hover: #003D7A;
  --color-primary-light: #EBF3FC;
  --color-primary-glow: rgba(0, 82, 163, 0.35);

  --color-accent: #D92D3A;
  --color-accent-hover: #D90429;
  --color-accent-light: #FDECEE;
  --color-accent-glow: rgba(217, 45, 58, 0.35);

  --color-gold: #D97706;
  --color-gold-light: #FEF3C7;

  --color-secondary: #475569;
  --color-success: #10B981;
  --color-error: #EF4444;
  --color-border: #E2E8F0;
  --color-border-glow: rgba(0, 82, 163, 0.2);
  --color-focus-ring: #0052A3;

  --gradient-hero: linear-gradient(135deg, #071324 0%, #0F325E 60%, #154580 100%);
  --gradient-primary: linear-gradient(135deg, #0052A3 0%, #0066CC 100%);
  --gradient-accent: linear-gradient(135deg, #D92D3A 0%, #FF5A36 100%);
  --gradient-card: linear-gradient(145deg, #FFFFFF 0%, #F8FAFC 100%);
  --gradient-text: linear-gradient(135deg, #0052A3 0%, #D92D3A 55%, #0052A3 100%);

  --font-family-display: "Outfit", "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
  --font-family-sans: "Noto Sans SC", system-ui, -apple-system, "Segoe UI", "PingFang SC",
    "Microsoft YaHei", "Helvetica Neue", sans-serif;
  --font-family-mono: "JetBrains Mono", ui-monospace, Consolas, monospace;

  --font-size-xs: 0.75rem;
  --font-size-sm: 0.875rem;
  --font-size-base: 1rem;
  --font-size-lg: 1.125rem;
  --font-size-xl: 1.25rem;
  --font-size-2xl: 1.5rem;
  --font-size-3xl: 2rem;
  --font-size-4xl: 2.75rem;
  --font-size-5xl: 3.5rem;

  --line-height-normal: 1.7;
  --line-height-tight: 1.15;
  --line-height-snug: 1.35;

  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  --font-weight-extrabold: 800;

  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.25rem;
  --space-6: 1.5rem;
  --space-8: 2rem;
  --space-10: 2.5rem;
  --space-12: 3rem;
  --space-16: 4rem;
  --space-20: 5rem;

  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 16px;
  --radius-xl: 24px;
  --radius-full: 9999px;

  --shadow-sm: 0 1px 3px rgba(15, 23, 42, 0.06);
  --shadow-md: 0 8px 24px rgba(15, 23, 42, 0.08);
  --shadow-lg: 0 16px 48px rgba(15, 23, 42, 0.12);
  --shadow-glow: 0 0 24px var(--color-primary-glow);
  --shadow-glow-accent: 0 0 32px var(--color-accent-glow);

  --duration-fast: 150ms;
  --duration-normal: 250ms;
  --duration-slow: 400ms;
  --duration-slower: 600ms;
  --ease-default: cubic-bezier(0.4, 0, 0.2, 1);
  --ease-in: cubic-bezier(0.4, 0, 1, 1);
  --ease-out: cubic-bezier(0, 0, 0.2, 1);
  --ease-out-back: cubic-bezier(0.34, 1.56, 0.64, 1);
  --ease-out-expo: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);

  --touch-target-min: 2.75rem;

  --container-sm: 640px;
  --container-md: 768px;
  --container-lg: 1024px;
  --container-xl: 1200px;
  --container-xxl: 1400px;

  --header-height: 4.5rem;
  --header-height-compact: 3.75rem;
  --z-header: 1000;
  --z-drawer: 1100;
  --z-backdrop: 1050;
  --z-floating: 900;
  --z-toast: 1200;
  --z-overlay: var(--z-drawer);
  --z-back-to-top: var(--z-floating);
}
