/**
 * Performance & Loading Styles
 */

/* Skeleton Loading - Shared across pages */
.skeleton {
  background: linear-gradient(90deg, #F1F5F9 25%, #E2E8F0 50%, #F1F5F9 75%);
  background-size: 200% 100%;
  animation: skeleton-loading 1.5s infinite;
  border-radius: 0.5rem;
}

.skeleton-card {
  border-radius: 1.25rem;
  overflow: hidden;
  background: rgba(255, 255, 255, 0.7);
  backdrop-filter: blur(5px);
  height: 480px;
}

@keyframes skeleton-loading {
  0% { background-position: 200% 0; }
  100% { background-position: -200% 0; }
}

/* Image Optimization */
img {
  max-width: 100%;
  height: auto;
  display: block;
}

/* Prevent layout shift during image loading */
img[loading="lazy"] {
  background: #f0f0f0;
}

/* Optimize for slow networks */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
