.partner-language-picker {
  position: fixed;
  inset-block-start: 12px;
  inset-inline-end: 16px;
  z-index: 2147483000;
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 6px 8px;
  border: 1px solid rgba(148, 163, 184, .45);
  border-radius: 12px;
  background: rgba(255, 255, 255, .96);
  box-shadow: 0 5px 20px rgba(15, 23, 42, .14);
  color: #334155;
  font: 600 12px/1.2 Arial, "Noto Sans Arabic", sans-serif;
  backdrop-filter: blur(8px);
}

.partner-language-picker__label { white-space: nowrap; }
.partner-language-picker__select {
  min-width: 84px;
  border: 0;
  outline: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  cursor: pointer;
}

/* Canonical control injected by partner-i18n.js.  Keep the legacy class
   above for cached pages while both versions share the same visual system. */
.partner-locale-control {
  position: fixed;
  inset-block-start: max(12px, env(safe-area-inset-top));
  inset-inline-end: max(16px, env(safe-area-inset-right));
  z-index: 2147483000;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-width: 116px;
  height: 38px;
  padding: 0 10px;
  border: 1px solid rgba(148, 163, 184, .45);
  border-radius: 999px;
  background: rgba(255, 255, 255, .97);
  box-shadow: 0 8px 24px rgba(15, 23, 42, .14);
  color: #172033;
  font: 700 13px/1 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans Arabic", sans-serif;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.partner-locale-control__icon {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
}

.partner-locale-control__select {
  min-width: 82px;
  height: 32px;
  padding: 0 20px 0 2px;
  border: 0;
  outline: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  cursor: pointer;
}

html[data-theme="dark"] .partner-locale-control {
  border-color: rgba(148, 163, 184, .3);
  background: rgba(15, 23, 42, .96);
  color: #e2e8f0;
}

html[data-theme="dark"] .partner-language-picker {
  border-color: rgba(148, 163, 184, .3);
  background: rgba(15, 23, 42, .96);
  color: #e2e8f0;
}

html[dir="rtl"] body {
  direction: rtl;
  font-family: "Noto Sans Arabic", Tahoma, Arial, "Noto Sans KR", sans-serif;
  text-align: start;
  max-width: 100%;
  overflow-x: clip;
}

/* Legacy marketing pages contain horizontally translated carousel cards.
   Their off-canvas slides must stay inside the carousel rather than widening
   the RTL page and creating a small sideways pan on mobile. */
html[dir="rtl"] {
  max-width: 100%;
  overflow-x: hidden;
}

html[dir="rtl"] .partner-locale-control__select {
  padding: 0 2px 0 20px;
  direction: rtl;
}

html[dir="rtl"] input[type="email"],
html[dir="rtl"] input[type="tel"],
html[dir="rtl"] input[type="url"],
html[dir="rtl"] input[type="number"],
html[dir="rtl"] input[inputmode="numeric"],
html[dir="rtl"] [data-ltr],
html[dir="rtl"] code,
html[dir="rtl"] pre {
  direction: ltr;
  text-align: left;
  unicode-bidi: isolate;
}

html[dir="rtl"] .psbar {
  right: 0;
  left: auto;
  border-right: 0;
  border-left: 1px solid var(--ps-border);
}

html[dir="rtl"] .psbar-link,
html[dir="rtl"] .psbar-sub-link,
html[dir="rtl"] .psbar-business,
html[dir="rtl"] .psbar-group-toggle {
  text-align: right;
}

html[dir="rtl"] .psbar-group-chevron,
html[dir="rtl"] .psbar-link-chevron {
  margin-right: auto;
  margin-left: 0;
  transform: scaleX(-1);
}

html[dir="rtl"] body.has-partner-sidebar {
  padding-right: 240px;
  padding-left: 0;
}

html[dir="rtl"] .psbar-hamburger {
  right: 12px;
  left: auto;
}

html[dir="rtl"] .t-flag { right: auto; left: -3px; }
html[dir="rtl"] .thread {
  border-left: 0;
  border-right: 3px solid transparent;
  text-align: right;
}
html[dir="rtl"] .thread.unread { border-right-color: var(--red); }
html[dir="rtl"] .thread.active { border-right-color: var(--accent); }
html[dir="rtl"] .list { border-right: 0; border-left: 1px solid var(--line); }

html[dir="rtl"] .back-arrow,
html[dir="rtl"] .chevron,
html[dir="rtl"] [data-directional-icon] { transform: scaleX(-1); }

html[dir="rtl"] .password-toggle,
html[dir="rtl"] .toggle-password,
html[dir="rtl"] button[aria-label*="password" i] {
  right: auto !important;
  left: 10px !important;
}

html[dir="rtl"] .toast,
html[dir="rtl"] .modal,
html[dir="rtl"] dialog,
html[dir="rtl"] [role="dialog"] {
  direction: rtl;
  text-align: right;
}

@media (max-width: 900px) {
  .partner-language-picker { inset-block-start: 14px; inset-inline-end: 68px; }
  .partner-locale-control {
    inset-block-start: max(8px, env(safe-area-inset-top));
    inset-inline-end: max(68px, calc(env(safe-area-inset-right) + 8px));
    min-width: 104px;
    height: 34px;
    padding-inline: 8px;
    font-size: 12px;
  }
  .partner-locale-control__select { min-width: 72px; height: 28px; }
  html[dir="rtl"] body.has-partner-sidebar { padding-right: 0; }
  html[dir="rtl"] .psbar { transform: translateX(100%); }
  html[dir="rtl"] .psbar.open,
  html[dir="rtl"] .psbar.is-open,
  html[dir="rtl"] body.psbar-open .psbar { transform: translateX(0); }
}

@media print {
  .partner-language-picker,
  .partner-locale-control { display: none !important; }
}

/* The locale selector remains usable in compact partner headers. */
.partner-language-select {
  max-width: 10rem;
  min-width: 6rem;
  margin-inline: .5rem;
  padding: .4rem .6rem;
  border: 1px solid currentColor;
  border-radius: .5rem;
  color: inherit;
  background: var(--bg, #fff);
  font: inherit;
  font-size: .875rem;
  flex-shrink: 0;
}
