/* Boot splash — visible before React/CSS bundle; keep in sync with App bootstrap screen */

html, body {
  margin: 0;
  height: 100%;
  background: #f6f8fa;
}
[data-theme="dark"] body {
  background: #0f1419;
}

.ms-boot-splash {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 14px;
  background: #f6f8fa;
  color: #5a6b78;
  font-family: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
  transition: opacity 0.28s ease, visibility 0.28s ease;
}
[data-theme="dark"] .ms-boot-splash {
  background: #0f1419;
  color: #a6b4bf;
}
.ms-boot-splash.is-exiting {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.ms-boot-splash-mark {
  width: 56px;
  height: 56px;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.88);
  box-shadow: inset 0 0 0 1px rgba(15, 27, 36, 0.08), 0 8px 24px rgba(15, 27, 36, 0.08);
  display: flex;
  align-items: center;
  justify-content: center;
  animation: ms-boot-mark-pulse 2.4s ease-in-out infinite;
}
[data-theme="dark"] .ms-boot-splash-mark {
  background: rgba(27, 35, 44, 0.95);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.06), 0 8px 28px rgba(0, 0, 0, 0.35);
}
.ms-boot-splash-mark img {
  width: 36px;
  height: 36px;
  object-fit: contain;
  display: block;
}

.ms-boot-splash-name {
  font-size: 18px;
  font-weight: 700;
  letter-spacing: -0.02em;
  color: #0f1b24;
}
[data-theme="dark"] .ms-boot-splash-name {
  color: #f3f6f8;
}

.ms-boot-splash-text {
  font-size: 13px;
  font-weight: 500;
  color: #8a98a3;
}
[data-theme="dark"] .ms-boot-splash-text {
  color: #7e8d99;
}

.ms-boot-splash-track {
  width: min(160px, 42vw);
  height: 3px;
  margin-top: 6px;
  border-radius: 999px;
  background: rgba(15, 27, 36, 0.08);
  overflow: hidden;
}
[data-theme="dark"] .ms-boot-splash-track {
  background: rgba(255, 255, 255, 0.1);
}

.ms-boot-splash-bar {
  width: 42%;
  height: 100%;
  border-radius: inherit;
  background: oklch(0.55 0.10 220);
  animation: ms-boot-bar-slide 1.1s ease-in-out infinite;
}
[data-theme="dark"] .ms-boot-splash-bar {
  background: oklch(0.70 0.09 220);
}

@keyframes ms-boot-mark-pulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.03); }
}
@keyframes ms-boot-bar-slide {
  0% { transform: translateX(-120%); }
  100% { transform: translateX(320%); }
}
