/* =====================================================
   RTL Support - Anime Stream
   Right-to-Left language support for Arabic
   ===================================================== */

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

/* LTR Override */
[dir="ltr"] {
    direction: ltr;
    text-align: left;
}

/* Font Family Based on Direction */
[dir="rtl"] body {
    font-family: var(--font-arabic);
}

[dir="ltr"] body {
    font-family: var(--font-english);
}

/* ==================== SPACING FIXES ==================== */

/* Margin adjustments */
[dir="rtl"] .mr-auto { margin-right: auto; margin-left: 0; }
[dir="rtl"] .ml-auto { margin-left: auto; margin-right: 0; }

[dir="ltr"] .mr-auto { margin-right: auto; margin-left: 0; }
[dir="ltr"] .ml-auto { margin-left: auto; margin-right: 0; }

/* ==================== ICONS ==================== */

/* Flip directional icons */
[dir="rtl"] .fa-chevron-left { transform: scaleX(-1); }
[dir="rtl"] .fa-chevron-right { transform: scaleX(-1); }
[dir="rtl"] .fa-arrow-left { transform: scaleX(-1); }
[dir="rtl"] .fa-arrow-right { transform: scaleX(-1); }
[dir="rtl"] .fa-long-arrow-left { transform: scaleX(-1); }
[dir="rtl"] .fa-long-arrow-right { transform: scaleX(-1); }

/* Reset icon flipping for LTR */
[dir="ltr"] .fa-chevron-left,
[dir="ltr"] .fa-chevron-right,
[dir="ltr"] .fa-arrow-left,
[dir="ltr"] .fa-arrow-right {
    transform: none;
}

/* ==================== HEADER & NAVIGATION ==================== */

/* Search Bar */
[dir="rtl"] .search-bar input {
    padding-left: var(--spacing-md);
    padding-right: 40px;
}

[dir="ltr"] .search-bar input {
    padding-right: var(--spacing-md);
    padding-left: 40px;
}

[dir="rtl"] .search-btn {
    left: auto;
    right: var(--spacing-md);
}

[dir="ltr"] .search-btn {
    right: auto;
    left: var(--spacing-md);
}

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

[dir="ltr"] .user-dropdown {
    right: auto;
    left: 0;
}

/* Mobile Navigation */
[dir="rtl"] .mobile-nav {
    right: 0;
    left: auto;
    transform: translateX(100%);
}

[dir="ltr"] .mobile-nav {
    left: 0;
    right: auto;
    transform: translateX(-100%);
}

[dir="rtl"] .mobile-nav.active,
[dir="ltr"] .mobile-nav.active {
    transform: translateX(0);
}

/* ==================== HERO SECTION ==================== */

[dir="rtl"] .hero-gradient {
    background: linear-gradient(
        to left,
        transparent 0%,
        rgba(10, 10, 15, 0.7) 40%,
        rgba(10, 10, 15, 0.95) 70%,
        var(--bg-primary) 100%
    ),
    linear-gradient(
        to top,
        var(--bg-primary) 0%,
        transparent 30%
    );
}

[dir="ltr"] .hero-gradient {
    background: linear-gradient(
        to right,
        transparent 0%,
        rgba(10, 10, 15, 0.7) 40%,
        rgba(10, 10, 15, 0.95) 70%,
        var(--bg-primary) 100%
    ),
    linear-gradient(
        to top,
        var(--bg-primary) 0%,
        transparent 30%
    );
}

/* ==================== SLIDER ==================== */

[dir="rtl"] .slider-prev {
    right: 0;
    left: auto;
}

[dir="rtl"] .slider-next {
    left: 0;
    right: auto;
}

[dir="ltr"] .slider-prev {
    left: 0;
    right: auto;
}

[dir="ltr"] .slider-next {
    right: 0;
    left: auto;
}

/* ==================== CARDS ==================== */

/* Score Badge Position */
[dir="rtl"] .anime-card-score {
    right: var(--spacing-sm);
    left: auto;
}

[dir="ltr"] .anime-card-score {
    left: var(--spacing-sm);
    right: auto;
}

/* Status Badge Position */
[dir="rtl"] .anime-card-status {
    left: var(--spacing-sm);
    right: auto;
}

[dir="ltr"] .anime-card-status {
    right: var(--spacing-sm);
    left: auto;
}

/* ==================== FORMS ==================== */

/* Input Group */
[dir="rtl"] .input-group input {
    border-radius: 0 var(--radius-md) var(--radius-md) 0;
    border-left: none;
    border-right: 1px solid var(--border-primary);
}

[dir="ltr"] .input-group input {
    border-radius: var(--radius-md) 0 0 var(--radius-md);
    border-right: none;
    border-left: 1px solid var(--border-primary);
}

[dir="rtl"] .input-group button {
    border-radius: var(--radius-md) 0 0 var(--radius-md);
}

[dir="ltr"] .input-group button {
    border-radius: 0 var(--radius-md) var(--radius-md) 0;
}

/* Toggle Switch */
[dir="rtl"] .toggle-slider::before {
    right: 3px;
    left: auto;
}

[dir="ltr"] .toggle-slider::before {
    left: 3px;
    right: auto;
}

[dir="rtl"] .toggle input:checked + .toggle-slider::before {
    transform: translateX(-24px);
}

[dir="ltr"] .toggle input:checked + .toggle-slider::before {
    transform: translateX(24px);
}

/* ==================== DROPDOWN ==================== */

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

[dir="ltr"] .dropdown-menu {
    left: 0;
    right: auto;
}

/* ==================== TOAST ==================== */

[dir="rtl"] .toast-container {
    left: var(--spacing-lg);
    right: auto;
}

[dir="ltr"] .toast-container {
    right: var(--spacing-lg);
    left: auto;
}

[dir="rtl"] .toast {
    animation-name: slideInRTL;
}

[dir="ltr"] .toast {
    animation-name: slideInLTR;
}

@keyframes slideInRTL {
    from {
        opacity: 0;
        transform: translateX(-100%);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes slideInLTR {
    from {
        opacity: 0;
        transform: translateX(100%);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

/* ==================== VIDEO PLAYER ==================== */

/* Progress Handle */
[dir="rtl"] .progress-handle {
    transform: translate(50%, -50%);
}

[dir="ltr"] .progress-handle {
    transform: translate(-50%, -50%);
}

/* Skip Buttons */
[dir="rtl"] .skip-intro,
[dir="rtl"] .skip-outro {
    right: var(--spacing-lg);
    left: auto;
}

[dir="ltr"] .skip-intro,
[dir="ltr"] .skip-outro {
    left: var(--spacing-lg);
    right: auto;
}

/* Settings Menu */
[dir="rtl"] .settings-menu {
    right: 0;
    left: auto;
}

[dir="ltr"] .settings-menu {
    left: 0;
    right: auto;
}

/* Demo Banner */
[dir="rtl"] .demo-banner {
    right: var(--spacing-md);
    left: auto;
}

[dir="ltr"] .demo-banner {
    left: var(--spacing-md);
    right: auto;
}

/* ==================== EPISODES ==================== */

/* Episode Search */
[dir="rtl"] .episodes-search input {
    padding-left: var(--spacing-md);
    padding-right: 36px;
}

[dir="ltr"] .episodes-search input {
    padding-right: var(--spacing-md);
    padding-left: 36px;
}

[dir="rtl"] .episodes-search i {
    left: auto;
    right: var(--spacing-sm);
}

[dir="ltr"] .episodes-search i {
    right: auto;
    left: var(--spacing-sm);
}

/* Watched Indicator */
[dir="rtl"] .episode-btn .watched-indicator {
    right: 4px;
    left: auto;
}

[dir="ltr"] .episode-btn .watched-indicator {
    left: 4px;
    right: auto;
}

/* ==================== LISTS ==================== */

/* List Items */
[dir="rtl"] .list-item-icon {
    margin-left: var(--spacing-md);
    margin-right: 0;
}

[dir="ltr"] .list-item-icon {
    margin-right: var(--spacing-md);
    margin-left: 0;
}

/* ==================== MISC ==================== */

/* Language Label */
[dir="rtl"] .lang-label {
    margin-right: var(--spacing-xs);
    margin-left: 0;
}

[dir="ltr"] .lang-label {
    margin-left: var(--spacing-xs);
    margin-right: 0;
}

/* Text Alignment Utilities */
[dir="rtl"] .text-start { text-align: right; }
[dir="rtl"] .text-end { text-align: left; }

[dir="ltr"] .text-start { text-align: left; }
[dir="ltr"] .text-end { text-align: right; }
