/* RTL Styles v8 - Right-to-Left language support (Persian, Arabic, Hebrew, Urdu) */

/* Base RTL direction */
[dir="rtl"] {
  direction: rtl;
  text-align: right;
}

/* Sidebar positioning for RTL */
[dir="rtl"] .fixed.inset-y-0.left-0 {
  left: auto !important;
  right: 0 !important;
}

/* Main content margin swap */
[dir="rtl"] .ml-\[280px\] {
  margin-left: 0 !important;
  margin-right: 280px !important;
}

[dir="rtl"] .ml-\[64px\] {
  margin-left: 0 !important;
  margin-right: 64px !important;
}

/* Flex direction for RTL */
[dir="rtl"] .flex-row {
  flex-direction: row-reverse;
}

/* Common margin swaps */
[dir="rtl"] .ml-auto { margin-left: 0; margin-right: auto; }
[dir="rtl"] .mr-auto { margin-right: 0; margin-left: auto; }

[dir="rtl"] .ml-1 { margin-left: 0; margin-right: 0.25rem; }
[dir="rtl"] .mr-1 { margin-right: 0; margin-left: 0.25rem; }
[dir="rtl"] .ml-2 { margin-left: 0; margin-right: 0.5rem; }
[dir="rtl"] .mr-2 { margin-right: 0; margin-left: 0.5rem; }
[dir="rtl"] .ml-3 { margin-left: 0; margin-right: 0.75rem; }
[dir="rtl"] .mr-3 { margin-right: 0; margin-left: 0.75rem; }
[dir="rtl"] .ml-4 { margin-left: 0; margin-right: 1rem; }
[dir="rtl"] .mr-4 { margin-right: 0; margin-left: 1rem; }
[dir="rtl"] .ml-5 { margin-left: 0; margin-right: 1.25rem; }
[dir="rtl"] .mr-5 { margin-right: 0; margin-left: 1.25rem; }
[dir="rtl"] .ml-6 { margin-left: 0; margin-right: 1.5rem; }
[dir="rtl"] .mr-6 { margin-right: 0; margin-left: 1.5rem; }
[dir="rtl"] .ml-8 { margin-left: 0; margin-right: 2rem; }
[dir="rtl"] .mr-8 { margin-right: 0; margin-left: 2rem; }

/* Common padding swaps */
[dir="rtl"] .pl-1 { padding-left: 0; padding-right: 0.25rem; }
[dir="rtl"] .pr-1 { padding-right: 0; padding-left: 0.25rem; }
[dir="rtl"] .pl-2 { padding-left: 0; padding-right: 0.5rem; }
[dir="rtl"] .pr-2 { padding-right: 0; padding-left: 0.5rem; }
[dir="rtl"] .pl-3 { padding-left: 0; padding-right: 0.75rem; }
[dir="rtl"] .pr-3 { padding-right: 0; padding-left: 0.75rem; }
[dir="rtl"] .pl-4 { padding-left: 0; padding-right: 1rem; }
[dir="rtl"] .pr-4 { padding-right: 0; padding-left: 1rem; }
[dir="rtl"] .pl-5 { padding-left: 0; padding-right: 1.25rem; }
[dir="rtl"] .pr-5 { padding-right: 0; padding-left: 1.25rem; }
[dir="rtl"] .pl-6 { padding-left: 0; padding-right: 1.5rem; }
[dir="rtl"] .pr-6 { padding-right: 0; padding-left: 1.5rem; }
[dir="rtl"] .pl-8 { padding-left: 0; padding-right: 2rem; }
[dir="rtl"] .pr-8 { padding-right: 0; padding-left: 2rem; }

/* Position swaps */
[dir="rtl"] .left-0 { left: auto; right: 0; }
[dir="rtl"] .right-0 { right: auto; left: 0; }
[dir="rtl"] .left-1 { left: auto; right: 0.25rem; }
[dir="rtl"] .right-1 { right: auto; left: 0.25rem; }
[dir="rtl"] .left-2 { left: auto; right: 0.5rem; }
[dir="rtl"] .right-2 { right: auto; left: 0.5rem; }
[dir="rtl"] .left-3 { left: auto; right: 0.75rem; }
[dir="rtl"] .right-3 { right: auto; left: 0.75rem; }
[dir="rtl"] .left-4 { left: auto; right: 1rem; }
[dir="rtl"] .right-4 { right: auto; left: 1rem; }

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

/* Border radius for RTL */
[dir="rtl"] .rounded-l { border-radius: 0 0.25rem 0.25rem 0; }
[dir="rtl"] .rounded-r { border-radius: 0.25rem 0 0 0.25rem; }
[dir="rtl"] .rounded-l-md { border-radius: 0 0.375rem 0.375rem 0; }
[dir="rtl"] .rounded-r-md { border-radius: 0.375rem 0 0 0.375rem; }
[dir="rtl"] .rounded-l-lg { border-radius: 0 0.5rem 0.5rem 0; }
[dir="rtl"] .rounded-r-lg { border-radius: 0.5rem 0 0 0.5rem; }

/* Border positioning */
[dir="rtl"] .border-l { border-left: none; border-right: 1px solid; }
[dir="rtl"] .border-r { border-right: none; border-left: 1px solid; }
[dir="rtl"] .border-l-2 { border-left: none; border-right: 2px solid; }
[dir="rtl"] .border-r-2 { border-right: none; border-left: 2px solid; }

/* Space utilities */
[dir="rtl"] .space-x-1 > :not([hidden]) ~ :not([hidden]) { margin-left: 0; margin-right: 0.25rem; }
[dir="rtl"] .space-x-2 > :not([hidden]) ~ :not([hidden]) { margin-left: 0; margin-right: 0.5rem; }
[dir="rtl"] .space-x-3 > :not([hidden]) ~ :not([hidden]) { margin-left: 0; margin-right: 0.75rem; }
[dir="rtl"] .space-x-4 > :not([hidden]) ~ :not([hidden]) { margin-left: 0; margin-right: 1rem; }

/* Sidebar specific fixes */
[dir="rtl"] aside.fixed {
  left: auto !important;
  right: 0 !important;
}

[dir="rtl"] nav.fixed.left-0,
[dir="rtl"] div.fixed.left-0 {
  left: auto !important;
  right: 0 !important;
}

/* Icons in RTL - rotate directional icons */
[dir="rtl"] .lucide-chevron-right {
  transform: rotate(180deg);
}
[dir="rtl"] .lucide-chevron-left {
  transform: rotate(180deg);
}
[dir="rtl"] .lucide-arrow-right {
  transform: rotate(180deg);
}
[dir="rtl"] .lucide-arrow-left {
  transform: rotate(180deg);
}

/* Transform utilities */
[dir="rtl"] .translate-x-full { transform: translateX(-100%); }
[dir="rtl"] .-translate-x-full { transform: translateX(100%); }

/* Input and form elements */
[dir="rtl"] input,
[dir="rtl"] textarea,
[dir="rtl"] select {
  text-align: right;
}

[dir="rtl"] input[type="number"],
[dir="rtl"] input[type="tel"],
[dir="rtl"] input[type="email"],
[dir="rtl"] input[type="url"] {
  text-align: left;
  direction: ltr;
}

/* Table alignment */
[dir="rtl"] th,
[dir="rtl"] td {
  text-align: right;
}

/* Dropdown and menu positioning */
[dir="rtl"] [data-side="left"] {
  --radix-popper-transform-origin: right center;
}
[dir="rtl"] [data-side="right"] {
  --radix-popper-transform-origin: left center;
}

/* Scrollbar positioning for RTL */
[dir="rtl"] ::-webkit-scrollbar {
  direction: rtl;
}

/* Flow builder specific fixes */
[dir="rtl"] .react-flow__node {
  direction: ltr;
}
[dir="rtl"] .react-flow__edge {
  direction: ltr;
}
