/* =============================================================================
   CmsProject — Lokal Font Altyapısı (20 Font)
   -----------------------------------------------------------------------------
   Tüm fontlar LOKAL sunulur (Google Fonts CDN YASAK — Anayasa §7).
   Her @font-face `font-display: swap` kullanır (FOIT yerine FOUT → CLS/LCP iyi).

   ⚠️ FONT BINARY DURUMU:
   20 Google fontunun gerçek .woff2 dosyaları bu repoda YOK ve sandbox/CDN
   kısıtı nedeniyle indirilemez. Aşağıdaki @font-face bildirimleri ALTYAPIDIR:
   - İlgili .woff2 dosyası `/wwwroot/fonts/{font}/{font}-{weight}.woff2`
     yoluna eklendiğinde font otomatik devreye girer.
   - Dosya yokken tarayıcı @font-face'i atlar ve `font-family` zincirindeki
     SİSTEM FONT fallback'ine düşer (görsel bozulma olmaz, sadece o font gelmez).

   Kullanılabilir font ailesi adları (Ayarlar > Tipografi `site_font` ile eşleşir):
   Noto Sans, Inter, Roboto, Open Sans, Lato, Montserrat, Raleway, Poppins,
   Nunito, Playfair Display, Merriweather, Source Sans 3, Ubuntu, Oswald,
   Mukta, Quicksand, Josefin Sans, Barlow, DM Sans, Figtree
   ========================================================================== */

/* --- Sistem font fallback stack'leri (CSS değişkeni) ---------------------- */
:root {
  --font-system-sans: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --font-system-serif: Georgia, Cambria, "Times New Roman", Times, serif;

  /* Varsayılan site fontu. Ayarlardaki `site_font` seçimi Layout tarafından
     bu değişkeni override ederek uygulanır. Seçim yoksa sistem fontu. */
  --site-font: var(--font-system-sans);
}

/* =============================================================================
   1. Noto Sans  — Türkçe karakter desteği (öncelikli)
   ⬇ BURAYA ekle: /wwwroot/fonts/noto-sans/noto-sans-400.woff2 (ve -700)
   ========================================================================== */
@font-face {
  font-family: "Noto Sans";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/fonts/noto-sans/noto-sans-400.woff2") format("woff2");
}
@font-face {
  font-family: "Noto Sans";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/fonts/noto-sans/noto-sans-700.woff2") format("woff2");
}

/* 2. Inter — ⬇ /wwwroot/fonts/inter/inter-400.woff2, inter-700.woff2 */
@font-face {
  font-family: "Inter";
  font-style: normal; font-weight: 400; font-display: swap;
  src: url("/fonts/inter/inter-400.woff2") format("woff2");
}
@font-face {
  font-family: "Inter";
  font-style: normal; font-weight: 700; font-display: swap;
  src: url("/fonts/inter/inter-700.woff2") format("woff2");
}

/* 3. Roboto — ⬇ /wwwroot/fonts/roboto/roboto-400.woff2, roboto-700.woff2 */
@font-face {
  font-family: "Roboto";
  font-style: normal; font-weight: 400; font-display: swap;
  src: url("/fonts/roboto/roboto-400.woff2") format("woff2");
}
@font-face {
  font-family: "Roboto";
  font-style: normal; font-weight: 700; font-display: swap;
  src: url("/fonts/roboto/roboto-700.woff2") format("woff2");
}

/* 4. Open Sans — ⬇ /wwwroot/fonts/open-sans/open-sans-400.woff2, -700.woff2 */
@font-face {
  font-family: "Open Sans";
  font-style: normal; font-weight: 400; font-display: swap;
  src: url("/fonts/open-sans/open-sans-400.woff2") format("woff2");
}
@font-face {
  font-family: "Open Sans";
  font-style: normal; font-weight: 700; font-display: swap;
  src: url("/fonts/open-sans/open-sans-700.woff2") format("woff2");
}

/* 5. Lato — ⬇ /wwwroot/fonts/lato/lato-400.woff2, lato-700.woff2 */
@font-face {
  font-family: "Lato";
  font-style: normal; font-weight: 400; font-display: swap;
  src: url("/fonts/lato/lato-400.woff2") format("woff2");
}
@font-face {
  font-family: "Lato";
  font-style: normal; font-weight: 700; font-display: swap;
  src: url("/fonts/lato/lato-700.woff2") format("woff2");
}

/* 6. Montserrat — ⬇ /wwwroot/fonts/montserrat/montserrat-400.woff2, -700.woff2 */
@font-face {
  font-family: "Montserrat";
  font-style: normal; font-weight: 400; font-display: swap;
  src: url("/fonts/montserrat/montserrat-400.woff2") format("woff2");
}
@font-face {
  font-family: "Montserrat";
  font-style: normal; font-weight: 700; font-display: swap;
  src: url("/fonts/montserrat/montserrat-700.woff2") format("woff2");
}

/* 7. Raleway — ⬇ /wwwroot/fonts/raleway/raleway-400.woff2, -700.woff2 */
@font-face {
  font-family: "Raleway";
  font-style: normal; font-weight: 400; font-display: swap;
  src: url("/fonts/raleway/raleway-400.woff2") format("woff2");
}
@font-face {
  font-family: "Raleway";
  font-style: normal; font-weight: 700; font-display: swap;
  src: url("/fonts/raleway/raleway-700.woff2") format("woff2");
}

/* 8. Poppins — ⬇ /wwwroot/fonts/poppins/poppins-400.woff2, -700.woff2 */
@font-face {
  font-family: "Poppins";
  font-style: normal; font-weight: 400; font-display: swap;
  src: url("/fonts/poppins/poppins-400.woff2") format("woff2");
}
@font-face {
  font-family: "Poppins";
  font-style: normal; font-weight: 700; font-display: swap;
  src: url("/fonts/poppins/poppins-700.woff2") format("woff2");
}

/* 9. Nunito — ⬇ /wwwroot/fonts/nunito/nunito-400.woff2, -700.woff2 */
@font-face {
  font-family: "Nunito";
  font-style: normal; font-weight: 400; font-display: swap;
  src: url("/fonts/nunito/nunito-400.woff2") format("woff2");
}
@font-face {
  font-family: "Nunito";
  font-style: normal; font-weight: 700; font-display: swap;
  src: url("/fonts/nunito/nunito-700.woff2") format("woff2");
}

/* 10. Playfair Display (serif) — ⬇ /wwwroot/fonts/playfair-display/playfair-display-400.woff2, -700.woff2 */
@font-face {
  font-family: "Playfair Display";
  font-style: normal; font-weight: 400; font-display: swap;
  src: url("/fonts/playfair-display/playfair-display-400.woff2") format("woff2");
}
@font-face {
  font-family: "Playfair Display";
  font-style: normal; font-weight: 700; font-display: swap;
  src: url("/fonts/playfair-display/playfair-display-700.woff2") format("woff2");
}

/* 11. Merriweather (serif) — ⬇ /wwwroot/fonts/merriweather/merriweather-400.woff2, -700.woff2 */
@font-face {
  font-family: "Merriweather";
  font-style: normal; font-weight: 400; font-display: swap;
  src: url("/fonts/merriweather/merriweather-400.woff2") format("woff2");
}
@font-face {
  font-family: "Merriweather";
  font-style: normal; font-weight: 700; font-display: swap;
  src: url("/fonts/merriweather/merriweather-700.woff2") format("woff2");
}

/* 12. Source Sans 3 — ⬇ /wwwroot/fonts/source-sans-3/source-sans-3-400.woff2, -700.woff2 */
@font-face {
  font-family: "Source Sans 3";
  font-style: normal; font-weight: 400; font-display: swap;
  src: url("/fonts/source-sans-3/source-sans-3-400.woff2") format("woff2");
}
@font-face {
  font-family: "Source Sans 3";
  font-style: normal; font-weight: 700; font-display: swap;
  src: url("/fonts/source-sans-3/source-sans-3-700.woff2") format("woff2");
}

/* 13. Ubuntu — ⬇ /wwwroot/fonts/ubuntu/ubuntu-400.woff2, -700.woff2 */
@font-face {
  font-family: "Ubuntu";
  font-style: normal; font-weight: 400; font-display: swap;
  src: url("/fonts/ubuntu/ubuntu-400.woff2") format("woff2");
}
@font-face {
  font-family: "Ubuntu";
  font-style: normal; font-weight: 700; font-display: swap;
  src: url("/fonts/ubuntu/ubuntu-700.woff2") format("woff2");
}

/* 14. Oswald — ⬇ /wwwroot/fonts/oswald/oswald-400.woff2, -700.woff2 */
@font-face {
  font-family: "Oswald";
  font-style: normal; font-weight: 400; font-display: swap;
  src: url("/fonts/oswald/oswald-400.woff2") format("woff2");
}
@font-face {
  font-family: "Oswald";
  font-style: normal; font-weight: 700; font-display: swap;
  src: url("/fonts/oswald/oswald-700.woff2") format("woff2");
}

/* 15. Mukta (Türkçe uyumlu) — ⬇ /wwwroot/fonts/mukta/mukta-400.woff2, -700.woff2 */
@font-face {
  font-family: "Mukta";
  font-style: normal; font-weight: 400; font-display: swap;
  src: url("/fonts/mukta/mukta-400.woff2") format("woff2");
}
@font-face {
  font-family: "Mukta";
  font-style: normal; font-weight: 700; font-display: swap;
  src: url("/fonts/mukta/mukta-700.woff2") format("woff2");
}

/* 16. Quicksand — ⬇ /wwwroot/fonts/quicksand/quicksand-400.woff2, -700.woff2 */
@font-face {
  font-family: "Quicksand";
  font-style: normal; font-weight: 400; font-display: swap;
  src: url("/fonts/quicksand/quicksand-400.woff2") format("woff2");
}
@font-face {
  font-family: "Quicksand";
  font-style: normal; font-weight: 700; font-display: swap;
  src: url("/fonts/quicksand/quicksand-700.woff2") format("woff2");
}

/* 17. Josefin Sans — ⬇ /wwwroot/fonts/josefin-sans/josefin-sans-400.woff2, -700.woff2 */
@font-face {
  font-family: "Josefin Sans";
  font-style: normal; font-weight: 400; font-display: swap;
  src: url("/fonts/josefin-sans/josefin-sans-400.woff2") format("woff2");
}
@font-face {
  font-family: "Josefin Sans";
  font-style: normal; font-weight: 700; font-display: swap;
  src: url("/fonts/josefin-sans/josefin-sans-700.woff2") format("woff2");
}

/* 18. Barlow — ⬇ /wwwroot/fonts/barlow/barlow-400.woff2, -700.woff2 */
@font-face {
  font-family: "Barlow";
  font-style: normal; font-weight: 400; font-display: swap;
  src: url("/fonts/barlow/barlow-400.woff2") format("woff2");
}
@font-face {
  font-family: "Barlow";
  font-style: normal; font-weight: 700; font-display: swap;
  src: url("/fonts/barlow/barlow-700.woff2") format("woff2");
}

/* 19. DM Sans — ⬇ /wwwroot/fonts/dm-sans/dm-sans-400.woff2, -700.woff2 */
@font-face {
  font-family: "DM Sans";
  font-style: normal; font-weight: 400; font-display: swap;
  src: url("/fonts/dm-sans/dm-sans-400.woff2") format("woff2");
}
@font-face {
  font-family: "DM Sans";
  font-style: normal; font-weight: 700; font-display: swap;
  src: url("/fonts/dm-sans/dm-sans-700.woff2") format("woff2");
}

/* 20. Figtree — ⬇ /wwwroot/fonts/figtree/figtree-400.woff2, -700.woff2 */
@font-face {
  font-family: "Figtree";
  font-style: normal; font-weight: 400; font-display: swap;
  src: url("/fonts/figtree/figtree-400.woff2") format("woff2");
}
@font-face {
  font-family: "Figtree";
  font-style: normal; font-weight: 700; font-display: swap;
  src: url("/fonts/figtree/figtree-700.woff2") format("woff2");
}

/* --- Site geneline uygulama ----------------------------------------------- */
/* Layout `--site-font` değişkenini seçili fonta göre set eder; burada body
   o değişkeni tüketir. Hiç font yüklenemezse sistem fontu devrede kalır. */
body {
  font-family: var(--site-font);
}
