/* HL3C language switcher — isolated styles only. No existing site rules are changed. */
.hl3c-language-switcher{
  position:relative!important;
  flex:0 0 auto!important;
  margin-left:-6px!important;
  font-size:13px!important;
  line-height:1!important;
  z-index:5001!important;
}
.hl3c-language-switcher summary{
  list-style:none!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:4px!important;
  min-height:30px!important;
  padding:5px 8px!important;
  border:1px solid rgba(15,23,42,.08)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.46)!important;
  color:#475569!important;
  font-size:12.5px!important;
  font-weight:760!important;
  letter-spacing:0!important;
  cursor:pointer!important;
  opacity:.82!important;
  box-shadow:none!important;
  user-select:none!important;
  -webkit-user-select:none!important;
  transition:opacity .18s ease,background .18s ease,border-color .18s ease!important;
}
.hl3c-language-switcher summary::-webkit-details-marker{display:none!important}
.hl3c-language-switcher summary::marker{content:""!important}
.hl3c-language-switcher summary:hover,
.hl3c-language-switcher[open] summary{
  opacity:1!important;
  background:rgba(255,255,255,.90)!important;
  border-color:rgba(15,23,42,.14)!important;
}
/* Pure-CSS black globe. This avoids emoji color and SVG/cache conflicts on the Chinese site. */
.hl3c-lang-globe{
  position:relative!important;
  display:inline-block!important;
  flex:0 0 14px!important;
  width:14px!important;
  height:14px!important;
  margin:0 1px 0 0!important;
  border:1.45px solid #111827!important;
  border-radius:50%!important;
  color:#111827!important;
  background:transparent!important;
  box-sizing:border-box!important;
  opacity:.92!important;
  overflow:visible!important;
}
.hl3c-lang-globe svg{display:none!important}
.hl3c-lang-globe::before{
  content:""!important;
  position:absolute!important;
  left:1.8px!important;
  right:1.8px!important;
  top:5.2px!important;
  height:0!important;
  border-top:1.15px solid currentColor!important;
  box-sizing:border-box!important;
}
.hl3c-lang-globe::after{
  content:""!important;
  position:absolute!important;
  top:1.2px!important;
  bottom:1.2px!important;
  left:3.55px!important;
  right:3.55px!important;
  border-left:1.05px solid currentColor!important;
  border-right:1.05px solid currentColor!important;
  border-radius:50%!important;
  box-sizing:border-box!important;
}
.hl3c-lang-current{display:inline!important;color:inherit!important;line-height:1!important}
.hl3c-lang-caret{font-size:10px!important;opacity:.68!important;transform:translateY(-1px)!important}
.hl3c-language-menu{
  position:absolute!important;
  top:calc(100% + 8px)!important;
  right:0!important;
  min-width:156px!important;
  padding:6px!important;
  border:1px solid rgba(15,23,42,.10)!important;
  border-radius:14px!important;
  background:rgba(255,255,255,.99)!important;
  box-shadow:0 18px 44px rgba(15,23,42,.16)!important;
  -webkit-backdrop-filter:blur(14px)!important;
  backdrop-filter:blur(14px)!important;
  box-sizing:border-box!important;
}
.hl3c-language-switcher:not([open]) .hl3c-language-menu{display:none!important}
.site-header .top-nav .hl3c-language-menu a,
.site-header .top-nav .hl3c-language-menu a:visited,
.intl-nav .hl3c-language-menu a,
.intl-nav .hl3c-language-menu a:visited{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  width:100%!important;
  box-sizing:border-box!important;
  padding:8px 9px!important;
  border:0!important;
  border-radius:9px!important;
  color:#334155!important;
  background:transparent!important;
  text-decoration:none!important;
  font-size:13px!important;
  font-weight:700!important;
  line-height:1.25!important;
  white-space:nowrap!important;
  text-align:left!important;
  text-shadow:none!important;
  transform:none!important;
}
.site-header .top-nav .hl3c-language-menu a::after,
.intl-nav .hl3c-language-menu a::after{display:none!important}
.site-header .top-nav .hl3c-language-menu a:hover,
.site-header .top-nav .hl3c-language-menu a:focus-visible,
.intl-nav .hl3c-language-menu a:hover,
.intl-nav .hl3c-language-menu a:focus-visible{
  color:#0f172a!important;
  background:#f1f5f9!important;
  transform:none!important;
}
.site-header .top-nav .hl3c-language-menu a[aria-current="page"],
.intl-nav .hl3c-language-menu a[aria-current="page"]{
  background:#f8fafc!important;
  color:#0f172a!important;
  font-weight:850!important;
}
@media (max-width:820px){
  body.nav-open .top-nav .hl3c-language-switcher{
    display:block!important;
    width:100%!important;
    box-sizing:border-box!important;
    margin:7px 0 0!important;
    padding:9px 6px 2px!important;
    border-top:1px solid rgba(15,23,42,.10)!important;
  }
  body.nav-open .top-nav .hl3c-language-switcher summary{
    display:inline-flex!important;
    width:auto!important;
    min-height:32px!important;
    padding:6px 9px!important;
    font-size:12.5px!important;
    opacity:.86!important;
  }
  body.nav-open .top-nav .hl3c-language-menu{
    position:static!important;
    min-width:0!important;
    width:100%!important;
    margin-top:7px!important;
    padding:4px!important;
    border-radius:12px!important;
    background:#f8fafc!important;
    box-shadow:none!important;
  }
  body.nav-open .top-nav .hl3c-language-menu a,
  body.nav-open .top-nav .hl3c-language-menu a:visited{
    padding:8px 10px!important;
    font-size:13.5px!important;
    font-weight:720!important;
  }
}
