/*! Lector Ambiental — Todos los derechos reservados. Ver LICENSE.md. */
/* Tipografías para leer (SIL Open Font License 1.1, ver fonts/LICENCIA-*.txt).
 * Van en el propio sitio (la CSP no permite fuentes de afuera) y el navegador
 * baja cada una recién cuando se muestra. Subconjunto latino: alcanza para español e inglés;
 * otros caracteres caen en la fuente de respaldo. */

@font-face { font-family: 'Literata'; font-style: normal; font-weight: 200 900; font-display: swap;
  src: url('../fonts/literata-latin-wght-normal.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; }
@font-face { font-family: 'Literata'; font-style: italic; font-weight: 200 900; font-display: swap;
  src: url('../fonts/literata-latin-wght-italic.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; }
@font-face { font-family: 'EB Garamond'; font-style: normal; font-weight: 400 800; font-display: swap;
  src: url('../fonts/eb-garamond-latin-wght-normal.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; }
@font-face { font-family: 'EB Garamond'; font-style: italic; font-weight: 400 800; font-display: swap;
  src: url('../fonts/eb-garamond-latin-wght-italic.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; }
@font-face { font-family: 'Lora'; font-style: normal; font-weight: 400 700; font-display: swap;
  src: url('../fonts/lora-latin-wght-normal.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; }
@font-face { font-family: 'Lora'; font-style: italic; font-weight: 400 700; font-display: swap;
  src: url('../fonts/lora-latin-wght-italic.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; }
@font-face { font-family: 'Merriweather'; font-style: normal; font-weight: 300 900; font-display: swap;
  src: url('../fonts/merriweather-latin-wght-normal.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; }
@font-face { font-family: 'Merriweather'; font-style: italic; font-weight: 300 900; font-display: swap;
  src: url('../fonts/merriweather-latin-wght-italic.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; }
@font-face { font-family: 'Atkinson Hyperlegible'; font-style: normal; font-weight: 400; font-display: swap;
  src: url('../fonts/atkinson-hyperlegible-latin-400-normal.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; }
@font-face { font-family: 'Atkinson Hyperlegible'; font-style: italic; font-weight: 400; font-display: swap;
  src: url('../fonts/atkinson-hyperlegible-latin-400-italic.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; }
@font-face { font-family: 'Atkinson Hyperlegible'; font-style: normal; font-weight: 700; font-display: swap;
  src: url('../fonts/atkinson-hyperlegible-latin-700-normal.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; }
@font-face { font-family: 'Atkinson Hyperlegible'; font-style: italic; font-weight: 700; font-display: swap;
  src: url('../fonts/atkinson-hyperlegible-latin-700-italic.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; }

/* OpenDyslexic: archivos completos y sin modificar, tal como los publica su autora
 * (github.com/antijingoist/opendyslexic, versión 0.990). */
@font-face { font-family: 'OpenDyslexic'; font-style: normal; font-weight: 400; font-display: swap;
  src: url('../fonts/OpenDyslexic-Regular.woff2') format('woff2'); }
@font-face { font-family: 'OpenDyslexic'; font-style: italic; font-weight: 400; font-display: swap;
  src: url('../fonts/OpenDyslexic-Italic.woff2') format('woff2'); }
@font-face { font-family: 'OpenDyslexic'; font-style: normal; font-weight: 700; font-display: swap;
  src: url('../fonts/OpenDyslexic-Bold.woff2') format('woff2'); }
@font-face { font-family: 'OpenDyslexic'; font-style: italic; font-weight: 700; font-display: swap;
  src: url('../fonts/OpenDyslexic-BoldItalic.woff2') format('woff2'); }

/* Tipografía elegida (data-family en <html>): texto y títulos del libro.
 * --font-scale empareja el tamaño aparente entre fuentes. */
:root[data-family='literata'] { --reader-font: 'Literata', Georgia, serif; --book-heading: 'Literata', Georgia, serif; --font-scale: 0.97; }
:root[data-family='garamond'] { --reader-font: 'EB Garamond', Garamond, Georgia, serif; --book-heading: 'EB Garamond', Garamond, Georgia, serif; --font-scale: 1.1; }
:root[data-family='lora'] { --reader-font: 'Lora', Georgia, serif; --book-heading: 'Lora', Georgia, serif; --font-scale: 0.98; }
:root[data-family='merriweather'] { --reader-font: 'Merriweather', Georgia, serif; --book-heading: 'Merriweather', Georgia, serif; --font-scale: 0.93; }
:root[data-family='atkinson'] { --reader-font: 'Atkinson Hyperlegible', system-ui, sans-serif; --book-heading: 'Atkinson Hyperlegible', system-ui, sans-serif; --font-scale: 1; }
:root[data-family='dislexia'] { --reader-font: 'OpenDyslexic', 'Comic Sans MS', sans-serif; --book-heading: 'OpenDyslexic', 'Comic Sans MS', sans-serif; --font-scale: 0.88; }
:root[data-family='sans'] { --reader-font: system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif; --book-heading: system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif; --font-scale: 0.98; }

/* Vista previa en el selector */
.font-pick [data-family='clasica'] .aa { font-family: var(--reader-font-default); }
.font-pick [data-family='literata'] .aa { font-family: 'Literata', Georgia, serif; }
.font-pick [data-family='garamond'] .aa { font-family: 'EB Garamond', Garamond, Georgia, serif; }
.font-pick [data-family='lora'] .aa { font-family: 'Lora', Georgia, serif; }
.font-pick [data-family='merriweather'] .aa { font-family: 'Merriweather', Georgia, serif; }
.font-pick [data-family='atkinson'] .aa { font-family: 'Atkinson Hyperlegible', system-ui, sans-serif; }
.font-pick [data-family='dislexia'] .aa { font-family: 'OpenDyslexic', 'Comic Sans MS', sans-serif; }
.font-pick [data-family='sans'] .aa { font-family: system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif; }

/* Con OpenDyslexic, texto alineado a la izquierda: justificado deja huecos que dificultan la lectura. */
:root[data-family='dislexia'] .reader p { text-align: left; hyphens: manual; }
