/* BLACK BRAIN - reset + tipografia + fundo Aurora Glass. */

*, *::before, *::after { box-sizing: border-box; }
* { margin: 0; padding: 0; }
/* o atributo hidden do HTML tem que vencer qualquer display: de componente (ex.: .campo flex) */
[hidden] { display: none !important; }

html, body { height: 100%; }

body {
  font-family: var(--font);
  font-size: var(--fs-base);
  line-height: 1.55;
  color: var(--text);
  background: var(--bg);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  min-height: 100vh;
  position: relative;
}

/* Mesh Aurora: manchas de luz roxa difusas no fundo escuro */
body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  background:
    radial-gradient(closest-side at 12% 8%, rgba(124, 58, 237, .22), transparent 70%),
    radial-gradient(closest-side at 88% 4%, rgba(79, 17, 186, .18), transparent 70%),
    radial-gradient(closest-side at 78% 82%, rgba(149, 95, 240, .14), transparent 72%),
    radial-gradient(closest-side at 4% 90%, rgba(124, 58, 237, .12), transparent 72%);
  pointer-events: none;
}

/* CRITICO: sem isso, form cai pra Arial/-apple-system */
button, input, select, textarea { font-family: inherit; }

h1, h2, h3, h4, h5 {
  font-family: var(--font-titulo);
  font-weight: 700;
  letter-spacing: -.02em;
  color: var(--text);
  line-height: 1.2;
}

a { color: var(--accent-hover); text-decoration: none; }
a:hover { color: var(--accent-suave); }

::selection { background: var(--accent-soft); color: var(--text); }

/* Scrollbar discreta no dark */
::-webkit-scrollbar { width: 11px; height: 11px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb {
  background: var(--border-forte);
  border-radius: 999px;
  border: 3px solid transparent;
  background-clip: content-box;
}
::-webkit-scrollbar-thumb:hover { background: var(--text-fraco); background-clip: content-box; }
