body {
    line-height: var(--font-line-height-base);
    font-size: var(--font-size-14);
    font-weight: var(--font-weight-regular);
}

body.lang-fa {
    font-family: var(--font-family-fa-primary);
}

h1,
h2,
h3,
h4,
h5,
h6 {
    line-height: 1.3;
    font-weight: var(--font-weight-bold);
    color: var(--color-text-strong);
    margin: 0;
}

h1 {
    font-size: var(--font-size-20);
}

h2 {
    font-size: var(--font-size-18);
}

h3 {
    font-size: var(--font-size-16);
}

h4,
h5,
h6 {
    font-size: var(--font-size-14);
}

p,
li,
dd,
label,
input,
select,
textarea,
button,
th,
td {
    font-size: var(--font-size-14);
    line-height: var(--font-line-height-base);
}

p,
li,
dd {
    color: var(--color-text-base);
    font-weight: var(--font-weight-regular);
}

small,
.field__hint,
.data-table__muted,
.shell-header__brand-copy span {
    font-size: var(--font-size-12);
    line-height: 1.4;
    color: var(--color-text-secondary);
    font-weight: var(--font-weight-regular);
}

strong,
b,
thead th,
.card h2,
.card h3,
.card__topline strong {
    font-weight: var(--font-weight-bold);
    color: var(--color-text-strong);
}

.eyebrow {
    color: var(--color-accent);
    font-size: var(--font-size-12);
    font-weight: var(--font-weight-bold);
}

.lede {
    max-width: 70ch;
    font-size: var(--font-size-16);
    color: var(--color-text-secondary);
}

/**
 * ⭐⭐⭐ WI-117 — ارقامِ لاتین که باید **لاتین دیده شوند** (کد انبار، کدِ قفسه، بارکد…).
 *
 * ⚠️⚠️⚠️ چرا لازم است: خودِ `Iransans-web` رقمِ لاتین را با **گلیفِ فارسی** می‌کشد.
 *   سنجهٔ عینی روی همان فونت: عرضِ «1» و «۱» هر دو ۴٫۶۱px و «4»/«۴» هر دو ۸٫۷۵px —
 *   یعنی جانشینیِ گلیف، نه تبدیلِ متن. پس DOM می‌تواند دقیقاً `i14` باشد (کدپوینت‌های
 *   U+31/U+34) و کاربر `i۱۴` ببیند. هیچ مقدارِ نرمال‌سازی سمتِ سرور این را حل نمی‌کند؛
 *   تنها راه، فونتی است که تفکیک می‌کند (Tahoma این کار را می‌کند: ۸٫۷۳ در برابرِ ۹٫۱۵).
 *
 * ⚠️ دامنه عمداً تنگ است: فقط عنصرهایی که صریح «کدِ لاتین» علامت خورده‌اند
 *   (`<bdi dir="ltr">` در مسیرهای کد، یا کلاسِ `.latin-code`). متنِ فارسی و ارقامِ
 *   فارسیِ نمایشی دست‌نخورده می‌مانند.
 */
bdi[dir="ltr"],
.latin-code {
    font-family: Tahoma, Arial, "Segoe UI", sans-serif !important;
    font-variant-numeric: lining-nums tabular-nums;
}
