/* RTL (Right-to-Left) Styles for Arabic - Enhanced Specificity */

/* ========================================
   CRITICAL: Force RTL attribute on HTML
   ======================================== */

html[dir="rtl"] body,
[dir="rtl"] body {
    direction: rtl !important;
}

/* ========================================
   SIDEBAR POSITIONING - HIGHEST PRIORITY
   ======================================== */

/* Force sidebar to the right with maximum specificity */
html[dir="rtl"] .sidebar-wrapper,
html[dir="rtl"] nav.sidebar-wrapper,
html[dir="rtl"] #sidebar,
[dir="rtl"] .sidebar-wrapper,
[dir="rtl"] nav.sidebar-wrapper,
[dir="rtl"] #sidebar {
    left: auto !important;
    right: 0 !important;
    transform: none !important;
}

/* Adjust main container margin for right sidebar */
html[dir="rtl"] .main-container,
[dir="rtl"] .main-container {
    margin-left: 0 !important;
    margin-right: 260px !important;
}

/* Adjust page wrapper */
html[dir="rtl"] .page-wrapper,
[dir="rtl"] .page-wrapper {
    direction: rtl !important;
}

/* App header adjustments */
html[dir="rtl"] .app-header,
[dir="rtl"] .app-header {
    padding-left: 0 !important;
    padding-right: 260px !important;
}

/* When sidebar is minimized/folded */
html[dir="rtl"] body.sidebar-folded .main-container,
[dir="rtl"] body.sidebar-folded .main-container {
    margin-right: 70px !important;
    margin-left: 0 !important;
}

html[dir="rtl"] body.sidebar-folded .app-header,
[dir="rtl"] body.sidebar-folded .app-header {
    padding-right: 70px !important;
    padding-left: 0 !important;
}

/* ========================================
   SIDEBAR MENU ITEMS
   ======================================== */

/* Right-align menu text */
html[dir="rtl"] .sidebar-menu li a,
[dir="rtl"] .sidebar-menu li a {
    text-align: right !important;
    direction: rtl !important;
}

html[dir="rtl"] .sidebar-menu .menu-text,
[dir="rtl"] .sidebar-menu .menu-text {
    padding-right: 0 !important;
    padding-left: 15px !important;
}

/* Icons on the right side */
html[dir="rtl"] .sidebar-menu li a i,
[dir="rtl"] .sidebar-menu li a i {
    margin-right: 0 !important;
    margin-left: 12px !important;
    float: right !important;
}

/* Submenu indentation */
html[dir="rtl"] .sidebar-menu .treeview-menu,
[dir="rtl"] .sidebar-menu .treeview-menu {
    padding-right: 20px !important;
    padding-left: 0 !important;
}

html[dir="rtl"] .sidebar-menu .treeview-menu li a,
[dir="rtl"] .sidebar-menu .treeview-menu li a {
    padding-right: 30px !important;
    padding-left: 15px !important;
}

/* ========================================
   SIDEBAR PROFILE
   ======================================== */

html[dir="rtl"] .sidebar-profile,
[dir="rtl"] .sidebar-profile {
    text-align: right !important;
    direction: rtl !important;
    display: flex !important;
    flex-direction: row-reverse !important;
}

html[dir="rtl"] .sidebar-profile img,
[dir="rtl"] .sidebar-profile img {
    margin-right: 0 !important;
    margin-left: 0.75rem !important;
}

html[dir="rtl"] .sidebar-profile .m-0,
[dir="rtl"] .sidebar-profile .m-0 {
    text-align: right !important;
}

/* ========================================
   SIDEBAR CONTACT
   ======================================== */

html[dir="rtl"] .sidebar-contact,
[dir="rtl"] .sidebar-contact {
    text-align: right !important;
}

html[dir="rtl"] .sidebar-contact i,
[dir="rtl"] .sidebar-contact i {
    float: right !important;
    margin-left: 10px !important;
    margin-right: 0 !important;
}

/* ========================================
   HEADER ELEMENTS
   ======================================== */

/* App brand */
html[dir="rtl"] .app-brand,
[dir="rtl"] .app-brand {
    margin-right: 0 !important;
    margin-left: 1rem !important;
}

/* Search box positioning */
html[dir="rtl"] .search-container,
[dir="rtl"] .search-container {
    margin-right: 0 !important;
    margin-left: auto !important;
}

html[dir="rtl"] .search-container i,
[dir="rtl"] .search-container i {
    left: auto !important;
    right: 15px !important;
}

html[dir="rtl"] .search-container input,
[dir="rtl"] .search-container input {
    padding-right: 40px !important;
    padding-left: 15px !important;
    text-align: right !important;
}

/* Header actions */
html[dir="rtl"] .header-actions,
[dir="rtl"] .header-actions {
    margin-right: auto !important;
    margin-left: 0 !important;
}

/* Toggle button positioning */
html[dir="rtl"] .toggle-sidebar,
[dir="rtl"] .toggle-sidebar {
    margin-right: 0 !important;
    margin-left: -20px !important;
}

html[dir="rtl"] .d-flex,
[dir="rtl"] .d-flex {
    direction: rtl !important;
}

/* ========================================
   DROPDOWNS
   ======================================== */

html[dir="rtl"] .dropdown-menu,
[dir="rtl"] .dropdown-menu {
    text-align: right !important;
    right: auto !important;
    left: 0 !important;
}

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

html[dir="rtl"] .dropdown-item,
[dir="rtl"] .dropdown-item {
    text-align: right !important;
    direction: rtl !important;
}

html[dir="rtl"] .dropdown-item .gap-2,
[dir="rtl"] .dropdown-item .gap-2 {
    flex-direction: row-reverse !important;
}

/* ========================================
   BUTTONS AND FLOATING ELEMENTS
   ======================================== */

/* Floating action buttons */
html[dir="rtl"] #ai-button,
[dir="rtl"] #ai-button {
    right: auto !important;
    left: 110px !important;
}

html[dir="rtl"] #ai-frame,
[dir="rtl"] #ai-frame {
    right: auto !important;
    left: 110px !important;
}

/* Button groups */
html[dir="rtl"] .btn-group,
[dir="rtl"] .btn-group {
    direction: rtl !important;
}

/* ========================================
   FORM ELEMENTS
   ======================================== */

/* All text inputs */
html[dir="rtl"] input[type="text"],
html[dir="rtl"] input[type="email"],
html[dir="rtl"] input[type="password"],
html[dir="rtl"] input[type="number"],
html[dir="rtl"] textarea,
html[dir="rtl"] select,
[dir="rtl"] input[type="text"],
[dir="rtl"] input[type="email"],
[dir="rtl"] input[type="password"],
[dir="rtl"] input[type="number"],
[dir="rtl"] textarea,
[dir="rtl"] select {
    text-align: right !important;
    direction: rtl !important;
}

/* Form labels */
html[dir="rtl"] .form-label,
html[dir="rtl"] label,
[dir="rtl"] .form-label,
[dir="rtl"] label {
    text-align: right !important;
}

/* Input groups */
html[dir="rtl"] .input-group,
[dir="rtl"] .input-group {
    direction: rtl !important;
}

html[dir="rtl"] .input-group-append,
[dir="rtl"] .input-group-append {
    margin-left: 0 !important;
    margin-right: -1px !important;
}

html[dir="rtl"] .input-group-prepend,
[dir="rtl"] .input-group-prepend {
    margin-right: 0 !important;
    margin-left: -1px !important;
}

/* Checkboxes and radios */
html[dir="rtl"] .form-check,
[dir="rtl"] .form-check {
    padding-left: 0 !important;
    padding-right: 1.25rem !important;
    text-align: right !important;
}

html[dir="rtl"] .form-check-input,
[dir="rtl"] .form-check-input {
    margin-left: 0 !important;
    margin-right: -1.25rem !important;
    float: right !important;
}

/* ========================================
   CARDS AND CONTAINERS
   ======================================== */

/* Card headers */
html[dir="rtl"] .card-header,
[dir="rtl"] .card-header {
    text-align: right !important;
}

/* Card body */
html[dir="rtl"] .card-body,
html[dir="rtl"] .card,
[dir="rtl"] .card-body,
[dir="rtl"] .card {
    text-align: right !important;
    direction: rtl !important;
}

/* Badges */
html[dir="rtl"] .badge,
[dir="rtl"] .badge {
    margin-left: 5px !important;
    margin-right: 0 !important;
}

/* ========================================
   TABLES
   ======================================== */

html[dir="rtl"] table,
[dir="rtl"] table {
    direction: rtl !important;
}

html[dir="rtl"] th,
html[dir="rtl"] td,
[dir="rtl"] th,
[dir="rtl"] td {
    text-align: right !important;
}

/* ========================================
   BREADCRUMBS AND NAVIGATION
   ======================================== */

html[dir="rtl"] .breadcrumb,
[dir="rtl"] .breadcrumb {
    direction: rtl !important;
}

html[dir="rtl"] .breadcrumb-item+.breadcrumb-item::before,
[dir="rtl"] .breadcrumb-item+.breadcrumb-item::before {
    float: right !important;
    padding-right: 0 !important;
    padding-left: 0.5rem !important;
}

html[dir="rtl"] .pagination,
[dir="rtl"] .pagination {
    direction: rtl !important;
}

/* ========================================
   ALERTS AND NOTIFICATIONS
   ======================================== */

html[dir="rtl"] .alert,
[dir="rtl"] .alert {
    text-align: right !important;
    direction: rtl !important;
}

html[dir="rtl"] .alert .btn-close,
[dir="rtl"] .alert .btn-close {
    left: 0 !important;
    right: auto !important;
}

html[dir="rtl"] .toast,
[dir="rtl"] .toast {
    text-align: right !important;
}

/* ========================================
   MODALS
   ======================================== */

html[dir="rtl"] .modal-header,
html[dir="rtl"] .modal-body,
html[dir="rtl"] .modal-footer,
[dir="rtl"] .modal-header,
[dir="rtl"] .modal-body,
[dir="rtl"] .modal-footer {
    text-align: right !important;
    direction: rtl !important;
}

html[dir="rtl"] .modal-header .btn-close,
[dir="rtl"] .modal-header .btn-close {
    margin-right: auto !important;
    margin-left: 0 !important;
}

/* ========================================
   SPECIALTY CARDS (Dashboard)
   ======================================== */

html[dir="rtl"] .specialty-card,
html[dir="rtl"] [class*="card"],
[dir="rtl"] .specialty-card,
[dir="rtl"] [class*="card"] {
    text-align: right !important;
}

html[dir="rtl"] .specialty-card i,
html[dir="rtl"] .card i,
[dir="rtl"] .specialty-card i,
[dir="rtl"] .card i {
    margin-left: 10px !important;
    margin-right: 0 !important;
}

/* ========================================
   TEXT AND LAYOUT UTILITIES
   ======================================== */

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

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

html[dir="rtl"] .float-start,
[dir="rtl"] .float-start {
    float: right !important;
}

html[dir="rtl"] .float-end,
[dir="rtl"] .float-end {
    float: left !important;
}

html[dir="rtl"] .ms-auto,
[dir="rtl"] .ms-auto {
    margin-right: auto !important;
    margin-left: 0 !important;
}

html[dir="rtl"] .me-auto,
[dir="rtl"] .me-auto {
    margin-left: auto !important;
    margin-right: 0 !important;
}

html[dir="rtl"] .ms-1,
html[dir="rtl"] .ms-2,
html[dir="rtl"] .ms-3,
html[dir="rtl"] .ms-4,
html[dir="rtl"] .ms-5,
[dir="rtl"] .ms-1,
[dir="rtl"] .ms-2,
[dir="rtl"] .ms-3,
[dir="rtl"] .ms-4,
[dir="rtl"] .ms-5 {
    margin-right: var(--bs-gutter-x) !important;
    margin-left: 0 !important;
}

html[dir="rtl"] .me-1,
html[dir="rtl"] .me-2,
html[dir="rtl"] .me-3,
html[dir="rtl"] .me-4,
html[dir="rtl"] .me-5,
[dir="rtl"] .me-1,
[dir="rtl"] .me-2,
[dir="rtl"] .me-3,
[dir="rtl"] .me-4,
[dir="rtl"] .me-5 {
    margin-left: var(--bs-gutter-x) !important;
    margin-right: 0 !important;
}

/* ========================================
   APP CONTAINER
   ======================================== */

html[dir="rtl"] .app-container,
[dir="rtl"] .app-container {
    direction: rtl !important;
}

/* ========================================
   GENERIC TEXT DIRECTION
   ======================================== */

html[dir="rtl"] p,
html[dir="rtl"] h1,
html[dir="rtl"] h2,
html[dir="rtl"] h3,
html[dir="rtl"] h4,
html[dir="rtl"] h5,
html[dir="rtl"] h6,
html[dir="rtl"] span,
html[dir="rtl"] div,
[dir="rtl"] p,
[dir="rtl"] h1,
[dir="rtl"] h2,
[dir="rtl"] h3,
[dir="rtl"] h4,
[dir="rtl"] h5,
[dir="rtl"] h6,
[dir="rtl"] span,
[dir="rtl"] div {
    direction: rtl !important;
}