body.page-loading {
  margin: 0;
  height: 100%;
  overflow: hidden;
}

.splash-screen {
  display: none;
}

.page-loading .splash-screen {
  position: absolute;
  z-index: 1000;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  font-family: Inter, Helvetica, 'sans-serif';
  background-color: #f9f9f9;
  color: #5e6278;
  line-height: 1;
  font-size: 14px;
  font-weight: 400;
}

.page-loading .splash-screen span {
  color: #5e6278;
  transition: none !important;
  -webkit-font-smoothing: antialiased;
}

.page-loading .splash-screen img {
  margin-left: calc(100vw - 100%);
  margin-bottom: 30px;
  height: 160px !important;
  width: auto;
  object-fit: contain;
  animation: pulse 2s ease-in-out infinite;
}

@keyframes pulse {
  0%, 100% {
    opacity: 1;
    transform: scale(1);
  }
  50% {
    opacity: 0.7;
    transform: scale(1.05);
  }
}

.splash-spinner {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 3px solid rgba(61, 90, 254, 0.15);
  border-top-color: transparent;
  background:
    conic-gradient(from 0deg, transparent 0%, transparent 25%, #3D5AFE 25%, #7C4DFF 100%)
    border-box;
  -webkit-mask:
    radial-gradient(farthest-side, transparent calc(100% - 3px), #000 calc(100% - 3px));
  mask:
    radial-gradient(farthest-side, transparent calc(100% - 3px), #000 calc(100% - 3px));
  animation: spin 0.8s linear infinite;
}

@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}

html[data-bs-theme='dark'] .page-loading .splash-screen {
  background-color: #080D18;
  color: #F5F7FF;
}

/* Single logo used for both themes — no show/hide needed */
