/* Yerel barındırılan font tanımları — design-system.md §2.2 uygulaması.
 *
 * İKİ AİLE, İKİ İŞ (design system'in imza kararı):
 *   Nunito Sans → arayüz ve Türkçe metin. Mevcut sitenin markası, korundu.
 *   Literata    → YALNIZCA Almanca sözlük malzemesi ([lang="de"]).
 * Yazı tipinin kendisi dili gösterir; her satıra bayrak ikonu koymaya gerek
 * kalmaz (bedelsiz ve i18n açısından doğru ayrım).
 *
 * VARIABLE FONT: her aile için tek dosya tüm ağırlıkları taşır. Bu yüzden
 * font-weight bir ARALIK (400 700) olarak bildirilir — tarayıcı ara
 * değerleri de üretebilir, ikinci bir dosya indirmez.
 *
 * unicode-range ZORUNLU ve kasıtlı: tarayıcı bir alt kümeyi yalnızca o
 * bloktan gerçekten karakter kullanılıyorsa indirir.
 *   latin      → Almanca ä ö ü ß + Türkçe ı ç  (U+0000-00FF, U+0131)
 *   latin-ext  → Türkçe ğ ş İ                  (U+0100-02BA)
 * Bu yüzden Literata'nın latin-ext dosyası, Almanca metinde Türkçe harf
 * geçmediği sürece HİÇ indirilmez — yine de doğruluk için tanımlı bırakıldı.
 *
 * Google Fonts @import BİLİNÇLİ OLARAK KULLANILMAZ: CSS'in içinden ikinci
 * bir ağ isteği doğurur ve render'ı zincirleme bloke eder. Canlı sitede
 * (css/style.css:1) tam olarak bu vardı.
 *
 * font-display: swap → font gelene kadar metin yedek fontla görünür,
 * boş ekran (FOIT) yaşanmaz.
 */

/* ---------------------------------------------------------------- Nunito Sans
   Arayüz + Türkçe. Preload edilen aile (inc/assets.php).             */

@font-face {
	font-family: "Nunito Sans";
	font-style: normal;
	font-weight: 400 700;
	font-display: swap;
	src: url("../fonts/nunito-sans-latin.woff2") format("woff2");
	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+20AC, U+2122,
		U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
	font-family: "Nunito Sans";
	font-style: normal;
	font-weight: 400 700;
	font-display: swap;
	src: url("../fonts/nunito-sans-latin-ext.woff2") format("woff2");
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7,
		U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F,
		U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F,
		U+A720-A7FF;
}

/* ------------------------------------------------------------------ Literata
   Almanca sözlük malzemesi. Preload EDİLMEZ: ilk boyamada gereken metin
   arayüzdür.

   font-display: OPTIONAL (2026-09-14, ölçümle değiştirildi — eskiden swap).

   Ölçüm: sayfanın TEK düzen kayması `p.lead-text` üzerindeydi ve taban
   CLS'i 0,0689'a çıkarıyordu — 0,1 bütçesinin %69'u, üstelik daha hiç
   reklam yokken. Sebep: kahraman paragraf hem Türkçe (Nunito, preload'lu)
   hem Almanca (Literata, preload'suz) metin taşıyor; Literata `swap` ile
   sonradan gelince satır sarması değişip paragraf bir satır büyüyordu.

   `optional` tarayıcıya şunu söyler: font ~100 ms içinde hazır değilse BU
   SAYFADA hiç kullanma. Sonuç: takas yok, kayma yok. Bedeli, fontun
   önbellekte olmadığı İLK ziyarette Almanca kelimelerin yedek serif ile
   görünmesi; sonraki gezinmelerde Literata normal şekilde uygulanır.

   Denenip REDDEDİLEN alternatifler:
     · preload — Literata latin 83 KB; mobil kritik yola girip LCP'yi
       CLS'ten kazanılandan fazla bozuyordu.
     · metrik uyumlu yedek font — daha önce denendi, CLS'i 0,158'e
       ÇIKARDI (bkz. CWV raporu).                                     */

@font-face {
	font-family: "Literata";
	font-style: normal;
	font-weight: 400 600;
	font-display: optional;
	src: url("../fonts/literata-latin.woff2") format("woff2");
	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+20AC, U+2122,
		U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
	font-family: "Literata";
	font-style: normal;
	font-weight: 400 600;
	font-display: optional;
	src: url("../fonts/literata-latin-ext.woff2") format("woff2");
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7,
		U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F,
		U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F,
		U+A720-A7FF;
}

/* --------------------------------------------------------- Dil → yazı tipi
   Almanca içerik serif ailesine geçer. Şablonlar lang="de" niteliğini
   zaten basıyor (template-parts/word-header.php vb.), yani bu kural
   ek markup gerektirmez.                                              */

[lang="de"] {
	font-family: var(--font-serif-de);
}

/* Arayüz öğeleri lang="de" bir öğenin İÇİNDE kalsa bile arayüz fontunda
   durur — buton/etiket Almanca kelimeden miras almasın. */
[lang="de"] :where(button, input, select, textarea, .btn, .word-facts__key) {
	font-family: var(--font-sans);
}
