/* ==========================================
   0. فونت جایگزینِ هم‌متریک با شبنم
   ------------------------------------------
   ریشه‌ی «پرش» صفحه همین‌جا بود: شبنم با font-display: swap لود می‌شد،
   یعنی متن اول با فونت سیستم رندر می‌شد و بعد یک‌دفعه جایش را به شبنم
   می‌داد. چون متریک این دو فرق دارد، کل چیدمان جابه‌جا می‌شد.

   راه‌حل دو بخش دارد:
     ۱. این چهره‌ی جایگزین، متریک شبنم را روی فونت سیستم سوار می‌کند
        (شبنم: unitsPerEm=2048، ascent=1900، descent=-900، lineGap=0)
        تا ارتفاع خط در هر دو حالت دقیقاً یکی باشد.
     ۲. شبنم با font-display: optional بارگذاری می‌شود؛ یعنی مرورگر
        هیچ‌وقت وسط کار فونت را عوض نمی‌کند. یا از ابتدا شبنم است یا
        تا پایان همان صفحه جایگزین — در هر دو حالت بدون جابه‌جایی.
   ========================================== */
@font-face {
    font-family: 'Shabnam Fallback';
    src: local('Tahoma'), local('Segoe UI'), local('Geeza Pro'),
         local('Noto Naskh Arabic'), local('Arial');
    ascent-override: 92.77%;
    descent-override: 43.95%;
    line-gap-override: 0%;
}

/* ==========================================
   1. Shabnam Fonts Setup
   ========================================== */
@font-face {
    font-family: 'Shabnam';
    src: url("../fonts/Shabnam-Medium-FD.ca7cf4a4c0fa.woff2") format('woff2');
    font-weight: 400;
    font-style: normal;
    font-display: optional;
}

@font-face {
    font-family: 'Shabnam';
    src: url("../fonts/Shabnam-Bold-FD.3eaf5be195ab.woff2") format('woff2');
    font-weight: 700;
    font-style: normal;
    font-display: optional;
}

/* ==========================================
   2. Material Icons Setup (Local Only)
   ========================================== */
@font-face {
    font-family: 'Material Icons';
    src: url("../fonts/MaterialIcons-Regular.b073f5972d9c.woff2") format('woff2'),
         url("../fonts/MaterialIcons-Regular.5022f339b6ba.ttf") format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: block;
}

.material-icons {
    font-family: 'Material Icons' !important;
    font-weight: normal;
    font-style: normal;
    font-size: 24px;
    line-height: 1;
    letter-spacing: normal;
    text-transform: none;
    display: inline-block;
    white-space: nowrap;
    word-wrap: normal;
    direction: ltr;
    -webkit-font-feature-settings: 'liga';
    font-feature-settings: 'liga';
    -webkit-font-smoothing: antialiased;
}

/* ==========================================
   3. Material Symbols Outlined (Local)
   ========================================== */
@font-face {
    font-family: 'Material Symbols Outlined';
    src: url("../fonts/MaterialIcons-Regular.b073f5972d9c.woff2") format('woff2'),
         url("../fonts/MaterialIcons-Regular.5022f339b6ba.ttf") format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: block;
}

.material-symbols-outlined {
    font-family: 'Material Symbols Outlined', 'Material Icons' !important;
    font-weight: normal;
    font-style: normal;
    font-size: 24px;
    line-height: 1;
    letter-spacing: normal;
    text-transform: none;
    display: inline-block;
    white-space: nowrap;
    word-wrap: normal;
    direction: ltr;
    -webkit-font-feature-settings: 'liga';
    font-feature-settings: 'liga';
    -webkit-font-smoothing: antialiased;
}

/* ==========================================
   4. Twemoji Font Setup
   ========================================== */
@font-face {
    font-family: 'Twemoji Mozilla';
    src: url("../fonts/TwemojiMozilla-colr.9efd56e076c7.woff2") format('woff2');
    font-weight: 400;
    font-style: normal;
    font-display: optional;
}