/* 3.8.76-safe49 — direct 中 / EN language state switch. */
.bh-language-switch .bh-bilingual-controls{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  height:38px!important;
  padding:3px!important;
  gap:0!important;
  border:1px solid #cbd8e9!important;
  border-radius:9px!important;
  background:#fff!important;
  box-shadow:0 4px 14px rgba(19,64,126,.07)!important;
}
.bh-language-switch .bh-bilingual-controls .language-button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:40px!important;
  height:30px!important;
  padding:0 10px!important;
  border:0!important;
  border-radius:6px!important;
  background:transparent!important;
  color:#40516a!important;
  font-size:13px!important;
  font-weight:900!important;
  line-height:1!important;
  letter-spacing:.02em!important;
  box-shadow:none!important;
  cursor:pointer!important;
  transition:background-color .16s ease,color .16s ease,box-shadow .16s ease!important;
}
.bh-language-switch .bh-bilingual-controls .language-button:hover{
  background:#eef4fc!important;
  color:#001b97!important;
}
.bh-language-switch .bh-bilingual-controls .language-button.is-active,
.bh-language-switch .bh-bilingual-controls .language-button[aria-pressed="true"]{
  background:#001b97!important;
  color:#fff!important;
  box-shadow:0 4px 10px rgba(0,27,151,.22)!important;
}
.bh-language-switch .bh-bilingual-controls .language-divider{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:13px!important;
  color:#a0adbf!important;
  font-size:12px!important;
  font-weight:700!important;
  line-height:1!important;
}
.bh-language-switch{position:relative!important}
@media(max-width:760px){
  .bh-language-switch .bh-bilingual-controls{height:36px!important;padding:3px!important}
  .bh-language-switch .bh-bilingual-controls .language-button{min-width:34px!important;height:28px!important;padding:0 8px!important;font-size:12px!important}
  .bh-language-switch .bh-bilingual-controls .language-divider{width:11px!important}
}
/* 3.8.93-safe62 | compact live search powered by Halo search index. */
@media (min-width:981px){
  .bh-site-header .main-nav{margin-right:0!important}
  .bh-site-header .header-actions{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:0!important;margin-left:0!important}
  .bh-site-header .header-actions>.bh-language-switch{display:flex!important;align-items:center!important;justify-content:center!important;width:104px!important;min-width:104px!important;min-height:40px!important;margin-left:clamp(14px,1vw,18px)!important;margin-right:clamp(14px,1vw,18px)!important;flex:0 0 104px!important}
  .bh-site-header .header-actions>.bh-search-popover-wrap{margin:0!important;flex:0 0 auto!important}
  .bh-site-header .header-actions>.bh-search-popover-wrap .search-link{width:40px!important;height:40px!important;border-radius:10px!important}
}
@media (min-width:981px) and (max-width:1279px){
  .bh-site-header .header-actions>.bh-language-switch{width:98px!important;min-width:98px!important;flex-basis:98px!important;margin-left:12px!important;margin-right:12px!important}
}

.bh-site-header .bh-search-popover-wrap{position:relative!important;z-index:1105!important}
.bh-site-header .bh-search-popover{
  top:calc(100% + 10px)!important;right:0!important;
  width:min(430px,calc(100vw - 28px))!important;
  max-height:min(560px,calc(100vh - var(--header-height) - 22px))!important;
  padding:15px!important;overflow:hidden!important;overscroll-behavior:contain!important;
  border:1px solid #d7e1ee!important;border-radius:14px!important;background:#fff!important;
  box-shadow:0 18px 44px rgba(14,42,83,.17),0 4px 12px rgba(14,42,83,.07)!important;backdrop-filter:none!important
}
.bh-site-header .bh-search-popover::before{top:-7px!important;right:13px!important;width:13px!important;height:13px!important;background:#fff!important}
.bh-site-header .bh-search-popover-head{align-items:center!important;margin-bottom:11px!important}
.bh-site-header .bh-search-popover-head strong{font-size:15px!important}
.bh-site-header .bh-search-popover-head small{margin-top:2px!important;font-size:11px!important}
.bh-site-header .bh-search-close{width:28px!important;height:28px!important;flex-basis:28px!important;border-radius:8px!important;font-size:19px!important}
.bh-site-header .bh-search-form{grid-template-columns:minmax(0,1fr) 64px!important;gap:8px!important;margin:0!important}
.bh-site-header .bh-search-input-wrap,.bh-site-header .bh-search-submit{height:40px!important;border-radius:9px!important}
.bh-site-header .bh-search-input-wrap{padding:0 11px!important}
.bh-site-header .bh-search-input-wrap input{height:38px!important;font-size:13px!important}
.bh-site-header .bh-search-submit{padding:0 11px!important;font-size:13px!important;box-shadow:none!important}

.bh-site-header .bh-search-live [hidden],.bh-site-header .bh-search-result-list[hidden],.bh-site-header .bh-search-loading[hidden],.bh-site-header .bh-search-no-result[hidden],.bh-site-header .bh-search-empty-state[hidden]{display:none!important}
.bh-site-header .bh-search-live{margin-top:10px!important;max-height:min(350px,calc(100vh - var(--header-height) - 185px))!important;overflow:auto!important;overscroll-behavior:contain!important;scrollbar-width:thin}
.bh-site-header .bh-search-empty-state,.bh-site-header .bh-search-no-result{min-height:88px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;text-align:center!important;color:#64748b!important;font-size:12px!important;line-height:1.55!important}
.bh-site-header .bh-search-no-result strong{color:#18335c!important;font-size:13px!important;margin-bottom:4px!important}
.bh-site-header .bh-search-quick-links{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;gap:6px!important;margin-top:10px!important}
.bh-site-header .bh-search-quick-links a{padding:5px 8px!important;border:1px solid #d9e4f1!important;border-radius:7px!important;background:#f8fbff!important;color:#173a70!important;font-size:11px!important;font-weight:700!important;line-height:1!important}
.bh-site-header .bh-search-loading{padding:13px 2px!important}
.bh-site-header .bh-search-loading i{display:block!important;height:48px!important;margin:6px 0!important;border-radius:9px!important;background:linear-gradient(90deg,#f4f7fb 20%,#eaf0f8 38%,#f4f7fb 56%)!important;background-size:300% 100%!important;animation:bhSearchPulse 1.15s ease-in-out infinite!important}
@keyframes bhSearchPulse{0%{background-position:100% 0}100%{background-position:0 0}}
.bh-site-header .bh-search-result-list{display:grid!important;gap:6px!important}
.bh-site-header .bh-search-result{display:block!important;padding:10px 11px!important;border:1px solid transparent!important;border-radius:9px!important;background:#f8fafc!important;color:#10213a!important;text-decoration:none!important;transition:background .16s ease,border-color .16s ease,transform .16s ease!important}
.bh-site-header .bh-search-result:hover,.bh-site-header .bh-search-result.is-selected{border-color:#bdd0ea!important;background:#eef5ff!important;transform:translateY(-1px)!important}
.bh-site-header .bh-search-result-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important}
.bh-site-header .bh-search-result-title{min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;color:#102f63!important;font-size:13px!important;font-weight:800!important;line-height:1.35!important}
.bh-site-header .bh-search-result-arrow{flex:0 0 auto!important;color:#001b97!important;font-size:13px!important}
.bh-site-header .bh-search-result-desc{display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;overflow:hidden!important;margin-top:4px!important;color:#64748b!important;font-size:11px!important;line-height:1.55!important}
.bh-site-header .bh-search-result mark{padding:0 1px!important;background:#fff1b9!important;color:inherit!important;border-radius:2px!important}
.bh-site-header .bh-search-popover-foot{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;margin-top:10px!important;padding-top:9px!important;border-top:1px solid #edf1f6!important}
.bh-site-header .bh-search-tip{margin:0!important;color:#8794a8!important;font-size:10.5px!important}
.bh-site-header .bh-search-all{color:#001b97!important;font-size:11px!important;font-weight:800!important;text-decoration:none!important;white-space:nowrap!important}
.bh-site-header .bh-search-all:hover{text-decoration:underline!important}
html.bh-local-search-open body::before,body.bh-local-search-open::before{content:none!important;display:none!important}

@media (max-width:980px){
  .bh-site-header .bh-search-popover{position:fixed!important;top:calc(var(--header-height) + 8px)!important;right:12px!important;left:12px!important;width:auto!important;max-height:calc(100vh - var(--header-height) - 20px)!important}
  .bh-site-header .bh-search-live{max-height:calc(100vh - var(--header-height) - 205px)!important}
}
/* RC55 / safe128 — final mobile header geometry.
   Purpose: keep Logo / 中-EN / Search / Menu in one stable row and remove phantom width. */
@media (max-width:980px){
  :root{--header-height:64px!important}
  html body.baihong-theme .bh-site-header,
  html body.baihong-theme .site-header{
    min-height:64px!important;
    height:auto!important;
  }
  html body.baihong-theme .bh-site-header .header-shell,
  html body.baihong-theme .site-header .header-shell{
    width:calc(100% - 20px)!important;
    max-width:none!important;
    height:64px!important;
    min-height:64px!important;
    margin:0 auto!important;
    padding:0!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto auto!important;
    grid-template-rows:64px!important;
    column-gap:6px!important;
    align-items:center!important;
  }
  html body.baihong-theme .bh-site-header .brand,
  html body.baihong-theme .site-header .brand{
    grid-column:1!important;
    grid-row:1!important;
    min-width:0!important;
    overflow:hidden!important;
  }
  html body.baihong-theme .bh-site-header .brand img,
  html body.baihong-theme .site-header .brand img{
    width:clamp(104px,29vw,124px)!important;
    max-width:100%!important;
    max-height:42px!important;
    object-fit:contain!important;
    object-position:left center!important;
  }
  html body.baihong-theme .bh-site-header .header-actions,
  html body.baihong-theme .site-header .header-actions{
    grid-column:2!important;
    grid-row:1!important;
    justify-self:end!important;
    align-self:center!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    gap:5px!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
    flex:0 0 auto!important;
  }
  html body.baihong-theme .bh-site-header .header-actions>.bh-language-switch,
  html body.baihong-theme .site-header .header-actions>.bh-language-switch{
    display:block!important;
    grid-template-columns:none!important;
    grid-template-rows:none!important;
    place-items:initial!important;
    justify-items:initial!important;
    align-items:initial!important;
    position:static!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    height:34px!important;
    min-height:34px!important;
    margin:0!important;
    padding:0!important;
    flex:0 0 auto!important;
    transform:none!important;
    overflow:visible!important;
  }
  html body.baihong-theme .bh-language-switch .bh-bilingual-controls{
    position:static!important;
    inset:auto!important;
    transform:none!important;
    margin:0!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    height:34px!important;
    min-height:34px!important;
    padding:2px!important;
    gap:0!important;
    border-radius:9px!important;
  }
  html body.baihong-theme .bh-language-switch .bh-bilingual-controls .language-button{
    width:32px!important;
    min-width:32px!important;
    max-width:32px!important;
    height:28px!important;
    padding:0!important;
    font-size:12px!important;
    line-height:28px!important;
    text-align:center!important;
    border-radius:7px!important;
  }
  html body.baihong-theme .bh-language-switch .bh-bilingual-controls .language-divider{
    width:9px!important;
    min-width:9px!important;
    height:28px!important;
    padding:0!important;
    font-size:10px!important;
    line-height:28px!important;
  }
  html body.baihong-theme .bh-site-header .header-actions>.bh-search-popover-wrap,
  html body.baihong-theme .site-header .header-actions>.bh-search-popover-wrap{
    width:auto!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    flex:0 0 auto!important;
  }
  html body.baihong-theme .bh-site-header .header-actions>.bh-search-popover-wrap .search-link,
  html body.baihong-theme .site-header .header-actions>.bh-search-popover-wrap .search-link{
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
    min-height:34px!important;
    margin:0!important;
    border-radius:9px!important;
  }
  html body.baihong-theme .bh-site-header .menu-toggle,
  html body.baihong-theme .site-header .menu-toggle{
    grid-column:3!important;
    grid-row:1!important;
    justify-self:end!important;
    align-self:center!important;
    display:block!important;
    width:36px!important;
    height:36px!important;
    min-width:36px!important;
    min-height:36px!important;
    margin:0!important;
    padding:7px!important;
    border-radius:9px!important;
  }
  html body.baihong-theme .bh-site-header .main-nav,
  html body.baihong-theme .site-header .main-nav{
    top:63px!important;
  }
}
@media (max-width:390px){
  html body.baihong-theme .bh-site-header .header-shell,
  html body.baihong-theme .site-header .header-shell{
    width:calc(100% - 14px)!important;
    column-gap:3px!important;
  }
  html body.baihong-theme .bh-site-header .brand img,
  html body.baihong-theme .site-header .brand img{width:100px!important}
  html body.baihong-theme .bh-language-switch .bh-bilingual-controls .language-button{
    width:29px!important;min-width:29px!important;max-width:29px!important;font-size:11px!important
  }
  html body.baihong-theme .bh-language-switch .bh-bilingual-controls .language-divider{width:7px!important;min-width:7px!important}
  html body.baihong-theme .bh-site-header .header-actions>.bh-search-popover-wrap .search-link,
  html body.baihong-theme .site-header .header-actions>.bh-search-popover-wrap .search-link{width:31px!important;height:31px!important;min-width:31px!important;min-height:31px!important}
  html body.baihong-theme .bh-site-header .menu-toggle,
  html body.baihong-theme .site-header .menu-toggle{width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important}
}

/* RC56 / safe129 — single-source header and language UI cleanup. */
.bh-language-switch{display:block!important;position:relative!important;min-width:0!important;width:auto!important}
.bh-language-switch .bh-bilingual-controls{box-sizing:border-box!important}
.bh-language-switch .bh-bilingual-controls .language-button:disabled{opacity:.68!important;cursor:wait!important}
.bh-language-switch.is-loading .bh-bilingual-controls{box-shadow:0 0 0 3px rgba(0,27,151,.08),0 4px 14px rgba(19,64,126,.07)!important}
@media (max-width:980px){
  html,body{max-width:100%;overflow-x:clip}
  html body.baihong-theme .bh-site-header .brand,
  html body.baihong-theme .site-header .brand{display:flex!important;align-items:center!important}
}


/* ==========================================================================\n   RC57 / safe130 — single-source language labels.\n   HTML button text is the only visible source; all historical pseudo-labels are disabled.\n   ========================================================================== */
.bh-language-switch .language-button,
.bh-language-switch .bh-bilingual-controls .language-button{
  font-size:13px!important;
  text-indent:0!important;
  color:#40516a!important;
  -webkit-text-fill-color:currentColor!important;
}
.bh-language-switch .language-button::before,
.bh-language-switch .language-button::after,
.bh-language-switch .bh-bilingual-controls .language-button::before,
.bh-language-switch .bh-bilingual-controls .language-button::after{
  content:none!important;
  display:none!important;
}
.bh-language-switch .language-button.is-active,
.bh-language-switch .language-button[aria-pressed="true"]{color:#fff!important}
@media (max-width:980px){html body.baihong-theme .bh-language-switch .bh-bilingual-controls .language-button{font-size:12px!important}}
@media (max-width:390px){html body.baihong-theme .bh-language-switch .bh-bilingual-controls .language-button{font-size:11px!important}}

/* ==========================================================================\n   RC59 / safe132 — Header final coordination.\n   One visual layer only: HTML owns labels, CSS owns appearance, JS owns state.\n   ========================================================================== */
@media (min-width:981px){
  html body.baihong-theme .bh-site-header .header-shell,
  html body.baihong-theme .site-header .header-shell{
    width:min(calc(100% - 56px),1540px)!important;
  }
  html body.baihong-theme .bh-site-header .main-nav,
  html body.baihong-theme .site-header .main-nav{
    gap:clamp(26px,1.65vw,32px)!important;
  }
  html body.baihong-theme .bh-site-header .main-nav>a,
  html body.baihong-theme .site-header .main-nav>a{
    font-size:calc(var(--bh-navigation-font-size) * 1px)!important;
    font-weight:700!important;
    letter-spacing:.01em!important;
    color:#202936!important;
  }
  html body.baihong-theme .bh-site-header .main-nav>a:hover:not(.is-current):not([aria-current]),
  html body.baihong-theme .site-header .main-nav>a:hover:not(.is-current):not([aria-current]){color:#07387d!important}
  html body.baihong-theme .bh-site-header .main-nav>a.is-current,
  html body.baihong-theme .site-header .main-nav>a.is-current,
  html body.baihong-theme .bh-site-header .main-nav>a[aria-current],
  html body.baihong-theme .site-header .main-nav>a[aria-current]{color:#EB0D19!important}
  html body.baihong-theme .bh-site-header .main-nav>a::after,
  html body.baihong-theme .site-header .main-nav>a::after{
    bottom:12px!important;
    height:2px!important;
  }
  html body.baihong-theme .bh-site-header .header-actions,
  html body.baihong-theme .site-header .header-actions{
    gap:12px!important;
    margin-left:20px!important;
  }
  html body.baihong-theme .bh-site-header .header-actions>.bh-language-switch,
  html body.baihong-theme .site-header .header-actions>.bh-language-switch{
    width:auto!important;
    min-width:0!important;
    min-height:40px!important;
    margin:0!important;
    flex:0 0 auto!important;
  }
}

/* Language: remove the redundant outer capsule. Only the active language has a filled state. */
html body.baihong-theme .bh-language-switch .bh-bilingual-controls{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:0!important;
  height:40px!important;
  min-height:40px!important;
  padding:0!important;
  gap:2px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
}
html body.baihong-theme .bh-language-switch .bh-bilingual-controls .language-button{
  min-width:38px!important;
  width:auto!important;
  height:34px!important;
  padding:0 10px!important;
  border:1px solid transparent!important;
  border-radius:8px!important;
  background:transparent!important;
  color:#27364a!important;
  font-size:13px!important;
  font-weight:800!important;
  line-height:1!important;
  box-shadow:none!important;
}
html body.baihong-theme .bh-language-switch .bh-bilingual-controls .language-button:hover{
  background:#eef4fc!important;
  border-color:#d4e0ef!important;
  color:#001b97!important;
}
html body.baihong-theme .bh-language-switch .bh-bilingual-controls .language-button.is-active,
html body.baihong-theme .bh-language-switch .bh-bilingual-controls .language-button[aria-pressed="true"]{
  background:#001b97!important;
  border-color:#001b97!important;
  color:#fff!important;
  box-shadow:none!important;
}
html body.baihong-theme .bh-language-switch .bh-bilingual-controls .language-divider{
  width:12px!important;
  min-width:12px!important;
  padding:0!important;
  color:#96a3b4!important;
  font-size:12px!important;
  font-weight:600!important;
}
html body.baihong-theme .bh-language-switch.is-loading .bh-bilingual-controls{box-shadow:none!important}

/* Search and sticky state: same visual family, no oversized shadows. */
html body.baihong-theme .bh-site-header .header-actions>.bh-search-popover-wrap .search-link,
html body.baihong-theme .site-header .header-actions>.bh-search-popover-wrap .search-link{
  width:40px!important;
  height:40px!important;
  min-width:40px!important;
  min-height:40px!important;
  border:1px solid #d7dfeb!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:none!important;
}
html body.baihong-theme .site-header.is-sticky,
html body.baihong-theme .bh-site-header.is-sticky{
  border-bottom:1px solid #e3e9f1!important;
  box-shadow:0 6px 18px rgba(13,34,68,.055)!important;
}

@media (max-width:980px){
  html body.baihong-theme .bh-language-switch .bh-bilingual-controls{
    height:34px!important;
    min-height:34px!important;
    padding:0!important;
    gap:1px!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  html body.baihong-theme .bh-language-switch .bh-bilingual-controls .language-button{
    width:31px!important;
    min-width:31px!important;
    max-width:31px!important;
    height:30px!important;
    padding:0!important;
    font-size:12px!important;
    line-height:30px!important;
    border-radius:7px!important;
  }
  html body.baihong-theme .bh-language-switch .bh-bilingual-controls .language-divider{
    width:8px!important;
    min-width:8px!important;
    height:30px!important;
    font-size:10px!important;
    line-height:30px!important;
  }
  html body.baihong-theme .bh-site-header .header-actions>.bh-search-popover-wrap .search-link,
  html body.baihong-theme .site-header .header-actions>.bh-search-popover-wrap .search-link{
    width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;border-radius:9px!important
  }
}
@media (max-width:390px){
  html body.baihong-theme .bh-language-switch .bh-bilingual-controls .language-button{
    width:29px!important;min-width:29px!important;max-width:29px!important;font-size:11.5px!important
  }
  html body.baihong-theme .bh-language-switch .bh-bilingual-controls .language-divider{width:7px!important;min-width:7px!important}
}
