/* ============================================================================
   KO Sans — the app's Arabic typeface.

   Scoped with unicode-range, which is what makes this work app-wide without
   tagging any markup: the browser uses KO Sans only for characters in these
   ranges and falls through to the page's existing stack for everything else.
   That matters because almost none of the Arabic in this app is in the
   templates — it is data (product and supplier names), and plenty of it is
   mixed, e.g. "salux ليفة يابانية". Per-character matching renders "salux" in
   Google Sans and the Arabic run in KO Sans, in the same string.

   To use it, put 'KO Sans' FIRST in a font stack. Being first costs nothing
   for Latin text because unicode-range excludes it from those codepoints.

   Deliberately NOT applied to the wordmark (تدبير), which names 'Kufam'
   inline -- a display face for four letters, not a text face -- and so never
   reaches this font. KO Sans is its fallback, which is the point: if the
   Kufam file is slow or missing, the word still shapes as Arabic.

   url() is relative to this file: inventory/static/inventory/ko-sans.css
   -> inventory/static/inventory/fonts/ko-sans-regular.otf
   ========================================================================= */
@font-face {
    font-family: 'KO Sans';
    src: url('fonts/ko-sans-regular.otf') format('opentype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
    /* Arabic + Supplement + Extended-A/B, Presentation Forms A/B (the shaped
       glyph blocks), Arabic-Indic digits live inside U+0600-06FF, plus the
       maths/ornament blocks so nothing Arabic escapes to a fallback face. */
    unicode-range: U+0600-06FF, U+0750-077F, U+0870-088F, U+08A0-08FF,
                   U+FB50-FDFF, U+FE70-FEFF,
                   U+10E60-10E7E, U+1EC70-1ECBF, U+1ED00-1ED4F, U+1EE00-1EEFF;
}
