/* Download Page Specific Styles */

/* Elegant spinner with Albi colors */
.spinner {
  display: inline-block;
  width: 70px;
  height: 70px;
  margin-bottom: 32px;
  position: relative;
}

.spinner::before,
.spinner::after {
  content: '';
  position: absolute;
  border-radius: 50%;
}

.spinner::before {
  width: 100%;
  height: 100%;
  background: linear-gradient(
    135deg,
    var(--terracotta-primary) 0%,
    var(--brick-red) 50%,
    var(--soft-gold) 100%
  );
  animation: spin 1.2s cubic-bezier(0.68, -0.55, 0.265, 1.55) infinite;
}

.spinner::after {
  width: 78%;
  height: 78%;
  background: var(--warm-white);
  top: 11%;
  left: 11%;
}

.manual-download {
  margin-top: 32px;
  padding-top: 28px;
  border-top: 1px solid rgba(201, 87, 60, 0.15);
  font-size: 14px;
  color: var(--text-secondary);
}

/* Loading animation with French elegance */
@keyframes spin {
  0% {
    transform: rotate(0deg);
    opacity: 0.9;
  }
  50% {
    opacity: 1;
  }
  100% {
    transform: rotate(360deg);
    opacity: 0.9;
  }
}

/* Responsive design for mobile */
@media (max-width: 600px) {
  .spinner {
    width: 60px;
    height: 60px;
  }
}

/* Accessibility improvements */
@media (prefers-reduced-motion: reduce) {
  .spinner::before {
    animation: none;
  }
}
