/* Estilos de las páginas de contenido (cuentos, sílabas, letras, guías…).
   Mismos colores y tipografía que la app. Las páginas las genera tools/seo/generar.mjs. */
/* Fredoka (OFL), servida desde /fonts/ igual que en la app */
@font-face{font-family:'Fredoka';font-style:normal;font-weight:500 700;font-display:swap;src:url(/fonts/fredoka-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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Fredoka';font-style:normal;font-weight:500 700;font-display:swap;src:url(/fonts/fredoka-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}
:root{--cream:#FFF6EC;--ink:#3A2E2A;--coral:#FF6B5E;--teal:#1FB8A6;--sun:#FFA62B;--grape:#8B6BD9;--green:#3FB950;--rose:#F0598B;--shadow:rgba(58,46,42,.16)}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:'Fredoka',system-ui,-apple-system,'Segoe UI',sans-serif;background:var(--cream);color:var(--ink);line-height:1.6;font-size:1.06rem}
a{color:#5B3FC4}
img{max-width:100%;height:auto}
.saltar{position:absolute;left:-999px}.saltar:focus{left:12px;top:12px;background:#fff;padding:8px 12px;z-index:9}
:focus-visible{outline:3px solid var(--grape);outline-offset:3px}

/* cabecera */
.cab{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:12px max(16px,calc((100vw - 1100px)/2));background:#fff;box-shadow:0 3px 0 var(--shadow);position:sticky;top:0;z-index:5}
.logo{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:1.2rem;color:var(--ink);text-decoration:none;white-space:nowrap}
.logo img{width:36px;height:36px;object-fit:contain;border-radius:10px}
.menu{display:flex;gap:4px;flex-wrap:wrap;flex:1}
.menu a{color:var(--ink);text-decoration:none;font-weight:600;font-size:.95rem;padding:6px 10px;border-radius:12px}
.menu a:hover,.menu a[aria-current]{background:rgba(139,107,217,.12);color:#5B3FC4}
.boton{display:inline-block;background:linear-gradient(135deg,var(--coral),var(--rose));color:#fff;text-decoration:none;font-weight:700;border-radius:16px;padding:9px 16px;box-shadow:0 4px 0 rgba(180,40,60,.25);white-space:nowrap}
.boton.grande{font-size:1.1rem;padding:13px 22px}
@media (max-width:760px){.menu{order:3;flex-basis:100%;overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px}.cab{gap:8px}.cab .boton{margin-left:auto}}

/* contenido */
main{max-width:1100px;margin:0 auto;padding:18px 16px 40px}
.migas{font-size:.85rem;opacity:.7;margin:4px 0 6px}.migas a{color:inherit}
h1{font-size:clamp(1.7rem,4vw,2.5rem);line-height:1.15;margin:8px 0 10px;color:#4B32A8}
h2{font-size:clamp(1.3rem,3vw,1.7rem);line-height:1.2;margin:34px 0 10px;color:var(--ink)}
h3{font-size:1.15rem;margin:22px 0 6px}
.entradilla{font-size:1.15rem;max-width:760px;opacity:.9}
p,li{max-width:760px}
.nota{background:#fff;border-left:5px solid var(--teal);border-radius:14px;padding:12px 16px;box-shadow:0 3px 0 var(--shadow);max-width:760px}
.datos{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 4px;padding:0;list-style:none}
.datos li{background:#fff;border-radius:12px;padding:5px 11px;font-size:.9rem;font-weight:600;box-shadow:0 3px 0 var(--shadow)}

/* tarjetas y rejillas */
.rejilla{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px;margin:14px 0}
.tarjeta{display:block;background:#fff;border-radius:20px;overflow:hidden;text-decoration:none;color:var(--ink);box-shadow:0 6px 0 var(--shadow);transition:transform .1s}
.tarjeta:hover{transform:translateY(-3px)}
.tarjeta img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block;background:#F1E9DF}
.tarjeta .t-emo{display:flex;align-items:center;justify-content:center;aspect-ratio:16/9;font-size:3.2rem;background:linear-gradient(135deg,#EFE7FB,#DDF4F0)}
.tarjeta div{padding:10px 14px 14px}
.tarjeta b{display:block;font-size:1.1rem;line-height:1.25}
.tarjeta span{font-size:.88rem;opacity:.7}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0;padding:0;list-style:none}
.chips a,.chips li>span{display:inline-block;background:#fff;border-radius:14px;padding:7px 13px;font-weight:700;text-decoration:none;color:var(--ink);box-shadow:0 3px 0 var(--shadow)}
.chips a:hover{background:#F4EFFF}

/* lectura */
.cuento{background:#fff;border-radius:22px;padding:18px 22px;box-shadow:0 6px 0 var(--shadow);max-width:760px;font-size:1.35rem;line-height:1.75}
.cuento p{margin:.2em 0}
.silabeado{font-size:1.45rem;line-height:2}
.sa{color:var(--grape)}.sb{color:#13907F}.d{opacity:.3;margin:0 1px}
figure{margin:16px 0;max-width:760px}
figure img{border-radius:20px;box-shadow:0 6px 0 var(--shadow);display:block;width:100%;background:#F1E9DF}
figcaption{font-size:.85rem;opacity:.65;margin-top:6px}
.preguntas{max-width:760px;padding-left:1.2em}
.preguntas li{margin:8px 0}
details{background:#fff;border-radius:12px;padding:6px 12px;margin-top:4px;box-shadow:0 2px 0 var(--shadow)}
summary{cursor:pointer;font-weight:600;color:#5B3FC4}
.palabras{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px;margin:12px 0;padding:0;list-style:none;max-width:900px}
.palabras li{background:#fff;border-radius:14px;padding:9px 12px;box-shadow:0 3px 0 var(--shadow);font-size:1.25rem;font-weight:700}
.palabras small{display:block;font-size:.78rem;opacity:.6;font-weight:600}
.silabas-grandes{display:flex;gap:12px;flex-wrap:wrap;margin:14px 0}
.silabas-grandes span{background:#fff;border-radius:18px;min-width:84px;padding:12px 16px;text-align:center;font-size:2.4rem;font-weight:700;color:#13907F;box-shadow:0 6px 0 var(--shadow)}
.letra-grande{font-size:5rem;font-weight:700;line-height:1;color:#4B32A8;margin:8px 0 4px}
.letra-grande small{font-size:2.5rem;opacity:.6;margin-left:10px}
.trabalenguas{list-style:none;padding:0;display:grid;gap:12px;max-width:820px}
.trabalenguas li{background:#fff;border-radius:18px;padding:12px 16px;box-shadow:0 4px 0 var(--shadow)}
.trabalenguas b{display:block;font-size:.85rem;opacity:.6}
.trabalenguas p{margin:2px 0 0;font-size:1.3rem;font-weight:600}

/* app */
.app-cta{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;background:linear-gradient(135deg,#F4EFFF,#E6FAF6);border-radius:22px;padding:18px 22px;margin:40px 0 0;box-shadow:0 5px 0 var(--shadow)}
.app-cta b{display:block;font-size:1.2rem}.app-cta span{font-size:.95rem;opacity:.8}

/* pie */
.pie{background:#fff;padding:24px max(16px,calc((100vw - 1100px)/2)) 30px;margin-top:20px;box-shadow:0 -3px 0 var(--shadow)}
.pie-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px}
.pie b{display:block;margin-bottom:6px}
.pie a{display:block;color:var(--ink);opacity:.8;text-decoration:none;padding:3px 0;font-size:.95rem}
.pie a:hover{opacity:1;text-decoration:underline}
.pie p{font-size:.85rem;opacity:.6;margin-top:18px}

/* fichas para imprimir */
.ficha{background:#fff;border:2px dashed rgba(58,46,42,.2);border-radius:18px;padding:18px 20px;max-width:820px;margin:14px 0}
.ficha h3{margin-top:0}
.ficha .huecos{display:flex;flex-wrap:wrap;gap:14px 26px;font-size:1.7rem;font-weight:700}
.ficha .huecos span{border-bottom:3px solid rgba(58,46,42,.35);min-width:120px;display:inline-block}
.ficha .tabla{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;font-size:2rem;font-weight:700;text-align:center}
.ficha .tabla span{border:2px solid rgba(58,46,42,.18);border-radius:12px;padding:8px 0}
.imprimir{border:none;cursor:pointer;font:inherit}
@media print{
  .cab,.pie,.app-cta,.migas,.no-imprimir{display:none!important}
  body{background:#fff;font-size:12pt}
  main{padding:0}
  .ficha{border:none;page-break-inside:avoid}
  .tarjeta,.cuento,.nota,details{box-shadow:none}
}
