/* NikNote synchronous font system v15: font faces load before first paint. */
@font-face{font-family:NikVazirmatn;src:url('/assets/fonts/Vazirmatn-Regular.woff2') format('woff2'),url('/assets/fonts/Vazirmatn-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:block}
@font-face{font-family:NikVazirmatn;src:url('/assets/fonts/Vazirmatn-Bold.woff2') format('woff2'),url('/assets/fonts/Vazirmatn-Bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:block}
@font-face{font-family:NikVazirmatn;src:url('/assets/fonts/Vazirmatn-Black.woff2') format('woff2'),url('/assets/fonts/Vazirmatn-Black.ttf') format('truetype');font-weight:900;font-style:normal;font-display:block}

@font-face{font-family:NikVazirmatnRD;src:url('/assets/fonts/Vazirmatn-RD-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:block}
@font-face{font-family:NikVazirmatnRD;src:url('/assets/fonts/Vazirmatn-RD-Bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:block}

@font-face{font-family:NikEstedad;src:url('/assets/fonts/Estedad-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:block}
@font-face{font-family:NikEstedad;src:url('/assets/fonts/Estedad-Bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:block}
@font-face{font-family:NikEstedad;src:url('/assets/fonts/Estedad-Black.ttf') format('truetype');font-weight:900;font-style:normal;font-display:block}

@font-face{font-family:NikCairo;src:url('/assets/fonts/Cairo-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:block}
@font-face{font-family:NikCairo;src:url('/assets/fonts/Cairo-Bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:block}
@font-face{font-family:NikCairo;src:url('/assets/fonts/Cairo-Black.ttf') format('truetype');font-weight:900;font-style:normal;font-display:block}

@font-face{font-family:NikLalezar;src:url('/assets/fonts/Lalezar-Regular.ttf') format('truetype');font-weight:400 900;font-style:normal;font-display:block}
@font-face{font-family:NikMarkazi;src:url('/assets/fonts/MarkaziText-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:block}
@font-face{font-family:NikMarkazi;src:url('/assets/fonts/MarkaziText-Bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:block}

@font-face{font-family:NikNotoNaskhArabic;src:url('/assets/fonts/NotoNaskhArabic-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:block}
@font-face{font-family:NikNotoNaskhArabic;src:url('/assets/fonts/NotoNaskhArabic-Bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:block}

@font-face{font-family:NikNotoSansArabic;src:url('/assets/fonts/NotoSansArabic-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:block}
@font-face{font-family:NikNotoSansArabic;src:url('/assets/fonts/NotoSansArabic-Bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:block}
@font-face{font-family:NikNotoSansArabic;src:url('/assets/fonts/NotoSansArabic-Black.ttf') format('truetype');font-weight:900;font-style:normal;font-display:block}

@font-face{font-family:NikNotoNastaliqUrdu;src:url('/assets/fonts/NotoNastaliqUrdu-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:block}
@font-face{font-family:NikNotoNastaliqUrdu;src:url('/assets/fonts/NotoNastaliqUrdu-Bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:block}

@font-face{font-family:NikReadexPro;src:url('/assets/fonts/ReadexPro-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:block}
@font-face{font-family:NikReadexPro;src:url('/assets/fonts/ReadexPro-Bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:block}

@font-face{font-family:NikSahel;src:url('/assets/fonts/Sahel.woff2') format('woff2'),url('/assets/fonts/Sahel.ttf') format('truetype');font-weight:400;font-style:normal;font-display:block}
@font-face{font-family:NikSahel;src:url('/assets/fonts/Sahel-Bold.woff2') format('woff2'),url('/assets/fonts/Sahel-Bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:block}

@font-face{font-family:NikSamim;src:url('/assets/fonts/Samim.woff2') format('woff2'),url('/assets/fonts/Samim.ttf') format('truetype');font-weight:400;font-style:normal;font-display:block}
@font-face{font-family:NikSamim;src:url('/assets/fonts/Samim-Bold.woff2') format('woff2'),url('/assets/fonts/Samim-Bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:block}

@font-face{font-family:NikShabnam;src:url('/assets/fonts/Shabnam.woff2') format('woff2'),url('/assets/fonts/Shabnam.ttf') format('truetype');font-weight:400;font-style:normal;font-display:block}
@font-face{font-family:NikShabnam;src:url('/assets/fonts/Shabnam-Bold.woff2') format('woff2'),url('/assets/fonts/Shabnam-Bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:block}

@font-face{font-family:NikTajawal;src:url('/assets/fonts/Tajawal-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:block}
@font-face{font-family:NikTajawal;src:url('/assets/fonts/Tajawal-Bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:block}

@font-face{font-family:NikBNazanin;src:url('/assets/fonts/B-NAZANIN.TTF') format('truetype');font-weight:400 900;font-style:normal;font-display:block}
@font-face{font-family:NikBTitr;src:url('/assets/fonts/B%20Titr%20Bold_0.ttf') format('truetype');font-weight:400 900;font-style:normal;font-display:block}
@font-face{font-family:NikBMitra;src:url('/assets/fonts/B%20Mitra_0.ttf') format('truetype');font-weight:400;font-style:normal;font-display:block}
@font-face{font-family:NikBMitra;src:url('/assets/fonts/B%20Mitra%20Bold_0.ttf') format('truetype');font-weight:700;font-style:normal;font-display:block}
@font-face{font-family:NikBLotus;src:url('/assets/fonts/B%20Lotus_0.ttf') format('truetype');font-weight:400;font-style:normal;font-display:block}
@font-face{font-family:NikBLotus;src:url('/assets/fonts/B%20Lotus%20Bold_0.ttf') format('truetype');font-weight:700;font-style:normal;font-display:block}
@font-face{font-family:NikBZar;src:url('/assets/fonts/B%20Zar_0.ttf') format('truetype');font-weight:400;font-style:normal;font-display:block}
@font-face{font-family:NikBZar;src:url('/assets/fonts/B%20Zar%20Bold_0.ttf') format('truetype');font-weight:700;font-style:normal;font-display:block}
@font-face{font-family:NikBKoodak;src:url('/assets/fonts/B%20Koodak%20Bold_0.ttf') format('truetype');font-weight:400 900;font-style:normal;font-display:block}

html,body,body *,input,button,textarea,select,option,optgroup,.btn,.form-control,.form-select,.card,.modal,.dropdown-menu,.alert,.badge,table,th,td,a,p,span,div,label,small,strong,em,h1,h2,h3,h4,h5,h6{
    font-family:var(--nik-font-stack)!important;
}

.mcq-player-page,.mcq-player-page *,.qb3,.qb3 *,.qv,.qv *,.questions-page,.questions-page *{
    --main-font:var(--nik-font-stack)!important;
    font-family:var(--nik-font-stack)!important;
}

:root{--nik-font-stack:"NikVazirmatn",Tahoma,sans-serif}
html,body,body *{font-family:var(--nik-font-stack)!important}

.font-page {
    width: min(1180px, 100%);
    margin-inline: auto;
    display: grid;
    gap: 14px;
}

.font-hero {
    background: var(--app-card, #fff);
    border: 1px solid var(--app-border, #e5e7eb);
    border-radius: 22px;
    padding: 18px;
    box-shadow: 0 16px 35px rgba(15, 23, 42, .07);
}

.font-title {
    font-weight: 950;
    font-size: clamp(26px, 4vw, 46px);
    margin: 0;
}

.font-debug {
    direction: ltr;
    text-align: left;
    background: rgba(148, 163, 184, .12);
    border-radius: 14px;
    padding: 10px;
    overflow: auto;
}

.font-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
}

.font-card {
    background: var(--app-card, #fff);
    border: 1px solid var(--app-border, #e5e7eb);
    border-radius: 18px;
    padding: 12px;
    box-shadow: 0 10px 25px rgba(15, 23, 42, .06);
    display: grid;
    gap: 8px;
    min-height: 180px;
}

.font-card.is-active {
    border-color: var(--app-primary, #2563eb);
    box-shadow: 0 0 0 3px rgba(var(--app-primary-rgb, 37, 99, 235), .16);
}

.font-name { font-weight: 950; font-size: 18px; }

.font-sample {
    border-radius: 14px;
    background: rgba(148, 163, 184, .10);
    padding: 10px;
    line-height: 1.9;
    min-height: 76px;
}

.font-note {
    color: var(--app-muted, #6b7280);
    font-size: 13px;
    min-height: 36px;
}

.font-card .btn { font-weight: 900; }

@media (max-width: 1100px) { .font-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 820px) { .font-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 480px) { .font-grid { grid-template-columns: 1fr; } }
