/* ============================================================
   BRASILCORRUPT — design tokens
   Fonte: docs/WIREFRAMES.md (contrato visual — não alterar valores)
   ============================================================ */

:root {
  /* --- cores base --- */
  --bg: #0a0a0f;
  --bg-card: #12121a;
  --fg: #f5f5f0;
  --fg-muted: #8a8a93;

  /* --- semântica de severidade (NUNCA decorativo) --- */
  --risco-vermelho: #e5484d;
  --risco-ambar: #f5a623;
  --ok: #46a758;

  /* --- derivados (bordas/superfícies sutis) --- */
  --border: #23232e;
  --bg-hover: #1a1a24;
  --focus-ring: #7aa7ff;

  /* --- tipografia --- */
  --font-display: "Inter", "Archivo Black", system-ui, -apple-system,
    "Segoe UI", Roboto, Arial, sans-serif;
  --font-serif: Georgia, "Times New Roman", "Source Serif Pro", serif;
  --font-mono: ui-monospace, "Cascadia Mono", Consolas, monospace;

  /* escala tipográfica */
  --fs-xs: 0.75rem;    /* 12px — metadados, selos */
  --fs-sm: 0.875rem;   /* 14px — legendas */
  --fs-base: 1rem;     /* 16px */
  --fs-md: 1.125rem;   /* 18px — texto corrido serifa */
  --fs-lg: 1.375rem;   /* 22px — títulos de sinal */
  --fs-xl: 1.75rem;    /* 28px — títulos de seção */
  --fs-2xl: clamp(2rem, 5vw, 3rem);        /* nome do político */
  --fs-display: clamp(2.5rem, 7vw, 4.5rem); /* manchete hero */
  --fs-num: clamp(3rem, 8vw, 6rem);         /* números Starlink gigantes */

  --lh-tight: 1.05;
  --lh-normal: 1.4;
  --lh-serif: 1.65;

  --fw-black: 900;
  --fw-extra: 800;
  --fw-bold: 700;

  /* --- espaçamentos (escala 4px) --- */
  --sp-1: 0.25rem;
  --sp-2: 0.5rem;
  --sp-3: 0.75rem;
  --sp-4: 1rem;
  --sp-6: 1.5rem;
  --sp-8: 2rem;
  --sp-12: 3rem;
  --sp-16: 4rem;
  --sp-24: 6rem;

  /* --- layout --- */
  --max-page: 72rem;   /* container geral */
  --max-prose: 65ch;   /* texto corrido editorial */
  --radius: 6px;
  --radius-lg: 10px;
  --header-h: 3.5rem;
}
