/* ===== 帖子卡片 —— 核心视觉升级 ===== */
.post-list { padding: 0; }
.post-card {
    margin: 0 24px 16px;
    background: var(--bg-card);
    border: 1px solid var(--border-color);
    border-radius: var(--radius);
    cursor: pointer;
    box-shadow: var(--card-shadow);
    transition: transform 0.15s var(--ease), box-shadow 0.25s var(--ease), border-color 0.2s var(--ease), background 0.4s var(--ease);
}
.post-card:active {
    transform: scale(0.985);
    box-shadow: var(--card-shadow-hover);
}

/* 有图帖子 */
.post-card.has-img { padding: 0; overflow: hidden; }
.post-card.has-img .pc-img-banner {
    width: 100%;
    height: 180px;
    object-fit: cover;
    display: block;
    transition: transform 0.3s var(--ease);
}
.post-card.has-img:active .pc-img-banner { transform: scale(1.02); }
.post-card.has-img .pc-body { padding: 16px 24px 20px; }

/* 无图帖子 */
.pc-inner { padding: 16px; }
.pc-header { display: flex; align-items: center; gap: 10px; margin-bottom: 12px; }
.pc-avatar {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: var(--accent-soft);
    color: var(--accent);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.92em;
    overflow: hidden;
    flex-shrink: 0;
}
.pc-avatar img { width: 100%; height: 100%; object-fit: cover; }
.pc-user { font-size: 0.86em; font-weight: 600; color: var(--text-secondary); }
.pc-time { font-size: 0.74em; color: var(--text-dim); margin-top: 1px; }
.pc-name-col { display: flex; align-items: center; gap: 4px; flex-wrap: wrap; }
.pc-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 2px;
    font-size: 0.55em;
    font-weight: 800;
    color: #fff;
    background: linear-gradient(135deg, #E85D04, #dc2f02);
    border-radius: 10px;
    padding: 2px 7px;
    margin-left: 5px;
    line-height: 1.5;
    letter-spacing: 1.5px;
    white-space: nowrap;
    text-shadow: 0 1px 1px rgba(0,0,0,0.2);
    box-shadow: 0 1px 4px rgba(232,93,4,0.35);
    vertical-align: middle;
}
.pc-badge.mini {
    font-size: 0.5em;
    padding: 2px 5px;
    margin-left: 4px;
    border-radius: 8px;
}

/* 标签样式 */
.pc-tag {
    margin-left: auto;
    font-size: 0.68em;
    padding: 4px 10px;
    border-radius: var(--radius-xs);
    font-weight: 700;
    white-space: nowrap;
}
.tag-strategy { background: var(--green-soft); color: var(--green); }
.tag-newbie { background: var(--yellow-soft); color: var(--yellow); }
.tag-discuss { background: var(--purple-soft); color: var(--purple); }
.tag-map { background: var(--pink-soft); color: var(--pink); }
.tag-mod { background: var(--blue-soft); color: var(--blue); }
.tag-event { background: rgba(255,87,34,0.12); color: #ff5722; }
.tag-gacha { background: rgba(233,30,99,0.12); color: #e91e63; }
.tag-announce { background: var(--accent-soft); color: var(--accent); }
.tag-default { background: var(--accent-soft); color: var(--accent); }

/* 帖子标题 */
.pc-title {
    font-size: 1.15em;
    font-weight: 700;
    margin-bottom: 6px;
    line-height: 1.5;
    color: var(--text-primary);
}
/* 帖子描述 */
.pc-desc {
    font-size: 0.86em;
    color: var(--text-muted);
    line-height: 1.6;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
/* 帖子底部 */
.pc-footer {
    display: flex;
    align-items: center;
    gap: 22px;
    margin-top: 14px;
    font-size: 0.82em;
    color: var(--text-dim);
}
.pf-item { display: flex; align-items: center; gap: 5px; }

/* 置顶 */
.post-card.pinned {
    border-color: rgba(240,112,48,0.2);
    background: linear-gradient(135deg, rgba(240,112,48,0.06) 0%, var(--bg-card) 100%);
}
[data-theme="light"] .post-card.pinned {
    background: linear-gradient(135deg, rgba(232,98,42,0.04) 0%, var(--bg-card) 100%);
}
.pc-pin {
    font-size: 0.62em;
    background: var(--accent);
    color: #fff;
    padding: 3px 8px;
    border-radius: 6px;
    font-weight: 700;
    margin-right: 6px;
    letter-spacing: 0.5px;
}


/* 头像框样式 */
.avatar-framed { transition: box-shadow 0.3s; }
@keyframes frame-glow {
    0%, 100% { filter: brightness(1); }
    50% { filter: brightness(1.15); }
}
@keyframes frame-aurora {
    0% { border-color: #ff4d4f; box-shadow: 0 0 10px rgba(255,77,79,0.5); }
    20% { border-color: #fa8c16; box-shadow: 0 0 10px rgba(250,140,22,0.5); }
    40% { border-color: #52c41a; box-shadow: 0 0 10px rgba(82,196,26,0.5); }
    60% { border-color: #1890ff; box-shadow: 0 0 10px rgba(24,144,255,0.5); }
    80% { border-color: #722ed1; box-shadow: 0 0 10px rgba(114,46,209,0.5); }
    100% { border-color: #ff4d4f; box-shadow: 0 0 10px rgba(255,77,79,0.5); }
}
