/* Basic RTL Rules for Arabic Localization */

html[dir="rtl"] body {
    direction: rtl;
    text-align: right;
}

/* Float helpers */
html[dir="rtl"] .float-left {
    float: right !important;
}

html[dir="rtl"] .float-right {
    float: left !important;
}

/* Margin offset reversals */
html[dir="rtl"] .ml-auto {
    margin-right: auto !important;
    margin-left: unset !important;
}

html[dir="rtl"] .mr-auto {
    margin-left: auto !important;
    margin-right: unset !important;
}

html[dir="rtl"] .ml-0 {
    margin-right: 0 !important;
    margin-left: unset !important;
}

html[dir="rtl"] .ml-1 {
    margin-right: 0.25rem !important;
    margin-left: unset !important;
}

html[dir="rtl"] .ml-2 {
    margin-right: 0.5rem !important;
    margin-left: unset !important;
}

html[dir="rtl"] .ml-3 {
    margin-right: 1rem !important;
    margin-left: unset !important;
}

html[dir="rtl"] .ml-4 {
    margin-right: 1.5rem !important;
    margin-left: unset !important;
}

html[dir="rtl"] .ml-5 {
    margin-right: 3rem !important;
    margin-left: unset !important;
}

html[dir="rtl"] .mr-0 {
    margin-left: 0 !important;
    margin-right: unset !important;
}

html[dir="rtl"] .mr-1 {
    margin-left: 0.25rem !important;
    margin-right: unset !important;
}

html[dir="rtl"] .mr-2 {
    margin-left: 0.5rem !important;
    margin-right: unset !important;
}

html[dir="rtl"] .mr-3 {
    margin-left: 1rem !important;
    margin-right: unset !important;
}

html[dir="rtl"] .mr-4 {
    margin-left: 1.5rem !important;
    margin-right: unset !important;
}

html[dir="rtl"] .mr-5 {
    margin-left: 3rem !important;
    margin-right: unset !important;
}

/* Padding offset reversals */
html[dir="rtl"] .pl-0 {
    padding-right: 0 !important;
    padding-left: unset !important;
}

html[dir="rtl"] .pl-1 {
    padding-right: 0.25rem !important;
    padding-left: unset !important;
}

html[dir="rtl"] .pl-2 {
    padding-right: 0.5rem !important;
    padding-left: unset !important;
}

html[dir="rtl"] .pl-3 {
    padding-right: 1rem !important;
    padding-left: unset !important;
}

html[dir="rtl"] .pl-4 {
    padding-right: 1.5rem !important;
    padding-left: unset !important;
}

html[dir="rtl"] .pl-5 {
    padding-right: 3rem !important;
    padding-left: unset !important;
}

html[dir="rtl"] .pr-0 {
    padding-left: 0 !important;
    padding-right: unset !important;
}

html[dir="rtl"] .pr-1 {
    padding-left: 0.25rem !important;
    padding-right: unset !important;
}

html[dir="rtl"] .pr-2 {
    padding-left: 0.5rem !important;
    padding-right: unset !important;
}

html[dir="rtl"] .pr-3 {
    padding-left: 1rem !important;
    padding-right: unset !important;
}

html[dir="rtl"] .pr-4 {
    padding-left: 1.5rem !important;
    padding-right: unset !important;
}

html[dir="rtl"] .pr-5 {
    padding-left: 3rem !important;
    padding-right: unset !important;
}

/* Text Align reversing */
html[dir="rtl"] .text-left {
    text-align: right !important;
}

html[dir="rtl"] .text-right {
    text-align: left !important;
}

/* Custom Bootstrap dropdown logic fix for RTL */
html[dir="rtl"] .dropdown-menu {
    text-align: right;
}

html[dir="rtl"] .dropdown-menu-right {
    right: auto !important;
    left: 0 !important;
}

html[dir="rtl"] .navbar-nav {
    padding-right: 0;
}

html[dir="rtl"] .ml-auto,
html[dir="rtl"] .mx-auto {
    margin-right: auto !important;
    margin-left: 0 !important;
}

/* Material Icons specific fixes */
html[dir="rtl"] .material-icons {
    padding-left: 0.25rem;
    padding-right: 0;
}

/* Drawer / Sidebar inversion (assuming fixed sidebar is on the left normally) */
html[dir="rtl"] .mdk-drawer {
    left: auto;
    right: 0;
}