/* ============================================================
   Al Butter — self-hosted fonts.

   Palestine — the Arabic face. Single weight (Regular).
   Rubik     — Latin display (900) + body (400/500/700), and the
               Arabic fallback beneath Palestine.
   Baloo 2 — Accent (800). Games segment and stickers ONLY.
   DM Mono — Labels (11px, .2em tracking).

   All are variable woff2 files, so one file per subset covers
   every weight. unicode-range keeps English pages from ever
   downloading the Arabic subset, and vice versa.
   ============================================================ */

/* ---- Rubik: latin ---------------------------------------- */
@font-face {
  font-family: "Rubik";
  src: url("/assets/fonts/rubik-latin.99ec7ccb.woff2") format("woff2");
  font-weight: 300 900;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
    U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191,
    U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ---- Rubik: latin-ext ------------------------------------ */
@font-face {
  font-family: "Rubik";
  src: url("/assets/fonts/rubik-latin-ext.b11446f4.woff2") format("woff2");
  font-weight: 300 900;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0100-02AF, U+0304-0305, U+0308, U+0329, U+1E00-1E9F,
    U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F,
    U+A720-A7FF;
}

/* ---- Palestine: the Arabic face --------------------------
   Scoped by unicode-range to Arabic only, so Latin never touches it —
   the family stack lists Palestine first and Rubik second, and the
   browser resolves each codepoint to whichever face declares it.

   SINGLE WEIGHT. The file is Regular (usWeightClass 400) and there is
   no bold cut, so the weight range is pinned to 400 and synthesis is
   disabled in tokens.css. Faux-bolding Arabic thickens the connected
   strokes until they merge, which is worse than an honest Regular.

   Rubik Arabic is deliberately kept below as a fallback: Palestine
   carries 73 Arabic letters plus presentation forms, and anything it
   does not cover falls through instead of tofu. */
@font-face {
  font-family: "Palestine";
  src: url("/assets/fonts/palestine-arabic.d1509802.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891,
    U+0898-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41,
    U+FB50-FDFF, U+FE70-FEFF;
}

/* ---- Rubik: arabic — fallback beneath Palestine ----------- */
@font-face {
  font-family: "Rubik";
  src: url("/assets/fonts/rubik-arabic.fa1623ef.woff2") format("woff2");
  font-weight: 300 900;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891,
    U+0898-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41,
    U+FB50-FDFF, U+FE70-FEFF;
}

/* ---- Baloo 2: latin — games segment only ----------------- */
@font-face {
  font-family: "Baloo 2";
  src: url("/assets/fonts/baloo2-latin.2e9420db.woff2") format("woff2");
  font-weight: 400 800;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
    U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191,
    U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ---- DM Mono: latin — labels ----------------------------- */
@font-face {
  font-family: "DM Mono";
  src: url("/assets/fonts/dmmono-latin.0e263db5.woff2") format("woff2");
  font-weight: 400 500;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
    U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191,
    U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
