/* ============================================================
   DUENHAS — DESIGN TOKENS
   Sistema derivado da linguagem editorial da FAUUSP:
   preto sobre papel, grade rígida, filetes finos e tracejados,
   labels em caixa alta espaçada, densidade textual equilibrada
   por respiro generoso.
   ============================================================ */

:root {
  /* ---------- COR / paleta “papel & tinta” ---------- */
  --color-paper:      #F6F5F1;  /* fundo: papel jornal frio */
  --color-paper-high: #FFFFFF;  /* superfícies elevadas */
  --color-ink:        #111110;  /* texto primário, quase-preto quente */
  --color-ink-soft:   #4A4A46;  /* texto secundário */
  --color-ink-mute:   #8C8C85;  /* metadados, legendas */
  --color-line:       #D8D6CE;  /* filetes / hairlines */
  --color-line-dark:  #111110;  /* filetes estruturais */
  --color-accent:     #B98A2F;  /* ocre — o “sol” FAUUSP, uso < 5% */
  --color-inverse:    #111110;  /* blocos invertidos */
  --color-inverse-fg: #F6F5F1;

  /* ---------- TIPOGRAFIA ---------- */
  /* Display & texto: grotesca neutra (Archivo, eixo variável de largura)
     Acento artístico: serifa itálica (Instrument Serif)
     Metadados: mono espaçada em caixa alta (IBM Plex Mono) */
  --font-sans: "Archivo", "Helvetica Neue", Arial, sans-serif;
  --font-serif: "Instrument Serif", Georgia, serif;
  --font-mono: "IBM Plex Mono", "Courier New", monospace;

  /* Escala modular — razão 1.333 (quarta perfeita), clamp fluido */
  --text-xs:   0.6875rem;                          /* 11px — meta  */
  --text-sm:   0.8125rem;                          /* 13px — legendas */
  --text-base: clamp(1rem, 0.95rem + 0.25vw, 1.125rem);   /* corpo */
  --text-md:   clamp(1.25rem, 1.1rem + 0.6vw, 1.625rem);  /* lead   */
  --text-lg:   clamp(1.75rem, 1.3rem + 1.8vw, 2.75rem);   /* h3     */
  --text-xl:   clamp(2.5rem, 1.8rem + 3vw, 4.5rem);       /* h2     */
  --text-2xl:  clamp(3.5rem, 2rem + 6.5vw, 8.5rem);       /* h1     */
  --text-hero: clamp(4rem, 1rem + 12.5vw, 15rem);         /* display */

  --leading-tight: 0.92;
  --leading-snug:  1.15;
  --leading-base:  1.55;
  --leading-loose: 1.75;

  --tracking-tight: -0.03em;
  --tracking-base:  0;
  --tracking-wide:  0.08em;
  --tracking-label: 0.28em;   /* “E X P E D I E N T E” */

  /* ---------- ESPAÇAMENTO — base 8, progressão editorial ---------- */
  --space-1: 0.25rem;   /*   4 */
  --space-2: 0.5rem;    /*   8 */
  --space-3: 1rem;      /*  16 */
  --space-4: 1.5rem;    /*  24 */
  --space-5: 2.5rem;    /*  40 */
  --space-6: 4rem;      /*  64 */
  --space-7: 6.5rem;    /* 104 */
  --space-8: 10.5rem;   /* 168 */

  /* ---------- GRADE ---------- */
  --grid-cols: 12;
  --grid-gutter: clamp(1rem, 2vw, 1.5rem);
  --grid-margin: clamp(1.25rem, 4vw, 4rem);
  --content-max: 100rem;

  /* ---------- FILETES ---------- */
  --rule-solid: 1px solid var(--color-line);
  --rule-strong: 1px solid var(--color-line-dark);
  --rule-dashed: 1px dashed var(--color-ink-mute);

  /* ---------- MOVIMENTO ---------- */
  --ease-out-expo: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in-out:   cubic-bezier(0.65, 0, 0.35, 1);
  --dur-fast:   0.35s;
  --dur-base:   0.7s;
  --dur-slow:   1.2s;

  /* ---------- CAMADAS ---------- */
  --z-header: 100;
  --z-overlay: 200;
  --z-cursor: 300;
}
