/*
    LA LETRA DE TODA LA APLICACION: IBM Plex Sans.

    Antes de esta hoja convivian Poppins, Jost, Open Sans, Roboto, Fraunces,
    Franklin Gothic y Verdana, cada una llegada con su pantalla. Alinearlas
    corrigiendo archivo por archivo seria interminable y fragil; esta hoja se
    carga AL FINAL del <head> de los layouts y gana la cascada con una sola
    regla ancha.

    Lo que la regla NO toca, a proposito:
      - Las fuentes de iconos (FontAwesome, Material Icons, Glyphicons):
        pisarles la familia convierte cada icono en un cuadrito.
      - El modulo de documentos (.dm-wrap): tiene su propio sistema tipografico
        (IBM Plex Sans + Spectral para titulos + IBM Plex Mono para huellas) y
        ya esta alineado a esta misma familia.
      - Codigo y monoespaciado (code, pre, kbd, samp).

    El :not() con argumento complejo es de selectores nivel 4: en un navegador
    viejo el selector se invalida completo y la pantalla queda como estaba, que
    es la degradacion correcta.
*/

:root {
    --letra-app: "IBM Plex Sans", "Segoe UI", Arial, sans-serif;
}

html, body {
    font-family: var(--letra-app);
}

body :not(.dm-wrap):not(.dm-wrap *):not(.fa):not(.fas):not(.far):not(.fab):not(.fal):not([class^="fa-"]):not([class*=" fa-"]):not(.material-icons):not(.glyphicon):not(code):not(pre):not(kbd):not(samp) {
    font-family: var(--letra-app) !important;
}

/* El monoespaciado de la casa, para lo que si es codigo o huella. */
code, pre, kbd, samp {
    font-family: "IBM Plex Mono", Consolas, monospace;
}
