/* Extracted from original <style id="mobile-language-menu-adaptive-fix"> block; order 19. */

/* Mobile language menu: keep the panel fully inside the viewport and scroll only when needed. */
@media (max-width: 640px) {
  .language-picker { position: static !important; }
  .language-menu {
    position: fixed !important;
    top: var(--language-menu-top, 76px) !important;
    right: 12px !important;
    left: auto !important;
    width: min(320px, calc(100vw - 24px)) !important;
    max-width: calc(100vw - 24px) !important;
    max-height: min(58dvh, 420px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    padding: 7px !important;
    border: 1px solid rgba(112, 78, 52, .14) !important;
    border-radius: 18px !important;
    background: rgba(255, 250, 243, .97) !important;
    box-shadow: 0 16px 44px rgba(50, 32, 20, .18), inset 0 1px 0 rgba(255,255,255,.9) !important;
    transform-origin: top right !important;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }
  .language-menu::-webkit-scrollbar { display: none; width: 0; height: 0; }
  .language-menu button {
    min-height: 44px;
    padding: 11px 12px !important;
    border-radius: 12px !important;
    font-size: .9rem !important;
    line-height: 1.35 !important;
    white-space: normal;
  }
  .language-menu button:hover { transform: none !important; }
}
@media (max-width: 360px) {
  .language-menu { right: 10px !important; width: calc(100vw - 20px) !important; max-width: calc(100vw - 20px) !important; }
  .language-menu button { padding-inline: 10px !important; }
}
@media (prefers-reduced-motion: reduce) {
  .language-menu, .language-menu button, .language-check { transition-duration: .01ms !important; }
}
