/* Language control styles copied from the homepage language picker. */
html .language-picker { position: relative; flex: 0 0 auto; }
    html .language-trigger { min-width: auto; height: 42px; padding: 0 6px; display: inline-flex; align-items: center; justify-content: center; gap: 7px; border: 0; border-radius: 0; color: #1a1a1a; background: transparent; box-shadow: none; font-family: inherit; font-size: 14px; font-weight: 500; line-height: 1; cursor: pointer; transition: color .18s ease,transform .18s ease; }
    html .language-trigger:hover { color: #4d4d4d; background: transparent; }
    html .language-trigger:active { transform: scale(.97); }
    html .language-trigger:focus-visible { outline: 3px solid rgba(255,116,23,.3); outline-offset: 2px; }
    html .language-globe { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 1.7; }
    html .language-chevron { width: 10px; height: 6px; fill: none; stroke: currentColor; stroke-width: 1.6; transition: transform .18s ease; }
    html .language-picker.is-open .language-chevron { transform: rotate(180deg); }
    html .language-menu { position: absolute; z-index: 100; top: calc(100% + 8px); left: 0; width: 220px; padding: 8px; border: 1px solid rgba(23,23,23,.1); border-radius: 16px; background: #fff; box-shadow: 0 14px 36px rgba(0,0,0,.12); opacity: 0; visibility: hidden; transform: translateY(-6px) scale(.98); transform-origin: top left; transition: opacity .18s cubic-bezier(.23,1,.32,1),transform .18s cubic-bezier(.23,1,.32,1),visibility .18s; }
    html .language-picker.is-open .language-menu { opacity: 1; visibility: visible; transform: none; }
    html .language-option { width: 100%; min-height: 40px; padding: 0 10px 0 12px; display: flex; align-items: center; justify-content: space-between; gap: 12px; border: 0; border-radius: 9px; color: #4d4d4d; background: transparent; font-family: inherit; font-size: 14px; font-weight: 400; line-height: 1.2; text-align: left; cursor: pointer; }
    html .language-option:hover,html .language-option:focus-visible { color: #1a1a1a; background: #f3f3f3; outline: none; }
    html .language-option[aria-checked="true"] { color: #1a1a1a; font-weight: 500; }
    html .language-option svg { width: 15px; height: 15px; fill: none; stroke: #1a1a1a; stroke-width: 1.8; opacity: 0; }
    html .language-option[aria-checked="true"] svg { opacity: 1; }

/* The login header places the same picker at the right-hand edge. */
.site-header { position: relative; z-index: 20; }
.login-language-picker { margin-left: auto; }
html .login-language-picker .language-menu {
  left: auto;
  right: 0;
  max-height: calc(100svh - 96px);
  overflow-y: auto;
  transform-origin: top right;
}
@media (pointer: coarse) {
  html .login-language-picker .language-trigger { height: 44px; }
  html .login-language-picker .language-option { min-height: 44px; }
}
@media (prefers-reduced-motion: reduce) {
  html .language-trigger, html .language-chevron, html .language-menu { transition: none; }
}
