/* ============================================================
   PC 端顶部导航栏优化（Puock-Zi）
   —— 仅在 ≥992px（父主题 d-lg 断点）生效，移动端与侧边抽屉不受影响

   状态类（inc/pz-nav.php 的 pz_nav_body_class 输出在 <body>）：
     .pz-nav-on             已启用
     .pz-nav-float          悬浮圆角卡片
     .pz-nav-scroll-hide    向下滚动收起、向上滚动显示
     .pz-nav-inline-search  点击搜索图标在导航条内展开输入框（关闭则回退父主题 #search 弹层）
     .pz-nav-act-pill       激活/悬停用胶囊浅底（默认）
     .pz-nav-act-underline  激活/悬停用底部指示条
     .pz-nav-act-color      激活/悬停仅变色，无底色

   CSS 变量：--pz-nav-h 由 wp_head 输出（后台「导航栏高度」）
   注意：父主题 #header 与 #header-box 高度写死 65px，改高度必须两者同步，
   否则占位块与固定栏不等高，页面顶部会出现错位。
   ============================================================ */
@media (min-width: 992px) {

    /* ---------- 高度与容器 ---------- */
    body.pz-nav-on #header,
    body.pz-nav-on #header-box {
        height: var(--pz-nav-h, 64px);
    }
    body.pz-nav-on #header .navbar {
        min-height: var(--pz-nav-h, 64px);
        padding: 0;
        border-bottom: 1px solid var(--pk-c-border, rgba(0, 0, 0, .06));
        transition: background-color .25s, box-shadow .25s, transform .28s cubic-bezier(.22, .61, .36, 1);
    }
    body.pz-nav-on #header .navbar > .container {
        position: relative; /* 供 .pz-nav-search 绝对定位 */
        height: var(--pz-nav-h, 64px);
        align-items: center;
    }
    body.pz-nav-on #header.pz-header-scrolled .navbar {
        box-shadow: 0 4px 16px rgba(0, 0, 0, .07);
    }

    /* ---------- Logo ---------- */
    body.pz-nav-on #header #logo {
        margin-right: 24px;
        display: flex;
        align-items: center;
        flex: 0 0 auto;
    }
    body.pz-nav-on #header #logo .txt-logo {
        font-size: 20px;
        font-weight: 700;
        letter-spacing: .3px;
    }
    body.pz-nav-on #header #logo img {
        max-height: 34px;
        object-fit: contain;
    }

    /* ---------- 菜单布局 ---------- */
    body.pz-nav-on #header .puock-links {
        flex: 1 1 auto;
        min-width: 0;
    }
    body.pz-nav-on #header #menus {
        display: flex;
        align-items: center;
        /* 父主题把 #menus 写死 65px：不改则「导航栏高度」设置失效，
           菜单会按 65px 垂直居中，与 48/96px 的 #header 错位 */
        height: var(--pz-nav-h, 64px);
    }
    body.pz-nav-on #header #menus > ul {
        display: flex;
        align-items: center;
        gap: 4px;
        margin: 0;
        padding: 0;
        list-style: none;
        flex-wrap: nowrap;
        /* 撑满可用宽度：菜单项靠左、功能按钮靠右。
           缺此行时 ul 只有内容宽，.pz-nav-act-first 的 margin-left:auto 无处可推，
           右侧功能按钮会紧贴最后一个菜单项而不靠右 */
        flex: 1 1 auto;
        min-width: 0;
        height: 100%;
    }
    body.pz-nav-on #header #menus > ul > li {
        position: relative; /* 二级菜单定位基准（父主题已有，此处显式声明便于阅读） */
        margin: 0;
        padding: 0;
        /* 父主题 #menus ul li 写死 height/line-height:65px，同步为 flex 居中 */
        height: auto;
        line-height: normal;
        display: flex;
        align-items: center;
        vertical-align: middle;
    }
    /* 关闭父主题的一级项指示条：父主题 #menus>ul>li:after 固定 top:62px 全宽 3px 主色，
       与子主题的胶囊/下划线激活样式叠加会出现「双指示」，且高度改动后位置错误 */
    body.pz-nav-on #header #menus > ul > li:after {
        content: none;
        display: none;
    }

    /* ---------- 一级菜单项 ---------- */
    body.pz-nav-on #header #menus > ul > li > a.ww {
        position: relative;
        display: inline-flex;
        align-items: center;
        gap: 3px;
        padding: 9px 14px;
        border-radius: 10px;
        font-size: 15px;
        font-weight: 500;
        white-space: nowrap;
        color: var(--pk-c-font, #343a40);
        text-decoration: none;
        transition: color .2s, background-color .2s;
    }
    body.pz-nav-on #header #menus > ul > li > a.ww:hover {
        color: var(--pk-c-primary, var(--pk-primary, #1c60f3));
    }
    /* 子菜单指示箭头 */
    body.pz-nav-on #header #menus > ul > li > a.ww .menu-sub-icon {
        font-size: 10px;
        opacity: .55;
        transition: transform .22s;
    }
    body.pz-nav-on #header #menus > ul > li:hover > a.ww .menu-sub-icon {
        transform: rotate(180deg);
    }

    /* ---------- 激活 / 悬停样式：胶囊（默认） ---------- */
    body.pz-nav-on.pz-nav-act-pill #header #menus > ul > li > a.ww:hover,
    body.pz-nav-on.pz-nav-act-pill #header #menus > ul > li.menu-current > a.ww,
    body.pz-nav-on.pz-nav-act-pill #header #menus > ul > li.current-menu-item > a.ww,
    body.pz-nav-on.pz-nav-act-pill #header #menus > ul > li.current-menu-ancestor > a.ww,
    body.pz-nav-on.pz-nav-act-pill #header #menus > ul > li.current_page_item > a.ww {
        color: var(--pk-c-primary, var(--pk-primary, #1c60f3));
        background-color: rgba(28, 96, 243, .08);
    }

    /* ---------- 激活 / 悬停样式：下划线 ---------- */
    body.pz-nav-on.pz-nav-act-underline #header #menus > ul > li > a.ww::after {
        content: '';
        position: absolute;
        left: 50%;
        bottom: 4px;
        width: 56%;
        height: 2px;
        border-radius: 2px;
        background: currentColor;
        transform: translateX(-50%) scaleX(0);
        transition: transform .22s cubic-bezier(.22, .61, .36, 1);
    }
    body.pz-nav-on.pz-nav-act-underline #header #menus > ul > li > a.ww:hover::after,
    body.pz-nav-on.pz-nav-act-underline #header #menus > ul > li.menu-current > a.ww::after,
    body.pz-nav-on.pz-nav-act-underline #header #menus > ul > li.current-menu-item > a.ww::after,
    body.pz-nav-on.pz-nav-act-underline #header #menus > ul > li.current-menu-ancestor > a.ww::after,
    body.pz-nav-on.pz-nav-act-underline #header #menus > ul > li.current_page_item > a.ww::after {
        transform: translateX(-50%) scaleX(1);
    }

    /* ---------- 激活 / 悬停样式：仅变色 ---------- */
    body.pz-nav-on.pz-nav-act-color #header #menus > ul > li.menu-current > a.ww,
    body.pz-nav-on.pz-nav-act-color #header #menus > ul > li.current-menu-item > a.ww,
    body.pz-nav-on.pz-nav-act-color #header #menus > ul > li.current-menu-ancestor > a.ww,
    body.pz-nav-on.pz-nav-act-color #header #menus > ul > li.current_page_item > a.ww {
        color: var(--pk-c-primary, var(--pk-primary, #1c60f3));
        font-weight: 600;
    }

    /* ---------- 右侧功能按钮（登录/用户、模式切换、简繁、搜索） ----------
       旧实现用 :nth-last-child(-n+3) 猜「最后三项是功能按钮」：
       开启简繁转换变成 4 项、或关闭模式切换只剩 2 项时，会把普通菜单项也套成圆形图标。
       现改由 pz-main.js 标记 .pz-nav-act（首个加 .pz-nav-act-first 推到右侧）。 */
    body.pz-nav-on #header #menus > ul > li.pz-nav-act {
        display: inline-flex;
        align-items: center;
        flex: 0 0 auto;
    }
    body.pz-nav-on #header #menus > ul > li.pz-nav-act-first {
        margin-left: auto;
    }
    body.pz-nav-on #header #menus > ul > li.pz-nav-act > a {
        width: 36px;
        height: 36px;
        padding: 0;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        border-radius: 50%;
        font-size: 15px;
        color: var(--pk-c-font, #343a40);
        text-decoration: none;
        transition: background-color .2s, color .2s;
    }
    body.pz-nav-on #header #menus > ul > li.pz-nav-act > a:hover {
        color: var(--pk-c-primary, var(--pk-primary, #1c60f3));
        background-color: rgba(28, 96, 243, .08);
    }
    /* 用户头像（父主题 .min-avatar 仅 20px 圆角矩形） */
    body.pz-nav-on #header #menus > ul > li.pz-nav-act img.min-avatar {
        width: 30px;
        height: 30px;
        border-radius: 50%;
        object-fit: cover;
        border: 2px solid rgba(127, 127, 140, .18);
        display: block;
    }

    /* ---------- 二级下拉菜单 ---------- */
    body.pz-nav-on #header #menus ul .sub-menu {
        display: block; /* 常驻 + 透明度过渡（父主题用 display:none/block，无法做动画） */
        top: 100%;
        left: 0;
        min-width: 172px;
        padding: 6px;
        box-sizing: border-box;
        background: var(--pk-bg-box, #fff);
        border: 1px solid var(--pk-c-border, rgba(0, 0, 0, .06));
        border-radius: 14px;
        box-shadow: 0 12px 32px rgba(0, 0, 0, .12);
        opacity: 0;
        visibility: hidden;
        transform: translateY(6px);
        transition: opacity .2s, transform .2s, visibility .2s;
    }
    body.pz-nav-on #header #menus ul li:hover > .sub-menu,
    body.pz-nav-on #header #menus ul li:focus-within > .sub-menu {
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
    }
    body.pz-nav-on #header #menus ul .sub-menu > li {
        display: block;
        min-height: 0;
        line-height: 1.5;
        text-align: left;
        white-space: nowrap;
        background: transparent;
    }
    /* 覆盖父主题「整行铺主色」的旧 hover */
    body.pz-nav-on #header #menus ul .sub-menu > li:hover,
    body.pz-nav-on #header #menus ul .sub-menu > li.menu-current {
        background-color: transparent;
        border-radius: 8px;
    }
    body.pz-nav-on #header #menus ul .sub-menu > li > a {
        display: block;
        width: 100%;
        padding: 8px 12px;
        border-radius: 9px;
        font-size: 14px;
        color: var(--pk-c-font, #343a40) !important; /* 父主题有 !important，必须同样加权 */
        text-decoration: none;
        transition: background-color .18s, color .18s;
    }
    body.pz-nav-on #header #menus ul .sub-menu > li > a:hover,
    body.pz-nav-on #header #menus ul .sub-menu > li.menu-current > a {
        color: var(--pk-c-primary, var(--pk-primary, #1c60f3)) !important;
        background-color: rgba(28, 96, 243, .08);
    }

    /* ---------- 导航内展开搜索 ---------- */
    .pz-nav-search {
        position: absolute;
        z-index: 5;
        top: 50%;
        right: 12px; /* = .container 的 padding-right（gutter-x 1.5rem / 2），与菜单内容右边缘对齐 */
        width: 0;
        opacity: 0;
        visibility: hidden;
        overflow: hidden;
        transform: translateY(-50%) translateX(10px);
        transition: opacity .22s, width .24s, transform .24s, visibility .22s;
    }
    body.pz-nav-search-open .pz-nav-search {
        width: min(320px, 44%);
        opacity: 1;
        visibility: visible;
        transform: translateY(-50%) translateX(0);
    }
    .pz-nav-search form {
        display: flex;
        align-items: center;
        gap: 6px;
        padding: 5px 6px 5px 13px;
        border-radius: 999px;
        background: var(--pk-bg-body, #f3f5f7);
        border: 1px solid var(--pk-c-border, rgba(0, 0, 0, .06));
    }
    .pz-nav-search .pz-nav-search-ico {
        flex: 0 0 auto;
        font-size: 13px;
        color: var(--pk-c-sub, #808695);
    }
    .pz-nav-search input {
        flex: 1 1 auto;
        min-width: 0;
        height: 28px;
        padding: 0;
        border: none;
        outline: none;
        background: transparent;
        font-size: 14px;
        color: var(--pk-c-font, #343a40);
    }
    .pz-nav-search input::placeholder {
        color: var(--pk-c-sub, #808695);
    }
    .pz-nav-search .pz-nav-search-close {
        flex: 0 0 auto;
        width: 26px;
        height: 26px;
        padding: 0;
        border: none;
        border-radius: 50%;
        background: rgba(127, 127, 140, .12);
        color: var(--pk-c-sub, #808695);
        font-size: 12px;
        line-height: 1;
        cursor: pointer;
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }
    .pz-nav-search .pz-nav-search-close:hover {
        background: rgba(127, 127, 140, .22);
    }
    /* 展开搜索时淡出整个右侧按钮组（含「发布 / 开通会员」CTA），避免被输入框压住 */
    body.pz-nav-search-open #header #menus > ul > li.pz-nav-act,
    body.pz-nav-search-open #header #menus > ul > li.pz-nav-cta {
        opacity: 0;
        pointer-events: none;
        transition: opacity .18s;
    }

    /* ---------- 悬浮圆角卡片 ----------
       结构：#header（fixed，只做遮罩） > .navbar（透明） > .container（真正的圆角卡片）
       · header 用「同色 → 透明」的竖向渐变做遮罩：中间由卡片挡住滚动内容，
         两侧留白区渐隐，避免内容在卡片外沿硬切；也不再像旧版那样用 body 色整条铺满，
         站点设置自定义背景图时不会露出一块纯色。
       · 卡片圆角 / 上下留白由后台设置驱动（--pz-nav-radius / --pz-nav-float-gap）。 */
    body.pz-nav-on.pz-nav-float #header,
    body.pz-nav-on.pz-nav-float #header-box {
        height: calc(var(--pz-nav-h, 64px) + var(--pz-nav-float-gap, 10px) * 2);
    }
    body.pz-nav-on.pz-nav-float #header {
        background-color: transparent !important;
        background-image: linear-gradient(
            to bottom,
            var(--pk-bg-body, #f3f5f7) 0,
            var(--pk-bg-body, #f3f5f7) 56%,
            transparent 100%
        ) !important;
        box-shadow: none !important;
        /* 父主题 nav_blur 给整个 #header 加毛玻璃：卡片模式下应只作用于卡片，
           否则两侧留白区也会被模糊，出现一条雾带 */
        -webkit-backdrop-filter: none !important;
        backdrop-filter: none !important;
    }
    body.pz-nav-on.pz-nav-float #header .navbar {
        min-height: calc(var(--pz-nav-h, 64px) + var(--pz-nav-float-gap, 10px) * 2);
        background: transparent !important;
        box-shadow: none !important;
        border-bottom: none !important;
    }
    /* 卡片属性全部 !important：pz-zb.css 首页规则会用 background:transparent !important
       把 .container 一并打透明，不加权则首页卡片整块消失 */
    body.pz-nav-on.pz-nav-float #header .navbar > .container {
        height: var(--pz-nav-h, 64px);
        margin: var(--pz-nav-float-gap, 10px) auto;
        padding-left: 18px;
        padding-right: 18px;
        border-radius: var(--pz-nav-radius, 16px) !important;
        background: var(--pk-bg-box, #fff) !important;
        background-color: var(--pk-bg-box, #fff) !important;
        border: 1px solid var(--pk-c-border, rgba(0, 0, 0, .06)) !important;
        /* 双层阴影：近距压实 + 远距扩散，比单层更接近真实悬浮 */
        box-shadow: 0 2px 6px rgba(0, 0, 0, .05), 0 10px 28px rgba(0, 0, 0, .08) !important;
        transition: box-shadow .25s, background-color .25s;
    }
    /* 滚动后加深阴影，强化「浮起来」的层次 */
    body.pz-nav-on.pz-nav-float #header.pz-header-scrolled .navbar > .container {
        box-shadow: 0 4px 10px rgba(0, 0, 0, .06), 0 16px 40px rgba(0, 0, 0, .12) !important;
    }
    /* 父主题开启「导航栏毛玻璃」时，卡片本身改为半透明玻璃 */
    body.pz-nav-on.pz-nav-float #header.blur .navbar > .container {
        background: var(--pk-bg-header, rgba(255, 255, 255, .78)) !important;
        background-color: var(--pk-bg-header, rgba(255, 255, 255, .78)) !important;
        -webkit-backdrop-filter: saturate(1.6) blur(14px) !important;
        backdrop-filter: saturate(1.6) blur(14px) !important;
    }
    body.pz-nav-on.pz-nav-float .pz-nav-search {
        right: 18px; /* 与卡片内边距同步，搜索框展开时贴卡片右内壁 */
    }
    /* 下拉菜单：与卡片留出间距，视觉上更像独立浮层 */
    body.pz-nav-on.pz-nav-float #header #menus ul .sub-menu {
        margin-top: 8px;
        border-radius: max(6px, calc(var(--pz-nav-radius, 16px) - 2px));
    }

    /* ---------- 悬浮卡片 × 首页透明导航 ----------
       pz-zb.css 首页把 #header 改为 absolute、#header-box 高度归零、
       全部元素强制透明背景。卡片模式下必须恢复占位与实心卡片，
       否则卡片浮在内容上 / 卡片透明不可见。 */
    body.home.pz-nav-on.pz-nav-float #header {
        position: fixed !important;
    }
    body.home.pz-nav-on.pz-nav-float #header-box {
        height: calc(var(--pz-nav-h, 64px) + var(--pz-nav-float-gap, 10px) * 2) !important;
        background: transparent !important;
        overflow: visible !important;
    }

    /* ---------- 向下滚动收起 ---------- */
    body.pz-nav-on.pz-nav-scroll-hide #header {
        transform: translateZ(0);
    }
    body.pz-nav-on.pz-nav-scroll-hide #header.pz-nav-hidden {
        transform: translateY(-100%);
    }

    /* ---------- 中等桌面屏：压缩间距，避免菜单挤爆容器 ---------- */
    @media (min-width: 992px) and (max-width: 1200px) {
        body.pz-nav-on #header #menus > ul > li > a.ww {
            padding: 9px 10px;
            font-size: 14px;
        }
        body.pz-nav-on #header #logo {
            margin-right: 14px;
        }
        /* 容器变窄，卡片内边距同步收一点，别让左右留白显得比上下还厚 */
        body.pz-nav-on.pz-nav-float #header .navbar > .container {
            padding-left: 14px;
            padding-right: 14px;
        }
        body.pz-nav-on.pz-nav-float .pz-nav-search {
            right: 14px;
        }
    }
}

/* ============================================================
   首页透明导航兼容：pz-zb.css 已强制白色文字（!important），
   这里把胶囊/悬停底色改为半透明白，避免白字压浅蓝底导致对比度不足。
   ============================================================ */
body.home.pz-nav-on.pz-nav-act-pill #header:not(.pz-header-scrolled) #menus > ul > li > a.ww:hover,
body.home.pz-nav-on.pz-nav-act-pill #header:not(.pz-header-scrolled) #menus > ul > li.menu-current > a.ww,
body.home.pz-nav-on.pz-nav-act-pill #header:not(.pz-header-scrolled) #menus > ul > li.current-menu-item > a.ww,
body.home.pz-nav-on.pz-nav-act-pill #header:not(.pz-header-scrolled) #menus > ul > li.current-menu-ancestor > a.ww,
body.home.pz-nav-on.pz-nav-act-pill #header:not(.pz-header-scrolled) #menus > ul > li.current_page_item > a.ww {
    background-color: rgba(255, 255, 255, .18) !important;
    color: #fff !important;
}
body.home.pz-nav-on #header:not(.pz-header-scrolled) #menus > ul > li.pz-nav-act > a:hover {
    background-color: rgba(255, 255, 255, .18) !important;
    color: #fff !important;
}

/* ============================================================
   「悬浮圆角卡片」与首页透明导航的冲突修复
   pz-zb.css 会把首页未滚动时的导航文字强制为白色（!important），
   但卡片模式下卡片本身就是不透明白底 —— 白字压白卡片等于菜单整体消失。
   这里以更高特异性（多一个 .pz-nav-float）把文字/激活底色恢复为常规配色：
   卡片模式语义上就是「实心卡片」，不再追求透明导航效果。
   ============================================================ */
body.home.pz-nav-on.pz-nav-float #header .navbar-brand,
body.home.pz-nav-on.pz-nav-float #header .navbar-brand .puock-text,
body.home.pz-nav-on.pz-nav-float #header .menu-item a,
body.home.pz-nav-on.pz-nav-float #header .menu-item .ww,
body.home.pz-nav-on.pz-nav-float #header .colorMode,
body.home.pz-nav-on.pz-nav-float #header .search-modal-btn,
body.home.pz-nav-on.pz-nav-float #header .mobile-menus,
body.home.pz-nav-on.pz-nav-float #header .puock-text,
body.home.pz-nav-on.pz-nav-float #header #logo,
body.home.pz-nav-on.pz-nav-float #header #logo .puock-text,
body.home.pz-nav-on.pz-nav-float #header #logo .txt-logo {
    color: var(--pk-c-font, #343a40) !important;
}
/* 当前菜单项：pz-zb.css 也强制过白色 */
body.home.pz-nav-on.pz-nav-float #header .menu-item.menu-current a,
body.home.pz-nav-on.pz-nav-float #header .menu-item.menu-current .ww,
body.home.pz-nav-on.pz-nav-float #header .menu-item.current-menu-item .ww,
body.home.pz-nav-on.pz-nav-float #header .menu-item.current_page_item .ww {
    color: var(--pk-c-primary, var(--pk-primary, #1c60f3)) !important;
}
/* 胶囊激活底色：卡片模式不再用半透明白 */
body.home.pz-nav-on.pz-nav-float #header:not(.pz-header-scrolled) #menus > ul > li > a.ww:hover,
body.home.pz-nav-on.pz-nav-float #header:not(.pz-header-scrolled) #menus > ul > li.menu-current > a.ww,
body.home.pz-nav-on.pz-nav-float #header:not(.pz-header-scrolled) #menus > ul > li.current-menu-item > a.ww,
body.home.pz-nav-on.pz-nav-float #header:not(.pz-header-scrolled) #menus > ul > li.current-menu-ancestor > a.ww,
body.home.pz-nav-on.pz-nav-float #header:not(.pz-header-scrolled) #menus > ul > li.current_page_item > a.ww,
body.home.pz-nav-on.pz-nav-float #header:not(.pz-header-scrolled) #menus > ul > li.pz-nav-act > a:hover {
    background-color: rgba(28, 96, 243, .08) !important;
    color: var(--pk-c-primary, var(--pk-primary, #1c60f3)) !important;
}
/* 滚动后 pz-zb.css 会给整个 #header 铺白色 + 毛玻璃：卡片模式下应交给卡片自己处理 */
body.home.pz-nav-on.pz-nav-float #header.pz-header-scrolled {
    background: transparent !important;
    background-image: linear-gradient(
        to bottom,
        var(--pk-bg-body, #f3f5f7) 0,
        var(--pk-bg-body, #f3f5f7) 56%,
        transparent 100%
    ) !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    box-shadow: none !important;
    border-bottom: none !important;
}

/* ============================================================
   深色模式
   ============================================================ */
html[data-bs-theme="dark"] body.pz-nav-on #header .navbar,
body.puock-dark.pz-nav-on #header .navbar {
    border-bottom-color: rgba(255, 255, 255, .08);
}
html[data-bs-theme="dark"] body.pz-nav-on #header #menus > ul > li > a.ww,
body.puock-dark.pz-nav-on #header #menus > ul > li > a.ww {
    color: var(--pk-c-font, #e0e0e0);
}
html[data-bs-theme="dark"] body.pz-nav-on.pz-nav-act-pill #header #menus > ul > li > a.ww:hover,
html[data-bs-theme="dark"] body.pz-nav-on.pz-nav-act-pill #header #menus > ul > li.menu-current > a.ww,
html[data-bs-theme="dark"] body.pz-nav-on.pz-nav-act-pill #header #menus > ul > li.current-menu-item > a.ww,
html[data-bs-theme="dark"] body.pz-nav-on.pz-nav-act-pill #header #menus > ul > li.current-menu-ancestor > a.ww,
body.puock-dark.pz-nav-on.pz-nav-act-pill #header #menus > ul > li > a.ww:hover,
body.puock-dark.pz-nav-on.pz-nav-act-pill #header #menus > ul > li.menu-current > a.ww,
body.puock-dark.pz-nav-on.pz-nav-act-pill #header #menus > ul > li.current-menu-item > a.ww,
body.puock-dark.pz-nav-on.pz-nav-act-pill #header #menus > ul > li.current-menu-ancestor > a.ww {
    background-color: rgba(255, 255, 255, .10);
    color: var(--pk-c-primary, #6d9bff);
}
html[data-bs-theme="dark"] body.pz-nav-on #header #menus > ul > li.pz-nav-act > a,
body.puock-dark.pz-nav-on #header #menus > ul > li.pz-nav-act > a {
    color: var(--pk-c-font, #e0e0e0);
}
html[data-bs-theme="dark"] body.pz-nav-on #header #menus > ul > li.pz-nav-act > a:hover,
body.puock-dark.pz-nav-on #header #menus > ul > li.pz-nav-act > a:hover {
    background-color: rgba(255, 255, 255, .10);
    color: var(--pk-c-primary, #6d9bff);
}
html[data-bs-theme="dark"] body.pz-nav-on #header #menus ul .sub-menu,
body.puock-dark.pz-nav-on #header #menus ul .sub-menu {
    background: var(--pk-bg-box, #343a40);
    border-color: rgba(255, 255, 255, .08);
    box-shadow: 0 12px 32px rgba(0, 0, 0, .45);
}
html[data-bs-theme="dark"] body.pz-nav-on #header #menus ul .sub-menu > li > a,
body.puock-dark.pz-nav-on #header #menus ul .sub-menu > li > a {
    color: var(--pk-c-font, #e0e0e0) !important;
}
html[data-bs-theme="dark"] body.pz-nav-on #header #menus ul .sub-menu > li > a:hover,
html[data-bs-theme="dark"] body.pz-nav-on #header #menus ul .sub-menu > li.menu-current > a,
body.puock-dark.pz-nav-on #header #menus ul .sub-menu > li > a:hover,
body.puock-dark.pz-nav-on #header #menus ul .sub-menu > li.menu-current > a {
    color: var(--pk-c-primary, #6d9bff) !important;
    background-color: rgba(255, 255, 255, .10);
}
html[data-bs-theme="dark"] .pz-nav-search form,
body.puock-dark .pz-nav-search form {
    background: rgba(255, 255, 255, .08);
    border-color: rgba(255, 255, 255, .10);
}
html[data-bs-theme="dark"] .pz-nav-search input,
body.puock-dark .pz-nav-search input {
    color: var(--pk-c-font, #e0e0e0);
}
html[data-bs-theme="dark"] body.pz-nav-on.pz-nav-float #header,
body.puock-dark.pz-nav-on.pz-nav-float #header {
    background-color: transparent !important;
    background-image: linear-gradient(
        to bottom,
        var(--pk-bg-body, #212529) 0,
        var(--pk-bg-body, #212529) 56%,
        transparent 100%
    ) !important;
}
html[data-bs-theme="dark"] body.pz-nav-on.pz-nav-float #header .navbar > .container,
body.puock-dark.pz-nav-on.pz-nav-float #header .navbar > .container {
    border-color: rgba(255, 255, 255, .08) !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, .35), 0 10px 28px rgba(0, 0, 0, .45) !important;
}
html[data-bs-theme="dark"] body.pz-nav-on.pz-nav-float #header.pz-header-scrolled .navbar > .container,
body.puock-dark.pz-nav-on.pz-nav-float #header.pz-header-scrolled .navbar > .container {
    box-shadow: 0 4px 10px rgba(0, 0, 0, .4), 0 16px 40px rgba(0, 0, 0, .55) !important;
}
html[data-bs-theme="dark"] body.pz-nav-on.pz-nav-float #header.blur .navbar > .container,
body.puock-dark.pz-nav-on.pz-nav-float #header.blur .navbar > .container {
    background: var(--pk-bg-header, rgba(33, 37, 41, .72)) !important;
    background-color: var(--pk-bg-header, rgba(33, 37, 41, .72)) !important;
}
/* 首页卡片模式：深色下同样恢复常规文字色 */
html[data-bs-theme="dark"] body.home.pz-nav-on.pz-nav-float #header .menu-item a,
html[data-bs-theme="dark"] body.home.pz-nav-on.pz-nav-float #header .menu-item .ww,
html[data-bs-theme="dark"] body.home.pz-nav-on.pz-nav-float #header .navbar-brand .puock-text,
body.puock-dark.home.pz-nav-on.pz-nav-float #header .menu-item a,
body.puock-dark.home.pz-nav-on.pz-nav-float #header .menu-item .ww,
body.puock-dark.home.pz-nav-on.pz-nav-float #header .navbar-brand .puock-text {
    color: var(--pk-c-font, #e0e0e0) !important;
}

/* ============================================================
   v1.9.23 导航增强（对标子比）
     · 右侧 CTA：「发布」按钮 + 「开通会员」按钮 + 悬浮套餐卡
     · 头像悬浮用户卡（.pz-nav-usercard，由 inc/pz-nav.php 注入到头像 <li> 内）
     · 导航搜索实时建议下拉（.pz-nav-suggest）
   结构与文案来源：inc/pz-nav.php 的 pz_nav_publish_li / pz_nav_vip_li /
   pz_nav_usercard_html / pz_ajax_nav_search
   ============================================================ */
@media (min-width: 992px) {

    /* ---------- 右侧 CTA 按钮 ---------- */
    body.pz-nav-on #header #menus > ul > li.pz-nav-cta {
        display: flex;
        align-items: center;
        flex: 0 0 auto;
        margin-left: 8px;
    }
    body.pz-nav-on #header #menus > ul > li.pz-nav-cta > a {
        display: inline-flex;
        align-items: center;
        gap: 5px;
        height: 36px;
        padding: 0 14px;
        border-radius: 999px;
        font-size: 14px;
        font-weight: 500;
        line-height: 1;
        white-space: nowrap;
        text-decoration: none;
        transition: filter .2s, transform .2s, box-shadow .2s;
    }
    body.pz-nav-on #header #menus > ul > li.pz-nav-cta > a .pz-svg-icon {
        width: 14px;
        height: 14px;
    }
    /* 发布：主色实底胶囊 */
    body.pz-nav-on #header #menus > ul > li.pz-nav-cta > a.pz-nav-cta-primary {
        background: var(--pk-c-primary, var(--pk-primary, #1c60f3));
        color: #fff !important;
        box-shadow: 0 4px 12px rgba(28, 96, 243, .26);
    }
    /* 开通会员：金红渐变胶囊 */
    body.pz-nav-on #header #menus > ul > li.pz-nav-cta > a.pz-nav-cta-vipbtn {
        background: linear-gradient(135deg, #ff9a44 0%, #fc6076 100%);
        color: #fff !important;
        box-shadow: 0 4px 12px rgba(252, 96, 118, .26);
    }
    body.pz-nav-on #header #menus > ul > li.pz-nav-cta > a:hover {
        filter: brightness(1.07);
        transform: translateY(-1px);
    }
    /* 已是会员：金色徽章（无底色，hover 才显浅底） */
    body.pz-nav-on #header #menus > ul > li.pz-nav-cta.is-vip > a.pz-nav-vip-badge {
        gap: 6px;
        padding: 0 12px;
        background: rgba(255, 154, 68, .12);
        color: #e8833a !important;
        box-shadow: none;
    }
    body.pz-nav-on #header #menus > ul > li.pz-nav-cta.is-vip > a.pz-nav-vip-badge:hover {
        background: rgba(255, 154, 68, .2);
        filter: none;
    }
    .pz-nav-vip-exp {
        padding: 1px 7px;
        border-radius: 999px;
        background: linear-gradient(135deg, #f59f54 10%, #ff6922 100%);
        color: #fff;
        font-size: 11px;
        font-weight: 400;
    }

    /* ---------- 悬浮会员套餐卡 ---------- */
    .pz-nav-vip-card {
        position: absolute;
        z-index: 30;
        top: 100%;
        right: 0;
        width: 268px;
        padding: 12px;
        border-radius: 16px;
        background: var(--pk-bg-box, #fff);
        border: 1px solid var(--pk-c-border, rgba(0, 0, 0, .06));
        box-shadow: 0 14px 36px rgba(0, 0, 0, .14);
        opacity: 0;
        visibility: hidden;
        transform: translateY(6px);
        transition: opacity .2s, transform .2s, visibility .2s;
    }
    .pz-nav-vip-card::before { /* 悬停桥：卡片与按钮之间的透明区域，避免鼠标移动时闪断 */
        content: '';
        position: absolute;
        left: 0;
        right: 0;
        top: -10px;
        height: 10px;
    }
    li.pz-nav-cta-vip:hover .pz-nav-vip-card,
    li.pz-nav-cta-vip:focus-within .pz-nav-vip-card {
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
    }
    .pz-nav-vip-card-head {
        display: flex;
        align-items: center;
        gap: 6px;
        margin-bottom: 10px;
        font-size: 13px;
        font-weight: 600;
        color: var(--pk-c-font, #343a40);
    }
    .pz-nav-vip-card-head .pz-svg-icon {
        width: 15px;
        height: 15px;
        color: #f59f54;
    }
    .pz-nav-vip-plan {
        display: flex;
        align-items: center;
        gap: 8px;
        padding: 9px 11px;
        margin-bottom: 6px;
        border-radius: 11px;
        background: rgba(127, 127, 140, .07);
        text-decoration: none;
        transition: background-color .18s;
    }
    .pz-nav-vip-plan:hover {
        background: rgba(252, 96, 118, .12);
    }
    .pz-nav-vip-plan-name {
        font-size: 13px;
        font-weight: 600;
        color: var(--pk-c-font, #343a40);
    }
    .pz-nav-vip-plan-meta {
        font-size: 11px;
        color: var(--pk-c-sub, #808695);
    }
    .pz-nav-vip-plan-price {
        margin-left: auto;
        font-size: 14px;
        font-weight: 700;
        color: #fc6076;
    }
    .pz-nav-vip-card-all {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 4px;
        margin-top: 8px;
        padding-top: 10px;
        border-top: 1px dashed var(--pk-c-border, rgba(0, 0, 0, .08));
        font-size: 13px;
        color: var(--pk-c-primary, #1c60f3);
        text-decoration: none;
    }
    .pz-nav-vip-card-all .pz-svg-icon {
        width: 11px;
        height: 11px;
    }

    /* ---------- 头像悬浮用户卡 ---------- */
    body.pz-nav-on #header #menus > ul > li.pz-nav-user {
        align-items: center;
    }
    .pz-nav-usercard {
        position: absolute;
        z-index: 30;
        top: 100%;
        right: 0;
        width: 296px;
        padding: 14px;
        border-radius: 16px;
        background: var(--pk-bg-box, #fff);
        border: 1px solid var(--pk-c-border, rgba(0, 0, 0, .06));
        box-shadow: 0 14px 36px rgba(0, 0, 0, .14);
        opacity: 0;
        visibility: hidden;
        transform: translateY(6px);
        transition: opacity .2s, transform .2s, visibility .2s;
        text-align: left;
    }
    .pz-nav-usercard::before { /* 悬停桥 */
        content: '';
        position: absolute;
        left: 0;
        right: 0;
        top: -10px;
        height: 10px;
    }
    li.pz-nav-user:hover .pz-nav-usercard,
    li.pz-nav-user:focus-within .pz-nav-usercard {
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
    }
    .pz-nuc-head {
        display: flex;
        align-items: center;
        gap: 10px;
    }
    .pz-nuc-avatar img {
        width: 44px;
        height: 44px;
        border-radius: 50%;
        object-fit: cover;
        display: block;
        border: 2px solid rgba(127, 127, 140, .18);
    }
    .pz-nuc-head-main {
        flex: 1 1 auto;
        min-width: 0;
    }
    .pz-nuc-name {
        display: block;
        font-size: 14px;
        font-weight: 600;
        color: var(--pk-c-font, #343a40);
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
    .pz-nuc-desc {
        font-size: 12px;
        color: var(--pk-c-sub, #808695);
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
    .pz-nuc-msg {
        position: relative;
        flex: 0 0 auto;
        width: 32px;
        height: 32px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        border-radius: 50%;
        background: rgba(127, 127, 140, .1);
        color: var(--pk-c-font, #343a40);
        text-decoration: none;
    }
    .pz-nuc-msg:hover {
        background: rgba(28, 96, 243, .12);
        color: var(--pk-c-primary, #1c60f3);
    }
    .pz-nuc-dot {
        position: absolute;
        top: -3px;
        right: -3px;
        min-width: 17px;
        height: 17px;
        padding: 0 4px;
        border-radius: 9px;
        background: #ff4d4f;
        color: #fff;
        font-size: 10px;
        font-style: normal;
        line-height: 17px;
        text-align: center;
    }
    .pz-nuc-vip {
        display: flex;
        align-items: center;
        gap: 6px;
        margin-top: 12px;
        padding: 8px 12px;
        border-radius: 9px;
        background: linear-gradient(300deg, #4c4d51, #2a2a31 15%, #85858a 40%, #393a3c 60%, #393838 80%, #5e5f62 100%);
        color: #ece0e0;
        font-size: 12px;
        text-decoration: none;
    }
    .pz-nuc-vip .pz-svg-icon {
        width: 14px;
        height: 14px;
        color: #ffd166;
    }
    .pz-nuc-vip-exp {
        margin-left: auto;
        padding: 1px 7px;
        border-radius: 999px;
        background: linear-gradient(135deg, #f59f54 10%, #ff6922 100%);
        color: #fff;
        font-size: 11px;
    }
    .pz-nuc-vip-btn:hover {
        filter: brightness(1.12);
    }
    .pz-nuc-checkin {
        display: flex;
        align-items: center;
        gap: 6px;
        margin-top: 8px;
        padding: 8px 12px;
        border-radius: 9px;
        background: linear-gradient(135deg, #f59f54 10%, #ff6922 100%);
        color: #fff;
        font-size: 12px;
        text-decoration: none;
    }
    .pz-nuc-checkin.is-done {
        background: rgba(127, 127, 140, .14);
        color: #888;
    }
    .pz-nuc-wallet {
        display: flex;
        gap: 8px;
        margin-top: 8px;
    }
    .pz-nuc-wallet a {
        flex: 1 1 0;
        min-width: 0;
        padding: 7px 11px;
        border-radius: 9px;
        background: rgba(127, 127, 140, .1);
        text-decoration: none;
    }
    .pz-nuc-wallet-label {
        display: block;
        font-size: 11px;
        color: var(--pk-c-sub, #808695);
    }
    .pz-nuc-wallet-val {
        display: block;
        margin-top: 1px;
        font-size: 15px;
        font-weight: 700;
        color: var(--pk-c-primary, #1c60f3);
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
    .pz-nuc-grid {
        display: flex;
        flex-wrap: wrap;
        margin-top: 12px;
        padding-top: 12px;
        border-top: 1px solid var(--pk-c-border, rgba(0, 0, 0, .07));
    }
    .pz-nuc-grid > a {
        flex: 0 0 25%;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 5px;
        padding: 7px 2px;
        border-radius: 10px;
        font-size: 12px;
        color: var(--pk-c-font, #343a40);
        text-decoration: none;
        transition: background-color .18s;
    }
    .pz-nuc-grid > a:hover {
        background: rgba(127, 127, 140, .1);
    }
    .pz-nuc-ico {
        width: 34px;
        height: 34px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        border-radius: 50%;
        color: #fff;
    }
    .pz-nuc-ico .pz-svg-icon {
        width: 15px;
        height: 15px;
    }
    .pz-nuc-ico.c-blue { background: #4a8cf7; }
    .pz-nuc-ico.c-purple { background: #9b6cf7; }
    .pz-nuc-ico.c-green { background: #35c07f; }
    .pz-nuc-ico.c-yellow { background: #f0a92b; }
    .pz-nuc-ico.c-red { background: #ef5b6b; }

    /* ---------- 导航搜索实时建议 ---------- */
    .pz-nav-suggest {
        position: absolute;
        z-index: 4;
        top: calc(100% - 6px);
        right: 12px;
        width: min(360px, 52%);
        padding: 8px;
        border-radius: 16px;
        background: var(--pk-bg-box, #fff);
        border: 1px solid var(--pk-c-border, rgba(0, 0, 0, .06));
        box-shadow: 0 14px 36px rgba(0, 0, 0, .14);
        display: none;
        max-height: 380px;
        overflow-y: auto;
        overscroll-behavior: contain;
    }
    body.pz-nav-search-open .pz-nav-suggest.is-show {
        display: block;
    }
    body.pz-nav-on.pz-nav-float .pz-nav-suggest {
        right: 16px;
    }
    .pz-nav-suggest-title {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 4px 8px 6px;
        font-size: 12px;
        color: var(--pk-c-sub, #808695);
    }
    .pz-nav-suggest-clear {
        border: none;
        background: none;
        padding: 0;
        font-size: 12px;
        color: var(--pk-c-sub, #808695);
        cursor: pointer;
    }
    .pz-nav-suggest-clear:hover {
        color: var(--pk-c-primary, #1c60f3);
    }
    .pz-nav-suggest-tags {
        display: flex;
        flex-wrap: wrap;
        gap: 6px;
        padding: 0 8px 8px;
    }
    .pz-nav-suggest-tag {
        padding: 4px 10px;
        border-radius: 999px;
        background: rgba(127, 127, 140, .1);
        font-size: 12px;
        color: var(--pk-c-font, #343a40);
        text-decoration: none;
        transition: background-color .18s, color .18s;
    }
    .pz-nav-suggest-tag:hover,
    .pz-nav-suggest-tag.is-active {
        background: rgba(28, 96, 243, .12);
        color: var(--pk-c-primary, #1c60f3);
    }
    .pz-nav-suggest-item {
        display: flex;
        align-items: center;
        gap: 8px;
        padding: 9px 10px;
        border-radius: 10px;
        font-size: 13px;
        color: var(--pk-c-font, #343a40);
        text-decoration: none;
    }
    .pz-nav-suggest-item:hover,
    .pz-nav-suggest-item.is-active {
        background: rgba(28, 96, 243, .09);
        color: var(--pk-c-primary, #1c60f3);
    }
    .pz-nav-suggest-item .pz-svg-icon {
        width: 13px;
        height: 13px;
        flex: 0 0 auto;
        opacity: .55;
    }
    .pz-nav-suggest-item-title {
        flex: 1 1 auto;
        min-width: 0;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
    .pz-nav-suggest-item-date {
        flex: 0 0 auto;
        font-size: 11px;
        color: var(--pk-c-sub, #808695);
    }
    .pz-nav-suggest-item-type {
        flex: 0 0 auto;
        padding: 1px 7px;
        border-radius: 999px;
        background: rgba(127, 127, 140, .12);
        font-size: 11px;
        color: var(--pk-c-sub, #808695);
    }
    .pz-nav-suggest-empty {
        padding: 16px 10px;
        text-align: center;
        font-size: 13px;
        color: var(--pk-c-sub, #808695);
    }
}

/* ---------- 深色模式 ---------- */
html[data-bs-theme="dark"] .pz-nav-usercard,
html[data-bs-theme="dark"] .pz-nav-vip-card,
html[data-bs-theme="dark"] .pz-nav-suggest,
body.puock-dark .pz-nav-usercard,
body.puock-dark .pz-nav-vip-card,
body.puock-dark .pz-nav-suggest {
    background: var(--pk-bg-box, #2b2f36);
    border-color: rgba(255, 255, 255, .08);
    box-shadow: 0 14px 36px rgba(0, 0, 0, .5);
}
html[data-bs-theme="dark"] .pz-nav-vip-plan,
html[data-bs-theme="dark"] .pz-nuc-wallet a,
html[data-bs-theme="dark"] .pz-nuc-msg,
body.puock-dark .pz-nav-vip-plan,
body.puock-dark .pz-nuc-wallet a,
body.puock-dark .pz-nuc-msg {
    background: rgba(255, 255, 255, .08);
}
html[data-bs-theme="dark"] .pz-nuc-name,
html[data-bs-theme="dark"] .pz-nav-vip-plan-name,
html[data-bs-theme="dark"] .pz-nuc-grid > a,
html[data-bs-theme="dark"] .pz-nav-suggest-item,
html[data-bs-theme="dark"] .pz-nav-suggest-tag,
body.puock-dark .pz-nuc-name,
body.puock-dark .pz-nav-vip-plan-name,
body.puock-dark .pz-nuc-grid > a,
body.puock-dark .pz-nav-suggest-item,
body.puock-dark .pz-nav-suggest-tag {
    color: var(--pk-c-font, #e0e0e0);
}
html[data-bs-theme="dark"] body.pz-nav-on #header #menus > ul > li.pz-nav-cta.is-vip > a.pz-nav-vip-badge,
body.puock-dark.pz-nav-on #header #menus > ul > li.pz-nav-cta.is-vip > a.pz-nav-vip-badge {
    background: rgba(255, 154, 68, .18);
    color: #ffb066 !important;
}
