.language-control { position: relative; min-width: 0; }
.language-trigger, .language-option { font: inherit; color: var(--text, #f7f4ff); cursor: pointer; }
.language-trigger { display: flex; align-items: center; justify-content: flex-end; gap: 8px; width: 100%; min-height: 44px; padding: 0 2px; border: 0; border-radius: 4px; background: transparent; color: #a5a8bf; text-align: right; line-height: 1.4; }
.language-label { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.language-value { font-size: 13px; font-weight: 500; }
.language-chevron { width: 5px; height: 5px; margin: -3px 3px 0 0; border-right: 1px solid currentColor; border-bottom: 1px solid currentColor; transform: rotate(45deg); }
.language-trigger:hover, .language-trigger[aria-expanded="true"] { color: #f7f4ff; }
.language-trigger:focus-visible, .language-option:focus-visible { outline: 2px solid #55dcff; outline-offset: 3px; }
.language-menu { position: absolute; z-index: 40; right: 0; top: calc(100% + 8px); width: 160px; max-height: min(300px, calc(100dvh - 160px)); overflow-y: auto; padding: 6px; border: 1px solid #30295a; border-radius: 8px; background: #101222; box-shadow: 0 16px 40px #0009; }
.language-menu[hidden] { display: none; }
.language-option { position: relative; display: block; width: 100%; min-height: 44px; padding: 10px 32px 10px 12px; border: 0; border-radius: 7px; background: transparent; text-align: left; font-size: 13px; font-weight: 500; }
.language-option:hover, .language-option:focus-visible { background: #221d40; }
.language-option[aria-checked="true"] { background: transparent; color: #f7f4ff; }
.language-option[aria-checked="true"]::after { content: '✓'; position: absolute; right: 12px; }
