:root {
  --rp-spinner-size: 3rem;
  --rp-spinner-border-width: 0.25rem;
  --rp-spinner-color: var(--p-rp-brand-dark-blue, #002c5f);
  --app-splash-bg: #f7f8f9;
  --app-splash-text: #6c757d;
}

.rp-spinner {
  width: var(--rp-spinner-size);
  height: var(--rp-spinner-size);
  border: var(--rp-spinner-border-width) solid var(--rp-spinner-color);
  border-right-color: transparent;
  border-bottom-color: transparent;
  border-radius: 50%;
  animation: rp-spinner-spin 0.75s linear infinite;
}

.rp-spinner--large {
  --rp-spinner-size: 6rem;
}

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

.app-splash {
  position: fixed;
  inset: 0;
  z-index: 10000;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--app-splash-bg);
  transition: opacity 0.2s ease;
}

.app-splash--hiding {
  opacity: 0;
  pointer-events: none;
}

.app-splash__content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
}

.app-splash__text {
  margin: 0;
  color: var(--app-splash-text);
  font-family: Montserrat, sans-serif;
  font-size: 1rem;
  font-weight: 400;
}
