/* NN Shared Fonts — @font-face registry for all Nerd Notes apps.
   Usage + policy: see CLAUDE.md in this dir. Link this file directly by URL;
   never bundle it (url()s are relative to this file's location). */

/* ── Geist — body font (tutor platform, course manager) ─────────────── */
@font-face {
    font-family: 'Geist';
    src: url('Geist/Geist-VF.woff2') format('woff2-variations'),
         url('Geist/Geist-VF.ttf') format('truetype-variations');
    font-weight: 100 900;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Geist';
    src: url('Geist/Geist-Italic-VF.woff2') format('woff2-variations'),
         url('Geist/Geist-Italic-VF.ttf') format('truetype-variations');
    font-weight: 100 900;
    font-style: italic;
    font-display: swap;
}

/* ── Inter — body font (payments / reviews) ─────────────────────────── */
@font-face {
    font-family: 'Inter';
    src: url('Inter/InterVariable.woff2') format('woff2-variations');
    font-weight: 100 900;
    font-style: normal;
    font-display: swap;
}

/* ── Fraunces — heading serif (tutor profile) ───────────────────────── */
@font-face {
    font-family: 'Fraunces';
    src: url('Fraunces/Fraunces-VF.woff2') format('woff2-variations'),
         url('Fraunces/Fraunces-VF.ttf') format('truetype-variations');
    font-weight: 100 900;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Fraunces';
    src: url('Fraunces/Fraunces-Italic-VF.woff2') format('woff2-variations'),
         url('Fraunces/Fraunces-Italic-VF.ttf') format('truetype-variations');
    font-weight: 100 900;
    font-style: italic;
    font-display: swap;
}

/* ── Unbounded — display accents ────────────────────────────────────── */
@font-face {
    font-family: 'Unbounded';
    src: url('Unbounded/Unbounded-VF.woff2') format('woff2-variations'),
         url('Unbounded/Unbounded-VF.ttf') format('truetype-variations');
    font-weight: 200 900;
    font-style: normal;
    font-display: swap;
}

/* ── Google Sans Flex — quiz / FreeFlow UI ──────────────────────────── */
@font-face {
    font-family: 'Google Sans Flex';
    src: url('GoogleSansFlex/GoogleSansFlex-Variable.woff2') format('woff2-variations');
    font-weight: 100 900;
    font-style: normal;
    font-display: swap;
}

/* ── Charter — reading serif (quiz bodies, question generator) ──────── */
@font-face {
    font-family: 'Charter';
    src: url('Charter/charter_regular.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Charter';
    src: url('Charter/charter_bold.woff2') format('woff2');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Charter';
    src: url('Charter/charter_italic.woff2') format('woff2');
    font-weight: 400;
    font-style: italic;
    font-display: swap;
}
@font-face {
    font-family: 'Charter';
    src: url('Charter/charter_bold_italic.woff2') format('woff2');
    font-weight: 700;
    font-style: italic;
    font-display: swap;
}

/* ── Kalam — handwriting (example answers, annotations) ─────────────── */
@font-face {
    font-family: 'Kalam';
    src: url('Kalam/Kalam-Light.woff2') format('woff2'),
         url('Kalam/Kalam-Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Kalam';
    src: url('Kalam/Kalam-Regular.woff2') format('woff2'),
         url('Kalam/Kalam-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Kalam';
    src: url('Kalam/Kalam-Bold.woff2') format('woff2'),
         url('Kalam/Kalam-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

/* ── Motley Forces — display/cursive (FreeFlow) ─────────────────────── */
@font-face {
    font-family: 'Motley Forces';
    src: url('MotleyForces/MotleyForces-Regular.woff2') format('woff2'),
         url('MotleyForces/MotleyForces-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

/* ── Poppins — embed header option (booking-calendar ?headerFont=) ──────
   Static weights from Google Fonts (no official variable build). Split
   latin / latin-ext with unicode-range so only the subset a page actually
   renders gets downloaded. */
@font-face {
    font-family: 'Poppins';
    src: url('Poppins/Poppins-Regular.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
    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: 'Poppins';
    src: url('Poppins/Poppins-Regular-ext.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
    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;
}
@font-face {
    font-family: 'Poppins';
    src: url('Poppins/Poppins-Medium.woff2') format('woff2');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
    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: 'Poppins';
    src: url('Poppins/Poppins-Medium-ext.woff2') format('woff2');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
    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;
}
@font-face {
    font-family: 'Poppins';
    src: url('Poppins/Poppins-SemiBold.woff2') format('woff2');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
    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: 'Poppins';
    src: url('Poppins/Poppins-SemiBold-ext.woff2') format('woff2');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
    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;
}
@font-face {
    font-family: 'Poppins';
    src: url('Poppins/Poppins-Bold.woff2') format('woff2');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
    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: 'Poppins';
    src: url('Poppins/Poppins-Bold-ext.woff2') format('woff2');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
    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;
}
