/**
 * Z-Spinner Component Styles
 * Spinner de carga centrado vertical y horizontalmente
 */

/* ============================================
   CONTAINER - Centrado absoluto
   ============================================ */

.spinner-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  width: 100%;
  height: 100%;
}

/* ============================================
   SPINNER - Animación circular
   ============================================ */

.spinner {
  border-radius: 50%;
  border-style: solid;
  border-color: rgba(0, 0, 0, 0.1);
  border-top-color: var(--theme-primary, #007AFF);
  animation: spin 0.8s linear infinite;
}

/* Tamaños */
.spinner-s {
  width: 20px;
  height: 20px;
  border-width: 2px;
}

.spinner-m {
  width: 32px;
  height: 32px;
  border-width: 3px;
}

.spinner-l {
  width: 48px;
  height: 48px;
  border-width: 4px;
}

/* Animación */
@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

/* ============================================
   MENSAJE
   ============================================ */

.spinner-message {
  font-size: 13px;
  color: #86868b;
  margin: 0;
  font-weight: 500;
  text-align: center;
}

/* ============================================
   VARIANTES - Para cards con altura mínima
   ============================================ */

/* Card pequeña */
.spinner-container.compact {
  min-height: 100px;
}

/* Card grande */
.spinner-container.expanded {
  min-height: 300px;
}
