/**
 * Shared Arabic typography for MeraLux invitation templates.
 * Names → Gulzar (نستعليق مزخرف فاخر) + Amiri fallback (تشكيل احترافي)
 * Body  → Noto Naskh Arabic (نسخ أنيق)
 */
:root {
    --inv-font-ar-names: 'Gulzar', 'Amiri', 'Traditional Arabic', serif;
    --inv-font-ar-body: 'Noto Naskh Arabic', 'Amiri', 'Segoe UI', Tahoma, sans-serif;
}

html[lang="ar"] body,
body[dir="rtl"] {
    font-family: var(--inv-font-ar-body);
    letter-spacing: 0;
    word-spacing: 0.02em;
    line-height: 1.85;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

.inv-ar-names,
.inv-font-ar-names {
    font-family: var(--inv-font-ar-names) !important;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1.45;
}

.inv-ar-body,
.inv-font-ar-body {
    font-family: var(--inv-font-ar-body) !important;
    font-weight: 400;
    line-height: 1.85;
}

/* Couple / display names — ornate Nastaliq display */
/* Rose vow uses its own joyful display face in rose.css */
html[lang="ar"] .mg-name,
html[lang="ar"] .mg-names-line,
html[lang="ar"] .md-name,
html[lang="ar"] .md-names-line,
html[lang="ar"] .rc-palace-name,
html[lang="ar"] .ge-name,
html[lang="ar"] .ge-name--groom,
html[lang="ar"] .ge-name--bride,
html[lang="ar"] .ge-splash-names,
html[lang="ar"] .mm-name,
html[lang="ar"] .mm-card-names,
html[lang="ar"] .couple-names,
html[lang="ar"] .inv-couple-name {
    font-family: var(--inv-font-ar-names) !important;
    font-weight: 400;
    letter-spacing: 0 !important;
    text-transform: none !important;
    line-height: 1.55;
    font-feature-settings: "kern" 1, "liga" 1, "calt" 1;
}

html[lang="ar"] .rose-amp,
html[lang="ar"] .mg-amp,
html[lang="ar"] .md-amp,
html[lang="ar"] .rose-card-title em {
    font-family: 'Amiri', serif !important;
    font-weight: 700;
}

/* Body copy */
html[lang="ar"] .rose-font-serif,
html[lang="ar"] .rose-font-display,
html[lang="ar"] .rose-font-arabic,
html[lang="ar"] .rose-tagline,
html[lang="ar"] .rose-kicker,
html[lang="ar"] .rose-scroll,
html[lang="ar"] .tap-to-open,
html[lang="ar"] .gate-loading-text,
html[lang="ar"] .gate-hint,
html[lang="ar"] .rose-quran,
html[lang="ar"] .rose-bismillah,
html[lang="ar"] .rose-verse,
html[lang="ar"] .rose-closing,
html[lang="ar"] p,
html[lang="ar"] li,
html[lang="ar"] label,
html[lang="ar"] button,
html[lang="ar"] input,
html[lang="ar"] textarea,
html[lang="ar"] select,
html[lang="ar"] .inv-if-section,
html[lang="ar"] .inv-if-title,
html[lang="ar"] .inv-if-kicker,
html[lang="ar"] .inv-if-note,
html[lang="ar"] .inv-if-map-link,
html[lang="ar"] h2,
html[lang="ar"] h3,
html[lang="ar"] h4 {
    font-family: var(--inv-font-ar-body);
}

html[lang="ar"] h2,
html[lang="ar"] h3,
html[lang="ar"] h4,
html[lang="ar"] .inv-if-title {
    font-weight: 600;
}

html[lang="ar"] .rose-quran,
html[lang="ar"] .rose-font-arabic,
html[lang="ar"] .quran-verse {
    font-family: 'Amiri', var(--inv-font-ar-body) !important;
    font-weight: 400;
    line-height: 2.15;
}

html[lang="ar"] .rose-kicker,
html[lang="ar"] .mg-kicker,
html[lang="ar"] .md-kicker,
html[lang="ar"] .rc-kicker,
html[lang="ar"] .ge-kicker,
html[lang="ar"] .mm-kicker,
html[lang="ar"] .inv-if-kicker {
    letter-spacing: 0.04em !important;
    text-transform: none !important;
    font-family: var(--inv-font-ar-body) !important;
    font-weight: 600;
}

html[lang="ar"] body.rose-elegance .rose-name {
    font-size: clamp(3rem, 11vw, 5rem);
    font-weight: 600;
    line-height: 1.35;
}
html[lang="ar"] .mg-name,
html[lang="ar"] .md-name,
html[lang="ar"] .rc-palace-name,
html[lang="ar"] .mm-name {
    font-size: clamp(2.6rem, 9vw, 4.2rem);
}
html[lang="ar"] .ge-name {
    font-size: clamp(2.4rem, 8vw, 3.8rem);
}

html[lang="ar"] body.rose-elegance .rose-card-title {
    font-family: 'Marhey', 'Rakkas', 'Amiri', serif !important;
    font-weight: 600 !important;
    line-height: 1.55;
}
