.language-switcher{display:inline-block;position:relative}.language-switcher__button{align-items:center;gap:var(--spacing-1-5);padding:var(--spacing-2) var(--spacing-3);border-radius:var(--border-radius-lg);cursor:pointer;min-height:36px;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);transition:var(--transition-all);background:var(--surface-secondary);border:1px solid var(--border-primary);color:var(--text-secondary);display:flex}.language-switcher__button:hover{background:var(--bg-secondary)}.language-switcher__flag,.language-switcher__option-flag{text-align:center;min-width:20px;font-size:var(--font-size-sm);font-feature-settings:"liga" off;text-rendering:auto;background:0 0;justify-content:center;align-items:center;padding:0;font-family:Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,Android Emoji,EmojiSymbols,EmojiOne Mozilla,Twemoji Mozilla,Segoe UI Symbol,Noto Emoji,sans-serif;display:flex;position:relative}.language-switcher__flag-image,.language-switcher__option-flag .language-switcher__flag-image{object-fit:cover;vertical-align:middle;background:var(--bg-secondary);border-radius:2px;width:20px;height:14px;box-shadow:0 0 0 1px #0000001a}.language-switcher__flag-fallback,.language-switcher__option-flag .language-switcher__flag-fallback{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--text-secondary);background:var(--bg-tertiary);border-radius:var(--radius-sm);padding:0 var(--spacing-1);text-align:center;min-width:16px}.language-switcher__arrow{transition:var(--transition-transform);opacity:.8;color:var(--text-tertiary);font-size:10px}.language-switcher__button[aria-expanded=true] .language-switcher__arrow{transform:rotate(180deg)}.language-switcher__dropdown{top:calc(100% + var(--spacing-1));background:var(--surface-primary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:var(--z-dropdown);min-width:140px;position:absolute;right:0;overflow:hidden}.language-switcher__option{align-items:center;gap:var(--spacing-2);width:100%;padding:var(--spacing-3) var(--spacing-4);cursor:pointer;min-height:44px;transition:var(--transition-colors);font-size:var(--font-size-sm);color:var(--text-primary);text-align:left;background:0 0;border:none;display:flex}.language-switcher__option:hover{background:var(--bg-secondary)}.language-switcher__option--active{background:var(--color-primary-50);color:var(--color-primary-700);font-weight:var(--font-weight-medium)}.language-switcher__option--active:hover{background:var(--color-primary-100)}.language-switcher__option-flag{font-size:var(--font-size-sm);text-align:center;font-feature-settings:"liga" off;text-rendering:auto;flex-shrink:0;min-width:18px;font-family:Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,Android Emoji,EmojiSymbols,EmojiOne Mozilla,Twemoji Mozilla,Segoe UI Symbol,Noto Emoji,sans-serif;position:relative}.language-switcher__option-flag .language-switcher__flag-image{object-fit:cover;vertical-align:middle;border-radius:2px;width:16px;height:16px}.language-switcher__option-flag .language-switcher__flag-fallback{font-size:11px;font-weight:var(--font-weight-semibold);color:var(--text-secondary)}.language-switcher__option-name{color:var(--text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);flex:1}.language-switcher__option-check{color:var(--color-primary-600);font-weight:var(--font-weight-bold);font-size:var(--font-size-base);flex-shrink:0}.dark .language-switcher__dropdown,[data-theme=dark] .language-switcher__dropdown{background:var(--color-gray-800);border-color:var(--color-gray-700);box-shadow:0 10px 15px -3px #0000004d,0 4px 6px -2px #0003}.dark .language-switcher__button,[data-theme=dark] .language-switcher__button{color:var(--color-gray-300);background:var(--color-gray-700);border-color:var(--color-gray-600)}.dark .language-switcher__button:hover,[data-theme=dark] .language-switcher__button:hover{background:var(--color-gray-600);border-color:var(--color-gray-500)}.dark .language-switcher__arrow,[data-theme=dark] .language-switcher__arrow{color:var(--color-gray-400)}.dark .language-switcher__option,[data-theme=dark] .language-switcher__option{color:var(--color-gray-200)}.dark .language-switcher__option:hover,[data-theme=dark] .language-switcher__option:hover{background:var(--color-gray-700)}.dark .language-switcher__option-name,[data-theme=dark] .language-switcher__option-name{color:var(--color-gray-200)}.dark .language-switcher__option--active,[data-theme=dark] .language-switcher__option--active{background:color-mix(in srgb, var(--color-primary-500) 20%, transparent);color:var(--color-primary-300)}.dark .language-switcher__option--active:hover,[data-theme=dark] .language-switcher__option--active:hover{background:color-mix(in srgb, var(--color-primary-500) 30%, transparent)}.dark .language-switcher__option--active .language-switcher__option-name,[data-theme=dark] .language-switcher__option--active .language-switcher__option-name{color:var(--color-primary-300)}.dark .language-switcher__option-check,[data-theme=dark] .language-switcher__option-check{color:var(--color-primary-400)}.dark .language-switcher__flag-fallback,.dark .language-switcher__option-flag .language-switcher__flag-fallback,[data-theme=dark] .language-switcher__flag-fallback,[data-theme=dark] .language-switcher__option-flag .language-switcher__flag-fallback{color:var(--color-gray-300);background:var(--color-gray-700)}@media (width<=768px){.language-switcher__button{min-height:36px;font-size:var(--font-size-xs);gap:4px;padding:8px 10px}.language-switcher__flag,.language-switcher__option-flag{font-size:var(--font-size-sm);min-width:18px}.language-switcher__flag-image,.language-switcher__option-flag .language-switcher__flag-image{width:18px;height:13px}.language-switcher__dropdown{min-width:120px;right:-8px}.language-switcher__option{min-height:44px;padding:12px 10px;font-size:13px}}@media (width<=480px){.language-switcher{flex-shrink:0}.language-switcher__button{gap:2px;min-height:44px;padding:10px 8px;font-size:11px}.language-switcher__flag-image,.language-switcher__option-flag .language-switcher__flag-image{width:12px;height:12px}.language-switcher__dropdown{min-width:100px;max-width:calc(100vw - 32px);right:-16px}.language-switcher__option{min-height:44px;font-size:var(--font-size-xs);padding:12px 8px}.language-switcher__option-name{font-size:var(--font-size-xs)}}@media (width<=320px){.language-switcher__button{min-height:44px;padding:10px 8px}.language-switcher__flag-image,.language-switcher__option-flag .language-switcher__flag-image{width:10px;height:10px}.language-switcher__dropdown{min-width:90px}}
