.lang-switch { display: inline-flex; align-items: center; }
.lang-switch label {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}
.lang-switch select {
  height: 36px;
  max-width: 148px;
  border-radius: 8px;
  border: 1px solid var(--border-subtle, #cbd5e1);
  background: #fff;
  color: #0f172a;
  font: inherit;
  font-size: 13px;
  font-weight: 600;
  padding: 0 8px;
}
.portal-topbar .lang-switch select,
.help-nav .lang-switch select {
  background: rgba(255, 255, 255, 0.06);
  color: var(--text-primary, #e2e8f0);
  border-color: var(--border-subtle, rgba(255,255,255,.12));
}
.auth-card .lang-switch { margin: 0 0 16px; }
.help-nav { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }

html[dir="rtl"] .portal-sidebar {
  inset: 0 0 0 auto;
  border-right: 0;
  border-left: 1px solid var(--border-subtle);
}
html[dir="rtl"] .portal-main { margin-left: 0; margin-right: var(--sidebar-w); }
html[dir="rtl"] .portal-topbar-actions { margin-left: 0; margin-right: auto; }
html[dir="rtl"] .portal-search-wrap > svg { left: auto; right: 14px; }
html[dir="rtl"] .portal-search-wrap input { padding: 0 40px 0 72px; }
html[dir="rtl"] .portal-search-kbd { right: auto; left: 12px; }
html[dir="rtl"] .ms-ticket-chevron svg,
html[dir="rtl"] .ms-detail-back svg { transform: scaleX(-1); }

@media (max-width: 1023px) {
  html[dir="rtl"] .portal-sidebar { transform: translateX(100%); }
  html[dir="rtl"] .portal-sidebar.open { transform: translateX(0); }
  html[dir="rtl"] .portal-main { margin-right: 0; }
}
