/* ══════════════════════════════════════════════════════
   PSOCULT — tokens.css
   Camada 1: Custom Properties apenas.
   Sem seletores, sem regras, sem lógica.
   Qualquer valor hardcoded no projeto é um bug.
   ══════════════════════════════════════════════════════ */

:root {

  /* ── Superfícies ─────────────────────────────────── */
  --color-bg:            #EDE6D5;
  --color-bg-card:       #FDFAF4;
  --color-bg-dark:       #7B2C2C;
  --color-bg-dark-deep:  #5A1F1F;
  --color-bg-neutral:    #3B4353;

  /* ── Marca ───────────────────────────────────────── */
  --color-primary:       #7B2C2C;
  --color-primary-dark:  #5A1F1F;
  --color-accent:        #8B3A2A;
  --color-energy:        #C8703A;
  --color-contrast:      #5C6E7E;
  --color-neutral:       #3B4353;
  --color-cream:         #D9C9A8;

  /* ── Texto ───────────────────────────────────────── */
  --color-text:          #3B4353;
  --color-heading:       #7B2C2C;
  --color-muted:         #5C6E7E;
  --color-on-dark:       #EDE6D5;
  --color-on-dark-muted: #D9C9A8;

  /* ── Bordas ──────────────────────────────────────── */
  --color-border:        rgba(59, 67, 83, 0.12);
  --color-border-light:  rgba(59, 67, 83, 0.07);
  --color-border-dark:   rgba(237, 230, 213, 0.10);

  /* ── Famílias tipográficas ───────────────────────── */
  --font-display: 'Cormorant Garamond', Georgia, serif;
  --font-body:    'Lato', system-ui, -apple-system, sans-serif;

  /* ── Escala de tamanhos ──────────────────────────── */
  --text-xs:   0.6875rem;   /*  11px */
  --text-sm:   0.8125rem;   /*  13px */
  --text-base: 1rem;        /*  16px */
  --text-lg:   1.125rem;    /*  18px */
  --text-xl:   1.375rem;    /*  22px */
  --text-2xl:  1.5rem;      /*  24px */
  --text-3xl:  2.25rem;     /*  36px */
  --text-4xl:  3.5rem;      /*  56px */

  /* ── Pesos ───────────────────────────────────────── */
  --weight-light:    300;
  --weight-regular:  400;
  --weight-medium:   500;
  --weight-semibold: 600;
  --weight-bold:     700;

  /* ── Line-heights ────────────────────────────────── */
  --leading-tight:   1.05;
  --leading-snug:    1.2;
  --leading-normal:  1.5;
  --leading-relaxed: 1.75;
  --leading-loose:   1.9;

  /* ── Letter-spacing ──────────────────────────────── */
  --tracking-tight:   -0.02em;
  --tracking-snug:    -0.01em;
  --tracking-normal:   0em;
  --tracking-wide:     0.05em;
  --tracking-wider:    0.08em;
  --tracking-widest:   0.14em;

  /* ── Espaçamento (base 4px) ──────────────────────── */
  --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-14:  3.5rem;    /* 56px */
  --space-16:  4rem;      /* 64px */
  --space-20:  5rem;      /* 80px */
  --space-24:  6rem;      /* 96px */

  /* ── Aliases de seção ────────────────────────────── */
  --section-v:    var(--space-16);
  --section-h:    4.5rem;
  --section-h-md: var(--space-12);
  --section-h-sm: var(--space-6);

  /* ── Containers ──────────────────────────────────── */
  --container-max: 1100px;
  --content-max:    780px;
  --prose-max:      680px;
  --narrow-max:     520px;

  /* ── Raios de borda ──────────────────────────────── */
  --radius-xs: 2px;
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 12px;
  --radius-xl: 16px;

  /* ── Sombras ─────────────────────────────────────── */
  --shadow-sm:    0 1px  3px rgba(59, 67, 83, 0.08);
  --shadow-md:    0 4px 16px rgba(59, 67, 83, 0.10);
  --shadow-lg:    0 8px 32px rgba(59, 67, 83, 0.12);
  --shadow-inset: inset 0 1px 3px rgba(59, 67, 83, 0.08);

  /* ── Transições ──────────────────────────────────── */
  --transition-fast:   0.15s ease;
  --transition-base:   0.25s ease;
  --transition-slow:   0.35s ease;
  --transition-spring: 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);

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