/* RTL Support for Arabic Language */
.rtl {
    direction: rtl;
    text-align: right;
}

/* Navbar RTL adjustments */
.rtl .navbar-nav {
    padding-right: 0;
    display: flex;
    flex-direction: row;
}

.rtl .navbar-nav .nav-item {
    margin-left: 10px;
}

.rtl .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
    text-align: center;
}

.rtl .navbar-brand {
    margin-right: 0;
    margin-left: 1rem;
    display: flex;
    align-items: center;
}

/* Maintain consistent alignment */
.rtl .ms-auto {
    margin-left: 0 !important;
    margin-right: auto !important;
}

.rtl .me-auto {
    margin-right: 0 !important;
    margin-left: auto !important;
}

.rtl .me-2, .rtl .me-3 {
    margin-right: 0 !important;
    margin-left: 0.5rem !important;
}

.rtl .me-3 {
    margin-left: 1rem !important;
}

.rtl .ms-2, .rtl .ms-3 {
    margin-left: 0 !important;
    margin-right: 0.5rem !important;
}

.rtl .ms-3 {
    margin-right: 1rem !important;
}

/* Text alignment in RTL */
.rtl .text-start {
    text-align: right !important;
}

.rtl .text-end {
    text-align: left !important;
}

/* Float adjustments */
.rtl .float-start {
    float: right !important;
}

.rtl .float-end {
    float: left !important;
}

/* Form controls */
.rtl .form-control {
    text-align: right;
}

.rtl .input-group .form-control:not(:last-child) {
    border-radius: 0 0.25rem 0.25rem 0;
    border-right-width: 1px;
    border-left-width: 0;
}

.rtl .input-group-text:first-child {
    border-radius: 0 0.25rem 0.25rem 0;
}

.rtl .input-group > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {
    margin-right: -1px;
    margin-left: 0;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    border-top-left-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
}

/* List adjustments */
.rtl ul, .rtl ol {
    padding-right: 1.5rem;
    padding-left: 0;
}

/* Card and content adjustments */
.rtl .card-body {
    text-align: right;
}

/* Social icons adjustments */
.rtl .social-icons {
    flex-direction: row-reverse;
}

/* Control panel for language and dark mode */
.control-panel {
    position: fixed;
    top: 80px; /* Position right below the navbar */
    right: -60px; /* Hide completely when closed */
    z-index: 1000;
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 10px 8px;
    background-color: rgba(255, 255, 255, 0.95);
    border-radius: 8px 0 0 8px;
    box-shadow: -2px 0 10px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
}

.control-panel.expanded {
    right: 0;
}

.rtl .control-panel {
    right: -45px; /* Keep on the right side even in RTL */
    left: auto;
    border-radius: 8px 0 0 8px;
    box-shadow: -2px 0 10px rgba(0, 0, 0, 0.1);
}

.rtl .control-panel.expanded {
    right: 0;
}

.dark-mode .control-panel {
    background-color: rgba(33, 37, 41, 0.95);
}

.control-panel-toggle {
    position: absolute;
    left: -28px;
    top: 50%;
    transform: translateY(-50%);
    height: 60px;
    width: 28px;
    background-color: var(--primary-color);
    border-radius: 20px 0 0 20px; /* More oval shape */
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    box-shadow: -2px 0 8px rgba(0, 0, 0, 0.2);
    transition: all 0.3s ease;
    border-right: none;
    opacity: 0.9;
    border: 2px solid #fff;
    border-right: none;
}

.dark-mode .control-panel-toggle {
    background-color: #5a6268;
    border-color: #343a40;
}

.control-panel-toggle:hover {
    opacity: 1;
    box-shadow: -3px 0 12px rgba(0, 0, 0, 0.3);
    transform: translateY(-50%) scale(1.05);
}

.control-panel-toggle i {
    font-size: 14px;
    color: #fff;
    transition: transform 0.3s ease;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
}

.control-panel.expanded .control-panel-toggle i {
    transform: rotate(180deg);
}

.control-panel-toggle:hover i {
    opacity: 1;
}

.dark-mode .control-panel-toggle i {
    color: #f8f9fa;
}

.control-btn {
    width: 35px;
    height: 35px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
    background-color: #fff;
    color: var(--primary-color);
    border: 2px solid var(--primary-color);
}

.control-btn:hover {
    transform: scale(1.1);
    background-color: var(--primary-color);
    color: #fff;
}

.dark-mode .control-btn {
    background-color: #343a40;
    color: #f8f9fa;
    border-color: #f8f9fa;
}

.dark-mode .control-btn:hover {
    background-color: #f8f9fa;
    color: #343a40;
}

.language-btn i, .dark-mode-btn i {
    font-size: 16px;
}

/* Remove old buttons but keep floating appointment button */
.dark-mode-toggle, .language-switcher {
    display: none !important;
}

/* Ensure options menu stays in the same position in RTL mode */
/* .rtl .options-menu {
    right: auto;
    left: 20px;
}

.rtl .options-container {
    right: auto;
    left: 0;
} */

/* RTL adjustments for floating appointment button */
.rtl .floating-appointment-btn i {
    margin-right: 0;
    margin-left: 8px;
}

/* Font adjustments for Arabic */
.rtl {
    font-family: 'Tajawal', 'Nunito', sans-serif;
}

/* Fix for Bootstrap columns in RTL */
@media (min-width: 768px) {
    .rtl .offset-md-1 {
        margin-right: 8.333333%;
        margin-left: 0;
    }
    
    .rtl .offset-md-2 {
        margin-right: 16.666667%;
        margin-left: 0;
    }
}

/* Testimonial adjustments */
.rtl .testimonial-avatar.me-3 {
    margin-right: 0 !important;
    margin-left: 1rem !important;
}

/* Payment page adjustments */
.rtl .payment-icon-container.me-3 {
    margin-right: 0 !important;
    margin-left: 1rem !important;
}

/* Calculator page adjustments */
.rtl .calculator-form label {
    text-align: right;
}

/* About page adjustments */
.rtl .doctor-social-links {
    flex-direction: row-reverse;
}
