/* One shared RTL layer. Page styles remain language-neutral. */
html[dir="rtl"] body {
  direction: rtl;
  text-align: start;
}

html[dir="rtl"] .app-sidebar-region {
  right: 0;
  left: auto;
}

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

html[dir="rtl"] .sidebar__nav {
  padding-right: 0;
  padding-left: 2px;
}

html[dir="rtl"] .sidebar__link,
html[dir="rtl"] .sidebar__toggle,
html[dir="rtl"] .sidebar__logout,
html[dir="rtl"] .sidebar__sublink,
html[dir="rtl"] .crm-command__item {
  text-align: right;
}

html[dir="rtl"] .sidebar__link.is-active::before,
html[dir="rtl"] .sidebar__toggle.is-active::before,
html[dir="rtl"] .sidebar__item.is-active > .sidebar__link::before,
html[dir="rtl"] .sidebar__item.is-open > .sidebar__toggle::before {
  right: 0;
  left: auto;
}

html[dir="rtl"] .sidebar__submenu {
  padding-right: 14px;
  padding-left: 0;
}

html[dir="rtl"] .sidebar__sublink {
  padding-right: 16px;
  padding-left: 12px;
}

html[dir="rtl"] .sidebar__sublink.is-active::before {
  right: -14px;
  left: auto;
  border-radius: 999px 0 0 999px;
}

html[dir="rtl"] .sidebar__caret {
  justify-self: start;
}

html[dir="rtl"] .app-main {
  margin-right: var(--crm-sidebar-width);
  margin-left: 0;
}

html[dir="rtl"] .app-content::before {
  right: var(--crm-sidebar-width);
  left: 0;
}

html[dir="rtl"] .app-topbar__heading-line > span,
html[dir="rtl"] .dashboard-section-eyebrow::before,
html[dir="rtl"] .ui-label::before {
  transform: scaleX(-1);
}

html[dir="rtl"] .app-topbar__menu svg,
html[dir="rtl"] .manage-visits-pagination__link--nav {
  direction: ltr;
}

html[dir="rtl"] input[type="email"],
html[dir="rtl"] input[type="tel"],
html[dir="rtl"] input[type="date"],
html[dir="rtl"] input[type="time"],
html[dir="rtl"] input[inputmode="numeric"] {
  direction: ltr;
  text-align: start;
}

html[dir="rtl"] .data-table th,
html[dir="rtl"] .data-table td,
html[dir="rtl"] .reports-table th,
html[dir="rtl"] .reports-table td {
  text-align: right;
}

html[dir="rtl"] .ui-input,
html[dir="rtl"] textarea,
html[dir="rtl"] select,
html[dir="rtl"] button,
html[dir="rtl"] .quick-plan__result,
html[dir="rtl"] .ad-hoc-result,
html[dir="rtl"] .weekly-visit,
html[dir="rtl"] .reports-table {
  text-align: right;
}

html[dir="rtl"] .ui-input-icon,
html[dir="rtl"] .quick-plan__search-icon {
  right: 14px;
  left: auto;
}

html[dir="rtl"] .quick-plan__search .ui-input {
  padding-right: 56px;
  padding-left: 18px;
}

html[dir="rtl"] .quick-plan__search-hint {
  display: none;
}

html[dir="rtl"] .app-topbar__title p,
html[dir="rtl"] .workflow-compact-heading p,
html[dir="rtl"] .section-text,
html[dir="rtl"] .reports-table-subtext,
html[dir="rtl"] bdi {
  unicode-bidi: plaintext;
}

html[dir="rtl"] input[type="search"]::-webkit-search-cancel-button {
  display: none;
  margin-right: 8px;
  margin-left: 0;
}


html[dir="rtl"] .ui-input.has-icon {
  padding-right: 42px;
  padding-left: 14px;
}

html[dir="rtl"] .crm-scroll-top {
  right: auto;
  left: 22px;
}

.app-topbar__language {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding-inline: 12px;
  border: 1px solid var(--crm-border);
  border-radius: 12px;
  background: var(--crm-surface);
  color: var(--crm-brand);
  font-size: .78rem;
  font-weight: 850;
  text-decoration: none;
  white-space: nowrap;
}

.app-topbar__language:hover {
  border-color: var(--crm-brand);
  background: var(--crm-brand-soft);
}

.auth-language-switch {
  position: fixed;
  inset-block-start: 18px;
  inset-inline-end: 20px;
  z-index: 20;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding-inline: 14px;
  border: 1px solid var(--crm-border);
  border-radius: 12px;
  background: rgba(255, 255, 255, .92);
  color: var(--crm-brand);
  box-shadow: var(--crm-shadow-xs);
  font-weight: 850;
  text-decoration: none;
}

@media (max-width: 980px) {
  html[dir="rtl"] .app-main { margin-right: 0; }
  html[dir="rtl"] .app-content::before { right: 0; }
  html[dir="rtl"] .sidebar {
    right: 0;
    left: auto;
    transform: translateX(100%);
  }
  html[dir="rtl"] .sidebar.is-open { transform: translateX(0); }
}

@media (max-width: 720px) {
  .app-topbar__language { min-height: 34px; padding-inline: 9px; }
  html[dir="rtl"] .app-topbar__title-wrap { padding-right: 0; padding-left: 48px; }
  html[dir="rtl"] .app-topbar__command { right: auto; left: 14px; }
  html[dir="rtl"] .crm-scroll-top { right: auto; left: 14px; }
}
