@font-face {
    font-family: 'IRANSansXV';
    src: url('/fonts/iransans/IRANSansXV.woff2') format('woff2-variations'),
        url('/fonts/iransans/IRANSansXV.woff') format('woff-variations');
    font-weight: 100 1000;
    font-display: swap;
}

@font-face {
    font-family: 'IRANSansX';
    src: url('/fonts/iransans/staticfonts/IRANSansX-Regular.woff') format('woff');
    font-weight: 400;
    font-display: swap;
}

@font-face {
    font-family: 'IRANSansX';
    src: url('/fonts/iransans/staticfonts/IRANSansX-Bold.woff') format('woff');
    font-weight: 700;
    font-display: swap;
}

@font-face {
    font-family: 'IRANSansXF';
    src: url('../fonts/iransans/webfonts/IRANSansXFaNum-Regular.woff2') format('woff2');
    font-weight: 700;
    font-display: swap;
}

body {
    font-family: IRANSansXV, IRANSansX, IRANSansXF !important;
    font-weight: 300;
    background-color: #E2E2E2;
    margin: 0;
}

* {
    font-family: IRANSansXV, IRANSansX, IRANSansXF !important;
    font-variation-settings: "DOTS"4;
}

/* ── WHICH DIGITS THE FONT DRAWS ────────────────────────────────────────────────────────
   `ss02` is IRANSansX's stylistic set that SUBSTITUTES PERSIAN GLYPHS FOR LATIN 0-9. It
   used to be applied unconditionally to `*`, which meant the font had the last word on the
   digit system: a page holding the ASCII string "1,853,060" still rendered «۱٬۸۵۳٬۰۶۰», and
   no amount of correctness in base/decimal.js could show a Latin digit on screen.

   It is now keyed on `<html data-numerals>`, written by the no-flash bootstrap in index.html
   and kept current by base/numerals.js. The default stays ON, so Persian is byte-identical
   to before and there is nothing to flash.

   Note this only affects ASCII code points. Real Persian digits (U+06F0..U+06F9), which is
   what the formatter emits in Persian mode, are unaffected either way — so with the feature
   off, any ASCII digit that never went through the formatter becomes VISIBLE as a Latin one
   instead of being silently disguised. That is a feature: it is how a bypass gets noticed. */
*,
html[data-numerals="fa"] * {
    font-feature-settings: "ss02" !important;
    -moz-font-feature-settings: "ss02" !important;
    -webkit-font-feature-settings: "ss02" !important;
}

html[data-numerals="en"],
html[data-numerals="en"] * {
    font-feature-settings: normal !important;
    -moz-font-feature-settings: normal !important;
    -webkit-font-feature-settings: normal !important;
}