/* Font faces for Persian and Arabic */
@font-face {
    font-family: 'IRAN Yekan';
    src: url('../fonts/IranYekan/IRANYekanWebRegular.woff2') format('woff2'),
         url('../fonts/IranYekan/IRANYekanWebRegular.woff') format('woff'),
         url('../fonts/IranYekan/IRANYekanWebRegular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'IRAN Yekan';
    src: url('../fonts/IranYekan/IRANYekanWebMedium.woff2') format('woff2'),
         url('../fonts/IranYekan/iranyekanwebmedium.woff') format('woff'),
         url('../fonts/IranYekan/IRANYekanWebMedium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'IRAN Yekan';
    src: url('../fonts/IranYekan/IRANYekanWebBold.woff2') format('woff2'),
         url('../fonts/IranYekan/IRANYekanWebBold.woff') format('woff'),
         url('../fonts/IranYekan/IRANYekanWebBold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'IRAN Yekan';
    src: url('../fonts/IranYekan/IRANYekanWebLight.woff2') format('woff2'),
         url('../fonts/IranYekan/IRANYekanWebLight.woff') format('woff'),
         url('../fonts/IranYekan/IRANYekanWebLight.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Noto Sans Arabic';
    src: url('../fonts/NotoSansArabic/NotoSansArabic-Regular.woff2') format('woff2'),
         url('../fonts/NotoSansArabic/NotoSansArabic-Regular.woff') format('woff'),
         url('../fonts/NotoSansArabic/NotoSansArabic-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Noto Sans Arabic';
    src: url('../fonts/NotoSansArabic/NotoSansArabic-Medium.woff2') format('woff2'),
         url('../fonts/NotoSansArabic/NotoSansArabic-Medium.woff') format('woff'),
         url('../fonts/NotoSansArabic/NotoSansArabic-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Noto Sans Arabic';
    src: url('../fonts/NotoSansArabic/NotoSansArabic-Bold.woff2') format('woff2'),
         url('../fonts/NotoSansArabic/NotoSansArabic-Bold.woff') format('woff'),
         url('../fonts/NotoSansArabic/NotoSansArabic-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Noto Sans Arabic';
    src: url('../fonts/NotoSansArabic/NotoSansArabic-Light.woff2') format('woff2'),
         url('../fonts/NotoSansArabic/NotoSansArabic-Light.woff') format('woff'),
         url('../fonts/NotoSansArabic/NotoSansArabic-Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

/* Global font family rules - exclude icons */
/* Font family for Persian */
[dir="rtl"] body,
[dir="rtl"] p,
[dir="rtl"] h1,
[dir="rtl"] h2,
[dir="rtl"] h3,
[dir="rtl"] h4,
[dir="rtl"] h5,
[dir="rtl"] h6,
[dir="rtl"] span:not(.fa),
[dir="rtl"] div:not([class*="fa-"]),
[dir="rtl"] td:not([class*="fa-"]),
[dir="rtl"] th:not([class*="fa-"]),
[dir="rtl"] button:not([class*="fa-"]),
[dir="rtl"] a:not([class*="fa-"]) {
    font-family: 'IRAN Yekan', 'Tahoma', 'Arial', sans-serif !important;
}

/* Font family for Arabic */
[lang="ar"] body,
[lang="ar"] p,
[lang="ar"] h1,
[lang="ar"] h2,
[lang="ar"] h3,
[lang="ar"] h4,
[lang="ar"] h5,
[lang="ar"] h6,
[lang="ar"] span:not(.fa),
[lang="ar"] div:not([class*="fa-"]),
[lang="ar"] td:not([class*="fa-"]),
[lang="ar"] th:not([class*="fa-"]),
[lang="ar"] button:not([class*="fa-"]),
[lang="ar"] a:not([class*="fa-"]) {
    font-family: 'Noto Sans Arabic', 'Tahoma', 'Arial', sans-serif !important;
}

/* Font family for other languages */
[dir="ltr"] body,
[dir="ltr"] p,
[dir="ltr"] h1,
[dir="ltr"] h2,
[dir="ltr"] h3,
[dir="ltr"] h4,
[dir="ltr"] h5,
[dir="ltr"] h6,
[dir="ltr"] span:not(.fa),
[dir="ltr"] div:not([class*="fa-"]),
[dir="ltr"] td:not([class*="fa-"]),
[dir="ltr"] th:not([class*="fa-"]),
[dir="ltr"] button:not([class*="fa-"]),
[dir="ltr"] a:not([class*="fa-"]) {
    font-family: 'Segoe UI', 'Roboto', 'Arial', sans-serif !important;
}

/* Keep Font Awesome icons with original font */
.fa,
.fas,
.far,
.fal,
.fab,
[class^="fa-"],
[class*=" fa-"] {
    font-family: "Font Awesome 6 Free", "Font Awesome 6 Pro", "Font Awesome 5 Free", "Font Awesome 5 Pro", FontAwesome !important;
    font-weight: 900 !important;
}

/* Specific font weights */
.font-light {
    font-weight: 300 !important;
}

.font-regular {
    font-weight: 400 !important;
}

.font-medium {
    font-weight: 500 !important;
}

.font-bold {
    font-weight: 700 !important;
}

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

[dir="ltr"] {
    direction: ltr;
    text-align: left;
}