/* Skeleton Loading Styles */

/* Base Skeleton */
.skeleton {
    background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
    background-size: 200% 100%;
    animation: skeleton-loading 1.5s infinite;
    border-radius: var(--radius-md);
    overflow: hidden;
}

@keyframes skeleton-loading {
    0% {
        background-position: 200% 0;
    }
    100% {
        background-position: -200% 0;
    }
}

/* Product Card Skeleton */
.product-card-skeleton {
    display: flex;
    flex-direction: column;
    border-radius: var(--radius-lg);
    overflow: hidden;
    box-shadow: var(--shadow-md);
    background: white;
    height: 100%;
    transition: all var(--transition-normal);
}

.product-card-skeleton .card-image-skeleton {
    width: 100%;
    height: 200px;
    background: #f0f0f0;
}

.product-card-skeleton .card-content-skeleton {
    padding: var(--space-lg);
}

.product-card-skeleton .card-title-skeleton {
    height: 24px;
    width: 80%;
    margin-bottom: var(--space-md);
}

.product-card-skeleton .card-price-skeleton {
    height: 32px;
    width: 50%;
    margin-bottom: var(--space-md);
}

.product-card-skeleton .card-details-skeleton {
    display: flex;
    gap: var(--space-md);
    margin-bottom: var(--space-md);
}

.product-card-skeleton .card-detail-item {
    height: 20px;
    width: 80px;
}

.product-card-skeleton .card-location-skeleton {
    height: 18px;
    width: 70%;
    margin-bottom: var(--space-md);
}

.product-card-skeleton .card-description-skeleton {
    height: 16px;
    width: 100%;
    margin-bottom: var(--space-xs);
}

.product-card-skeleton .card-description-skeleton:last-child {
    width: 80%;
}

/* Blog Card Skeleton */
.blog-card-skeleton {
    display: flex;
    flex-direction: column;
    border-radius: var(--radius-lg);
    overflow: hidden;
    box-shadow: var(--shadow-md);
    background: white;
    height: 100%;
    transition: all var(--transition-normal);
}

.blog-card-skeleton .card-image-skeleton {
    width: 100%;
    height: 200px;
    background: #f0f0f0;
}

.blog-card-skeleton .card-content-skeleton {
    padding: var(--space-lg);
}

.blog-card-skeleton .card-title-skeleton {
    height: 24px;
    width: 90%;
    margin-bottom: var(--space-md);
}

.blog-card-skeleton .card-description-skeleton {
    height: 16px;
    width: 100%;
    margin-bottom: var(--space-xs);
}

.blog-card-skeleton .card-description-skeleton:nth-child(3) {
    width: 95%;
}

.blog-card-skeleton .card-description-skeleton:nth-child(4) {
    width: 90%;
}

.blog-card-skeleton .card-meta-skeleton {
    display: flex;
    justify-content: space-between;
    margin-top: var(--space-md);
}

.blog-card-skeleton .card-meta-item {
    height: 16px;
    width: 40%;
}

/* Detail Skeleton */
.detail-skeleton .detail-image-skeleton {
    width: 100%;
    height: 400px;
    margin-bottom: var(--space-md);
}

.detail-skeleton .detail-title-skeleton {
    height: 36px;
    width: 80%;
    margin-bottom: var(--space-lg);
}

.detail-skeleton .detail-price-skeleton {
    height: 48px;
    width: 40%;
    margin-bottom: var(--space-lg);
}

.detail-skeleton .detail-specs-skeleton {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: var(--space-md);
    margin-bottom: var(--space-lg);
}

.detail-skeleton .detail-spec-item {
    height: 80px;
    border-radius: var(--radius-md);
}

.detail-skeleton .detail-description-skeleton {
    display: flex;
    flex-direction: column;
    gap: var(--space-xs);
    margin-bottom: var(--space-lg);
}

.detail-skeleton .detail-description-line {
    height: 16px;
    width: 100%;
}

.detail-skeleton .detail-description-line:nth-child(2) {
    width: 95%;
}

.detail-skeleton .detail-description-line:nth-child(3) {
    width: 90%;
}

.detail-skeleton .detail-description-line:nth-child(4) {
    width: 85%;
}

.detail-skeleton .detail-description-line:nth-child(5) {
    width: 80%;
}

/* Responsive */
@media (max-width: 768px) {
    .detail-skeleton .detail-specs-skeleton {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* Reduced Motion Support */
@media (prefers-reduced-motion: reduce) {
    .skeleton {
        animation: none;
        background: #f0f0f0;
    }
}