/*
 * Nexa — déclarations @font-face et application globale.
 * Fichiers : webok/public/assets/fonts/nexa/*.ttf
 */

@font-face {
    font-family: 'Nexa';
    src: url('../fonts/nexa/Nexa-Thin.ttf') format('truetype');
    font-weight: 100;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Nexa';
    src: url('../fonts/nexa/Nexa-Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Nexa';
    src: url('../fonts/nexa/Nexa-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Nexa';
    src: url('../fonts/nexa/Nexa-Book.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Nexa';
    src: url('../fonts/nexa/Nexa-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Nexa';
    src: url('../fonts/nexa/Nexa-XBold.ttf') format('truetype');
    font-weight: 800;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Nexa';
    src: url('../fonts/nexa/Nexa-Heavy.ttf') format('truetype');
    font-weight: 850;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Nexa';
    src: url('../fonts/nexa/Nexa-Black.ttf') format('truetype');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

/* Italiques */
@font-face {
    font-family: 'Nexa';
    src: url('../fonts/nexa/Nexa-ThinItalic.ttf') format('truetype');
    font-weight: 100;
    font-style: italic;
    font-display: swap;
}
@font-face {
    font-family: 'Nexa';
    src: url('../fonts/nexa/Nexa-LightItalic.ttf') format('truetype');
    font-weight: 300;
    font-style: italic;
    font-display: swap;
}
@font-face {
    font-family: 'Nexa';
    src: url('../fonts/nexa/Nexa-Italic.ttf') format('truetype');
    font-weight: 400;
    font-style: italic;
    font-display: swap;
}
@font-face {
    font-family: 'Nexa';
    src: url('../fonts/nexa/Nexa-BookItalic.ttf') format('truetype');
    font-weight: 500;
    font-style: italic;
    font-display: swap;
}
@font-face {
    font-family: 'Nexa';
    src: url('../fonts/nexa/Nexa-BoldItalic.ttf') format('truetype');
    font-weight: 700;
    font-style: italic;
    font-display: swap;
}
@font-face {
    font-family: 'Nexa';
    src: url('../fonts/nexa/Nexa-XBoldItalic.ttf') format('truetype');
    font-weight: 800;
    font-style: italic;
    font-display: swap;
}
@font-face {
    font-family: 'Nexa';
    src: url('../fonts/nexa/Nexa-HeavyItalic.ttf') format('truetype');
    font-weight: 850;
    font-style: italic;
    font-display: swap;
}
@font-face {
    font-family: 'Nexa';
    src: url('../fonts/nexa/Nexa-BlackItalic.ttf') format('truetype');
    font-weight: 900;
    font-style: italic;
    font-display: swap;
}

/*
 * Application globale.
 * On force Nexa partout, en préservant les icônes (FontAwesome, Material, etc.).
 */
:root {
    --font-nexa: 'Nexa', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
                 "Helvetica Neue", Arial, "Noto Sans", sans-serif;
}

html,
body,
button,
input,
select,
textarea,
optgroup,
.btn,
.form-control,
.form-select,
.swal2-modern,
.swal2-modern__title,
.swal2-modern__body,
.swal2-modern__btn,
#toast-container > div {
    font-family: var(--font-nexa) !important;
}

/* Préserver les icônes — elles dépendent de leur propre font-family. */
.fa, .fas, .far, .fal, .fad,
[class^="fa-"]:not(.fab),
[class*=" fa-"]:not(.fab) {
    font-family: "Font Awesome 6 Pro", "Font Awesome 5 Pro",
                 "Font Awesome 6 Free", "Font Awesome 5 Free",
                 FontAwesome !important;
}
.fab, [class^="fa-"].fab, [class*=" fa-"].fab {
    font-family: "Font Awesome 6 Brands", "Font Awesome 5 Brands" !important;
}
.material-icons,
.material-symbols-outlined {
    font-family: 'Material Icons', 'Material Symbols Outlined' !important;
}
