/* qbcms 相册模型样式：列表卡片 + 详情照片墙（含每图说明） */

/* ===== 列表页：相册卡片 ===== */
.album-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 18px; }
.album-card { display: block; background: #fff; border: 1px solid #eee; border-radius: 8px; overflow: hidden; text-decoration: none; transition: box-shadow .2s, transform .2s; }
.album-card:hover { box-shadow: 0 6px 18px rgba(0, 0, 0, .08); transform: translateY(-2px); }
.album-card-cover { position: relative; aspect-ratio: 4 / 3; background: #f5f6f8; overflow: hidden; }
.album-card-cover img { width: 100%; height: 100%; object-fit: cover; display: block; }
.album-card-cover .album-card-none { display: flex; align-items: center; justify-content: center; height: 100%; color: #bbb; font-size: 13px; }
.album-card-count { position: absolute; right: 8px; bottom: 8px; background: rgba(0, 0, 0, .55); color: #fff; font-size: 12px; border-radius: 10px; padding: 2px 8px; }
.album-card-body { padding: 12px 14px 16px; }
.album-card-title { font-size: 15px; color: #333; margin: 0 0 6px; }
/* 相册标题作为链接：悬停时显示下划线（与站内其它标题链接一致）；
   整卡不再连摘要一起加下划线，只让标题呈现为可点击链接 */
.album-card:hover { text-decoration: none; }
.album-card:hover .album-card-title { text-decoration: underline; }
.album-card-intro { font-size: 13px; color: #888; line-height: 1.7; margin: 0; }
.album-list-empty { text-align: center; color: #999; padding: 40px 0; }

/* ===== 详情页：标题 / 说明 / 照片墙 ===== */
.album-head { margin-bottom: 10px; }
.album-title { font-size: 22px; color: #222; margin: 0 0 8px; }
.album-meta { font-size: 13px; color: #999; }
.album-intro { font-size: 14px; color: #666; line-height: 1.9; margin: 10px 0 20px; white-space: pre-line; }
.album-photos { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 16px; }
.album-figure { margin: 0; background: #fff; border: 1px solid #eee; border-radius: 8px; overflow: hidden; }
.album-figure-link { display: block; aspect-ratio: 4 / 3; background: #f5f6f8; }
.album-figure-link img { width: 100%; height: 100%; object-fit: cover; display: block; }
.album-caption { font-size: 13px; color: #666; line-height: 1.7; padding: 10px 12px; border-top: 1px solid #f2f2f2; }
.album-caption-empty { color: #bbb; }
.album-empty { text-align: center; color: #999; padding: 40px 0; }

@media (max-width: 768px) {
    .album-grid, .album-photos { grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 12px; }
    .album-title { font-size: 19px; }
}