/*
 * El arranque, sin esperar al bundle (28/08/2026; en fichero aparte desde el
 * 15/09/2026).
 *
 * El fondo de marca y un pulso gris centrado se pintan antes de que llegue el
 * JavaScript y se resuelvan la sesión y el espejo, que es justo el rato en el
 * que alguien decide si «va lento». React lo reemplaza al montar (`createRoot`
 * vacía `#root`). Los hex son los de `brand-guidelines.md`.
 *
 * Vivía dentro de un `<style>` en `index.html`, con su hash escrito en la CSP
 * (`servidor/cabeceras.ts`). Vite 8 minifica ese `<style>` al construir, así
 * que el hash del fuente ya no era el del HTML servido y en producción la CSP
 * lo bloqueaba: la pantalla volvía a ser un rectángulo blanco mudo, que es lo
 * que este bloque existe para evitar. Un fichero propio entra por
 * `style-src-elem 'self'` sin hash, y `public/` se copia tal cual —como
 * `tema.js`, que está aquí por el mismo motivo—. La hoja se enlaza en la
 * cabecera y bloquea el pintado hasta llegar, que es lo que se quiere: nunca
 * se pinta nada sin el fondo puesto.
 */
html {
  background: #0a0a0a;
}
html[data-tema='claro'] {
  background: #ffffff;
}
#arranque {
  position: fixed;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
#arranque::after {
  content: '';
  width: 8px;
  height: 8px;
  border-radius: 9999px;
  background: #8a8a8a;
  animation: arranque-pulso 1.2s ease-in-out infinite;
}
@keyframes arranque-pulso {
  0%,
  100% {
    opacity: 0.25;
  }
  50% {
    opacity: 1;
  }
}
@media (prefers-reduced-motion: reduce) {
  #arranque::after {
    animation: none;
  }
}
