:root {

  color-scheme: light;

  --khan-red: #FF0000;
  --khan-red-hover: #E00000;
  --khan-red-active: #C40000;
  --khan-gray: #E5E5E5;
  --khan-black: #0A0A0A;
  --khan-white: #FFFFFF;

  --color-bg-primary: var(--khan-gray);
  --color-bg-secondary: var(--khan-white);
  --color-bg-tertiary: #D6D6D6;
  --color-bg-inverse: var(--khan-black);

  --color-text-primary: var(--khan-black);
  --color-text-secondary: #4A4A4A;
  --color-text-tertiary: #7A7A7A;
  --color-text-inverse: var(--khan-white);
  --color-text-link: var(--khan-red);

  --color-border-primary: var(--khan-black);
  --color-border-secondary: #B5B5B5;
  --color-border-focus: var(--khan-red);

  --color-accent-primary: var(--khan-red);
  --color-accent-primary-hover: var(--khan-red-hover);
  --color-accent-primary-active: var(--khan-red-active);
  --color-accent-secondary: var(--khan-black);

  --color-status-success: #1A7F37;
  --color-status-warning: #B36B00;
  --color-status-error: var(--khan-red);
  --color-status-info: #1F5FBF;

  --color-surface-overlay: rgba(10, 10, 10, 0.6);

  --color-logo-bg: var(--khan-red);
  --color-logo-text: var(--khan-white);

  --font-family-display: "Archivo Black", "Helvetica Neue", Arial, sans-serif;
  --font-family-body: "Archivo", "Helvetica Neue", Arial, sans-serif;
  --font-family-mono: "SFMono-Regular", Consolas, monospace;

  --font-size-xs: 0.75rem;
  --font-size-sm: 0.875rem;
  --font-size-base: 1rem;
  --font-size-md: 1.125rem;
  --font-size-lg: 1.375rem;
  --font-size-xl: clamp(1.75rem, 2.5vw, 2.25rem);
  --font-size-2xl: clamp(2.25rem, 4vw, 3.25rem);
  --font-size-3xl: clamp(2.75rem, 5vw, 4.25rem);
  --font-size-4xl: clamp(3rem, 7vw, 5.5rem);

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

  --line-height-tight: 1.1;
  --line-height-normal: 1.45;
  --line-height-relaxed: 1.65;

  --letter-spacing-tight: -0.02em;
  --letter-spacing-normal: 0;
  --letter-spacing-wide: 0.02em;

  --space-0: 0;
  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.5rem;
  --space-6: 2rem;
  --space-7: 3rem;
  --space-8: 4rem;
  --space-9: 6rem;
  --space-10: 8rem;
  --space-11: 12rem;
  --space-12: 16rem;

  --max-width-content: 65ch;
  --max-width-wide: 1200px;
  --max-width-page: 1440px;

  --border-radius-sm: 0;
  --border-radius-md: 0;
  --border-radius-lg: 0;
  --border-radius-full: 0;

  --border-width: 6px;

  --shadow-sm: none;
  --shadow-md: none;
  --shadow-lg: none;
  --shadow-focus: 0 0 0 3px var(--khan-red);

  --rotate-sm: 5deg;
  --rotate-md: 10deg;
  --rotate-lg: 15deg;

  --duration-instant: 50ms;
  --duration-fast: 150ms;
  --duration-normal: 250ms;
  --duration-slow: 400ms;
  --duration-slower: 600ms;

  --easing-default: cubic-bezier(0.4, 0, 0.2, 1);
  --easing-in: cubic-bezier(0.4, 0, 1, 1);
  --easing-out: cubic-bezier(0, 0, 0.2, 1);
  --easing-bounce: cubic-bezier(0.34, 1.56, 0.64, 1);

  --breakpoint-sm: 375px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 1024px;
  --breakpoint-xl: 1280px;
  --breakpoint-2xl: 1536px;
}

[data-theme="dark"] {
  --color-bg-primary: #141414;
  --color-bg-secondary: #1E1E1E;
  --color-bg-tertiary: #2A2A2A;
  --color-bg-inverse: var(--khan-gray);

  --color-text-primary: #F2F2F2;
  --color-text-secondary: #B8B8B8;
  --color-text-tertiary: #8A8A8A;
  --color-text-inverse: var(--khan-black);
  --color-text-link: var(--khan-red);

  --color-border-primary: #F2F2F2;
  --color-border-secondary: #3A3A3A;
  --color-border-focus: var(--khan-red);

  --color-accent-secondary: var(--khan-white);
  --color-surface-overlay: rgba(0, 0, 0, 0.75);
}
