.headerLanguagePicker { position: relative; flex: 0 0 auto; direction: ltr; }
.headerLanguageMenu { max-height: min(70vh, 340px); overflow-y: auto; }
.headerLanguageButton.btn { position: relative; display: grid; place-items: center; width: 32px; min-width: 32px; height: 30px; padding: 0; color: var(--workbench-text, var(--text)); border: 1px solid var(--workbench-border, var(--line)); background: var(--workbench-panel, var(--surface)); }
.headerLanguageButton svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.65; }
.headerLanguageGlobe { opacity: 1; transition: opacity .12s; }
.headerLanguageButton:hover { background: var(--workbench-hover, var(--btnHover)); }
.headerLanguageWords { position: absolute; inset: 0; pointer-events: none; opacity: 0; transition: opacity .12s; font-size: 12px; font-weight: 700; line-height: 1; }
.headerLanguageWords > span { position: absolute; inset: 0; display: grid; place-items: center; opacity: 0; }
.headerLanguageWords > span:first-child { opacity: 1; }
.headerLanguagePicker:not(.is-open,.is-settled):is(:hover,:focus-within) .headerLanguageWords { opacity: 1; }
.headerLanguagePicker:not(.is-open,.is-settled):is(:hover,:focus-within) .headerLanguageGlobe { opacity: 0; }
.headerLanguagePicker.is-settled :is(.headerLanguageWords,.headerLanguageGlobe) { transition: none; }
.headerLanguageMenu { position: absolute; z-index: 120; top: 36px; right: 0; width: 172px; padding: 6px; border: 1px solid var(--line); border-radius: 8px; background: var(--surface); color: var(--text); box-shadow: var(--shadow); opacity: 0; transition: opacity .16s; }
.headerLanguageMenu[hidden] { display: none; }
.headerLanguagePicker.is-open .headerLanguageMenu { opacity: 1; }
.headerLanguageOption { display: flex; justify-content: space-between; align-items: center; width: 100%; min-height: 36px; padding: 8px 10px; border: 0; border-radius: 5px; color: inherit; background: transparent; font: inherit; font-size: 12px; cursor: pointer; opacity: 0; transform: translateY(-9px); transition: opacity .2s, transform .24s; transition-delay: calc(var(--option-index) * 28ms); }
.headerLanguagePicker.is-open .headerLanguageOption { opacity: 1; transform: translateY(0); transition-delay: calc(var(--option-index) * 45ms); }
.headerLanguageOption:hover,.headerLanguageOption:focus-visible { background: var(--btnHover); }
.headerLanguageOption[aria-selected="true"] { color: var(--pri); font-weight: 700; }
.headerLanguageOptionLabel { display: inline-flex; align-items: center; gap: 8px; }
.headerLanguageFlag { width: 20px; height: 14px; flex: 0 0 20px; object-fit: cover; border-radius: 2px; border: 1px solid var(--line); }
@media (prefers-reduced-motion: no-preference) {
  .headerLanguagePicker:not(.is-open,.is-settled):is(:hover,:focus-within) .headerLanguageWords > span:first-child { opacity: 0; }
  .headerLanguagePicker:not(.is-open,.is-settled):is(:hover,:focus-within) .headerLanguageWords > span:not(:first-child) { animation: header-language-word calc(var(--word-count) * .68s) linear infinite; animation-delay: calc(var(--word-index) * .68s); }
}
@keyframes header-language-word { 0% { opacity: 0; } 2%,10% { opacity: 1; } 14%,100% { opacity: 0; } }
@media (prefers-reduced-motion: reduce) {
  .headerLanguageMenu,.headerLanguageOption,.headerLanguageWords,.headerLanguageGlobe { transition: none; }
}
