/* ── SCREEN 3: Loading ── */

.loading-screen {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 32px;
  padding: 80px 0;
}

.loading-title {
  font-size: 14px;
  font-weight: 700;
  color: var(--lavanda);
  letter-spacing: 0.5px;
}

.spinner-ring {
  width: 64px;
  height: 64px;
  border: 4px solid var(--lavanda-light);
  border-top-color: var(--lavanda);
  border-radius: 50%;
  animation: spin 0.8s linear infinite;
}

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

.loading-checks {
  display: flex;
  flex-direction: column;
  gap: 16px;
  width: 100%;
  max-width: 300px;
}

.loading-check {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 14px;
  font-weight: 600;
  color: var(--negro-70);
  transition: color 0.3s;
}

.loading-check.done {
  color: var(--negro);
}

.loading-check-icon {
  width: 24px;
  height: 24px;
  border: 2px solid var(--gris-border);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s;
  flex-shrink: 0;
}

.loading-check.done .loading-check-icon {
  background: #00D468;
  border-color: #00D468;
}

.loading-check.done .loading-check-icon::after {
  content: "";
  width: 5px;
  height: 9px;
  border: 2px solid white;
  border-top: none;
  border-left: none;
  transform: rotate(45deg);
  margin-top: -2px;
}

.loading-star-row {
  display: inline-flex;
  align-items: center;
  background: white;
  padding: 8px 12px;
  border-radius: 24px;
  font-size: 12px;
  font-weight: 700;
  line-height: 22px;
  color: rgba(0, 0, 0, 0.8);
  white-space: nowrap;
  justify-content: center;
  width: fit-content;
  margin: auto;
}

.loading-star-row img {
  margin-right: 8px;
  filter: invert(26%) sepia(91%) saturate(5537%) hue-rotate(240deg) brightness(92%) contrast(93%);
}

.stars {
  color: #f5a623;
}