/* Self-hosted fonts — no external Google Fonts dependency */

@font-face {
  font-family: "Syne";
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url("/fonts/syne-latin-500-normal.woff2") format("woff2");
}
@font-face {
  font-family: "Syne";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url("/fonts/syne-latin-600-normal.woff2") format("woff2");
}
@font-face {
  font-family: "Syne";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url("/fonts/syne-latin-700-normal.woff2") format("woff2");
}
@font-face {
  font-family: "Syne";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url("/fonts/syne-latin-800-normal.woff2") format("woff2");
}

/* Same Syne files, digits only — Arabic UI numbers match English. */
@font-face {
  font-family: "Syne Numerals";
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url("/fonts/syne-latin-500-normal.woff2") format("woff2");
  unicode-range: U+0030-0039, U+002B, U+002C, U+002D, U+002E, U+0025, U+002F;
}
@font-face {
  font-family: "Syne Numerals";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url("/fonts/syne-latin-600-normal.woff2") format("woff2");
  unicode-range: U+0030-0039, U+002B, U+002C, U+002D, U+002E, U+0025, U+002F;
}
@font-face {
  font-family: "Syne Numerals";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url("/fonts/syne-latin-700-normal.woff2") format("woff2");
  unicode-range: U+0030-0039, U+002B, U+002C, U+002D, U+002E, U+0025, U+002F;
}
@font-face {
  font-family: "Syne Numerals";
  font-style: normal;
  font-display: swap;
  font-weight: 800;
  src: url("/fonts/syne-latin-800-normal.woff2") format("woff2");
  unicode-range: U+0030-0039, U+002B, U+002C, U+002D, U+002E, U+0025, U+002F;
}

@font-face {
  font-family: "DM Sans";
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url("/fonts/dm-sans-latin-400-normal.woff2") format("woff2");
}
@font-face {
  font-family: "DM Sans";
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url("/fonts/dm-sans-latin-500-normal.woff2") format("woff2");
}
@font-face {
  font-family: "DM Sans";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url("/fonts/dm-sans-latin-600-normal.woff2") format("woff2");
}
@font-face {
  font-family: "DM Sans";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url("/fonts/dm-sans-latin-700-normal.woff2") format("woff2");
}

@font-face {
  font-family: "DM Mono";
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url("/fonts/dm-mono-latin-400-normal.woff2") format("woff2");
}
@font-face {
  font-family: "DM Mono";
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url("/fonts/dm-mono-latin-500-normal.woff2") format("woff2");
}

/* Exclude Eastern Arabic digits (U+0660–0669) so 0–9 come from DM Sans. */
@font-face {
  font-family: "IBM Plex Sans Arabic";
  font-style: normal;
  font-display: swap;
  font-weight: 300;
  src: url("/fonts/ibm-plex-sans-arabic-arabic-300-normal.woff2") format("woff2");
  unicode-range: U+0600-065F, U+066A-06FF, U+0750-077F, U+08A0-08FF, U+FB50-FDFF, U+FE70-FEFF;
}
@font-face {
  font-family: "IBM Plex Sans Arabic";
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url("/fonts/ibm-plex-sans-arabic-arabic-400-normal.woff2") format("woff2");
  unicode-range: U+0600-065F, U+066A-06FF, U+0750-077F, U+08A0-08FF, U+FB50-FDFF, U+FE70-FEFF;
}
@font-face {
  font-family: "IBM Plex Sans Arabic";
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url("/fonts/ibm-plex-sans-arabic-arabic-500-normal.woff2") format("woff2");
  unicode-range: U+0600-065F, U+066A-06FF, U+0750-077F, U+08A0-08FF, U+FB50-FDFF, U+FE70-FEFF;
}
@font-face {
  font-family: "IBM Plex Sans Arabic";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url("/fonts/ibm-plex-sans-arabic-arabic-600-normal.woff2") format("woff2");
  unicode-range: U+0600-065F, U+066A-06FF, U+0750-077F, U+08A0-08FF, U+FB50-FDFF, U+FE70-FEFF;
}
@font-face {
  font-family: "IBM Plex Sans Arabic";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url("/fonts/ibm-plex-sans-arabic-arabic-700-normal.woff2") format("woff2");
  unicode-range: U+0600-065F, U+066A-06FF, U+0750-077F, U+08A0-08FF, U+FB50-FDFF, U+FE70-FEFF;
}
