/* 骨架屏动画 */
@keyframes skeleton-loading {
    0% { background-color: var(--skeleton-bg); }
    50% { background-color: var(--skeleton-shine); }
    100% { background-color: var(--skeleton-bg); }
}

:root {
    --skeleton-bg: #e0e0e0;
    --skeleton-shine: #f5f5f5;
}

html.dark-mode {
    --skeleton-bg: #2d2d2d;
    --skeleton-shine: #3d3d3d;
}

.article-card.skeleton {
    pointer-events: none;
    display: flex;
    flex-direction: row; /* 保持与正式卡片一致的布局 */
    min-height: 200px;
}

/* 骨架屏-图片占位 */
.sk-img {
    width: 280px; /* 对应 post.css 中的 .post-cover width */
    height: 100%;
    min-height: 180px;
    background: var(--skeleton-bg);
    animation: skeleton-loading 1.5s infinite ease-in-out;
    border-radius: 8px; /* 对应图片圆角 */
    margin-right: 20px;
    flex-shrink: 0;
}

/* 骨架屏-内容区 */
.sk-content {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.sk-title {
    height: 28px;
    width: 60%;
    background: var(--skeleton-bg);
    animation: skeleton-loading 1.5s infinite ease-in-out;
    margin-bottom: 15px;
    border-radius: 4px;
}

.sk-meta {
    height: 16px;
    width: 30%;
    background: var(--skeleton-bg);
    animation: skeleton-loading 1.5s infinite ease-in-out;
    margin-bottom: 20px;
    border-radius: 4px;
}

.sk-text {
    height: 16px;
    width: 90%;
    background: var(--skeleton-bg);
    animation: skeleton-loading 1.5s infinite ease-in-out;
    margin-bottom: 8px;
    border-radius: 4px;
}

.sk-text.short {
    width: 70%;
}

/* 移动端适配骨架屏 */
@media (max-width: 768px) {
    .article-card.skeleton {
        flex-direction: column;
    }
    
    .sk-img {
        width: 100%;
        height: 180px;
        margin-right: 0;
        margin-bottom: 15px;
    }
}