/* Calendario de adviento. Mismas fuentes, colores y botones que el cuaderno (DESIGN.md);
   aquí solo lo propio del calendario: puertas, edificio, día y mecánicas. */

.ico{width:1em;height:1em;flex:none;vertical-align:-.14em}

/* ---------------- portada: el mapa de Barcelona a toda pantalla ---------------- */

:root{
  --noche:#101a3a;--oro:#FFC93C;--oro-2:#E9A91C;--nieve:#F4F1EA;
  --tinta-c:#3D3155;            /* contorno de los dibujos */
  --toon:"Fredoka","Inter",-apple-system,BlinkMacSystemFont,sans-serif;
}

body.av-noche{background:var(--noche);color:var(--nieve)}
body.av-noche .topbar{background:rgba(16,26,58,.94);border-bottom-color:rgba(255,255,255,.08)}
body.av-noche .topbar-title{color:var(--nieve)}
body.av-noche .topbar-title b{color:var(--oro);font-family:var(--toon);font-weight:600;font-size:15px}
body.av-noche .topbar-score,body.av-noche .topbar-btn{color:var(--nieve);border-color:rgba(255,255,255,.22)}
body.av-noche .topbar-score .ico{fill:var(--oro);color:var(--oro)}
body.av-noche .foot{background:transparent;border-top-color:rgba(255,255,255,.08);color:rgba(255,255,255,.4)}

.av-lienzo{position:relative;height:calc(100vh - 53px);height:calc(100svh - 53px);min-height:520px;overflow:hidden;background:#F4EEDC}
.av-mapa-caja{position:absolute;inset:0}
.av-bcn{display:block;width:100%;height:100%}

.av-guirnalda{position:absolute;left:0;right:0;top:-2px;width:100%;height:46px;z-index:4;pointer-events:none;overflow:hidden}
.av-guirnalda .g-cable{fill:none;stroke:#1E2A1E;stroke-width:1.8;opacity:.85}
.av-guirnalda .g-casquillo{fill:#5E6B52}
.av-guirnalda .g-bombilla{animation:av-brillo 3.4s ease-in-out infinite}
.av-guirnalda .g-brillo{fill:#fff;opacity:.6}
.av-guirnalda .b-r .g-vidrio{fill:#E8455B;filter:drop-shadow(0 0 4px rgba(232,69,91,.8))}
.av-guirnalda .b-o .g-vidrio{fill:#FFC93C;filter:drop-shadow(0 0 4px rgba(255,201,60,.8))}
.av-guirnalda .b-v .g-vidrio{fill:#4CBF73;filter:drop-shadow(0 0 4px rgba(76,191,115,.8))}
.av-guirnalda .b-a .g-vidrio{fill:#4BA8E8;filter:drop-shadow(0 0 4px rgba(75,168,232,.8))}
@keyframes av-brillo{0%,100%{opacity:1}50%{opacity:.55}}
@media (prefers-reduced-motion:reduce){.av-guirnalda .g-bombilla,.m-halo{animation:none}}

/* panel con el título: abajo a la derecha, sobre el mar */
.av-panel{
  position:absolute;right:28px;bottom:40px;z-index:5;width:min(380px,calc(30% - 20px));min-width:290px;
  background:#E3EDCF;color:#23281C;border-radius:22px;padding:20px 22px 18px;box-shadow:0 6px 20px rgba(60,50,30,.18);
}
.av-panel .eyebrow{font-family:var(--toon);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#E8455B;margin:0 0 4px}
.av-panel h1{font-family:var(--toon);font-size:clamp(34px,3.4vw,46px);font-weight:700;letter-spacing:-.01em;line-height:1;margin:0;color:#23281C}
.av-sub{font-family:var(--toon);font-weight:500;font-size:18px;margin:6px 0 0;color:#4F6B3A}
.av-hoy{display:block;margin:14px 0 0;padding:12px 16px;border-radius:16px;background:#E8455B;color:#fff;text-decoration:none}
.av-hoy.is-link:hover{background:#f05a6e}
.av-hoy-k{margin:0;font-family:var(--toon);font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;opacity:.9}
.av-hoy-t{margin:2px 0 0;font-family:var(--toon);font-size:24px;font-weight:700;line-height:1.1}
.av-hoy-s{margin:4px 0 0;font-family:var(--serif);font-size:15.5px;display:flex;justify-content:space-between;gap:12px;align-items:center}
.av-hoy-go{font-family:var(--toon);font-weight:600;font-size:15px;white-space:nowrap;display:inline-flex;align-items:center;gap:2px}
.av-prog{display:flex;align-items:center;gap:10px;margin-top:12px;font-family:var(--toon);font-size:14px;font-weight:600}
.av-prog-bar{flex:1;height:10px;border-radius:5px;background:#fff;overflow:hidden}
.av-prog-bar i{display:block;height:100%;background:#F2B632;border-radius:5px}
.av-prog .ico{fill:var(--oro);color:var(--oro-2)}

@media (min-width:761px) and (max-height:780px){
  .av-panel{padding:14px 18px 14px;bottom:24px}
  .av-panel h1{font-size:34px}
  .av-sub{font-size:16px}
  .av-hoy{margin-top:10px;padding:9px 14px}
  .av-hoy-t{font-size:20px}
}

/* debajo del mapa */
.av-pie{position:relative;padding-top:30px;padding-bottom:40px}
.av-pie .av-prog{max-width:420px;color:var(--nieve)}
.av-pie .av-prog-bar{background:rgba(255,255,255,.14)}
.av-intro{font-family:var(--serif);font-size:18px;line-height:1.55;color:rgba(244,241,234,.85);max-width:60ch;margin:0}
.av-leyenda{list-style:none;display:flex;flex-wrap:wrap;gap:6px 16px;padding:0;margin:14px 0 0;font-size:13px;color:rgba(244,241,234,.7)}
.av-leyenda li{display:flex;align-items:center;gap:6px}
.av-leyenda i{width:13px;height:13px;border-radius:50%}
.l-hoy{background:#E8455B}
.l-hecha{background:#F2B632}
.l-cerrada{background:#9DB0C9}
.av-prueba{font-size:13px;color:var(--oro);margin:14px 0 0;opacity:.85}

/* pastilla «hoy» del móvil */
.av-pastilla{display:none}

@media (max-width:760px){
  .av-lienzo{display:flex;flex-direction:column}
  .av-panel{display:none}
  .av-mapa-caja{position:relative;inset:auto;flex:1;min-height:0}
  .av-guirnalda{height:46px}
  .av-pastilla{
    display:flex;justify-content:space-between;align-items:center;gap:10px;position:absolute;left:12px;right:12px;bottom:12px;z-index:5;
    padding:12px 18px;border-radius:999px;background:#E8455B;color:#fff;
    font-family:var(--toon);font-size:15px;font-weight:500;text-decoration:none;
  }
  .av-pastilla b{font-weight:700}
  div.av-pastilla{justify-content:center;background:#fff;color:#2F3B57}
}

/* el mapa: plano, vista desde arriba, como un mapa turístico ilustrado; monumentos dibujados encima */
.av-bcn .c-tierra{fill:#F4EEDC}
.av-bcn .c-mar{fill:#94CBE6}
.av-bcn .c-playa{fill:none;stroke:#F1E2B8;stroke-width:9;stroke-linecap:round;stroke-linejoin:round}
.av-bcn .c-costa{display:none}
.av-bcn .c-ola{fill:none;stroke:#BFE0F1;stroke-width:2;stroke-linecap:round}
.av-bcn .c-monte{fill:#C3DB98}
.av-bcn .c-monte-2{fill:#C9DFA2}
.av-bcn .c-parque{fill:#C9DFA2}
.av-bcn .c-vella{fill:#EEE2C6}
.av-bcn .c-m0{fill:#EADCB9}.av-bcn .c-m1{fill:#E6D6B0}.av-bcn .c-m2{fill:#EDE1C2}.av-bcn .c-m3{fill:#E3D2AA}
.av-bcn .c-pared-0{fill:#FAF1DF}.av-bcn .c-pared-1{fill:#F3E2BF}.av-bcn .c-pared-2{fill:#F6E8CF}
.av-bcn .c-teja{fill:#D6704A}
.av-bcn .c-puerta{fill:#9A6A44}
.av-bcn .c-tronco{fill:#8A6542}
.av-bcn .c-copa{fill:#5E9B45}
.av-bcn .c-copa-luz{fill:#80B85C}
.av-bcn .c-arbol{fill:#3F7A3A}
.av-bcn .c-pico{fill:#A9C98A}
.av-bcn .c-nieve{fill:#fff}
.av-bcn .c-calle-borde{display:none}
.av-bcn .c-calle{fill:none;stroke:#FFFDF7;stroke-width:6;stroke-linecap:round;stroke-linejoin:round}
.av-bcn .c-luces{fill:none;stroke-width:3.2;stroke-linecap:round;stroke-dasharray:0 22}
.av-bcn .c-luces-r{stroke:#E8455B}
.av-bcn .c-luces-o{stroke:#F2B632;stroke-dashoffset:-7}
.av-bcn .c-luces-v{stroke:#3FA06A;stroke-dashoffset:-14}
.av-bcn .c-rotulo{font-family:var(--toon);font-size:13px;font-weight:600;fill:#6F7A55;text-anchor:middle;letter-spacing:.08em;text-transform:uppercase}
.av-bcn .c-rotulo-mar{font-size:17px;fill:#fff;text-transform:none;letter-spacing:.02em}
.av-bcn .c-sprite{filter:drop-shadow(0 2px 2px rgba(60,50,30,.25))}

/* dibujos de reserva (si falta una ilustración) */
.av-bcn .c-blanco{fill:#FFFFFF}.av-bcn .c-rojo{fill:#E8455B}.av-bcn .c-azul{fill:#4A90C8}.av-bcn .c-oro{fill:#F2B632}
.av-bcn .c-verde{fill:#3FA06A}.av-bcn .c-madera{fill:#A0703F}.av-bcn .c-piedra{fill:#AEB9CB}.av-bcn .c-arena{fill:#DDBB80}
.av-bcn .c-ladrillo{fill:#D06B48}.av-bcn .c-naranja{fill:#F29B4B}.av-bcn .c-rosa{fill:#F08AAC}.av-bcn .c-granate{fill:#A73052}
.av-bcn .c-cesped{fill:#6DB37E}.av-bcn .c-agua{fill:#94CBE6}
.av-bcn .c-linea{fill:none;stroke:#5B6B88;stroke-width:1.6}

/* ruta: bastón de caramelo; lo hecho, dorado */
.av-bcn .c-ruta-base{fill:none;stroke:#fff;stroke-width:6;stroke-linecap:round;stroke-linejoin:round}
.av-bcn .c-ruta{fill:none;stroke:#E8455B;stroke-width:3.4;stroke-dasharray:7 7;stroke-linecap:butt;stroke-linejoin:round}
.av-bcn .c-ruta-hecha{fill:none;stroke:#F2B632;stroke-width:6;stroke-linecap:round;stroke-linejoin:round}

/* paradas: bola de Navidad y rótulo en caja blanca, como en el mapa de ejemplo */
.m-parada{cursor:default}
a.m-parada{cursor:pointer}
.m-hit{fill:transparent}
.m-cap{fill:#C9C0A8}
.m-bola{fill:#A9A28E;filter:drop-shadow(0 1px 1.5px rgba(60,50,30,.3))}
.m-brillo{fill:#fff;opacity:.35}
.m-num{font-family:var(--toon);font-size:15px;font-weight:700;text-anchor:middle;fill:#fff}
.m-pill{fill:#fff;filter:drop-shadow(0 1px 2px rgba(60,50,30,.22))}
.m-nombre{font-family:var(--toon);font-size:10.5px;font-weight:600;fill:#2E2B26;text-anchor:middle}
.m-parada.is-cerrada .m-nombre{fill:#7A7364}
.m-parada.is-abierta .m-bola,.m-parada.is-hoy .m-bola{fill:#E8455B}
.m-parada.is-abierta .m-cap,.m-parada.is-hoy .m-cap{fill:#F2B632}
.m-parada.is-hecha .m-bola{fill:#F2B632}
.m-parada.is-hecha .m-cap{fill:#E8455B}
.m-parada.is-hecha .m-pill{fill:#FFF4D2}
.m-parada.is-ayuda .m-bola{fill:#F5CB6A}
.m-star{fill:#fff}
.m-halo{fill:none;stroke:#E8455B;stroke-width:4;transform-box:fill-box;transform-origin:center;animation:av-halo 1.6s ease-out infinite}
@keyframes av-halo{from{transform:scale(1);opacity:.9}to{transform:scale(2);opacity:0}}
a.m-parada:hover .m-bola,a.m-parada:focus-visible .m-bola{filter:brightness(1.08)}
a.m-parada:hover .m-pill{fill:#FFF4D2}
a.m-parada:focus{outline:none}
a.m-parada:focus-visible .m-pill{stroke:#4A90C8;stroke-width:3}

/* mapa pintado: el título en una caja arriba a la izquierda (como en el mapa de ejemplo),
   la pastilla «hoy» abajo, sobre el mar; en el móvil, el mapa se desliza en horizontal */
.av-mapa-caja.is-desliza{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.av-mapa-caja.is-desliza::-webkit-scrollbar{display:none}
.av-mapa-caja.is-desliza .av-bcn{width:auto;height:100%;max-width:none}
.av-lienzo.is-pintado .av-panel{left:24px;bottom:22px;right:auto;top:auto;width:auto;min-width:0;max-width:360px;padding:12px 18px 12px;
  background:rgba(227,237,207,.94);border-radius:16px}
.av-lienzo.is-pintado .av-panel .eyebrow{display:none}
.av-lienzo.is-pintado .av-panel h1{font-size:34px}
.av-lienzo.is-pintado .av-sub{font-size:16px;margin-top:2px}
.av-lienzo.is-pintado .av-panel .av-hoy{display:none}
.av-lienzo.is-pintado .av-panel .av-prog{margin-top:8px}
.av-lienzo.is-pintado .av-pastilla{
  display:flex;justify-content:space-between;align-items:center;gap:14px;position:absolute;left:50%;transform:translateX(-50%);bottom:18px;z-index:5;
  width:min(520px,calc(100% - 24px));padding:12px 20px;border-radius:999px;background:#E8455B;color:#fff;
  font-family:var(--toon);font-size:16px;font-weight:500;text-decoration:none;box-shadow:0 6px 18px rgba(0,0,0,.25);
}
.av-lienzo.is-pintado .av-pastilla b{font-weight:700}
.av-lienzo.is-pintado div.av-pastilla{justify-content:center;background:#fff;color:#2F3B57}
.av-lienzo.is-pintado .av-copos{display:none}
.av-bcn.is-pintado .m-pill{fill:rgba(255,255,255,.95)}
.av-bcn.is-pintado .m-bola{stroke:#fff;stroke-width:calc(2px / var(--k))}

/* mapa del tesoro */
.av-lienzo.is-tesoro{background:#2B1C10}
.av-lienzo.is-tesoro .av-panel{display:none}
.av-lienzo .av-copos{display:none}
.av-nevada{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:3}
.av-mapa-caja.is-vertical{overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.av-mapa-caja.is-vertical::-webkit-scrollbar{display:none}
.av-bcn.is-tesoro{display:block}
.av-mapa-caja.is-vertical .av-bcn{width:100%;height:auto}
.av-bcn .t-ola{fill:none;stroke:#fff;stroke-width:2.6;stroke-linecap:round;opacity:.75}
.av-bcn .t-pino{fill:#2F6B4F}
.av-bcn .t-pino-nieve{fill:#fff}
.av-bcn .t-camino-borde{fill:none;stroke:#8A5A2B;stroke-linecap:round;stroke-linejoin:round}
.av-bcn .t-camino{fill:none;stroke:#F3DDAE;stroke-linecap:round;stroke-linejoin:round}
.av-bcn .t-puntos{fill:none;stroke:#D7263D;stroke-linecap:round}
.av-bcn .t-hecho{fill:none;stroke:#F2B632;stroke-linecap:round;stroke-linejoin:round;opacity:.85}
.av-bcn .t-salida{fill:#D7263D;stroke:#fff;stroke-width:3}
.av-bcn .t-x{fill:none;stroke:#D7263D;stroke-width:7;stroke-linecap:round}
.av-bcn .t-lm,.av-bcn .t-dec{filter:drop-shadow(0 3px 2px rgba(60,40,20,.28))}
.av-bcn .t-cinta{fill:#D7263D;stroke:#8E1424;stroke-width:3;stroke-linejoin:round}
.av-bcn .t-cinta-cola{fill:#A81B2F;stroke:#8E1424;stroke-width:3;stroke-linejoin:round}
.av-bcn .t-titulo-t{font-family:"Mountains of Christmas",var(--toon);font-weight:700;fill:#fff;text-anchor:middle;paint-order:stroke;stroke:#8E1424;stroke-width:3px;letter-spacing:.01em}
.av-bcn .t-cable{fill:none;stroke:#2F4A2E;stroke-width:1.6;opacity:.75}
.av-bcn .t-bombilla{animation:t-brilla 4.5s ease-in-out infinite}
.av-bcn .t-bombilla.b-r{fill:#E8455B}.av-bcn .t-bombilla.b-o{fill:#FFC93C}.av-bcn .t-bombilla.b-v{fill:#43B86A}.av-bcn .t-bombilla.b-a{fill:#4BA8E8}
.av-bcn .t-bombilla .t-halo{opacity:.28}
.av-bcn .t-bombilla .t-brillo{fill:#fff;opacity:.8}
@keyframes t-brilla{0%,100%{opacity:1}50%{opacity:.5}}
.av-bcn .t-cinta-nieve{fill:#fff;stroke:#D6E4F0;stroke-width:1.2}
.av-bcn .t-acebo{fill:#2E8B4E;stroke:#1C5C33;stroke-width:1.5;stroke-linejoin:round}
.av-bcn .t-acebo-2{fill:#38A35C}
.av-bcn .t-baya{fill:#D7263D;stroke:#8E1424;stroke-width:1.2}
@media (prefers-reduced-motion:reduce){.av-bcn .t-bombilla{animation:none}}
.av-bcn .t-sub-fondo{fill:#FFF8E6;stroke:#8A5A2B;stroke-width:2}
.av-bcn .t-titulo-s{font-family:var(--toon);font-weight:600;fill:#7A2E1A;text-anchor:middle}
.av-bcn.is-tesoro .m-pill{fill:#FFF8E6;stroke:#8A5A2B;stroke-width:1.5}
.av-bcn.is-tesoro .m-nombre{fill:#4A2E14}
.av-bcn.is-tesoro .m-bola{stroke:#fff;stroke-width:2}

/* nieve que cae sobre el mapa */
.av-copos{position:absolute;inset:0;pointer-events:none;z-index:3;overflow:hidden}
.av-copos::before,.av-copos::after{
  content:"";position:absolute;inset:-220px 0 0;
  background-image:radial-gradient(3px 3px at 20px 30px,#fff 50%,transparent 52%),radial-gradient(2px 2px at 90px 120px,#fff 50%,transparent 52%),
    radial-gradient(3.5px 3.5px at 160px 60px,#fff 50%,transparent 52%),radial-gradient(2px 2px at 230px 170px,#fff 50%,transparent 52%);
  background-size:260px 220px;animation:av-cae 16s linear infinite;opacity:.85;
}
.av-copos::after{background-size:190px 170px;animation-duration:24s;opacity:.6}
@keyframes av-cae{from{transform:translateY(0)}to{transform:translateY(220px)}}
@media (prefers-reduced-motion:reduce){.av-copos::before,.av-copos::after{animation:none}}

/* ---------------- un día ---------------- */

.av-dia-banda{position:relative;overflow:hidden;background:var(--noche);color:var(--nieve)}
.av-dia-in{position:relative;z-index:2;max-width:760px;padding-top:34px;padding-bottom:30px}
.av-dia{max-width:760px;padding-top:4px;padding-bottom:72px}
.av-kick{font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--oro);margin:0 0 10px}
.av-dia-head h1{font-family:var(--toon);font-size:clamp(30px,5.4vw,50px);font-weight:700;letter-spacing:-.01em;line-height:1.05;margin:0;color:#fff}
.av-nivel{display:inline-flex;margin-top:20px;border:1px solid rgba(255,255,255,.5);border-radius:8px;overflow:hidden}
.av-nivel button{font:inherit;font-size:14px;font-weight:600;padding:8px 16px;border:0;background:transparent;color:#fff;cursor:pointer}
.av-nivel button+button{border-left:1px solid rgba(255,255,255,.5)}
.av-nivel button.is-on{background:var(--oro);color:var(--noche)}

.av-historia{
  font-family:var(--serif);font-size:18px;line-height:1.6;margin:-14px 0 0;position:relative;z-index:3;padding:18px 22px;
  background:#fff;border:1px solid var(--rule);border-left:3px solid var(--rojo);border-radius:0 10px 10px 0;
}
.av-glosa{
  position:relative;font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer;
  border-bottom:1.5px dotted var(--rojo);
}
.av-glosa.is-open::after{
  content:attr(data-ru);position:absolute;left:50%;bottom:calc(100% + 6px);transform:translateX(-50%);z-index:5;
  font-family:var(--display);font-size:13px;font-weight:600;white-space:nowrap;line-height:1.3;
  background:var(--ink);color:#fff;padding:5px 9px;border-radius:6px;
}

.av-pasos{display:flex;flex-direction:column;gap:18px;margin-top:22px}
.av-paso{background:#fff;border:1px solid var(--rule);border-radius:10px;padding:20px 22px;scroll-margin-top:70px}
.av-paso.is-hecho{border-color:#1a7f4b}
.av-paso-head{display:flex;align-items:center;gap:12px}
.av-paso-head h3{font-size:18px;font-weight:700;margin:0;flex:1;line-height:1.3}
.av-ico{
  display:grid;place-items:center;width:34px;height:34px;flex:none;border-radius:8px;background:var(--ink);color:#fff;font-size:18px;
}
.av-paso-num{font-family:var(--mono);font-size:12px;color:var(--ink-3)}
.av-ej{font-style:italic;color:var(--rojo-2);margin:10px 0 0 46px;font-size:15px}
.av-body{margin-top:16px}
.av-fb{min-height:1.4em;margin:14px 0 0;font-weight:600;font-size:15px}
.av-fb.is-ok{color:#1a7f4b}
.av-fb.is-no{color:#c22026}
.av-pista{display:flex;gap:8px;align-items:flex-start;margin:8px 0 0;padding:10px 12px;background:#fdf3dd;border-radius:8px;color:#6b4a07;font-size:15px}
.av-pista .ico{margin-top:2px}
.av-acc{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.av-acc:empty{display:none}
.av-sol .ico{margin-right:4px}

.av-texto{margin-top:14px}
.av-nota{font-family:var(--serif);font-size:17px;margin:0;padding:12px 16px;background:#fbfaf9;border:1px solid #f0ece8;border-radius:8px}
.av-menu{font-family:var(--serif);background:#fbfaf9;border:1px solid #f0ece8;border-radius:8px;padding:14px 18px}
.av-menu h4{font-family:var(--display);font-size:13px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--rojo);margin:0 0 8px}
.av-menu dl{margin:0}
.av-menu dt{font-weight:600;font-size:17px;display:flex;justify-content:space-between;gap:12px;margin-top:8px}
.av-menu dd{margin:0;color:var(--ink-2);font-style:italic;font-size:15.5px}
.av-menu p{margin:12px 0 0;font-size:16px}
.av-menu-pie{font-size:14.5px!important;color:var(--ink-2)}

/* audio */
.av-audio{margin-top:14px;padding:12px 14px;border:1px solid var(--rule);border-radius:10px;background:#fbfaf9}
.av-audio-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.av-audio .btn .ico{margin-right:4px}
.av-audio .btn.is-on{border-color:var(--ink);font-weight:600}
.av-audio-pend{display:flex;gap:8px;margin:0;color:var(--ink-3);font-size:14px}
.av-trans{font-family:var(--serif);font-size:16.5px;margin-top:10px}
.av-trans p{margin:0 0 4px}

/* elegir */
.av-q{font-size:17px;font-weight:600;margin:0 0 12px;display:flex;gap:10px;align-items:baseline}
.av-q-n{font-family:var(--mono);font-size:12px;font-weight:400;color:var(--ink-3);margin-right:8px}
.av-opts{display:grid;gap:8px}
.av-opt{
  display:flex;align-items:center;gap:10px;text-align:left;font:inherit;font-size:16px;padding:12px 14px;
  background:#fbfaf9;border:1px solid #e6e1da;border-radius:8px;color:var(--ink);cursor:pointer;
}
.av-opt:hover:not(:disabled){border-color:var(--ink)}
.av-opt.is-ok{border-color:#1a7f4b;background:#e8f6ee;color:#1a7f4b;font-weight:600}
.av-opt.is-no{border-color:#c22026;background:#fdeced;color:#c22026;text-decoration:line-through}
.av-opt.is-shown{border-color:#bbb;background:#f0efee;color:var(--ink-2);font-style:italic}
.av-opt:disabled{cursor:default}

/* clasificar */
.av-pool{display:flex;flex-wrap:wrap;gap:8px;min-height:44px}
.av-chip{
  display:inline-flex;align-items:center;gap:7px;font:inherit;font-size:15px;padding:8px 12px;
  background:#fff;border:1px solid var(--rule-2);border-radius:20px;color:var(--ink);cursor:grab;touch-action:none;user-select:none;
}
.av-chip .ico{font-size:18px}
.av-chip.is-sel{border-color:var(--rojo);box-shadow:0 0 0 2px rgba(200,16,46,.25)}
.av-chip.is-no{border-color:#c22026;background:#fdeced;animation:av-no .35s}
.av-chip.is-ok{border-color:#1a7f4b;background:#e8f6ee;color:#1a7f4b;cursor:default}
.av-chip.is-shown{border-color:#bbb;background:#f0efee;color:var(--ink-2);font-style:italic}
.av-ghost{position:fixed;z-index:100;pointer-events:none;transform:translate(-50%,-60%);box-shadow:0 6px 18px rgba(0,0,0,.18)}
.av-cats{display:grid;gap:10px;margin-top:16px}
.av-cats-2{grid-template-columns:1fr 1fr}
.av-cats-3{grid-template-columns:1fr 1fr 1fr}
.av-cat{border:1.5px dashed var(--rule-2);border-radius:10px;padding:10px;min-height:120px;transition:border-color .15s,background .15s}
.av-cats.is-armed .av-cat{border-color:var(--rojo);background:#fff7f8;cursor:pointer}
.av-cat-t{display:flex;align-items:center;gap:6px;margin:0 0 8px;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2)}
.av-cat-t .ico{font-size:18px}
.av-cat-in{display:flex;flex-wrap:wrap;gap:6px}
.av-cat-in .av-chip{font-size:14px;padding:6px 10px}
@media (max-width:560px){
  .av-cats-3{grid-template-columns:1fr}
  .av-cats-3 .av-cat{min-height:64px}
}
@keyframes av-no{25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}

/* sopa de letras */
.av-sopa{
  display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr));gap:2px;max-width:min(100%,440px);
  touch-action:none;user-select:none;-webkit-user-select:none;
}
.av-letra{
  display:grid;place-items:center;aspect-ratio:1;font-family:var(--mono);font-weight:600;
  font-size:clamp(13px,3.6vw,18px);background:#fbfaf9;border-radius:5px;cursor:pointer;
}
.av-letra.is-found{background:#e8f6ee;color:#1a7f4b}
.av-letra.is-shown{background:#f0efee;color:var(--ink-2);font-style:italic}
.av-letra.is-sel{background:var(--rojo);color:#fff}
.av-sopa-lista{list-style:none;padding:0;margin:14px 0 0;display:flex;flex-wrap:wrap;gap:8px}
.av-sopa-lista li{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border:1px solid var(--rule);border-radius:20px;font-size:14.5px}
.av-sopa-lista li .ico{font-size:17px}
.av-sopa-lista li.is-found{background:#e8f6ee;border-color:#1a7f4b;color:#1a7f4b;text-decoration:line-through}
.av-sopa-lista li.is-shown{background:#f0efee;color:var(--ink-2);font-style:italic}
.av-sopa-lista.is-ocultas li span{font-family:var(--mono);color:var(--ink-3)}
.av-sopa-lista.is-ocultas li.is-found span,.av-sopa-lista.is-ocultas li.is-shown span{font-family:var(--display);color:inherit}

/* crucigrama */
.av-arbol{display:flex;flex-direction:column;gap:8px;margin-bottom:16px;padding:12px;background:#fbfaf9;border:1px solid #f0ece8;border-radius:8px}
.av-arbol-fila{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}
.av-arbol-p{display:flex;flex-direction:column;align-items:center;padding:6px 10px;background:#fff;border:1px solid var(--rule);border-radius:8px;font-size:14px;min-width:70px}
.av-arbol-p small{font-size:11.5px;color:var(--ink-3)}
.av-arbol-p.is-tu{border-color:var(--rojo);color:var(--rojo)}
.av-cruci{
  display:grid;grid-template-columns:repeat(var(--w),minmax(0,36px));grid-template-rows:repeat(var(--h),auto);gap:2px;
  max-width:100%;
}
.av-casilla{position:relative;display:block;aspect-ratio:1;border:1.5px solid var(--ink);border-radius:4px;background:#fff}
.av-casilla input{
  width:100%;height:100%;border:0;padding:0;margin:0;background:transparent;text-align:center;text-transform:uppercase;
  font-family:var(--display);font-weight:700;font-size:clamp(14px,4vw,19px);color:var(--ink);border-radius:3px;
}
.av-casilla input:focus{outline:2px solid rgba(200,16,46,.45)}
.av-casilla.is-act{background:#fff3f4}
.av-casilla.is-ok{border-color:#1a7f4b;background:#e8f6ee}
.av-casilla.is-ok input{color:#1a7f4b}
.av-casilla.is-no{border-color:#c22026;background:#fdeced}
.av-casilla.is-shown{border-color:#bbb;background:#f0efee}
.av-casilla.is-shown input{color:var(--ink-2);font-style:italic}
.av-cn{position:absolute;top:1px;left:3px;font-size:9px;font-weight:700;line-height:1;color:var(--ink-3);pointer-events:none}
.av-pistas{display:grid;grid-template-columns:1fr 1fr;gap:6px 24px;margin-top:16px}
.av-pistas h4{font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);margin:0 0 6px}
.av-pistas ol{list-style:none;margin:0;padding:0}
.av-pistas li{font-size:15px;padding:4px 0;cursor:pointer}
.av-pistas li b{display:inline-block;min-width:1.6em;color:var(--rojo)}
.av-pistas li.is-ok{color:#1a7f4b;text-decoration:line-through}
@media (max-width:560px){ .av-pistas{grid-template-columns:1fr} }

/* ordenar */
.av-orden{margin:0;padding:0 0 0 1.6em;display:flex;flex-direction:column;gap:6px;min-height:20px}
.av-orden li::marker{font-family:var(--mono);font-size:13px;color:var(--ink-3)}
.av-orden-pool{display:flex;flex-direction:column;gap:6px;margin-top:14px;padding-top:14px;border-top:1px dashed var(--rule-2)}
.av-orden-pool:empty{display:none}
.av-linea{
  width:100%;text-align:left;font-family:var(--serif);font-size:16.5px;padding:9px 12px;
  background:#fbfaf9;border:1px solid #e6e1da;border-radius:8px;color:var(--ink);cursor:pointer;
}
.av-linea:hover{border-color:var(--ink)}
.av-linea.is-fija{border-color:#1a7f4b;background:#e8f6ee;color:#14623a;cursor:default}
.av-linea.is-no{border-color:#c22026;background:#fdeced}
.av-linea.is-shown{border-color:#bbb;background:#f0efee;color:var(--ink-2);font-style:italic}

/* mapa */
.av-dice{min-height:48px}
.av-dice-t{display:flex;gap:10px;align-items:flex-start;margin:0;font-family:var(--serif);font-size:17px;line-height:1.5}
.av-dice-t .ico{font-size:18px;margin-top:4px;color:var(--rojo)}
.av-mapa-wrap{margin-top:12px;max-width:440px}
.av-mapa{display:block;width:100%;height:auto;border-radius:10px;overflow:hidden}
.av-m-calle{fill:#fbfaf9}
.av-m-manzana{fill:#E9E5DE}
.av-m-nombre{font-family:var(--display);font-size:9.5px;font-weight:600;fill:var(--ink-2)}
.av-m-norte{font-family:var(--display);font-size:9px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;fill:var(--ink-3)}
.av-m-esq{fill:#fff;stroke:var(--ink-3);stroke-width:1.5;cursor:pointer}
.av-m-esq:hover,.av-m-esq:focus{stroke:var(--rojo);stroke-width:2.5;outline:none}
.av-m-ruta{fill:none;stroke:var(--rojo);stroke-width:4;stroke-linecap:round;stroke-linejoin:round;opacity:.55}
.av-m-moto circle{fill:var(--rojo)}
.av-m-moto path{fill:#fff}
.av-m-moto{transition:transform .35s;pointer-events:none}
.av-m-casa{color:var(--ink);pointer-events:none}

/* premio */
.av-premio{
  text-align:center;padding:30px 22px;background:var(--ink);color:#fff;border-radius:12px;
}
.av-premio-star{font-size:44px;color:#F6D98B}
.av-premio-star .ico{fill:#F6D98B}
.av-premio h2{font-size:28px;font-weight:800;letter-spacing:-.03em;margin:8px 0 10px}
.av-premio p{font-family:var(--serif);font-size:17px;line-height:1.55;margin:0 auto;max-width:44ch;color:#e9e6e0}
.av-objeto{display:flex;justify-content:center;align-items:center;gap:10px;margin-top:14px!important}
.av-objeto .ico{font-size:26px;color:#F6D98B}
.av-premio-nota{font-size:14.5px!important;color:#cfcac1!important;margin-top:12px!important}
.av-premio-acc{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:20px}
.av-premio-acc .btn{text-decoration:none}
.av-premio-acc .btn:not(.btn-red){background:transparent;color:#fff;border-color:#56545E}

@media (max-width:560px){
  .av-paso{padding:16px 14px}
  .av-ej{margin-left:0}
  .av-historia{padding:14px 16px;font-size:17px}
}

/* ---------------- abrir un día: el regalo ---------------- */
.av-regalo{position:fixed;inset:0;z-index:200;display:grid;place-items:center;cursor:pointer}
.av-regalo-fondo{position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,rgba(40,30,70,.55),rgba(16,26,58,.88))}
.av-regalo-escena{position:relative;width:240px;height:200px;margin-top:150px}
.av-regalo-caja{position:absolute;left:30px;bottom:0;width:180px;height:126px;z-index:3;border-radius:10px;
  background:linear-gradient(90deg,#B81C33,#E23A52 45%,#C8213A);box-shadow:inset 0 -10px 0 rgba(0,0,0,.12),0 14px 30px rgba(0,0,0,.35);transform-origin:50% 100%}
.av-regalo-cinta{position:absolute;left:50%;top:0;bottom:0;width:30px;margin-left:-15px;background:linear-gradient(90deg,#E9A91C,#FFD45C 50%,#E9A91C)}
.av-regalo-tapa{position:absolute;left:18px;bottom:118px;width:204px;height:42px;z-index:4;border-radius:9px;
  background:linear-gradient(90deg,#A8182D,#D7263D 45%,#B81C33);box-shadow:0 6px 10px rgba(0,0,0,.25);transform-origin:50% 100%}
.av-regalo-lazo{position:absolute;left:50%;bottom:22px;width:120px;height:60px;margin-left:-60px}
.av-regalo-lazo path,.av-regalo-lazo circle{fill:#FFC93C;stroke:#C98A10;stroke-width:2.5;stroke-linejoin:round}
.av-regalo-lazo .av-lazo-cola{fill:#F2B632}
.av-regalo-carta{position:absolute;left:10px;bottom:20px;width:220px;z-index:2;opacity:0;transform-origin:50% 100%;
  background:#FFF8E6;border:3px solid #8A5A2B;border-radius:20px;padding:14px 16px 16px;text-align:center;box-shadow:0 18px 40px rgba(0,0,0,.35)}
.av-regalo-carta img{display:block;width:120px;height:120px;object-fit:contain;margin:-4px auto 6px}
.av-regalo-k{display:inline-block;margin:0;padding:3px 12px;border-radius:999px;background:#D7263D;color:#fff;font-family:var(--toon);font-weight:600;font-size:14px}
.av-regalo-t{margin:8px 0 0;font-family:var(--toon);font-weight:700;font-size:22px;line-height:1.1;color:#4A2E14}
.av-regalo-s{margin:6px 0 0;font-family:var(--serif);font-style:italic;font-size:15px;color:#7A5A3A}
.av-confeti{position:absolute;left:50%;bottom:120px;width:0;height:0;z-index:5}
.av-confeti i{position:absolute;left:-5px;top:-4px;width:10px;height:7px;border-radius:2px}

/* ---------------- página del día: navideña y tranquila ----------------
   Nada se mueve dentro de las tareas; los adornos van en la cabecera, el borde y la historia. */
body.av-dia-page{background:#F4F7FB}
body.av-dia-page .av-nieve{
  position:absolute;inset:0;pointer-events:none;z-index:1;opacity:.5;
  background-image:radial-gradient(2px 2px at 20px 30px,#fff 50%,transparent 52%),radial-gradient(1.5px 1.5px at 90px 80px,#fff 50%,transparent 52%),
    radial-gradient(2.5px 2.5px at 160px 40px,#fff 50%,transparent 52%),radial-gradient(1.5px 1.5px at 230px 110px,#fff 50%,transparent 52%);
  background-size:260px 140px;
}
.av-dia-banda{background:linear-gradient(180deg,#0E1838,#1B2B5E)}
.av-dia-in{padding-bottom:40px}
.av-dia-head{position:relative;padding-right:150px}
.av-dia-lm{position:absolute;z-index:2;right:max(16px,calc(50% - 380px + 10px));bottom:30px;width:150px;height:150px;object-fit:contain;
  filter:drop-shadow(0 6px 10px rgba(0,0,0,.35))}
.av-dia-luces{position:absolute;left:0;right:0;bottom:4px;width:100%;height:30px;z-index:2}
.av-dia-luces path{fill:none;stroke:#0B1430;stroke-width:2}
.av-dia-luces .b-r{fill:#E8455B}.av-dia-luces .b-o{fill:#FFC93C}.av-dia-luces .b-v{fill:#43B86A}.av-dia-luces .b-a{fill:#4BA8E8}
.av-dia-borde{height:18px;margin-top:-1px;background:
  radial-gradient(circle at 12px -2px,#1B2B5E 13px,transparent 14px) 0 0/24px 18px repeat-x}
.av-dia-head .av-kick{color:#FFC93C}
.av-nivel button.is-on{background:#FFC93C;color:#1B2B5E}

.av-historia{
  position:relative;margin-top:10px;background:#FFF8E6;border:1.5px solid #E2C99A;border-left:4px solid #D7263D;border-radius:0 14px 14px 0;
  padding-right:46px;
}
.av-acebo{position:absolute;top:-12px;right:10px;width:44px;height:34px}
.av-acebo .h1{fill:#2E8B4E}.av-acebo .h2{fill:#38A35C}
.av-acebo path{stroke:#1C5C33;stroke-width:1.4;stroke-linejoin:round}
.av-acebo circle{fill:#D7263D;stroke:#8E1424;stroke-width:1.1}

.av-paso{position:relative;overflow:hidden;border-color:#E3E8F0;border-radius:14px;box-shadow:0 2px 0 rgba(27,43,94,.04)}
.av-paso::before{
  content:"";position:absolute;left:0;right:0;top:0;height:4px;
  background:repeating-linear-gradient(-45deg,#D7263D 0 8px,#fff 8px 16px);opacity:.85;
}
.av-paso.is-hecho::before{background:repeating-linear-gradient(-45deg,#1a7f4b 0 8px,#fff 8px 16px)}
.av-ico{background:#D7263D;border-radius:10px}
.av-paso-head h3{font-family:var(--toon);font-weight:600;font-size:19px}

.av-premio{position:relative;overflow:hidden;background:linear-gradient(180deg,#14214A,#22377A);border-radius:18px}
.av-premio > *{position:relative;z-index:2}
.av-premio .av-nieve{z-index:1}
.av-premio-lm{display:block;width:130px;height:130px;object-fit:contain;margin:-6px auto 0;filter:drop-shadow(0 6px 10px rgba(0,0,0,.35))}
.av-premio-star{color:#FFC93C}
.av-premio-star .ico{fill:#FFC93C}
.av-premio h2{font-family:var(--toon);font-weight:700}

@media (max-width:640px){
  .av-dia-head{padding-right:84px}
  .av-dia-lm{width:84px;height:84px;right:12px;bottom:34px}
  .av-dia-head h1{font-size:28px}
}
body.av-dia-page .topbar-score .ico{fill:#FFC93C;color:#E9A91C}

/* ---------------- misión: Tió, calendario antiguo, luz ---------------- */
:root{--tinta-m:#3A2A1A;--papel-m:#FBF3E2}
.av-paso-tit{margin:0 0 8px;font-family:var(--toon);font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#B8323F}
.av-fb .av-fb-tio{width:54px;height:54px;object-fit:contain;flex:none;margin:-6px 0}
.av-fb:has(.av-fb-tio){display:flex;align-items:center;gap:10px;font-family:var(--toon);font-weight:500;font-size:16px;padding:6px 12px 6px 6px;border-radius:14px}
.av-fb.is-ok:has(.av-fb-tio){background:#EAF6EE;color:#14623a}
.av-fb.is-no:has(.av-fb-tio){background:#FFF4E5;color:#8A4B0C}

/* bocadillo de Tió */
.av-bocadillo{position:relative;margin:14px auto 0;max-width:560px;padding:14px 18px;background:#fff;border:2px solid #E2C99A;border-radius:18px;
  font-family:var(--toon);font-size:18px;font-weight:500;line-height:1.4;color:var(--tinta-m);text-align:center}
.av-bocadillo::before{content:"";position:absolute;left:50%;top:-11px;width:18px;height:18px;margin-left:-9px;background:#fff;border-left:2px solid #E2C99A;border-top:2px solid #E2C99A;transform:rotate(45deg)}
.av-bocadillo.is-oscuro{background:rgba(255,255,255,.96)}
.av-bocadillo.is-duda{display:flex;align-items:center;gap:10px;text-align:left}
.av-bocadillo.is-duda img{width:64px;height:64px;object-fit:contain;flex:none}

/* intro */
.av-m-intro{text-align:center;padding:10px 0 20px}
.av-m-escena{position:relative;max-width:620px;margin:0 auto}
.av-m-cal{border-radius:14px;overflow:hidden;box-shadow:0 12px 30px rgba(60,40,20,.25)}
.av-m-tio{position:absolute;right:-22px;bottom:-30px;width:clamp(120px,30%,190px);filter:drop-shadow(0 6px 8px rgba(0,0,0,.25))}
.av-m-sub{font-family:var(--serif);font-size:18px;color:var(--ink-2);margin:16px auto 0;max-width:520px}
.av-m-hecho{display:inline-flex;align-items:center;gap:6px;font-size:14px;color:#8A6A12;margin:12px 0 0}
.av-m-hecho .ico{fill:#FFC93C;color:#E9A91C}
.av-m-vamos{margin-top:18px;font-family:var(--toon);font-size:20px;padding:12px 34px;border-radius:999px}

/* calendario antiguo: imagen 1536×1024 y cuadrícula medida en ella */
.av-cal{position:relative;aspect-ratio:3/2;background:#E9D9B8}
.av-cal-img{position:absolute;inset:0;width:100%;height:100%;display:block}
.av-cal-rejilla{position:absolute;left:20.0%;top:29.6%;width:65.3%;height:55.65%;display:grid;grid-template-columns:repeat(7,1fr);grid-template-rows:repeat(5,1fr)}
.av-cal-c{position:relative;border:0;background:none;padding:0;font:inherit;color:var(--tinta-m);text-align:left}
button.av-cal-c{cursor:pointer}
button.av-cal-c:hover{background:rgba(232,69,91,.08)}
.av-cal-n{position:absolute;left:8%;top:4%;font-family:"Caveat",var(--serif);font-weight:700;font-size:clamp(13px,2.4cqw,24px);line-height:1;color:#5A3E22}
.av-cal{container-type:inline-size}
.av-cal-n{font-size:clamp(12px,2.3cqi,24px)}
.av-cal-circ{position:absolute;left:-2%;top:-6%;width:62%;height:auto;overflow:visible}
.av-cal-circ path{fill:none;stroke:#C8102E;stroke-width:3;stroke-linecap:round;opacity:.85}
.av-cal-et{position:absolute;left:6%;right:4%;bottom:6%;overflow-wrap:anywhere;font-family:"Caveat",var(--serif);font-weight:700;font-size:clamp(10px,1.75cqi,17px);line-height:.95;color:#B8102E}
.av-cal-c.is-fijo .av-cal-circ path{stroke:#1a7f4b}
.av-cal-c.is-fijo .av-cal-et{color:#14623a}
.av-cal-c.is-no{background:rgba(200,16,46,.14)}
.av-cal-marco{border-radius:12px;overflow:hidden;margin-top:10px;box-shadow:0 8px 20px rgba(60,40,20,.18)}
.av-cal-marco.is-armed button.av-cal-c{background:rgba(255,201,60,.12)}
.av-cal-tabs{display:flex;gap:8px;margin-top:14px}
.av-cal-tab{font:inherit;font-family:var(--toon);font-weight:600;font-size:15px;padding:7px 16px;border-radius:999px;border:1.5px solid #E2C99A;background:#fff;color:var(--tinta-m);cursor:pointer}
.av-cal-tab.is-on{background:#B8102E;border-color:#B8102E;color:#fff}
@media (max-width:600px){
  /* en el móvil, la hoja se amplía para que la cuadrícula ocupe todo el ancho */
  .av-cal-marco .av-cal{width:145%;margin-left:-26%}
  .av-cal-marco .av-cal-n{font-size:clamp(13px,2.2cqi,22px)}
  .av-cal-marco .av-cal-et{font-size:clamp(9px,1.3cqi,13px);white-space:nowrap;overflow-wrap:normal;right:auto}
}
/* tarjetas con icono (misión 1): en el día, una pegatina redonda arriba a la derecha y el nombre debajo */
.av-chip.is-ico{cursor:pointer;font-family:var(--toon);font-weight:500;padding:7px 14px 7px 8px;border-color:#E2C99A}
.av-chip.is-ico .ico{width:28px;height:28px;padding:5px;border-radius:50%;background:#FDECEC;color:#C8102E;flex:none}
.av-chip.is-ico.is-sel{background:#FFF4F4}
.av-chip.is-ico.is-sel .ico{background:#C8102E;color:#fff}
.av-cal-pega{position:absolute;right:5%;top:5%;width:46%;aspect-ratio:1;border-radius:50%;display:flex;align-items:center;justify-content:center;
  background:#C8102E;color:#fff;box-shadow:0 0 0 2px #FFF8EA,0 2px 5px rgba(90,40,20,.35);transform:rotate(-8deg)}
.av-cal-pega .ico{width:62%;height:62%}
.av-cal-c.is-pega .av-cal-circ{display:none}
.av-cal-c.is-nueva .av-cal-pega{animation:av-pega .35s cubic-bezier(.3,1.6,.5,1)}
.av-cal-c.is-fijo .av-cal-pega{background:#1a7f4b}
.av-cal-c.is-no .av-cal-pega{background:#7a1a1a;animation:av-no .35s}
.av-cal-marco.is-completo .av-cal-pega{animation:av-pega-salto .7s ease both}
.av-cal-marco.is-completo .av-cal-c:nth-child(2n) .av-cal-pega{animation-delay:.12s}
.av-cal-marco.is-completo .av-cal-c:nth-child(3n) .av-cal-pega{animation-delay:.24s}
@keyframes av-pega{from{transform:scale(.2) rotate(-40deg);opacity:0}to{transform:rotate(-8deg);opacity:1}}
@keyframes av-pega-salto{0%,100%{transform:rotate(-8deg)}40%{transform:translateY(-22%) rotate(8deg) scale(1.15)}}
@media (prefers-reduced-motion:reduce){.av-cal-pega{animation:none!important}}

/* emparejar */
.av-pares{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.av-pares-col{display:flex;flex-direction:column;gap:8px}
.av-par{display:flex;align-items:center;gap:8px;min-height:48px;text-align:left;font:inherit;font-size:16px;padding:10px 12px;border-radius:10px;
  background:#fbfaf9;border:1.5px solid #e6e1da;color:var(--ink);cursor:pointer}
.av-par-n{display:none;width:22px;height:22px;border-radius:50%;flex:none;font-size:12px;font-weight:700;color:#fff;align-items:center;justify-content:center;background:var(--par)}
.av-par.is-par{border-color:var(--par);background:color-mix(in srgb,var(--par) 9%,#fff)}
.av-par.is-par .av-par-n{display:inline-flex}
.av-par.is-sel{border-color:#B8102E;box-shadow:0 0 0 3px rgba(184,16,46,.18)}
.av-par.is-fijo{border-color:#1a7f4b;background:#e8f6ee;color:#14623a;cursor:default}
.av-par.is-fijo .av-par-n{background:#1a7f4b}
.av-par.is-no{border-color:#c22026;background:#fdeced;animation:av-no .35s}
/* misión 1: fiestas con icono, fechas como hojas de calendario; el número del par va en la esquina */
.av-pares.is-hojas .av-par{position:relative;min-height:66px;font-family:var(--toon);font-weight:500;background:#fff;border-color:#E2C99A}
.av-pares.is-hojas .av-par .av-par-n{position:absolute;top:-8px;left:-8px;width:21px;height:21px;font-size:11.5px;box-shadow:0 0 0 2px #fff;z-index:1}
.av-par-ico{width:32px;height:32px;border-radius:50%;flex:none;display:inline-flex;align-items:center;justify-content:center;background:#FDECEC;color:#C8102E}
.av-par-ico .ico{width:18px;height:18px}
.av-par.is-par .av-par-ico{background:var(--par);color:#fff}
.av-par.is-fijo .av-par-ico{background:#1a7f4b;color:#fff}
.av-par.is-hoja{padding:0;overflow:visible;align-items:stretch}
.av-hoja{flex:1;display:flex;flex-direction:column;border-radius:9px;overflow:hidden}
.av-hoja-m{position:relative;padding:5px 6px 4px;background:#C8102E;color:#fff;font-size:11.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;text-align:center;line-height:1.1}
.av-hoja-m::before,.av-hoja-m::after{content:"";position:absolute;top:50%;width:5px;height:5px;margin-top:-2.5px;border-radius:50%;background:rgba(255,255,255,.75)}
.av-hoja-m::before{left:12px}
.av-hoja-m::after{right:12px}
.av-hoja-d{flex:1;display:flex;align-items:center;justify-content:center;font-size:27px;font-weight:700;line-height:1;color:#3a2618;
  background:repeating-linear-gradient(#fff 0 9px,#FBF6EC 9px 10px)}
.av-par.is-hoja.is-par .av-hoja-m{background:var(--par)}
.av-par.is-hoja.is-fijo .av-hoja-m{background:#1a7f4b}
.av-par.is-hoja.is-fijo .av-hoja-d{color:#14623a;background:#e8f6ee}
.av-par.is-hoja.is-no .av-hoja-m{background:#7a1a1a}

/* elegir con imágenes */
.av-q-img{margin:0 auto 12px;max-width:220px}
.av-q-img img{display:block;width:100%;height:auto;border-radius:12px}
.av-opts.is-img{grid-template-columns:repeat(3,1fr)}
.av-opts.is-img .av-opt{flex-direction:column;justify-content:center;text-align:center;gap:6px;padding:10px 8px;font-weight:600}
.av-opts.is-img .av-opt img{width:100%;max-width:150px;aspect-ratio:1;object-fit:contain;border-radius:8px}
.av-explica{margin-top:14px;padding:14px 16px;border-radius:12px;background:#FFF8E6;border:1.5px solid #E2C99A}
.av-explica-t{display:flex;gap:8px;margin:0 0 10px;font-family:var(--serif);font-size:16.5px;line-height:1.5;color:var(--tinta-m)}
.av-explica-t .ico{flex:none;margin-top:4px;color:#E9A91C}

.av-m-video{margin:0 0 6px;border:1.5px solid #E2C99A;border-radius:12px;background:#FFF8E6;padding:10px 14px}
.av-m-video summary{display:flex;align-items:center;gap:8px;cursor:pointer;font-family:var(--toon);font-weight:600;font-size:16px;color:var(--tinta-m);list-style:none}
.av-m-video summary::-webkit-details-marker{display:none}
.av-m-video summary .ico{color:#E9A91C}
.av-m-video p{font-size:15px;margin:10px 0}
.av-m-video-marco iframe{display:block;width:100%;aspect-ratio:16/9;border:0;border-radius:10px}

.av-m-estado{text-align:center;padding:18px}
.av-m-cargando{display:inline-flex;gap:8px;align-items:center;font-family:var(--toon);color:var(--ink-2)}
.av-m-error{color:#c22026;margin:0 0 10px}

/* final: la luz sale del calendario y la hoja se da la vuelta */
.av-m-final{position:relative;overflow:hidden;text-align:center;padding:28px 18px 30px;border-radius:18px;background:linear-gradient(180deg,#14214A,#22377A);color:#fff;margin-top:6px}
.av-m-final > *{position:relative;z-index:2}
.av-m-final .av-nieve{z-index:1}
.av-m-final h2{font-family:var(--toon);font-weight:700;font-size:28px;margin:16px 0 10px}
.av-m-final-escena{position:relative;max-width:520px;margin:0 auto;padding-top:70px}
.av-m-flip{perspective:1400px}
.av-m-flip-in{position:relative;transition:transform 1s cubic-bezier(.3,.7,.3,1);transform-style:preserve-3d}
.av-m-cara{backface-visibility:hidden;border-radius:12px;overflow:hidden;box-shadow:0 12px 30px rgba(0,0,0,.35)}
.av-m-reverso{position:absolute;inset:0;transform:rotateY(180deg);display:grid;place-items:center;padding:12%;
  background:radial-gradient(circle at 50% 40%,#FBF1D9,#E9D3A6);}
.av-m-reverso p{margin:0;font-family:"Caveat",var(--serif);font-weight:700;font-size:clamp(28px,6vw,44px);line-height:1.1;color:#5A3E22;transform:rotate(-3deg)}
.av-m-final.is-girado .av-m-flip-in{transform:rotateY(180deg)}
.av-m-luz{position:absolute;left:50%;top:38%;width:30%;margin-left:-15%;z-index:3;opacity:0;animation:av-luz-sube 1.6s .3s cubic-bezier(.2,.8,.3,1) forwards}
.av-m-final.is-girado .av-m-luz{animation:av-luz-flota 3s ease-in-out infinite;top:-2%;opacity:1}
@keyframes av-luz-sube{0%{opacity:0;transform:translateY(40%) scale(.3)}40%{opacity:1}100%{opacity:1;transform:translateY(-120%) scale(1)}}
@keyframes av-luz-flota{0%,100%{transform:translateY(0) scale(1);filter:drop-shadow(0 0 12px rgba(255,210,90,.7))}50%{transform:translateY(-6px) scale(1.04);filter:drop-shadow(0 0 22px rgba(255,210,90,.95))}}
.av-m-tio-fin{position:absolute;right:-30px;bottom:-34px;width:clamp(120px,32%,180px);z-index:3;animation:av-tio-entra .6s .9s cubic-bezier(.3,1.4,.5,1) both}
@keyframes av-tio-entra{from{transform:translateY(40px) scale(.6);opacity:0}to{transform:none;opacity:1}}
.av-m-prog{display:flex;align-items:center;gap:12px;max-width:340px;margin:0 auto;font-family:var(--toon);font-weight:600}
.av-m-prog .av-prog-bar{background:rgba(255,255,255,.18);height:10px;border-radius:5px;flex:1;overflow:hidden}
.av-m-prog .av-prog-bar i{display:block;height:100%;background:#FFC93C;border-radius:5px}
.av-m-pista{margin-top:16px}
.av-m-final.is-quieto .av-m-luz,.av-m-final.is-quieto .av-m-tio-fin{animation:none;opacity:1}
.av-m-final.is-quieto .av-m-flip-in{transition:none}
@media (max-width:560px){
  .av-m-tio{right:-10px;bottom:-26px}
  .av-m-tio-fin{right:-12px}
  .av-bocadillo{font-size:16.5px}
}

/* mapa apagado: abajo, una franja con el título y el progreso (izquierda) y «Te espera» (derecha) */
.av-lienzo.is-pintado{background:#0E1636}
.av-lienzo.is-pintado .av-panel{left:24px;bottom:16px;top:auto;right:auto;max-width:none;width:auto;min-width:0;padding:10px 16px;border-radius:14px;
  background:rgba(14,22,54,.86);color:#fff;backdrop-filter:blur(4px);display:flex;align-items:center;gap:18px;box-shadow:0 6px 18px rgba(0,0,0,.3)}
.av-lienzo.is-pintado .av-panel h1{color:#FFE7A3;font-size:22px;line-height:1.1;white-space:nowrap}
.av-lienzo.is-pintado .av-panel .av-sub{display:none}
.av-lienzo.is-pintado .av-panel .av-panel-x{display:block;min-width:170px}
.av-lienzo.is-pintado .av-panel .av-prog{margin:0;color:#fff;font-size:13.5px}
.av-lienzo.is-pintado .av-panel .av-prog-bar{background:rgba(255,255,255,.15)}
@media (min-width:761px){
  .av-lienzo.is-pintado .av-pastilla{left:auto;right:24px;bottom:16px;transform:none;width:auto;min-width:340px;max-width:calc(100% - 560px)}
}
@media (min-width:761px) and (max-width:1100px){
  .av-lienzo.is-pintado .av-panel h1{font-size:18px}
  .av-lienzo.is-pintado .av-panel .av-panel-x{min-width:120px}
  .av-lienzo.is-pintado .av-pastilla{max-width:calc(100% - 470px);min-width:0;font-size:14.5px}
}

/* un trozo de ciudad que se enciende */
.av-se-enciende{animation:av-enciende 2.4s ease-in-out both}
@keyframes av-enciende{from{opacity:1}to{opacity:0}}
@media (prefers-reduced-motion:reduce){.av-se-enciende{display:none}}

/* rótulos del mapa apagado: más gruesos y con sombra, como un sello sobre el mapa */
.av-bcn.is-pintado .m-pill{fill:#FFF9EC;stroke:#3A2A1A;stroke-width:calc(1.4px / var(--k));
  filter:drop-shadow(0 calc(2px / var(--k)) calc(2.5px / var(--k)) rgba(0,0,0,.55))}
.av-bcn.is-pintado .m-nombre{font-weight:700;fill:#2A1C10;letter-spacing:.01em;
  filter:drop-shadow(0 calc(.6px / var(--k)) 0 rgba(255,255,255,.7))}
.av-bcn.is-pintado .m-num{font-weight:700;paint-order:stroke;stroke:rgba(0,0,0,.35);stroke-width:calc(1.2px / var(--k))}
.av-bcn.is-pintado .m-bola{filter:drop-shadow(0 calc(2px / var(--k)) calc(3px / var(--k)) rgba(0,0,0,.6))}
.av-bcn.is-pintado .m-parada.is-cerrada .m-nombre{fill:#4A3C2E}
.av-bcn.is-pintado .m-parada.is-hecha .m-pill{fill:#FFE9A8}

/* ---------------- primera visita ---------------- */
.av-velo{position:absolute;inset:0;z-index:6;background:rgba(6,10,28,.9);transition:opacity 1s ease;pointer-events:none}
.av-lienzo.is-revela .av-velo{opacity:0}
.av-lienzo.is-intro .av-panel,.av-lienzo.is-intro .av-pastilla{opacity:0;pointer-events:none}
.av-lienzo .av-panel,.av-lienzo .av-pastilla{transition:opacity .8s ease .6s}
.av-apaga{opacity:0;animation:av-apaga .55s ease-in forwards}
@keyframes av-apaga{from{opacity:0}to{opacity:1}}
.m-parada.av-aparece{opacity:0;transform-box:fill-box;transform-origin:center;animation:av-aparece .55s cubic-bezier(.3,1.5,.5,1) forwards}
@keyframes av-aparece{from{opacity:0;transform:scale(.4)}to{opacity:1;transform:none}}

.av-prefacio{border:0;padding:0;background:transparent;max-width:min(560px,calc(100vw - 32px));width:100%;overflow:visible}
.av-prefacio::backdrop{background:rgba(6,10,28,.55);backdrop-filter:blur(2px)}
.av-pref-in{position:relative;background:#FBF3E2;border:2px solid #E2C99A;border-radius:20px;padding:26px 26px 22px;
  box-shadow:0 24px 60px rgba(0,0,0,.45);text-align:center;color:#3A2A1A;animation:av-pref-entra .5s cubic-bezier(.3,1.3,.5,1) both;
  max-height:calc(100vh - 150px);overflow:auto}
.av-prefacio.is-cierra .av-pref-in{animation:av-pref-sale .28s ease-in forwards}
@keyframes av-pref-entra{from{opacity:0;transform:translateY(24px) scale(.94)}to{opacity:1;transform:none}}
@keyframes av-pref-sale{to{opacity:0;transform:translateY(16px) scale(.97)}}
.av-pref-tio{position:relative;z-index:2;display:block;width:120px;height:auto;margin:0 auto -46px;filter:drop-shadow(0 8px 10px rgba(0,0,0,.3));animation:av-pref-entra .5s .1s cubic-bezier(.3,1.3,.5,1) both}
.av-prefacio.is-cierra .av-pref-tio{animation:av-pref-sale .28s ease-in forwards}
.av-pref-in{padding-top:24px}
.av-prefacio h2{font-family:var(--toon);font-weight:700;font-size:26px;line-height:1.15;margin:4px 0 12px;color:#B8102E}
.av-prefacio p{font-family:var(--serif);font-size:17px;line-height:1.5;margin:0 0 10px}
.av-prefacio p.is-cita{font-family:var(--toon);font-weight:500;font-size:17.5px;background:#fff;border:1.5px solid #E2C99A;border-radius:14px;padding:10px 14px}
.av-prefacio p.is-ru{font-family:var(--display);font-size:15px;color:#7A5A3A}
.av-pref-ok{margin-top:8px;font-family:var(--toon);font-size:19px;padding:11px 34px;border-radius:999px}
.av-prefacio{margin-top:max(24px,6vh)}
@media (prefers-reduced-motion:reduce){.av-velo{transition:none}.av-apaga{animation-duration:.01s}.m-parada.av-aparece{animation:none;opacity:1}.av-pref-in{animation:none}}
@media (max-width:560px){
  .av-pref-in{padding:40px 16px 16px}
  .av-prefacio h2{font-size:22px}
  .av-prefacio p{font-size:15.5px;margin-bottom:8px}
  .av-prefacio p.is-cita{font-size:15.5px;padding:8px 12px}
  .av-prefacio p.is-ru{font-size:14px}
  .av-pref-tio{width:96px;margin-bottom:-38px}
}

/* prefacio: pistas, sobre con la carta y la nube de Tió */
.av-prefacio p.is-fuerte{font-family:var(--toon);font-weight:700;font-size:19px;color:#B8102E}
.av-pistas-pref{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:6px 0 12px}
.av-pistas-pref figure{margin:0;background:#fff;border:1.5px solid #E2C99A;border-radius:14px;padding:10px 8px 8px;animation:av-pista-entra .5s cubic-bezier(.3,1.3,.5,1) both}
.av-pistas-pref img{display:block;width:100%;max-width:150px;aspect-ratio:1;object-fit:contain;margin:0 auto}
.av-pistas-pref figcaption{font-family:var(--toon);font-weight:600;font-size:14.5px;line-height:1.25;color:#5A3E22;margin-top:4px}
@keyframes av-pista-entra{from{opacity:0;transform:translateY(10px) scale(.92)}to{opacity:1;transform:none}}

.av-carta-bloque{margin:4px 0 14px}
.av-carta-pie{font-family:var(--toon)!important;font-weight:600;font-size:16px!important;color:#5A3E22;margin:0 0 4px!important}
.av-sobre{position:relative;width:min(100%,330px);aspect-ratio:300/190;margin:80px auto 0}
.av-sobre svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.av-sobre-fondo path{fill:#C9A46A;stroke:#8A6A3A;stroke-width:2;stroke-linejoin:round}
.av-sobre-fondo .av-sobre-solapa{fill:#B8925A}
.av-sobre-frente{z-index:3}
.av-sobre-frente path{fill:#E2C48E;stroke:#8A6A3A;stroke-width:2;stroke-linejoin:round}
.av-sobre-frente .av-sobre-pliegue{fill:none;stroke:#B8925A;stroke-width:1.5}
.av-sello{fill:#B8102E;stroke:#7E0B20;stroke-width:2}
.av-sello-l{stroke:#F2C3C3;stroke-width:2;stroke-linecap:round}
.av-carta{position:absolute;z-index:2;left:7%;right:7%;bottom:60%;padding:14px 16px 34px;border-radius:4px;
  background:radial-gradient(circle at 50% 30%,#FFFBEF,#F3E3BE);box-shadow:0 4px 12px rgba(60,40,20,.25);transform:rotate(-1.5deg);
  animation:av-carta-sale 1.1s .9s cubic-bezier(.25,.9,.3,1.1) both}
.av-carta p{margin:0!important;font-family:"Caveat",var(--serif)!important;font-weight:700;font-size:21px!important;line-height:1.15!important;color:#4A2E14;text-align:left}
.av-carta-firma{position:absolute;right:14px;bottom:12px;color:#B8102E;font-size:16px}
@keyframes av-carta-sale{from{transform:translateY(75%) rotate(0)}to{transform:translateY(0) rotate(-1.5deg)}}

.av-piensa{display:flex;align-items:flex-end;gap:4px;margin:10px 0 6px;text-align:left}
.av-piensa > img{width:110px;flex:none;filter:drop-shadow(0 6px 8px rgba(0,0,0,.25))}
.av-nube{position:relative;flex:1;margin-bottom:46px;background:#fff;border:2px solid #E2C99A;border-radius:30px;padding:12px 16px}
.av-nube p{margin:0!important;font-family:var(--toon)!important;font-weight:600;font-size:17px!important;color:#3A2A1A}
.av-nube-b1,.av-nube-b2{position:absolute;background:#fff;border:2px solid #E2C99A;border-radius:50%}
.av-nube-b1{width:16px;height:16px;left:-8px;bottom:-16px}
.av-nube-b2{width:9px;height:9px;left:-22px;bottom:-28px}
@media (max-width:560px){
  .av-carta p{font-size:17px!important}
  .av-sobre{margin-top:84px}
  .av-piensa > img{width:84px}
  .av-nube p{font-size:15.5px!important}
}
@media (prefers-reduced-motion:reduce){.av-carta{animation:none;transform:rotate(-1.5deg)}.av-pistas-pref figure{animation:none}}

/* prefacio: que quepa sin desplazarse; en pantallas anchas, dos columnas */
.av-pref-in:focus{outline:none}
.av-pref-in h2{margin-bottom:10px}
.av-prefacio .av-pref-cols p{margin-bottom:8px}
@media (min-width:880px){
  .av-prefacio{max-width:min(900px,calc(100vw - 48px));margin-top:max(20px,4vh)}
  .av-pref-in{padding:24px 28px 20px;max-height:calc(100vh - 40px)}
  .av-pref-cols{display:grid;grid-template-columns:1fr 1fr;gap:10px 30px;align-items:center;text-align:left}
  .av-pref-cols .av-pref-col:first-child p{text-align:left}
  .av-pistas-pref{margin-bottom:0}
  .av-carta-bloque{margin:0}
  .av-carta-pie{text-align:center}
  .av-sobre{margin-top:78px}
  .av-piensa{margin:8px 0 0}
}
@media (min-width:880px) and (max-height:780px){
  .av-prefacio h2{font-size:23px;margin:0 0 8px}
  .av-prefacio p{font-size:16px;line-height:1.4}
  .av-pistas-pref img{max-width:110px}
  .av-sobre{width:min(100%,290px);margin-top:66px}
  .av-carta p{font-size:18.5px!important}
  .av-piensa > img{width:88px}
  .av-nube{margin-bottom:34px}
  .av-pref-ok{margin-top:4px;padding:9px 30px}
}
@media (max-width:879px){
  .av-pistas-pref img{max-width:110px}
}
@media (max-width:879px){
  .av-prefacio{margin-top:12px;max-width:calc(100vw - 20px)}
  .av-pref-in{max-height:calc(100vh - 24px);max-height:calc(100svh - 24px);padding:16px 14px 14px}
  .av-prefacio h2{font-size:20px;margin:0 0 6px}
  .av-prefacio p{font-size:14.5px;line-height:1.38;margin-bottom:6px}
  .av-prefacio p.is-fuerte{font-size:16px}
  .av-pistas-pref{gap:8px;margin:4px 0 6px}
  .av-pistas-pref figure{display:flex;align-items:center;gap:6px;padding:6px;text-align:left}
  .av-pistas-pref img{width:56px;max-width:56px;margin:0;flex:none}
  .av-pistas-pref figcaption{font-size:13px;margin:0}
  .av-carta-pie{font-size:14.5px!important}
  .av-sobre{width:min(100%,250px);margin-top:62px}
  .av-carta{padding:9px 12px 26px}
  .av-carta p{font-size:15.5px!important}
  .av-piensa{margin:4px 0 2px}
  .av-piensa > img{width:66px}
  .av-nube{margin-bottom:26px;padding:8px 12px}
  .av-nube p{font-size:14.5px!important}
  .av-pref-ok{margin-top:6px;padding:9px 30px;font-size:17px}
}

/* ---------------- traducción ---------------- */
.av-trad{cursor:help;border-radius:4px;transition:background .15s}
.av-trad:hover,.av-trad:focus{background:rgba(255,214,110,.35);outline:none}
.av-tip{position:fixed;z-index:1000;max-width:320px;padding:8px 12px;border-radius:10px;background:#1E2646;color:#fff;
  font-family:var(--display);font-size:14px;font-style:normal;font-weight:500;line-height:1.35;text-align:left;
  box-shadow:0 8px 22px rgba(0,0,0,.35);pointer-events:none}
.av-tip[hidden]{display:none}
.av-trad-ayuda{display:flex;align-items:center;justify-content:center;gap:6px;margin:-4px 0 10px!important;
  font-family:var(--display)!important;font-size:12.5px!important;color:#8A6A3A!important}
.av-trad-ayuda .ico{width:14px;height:14px}

/* ---------------- intro de Tió ---------------- */
.av-intro-tio{max-width:min(860px,calc(100vw - 24px))}
.av-it{position:relative;text-align:left;padding:34px 28px 24px;
  background:radial-gradient(circle at 30% 20%,#FBF3E2,#F1E1BE);border:2px solid #CFAE74;box-shadow:0 24px 60px rgba(0,0,0,.45)}
.av-it-fecha{position:absolute;left:22px;top:-14px;padding:5px 14px;background:#F6E7C4;border:1.5px solid #CFAE74;border-radius:6px;
  font-family:var(--serif);font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:#5A3E22;transform:rotate(-2deg);box-shadow:0 3px 6px rgba(0,0,0,.15)}
.av-it-cols{display:grid;grid-template-columns:1fr 250px;gap:18px;align-items:end}
.av-it-tit{font-family:var(--serif)!important;font-weight:600!important;font-size:30px!important;color:#A8102A!important;margin:0 0 6px!important;text-align:left}
.av-it .av-trad-ayuda{justify-content:flex-start;margin:0 0 10px!important}
.av-it-dice p{font-family:var(--serif)!important;font-style:italic;font-size:17px!important;line-height:1.45!important;margin:0 0 9px!important;color:#3A2A1A}
.av-it-tio{width:250px;height:auto;align-self:end;margin:0 -10px -10px 0;filter:drop-shadow(0 10px 14px rgba(0,0,0,.3))}
.av-it-botones{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px}
.av-it-botones .btn{display:inline-flex;align-items:center;gap:8px;font-family:var(--serif);font-size:18px;padding:10px 18px;border-radius:999px}
.av-it-botones .btn .ico{width:18px;height:18px}
.av-it-vamos{background:linear-gradient(180deg,#C8213A,#9A1226)!important;border:2px solid #E0B25C!important;color:#fff!important}
.av-it-vamos .ico:first-child{fill:#FFC93C;color:#E9A91C}
.av-it-premio{background:#FFF8E6!important;border:2px solid #CFAE74!important;color:#3A2A1A!important}
.av-it-premio .ico:first-child{color:#C8213A}
.av-it-resp{font-family:var(--serif)!important;font-style:italic;font-size:17px!important;margin:0 0 10px!important}
.av-concurso{background:#fff;border:1.5px solid #E2C99A;border-radius:14px;padding:12px 14px}
.av-conc-tit{font-family:var(--toon);font-weight:700;font-size:18px;color:#A8102A;margin:0 0 6px}
.av-conc-premio{display:flex;align-items:center;gap:8px;font-weight:600;font-size:15.5px!important;margin:0 0 8px!important}
.av-conc-premio .ico{flex:none;color:#C8213A;width:20px;height:20px}
.av-conc-fechas{display:grid;grid-template-columns:auto 1fr;gap:3px 12px;margin:0 0 8px;font-size:14.5px}
.av-conc-fechas dt{font-weight:700;color:#3A2A1A}
.av-conc-fechas dd{margin:0;color:#5A4A3A}
.av-conc-reglas{margin:0 0 6px;padding-left:18px;font-size:14.5px;line-height:1.45}
.av-btn-premio{display:inline-flex;align-items:center;gap:5px;margin-left:4px;padding:6px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.3);
  background:transparent;color:#FFE7A3;font:inherit;font-family:var(--toon);font-weight:600;font-size:13.5px;cursor:pointer}
.av-btn-premio .ico{width:15px;height:15px}
.av-btn-premio:hover{background:rgba(255,255,255,.1)}
@media (max-width:760px){
  .av-it{padding:30px 16px 16px}
  .av-it-cols{grid-template-columns:1fr}
  .av-it-tio{width:150px;margin:-6px auto -6px;order:-1;justify-self:center}
  .av-it-tit{font-size:23px!important}
  .av-it-dice p{font-size:15.5px!important;margin-bottom:6px!important}
  .av-it-botones .btn{font-size:16px;padding:9px 14px;flex:1;justify-content:center}
}

/* ---------------- estados de las paradas ---------------- */
.m-progreso{fill:none;stroke:#FFC93C;stroke-linecap:round;transform-box:fill-box;transform-origin:center;animation:av-gira 9s linear infinite}
@keyframes av-gira{to{transform:rotate(360deg)}}
.m-candado circle{fill:#3A3550;stroke:#fff;stroke-width:1.6}
.m-candado rect{fill:#fff}
.m-candado path{fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round}
@media (prefers-reduced-motion:reduce){.m-progreso{animation:none}}
.av-intro-tio{margin:auto}
.av-it{padding-top:52px}
.av-it-fecha{top:14px;left:20px}
@media (max-width:760px){ .av-it{padding-top:48px} }
@media (max-width:760px){
  .av-conc-fechas{grid-template-columns:1fr;gap:0}
  .av-conc-fechas dd{margin:0 0 6px;font-size:13.5px}
  .av-it-botones .btn{white-space:nowrap;font-size:15px;padding:9px 12px}
}

.av-it-dice p.is-fuerte{font-weight:700;font-style:normal;color:#A8102A}
.av-conc-reglas{font-weight:700;color:#3A2A1A;margin:0 0 10px}
.av-conc-fechas{margin:0 0 8px;padding-top:8px;border-top:1px dashed #E2C99A}

/* ---------------- misiones 2 y 3: árbol, sopa con adornos, dulces, diálogo, postal ---------------- */

/* contador 3/8 */
.av-cont{margin:10px 0 0;text-align:center;font-family:var(--toon);font-weight:600;font-size:15px;color:#8A6A12}

/* sopa: filas para el lector de pantalla, la cuadrícula sigue siendo una sola */
.av-sopa-fila{display:contents}
.av-paso.is-mision .av-sopa{max-width:min(100%,540px);margin:0 auto;gap:3px}
.av-paso.is-mision .av-letra{font-size:clamp(14px,4.3vw,20px);border-radius:6px}
.av-letra:focus-visible{outline:3px solid #2E86C1;outline-offset:1px;position:relative;z-index:1}
.av-letra.is-mal{background:#fdeced;color:#c22026;animation:av-no .35s}
.av-sopa-lista li.is-adorno{padding:4px 12px 4px 6px;gap:6px}
.av-sopa-orn{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;border:1.5px dashed #d9cdb6}
.av-sopa-orn .av-adorno{width:28px;height:28px;opacity:0;transform:scale(.3);transition:opacity .35s,transform .45s cubic-bezier(.3,1.5,.5,1)}
.av-sopa-lista li.is-found .av-sopa-orn,.av-sopa-lista li.is-shown .av-sopa-orn{border-color:transparent}
.av-sopa-lista li.is-found .av-adorno,.av-sopa-lista li.is-shown .av-adorno{opacity:1;transform:none}
.av-sopa-lista li.is-adorno.is-found{text-decoration:none}
.av-sopa-lista li.is-found .ico{color:#1a7f4b}

/* al terminar un paso: título, Tió y botón */
.av-paso-fin{margin-top:16px;padding:16px 16px 18px;border-radius:14px;background:#FFF8E6;border:1.5px solid #E2C99A;text-align:center;animation:av-sube .5s both}
.av-paso-fin-t{display:flex;justify-content:center;align-items:center;gap:8px;margin:0;font-family:var(--toon);font-weight:700;font-size:21px;color:#B8102E}
.av-paso-fin-t .ico{fill:#FFC93C;color:#E9A91C;font-size:22px}
.av-paso-fin .btn-red{margin-top:14px;font-family:var(--toon);font-size:18px;padding:11px 28px;border-radius:999px}
.av-bocadillo.is-celebra{display:flex;align-items:center;gap:10px;text-align:left}
.av-bocadillo.is-celebra img{width:64px;height:64px;object-fit:contain;flex:none}
@keyframes av-sube{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}

/* intro con escena (árbol, pastelería) */
.av-m-intro.is-escena .av-m-escena{max-width:560px}
.av-m-fondo.is-arbol{max-width:340px;margin:0 auto}
.av-m-fondo.is-arbol .av-arbol-svg{display:block;width:100%;height:auto}
.av-m-fondo.is-paste{border-radius:14px;overflow:hidden;box-shadow:0 12px 30px rgba(60,40,20,.25)}
.av-m-fondo.is-paste svg,.av-m-fondo.is-paste img{display:block;width:100%;height:auto}
.av-m-intro.is-arbol .av-m-tio{right:0;bottom:-6px;width:clamp(120px,32%,180px)}
.av-m-intro.is-pasteleria .av-m-tio{right:-14px;bottom:-34px}
.av-m-texto{font-family:var(--serif);font-size:18.5px;line-height:1.5;color:var(--tinta-m);max-width:540px;margin:26px auto 0}
.av-bocadillo.is-luego{animation:av-sube .5s 1.4s both}
.av-m-acc{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:18px}
.av-m-acc .av-m-vamos{margin-top:0}
.av-m-verpista{font-family:var(--toon);font-size:17px;border-radius:999px;padding:11px 22px}

/* árbol: elegir adorno (izquierda) y tocar su sitio (derecha); en el móvil, uno debajo del otro */
.av-arbol-juego{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:20px;align-items:start}
.av-arbol-instr{display:flex;align-items:center;gap:10px;min-height:58px;margin:0 0 12px;padding:10px 14px;border-radius:12px;background:#FFF8E6;border:1.5px solid #E2C99A;
  font-family:var(--serif);font-size:17px;line-height:1.35;color:var(--ink-2)}
.av-arbol-instr.is-on{color:var(--tinta-m);font-weight:600;border-color:#B8102E;background:#fff}
.av-arbol-instr-orn{flex:none;width:42px;height:42px}
.av-arbol-instr-orn .av-adorno{width:42px;height:42px}
.av-arbol-panel{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.av-orn{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px 7px;font:inherit;font-family:var(--toon);font-weight:600;font-size:13px;line-height:1.15;
  color:var(--tinta-m);background:#fff;border:1.5px solid #E2C99A;border-radius:12px;cursor:pointer;min-height:84px;transition:transform .12s,border-color .12s}
.av-orn .av-adorno{width:44px;height:44px}
.av-orn:hover:not(.is-puesto){transform:translateY(-2px);border-color:#B8102E}
.av-orn.is-sel{border-color:#B8102E;box-shadow:0 0 0 3px rgba(184,16,46,.2);background:#FFF4F2}
.av-orn.is-puesto{opacity:.45;cursor:default;border-style:dashed}
.av-arbol-lienzo{position:relative;max-width:430px;width:100%;margin:0 auto;border-radius:16px;background:radial-gradient(ellipse at 50% 45%,#fdf6e6,#f1e4c8);padding:6px}
.av-arbol-svg{display:block;width:100%;height:auto;overflow:visible}
.av-capa[hidden]{display:none}
.av-arbol-lienzo:not(.is-armado):not(.is-encendido) .av-capa{cursor:pointer}
.av-arbol-halo{opacity:.55;transition:opacity 1.2s}
/* sitios: invisibles hasta elegir un adorno */
.av-zona{pointer-events:none;outline:none}
.av-zona circle,.av-zona ellipse{fill:transparent;stroke:none}
.av-zona .av-zona-hit{fill:none;stroke:transparent;stroke-width:24;stroke-linejoin:round}
.av-zona .av-zona-ver{fill:none;stroke:none}
.av-arbol-lienzo.is-armado .av-zona{pointer-events:auto;cursor:pointer}
.av-arbol-lienzo.is-armado .av-zona .av-zona-hit{pointer-events:stroke}
.av-arbol-lienzo.is-armado .av-zona circle,.av-arbol-lienzo.is-armado .av-zona ellipse{fill:rgba(255,248,225,.16);stroke:rgba(255,255,255,.95);stroke-width:2;stroke-dasharray:5 4}
.av-arbol-lienzo.is-armado .av-zona .av-zona-ver{stroke:rgba(255,255,255,.9);stroke-width:2;stroke-dasharray:5 4}
.av-arbol-lienzo.is-armado .av-zona[data-zona="suelo"] ellipse{stroke:rgba(120,90,60,.7)}
.av-arbol-lienzo.is-armado .av-zona:hover circle,.av-arbol-lienzo.is-armado .av-zona:hover ellipse,
.av-arbol-lienzo.is-armado .av-zona:focus-visible circle,.av-arbol-lienzo.is-armado .av-zona:focus-visible ellipse{fill:rgba(255,201,60,.38);stroke:#FFC93C;stroke-dasharray:none}
.av-arbol-lienzo.is-armado .av-zona:hover .av-zona-ver,.av-arbol-lienzo.is-armado .av-zona:focus-visible .av-zona-ver{stroke:#FFC93C;stroke-width:4;stroke-dasharray:none}
.av-zona.is-no circle,.av-zona.is-no ellipse{fill:rgba(194,32,38,.35)!important;stroke:#c22026!important}
.av-zona.is-no .av-zona-ver{stroke:#c22026!important}
/* aparecer */
.av-capa.is-entra .av-capa-in{transform-box:fill-box;transform-origin:center;animation:av-orn-in .6s cubic-bezier(.3,1.5,.5,1) both}
.av-capa.is-entra .av-luces-cable{stroke-dasharray:1;stroke-dashoffset:1;animation:av-cable 1.3s ease-out forwards}
.av-capa.is-entra .av-bombilla{animation:av-orn-fade .4s both;animation-delay:calc(.25s + var(--k) * .12s)}
@keyframes av-orn-in{from{opacity:0;transform:scale(.4) translateY(-10px)}to{opacity:1;transform:none}}
@keyframes av-orn-fade{from{opacity:0}to{opacity:1}}
@keyframes av-cable{to{stroke-dashoffset:0}}
/* encendido: las luces titilan y la estrella brilla */
.is-encendido .av-arbol-halo{opacity:1}
.is-encendido .av-bombilla{animation:av-titila 1.8s ease-in-out infinite;animation-delay:calc(var(--k) * .22s);filter:drop-shadow(0 0 4px #ffd36b)}
.is-encendido .av-o-estrella{transform-box:fill-box;transform-origin:center;animation:av-estrella 2.4s ease-in-out infinite;filter:drop-shadow(0 0 10px #ffd36b) drop-shadow(0 0 22px rgba(255,201,60,.8))}
@keyframes av-titila{0%,100%{opacity:1}50%{opacity:.45}}
@keyframes av-estrella{0%,100%{transform:scale(1)}50%{transform:scale(1.08)}}
@media (max-width:720px){
  .av-arbol-juego{grid-template-columns:1fr;gap:12px}
  .av-arbol-lado{position:sticky;top:52px;z-index:4;background:#fff;padding:6px 0 4px;margin:0 -2px}
  .av-arbol-panel{gap:6px}
  .av-orn{min-height:70px;font-size:12px;padding:6px 2px}
  .av-orn .av-adorno{width:36px;height:36px}
  .av-arbol-instr{font-size:16px;min-height:50px;margin-bottom:8px}
}

/* emparejar al momento: imágenes arriba, nombres abajo */
.av-ya-fotos{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}
.av-ya-foto{flex:0 0 calc((100% - 24px) / 3)}
.av-ya-foto{display:flex;flex-direction:column;align-items:stretch;gap:4px;padding:8px 8px 6px;font:inherit;background:#fff;border:2px solid #E2C99A;border-radius:14px;cursor:pointer;
  transition:transform .12s,border-color .12s}
.av-ya-foto:hover:not(:disabled){transform:translateY(-2px)}
.av-ya-img{display:block;aspect-ratio:4/3;border-radius:10px;overflow:hidden;background:#FBF4E4}
.av-ya-img svg,.av-ya-img img{display:block;width:100%;height:100%;object-fit:cover}
.av-ya-et{min-height:22px;font-family:var(--toon);font-weight:600;font-size:15px;color:#14623a;text-align:center}
.av-ya-foto.is-sel{border-color:#B8102E;box-shadow:0 0 0 3px rgba(184,16,46,.2)}
.av-ya-foto.is-fijo{border-color:#1a7f4b;background:#EAF6EE;cursor:default;animation:av-orn-in .45s both}
.av-ya-foto.is-no{border-color:#c22026;background:#fdeced;animation:av-no .35s}
.av-ya-nombres{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:12px}
.av-ya-nombre{cursor:pointer;touch-action:auto;font-family:var(--toon);font-weight:600;font-size:16px;padding:10px 16px}
.av-ya-nombre[hidden]{display:none}
@media (max-width:560px){
  .av-ya-fotos{gap:8px}
  .av-ya-foto{flex-basis:calc((100% - 8px) / 2)}
  .av-ya-foto{padding:5px 5px 4px;border-radius:12px}
  .av-ya-et{font-size:13px;min-height:18px;line-height:1.15}
  .av-ya-nombre{font-size:15px;padding:9px 13px}
}

/* escuchar: reproductor, barra, pregunta tras la primera escucha */
.av-escucha{margin-top:14px;padding:14px;border:1.5px solid #E2C99A;border-radius:12px;background:#FFF8E6}
.av-escucha .btn{font-family:var(--toon);font-size:16px;border-radius:999px;padding:9px 20px}
.av-escucha .btn .ico{margin-right:4px}
.av-esc-pista{display:flex;align-items:center;gap:10px;margin-top:12px}
.av-esc-barra{flex:1;height:8px;border-radius:4px;background:#efe3cc;overflow:hidden}
.av-esc-barra i{display:block;height:100%;width:0;background:#B8102E;border-radius:4px;transition:width .25s linear}
.av-esc-t{font-family:var(--mono);font-size:13px;color:var(--ink-3);min-width:84px;text-align:right}
.av-escucha.is-sonando .av-esc-play .ico{animation:av-titila 1s ease-in-out infinite}
.av-ver-trans{display:block;margin-top:10px}
.av-escucha .av-trans p b{color:#B8102E;font-family:var(--toon);font-weight:600}
.av-esc-aviso{display:flex;gap:8px;align-items:center;color:var(--ink-3);font-size:14.5px;margin:14px 0 0}
.av-esc-preg{margin-top:16px}
.av-esc-preg.is-entra{animation:av-sube .45s both}
.av-opt-l{display:inline-grid;place-items:center;width:28px;height:28px;flex:none;border-radius:50%;background:#f3ecdf;font-family:var(--toon);font-weight:700;font-size:14px;color:var(--tinta-m)}
.av-opt.is-ok .av-opt-l{background:#1a7f4b;color:#fff}
.av-opt.is-no .av-opt-l{background:#c22026;color:#fff}

/* final de la misión 2: árbol encendido, la luz sale de la estrella, y la bolsa */
.av-m-final.is-arbol .av-m-final-escena{padding-top:56px}
.av-m-arbol-fin{max-width:300px;margin:0 auto}
.av-m-final.is-arbol .av-m-luz{top:6%;width:24%;margin-left:-12%}
.av-m-final.is-arbol .av-m-arbol-fin .av-arbol-halo{opacity:.25}
.av-m-trans{margin-top:22px}
.av-m-final.is-bolsa .av-m-trans{animation:av-sube .6s both}
.av-m-trans-escena{position:relative;max-width:280px;margin:0 auto}
.av-m-trans-escena .av-bolsa{display:block;width:62%;margin:0 0 0 6%}
.av-m-tio-bolsa{position:absolute;right:-6%;bottom:-6%;width:52%;filter:drop-shadow(0 6px 8px rgba(0,0,0,.3))}
.av-m-final .av-bocadillo.is-luego{animation:av-sube .5s 1.6s both}
.av-m-nueva{font-family:var(--toon);font-weight:600;font-size:19px;line-height:1.35;color:#FFE7A3;max-width:460px;margin:18px auto 4px}
.av-m-final.is-quieto .av-bocadillo.is-luego,.av-m-final.is-quieto .av-m-trans{animation:none}

/* misión 3 hecha (detrás de la postal) */
.av-m-hecha{text-align:center;padding:16px 0 8px}

/* la postal: luz y pista en una sola ventana */
dialog.av-postal{border:0;padding:0;background:transparent;width:min(92vw,520px);max-width:none;max-height:none;overflow:visible}
dialog.av-postal::backdrop{background:rgba(16,26,58,.6);backdrop-filter:blur(2px)}
.av-postal-in{position:relative;max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);overflow:auto;text-align:center;padding:28px 26px 30px;border-radius:8px;color:var(--tinta-m);
  background:radial-gradient(circle at 50% 20%,#FFFBF0,#F3E5C6);box-shadow:0 20px 60px rgba(0,0,0,.45),inset 0 0 0 6px #FBF4E4,inset 0 0 0 8px #B8102E,inset 0 0 0 11px #FBF4E4,inset 0 0 0 12px #C9952F;
  animation:av-postal-in .5s cubic-bezier(.3,1.3,.5,1) both}
@keyframes av-postal-in{from{opacity:0;transform:translateY(24px) scale(.94)}to{opacity:1;transform:none}}
.av-postal-luz{width:96px;height:96px;margin:-4px auto 4px}
.av-postal-luz svg{width:100%;height:100%;overflow:visible}
.av-postal-luz path{fill:#FFC93C;stroke:#E9A91C;stroke-width:3;stroke-linejoin:round;transform-box:fill-box;transform-origin:center;
  animation:av-postal-estrella 1s .2s cubic-bezier(.3,1.6,.5,1) both,av-postal-brilla 2.6s 1.2s ease-in-out infinite}
@keyframes av-postal-estrella{from{transform:scale(0) rotate(-90deg);opacity:0}to{transform:none;opacity:1}}
@keyframes av-postal-brilla{0%,100%{filter:drop-shadow(0 0 8px rgba(255,201,60,.8))}50%{filter:drop-shadow(0 0 20px rgba(255,201,60,1)) drop-shadow(0 0 34px rgba(255,170,40,.6))}}
.av-postal h2{font-family:var(--toon);font-weight:700;font-size:26px;line-height:1.15;margin:4px 0 10px;color:#B8102E}
.av-postal .av-m-prog .av-prog-bar{background:rgba(90,62,34,.14)}
.av-postal-sep{display:flex;align-items:center;gap:10px;margin:18px 0 12px;color:#C9952F}
.av-postal-sep span{flex:1;height:1px;background:linear-gradient(90deg,transparent,#C9952F,transparent)}
.av-postal-sep .ico{fill:#FFC93C;color:#E9A91C}
.av-postal h3{font-family:var(--toon);font-weight:700;font-size:21px;margin:0 0 8px;color:var(--tinta-m)}
.av-postal-texto{font-family:var(--serif);font-size:17.5px;line-height:1.5;margin:0 auto;max-width:420px}
.av-postal .av-bocadillo{margin-top:16px;background:#fff}
.av-postal-destino{display:flex;flex-direction:column;align-items:center;gap:2px;margin:18px auto 14px;padding:10px 16px;border:1.5px dashed #C9952F;border-radius:10px;max-width:320px}
.av-postal-destino span{font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#8A6A12}
.av-postal-destino b{font-family:var(--toon);font-size:20px;color:#B8102E}
.av-postal-destino small{font-family:var(--serif);font-size:15px;color:var(--ink-2)}
.av-postal-ok{font-family:var(--toon);font-size:18px;padding:11px 30px;border-radius:999px;text-decoration:none}
.av-postal-ok:hover,.av-postal-ok:focus{text-decoration:none}
/* sin «Próximo destino» ni capítulo (misión 7): el botón va justo después de Tió */
.av-postal .av-bocadillo + .av-postal-ok,.av-postal .av-postal-texto + .av-postal-ok{display:inline-block;margin-top:20px}
.av-postal.is-quieto .av-postal-in,.av-postal.is-quieto .av-postal-luz path{animation:none}
.av-postal.is-quieto .av-postal-luz path{filter:drop-shadow(0 0 10px rgba(255,201,60,.9))}
@media (max-width:560px){
  .av-postal-in{padding:24px 20px 26px}
  .av-postal h2{font-size:23px}
  .av-postal-luz{width:76px;height:76px}
}
@media (prefers-reduced-motion:reduce){
  .av-capa.is-entra .av-capa-in,.av-capa.is-entra .av-luces-cable,.av-capa.is-entra .av-bombilla,.is-encendido .av-bombilla,.is-encendido .av-o-estrella,
  .av-bocadillo.is-luego,.av-paso-fin,.av-esc-preg.is-entra,.av-ya-foto.is-fijo{animation:none}
  .av-capa.is-entra .av-luces-cable{stroke-dashoffset:0}
}

/* ---------------- misión 4: crucigrama con la palabra activa arriba y pistas ---------------- */
.av-cr-panel{display:grid;grid-template-columns:1fr auto;gap:8px 14px;align-items:start;margin:4px 0 14px;padding:12px 14px;border-radius:14px;background:#FFF8E6;border:1.5px solid #E2C99A}
.av-cr-panel.is-ok{background:#EAF6EE;border-color:#1a7f4b}
.av-cr-def{grid-column:1 / -1;margin:0;font-family:var(--serif);font-size:17.5px;line-height:1.4;color:var(--tinta-m)}
.av-cr-num{display:inline-block;margin-right:8px;font-family:var(--toon);font-weight:700;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:#B8102E}
.av-cr-campo{display:flex;flex-direction:column;gap:3px;min-width:0}
.av-cr-campo-t{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}
.av-cr-input{font:inherit;font-family:var(--mono);font-size:18px;letter-spacing:.12em;text-transform:uppercase;padding:9px 12px;border:1.5px solid #E2C99A;border-radius:10px;background:#fff;color:var(--ink);min-width:0;width:100%}
.av-cr-input:focus{outline:none;border-color:#B8102E;box-shadow:0 0 0 3px rgba(184,16,46,.18)}
.av-cr-input::placeholder{color:#b9ad97;letter-spacing:.18em}
.av-cr-input:disabled{background:#EAF6EE;border-color:#1a7f4b}
.av-cr-ayuda{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-width:0}
.av-cr-ayuda .link-btn{display:inline-flex;align-items:center;gap:5px;font-family:var(--toon);font-weight:600;font-size:15px;color:#8A4B0C}
.av-cr-ayuda .link-btn .ico{color:#E9A91C}
.av-cr-img{width:132px;border-radius:10px;overflow:hidden;border:1.5px solid #E2C99A;animation:av-orn-in .45s both}
.av-cr-img svg,.av-cr-img img{display:block;width:100%;height:auto}
.av-cr-mask{margin:0;font-family:var(--mono);font-size:17px;font-weight:700;letter-spacing:.14em;color:#B8102E;animation:av-sube .35s both}
.av-cr-juego{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:22px;align-items:start}
.av-cr-rej{min-width:0}
.av-cruci.is-ayudas{max-width:min(100%,520px);margin:0 auto;gap:2px}
.av-cruci.is-ayudas .av-casilla{display:grid;place-items:center;cursor:pointer;border-width:1.5px;border-color:#5A3E22;background:#fffdf8;outline:none}
.av-cruci.is-ayudas .av-cr-l{font-family:var(--mono);font-weight:700;font-size:clamp(11px,3.1vw,18px);line-height:1;color:var(--ink)}
.av-cruci.is-ayudas .av-cn{font-size:clamp(7px,1.9vw,10px);top:1px;left:2px}
.av-cruci.is-ayudas .av-casilla.is-act{background:#FFE9A8}
.av-cruci.is-ayudas .av-casilla.is-cel{background:#FFC93C;box-shadow:inset 0 0 0 2px #B8102E}
.av-cruci.is-ayudas .av-casilla:focus-visible{box-shadow:inset 0 0 0 3px #2E86C1}
.av-cruci.is-ayudas .av-casilla.is-ok{background:#e8f6ee;border-color:#1a7f4b}
.av-cruci.is-ayudas .av-casilla.is-ok .av-cr-l{color:#14623a}
.av-cruci.is-ayudas .av-casilla.is-ok.is-act{background:#cdeedb}
.av-cruci.is-ayudas .av-casilla.is-no{background:#fdeced;border-color:#c22026}
.av-cr-juego .av-pistas{grid-template-columns:1fr;margin-top:0}
.av-cr-juego .av-pistas li{padding:6px 8px;border-radius:8px;font-family:var(--serif);font-size:15.5px;line-height:1.35}
.av-cr-juego .av-pistas li:hover{background:#FFF8E6}
.av-cr-juego .av-pistas li.is-act{background:#FFE9A8}
.av-cr-juego .av-pistas li:focus-visible{outline:3px solid #2E86C1;outline-offset:1px}
.av-m-video-ver{display:inline-flex;align-items:center;gap:6px;font-family:var(--toon);border-radius:999px;margin:0 0 8px}
.av-postal-obj{max-width:230px;margin:14px auto 0}
.av-postal-obj svg,.av-postal-obj img{display:block;width:100%;height:auto}
@media (max-width:720px){
  .av-cr-juego{grid-template-columns:1fr;gap:14px}
  /* la palabra activa se queda arriba mientras se mira la cuadrícula */
  .av-cr-panel{position:sticky;top:52px;z-index:4;grid-template-columns:1fr;box-shadow:0 6px 14px rgba(60,40,20,.12);padding:10px 12px}
  .av-cr-def{font-size:16px}
  .av-cr-ayuda{flex-direction:row;flex-wrap:wrap;align-items:center}
  .av-cr-img{width:96px}
  .av-cruci.is-ayudas{gap:1.5px}
  .av-cruci.is-ayudas .av-casilla{border-width:1px;border-radius:3px}
}
.av-cruci.is-ayudas{grid-template-columns:repeat(var(--w),minmax(0,1fr))}
.av-creditos{margin-top:12px;font-size:12.5px;color:var(--ink-3)}
.av-creditos summary{cursor:pointer;width:max-content}
.av-creditos p{margin:6px 0 0;line-height:1.5}
.av-creditos a{color:inherit}
.av-ya-img img{object-fit:cover}

/* ---------------- misión 5: el cine. Una entrada con emojis, el título, tres pistas y el póster ---------------- */
.av-m-intro.is-cine .av-m-tio{right:-14px;bottom:-34px}
/* el aviso de la tarjeta lo da la propia entrada: sin el hueco del mensaje general */
.av-paso:has(.av-cine) > .av-fb:empty,.av-paso:has(.av-cine) > .av-pista[hidden]{display:none}
.av-cine{max-width:560px;margin:6px auto 0}
.av-cine-top{display:flex;justify-content:space-between;align-items:center;gap:8px 12px;flex-wrap:wrap;margin:0 0 12px}
.av-cine-n{font-family:var(--toon);font-weight:700;font-size:14px;letter-spacing:.06em;text-transform:uppercase;color:#B8323F}
.av-cine-cuenta{font-family:var(--toon);font-weight:600;font-size:14px;padding:4px 12px;border-radius:999px;background:#FFF8E6;border:1.5px solid #E2C99A;color:var(--tinta-m)}
/* la entrada: papel crema, borde de puntos y dos muescas */
.av-cine-entrada{position:relative;overflow:hidden;padding:14px 20px 22px;background:#FBF1DC;border:1.5px solid #D9B77A;border-radius:12px;
  outline:1.5px dashed #D9B77A;outline-offset:-8px;box-shadow:0 10px 22px rgba(90,50,20,.12)}
.av-cine-entrada::before,.av-cine-entrada::after{content:"";position:absolute;top:50%;width:22px;height:22px;margin-top:-11px;border-radius:50%;background:#fff;border:1.5px solid #D9B77A}
.av-cine-entrada::before{left:-12px}
.av-cine-entrada::after{right:-12px}
.av-cine-sello{display:flex;align-items:center;justify-content:center;gap:6px;margin:0 0 12px;font-family:var(--mono);font-size:12px;letter-spacing:.2em;color:#8A6A12}
.av-cine-sello .ico{color:#C9952F}
.av-cine-emoji{--n:4;--g:clamp(6px,2.2vw,14px);display:flex;justify-content:center;align-items:center;gap:var(--g);flex-wrap:nowrap}
.av-cine-emoji img{flex:none;width:calc((100% - (var(--n) - 1) * var(--g)) / var(--n));max-width:76px;height:auto;aspect-ratio:1;
  -webkit-user-select:none;user-select:none;-webkit-user-drag:none;filter:drop-shadow(0 2px 0 rgba(90,50,20,.14))}
.av-cine-q{margin:18px 0 10px;font-family:var(--toon);font-weight:600;font-size:19px;line-height:1.3;text-align:center;color:var(--tinta-m)}
.av-cine-campo{display:block;width:100%;font:inherit;font-family:var(--serif);font-size:18px;padding:12px 14px;border:1.5px solid #E2C99A;border-radius:12px;background:#fff;color:var(--ink)}
.av-cine-campo:focus{outline:none;border-color:#B8102E;box-shadow:0 0 0 3px rgba(184,16,46,.18)}
.av-cine-campo::placeholder{color:#a89b84}
.av-cine-campo.is-no{border-color:#c22026;animation:av-no .35s}
.av-cine-pistas{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}
.av-cine-pistas[hidden]{display:none}
.av-cine-p{padding:10px 14px 12px;border-radius:12px;background:#FFF8E6;border:1.5px solid #E2C99A;font-family:var(--serif);font-size:17px;line-height:1.45;color:var(--tinta-m)}
.av-cine-p.is-nueva{animation:av-sube .35s both}
.av-cine-pn{display:block;margin:0 0 2px;font-family:var(--toon);font-weight:700;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#B8102E}
.av-cine-letra{font-family:var(--toon);font-size:22px;line-height:1;color:#B8102E}
.av-cine-test{display:grid;gap:8px;margin-top:10px}
.av-cine-op{font-family:var(--toon);font-weight:500;font-size:16.5px;background:#fff;border:1.5px solid #E2C99A;border-radius:10px;min-height:46px}
.av-cine-op.is-sel{border-color:#B8102E;background:#FFF1F2;box-shadow:0 0 0 3px rgba(184,16,46,.15)}
.av-cine-bots{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.av-cine-bots .btn{flex:1 1 140px;justify-content:center;font-family:var(--toon);font-size:17px;padding:10px 22px;border-radius:999px;min-height:46px}
.av-cine-pista .ico{color:#E9A91C}
.av-cine-pista:disabled{opacity:.5;cursor:default}
.av-cine-fb{margin-top:12px}
.av-cine-fb:empty{display:none}
/* el premio: el póster de verdad */
.av-cine-premio{margin-top:14px;padding:16px 14px 18px;border-radius:14px;background:#FFF8E6;border:1.5px solid #E2C99A;text-align:center;animation:av-sube .45s both}
.av-cine-premio[hidden],.av-cine-juego[hidden]{display:none}
.av-cine-poster{width:min(100%,280px);margin:12px auto 0;border-radius:8px;overflow:hidden;background:#2a1216;box-shadow:0 14px 30px rgba(40,20,10,.35);animation:av-poster .6s .1s cubic-bezier(.3,1.3,.5,1) both}
@keyframes av-poster{from{opacity:0;transform:scale(.9) rotate(-2deg)}to{opacity:1;transform:none}}
.av-cine-poster img{display:block;width:100%;height:auto}
.av-cine-sin{aspect-ratio:2/3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:22px;background:linear-gradient(160deg,#8f2430,#4a161d);color:#f3e2b8;
  font-family:var(--toon);font-size:22px;line-height:1.2;outline:1.5px dashed rgba(216,169,58,.7);outline-offset:-10px}
.av-cine-sin .ico{width:44px;height:44px;color:#d8a93a}
.av-cine-titulo{margin:14px 0 0;font-family:var(--toon);font-weight:700;font-size:22px;line-height:1.2;color:var(--tinta-m)}
.av-cine-premio .av-bocadillo{background:#fff}
.av-cine-sig{display:inline-flex;align-items:center;gap:8px;margin-top:16px;font-family:var(--toon);font-size:18px;padding:11px 26px;border-radius:999px}
@media (max-width:560px){
  .av-cine-entrada{padding:12px 14px 18px}
  .av-cine-q{font-size:18px}
  .av-cine-poster{width:min(100%,240px)}
}
@media (prefers-reduced-motion:reduce){.av-cine-p.is-nueva,.av-cine-premio,.av-cine-poster,.av-cine-campo.is-no{animation:none}}

/* ---------------- misión 6: la casa de Tió. Instrucción arriba, ayudas, la habitación a lo ancho ---------------- */
.av-paso:has(.av-casa-marco){overflow:visible}
.av-paso:has(.av-casa-marco)::before{border-radius:14px 14px 0 0}
.av-paso:has(.av-casa-marco) > .av-fb,.av-paso:has(.av-casa-marco) > .av-pista[hidden]{display:none}
.av-casa-cabeza{position:sticky;top:52px;z-index:6;margin:0 -6px;padding:6px 6px 8px;background:#fff}
.av-casa-barra{display:flex;align-items:center;gap:12px;margin:6px 0 0;padding:10px 14px;border-radius:14px;background:#FFF8E6;border:1.5px solid #E2C99A;box-shadow:0 6px 14px rgba(60,40,20,.1)}
.av-casa-cara{width:58px;height:58px;object-fit:contain;flex:none;margin:-4px 0}
.av-casa-dice{flex:1;min-width:0}
.av-casa-n{margin:0;font-family:var(--toon);font-weight:700;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:#B8323F}
.av-casa-n:empty{display:none}
.av-casa-instr{margin:2px 0 0;font-family:var(--serif);font-size:19px;line-height:1.4;color:var(--tinta-m)}
.av-casa-instr.is-nueva{animation:av-sube .4s both}
.av-casa-instr.is-toca{font-family:var(--toon);font-weight:600;color:#B8102E}
.av-palabra{font:inherit;color:#7A3E0C;background:none;border:0;padding:0 1px;border-bottom:2px dotted #C9952F;cursor:pointer;border-radius:3px}
.av-palabra.is-prep{color:#B8102E;border-bottom-color:#B8102E;font-weight:600}
.av-palabra:hover,.av-palabra:focus-visible{background:#FFE9A8;outline:none}
.av-casa-prog{flex:none;font-family:var(--toon);font-weight:700;font-size:15px;padding:4px 12px;border-radius:999px;background:#fff;border:1.5px solid #E2C99A;color:var(--tinta-m)}
.av-casa-ayudas{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 0}
.av-casa-ayudas[hidden]{display:none}
.av-casa-b{display:inline-flex;align-items:center;gap:6px;font-family:var(--toon);font-weight:600;font-size:15px;padding:7px 14px;border-radius:999px;min-height:40px}
.av-casa-b .ico{color:#E9A91C}
.av-casa-b:disabled{opacity:.45;cursor:default}
.av-casa-panel{position:relative;margin:10px 0 0;padding:12px 44px 12px 12px;border-radius:14px;background:#fff;border:1.5px solid #E2C99A;animation:av-sube .3s both}
.av-casa-panel[hidden]{display:none}
.av-casa-cerrar{position:absolute;top:8px;right:8px;width:32px;height:32px;display:grid;place-items:center;border:0;border-radius:50%;background:#FFF1D6;color:var(--tinta-m);cursor:pointer}
.av-casa-fichas{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.av-casa-ficha{display:flex;align-items:center;gap:12px;padding:8px 14px 8px 8px;border-radius:12px;background:#FFF8E6}
.av-casa-ficha-img{width:96px;height:70px;flex:none;display:grid;place-items:center;background:#fff;border-radius:8px}
.av-casa-ficha-img svg{width:100%;height:100%}
.av-casa-ficha p{margin:0}
.av-casa-ficha b{display:block;font-family:var(--toon);font-weight:700;font-size:17px;color:var(--tinta-m)}
.av-casa-ficha span{font-family:var(--serif);font-size:15.5px;color:var(--ink-2)}
.av-casa-ficha.is-prep b{color:#B8102E}
.av-casa-senal{display:inline-flex;align-items:center;gap:6px;font-family:var(--toon);font-weight:600;font-size:15px;color:#8A4B0C}
/* la habitación ocupa más que la tarjeta: en el ordenador, casi toda la pantalla */
.av-casa-escena{--ancho:min(1180px,calc(100vw - 48px),calc((100vh - 230px) * 1.7778));position:relative;width:var(--ancho);margin:12px 0 0 calc((100% - var(--ancho)) / 2)}
.av-casa-fb{position:absolute;z-index:3;top:10px;left:10px;max-width:min(560px,calc(100% - 20px));margin:0;pointer-events:none;box-shadow:0 6px 16px rgba(40,20,10,.18);animation:av-sube .3s both}
.av-casa-fb:empty{display:none}
.av-fb.av-casa-fb.is-ok:has(.av-fb-tio){background:#EAF6EE}
.av-casa-marco{border-radius:14px;overflow:hidden;box-shadow:0 12px 28px rgba(60,40,20,.2);background:#F1E3C6}
.av-casa-svg{display:block;width:100%;height:auto;-webkit-user-select:none;user-select:none;touch-action:none}
.av-casa-svg [hidden]{display:none}
.av-casa-tio{pointer-events:none}
.av-casa-sombra{pointer-events:none;transition:opacity 1s}
.av-casa-o{outline:none}
.av-casa-toque{fill:transparent}
.av-casa-o:not(.is-coge) .av-casa-toque{pointer-events:none}
.av-casa-o.is-coge{cursor:grab;touch-action:none}
.av-casa-o.is-arrastre{cursor:grabbing}
/* elegido (con un toque) o arrastrándose: se levanta un poco, brilla en dorado y lleva un marco que corre */
.av-casa-oin{transform-box:fill-box;transform-origin:50% 100%;transition:transform .15s}
.av-casa-o.is-sel .av-casa-oin,.av-casa-o.is-arrastre .av-casa-oin{transform:scale(1.08);filter:drop-shadow(0 0 3px #FFC93C) drop-shadow(0 0 10px #E9A91C) drop-shadow(0 10px 8px rgba(40,20,10,.3))}
.av-casa-o:focus-visible .av-casa-oin{filter:drop-shadow(0 0 4px #2E86C1)}
.av-casa-o.is-sel .av-casa-toque,.av-casa-o.is-arrastre .av-casa-toque{fill:rgba(255,201,60,.16);stroke:#E9A91C;stroke-width:4;stroke-dasharray:12 8;rx:14px;animation:av-casa-hormigas .7s linear infinite}
@keyframes av-casa-hormigas{to{stroke-dashoffset:-40}}
.av-casa-elegido{position:absolute;z-index:3;left:10px;bottom:10px;max-width:calc(100% - 20px);display:flex;align-items:center;gap:10px;padding:6px 14px 6px 6px;border-radius:14px;
  background:#FFF8E6;border:2px solid #E9A91C;box-shadow:0 6px 16px rgba(40,20,10,.22);pointer-events:none;animation:av-sube .2s both}
.av-casa-elegido[hidden]{display:none}
.av-casa-elegido-img{width:52px;height:42px;flex:none;display:grid;place-items:center;background:#fff;border-radius:8px}
.av-casa-elegido-img svg{width:100%;height:100%}
.av-casa-elegido b{display:block;font-family:var(--toon);font-weight:700;font-size:15.5px;color:#7A3E0C}
.av-casa-elegido small{display:block;font-family:var(--serif);font-size:14px;color:var(--ink-2)}
.av-casa-o.is-senal .av-casa-oin{animation:av-casa-senal .8s 4}
@keyframes av-casa-senal{0%,100%{filter:none;transform:none}50%{filter:drop-shadow(0 0 10px #FFC93C) drop-shadow(0 0 4px #E9A91C);transform:scale(1.12)}}
.av-casa-o.is-llega .av-casa-oin{animation:av-casa-llega .7s both}
@keyframes av-casa-llega{0%{filter:drop-shadow(0 0 0 #FFC93C)}40%{filter:drop-shadow(0 0 12px #FFE08A)}100%{filter:none}}
.av-casa-o.is-cierra .av-casa-oin{animation:av-casa-cierra .45s both}
@keyframes av-casa-cierra{0%{transform:scaleY(1)}40%{transform:scaleY(.92)}100%{transform:none}}
.av-casa-o.is-inclina .av-casa-oin{transform-origin:12% 100%;animation:av-casa-inclina 1s ease-in-out both}
@keyframes av-casa-inclina{0%{transform:none}35%{transform:rotate(-10deg)}70%{transform:rotate(-4deg)}100%{transform:rotate(-6deg)}}
.av-casa-sitio{fill:none;stroke:none;pointer-events:none;outline:none}
.av-casa-sitio:focus-visible{stroke:#2E86C1;stroke-width:6;stroke-dasharray:16 8}
.av-casa-sitio.is-pista{fill:rgba(255,201,60,.22);stroke:#E9A91C;stroke-width:5;stroke-dasharray:16 9;animation:av-casa-pista 1.4s ease-in-out infinite}
@keyframes av-casa-pista{50%{fill:rgba(255,201,60,.4)}}
.av-casa-marco.is-armado .av-casa-svg{cursor:crosshair}
.av-casa-fiesta{opacity:0;transition:opacity 1.4s}
.is-lista .av-casa-fiesta{opacity:1}
.av-casa-bombilla{opacity:.35}
.is-lista .av-casa-bombilla{opacity:1;animation:av-casa-luz 1.6s ease-in-out infinite alternate}
@keyframes av-casa-luz{from{opacity:.55}to{opacity:1}}
.is-lista .av-casa-estrella{fill:#FFC93C;filter:drop-shadow(0 0 8px #FFE08A)}
.av-casa-fuego{transform-box:fill-box;transform-origin:50% 100%;animation:av-casa-fuego 1.2s ease-in-out infinite alternate}
@keyframes av-casa-fuego{from{transform:scaleY(.94)}to{transform:scaleY(1.05) skewX(-2deg)}}
.av-llama{animation:av-casa-llama 1s ease-in-out infinite alternate}
@keyframes av-casa-llama{from{opacity:.85}to{opacity:1}}
/* la foto: cae de la caja y espera a que la toquen */
.av-casa-foto-g{cursor:pointer;outline:none}
.av-casa-foto-in{transform-box:fill-box;transform-origin:50% 50%;animation:av-casa-espera 1.6s 1.2s ease-in-out infinite}
.av-casa-foto.is-cae .av-casa-foto-in{animation:av-casa-cae 1.15s cubic-bezier(.45,0,.6,1) both,av-casa-espera 1.6s 1.3s ease-in-out infinite}
@keyframes av-casa-cae{0%{transform:translate(var(--dx),var(--dy)) rotate(30deg) scale(.5);opacity:0}12%{opacity:1}70%{transform:translate(0,-26px) rotate(-8deg) scale(1)}85%{transform:translate(0,4px)}100%{transform:none}}
@keyframes av-casa-espera{50%{filter:drop-shadow(0 0 8px #FFC93C) drop-shadow(0 0 3px #E9A91C)}}
/* alrededor de la foto caída, un halo dorado que late y una onda: que nadie la pase por alto */
.av-casa-foto-halo,.av-casa-foto-onda{transform-box:fill-box;transform-origin:center;pointer-events:none}
.av-casa-foto-halo{fill:rgba(255,201,60,.3);stroke:#E9A91C;stroke-width:5;animation:av-casa-halo 1.3s ease-in-out infinite}
.av-casa-foto-onda{fill:none;stroke:#FFC93C;stroke-width:5;animation:av-casa-onda 1.6s ease-out infinite}
.av-casa-foto.is-cae .av-casa-foto-halo{animation:av-casa-aparece .4s 1.1s both,av-casa-halo 1.3s 1.5s ease-in-out infinite}
.av-casa-foto.is-cae .av-casa-foto-onda{animation:av-casa-aparece .4s 1.1s both,av-casa-onda 1.6s 1.5s ease-out infinite}
@keyframes av-casa-aparece{from{opacity:0}to{opacity:1}}
@keyframes av-casa-halo{0%,100%{transform:scale(.88);opacity:.7}50%{transform:scale(1.08);opacity:1}}
@keyframes av-casa-onda{0%{transform:scale(.9);opacity:.9}100%{transform:scale(1.9);opacity:0}}
.av-casa-instr.is-toca{animation:av-casa-toca 1.3s ease-in-out infinite}
@keyframes av-casa-toca{50%{color:#E9A91C}}
.av-casa-foto-g:focus-visible .av-casa-foto-in{filter:drop-shadow(0 0 6px #2E86C1)}
dialog.av-foto{border:0;padding:0;background:transparent;width:min(94vw,440px);max-width:none;max-height:none;overflow:visible}
dialog.av-foto::backdrop{background:rgba(16,26,58,.7);backdrop-filter:blur(2px)}
.av-foto-in{display:flex;flex-direction:column;align-items:center;gap:12px;max-height:calc(100dvh - 24px);overflow:auto;padding:8px;animation:av-postal-in .5s cubic-bezier(.3,1.3,.5,1) both}
.av-foto-carta{width:min(80vw,340px);margin:0;transform:rotate(-2deg);filter:drop-shadow(0 16px 24px rgba(0,0,0,.4))}
.av-foto-carta svg{display:block;width:100%;height:auto}
.av-foto .av-bocadillo{margin:4px 0 0;animation:av-sube .4s both}
.av-foto-seguir{font-family:var(--toon);font-size:18px;padding:11px 30px;border-radius:999px}
/* la foto en la postal final, con lo que pone detrás */
.av-postal-foto{width:min(230px,70%);margin:16px auto 0;transform:rotate(-3deg)}
.av-postal-foto svg{display:block;width:100%;height:auto;filter:drop-shadow(0 8px 12px rgba(60,40,20,.3))}
.av-postal-cap{margin:16px auto 14px;padding:8px 0;max-width:340px;border-top:1.5px dashed #C9952F;border-bottom:1.5px dashed #C9952F;font-family:var(--toon);font-weight:700;font-size:15px;letter-spacing:.04em;color:#8A6A12}
/* ¿Dónde está?: las 12 expresiones */
dialog.av-chuleta{border:0;padding:0;border-radius:16px;width:min(94vw,780px);max-width:none;max-height:88vh;background:#FFFDF7;box-shadow:0 20px 50px rgba(0,0,0,.3)}
dialog.av-chuleta::backdrop{background:rgba(16,26,58,.5)}
.av-chuleta-in{display:flex;flex-direction:column;max-height:88vh}
.av-chuleta-in header{position:relative;padding:14px 56px 10px 18px;border-bottom:1.5px solid #F0E2C4}
.av-chuleta-in h3{margin:0;font-family:var(--toon);font-weight:700;font-size:22px;color:#B8102E}
.av-chuleta-lista{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px;padding:14px;overflow:auto;overscroll-behavior:contain}
.av-chuleta-c .av-casa-ficha{flex-direction:column;align-items:stretch;gap:6px;padding:8px;height:100%;text-align:center}
.av-chuleta-c .av-casa-ficha-img{width:100%;height:auto;aspect-ratio:140/100}
.av-chuleta-c.is-on .av-casa-ficha{box-shadow:0 0 0 3px #FFC93C;background:#FFF1C9}
/* el vídeo de antes de empezar */
.av-m-previo{max-width:640px;margin:0 auto;text-align:center}
.av-m-previo .av-bocadillo{margin-top:0}
.av-m-previo .av-bocadillo::before{display:none}
.av-m-previo .av-m-video-marco{margin:14px 0 0}
.av-m-previo-yt{margin:8px 0 0;font-size:14px}
.av-m-previo .av-m-acc{justify-content:center;margin-top:16px}
@media (max-width:720px){
  .av-casa-barra{gap:8px;padding:8px 10px}
  .av-casa-cara{width:40px;height:40px}
  .av-casa-instr{font-size:17px}
  .av-casa-cabeza{padding-bottom:6px}
  .av-casa-ayudas{gap:5px;margin-top:6px}
  .av-casa-b{font-size:13px;padding:4px 9px;gap:4px;min-height:34px}
  .av-casa-b .ico{width:14px;height:14px}
  /* en el móvil, la habitación de borde a borde y se desliza de lado */
  .av-casa-escena{width:100vw;margin-left:calc(50% - 50vw)}
  .av-casa-fb{top:6px;left:6px;font-size:14.5px}
  .av-casa-marco{border-radius:0;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
  .av-casa-lienzo{width:820px}
  .av-casa-ficha-img{width:80px;height:60px}
}
@media (prefers-reduced-motion:reduce){
  .av-casa-instr.is-nueva,.av-casa-panel,.av-casa-o .av-casa-oin,.av-casa-sitio.is-pista,.is-lista .av-casa-bombilla,.av-casa-fuego,.av-llama,.av-casa-foto-in,.av-casa-foto.is-cae .av-casa-foto-in,.av-foto-in,
  .av-casa-foto-onda,.av-casa-foto.is-cae .av-casa-foto-onda,.av-casa-instr.is-toca,.av-musica.is-suena,.av-casa-o .av-casa-toque,.av-casa-elegido{animation:none}
  .av-casa-foto-onda{display:none}
  .av-casa-foto-halo,.av-casa-foto.is-cae .av-casa-foto-halo{animation:none;opacity:1}
}

/* música de fondo: el botón de arriba (en el móvil, solo el altavoz) */
.av-musica{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:4px 10px;border-radius:999px}
.av-topbar .av-musica,.av-topbar .topbar-user{flex:none}
.av-musica .ico{width:18px;height:18px}
.av-musica.is-off{opacity:.65}
.av-musica.is-suena{animation:av-musica-mira 1.2s ease-in-out 4;border-color:#E9A91C}
@keyframes av-musica-mira{50%{box-shadow:0 0 0 5px rgba(255,201,60,.45)}}
@media (max-width:620px){.av-musica{padding:4px 8px;min-height:32px}.av-musica-t{display:none}}
body.av-noche .av-musica{color:var(--nieve)}

/* ---------------- misión 7: el manual de Tió (lectura, verbo + palabras, huecos) ---------------- */

/* la página del cuaderno: papel un poco viejo, margen rojo, título y aparte de Tió a mano */
.av-libreta{position:relative;margin:2px 0 0;padding:22px 22px 18px 50px;border-radius:4px 12px 12px 4px;color:var(--tinta-m);
  background:radial-gradient(circle at 25% 15%,#FDF7EA,#F3E5C6);border:1px solid #E2CFA6;box-shadow:0 1px 0 #E2CFA6,0 4px 0 -1px #F6ECD6,0 5px 0 -1px #E2CFA6,0 10px 22px rgba(90,62,34,.10);
  font-family:var(--serif);font-size:18px;line-height:1.7}
.av-libreta::before{content:"";position:absolute;left:34px;top:0;bottom:0;width:1.5px;background:rgba(200,16,46,.35)}
.av-libreta-t{margin:0 0 12px;font-family:"Caveat",var(--serif);font-weight:700;font-size:31px;line-height:1.05;color:#8E1424}
.av-libreta-t::after{content:"";display:block;width:min(260px,70%);height:8px;margin-top:2px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 8' preserveAspectRatio='none'%3E%3Cpath d='M2 5 Q30 1 60 4 T120 4 T198 3' fill='none' stroke='%23C9952F' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E") 0 0/100% 100% no-repeat}
.av-libreta p{margin:0 0 .65em}
.av-libreta p:last-child{margin-bottom:0}
.av-libreta p.is-mano{margin-top:.9em;font-family:"Caveat",var(--serif);font-weight:700;font-size:24px;line-height:1.2;color:#5A3E22;transform:rotate(-1.2deg);transform-origin:left center}

/* las nueve expresiones: un solo color (verde oscuro) con trazo de rotulador; se tocan */
.av-expr{color:#17543A;font-weight:600;cursor:pointer;border-radius:3px;padding:0 1px;
  background:linear-gradient(transparent 60%,rgba(63,160,106,.24) 60%);border-bottom:1.5px dotted #2E7D55;
  -webkit-box-decoration-break:clone;box-decoration-break:clone;transition:background-color .15s}
.av-expr:hover,.av-expr.is-open{background-color:rgba(63,160,106,.16)}
.av-expr:focus-visible{outline:2px solid #2E7D55;outline-offset:1px}
.av-tip.is-expr{padding:9px 13px}
.av-tip-es{display:block;font-family:var(--toon);font-weight:600;font-size:15.5px;color:#FFC93C;margin-bottom:1px}

/* verbo + palabras: dos columnas de tarjetas grandes (cómodas con el dedo) */
.av-pares-texto .av-par{font-family:var(--toon);font-weight:500;font-size:16.5px;line-height:1.25;background:#fff;border-color:#E2C99A;border-radius:12px}
.av-pares-texto .av-par:hover:not(:disabled){border-color:#C9952F}
.av-pares-texto .av-par.is-sel{border-color:#B8102E}
.av-pares-texto .av-par.is-fijo{border-color:#1a7f4b;background:#e8f6ee;color:#14623a}
.av-pares-texto .av-par.is-fijo .av-par-n{display:inline-flex;background:#1a7f4b}
.av-pares-texto .av-par.is-no{border-color:#c22026;background:#fdeced}
/* con imágenes: verbos a la izquierda, imágenes a la derecha (de tres en tres en el ordenador, de una en una en el
   móvil); el número del par, en la esquina de la imagen. Los verbos no se estiran (si no, cada verbo queda enfrente
   de una imagen y parece su pareja) y se quedan pegados arriba mientras se bajan las imágenes */
.av-pares-texto.is-img{grid-template-columns:minmax(0,1fr) minmax(0,2fr);align-items:start}
.av-pares-texto.is-img .av-pares-col:first-child{position:sticky;top:64px}
.av-pares-texto.is-img .av-pares-col:first-child .av-par{font-size:17.5px;font-weight:600}
.av-paso:has(.av-pares-texto.is-img){overflow:clip}
.av-pares-texto.is-img .av-pares-col:last-child{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px;align-content:start}
.av-par.is-img{position:relative;flex-direction:column;align-items:stretch;gap:0;padding:5px;min-height:0}
.av-par-img{display:block;aspect-ratio:4/3;border-radius:8px;overflow:hidden;background:#FBF4E4}
.av-par-img img{display:block;width:100%;height:100%;object-fit:cover}
.av-par.is-img .av-par-n{position:absolute;top:10px;left:10px;width:24px;height:24px;font-size:13px;box-shadow:0 0 0 2px #fff}
.av-par-pie{display:block;padding:5px 3px 1px;font-size:14.5px;line-height:1.2;text-align:center}
/* en el ordenador, las dos columnas acaban a la misma altura: los verbos se reparten la altura de las imágenes
   (o, si los verbos ocupan más, las filas de imágenes se estiran) */
@media (min-width:641px){
  .av-pares-texto.is-img{align-items:stretch}
  .av-pares-texto.is-img .av-pares-col:first-child{position:static}
  .av-pares-texto.is-img .av-pares-col:first-child .av-par{flex:1 1 0;min-height:40px}
  .av-pares-texto.is-img .av-pares-col:last-child{grid-auto-rows:1fr;align-content:stretch}
  .av-par.is-img .av-par-pie{flex:1;display:flex;align-items:center;justify-content:center}
}

/* huecos: la pista en ruso y el campo van en la línea del texto; el campo con su signo no se separa */
.av-libreta.is-huecos{line-height:2.15}
.av-hueco-ru{font-family:var(--display);font-size:14px;font-weight:600;line-height:1.5;color:#8E1424;background:#F7E1DA;border-radius:6px;padding:2px 7px;
  -webkit-box-decoration-break:clone;box-decoration-break:clone}
.av-hueco-campo{display:inline-block;white-space:nowrap;max-width:100%;vertical-align:baseline}
.av-hueco-campo[hidden],.av-hueco-ok[hidden],.av-hueco-signos[hidden]{display:none}
.av-hueco input{font:inherit;font-family:var(--display);font-size:16px;line-height:1.3;min-width:9ch;max-width:calc(100% - 8px);padding:3px 8px;
  border:1.5px solid #CFAE74;border-radius:8px;background:#fff;color:var(--ink)}
.av-hueco input:focus{outline:none;border-color:#2E7D55;box-shadow:0 0 0 3px rgba(46,125,85,.18)}
.av-hueco input.is-no{border-color:#c22026;background:#fdeced}
.av-hueco-ok{font-family:var(--display);font-size:16px;font-weight:600;color:#14623a;background:#e8f6ee;border:1.5px solid #1a7f4b;border-radius:8px;padding:2px 7px;
  -webkit-box-decoration-break:clone;box-decoration-break:clone}
.av-hueco-pista{display:block;margin:-4px 0 2px;font-family:"Caveat",var(--serif);font-weight:700;font-size:19px;line-height:1.2;color:#8A4B0C}
.av-hueco-pista[hidden]{display:none}

/* botones de la lectura y los huecos */
.av-paso.is-manual .av-acc .btn{font-family:var(--toon);font-size:16px;padding:9px 20px;border-radius:999px;display:inline-flex;align-items:center;gap:6px}

@media (max-width:640px){
  .av-libreta{padding:18px 14px 16px 30px;font-size:17px}
  .av-libreta::before{left:18px}
  .av-libreta-t{font-size:27px}
  .av-libreta p.is-mano{font-size:22px}
  .av-pares-texto{gap:8px}
  .av-pares-texto .av-par{font-size:15px;padding:9px 10px}
  .av-pares-texto.is-img{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr)}
  .av-pares-texto.is-img .av-pares-col:first-child .av-par{font-size:16px}
  .av-pares-texto .av-par.is-img{padding:4px}
  .av-hueco-ru{font-size:13.5px}
}

/* ---------------- misión 8: vídeo propio, mapa de España, «¿Quién soy?» ---------------- */
.av-video{position:relative;margin-top:14px;aspect-ratio:16/9;border-radius:12px;overflow:hidden;background:#0E1838}
.av-video video,.av-video iframe{display:block;width:100%;height:100%;border:0}
.av-video.is-pronto{display:grid;place-items:center;color:#F4F1EA;font-family:var(--toon);font-size:17px}
.av-video.is-pronto p{display:flex;align-items:center;gap:8px;margin:0;padding:0 16px;text-align:center}
.av-video-otra{display:inline-flex;align-items:center;gap:6px;margin-top:10px;font-family:var(--toon);font-weight:600;font-size:15px;color:#8A4B0C}
.av-video-dlg{width:min(980px,94vw);padding:0;border:0;border-radius:14px;background:#0E1838;overflow:visible}
.av-video-dlg::backdrop{background:rgba(10,16,40,.72)}
.av-video-dlg .av-video{margin:0}
.av-video-cerrar{position:absolute;top:-16px;right:-12px;z-index:2;display:grid;place-items:center;width:38px;height:38px;border:0;border-radius:50%;background:#fff;color:#3A2A1A;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.3)}
@media (max-width:560px){.av-video-cerrar{top:-46px;right:0}}

.av-paso-elige{margin-top:16px}
.av-paso-elige .btn{display:inline-flex;align-items:center;gap:6px;font-family:var(--toon);font-size:17px;padding:11px 24px;border-radius:999px;margin-top:0}
.av-paso-fin .av-paso-elige .btn-red{margin-top:0}

/* el mapa: más ancho que la columna de la misión; tarjetas a la izquierda, mapa a la derecha */
.av-paso.is-espana{--ancho:min(1060px,calc(100vw - 32px));width:var(--ancho);margin-left:calc((100% - var(--ancho)) / 2);overflow:clip}
.av-es{display:grid;grid-template-columns:200px minmax(0,1fr);gap:16px;align-items:start;margin-top:12px}
.av-es-cabeza{min-width:0}
.av-es-cartas{display:flex;flex-direction:column;gap:8px}
.av-es-carta{position:relative;display:flex;align-items:center;gap:10px;width:100%;padding:5px 10px 5px 5px;background:#FFFBF2;border:1.5px solid #E2C99A;border-radius:12px;
  font-family:var(--toon);font-weight:600;font-size:15px;line-height:1.15;color:#3A2A1A;text-align:left;cursor:pointer;transition:border-color .15s,box-shadow .15s}
.av-es-carta:hover:not(:disabled){border-color:#C98A2E}
.av-es-img{display:grid;place-items:center;flex:none;width:60px;height:60px;border-radius:10px;background:#F3E8CF;overflow:hidden}
.av-es-img img{width:100%;height:100%;object-fit:contain}
.av-es-carta .ico{display:none;margin-left:auto;flex:none;color:#1a7f4b}
.av-es-carta.is-sel{border-color:#B8102E;background:#fff;box-shadow:0 0 0 3px rgba(184,16,46,.18)}
.av-es-carta.is-fijo{opacity:.6;border-style:dashed;cursor:default}
.av-es-carta.is-fijo .ico{display:block}
.av-es-lado{position:relative;min-width:0}
/* «En toda España» se toca como una comunidad más: mismo color, mismo borde, mismo resaltado */
.av-es-toda{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:52px;margin-bottom:10px;padding:6px 14px;border:1.5px solid #8A5A3C;border-radius:12px;
  background:#FBF3E2;font-family:var(--toon);font-weight:600;font-size:17px;color:#3A2A1A;cursor:pointer;transition:background .2s;box-shadow:0 2px 0 rgba(138,90,60,.18)}
.av-es-toda .ico{color:#8A5A3C}
.av-es.is-eligiendo .av-es-toda:hover,.av-es-toda:focus-visible{background:#FFE3A0}
.av-es-toda.is-mal{background:#F2A3AA}
.av-es-toda.is-hecha{background:#F5C451}
.av-es-toda-fichas{display:flex}
.av-es-toda-fichas img{width:36px;height:36px;margin-left:-4px;object-fit:contain;border-radius:50%;background:#fff;border:2px solid #E9A91C}
.av-es-marco{position:relative;border:1.5px solid #D9CBB0;border-radius:12px;overflow:hidden;background:#E3EDEF}
.av-es-marco.is-ampliado{overflow:auto;max-height:66vh;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.av-es-mapa{display:block;width:100%;height:auto;font-family:var(--toon)}
.av-es-mar{fill:#E3EDEF}
.av-es-vecinos{fill:#EEE7D7;stroke:#CDBFA4;stroke-width:1}
.av-es-cym{fill:#E2D7C1}
.av-es-recuadro{fill:none;stroke:#9C7B5B;stroke-width:1.2;stroke-dasharray:5 4}
.av-es-com{fill:#FBF3E2;stroke:#8A5A3C;stroke-width:1.1;stroke-linejoin:round;cursor:pointer;outline:none;transition:fill .2s}
.av-es.is-eligiendo .av-es-com:hover,.av-es-com:focus-visible{fill:#FFE3A0}
/* un fallo y enseguida el acierto en la misma comunidad: se queda el acierto */
.av-es-com.is-mal{fill:#F2A3AA}
.av-es-com.is-hecha{fill:#F5C451}
.av-es-nombre{font-size:17px;font-weight:600;fill:#3A2A1A;text-anchor:middle;dominant-baseline:middle;paint-order:stroke;stroke:#FBF3E2;stroke-width:4px;stroke-linejoin:round;cursor:pointer;user-select:none;-webkit-user-select:none}
.av-es-guia{stroke:#8A5A3C;stroke-width:1.3}
.av-es-punto{fill:#8A5A3C}
.av-es-ficha{pointer-events:none;animation:av-es-ficha .45s cubic-bezier(.3,1.5,.5,1) both}
.av-es-ficha-fondo{fill:#fff;stroke:#B8860B;stroke-width:2.5}
@keyframes av-es-ficha{from{opacity:0}to{opacity:1}}
.av-es-zoom{display:none;position:absolute;right:10px;bottom:10px;gap:6px}
.av-es-zoom button{display:grid;place-items:center;width:42px;height:42px;border:1.5px solid #D9CBB0;border-radius:50%;background:#fff;color:#3A2A1A;cursor:pointer;box-shadow:0 2px 6px rgba(0,0,0,.15)}
.av-es-zoom button:disabled{opacity:.4;cursor:default}
.av-es-mapa.is-intro .av-es-com{cursor:default}
.av-m-fondo .av-es-mapa.is-intro{border-radius:14px;box-shadow:0 4px 14px rgba(27,43,94,.12)}
@media (prefers-reduced-motion:reduce){.av-es-ficha{animation:none}}
@media (max-width:900px){
  .av-es{grid-template-columns:minmax(0,1fr);gap:10px}
  .av-es-cabeza{position:sticky;top:52px;z-index:4;margin:0 -4px;padding:6px 4px 8px;background:#fff;box-shadow:0 8px 10px -10px rgba(60,40,20,.25)}
  .av-es-cartas{flex-direction:row;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:2px}
  .av-es-carta{flex:none;flex-direction:column;justify-content:flex-start;width:84px;padding:5px 4px 6px;gap:3px;font-size:12px;text-align:center;scroll-snap-align:start}
  .av-es-img{width:56px;height:56px}
  .av-es-cabeza .av-es-toda{min-height:44px;margin:8px 0 0;font-size:16px}
  .av-es-carta .ico{position:absolute;top:4px;right:4px;margin:0}
  .av-es-zoom{display:flex}
}

/* reto: la descripción y tres imágenes */
.av-qs-n{margin:12px 0 0;text-align:center;font-family:var(--toon);font-weight:600;font-size:15px;color:#8A6A12}
.av-qs-t{margin:8px auto 0;max-width:600px;padding:14px 18px;background:#FFF8E6;border-left:4px solid #E9A91C;border-radius:10px;
  font-family:var(--toon);font-weight:500;font-size:19px;line-height:1.4;color:#3A2A1A;text-align:center}
.av-qs-opts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}
.av-qs-op{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 6px 10px;background:#FFFBF2;border:2px solid #E2C99A;border-radius:14px;cursor:pointer;transition:border-color .15s,opacity .2s}
.av-qs-op:hover:not(:disabled){border-color:#B8102E}
.av-qs-img{display:grid;place-items:center;width:100%;aspect-ratio:4/5}
.av-qs-img img{width:100%;height:100%;object-fit:contain}
.av-qs-letra{font-family:var(--toon);font-weight:700;font-size:18px;color:#8A4B0C}
.av-qs-nom{min-height:1.2em;font-family:var(--toon);font-weight:600;font-size:15px;line-height:1.2;color:#1a7f4b;text-align:center}
.av-qs-op:disabled{cursor:default}
.av-qs-op.is-ok{border-color:#1a7f4b;background:#EAF6EE;box-shadow:0 0 0 3px rgba(26,127,75,.18)}
.av-qs-op.is-no{opacity:.4;filter:grayscale(.8)}
.av-qs-nav .btn{font-family:var(--toon);font-size:16px;padding:9px 22px;border-radius:999px}
@media (max-width:560px){
  .av-qs-opts{gap:7px}
  .av-qs-t{font-size:17px;padding:12px 14px}
  .av-qs-nom{font-size:13px}
}

/* ---------------- misión 12: vocabulario plegado, fotograma del reto, palabras para marcar ---------------- */
.av-video.is-enlace{display:grid;place-items:center}
.av-video.is-enlace img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.72)}
.av-video-yt{position:relative;display:inline-flex;text-decoration:none;align-items:center;gap:8px;margin:0;font-family:var(--toon);font-size:18px;padding:12px 26px;border-radius:999px;box-shadow:0 6px 18px rgba(0,0,0,.35)}
.av-video-nota{margin:10px 0 0;text-align:center;font-size:15px;color:var(--ink-3)}
.av-lexico{margin:12px 0 14px;border:1.5px solid #E2C99A;border-radius:12px;background:#FFF8E6}
.av-lexico summary{display:flex;align-items:center;gap:8px;padding:9px 14px;cursor:pointer;list-style:none;font-family:var(--toon);font-weight:600;font-size:15.5px;color:#8A4B0C}
.av-lexico summary::-webkit-details-marker{display:none}
.av-lexico summary .ico{color:#E9A91C}
.av-lexico ul{margin:0;padding:0 14px 12px 38px;font-size:16px;line-height:1.7}
.av-lexico b{font-weight:600;color:var(--tinta-m)}
.av-q-foto{margin:4px auto 14px;max-width:720px;aspect-ratio:16/9;border-radius:12px;overflow:hidden;background:#1d1a17}
.av-q-foto img{display:block;width:100%;height:100%;object-fit:contain}
.av-q-nav{margin-top:16px}
.av-q-nav .btn{font-family:var(--toon);font-size:16px;padding:9px 22px;border-radius:999px}
.av-sel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:6px}
.av-sel-p{display:flex;align-items:center;gap:10px;min-height:52px;padding:10px 14px;text-align:left;font:inherit;font-family:var(--toon);font-weight:500;font-size:17px;color:#3A2A1A;
  background:#FFFBF2;border:2px solid #E2C99A;border-radius:14px;cursor:pointer;transition:border-color .15s,background .15s}
.av-sel-p::before{content:"";flex:none;width:16px;height:16px;border:2px solid currentColor;border-radius:5px;opacity:.45}
.av-sel-p:hover:not(:disabled){border-color:#B8102E}
.av-sel-p[aria-pressed="true"]{border-color:#B8102E;background:#FBE4E2;color:#8E0F25;font-weight:600}
.av-sel-p[aria-pressed="true"]::before{opacity:1;background:currentColor;box-shadow:inset 0 0 0 2.5px #FBE4E2}
.av-sel-p.is-ok{border-color:#1a7f4b;background:#EAF6EE;color:#14623a}
.av-sel-p.is-ok::before{box-shadow:inset 0 0 0 2.5px #EAF6EE}
.av-sel-p:disabled{cursor:default}
@media (max-width:560px){
  .av-sel{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .av-sel-p{min-height:48px;padding:8px 10px;font-size:16px}
}

/* ---------------- misión 9: la ilustración del festival (buscar) y el reto por escrito ---------------- */
.av-m-intro.is-festival .av-m-escena{max-width:760px}
.av-m-intro.is-festival .av-m-tio{right:-14px;bottom:-34px;width:clamp(110px,22%,170px)}
.av-paso.is-buscar{--ancho:min(1060px,calc(100vw - 32px));width:var(--ancho);margin-left:calc((100% - var(--ancho)) / 2);overflow:clip}
.av-bu-cab{margin-top:10px}
.av-bu-frase{display:flex;align-items:baseline;justify-content:center;gap:4px;margin:0 auto;max-width:720px;padding:12px 18px;background:#FFF8E6;border-left:4px solid #E9A91C;
  border-radius:10px;font-family:var(--toon);font-weight:500;font-size:20px;line-height:1.35;color:#3A2A1A;text-align:center}
.av-bu-cab .av-fb{max-width:720px;min-height:54px;margin:8px auto 0}
/* vacío, el aviso guarda su sitio: la imagen no salta cada vez que sale o se va */
.av-bu-cab .av-fb:empty{visibility:hidden}
.av-bu{position:relative;margin-top:12px}
.av-bu-marco{position:relative;border:1.5px solid #D9CBB0;border-radius:12px;overflow:hidden;background:#EEF2F4}
.av-bu-marco.is-ampliado{overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.av-bu-lienzo{position:relative;width:100%}
.av-bu-lienzo img{display:block;width:100%;height:auto;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}
.av-bu-zonas{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.av-bu-zona{fill:transparent;stroke:transparent;stroke-width:3;stroke-linejoin:round;vector-effect:non-scaling-stroke;pointer-events:none;outline:none;transition:fill .25s,stroke .25s}
.av-bu.is-tocar .av-bu-zona{pointer-events:all;cursor:pointer}
.av-bu.is-tocar .av-bu-zona:focus-visible{stroke:#2E86C1;stroke-dasharray:6 4}
.av-bu-zona.is-luz{fill:rgba(255,214,90,.38);stroke:#F5C451;animation:av-bu-luz 1.4s ease-out both}
@keyframes av-bu-luz{0%{fill:rgba(255,214,90,0)}25%{fill:rgba(255,214,90,.5)}100%{fill:rgba(255,214,90,0);stroke:transparent}}
.av-bu-sombra{fill:rgba(28,22,16,0);pointer-events:none;transition:fill .35s}
.av-bu.is-foco .av-bu-sombra{fill:rgba(28,22,16,.5)}
.av-bu-zona.is-foco{stroke:#F5C451;stroke-width:3.5}
.av-bu.is-pista .av-bu-sombra{fill:rgba(28,22,16,.42)}
.av-bu-zona.is-pista{stroke:#F5C451;stroke-width:3.5;animation:av-bu-pista 1s ease-in-out infinite alternate}
@keyframes av-bu-pista{from{fill:rgba(255,214,90,0)}to{fill:rgba(255,214,90,.45)}}
.av-bu-marca{position:absolute;display:grid;place-items:center;width:30px;height:30px;transform:translate(-50%,-85%);border-radius:50%;background:#1a7f4b;color:#fff;
  border:2.5px solid #fff;box-shadow:0 2px 6px rgba(0,0,0,.3);pointer-events:none;animation:av-es-ficha .45s cubic-bezier(.3,1.5,.5,1) both}
.av-bu-marca .ico{width:17px;height:17px;stroke-width:3}
/* arriba, sobre el cielo: abajo a la derecha taparían al niño con el perro */
.av-bu .av-bu-zoom{z-index:2;top:10px;bottom:auto}
.av-wr-intro{margin-top:4px}
.av-wr{max-width:720px;margin:14px auto 0}
.av-wr-frase,.av-wr-preg{margin:0;font-family:var(--toon);font-weight:500;font-size:20px;line-height:1.9;color:#3A2A1A;text-align:center}
.av-wr-pista{color:#8A6A12;white-space:nowrap}
.av-wr-campo{max-width:100%;padding:4px 10px;font:inherit;font-size:19px;line-height:1.3;color:#3A2A1A;background:#fff;border:2px solid #E2C99A;border-radius:10px;text-align:center}
.av-wr-campo:focus{outline:none;border-color:#B8102E;box-shadow:0 0 0 3px rgba(184,16,46,.15)}
.av-wr-campo.is-libre{display:block;width:100%;margin-top:10px;text-align:left}
.av-wr-campo.is-no{border-color:#c22026;background:#FFF4F2}
.av-wr-campo.is-ok{border-color:#1a7f4b;background:#EAF6EE;color:#14623a}
.av-wr-linea{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;min-height:58px;padding:8px;border:2px dashed #D9CBB0;border-radius:14px;background:#FFFBF2}
.av-wr-bloques{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;min-height:46px;margin-top:12px}
.av-wr-b{padding:8px 16px;font:inherit;font-family:var(--toon);font-weight:500;font-size:18px;color:#3A2A1A;background:#fff;border:2px solid #E2C99A;border-radius:999px;cursor:pointer;transition:border-color .15s}
.av-wr-b:hover:not(:disabled){border-color:#B8102E}
.av-wr-linea .av-wr-b{background:#FFF1C9;border-color:#E9A91C}
.av-wr-b:disabled{cursor:default}
.av-wr-hecha{display:flex;align-items:center;justify-content:center;gap:8px;max-width:720px;margin:12px auto 0;font-family:var(--toon);font-weight:600;font-size:19px;color:#14623a}
.av-wr-hecha .ico{flex:none;color:#1a7f4b}
.av-wr-acc{justify-content:center}
.av-wr-acc .btn{font-family:var(--toon);font-size:16px;padding:9px 22px;border-radius:999px;margin-top:0}
@media (prefers-reduced-motion:reduce){.av-bu-zona.is-luz,.av-bu-marca{animation:none}.av-bu-zona.is-pista{animation:none;fill:rgba(255,214,90,.35)}}
@media (max-width:900px){
  .av-bu-cab{position:sticky;top:52px;z-index:4;margin:6px -4px 0;padding:6px 4px 8px;background:#fff;box-shadow:0 8px 10px -10px rgba(60,40,20,.25)}
}
@media (max-width:560px){
  .av-bu-frase{font-size:17px;padding:10px 12px}
  .av-wr-frase,.av-wr-preg{font-size:17px}
  .av-wr-campo{font-size:17px}
  .av-wr-b{font-size:16px;padding:7px 13px}
  .av-bu-marca{width:26px;height:26px}
}

/* ---------------- misión 10: el chat (imitación de WhatsApp) con el mensaje de voz y el plano de calles ---------------- */
.av-bocadillo .av-quien{display:block;margin:-2px 0 2px;font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#B8102E}
.av-bocadillo.is-otro{border-color:#9CC5A8}
.av-bocadillo.is-otro::before{border-color:#9CC5A8}
.av-bocadillo.is-otro .av-quien{color:#17694C}
.av-m-intro.is-colon .av-m-escena{max-width:640px}
.av-m-intro.is-colon .av-m-tio{right:-14px;bottom:-34px;width:clamp(110px,24%,170px)}
.av-paso.is-ruta{--ancho:min(1100px,calc(100vw - 32px));width:var(--ancho);margin-left:calc((100% - var(--ancho)) / 2);overflow:clip}

/* el teléfono */
.av-wa{--wa-verde:#008069;--wa-acento:#00A884;max-width:390px;margin:14px auto 0;border:9px solid #23262B;border-radius:30px;overflow:hidden;background:#EFEAE2;
  box-shadow:0 14px 34px rgba(40,30,20,.28);font-family:"Inter",-apple-system,BlinkMacSystemFont,sans-serif;color:#111B21}
.av-wa-cab{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--wa-verde);color:#fff}
.av-wa-cab .ico{width:21px;height:21px}
.av-wa-atras{display:flex}
.av-wa-avatar{flex:none;width:38px;height:38px;border-radius:50%;overflow:hidden;background:#F3E3C3}
.av-wa-avatar img,.av-wa-avatar svg,.av-wa-foto img,.av-wa-foto svg{display:block;width:100%;height:100%;object-fit:cover}
.av-wa-tit{flex:1;min-width:0;font-weight:600;font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.av-wa-iconos{display:flex;gap:16px;opacity:.95}
.av-wa-cuerpo{display:flex;flex-direction:column;gap:6px;min-height:300px;max-height:460px;overflow-y:auto;padding:12px 10px 14px;
  background-color:#EFEAE2;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='90' height='90' viewBox='0 0 90 90'%3E%3Cg fill='none' stroke='%23C9BFAF' stroke-width='1.4' opacity='.55'%3E%3Cpath d='M18 10l2.4 5 5.4.6-4 3.7 1.1 5.3-4.9-2.7-4.9 2.7 1.1-5.3-4-3.7 5.4-.6z'/%3E%3Cpath d='M62 52v14M55 59h14M57 54l10 10M67 54l-10 10'/%3E%3Ccircle cx='70' cy='18' r='4'/%3E%3Cpath d='M20 62c4-6 10-6 14 0'/%3E%3C/g%3E%3C/svg%3E")}
.av-wa-dia{align-self:center;margin:0 0 6px}
.av-wa-dia span{display:inline-block;padding:4px 10px;border-radius:8px;background:#fff;font-size:12px;font-weight:500;color:#54656F;box-shadow:0 1px .5px rgba(11,20,26,.13)}
.av-wa-m{position:relative;max-width:84%;padding:6px 8px 6px 9px;border-radius:8px;font-size:15.5px;line-height:1.35;box-shadow:0 1px .5px rgba(11,20,26,.13)}
.av-wa-m p{margin:0;display:inline}
.av-wa-m.is-pedro{align-self:flex-end;background:#D9FDD3;border-top-right-radius:0}
.av-wa-m.is-amigos{align-self:flex-start;background:#fff;border-top-left-radius:0}
.av-wa-m.is-pedro::after,.av-wa-m.is-amigos::after{content:"";position:absolute;top:0;width:8px;height:12px}
.av-wa-m.is-pedro::after{right:-8px;background:linear-gradient(225deg,transparent 50%,#D9FDD3 50%)}
.av-wa-m.is-amigos::after{left:-8px;background:linear-gradient(135deg,transparent 50%,#fff 50%)}
.av-wa-hora{float:right;display:inline-flex;align-items:center;gap:3px;margin:7px 0 -4px 12px;font-size:11px;color:#667781;line-height:1}
.av-wa-hora .ico{width:16px;height:16px;color:#53BDEB}
.av-wa-m.is-nuevo{animation:av-sube .35s both}
.av-wa-m.is-escribe{display:flex;gap:4px;padding:11px 12px}
.av-wa-m.is-escribe span{width:7px;height:7px;border-radius:50%;background:#8696A0;animation:av-wa-punto 1s infinite}
.av-wa-m.is-escribe span:nth-child(2){animation-delay:.15s}
.av-wa-m.is-escribe span:nth-child(3){animation-delay:.3s}
@keyframes av-wa-punto{0%,60%,100%{opacity:.35;transform:none}30%{opacity:1;transform:translateY(-3px)}}
/* el mensaje de voz */
.av-wa-m.is-voz{display:flex;align-items:center;gap:8px;width:min(320px,88%);max-width:none;padding:8px 8px 6px 6px}
.av-wa-play{flex:none;display:grid;place-items:center;width:42px;height:42px;padding:0;border:0;border-radius:50%;background:transparent;color:#54656F;cursor:pointer}
.av-wa-play .ico{width:28px;height:28px;fill:currentColor}
.av-wa-play:focus-visible,.av-wa-onda:focus-visible{outline:2px solid var(--wa-acento);outline-offset:2px}
.av-wa-voz{flex:1;min-width:0}
.av-wa-onda{position:relative;display:flex;align-items:center;gap:2px;height:30px;cursor:pointer;touch-action:manipulation}
.av-wa-onda i{flex:1;min-height:3px;border-radius:2px;background:#B6C0C6;transition:background .15s}
.av-wa-onda i.is-oido{background:var(--wa-acento)}
.av-wa-bola{position:absolute;top:50%;left:0;width:13px;height:13px;margin:-6.5px 0 0 -6.5px;border-radius:50%;background:var(--wa-acento);box-shadow:0 1px 2px rgba(0,0,0,.25)}
.av-wa-info{display:flex;justify-content:space-between;margin-top:3px;font-size:11.5px;color:#667781}
.av-wa-info .av-wa-hora{float:none;margin:0}
.av-wa-t{font-variant-numeric:tabular-nums}
.av-wa-foto{position:relative;flex:none;width:48px;height:48px;border-radius:50%;overflow:visible}
.av-wa-foto img,.av-wa-foto svg{border-radius:50%}
.av-wa-foto .av-wa-mic{position:absolute;left:-4px;bottom:-2px;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#fff;color:var(--wa-acento)}
.av-wa-foto .av-wa-mic .ico{width:14px;height:14px}
.av-wa-m.is-voz.is-sonando .av-wa-foto .av-wa-mic{color:#53BDEB}
.av-wa-m.is-error .av-wa-onda{opacity:.4;cursor:default}
.av-wa-pie{display:flex;align-items:center;gap:8px;padding:7px 8px;background:#F0F2F5}
.av-wa-campo{flex:1;padding:9px 14px;border-radius:20px;background:#fff;font-size:15px;color:#8696A0}
.av-wa-boton{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--wa-acento);color:#fff}
.av-wa-boton .ico{width:20px;height:20px}
.av-pl-ayudar{display:flex;flex-direction:column;align-items:center;gap:6px;margin-top:20px}
.av-pl-ayudar-b{font-family:var(--toon);font-size:20px;padding:12px 32px;border-radius:999px}
.av-pl-ayudar-b:disabled{opacity:.45;cursor:not-allowed}
.av-pl-ayudar-b.is-listo{animation:av-pl-latido 1.2s ease-in-out 2}
@keyframes av-pl-latido{0%,100%{transform:none}50%{transform:scale(1.06)}}
.av-pl-ayudar .av-esc-aviso{margin:4px 0 0}
dialog.av-wa-dlg{width:min(400px,94vw);padding:0;border:0;background:transparent;overflow:visible;max-height:none}
dialog.av-wa-dlg::backdrop{background:rgba(10,16,40,.66)}
dialog.av-wa-dlg .av-wa{margin:0 auto}
dialog.av-wa-dlg .av-wa-cuerpo{min-height:0;max-height:calc(100dvh - 200px)}
.av-wa-cerrar{top:-14px;right:-10px}

/* el plano */
.av-pl{display:grid;grid-template-columns:minmax(260px,330px) minmax(0,1fr);gap:22px;align-items:start;margin-top:12px}
.av-pl-lado{position:sticky;top:66px}
.av-pl-ind{display:flex;align-items:baseline;gap:2px;margin:0;padding:14px 16px;background:#FFF8E6;border-left:4px solid #E9A91C;border-radius:10px;
  font-family:var(--toon);font-weight:500;font-size:20px;line-height:1.35;color:#3A2A1A}
.av-pl-ind:empty{display:none}
.av-pl-ind.is-entra{animation:av-sube .4s both}
.av-pl-toca{display:flex;align-items:center;gap:6px;margin:0;font-size:14px;color:var(--ink-3)}
.av-pl-toca .ico{flex:none;color:#8A6A12}
.av-pl-fila{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin-top:8px}
.av-pl-cab .av-fb{min-height:54px;margin:10px 0 0}
.av-pl-cab .av-fb:empty{visibility:hidden}
.av-pl-cab.is-fin .av-pl-fila,.av-pl-cab.is-fin .av-fb{display:none}
.av-fb.is-sacude{animation:av-pl-sacude .4s}
@keyframes av-pl-sacude{0%,100%{transform:none}25%{transform:translateX(-6px)}75%{transform:translateX(6px)}}
.av-pl-hechas{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}
.av-pl-hechas li{display:flex;align-items:flex-start;gap:8px;font-size:15.5px;line-height:1.35;color:#4B5A48}
.av-pl-n{flex:none;display:grid;place-items:center;width:22px;height:22px;margin-top:1px;border-radius:50%;background:#1a7f4b;color:#fff}
.av-pl-n .ico{width:13px;height:13px;stroke-width:3}
.av-pl-mapa{position:relative}
.av-pl-marco{position:relative;border:1.5px solid #D9CBB0;border-radius:12px;overflow:hidden;background:#F6EFDF}
.av-pl-marco.is-ampliado{overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.av-pl-lienzo{position:relative;width:100%}
.av-pl-lienzo .av-pl-base,.av-pl-zonas{position:absolute;inset:0;width:100%;height:100%;display:block}
.av-pl-base{user-select:none;-webkit-user-select:none}
.av-pl-z{fill:transparent;stroke:transparent;cursor:pointer;outline:none;transition:fill .2s,stroke .2s}
.av-pl-z.is-mar{cursor:default}
line.av-pl-z{stroke-linecap:butt}
@media (hover:hover){
  line.av-pl-z:hover{stroke:rgba(255,201,60,.3)}
  circle.av-pl-z:hover{fill:rgba(255,201,60,.3)}
  rect.av-pl-z.is-lugar:hover{fill:rgba(255,201,60,.16);stroke:#E9A91C;stroke-width:3}
}
.av-pl-z:focus-visible{stroke:#2E86C1;stroke-width:4;stroke-dasharray:8 5}
line.av-pl-z.is-bien{stroke:rgba(76,191,115,.5)}
circle.av-pl-z.is-bien,rect.av-pl-z.is-bien{fill:rgba(76,191,115,.35);stroke:#1a7f4b;stroke-width:3}
line.av-pl-z.is-mal{stroke:rgba(214,56,56,.32)}
circle.av-pl-z.is-mal,rect.av-pl-z.is-mal{fill:rgba(214,56,56,.22);stroke:#c22026;stroke-width:3}
.av-pl-base .av-pl-sem-r{fill:#E8455B;filter:drop-shadow(0 0 3px rgba(232,69,91,.9))}
.av-pl-base .av-pl-sem-v{fill:#2E4636}
.av-pl-base.is-verde .av-pl-sem-r{fill:#4A2A2E;filter:none}
.av-pl-base.is-verde .av-pl-sem-v{fill:#45D483;filter:drop-shadow(0 0 4px rgba(69,212,131,.95))}
/* Pedro y los amigos se miden por la altura (% del plano): la imagen recortada es más alta que ancha */
.av-pl-pedro{position:absolute;z-index:3;height:8.6%;transform:translate(-50%,-90%);pointer-events:none;filter:drop-shadow(0 3px 3px rgba(60,40,20,.35))}
.av-pl-pedro img,.av-pl-pedro svg{display:block;height:100%;width:auto;transition:transform .2s}
.av-pl-pedro.is-oeste img,.av-pl-pedro.is-oeste svg{transform:scaleX(-1)}
.av-pl-pedro.is-andando img,.av-pl-pedro.is-andando svg{animation:av-pl-anda .36s ease-in-out infinite alternate}
.av-pl-pedro.is-oeste.is-andando img,.av-pl-pedro.is-oeste.is-andando svg{animation-name:av-pl-anda-o}
@keyframes av-pl-anda{from{transform:translateY(0) rotate(-3deg)}to{transform:translateY(-5%) rotate(3deg)}}
@keyframes av-pl-anda-o{from{transform:scaleX(-1) translateY(0) rotate(-3deg)}to{transform:scaleX(-1) translateY(-5%) rotate(3deg)}}
.av-pl-rumbo{position:absolute;z-index:2;width:8.4%;aspect-ratio:1;transform:translate(-50%,-50%) rotate(var(--giro,0deg));pointer-events:none;transition:transform .25s}
.av-pl-rumbo svg{display:block;width:100%;height:100%;overflow:visible}
.av-pl-rumbo circle{fill:rgba(255,201,60,.28);stroke:#E9A91C;stroke-width:3}
.av-pl-rumbo path{fill:#E9A91C;stroke:#fff;stroke-width:2;stroke-linejoin:round}
.av-pl-amigos{position:absolute;z-index:2;height:11%;transform:translate(-50%,-90%);pointer-events:none;filter:drop-shadow(0 3px 3px rgba(60,40,20,.3))}
.av-pl-amigos img,.av-pl-amigos svg{display:block;height:100%;width:auto}
.av-pl-chispa{position:absolute;top:-10%;left:-14%;width:34%;color:#E9A91C;animation:av-pl-chispa 1.2s ease-in-out infinite alternate}
.av-pl-chispa.is-2{left:auto;right:-16%;top:6%;width:28%;animation-delay:.5s}
.av-pl-chispa .ico{width:100%;height:auto;fill:#FFC93C}
@keyframes av-pl-chispa{from{opacity:.25;transform:scale(.8) rotate(-10deg)}to{opacity:1;transform:scale(1.1) rotate(10deg)}}
.av-pl-lienzo.is-llegada .av-pl-amigos{animation:av-pl-aparece .6s cubic-bezier(.3,1.5,.5,1) both}
.av-pl-lienzo.is-llegada .av-pl-pedro img,.av-pl-lienzo.is-llegada .av-pl-pedro svg{animation:av-pl-salta .45s .5s ease-out 3}
.av-pl-lienzo.is-llegada .av-pl-rumbo{opacity:0;transition:opacity .4s}
@keyframes av-pl-aparece{from{opacity:0;transform:translate(-50%,-70%) scale(.4)}to{opacity:1;transform:translate(-50%,-90%) scale(1)}}
@keyframes av-pl-salta{0%,100%{transform:translateY(0)}45%{transform:translateY(-22%)}}
.av-pl-lienzo.is-quieto .av-pl-amigos,.av-pl-lienzo.is-quieto .av-pl-pedro img,.av-pl-lienzo.is-quieto .av-pl-pedro svg{animation:none}
.av-pl-otra{flex:none;display:inline-flex;align-items:center;gap:6px;padding:8px 18px;font-family:var(--toon);font-size:16px;border-radius:999px;background:#fff}
.av-pl-otra .ico{color:#B8102E}
.av-pl .av-pl-zoom{z-index:4}
.av-pl-fin{margin-top:14px}
.av-pl-lado.is-fin{position:static}
/* postal sin frases de Tió (misión 10): el botón va después del progreso */
.av-postal .av-m-prog + .av-postal-ok{display:inline-block;margin-top:22px}
.av-pl-fin .av-wa{margin-top:0;max-width:360px}
.av-wa.is-final .av-wa-cuerpo{min-height:0;max-height:none}
.av-pl-fin-tio .av-bocadillo{max-width:none}
.av-pl-fin-tio .av-bocadillo.is-luego{animation-delay:2s}
@media (prefers-reduced-motion:reduce){
  .av-wa-m.is-nuevo,.av-wa-m.is-escribe span,.av-pl-ind.is-entra,.av-fb.is-sacude,.av-pl-chispa,.av-pl-ayudar-b.is-listo{animation:none}
  .av-pl-pedro img,.av-pl-pedro svg,.av-pl-amigos{animation:none!important}
}
@media (max-width:900px){
  .av-pl{grid-template-columns:minmax(0,1fr);gap:10px}
  .av-pl-lado{display:contents}
  .av-pl-cab{order:0;position:sticky;top:52px;z-index:5;margin:0 -4px;padding:6px 4px 8px;background:#fff;box-shadow:0 8px 10px -10px rgba(60,40,20,.25)}
  .av-pl-mapa{order:1}
  .av-pl-fin{order:2}
  .av-pl-hechas{order:3}
  .av-pl-ind{font-size:17.5px;padding:10px 12px}
  .av-pl-toca{font-size:13px;line-height:1.3}
  .av-pl-fila{flex-direction:row;align-items:center;gap:8px;margin-top:6px}
  .av-pl-toca{flex:1;min-width:0}
  .av-pl-cab .av-fb{min-height:46px;margin-top:6px}
  .av-pl-cab .av-fb .av-fb-tio{width:42px;height:42px}
  .av-pl-marco.is-ampliado{max-height:60svh}
}
@media (max-width:560px){
  .av-wa{border-width:7px;border-radius:26px}
  .av-wa-iconos{gap:12px}
  .av-wa-iconos .ico:first-child{display:none}
  .av-wa-cuerpo{min-height:260px}
  .av-pl-otra{padding:7px 12px;font-size:14.5px}
  .av-pl-cab .av-fb:has(.av-fb-tio){font-size:15px}
}

/* ---------------- misión 11: las puertas de la catedral ---------------- */
.av-m-intro.is-catedral .av-m-escena{max-width:640px}
.av-m-llaves{position:absolute;right:clamp(84px,25%,150px);bottom:-14px;width:clamp(54px,13%,82px);transform:rotate(-14deg);filter:drop-shadow(0 3px 4px rgba(0,0,0,.3));animation:av-pu-llaves 2.6s ease-in-out infinite;transform-origin:30% 25%}
.av-m-llaves svg{display:block;width:100%;height:auto}
@keyframes av-pu-llaves{0%,100%{transform:rotate(-14deg)}50%{transform:rotate(-4deg)}}

.av-paso.is-puertas{--ancho:min(1000px,calc(100vw - 32px));width:var(--ancho);margin-left:calc((100% - var(--ancho)) / 2)}
.av-pu-cuenta{display:flex;justify-content:center;align-items:center;gap:6px;margin:10px 0 0;font-family:var(--toon);font-weight:600;font-size:16px;color:#8A6A12}
.av-pu-cuenta .ico{font-size:18px}
/* la escena: la ilustración y, encima, puertas, emblemas, placa y faroles (posiciones en % desde dia-11.json) */
.av-pu-escena{position:relative;margin:10px auto 0;max-width:900px;border-radius:16px;overflow:hidden;box-shadow:0 8px 22px rgba(60,40,20,.22);container-type:inline-size;background:#2B2118}
.av-pu-escena>img{display:block;width:100%;height:100%;object-fit:cover}
.av-pu-puerta{position:absolute;perspective:900px}
/* lo de dentro: una pintura del mismo estilo (dentro.webp, pared.webp), con sombra en los bordes del hueco */
.av-pu-dentro{position:absolute;inset:0;background:#6B4A2A center/cover no-repeat;box-shadow:inset 0 0 16px 5px rgba(45,28,12,.6);opacity:0;transition:opacity .7s .25s}
.av-pu-capa{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.av-pu-puerta.is-abierta .av-pu-dentro{opacity:1}
.av-pu-hoja{position:absolute;top:0;height:100%;background-repeat:no-repeat;transition:transform 1.1s cubic-bezier(.35,.1,.2,1),filter 1.1s;backface-visibility:hidden}
.av-pu-hoja.is-izq{transform-origin:0 50%}
.av-pu-hoja.is-der{transform-origin:100% 50%}
.av-pu-puerta.is-abierta .av-pu-hoja{filter:brightness(.8)}
.av-pu-puerta.is-abierta .av-pu-hoja.is-izq{transform:rotateY(-74deg)}
.av-pu-puerta.is-abierta .av-pu-hoja.is-der{transform:rotateY(74deg)}
/* las tres líneas de luz de cada puerta (una por frase), como una inscripción */
.av-pu-linea{position:absolute;left:12%;right:12%;height:4%;min-height:4px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='12' viewBox='0 0 44 12'%3E%3Cpath d='M2 7q3-6 6 0t6 0M17 9l2-6 2 6M24 6q2-4 5 0q2 3 4-1M36 4v5M39 7h3' fill='none' stroke='%23FFE7A3' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") repeat-x 0 50%/auto 100%;opacity:.3;transition:opacity .4s}
.av-pu-puerta.is-abierta .av-pu-linea{opacity:0!important}
.av-pu-linea[data-n="0"]{top:12%}
.av-pu-linea[data-n="1"]{top:19%}
.av-pu-linea[data-n="2"]{top:26%}
.av-pu-puerta.is-activa .av-pu-linea{animation:av-pu-late 2.4s ease-in-out infinite}
.av-pu-linea.is-on,.av-pu-puerta.is-activa .av-pu-linea.is-on{opacity:1;animation:none;filter:drop-shadow(0 0 2px #FFD36B) drop-shadow(0 0 5px rgba(255,190,70,.9))}
.av-pu-emblema{position:absolute;border-radius:50%;background:radial-gradient(circle,rgba(255,236,170,.9) 0%,rgba(255,206,90,.45) 38%,rgba(255,190,60,0) 70%);opacity:0;mix-blend-mode:screen;pointer-events:none;transition:opacity .6s}
.av-pu-emblema.is-activa{animation:av-pu-late 2.4s ease-in-out infinite}
.av-pu-emblema.is-abierta{opacity:1;animation:none}
@keyframes av-pu-late{0%,100%{opacity:.25}50%{opacity:.75}}
.av-pu-escena.is-quieto .av-pu-hoja,.av-pu-escena.is-quieto .av-pu-dentro{transition:none}
/* la tablilla con las frases: madera oscura, letras claras con brillo, la forma acertada en oro */
.av-pu-dice .av-bocadillo{max-width:640px}
/* primera parte: la pista y la solución de cada frase, debajo de ella dentro de la tablilla */
.av-pu-notas{max-width:560px;margin:0 auto}
.av-pu-notas:empty{display:none}
.av-pu-tabla .av-pu-pista,.av-pu-tabla .av-pu-sol{margin:6px 0 4px;padding:8px 12px;font-size:14.5px;text-align:left;text-shadow:none}
.av-pu-tabla .av-pu-pista-t{font-size:13px}
.av-pu-tabla .av-pu-sol-f{font-size:16px}
.av-pu-der .av-acc{justify-content:center;flex-wrap:wrap}
.av-pu-der .av-acc .btn{font-family:var(--toon);font-size:16px;padding:9px 22px;border-radius:999px;margin-top:0}
.av-pu-der .av-fb{max-width:720px;margin-left:auto;margin-right:auto}
.av-pu-juego.is-final .av-pu-der{display:none}
@media (min-width:900px){
  .av-pu-juego{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:22px;align-items:start;margin-top:6px}
  .av-pu-juego.is-final{grid-template-columns:minmax(0,1fr)}
  .av-pu-izq{position:sticky;top:64px}
  .av-pu-izq .av-pu-escena{margin-top:0}
  .av-pu-der .av-pu-cuenta{margin-top:0}
  .av-pu-der .av-pu-reglas+.av-pu-cuenta{margin-top:12px}
  .av-pu-der .av-pu-tabla{margin-top:10px;padding:16px 18px 18px}
  .av-pu-der .av-pu-reglas{margin-top:0}
  .av-pu-der .av-pu-frase{font-size:19px}
}
.av-pu-tabla{position:relative;max-width:720px;margin:16px auto 0;padding:18px 24px 20px;border-radius:16px;border:3px solid #B8913F;
  background:radial-gradient(ellipse at 50% 0%,rgba(255,214,120,.18),transparent 60%),linear-gradient(#4A3524,#33251A);
  box-shadow:inset 0 0 0 2px rgba(255,226,150,.18),inset 0 0 26px rgba(0,0,0,.35),0 8px 18px rgba(60,40,20,.25);color:#FBEFD2;text-align:center}
.av-pu-tabla-t{display:flex;justify-content:center;align-items:center;gap:8px;margin:0;font-family:var(--toon);font-weight:700;font-size:19px;letter-spacing:.04em;color:#F3C969;text-transform:uppercase}
.av-pu-tabla-t::before,.av-pu-tabla-t::after{content:"";width:34px;height:1.5px;background:linear-gradient(90deg,transparent,#F3C969,transparent)}
.av-pu-frase{margin:12px 0 0;font-family:var(--toon);font-weight:500;font-size:20px;line-height:1.85;text-shadow:0 0 10px rgba(255,214,130,.35)}
.av-pu-tabla.is-una .av-pu-frase{margin:4px 0;font-size:21px}
.av-pu-inf{color:#E3C98E;font-style:italic;font-weight:400}
.av-pu-campo{max-width:100%;padding:2px 8px;font:inherit;font-size:19px;line-height:1.3;color:#3A2A1A;background:#FFF8E6;border:2px solid #D9B865;border-radius:9px;text-align:center;text-shadow:none}
.av-pu-campo:focus{outline:none;border-color:#FFD970;box-shadow:0 0 0 3px rgba(255,217,112,.35)}
.av-pu-campo.is-no{border-color:#E8574B;background:#FFECE8;animation:av-no .3s}
.av-pu-ok{color:#FFD970;font-weight:700;text-shadow:0 0 12px rgba(255,200,80,.9),0 0 2px rgba(255,236,170,.9)}
.av-pu-ok.is-nueva{animation:av-pu-oro .9s ease-out}
.av-pu-ok.is-dada{color:#F4E3B8;text-shadow:none;text-decoration:underline 2px rgba(244,227,184,.5);text-underline-offset:4px}
@keyframes av-pu-oro{0%{text-shadow:0 0 0 rgba(255,200,80,0);color:#fff}40%{text-shadow:0 0 22px rgba(255,210,100,1),0 0 6px #fff;color:#FFF3C4}100%{text-shadow:0 0 12px rgba(255,200,80,.9),0 0 2px rgba(255,236,170,.9)}}
/* el reto: las reglas, la cuarta puerta con su placa y siete faroles, la pista y la solución */
.av-pu-reglas{max-width:720px;margin:12px auto 0;padding:14px 18px;border-radius:14px;background:#FFFBF2;border:2px solid #E2C99A;color:#3A2A1A;font-size:16px;line-height:1.5}
.av-pu-reglas p{margin:0}
.av-pu-reglas p+p{margin-top:8px}
.av-pu-reglas ul{margin:6px 0 0;padding-left:22px}
.av-pu-reglas li{font-weight:600;color:#7A2E1A}
.av-pu-nota{margin-top:10px!important;font-family:var(--toon);font-weight:600;color:#B8102E}
.av-pu-placa{position:absolute;display:flex;align-items:center;justify-content:center;padding:4%;text-align:center;font-family:"Caveat",var(--toon);font-weight:700;font-size:14px;font-size:2.3cqw;line-height:1.05;color:#F7E2B0;text-shadow:0 1px 0 rgba(0,0,0,.6),0 0 6px rgba(255,210,120,.45);pointer-events:none}
.av-pu-farol{position:absolute;border-radius:50%;background:radial-gradient(circle at 40% 35%,#8A7656,#3A3026);box-shadow:0 0 0 2px #C9A453,0 0 0 4px rgba(0,0,0,.35);transition:background .4s,box-shadow .4s}
.av-pu-farol.is-activa{animation:av-pu-farol 1.6s ease-in-out infinite}
.av-pu-farol.is-on{background:radial-gradient(circle at 40% 35%,#FFF6CF,#FFC94D 55%,#D98A1C);box-shadow:0 0 10px 4px rgba(255,200,80,.75)}
@keyframes av-pu-farol{50%{background:radial-gradient(circle at 40% 35%,#E9D49A,#8A6A2E);box-shadow:0 0 0 2px #FFD970,0 0 10px 4px rgba(255,210,110,.7)}}
.av-pu-escena.is-final .av-pu-hoja{transition-duration:2.4s}
.av-pu-pista,.av-pu-sol{max-width:720px;margin:12px auto 0;padding:12px 16px;border-radius:14px;background:#FFF8E6;border:2px solid #E9C46A;color:#4A3524;line-height:1.5;animation:av-sube .4s both}
.av-pu-pista p,.av-pu-sol p{margin:0}
.av-pu-pista p+p,.av-pu-sol p+p{margin-top:6px}
.av-pu-pista-t{display:flex;align-items:center;gap:6px;font-family:var(--toon);font-weight:700;font-size:15px;letter-spacing:.06em;text-transform:uppercase;color:#B07D12}
.av-pu-pista b{color:#7A2E1A}
.av-pu-sol{background:#FFF1EE;border-color:#E8A094}
.av-pu-sol-f{font-family:var(--toon);font-size:18px}
.av-pu-sol mark{padding:0 4px;border-radius:5px;background:#FFE08A;color:#3A2A1A;font-weight:700}
/* el final del reto: la puerta se abre despacio; detrás, el muro de piedra con la frase que brilla; después, Tió */
.av-pu-fin{max-width:760px;margin:0 auto}
.av-pu-piedra{margin:16px 0 0;padding:34px 26px;border-radius:14px;border:3px solid #6B5E4E;background:#5E5446 center/cover no-repeat;
  box-shadow:inset 0 0 40px rgba(0,0,0,.5),0 10px 24px rgba(40,30,20,.3);animation:av-pu-revela 1.2s 2s both}
.av-pu-piedra p{margin:0;font-family:"Caveat",var(--toon);font-weight:700;font-size:clamp(26px,4.4vw,38px);line-height:1.2;text-align:center;color:#FFE7A3;text-shadow:0 0 14px rgba(255,200,80,.95),0 0 32px rgba(255,170,50,.7),0 2px 0 rgba(0,0,0,.5)}
@keyframes av-pu-revela{from{opacity:0;transform:scale(.94);filter:brightness(2)}to{opacity:1;transform:none;filter:none}}
.av-pu-fin .av-bocadillo{max-width:640px}
.av-pu-fin .av-bocadillo.is-t0{animation:av-sube .5s 3.6s both}
.av-pu-fin .av-bocadillo.is-t1{animation:av-sube .5s 6s both}
.av-pu-fin-acc{justify-content:center;animation:av-sube .5s 6.8s both}
.av-pu-fin.is-quieto .av-pu-piedra,.av-pu-fin.is-quieto .av-bocadillo,.av-pu-fin.is-quieto .av-pu-fin-acc{animation:none}
/* al elegir: la cuarta puerta aparece tras la frase de Tió, y después lo que dice al verla y los dos botones */
.av-pu-cuarta-fin{max-width:460px;margin:14px auto 0;animation:av-pu-aparece 1s 1.2s both}
.av-pu-cuarta-fin .av-pu-escena{margin:0;box-shadow:0 0 0 3px rgba(255,214,120,.45),0 0 28px rgba(255,200,80,.45)}
@keyframes av-pu-aparece{from{opacity:0;transform:scale(.9);filter:brightness(1.8) blur(2px)}to{opacity:1;transform:none;filter:none}}
.av-paso-fin .av-bocadillo.is-tarde{animation:av-sube .5s 2.8s both}
.av-paso-fin .av-paso-elige.is-tarde{animation:av-sube .5s 3.6s both}
@media (prefers-reduced-motion:reduce){
  .av-m-llaves,.av-pu-linea,.av-pu-emblema,.av-pu-farol,.av-pu-ok.is-nueva,.av-pu-campo.is-no,.av-pu-piedra,.av-pu-fin .av-bocadillo,.av-pu-fin-acc,
  .av-pu-cuarta-fin,.av-paso-fin .av-bocadillo.is-tarde,.av-paso-fin .av-paso-elige.is-tarde,.av-pu-pista,.av-pu-sol{animation:none!important}
  .av-pu-hoja,.av-pu-dentro{transition:none}
}
@media (max-width:560px){
  .av-pu-tabla{padding:14px 12px 16px}
  .av-pu-frase{font-size:17.5px;line-height:1.8}
  .av-pu-tabla.is-una .av-pu-frase{font-size:18.5px}
  .av-pu-campo{font-size:17px}
  .av-pu-reglas{font-size:15px}
  .av-pu-piedra{padding:22px 16px}
}

/* ---------------- misión 13: el código secreto (la caja de Santa Maria del Mar) ---------------- */
.av-m-intro.is-santamaria .av-m-escena{max-width:640px}
.av-m-inscripcion{max-width:520px;margin:22px auto 0;padding:12px 20px;border-radius:10px;border:2px solid #9C7A3C;
  background:linear-gradient(#B8913F,#8E6B2C);box-shadow:inset 0 1px 0 rgba(255,236,180,.6),inset 0 -2px 0 rgba(60,40,10,.35),0 4px 10px rgba(60,40,20,.25);
  font-family:"Caveat",var(--toon);font-weight:700;font-size:24px;line-height:1.2;text-align:center;color:#3A2A12;text-shadow:0 1px 0 rgba(255,236,180,.55)}
.av-m-inscripcion+.av-trad-ayuda{margin-top:8px!important}
.av-paso.is-caja{--ancho:min(1000px,calc(100vw - 32px));width:var(--ancho);margin-left:calc((100% - var(--ancho)) / 2)}
.av-paso.is-caja.is-reto{--ancho:min(760px,calc(100vw - 32px))}
/* la caja: la ilustración cerrada y, encima, la abierta (aparece al abrir); una casilla redonda por cerradura */
.av-cj-escena{position:relative;margin:10px auto 0;max-width:900px;border-radius:16px;overflow:hidden;box-shadow:0 8px 22px rgba(60,40,20,.22);background:#2B2118}
.av-cj-img{display:block;width:100%;height:100%;object-fit:cover}
.av-cj-img.is-abierta{position:absolute;inset:0;opacity:0;transition:opacity 1.2s ease}
.av-cj-escena.is-abierta .av-cj-img.is-abierta{opacity:1}
.av-cj-escena::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 55%,rgba(255,236,170,.85),rgba(255,214,120,0) 60%);opacity:0;pointer-events:none}
.av-cj-escena.is-abierta::after{animation:av-cj-destello 1.4s ease-out}
@keyframes av-cj-destello{0%{opacity:0}30%{opacity:1}100%{opacity:0}}
.av-cj-cerr{position:absolute;display:grid;place-items:center;border-radius:50%;color:#FFE08A;transition:opacity .5s,transform .5s}
.av-cj-cerr .av-cj-svg{width:72%;height:72%;opacity:0;transform:scale(.4);transition:opacity .5s,transform .5s}
.av-cj-cerr.is-activa{box-shadow:0 0 0 2px rgba(255,224,138,.9),0 0 14px 4px rgba(255,210,110,.6);animation:av-cj-late 1.8s ease-in-out infinite}
.av-cj-cerr.is-on{background:radial-gradient(circle at 40% 35%,#6B5432,#2E2214);box-shadow:0 0 0 2px #C9A453,0 0 12px 3px rgba(255,200,90,.7)}
.av-cj-cerr.is-on .av-cj-svg{opacity:1;transform:none;filter:drop-shadow(0 0 3px rgba(255,214,110,.9))}
.av-cj-cerr.is-nueva{animation:av-cj-sello .8s ease-out}
.av-cj-cerr.is-abre{animation:av-cj-abre .7s ease-in forwards}
.av-cj-escena.is-abierta .av-cj-cerr{opacity:0}
.av-cj-escena.is-quieto .av-cj-cerr,.av-cj-escena.is-quieto .av-cj-img.is-abierta{animation:none;transition:none}
.av-cj-escena.is-quieto::after{animation:none}
@keyframes av-cj-late{50%{box-shadow:0 0 0 2px rgba(255,224,138,.4),0 0 4px 1px rgba(255,210,110,.3)}}
@keyframes av-cj-sello{0%{transform:scale(1.6);filter:brightness(2)}100%{transform:none;filter:none}}
@keyframes av-cj-abre{0%{transform:none;filter:none}40%{transform:scale(1.25);filter:brightness(2.2)}100%{transform:scale(.6) rotate(90deg);opacity:0}}
.av-cj-svg{display:block;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.av-cj-svg .r{fill:currentColor;stroke:none}
/* la tarjeta del enigma: papel viejo; la frase y las opciones bien legibles */
.av-cj-carta,.av-cj-codigo{position:relative;padding:18px 20px 20px;border-radius:6px 14px 8px 16px;background:#FBF3E2;border:1.5px solid #E2C99A;
  box-shadow:0 1px 0 #fff inset,0 8px 18px rgba(60,40,20,.18);color:#3A2A1A;animation:av-sube .4s both}
.av-cj-carta::before,.av-cj-codigo::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  background:radial-gradient(ellipse at 0 0,rgba(176,125,60,.16),transparent 45%),radial-gradient(ellipse at 100% 100%,rgba(176,125,60,.14),transparent 45%)}
.av-cj-n{margin:0;font-family:var(--toon);font-weight:600;font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:#B07D12}
.av-cj-tit{margin:4px 0 0;font-family:var(--toon);font-weight:700;font-size:22px;color:#7A2E1A}
.av-cj-instr{display:block;margin:8px 0 0;font-size:15.5px;line-height:1.45;color:#5A4630}
.av-cj-sit,.av-cj-frase,.av-cj-preg{margin:12px 0 0;font-family:var(--toon);font-weight:500;font-size:19px;line-height:1.45}
.av-cj-preg{font-weight:600;font-size:17.5px;color:#5A3E22}
.av-cj-frase mark{padding:0 4px;border-radius:5px;background:#FFE08A;color:#3A2A1A;font-weight:700}
.av-cj-frase mark.is-hueco{background:#D8F0DF;color:#14623a}
.av-cj-hueco{display:inline-block;width:4.6em;height:1.05em;vertical-align:-3px;border-bottom:2.5px dashed #B07D12}
.av-cj-dlg{margin:12px 0 0;padding:4px 0 4px 14px;border-left:3px solid #E2C99A}
.av-cj-dlg p{margin:4px 0;font-family:var(--toon);font-weight:500;font-size:19px;line-height:1.4}
.av-cj-opts{display:grid;gap:8px;margin:14px 0 0}
.av-cj-opt{display:flex;align-items:center;gap:10px;width:100%;min-height:50px;padding:10px 14px;border-radius:12px;border:2px solid #E2C99A;background:#fff;
  font:inherit;font-size:17px;line-height:1.3;text-align:left;color:#3A2A1A;cursor:pointer;transition:background .15s,border-color .15s,transform .1s}
.av-cj-opt b{display:inline-grid;place-items:center;width:28px;height:28px;flex:none;border-radius:50%;background:#F3E3C3;font-family:var(--toon);font-size:14px;color:#7A2E1A}
.av-cj-opt:hover:not(:disabled){border-color:#C9A453;background:#FFFBF2}
.av-cj-opt:active:not(:disabled){transform:scale(.99)}
.av-cj-opt:disabled{cursor:default}
.av-cj-opt.is-no{border-color:#E8A094;background:#FFF1EE;color:#9A5A4A;opacity:.75}
.av-cj-opt.is-no b{background:#E8574B;color:#fff}
.av-cj-opt.is-ok,.av-cj-opt.is-shown{border-color:#3E9A63;background:#EAF6EE;color:#14623a;font-weight:600}
.av-cj-opt.is-ok b,.av-cj-opt.is-shown b{background:#1a7f4b;color:#fff}
.av-cj-opt.is-shown{box-shadow:0 0 0 3px rgba(62,154,99,.2)}
.av-cj-fb{margin:12px 0 0}
.av-cj-fb:empty{display:none}
.av-cj-tras.is-nueva{animation:av-sube .4s both}
.av-cj-explica{display:flex;gap:8px;align-items:flex-start;margin:12px 0 0;padding:12px 14px;border-radius:12px;background:#FFF8E6;border:1.5px solid #E9C46A;font-size:16px;line-height:1.45;color:#4A3524}
.av-cj-explica .ico{flex:none;margin-top:2px;color:#B07D12}
.av-cj-foto{margin:12px 0 0;border-radius:12px;overflow:hidden;box-shadow:0 6px 16px rgba(60,40,20,.2);animation:av-pu-aparece .8s both}
.av-cj-foto img{display:block;width:100%;height:auto}
.av-cj-tras .av-bocadillo{max-width:none;margin-top:12px}
.av-cj-tras .av-m-acc,.av-cj-codigo .av-m-acc{justify-content:center;margin-top:14px}
/* el código: los cinco símbolos por orden, la tabla (letras mezcladas) y el campo */
.av-cj-serie{display:flex;justify-content:center;gap:8px;margin:14px 0 0}
.av-cj-sim{display:flex;flex-direction:column;align-items:center;gap:2px;width:54px;padding:8px 0 4px;border-radius:10px;background:radial-gradient(circle at 40% 35%,#6B5432,#2E2214);color:#FFE08A}
.av-cj-sim .av-cj-svg{width:34px;height:34px}
.av-cj-sim i{font-style:normal;font-family:var(--toon);font-weight:600;font-size:12px;color:#E9D2A0}
.av-cj-tabla{display:flex;justify-content:center;flex-wrap:wrap;gap:6px;margin:14px auto 0;padding:10px;border-radius:10px;border:1.5px dashed #C9A453;background:rgba(255,248,230,.7)}
.av-cj-par{display:flex;align-items:center;gap:6px;padding:4px 10px;border-radius:8px;background:#fff;border:1px solid #E2C99A;color:#7A2E1A}
.av-cj-par .av-cj-svg{width:28px;height:28px;color:#8A6A12}
.av-cj-par b{font-family:var(--toon);font-size:20px}
.av-cj-par b::before{content:"=";margin-right:6px;font-weight:500;color:#B9A27A}
.av-cj-label{display:block;margin:16px 0 0;text-align:center;font-family:var(--toon);font-weight:600;font-size:16px;color:#5A3E22}
.av-cj-campo{display:block;width:min(260px,100%);margin:8px auto 0;padding:8px 12px;border-radius:10px;border:2px solid #C9A453;background:#fff;
  font-family:var(--toon);font-weight:700;font-size:24px;letter-spacing:.3em;text-align:center;text-transform:uppercase;color:#3A2A1A}
.av-cj-campo:focus{outline:none;border-color:#B8102E;box-shadow:0 0 0 3px rgba(184,16,46,.15)}
/* la nota de la caja: papel roto (imagen recortada), letra clara; después, Tió y «Continuar» */
.av-cj-nota{text-align:center}
.av-cj-papel{position:relative;max-width:460px;margin:6px auto 0;padding:13% 15% 14%;background:center/100% 100% no-repeat;filter:drop-shadow(0 8px 14px rgba(60,40,20,.35));
  animation:av-cj-nota 1.1s 1.9s both}
.av-cj-nota-t{display:block;font-family:"Caveat",var(--toon);font-weight:700;font-size:clamp(22px,2.6vw,27px);line-height:1.2;color:#3A2410}
@keyframes av-cj-nota{from{opacity:0;transform:translateY(40px) rotate(-4deg) scale(.85)}to{opacity:1;transform:rotate(-1.5deg)}}
.av-cj-nota .av-bocadillo{max-width:none}
.av-cj-nota .av-bocadillo.is-t0{animation:av-sube .5s 3.4s both}
.av-cj-nota .av-bocadillo.is-t1{animation:av-sube .5s 5s both}
.av-cj-nota-acc{justify-content:center;animation:av-sube .5s 5.6s both}
.av-cj-nota.is-quieto .av-cj-papel{animation:none;transform:rotate(-1.5deg)}
.av-cj-nota.is-quieto .av-bocadillo,.av-cj-nota.is-quieto .av-cj-nota-acc{animation:none}
.av-cj-der{margin-top:14px}
@media (min-width:900px){
  .av-cj-der{margin-top:0}
  .av-paso.is-caja .av-pu-izq .av-cj-escena{margin-top:0}
}
@media (prefers-reduced-motion:reduce){
  .av-cj-cerr,.av-cj-cerr .av-cj-svg,.av-cj-img.is-abierta{transition:none}
  .av-cj-cerr.is-activa,.av-cj-cerr.is-nueva,.av-cj-escena.is-abierta::after,.av-cj-carta,.av-cj-codigo,.av-cj-tras.is-nueva,.av-cj-foto,.av-cj-papel,
  .av-cj-nota .av-bocadillo,.av-cj-nota-acc{animation:none!important}
}
@media (max-width:560px){
  .av-cj-carta,.av-cj-codigo{padding:14px 14px 16px}
  .av-cj-sit,.av-cj-frase,.av-cj-dlg p{font-size:17.5px}
  .av-cj-opt{font-size:16px}
  .av-cj-sim{width:48px}
}

/* misión 7: la respuesta dada tras tres fallos, en otro tono que la acertada */
.av-hueco.is-dada .av-hueco-ok{color:#8A6A12;text-decoration:underline dotted 2px;text-underline-offset:4px}

/* el mapa en el móvil: el panel (con «Premio» y «Pistas») no se ve también con el mapa pintado; los botones van debajo */
.av-pie-acc{display:none}
@media (max-width:760px){
  .av-lienzo.is-pintado .av-panel{display:none}
  .av-pie-acc{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0 0}
  .av-pie-acc .av-btn-premio{margin:0;padding:9px 16px;font-size:15px}
}
.av-btn-cuaderno b{display:inline-grid;place-items:center;min-width:20px;height:20px;margin-left:2px;padding:0 5px;border-radius:999px;background:#FFC93C;color:#3A2A1A;font-family:var(--toon);font-size:12px}
/* el cuaderno de pistas: una libreta de papel con renglones; cada pista, una hoja con su día */
.av-cuaderno{width:min(620px,calc(100vw - 24px));max-height:calc(100svh - 40px);padding:0;border:0;border-radius:18px;background:transparent;overflow:visible}
.av-cuaderno::backdrop{background:rgba(10,14,34,.6)}
.av-cuaderno-in{position:relative;max-height:calc(100svh - 40px);overflow:auto;padding:26px 24px 24px 46px;border-radius:18px;color:#3A2A1A;
  background:repeating-linear-gradient(transparent 0 31px,rgba(120,150,190,.25) 31px 32px),linear-gradient(90deg,transparent 30px,rgba(200,60,60,.35) 30px 32px,transparent 32px),#FBF6EA;
  box-shadow:0 18px 40px rgba(0,0,0,.35)}
.av-cuaderno-in h2{display:flex;align-items:center;gap:10px;margin:0;font-family:var(--toon);font-weight:700;font-size:26px;color:#7A2E1A}
.av-cuaderno-in h2 .ico{width:26px;height:26px;color:#B07D12}
.av-cuaderno-n,.av-cuaderno-vacio{margin:6px 0 0;font-family:var(--toon);font-weight:600;font-size:15px;color:#8A6A12}
.av-cuaderno-p{margin:18px 0 0;padding:14px 16px;border-radius:6px 12px 8px 14px;background:#FFFDF7;border:1.5px solid #E2C99A;box-shadow:0 4px 10px rgba(60,40,20,.12);transform:rotate(-.4deg)}
.av-cuaderno-p:nth-child(even){transform:rotate(.4deg)}
.av-cuaderno-dia{display:flex;align-items:center;gap:8px;margin:0;font-family:var(--toon);font-weight:600;font-size:14px;letter-spacing:.04em;text-transform:uppercase;color:#B07D12}
.av-cuaderno-dia b{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#B8102E;color:#fff;font-size:13px}
.av-cuaderno-p h3{margin:8px 0 0;font-family:var(--toon);font-size:19px;color:#7A2E1A}
.av-cuaderno-texto{display:block;margin:8px 0 0;font-family:"Caveat",var(--toon);font-weight:700;font-size:23px;line-height:1.25;color:#3A2410}
.av-cuaderno-p .av-postal-foto,.av-cuaderno-p .av-postal-obj{margin:10px auto 0;max-width:260px}
.av-cuaderno-tio{display:flex;align-items:center;gap:8px;margin:10px 0 0;font-size:15px;font-style:italic;color:#5A4630}
.av-cuaderno-tio img{width:36px;height:36px;object-fit:contain;flex:none}
@media (max-width:560px){
  .av-cuaderno-in{padding:22px 16px 18px 36px;background-position:0 0,-8px 0,0 0}
  .av-cuaderno-texto{font-size:21px}
}

/* misión 4: la palabra activa se queda arriba al bajar por las definiciones (con overflow:hidden el sticky no va) */
.av-paso:has(.av-cr-panel){overflow:clip}
.av-cr-panel .av-fb{grid-column:1 / -1;margin:0}
.av-cr-panel .av-fb:empty{display:none}

/* QA 3.11: un botón desactivado se ve desactivado; los enlaces-botón no van subrayados */
.av .btn:disabled,.av-postal .btn:disabled{opacity:.5;cursor:default}
.av-m-acc a.btn{text-decoration:none;display:inline-flex;align-items:center;justify-content:center;font-family:var(--toon)}
/* misión 13: la tabla del código, cada par en columna (el símbolo y debajo la letra): caben los cinco en una fila */
.av-cj-par{flex-direction:column;gap:2px;padding:6px 10px}
.av-cj-par b::before{content:none}
/* misión 14: el bar de la Barceloneta. La escena (el bar y, encima, los personajes, la mesa y las tazas) a la izquierda o
   arriba, siempre a la vista; la conversación al lado o debajo. Posiciones en % de la ilustración */
.av-m-intro.is-bar .av-m-escena{max-width:640px}
.av-paso.is-bar{--ancho:min(1000px,calc(100vw - 32px));width:var(--ancho);margin-left:calc((100% - var(--ancho)) / 2);overflow:clip}
.av-paso.is-bar > .av-fb:empty,.av-paso.is-bar > .av-pista[hidden]{display:none}
.av-br-escena{position:relative;border-radius:16px;overflow:hidden;box-shadow:0 8px 22px rgba(60,40,20,.22);background:#3A2A1E}
.av-br-fondo{display:block;width:100%;height:100%;object-fit:cover}
.av-br-pj{position:absolute;bottom:4%;height:62%;transition:left 1.1s ease-in-out,opacity .6s}
.av-br-pj img{display:block;height:100%;width:auto;filter:drop-shadow(0 6px 6px rgba(30,15,5,.3))}
.av-br-pj.is-camarero{left:22%}
.av-br-escena.is-cam-mesa .av-br-pj.is-camarero{left:49%}
.av-br-pj.is-turista{left:-22%;opacity:0;transition:left 1.3s ease-out,opacity .5s}
.av-br-escena.is-turista .av-br-pj.is-turista{left:5%;opacity:1}
.av-br-pj.is-tio{left:auto;right:3%;bottom:16.7%;height:46%}
.av-br-mesa{position:absolute;right:4%;bottom:-14%;width:30%}
.av-br-mesa > img:not(.av-br-taza){display:block;width:100%;height:auto}
.av-br-taza{position:absolute;left:25%;bottom:76%;width:50%;height:auto;opacity:0;transform:translateY(-14%);transition:opacity .6s,transform .6s}
.av-br-escena.is-lleno .av-br-taza.is-lleno,.av-br-escena.is-vacio .av-br-taza.is-vacio{opacity:1;transform:none}
/* quien habla: un globo con tres puntos sobre su cabeza; entre dientes (Tió), de pensamiento */
.av-br-dice{position:absolute;left:62%;top:-6%;display:flex;gap:4px;padding:6px 9px;border-radius:14px;background:#fff;box-shadow:0 2px 6px rgba(30,15,5,.25);
  opacity:0;transform:scale(.6);transition:opacity .25s,transform .25s;pointer-events:none}
.av-br-dice i{width:6px;height:6px;border-radius:50%;background:#7A2E1A;animation:av-br-puntos 1s infinite}
.av-br-dice i:nth-child(2){animation-delay:.15s}
.av-br-dice i:nth-child(3){animation-delay:.3s}
.av-br-pj.is-tio .av-br-dice{left:auto;right:58%;top:-4%}
.av-br-escena[data-habla="camarero"] .is-camarero .av-br-dice,.av-br-escena[data-habla="turista"] .is-turista .av-br-dice,
.av-br-escena[data-habla="tio"] .is-tio .av-br-dice{opacity:1;transform:none}
.av-br-escena.is-bajo .is-tio .av-br-dice{background:#FBF7F0;border:2px dashed #7A6650}
.av-br-escena.is-bajo .is-tio .av-br-dice i{background:#9C8466}
@keyframes av-br-puntos{0%,60%,100%{transform:none;opacity:.5}30%{transform:translateY(-3px);opacity:1}}
/* se paga: la tarjeta va de Tió al camarero y sale la marca de hecho */
.av-br-pago,.av-br-ok{position:absolute;display:grid;place-items:center;width:7%;aspect-ratio:1;border-radius:50%;opacity:0;pointer-events:none}
.av-br-pago{right:26%;bottom:44%;background:#FFF3D6;border:2px solid #C9A453;color:#7A2E1A}
.av-br-ok{left:54%;bottom:66%;background:#1a7f4b;color:#fff}
.av-br-pago .ico,.av-br-ok .ico{width:60%;height:60%}
.av-br-escena.is-pago .av-br-pago{animation:av-br-pago 1.4s ease-in-out both}
.av-br-escena.is-pago .av-br-ok{animation:av-br-ok .7s 1.2s ease-out both}
@keyframes av-br-pago{0%{opacity:0;transform:scale(.5)}20%{opacity:1;transform:none}75%{opacity:1;transform:translate(-160%,-20%)}100%{opacity:0;transform:translate(-170%,-20%) scale(.8)}}
@keyframes av-br-ok{0%{opacity:0;transform:scale(.4)}50%{opacity:1;transform:scale(1.15)}100%{opacity:0;transform:scale(1)}}
.av-br-escena.is-quieto *{transition:none!important;animation:none!important}
/* la conversación: los de la barra a la izquierda, Tió (que está a la derecha de la escena) a la derecha */
.av-br-der{margin-top:14px}
.av-br-charla{display:flex;flex-direction:column;gap:10px}
.av-br-sep{margin:8px 0 0;text-align:center}
.av-br-sep:first-child{margin-top:0}
.av-br-sep-t{display:inline-flex;align-items:center;gap:8px;margin:0;font-family:var(--toon);font-weight:600;font-size:15px;letter-spacing:.06em;text-transform:uppercase;color:#7A2E1A}
.av-br-sep-t b{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#7A2E1A;color:#fff;font-size:13px;letter-spacing:0}
.av-br-nota{display:block;margin:4px 0 0;font-style:italic;font-size:15px;color:#6A5440}
.av-br-sep.is-nueva,.av-br-linea.is-nueva{animation:av-sube .35s both}
.av-br-linea{display:flex;align-items:flex-end;gap:8px}
.av-br-linea.is-tio{flex-direction:row-reverse}
.av-br-ava{width:42px;height:42px;flex:none;border-radius:50%;background:#F3E3C3 no-repeat;object-fit:contain}
.av-br-ava.is-camarero,.av-br-ava.is-turista{background-size:250% auto;background-position:50% 4%}
.av-br-ava.is-turista{background-position:38% 3%}
.av-br-bocadillo{margin:0;max-width:86%;padding:8px 13px 9px;border-radius:16px 16px 16px 4px;background:#fff;border:1.5px solid #9CC5A8;
  font-family:var(--toon);font-weight:500;font-size:17px;line-height:1.4;color:#2E2418}
.av-br-linea.is-turista .av-br-bocadillo{border-color:#A9BFDF}
.av-br-linea.is-tio .av-br-bocadillo{border-radius:16px 16px 4px 16px;background:#FFF8EC;border-color:#E9B8A0}
.av-br-bocadillo .av-quien{display:block;margin:0 0 1px;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#17694C}
.av-br-linea.is-turista .av-quien{color:#2F5C9A}
.av-br-linea.is-tio .av-quien{color:#B8102E}
.av-br-linea.is-bajo .av-br-bocadillo{border-style:dashed;background:#FBF7F0;font-style:italic;font-size:15.5px;color:#7A6650}
.av-br-bajo{display:block;margin:-1px 0 2px;font-size:12px;font-style:italic;color:#7A6650}
.av-br-bocadillo mark{padding:0 3px;border-radius:4px;background:#FFE08A;color:#3A2A1A;font-weight:700}
/* la pregunta: la tarjeta de papel de la misión 13; resuelta, las opciones ya no son botones (y se traducen) */
.av-br-carta{margin:2px 0}
.av-br-carta.is-quieta{animation:none}
.av-br-carta .av-cj-preg{display:block;margin-top:0}
div.av-cj-opt{cursor:default}
.av-br-fb{margin:12px 0 0}
.av-br-fb:empty{display:none}
.av-br-fb p{margin:0}
.av-br-fb p + p{margin-top:6px}
.av-br-fb.is-no{background:#FFF4E5;border-color:#F0B37A}
.av-br-fb.is-ok{background:#EAF6EE;border-color:#8CCB9F;color:#14423a}
.av-br-fb.is-ok .ico{color:#1a7f4b}
.av-br-fb-t{font-weight:700}
.av-br-fb.is-sacude{animation:av-pl-sacude .4s}
.av-br-tras .av-m-acc{justify-content:center;margin-top:14px}
/* la chuleta del final */
.av-br-memo{max-width:660px;margin:24px auto 0;scroll-margin-top:70px;padding:20px 22px 22px;border-radius:16px;background:#FFFDF7;border:2px solid #E2C99A;
  box-shadow:0 8px 20px rgba(60,40,20,.14);text-align:center;animation:av-sube .5s both}
.av-br-memo h4{margin:0;font-family:var(--toon);font-weight:700;font-size:25px;line-height:1.2;color:#7A2E1A}
.av-br-memo h4 .ico{width:26px;height:26px;margin-right:8px;vertical-align:-4px;color:#B07D12}
.av-br-memo-sub{display:block;margin:4px 0 0;font-size:16px;color:#6A5440}
.av-br-frases{display:grid;gap:10px;margin:16px 0 0;text-align:left}
.av-br-frase{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border-radius:12px;background:#fff;border:1.5px solid #EAD9B6}
.av-br-frase > b{display:inline-grid;place-items:center;width:28px;height:28px;flex:none;border-radius:50%;background:#F3E3C3;font-family:var(--toon);font-size:14px;color:#7A2E1A}
.av-br-frase-es{display:block;margin:0;font-family:var(--toon);font-weight:600;font-size:19px;line-height:1.3;color:#3A2A1A}
.av-br-frase-t{display:block;margin:3px 0 0;font-size:15px;line-height:1.4;color:#6A5440}
.av-br-pagar{display:block;margin:14px 0 0;padding:10px 14px;border-radius:12px;background:#FFF8E6;border:1.5px dashed #E9C46A;font-size:16px;color:#4A3524}
.av-br-memo .av-m-acc{justify-content:center;margin-top:18px}
@media (min-width:900px){
  .av-br-der{margin-top:0}
}
@media (max-width:899px) and (orientation:portrait){
  /* en el móvil la escena se queda arriba mientras se lee la conversación, como mucho un 30 % de la altura (más
     estrecha si hace falta), para que debajo quepan las opciones y la respuesta. La banda blanca de arriba tapa la
     rendija con la barra superior (en el móvil, más baja) */
  .av-br-juego .av-pu-izq{position:sticky;top:47px;z-index:4;margin:0 -6px;padding:4px 6px 8px;background:#fff;box-shadow:0 -8px 0 #fff}
  .av-br-juego .av-br-escena{width:min(100%,45vh);margin:0 auto}
}
@media (min-width:600px) and (max-width:899px) and (orientation:landscape){
  /* teléfono de lado: escena y conversación una al lado de la otra, como en el ordenador */
  .av-br-juego{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start}
  .av-br-juego .av-pu-izq{position:sticky;top:52px}
  .av-br-der{margin-top:0}
}
@media (max-width:560px){
  .av-br-bocadillo{font-size:16px}
  .av-br-ava{width:36px;height:36px}
  .av-br-frase-es{font-size:17.5px}
}
@media (prefers-reduced-motion:reduce){
  .av-br-pj,.av-br-taza,.av-br-dice{transition:none}
  .av-br-dice i,.av-br-sep.is-nueva,.av-br-linea.is-nueva,.av-br-memo,.av-br-fb.is-sacude,.av-br-pago,.av-br-ok{animation:none!important}
  /* sin animación, el pago se ve como la marca de hecho sobre el camarero hasta que vuelve a la barra */
  .av-br-escena.is-pago .av-br-ok{opacity:1}
}

/* ---------------- misión 15: los carteles del Port Olímpic ---------------- */
.av-m-intro.is-puerto .av-m-escena{max-width:760px}
.av-ct-cuenta{display:flex;align-items:center;justify-content:center;gap:8px;margin:0 0 10px;font-family:var(--toon);font-weight:600;font-size:16px;color:#5A3E22}
.av-ct-cuenta .ico{color:#1a7f4b}
.av-ct-cuenta b{display:inline-block;min-width:40px;padding:2px 10px;border-radius:999px;background:#EAF6EE;color:#14623a;text-align:center}
.av-ct-cuenta b.is-sube{animation:av-cj-sello .7s ease-out}
.av-ct-escena{position:relative;border-radius:16px;overflow:hidden;box-shadow:0 8px 22px rgba(60,40,20,.22);background:#1B2440}
.av-ct-fondo{display:block;width:100%;height:100%;object-fit:cover;filter:brightness(.8) saturate(.85);transition:filter 2.2s ease}
.av-ct-escena.is-luces .av-ct-fondo{filter:none}
/* la guirnalda de arriba: apagada hasta el final, después se enciende de izquierda a derecha */
.av-ct-luces{position:absolute;left:0;top:0;width:100%;height:auto;pointer-events:none}
.av-ct-luces path{fill:none;stroke:#1E2A1E;stroke-width:2;opacity:.8}
.av-ct-luces circle{fill:#6E6A62;opacity:.75;transition:fill .5s,opacity .5s,filter .5s}
.av-ct-escena.is-luces .av-ct-luces circle{opacity:1}
.av-ct-escena.is-luces .b-r{fill:#E8455B;filter:drop-shadow(0 0 5px rgba(232,69,91,.9))}
.av-ct-escena.is-luces .b-o{fill:#FFC93C;filter:drop-shadow(0 0 5px rgba(255,201,60,.9))}
.av-ct-escena.is-luces .b-v{fill:#4CBF73;filter:drop-shadow(0 0 5px rgba(76,191,115,.9))}
.av-ct-escena.is-luces .b-a{fill:#4BA8E8;filter:drop-shadow(0 0 5px rgba(75,168,232,.9))}
.av-ct-escena.is-quieto .av-ct-fondo,.av-ct-escena.is-quieto .av-ct-luces circle{transition:none}
/* una marca por cartel: un letrero pequeño con su número; el de ahora late, los revisados llevan la marca verde */
.av-ct-pin{position:absolute;display:grid;place-items:center;width:30px;height:26px;transform:translate(-50%,-50%);border-radius:6px;
  background:#FBF3E2;border:2px solid #7A2E1A;box-shadow:0 3px 8px rgba(0,0,0,.35);font-family:var(--toon);font-weight:700;font-size:14px;color:#7A2E1A;transition:transform .3s,background .3s}
.av-ct-pin .ico{display:none;width:16px;height:16px}
.av-ct-pin.is-activa{transform:translate(-50%,-50%) scale(1.3);background:#FFE08A;z-index:2;animation:av-ct-late 1.6s ease-in-out infinite}
.av-ct-pin.is-hecho{background:#1a7f4b;border-color:#fff;color:#fff}
.av-ct-pin.is-hecho b{display:none}
.av-ct-pin.is-hecho .ico{display:block}
.av-ct-pin.is-nuevo{animation:av-ct-sello .8s ease-out}
@keyframes av-ct-late{50%{box-shadow:0 0 0 6px rgba(255,224,138,.45),0 3px 8px rgba(0,0,0,.35)}}
@keyframes av-ct-sello{0%{transform:translate(-50%,-50%) scale(1.9)}100%{transform:translate(-50%,-50%) scale(1)}}
/* la tarjeta del cartel */
.av-ct-carta .av-cj-tit .ico{width:22px;height:22px;margin-right:8px;vertical-align:-3px;color:#B07D12}
.av-ct-tio{max-width:none;margin:12px 0 0}
.av-ct-img{margin:12px 0 0;border-radius:12px;overflow:hidden;box-shadow:0 6px 16px rgba(60,40,20,.2)}
.av-ct-img img{display:block;width:100%;height:auto}
.av-ct-lugar{display:flex;align-items:center;gap:6px;margin:14px 0 0;font-family:var(--toon);font-weight:600;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:#8A6A3A}
.av-ct-lugar .ico{color:#B8102E}
/* el cartel: cada uno a su manera, siempre bien legible */
.av-ct-cartel{position:relative;margin:8px 0 0;padding:20px 18px;text-align:center;font-family:var(--toon);font-weight:600;font-size:23px;line-height:1.35}
.av-ct-l{margin:0}
.av-ct-l+.av-ct-l{margin-top:8px}
.av-ct-cartel mark{padding:0 5px;border-radius:5px;background:#FFE08A;color:#3A2A1A}
.av-ct-cartel mark.is-ok{background:#CFEFD9;color:#14623a}
.av-ct-cartel del{text-decoration-thickness:3px;text-decoration-color:#E8574B}
.av-ct-cartel.is-arco{padding:24px 18px 20px;border-radius:90px 90px 12px 12px;background:linear-gradient(#24563A,#1B4430);border:4px solid #C9A453;color:#FFF4DC;
  box-shadow:inset 0 0 0 3px #1B4430,inset 0 0 0 5px rgba(201,164,83,.5),0 6px 14px rgba(0,0,0,.25)}
.av-ct-cartel.is-madera{border-radius:10px;color:#FFF4DC;text-shadow:0 1px 0 rgba(60,30,10,.5);
  background:repeating-linear-gradient(180deg,#A86F3E 0 34px,#8E5A30 34px 36px);border:3px solid #6B4423;box-shadow:0 6px 14px rgba(60,30,10,.3)}
.av-ct-cartel.is-info{border-radius:10px;background:#1F4E79;color:#fff;box-shadow:inset 0 0 0 4px #1F4E79,inset 0 0 0 6px #fff,0 6px 14px rgba(0,0,0,.25)}
.av-ct-cartel.is-papel{margin-top:14px;background:#FFFDF6;color:#2A2A2A;border-radius:2px;transform:rotate(-1deg);box-shadow:0 6px 14px rgba(0,0,0,.18);
  font-family:"Caveat",var(--toon);font-weight:700;font-size:31px}
.av-ct-cartel.is-papel::before,.av-ct-cartel.is-papel::after{content:"";position:absolute;top:-10px;width:70px;height:22px;background:rgba(240,220,160,.75);transform:rotate(-6deg)}
.av-ct-cartel.is-papel::before{left:14px}
.av-ct-cartel.is-papel::after{right:14px;transform:rotate(7deg)}
.av-ct-cartel.is-poster{border-radius:12px;background:radial-gradient(circle at 80% 15%,rgba(255,201,60,.35),transparent 40%),linear-gradient(160deg,#1B2A5C,#4A2456);
  color:#FFE7A8;border:3px solid #C9A453;box-shadow:0 6px 14px rgba(0,0,0,.3);font-style:italic}
.av-ct-cartel.is-pizarra{border-radius:6px;background:#2F3B33;border:10px solid #8A5A32;color:#F4F1EA;box-shadow:0 6px 14px rgba(0,0,0,.3);
  font-family:"Caveat",var(--toon);font-weight:700;font-size:32px}
.av-ct-cartel.is-letrero{border-radius:12px;background:#B8102E;color:#fff;border:3px solid #FFC93C;box-shadow:inset 0 0 0 3px #B8102E,inset 0 0 0 5px rgba(255,255,255,.5),0 6px 14px rgba(0,0,0,.25)}
.av-ct-cartel.is-concierto{border-radius:10px;background:linear-gradient(#B8102E 0 12px,#FFF8E6 12px);color:#3A2A1A;border:2px solid #E2C99A;box-shadow:0 6px 14px rgba(0,0,0,.18)}
.av-ct-cartel.is-concierto .av-ct-l:first-child{font-size:.82em;font-weight:500;color:#6A5440}
.av-ct-cartel.is-pizarra mark,.av-ct-cartel.is-papel mark{font-family:var(--toon);font-size:.8em}
/* las palabras que se pueden tocar */
.av-ct-pal{display:inline;padding:0 3px;margin:0 -1px;border:0;border-radius:5px;background:none;font:inherit;color:inherit;text-shadow:inherit;cursor:pointer;
  text-decoration:underline dotted 2px;text-decoration-color:color-mix(in srgb,currentColor 55%,transparent);text-underline-offset:5px;transition:background .15s}
.av-ct-pal:hover:not(:disabled){background:rgba(255,224,138,.35)}
.av-ct-pal.is-sel{background:#FFE08A;color:#3A2A1A;text-shadow:none;text-decoration:none}
.av-ct-pal.is-no{text-decoration:line-through 3px;text-decoration-color:#E8574B;opacity:.6;cursor:default}
/* al corregir: la frase mala se tacha y se va, la buena aparece en su sitio */
.av-ct-texto{display:grid}
.av-ct-viejo,.av-ct-nuevo{grid-area:1/1}
.av-ct-texto.is-cambia .av-ct-viejo{animation:av-ct-sale 1.2s ease forwards}
.av-ct-texto.is-cambia .av-ct-nuevo{animation:av-ct-entra .6s .9s both}
@keyframes av-ct-sale{0%,55%{opacity:1}100%{opacity:0;transform:translateY(-8px)}}
@keyframes av-ct-entra{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.av-ct-sello{position:absolute;z-index:2;right:-8px;top:-12px;display:flex;align-items:center;gap:4px;padding:4px 10px;border-radius:999px;background:#1a7f4b;color:#fff;
  font-family:var(--toon);font-weight:600;font-size:13px;font-style:normal;text-shadow:none;letter-spacing:.04em;box-shadow:0 3px 8px rgba(0,0,0,.25);opacity:0;transform:scale(.4) rotate(-12deg)}
.av-ct-cartel.is-hecho .av-ct-sello{opacity:1;transform:rotate(6deg);transition:opacity .3s 1.4s,transform .4s 1.4s cubic-bezier(.3,1.6,.6,1)}
.av-ct-cartel.is-papel .av-ct-sello,.av-ct-cartel.is-pizarra .av-ct-sello{font-family:var(--toon);font-weight:600;font-size:13px}
.av-ct-opts[hidden]{display:none}
/* pistas, «Comprobar» y la respuesta */
.av-ct-pistas:empty{display:none}
.av-ct-pistas{display:grid;gap:6px;margin:12px 0 0}
.av-ct-pista{display:flex;gap:8px;align-items:flex-start;margin:0;padding:9px 12px;border-radius:10px;background:#FFFBF0;border:1.5px dashed #E9C46A;font-size:15.5px;line-height:1.4;color:#4A3524;animation:av-sube .3s both}
.av-ct-pista .ico{flex:none;margin-top:3px;color:#B07D12}
.av-ct-pista b{font-family:var(--toon);color:#8A6A12}
.av-ct-acc{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:14px 0 0}
.av-ct-acc[hidden],.av-ct-acc [hidden]{display:none}
.av-ct-acc .btn{margin:0;font-family:var(--toon);font-size:16px;padding:9px 20px;border-radius:999px}
.av-ct-fb{display:flex;gap:8px;align-items:flex-start;margin:12px 0 0;padding:11px 14px;border-radius:12px;border:1.5px solid;font-size:16px;line-height:1.4}
.av-ct-fb:empty{display:none}
.av-ct-fb .ico{flex:none;margin-top:3px}
.av-ct-fb p{margin:0}
.av-ct-fb-t{font-family:var(--toon);font-weight:600}
.av-ct-fb.is-casi{background:#FFF4E5;border-color:#F0B37A;color:#7A3E12}
.av-ct-fb.is-visto{background:#FFF8E6;border-color:#E9C46A;color:#5A4630}
.av-ct-fb.is-ok{background:#EAF6EE;border-color:#8CCB9F;color:#14423a}
.av-ct-fb.is-ok .ico{color:#1a7f4b}
.av-ct-fb.is-dada{background:#FFF8E6;border-color:#E9C46A;color:#4A3524}
.av-ct-fb.is-dada .ico{color:#B07D12}
.av-ct-fb.is-sacude{animation:av-pl-sacude .4s}
.av-ct-corr{margin-top:6px;font-family:var(--toon);font-weight:600;font-size:18px;color:#3A2A1A}
.av-ct-corr .av-ct-l::before{content:"«"}
.av-ct-corr .av-ct-l::after{content:"»"}
.av-ct-corr mark{padding:0 4px;border-radius:5px;background:#CFEFD9;color:#14623a}
.av-ct-tras.is-nueva{animation:av-sube .4s both}
.av-ct-porque-t{font-family:var(--toon);font-weight:700;color:#7A2E1A}
.av-ct-porque div p+p{margin-top:4px}
.av-ct-porque p{margin:0}
.av-ct-tras .av-m-acc{justify-content:center;margin-top:14px}
.av-ct-sigue .ico{margin-left:4px}
/* el final: los ocho carteles ya correctos */
.av-ct-final{padding:18px 20px 20px;border-radius:16px;background:#FFFDF7;border:2px solid #E2C99A;box-shadow:0 8px 20px rgba(60,40,20,.14);animation:av-sube .5s both}
.av-ct-final-t{display:block;margin:0;font-family:var(--toon);font-weight:600;font-size:19px;line-height:1.4;color:#3A2A1A;text-align:center}
.av-ct-final .av-bocadillo{max-width:none;margin:12px 0 0}
.av-ct-lista{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px;margin:16px 0 0;padding:0;list-style:none;counter-reset:cartel}
.av-ct-mini{position:relative;padding:10px 12px 10px 38px;border-radius:10px;background:#fff;border:1.5px solid #EAD9B6;font-family:var(--toon);font-weight:500;font-size:15px;line-height:1.35;color:#3A2A1A;counter-increment:cartel}
.av-ct-mini::before{content:counter(cartel);position:absolute;left:10px;top:10px;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#1a7f4b;color:#fff;font-size:12px;font-weight:700}
.av-ct-mini .av-ct-l+.av-ct-l{margin-top:2px}
.av-ct-mini mark{padding:0 3px;border-radius:4px;background:#CFEFD9;color:#14623a;font-weight:600}
.av-ct-final .av-m-acc{justify-content:center;margin-top:18px}
@media (min-width:900px){
  .av-ct-der{margin-top:0}
}
@media (max-width:899px){
  .av-ct-der{margin-top:14px}
  .av-ct-escena{max-width:620px;margin:0 auto}
}
@media (max-width:560px){
  .av-ct-cartel{font-size:20px;padding:16px 12px}
  .av-ct-cartel.is-papel{font-size:27px}
  .av-ct-cartel.is-pizarra{font-size:28px;border-width:8px}
  .av-ct-pin{width:24px;height:21px;font-size:12px;border-radius:5px}
  .av-ct-pin .ico{width:13px;height:13px}
  .av-ct-lista{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){
  .av-ct-fondo,.av-ct-luces circle,.av-ct-pin,.av-ct-cartel.is-hecho .av-ct-sello{transition:none}
  .av-ct-pin.is-activa,.av-ct-pin.is-nuevo,.av-ct-cuenta b.is-sube,.av-ct-pista,.av-ct-fb.is-sacude,.av-ct-tras.is-nueva,.av-ct-final{animation:none!important}
}

.av-m-final-reto{display:block;margin:18px 0 0;font-family:var(--toon);font-weight:600;font-size:20px;text-align:center;color:var(--oro)}
.av-m-final-reto+.av-premio-acc{margin-top:12px}

.av-sopa-aviso{display:flex;gap:8px;align-items:flex-start;max-width:540px;margin:12px auto 0;padding:9px 12px;border-radius:10px;background:#FFF8E6;border:1.5px solid #E9C46A;font-size:15.5px;line-height:1.4;color:#4A3524}
.av-sopa-aviso[hidden]{display:none}
.av-sopa-aviso.is-boton{justify-content:center;padding:0;background:none;border:0}
.av-sopa-aviso.is-boton .btn{margin:0;font-family:var(--toon);font-size:16px;padding:9px 20px;border-radius:999px}
.av-sopa-aviso .ico{flex:none;margin-top:3px;color:#B07D12}
.av-letra.is-pista:not(.is-found):not(.is-shown){background:#FFE08A;color:#3A2A1A;box-shadow:0 0 0 2px #E9A91C;animation:av-sopa-pista 1.4s ease-in-out infinite}
.av-sopa-lista li.is-pista{background:#FFF4D6;border-color:#E9A91C;box-shadow:0 0 0 2px rgba(233,169,28,.3)}
@keyframes av-sopa-pista{50%{box-shadow:0 0 0 5px rgba(233,169,28,.35)}}
@media (prefers-reduced-motion:reduce){.av-letra.is-pista{animation:none!important}}
.av-prueba-hecho{position:fixed;left:16px;bottom:16px;z-index:50;background:#fff;border:2px dashed #B8102E;color:#B8102E;font-family:var(--toon);font-size:14px;padding:8px 14px;border-radius:999px;box-shadow:0 4px 12px rgba(0,0,0,.25)}

.av-ct-ojo{margin-top:10px;padding:9px 12px;border:2px solid #E8574B;border-radius:4px;background:#fff;font-style:italic;color:#3A2A1A}
.av-ct-ojo p+p{margin-top:4px}
.av-ct-ojo del{text-decoration-thickness:2px;text-decoration-color:#E8574B;color:#8A6A5A}
.av-ct-ojo b{color:#14623a}
.av-ct-opts.is-sin-hover .av-cj-opt:hover:not(:disabled){border-color:#E2C99A;background:#fff}
.av-esc-barra{cursor:pointer;touch-action:none;position:relative;overflow:visible}
.av-esc-barra::before{content:"";position:absolute;left:0;right:0;top:-10px;bottom:-10px}
.av-esc-preg.is-bloqueada .av-opt{opacity:.6;cursor:not-allowed}
.av-esc-preg{margin:0 0 14px}
.av-pl-dicen{position:absolute;z-index:3;width:min(300px,76vw);transform:translate(-50%,-100%);display:grid;gap:8px;pointer-events:auto}
.av-pl-dice{position:relative;margin:0;padding:8px 12px;border-radius:14px;background:#fff;border:2px solid #E2C99A;box-shadow:0 4px 12px rgba(60,40,20,.28);font-size:15px;line-height:1.3;color:#3A2A1A;animation:av-sube .35s both}
.av-pl-dice b{display:block;font-family:var(--toon);font-size:13px;color:#B8102E}
.av-pl-dice.is-pedro{border-color:#8CCB9F}
.av-pl-dice.is-pedro b{color:#1a7f4b}
.av-pl-dice:last-child::after{content:"";position:absolute;left:50%;bottom:-11px;width:16px;height:16px;margin-left:-8px;background:#fff;border-right:2px solid #E2C99A;border-bottom:2px solid #E2C99A;transform:rotate(45deg)}
.av-pl-dice.is-pedro:last-child::after{border-color:#8CCB9F}
@media (max-width:560px){.av-pl-dice{font-size:14px;padding:6px 10px}}
@media (prefers-reduced-motion:reduce){.av-pl-dice{animation:none}}

.av-cuenta .name-form h2,.av-cuenta .av-trad{font-family:var(--toon)}
.av-cuenta-check{display:flex;gap:9px;align-items:flex-start;margin-top:12px;font-size:14px;line-height:1.35;color:var(--ink-2);cursor:pointer}
.av-cuenta-check input{flex:none;width:18px;height:18px;margin:0;accent-color:#C8213A}
.av-cuenta .name-form p.av-cuenta-error{margin:12px 0 0;font-size:14px;font-weight:600;color:#B8102E}
.av-cuenta .name-form p.av-cuenta-nota{margin:10px 0 0;font-size:13px}
.av-cuenta-codigo{font-size:26px;letter-spacing:.3em;text-align:center;font-variant-numeric:tabular-nums}
.av-cuenta-enlaces{display:flex;justify-content:space-between;gap:12px;margin-top:10px}
.av-cuenta-enlace{padding:6px 0;border:0;background:none;font:inherit;font-size:13.5px;font-weight:600;color:#B8102E;cursor:pointer}
.av-cuenta-enlace:disabled{color:var(--ink-3);cursor:default}
.av-cuenta-nombre{display:flex;gap:8px}
.av-cuenta-nombre .name-input{flex:1;min-width:0}
.av-cuenta-acciones span{flex:1}
.btn.is-ocupado{opacity:.6}
.av-ig{margin-top:10px;padding-top:10px;border-top:1px dashed #E2C99A;font-size:14.5px}
.av-ig p{margin:0 0 6px!important;font-size:14.5px!important}
.av-ig-perfil{display:inline-flex;align-items:center;gap:7px;margin:0 0 10px;font-family:var(--toon);font-weight:700;font-size:17px;color:#B8102E;text-decoration:none}
.av-ig-perfil .ico{width:20px;height:20px}
.av-ig-codigo{display:flex;align-items:center;gap:10px;margin:0 0 10px}
.av-ig-codigo code{flex:1;min-width:0;padding:8px 12px;border:1.5px dashed #C9A15C;border-radius:10px;background:#FFF8E7;font-family:var(--toon);font-weight:700;font-size:19px;letter-spacing:.06em;text-align:center;color:#3A2A1A;user-select:all}
.av-ig-dm{display:block;margin:0 0 8px;text-align:center}
.av-ig-nota{color:#5A4A3A}
p.av-ig-aviso{padding:8px 10px;border-radius:10px;background:#FDECEE;font-weight:600;color:#96091F}
.av-ig-ok{display:flex;align-items:center;gap:7px;flex-wrap:wrap;font-weight:600;color:#1F7A4D}
.av-ig-ok .ico{width:20px;height:20px}
.av-ig-dm,.av-ig-dm:hover{text-decoration:none}
.av-marca{display:inline-flex;align-items:center;gap:5px;font-family:var(--toon);font-weight:600;font-size:13px;letter-spacing:.01em;text-decoration:none;white-space:nowrap}
.av-marca .ico{width:15px;height:15px;flex:none}
.topbar-row{position:relative}
.av-marca.is-bar{flex:none;padding:3px 10px 3px 8px;border-radius:999px;color:#8B6F47;border:1px solid rgba(139,111,71,.35)}
body.av-noche .av-marca.is-bar{background:rgba(16,26,58,.52);color:rgba(255,241,205,.92);border-color:rgba(255,201,60,.32)}
@media (min-width:900px){.av-marca.is-bar{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}.av-topbar .topbar-title{max-width:calc(50% - 100px)}}
@media (max-width:620px){.av-marca.is-bar{font-size:11.5px;padding:2px 8px 2px 6px}.av-marca.is-bar .ico{width:13px;height:13px}}
.av-marca.is-lado{display:none;position:fixed;top:50%;z-index:40;color:#8B6F47;opacity:.6}
.av-marca.is-izq{left:22px;transform:translate(-50%,-50%) rotate(-90deg)}
.av-marca.is-der{right:22px;transform:translate(50%,-50%) rotate(90deg)}
@media (min-width:1000px){body.av-dia-page .av-marca.is-lado{display:inline-flex}}
.av-marca.is-pie{display:flex;justify-content:center;margin:18px auto 4px;color:#8B6F47;opacity:.9}
