/* Zelavi language switcher — used in the desktop header and the mobile menu.
   Inherits the site palette (--text/--border/--primary/--bg-warm). RTL-safe (logical props). */
.i18n-switcher{position:relative;display:inline-flex;font-family:var(--font-body,sans-serif)}
.i18n-switch-btn{display:inline-flex;align-items:center;gap:7px;padding:7px 11px;border:1px solid var(--border,rgba(0,0,0,.14));
  border-radius:999px;background:transparent;color:var(--text,#1D2130);font-size:.86rem;font-weight:500;cursor:pointer;line-height:1;
  transition:border-color .18s ease,background .18s ease}
.i18n-switch-btn:hover{border-color:var(--primary,#0E8A6D);background:rgba(14,138,109,.06)}
.i18n-switch-btn .i18n-flag{font-size:1.05rem;line-height:1}
.i18n-switch-btn .i18n-caret{font-size:.7rem;opacity:.6}
.i18n-switch-btn .i18n-endonym{max-width:11ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.i18n-menu{position:absolute;inset-block-start:calc(100% + 8px);inset-inline-end:0;z-index:1200;min-width:190px;margin:0;padding:6px;
  list-style:none;background:var(--bg-warm,#fff);border:1px solid var(--border,rgba(0,0,0,.14));border-radius:14px;
  box-shadow:0 18px 48px rgba(13,18,32,.18);max-height:min(70vh,420px);overflow:auto}
.i18n-menu[hidden]{display:none}
.i18n-menu li{display:flex;align-items:center;gap:10px;padding:9px 11px;border-radius:9px;cursor:pointer;font-size:.9rem;color:var(--text,#1D2130)}
.i18n-menu li .i18n-flag{font-size:1.15rem}
.i18n-menu li:hover{background:rgba(14,138,109,.09)}
.i18n-menu li[aria-selected="true"]{background:rgba(14,138,109,.14);font-weight:600}
.i18n-menu li[dir="rtl"]{flex-direction:row-reverse;text-align:start}
/* The topbar is DARK by default (background:rgba(13,15,28,.58)) and sets no `color`
   of its own, so `color:inherit` resolved to body's --text (#1D2130) — dark text on a
   dark bar, effectively invisible. The site's own .topbar-nav links avoid this by
   setting an explicit light colour; match them instead of inheriting. */
.topbar .i18n-switch-btn{color:rgba(248,246,242,.92);border-color:rgba(255,255,255,.30)}
.topbar .i18n-switch-btn .i18n-caret{opacity:.8}
.topbar .i18n-switch-btn:hover{color:#fff;border-color:var(--mint,#41D6A3);background:rgba(255,255,255,.08)}
/* .topbar.light swaps the bar to the warm background — go back to dark ink there. */
.topbar.light .i18n-switch-btn{color:var(--text,#1D2130);border-color:var(--border,rgba(14,138,109,.16))}
.topbar.light .i18n-switch-btn:hover{color:var(--text,#1D2130);border-color:var(--primary,#0E8A6D);background:rgba(14,138,109,.06)}
/* The auth pages' switcher sits on the warm brand panel, not the topbar. */
.af-lang .i18n-switch-btn{color:var(--text,#1D2130);border-color:var(--border,rgba(14,138,109,.16))}
@media (max-width:860px){
  /* Full width belongs ONLY to the switcher inside the hamburger menu (.mm-lang),
     where it is a stacked menu row. Applying it to EVERY .i18n-switcher also hit the
     auth pages' .af-lang, which is position:absolute at left:5vw — 5vw + 100% = 105vw,
     i.e. a ~19px horizontal scrollbar on signin/signup in every language, LTR included. */
  .mm-lang{width:100%}
  .mm-lang .i18n-switch-btn{width:100%;justify-content:space-between}
  .mm-lang .i18n-menu{inset-inline:0}
  /* Anywhere else, keep the menu on-screen without forcing the control full-width. */
  .i18n-menu{max-width:min(90vw,320px)}
}
