/* ============================================================
   DESIGN TOKENS
   Single source of truth for all visual values.
   To retheme the site, only edit this file.
   ============================================================ */

:root {
  /* --- Backgrounds --- */
  --bg-primary:        #080808;
  --bg-secondary:      #0d0d0d;
  --bg-card:           #111111;
  --bg-card-hover:     #161616;
  --bg-overlay:        rgba(8, 8, 8, 0.92);

  /* --- Borders --- */
  --border:            #1c1c1c;
  --border-hover:      #2e2e2e;
  --border-accent:     rgba(0, 212, 255, 0.3);

  /* --- Text --- */
  --text-primary:      #f0f0f0;
  --text-secondary:    #888888;
  --text-muted:        #505050;
  --text-inverse:      #080808;

  /* --- Accent Colors --- */
  --accent:            #00d4ff;
  --accent-dim:        rgba(0, 212, 255, 0.08);
  --accent-border:     rgba(0, 212, 255, 0.25);
  --accent-green:      #00e887;
  --accent-green-dim:  rgba(0, 232, 135, 0.08);

  /* --- Typography --- */
  --font-sans:         'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-display:      'Syne', 'Inter', sans-serif;
  --font-mono:         'JetBrains Mono', 'Fira Code', 'Courier New', monospace;

  --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 */
  --text-7xl:   4.5rem;     /* 72px */

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

  --leading-tight:  1.1;
  --leading-snug:   1.3;
  --leading-normal: 1.6;
  --leading-loose:  1.8;

  /* --- 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;
  --space-24:  6rem;
  --space-32:  8rem;

  /* --- Layout --- */
  --container-max:   1200px;
  --container-wide:  1400px;
  --container-pad:   clamp(1.25rem, 5vw, 2.5rem);

  /* --- Borders & Radius --- */
  --radius-sm:   4px;
  --radius-md:   8px;
  --radius-lg:   12px;
  --radius-xl:   16px;
  --radius-full: 9999px;

  /* --- Shadows --- */
  --shadow-sm:   0 1px 3px rgba(0, 0, 0, 0.4);
  --shadow-md:   0 4px 16px rgba(0, 0, 0, 0.5);
  --shadow-lg:   0 8px 32px rgba(0, 0, 0, 0.6);
  --shadow-accent: 0 0 24px rgba(0, 212, 255, 0.12);

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

  /* --- Z-index scale --- */
  --z-base:    0;
  --z-raised:  10;
  --z-overlay: 100;
  --z-nav:     200;
  --z-modal:   300;
}
