/* INTEGRA Mental Health Hub — Design Tokens */

:root {
  /* Brand colors */
  --color-primary-green:       #008000;
  --color-primary-purple:      #800080;
  --color-green-dark:          #006600;
  --color-green-mid:           #2d8e2d;
  --color-green-light:         #e8f5e8;
  --color-green-xlight:        #f2faf2;
  --color-purple-dark:         #660066;
  --color-purple-mid:          #9b2f9b;
  --color-purple-light:        #f5e8f5;
  --color-purple-xlight:       #faf2fa;

  /* Neutral palette */
  --color-bg:                  #ffffff;
  --color-surface:             #f7f7f8;
  --color-surface-alt:         #f1f2f4;
  --color-border:              #e4e5e9;
  --color-border-strong:       #cfd1d6;
  --color-text:                #18181b;
  --color-text-soft:           #3f3f46;
  --color-text-faint:          #5c5e66;
  --color-text-xfaint:         #71737b;
  --color-white:               #ffffff;
  --color-error:               #c0392b;
  --color-error-bg:            #fdf2f2;
  --color-success:             #217a21;
  --color-success-bg:          #edf7ed;
  --color-warning:             #9a6500;
  --color-warning-bg:          #fef9e7;
  --color-info:                #1a5fa8;
  --color-info-bg:             #eaf2fb;

  /* Status colors */
  --color-status-pending:      #9a6500;
  --color-status-confirmed:    #217a21;
  --color-status-cancelled:    #c0392b;
  --color-status-completed:    #1a5fa8;
  --color-status-rejected:     #7d3c98;

  /* Typography */
  --font-display: 'Fraunces', Georgia, 'Times New Roman', serif;
  --font-body:    'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;

  --font-size-2xs: clamp(0.625rem, 1.5vw, 0.75rem);
  --font-size-xs:  clamp(0.75rem,  1.8vw, 0.875rem);
  --font-size-sm:  clamp(0.875rem, 2vw,   1rem);
  --font-size-md:  clamp(1rem,     2.2vw, 1.125rem);
  --font-size-lg:  clamp(1.125rem, 2.5vw, 1.25rem);
  --font-size-xl:  clamp(1.25rem,  3vw,   1.5rem);
  --font-size-2xl: clamp(1.5rem,   3.5vw, 2rem);
  --font-size-3xl: clamp(1.75rem,  4vw,   2.5rem);
  --font-size-4xl: clamp(2rem,     5vw,   3.25rem);

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

  --line-height-tight:  1.2;
  --line-height-snug:   1.4;
  --line-height-normal: 1.6;
  --line-height-loose:  1.8;

  /* Spacing */
  --space-2xs: 0.25rem;
  --space-xs:  0.5rem;
  --space-sm:  0.75rem;
  --space-md:  1rem;
  --space-lg:  1.5rem;
  --space-xl:  2rem;
  --space-2xl: 3rem;
  --space-3xl: 4rem;
  --space-4xl: 6rem;

  /* Layout */
  --container-sm:   640px;
  --container-md:   768px;
  --container-lg:   1024px;
  --container-xl:   1280px;
  --container-2xl:  1440px;

  /* Radius */
  --radius-xs:  2px;
  --radius-sm:  4px;
  --radius-md:  8px;
  --radius-lg:  12px;
  --radius-xl:  16px;
  --radius-2xl: 24px;
  --radius-full: 9999px;

  /* Shadow */
  --shadow-xs: 0 1px 2px rgba(0,0,0,.04);
  --shadow-sm: 0 1px 4px rgba(0,0,0,.07), 0 1px 2px rgba(0,0,0,.04);
  --shadow-md: 0 4px 12px rgba(0,0,0,.08), 0 2px 4px rgba(0,0,0,.04);
  --shadow-lg: 0 8px 24px rgba(0,0,0,.10), 0 4px 8px rgba(0,0,0,.05);
  --shadow-xl: 0 16px 40px rgba(0,0,0,.12);

  /* Transitions */
  --transition-fast:   150ms ease;
  --transition-normal: 250ms ease;
  --transition-slow:   400ms ease;

  /* Z-index */
  --z-base:    1;
  --z-dropdown: 100;
  --z-sticky:  200;
  --z-overlay: 300;
  --z-modal:   400;
  --z-toast:   500;
}
