/* RTL Styles for Arabic Language */

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

/* Font Family for Arabic */
[dir="rtl"] body,
[dir="rtl"] input,
[dir="rtl"] textarea,
[dir="rtl"] select,
[dir="rtl"] button {
    font-family: 'Cairo', 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}

/* Fix for navigation spacing */
[dir="rtl"] .space-x-2 > * + *,
[dir="rtl"] .space-x-3 > * + *,
[dir="rtl"] .space-x-4 > * + *,
[dir="rtl"] .space-x-6 > * + * {
    margin-left: 0;
    margin-right: 0.5rem;
}

[dir="rtl"] .space-x-3 > * + * {
    margin-right: 0.75rem;
}

[dir="rtl"] .space-x-4 > * + * {
    margin-right: 1rem;
}

[dir="rtl"] .space-x-6 > * + * {
    margin-right: 1.5rem;
}

[dir="rtl"] .space-x-10 > * + * {
    margin-right: 2.5rem;
}

/* Fix for language selector positioning */
[dir="rtl"] .origin-top-right {
    transform-origin: top left;
}

[dir="rtl"] .origin-top-left {
    transform-origin: top right;
}

/* Text Alignment */
[dir="rtl"] .text-left {
    text-align: left !important;
}

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

/* Margin and Padding Adjustments */
[dir="rtl"] .ml-1 {
    margin-left: 0 !important;
    margin-right: 0.25rem !important;
}

[dir="rtl"] .mr-1 {
    margin-right: 0 !important;
    margin-left: 0.25rem !important;
}

[dir="rtl"] .ml-2 {
    margin-left: 0 !important;
    margin-right: 0.5rem !important;
}

[dir="rtl"] .mr-2 {
    margin-right: 0 !important;
    margin-left: 0.5rem !important;
}

[dir="rtl"] .ml-3 {
    margin-left: 0 !important;
    margin-right: 0.75rem !important;
}

[dir="rtl"] .mr-3 {
    margin-right: 0 !important;
    margin-left: 0.75rem !important;
}

[dir="rtl"] .ml-4 {
    margin-left: 0 !important;
    margin-right: 1rem !important;
}

[dir="rtl"] .mr-4 {
    margin-right: 0 !important;
    margin-left: 1rem !important;
}

/* Fix for Arabic text display in specific sections */
[dir="rtl"] .flex.items-center {
    direction: rtl;
    text-align: right;
}

[dir="rtl"] .flex.items-start {
    direction: rtl;
    text-align: right;
}

/* Contact section fixes */
[dir="rtl"] .space-x-6 > * + * {
    margin-left: 0 !important;
    margin-right: 1.5rem !important;
}

/* News/Actualités section fixes */
[dir="rtl"] .text-lg,
[dir="rtl"] .text-xl,
[dir="rtl"] .text-2xl,
[dir="rtl"] .text-3xl {
    direction: rtl;
    text-align: right;
    unicode-bidi: embed;
}

/* Specific fixes for Arabic content */
[dir="rtl"] span[class*="text-"],
[dir="rtl"] p[class*="text-"],
[dir="rtl"] h1, [dir="rtl"] h2, [dir="rtl"] h3, [dir="rtl"] h4, [dir="rtl"] h5, [dir="rtl"] h6 {
    direction: rtl;
    text-align: right;
    unicode-bidi: embed;
}

/* Force RTL for Arabic text content */
[dir="rtl"] .font-bold,
[dir="rtl"] .font-medium,
[dir="rtl"] .font-semibold {
    direction: rtl;
    text-align: right;
    unicode-bidi: embed;
}

/* Fix for flex containers with icons and text */
[dir="rtl"] .flex.items-center.space-x-6 {
    flex-direction: row-reverse;
}

[dir="rtl"] .flex.items-start.space-x-6 {
    flex-direction: row-reverse;
}

/* Fix for contact section layout */
[dir="rtl"] .flex.items-center.space-x-6 > div:first-child {
    margin-left: 1.5rem;
    margin-right: 0;
}

[dir="rtl"] .flex.items-start.space-x-6 > div:first-child {
    margin-left: 1.5rem;
    margin-right: 0;
}

/* Ensure Arabic text flows correctly */
[dir="rtl"] .text-gray-600,
[dir="rtl"] .text-gray-900 {
    direction: rtl;
    text-align: right;
    unicode-bidi: embed;
}

/* Fix for check icons in features lists */
[dir="rtl"] .flex.items-center > i.fas.fa-check,
[dir="rtl"] .flex.items-center > i.fas.fa-check-circle {
    margin-left: 1rem;
    margin-right: 0;
}

/* Override Tailwind's space-x for RTL */
[dir="rtl"] .space-x-6 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-x-reverse: 1;
    margin-right: calc(1.5rem * var(--tw-space-x-reverse));
    margin-left: calc(1.5rem * calc(1 - var(--tw-space-x-reverse)));
}

[dir="rtl"] .ml-5 {
    margin-left: 0 !important;
    margin-right: 1.25rem !important;
}

[dir="rtl"] .mr-5 {
    margin-right: 0 !important;
    margin-left: 1.25rem !important;
}

[dir="rtl"] .ml-6 {
    margin-left: 0 !important;
    margin-right: 1.5rem !important;
}

[dir="rtl"] .mr-6 {
    margin-right: 0 !important;
    margin-left: 1.5rem !important;
}

[dir="rtl"] .ml-8 {
    margin-left: 0 !important;
    margin-right: 2rem !important;
}

[dir="rtl"] .mr-8 {
    margin-right: 0 !important;
    margin-left: 2rem !important;
}

[dir="rtl"] .ml-10 {
    margin-left: 0 !important;
    margin-right: 2.5rem !important;
}

[dir="rtl"] .mr-10 {
    margin-right: 0 !important;
    margin-left: 2.5rem !important;
}

[dir="rtl"] .ml-12 {
    margin-left: 0 !important;
    margin-right: 3rem !important;
}

[dir="rtl"] .mr-12 {
    margin-right: 0 !important;
    margin-left: 3rem !important;
}

[dir="rtl"] .pl-1 {
    padding-left: 0 !important;
    padding-right: 0.25rem !important;
}

[dir="rtl"] .pr-1 {
    padding-right: 0 !important;
    padding-left: 0.25rem !important;
}

[dir="rtl"] .pl-2 {
    padding-left: 0 !important;
    padding-right: 0.5rem !important;
}

[dir="rtl"] .pr-2 {
    padding-right: 0 !important;
    padding-left: 0.5rem !important;
}

[dir="rtl"] .pl-3 {
    padding-left: 0 !important;
    padding-right: 0.75rem !important;
}

[dir="rtl"] .pr-3 {
    padding-right: 0 !important;
    padding-left: 0.75rem !important;
}

[dir="rtl"] .pl-4 {
    padding-left: 0 !important;
    padding-right: 1rem !important;
}

[dir="rtl"] .pr-4 {
    padding-right: 0 !important;
    padding-left: 1rem !important;
}

[dir="rtl"] .pl-5 {
    padding-left: 0 !important;
    padding-right: 1.25rem !important;
}

[dir="rtl"] .pr-5 {
    padding-right: 0 !important;
    padding-left: 1.25rem !important;
}

[dir="rtl"] .pl-6 {
    padding-left: 0 !important;
    padding-right: 1.5rem !important;
}

[dir="rtl"] .pr-6 {
    padding-right: 0 !important;
    padding-left: 1.5rem !important;
}

[dir="rtl"] .pl-8 {
    padding-left: 0 !important;
    padding-right: 2rem !important;
}

[dir="rtl"] .pr-8 {
    padding-right: 0 !important;
    padding-left: 2rem !important;
}

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

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

/* Only apply row-reverse to flex containers that explicitly need it */
[dir="rtl"] .flex.flex-row-reverse {
    flex-direction: row;
}

[dir="rtl"] .flex:not(.flex-col):not(.flex-row):not(.flex-row-reverse) {
    flex-direction: row-reverse;
}

/* Fix for justify content */
[dir="rtl"] .justify-start {
    justify-content: flex-end;
}

[dir="rtl"] .justify-end {
    justify-content: flex-start;
}

/* Fix for items alignment */
[dir="rtl"] .items-start {
    align-items: flex-end;
}

[dir="rtl"] .items-end {
    align-items: flex-start;
}

/* Fix for transform translate */
[dir="rtl"] .group:hover .group-hover\:translate-x-1 {
    transform: translateX(-0.25rem);
}

[dir="rtl"] .hover\:translate-x-1:hover {
    transform: translateX(-0.25rem);
}

/* Space Between Elements */
[dir="rtl"] .space-x-2 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-x-reverse: 1;
    margin-right: calc(0.5rem * var(--tw-space-x-reverse));
    margin-left: calc(0.5rem * calc(1 - var(--tw-space-x-reverse)));
}

[dir="rtl"] .space-x-reverse > :not([hidden]) ~ :not([hidden]) {
    --tw-space-x-reverse: 1;
}

/* Form Elements */
[dir="rtl"] input[type="text"],
[dir="rtl"] input[type="email"],
[dir="rtl"] input[type="password"],
[dir="rtl"] input[type="tel"],
[dir="rtl"] input[type="url"],
[dir="rtl"] input[type="date"],
[dir="rtl"] textarea,
[dir="rtl"] select {
    text-align: right;
}

/* Button and Form Elements */
[dir="rtl"] button {
    text-align: right;
}

/* Fix for button text alignment */
[dir="rtl"] button.text-left,
[dir="rtl"] .text-left button {
    text-align: left !important;
}

/* Fix for navigation links */
[dir="rtl"] nav a,
[dir="rtl"] .nav-link {
    text-align: right;
}

/* Fix for mobile menu items */
[dir="rtl"] .block.text-left {
    text-align: left !important;
}

/* Fix for form buttons with w-full text-left */
[dir="rtl"] button.w-full.text-left {
    text-align: left !important;
}

/* Checkbox and Radio Alignment */
[dir="rtl"] input[type="checkbox"],
[dir="rtl"] input[type="radio"] {
    margin-left: 0.5rem;
    margin-right: 0;
}

/* Button Icons */
[dir="rtl"] .btn svg {
    margin-left: 0.5rem;
    margin-right: 0;
}

/* List Styles */
[dir="rtl"] .list-disc {
    list-style-position: inside;
    padding-right: 1rem;
    padding-left: 0;
}

/* Border Radius Adjustments */
[dir="rtl"] .rounded-l-lg {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    border-top-right-radius: 0.5rem;
    border-bottom-right-radius: 0.5rem;
}

[dir="rtl"] .rounded-r-lg {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    border-top-left-radius: 0.5rem;
    border-bottom-left-radius: 0.5rem;
}

/* Navigation and Menu Items */
[dir="rtl"] .nav-item {
    text-align: right;
}

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

/* Tooltips */
[dir="rtl"] .tooltip {
    direction: rtl;
    text-align: right;
}

/* Modal Content */
[dir="rtl"] .modal-content {
    direction: rtl;
    text-align: right;
}

/* Table Alignment */
[dir="rtl"] table {
    direction: rtl;
}

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

/* Progress Bars */
[dir="rtl"] .progress-bar {
    direction: rtl;
}

/* Breadcrumbs */
[dir="rtl"] .breadcrumb {
    direction: rtl;
}

/* Card Components */
[dir="rtl"] .card {
    direction: rtl;
    text-align: right;
}

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

/* Specific Fixes for Form Layouts */
[dir="rtl"] .form-group label {
    text-align: right;
}

[dir="rtl"] .form-control {
    text-align: right;
    direction: rtl;
}

/* File Upload Styling */
[dir="rtl"] .file-upload {
    direction: rtl;
    text-align: right;
}

/* Step Indicators */
[dir="rtl"] .step-indicator {
    direction: rtl;
}

/* Language Switcher */
[dir="rtl"] .language-switcher {
    direction: rtl;
}

/* Custom Scrollbar for RTL */
[dir="rtl"] ::-webkit-scrollbar {
    width: 8px;
}

[dir="rtl"] ::-webkit-scrollbar-track {
    background: #f1f1f1;
}

[dir="rtl"] ::-webkit-scrollbar-thumb {
    background: #888;
    border-radius: 4px;
}

[dir="rtl"] ::-webkit-scrollbar-thumb:hover {
    background: #555;
}

/* Responsive RTL Adjustments */
@media (max-width: 768px) {
    [dir="rtl"] .mobile-rtl {
        direction: rtl;
        text-align: right;
    }
    
    [dir="rtl"] .mobile-menu {
        right: 0;
        left: auto;
    }
}

/* Additional RTL fixes for specific elements */
[dir="rtl"] .bg-gray-50,
[dir="rtl"] .rounded-lg,
[dir="rtl"] .p-6,
[dir="rtl"] .mb-8,
[dir="rtl"] .mb-6,
[dir="rtl"] .space-y-4,
[dir="rtl"] .space-y-3 {
    direction: rtl;
}

/* Fix for text content in containers */
[dir="rtl"] h1,
[dir="rtl"] h2,
[dir="rtl"] h3,
[dir="rtl"] h4,
[dir="rtl"] h5,
[dir="rtl"] h6,
[dir="rtl"] p,
[dir="rtl"] span,
[dir="rtl"] div:not(.flex) {
    text-align: right;
    direction: rtl;
}

/* Fix for labels and form text */
[dir="rtl"] label {
    text-align: right;
    direction: rtl;
}

/* Arabic Text Spacing and Margins */
[dir="rtl"] .arabic-text {
    letter-spacing: 0.025em;
    word-spacing: 0.1em;
    line-height: 1.7;
}

[dir="rtl"] .arabic-paragraph {
    margin-bottom: 1rem;
    margin-right: 0.5rem;
}

[dir="rtl"] .arabic-heading {
    margin-bottom: 0.75rem;
    margin-right: 0.25rem;
}

[dir="rtl"] .arabic-list {
    margin-right: 1.5rem;
    margin-left: 0;
}

[dir="rtl"] .arabic-list li {
    margin-bottom: 0.5rem;
    padding-right: 0.5rem;
}

/* Enhanced margins for Arabic content */
[dir="rtl"] .content-arabic {
    margin-right: 1rem;
    padding-right: 1rem;
}

[dir="rtl"] .section-arabic {
    margin-right: 0.75rem;
    margin-bottom: 1.5rem;
}

[dir="rtl"] .card-arabic {
    margin-right: 0.5rem;
    margin-bottom: 1rem;
    padding-right: 1rem;
}

/* Footer specific Arabic margins */
[dir="rtl"] .footer-arabic {
    margin-right: 1rem;
    padding-right: 1.5rem;
}

[dir="rtl"] .footer-arabic .footer-section {
    margin-right: 2rem;
    margin-bottom: 1rem;
}

[dir="rtl"] .footer-arabic .footer-links {
    margin-right: 0.75rem;
}

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

/* Additional fixes for Arabic text display */
.rtl .arabic-text {
    direction: rtl;
    text-align: right;
    unicode-bidi: embed;
}

.rtl .arabic-heading {
    direction: rtl;
    text-align: right;
    unicode-bidi: embed;
    font-weight: 700;
}

.rtl .arabic-paragraph {
    direction: rtl;
    text-align: right;
    unicode-bidi: embed;
    line-height: 1.8;
}

.rtl .arabic-list {
    direction: rtl;
    text-align: right;
}

.rtl .arabic-body {
    direction: rtl;
    text-align: right;
}

/* Print Styles for RTL */
@media print {
    [dir="rtl"] * {
        direction: rtl !important;
        text-align: right !important;
    }
}