.suite-boot-loader {
  position: fixed;
  inset: 0;
  z-index: 10000;
  display: grid;
  place-content: center;
  justify-items: center;
  gap: 18px;
  color: var(--text, #f7f2fb);
  background: var(--bg, #090b12);
  transition: opacity 180ms ease, visibility 180ms ease;
}

.suite-boot-loader.is-hidden {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.suite-loader-orbit {
  position: relative;
  width: 76px;
  height: 76px;
  animation: suite-loader-spin 1.2s linear infinite;
}

.suite-loader-orbit span {
  position: absolute;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #9a83ff;
  box-shadow: 0 0 18px color-mix(in srgb, #9a83ff 58%, transparent);
}

.suite-loader-orbit span:nth-child(1) { top: 0; left: 33px; }
.suite-loader-orbit span:nth-child(2) { top: 33px; right: 0; background: #d946ef; }
.suite-loader-orbit span:nth-child(3) { bottom: 0; left: 33px; opacity: .7; }
.suite-loader-orbit span:nth-child(4) { top: 33px; left: 0; opacity: .45; }
.suite-boot-loader p { margin: 0; font: 600 .72rem/1.2 ui-monospace, SFMono-Regular, Consolas, monospace; letter-spacing: .16em; text-transform: uppercase; }

@keyframes suite-loader-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .suite-loader-orbit { animation-duration: 2.4s; } }
