/* =========================================================
   pz-zb.css — Zibll 式前台组件样式（子主题 v1.5.0）
   覆盖：首页四宫格 / 多Tab文章流 / 卡片价格标签 / Banner / 悬浮按钮
   ========================================================= */

/* ---------- 首页动画 ---------- */
.zb-anim { animation: zbFadeIn .45s ease both; }
@keyframes zbFadeIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }

/* ---------- 四宫格（PC 后台可配 4/2 列，移动固定 2） ---------- */
.zb-nav-grid {
    display: grid;
    grid-template-columns: repeat(var(--pz-nav-grid-cols, 4), 1fr);
    gap: 10px;
}
.zb-nav-grid-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 18px 8px;
    background: var(--pk-bg-card, #fff);
    border: 1px solid var(--pk-c-border, #eef0f2);
    border-radius: var(--pz-radius, 12px);
    text-decoration: none;
    color: var(--pk-c-font, #18191c);
    transition: transform .2s, box-shadow .2s;
    min-height: 96px;
}
.zb-nav-grid-item:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 18px rgba(0, 0, 0, .08);
    color: var(--main-bg-color, #2271b1);
}
.zb-nav-grid-icon {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    color: #fff;
    background: linear-gradient(135deg, var(--main-bg-color, #2271b1), #5b8ff9);
    overflow: hidden;
}
.zb-nav-grid-icon img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 12px;
}
.zb-nav-grid-title {
    font-size: 13px;
    line-height: 1.3;
    text-align: center;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    word-break: break-all;
}
.zb-nav-grid-text {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
}
.zb-nav-grid-sub {
    font-size: 11px;
    color: var(--pk-c-sub, #8a919f);
    line-height: 1.2;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
@media (max-width: 767.98px) {
    .zb-nav-grid { grid-template-columns: repeat(2, 1fr); gap: 8px; }
    .zb-nav-grid-item { min-height: 84px; padding: 14px 6px; border-radius: 10px; }
    .zb-nav-grid-icon { width: 38px; height: 38px; font-size: 18px; border-radius: 10px; }
}

/* ---------- 多 Tab 文章流 ---------- */
.zb-home-tabs {
    background: transparent;
    border: none;
    padding: 0;
}
.zb-tabs-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
    background: var(--pk-bg-card, #fff);
    border: 1px solid var(--pk-c-border, #eef0f2);
    border-radius: var(--pz-radius, 12px);
    padding: 6px;
}
.zb-tabs-nav {
    display: flex;
    gap: 4px;
    flex-wrap: wrap;
}
.zb-tab-btn {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 8px 16px;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
    color: var(--pk-c-sub, #6c757d);
    cursor: pointer;
    user-select: none;
    transition: all .2s;
}
.zb-tab-btn:hover { color: var(--main-bg-color, #2271b1); }
.zb-tab-btn.active {
    background: var(--main-bg-color, #2271b1);
    color: #fff;
}
.zb-tabs-more a {
    font-size: 13px;
    color: var(--pk-c-sub, #6c757d);
    text-decoration: none;
    padding: 0 10px;
    white-space: nowrap;
}
.zb-tabs-more a:hover { color: var(--main-bg-color, #2271b1); }
.zb-tab-panel { display: none; }
.zb-tab-panel.active { display: block; animation: zbFadeIn .3s ease; }

/* 卡片网格：桌面4列 / 平板2列 / 移动2列（两宫格） */
.zb-card-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 14px;
}
@media (max-width: 1199.98px) {
    .zb-card-grid { grid-template-columns: repeat(2, 1fr); gap: 12px; }
}
@media (max-width: 767.98px) {
    .zb-card-grid { grid-template-columns: repeat(2, 1fr); gap: 10px; }
}

/* 归档/搜索页：统一 2 列卡片 */
.zb-archive-grid { grid-template-columns: repeat(var(--pz-card-cols, 2), 1fr); gap: 16px; }
@media (max-width: 1199px) {
    .zb-archive-grid { --pz-card-cols: 2 !important; grid-template-columns: repeat(2, 1fr) !important; }
}
@media (max-width: 767.98px) {
    body #content .zb-archive-grid,
    body main .zb-archive-grid,
    .zb-archive-grid { --pz-card-cols: 1 !important; grid-template-columns: 1fr !important; }
    /* 分类页移动端适配 */
    .cat-top-info { padding: 10px 0; }
    .cat-top-info .container { padding: 0 12px; }
    .cat-top-info .breadcrumb { font-size: 12px; flex-wrap: wrap; }
    .cat-top-info .child-cat { margin-top: 8px !important; }
    .cat-top-info .child-cat a { padding: 6px 4px !important; font-size: 12px; }
}

/* ---------- Zibll 式卡片 ---------- */
.zb-card {
    display: flex;
    flex-direction: column;
    background: var(--pk-bg-card, #fff);
    border: 1px solid var(--pk-c-border, #eef0f2);
    border-radius: var(--pz-radius, 12px);
    overflow: hidden;
    transition: transform .2s, box-shadow .2s;
}
.zb-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, .08);
}
.zb-card-cover {
    position: relative;
    aspect-ratio: 16 / 9;
    background: #f2f3f5;
    overflow: hidden;
}
.zb-card-img-link { display: block; width: 100%; height: 100%; }
.zb-card-img-link img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .3s;
}
.zb-card:hover .zb-card-img-link img { transform: scale(1.04); }
.zb-card-img-fallback {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    font-size: 32px;
    color: #c2c7cd;
}
.zb-card-tags {
    position: absolute;
    top: 8px;
    left: 8px;
    display: flex;
    gap: 4px;
    z-index: 4;
    max-width: calc(100% - 16px);
    overflow: hidden;
}
.zb-card-tags .badge { font-size: 11px; }
.zb-card-body {
    display: flex;
    flex-direction: column;
    flex: 1;
    padding: 10px 12px 12px;
    gap: 8px;
}
.zb-card-title {
    font-size: 14px;
    line-height: 1.45;
    font-weight: 600;
    margin: 0;
    min-height: 40px;
}
/* Chrome 147: -webkit-line-clamp 失效，.zb-card-title 的 min-height 会与 max-height 冲突（min 优先），
   移动端统一在媒体查询内覆盖 min-height: 0 */
.zb-card-title a { color: var(--pk-c-font, #18191c); text-decoration: none; }
.zb-card-title a:hover { color: var(--main-bg-color, #2271b1); }
.zb-card-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    font-size: 12px;
    color: var(--pk-c-sub, #6c757d);
}
.zb-card-source-link {
    color: var(--main-bg-color, #2271b1);
    text-decoration: none;
    background: rgba(34, 113, 177, .08);
    padding: 2px 8px;
    border-radius: 4px;
    white-space: nowrap;
    max-width: 55%;
    overflow: hidden;
    text-overflow: ellipsis;
}
.zb-card-source-link:hover { color: #fff; background: var(--main-bg-color, #2271b1); }
.zb-card-time { white-space: nowrap; }
.zb-card-foot {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: auto;
    padding-top: 8px;
    border-top: 1px dashed var(--pk-c-border, #eef0f2);
    font-size: 12px;
    color: var(--pk-c-sub, #6c757d);
}
.zb-card-stat { display: inline-flex; align-items: center; gap: 4px; }

/* 卡片内 pay-tag 定位：封面左下角 */
.zb-card-cover .zb-pay-tag {
    position: absolute;
    left: 8px;
    bottom: 8px;
    z-index: 5;
    border-radius: 4px;
}

/* 卡片内 pay-tag 价格标签 */
.zb-pay-tag {
    display: inline-flex;
    align-items: center;
    height: 24px;
    padding: 0 10px;
    border-radius: 6px 0 6px 0;
    background: linear-gradient(135deg, #ff5722, #ff8f00);
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    line-height: 1;
    box-shadow: 0 2px 6px rgba(255, 87, 34, .35);
}
.zb-pay-tag-points { background: linear-gradient(135deg, #7c4dff, #536dfe); box-shadow: 0 2px 6px rgba(124, 77, 255, .35); }
.zb-pay-tag-vip { background: linear-gradient(135deg, #f9a825, #f57f17); box-shadow: 0 2px 6px rgba(249, 168, 37, .35); }
.zb-pay-tag-free { background: linear-gradient(135deg, #66bb6a, #43a047); box-shadow: 0 2px 6px rgba(102, 187, 106, .35); }

/* 列表模式价格标签（列表项标题下） */
.zb-list-pay-tag { margin-top: 8px; }

/* 单篇页标题 meta 行 */
.zb-single-meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}
.zb-single-time {
    font-size: 12px;
    color: var(--pk-c-sub, #6c757d);
}

/* 默认欢迎横幅（后台未配置轮播时） */
.zb-welcome-banner {
    border-radius: 12px;
    overflow: hidden;
    background: linear-gradient(120deg, #1c60f3 0%, #4f8cff 55%, #6aa1ff 100%);
    color: #fff;
}
body.dark-mode .zb-welcome-banner {
    background: linear-gradient(120deg, #1749b8 0%, #2c6ae0 55%, #3f7df0 100%);
}
.zb-welcome-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 22px 28px;
    min-height: 96px;
}
.zb-welcome-title {
    margin: 0 0 6px;
    font-size: 22px;
    font-weight: 700;
    color: #fff;
}
.zb-welcome-desc {
    margin: 0 0 10px;
    font-size: 13px;
    opacity: 0.92;
    color: #fff;
}
.zb-welcome-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 16px;
    border-radius: 20px;
    background: rgba(255,255,255,0.18);
    color: #fff;
    font-size: 13px;
    transition: background .2s;
}
.zb-welcome-btn:hover { background: rgba(255,255,255,0.3); color: #fff; }
.zb-welcome-deco {
    font-size: 64px;
    opacity: 0.35;
    transform: rotate(-12deg);
}
@media (max-width: 575.98px) {
    .zb-welcome-inner { padding: 16px 18px; min-height: 80px; }
    .zb-welcome-title { font-size: 18px; }
    .zb-welcome-deco { font-size: 44px; }
}

/* 深色模式适配（Puock 手动切换 body.puock-dark） */
body.puock-dark .zb-card,
body.puock-dark .zb-card-list { background: var(--pk-bg-card, #343a40); border-color: var(--pk-c-border, #495057); }
body.puock-dark .zb-card-title a,
body.puock-dark .zb-card-list-title a,
body.puock-dark .zb-card-title .a-link,
body.puock-dark .zb-card-list-title .a-link { color: var(--pk-c-font, #dee2e6); }
body.puock-dark .zb-card-title a:hover,
body.puock-dark .zb-card-list-title a:hover { color: #5b8ff9; }
body.puock-dark .zb-card-cover { background: #1c1d1e; }
body.puock-dark .zb-card-img-fallback { color: #5a5c5f; }
body.puock-dark .zb-card-source-link { color: #5b8ff9; background: rgba(91, 143, 249, .12); }
body.puock-dark .zb-card-source-link:hover { color: #fff; background: #5b8ff9; }
body.puock-dark .zb-card-foot { border-top-color: var(--pk-c-border, #3a3b3c); }
body.puock-dark .zb-card-meta,
body.puock-dark .zb-card-foot,
body.puock-dark .zb-card-list-excerpt,
body.puock-dark .zb-card-list-meta { color: var(--pk-c-sub, #b0b3b8); }

/* ---------- Banner 圆角 ---------- */
.zb-banner-swiper {
    border-radius: var(--pz-radius, 12px);
    overflow: hidden;
    box-shadow: 0 4px 16px rgba(0, 0, 0, .06);
}
.zb-banner-img { border-radius: 0; }

/* ---------- 悬浮按钮（父主题 #rb-float-actions 内追加项） ---------- */
#rb-float-actions .pz-fb-item { position: relative; }
#rb-float-actions .pz-fb-qq { color: #12b7f5; }
#rb-float-actions .pz-fb-qq:hover { color: #fff; background: #12b7f5; }
#rb-float-actions .pz-fb-wx { color: #07c160; }
#rb-float-actions .pz-fb-wx:hover { color: #fff; background: #07c160; }
#rb-float-actions .pz-fb-publish { color: #5b6cff; }
#rb-float-actions .pz-fb-publish:hover { color: #fff; background: #5b6cff; }
.pz-fb-wx-qr,
.pz-fb-qr-box {
    display: none;
    position: absolute;
    right: calc(100% + 12px);
    top: 50%;
    transform: translateY(-50%);
    background: #fff;
    padding: 8px;
    border-radius: 10px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, .15);
    z-index: 30;
}
.pz-fb-wx-qr img,
.pz-fb-qr-box img { width: 150px; height: 150px; display: block; border-radius: 4px; }
.pz-fb-wx:hover .pz-fb-wx-qr,
.pz-fb-qr:hover .pz-fb-qr-box { display: block; }

/* ---------- 热门搜索 ---------- */
.pz-hot-search {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 8px;
    font-size: 13px;
}
.pz-hot-search-label { color: var(--pk-c-sub, #6c757d); }
.pz-hot-search-item {
    color: var(--main-bg-color, #2271b1);
    background: rgba(34, 113, 177, .08);
    padding: 3px 10px;
    border-radius: 20px;
    text-decoration: none;
}
.pz-hot-search-item:hover { background: var(--main-bg-color, #2271b1); color: #fff; }

/* ---------- 深色模式适配（Puock 手动切换 body.puock-dark） ---------- */
body.puock-dark .zb-nav-grid-item,
body.puock-dark .zb-tabs-head { background: var(--pk-bg-card, #343a40); border-color: var(--pk-c-border, #495057); color: var(--pk-c-font, #dee2e6); }
body.puock-dark .zb-nav-grid-item:hover { color: #5b8ff9; }
body.puock-dark .zb-tab-btn { color: var(--pk-c-sub, #b0b3b8); }
body.puock-dark .zb-tab-btn.active { background: #5b8ff9; color: #fff; }
body.puock-dark .zb-tabs-more a { color: var(--pk-c-sub, #b0b3b8); }
body.puock-dark .zb-tabs-more a:hover { color: #5b8ff9; }
body.puock-dark .zb-nav-grid-item { box-shadow: 0 2px 10px rgba(0,0,0,.2); }
body.puock-dark .zb-card { background: var(--pk-bg-card); border-color: var(--pk-c-border); }
body.puock-dark .zb-card-title a { color: var(--pk-c-font); }
body.puock-dark .zb-relevant { background: var(--pk-bg-card); }
body.puock-dark .zb-relevant-head { border-color: var(--pk-c-border); }
body.puock-dark .zb-relevant-head h3 { color: var(--pk-c-font); }
body.puock-dark .zb-relevant-card { background: var(--pk-bg-card); border-color: var(--pk-c-border); }
body.puock-dark .pz-nav-item { background: var(--pk-bg-box, #343a40); border-color: var(--pk-c-border, #495057); }
body.puock-dark .pz-nav-icon { background: rgba(255,255,255,.08); color: var(--pk-c-sub); }
body.puock-dark .pz-nav-label { color: var(--pk-c-sub); }
body.puock-dark .pz-nav-title { color: var(--pk-c-font); }
body.puock-dark .pz-nav-item a:hover { background: var(--style-color-primary, #5b8ff9); }
body.puock-dark .pz-nav-item a:hover .pz-nav-icon { background: rgba(255,255,255,.2); color: #fff; }
body.puock-dark .pz-nav-item a:hover .pz-nav-label,
body.puock-dark .pz-nav-item a:hover .pz-nav-title { color: #fff; }
body.puock-dark .pz-share-bar { background: var(--pk-bg-card); border-color: var(--pk-c-border); }
body.puock-dark .pz-share-title { color: var(--pk-c-sub); }

/* ---------- 多语言切换入口（文章/页面底部，wp_footer 输出） ---------- */
.pz-lang-switch {
    max-width: 1140px;
    margin: 0 auto 24px;
    padding: 10px 16px;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    font-size: 13px;
    color: var(--pk-c-sub, #6c757d);
}
.pz-lang-switch-label { display: inline-flex; align-items: center; gap: 4px; }
.pz-lang-item {
    display: inline-block;
    padding: 3px 12px;
    border: 1px solid var(--pk-c-border, #eef0f2);
    border-radius: 999px;
    color: var(--pk-c-font, #4e5358);
    text-decoration: none !important;
    line-height: 1.6;
    transition: all .2s;
}
.pz-lang-item:hover {
    color: #fff;
    background: var(--style-color-primary, #5b8ff9);
    border-color: var(--style-color-primary, #5b8ff9);
}
body.puock-dark .pz-lang-item { border-color: var(--pk-c-border); color: var(--pk-c-font); }

/* 首页横幅：覆盖父主题蓝色渐变，改为参考图白底 */
.zb-welcome-banner {
    background: #fff !important;
    border: 1px solid #f0f0f0;
    border-radius: 12px;
    padding: 24px 28px;
    position: relative;
    overflow: hidden;
}
.zb-welcome-banner .zb-welcome-title {
    color: #1a1a1a !important;
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 6px;
}
.zb-welcome-banner .zb-welcome-desc {
    color: #6c757d;
    font-size: 13px;
    margin-bottom: 14px;
}

/* ========== 首页横幅（参考图：置顶精选） ========== */
.zb-banner-tag {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    background: linear-gradient(135deg, #ffb64d, #ff8f2e);
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    padding: 3px 12px;
    border-radius: 20px;
    margin-bottom: 10px;
    box-shadow: 0 2px 8px rgba(255, 143, 46, .35);
}
.zb-banner-tag i { font-size: 11px; }

/* ========== 首页紧凑卡片（参考图：无封面，标题+摘要+数据行） ========== */
.zb-card-compact { display: block; }
.zb-card-compact .zb-card-body { padding: 14px 16px 12px; width: 100%; display: flex; flex-direction: column; }
.zb-card-compact .zb-card-title { font-size: 14px; line-height: 1.45; margin-bottom: 6px; }
.zb-card-compact .zb-card-excerpt {
    color: var(--pk-c-sub, #6c757d);
    font-size: 12px;
    line-height: 1.6;
    min-height: 38px;
    margin-bottom: 10px;
    -webkit-line-clamp: 2;
    overflow: hidden;
}
.zb-card-compact .zb-card-foot {
    margin-top: auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 4px;
    flex-wrap: wrap;
    border-top: 1px dashed var(--pk-c-border, #eee);
    padding-top: 8px;
}
.zb-card-compact .zb-card-cat a {
    font-size: 11px;
    color: var(--main-bg-color, #2271b1);
    background: rgba(34, 113, 177, .08);
    padding: 1px 8px;
    border-radius: 4px;
    text-decoration: none;
    white-space: nowrap;
}
.zb-card-compact .zb-card-cat a:hover { background: var(--main-bg-color, #2271b1); color: #fff; }
.zb-card-compact .zb-card-stats { display: inline-flex; gap: 8px; }
.zb-card-compact .zb-card-stat {
    font-size: 11px;
    color: var(--pk-c-sub, #6c757d);
    display: inline-flex;
    align-items: center;
    gap: 4px;
    white-space: nowrap;
}
.zb-card-compact .zb-card-stat i { margin-right: 2px; font-size: 11px; }
.zb-card-compact .zb-card-stat i { font-size: 11px; }

/* 侧边栏开启后：桌面主区 8 列时卡片 2 列（自动由 col 控制），紧凑卡保持 4 列 */
@media (min-width: 992px) {
    .zb-card-compact.col-lg-3 { flex: 0 0 auto; }
}

/* ---------- 深色模式适配（追加） ---------- */
@media (prefers-color-scheme: dark) {
    .zb-card-compact .zb-card-excerpt { color: #9aa0a6; }
    .zb-card-compact .zb-card-foot { border-top-color: #3a3b3c; }
    .zb-card-compact .zb-card-cat a { color: #7baaf7; background: rgba(91, 143, 249, .12); }
    .zb-card-compact .zb-card-stat { color: #9aa0a6; }
}

/* 首页紧凑卡 Grid：桌面4列 / 平板3列 / 移动2列 */
.zb-card-grid-compact {
    grid-template-columns: repeat(var(--pz-card-cols, 4), 1fr);
    gap: 16px;
}
.zb-card-grid-compact .zb-card-compact {
    width: 100%;
    min-width: 0;
}
@media (max-width: 1199px) {
    .zb-card-grid-compact { --pz-card-cols: 3; grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 991px) {
    .zb-card-grid-compact { --pz-card-cols: 2; grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 480px) {
    .zb-card-grid-compact { grid-template-columns: repeat(2, 1fr); gap: 10px; }
}

/* 首页卡片封面图 */
.zb-card-compact .zb-card-thumb {
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    border-radius: 10px 10px 0 0;
    background: #f5f6f7;
}
.zb-card-compact .zb-card-thumb a {
    display: block;
    width: 100%;
    height: 100%;
}
.zb-card-compact .zb-card-thumb-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .3s ease;
}
.zb-card-compact:hover .zb-card-thumb-img {
    transform: scale(1.05);
}
/* 有封面图时，body 圆角调整 */
.zb-card-compact:has(.zb-card-thumb) .zb-card-body {
    border-radius: 0 0 10px 10px;
}

/* ========== 热门排行侧边栏（参考图样式） ========== */
.pz-hot-rank-list { display: flex; flex-direction: column; gap: 10px; }

/* 每一项 */
.pz-hot-item {
    position: relative;
    border-radius: 10px;
    overflow: hidden;
    background: #fff;
    border: 1px solid #f0f0f0;
    transition: all .25s ease;
}
.pz-hot-item:hover {
    box-shadow: 0 4px 16px rgba(0, 0, 0, .08);
    transform: translateY(-2px);
}

/* 排名徽章 */
.pz-hot-badge {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    font-size: 11px;
    font-weight: 700;
    color: #fff;
    padding: 3px 10px 3px 8px;
    border-radius: 0 0 10px 0;
    letter-spacing: .5px;
}
.pz-hot-badge-1 { background: linear-gradient(135deg, #ff4d4f, #ff7875); }
.pz-hot-badge-2 { background: linear-gradient(135deg, #ff7a45, #ffa940); }
.pz-hot-badge-3 { background: linear-gradient(135deg, #ffa940, #ffc53d); }

/* TOP1 大图卡片 */
.pz-hot-top1 { display: block; }
.pz-hot-top1-thumb {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: #f5f6f7;
}
.pz-hot-top1-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .3s ease;
}
.pz-hot-top1:hover .pz-hot-top1-thumb img { transform: scale(1.05); }
.pz-hot-top1-body {
    padding: 10px 12px 12px;
    position: relative;
}
.pz-hot-top1-body .pz-hot-title {
    display: block;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.45;
    color: #1a1a1a;
    margin-bottom: 8px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    text-decoration: none;
}
.pz-hot-top1-body .pz-hot-title:hover { color: #1677ff; }
.pz-hot-top1-body .pz-hot-views {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 11px;
    color: #fff;
    background: linear-gradient(135deg, #ff85c0, #ff85c0);
    padding: 2px 10px;
    border-radius: 12px;
    font-weight: 500;
}
.pz-hot-top1-body .pz-hot-views i { font-size: 10px; }

/* TOP2-8 左小图右文字 */
.pz-hot-item-small {
    display: flex;
    align-items: stretch;
    padding: 8px;
    gap: 10px;
}
.pz-hot-small-thumb {
    flex-shrink: 0;
    width: 80px;
    height: 80px;
    border-radius: 8px;
    overflow: hidden;
    background: #f5f6f7;
    display: flex;
    align-items: center;
    justify-content: center;
}
.pz-hot-small-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.pz-hot-small-thumb.pz-hot-no-thumb { color: #ccc; font-size: 24px; }
.pz-hot-small-body {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 2px 0;
}
.pz-hot-small-body .pz-hot-title {
    display: block;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.45;
    color: #1a1a1a;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    text-decoration: none;
}
.pz-hot-small-body .pz-hot-title:hover { color: #1677ff; }
.pz-hot-meta {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 11px;
    color: #999;
    margin-top: 4px;
}
.pz-hot-meta .pz-hot-time,
.pz-hot-meta .pz-hot-views {
    display: inline-flex;
    align-items: center;
    gap: 3px;
}
.pz-hot-meta i { font-size: 10px; }
.pz-hot-meta .pz-hot-views { color: #ff7a45; }

/* 深色模式（手动切换 body.puock-dark / html[data-bs-theme=dark]） */
body.puock-dark .pz-hot-item,
html[data-bs-theme="dark"] .pz-hot-item { background: #1f2021; border-color: #3a3b3c; }
body.puock-dark .pz-hot-top1-body .pz-hot-title,
body.puock-dark .pz-hot-small-body .pz-hot-title,
html[data-bs-theme="dark"] .pz-hot-top1-body .pz-hot-title,
html[data-bs-theme="dark"] .pz-hot-small-body .pz-hot-title { color: #e4e6eb; }
body.puock-dark .pz-hot-top1-body .pz-hot-title:hover,
body.puock-dark .pz-hot-small-body .pz-hot-title:hover,
html[data-bs-theme="dark"] .pz-hot-top1-body .pz-hot-title:hover,
html[data-bs-theme="dark"] .pz-hot-small-body .pz-hot-title:hover { color: #5b8ff9; }
body.puock-dark .pz-hot-meta,
html[data-bs-theme="dark"] .pz-hot-meta { color: #9aa0a6; }
body.puock-dark .pz-hot-small-thumb,
html[data-bs-theme="dark"] .pz-hot-small-thumb { background: #2a2b2c; }
body.puock-dark .pz-hot-views,
html[data-bs-theme="dark"] .pz-hot-views { color: #ff9c6e; }
body.puock-dark .pz-hot-time,
html[data-bs-theme="dark"] .pz-hot-time { color: #9aa0a6; }

/* ===== Zibll 风格首页列表（左封面+右内容） ===== */
.zb-card-list {
    display: flex;
    flex-direction: row;
    gap: 16px;
    padding: 16px;
    background: #fff;
    border-radius: 8px;
    margin-bottom: 12px;
    transition: box-shadow 0.2s, transform 0.2s;
    border: 1px solid rgba(0,0,0,0.06);
}
.zb-card-list:hover {
    box-shadow: 0 4px 16px rgba(0,0,0,0.1);
    transform: translateY(-2px);
}
.zb-card-list-thumb {
    position: relative;
    flex-shrink: 0;
    width: 240px;
    height: 150px;
    border-radius: 6px;
    overflow: hidden;
}
.zb-card-list-thumb-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.3s;
}
.zb-card-list:hover .zb-card-list-thumb-img {
    transform: scale(1.05);
}
.zb-card-list-thumb .zb-pay-tag {
    position: absolute;
    bottom: 8px;
    left: 8px;
    background: linear-gradient(135deg, #ff6b35, #f7931e);
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    padding: 2px 8px;
    border-radius: 4px;
}
.zb-card-list-body {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.zb-card-list-title {
    font-size: 17px;
    font-weight: 600;
    line-height: 1.4;
    margin: 0 0 8px 0;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.zb-card-list-title .a-link {
    color: var(--pk-c-font, #333);
}
.zb-card-list-title .a-link:hover {
    color: var(--style-color-primary, #5b8ff9);
}
.zb-card-list-excerpt {
    font-size: 13px;
    line-height: 1.6;
    color: var(--pk-c-sub, #999);
    margin: 0 0 10px 0;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.zb-card-list-meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
    font-size: 12px;
    color: #999;
}
.zb-card-list-meta .badge {
    font-size: 11px;
    padding: 2px 8px;
    border-radius: 4px;
}
.zb-card-list-meta i {
    margin-right: 4px;
    font-size: 12px;
}
.zb-card-list-comments {
    color: #999;
}
.zb-card-list-comments:hover {
    color: var(--style-color-primary, #409eff);
}
/* 响应式：移动端列表堆叠 */
@media (max-width: 768px) {
    .zb-card-list {
        flex-direction: column;
        gap: 12px;
        padding: 12px;
    }
    .zb-card-list-thumb {
        width: 100%;
        height: 180px;
    }
}

/* ===== Zibll 风格上一篇/下一篇导航 ===== */
.pz-nav-prev-next {
    display: flex;
    gap: 12px;
    margin-top: 16px;
}
.pz-nav-item {
    flex: 1;
    min-width: 0;
    border-radius: 8px;
    overflow: hidden;
    background: var(--pk-bg-grey, #f7f8fa);
    border: 1px solid var(--pk-c-border, rgba(0,0,0,0.06));
}
.pz-nav-item a {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 14px 16px;
    min-height: 74px;
    text-decoration: none;
    transition: background 0.2s, border-color 0.2s;
}
.pz-nav-next a {
    justify-content: flex-end;
    text-align: right;
}
.pz-nav-icon {
    flex-shrink: 0;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--pk-bg-grey, #eef0f3);
    color: var(--pk-c-sub, #666);
    font-size: 16px;
    transition: background 0.2s, color 0.2s;
}
.pz-nav-item a:hover {
    background: var(--style-color-primary, #409eff);
    border-color: transparent;
}
.pz-nav-item a:hover .pz-nav-icon {
    background: rgba(255,255,255,0.2);
    color: #fff;
}
.pz-nav-item a:hover .pz-nav-label,
.pz-nav-item a:hover .pz-nav-title {
    color: #fff;
}
.pz-nav-body {
    display: flex;
    flex-direction: column;
    min-width: 0;
}
.pz-nav-next .pz-nav-body {
    align-items: flex-end;
}
.pz-nav-label {
    font-size: 12px;
    color: var(--pk-c-sub, #999);
    margin-bottom: 4px;
    transition: color 0.2s;
}
.pz-nav-title {
    font-size: 14px;
    font-weight: 500;
    color: var(--pk-c-font, #333);
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    word-break: break-all;
    transition: color 0.2s;
}
.pz-nav-empty {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 14px 16px;
    min-height: 74px;
    cursor: default;
    opacity: 0.6;
}
.pz-nav-next.pz-nav-empty {
    justify-content: flex-end;
    text-align: right;
}
@media (max-width: 575.98px) {
    .pz-nav-prev-next {
        flex-direction: column;
        gap: 8px;
    }
    .pz-nav-item a,
    .pz-nav-empty {
        min-height: 62px;
        padding: 10px 14px;
    }
}

/* ===== Zibll 风格相关推荐 ===== */
.zb-relevant {
    margin-top: 16px;
    background: var(--pk-bg-card, #fff);
    border-radius: 8px;
    padding: 16px;
}
.zb-relevant-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 14px;
    border-bottom: 1px solid rgba(0,0,0,0.06);
    padding-bottom: 12px;
}
.zb-relevant-head h3 {
    font-size: 16px;
    font-weight: 600;
    margin: 0;
    color: #333;
    display: flex;
    align-items: center;
    gap: 6px;
}
.zb-relevant-head h3 i {
    color: var(--style-color-primary, #409eff);
}
.zb-relevant-head a {
    font-size: 13px;
    color: #999;
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 4px;
}
.zb-relevant-head a:hover {
    color: var(--style-color-primary, #409eff);
}

/* ===== Zibll 风格相关推荐 v2：横向滑动卡片 ===== */
.zb-relevant {
    margin-top: 16px;
    background: var(--pk-bg-card, #fff);
    border-radius: 8px;
    padding: 16px;
}
.zb-relevant-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 14px;
    border-bottom: 1px solid rgba(0,0,0,0.06);
    padding-bottom: 12px;
}
.zb-relevant-head h3 {
    font-size: 16px;
    font-weight: 600;
    margin: 0;
    color: #333;
    display: flex;
    align-items: center;
    gap: 6px;
}
.zb-relevant-head h3 i {
    color: var(--style-color-primary, #409eff);
}
.zb-relevant-head a {
    font-size: 13px;
    color: #999;
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 4px;
}
.zb-relevant-head a:hover {
    color: var(--style-color-primary, #409eff);
}
/* 横向滚动容器 */
.zb-relevant-scroll {
    display: flex;
    gap: 12px;
    overflow-x: auto;
    padding-bottom: 6px;
    scrollbar-width: none;
    -ms-overflow-style: none;
}
.zb-relevant-scroll::-webkit-scrollbar {
    display: none;
}
.zb-relevant-card {
    flex-shrink: 0;
    width: 210px;
    display: flex;
    flex-direction: column;
    text-decoration: none;
    border-radius: 8px;
    overflow: hidden;
    border: 1px solid rgba(0,0,0,0.06);
    background: #fff;
    transition: box-shadow 0.2s, transform 0.2s;
}
.zb-relevant-card:hover {
    box-shadow: 0 4px 16px rgba(0,0,0,0.1);
    transform: translateY(-2px);
}
.zb-relevant-card-img {
    position: relative;
    display: block;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    background: #f0f1f3;
}
.zb-relevant-card-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.35s;
}
.zb-relevant-card:hover .zb-relevant-card-img img {
    transform: scale(1.06);
}
.zb-relevant-card-noimg {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #c0c4cc;
    font-size: 28px;
}
/* 图片下方标题区（v3：不叠底，避免与图片内文字重叠） */
.zb-relevant-card-body {
    display: flex;
    flex-direction: column;
    flex: 1;
    padding: 8px 10px 6px;
    gap: 4px;
    min-width: 0;
}
.zb-relevant-card-title {
    font-size: 13px;
    font-weight: 500;
    line-height: 1.4;
    color: var(--pk-c-font, #333);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    word-break: break-word;
    max-height: 36.4px;
    min-height: 36.4px;
}
.zb-relevant-card-meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 12px;
    color: #999;
    margin-top: auto;
}
.zb-relevant-card-cat {
    max-width: 55%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.zb-relevant-card-time i {
    margin-right: 3px;
}
@media (max-width: 575.98px) {
    .zb-relevant-card { width: 180px; }
    /* 移动端标题 1 行截断 */
    .zb-relevant-card-title {
        -webkit-line-clamp: 1 !important;
        max-height: 18px !important;
        min-height: 18px !important;
        font-size: 12px !important;
        line-height: 18px !important;
    }
    .zb-relevant-card-body {
        padding: 6px 8px 5px !important;
    }
}

/* =========================================================
   顶部导航栏 Zibll 化（v1.7.10）— 直接样式化父主题菜单内置按钮
   ========================================================= */
#header .navbar {
    min-height: 64px;
    padding: 0;
}
#header .navbar > .container {
    align-items: center;
    height: 64px;
}
#header #logo {
    margin-right: 20px;
    display: flex;
    align-items: center;
}
/* 菜单容器：flex 布局，功能按钮推到右侧 */
#header .puock-links {
    flex: 1;
}
#header #menus {
    display: flex;
    align-items: center;
    flex: 1;
    width: 100%;
}
#header #menus > ul {
    display: flex;
    align-items: center;
    gap: 2px;
    margin: 0;
    padding: 0;
    list-style: none;
    width: 100%;
}
#header #menus > ul > li {
    margin: 0;
    padding: 0;
}
/* 普通菜单项 */
#header #menus > ul > li > a.ww,
#header #menus > ul > li > a:not(.pk-modal-toggle):not(.colorMode):not(.search-modal-btn) {
    position: relative;
    display: inline-flex;
    align-items: center;
    padding: 8px 14px;
    font-size: 14.5px;
    font-weight: 500;
    color: var(--pk-c-font, #18191c);
    text-decoration: none;
    border-radius: 8px;
    transition: color .2s, background .2s;
}
#header #menus > ul > li > a.ww:hover,
#header #menus > ul > li.current-menu-item > a.ww,
#header #menus > ul > li.current_page_item > a.ww {
    color: var(--pk-primary, #007fff);
    background: rgba(0, 127, 255, 0.06);
}
/* 功能按钮区（登录/用户、模式切换、简繁、搜索）：
   旧写法用 :nth-last-child(-n+3) 猜「最后三项」，开启简繁转换变 4 项、
   或关闭模式切换剩 2 项时会错位并把普通菜单项套成圆形图标。
   现改由 pz-main.js 按实际内容标记 .pz-nav-act / .pz-nav-act-first（见 pz-nav.css）。 */
/* 功能按钮统一样式：圆形图标 */
#header #menus a.pk-modal-toggle,
#header #menus a.colorMode,
#header #menus a.search-modal-btn {
    width: 36px;
    height: 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 16px;
    color: var(--pk-c-font, #18191c);
    cursor: pointer;
    padding: 0;
    text-decoration: none;
    transition: background .2s, color .2s;
}
#header #menus a.pk-modal-toggle:hover,
#header #menus a.colorMode:hover,
#header #menus a.search-modal-btn:hover {
    background: rgba(0, 127, 255, 0.08);
    color: var(--pk-primary, #007fff);
}
/* 毛玻璃增强 */
#header.blur .navbar {
    backdrop-filter: saturate(180%) blur(12px);
    -webkit-backdrop-filter: saturate(180%) blur(12px);
}
/* 深色模式 */
body.puock-dark #header #menus > ul > li > a.ww,
html[data-bs-theme="dark"] #header #menus > ul > li > a.ww {
    color: var(--pk-c-font, #e8e8e8);
}
body.puock-dark #header #menus > ul > li > a.ww:hover,
body.puock-dark #header #menus > ul > li.current-menu-item > a.ww,
html[data-bs-theme="dark"] #header #menus > ul > li > a.ww:hover,
html[data-bs-theme="dark"] #header #menus > ul > li.current-menu-item > a.ww {
    background: rgba(0, 127, 255, 0.15);
}
body.puock-dark #header #menus a.pk-modal-toggle,
body.puock-dark #header #menus a.colorMode,
body.puock-dark #header #menus a.search-modal-btn,
html[data-bs-theme="dark"] #header #menus a.pk-modal-toggle,
html[data-bs-theme="dark"] #header #menus a.colorMode,
html[data-bs-theme="dark"] #header #menus a.search-modal-btn {
    color: var(--pk-c-font, #e8e8e8);
}
body.puock-dark #header #menus a.pk-modal-toggle:hover,
body.puock-dark #header #menus a.colorMode:hover,
body.puock-dark #header #menus a.search-modal-btn:hover,
html[data-bs-theme="dark"] #header #menus a.pk-modal-toggle:hover,
html[data-bs-theme="dark"] #header #menus a.colorMode:hover,
html[data-bs-theme="dark"] #header #menus a.search-modal-btn:hover {
    background: rgba(0, 127, 255, 0.15);
}

/* =========================================================
   顶部多功能组件（Zibll 风格 - 完全复刻）
   ========================================================= */
.pz-top-banner {
    position: relative;
    padding: 80px 0 30px 0;
    margin-bottom: 0;
    overflow: visible;
    min-height: 200px;
    background: #2b5cff;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10;
}
/* 背景装饰气泡 */
.pz-top-banner::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image:
        radial-gradient(circle at 15% 30%, rgba(255,255,255,0.08) 0%, transparent 25%),
        radial-gradient(circle at 85% 20%, rgba(255,255,255,0.06) 0%, transparent 20%),
        radial-gradient(circle at 70% 70%, rgba(255,255,255,0.05) 0%, transparent 25%),
        radial-gradient(circle at 25% 80%, rgba(255,255,255,0.07) 0%, transparent 20%);
    pointer-events: none;
}
.pz-top-banner::after {
    content: '';
    position: absolute;
    top: 20%;
    left: 18%;
    width: 60px;
    height: 60px;
    border: 3px solid rgba(255,255,255,0.15);
    border-radius: 50%;
    pointer-events: none;
}
/* 默认背景（无背景图时） */
.pz-top-banner.pz-banner-default {
    background: #2b5cff;
}
/* 背景层 */
.pz-banner-bg-layer {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
}
.pz-banner-bg-item {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 0.8s ease;
}
.pz-banner-bg-item.active {
    opacity: 1;
}
.pz-banner-bg-image {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.pz-banner-bg-video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.pz-banner-bg-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(43,92,255,0.75);
}
/* 内容层 */
.pz-top-banner-inner {
    max-width: 900px;
    margin: 0 auto;
    padding: 0 20px;
    position: relative;
    z-index: 1;
    text-align: center;
}
/* 高斯模糊 */
.pz-top-banner.pz-banner-blur .pz-banner-search-form,
.pz-top-banner.pz-banner-blur .pz-banner-quick-link {
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}
/* 标题行 - 居中 */
.pz-banner-title-row {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-bottom: 16px;
    flex-wrap: wrap;
}
.pz-banner-title {
    font-size: 28px;
    font-weight: 700;
    color: #fff;
    margin: 0;
    letter-spacing: 1px;
    text-shadow: 0 2px 8px rgba(0,0,0,0.15);
}
.pz-banner-subtitle {
    font-size: 14px;
    color: #fff;
    background: #00c853;
    padding: 4px 14px;
    border-radius: 20px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-weight: 500;
}
.pz-banner-subtitle i {
    font-size: 11px;
}
/* 快捷标签 - 居中 */
.pz-banner-tags {
    display: flex;
    gap: 18px;
    margin-bottom: 24px;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}
.pz-banner-tag {
    font-size: 13px;
    color: rgba(255,255,255,0.95);
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.pz-banner-tag i {
    color: #4fc3f7;
    font-size: 12px;
}
/* 搜索框 - 淡紫色背景，内嵌图标 */
.pz-banner-search {
    margin-bottom: 24px;
}
.pz-banner-search-form {
    display: flex;
    background: rgba(255,255,255,0.15);
    border-radius: 40px;
    overflow: hidden;
    max-width: 700px;
    margin: 0 auto;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border: 1px solid rgba(255,255,255,0.2);
}
.pz-banner-search-input {
    flex: 1;
    border: none;
    outline: none;
    padding: 16px 28px;
    font-size: 15px;
    color: #fff;
    background: transparent;
}
.pz-banner-search-input::placeholder {
    color: rgba(255,255,255,0.6);
}
.pz-banner-search-btn {
    background: transparent;
    color: rgba(255,255,255,0.7);
    border: none;
    padding: 0 24px;
    cursor: pointer;
    font-size: 18px;
    transition: color 0.2s;
    display: flex;
    align-items: center;
    justify-content: center;
}
.pz-banner-search-btn:hover {
    color: #fff;
}
/* 热门搜索 */
.pz-banner-hot-search {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin-top: 14px;
    flex-wrap: wrap;
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
}
.pz-hot-label {
    font-size: 12px;
    color: rgba(255,255,255,0.8);
    display: inline-flex;
    align-items: center;
    gap: 4px;
}
.pz-hot-label i {
    color: #ff6b6b;
}
.pz-hot-keyword {
    font-size: 12px;
    color: rgba(255,255,255,0.8);
    text-decoration: none;
    padding: 3px 10px;
    border-radius: 12px;
    background: rgba(255,255,255,0.1);
    transition: all 0.2s;
}
.pz-hot-keyword:hover {
    background: rgba(255,255,255,0.2);
    color: #fff;
}
/* 快捷分类按钮 - 居中，半透明白色 */
.pz-banner-quick-links {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: center;
}
.pz-banner-quick-link {
    background: rgba(255,255,255,0.15);
    color: rgba(255,255,255,0.9);
    padding: 7px 18px;
    border-radius: 8px;
    font-size: 13px;
    text-decoration: none;
    transition: all 0.2s;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
}
.pz-banner-quick-link:hover {
    background: rgba(255,255,255,0.25);
    color: #fff;
    transform: translateY(-1px);
}
.pz-banner-quick-badge {
    background: #ff6b6b;
    color: #fff;
    font-size: 10px;
    padding: 1px 6px;
    border-radius: 8px;
    font-weight: 600;
}
/* 幻灯片翻页按钮 */
.pz-banner-slider-prev,
.pz-banner-slider-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: rgba(255,255,255,0.15);
    border: none;
    color: #fff;
    font-size: 14px;
    cursor: pointer;
    z-index: 2;
    transition: all 0.2s;
    display: flex;
    align-items: center;
    justify-content: center;
    backdrop-filter: blur(5px);
}
.pz-banner-slider-prev {
    left: 30px;
}
.pz-banner-slider-next {
    right: 30px;
}
.pz-banner-slider-prev:hover,
.pz-banner-slider-next:hover {
    background: rgba(255,255,255,0.3);
}
/* 幻灯片指示器 */
.pz-banner-slider-dots {
    position: absolute;
    bottom: 16px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 8px;
    z-index: 2;
}
.pz-banner-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: rgba(255,255,255,0.4);
    cursor: pointer;
    transition: all 0.3s;
}
.pz-banner-dot.active {
    width: 24px;
    border-radius: 4px;
    background: #fff;
}
/* 深色模式适配 */
body.puock-dark .pz-top-banner,
body.puock-dark .pz-top-banner.pz-banner-default {
    background: #1a3dbf;
}
/* 移动端适配 */
@media (max-width: 768px) {
    .pz-top-banner {
        padding: 35px 0 30px;
        min-height: 200px;
    }
    .pz-banner-title {
        font-size: 20px;
    }
    .pz-banner-subtitle {
        font-size: 12px;
        padding: 3px 10px;
    }
    .pz-banner-tags {
        gap: 12px;
        margin-bottom: 18px;
    }
    .pz-banner-tag {
        font-size: 11px;
    }
    .pz-banner-search-form {
        max-width: 100%;
    }
    .pz-banner-search-input {
        padding: 13px 20px;
        font-size: 13px;
    }
    .pz-banner-search-btn {
        padding: 0 18px;
        font-size: 16px;
    }
    .pz-banner-hot-search {
        display: flex;
        align-items: center;
        justify-content: center;
        flex-wrap: wrap;
        gap: 8px;
        margin-top: 12px;
        max-width: 100%;
    }
    .pz-hot-label {
        font-size: 11px;
        white-space: nowrap;
    }
    .pz-hot-keyword {
        font-size: 11px;
        padding: 4px 10px;
    }
    .pz-banner-quick-links {
        gap: 8px;
    }
    .pz-banner-quick-link {
        padding: 6px 14px;
        font-size: 12px;
    }
    .pz-banner-slider-prev,
    .pz-banner-slider-next {
        width: 34px;
        height: 34px;
        font-size: 12px;
    }
    .pz-banner-slider-prev {
        left: 12px;
    }
    .pz-banner-slider-next {
        right: 12px;
    }
}

/* =========================================================
   四宫格导航（顶部多功能组件内部，叠加在背景图上方）
   ========================================================= */
.pz-top-banner .zb-nav-grid {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%) translateY(50%);
    width: 100%;
    max-width: 1100px;
    padding: 0 20px;
    margin-bottom: 0;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
    z-index: 10;
}
/* 顶部多功能组件留出四宫格下半部分空间 */
.pz-top-banner {
    margin-bottom: 50px;
}
/* 四宫格卡片增强阴影，避免视觉上被遮挡 */
.pz-top-banner .zb-nav-grid-item {
    box-shadow: 0 8px 24px rgba(0,0,0,0.12);
}
/* 确保四宫格不被下方内容遮挡 */
.pz-top-banner .zb-nav-grid {
    z-index: 20;
}
.pz-top-banner .zb-nav-grid-item {
    position: relative;
    z-index: 100;
}
.pz-top-banner .zb-nav-grid-item {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 12px;
    padding: 16px 20px;
    background: rgba(255,255,255,0.75);
    border-radius: 12px;
    box-shadow: 0 4px 16px rgba(0,0,0,0.1);
    text-decoration: none;
    color: #333;
    transition: all 0.25s ease;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    min-height: auto;
}
.pz-top-banner .zb-nav-grid-item:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 24px rgba(0,0,0,0.15);
    background: rgba(255,255,255,0.9);
    color: #333;
}
.pz-top-banner .zb-nav-grid-icon {
    width: 44px;
    height: 44px;
    min-width: 44px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    color: #fff;
    background: linear-gradient(135deg, #ff9a56, #ff6b6b);
}
/* 四个图标不同颜色 */
.pz-top-banner .zb-nav-grid-item:nth-child(1) .zb-nav-grid-icon {
    background: linear-gradient(135deg, #ffb347, #ff8c42);
}
.pz-top-banner .zb-nav-grid-item:nth-child(2) .zb-nav-grid-icon {
    background: linear-gradient(135deg, #ff6b6b, #ee5a5a);
}
.pz-top-banner .zb-nav-grid-item:nth-child(3) .zb-nav-grid-icon {
    background: linear-gradient(135deg, #a78bfa, #8b5cf6);
}
.pz-top-banner .zb-nav-grid-item:nth-child(4) .zb-nav-grid-icon {
    background: linear-gradient(135deg, #fb7185, #f43f5e);
}
.pz-top-banner .zb-nav-grid-icon img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    object-fit: cover;
}
.pz-top-banner .zb-nav-grid-text {
    display: flex;
    flex-direction: column;
    gap: 2px;
    flex: 1;
    min-width: 0;
    text-align: left;
}
.pz-top-banner .zb-nav-grid-title {
    font-size: 15px;
    font-weight: 600;
    color: #333;
    display: flex;
    align-items: center;
    gap: 6px;
}
.pz-top-banner .zb-nav-grid-badge {
    font-size: 10px;
    font-weight: 600;
    padding: 1px 6px;
    border-radius: 8px;
    color: #fff;
    line-height: 1.4;
}
.pz-top-banner .zb-nav-grid-badge.hot { background: #ff6b6b; }
.pz-top-banner .zb-nav-grid-badge.fire { background: #ff4757; }
.pz-top-banner .zb-nav-grid-badge.new { background: #ffa502; }
.pz-top-banner .zb-nav-grid-badge.go { background: #3498db; }
.pz-top-banner .zb-nav-grid-sub {
    font-size: 12px;
    color: #999;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
/* 移动端适配 */
@media (max-width: 768px) {
    .pz-top-banner {
        display: block;
        padding: 60px 0 15px 0;
        min-height: auto;
        margin-bottom: 0;
    }
    .pz-top-banner .zb-nav-grid {
        position: relative;
        transform: none;
        left: auto;
        bottom: auto;
        width: 100%;
        max-width: 100%;
        grid-template-columns: repeat(2, 1fr);
        gap: 8px;
        padding: 0 12px;
        margin-top: 15px;
        margin-bottom: 15px;
        box-sizing: border-box;
    }
    .pz-top-banner .zb-nav-grid-item {
        padding: 12px 14px;
        gap: 10px;
    }
    .pz-top-banner .zb-nav-grid-icon {
        width: 36px;
        height: 36px;
        min-width: 36px;
        font-size: 16px;
    }
    .pz-top-banner .zb-nav-grid-title {
        font-size: 13px;
    }
    .pz-top-banner .zb-nav-grid-sub {
        font-size: 11px;
    }
}
/* 深色模式适配 */
body.puock-dark .pz-top-banner .zb-nav-grid-item {
    background: rgba(40,40,50,0.92);
    color: #e0e0e0;
}
body.puock-dark .pz-top-banner .zb-nav-grid-item:hover {
    background: rgba(50,50,65,0.98);
    color: #e0e0e0;
}
body.puock-dark .pz-top-banner .zb-nav-grid-title {
    color: #e0e0e0;
}
body.puock-dark .pz-top-banner .zb-nav-grid-sub {
    color: #999;
}

/* =========================================================
   顶部导航栏：透明叠加在背景图上（子比主题风格）
   ========================================================= */
/* 首页：透明导航栏叠加在顶部多功能组件上 */
body.home #header {
    background: linear-gradient(0deg, rgba(0,0,0,0) 5%, rgba(0,0,0,0.1) 80%) !important;
    background-color: transparent !important;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    border-bottom: none !important;
    transition: background 0.3s ease, background-color 0.3s ease, box-shadow 0.3s ease, backdrop-filter 0.3s ease;
    position: absolute !important;
    top: 0;
    left: 0;
    right: 0;
    z-index: 999;
}
/* 首页：#header-box 不占据空间 */
body.home #header-box {
    background: transparent !important;
    height: 0 !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden;
}
/* 导航栏文字改为白色（叠加在蓝色背景图上） */
#header .navbar {
    background: transparent !important;
    box-shadow: none !important;
}
/* 首页：确保所有导航栏元素完全透明 */
body.home #header,
body.home #header .navbar,
body.home #header .container,
body.home #header .navbar-brand,
body.home #header .menu-item,
body.home #header .menu-item a,
body.home #header .menu-item .ww,
body.home #header .colorMode,
body.home #header .search-modal-btn,
body.home #header .mobile-menus {
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    border: none !important;
}
/* 首页顶部多功能组件从页面最顶部开始，消除白色区域 */
.home .pz-top-banner {
    margin-top: 0 !important;
    padding-top: 80px !important;
}
/* 确保顶部多功能组件前面没有空白 */
.home > .container:first-of-type,
.home > div:first-of-type {
    margin-top: 0 !important;
}
/* 首页：当前菜单项也透明，只有文字白色 */
body.home #header .menu-item.menu-current .ww,
body.home #header .menu-item.current-menu-item .ww,
body.home #header .menu-item.current_page_item .ww {
    background: transparent !important;
    background-color: transparent !important;
    color: #fff !important;
    border-bottom: none !important;
    border-radius: 0 !important;
}
/* 首页：导航栏文字白色 */
body.home #header .navbar-brand,
body.home #header .navbar-brand .puock-text,
body.home #header .menu-item a,
body.home #header .menu-item .ww,
body.home #header .colorMode,
body.home #header .search-modal-btn,
body.home #header .mobile-menus,
body.home #header .puock-text,
body.home #header .min-avatar,
body.home #header .min-avatar img,
body.home #header .user-avatar,
body.home #header [class*=avatar] {
    color: #fff !important;
}
#header .menu-item.menu-current a,
#header .menu-item.menu-current .ww {
    color: #fff !important;
    border-bottom-color: #fff !important;
}
/* Logo 白色 */
#header #logo,
#header #logo .puock-text,
#header #logo .txt-logo {
    color: #fff !important;
}
/* 滚动时导航栏变为白色背景 */
/* 首页：滚动后导航栏白色背景+毛玻璃 */
body.home #header.pz-header-scrolled {
    background: rgba(255, 255, 255, 0.85) !important;
    background-color: rgba(255, 255, 255, 0.85) !important;
    backdrop-filter: saturate(5) blur(20px);
    -webkit-backdrop-filter: saturate(5) blur(20px);
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08);
    border-bottom: 1px solid rgba(0, 0, 0, 0.06) !important;
    position: fixed !important;
}
/* 滚动时文字恢复深色 */
/* 首页：滚动后导航栏文字深色 */
body.home #header.pz-header-scrolled .navbar-brand,
body.home #header.pz-header-scrolled .navbar-brand .puock-text,
body.home #header.pz-header-scrolled .menu-item a,
body.home #header.pz-header-scrolled .menu-item .ww,
body.home #header.pz-header-scrolled .colorMode,
body.home #header.pz-header-scrolled .search-modal-btn,
body.home #header.pz-header-scrolled .mobile-menus,
body.home #header.pz-header-scrolled .puock-text,
body.home #header.pz-header-scrolled .min-avatar,
body.home #header.pz-header-scrolled .user-avatar,
body.home #header.pz-header-scrolled [class*=avatar] {
    color: #343a40 !important;
}
#header.pz-header-scrolled .menu-item.menu-current a,
#header.pz-header-scrolled .menu-item.menu-current .ww {
    color: #2b5cff !important;
    border-bottom-color: #2b5cff !important;
}
#header.pz-header-scrolled #logo,
#header.pz-header-scrolled #logo .puock-text,
#header.pz-header-scrolled #logo .txt-logo {
    color: #343a40 !important;
}
/* 深色模式适配 */
body.puock-dark #header.pz-header-scrolled,
html[data-bs-theme="dark"] #header.pz-header-scrolled {
    background: rgba(30, 30, 40, 0.98) !important;
    background-color: rgba(30, 30, 40, 0.98) !important;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.3);
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
}
body.puock-dark #header.pz-header-scrolled .navbar-brand,
body.puock-dark #header.pz-header-scrolled .navbar-brand .puock-text,
body.puock-dark #header.pz-header-scrolled .navbar-brand .txt-logo,
body.puock-dark #header.pz-header-scrolled #logo,
body.puock-dark #header.pz-header-scrolled #logo .puock-text,
body.puock-dark #header.pz-header-scrolled #logo .txt-logo,
body.puock-dark #header.pz-header-scrolled .menu-item a,
body.puock-dark #header.pz-header-scrolled .menu-item .ww,
body.puock-dark #header.pz-header-scrolled .menu-item span,
body.puock-dark #header.pz-header-scrolled .colorMode,
body.puock-dark #header.pz-header-scrolled .search-modal-btn,
body.puock-dark #header.pz-header-scrolled .mobile-menus,
body.puock-dark #header.pz-header-scrolled .puock-text,
body.puock-dark #header.pz-header-scrolled .min-avatar,
body.puock-dark #header.pz-header-scrolled .user-avatar,
body.puock-dark #header.pz-header-scrolled [class*=avatar],
html[data-bs-theme="dark"] #header.pz-header-scrolled .navbar-brand,
html[data-bs-theme="dark"] #header.pz-header-scrolled .navbar-brand .puock-text,
html[data-bs-theme="dark"] #header.pz-header-scrolled .menu-item a,
html[data-bs-theme="dark"] #header.pz-header-scrolled .menu-item .ww,
html[data-bs-theme="dark"] #header.pz-header-scrolled .colorMode,
html[data-bs-theme="dark"] #header.pz-header-scrolled .search-modal-btn,
html[data-bs-theme="dark"] #header.pz-header-scrolled .puock-text,
html[data-bs-theme="dark"] #header.pz-header-scrolled .min-avatar,
html[data-bs-theme="dark"] #header.pz-header-scrolled .user-avatar,
html[data-bs-theme="dark"] #header.pz-header-scrolled [class*=avatar] {
    color: #e0e0e0 !important;
}
/* 深色模式下当前菜单项 */
body.puock-dark #header.pz-header-scrolled .menu-item.menu-current .ww,
body.puock-dark #header.pz-header-scrolled .menu-item.current-menu-item .ww,
body.puock-dark #header.pz-header-scrolled .menu-item.current_page_item .ww,
html[data-bs-theme="dark"] #header.pz-header-scrolled .menu-item.menu-current .ww,
html[data-bs-theme="dark"] #header.pz-header-scrolled .menu-item.current-menu-item .ww {
    color: #6b8aff !important;
}

/* =========================================================
   非首页：导航栏文字强制深灰色（修复白色文字在白色背景上看不见的问题）
   ========================================================= */
body:not(.home) #header {
    background: #fff !important;
    background-color: #fff !important;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 999 !important;
}
body:not(.home) #header-box {
    height: auto !important;
    min-height: 65px !important;
    background: #fff !important;
}
body:not(.home) #header .navbar-brand,
body:not(.home) #header .navbar-brand .puock-text,
body:not(.home) #header .navbar-brand .txt-logo,
body:not(.home) #header #logo,
body:not(.home) #header #logo .puock-text,
body:not(.home) #header #logo .txt-logo,
body:not(.home) #header .menu-item a,
body:not(.home) #header .menu-item .ww,
body:not(.home) #header .menu-item span,
body:not(.home) #header .colorMode,
body:not(.home) #header .search-modal-btn,
body:not(.home) #header .mobile-menus,
body:not(.home) #header .puock-text,
body:not(.home) #header .min-avatar,
body:not(.home) #header .user-avatar,
body:not(.home) #header [class*=avatar] {
    color: #343a40 !important;
}
/* 深色模式：非首页菜单栏深色背景 + 浅色文字 */
body.puock-dark:not(.home) #header,
body.puock-dark:not(.home) #header-box {
    background: #343a40 !important;
    background-color: #343a40 !important;
}
body.puock-dark:not(.home) #header .navbar-brand,
body.puock-dark:not(.home) #header .navbar-brand .puock-text,
body.puock-dark:not(.home) #header .navbar-brand .txt-logo,
body.puock-dark:not(.home) #header #logo,
body.puock-dark:not(.home) #header #logo .puock-text,
body.puock-dark:not(.home) #header #logo .txt-logo,
body.puock-dark:not(.home) #header .menu-item a,
body.puock-dark:not(.home) #header .menu-item .ww,
body.puock-dark:not(.home) #header .menu-item span,
body.puock-dark:not(.home) #header .colorMode,
body.puock-dark:not(.home) #header .search-modal-btn,
body.puock-dark:not(.home) #header .mobile-menus,
body.puock-dark:not(.home) #header .puock-text,
body.puock-dark:not(.home) #header .min-avatar,
body.puock-dark:not(.home) #header .user-avatar,
body.puock-dark:not(.home) #header [class*=avatar] {
    color: var(--pk-c-font, #dee2e6) !important;
}
/* 深色模式：非首页当前菜单项高亮 */
body.puock-dark:not(.home) #header .menu-item.menu-current .ww,
body.puock-dark:not(.home) #header .menu-item.current-menu-item .ww,
body.puock-dark:not(.home) #header .menu-item.current_page_item .ww {
    color: #5b8ff9 !important;
}
/* 当前菜单项 */
body:not(.home) #header .menu-item.menu-current .ww,
body:not(.home) #header .menu-item.current-menu-item .ww,
body:not(.home) #header .menu-item.current_page_item .ww {
    color: #2b5cff !important;
    border-bottom: none !important;
    background: transparent !important;
}

/* =========================================================
   强制移除菜单栏所有可能的蓝线（底部边框/下划线）
   注意：不要隐藏 ::before/::after 伪元素，否则 Font Awesome 图标会消失
   ========================================================= */
body:not(.home) #header,
body:not(.home) #header * {
    border-bottom: none !important;
    text-decoration: none !important;
}
body:not(.home) #header *::before,
body:not(.home) #header *::after {
    border-bottom: none !important;
    background: none !important;
}
/* 首页也移除 */
body.home #header,
body.home #header * {
    border-bottom: none !important;
    text-decoration: none !important;
}
body.home #header *::before,
body.home #header *::after {
    border-bottom: none !important;
    background: none !important;
}

/* =========================================================
   文章列表页隐藏价格标签（分类/标签/搜索/首页等列表页）
   仅文章详情页 single 显示价格
   ========================================================= */
body:not(.single) .zb-pay-tag,
body.category .zb-pay-tag,
body.archive .zb-pay-tag,
body.search .zb-pay-tag,
body.blog .zb-pay-tag,
body.tag .zb-pay-tag,
body.author .zb-pay-tag {
    display: none !important;
}
/* 列表页隐藏付费相关的其他元素 */
body:not(.single) .zb-pay-price,
body:not(.single) .post-price,
body:not(.single) .pay-info {
    display: none !important;
}

/* =========================================================
   移动端列表页卡片样式 - 跟首页一致，显示摘要
   ========================================================= */
@media (max-width: 768px) {
    /* 列表页卡片 - 跟首页紧凑卡片一致 */
    .zb-card.zb-card-list {
        padding: 8px !important;
        margin-bottom: 10px !important;
    }
    /* 缩略图高度跟首页一致 100px */
    .zb-card-list-thumb {
        height: 100px !important;
        min-height: 100px !important;
        max-height: 100px !important;
        overflow: hidden !important;
    }
    .zb-card-list-thumb img {
        height: 100% !important;
        object-fit: cover !important;
    }
    /* 内容区 - 显示摘要 */
    .zb-card-list-body {
        padding: 8px 6px 6px !important;
    }
    .zb-card-list-title {
        margin: 0 0 4px !important;
        font-size: 13px !important;
        line-height: 18px !important;
        min-height: 0 !important;
        max-height: 36px !important;
        overflow: hidden !important;
        display: -webkit-box !important;
        -webkit-line-clamp: 2 !important;
        -webkit-box-orient: vertical !important;
        word-break: break-word !important;
    }
    .zb-card-list-title a {
        line-height: 18px !important;
    }
    /* 显示摘要 - 跟首页一致 */
    .zb-card-list-excerpt {
        display: block !important;
        font-size: 11px !important;
        line-height: 15px !important;
        color: var(--pz-text-sub, #999) !important;
        margin-top: 4px !important;
        margin-bottom: 4px !important;
        max-height: 30px !important;
        overflow: hidden !important;
        display: -webkit-box !important;
        -webkit-line-clamp: 2 !important;
        -webkit-box-orient: vertical !important;
    }
    .zb-card-list-excerpt p {
        margin: 0 !important;
        font-size: 11px !important;
        line-height: 15px !important;
    }
    /* 元信息紧凑：仿首页 foot 结构，单/双行紧凑排列 */
    .zb-card-list-meta,
    .zb-card-list-footer,
    [class*=card-list-meta],
    [class*=card-list-footer] {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: wrap !important;
        gap: 2px 4px !important;
        margin-top: 4px !important;
        padding: 4px 0 0 !important;
        font-size: 10px !important;
        line-height: 14px !important;
        align-items: center !important;
    }
    .zb-card-list-meta > *,
    .zb-card-list-footer > * {
        margin-right: 0 !important;
        display: inline-flex !important;
        align-items: center !important;
        font-size: 10px !important;
        line-height: 14px !important;
        white-space: nowrap !important;
        gap: 2px !important;
    }
    .zb-card-list-meta i,
    .zb-card-list-footer i {
        font-size: 9px !important;
    }
    /* 隐藏时间，跟首页一致 */
    .zb-card-list-time,
    [class*=card-list-time] {
        display: none !important;
    }
    /* 分类标签紧凑：完整显示分类名（icon+文本+padding 约68px，放宽到90px） */
    .zb-card-list-cat,
    [class*=card-list-cat] {
        font-size: 10px !important;
        padding: 1px 6px !important;
        margin-bottom: 0 !important;
        max-width: 90px !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }
}

/* =========================================================
   移动端首页紧凑卡片优化（2列宫格）
   ========================================================= */
@media (max-width: 768px) {
    /* 卡片圆角与边框 */
    .zb-card-compact {
        border-radius: 10px !important;
        overflow: hidden !important;
    }
    /* 缩略图固定高度，避免 16:9 过大 */
    .zb-card-compact .zb-card-thumb {
        height: 100px !important;
        min-height: 100px !important;
        max-height: 100px !important;
        overflow: hidden !important;
    }
    .zb-card-compact .zb-card-thumb img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
    }
    /* 内容区紧凑 */
    .zb-card-compact .zb-card-body {
        padding: 8px 10px 8px !important;
    }
    /* 标题 2 行截断+省略号：line-clamp 在 Chrome 147 有效，关键是覆盖 min-height:40px 冲突
       （min-height 会撑开容器破坏 line-clamp 的省略号截断） */
    .zb-card-compact .zb-card-title {
        font-size: 13px !important;
        line-height: 18px !important;
        margin: 0 0 4px !important;
        min-height: 0 !important;
        max-height: 36px !important;
        overflow: hidden !important;
        display: -webkit-box !important;
        -webkit-line-clamp: 2 !important;
        -webkit-box-orient: vertical !important;
        word-break: break-word !important;
    }
    .zb-card-compact .zb-card-title a {
        display: inline !important;
        word-break: break-word !important;
        line-height: 18px !important;
    }
    /* 摘要 2 行截断+省略号：同样恢复 line-clamp */
    .zb-card-compact .zb-card-excerpt {
        font-size: 11px !important;
        line-height: 15px !important;
        min-height: 0 !important;
        max-height: 30px !important;
        margin-bottom: 4px !important;
        overflow: hidden !important;
        display: -webkit-box !important;
        -webkit-line-clamp: 2 !important;
        -webkit-box-orient: vertical !important;
    }
    .zb-card-compact .zb-card-excerpt p {
        margin: 0 !important;
        font-size: 11px !important;
        line-height: 15px !important;
    }
    /* 底部数据行紧凑 */
    .zb-card-compact .zb-card-foot {
        padding-top: 5px !important;
        margin-top: auto !important;
        border-top: none !important;
        gap: 2px !important;
    }
    .zb-card-compact .zb-card-stats {
        gap: 5px !important;
    }
    .zb-card-compact .zb-card-stat {
        font-size: 10px !important;
        white-space: nowrap !important;
    }
    .zb-card-compact .zb-card-stat i {
        font-size: 10px !important;
        margin-right: 1px !important;
    }
    /* 分类标签紧凑 */
    .zb-card-compact .zb-card-cat a {
        font-size: 10px !important;
        padding: 1px 6px !important;
        max-width: 70px !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }
    /* 首页卡片网格更紧凑 */
    .zb-card-grid-compact {
        gap: 8px !important;
    }
}

/* =========================================================
   列表页/分类页/文章页/搜索页内容区域居中（左右留空白）
   ========================================================= */
body:not(.home) #content > .container,
body.archive #content > .container,
body.category #content > .container,
body.single #content > .container,
body.search #content > .container,
body.blog #content > .container,
body.tag #content > .container,
body.author #content > .container {
    max-width: 1100px !important;
    margin: 0 auto !important;
    padding-left: 30px !important;
    padding-right: 30px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* 内容区域内部的行容器也居中 */
body:not(.home) #content > .container > .row,
body.archive #content > .container > .row,
body.category #content > .container > .row,
body.single #content > .container > .row {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* 桌面端：内容区域宽度跟随后台「页面宽度」设置（--pz-content-max，未设置时回退 1080px） */
@media (min-width: 1200px) {
    body:not(.home) #content > .container,
    body.archive #content > .container,
    body.category #content > .container,
    body.single #content > .container,
    body.search #content > .container,
    body.blog #content > .container {
        max-width: var(--pz-content-max, 1080px) !important;
        padding-left: 40px !important;
        padding-right: 40px !important;
    }
}

/* 移动端：内容区域左右留少量空白 */
@media (max-width: 768px) {
    body:not(.home) #content > .container,
    body.archive #content > .container,
    body.category #content > .container,
    body.single #content > .container,
    body.search #content > .container,
    body.blog #content > .container {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }
}

/* ---------- 热门搜索：独立显示（搜索框关闭时） ---------- */
.pz-hot-alone {
    margin: 14px auto 24px;
}

/* ---------- 搜索弹窗内的热门搜索 ---------- */
.pz-search-modal-hot {
    margin-top: 14px;
}
.pz-search-modal-hot .pz-hot-search {
    justify-content: center;
    margin-top: 0;
}
@media (max-width: 768px) {
    .pz-search-modal-hot .pz-hot-search {
        gap: 6px;
        font-size: 12px;
    }
    .pz-search-modal-hot .pz-hot-search-item {
        padding: 3px 9px;
        font-size: 12px;
    }
    .pz-search-modal-hot .pz-hot-search-label {
        font-size: 12px;
    }
}

/* ========== 分类页移动端强制单列（最高优先级） ========== */
@media (max-width: 767.98px) {
    html body #content .zb-archive-grid,
    html body main .zb-archive-grid,
    html body .zb-archive-grid,
    .zb-archive-grid {
        grid-template-columns: 1fr !important;
        --pz-card-cols: 1 !important;
        gap: 10px !important;
    }
    /* 分类页移动端适配 */
    .cat-top-info { padding: 8px 0 !important; }
    .cat-top-info .container { padding: 0 10px !important; }
    .cat-top-info .breadcrumb { font-size: 11px !important; flex-wrap: wrap !important; }
    .cat-top-info .child-cat { margin-top: 6px !important; }
    .cat-top-info .child-cat a { padding: 5px 3px !important; font-size: 11px !important; }
}

/* 隐藏文章底部分享栏 */
.pz-share-bar { display: none !important; }

/* ========== SEO语义化样式 ========== */
.pz-cat-title {
    font-size: 22px;
    font-weight: 700;
    margin: 15px 0 5px;
    color: var(--pk-c-font, #333);
}
.pz-article-content {
    display: block;
}
body.puock-dark .pz-cat-title {
    color: var(--pk-c-font, #dee2e6);
}
