/* Design Tokens — The Grey Glove Technology Concierge */

:root {
  /* Primary Colors */
  --color-navy: #0B1E3D;
  --color-navy-gradient: #142D54;
  --color-cyan: #00AAEF;
  --color-cyan-accessible: #0088BF; /* 4.5:1 on white — use for text/links */
  --color-cyan-hover: #0077A8;
  --color-white: #FFFFFF;

  /* Secondary Colors */
  --color-chrome: #B0B8C1;
  --color-steel: #6B7280;
  --color-soft-gray: #F3F4F6;
  --color-calm-blue: #1E3A5F;
  --color-success: #10B981;
  --color-warning: #F59E0B;
  --color-danger: #EF4444;

  /* Neutral */
  --color-border: #E5E7EB;
  --color-disabled-bg: #E5E7EB;
  --color-disabled-text: #9CA3AF;
  --color-text: #1F2937;
  --color-text-light: #4B5563;

  /* Typography — Families */
  --font-heading: 'Montserrat', 'Segoe UI', Arial, sans-serif;
  --font-body: 'Open Sans', 'Segoe UI', Helvetica, sans-serif;

  /* Typography — Sizes */
  --text-xs: 0.75rem;    /* 12px */
  --text-sm: 0.875rem;   /* 14px */
  --text-base: 1rem;     /* 16px */
  --text-lg: 1.125rem;   /* 18px */
  --text-xl: 1.25rem;    /* 20px */
  --text-2xl: 1.5rem;    /* 24px */
  --text-3xl: 2rem;      /* 32px */
  --text-4xl: 2.5rem;    /* 40px */

  /* Typography — Line Heights */
  --leading-tight: 1.2;
  --leading-snug: 1.25;
  --leading-normal: 1.3;
  --leading-relaxed: 1.5;
  --leading-loose: 1.6;

  /* Typography — Weights */
  --weight-regular: 400;
  --weight-medium: 500;
  --weight-semibold: 600;
  --weight-bold: 700;

  /* Spacing */
  --space-xs: 0.25rem;   /* 4px */
  --space-sm: 0.5rem;    /* 8px */
  --space-md: 1rem;      /* 16px */
  --space-lg: 1.5rem;    /* 24px */
  --space-xl: 2rem;      /* 32px */
  --space-2xl: 3rem;     /* 48px */
  --space-3xl: 4rem;     /* 64px */
  --space-4xl: 6rem;     /* 96px */

  /* Layout */
  --container-max: 1200px;
  --container-narrow: 800px;
  --container-padding: 1.5rem;

  /* Borders & Radius */
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 12px;
  --radius-full: 9999px;
  --border-thin: 1px solid var(--color-border);
  --border-accent: 2px solid var(--color-cyan);

  /* Shadows */
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.05);
  --shadow-md: 0 1px 3px rgba(0, 0, 0, 0.1);
  --shadow-lg: 0 4px 12px rgba(0, 0, 0, 0.1);
  --shadow-xl: 0 8px 24px rgba(0, 0, 0, 0.12);

  /* Transitions */
  --transition-fast: 150ms ease;
  --transition-base: 250ms ease;

  /* Z-index Scale */
  --z-header: 100;
  --z-overlay: 200;
  --z-modal: 300;
  --z-scroll-top: 50;

  /* Focus */
  --focus-outline: 3px solid var(--color-cyan);
  --focus-offset: 2px;
}
