/* ============================================================
   Evalation - base element resets + brand background helpers.
   Opt-in: these apply broadly but are safe defaults for the
   dark-first product surface.
   ============================================================ */

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

body {
  margin: 0;
  font-family: var(--font-sans);
  font-size: var(--fs-body);
  line-height: var(--lh-body);
  color: var(--text-strong);
  background: var(--surface-page);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

/* selection */
::selection { background: rgba(15, 82, 255, 0.35); color: #fff; }

/* live-status pulse - used by the console shell + product surfaces */
@keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.3; } }

/* brand background: faint deterministic grid + a single voltage glow.
   Apply .ev-backdrop to a full-bleed positioned container. */
.ev-backdrop {
  position: relative;
  background: var(--surface-page);
  overflow: hidden;
}
.ev-backdrop::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(120, 150, 220, 0.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(120, 150, 220, 0.045) 1px, transparent 1px);
  background-size: var(--grid-motif) var(--grid-motif);
  pointer-events: none;
}
.ev-glow {
  position: absolute;
  top: -200px;
  left: 50%;
  transform: translateX(-50%);
  width: 1100px;
  height: 620px;
  background: radial-gradient(ellipse at center, var(--glow-voltage), transparent 70%);
  pointer-events: none;
}

/* mono eyebrow helper */
.ev-eyebrow {
  font-family: var(--font-mono);
  font-size: var(--fs-eyebrow);
  letter-spacing: var(--tr-eyebrow);
  text-transform: uppercase;
  color: var(--text-faint);
}
