/* ═══════════════════════════════════════════════
   LEDGER DESIGN SYSTEM — Design Tokens
   Erick Mumo Bookkeeping Portfolio
   ═══════════════════════════════════════════════ */

:root {
  /* ── Color Palette ── */
  --ink:     #0B1D26;
  --slate:   #1E3A4F;
  --teal:    #2A9D8F;
  --sage:    #4ECDC4;
  --cream:   #F7F5F0;
  --ivory:   #FFFEF9;
  --gold:    #D4A843;
  --coral:   #E76F51;
  --mist:    #E8E4DE;

  /* ── Derived Colors ── */
  --ink-90:     rgba(11, 29, 38, 0.9);
  --ink-80:     rgba(11, 29, 38, 0.8);
  --ink-60:     rgba(11, 29, 38, 0.6);
  --teal-10:    rgba(42, 157, 143, 0.1);
  --teal-20:    rgba(42, 157, 143, 0.2);
  --sage-20:    rgba(78, 205, 196, 0.2);
  --gold-20:    rgba(212, 168, 67, 0.2);
  --coral-20:   rgba(231, 111, 81, 0.2);
  --white-10:   rgba(255, 255, 255, 0.1);
  --white-05:   rgba(255, 255, 255, 0.05);

  /* ── Typography ── */
  --font-heading: 'Outfit', sans-serif;
  --font-body:    'Inter', sans-serif;
  --font-mono:    'DM Mono', monospace;

  --fs-xs:   0.75rem;
  --fs-sm:   0.875rem;
  --fs-base: 1rem;
  --fs-md:   1.125rem;
  --fs-lg:   1.25rem;
  --fs-xl:   1.5rem;
  --fs-2xl:  2rem;
  --fs-3xl:  2.5rem;
  --fs-4xl:  3.25rem;
  --fs-5xl:  4rem;

  --fw-light:    300;
  --fw-regular:  400;
  --fw-medium:   500;
  --fw-semibold: 600;
  --fw-bold:     700;
  --fw-heavy:    800;

  --lh-tight:    1.2;
  --lh-snug:     1.35;
  --lh-normal:   1.6;

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

  /* ── Border Radius ── */
  --radius-sm:   6px;
  --radius-md:   10px;
  --radius-lg:   16px;
  --radius-xl:   24px;
  --radius-full: 9999px;

  /* ── Shadows ── */
  --shadow-sm:   0 1px 3px rgba(11, 29, 38, 0.08);
  --shadow-md:   0 4px 16px rgba(11, 29, 38, 0.12);
  --shadow-lg:   0 8px 32px rgba(11, 29, 38, 0.16);
  --shadow-xl:   0 16px 48px rgba(11, 29, 38, 0.2);
  --shadow-glow: 0 0 30px rgba(42, 157, 143, 0.3);
  --shadow-gold: 0 0 20px rgba(212, 168, 67, 0.25);

  /* ── Transitions ── */
  --transition-fast: 0.15s ease;
  --transition:      0.3s cubic-bezier(0.4, 0, 0.2, 1);
  --transition-slow: 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  --transition-spring: 0.6s cubic-bezier(0.34, 1.56, 0.64, 1);

  /* ── Layout ── */
  --container-max: 1200px;
  --sidebar-width: 260px;
  --header-height: 72px;

  /* ── Z-index ── */
  --z-header:  100;
  --z-sidebar: 200;
  --z-modal:   300;
  --z-toast:   400;
}
