/**
 * Mockup Core — Typography
 *
 * Bilingual Georgian + Latin system with per-glyph routing.
 *
 *   Display chain   →  LGV Anastasia (Georgian glyphs only) → Oswald (Latin)
 *   Body            →  Fira Go (single family covers both scripts)
 *
 * The browser walks `font-family` per glyph, not per element. So for a
 * mixed heading like "კულტურა Premium":
 *   - Georgian glyphs (U+10A0–10FF) match LGV Anastasia → render in Anastasia
 *   - Latin glyphs are outside that range → fall through to Oswald → render
 *
 * No element-splitting, no `<span lang="ka">`, no JS, no body-class
 * detection. Pages with zero Georgian text never download the .ttf,
 * because no glyph triggers a match against its `unicode-range`.
 *
 * Important: Georgian script has no uppercase forms. We never apply
 * `text-transform: uppercase` — it would distort Anastasia's glyphs.
 * Oswald already reads as a tall display face at any case anyway.
 */

/* ─── Self-hosted Georgian display ─────────────────────────── */
@font-face {
    font-family: 'LGV Anastasia';
    src: url('../fonts/lgv-anastasia.ttf') format('truetype');
    font-weight: 400 700;
    font-style: normal;
    font-display: swap;
    /* U+10A0–10FF Georgian (Mkhedruli + Asomtavruli)
     * U+2D00–2DFF Georgian Supplement (Nuskhuri)
     * U+1C90–1CBF Georgian Extended (Mtavruli) */
    unicode-range: U+10A0-10FF, U+2D00-2DFF, U+1C90-1CBF;
}

/* ─── Font tokens ──────────────────────────────────────────── */
:root {
    --mk-font-display: 'LGV Anastasia', 'Oswald', sans-serif;
    --mk-font-body:    'Fira Go', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

/* ─── Body ─────────────────────────────────────────────────── */
body { font-family: var(--mk-font-body); }

/* ─── Headings + display CTAs use the per-glyph chain ──────── */
h1, h2, h3, h4, h5, h6,
.mk-archive__title,
.mk-card__title,
.mk-card__price,
.mk-section-title,
.mkw-page-title,
.mkc-header-title,
.mkc-header h3,
.mk-catalog-header h2,
/* Mega menu titles */
.mkd-grid-title,
.mkd-card-title,
.mkd-parent-item,
.mkm-cat-link,
.mkm-prod-title,
/* Cart / modal CTAs */
.mkc-btn,
.mkc-empty-title,
.mkc-tab-title,
.mk-card__action,
.mk-modal-header h3,
.mk-upsell-modal-add,
.mk-inv-type-btn,
/* Header CTAs */
.mkd-call-btn,
.mkd-cat-btn,
/* VOOM auth shortcodes */
.voom-auth-title,
.voom-btn,
.voom-btn-primary,
.voom-btn-secondary,
.voom-btn-outline {
    font-family: var(--mk-font-display) !important;
    font-weight: 700;
    text-transform: none !important;
    letter-spacing: normal !important;
}

/* ─── Plugin UI surfaces inherit body font ─────────────────── */
.mkd-header,
.mkd-top-bar,
.mkm-header,
.mkm-bottom-nav,
.mkc-drawer,
.mkc-toast,
.mkw-page,
.mk-archive,
.mk-card,
.mkp-page,
.mkd-mega-menu,
.mkm-drawer,
.voom-auth-wrapper,
.mc-shell {
    font-family: var(--mk-font-body) !important;
}

/* ─── Strip uppercase on small UI bits (some legacy rules used
   it for Latin emphasis but it would distort Georgian glyphs
   and Oswald already reads as caps-style at any case) ───── */
.mk-card__type,
.mk-card__brand,
.mk-card__category,
.mkw-page-badge,
.mks-popular-label,
.mkd-popular-label,
.mks-trending-tag,
.mkd-trending-tag,
.mkc-tab,
.mkp-section-label,
.mkp-spec-label,
.mk-filter-section__title {
    text-transform: none !important;
}

/* ─── Display-font size bumps (Anastasia + Oswald read smaller
   than the previous Inter chain at the same point size) ──── */
.mkc-btn               { font-size: 16px !important; }
.mkc-tab-title         { font-size: 14px !important; }
.mkc-empty-title       { font-size: 22px !important; }
.mk-card__action       { font-size: 12px !important; }
.mk-modal-header h3    { font-size: 20px !important; }
.mk-upsell-modal-add   { font-size: 15px !important; }
.mk-inv-type-btn       { font-size: 14px !important; }
.mkd-call-btn          { font-size: 13px !important; }
.mkd-cat-btn           { font-size: 15px !important; }
