/* Central typography: change the local faces and --font here, not per page.
   B Nazanin has two real files: regular 400 and bold 700.
   Font provenance and checksums: fonts/BNazanin-SOURCE.md. */
@font-face {
    font-family: 'B Nazanin';
    src: url('fonts/BNazanin-Regular.woff2') format('woff2');
    font-style: normal;
    font-weight: 400;
    font-display: swap;
}
@font-face {
    font-family: 'B Nazanin';
    src: url('fonts/BNazanin-Bold.woff2') format('woff2');
    font-style: normal;
    font-weight: 700;
    font-display: swap;
}
/* Keep the existing local face for characters absent from this older font,
   including Latin names; the Persian interface uses B Nazanin. */
@font-face {
    font-family: 'Vazirmatn';
    src: url('fonts/Vazirmatn.woff2') format('woff2');
    font-style: normal;
    font-weight: 100 900;
    font-display: swap;
}

:root {
    --font: 'B Nazanin', 'Vazirmatn', Tahoma, Arial, sans-serif;
    --font-regular: 400;
    --font-bold: 700;
    --text-line-height: 1.8;
    /* B Nazanin needs slightly larger text than the previous sans face.
       Component CSS shares these sizes so font tuning stays centralized. */
    --text-xs: 13px;
    --text-sm: 15px;
    --text-md: 16px;
    --text-base: 17px;
    --text-lg: 18px;
    --text-xl: 19px;
    /* Django admin consumes this alias; its monospace family is preserved. */
    --font-family-primary: var(--font);
}

body { font-family: var(--font); font-weight: var(--font-regular); font-size: var(--text-base); font-synthesis-weight: none; }
button, input, select, optgroup, textarea { font-family: inherit; }
input::placeholder, textarea::placeholder, input::file-selector-button { font-family: inherit; }
strong, b { font-weight: var(--font-bold); }
/* No blanket descendant reset: code, pre, kbd and SVG icons keep their
   deliberate typography and rendering. Component sizes remain in UI CSS. */
