/* Loading screen — linked from index.html so it paints before any JS runs */
#boot {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: grid;
  place-items: center;
  background: #f7f9fc;
  transition: opacity 0.5s ease, visibility 0.5s ease;
}
html.dark #boot {
  background: #070e1b;
}
#boot.done {
  opacity: 0;
  visibility: hidden;
}
#boot .ring {
  width: 46px;
  height: 46px;
  border-radius: 50%;
  border: 2px solid rgba(37, 99, 235, 0.18);
  border-top-color: #2563eb;
  animation: boot-spin 0.8s linear infinite;
}
html.dark #boot .ring {
  border-color: rgba(96, 165, 250, 0.2);
  border-top-color: #60a5fa;
}
@keyframes boot-spin {
  to {
    transform: rotate(360deg);
  }
}
@media (prefers-reduced-motion: reduce) {
  #boot .ring {
    animation-duration: 2s;
  }
}
