/* Font Awesome Icons - Version 4 */
@font-face {
    font-family: 'FontAwesome';
    src: url('../fonts/fontawesome-webfont.eot?v=4.7.0');
    src: url('../fonts/fontawesome-webfont.eot?#iefix&v=4.7.0') format('embedded-opentype'),
         url('../fonts/fontawesome-webfont.woff2?v=4.7.0') format('woff2'),
         url('../fonts/fontawesome-webfont.woff?v=4.7.0') format('woff'),
         url('../fonts/fontawesome-webfont.ttf?v=4.7.0') format('truetype'),
         url('../fonts/fontawesome-webfont.svg?v=4.7.0#fontawesomeregular') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: block;
}

/* Font Awesome Icons - Version 5 */
@font-face {
    font-family: 'Font Awesome 5 Brands';
    font-style: normal;
    font-weight: 400;
    font-display: block;
    src: url('../vendors/font_awesome/webfonts/fa-brands-400.woff2') format('woff2'),
         url('../vendors/font_awesome/webfonts/fa-brands-400.woff') format('woff'),
         url('../vendors/font_awesome/webfonts/fa-brands-400.ttf') format('truetype');
}

@font-face {
    font-family: 'Font Awesome 5 Free';
    font-style: normal;
    font-weight: 400;
    font-display: block;
    src: url('../vendors/font_awesome/webfonts/fa-regular-400.woff2') format('woff2'),
         url('../vendors/font_awesome/webfonts/fa-regular-400.woff') format('woff'),
         url('../vendors/font_awesome/webfonts/fa-regular-400.ttf') format('truetype');
}

@font-face {
    font-family: 'Font Awesome 5 Free';
    font-style: normal;
    font-weight: 900;
    font-display: block;
    src: url('../vendors/font_awesome/webfonts/fa-solid-900.woff2') format('woff2'),
         url('../vendors/font_awesome/webfonts/fa-solid-900.woff') format('woff'),
         url('../vendors/font_awesome/webfonts/fa-solid-900.ttf') format('truetype');
}

/* Flaticon Icons */
@font-face {
    font-family: 'Flaticon';
    src: url('../fonts/Flaticon.eot');
    src: url('../fonts/Flaticon.eot?#iefix') format('embedded-opentype'),
         url('../fonts/Flaticon.woff2') format('woff2'),
         url('../fonts/Flaticon.woff') format('woff'),
         url('../fonts/Flaticon.ttf') format('truetype'),
         url('../fonts/Flaticon.svg#Flaticon') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: block;
}

/* Themify Icons */
@font-face {
    font-family: 'themify';
    src: url('../fonts/themify.eot');
    src: url('../fonts/themify.eot?#iefix') format('embedded-opentype'),
         url('../fonts/themify.woff') format('woff'),
         url('../fonts/themify.ttf') format('truetype'),
         url('../fonts/themify.svg#themify') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: block;
}

/* Pinyon Script Font */
@font-face {
    font-family: 'Pinyon Script';
    src: url('../fonts/pinyonscript-regular-webfont.woff2') format('woff2'),
         url('../fonts/pinyonscript-regular-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

/* FullCalendar Icons (fcicons) */
@font-face {
    font-family: "fcicons";
    src: url("data:application/x-font-ttf;charset=utf-8;base64,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") format("truetype");
    font-weight: normal;
    font-style: normal;
    font-display: block;
}

/* IranYekan Font Family for Persian Language */
@font-face {
    font-family: 'IranYekan';
    src: url('../fonts/iranyekan/iranyekanwebthinfanum.woff') format('woff');
    font-weight: 100;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'IranYekan';
    src: url('../fonts/iranyekan/iranyekanweblightfanum.woff') format('woff');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'IranYekan';
    src: url('../fonts/iranyekan/iranyekanwebregularfanum.woff') format('woff');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'IranYekan';
    src: url('../fonts/iranyekan/iranyekanwebmediumfanum.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'IranYekan';
    src: url('../fonts/iranyekan/iranyekanwebboldfanum.woff') format('woff');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'IranYekan';
    src: url('../fonts/iranyekan/iranyekanwebextraboldfanum.woff') format('woff');
    font-weight: 800;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'IranYekan';
    src: url('../fonts/iranyekan/iranyekanwebblackfanum.woff') format('woff');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'IranYekan';
    src: url('../fonts/iranyekan/iranyekanwebextrablackfanum.woff') format('woff');
    font-weight: 950;
    font-style: normal;
    font-display: swap;
}

/* Apply IranYekan font to all elements when Persian language is active */
.rtl.persian-font,
html[lang="fa"].rtl,
html[dir="rtl"][lang="fa"] {
    font-family: 'IranYekan', 'Tahoma', 'Arial', sans-serif !important;
}

/* Apply font to text elements only, excluding icons */
.rtl.persian-font *,
html[lang="fa"].rtl *,
html[dir="rtl"][lang="fa"] * {
    font-family: 'IranYekan', 'Tahoma', 'Arial', sans-serif !important;
}

/* Font Awesome Icons - Version 4 */
.rtl.persian-font [class*="fa"]:not([class*="fab"]):not([class*="fas"]):not([class*="far"]),
html[lang="fa"].rtl [class*="fa"]:not([class*="fab"]):not([class*="fas"]):not([class*="far"]),
html[dir="rtl"][lang="fa"] [class*="fa"]:not([class*="fab"]):not([class*="fas"]):not([class*="far"]) {
    font-family: 'FontAwesome' !important;
}

/* Font Awesome Icons - Version 5 */
.rtl.persian-font .fab,
html[lang="fa"].rtl .fab,
html[dir="rtl"][lang="fa"] .fab {
    font-family: 'Font Awesome 5 Brands' !important;
    font-weight: 400 !important;
}

.rtl.persian-font .fas,
html[lang="fa"].rtl .fas,
html[dir="rtl"][lang="fa"] .fas {
    font-family: 'Font Awesome 5 Free' !important;
    font-weight: 900 !important;
}

.rtl.persian-font .far,
html[lang="fa"].rtl .far,
html[dir="rtl"][lang="fa"] .far {
    font-family: 'Font Awesome 5 Free' !important;
    font-weight: 400 !important;
}

/* Flaticon Icons - Force correct font family */
.rtl.persian-font [class*="flaticon"],
html[lang="fa"].rtl [class*="flaticon"],
html[dir="rtl"][lang="fa"] [class*="flaticon"] {
    font-family: 'Flaticon' !important;
}

/* Themify Icons - Force correct font family */
.rtl.persian-font [class*="ti-"],
html[lang="fa"].rtl [class*="ti-"],
html[dir="rtl"][lang="fa"] [class*="ti-"] {
    font-family: 'themify' !important;
}

/* FullCalendar Icons - Force correct font family */
.rtl.persian-font .fc-icon,
.rtl.persian-font [class*="fc-icon"],
html[lang="fa"].rtl .fc-icon,
html[lang="fa"].rtl [class*="fc-icon"],
html[dir="rtl"][lang="fa"] .fc-icon,
html[dir="rtl"][lang="fa"] [class*="fc-icon"] {
    font-family: 'fcicons' !important;
}



/* Specific elements that might need font override */
.rtl.persian-font h1,
.rtl.persian-font h2,
.rtl.persian-font h3,
.rtl.persian-font h4,
.rtl.persian-font h5,
.rtl.persian-font h6,
html[lang="fa"].rtl h1,
html[lang="fa"].rtl h2,
html[lang="fa"].rtl h3,
html[lang="fa"].rtl h4,
html[lang="fa"].rtl h5,
html[lang="fa"].rtl h6,
html[dir="rtl"][lang="fa"] h1,
html[dir="rtl"][lang="fa"] h2,
html[dir="rtl"][lang="fa"] h3,
html[dir="rtl"][lang="fa"] h4,
html[dir="rtl"][lang="fa"] h5,
html[dir="rtl"][lang="fa"] h6 {
    font-family: 'IranYekan', 'Tahoma', 'Arial', sans-serif !important;
    font-weight: 700;
}

.rtl.persian-font p,
.rtl.persian-font span,
.rtl.persian-font div,
.rtl.persian-font a,
.rtl.persian-font button,
.rtl.persian-font input,
.rtl.persian-font textarea,
.rtl.persian-font select,
html[lang="fa"].rtl p,
html[lang="fa"].rtl span,
html[lang="fa"].rtl div,
html[lang="fa"].rtl a,
html[lang="fa"].rtl button,
html[lang="fa"].rtl input,
html[lang="fa"].rtl textarea,
html[lang="fa"].rtl select,
html[dir="rtl"][lang="fa"] p,
html[dir="rtl"][lang="fa"] span,
html[dir="rtl"][lang="fa"] div,
html[dir="rtl"][lang="fa"] a,
html[dir="rtl"][lang="fa"] button,
html[dir="rtl"][lang="fa"] input,
html[dir="rtl"][lang="fa"] textarea,
html[dir="rtl"][lang="fa"] select {
    font-family: 'IranYekan', 'Tahoma', 'Arial', sans-serif !important;
}

/* Navigation and menu items */
.rtl.persian-font .navbar,
.rtl.persian-font .nav,
.rtl.persian-font .menu,
html[lang="fa"].rtl .navbar,
html[lang="fa"].rtl .nav,
html[lang="fa"].rtl .menu,
html[dir="rtl"][lang="fa"] .navbar,
html[dir="rtl"][lang="fa"] .nav,
html[dir="rtl"][lang="fa"] .menu {
    font-family: 'IranYekan', 'Tahoma', 'Arial', sans-serif !important;
}

/* Table content */
.rtl.persian-font table,
.rtl.persian-font th,
.rtl.persian-font td,
html[lang="fa"].rtl table,
html[lang="fa"].rtl th,
html[lang="fa"].rtl td,
html[dir="rtl"][lang="fa"] table,
html[dir="rtl"][lang="fa"] th,
html[dir="rtl"][lang="fa"] td {
    font-family: 'IranYekan', 'Tahoma', 'Arial', sans-serif !important;
}

/* Form elements */
.rtl.persian-font .form-control,
.rtl.persian-font .form-group,
.rtl.persian-font .input-group,
html[lang="fa"].rtl .form-control,
html[lang="fa"].rtl .form-group,
html[lang="fa"].rtl .input-group,
html[dir="rtl"][lang="fa"] .form-control,
html[dir="rtl"][lang="fa"] .form-group,
html[dir="rtl"][lang="fa"] .input-group {
    font-family: 'IranYekan', 'Tahoma', 'Arial', sans-serif !important;
}

/* Sidebar and navigation */
.rtl.persian-font .sidebar,
.rtl.persian-font .main-menu,
html[lang="fa"].rtl .sidebar,
html[lang="fa"].rtl .main-menu,
html[dir="rtl"][lang="fa"] .sidebar,
html[dir="rtl"][lang="fa"] .main-menu {
    font-family: 'IranYekan', 'Tahoma', 'Arial', sans-serif !important;
}

/* Card and panel content */
.rtl.persian-font .card,
.rtl.persian-font .panel,
.rtl.persian-font .widget,
html[lang="fa"].rtl .card,
html[lang="fa"].rtl .panel,
html[lang="fa"].rtl .widget,
html[dir="rtl"][lang="fa"] .card,
html[dir="rtl"][lang="fa"] .panel,
html[dir="rtl"][lang="fa"] .widget {
    font-family: 'IranYekan', 'Tahoma', 'Arial', sans-serif !important;
}

/* Button text */
.rtl.persian-font .btn,
html[lang="fa"].rtl .btn,
html[dir="rtl"][lang="fa"] .btn {
    font-family: 'IranYekan', 'Tahoma', 'Arial', sans-serif !important;
}

/* Modal and popup content */
.rtl.persian-font .modal,
.rtl.persian-font .popup,
html[lang="fa"].rtl .modal,
html[lang="fa"].rtl .popup,
html[dir="rtl"][lang="fa"] .modal,
html[dir="rtl"][lang="fa"] .popup {
    font-family: 'IranYekan', 'Tahoma', 'Arial', sans-serif !important;
}

/* Toast notifications */
.rtl.persian-font .toast,
.rtl.persian-font .alert,
html[lang="fa"].rtl .toast,
html[lang="fa"].rtl .alert,
html[dir="rtl"][lang="fa"] .toast,
html[dir="rtl"][lang="fa"] .alert {
    font-family: 'IranYekan', 'Tahoma', 'Arial', sans-serif !important;
}

/* DataTables */
.rtl.persian-font .dataTables_wrapper,
html[lang="fa"].rtl .dataTables_wrapper,
html[dir="rtl"][lang="fa"] .dataTables_wrapper {
    font-family: 'IranYekan', 'Tahoma', 'Arial', sans-serif !important;
}

/* Ensure proper font rendering for Persian text */
.rtl.persian-font,
html[lang="fa"].rtl,
html[dir="rtl"][lang="fa"] {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}
