/* ==========================================================================
   PAYDAY TYPOGRAPHY -- satu sumber kebenaran font & ukuran teks.

   JENIS FONT
     Inter (variable, di-host sendiri di /assets/fonts/inter, lisensi OFL) dengan
     cadangan tumpukan sistem. Dimuat di layout utama dan layout auth.
     Email (Arial/Helvetica) dan PDF (DejaVu Sans) sengaja tidak memakai berkas ini.

   SKALA UKURAN -- hanya nilai ini yang boleh dipakai (tulis var(--fs-*), bukan px).
     Nilai di bawah adalah nilai KODE; di desktop seluruh shell ter-zoom
     (--payday-ui-scale, lihat payday-ui-scale.css) sehingga tampil lebih kecil.

     --fs-caption   12px   badge, hint, timestamp, sub-teks (terkecil, tidak ada yang lebih kecil)
     --fs-sm        13px   th tabel, label form, tombol kecil di tabel, teks bantuan
     --fs-base      14px   isi halaman, td, input, tombol, placeholder
     --fs-lead      16px   subjudul, angka ringkasan
     --fs-title-sm  18px   judul modal, judul kartu
     --fs-title     20px   judul halaman
     --fs-display   28px   angka KPI

   BOBOT     400 isi | 500 menu | 600 label/th/tombol | 700 judul/badge
   TINGGI BARIS  1.4 isi | 1.3 judul | 1.2 tombol
   ========================================================================== */
@font-face {
    font-family: "Inter";
    font-style: normal;
    font-weight: 100 900;
    font-display: swap;
    src: url("../fonts/inter/inter-latin-ext-wght-normal.woff2") format("woff2-variations");
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
    font-family: "Inter";
    font-style: normal;
    font-weight: 100 900;
    font-display: swap;
    src: url("../fonts/inter/inter-latin-wght-normal.woff2") format("woff2-variations");
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
    --font-sans: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    --font-mono: ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", Menlo, monospace;

    --fs-caption: 12px;
    --fs-sm: 13px;
    --fs-base: 14px;
    --fs-lead: 16px;
    --fs-title-sm: 18px;
    --fs-title: 20px;
    --fs-display: 28px;

    --lh-body: 1.4;
    --lh-title: 1.3;
    --lh-button: 1.2;

    /* Nama lama tetap berlaku sebagai alias supaya kode lama tidak patah. */
    --tm-font-sans: var(--font-sans);
    --tm-fs-xs: var(--fs-caption);
    --tm-fs-sm: var(--fs-sm);
    --tm-fs-base: var(--fs-base);
    --tm-fs-md: var(--fs-lead);
    --tm-fs-lg: var(--fs-title);
}

/* Semua kontrol memakai font yang sama -- termasuk textarea dan kolom pencarian
   Select2 yang sebelumnya jatuh ke sans-serif bawaan browser. */
html,
body,
button,
input,
select,
textarea,
optgroup,
.form-control,
.custom-select,
.select2-container,
.select2-search__field,
.select2-results__option,
.select2-dropdown,
.dataTables_wrapper,
.dataTables_wrapper input,
.dataTables_wrapper select,
.modal,
.swal2-popup,
.swal2-container,
.tooltip,
.popover,
.dropdown-menu {
    font-family: var(--font-sans);
}

/* Angka rata (tabular) untuk tabel, jam, nominal -- kolom angka sejajar. */
.table,
.dataTables_wrapper,
.tm-badge,
.pi-financial-note,
input[type="number"],
input[type="time"],
input[type="date"] {
    font-variant-numeric: tabular-nums;
}

/* Monospace hanya untuk kode teknis. */
code,
kbd,
pre,
samp,
.tm-mono {
    font-family: var(--font-mono);
}

/* Tinggi baris konsisten. */
.tm-btn,
.pi-btn,
.btn {
    line-height: var(--lh-button);
}
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
    line-height: var(--lh-title);
}

/* Shell tema (sidebar, navbar, footer, badge) mengikuti skala yang sama. Nilai
   vendor 0.9rem / 13.2px / 75% dirapikan ke token terdekat. */
.footer { font-size: var(--fs-sm); }
.navbar .navbar-menu-wrapper .navbar-nav .nav-item.dropdown .navbar-dropdown { font-size: var(--fs-base); }
.sidebar .nav .nav-item .nav-link .menu-title,
.sidebar .nav.sub-menu .nav-item .nav-link,
.dropdown .dropdown-menu .dropdown-item,
.breadcrumb,
.breadcrumb .breadcrumb-item { font-size: var(--fs-base); }
.badge { font-size: var(--fs-caption); }
.card .card-title { font-size: var(--fs-title-sm); }
