#languages-switcher.vh-language-ready { position: relative; }
#languages-switcher.vh-language-ready .current {
  display: inline-flex; align-items: center; justify-content: center; gap: 6px;
  min-width: 44px; min-height: 44px; padding: 4px 7px;
  background: transparent; color: inherit; border: 0; border-radius: 8px;
  font: inherit; cursor: pointer;
}
#languages-switcher.vh-language-ready .current > span { font-size: 13px; }
#languages-switcher.vh-language-ready .vh-language-flag {
  display: inline-block; width: 16px; height: 11px; flex: 0 0 16px;
  max-width: none; margin: 0; padding: 0; border-radius: 1px; object-fit: cover;
}
#languages-switcher.vh-language-ready .languages-list {
  display: none !important; position: absolute; top: calc(100% + 4px); right: 0;
  z-index: 75; min-width: 155px; max-height: min(70vh, 380px); overflow: auto;
  padding: 5px; margin: 0; list-style: none;
  background: #fff; color: #24202b; border: 1px solid #e6e0eb;
  border-radius: 10px; box-shadow: 0 8px 25px rgba(20, 15, 30, .12);
}
#languages-switcher.vh-language-ready.is-open .languages-list { display: block !important; }
#languages-switcher.vh-language-ready .languages-list a {
  display: flex; align-items: center; gap: 8px; min-height: 44px;
  padding: 6px 10px; color: #24202b; text-decoration: none; font-size: 14px;
  border-radius: 6px;
}
#languages-switcher.vh-language-ready .languages-list a:hover { background: #f4f0f8; }
#languages-switcher.vh-language-ready button:focus-visible,
#languages-switcher.vh-language-ready a:focus-visible { outline: 2px solid #7445a5; outline-offset: 2px; }
@media (prefers-reduced-motion: reduce) { #languages-switcher.vh-language-ready * { transition: none; } }
