/*
 * Hisaban — RTL Override Stylesheet
 * Loaded conditionally when dir="rtl" (FA / AR languages).
 *
 * AdminKit v3.4.0 + Bootstrap 5.3 ship LTR-only physical properties.
 * This file flips every relevant physical property so the UI mirrors LTR.
 */

/* ================================================================
   1. BOOTSTRAP UTILITY CLASSES — flip margin/padding start↔end
   ================================================================ */

/* --- Margin Start (ms-*) → margin-right in RTL --- */
.ms-0 { margin-left: unset !important; margin-right: 0 !important; }
.ms-1 { margin-left: unset !important; margin-right: .25rem !important; }
.ms-2 { margin-left: unset !important; margin-right: .5rem !important; }
.ms-3 { margin-left: unset !important; margin-right: 1rem !important; }
.ms-4 { margin-left: unset !important; margin-right: 1.5rem !important; }
.ms-5 { margin-left: unset !important; margin-right: 3rem !important; }
.ms-6 { margin-left: unset !important; margin-right: 4.5rem !important; }
.ms-7 { margin-left: unset !important; margin-right: 6rem !important; }
.ms-auto { margin-left: unset !important; margin-right: auto !important; }

/* --- Margin End (me-*) → margin-left in RTL --- */
.me-0 { margin-right: unset !important; margin-left: 0 !important; }
.me-1 { margin-right: unset !important; margin-left: .25rem !important; }
.me-2 { margin-right: unset !important; margin-left: .5rem !important; }
.me-3 { margin-right: unset !important; margin-left: 1rem !important; }
.me-4 { margin-right: unset !important; margin-left: 1.5rem !important; }
.me-5 { margin-right: unset !important; margin-left: 3rem !important; }
.me-6 { margin-right: unset !important; margin-left: 4.5rem !important; }
.me-7 { margin-right: unset !important; margin-left: 6rem !important; }
.me-auto { margin-right: unset !important; margin-left: auto !important; }

/* --- Padding Start (ps-*) → padding-right in RTL --- */
.ps-0 { padding-left: unset !important; padding-right: 0 !important; }
.ps-1 { padding-left: unset !important; padding-right: .25rem !important; }
.ps-2 { padding-left: unset !important; padding-right: .5rem !important; }
.ps-3 { padding-left: unset !important; padding-right: 1rem !important; }
.ps-4 { padding-left: unset !important; padding-right: 1.5rem !important; }
.ps-5 { padding-left: unset !important; padding-right: 3rem !important; }
.ps-6 { padding-left: unset !important; padding-right: 4.5rem !important; }
.ps-7 { padding-left: unset !important; padding-right: 6rem !important; }

/* --- Padding End (pe-*) → padding-left in RTL --- */
.pe-0 { padding-right: unset !important; padding-left: 0 !important; }
.pe-1 { padding-right: unset !important; padding-left: .25rem !important; }
.pe-2 { padding-right: unset !important; padding-left: .5rem !important; }
.pe-3 { padding-right: unset !important; padding-left: 1rem !important; }
.pe-4 { padding-right: unset !important; padding-left: 1.5rem !important; }
.pe-5 { padding-right: unset !important; padding-left: 3rem !important; }
.pe-6 { padding-right: unset !important; padding-left: 4.5rem !important; }
.pe-7 { padding-right: unset !important; padding-left: 6rem !important; }

/* --- Text alignment --- */
.text-start { text-align: right !important; }
.text-end { text-align: left !important; }

/* --- Float --- */
.float-start { float: right !important; }
.float-end { float: left !important; }

/* --- Border start / end --- */
.border-start {
  border-left: 0 !important;
  border-right: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}
.border-start-0 { border-left: unset !important; border-right: 0 !important; }
.border-end {
  border-right: 0 !important;
  border-left: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}
.border-end-0 { border-right: unset !important; border-left: 0 !important; }

/* --- Rounded start / end --- */
.rounded-start {
  border-top-left-radius: 0 !important;
  border-bottom-left-radius: 0 !important;
  border-top-right-radius: var(--bs-border-radius) !important;
  border-bottom-right-radius: var(--bs-border-radius) !important;
}
.rounded-end {
  border-top-right-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
  border-top-left-radius: var(--bs-border-radius) !important;
  border-bottom-left-radius: var(--bs-border-radius) !important;
}

/* ================================================================
   2. BOOTSTRAP COMPONENTS — flip physical properties
   ================================================================ */

/* --- Form Check (checkbox / radio) --- */
.form-check {
  padding-left: 0;
  padding-right: 1.5em;
}
.form-check .form-check-input {
  float: right;
  margin-left: 0;
  margin-right: -1.5em;
}

/* --- Form Switch --- */
.form-switch {
  padding-left: 0;
  padding-right: 2.5em;
}
.form-switch .form-check-input {
  margin-right: -2.5em;
  margin-left: 0;
}

/* --- Input Group --- */
.input-group > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {
  border-radius: 0;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  border-top-left-radius: var(--bs-border-radius);
  border-bottom-left-radius: var(--bs-border-radius);
  margin-left: 0;
  margin-right: calc(var(--bs-border-width) * -1);
}
.input-group > :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating + .form-floating):not(.form-floating + .form-select) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  border-top-right-radius: var(--bs-border-radius);
  border-bottom-right-radius: var(--bs-border-radius);
}

/* --- Dropdown --- */
.dropdown-menu[data-bs-popper] {
  left: auto;
  right: 0;
}
.dropdown-menu-start[data-bs-popper] {
  left: auto;
  right: 0;
}
.dropdown-menu-end[data-bs-popper] {
  right: auto;
  left: 0;
}

/* --- Breadcrumb separator --- */
.breadcrumb-item + .breadcrumb-item::before {
  float: right;
  padding-left: .5rem;
  padding-right: 0;
}
.breadcrumb-item + .breadcrumb-item {
  padding-left: 0;
  padding-right: .5rem;
}

/* --- Pagination --- */
.page-item:not(:first-child) .page-link {
  margin-left: 0;
  margin-right: calc(var(--bs-border-width) * -1);
}
.page-item:first-child .page-link {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  border-top-right-radius: var(--bs-border-radius);
  border-bottom-right-radius: var(--bs-border-radius);
}
.page-item:last-child .page-link {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  border-top-left-radius: var(--bs-border-radius);
  border-bottom-left-radius: var(--bs-border-radius);
}

/* --- List Group flush --- */
.list-group-flush > .list-group-item {
  text-align: right;
}

/* --- Btn Close (dismiss) position --- */
.btn-close {
  margin-left: 0;
  margin-right: auto;
}

/* --- Alert dismissible --- */
.alert-dismissible {
  padding-left: 1rem;
  padding-right: 4rem;
}
.alert-dismissible .btn-close {
  left: 0;
  right: auto;
}

/* --- Modal header close --- */
.modal-header .btn-close {
  margin: -.5rem auto -.5rem -.5rem;
}

/* --- Navbar toggler --- */
.navbar-toggler {
  margin-left: 0;
  margin-right: 0;
}

/* --- Nav tabs/pills --- */
.nav {
  padding-right: 0;
}

/* ================================================================
   3. ADMINKIT SIDEBAR — flip to right side
   ================================================================ */

.sidebar,
.sidebar-content {
  transition: margin-right .35s ease-in-out, right .35s ease-in-out;
}

.sidebar-nav {
  padding-left: 0;
  padding-right: 0;
}

.sidebar-link,
a.sidebar-link {
  border-left: 0;
  border-right: 3px solid transparent;
  padding: .625rem 1.625rem;
  text-align: right;
  flex-direction: row-reverse;
}

.sidebar-item.active > .sidebar-link {
  border-left: 0 !important;
  border-left-width: 0 !important;
  border-right: 3px solid #3b7ddd;
}

.sidebar-link i,
.sidebar-link svg,
a.sidebar-link i,
a.sidebar-link svg {
  margin-right: 0 !important;
  margin-left: .75rem;
}

/* AdminKit sidebar brand */
.sidebar-brand {
  flex-direction: row-reverse;
}

/* AdminKit hamburger icon in topbar */
.hamburger,
.sidebar-toggle {
  margin-left: 0;
  margin-right: 0;
}

/* ================================================================
   4. ADMINKIT NAVBAR — flip alignment
   ================================================================ */

.navbar-expand .navbar-nav .nav-link {
  padding-left: var(--bs-navbar-nav-link-padding-x);
  padding-right: var(--bs-navbar-nav-link-padding-x);
}

.navbar-collapse {
  direction: rtl;
}

/* Avatar icon spacing in topbar */
.avatar {
  margin-left: .25rem;
  margin-right: 0;
}

/* ================================================================
   5. TABLE — text alignment
   ================================================================ */

table,
.table,
.table th,
.table td {
  text-align: right;
}

/* Align action buttons in last column to left */
.table td:last-child .btn,
.table td:last-child .inline-actions {
  direction: rtl;
}

/* ================================================================
   6. FORMS — label/text alignment
   ================================================================ */

.form-label,
label {
  text-align: right;
  display: block;
}

.form-floating > label {
  left: auto;
  right: 0;
}

.form-select {
  background-position: left .75rem center;
  padding-left: 2.25rem;
  padding-right: .75rem;
}

/* ================================================================
   7. GENERAL CONTENT — direction and alignment
   ================================================================ */

body,
.card,
.card-body,
.card-header,
.card-footer,
.container,
.container-fluid,
.row,
.col,
p, h1, h2, h3, h4, h5, h6,
.dropdown-item,
.list-group-item,
.notice-box {
  text-align: right;
}

.text-center {
  text-align: center !important;
}

/* feather icons inline with text */
[data-feather],
.align-middle {
  margin-left: .35rem;
  margin-right: 0;
}
.sidebar-link [data-feather],
.sidebar-link .align-middle {
  margin-left: .75rem;
  margin-right: 0;
}

/* ================================================================
   8. MATERIAL LOGIN — RTL overrides
   ================================================================ */

.input-wrapper label {
  left: auto;
  right: 0;
  transform-origin: right top;
}

.input-line {
  left: auto;
  right: 0;
}

.password-wrapper input {
  padding-right: 0 !important;
  padding-left: 56px !important;
}

.password-toggle {
  right: auto;
  left: 0;
}

.form-options {
  direction: rtl;
}

.permission-option small {
  margin-left: 0;
  margin-right: auto;
}

/* ================================================================
   Invoice Wizard polish
   ================================================================ */

.autocomplete-option,
.autocomplete-state {
  text-align: right;
}

.selected-customer-card {
  direction: rtl;
}

.qty-modal-actions {
  justify-content: flex-start;
}

/* ================================================================
   9. RESPONSIVE — Mobile RTL sidebar
   ================================================================ */

@media (max-width: 991.98px) {
  body[dir="rtl"].app-runtime .sidebar {
    margin-right: -260px;
    margin-left: 0;
  }
  body[dir="rtl"].app-runtime .sidebar.collapsed {
    margin-right: 0;
  }
  body[dir="rtl"].app-runtime .main {
    margin-right: 0;
  }
}
