/* -----------------------------------------------------------
   JetBrains Mono — Self-hosted, Full Feature Coverage
   Path: /site-v2/fonts/jetbrains-mono/webfonts/
   Covers: Variable (wght) + Static faces, Normal & Italic (100–800)
   Enables: programming ligatures, slashed zero, tabular nums
----------------------------------------------------------- */

/* ===== 1) VARIABLE FONTS (preferred if present) ===== */
/* Normal (wght 100–800) */
@font-face {
    font-family: "JetBrains Mono";
    src:
        local("JetBrains Mono"),
        local("JetBrainsMono-Regular"),
        url("/site-v2/fonts/jetbrains-mono/variable/JetBrainsMono[wght].ttf") format("truetype"),
        url("/site-v2/fonts/jetbrains-mono/webfonts/JetBrainsMono-Regular.woff2") format("woff2");
    font-weight: 100 800;
    font-style: normal;
    font-display: swap;
    font-synthesis-weight: none;
    font-synthesis-style: none;
}

/* Italic (wght 100–800) */
@font-face {
    font-family: "JetBrains Mono";
    src:
        local("JetBrains Mono"),
        local("JetBrainsMono-Italic"),
        url("/site-v2/fonts/jetbrains-mono/variable/JetBrainsMono-Italic[wght].ttf") format("truetype"),
        url("/site-v2/fonts/jetbrains-mono/webfonts/JetBrainsMono-Italic.woff2") format("woff2");
    font-weight: 100 800;
    font-style: italic;
    font-display: swap;
    font-synthesis-weight: none;
    font-synthesis-style: none;
}

/* ===== 2) STATIC FALLBACKS (one per weight & style) ===== */
/* 100 Thin */
@font-face {
    font-family: "JetBrains Mono";
    src:
        local("JetBrains Mono Thin"),
        local("JetBrainsMono-Thin"),
        url("/site-v2/fonts/jetbrains-mono/webfonts/JetBrainsMono-Thin.woff2") format("woff2");
    font-weight: 100;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "JetBrains Mono";
    src:
        local("JetBrains Mono Thin Italic"),
        local("JetBrainsMono-ThinItalic"),
        url("/site-v2/fonts/jetbrains-mono/webfonts/JetBrainsMono-ThinItalic.woff2") format("woff2");
    font-weight: 100;
    font-style: italic;
    font-display: swap;
}

/* 200 ExtraLight */
@font-face {
    font-family: "JetBrains Mono";
    src:
        local("JetBrains Mono ExtraLight"),
        local("JetBrainsMono-ExtraLight"),
        url("/site-v2/fonts/jetbrains-mono/webfonts/JetBrainsMono-ExtraLight.woff2") format("woff2");
    font-weight: 200;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "JetBrains Mono";
    src:
        local("JetBrains Mono ExtraLight Italic"),
        local("JetBrainsMono-ExtraLightItalic"),
        url("/site-v2/fonts/jetbrains-mono/webfonts/JetBrainsMono-ExtraLightItalic.woff2") format("woff2");
    font-weight: 200;
    font-style: italic;
    font-display: swap;
}

/* 300 Light */
@font-face {
    font-family: "JetBrains Mono";
    src:
        local("JetBrains Mono Light"),
        local("JetBrainsMono-Light"),
        url("/site-v2/fonts/jetbrains-mono/webfonts/JetBrainsMono-Light.woff2") format("woff2");
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "JetBrains Mono";
    src:
        local("JetBrains Mono Light Italic"),
        local("JetBrainsMono-LightItalic"),
        url("/site-v2/fonts/jetbrains-mono/webfonts/JetBrainsMono-LightItalic.woff2") format("woff2");
    font-weight: 300;
    font-style: italic;
    font-display: swap;
}

/* 400 Regular */
@font-face {
    font-family: "JetBrains Mono";
    src:
        local("JetBrains Mono"),
        local("JetBrainsMono-Regular"),
        url("/site-v2/fonts/jetbrains-mono/webfonts/JetBrainsMono-Regular.woff2") format("woff2");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "JetBrains Mono";
    src:
        local("JetBrains Mono Italic"),
        local("JetBrainsMono-Italic"),
        url("/site-v2/fonts/jetbrains-mono/webfonts/JetBrainsMono-Italic.woff2") format("woff2");
    font-weight: 400;
    font-style: italic;
    font-display: swap;
}

/* 500 Medium */
@font-face {
    font-family: "JetBrains Mono";
    src:
        local("JetBrains Mono Medium"),
        local("JetBrainsMono-Medium"),
        url("/site-v2/fonts/jetbrains-mono/webfonts/JetBrainsMono-Medium.woff2") format("woff2");
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "JetBrains Mono";
    src:
        local("JetBrains Mono Medium Italic"),
        local("JetBrainsMono-MediumItalic"),
        url("/site-v2/fonts/jetbrains-mono/webfonts/JetBrainsMono-MediumItalic.woff2") format("woff2");
    font-weight: 500;
    font-style: italic;
    font-display: swap;
}

/* 600 SemiBold */
@font-face {
    font-family: "JetBrains Mono";
    src:
        local("JetBrains Mono SemiBold"),
        local("JetBrainsMono-SemiBold"),
        url("/site-v2/fonts/jetbrains-mono/webfonts/JetBrainsMono-SemiBold.woff2") format("woff2");
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "JetBrains Mono";
    src:
        local("JetBrains Mono SemiBold Italic"),
        local("JetBrainsMono-SemiBoldItalic"),
        url("/site-v2/fonts/jetbrains-mono/webfonts/JetBrainsMono-SemiBoldItalic.woff2") format("woff2");
    font-weight: 600;
    font-style: italic;
    font-display: swap;
}

/* 700 Bold */
@font-face {
    font-family: "JetBrains Mono";
    src:
        local("JetBrains Mono Bold"),
        local("JetBrainsMono-Bold"),
        url("/site-v2/fonts/jetbrains-mono/webfonts/JetBrainsMono-Bold.woff2") format("woff2");
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "JetBrains Mono";
    src:
        local("JetBrains Mono Bold Italic"),
        local("JetBrainsMono-BoldItalic"),
        url("/site-v2/fonts/jetbrains-mono/webfonts/JetBrainsMono-BoldItalic.woff2") format("woff2");
    font-weight: 700;
    font-style: italic;
    font-display: swap;
}

/* 800 ExtraBold */
@font-face {
    font-family: "JetBrains Mono";
    src:
        local("JetBrains Mono ExtraBold"),
        local("JetBrainsMono-ExtraBold"),
        url("/site-v2/fonts/jetbrains-mono/webfonts/JetBrainsMono-ExtraBold.woff2") format("woff2");
    font-weight: 800;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "JetBrains Mono";
    src:
        local("JetBrains Mono ExtraBold Italic"),
        local("JetBrainsMono-ExtraBoldItalic"),
        url("/site-v2/fonts/jetbrains-mono/webfonts/JetBrainsMono-ExtraBoldItalic.woff2") format("woff2");
        font-weight: 800;
    font-style: italic;
    font-display: swap;
}

/* ===== 3) RECOMMENDED USAGE HELPERS ===== */

/* خانواده آماده‌مصرف (با fallback‌های سیستمی) */
:root {
    --font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}

/* استفاده‌ی پیش‌فرض برای کدنویسی + ویژگی‌های OpenType مفید */
code, kbd, pre, samp, .jb-mono {
    font-family: var(--font-mono);
    /* Ligatures & alternates beneficial for code */
    font-variant-ligatures: contextual common-ligatures discretionary-ligatures;
    font-variant-numeric: tabular-nums slashed-zero;
    /* Explicit OT features for broader support */
    font-feature-settings: "liga" 1, "calt" 1, "dlig" 1, "tnum" 1, "zero" 1;
    /* Prevent synthetic styles for crisp glyphs */
    font-synthesis-weight: none;
    font-synthesis-style: none;
}

/* در صورت نیاز به غیرفعال‌کردن لیگچرها در برخی بخش‌ها */
.jb-no-liga {
    font-variant-ligatures: none;
    font-feature-settings: "liga" 0, "calt" 0, "dlig" 0;
}

/* نمونه استفاده با Variable Fonts (اختیاری):
   شما می‌توانید وزن را به‌صورت پیوسته تنظیم کنید. */
.jb-wght-450 { font-weight: 450; }
.jb-wght-350 { font-weight: 350; }
