/* Anamnea · pitch — tokens. Cores da marca (fiap-mv/src/styles/globals.css) em OKLCH. */
/* Fontes locais (OFL, subset latin, variáveis): o pitch abre sem internet. Archivo 700 a 900, Nunito 400 a 800. */
@font-face { font-family: "Archivo"; font-style: normal; font-weight: 700 900; font-display: swap; src: url("assets/fonts/archivo-var-latin.woff2") format("woff2"); }
@font-face { font-family: "Nunito"; font-style: normal; font-weight: 400 800; font-display: swap; src: url("assets/fonts/nunito-var-latin.woff2") format("woff2"); }
:root {
  /* superfícies e tinta: azul-oceano como matiz âncora (≈ 245°) */
  --color-paper: oklch(99.2% 0.004 245);
  --color-paper-2: oklch(97.3% 0.010 240);
  --color-rule: oklch(88% 0.020 240);
  --color-muted: oklch(51.5% 0.046 242);
  --color-ink: oklch(31.6% 0.065 247.5);
  --color-ink-deep: oklch(35.3% 0.105 254);

  /* acento único: o azul da marca; versão mais escura para texto pequeno */
  --color-accent: oklch(59.3% 0.175 252);
  --color-accent-text: oklch(46.8% 0.167 258);
  --color-accent-soft: oklch(93.4% 0.030 243);
  --color-accent-ink: oklch(99.2% 0.004 245);
  --color-volt: oklch(84.2% 0.116 183.5);
  --color-focus: oklch(46.8% 0.167 258);
  /* parceiro: magenta da FIAP (#ed145b), só no slide da origem */
  --color-fiap: oklch(60.8% 0.236 12.3);

  /* semânticas do plantão (crítico · revisão · alta) */
  --color-err: oklch(56.7% 0.167 15.5);
  --color-warn: oklch(76.1% 0.144 76);
  --color-ok: oklch(53.4% 0.107 164);

  --font-display: "Archivo", system-ui, sans-serif;
  --font-body: "Nunito", ui-rounded, system-ui, sans-serif;

  --space-2xs: 0.25rem;
  --space-xs: 0.5rem;
  --space-sm: 0.75rem;
  --space-md: 1rem;
  --space-lg: 1.5rem;
  --space-xl: 2.5rem;
  --space-2xl: 4rem;
  --space-3xl: 6rem;
  --space-4xl: 8rem;

  /* escala 1.25 a partir de 16px */
  --text-sm: 0.85rem;
  --text-base: 1rem;
  --text-md: 1.25rem;
  --text-lg: 1.5625rem;
  --text-xl: 1.9531rem;
  --text-2xl: 2.4414rem;
  --text-3xl: 3.0518rem;
  --text-display: clamp(2.75rem, 5vw + 1rem, 5.25rem);
  --text-display-s: clamp(2.25rem, 3.6vw + 1rem, 4rem);
  --text-stat: clamp(5rem, 11vw, 10rem);
  --text-lede: clamp(1.25rem, 1.1vw + 0.6rem, 1.875rem); /* apoio legível no projetor: 24px em 720p, 30px em 1080p */
  --text-stat-dd: clamp(1.5rem, 1.6vw + 0.5rem, 2.4rem); /* frase do número grande: 28px em 720p, 38px em 1080p */

  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in: cubic-bezier(0.7, 0, 0.84, 0);
  --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
  --dur-micro: 120ms;
  --dur-short: 220ms;
  --dur-long: 420ms;

  --radius-card: 12px;
  --radius-btn: 16px;
  --radius-screen: 24px;
  --radius-pill: 999px;
  --rule: 1px solid var(--color-rule);
  --shadow-whisper: 0 1px 2px oklch(20% 0.02 250 / 0.06);
  --shadow-press: 0 4px 0 0 var(--color-accent-text); /* botão afunda ao clicar, como no site */

  --z-base: 1;
  --z-raised: 10;
  --z-sticky: 200;
}
