/* ============================================================
   assets/css/font-library.css
   کتابخانهٔ فونت‌های فارسی — ۲۳ خانواده، ۲۸ وزن/سبک
   ------------------------------------------------------------
   همهٔ فایل‌ها لوکال‌اند (assets/fonts/<family>/) و بدون اینترنت
   هم کار می‌کنند — شرط پذیرش در ژاکت و راست‌چین.
   هیچ فونتی تا وقتی واقعاً استفاده نشود دانلود نمی‌شود
   (font-display: swap + بارگذاری تنبل مرورگر).

   نحوهٔ استفاده — کلاس آماده روی هر عنصر:
     <h2 class="ff-lalezar-plus">عنوان تیتر</h2>
     <p class="ff-ravi">متن با فونت راوی</p>

   یا با متغیر توکنی (برای استفادهٔ سراسری):
     .site-title { font-family: var(--font-lalezar-plus); }
   ============================================================ */

:root {
  --font-aisa: "Aisa", var(--font-sans, system-ui);
  --font-almas: "Almas", var(--font-sans, system-ui);
  --font-tiam: "Tiam", var(--font-sans, system-ui);
  --font-joghin: "Joghin", var(--font-sans, system-ui);
  --font-hekayat: "Hekayat", var(--font-sans, system-ui);
  --font-hekayat-distorted: "Hekayat Distorted", var(--font-sans, system-ui);
  --font-darya: "Darya", var(--font-sans, system-ui);
  --font-delbar: "Delbar", var(--font-sans, system-ui);
  --font-rastin: "Rastin", var(--font-sans, system-ui);
  --font-rastin-plus-rectangle: "Rastin Plus Rectangle", var(--font-sans, system-ui);
  --font-rastin-plus-circle: "Rastin Plus Circle", var(--font-sans, system-ui);
  --font-rastin-plus-line: "Rastin Plus Line", var(--font-sans, system-ui);
  --font-ravi: "Ravi", var(--font-sans, system-ui);
  --font-sarvenaz: "Sarvenaz", var(--font-sans, system-ui);
  --font-sandal: "Sandal", var(--font-sans, system-ui);
  --font-farkhonde: "Farkhonde", var(--font-sans, system-ui);
  --font-ghasedak: "Ghasedak", var(--font-sans, system-ui);
  --font-ghaf: "Ghaf", var(--font-sans, system-ui);
  --font-lalezar-plus: "Lalezar Plus", var(--font-sans, system-ui);
  --font-lalezar-plus-circle: "Lalezar Plus Circle", var(--font-sans, system-ui);
  --font-lalezar-plus-grunge: "Lalezar Plus Grunge", var(--font-sans, system-ui);
  --font-nozha: "Nozha", var(--font-sans, system-ui);
  --font-nozha2: "Nozha2", var(--font-sans, system-ui);
  --font-hamishe: "Hamishe", var(--font-sans, system-ui);
  --font-vazir: "Vazir", var(--font-sans, system-ui);
  --font-cheshmak: "Cheshmak", var(--font-sans, system-ui);
  --font-craft: "Craft", var(--font-sans, system-ui);
  --font-koodak: "Koodak", var(--font-sans, system-ui);
}

/* آیسا — Aisa */
@font-face {
  font-family: "Aisa";
  src: url("../fonts/aisa/aisa-bold.otf") format("opentype"),
       url("../fonts/aisa/aisa-bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

/* الماس — Almas */
@font-face {
  font-family: "Almas";
  src: url("../fonts/almas/almas-bold.otf") format("opentype"),
       url("../fonts/almas/almas-bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

/* تیام (قلم‌مو) — Tiam */
@font-face {
  font-family: "Tiam";
  src: url("../fonts/tiam/tiam-brush.otf") format("opentype"),
       url("../fonts/tiam/tiam-brush.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* جوقین — Joghin */
@font-face {
  font-family: "Joghin";
  src: url("../fonts/joghin/joghin.otf") format("opentype"),
       url("../fonts/joghin/joghin.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* حکایت — Hekayat */
@font-face {
  font-family: "Hekayat";
  src: url("../fonts/hekayat/hekayat-bold.otf") format("opentype"),
       url("../fonts/hekayat/hekayat-bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

/* حکایت موج‌دار — Hekayat Distorted */
@font-face {
  font-family: "Hekayat Distorted";
  src: url("../fonts/hekayat/hekayat-distorted.otf") format("opentype"),
       url("../fonts/hekayat/hekayat-distorted.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* دریا — Darya */
@font-face {
  font-family: "Darya";
  src: url("../fonts/darya/darya-bold.otf") format("opentype"),
       url("../fonts/darya/darya-bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

/* دلبر — Delbar */
@font-face {
  font-family: "Delbar";
  src: url("../fonts/delbar/delbar-bold.otf") format("opentype"),
       url("../fonts/delbar/delbar-bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

/* راستین — Rastin */
@font-face {
  font-family: "Rastin";
  src: url("../fonts/rastin/rastin-bold.otf") format("opentype"),
       url("../fonts/rastin/rastin-bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

/* راستین پلاس مستطیل — Rastin Plus Rectangle */
@font-face {
  font-family: "Rastin Plus Rectangle";
  src: url("../fonts/rastin-plus/rastin-plus-rectangle.otf") format("opentype"),
       url("../fonts/rastin-plus/rastin-plus-rectangle.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* راستین پلاس دایره — Rastin Plus Circle */
@font-face {
  font-family: "Rastin Plus Circle";
  src: url("../fonts/rastin-plus/rastin-plus-circle.otf") format("opentype"),
       url("../fonts/rastin-plus/rastin-plus-circle.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* راستین پلاس خط — Rastin Plus Line */
@font-face {
  font-family: "Rastin Plus Line";
  src: url("../fonts/rastin-plus/rastin-plus-line.otf") format("opentype"),
       url("../fonts/rastin-plus/rastin-plus-line.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* راوی — Ravi */
@font-face {
  font-family: "Ravi";
  src: url("../fonts/ravi/ravi-regular.otf") format("opentype"),
       url("../fonts/ravi/ravi-regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* سروناز — Sarvenaz */
@font-face {
  font-family: "Sarvenaz";
  src: url("../fonts/sarvenaz/sarvenaz.otf") format("opentype"),
       url("../fonts/sarvenaz/sarvenaz.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* صندل — Sandal */
@font-face {
  font-family: "Sandal";
  src: url("../fonts/sandal/sandal-regular.otf") format("opentype"),
       url("../fonts/sandal/sandal-regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* فرخنده — Farkhonde */
@font-face {
  font-family: "Farkhonde";
  src: url("../fonts/farkhonde/farkhonde-bold.otf") format("opentype"),
       url("../fonts/farkhonde/farkhonde-bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

/* قاصدک — Ghasedak */
@font-face {
  font-family: "Ghasedak";
  src: url("../fonts/ghasedak/ghasedak-bold.otf") format("opentype"),
       url("../fonts/ghasedak/ghasedak-bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

/* قاف — Ghaf */
@font-face {
  font-family: "Ghaf";
  src: url("../fonts/ghaf/ghaf-bold.otf") format("opentype"),
       url("../fonts/ghaf/ghaf-bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

/* لاله‌زار پلاس — Lalezar Plus */
@font-face {
  font-family: "Lalezar Plus";
  src: url("../fonts/lalezar-plus/lalezar-plus.otf") format("opentype"),
       url("../fonts/lalezar-plus/lalezar-plus.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* لاله‌زار پلاس دایره — Lalezar Plus Circle */
@font-face {
  font-family: "Lalezar Plus Circle";
  src: url("../fonts/lalezar-plus/lalezar-plus-circle.otf") format("opentype"),
       url("../fonts/lalezar-plus/lalezar-plus-circle.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* لاله‌زار پلاس گرانج — Lalezar Plus Grunge */
@font-face {
  font-family: "Lalezar Plus Grunge";
  src: url("../fonts/lalezar-plus/lalezar-plus-grunge.otf") format("opentype"),
       url("../fonts/lalezar-plus/lalezar-plus-grunge.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* نوژا — Nozha */
@font-face {
  font-family: "Nozha";
  src: url("../fonts/nozha/nozha-regular.otf") format("opentype"),
       url("../fonts/nozha/nozha-regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* نوژا ۲ — Nozha2 */
@font-face {
  font-family: "Nozha2";
  src: url("../fonts/nozha2/nozha2-bold.otf") format("opentype"),
       url("../fonts/nozha2/nozha2-bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

/* همیشه — Hamishe */
@font-face {
  font-family: "Hamishe";
  src: url("../fonts/hamishe/hamishe-regular.otf") format("opentype"),
       url("../fonts/hamishe/hamishe-regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Hamishe";
  src: url("../fonts/hamishe/hamishe-bold.otf") format("opentype"),
       url("../fonts/hamishe/hamishe-bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

/* وزیر (نسخهٔ کلاسیک) — Vazir */
@font-face {
  font-family: "Vazir";
  src: url("../fonts/vazir/vazir-thin.woff2") format("woff2");
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Vazir";
  src: url("../fonts/vazir/vazir-light.woff2") format("woff2");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Vazir";
  src: url("../fonts/vazir/vazir-regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Vazir";
  src: url("../fonts/vazir/vazir-medium.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Vazir";
  src: url("../fonts/vazir/vazir-bold.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

/* چشمک — Cheshmak */
@font-face {
  font-family: "Cheshmak";
  src: url("../fonts/cheshmak/cheshmak.otf") format("opentype"),
       url("../fonts/cheshmak/cheshmak.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* کرفت — Craft */
@font-face {
  font-family: "Craft";
  src: url("../fonts/craft/craft-ultra-black.otf") format("opentype"),
       url("../fonts/craft/craft-ultra-black.ttf") format("truetype");
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}

/* کودک — Koodak */
@font-face {
  font-family: "Koodak";
  src: url("../fonts/koodak/koodak-bold.otf") format("opentype"),
       url("../fonts/koodak/koodak-bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

/* ------------------------------------------------------------
   کلاس‌های آماده — ff-<name>
   ------------------------------------------------------------ */
.ff-aisa { font-family: "Aisa", "Vazirmatn", system-ui, sans-serif; }
.ff-almas { font-family: "Almas", "Vazirmatn", system-ui, sans-serif; }
.ff-tiam { font-family: "Tiam", "Vazirmatn", system-ui, sans-serif; }
.ff-joghin { font-family: "Joghin", "Vazirmatn", system-ui, sans-serif; }
.ff-hekayat { font-family: "Hekayat", "Vazirmatn", system-ui, sans-serif; }
.ff-hekayat-distorted { font-family: "Hekayat Distorted", "Vazirmatn", system-ui, sans-serif; }
.ff-darya { font-family: "Darya", "Vazirmatn", system-ui, sans-serif; }
.ff-delbar { font-family: "Delbar", "Vazirmatn", system-ui, sans-serif; }
.ff-rastin { font-family: "Rastin", "Vazirmatn", system-ui, sans-serif; }
.ff-rastin-plus-rectangle { font-family: "Rastin Plus Rectangle", "Vazirmatn", system-ui, sans-serif; }
.ff-rastin-plus-circle { font-family: "Rastin Plus Circle", "Vazirmatn", system-ui, sans-serif; }
.ff-rastin-plus-line { font-family: "Rastin Plus Line", "Vazirmatn", system-ui, sans-serif; }
.ff-ravi { font-family: "Ravi", "Vazirmatn", system-ui, sans-serif; }
.ff-sarvenaz { font-family: "Sarvenaz", "Vazirmatn", system-ui, sans-serif; }
.ff-sandal { font-family: "Sandal", "Vazirmatn", system-ui, sans-serif; }
.ff-farkhonde { font-family: "Farkhonde", "Vazirmatn", system-ui, sans-serif; }
.ff-ghasedak { font-family: "Ghasedak", "Vazirmatn", system-ui, sans-serif; }
.ff-ghaf { font-family: "Ghaf", "Vazirmatn", system-ui, sans-serif; }
.ff-lalezar-plus { font-family: "Lalezar Plus", "Vazirmatn", system-ui, sans-serif; }
.ff-lalezar-plus-circle { font-family: "Lalezar Plus Circle", "Vazirmatn", system-ui, sans-serif; }
.ff-lalezar-plus-grunge { font-family: "Lalezar Plus Grunge", "Vazirmatn", system-ui, sans-serif; }
.ff-nozha { font-family: "Nozha", "Vazirmatn", system-ui, sans-serif; }
.ff-nozha2 { font-family: "Nozha2", "Vazirmatn", system-ui, sans-serif; }
.ff-hamishe { font-family: "Hamishe", "Vazirmatn", system-ui, sans-serif; }
.ff-vazir { font-family: "Vazir", "Vazirmatn", system-ui, sans-serif; }
.ff-cheshmak { font-family: "Cheshmak", "Vazirmatn", system-ui, sans-serif; }
.ff-craft { font-family: "Craft", "Vazirmatn", system-ui, sans-serif; }
.ff-koodak { font-family: "Koodak", "Vazirmatn", system-ui, sans-serif; }

/* برای فونت‌های تک‌وزن، بولد مصنوعی مرورگر خاموش است تا
   حروف کشیده و بدشکل نشوند. */
.ff-aisa, .ff-almas, .ff-tiam, .ff-joghin, .ff-hekayat, .ff-hekayat-distorted,
.ff-darya, .ff-delbar, .ff-rastin, .ff-rastin-plus-rectangle, .ff-rastin-plus-circle,
.ff-rastin-plus-line, .ff-ravi, .ff-sarvenaz, .ff-sandal, .ff-farkhonde, .ff-ghasedak,
.ff-ghaf, .ff-lalezar-plus, .ff-lalezar-plus-circle, .ff-lalezar-plus-grunge, .ff-nozha,
.ff-nozha2, .ff-cheshmak, .ff-craft, .ff-koodak {
  font-synthesis-weight: none;
}

