/* ═══════════════════════════════════════════════════════════════
   فونت B Nazanin — با fallback امن
   ═══════════════════════════════════════════════════════════════ */

/* تلاش برای لود B Nazanin از چند منبع */
@font-face {
  font-family: 'BNazanin';
  src: local('B Nazanin'),
       local('BNazanin'),
       local('B-Nazanin'),
       local('Nazanin'),
       url('https://cdn.jsdelivr.net/gh/font-store/font-b-nazanin@master/BNazanin.woff2') format('woff2'),
       url('https://cdn.jsdelivr.net/gh/font-store/font-b-nazanin@master/BNazanin.woff') format('woff'),
       url('https://cdn.jsdelivr.net/gh/font-store/font-b-nazanin@master/BNazanin.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'BNazanin';
  src: local('B Nazanin Bold'),
       local('BNazanin Bold'),
       local('BNazanin-Bold'),
       url('https://cdn.jsdelivr.net/gh/font-store/font-b-nazanin@master/BNazaninBold.woff2') format('woff2'),
       url('https://cdn.jsdelivr.net/gh/font-store/font-b-nazanin@master/BNazaninBold.woff') format('woff'),
       url('https://cdn.jsdelivr.net/gh/font-store/font-b-nazanin@master/BNazaninBold.ttf') format('truetype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

/* اعمال فونت روی کل سامانه */
:root {
  --font-fa: 'BNazanin', 'B Nazanin', 'Vazirmatn', 'Tahoma', sans-serif;
}

html, body,
input, select, textarea, button, .btn,
.card, .tbl, .stat-card, .course-card,
h1, h2, h3, h4, h5, h6,
label, span, div, p, a, td, th,
.sidebar, .main, .topbar, .login-card,
.badge, .shift-badge, .att-btn, .tab {
  font-family: var(--font-fa) !important;
}

/* بزرگ‌تر کردن فونت B Nazanin چون کوچک‌تر از Vazir است */
body {
  font-size: 15.5px !important;
  line-height: 1.85 !important;
}

h1 { font-size: 24px !important; }
h2 { font-size: 19px !important; }
h3 { font-size: 17px !important; }

.card h2 { font-size: 17.5px !important; }
.stat-card .value { font-size: 32px !important; font-weight: 700 !important; }
.stat-card .label { font-size: 14px !important; }

.tbl th { font-size: 14px !important; }
.tbl td { font-size: 14.5px !important; }

input, select, textarea {
  font-size: 15px !important;
  font-weight: 700 !important;
}

button, .btn {
  font-size: 15px !important;
  font-weight: 700 !important;
}

.sidebar nav a { font-size: 15px !important; }

.login-card h2 { font-size: 24px !important; }
.login-card p.sub { font-size: 14.5px !important; }

/* اعداد فارسی زیباتر در جدول‌ها و کارت‌ها */
.stat-card .value,
.tbl td,
.badge,
.shift-badge,
.att-btn {
  font-feature-settings: "ss02";
  font-variant-numeric: normal;
  letter-spacing: .3px;
}