@font-face {
    font-family: 'IRANSans';
    src: url("/static/fonts/IRANSans/IRANSans.0b5055ac3573.woff2") format('woff2'),
         url("/static/fonts/IRANSans/IRANSans.66b5cb30e2ef.woff") format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

/* عنوان‌ها در سراسر رابط، متن تعاملی یا قابل انتخاب محسوب نمی‌شوند. */
:where(
    h1, h2, h3, h4, h5, h6,
    .page-title, .section-title, .card-title, .modal-title,
    .news-page-title, .news-card-title, .box-title, .panel-title,
    .timer-label
) {
    -webkit-user-select: none;
    user-select: none;
    cursor: default;
}

/* کل باکس عنوان، شامل زیرعنوان و متن‌های توضیحی آن، غیرقابل انتخاب است. */
:where([data-site-title-box], .header-box) {
    -webkit-user-select: none;
    user-select: none;
    cursor: default;
}

:where([data-site-title-box], .header-box) :where(*) {
    -webkit-user-select: none;
    user-select: none;
    cursor: default;
}

:where([data-site-title-box], .header-box) :where(a, button, input, select, textarea, [role="button"]) {
    cursor: pointer;
}

/* رفتار طبیعی کنترل‌های تعاملی داخل عنوان‌ها حفظ شود. */
:where(
    h1, h2, h3, h4, h5, h6,
    .page-title, .section-title, .card-title, .modal-title,
    .news-page-title, .news-card-title, .box-title, .panel-title
) :where(a, button, [role="button"]) {
    -webkit-user-select: none;
    user-select: none;
    cursor: pointer;
}

@font-face {
    font-family: 'IRANSansBlack';
    src: url("/static/fonts/IRANSansBlack/IRANSansWeb_Black.f477dd9634c9.woff2") format('woff2'),
         url("/static/fonts/IRANSansBlack/IRANSansWeb_Black.dfb26a2f06ef.woff") format('woff');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Vazirmatn';
    src: url("/static/fonts/vazirmatn/Vazirmatn-Regular.e0e713cd90d9.woff2") format('woff2');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Vazirmatn';
    src: url("/static/fonts/vazirmatn/Vazirmatn-Bold.49790e8b277d.woff2") format('woff2');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

/*
 * The archived Home page loaded IRANSans from FontCDN and rendered its
 * counters at weight 900. Map that same weight to the bundled Black face so
 * the original appearance remains available offline and on the national net.
 */
@font-face {
    font-family: 'IRANSans';
    src: url("/static/fonts/IRANSansBlack/IRANSansWeb_Black.f477dd9634c9.woff2") format('woff2'),
         url("/static/fonts/IRANSansBlack/IRANSansWeb_Black.dfb26a2f06ef.woff") format('woff');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

/* Original display face used by the Home counters; FD contains native Persian digits. */
@font-face {
    font-family: 'Vazirmatn FD Black';
    src: url("/static/fonts/vazirmatn/Vazirmatn-FD-Black.33a07e1a1f3b.woff2") format('woff2');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

/* Display face for compact, high-impact Persian statistics. */
@font-face {
    font-family: 'Lalezar';
    src: url("/static/fonts/lalezar/Lalezar-Regular.793f1fe6a8e3.ttf") format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

/*
 * Educational content must use the real Vazirmatn 400/700 files. Some page
 * cards inherit IRANSans, for which this project only ships a regular face.
 */
.rich-text-content {
    --content-strong-color: #111827;
    font-family: 'Vazirmatn', Tahoma, sans-serif;
    font-weight: 400;
}

.rich-text-content strong,
.rich-text-content b {
    font-weight: 700;
    color: var(--content-strong-color);
}

.dark-mode .rich-text-content,
body.dark-mode .rich-text-content,
html.dark-mode .rich-text-content {
    --content-strong-color: #ffffff;
}
