/* Multilang Specific Styles */

/* RTL Support */
[dir="rtl"] {
    direction: rtl;
}

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

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

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

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

[dir="rtl"] .about-content {
    direction: rtl;
}

[dir="rtl"] .contact-content {
    direction: rtl;
}

[dir="rtl"] .footer-content {
    direction: rtl;
}

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

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

/* Language-specific font adjustments */
.lang-ar, .lang-fa, .lang-ur {
    font-family: 'Arial', 'Tahoma', sans-serif;
}

.lang-zh, .lang-ja, .lang-ko {
    font-family: 'Microsoft YaHei', 'SimSun', 'Arial', sans-serif;
}

.lang-th, .lang-vi, .lang-km, .lang-lo {
    font-family: 'Tahoma', 'Arial', sans-serif;
}

.lang-hi, .lang-bn, .lang-ta, .lang-te, .lang-ml, .lang-kn, .lang-gu, .lang-pa, .lang-or, .lang-as, .lang-ne, .lang-si {
    font-family: 'Arial', 'Tahoma', sans-serif;
}

/* Language selector enhancements */
.lang-menu {
    max-height: 400px;
    overflow-y: auto;
    /* scrollbar-width: thin; */
    /* scrollbar-color: #007bff #f1f1f1; */
}

.lang-menu::-webkit-scrollbar {
    width: 6px;
}

.lang-menu::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 3px;
}

.lang-menu::-webkit-scrollbar-thumb {
    background: #007bff;
    border-radius: 3px;
}

.lang-menu::-webkit-scrollbar-thumb:hover {
    background: #0056b3;
}

/* Language flag styling */
.lang-menu a {
    display: flex;
    align-items: center;
    gap: 10px;
}

.lang-menu a::before {
    content: attr(data-flag);
    font-size: 1.2em;
}

/* Current language indicator */
.lang-btn::before {
    content: attr(data-flag);
    font-size: 1.2em;
}

/* Smooth transitions for language switching */
.transitioning {
    opacity: 0.7;
    transition: opacity 0.3s ease;
}

/* Loading state for language switching */
.lang-loading {
    position: relative;
}

.lang-loading::after {
    content: '';
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    width: 16px;
    height: 16px;
    border: 2px solid #f3f3f3;
    border-top: 2px solid #007bff;
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    0% { transform: translateY(-50%) rotate(0deg); }
    100% { transform: translateY(-50%) rotate(360deg); }
}

/* Language-specific text alignment */
.lang-ar, .lang-fa, .lang-ur, .lang-he {
    text-align: right;
}

.lang-zh, .lang-ja, .lang-ko {
    text-align: left;
}

/* Character spacing for certain languages */
.lang-th, .lang-vi, .lang-km, .lang-lo {
    letter-spacing: 0.5px;
}

/* Font size adjustments for different scripts */
.lang-ar, .lang-fa, .lang-ur, .lang-he {
    font-size: 1.1em;
}

.lang-zh, .lang-ja, .lang-ko {
    font-size: 1.05em;
}

/* Special styling for CJK languages */
.lang-zh .hero-title,
.lang-ja .hero-title,
.lang-ko .hero-title {
    line-height: 1.4;
    letter-spacing: 1px;
}

/* RTL text direction for Arabic, Persian, Urdu, Hebrew */
[lang="ar"], [lang="fa"], [lang="ur"], [lang="he"] {
    direction: rtl;
    text-align: right;
}

/* LTR text direction for other languages */
[lang="en"], [lang="es"], [lang="fr"], [lang="de"], [lang="it"], [lang="pt"], [lang="ru"], [lang="pl"], [lang="nl"], [lang="sv"], [lang="no"], [lang="da"], [lang="fi"], [lang="cs"], [lang="hu"], [lang="ro"], [lang="bg"], [lang="hr"], [lang="sk"], [lang="sl"], [lang="et"], [lang="lv"], [lang="lt"], [lang="el"], [lang="tr"], [lang="hi"], [lang="bn"], [lang="ta"], [lang="te"], [lang="ml"], [lang="kn"], [lang="gu"], [lang="pa"], [lang="or"], [lang="as"], [lang="ne"], [lang="si"], [lang="my"], [lang="km"], [lang="lo"], [lang="th"], [lang="vi"], [lang="ka"], [lang="hy"], [lang="az"], [lang="kk"], [lang="ky"], [lang="uz"], [lang="tg"], [lang="mn"], [lang="sw"], [lang="am"], [lang="ha"], [lang="yo"], [lang="ig"], [lang="zu"], [lang="af"], [lang="xh"], [lang="st"], [lang="tn"], [lang="ss"], [lang="ve"], [lang="ts"], [lang="nr"], [lang="nso"] {
    direction: ltr;
    text-align: left;
}

/* Responsive language selector */
@media (max-width: 768px) {
    .lang-menu {
        width: 150px;
        max-height: 250px;
    }
    
    .lang-menu a {
        padding: 8px 12px;
        font-size: 0.9rem;
    }
}

@media (max-width: 480px) {
    .lang-menu {
        width: 120px;
        max-height: 200px;
    }
    
    .lang-menu a {
        padding: 6px 10px;
        font-size: 0.8rem;
    }
    
    .lang-menu a::before {
        font-size: 1em;
    }
}

/* Language-specific button styles */
.lang-ar .btn,
.lang-fa .btn,
.lang-ur .btn,
.lang-he .btn {
    text-align: center;
}

/* Form styling for RTL languages */
[dir="rtl"] .form-group input,
[dir="rtl"] .form-group textarea {
    text-align: right;
}

[dir="rtl"] .form-group label {
    right: 15px;
    left: auto;
}

[dir="rtl"] .form-group input:focus + label,
[dir="rtl"] .form-group textarea:focus + label,
[dir="rtl"] .form-group input:not(:placeholder-shown) + label,
[dir="rtl"] .form-group textarea:not(:placeholder-shown) + label {
    right: 10px;
    left: auto;
}

/* Navigation adjustments for RTL */
[dir="rtl"] .main-nav a::after {
    right: 0;
    left: auto;
}

/* Hero section adjustments for RTL */
[dir="rtl"] .hero-buttons {
    flex-direction: row-reverse;
}

[dir="rtl"] .hero-nav .prev-slide {
    right: 30px;
    left: auto;
}

[dir="rtl"] .hero-nav .next-slide {
    left: 30px;
    right: auto;
}

/* Footer adjustments for RTL */
[dir="rtl"] .footer-links {
    text-align: right;
}

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

/* Language-specific spacing */
.lang-zh, .lang-ja, .lang-ko {
    word-spacing: 2px;
}

.lang-th, .lang-vi, .lang-km, .lang-lo {
    word-spacing: 1px;
}

/* Special handling for complex scripts */
.lang-ar, .lang-fa, .lang-ur, .lang-he {
    line-height: 1.8;
}

.lang-zh, .lang-ja, .lang-ko {
    line-height: 1.6;
}

/* Language detection and styling */
body[data-lang="ar"] {
    font-family: 'Arial', 'Tahoma', sans-serif;
    direction: rtl;
}

body[data-lang="fa"] {
    font-family: 'Arial', 'Tahoma', sans-serif;
    direction: rtl;
}

body[data-lang="ur"] {
    font-family: 'Arial', 'Tahoma', sans-serif;
    direction: rtl;
}

body[data-lang="he"] {
    font-family: 'Arial', 'Tahoma', sans-serif;
    direction: rtl;
}

body[data-lang="zh"] {
    font-family: 'Microsoft YaHei', 'SimSun', 'Arial', sans-serif;
}

body[data-lang="ja"] {
    font-family: 'Hiragino Sans', 'Yu Gothic', 'Meiryo', sans-serif;
}

body[data-lang="ko"] {
    font-family: 'Malgun Gothic', 'Apple SD Gothic Neo', sans-serif;
}

/* Animation for language switching */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.language-switch-animation {
    animation: fadeInUp 0.5s ease-out;
}

/* Language-specific color schemes */
.lang-ar {
    --primary-color: #2E7D32;
    --secondary-color: #4CAF50;
}

.lang-fa {
    --primary-color: #1976D2;
    --secondary-color: #2196F3;
}

.lang-zh {
    --primary-color: #D32F2F;
    --secondary-color: #F44336;
}

.lang-ja {
    --primary-color: #7B1FA2;
    --secondary-color: #9C27B0;
}

.lang-ko {
    --primary-color: #F57C00;
    --secondary-color: #FF9800;
}

/* Apply language-specific colors */
body[data-lang="ar"] .btn-primary {
    background: var(--primary-color, #007bff);
}

body[data-lang="fa"] .btn-primary {
    background: var(--primary-color, #007bff);
}

body[data-lang="zh"] .btn-primary {
    background: var(--primary-color, #007bff);
}

body[data-lang="ja"] .btn-primary {
    background: var(--primary-color, #007bff);
}

body[data-lang="ko"] .btn-primary {
    background: var(--primary-color, #007bff);
}
