@import url('https://fonts.googleapis.com/css2?family=Readex+Pro:wght@160..700&display=swap');

body {
  font-family: 'Readex Pro', sans-serif;
}

[dir="rtl"] .text-left {
  text-align: right;
}

[dir="rtl"] .text-right {
  text-align: left;
}

[dir="rtl"] .float-left {
  float: right;
}

[dir="rtl"] .float-right {
  float: left;
}

/* Margin right <-> left swap */
[dir="rtl"] .mr-1 { margin-right: 0; margin-left: 0.25rem; }
[dir="rtl"] .mr-2 { margin-right: 0; margin-left: 0.5rem; }
[dir="rtl"] .mr-3 { margin-right: 0; margin-left: 0.75rem; }
[dir="rtl"] .mr-4 { margin-right: 0; margin-left: 1rem; }
[dir="rtl"] .-mr-1 { margin-right: 0; margin-left: -0.25rem; }
[dir="rtl"] .-mr-px { margin-right: 0; margin-left: -1px; }
[dir="rtl"] .mr-\[12px\] { margin-right: 0; margin-left: 12px; }

[dir="rtl"] .ml-1 { margin-left: 0; margin-right: 0.25rem; }
[dir="rtl"] .ml-2 { margin-left: 0; margin-right: 0.5rem; }
[dir="rtl"] .ml-3 { margin-left: 0; margin-right: 0.75rem; }
[dir="rtl"] .ml-4 { margin-left: 0; margin-right: 1rem; }
[dir="rtl"] .ml-auto { margin-left: 0; margin-right: auto; }
[dir="rtl"] .-ml-1 { margin-left: 0; margin-right: -0.25rem; }
[dir="rtl"] .-ml-2 { margin-left: 0; margin-right: -0.5rem; }
[dir="rtl"] .lg\:ml-2 { margin-left: 0; margin-right: 0.5rem; }
[dir="rtl"] .-ml-2\.5 { margin-left: 0; margin-right: -0.625rem; }
[dir="rtl"] .-ml-4\.5 { margin-left: 0; margin-right: -1.125rem; }
[dir="rtl"] .-ml-\[39px\] { margin-left: 0; margin-right: -39px; }

/* Padding right <-> left swap */
[dir="rtl"] .pl-1 { padding-left: 0; padding-right: 0.25rem; }
[dir="rtl"] .pl-2 { padding-left: 0; padding-right: 0.5rem; }
[dir="rtl"] .pl-3 { padding-left: 0; padding-right: 0.75rem; }
[dir="rtl"] .pl-4 { padding-left: 0; padding-right: 1rem; }
[dir="rtl"] .pl-9 { padding-left: 0; padding-right: 2.25rem; }
[dir="rtl"] .pr-2 { padding-right: 0; padding-left: 0.5rem; }
[dir="rtl"] .pr-4 { padding-right: 0; padding-left: 1rem; }
[dir="rtl"] .pr-6 { padding-right: 0; padding-left: 1.5rem; }
[dir="rtl"] .pr-8 { padding-right: 0; padding-left: 2rem; }
[dir="rtl"] .lg\:first\:pl-3 { padding-left: 0; padding-right: 0.75rem; }
[dir="rtl"] .lg\:last\:pr-3 { padding-right: 0; padding-left: 0.75rem; }
[dir="rtl"] .before\:pr-4::before { padding-right: 0; padding-left: 1rem; }
[dir="rtl"] .before\:mr-auto::before { margin-right: 0; margin-left: auto; }

/* Left/Right positioning */
[dir="rtl"] .left-0 { left: auto; right: 0; }
[dir="rtl"] .right-0 { right: auto; left: 0; }
[dir="rtl"] .left-3 { left: auto; right: 0.75rem; }
[dir="rtl"] .right-3 { right: auto; left: 0.75rem; }
[dir="rtl"] .-right-2 { right: auto; left: -0.5rem; }
[dir="rtl"] .right-px { right: auto; left: 1px; }
[dir="rtl"] .right-11 { right: auto; left: 2.75rem; }
[dir="rtl"] .-right-4 { right: auto; left: -1rem; }

/* Border */
[dir="rtl"] .border-r { border-right: 0; border-left-width: 1px; border-left-style: solid; }
[dir="rtl"] .border-l { border-left: 0; border-right-width: 1px; border-right-style: solid; }

/* ========== Select dropdown arrow ========== */
[dir="rtl"] select:not([class*="bg-none"]):not([multiple]) {
  background-position: left 0.7rem center;
}

[dir="rtl"] #changelist-actions select:not([class*="bg-none"]):not([multiple]) {
  background-position: left 0.7rem center;
}

/* ========== Error list (warning icon) ========== */
[dir="rtl"] .errorlist *::before {
  margin-right: 0;
  margin-left: 0.25rem;
}

/* ========== Datetime shortcuts ========== */
[dir="rtl"] .datetimeshortcuts {
  right: auto;
  left: 1px;
}

/* ========== Timezone warning ========== */
[dir="rtl"] .timezonewarning {
  right: auto;
  left: 2.75rem;
}

[dir="rtl"] .timezonewarning:hover::before {
  margin-right: 0;
  margin-left: 0.5rem;
}

/* ========== Fieldset collapsible ========== */
[dir="rtl"] fieldset details > summary::after {
  right: auto;
  left: 0.75rem;
}

/* ========== Add row (inline forms) ========== */
[dir="rtl"] .add-row {
  text-align: left;
}

[dir="rtl"] .add-row a {
  float: left;
}

/* ========== Select2 Autocomplete ========== */
[dir="rtl"] .select2-container.select2-container--admin-autocomplete .select2-selection--single .select2-selection__arrow {
  margin-right: 0;
  margin-left: 0.5rem;
}

[dir="rtl"] .select2-container.select2-container--admin-autocomplete .select2-selection--single .select2-selection__arrow::after {
  left: auto;
  right: 0;
}

[dir="rtl"] .select2-container.select2-container--admin-autocomplete .select2-search--dropdown::before {
  left: auto;
  right: 1rem;
}

[dir="rtl"] .select2-container.select2-container--admin-autocomplete .select2-search--dropdown .select2-search__field {
  padding-left: 0.75rem;
  padding-right: 2.25rem;
}

[dir="rtl"] .select2-container.select2-container--admin-autocomplete .select2-selection--multiple .select2-selection__clear {
  margin-right: 0;
  margin-left: 0.75rem;
}

[dir="rtl"] .select2-container.select2-container--admin-autocomplete .select2-selection--multiple .select2-selection__rendered {
  padding-left: 1.5rem;
  padding-right: 0.25rem;
}

[dir="rtl"] .select2-container.select2-container--admin-autocomplete .select2-selection--single .select2-selection__rendered {
  padding-right: 0.75rem;
  padding-left: 2rem;
}

[dir="rtl"] .select2-container--admin-autocomplete .select2-results__option[aria-selected="true"]::after {
  margin-left: 0;
  margin-right: auto;
}

[dir="rtl"] .select2-container--admin-autocomplete .select2-selection--multiple li.select2-selection__choice {
  margin-right: 0;
  margin-left: 0.25rem;
}

[dir="rtl"] .select2-container--admin-autocomplete .select2-selection--multiple li.select2-search--inline .select2-search__field {
  margin-left: 0;
  margin-right: 0.5rem;
}

/* ========== Calendar ========== */
[dir="rtl"] .calendarnav-previous {
  left: auto;
  right: 0;
  margin-left: 0;
  margin-right: 0.5rem;
}

[dir="rtl"] .calendarnav-next {
  right: auto;
  left: 0;
  margin-right: 0;
  margin-left: 0.5rem;
}

/* ========== Numeric filter slider ========== */
[dir="rtl"] #changelist-filter .admin-numeric-filter-slider .noUi-handle {
  right: auto;
  left: -1rem;
}

[dir="rtl"] #changelist-filter .admin-numeric-filter-slider .noUi-handle-upper {
  right: auto;
  left: 0;
}

/* ========== django-modeltranslation tabs ========== */
[dir="rtl"] .ui-tabs.ui-widget .ui-tabs-nav {
  margin-left: auto;
  margin-right: 0.75rem;
}

/* ========== DjangoQL ========== */
[dir="rtl"] div.djangoql-completion {
  margin-left: 0;
  margin-right: -39px;
}

[dir="rtl"] div.djangoql-completion li i {
  margin-left: 0;
  margin-right: auto;
}

[dir="rtl"] .djangoql-toggle {
  margin-left: 0;
  margin-right: -1.125rem;
}

/* ========== Selector add/remove arrows ========== */
[dir="rtl"] .selector-add::after {
  content: "arrow_back";
}

[dir="rtl"] .selector-remove::after {
  content: "arrow_forward";
}

/* ========== Unfold widgets (icon positions) ========== */
[dir="rtl"] .absolute.left-3 {
  left: auto;
  right: 0.75rem;
}

[dir="rtl"] .absolute.right-3 {
  right: auto;
  left: 0.75rem;
}

/* Select widget expand_more icon (right-0 + mr-[12px] -> left-0 + ml-[12px]) */
[dir="rtl"] .relative .material-symbols-outlined.right-0 {
  right: auto;
  left: 0;
  margin-right: 0;
  margin-left: 12px;
}

/* ========== Nav sidebar border ========== */
[dir="rtl"] #nav-sidebar {
  border-right: 0;
  border-left: 1px solid var(--color-base-200, currentColor);
}

[dir="rtl"].dark #nav-sidebar,
[dir="rtl"] .dark #nav-sidebar {
  border-left-color: var(--color-base-800, currentColor);
}

/* ========== Scrollable gradient (top shadow) ========== */
[dir="rtl"] .scrollable-top::after {
  left: auto;
  right: 0;
}

/* ========== Changelist actions bar (sidebar offset) ========== */
/* When sidebar is open in RTL, offset from right (288px = 18rem) */
@media (min-width: 1280px) {
  [dir="rtl"] #changelist-actions-wrapper.xl\:mr-72 {
    margin-right: 18rem;
  }
}

/* All applications overlay - position from right in RTL */
@media (min-width: 768px) {
  [dir="rtl"] .md\:right-72 {
    right: 18rem;
    left: auto;
  }
}

/* ========== Simplebar scrollbar position ========== */
/* Move vertical scrollbar to left side in RTL (matches reading direction) */
[dir="rtl"] .simplebar-track.simplebar-vertical {
  right: auto;
  left: 0;
}


[dir="rtl"] .space-x-1 > :not([hidden]) ~ :not([hidden]),
[dir="rtl"] .space-x-2 > :not([hidden]) ~ :not([hidden]),
[dir="rtl"] .space-x-3 > :not([hidden]) ~ :not([hidden]),
[dir="rtl"] .space-x-4 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-x-reverse: 1;
  margin-right: calc(var(--spacing) * var(--tw-space-x-reverse));
  margin-left: calc(var(--spacing) * calc(1 - var(--tw-space-x-reverse)));
}

/* ========== Tab action items (Import, Export, etc.) in header ========== */
/* Swap rounded corners and margin for RTL - first item rounds right, last rounds left */
@media (min-width: 1024px) {
  [dir="rtl"] ul[class*="flex-row"] > li:first-child {
    border-radius: 0 var(--unfold-border-radius, 8px) var(--unfold-border-radius, 8px) 0;
  }

  [dir="rtl"] ul[class*="flex-row"] > li:last-child {
    border-radius: var(--unfold-border-radius, 8px) 0 0 var(--unfold-border-radius, 8px);
  }

  [dir="rtl"] ul[class*="flex-row"] > li {
    margin-left: 0;
    margin-right: -1px;
  }
}

/* ========== App list workspace ========== */
/* Model dropdown: align to start (right in RTL) */
[dir="rtl"] .ws-model-dropdown {
  left: auto;
  right: 0;
}

/* Sidebar group collapse arrow: closed points left, open points down in RTL. */
[dir="rtl"] .app-list-collapse-arrow {
  transform: rotate(180deg);
}

[dir="rtl"] .app-list-collapse-arrow.rotate-90 {
  transform: rotate(90deg);
}
