/**
 * RTL (Right-to-Left) CSS Fixes
 * Additional styles for Arabic language support
 */

/* General RTL Fixes */
[dir="rtl"] body,
[dir="rtl"] p,
[dir="rtl"] span,
[dir="rtl"] h1,
[dir="rtl"] h2,
[dir="rtl"] h3,
[dir="rtl"] h4,
[dir="rtl"] h5,
[dir="rtl"] h6,
[dir="rtl"] li,
[dir="rtl"] label,
[dir="rtl"] small {
    text-align: right;
}

/* Font adjustments for Arabic */
[dir="rtl"] body {
    font-family: 'Cairo', 'Segoe UI', Tahoma, sans-serif;
    letter-spacing: 0;
}

/* Navigation fixes */
[dir="rtl"] .navbar-nav {
    padding-right: 0;
}

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

[dir="rtl"] .dropdown-item i {
    margin-left: 8px;
    margin-right: 0;
}

/* Form elements */
[dir="rtl"] .form-control,
[dir="rtl"] .form-select {
    text-align: right;
}

[dir="rtl"] .input-group > .form-control,
[dir="rtl"] .input-group > .form-select {
    border-radius: 0 0.375rem 0.375rem 0;
}

[dir="rtl"] .input-group > .input-group-text:first-child {
    border-radius: 0.375rem 0 0 0.375rem;
}

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

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

/* Buttons with icons */
[dir="rtl"] .btn i {
    margin-left: 0.5rem;
    margin-right: 0;
}

[dir="rtl"] .btn i:last-child {
    margin-left: 0;
    margin-right: 0.5rem;
}

/* Cards */
[dir="rtl"] .card-header,
[dir="rtl"] .card-body,
[dir="rtl"] .card-footer {
    text-align: right;
}

/* Lists */
[dir="rtl"] .list-group-item {
    text-align: right;
}

[dir="rtl"] ul,
[dir="rtl"] ol {
    padding-right: 2rem;
    padding-left: 0;
}

[dir="rtl"] .list-unstyled {
    padding-right: 0;
}

/* Breadcrumb */
[dir="rtl"] .breadcrumb-item + .breadcrumb-item::before {
    float: right;
    padding-left: 0.5rem;
    padding-right: 0;
    content: "\\";
}

/* Alerts */
[dir="rtl"] .alert {
    text-align: right;
}

[dir="rtl"] .alert-dismissible {
    padding-right: 1rem;
    padding-left: 3rem;
}

[dir="rtl"] .alert-dismissible .btn-close {
    right: auto;
    left: 0;
}

/* Pagination */
[dir="rtl"] .pagination {
    flex-direction: row-reverse;
}

[dir="rtl"] .page-item:first-child .page-link {
    border-radius: 0 0.375rem 0.375rem 0;
}

[dir="rtl"] .page-item:last-child .page-link {
    border-radius: 0.375rem 0 0 0.375rem;
}

/* Tables */
[dir="rtl"] .table {
    text-align: right;
}

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

/* Modals */
[dir="rtl"] .modal-header {
    flex-direction: row-reverse;
}

[dir="rtl"] .modal-header .btn-close {
    margin: -0.5rem auto -0.5rem -0.5rem;
}

[dir="rtl"] .modal-body,
[dir="rtl"] .modal-footer {
    text-align: right;
}

/* Accordion */
[dir="rtl"] .accordion-button::after {
    margin-right: auto;
    margin-left: 0;
}

/* Progress bars */
[dir="rtl"] .progress-bar {
    float: right;
}

/* Tooltips and Popovers */
[dir="rtl"] .tooltip,
[dir="rtl"] .popover {
    text-align: right;
}

/* Badge positioning */
[dir="rtl"] .position-absolute.top-0.start-100 {
    right: auto !important;
    left: 100% !important;
}

/* Back to top button */
[dir="rtl"] #backToTop {
    left: 20px;
    right: auto;
}

/* Floating elements */
[dir="rtl"] .float-start {
    float: right !important;
}

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

/* Text alignment overrides */
[dir="rtl"] .text-start {
    text-align: right !important;
}

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

/* Margin/Padding fixes for RTL */
[dir="rtl"] .ms-auto {
    margin-right: auto !important;
    margin-left: 0 !important;
}

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

[dir="rtl"] .ms-1, [dir="rtl"] .ms-2, [dir="rtl"] .ms-3, [dir="rtl"] .ms-4, [dir="rtl"] .ms-5 {
    margin-right: inherit;
    margin-left: 0 !important;
}

[dir="rtl"] .me-1, [dir="rtl"] .me-2, [dir="rtl"] .me-3, [dir="rtl"] .me-4, [dir="rtl"] .me-5 {
    margin-left: inherit;
    margin-right: 0 !important;
}

/* Icons in list items */
[dir="rtl"] .fa-chevron-right::before {
    content: "\f053"; /* chevron-left */
}

[dir="rtl"] .fa-arrow-right::before {
    content: "\f060"; /* arrow-left */
}

/* Search box */
[dir="rtl"] .search-box input {
    padding-right: 2.5rem;
    padding-left: 1rem;
}

[dir="rtl"] .search-box .search-icon {
    right: 0.75rem;
    left: auto;
}

/* Custom card styles */
[dir="rtl"] .card-icon-left {
    margin-left: 1rem;
    margin-right: 0;
}

/* Timeline */
[dir="rtl"] .timeline::before {
    right: 0;
    left: auto;
}

[dir="rtl"] .timeline-item {
    padding-right: 2rem;
    padding-left: 0;
}

/* Rating stars */
[dir="rtl"] .rating {
    direction: ltr;
    display: inline-flex;
}

/* Price display */
[dir="rtl"] .price {
    direction: ltr;
    display: inline-block;
}

/* Phone numbers - always LTR */
[dir="rtl"] .phone-number,
[dir="rtl"] [dir="ltr"] {
    direction: ltr;
    text-align: left;
}

/* Email addresses - always LTR */
[dir="rtl"] .email {
    direction: ltr;
}

/* Sidebar */
[dir="rtl"] .sidebar {
    right: 0;
    left: auto;
}

[dir="rtl"] .sidebar-collapsed {
    right: -250px;
    left: auto;
}

/* Footer links */
[dir="rtl"] .footer a i {
    margin-left: 0.5rem;
    margin-right: 0;
}

/* Hero section */
[dir="rtl"] .hero-content {
    text-align: right;
}

/* Feature cards */
[dir="rtl"] .feature-icon {
    margin-left: 1rem;
    margin-right: 0;
}

/* Statistics */
[dir="rtl"] .stat-icon {
    margin-left: 1rem;
    margin-right: 0;
}

/* School/Course cards */
[dir="rtl"] .card-badge {
    right: auto;
    left: 1rem;
}

/* Filter sidebar */
[dir="rtl"] .filter-section label {
    margin-right: 0;
}

/* Comparison table */
[dir="rtl"] .comparison-table th:first-child {
    text-align: right;
}

/* Chat widget */
[dir="rtl"] #global-chat-widget {
    left: 24px;
    right: auto;
}

[dir="rtl"] #global-chat-launcher {
    left: 24px;
    right: auto;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    [dir="rtl"] .navbar-collapse {
        text-align: right;
    }
    
    [dir="rtl"] .mobile-menu-item {
        text-align: right;
        padding-right: 1rem;
    }
}

/* Print styles */
@media print {
    [dir="rtl"] body {
        direction: rtl;
        text-align: right;
    }
}
