:root {
  /* Brand Palette - Calming Clinical Teal & Trustworthy Deep Slate */
  --color-primary: #0284c7;        /* Medical Sky / Teal */
  --color-primary-hover: #0369a1;
  --color-primary-light: #e0f2fe;
  --color-primary-dark: #075985;
  
  --color-secondary: #0d9488;      /* Healthcare Mint / Emerald */
  --color-secondary-hover: #0f766e;
  --color-secondary-light: #ccfbf1;
  
  --color-accent: #f59e0b;         /* Warm Amber for alerts/stars */
  --color-danger: #ef4444;         /* Error & Emergency */
  --color-danger-light: #fee2e2;
  --color-success: #10b981;        /* Confirmation & Available */
  --color-success-light: #d1fae5;
  --color-warning: #f97316;
  --color-warning-light: #ffedd5;

  /* Neutrals & Surfaces (Light Mode) */
  --color-bg: #f8fafc;
  --color-surface: #ffffff;
  --color-surface-elevated: #ffffff;
  --color-border: #e2e8f0;
  --color-border-subtle: #f1f5f9;
  
  --color-text: #0f172a;
  --color-text-muted: #64748b;
  --color-text-subtle: #94a3b8;
  --color-text-inverse: #ffffff;

  /* Typography */
  --font-sans: 'Plus Jakarta Sans', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
  --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;

  /* Fluid Type Scale via clamp() */
  --text-xs: clamp(0.75rem, 0.7rem + 0.25vw, 0.8125rem);
  --text-sm: clamp(0.84rem, 0.8rem + 0.2vw, 0.925rem);
  --text-base: clamp(0.95rem, 0.9rem + 0.25vw, 1.05rem);
  --text-lg: clamp(1.1rem, 1.02rem + 0.4vw, 1.25rem);
  --text-xl: clamp(1.25rem, 1.15rem + 0.6vw, 1.5rem);
  --text-2xl: clamp(1.5rem, 1.35rem + 0.8vw, 1.875rem);
  --text-3xl: clamp(1.85rem, 1.65rem + 1.2vw, 2.35rem);
  --text-4xl: clamp(2.25rem, 1.95rem + 1.8vw, 3rem);

  /* Spacing */
  --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;

  /* Layout & Containers */
  --container-sm: 640px;
  --container-md: 768px;
  --container-lg: 1024px;
  --container-xl: 1200px;
  --container-padding: clamp(1rem, 4vw, 2rem);

  /* Elevation Shadows */
  --shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05);
  --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.08), 0 2px 4px -2px rgb(0 0 0 / 0.06);
  --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.08), 0 4px 6px -4px rgb(0 0 0 / 0.04);
  --shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.05);

  /* Borders & Radii */
  --radius-sm: 0.375rem;
  --radius-md: 0.5rem;
  --radius-lg: 0.75rem;
  --radius-xl: 1rem;
  --radius-full: 9999px;

  /* Transitions */
  --transition-fast: 150ms cubic-bezier(0.4, 0, 0.2, 1);
  --transition-normal: 250ms cubic-bezier(0.4, 0, 0.2, 1);
  --transition-slow: 350ms cubic-bezier(0.4, 0, 0.2, 1);

  /* Interactive Standards */
  --min-touch-target: 44px;
  --focus-ring: 2px solid var(--color-primary);
  --focus-offset: 2px;
}

/* Dark Mode Preference Support */
@media (prefers-color-scheme: dark) {
  :root {
    --color-bg: #0b1120;
    --color-surface: #1e293b;
    --color-surface-elevated: #334155;
    --color-border: #334155;
    --color-border-subtle: #1e293b;

    --color-text: #f1f5f9;
    --color-text-muted: #94a3b8;
    --color-text-subtle: #64748b;
    --color-text-inverse: #0f172a;

    --color-primary-light: #0c4a6e;
    --color-secondary-light: #134e4a;
    --color-danger-light: #450a0a;
    --color-success-light: #064e3b;
    --color-warning-light: #431407;

    --shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.3);
    --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.4);
    --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.5);
  }
}
