/**
 * RTL styles for WPrad Consultations Translator
 * Applied when Arabic language is active - FRONTEND ONLY
 * Fixed to never affect WordPress admin
 */

/* ========================================
   CRITICAL: Exclude WordPress Admin
   ======================================== */

/* Never apply RTL to WordPress admin areas */
body.wp-admin,
body.wp-admin *,
#wpadminbar,
#wpadminbar *,
#adminmenu,
#adminmenu * {
    direction: ltr !important;
    text-align: left !important;
}

/* ========================================
   Frontend RTL - Content Areas Only
   ======================================== */

/* Apply RTL only to frontend content, not globally */
body.wpct-rtl:not(.wp-admin) .site,
body.wpct-rtl:not(.wp-admin) .site-content,
body.wpct-rtl:not(.wp-admin) .content-area,
body.wpct-rtl:not(.wp-admin) .entry-content,
body.wpct-rtl:not(.wp-admin) article,
body.wpct-rtl:not(.wp-admin) main {
    direction: rtl;
    text-align: right;
}

/* Language switcher maintains its own direction */
body.wpct-rtl:not(.wp-admin) .wpct-language-switcher {
    direction: rtl;
    text-align: right;
}

/* ========================================
   Dropdown RTL - Frontend Only
   ======================================== */

body.wpct-rtl:not(.wp-admin) .wpct-dropdown-toggle {
    flex-direction: row-reverse;
}

body.wpct-rtl:not(.wp-admin) .wpct-dropdown-arrow {
    margin-left: 0;
    margin-right: 5px;
}

body.wpct-rtl:not(.wp-admin) .wpct-dropdown-content {
    left: auto;
    right: 0;
    text-align: right;
}

body.wpct-rtl:not(.wp-admin) .wpct-dropdown-content a {
    flex-direction: row-reverse;
}

body.wpct-rtl:not(.wp-admin) .wpct-current-indicator {
    margin-left: 0;
    margin-right: auto;
}

/* ========================================
   List Style RTL - Frontend Only
   ======================================== */

body.wpct-rtl:not(.wp-admin) .wpct-language-list {
    text-align: right;
}

body.wpct-rtl:not(.wp-admin) .wpct-language-link {
    flex-direction: row-reverse;
}

/* ========================================
   Flags Style RTL - Frontend Only
   ======================================== */

body.wpct-rtl:not(.wp-admin) .wpct-flags-list {
    flex-direction: row-reverse;
}

body.wpct-rtl:not(.wp-admin) .wpct-style-flags .wpct-language-link.current::after {
    right: auto;
    left: -5px;
}

/* ========================================
   Inline Style RTL - Frontend Only
   ======================================== */

body.wpct-rtl:not(.wp-admin) .wpct-inline-switcher {
    flex-direction: row-reverse;
}

/* ========================================
   Flag Positioning RTL - Frontend Only
   ======================================== */

body.wpct-rtl:not(.wp-admin) .wpct-flag {
    margin-left: 8px;
    margin-right: 0;
}

/* ========================================
   Widget RTL - Frontend Only
   ======================================== */

body.wpct-rtl:not(.wp-admin) .widget .wpct-dropdown-toggle {
    flex-direction: row-reverse;
}

body.wpct-rtl:not(.wp-admin) .widget .wpct-dropdown-content {
    text-align: right;
}

/* ========================================
   Menu Integration RTL - Frontend Only
   ======================================== */

body.wpct-rtl:not(.wp-admin) .wpct-menu-language-switcher .wpct-dropdown-content {
    left: auto;
    right: 0;
}

body.wpct-rtl:not(.wp-admin) .menu-item.wpct-menu-language-switcher {
    margin-left: 0;
    margin-right: auto;
}

/* ========================================
   Form Elements RTL - Frontend Only
   ======================================== */

body.wpct-rtl:not(.wp-admin) .site-content input[type="text"],
body.wpct-rtl:not(.wp-admin) .site-content input[type="email"],
body.wpct-rtl:not(.wp-admin) .site-content input[type="tel"],
body.wpct-rtl:not(.wp-admin) .site-content input[type="url"],
body.wpct-rtl:not(.wp-admin) .site-content input[type="search"],
body.wpct-rtl:not(.wp-admin) .site-content textarea,
body.wpct-rtl:not(.wp-admin) .site-content select {
    direction: rtl;
    text-align: right;
}

/* ========================================
   Content Area RTL - Frontend Only
   ======================================== */

body.wpct-rtl:not(.wp-admin) .entry-content,
body.wpct-rtl:not(.wp-admin) .widget-area,
body.wpct-rtl:not(.wp-admin) .site-content {
    direction: rtl;
    text-align: right;
}

body.wpct-rtl:not(.wp-admin) .entry-content ul,
body.wpct-rtl:not(.wp-admin) .entry-content ol {
    padding-left: 0;
    padding-right: 2em;
}

body.wpct-rtl:not(.wp-admin) blockquote {
    border-left: none;
    border-right: 4px solid #dcdcde;
    padding-left: 0;
    padding-right: 1em;
}

/* ========================================
   Navigation RTL - Frontend Only
   ======================================== */

body.wpct-rtl:not(.wp-admin) .nav-menu {
    direction: rtl;
}

body.wpct-rtl:not(.wp-admin) .nav-menu ul {
    text-align: right;
}

body.wpct-rtl:not(.wp-admin) .nav-menu .sub-menu,
body.wpct-rtl:not(.wp-admin) .nav-menu .children {
    left: auto;
    right: 0;
}

body.wpct-rtl:not(.wp-admin) .menu-item-has-children > a::after {
    content: '◄';
    margin-left: 0;
    margin-right: 5px;
}

/* ========================================
   Pagination RTL - Frontend Only
   ======================================== */

body.wpct-rtl:not(.wp-admin) .pagination,
body.wpct-rtl:not(.wp-admin) .page-links {
    direction: rtl;
}

body.wpct-rtl:not(.wp-admin) .pagination .prev {
    float: right;
}

body.wpct-rtl:not(.wp-admin) .pagination .next {
    float: left;
}

/* ========================================
   Comments RTL - Frontend Only
   ======================================== */

body.wpct-rtl:not(.wp-admin) .comment-list {
    direction: rtl;
}

body.wpct-rtl:not(.wp-admin) .comment-author .avatar {
    float: right;
    margin-left: 1em;
    margin-right: 0;
}

body.wpct-rtl:not(.wp-admin) .comment-content {
    text-align: right;
}

body.wpct-rtl:not(.wp-admin) .reply {
    text-align: left;
}

/* ========================================
   Sidebar RTL - Frontend Only
   ======================================== */

body.wpct-rtl:not(.wp-admin).sidebar-right .site-content {
    flex-direction: row-reverse;
}

body.wpct-rtl:not(.wp-admin) .widget {
    text-align: right;
}

body.wpct-rtl:not(.wp-admin) .widget ul {
    padding-left: 0;
    padding-right: 1.5em;
}

/* ========================================
   Tables RTL - Frontend Only
   ======================================== */

body.wpct-rtl:not(.wp-admin) .site-content table {
    direction: rtl;
    text-align: right;
}

body.wpct-rtl:not(.wp-admin) .site-content th {
    text-align: right;
}

/* ========================================
   Buttons RTL - Frontend Only
   ======================================== */

body.wpct-rtl:not(.wp-admin) .site-content .button,
body.wpct-rtl:not(.wp-admin) .site-content button,
body.wpct-rtl:not(.wp-admin) .site-content input[type="button"],
body.wpct-rtl:not(.wp-admin) .site-content input[type="submit"] {
    direction: rtl;
}

body.wpct-rtl:not(.wp-admin) .button-group {
    direction: rtl;
}

/* ========================================
   Icons RTL - Frontend Only
   ======================================== */

body.wpct-rtl:not(.wp-admin) .icon-left {
    margin-left: 0.5em;
    margin-right: 0;
}

body.wpct-rtl:not(.wp-admin) .icon-right {
    margin-left: 0;
    margin-right: 0.5em;
}

/* ========================================
   Animations RTL
   ======================================== */

@keyframes wpct-slide-in-rtl {
    from {
        transform: translateX(100%);
        opacity: 0;
    }
    to {
        transform: translateX(0);
        opacity: 1;
    }
}

body.wpct-rtl:not(.wp-admin) .wpct-animate-slide {
    animation: wpct-slide-in-rtl 0.3s ease;
}

/* ========================================
   Media Queries RTL
   ======================================== */

@media (max-width: 768px) {
    body.wpct-rtl:not(.wp-admin) .wpct-dropdown-content {
        text-align: right;
    }
    
    body.wpct-rtl:not(.wp-admin) .mobile-menu {
        direction: rtl;
        text-align: right;
    }
}

/* ========================================
   Theme-Specific RTL Fixes - Frontend Only
   ======================================== */

/* Twenty Twenty-One RTL */
body.wpct-rtl:not(.wp-admin).theme-twentytwentyone .primary-navigation > div > .menu-wrapper {
    justify-content: flex-end;
}

/* Twenty Twenty RTL */
body.wpct-rtl:not(.wp-admin).theme-twentytwenty .header-inner {
    flex-direction: row-reverse;
}

/* Astra RTL */
body.wpct-rtl:not(.wp-admin).astra-theme .ast-container {
    direction: rtl;
}

/* Elementor RTL - Frontend Only */
body.wpct-rtl:not(.wp-admin) .elementor-column-gap-default > .elementor-column > .elementor-element-populated {
    padding-left: 0;
    padding-right: 10px;
}

/* ========================================
   WooCommerce RTL Support - Frontend Only
   ======================================== */

body.wpct-rtl:not(.wp-admin) .woocommerce ul.products li.product {
    text-align: right;
}

body.wpct-rtl:not(.wp-admin) .woocommerce .price {
    direction: rtl;
}

body.wpct-rtl:not(.wp-admin) .woocommerce .star-rating {
    float: right;
}

body.wpct-rtl:not(.wp-admin) .woocommerce .button {
    direction: rtl;
}

/* ========================================
   Arabic Typography Improvements
   ======================================== */

body.wpct-lang-ar:not(.wp-admin) {
    font-family: 'Noto Naskh Arabic', 'Droid Arabic Naskh', 'Arabic Typesetting', 'Simplified Arabic', 'Traditional Arabic', 'Segoe UI', Tahoma, Arial, sans-serif;
    line-height: 1.8;
}

body.wpct-lang-ar:not(.wp-admin) h1,
body.wpct-lang-ar:not(.wp-admin) h2,
body.wpct-lang-ar:not(.wp-admin) h3,
body.wpct-lang-ar:not(.wp-admin) h4,
body.wpct-lang-ar:not(.wp-admin) h5,
body.wpct-lang-ar:not(.wp-admin) h6 {
    font-family: 'Noto Kufi Arabic', 'Droid Arabic Kufi', 'Arabic Typesetting', Arial, sans-serif;
    font-weight: 700;
    line-height: 1.4;
}

/* Increase font size slightly for Arabic readability - Frontend Only */
body.wpct-lang-ar:not(.wp-admin) .site-content {
    font-size: 1.05em;
}

body.wpct-lang-ar:not(.wp-admin) .entry-content {
    font-size: 1.1em;
    line-height: 1.9;
}

/* ========================================
   Utility Classes RTL - Frontend Only
   ======================================== */

body.wpct-rtl:not(.wp-admin) .text-left {
    text-align: right !important;
}

body.wpct-rtl:not(.wp-admin) .text-right {
    text-align: left !important;
}

body.wpct-rtl:not(.wp-admin) .float-left {
    float: right !important;
}

body.wpct-rtl:not(.wp-admin) .float-right {
    float: left !important;
}

body.wpct-rtl:not(.wp-admin) .ml-auto {
    margin-left: 0 !important;
    margin-right: auto !important;
}

body.wpct-rtl:not(.wp-admin) .mr-auto {
    margin-right: 0 !important;
    margin-left: auto !important;
}

/* Padding utilities - Frontend Only */
body.wpct-rtl:not(.wp-admin) .pl-0 { padding-left: 0 !important; padding-right: 0 !important; }
body.wpct-rtl:not(.wp-admin) .pl-1 { padding-left: 0 !important; padding-right: 0.25rem !important; }
body.wpct-rtl:not(.wp-admin) .pl-2 { padding-left: 0 !important; padding-right: 0.5rem !important; }
body.wpct-rtl:not(.wp-admin) .pl-3 { padding-left: 0 !important; padding-right: 1rem !important; }
body.wpct-rtl:not(.wp-admin) .pl-4 { padding-left: 0 !important; padding-right: 1.5rem !important; }
body.wpct-rtl:not(.wp-admin) .pl-5 { padding-left: 0 !important; padding-right: 3rem !important; }

body.wpct-rtl:not(.wp-admin) .pr-0 { padding-right: 0 !important; padding-left: 0 !important; }
body.wpct-rtl:not(.wp-admin) .pr-1 { padding-right: 0 !important; padding-left: 0.25rem !important; }
body.wpct-rtl:not(.wp-admin) .pr-2 { padding-right: 0 !important; padding-left: 0.5rem !important; }
body.wpct-rtl:not(.wp-admin) .pr-3 { padding-right: 0 !important; padding-left: 1rem !important; }
body.wpct-rtl:not(.wp-admin) .pr-4 { padding-right: 0 !important; padding-left: 1.5rem !important; }
body.wpct-rtl:not(.wp-admin) .pr-5 { padding-right: 0 !important; padding-left: 3rem !important; }

/* Margin utilities - Frontend Only */
body.wpct-rtl:not(.wp-admin) .ml-0 { margin-left: 0 !important; margin-right: 0 !important; }
body.wpct-rtl:not(.wp-admin) .ml-1 { margin-left: 0 !important; margin-right: 0.25rem !important; }
body.wpct-rtl:not(.wp-admin) .ml-2 { margin-left: 0 !important; margin-right: 0.5rem !important; }
body.wpct-rtl:not(.wp-admin) .ml-3 { margin-left: 0 !important; margin-right: 1rem !important; }
body.wpct-rtl:not(.wp-admin) .ml-4 { margin-left: 0 !important; margin-right: 1.5rem !important; }
body.wpct-rtl:not(.wp-admin) .ml-5 { margin-left: 0 !important; margin-right: 3rem !important; }

body.wpct-rtl:not(.wp-admin) .mr-0 { margin-right: 0 !important; margin-left: 0 !important; }
body.wpct-rtl:not(.wp-admin) .mr-1 { margin-right: 0 !important; margin-left: 0.25rem !important; }
body.wpct-rtl:not(.wp-admin) .mr-2 { margin-right: 0 !important; margin-left: 0.5rem !important; }
body.wpct-rtl:not(.wp-admin) .mr-3 { margin-right: 0 !important; margin-left: 1rem !important; }
body.wpct-rtl:not(.wp-admin) .mr-4 { margin-right: 0 !important; margin-left: 1.5rem !important; }
body.wpct-rtl:not(.wp-admin) .mr-5 { margin-right: 0 !important; margin-left: 3rem !important; }

/* ========================================
   OVERRIDE: Force LTR for Admin Elements
   ======================================== */

/* Ensure WordPress admin always stays LTR */
.wp-admin,
.wp-admin *,
#wpadminbar,
#wpadminbar *,
#adminmenumain,
#adminmenumain *,
#adminmenuback,
#adminmenuwrap,
#adminmenu,
#adminmenu *,
.wp-toolbar,
.wp-toolbar * {
    direction: ltr !important;
    text-align: left !important;
}

/* Admin notices should always be LTR */
.wp-admin .notice,
.wp-admin .notice-error,
.wp-admin .notice-warning,
.wp-admin .notice-success,
.wp-admin .notice-info {
    direction: ltr !important;
    text-align: left !important;
}

/* Admin forms should always be LTR */
.wp-admin form,
.wp-admin input,
.wp-admin textarea,
.wp-admin select {
    direction: ltr !important;
    text-align: left !important;
}