/* ============================================
   KFORCE — Design Tokens
   Color, Typography, Spacing, Shadows, Radius
   ============================================ */

:root {
  /* ---- Brand Colors (Refined from Logo) ---- */
  --color-primary:         #1B2E4F;
  --color-primary-rgb:     27, 46, 79;
  --color-primary-dark:    #0F1D33;
  --color-primary-light:   #2A4470;
  --color-primary-lighter: #3A5A8C;
  --color-primary-subtle:  #E8EDF4;

  --color-accent:          #C41E2A;
  --color-accent-rgb:      196, 30, 42;
  --color-accent-dark:     #9A1820;
  --color-accent-light:    #E03540;
  --color-accent-subtle:   #FDE8E9;

  /* ---- Neutrals ---- */
  --color-white:           #FFFFFF;
  --color-bg:              #FAFAF9;
  --color-bg-alt:          #F3F3F1;
  --color-surface:         #FFFFFF;
  --color-text:            #1A1A1A;
  --color-text-secondary:  #4A4A4A;
  --color-text-muted:      #7A7A7A;
  --color-text-on-dark:    #FFFFFF;
  --color-text-on-dark-muted: rgba(255, 255, 255, 0.7);
  --color-border:          #E5E5E3;
  --color-border-light:    #F0F0EE;

  /* ---- Typography ---- */
  --font-heading: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-body:    'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;

  --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:  1.875rem;    /* 30px */
  --text-4xl:  2.25rem;     /* 36px */
  --text-5xl:  3rem;        /* 48px */
  --text-6xl:  3.75rem;     /* 60px */

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

  --leading-tight:   1.2;
  --leading-snug:    1.35;
  --leading-normal:  1.6;
  --leading-relaxed: 1.75;

  /* ---- Spacing (4px base) ---- */
  --space-1:  0.25rem;   /* 4px */
  --space-2:  0.5rem;    /* 8px */
  --space-3:  0.75rem;   /* 12px */
  --space-4:  1rem;      /* 16px */
  --space-5:  1.25rem;   /* 20px */
  --space-6:  1.5rem;    /* 24px */
  --space-8:  2rem;      /* 32px */
  --space-10: 2.5rem;    /* 40px */
  --space-12: 3rem;      /* 48px */
  --space-16: 4rem;      /* 64px */
  --space-20: 5rem;      /* 80px */
  --space-24: 6rem;      /* 96px */
  --space-32: 8rem;      /* 128px */

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

  /* ---- Shadows ---- */
  --shadow-xs:  0 1px 2px rgba(0, 0, 0, 0.04);
  --shadow-sm:  0 1px 3px rgba(0, 0, 0, 0.06), 0 1px 2px rgba(0, 0, 0, 0.04);
  --shadow-md:  0 4px 6px -1px rgba(0, 0, 0, 0.07), 0 2px 4px -2px rgba(0, 0, 0, 0.04);
  --shadow-lg:  0 10px 15px -3px rgba(0, 0, 0, 0.07), 0 4px 6px -4px rgba(0, 0, 0, 0.03);
  --shadow-xl:  0 20px 25px -5px rgba(0, 0, 0, 0.08), 0 8px 10px -6px rgba(0, 0, 0, 0.03);
  --shadow-card: 0 1px 3px rgba(0, 0, 0, 0.04), 0 6px 16px rgba(0, 0, 0, 0.06);

  /* ---- Transitions ---- */
  --ease-out:     cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in-out:  cubic-bezier(0.65, 0, 0.35, 1);
  --transition-fast:   150ms var(--ease-out);
  --transition-normal: 280ms var(--ease-out);
  --transition-slow:   400ms var(--ease-out);

  /* ---- Layout ---- */
  --container-max:     1200px;
  --container-wide:    1400px;
  --container-padding: 1.5rem;
  --navbar-height:     72px;
  --topbar-height:     44px;

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