/* Tokens e base comuns às três páginas (docs/05-telas.md, seção 1). */

@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600&family=IBM+Plex+Sans:wght@400;500;600;700&display=swap');

:root {
  --navy: #0E1D36;
  --navy-2: #16294A;
  --linha-escura: #2A3D5E;
  --papel: #F7F6F2;
  --papel-card: #FDFCF9;
  --linha: #DDD9CE;
  --ambar: #F2A541;
  --ferrugem: #A84E00;
  --azul: #1F5FBF;
  --azul-claro: #8FB4F0; /* "azul" legível sobre o navy */
  --texto-corpo: #3D4A5C;
  --texto-suave: #5E6979;
  --texto-claro: #B9C4D4;

  --fonte: 'IBM Plex Sans', Arial, sans-serif;
  --fonte-mono: 'IBM Plex Mono', 'Courier New', monospace;

  --raio: 16px;
  --raio-pilula: 999px;
}

*, *::before, *::after { box-sizing: border-box; }

html { -webkit-text-size-adjust: 100%; }

body {
  margin: 0;
  font-family: var(--fonte);
  line-height: 1.4;
}

h1, h2, h3, p { margin: 0; }

button, input { font: inherit; color: inherit; }

button { cursor: pointer; }

button:disabled { cursor: not-allowed; }

:focus-visible { outline: 3px solid var(--ambar); outline-offset: 2px; }

.mono { font-family: var(--fonte-mono); }

.oculto { display: none !important; }

.sr-only {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; }
}
