/* ============================================================
   SERENO · las dos tipografías, servidas por nosotros
   ============================================================
   Los archivos viven en web/tipos/ y se sirven desde la misma
   carpeta que la app. NO se carga nada de fonts.googleapis.com:
   en obra se trabaja sin señal, y una fuente que a veces no llega
   es una pantalla que a veces se ve distinta.

   Son fuentes VARIABLES: un solo archivo cubre de 400 a 700, así
   que no hay que bajar un archivo por peso y no existen pesos
   sintéticos. Pesan 128 KB en total, los cuatro.

   `font-display: swap` a propósito: el texto se ve desde el primer
   momento con la fuente del sistema y cambia cuando llega la
   nuestra. Nunca hay un hueco en blanco.

   Los `unicode-range` son los de Google Fonts, sin tocar: con
   ellos el navegador baja `latin-ext` SOLO si la pantalla trae un
   carácter que lo necesita.

   CÓMO SE CARGA. Con <link>, NO pegando esto dentro del HTML. Las
   rutas de aquí abajo son NOMBRES SUELTOS y se resuelven contra
   ESTE archivo, así que funcionan igual desde la raíz que desde
   /nuevo/ o /nuevo/demo/:

       campo    web/index.html        href="tipos/tipos.css"
       oficina  web/nuevo/index.html  href="../tipos/tipos.css"
       demo     web/nuevo/demo/…      href="../../tipos/tipos.css"

   Si se pegara el contenido dentro del HTML, las rutas se
   resolverían contra la PÁGINA y la oficina buscaría las fuentes
   en /nuevo/tipos/, que no existe. Por eso va con <link>.

   LO QUE SÍ CUBREN Y LO QUE NO. Comprobado carácter por carácter
   contra el texto de las DOS apps:

   · Todo el español está: ñ Ñ á é í ó ú ü Ü ¿ ¡ ° ² · — « ». No
     falta ni uno. Manrope cubre 368 caracteres y Source Sans 3, 781.
   · NO tienen flechas ni triangulitos: → (13 veces en las apps),
     ↗ (5), ▾ (4), ▶ (3), ▸, ←, ☰. Tampoco los emoji 🔔 y 📷.
     Ésos los va a pintar la fuente del sistema, que es justo para
     lo que sirve el `fallback`. Los emoji siempre funcionan así.
     Las flechas y los triangulitos conviene MIRARLOS al aplicar
     esto: si se ven de otro peso o descolocados respecto al texto
     de al lado, se cambian por una forma de CSS o un SVG. No es
     un error, es algo que hay que ver con los ojos.

   TODAVÍA NO SE USA. Estos archivos están aquí y NADIE los carga:
   ni campo ni oficina traen el <link>. Se suben inertes con la
   carpeta y no cambian ni un pixel. Cuando se apruebe la
   tipografía, falta:
     1. el <link> en cada app (rutas arriba)
     2. usar --fuente-titulo y --fuente-texto en los estilos
     3. agregar los cuatro .woff2 a CASCARON en web/sw.js, para
        que estén guardados cuando no haya señal — que es la razón
        de servirlas nosotros y no traerlas de Google

   Licencias: OFL-Manrope.txt y OFL-SourceSans3.txt, en esta misma
   carpeta. Las dos son SIL Open Font License 1.1. Las fuentes son
   VARIABLES: Manrope va de 200 a 800 y Source Sans 3 de 200 a 900,
   así que los pesos 400, 500, 600 y 700 que usamos son reales, no
   sintéticos.
   ============================================================ */


/* Manrope · latin-ext */
@font-face{
  font-family:'Manrope';
  font-style:normal;
  font-weight:400 700;
  font-display:swap;
  src:url(manrope-latin-ext.woff2) format('woff2');
  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;
}

/* Manrope · latin */
@font-face{
  font-family:'Manrope';
  font-style:normal;
  font-weight:400 700;
  font-display:swap;
  src:url(manrope-latin.woff2) format('woff2');
  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;
}

/* Source Sans 3 · latin-ext */
@font-face{
  font-family:'Source Sans 3';
  font-style:normal;
  font-weight:400 700;
  font-display:swap;
  src:url(source-sans-3-latin-ext.woff2) format('woff2');
  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;
}

/* Source Sans 3 · latin */
@font-face{
  font-family:'Source Sans 3';
  font-style:normal;
  font-weight:400 700;
  font-display:swap;
  src:url(source-sans-3-latin.woff2) format('woff2');
  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;
}


/* Los nombres compartidos. Campo y oficina usan EXACTAMENTE éstos:
   cambiar un valor aquí lo cambia en las dos, que es de lo que se
   trata. Acordados con Fable el 10 de septiembre de 2026. */
:root{
  --fuente-titulo: 'Manrope', system-ui, -apple-system, sans-serif;
  --fuente-texto:  'Source Sans 3', system-ui, -apple-system, sans-serif;
}
