/*
 * Baseline RTL stylesheet — loaded after the main bundle when is_rtl() is true.
 *
 * This file is intentionally conservative. It only flips text direction and
 * the most common bidirectional patterns (margins, padding, floats, text-align).
 * Component-specific RTL fixes belong in the component's own stylesheet,
 * scoped to [dir="rtl"].
 */

[dir="rtl"] {
    text-align: right;
    font-family: 'Tajawal', 'Segoe UI', Tahoma, Arial, sans-serif;
}

/* Form labels and inputs */
[dir="rtl"] .form-label,
[dir="rtl"] label,
[dir="rtl"] .form-control,
[dir="rtl"] .form-select,
[dir="rtl"] .input-group-text {
    text-align: right;
}

[dir="rtl"] .form-check {
    padding-right: 1.5em;
    padding-left: 0;
}

[dir="rtl"] .form-check .form-check-input {
    margin-right: -1.5em;
    margin-left: 0;
    float: right;
}

/* Float / flex direction reversal */
[dir="rtl"] .float-start { float: right !important; }
[dir="rtl"] .float-end   { float: left !important; }

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

/* Margin/padding helpers (Bootstrap directional utilities) */
[dir="rtl"] .ms-1 { margin-right: 0.25rem !important; margin-left: 0 !important; }
[dir="rtl"] .ms-2 { margin-right: 0.5rem  !important; margin-left: 0 !important; }
[dir="rtl"] .ms-3 { margin-right: 1rem    !important; margin-left: 0 !important; }
[dir="rtl"] .ms-4 { margin-right: 1.5rem  !important; margin-left: 0 !important; }
[dir="rtl"] .ms-auto { margin-right: auto !important; margin-left: 0 !important; }

[dir="rtl"] .me-1 { margin-left: 0.25rem !important; margin-right: 0 !important; }
[dir="rtl"] .me-2 { margin-left: 0.5rem  !important; margin-right: 0 !important; }
[dir="rtl"] .me-3 { margin-left: 1rem    !important; margin-right: 0 !important; }
[dir="rtl"] .me-4 { margin-left: 1.5rem  !important; margin-right: 0 !important; }
[dir="rtl"] .me-auto { margin-left: auto !important; margin-right: 0 !important; }

[dir="rtl"] .ps-1 { padding-right: 0.25rem !important; padding-left: 0 !important; }
[dir="rtl"] .ps-2 { padding-right: 0.5rem  !important; padding-left: 0 !important; }
[dir="rtl"] .ps-3 { padding-right: 1rem    !important; padding-left: 0 !important; }
[dir="rtl"] .ps-4 { padding-right: 1.5rem  !important; padding-left: 0 !important; }

[dir="rtl"] .pe-1 { padding-left: 0.25rem !important; padding-right: 0 !important; }
[dir="rtl"] .pe-2 { padding-left: 0.5rem  !important; padding-right: 0 !important; }
[dir="rtl"] .pe-3 { padding-left: 1rem    !important; padding-right: 0 !important; }
[dir="rtl"] .pe-4 { padding-left: 1.5rem  !important; padding-right: 0 !important; }

/* Border radius helpers */
[dir="rtl"] .rounded-start { border-top-right-radius: 0.25rem !important; border-bottom-right-radius: 0.25rem !important; border-top-left-radius: 0 !important; border-bottom-left-radius: 0 !important; }
[dir="rtl"] .rounded-end   { border-top-left-radius:  0.25rem !important; border-bottom-left-radius:  0.25rem !important; border-top-right-radius: 0 !important; border-bottom-right-radius: 0 !important; }

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

[dir="rtl"] .table thead th,
[dir="rtl"] .table tbody td {
    text-align: right;
}

/* Sidebar and navigation */
[dir="rtl"] .sidebar,
[dir="rtl"] .navbar-brand,
[dir="rtl"] .nav-item,
[dir="rtl"] .dropdown-menu {
    text-align: right;
}

[dir="rtl"] .dropdown-menu {
    right: 0;
    left: auto;
}

[dir="rtl"] .dropdown-menu-end {
    left: 0;
    right: auto;
}

/* Caret / chevron icons that point a direction */
[dir="rtl"] .fa-chevron-right::before { content: "\f053"; /* fa-chevron-left */ }
[dir="rtl"] .fa-chevron-left::before  { content: "\f054"; /* fa-chevron-right */ }
[dir="rtl"] .fa-arrow-right::before   { content: "\f060"; /* fa-arrow-left */ }
[dir="rtl"] .fa-arrow-left::before    { content: "\f061"; /* fa-arrow-right */ }

/* DataTables search field, pagination, length-select */
[dir="rtl"] .dataTables_filter { text-align: left; }
[dir="rtl"] .dataTables_filter input { margin-right: 0.5em; margin-left: 0; }
[dir="rtl"] .dataTables_length    { text-align: right; }
[dir="rtl"] .dataTables_paginate  { text-align: left; }
[dir="rtl"] .paginate_button.previous::before { content: "›"; }
[dir="rtl"] .paginate_button.next::before     { content: "‹"; }

/* Toasts and alerts position */
[dir="rtl"] .toast-top-right { right: auto; left: 12px; }
[dir="rtl"] .toast-top-left  { left: auto;  right: 12px; }

/* Numbers and dates: keep LTR for clarity even inside RTL paragraphs */
[dir="rtl"] .ltr-number,
[dir="rtl"] .ltr-date,
[dir="rtl"] code,
[dir="rtl"] pre,
[dir="rtl"] .currency-amount {
    direction: ltr;
    unicode-bidi: embed;
    display: inline-block;
}
