/* OmniResume design tokens */

:root {
  color-scheme: light dark;

  --font-sans: "Inter", "Inter Variable", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --font-serif: "Source Serif 4", "Source Serif Variable", Georgia, "Times New Roman", serif;
  --font-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;

  --text-xs: 0.75rem;
  --text-sm: 0.875rem;
  --text-base: 1rem;
  --text-lg: 1.125rem;
  --text-xl: 1.25rem;
  --text-2xl: 1.5rem;
  --text-3xl: 1.875rem;
  --text-4xl: 2.25rem;
  --text-5xl: 3rem;
  --text-6xl: 3.75rem;

  --leading-tight: 1.15;
  --leading-snug: 1.3;
  --leading-normal: 1.55;
  --leading-relaxed: 1.75;

  --weight-regular: 400;
  --weight-medium: 500;
  --weight-semibold: 600;
  --weight-bold: 700;

  --space-0: 0;
  --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;
  --space-24: 6rem;

  --radius-xs: 4px;
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 14px;
  --radius-xl: 20px;
  --radius-full: 9999px;

  --container-narrow: 68ch;
  --container-base: 1200px;
  --container-wide: 1440px;

  --dur-fast: 120ms;
  --dur-base: 200ms;
  --dur-slow: 320ms;
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);

  --z-base: 1;
  --z-dropdown: 100;
  --z-sticky: 200;
  --z-modal: 400;
  --z-toast: 500;
}

:root,
[data-theme="light"] {
  --surface-0: #f7f7f5;
  --surface-1: #ffffff;
  --surface-2: #ffffff;
  --surface-3: #f1f1ee;

  --text-1: #0d1b2a;
  --text-2: #3a4757;
  --text-3: #6b7686;

  --border-1: #e6e6e2;
  --border-2: #d5d5cf;
  --border-3: #b8b8b0;

  --accent: #1f3a5f;
  --accent-hover: #16293f;
  --accent-soft: #eaeef4;
  --accent-contrast: #ffffff;

  --success: #1c7a4a;
  --success-soft: #e6f4ec;
  --warning: #a06a12;
  --warning-soft: #fbf1dc;
  --danger: #a83232;
  --danger-soft: #f8e6e6;
  --info: #1f3a5f;
  --info-soft: #eaeef4;

  --focus-ring: 0 0 0 3px rgba(31, 58, 95, 0.28);

  --shadow-1: 0 1px 2px rgba(13, 27, 42, 0.05), 0 1px 1px rgba(13, 27, 42, 0.03);
  --shadow-2: 0 10px 30px rgba(13, 27, 42, 0.14), 0 2px 6px rgba(13, 27, 42, 0.06);

  --scrim: rgba(13, 27, 42, 0.5);
}

[data-theme="dark"] {
  --surface-0: #0b1017;
  --surface-1: #121a24;
  --surface-2: #182230;
  --surface-3: #1f2b3a;

  --text-1: #eef1f5;
  --text-2: #c2c9d2;
  --text-3: #8a94a1;

  --border-1: #22303f;
  --border-2: #2d3d4f;
  --border-3: #3e5065;

  --accent: #7ea6d6;
  --accent-hover: #a3c2e6;
  --accent-soft: #1c2a3d;
  --accent-contrast: #0b1017;

  --success: #62b98b;
  --success-soft: #14281f;
  --warning: #d9a350;
  --warning-soft: #2a2113;
  --danger: #e07070;
  --danger-soft: #2c1717;
  --info: #7ea6d6;
  --info-soft: #1c2a3d;

  --focus-ring: 0 0 0 3px rgba(126, 166, 214, 0.35);

  --shadow-1: 0 1px 2px rgba(0, 0, 0, 0.4);
  --shadow-2: 0 20px 40px rgba(0, 0, 0, 0.55), 0 4px 10px rgba(0, 0, 0, 0.35);

  --scrim: rgba(0, 0, 0, 0.65);
}

@media (prefers-reduced-motion: reduce) {
  :root {
    --dur-fast: 0ms;
    --dur-base: 0ms;
    --dur-slow: 0ms;
  }
}