.lang-switcher{position:relative}.lang-switcher__trigger{display:flex;align-items:center;gap:var(--spacing-xs);height:32px;padding:0 var(--spacing-md);border-radius:var(--radius-md);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);cursor:pointer;transition:all var(--transition-fast);letter-spacing:.05em}.lang-switcher__code{font-size:var(--font-size-xs);font-weight:var(--font-weight-bold)}.lang-switcher--light .lang-switcher__trigger{color:var(--color-primary);background:var(--color-primary-50);border:1px solid var(--color-primary-100)}.lang-switcher--light .lang-switcher__trigger:hover{background:var(--color-primary-100)}.lang-switcher--dark .lang-switcher__trigger{color:#ffffffe6;background:#ffffff14;border:1px solid rgba(255,255,255,.15)}.lang-switcher--dark .lang-switcher__trigger:hover{background:#ffffff24;border-color:#ffffff40}.lang-switcher__dropdown{position:absolute;top:calc(100% + 6px);right:0;background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);border:1px solid var(--color-border-light);overflow:hidden;min-width:140px;z-index:var(--z-modal);animation:langSwitcherDropIn .15s ease-out}@keyframes langSwitcherDropIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.lang-switcher__option{display:flex;align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm) var(--spacing-lg);border:none;background:none;cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text);transition:background var(--transition-fast)}.lang-switcher__option:hover{background:var(--color-primary-50)}.lang-switcher__option--active{background:var(--color-primary-50);font-weight:var(--font-weight-semibold);color:var(--color-primary)}.lang-switcher--subtle .lang-switcher__trigger{color:var(--color-text-secondary);background:transparent;border:1px solid var(--color-border)}.lang-switcher--subtle .lang-switcher__trigger:hover{color:var(--color-primary);border-color:var(--color-primary);background:var(--color-primary-50)}.lang-switcher__flag{font-size:1rem;line-height:1}
