/* fonts.css - Gestion centralisée des polices */
/* À placer dans le dossier racine à côté de styles.css */

/* Import des polices depuis Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600;700&display=swap');

/* Variables CSS pour les polices */
:root {
    --font-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Helvetica Neue', sans-serif;
    --font-mono: 'JetBrains Mono', 'SF Mono', 'Monaco', 'Consolas', 'Liberation Mono', 'Courier New', monospace;
}

/* Optimisation du rendu des polices */
body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
    font-feature-settings: "liga" 1, "calt" 1; /* Ligatures et alternatives contextuelles */
}

/* Classes utilitaires pour les polices */
.font-sans {
    font-family: var(--font-sans) !important;
}

.font-mono {
    font-family: var(--font-mono) !important;
}

/* Classe spéciale pour les nombres avec alignement tabulaire */
.font-number {
    font-family: var(--font-mono);
    font-variant-numeric: tabular-nums;
    font-feature-settings: "tnum" 1, "salt" 1;
    letter-spacing: -0.02em;
}

/* Amélioration de la lisibilité pour Inter */
@supports (font-variation-settings: normal) {
    body {
        font-variation-settings: "slnt" 0;
    }
}

/* Prévention du FOUT (Flash of Unstyled Text) */
.fonts-loading * {
    opacity: 0;
}

.fonts-loaded * {
    opacity: 1;
    transition: opacity 0.3s ease-in-out;
}