/**
 * BQ Builder — 导航栏样式（外部文件，可浏览器缓存）
 * 动态值通过 CSS 自定义属性注入（header.php 内联 :root 块）
 */

/* ===== 基础导航 ===== */
.bq-nav-menu { flex:1; display:flex; align-items:center; }
.bq-nav-menu { justify-content: var(--bq-hdr-menu-align, flex-end); }
.bq-nav-list { display:flex; list-style:none; margin:0; padding:0; gap:4px; align-items:center; }
.bq-nav-list li { position:relative; margin:0; }
.bq-nav-list > li > a {
    display:block; padding:8px 14px; font-size:15px; font-weight:500;
    color: var(--bq-hdr-text, #1e293b);
    text-decoration:none; border-radius:6px;
    transition: color 0.2s ease, background 0.2s ease;
    white-space:nowrap;
}
.bq-nav-list > li > a:hover,
.bq-nav-list > li.current-menu-item > a,
.bq-nav-list > li.current_page_parent > a {
    color: var(--bq-hdr-hover, #2563eb);
}
.bq-nav-list > li > a:hover,
.bq-nav-list > li.current-menu-item > a,
.bq-nav-list > li.current_page_parent > a {
    color: var(--bq-hdr-hover, #2563eb);
    background: var(--bq-hdr-hover-bg, rgba(0,0,0,0.04));
}

/* ===== 风格 1：左Logo右菜单 ===== */
.bq-header-style-left-logo-right-menu .bq-header-inner { max-width:1400px; }
.bq-header-style-left-logo-right-menu .bq-header-logo .bq-logo-text { font-size:24px; color:#0f172a; }
.bq-header-style-left-logo-right-menu .bq-header-cta {
    border-radius:50px;
    background: var(--bq-hdr-hover, #7c3aed);
    color:#fff;
}

/* ===== 风格 2：全宽透明 ===== */
.bq-header-style-fullwidth-transparent { position: var(--bq-hdr-pos-override, absolute); }
.bq-header-style-fullwidth-transparent .bq-header-inner { max-width:100%; }
.bq-header-style-fullwidth-transparent .bq-header-cta {
    background:rgba(255,255,255,0.2) !important;
    color:white !important;
    border:1px solid rgba(255,255,255,0.3);
}

/* ===== 风格 3：深色主题 ===== */
.bq-header-style-dark-theme .bq-header-inner { max-width:1200px; }
.bq-header-style-dark-theme .bq-header-cta {
    background:#38bdf8 !important;
    color:#0f172a !important;
}

/* ===== 风格 4：渐变 ===== */
.bq-header-style-gradient .bq-header-inner { max-width:1200px; }
.bq-header-style-gradient .bq-header-cta {
    background:rgba(255,255,255,0.2) !important;
    color:white !important;
    border:1px solid rgba(255,255,255,0.3);
}

/* ===== 风格 5：下划线高亮 ===== */
.bq-header-style-underline-highlight .bq-header-inner { max-width:1200px; }
.bq-header-style-underline-highlight .bq-header-cta {
    background: var(--bq-hdr-underline, #2563eb);
    color:#fff;
}
.bq-header-style-underline-highlight .bq-nav-list > li > a {
    border-radius:0;
    position:relative;
}
.bq-header-style-underline-highlight .bq-nav-list > li > a::after {
    content:'';
    position:absolute;
    bottom:0;
    left:14px;
    right:14px;
    height:2px;
    background: var(--bq-hdr-underline, #2563eb);
    transform:scaleX(0);
    transition:transform 0.3s ease;
}
.bq-header-style-underline-highlight .bq-nav-list > li > a:hover::after,
.bq-header-style-underline-highlight .bq-nav-list > li.current-menu-item > a::after,
.bq-header-style-underline-highlight .bq-nav-list > li.current_page_parent > a::after {
    transform:scaleX(1);
}
.bq-header-style-underline-highlight .bq-nav-list > li > a:hover {
    background:transparent;
}

/* ===== 风格 6：分离式 ===== */
.bq-header-style-separated .bq-header-inner {
    max-width:1400px;
    gap: var(--bq-hdr-sep-gap, 40px);
}
.bq-header-style-separated .bq-header-logo .bq-logo-text { font-size:24px; }
.bq-header-style-separated .bq-nav-list > li > a { font-size:16px; padding:10px 18px; }
.bq-header-style-separated .bq-header-cta {
    margin-left:auto;
    background:#059669 !important;
    color:white !important;
}

/* ===== 下拉子菜单 ===== */
.bq-nav-list .sub-menu {
    display:none; position:absolute; top:100%; left:0;
    min-width:200px; background:#fff; border-radius:8px;
    box-shadow:0 8px 30px rgba(0,0,0,0.12); padding:8px 0;
    list-style:none; margin:4px 0 0; z-index:100;
}
.bq-nav-list li:hover > .sub-menu { display:block; }
.bq-nav-list .sub-menu li a {
    display:block; padding:8px 20px; font-size:14px; color:#374151;
    text-decoration:none; transition: background 0.15s ease, color 0.15s ease;
}
.bq-nav-list .sub-menu li a:hover {
    background:#f1f5f9; color: var(--bq-hdr-hover, #2563eb);
}
.bq-nav-list .sub-menu .sub-menu {
    top:0; left:100%; margin:0; margin-left:4px;
}

/* ===== CTA 按钮 ===== */
.bq-header-cta {
    margin-left:16px; display:inline-flex; align-items:center;
    height: var(--bq-hdr-cta-h, 54px);
    padding:0 20px; border-radius:6px; font-size:14px; font-weight:600;
    text-decoration:none; white-space:nowrap;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.bq-header-cta.bq-cta-solid {
    background: var(--bq-hdr-hover, #2563eb);
    color:#fff;
}
.bq-header-cta.bq-cta-outline {
    border: 2px solid var(--bq-hdr-cta-border, #2563eb);
    color: var(--bq-hdr-cta-border, #2563eb);
}
.bq-header-cta:hover { transform:translateY(-2px); box-shadow:0 4px 12px rgba(0,0,0,0.15); }

/* ===== 汉堡按钮 ===== */
.bq-menu-toggle {
    display:none; background:none; border:none;
    cursor:pointer; padding:8px; margin-left:auto; z-index:1000;
}
.bq-menu-toggle span {
    display:block; width:24px; height:2px; margin-bottom:5px;
    background: var(--bq-hdr-hamburger-clr, var(--bq-hdr-text, #1e293b));
    border-radius:2px; transition: transform 0.3s ease, opacity 0.3s ease;
}
.bq-menu-toggle span:last-child { margin-bottom:0; }
.bq-menu-toggle.active span:nth-child(1) { transform:rotate(45deg) translate(5px,5px); }
.bq-menu-toggle.active span:nth-child(2) { opacity:0; }
.bq-menu-toggle.active span:nth-child(3) { transform:rotate(-45deg) translate(5px,-5px); }

/* ===== 移动端菜单 ===== */
.bq-mobile-nav {
    display:none; position:fixed; top:0; bottom:0; z-index:998;
    background: var(--bq-hdr-mnav-bg, #fff); overflow-y:auto;
}
.bq-mobile-nav.bq-mobile-slide {
    right:0; width:300px; transform:translateX(100%);
    transition:transform 0.3s ease; box-shadow:-4px 0 20px rgba(0,0,0,0.1);
}
.bq-mobile-nav.bq-mobile-overlay {
    left:0; right:0; opacity:0; pointer-events:none;
    transition:opacity 0.3s ease;
}
.bq-mobile-nav.active.bq-mobile-slide { transform:translateX(0); }
.bq-mobile-nav.active.bq-mobile-overlay { opacity:1; pointer-events:auto; }
.bq-mobile-nav-inner { padding: var(--bq-hdr-mnav-pad, 90px) 20px 20px; }
.bq-mobile-nav .bq-nav-list {
    flex-direction:column; gap:0;
    align-items: var(--bq-hdr-mnav-align, flex-start);
}
.bq-mobile-nav .bq-nav-list > li { width:100%; }
.bq-mobile-nav .bq-nav-list > li > a {
    display:block; padding:12px 0; font-size:16px; border-bottom:1px solid rgba(127,127,127,0.12);
    color: var(--bq-hdr-mnav-text, #1e293b);
    text-align: var(--bq-hdr-mnav-text-align, left);
}
.bq-mobile-nav .bq-nav-list > li > a:hover {
    color: var(--bq-hdr-hover, #2563eb);
    background: rgba(127,127,127,0.04);
}
.bq-mobile-nav .bq-nav-list .sub-menu {
    display:none; position:static; box-shadow:none; background:transparent;
    padding:0 0 0 16px; margin:0;
}
.bq-mobile-nav .bq-nav-list .sub-menu.expanded { display:block; }
.bq-mobile-nav .bq-nav-list .sub-menu li a {
    padding:8px 0; font-size:14px;
    color: var(--bq-hdr-mnav-text, #1e293b);
}

/* 移动端搜索框 */
.bq-mobile-search {
    display:flex; margin-bottom:16px; border-radius:8px;
    overflow:hidden; border:1px solid rgba(127,127,127,0.2);
}
.bq-mobile-search input[type="search"] {
    flex:1; border:none; padding:10px 14px; font-size:14px;
    background: rgba(127,127,127,0.05); color: var(--bq-hdr-mnav-text, #1e293b);
    outline:none;
}
.bq-mobile-search input[type="search"]::placeholder {
    color: rgba(127,127,127,0.5);
}
.bq-mobile-search button {
    border:none; background: var(--bq-hdr-hover, #2563eb);
    color:#fff; padding:10px 16px; cursor:pointer; font-size:14px;
}

/* 移动端独立 Logo */
.bq-mobile-logo {
    text-align:center; padding:12px 0 20px; border-bottom:1px solid rgba(127,127,127,0.1);
    margin-bottom:12px;
}
.bq-mobile-logo img { max-height:36px; width:auto; max-width:100%; }
.bq-menu-backdrop {
    display:none; position:fixed; inset:0; z-index:997;
    background:rgba(0,0,0,0.4); opacity:0; pointer-events:none;
    transition:opacity 0.3s ease;
}
.bq-menu-backdrop.active { opacity:1; pointer-events:auto; }

/* ===== 粘性导航滚动状态 ===== */
.bq-header-sticky.bq-header-scrolled {
    background: var(--bq-hdr-sticky-bg, #ffffff);
    box-shadow: var(--bq-hdr-sticky-shadow, 0 2px 8px rgba(0,0,0,0.1));
}
.bq-header-sticky.bq-header-scrolled .bq-nav-list > li > a { color:#1e293b; }
.bq-header-sticky.bq-header-scrolled .bq-menu-toggle span { background: var(--bq-hdr-hamburger-clr, #1e293b); }
.bq-header-sticky.bq-header-scrolled .bq-logo-text { color:#1e293b; }
.bq-header-sticky.bq-header-scrolled .bq-nav-list > li > a:hover { color: var(--bq-hdr-hover, #2563eb); }

/* 全宽透明风格粘性状态 */
.bq-header-style-fullwidth-transparent.bq-header-scrolled {
    background: var(--bq-hdr-sticky-bg, #ffffff);
    position:fixed;
}
.bq-header-style-fullwidth-transparent.bq-header-scrolled .bq-header-cta {
    background: var(--bq-hdr-sticky-cta, #2563eb);
    color:white;
    border:none;
}

/* 页面偏移（粘性导航占位） */
.bq-hdr-sticky body,
body.bq-hdr-sticky { padding-top: var(--bq-hdr-height, 70px); }
.admin-bar .bq-site-header { top:32px; }

/* ===== 移动端响应 ===== */
@media (max-width: 768px) {
    .bq-nav-menu, .bq-header-cta { display:none !important; }
    .bq-menu-toggle { display:block !important; }
    .bq-mobile-nav.bq-mobile-overlay,
    .bq-menu-backdrop { display:block; }
    .bq-mobile-nav.bq-mobile-slide { display: var(--bq-hdr-mnav-display, block); }
    .bq-header-inner { padding:0 16px; }
}
@media (max-width: 782px) { .admin-bar .bq-site-header { top:46px; } }
@media (max-width: 600px) { .admin-bar .bq-site-header { top:0; } }
