/* RTL Fixes for Persian/Arabic Languages */

/* General RTL Adjustments */
[dir="rtl"] {
    text-align: right;
}

/* Keep centered elements centered */
[dir="rtl"] .text-center,
[dir="rtl"] #subheader,
[dir="rtl"] #subheader .container,
[dir="rtl"] #subheader .row,
[dir="rtl"] #subheader .col-lg-12,
[dir="rtl"] #subheader .col-lg-10,
[dir="rtl"] #subheader h1,
[dir="rtl"] #subheader h2 {
    text-align: center !important;
}

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

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

/* Margins and Paddings */
[dir="rtl"] .me-2 {
    margin-right: 0 !important;
    margin-left: 0.5rem !important;
}

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

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

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

[dir="rtl"] .ms-60px {
    margin-left: 0 !important;
    margin-right: 60px !important;
}

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

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

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

/* Input Groups */
[dir="rtl"] .input-group-text {
    border-radius: 0 10px 10px 0 !important;
}

[dir="rtl"] .form-control,
[dir="rtl"] .form-select {
    border-radius: 10px 0 0 10px !important;
}

/* Icons in RTL */
[dir="rtl"] .fas,
[dir="rtl"] .far,
[dir="rtl"] .fab {
    margin-left: 0.5rem;
    margin-right: 0;
}

[dir="rtl"] .d-flex.align-items-center i {
    margin-left: 0.5rem;
    margin-right: 0;
}

/* Force flex-direction for all d-flex elements in RTL */
[dir="rtl"] .d-flex.align-items-center {
    flex-direction: row-reverse !important;
}

[dir="rtl"] h5.d-flex.align-items-center,
[dir="rtl"] label.d-flex.align-items-center,
[dir="rtl"] .form-label.d-flex.align-items-center {
    flex-direction: row-reverse !important;
    justify-content: flex-start !important;
}

/* Fix Bootstrap margin classes for RTL */
[dir="rtl"] .me-2 {
    margin-right: 0 !important;
    margin-left: 0.5rem !important;
}

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

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

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

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

/* Lists */
[dir="rtl"] ul,
[dir="rtl"] ol {
    padding-right: 1.5rem;
    padding-left: 0;
}

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

/* Breadcrumbs */
[dir="rtl"] .crumb {
    margin-left: auto !important;
    margin-right: auto !important;
}

[dir="rtl"] .crumb li::after {
    content: "\\";
    transform: scaleX(-1);
}

/* Absolute Positioning */
[dir="rtl"] .abs.end-0 {
    right: auto !important;
    left: 0 !important;
}

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

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

/* Checkboxes and Radio Buttons */
[dir="rtl"] .form-check {
    padding-right: 1.5em;
    padding-left: 0;
    text-align: right;
}

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

[dir="rtl"] .form-check-label {
    text-align: right;
    padding-right: 0.5rem;
}

[dir="rtl"] .form-check-label a {
    margin: 0 0.25rem;
}

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

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

/* Form Check Cards (Notification Preferences) */
[dir="rtl"] .form-check-card .card {
    text-align: center;
}

[dir="rtl"] .form-check-card .card-body {
    text-align: center;
}

[dir="rtl"] .form-check-card .card-body h6 {
    text-align: center;
}

[dir="rtl"] .form-check-card .card-body small {
    text-align: center;
}

/* Reverse the order of notification cards in RTL */
[dir="rtl"] .col-12 > .row {
    flex-direction: row-reverse;
}

/* But keep the main form row normal */
[dir="rtl"] form > .row {
    flex-direction: row;
}

/* Specifically target notification preference cards */
[dir="rtl"] .form-check-card {
    direction: ltr;
}

[dir="rtl"] .form-check-card .card {
    direction: rtl;
}

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

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

/* Help Block */
[dir="rtl"] #help-block {
    text-align: center;
}

[dir="rtl"] .time-slots-container .alert {
    text-align: center;
}

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

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

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

[dir="rtl"] #mainmenu {
    text-align: right;
}

[dir="rtl"] #mainmenu > li {
    float: right;
}

[dir="rtl"] #mainmenu li {
    text-align: right;
}

[dir="rtl"] #mainmenu a {
    text-align: right;
}

/* Dropdown/Submenu */
[dir="rtl"] #mainmenu ul {
    right: 0;
    left: auto;
    text-align: right;
}

[dir="rtl"] #mainmenu ul li {
    text-align: right;
}

[dir="rtl"] #mainmenu ul a {
    text-align: right;
    padding-right: 20px;
    padding-left: 10px;
}

[dir="rtl"] #mainmenu li:hover > ul {
    right: 0;
    left: auto;
}

[dir="rtl"] #mainmenu li ul li:hover > ul {
    right: 100%;
    left: auto;
}

/* Menu Icons and Arrows */
[dir="rtl"] #mainmenu li > a::after {
    margin-left: 0 !important;
    margin-right: 5px !important;
}

[dir="rtl"] #mainmenu > li > a {
    display: inline-flex !important;
    flex-direction: row-reverse !important;
    align-items: center !important;
    gap: 3px !important;
    white-space: nowrap !important;
}

[dir="rtl"] .menu_side_area {
    float: left;
}

/* Header */
[dir="rtl"] header {
    text-align: right;
}

[dir="rtl"] header .logo {
    float: right;
}

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

/* Language Switcher */
[dir="rtl"] .language-switcher {
    margin-right: 0 !important;
    margin-left: 15px !important;
}

/* Sidebar Widgets */
[dir="rtl"] .widget {
    text-align: right;
}

[dir="rtl"] .widget h5 {
    text-align: right;
}

[dir="rtl"] .widget p {
    text-align: right;
}

[dir="rtl"] .widget .contact-info {
    text-align: right;
}

[dir="rtl"] .widget .contact-info div {
    display: flex;
    flex-direction: row-reverse;
    justify-content: flex-end;
    align-items: center;
}

[dir="rtl"] .widget .contact-info i {
    margin-left: 0.5rem;
    margin-right: 0;
}

[dir="rtl"] .widget .office-hours {
    text-align: right;
}

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

[dir="rtl"] .widget .list-unstyled li {
    display: flex;
    flex-direction: row-reverse;
    justify-content: flex-end;
    align-items: flex-start;
    text-align: right;
}

[dir="rtl"] .widget .list-unstyled li i {
    margin-left: 0.5rem;
    margin-right: 0;
    order: 2;
}

[dir="rtl"] .widget .list-unstyled li i.fa-check {
    margin-left: 0.5rem;
    margin-right: 0;
}

[dir="rtl"] .widget .btn {
    width: 100%;
}

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

/* Fix for all list items with icons */
[dir="rtl"] li i.fa-check,
[dir="rtl"] li i.fas.fa-check {
    float: right;
    margin-left: 0.5rem;
    margin-right: 0;
}

/* Time Slots */
[dir="rtl"] .time-slot-btn {
    margin: 8px 4px;
}

/* Form Labels */
[dir="rtl"] .form-label {
    text-align: right;
    display: block;
}

/* Small Text */
[dir="rtl"] small {
    text-align: right;
    display: block;
}

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

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

/* Section Headers */
[dir="rtl"] .section-header h5::after {
    left: auto;
    right: 0;
}

[dir="rtl"] .section-header h5 {
    text-align: right;
}

[dir="rtl"] .section-header {
    text-align: right;
}

/* Form Sections - Specific Fix for Booking Form */
[dir="rtl"] .col-12 .section-header h5 {
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    justify-content: flex-start;
}

[dir="rtl"] .col-12 .section-header h5 i {
    margin-left: 0.5rem;
    margin-right: 0;
}

/* All h5 headings with icons */
[dir="rtl"] h5.d-flex.align-items-center {
    flex-direction: row-reverse !important;
    justify-content: flex-start !important;
}

[dir="rtl"] h5.d-flex.align-items-center i {
    margin-left: 0.5rem !important;
    margin-right: 0 !important;
}

/* Label with icons */
[dir="rtl"] label.d-flex.align-items-center {
    flex-direction: row-reverse !important;
    justify-content: flex-start !important;
}

[dir="rtl"] label.d-flex.align-items-center i {
    margin-left: 0.5rem !important;
    margin-right: 0 !important;
}

/* Gradient Edges */
[dir="rtl"] .gradient-edge-left {
    left: auto !important;
    right: 0 !important;
    transform: scaleX(-1);
}

[dir="rtl"] .gradient-edge-right {
    right: auto !important;
    left: 0 !important;
    transform: scaleX(-1);
}

/* Swiper/Carousel */
[dir="rtl"] .swiper-button-next {
    left: 10px;
    right: auto;
}

[dir="rtl"] .swiper-button-prev {
    right: 10px;
    left: auto;
}

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

/* Contact Info */
[dir="rtl"] .contact-info {
    text-align: right;
}

/* Office Hours */
[dir="rtl"] .office-hours {
    text-align: right;
}

/* Booking Form Specific */
[dir="rtl"] .booking-form {
    text-align: right;
}

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

[dir="rtl"] .booking-form .justify-content-between {
    flex-direction: row-reverse;
}

[dir="rtl"] .booking-form .d-flex.align-items-center {
    flex-direction: row-reverse !important;
}

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

[dir="rtl"] .booking-form .text-muted {
    text-align: center;
}

/* All d-flex with align-items-center */
[dir="rtl"] .d-flex.align-items-center {
    flex-direction: row-reverse !important;
}

[dir="rtl"] .d-flex.align-items-center i {
    margin-left: 0.5rem !important;
    margin-right: 0 !important;
}

[dir="rtl"] .d-flex.justify-content-between {
    flex-direction: row-reverse !important;
}

/* Circle Images */
[dir="rtl"] .circle.absolute {
    right: auto;
    left: 0;
}

/* Social Icons */
[dir="rtl"] .sc-icons a {
    margin-left: 10px;
    margin-right: 0;
}

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

/* Gallery Filters */
[dir="rtl"] #filters li {
    margin-left: 10px;
    margin-right: 0;
}

/* Blog Cards */
[dir="rtl"] .blog-card {
    text-align: right;
}

/* Service Cards */
[dir="rtl"] .service-card {
    text-align: right;
}

/* Dentist Cards */
[dir="rtl"] .dentist-card {
    text-align: right;
}

/* Footer */
[dir="rtl"] footer {
    text-align: right;
}

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

/* Sidebar Close Button Fix for RTL */
[dir="rtl"] #btn-close {
    right: auto !important;
    left: 20px !important;
}

/* Hide scrollbar in sidebar overlay */
#extra-content {
    scrollbar-width: none;
    -ms-overflow-style: none;
}

#extra-content::-webkit-scrollbar {
    display: none;
}

/* Menu Items Spacing Fix for RTL */
[dir="rtl"] #mainmenu > li {
    margin-left: 0 !important;
    margin-right: 30px !important;
}

[dir="rtl"] #mainmenu > li:last-child {
    margin-right: 0 !important;
}

/* Override inline styles for menu items in RTL */
[dir="rtl"] .menu-item[style*="margin-right"] {
    margin-right: 0 !important;
    margin-left: 27px !important;
}

[dir="rtl"] #mainmenu a.menu-item {
    margin-right: 0 !important;
    margin-left: 27px !important;
}

/* Sidebar Overlay Icons Fix for RTL */
[dir="rtl"] #extra-content div i {
    margin-left: 0 !important;
    margin-right: 0.5rem !important;
}

[dir="rtl"] #extra-content .icofont-clock-time,
[dir="rtl"] #extra-content .icofont-location-pin,
[dir="rtl"] #extra-content .icofont-envelope {
    margin-left: 0 !important;
    margin-right: 0.5rem !important;
}

/* Homepage RTL Fixes */
/* Hero Section */
[dir="rtl"] #section-intro .subtitle {
    text-align: right;
}

[dir="rtl"] #section-intro h1 {
    text-align: right;
}

[dir="rtl"] #section-intro .btn-main {
    float: right;
}

[dir="rtl"] #section-intro .col-lg-6 {
    z-index: 10;
    position: relative;
}

/* Google Rating Section */
[dir="rtl"] .d-lg-flex.align-items-center .me-3 {
    margin-right: 0 !important;
    margin-left: 1rem !important;
}

[dir="rtl"] .de-flex.justify-content-start {
    flex-direction: row-reverse !important;
}

[dir="rtl"] .d-rating .fa-star {
    margin-left: 0 !important;
    margin-right: 4px !important;
}

/* Info Cards Section */
[dir="rtl"] .grid-divider .d-flex {
    flex-direction: row-reverse !important;
}

[dir="rtl"] .grid-divider .ms-3 {
    margin-left: 0 !important;
    margin-right: 1rem !important;
}

[dir="rtl"] .grid-divider h4,
[dir="rtl"] .grid-divider p {
    text-align: right;
}

[dir="rtl"] .grid-divider .icon_phone,
[dir="rtl"] .grid-divider .icon_clock,
[dir="rtl"] .grid-divider .icon_mail {
    order: 2;
}

[dir="rtl"] .grid-divider .d-flex > div:not(i) {
    order: 1;
}

/* CTA Section - Ready to book */
[dir="rtl"] .row.align-items-center .col-md-9 h3,
[dir="rtl"] .row.align-items-center .col-md-9 p {
    text-align: right;
}

[dir="rtl"] .row.align-items-center .col-lg-3 {
    text-align: left !important;
}

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

/* About Page RTL Fixes */
[dir="rtl"] .text-end {
    text-align: left !important;
}

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

/* FAQ Page RTL Fixes */
[dir="rtl"] .accordion-section-title {
    text-align: right;
}

[dir="rtl"] .accordion-section-content {
    text-align: right;
}

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

[dir="rtl"] .accordion-section-title::after {
    right: auto;
    left: 0;
}

/* Testimonials Page RTL Fixes */
[dir="rtl"] .de-rating-ext {
    direction: ltr;
    text-align: right;
}

[dir="rtl"] .ms-60px {
    margin-left: 0 !important;
    margin-right: 60px !important;
}

[dir="rtl"] .circle.absolute {
    right: 0;
    left: auto;
}

/* Service Cards */
[dir="rtl"] .service-card h4,
[dir="rtl"] .service-card p {
    text-align: right;
}

[dir="rtl"] .service-card .btn-main {
    float: right;
}

/* Stats/Counter Section */
[dir="rtl"] .de-counter {
    text-align: right;
}

[dir="rtl"] .de-counter h3,
[dir="rtl"] .de-counter p {
    text-align: right;
}

/* Team/Dentist Cards */
[dir="rtl"] .team-member h4,
[dir="rtl"] .team-member p,
[dir="rtl"] .team-member .subtitle {
    text-align: right;
}

/* Testimonial Cards */
[dir="rtl"] .testimonial-card {
    text-align: right;
}

[dir="rtl"] .testimonial-card .d-flex {
    flex-direction: row-reverse !important;
}

[dir="rtl"] .testimonial-card .ms-3 {
    margin-left: 0 !important;
    margin-right: 1rem !important;
}

/* Section Titles */
[dir="rtl"] .section-title,
[dir="rtl"] .text-center h2,
[dir="rtl"] .text-center h3 {
    text-align: center !important;
}

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

/* Feature Items */
[dir="rtl"] .feature-box {
    text-align: right;
}

[dir="rtl"] .feature-box .d-flex {
    flex-direction: row-reverse !important;
}

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

/* CTA Buttons */
[dir="rtl"] .btn-line {
    text-align: center;
}

/* Swiper Navigation */
[dir="rtl"] .swiper-button-next {
    left: 10px;
    right: auto;
}

[dir="rtl"] .swiper-button-prev {
    right: 10px;
    left: auto;
}

/* Responsive Adjustments */
@media (max-width: 768px) {
    [dir="rtl"] .col-md-6,
    [dir="rtl"] .col-lg-6 {
        text-align: right;
    }
}


/* Blog Detail Page RTL Fixes */
[dir="rtl"] .blog-read {
    text-align: right;
}

[dir="rtl"] .blog-read .post-text {
    text-align: right;
}

[dir="rtl"] .blog-read .d-flex {
    flex-direction: row-reverse !important;
}

[dir="rtl"] .blog-read .me-3 {
    margin-right: 0 !important;
    margin-left: 1rem !important;
}

/* Blog Sidebar - Popular Posts */
[dir="rtl"] .widget-post ul.de-bloglist-type-1 {
    padding-right: 0;
    padding-left: 0;
}

[dir="rtl"] .widget-post ul.de-bloglist-type-1 li {
    display: flex;
    flex-direction: row-reverse !important;
    text-align: right;
}

[dir="rtl"] .widget-post ul.de-bloglist-type-1 li .d-image {
    margin-left: 15px;
    margin-right: 0;
    order: 2;
}

[dir="rtl"] .widget-post ul.de-bloglist-type-1 li .d-content {
    order: 1;
    text-align: right;
    flex: 1;
}

[dir="rtl"] .widget-post ul.de-bloglist-type-1 li .d-content h4 {
    text-align: right;
}

[dir="rtl"] .widget-post ul.de-bloglist-type-1 li .d-content .d-date {
    text-align: right;
}

/* Blog Tags */
[dir="rtl"] .blog-tags {
    text-align: right;
}

[dir="rtl"] .blog-tags .badge {
    margin-right: 0 !important;
    margin-left: 8px !important;
}

/* Widget Tags */
[dir="rtl"] .widget_tags ul.ul-tags {
    text-align: right;
    padding-right: 0;
}

[dir="rtl"] .widget_tags ul.ul-tags li {
    float: right;
    margin-left: 5px;
    margin-right: 0;
}

/* Blog Comments Section */
[dir="rtl"] #blog-comment {
    text-align: right;
}

[dir="rtl"] #blog-comment h4 {
    text-align: right;
}

[dir="rtl"] #blog-comment p {
    text-align: right;
}

/* Fix sidebar widget headings */
[dir="rtl"] .widget h4 {
    text-align: right;
}

/* Ensure sidebar doesn't overlap main content in RTL */
[dir="rtl"] .col-lg-8 {
    padding-left: 15px;
    padding-right: 15px;
}

[dir="rtl"] .col-lg-4 {
    padding-left: 15px;
    padding-right: 15px;
}

/* Blog List Page */
[dir="rtl"] .blog-list .blog-card {
    text-align: right;
}

[dir="rtl"] .blog-list .blog-card h4 {
    text-align: right;
}

[dir="rtl"] .blog-list .blog-card p {
    text-align: right;
}

[dir="rtl"] .blog-list .blog-card .d-flex {
    flex-direction: row-reverse !important;
}

[dir="rtl"] .blog-list .blog-card .me-3 {
    margin-right: 0 !important;
    margin-left: 1rem !important;
}
