/* Skeleton Loading */
.skeleton {
    background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
    background-size: 200% 100%;
    animation: skeleton-loading 1.5s infinite;
}

[data-theme="dark"] .skeleton {
    background: linear-gradient(90deg, #3d3d3d 25%, #4d4d4d 50%, #3d3d3d 75%);
}

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

.skeleton-card {
    height: 200px;
    border-radius: 14px;
    background: #f0f0f0;
}

[data-theme="dark"] .skeleton-card {
    background: #3d3d3d;
}

.skeleton-text {
    height: 12px;
    border-radius: 4px;
    margin: 8px 0;
    background: #f0f0f0;
}

[data-theme="dark"] .skeleton-text {
    background: #3d3d3d;
}

.skeleton-text-sm {
    height: 8px;
    border-radius: 4px;
    margin: 6px 0;
    background: #f0f0f0;
}

[data-theme="dark"] .skeleton-text-sm {
    background: #3d3d3d;
}

.skeleton-image {
    background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
    background-size: 200% 100%;
    animation: shimmer 1.5s infinite;
}

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

.skeleton-card {
    border-radius: 12px;
    overflow: hidden;
    background: var(--paper);
    border: 1px solid var(--border);
}

.skeleton-card .skeleton-image {
    height: 200px;
    background: #f0f0f0;
}

.skeleton-card .skeleton-content {
    padding: 16px;
}

.skeleton-card .skeleton-text {
    height: 12px;
    background: #f0f0f0;
    border-radius: 4px;
    margin: 8px 0;
}

.skeleton-card .skeleton-text:last-child {
    width: 60%;
}