/**
 * Unified typography scale — Vazirmatn only
 * Load before style.css (via @import or <link>).
 */

@font-face {
    font-family: 'Vazirmatn';
    src: url('../WebFonts/vazirmatn/Vazirmatn-Light.woff2') format('woff2');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Vazirmatn';
    src: url('../WebFonts/vazirmatn/Vazirmatn-Regular.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Vazirmatn';
    src: url('../WebFonts/vazirmatn/Vazirmatn-Medium.woff2') format('woff2');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Vazirmatn';
    src: url('../WebFonts/vazirmatn/Vazirmatn-Bold.woff2') format('woff2');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

:root {
    --font-family: 'Vazirmatn', sans-serif;

    --text-xs: 12px;
    --text-sm: 14px;
    --text-base: 16px;
    --text-lg: 20px;
    --text-xl: 24px;
    --text-2xl: 32px;

    --bs-body-font-family: var(--font-family);
    --bs-body-font-size: var(--text-sm);
    --bs-font-sans-serif: var(--font-family);
}

@media (max-width: 768px) {
    :root {
        --text-lg: 18px;
        --text-xl: 20px;
        --text-2xl: 24px;
    }
}

@media (max-width: 480px) {
    :root {
        --text-base: 15px;
        --text-lg: 17px;
        --text-xl: 19px;
        --text-2xl: 22px;
    }
}

html {
    font-size: var(--text-sm);
}

body {
    font-family: var(--font-family);
    font-size: var(--text-base);
    font-weight: 400;
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

body,
h1, h2, h3, h4, h5, h6,
p, span, a, li, td, th, div, small, strong, label,
button, input, select, textarea,
.btn, .form-control, .form-select, .badge, .nav-link,
.breadcrumb, .table, .card, .alert, .dropdown-item {
    font-family: var(--font-family);
}

h1, .h1 { font-size: var(--text-2xl); font-weight: 700; line-height: 1.25; }
h2, .h2 { font-size: var(--text-xl); font-weight: 700; line-height: 1.3; }
h3, .h3 { font-size: var(--text-lg); font-weight: 600; line-height: 1.35; }
h4, .h4 { font-size: var(--text-base); font-weight: 600; line-height: 1.4; }
h5, .h5 { font-size: var(--text-sm); font-weight: 600; line-height: 1.45; }
h6, .h6 { font-size: var(--text-xs); font-weight: 600; line-height: 1.5; }

.text-xs { font-size: var(--text-xs) !important; }
.text-sm { font-size: var(--text-sm) !important; }
.text-base { font-size: var(--text-base) !important; }
.text-lg { font-size: var(--text-lg) !important; }
.text-xl { font-size: var(--text-xl) !important; }
.text-2xl { font-size: var(--text-2xl) !important; }

.font-light { font-weight: 300; }
.font-normal { font-weight: 400; }
.font-medium { font-weight: 500; }
.font-bold { font-weight: 700; }

/* Legacy aliases — family unified; weight-only helpers */
.font-numbers,
.font-main,
.font-small,
.font-vazir-light,
.font-vazir-regular,
.font-vazir-medium,
.font-vazir-bold,
.font-vazir-thin,
.font-numbers-light,
.font-numbers-regular,
.font-numbers-medium,
.font-numbers-bold,
.font-numbers-thin {
    font-family: var(--font-family);
}

.font-small,
.font-vazir-medium { font-weight: 500; }
.font-vazir-light,
.font-numbers-light { font-weight: 300; }
.font-vazir-bold,
.font-numbers-bold { font-weight: 700; }
.font-vazir-thin,
.font-numbers-thin { font-weight: 300; }

.empty-state-icon {
    font-size: var(--text-2xl);
    color: var(--text-secondary);
    margin-bottom: 1.5rem;
}
