/* AI Project Universe V6.26 — modern multilingual selector */
:root{
  --apu-lang-bg:rgba(255,255,255,.96);
  --apu-lang-bg-2:#f4f8ff;
  --apu-lang-ink:#0b1424;
  --apu-lang-muted:#607089;
  --apu-lang-line:#cbd8ea;
  --apu-lang-accent:#1677ff;
  --apu-lang-accent-2:#7c3aed;
  --apu-lang-shadow:0 22px 60px rgba(5,18,38,.22),0 5px 15px rgba(5,18,38,.12);
}
html[data-front-theme="dark"],html[data-theme="dark"],html.dark{
  --apu-lang-bg:rgba(10,18,32,.97);
  --apu-lang-bg-2:#111f36;
  --apu-lang-ink:#f7fbff;
  --apu-lang-muted:#a8b7ce;
  --apu-lang-line:#334967;
  --apu-lang-shadow:0 25px 70px rgba(0,0,0,.55),0 6px 18px rgba(0,0,0,.3);
}
.apu-language-host{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  flex:0 0 auto!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:14px!important;
  background:transparent!important;
  overflow:visible!important;
  isolation:isolate;
}
.apu-language-native{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
  opacity:0!important;
  pointer-events:none!important;
}
.apu-language-trigger{
  --apu-trigger-width:220px;
  position:relative!important;
  display:grid!important;
  grid-template-columns:34px minmax(0,1fr) auto 18px!important;
  align-items:center!important;
  gap:9px!important;
  width:var(--apu-trigger-width)!important;
  min-width:var(--apu-trigger-width)!important;
  max-width:var(--apu-trigger-width)!important;
  min-height:46px!important;
  padding:6px 10px!important;
  border:2px solid var(--apu-lang-line)!important;
  border-radius:13px!important;
  background:
    linear-gradient(var(--apu-lang-bg),var(--apu-lang-bg)) padding-box,
    linear-gradient(120deg,var(--apu-lang-accent),var(--apu-lang-accent-2)) border-box!important;
  color:var(--apu-lang-ink)!important;
  -webkit-text-fill-color:var(--apu-lang-ink)!important;
  box-shadow:0 5px 0 rgba(10,28,52,.10),0 10px 26px rgba(15,50,95,.10)!important;
  cursor:pointer!important;
  text-align:left!important;
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace!important;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease!important;
  overflow:hidden!important;
}
.apu-language-trigger::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(115deg,transparent 0 35%,rgba(255,255,255,.32) 48%,transparent 61%);
  transform:translateX(-120%);
  transition:transform .55s ease;
  pointer-events:none;
}
.apu-language-trigger:hover::before{transform:translateX(120%)}
.apu-language-trigger:hover{transform:translateY(-1px)!important;box-shadow:0 7px 0 rgba(10,28,52,.11),0 16px 32px rgba(15,50,95,.16)!important}
.apu-language-trigger:active{transform:translateY(2px)!important;box-shadow:0 2px 0 rgba(10,28,52,.12),0 8px 18px rgba(15,50,95,.12)!important}
.apu-language-trigger:focus-visible{outline:3px solid color-mix(in srgb,var(--apu-lang-accent) 42%,transparent)!important;outline-offset:3px!important}
.apu-language-trigger[aria-expanded="true"]{border-color:transparent!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--apu-lang-accent) 24%,transparent),0 12px 34px rgba(15,50,95,.18)!important}
.apu-language-orb{
  display:grid!important;
  place-items:center!important;
  width:34px!important;
  height:34px!important;
  border-radius:10px!important;
  background:linear-gradient(135deg,var(--apu-lang-accent),var(--apu-lang-accent-2))!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.3),0 6px 14px rgba(34,95,220,.25)!important;
  font:900 15px/1 system-ui,sans-serif!important;
}
.apu-language-copy{display:flex!important;min-width:0!important;flex-direction:column!important;gap:2px!important}
.apu-language-current{overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;color:var(--apu-lang-ink)!important;-webkit-text-fill-color:var(--apu-lang-ink)!important;font:900 13px/1.1 ui-monospace,SFMono-Regular,Menlo,monospace!important}
.apu-language-caption{overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;color:var(--apu-lang-muted)!important;-webkit-text-fill-color:var(--apu-lang-muted)!important;font:700 9px/1.1 ui-monospace,SFMono-Regular,Menlo,monospace!important;letter-spacing:.11em!important;text-transform:uppercase!important}
.apu-language-code{
  display:inline-grid!important;
  place-items:center!important;
  min-width:30px!important;
  height:24px!important;
  padding:0 6px!important;
  border:1px solid color-mix(in srgb,var(--apu-lang-accent) 38%,var(--apu-lang-line))!important;
  border-radius:7px!important;
  background:color-mix(in srgb,var(--apu-lang-accent) 10%,var(--apu-lang-bg))!important;
  color:var(--apu-lang-accent)!important;
  -webkit-text-fill-color:var(--apu-lang-accent)!important;
  font:950 10px/1 ui-monospace,SFMono-Regular,Menlo,monospace!important;
}
.apu-language-chevron{display:grid!important;place-items:center!important;color:var(--apu-lang-muted)!important;-webkit-text-fill-color:var(--apu-lang-muted)!important;font:900 14px/1 system-ui!important;transition:transform .2s ease!important}
.apu-language-trigger[aria-expanded="true"] .apu-language-chevron{transform:rotate(180deg)!important}
.apu-language-menu{
  position:fixed!important;
  z-index:2147483647!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:6px!important;
  width:min(330px,calc(100vw - 20px))!important;
  max-height:min(530px,calc(100dvh - 24px))!important;
  padding:10px!important;
  border:2px solid var(--apu-lang-line)!important;
  border-radius:18px!important;
  background:
    radial-gradient(circle at 100% 0,color-mix(in srgb,var(--apu-lang-accent-2) 14%,transparent),transparent 40%),
    radial-gradient(circle at 0 100%,color-mix(in srgb,var(--apu-lang-accent) 15%,transparent),transparent 42%),
    var(--apu-lang-bg)!important;
  color:var(--apu-lang-ink)!important;
  box-shadow:var(--apu-lang-shadow)!important;
  backdrop-filter:blur(20px) saturate(1.35)!important;
  -webkit-backdrop-filter:blur(20px) saturate(1.35)!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
  opacity:0!important;
  visibility:hidden!important;
  transform:translateY(-8px) scale(.97)!important;
  transform-origin:top right!important;
  pointer-events:none!important;
  transition:opacity .18s ease,transform .18s ease,visibility .18s step-end!important;
}
.apu-language-menu[data-side="top"]{transform-origin:bottom right!important;transform:translateY(8px) scale(.97)!important}
.apu-language-menu.is-open{opacity:1!important;visibility:visible!important;transform:translateY(0) scale(1)!important;pointer-events:auto!important;transition:opacity .18s ease,transform .18s ease,visibility 0s!important}
.apu-language-menu-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  padding:6px 7px 9px!important;
  border-bottom:1px solid var(--apu-lang-line)!important;
  margin-bottom:2px!important;
}
.apu-language-menu-title{display:flex!important;align-items:center!important;gap:8px!important;color:var(--apu-lang-ink)!important;-webkit-text-fill-color:var(--apu-lang-ink)!important;font:950 12px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace!important;letter-spacing:.06em!important;text-transform:uppercase!important}
.apu-language-menu-title::before{content:"文";display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:linear-gradient(135deg,var(--apu-lang-accent),var(--apu-lang-accent-2));color:#fff;-webkit-text-fill-color:#fff;font:950 13px/1 system-ui}
.apu-language-menu-hint{color:var(--apu-lang-muted)!important;-webkit-text-fill-color:var(--apu-lang-muted)!important;font:800 9px/1 ui-monospace,SFMono-Regular,Menlo,monospace!important}
.apu-language-option{
  display:grid!important;
  grid-template-columns:42px minmax(0,1fr) 26px!important;
  align-items:center!important;
  gap:11px!important;
  width:100%!important;
  min-height:52px!important;
  padding:7px 9px!important;
  border:1px solid transparent!important;
  border-radius:12px!important;
  background:transparent!important;
  color:var(--apu-lang-ink)!important;
  -webkit-text-fill-color:var(--apu-lang-ink)!important;
  text-align:left!important;
  cursor:pointer!important;
  transition:background .16s ease,border-color .16s ease,transform .16s ease!important;
}
.apu-language-option:hover,.apu-language-option:focus-visible{outline:none!important;background:var(--apu-lang-bg-2)!important;border-color:var(--apu-lang-line)!important;transform:translateX(2px)!important}
.apu-language-option[aria-checked="true"]{background:linear-gradient(100deg,color-mix(in srgb,var(--apu-lang-accent) 16%,var(--apu-lang-bg)),color-mix(in srgb,var(--apu-lang-accent-2) 12%,var(--apu-lang-bg)))!important;border-color:color-mix(in srgb,var(--apu-lang-accent) 42%,var(--apu-lang-line))!important}
.apu-language-option-code{display:grid!important;place-items:center!important;width:42px!important;height:34px!important;border:1px solid var(--apu-lang-line)!important;border-radius:9px!important;background:var(--apu-lang-bg)!important;color:var(--apu-lang-accent)!important;-webkit-text-fill-color:var(--apu-lang-accent)!important;font:950 11px/1 ui-monospace,SFMono-Regular,Menlo,monospace!important}
.apu-language-option-copy{display:flex!important;min-width:0!important;flex-direction:column!important;gap:3px!important}
.apu-language-option-name{color:var(--apu-lang-ink)!important;-webkit-text-fill-color:var(--apu-lang-ink)!important;font:900 13px/1.1 ui-monospace,SFMono-Regular,Menlo,monospace!important}
.apu-language-option-meta{color:var(--apu-lang-muted)!important;-webkit-text-fill-color:var(--apu-lang-muted)!important;font:700 10px/1.2 system-ui,-apple-system,"Segoe UI",sans-serif!important}
.apu-language-option-check{display:grid!important;place-items:center!important;width:24px!important;height:24px!important;border-radius:999px!important;background:transparent!important;color:transparent!important;-webkit-text-fill-color:transparent!important;font:950 13px/1 system-ui!important}
.apu-language-option[aria-checked="true"] .apu-language-option-check{background:linear-gradient(135deg,var(--apu-lang-accent),var(--apu-lang-accent-2))!important;color:#fff!important;-webkit-text-fill-color:#fff!important}

/* Portal-specific sizing. */
.front-language-control.apu-language-host .apu-language-trigger{--apu-trigger-width:255px}
.viewer__language-control.apu-language-host .apu-language-trigger{--apu-trigger-width:230px}
.language-control.apu-language-host .apu-language-trigger{--apu-trigger-width:170px}
.apu-ui-dock-v62.apu-language-host .apu-language-trigger,.apu-ui-dock-v62 .apu-language-host .apu-language-trigger{--apu-trigger-width:180px}
.front-language-control.apu-language-host>span:not(.apu-language-orb),.viewer__language-control.apu-language-host>.viewer__control-icon,.language-control.apu-language-host>span:not(.apu-language-orb){display:none!important}

@media (max-width:760px){
  .front-language-control.apu-language-host,.viewer__language-control.apu-language-host,.language-control.apu-language-host{display:inline-flex!important;visibility:visible!important;width:48px!important;min-width:48px!important;max-width:48px!important;height:44px!important;opacity:1!important;overflow:visible!important;pointer-events:auto!important}
  .front-language-control.apu-language-host .apu-language-trigger,.viewer__language-control.apu-language-host .apu-language-trigger,.language-control.apu-language-host .apu-language-trigger{
    --apu-trigger-width:48px;
    display:grid!important;
    grid-template-columns:1fr!important;
    width:48px!important;
    min-width:48px!important;
    max-width:48px!important;
    min-height:44px!important;
    height:44px!important;
    padding:4px!important;
    border-radius:11px!important;
  }
  .front-language-control .apu-language-copy,.front-language-control .apu-language-code,.front-language-control .apu-language-chevron,
  .viewer__language-control .apu-language-copy,.viewer__language-control .apu-language-code,.viewer__language-control .apu-language-chevron,
  .language-control .apu-language-copy,.language-control .apu-language-code,.language-control .apu-language-chevron{display:none!important}
  .front-language-control .apu-language-orb,.viewer__language-control .apu-language-orb,.language-control .apu-language-orb{width:34px!important;height:34px!important;margin:auto!important}
  .apu-language-menu{width:min(310px,calc(100vw - 16px))!important;border-radius:16px!important;padding:8px!important}
}

@media (prefers-reduced-motion:reduce){.apu-language-trigger,.apu-language-trigger::before,.apu-language-menu,.apu-language-option,.apu-language-chevron{transition:none!important}}
