/* ============================================
   KAROL FEITOSA — DESIGN SYSTEM TOKENS
   Cores, tipografia, espaçamentos, utilitários
   ============================================ */

:root {

  /* ——————————————————————————————
     CORES
  —————————————————————————————— */

  /* Paleta da marca */
  --color-purple:     #5A64F0;
  --color-pink:       #FF2FA2;
  --color-turquoise:  #00DFF3;
  --color-off-white:  #EFEFF1;
  --color-soft-black: #22272A;
  --color-white:      #FFFFFF;

  /* Semânticas */
  --color-bg:         var(--color-off-white);
  --color-bg-dark:    var(--color-soft-black);
  --color-text:       var(--color-soft-black);
  --color-text-muted: #6B7480;
  --color-text-light: var(--color-white);
  --color-primary:    var(--color-purple);
  --color-accent:     var(--color-pink);
  --color-secondary:  var(--color-turquoise);

  /* Gradientes */
  --gradient-brand:   linear-gradient(135deg, var(--color-purple) 0%, var(--color-pink) 100%);
  --gradient-vivid:   linear-gradient(135deg, var(--color-purple) 0%, var(--color-pink) 55%, var(--color-turquoise) 100%);
  --gradient-dark:    linear-gradient(135deg, #2D1B69 0%, var(--color-soft-black) 100%);

  /* Estados interativos */
  --color-primary-hover:  #4A53D8;
  --color-accent-hover:   #E0208A;


  /* ——————————————————————————————
     TIPOGRAFIA
  —————————————————————————————— */

  --font-family: 'LemonSans', system-ui, sans-serif;

  /* Escala de tamanhos — Major Third (×1.250) */
  --text-xs:   0.64rem;    /*  ~10px */
  --text-sm:   0.8rem;     /*  ~13px */
  --text-base: 1rem;       /*   16px */
  --text-md:   1.25rem;    /*   20px */
  --text-lg:   1.563rem;   /*   25px */
  --text-xl:   1.953rem;   /*  ~31px */
  --text-2xl:  2.441rem;   /*  ~39px */
  --text-3xl:  3.052rem;   /*  ~49px */
  --text-4xl:  3.815rem;   /*  ~61px */

  /* Pesos */
  --font-thin:    100;
  --font-light:   300;
  --font-regular: 400;
  --font-medium:  500;
  --font-bold:    700;

  /* Entrelinha */
  --leading-none:   1;
  --leading-tight:  1.15;
  --leading-snug:   1.35;
  --leading-normal: 1.55;
  --leading-loose:  1.75;

  /* Espaçamento entre letras */
  --tracking-tight:   -0.025em;
  --tracking-normal:   0;
  --tracking-wide:     0.04em;
  --tracking-widest:   0.12em;


  /* ——————————————————————————————
     ESPAÇAMENTOS
     Base: 4px (0.25rem)
  —————————————————————————————— */

  --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 */

  /* Padding de seção */
  --section-py:       clamp(3rem, 8vw, 6rem);
  --section-px:       var(--space-4);


  /* ——————————————————————————————
     LAYOUT
  —————————————————————————————— */

  --container-max:     1200px;
  --container-padding: clamp(var(--space-4), 5vw, var(--space-12));

  /*
    Breakpoints (usar diretamente em @media queries):
      Mobile:  375px
      Tablet:  768px
      Desktop: 1280px
  */


  /* ——————————————————————————————
     BORDAS
  —————————————————————————————— */

  --radius-sm:   0.25rem;   /*  4px */
  --radius-md:   0.5rem;    /*  8px */
  --radius-lg:   1rem;      /* 16px */
  --radius-xl:   1.5rem;    /* 24px */
  --radius-pill: 9999px;


  /* ——————————————————————————————
     SOMBRAS
  —————————————————————————————— */

  --shadow-sm:          0 1px 3px rgba(34, 39, 42, 0.08);
  --shadow-md:          0 4px 16px rgba(34, 39, 42, 0.10);
  --shadow-lg:          0 8px 32px rgba(34, 39, 42, 0.14);
  --shadow-glow-purple: 0 0 32px rgba(90, 100, 240, 0.40);
  --shadow-glow-pink:   0 0 32px rgba(255, 47, 162, 0.40);


  /* ——————————————————————————————
     TRANSIÇÕES
  —————————————————————————————— */

  --transition-fast:   150ms ease;
  --transition-base:   250ms ease;
  --transition-slow:   400ms ease;
  --transition-spring: 350ms cubic-bezier(0.34, 1.56, 0.64, 1);


  /* ——————————————————————————————
     Z-INDEX
  —————————————————————————————— */

  --z-below:   -1;
  --z-base:     0;
  --z-raised:  10;
  --z-overlay: 100;
  --z-modal:   200;
  --z-nav:     400;
}
