/* ════════════════════════════════════════════════════════════
   Betűtípusok — helyben tárolva
   Forrás: Google Fonts. IBM Plex, SIL Open Font License.

   KÉT BETŰ, EGY SZABÁLLYAL: a Plex Sans viszi az emberi szöveget,
   a Plex Mono a GÉPI KIMENETET — mérésblokkot és kódot. Ez nem
   díszítés: a mérés oszlopai csak monospace-ben állnak egymás alá.

   Korábban egyetlen család vitte az egészet, a Plex Mono. Az írógép-
   hatás viszont a fejlesztőnek szólt, nem a megrendelőnek: visszajelzés
   érkezett rá, hogy régi írógépre emlékeztet. A Sans ugyanannak a
   szupercsaládnak a tagja, tehát a lap karaktere megmarad — ugyanaz a
   csontozat, ugyanaz a függőleges metrika (upm 1000, ascender 1025,
   descender −275), csak a betűk nem egyforma szélesek.

   A Sans VÁLTOZÓ betű: egyetlen fájl fedi a 300–500 tartományt
   készletenként. Statikusan, három súllyal 194 kB lett volna; így 65.
   A Monóból csak a 400 marad, mert a mérésblokk csak azt használja —
   mérve, a lapokon nincs 400-tól eltérő súlyú monospace.

   Csak latin + latin-ext: a magyar ő és ű a latin-extben van.
   Négy fájl, 84 kB; a korábbi hat monofájl 60 kB volt.

   Miért helyben: így a látogató böngészője nem küld kérést a Google
   felé. Az adatkezelési tájékoztató 2. és 6. pontja ezt ki is mondja,
   a tools/check.sh pedig ellenőrzi, hogy a kód tartja-e magát hozzá.
   ════════════════════════════════════════════════════════════ */

/* ── IBM Plex Sans — változó, 300–500 ─────────────────────────── */

@font-face {
    font-family: 'IBM Plex Sans';
    font-style: normal;
    font-weight: 300 500;
    font-display: swap;
    src: url('/assets/fonts/plex-sans-latin-ext.woff2') format('woff2');
    unicode-range: U+0100-017F;
}

@font-face {
    font-family: 'IBM Plex Sans';
    font-style: normal;
    font-weight: 300 500;
    font-display: swap;
    src: url('/assets/fonts/plex-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;
}

/* ── IBM Plex Mono — 400, a gépi kimenethez ───────────────────── */

@font-face {
    font-family: 'IBM Plex Mono';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('/assets/fonts/plex-mono-400-latin-ext.woff2') format('woff2');
    unicode-range: U+0100-017F;
}

@font-face {
    font-family: 'IBM Plex Mono';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('/assets/fonts/plex-mono-400-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;
}

/* ── Metrikára igazított tartalékok ───────────────────────────
   A betűfájl megérkezéséig a böngésző rendszerbetűvel szedi a
   szöveget. Ha annak más a metrikája, a csere pillanatában az egész
   lap megugrik. A megoldás tartalék CSALÁD: a látogató gépén már ott
   lévő betűt igazítjuk a Plex metrikájára. A `local()` NEM küld
   hálózati kérést — sem az adatkezelési tájékoztató állítása, sem a
   check.sh 8. szakasza nem sérül.

   A számok fontToolsszal mértek: a minta egy valódi magyar bekezdés,
   az átlagos előrehaladás abból jön. A Plex Sans 0,4392 em, az Arialé
   0,4360 — innen a 100,75%-os size-adjust. A függőleges metrika
   viszont a szupercsaládon belül azonos, ezért a Mono és a Sans
   tartaléka ugyanazt az ascentet és descentet kapja.
   ─────────────────────────────────────────────────────────── */

@font-face {
    font-family: 'Sans tartalek';
    src: local('Arial'), local('Helvetica'), local('Liberation Sans'),
         local('DejaVu Sans');
    font-weight: 300 500;
    font-style: normal;
    size-adjust:        100.75%;
    ascent-override:    101.74%;
    descent-override:    27.30%;
    line-gap-override:       0%;
}

@font-face {
    font-family: 'Mono tartalek';
    src: local('Courier New'), local('CourierNewPSMT'), local('Liberation Mono'),
         local('DejaVu Sans Mono'), local('Menlo');
    font-weight: 400;
    font-style: normal;
    size-adjust:         99.98%;
    ascent-override:    102.52%;
    descent-override:    27.50%;
    line-gap-override:       0%;
}
