/* Shared language and direction layer: public pages, authentication and dashboard. */
.language-switcher {
  min-height: 2.85rem;
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  padding-inline: .72rem;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 1rem;
  background: rgba(255,255,255,.045);
  color: #e2e8f0;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  transition: border-color .2s ease, background .2s ease, transform .2s ease;
}
.language-switcher:hover,
.language-switcher:focus-within {
  border-color: rgba(52,211,153,.45);
  background: rgba(16,185,129,.09);
}
.language-switcher__icon { color: #6ee7b7; font-size: 1rem; }
.language-switcher__select {
  appearance: none;
  min-width: 5.3rem;
  border: 0;
  outline: 0;
  background: transparent;
  color: inherit;
  cursor: pointer;
  font: inherit;
  font-size: .86rem;
  font-weight: 800;
  text-align: center;
}
.language-switcher__select option { background: #ffffff; color: #0f172a; }
.language-switcher__submit { color: #6ee7b7; font-weight: 800; }
[dir="ltr"] .language-switcher { direction: ltr; }
[dir="ltr"] body { font-family: Inter, "Segoe UI", Arial, sans-serif; }
[dir="rtl"] body { font-family: Tajawal, system-ui, sans-serif; }
[dir="ltr"] .public-footer-link:hover,
[dir="ltr"] .nav-link:hover { transform: translateX(2px); }
@media (max-width: 640px) {
  .language-switcher { min-height: 2.55rem; padding-inline: .55rem; }
  .language-switcher__select { min-width: 4.8rem; font-size: .8rem; }
}
