/* =========================================================
   Base — reset mínimo, padrões de elemento e acessibilidade.
   ========================================================= */
* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
  /* Reserva o espaço da barra de rolagem de forma permanente. Sem isso, ao
     abrir um diálogo (que trava a rolagem do fundo) a barra sumiria e a
     página inteira saltaria lateralmente. Só é perceptível em sistemas com
     barra clássica — em barra sobreposta o efeito não existe. */
  scrollbar-gutter: stable;
}

body {
  margin: 0;
  font-family: var(--font-sans);
  line-height: 1.6;
  color: var(--text);
  background:
    radial-gradient(circle at 75% 5%, rgba(245, 168, 0, .13), transparent 24rem),
    linear-gradient(180deg, #0b0b0c 0%, #0d0e10 44%, #09090a 100%);
}

a {
  color: inherit;
  text-decoration: none;
}

button,
input,
textarea {
  font: inherit;
}

img {
  max-width: 100%;
}

/* Anel de foco visível apenas para navegação por teclado. */
:focus-visible {
  outline: 2px solid var(--gold-2);
  outline-offset: 3px;
  border-radius: 6px;
}

/* Respeita quem pediu menos movimento no sistema operacional. */
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
}
