#aventura{color:#452671}
#aventura .barra{position:sticky;top:8px;z-index:5;padding:10px;background:#fffaf2ed;border:1px solid white;border-radius:22px;box-shadow:0 5px 16px #7650a51c;backdrop-filter:blur(10px)}
#aventura .barra h2{font-size:25px}
#aventura .volver{background:#fff;border:1px solid #e4d3f8;border-radius:15px;box-shadow:0 3px #d7c2eb;color:#542f83}
#aventura .chip{background:linear-gradient(#ffe98b,#ffd252);border:1px solid #fff4c0;padding:7px 12px;color:#542f83}
.aventura-intro{text-align:center;margin:22px 0 16px}
.aventura-intro h3{font-size:26px;margin:0 0 5px}
.aventura-intro p{margin:0;color:#715589;font-size:14px}
#aventura .medallero{border:1px solid #fff;border-radius:22px;background:#fffaf0e8;box-shadow:0 4px #e5d6ef;min-height:74px;padding:14px;gap:10px}
#aventura .medallero .med{font-size:44px}
#aventura .medallero .vacio{display:flex;align-items:center;justify-content:center;width:100%;gap:14px;color:#684586}
#aventura .medallero .vacio .ico{font-size:44px;flex:none}
#aventura .mapa{padding:25px 0 42px}
#aventura .mapa:before{display:none}
#aventura .nodo{width:112px;height:154px;margin:0 auto;isolation:isolate}
#aventura .nodo:after{content:"";position:absolute;width:8px;height:110px;left:52px;top:84px;z-index:-1;background:repeating-linear-gradient(to bottom,#c1a0e1 0 9px,transparent 9px 17px);transform-origin:top;transform:rotate(var(--ruta,0deg))}
#aventura .nodo:last-child:after{display:none}
#aventura .bola{position:relative;width:96px;height:96px;border:3px solid #fff;border-radius:32px;background:linear-gradient(#fcf5ff,#e3d1fc);box-shadow:0 6px #b697d5,0 11px 14px #72519822;color:#503078}
#aventura .bola .e{font-size:62px;line-height:1}
#aventura .bola .n{position:absolute;bottom:-9px;left:50%;transform:translateX(-50%);min-width:31px;padding:3px 8px;border-radius:12px;background:#fffaf0;font-size:16px;box-shadow:0 2px #d8c2ee;color:#503078}
#aventura .nodo.hecho .bola{background:linear-gradient(#f1fff6,#b7efd9);box-shadow:0 6px #80c9b2,0 10px 16px #76529e1c;color:#452671}
#aventura .nodo.actual .bola{width:110px;height:110px;border:4px solid #fff1a7;background:linear-gradient(#ae70ff,#7c3ada);box-shadow:0 7px #5e25ac,0 0 0 7px #ffe37177,0 14px 24px #803dd744}
#aventura .nodo.actual .bola .e{font-size:74px}
#aventura .nodo.actual .bola .n{background:#ffe378;font-size:19px}
#aventura .nodo.bloqueado .bola{background:linear-gradient(#f9f6ff,#e6deed);box-shadow:0 5px #c8bbd8;border-color:#fffc;color:#8e7d9f}
#aventura .nodo.bloqueado .e{filter:grayscale(.65);opacity:.48}
#aventura .nodo.cofre .bola{background:linear-gradient(#fff7c6,#ffda76);box-shadow:0 6px #d9b250}
#aventura .nodo.cofre.bloqueado .bola{background:linear-gradient(#faf4de,#e9dfc7);box-shadow:0 5px #cec0a5}
#aventura .mascota{font-size:66px;top:23px;right:-58px;z-index:2;filter:drop-shadow(0 3px 2px #77499220)}
#aventura .estrellitas{display:flex;gap:2px;font-size:21px;margin-top:15px;min-height:23px}
.nivel-aqui{position:absolute;top:-23px;background:#6633af;color:white;border:2px solid white;border-radius:99px;padding:3px 12px;font-size:12px;white-space:nowrap;z-index:3}
#aventura .mas-niveles{border:1px solid white;border-radius:20px;color:#57358b;box-shadow:0 4px #d4bfe9;background:#fffc}
#aventura .bola:focus-visible{outline:4px solid #53218c;outline-offset:9px}
@media(max-width:360px){#aventura .barra h2{font-size:22px}#aventura .mascota{right:-40px;font-size:52px}}
/* Encabezado compartido de las siete pantallas internas. */
.pantalla > .barra{position:sticky;top:8px;z-index:5;display:flex;align-items:center;gap:10px;padding:10px;background:#fffaf2ed;border:1px solid white;border-radius:22px;box-shadow:0 5px 16px #7650a51c;backdrop-filter:blur(10px);color:#452671}
.pantalla > .barra h2{font-size:clamp(18px,4.5vw,25px);line-height:1.15;flex:1;min-width:0;text-wrap:balance}
.pantalla > .barra .volver{display:grid;place-items:center;flex:0 0 46px;width:46px;height:46px;padding:4px;background:#fff;border:1px solid #e4d3f8;border-radius:15px;box-shadow:0 3px #d7c2eb}
.volver img{display:block;width:36px;height:36px;filter:drop-shadow(0 2px 1px #69329925)}
.pantalla > .barra .chip{flex-shrink:0;background:linear-gradient(#ffe98b,#ffd252);border:1px solid #fff4c0;padding:7px 10px;color:#542f83;font-size:14px}
.pantalla > .barra .chip:empty{display:none}
.pantalla > .barra .vidas{font-size:14px;letter-spacing:0}
.volver:focus-visible{outline:3px solid #7438c2;outline-offset:4px}
@media(max-width:380px){.pantalla > .barra{gap:7px}.pantalla > .barra .vidas{font-size:12px;padding:6px}.pantalla > .barra h2{font-size:18px}}
/* Selección de retos */
.reto-config{margin:22px 0;padding:24px;background:linear-gradient(145deg,#fffdf8f5,#faf3fff0);border:2px solid #fff;border-radius:30px;box-shadow:0 7px 0 #dac9ea80,0 16px 35px #7546a518;color:#523179}
.reto-presentacion{text-align:center;margin-bottom:20px}
.reto-icono{display:block;font-size:96px;line-height:1;margin:0 auto 12px;filter:drop-shadow(0 7px 5px #7544a322)}
.reto-presentacion h3{font-size:25px;line-height:1.15;margin:0 0 8px;color:#532b83}
.reto-presentacion p{font-size:14px;margin:0;color:#85669b}
.reto-config .nota{color:#78608f;font-size:14px;line-height:1.55;text-align:center;margin:12px 0 18px}
#t-config > .nota,#m-config > .nota,#x-config > .nota,#s-config > .nota,#r-config > .nota{display:none}
.reto-config .tablas-sel{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0 24px}
.reto-config .tsel{position:relative;width:100%;height:58px;border:2px solid #e7d8f5;border-radius:18px;background:linear-gradient(#fff,#f4eafa);box-shadow:0 4px #d9c5e9;color:#734899;font-size:23px;transition:transform .15s,background .15s}
.reto-config .tsel.on{background:linear-gradient(#b681fc,#7a3fda);border-color:#d8b9ff;color:white;box-shadow:0 4px #5c2fa2,0 6px 10px #793dd526}
.reto-config .tsel.on:after{content:'✓';position:absolute;right:5px;top:2px;font-size:12px;color:#ffe889}
.reto-config .btn{min-height:58px;border:2px solid #fff0b4;border-radius:19px;background:linear-gradient(#ffe887,#ffc83e);color:#623782;box-shadow:0 5px #d7a638;font-size:18px}
.reto-config .btn .ico{font-size:29px;vertical-align:middle}
.reto-config .fila-btn{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.reto-config .fila-btn .btn{background:linear-gradient(#fff,#f0e2ff);border-color:#e6d2f9;box-shadow:0 4px #d2b8e6;font-size:16px;padding:12px 8px}
.reto-config .fila-btn .amar{background:linear-gradient(#fff0b1,#ffdb71);border-color:#fff1bc;box-shadow:0 4px #dfbc60}
.reto-config .fila-btn .uva{background:linear-gradient(#b981f6,#8343d7);color:#fff;border-color:#dec0ff;box-shadow:0 4px #622fab}
.reto-config button:active{transform:translateY(3px);box-shadow:none}
.reto-config button:focus-visible{outline:3px solid #7438c2;outline-offset:4px}
@media(max-width:380px){.reto-config{padding:18px 14px}.reto-config .tablas-sel{gap:10px}.reto-presentacion h3{font-size:22px}.reto-icono{font-size:80px}}
@media(prefers-reduced-motion:reduce){.reto-config .tsel{transition:none}}
.reto-config .tsel.on:after{content:none}
#t-juego{padding:22px;background:#fffaf3dc;border:2px solid white;border-radius:30px;box-shadow:0 7px #dac9ea80;color:#532b83}
#t-juego .tiempo{height:13px;border:2px solid white;background:#e7d9f4;box-shadow:0 2px #d4bfe4;margin-bottom:22px}
#t-juego .tiempo i{background:linear-gradient(90deg,#9952e9,#ca9aff)}
#t-juego .pregunta{position:relative;padding:38px 10px 30px;border:2px solid #e8d6fa;border-radius:25px;background:linear-gradient(#fff,#f5ebff);box-shadow:0 5px #dcc4ee;color:#542783;font-size:clamp(36px,8vw,52px)}
#t-juego .pregunta:before{content:'¿Cuánto es?';display:block;font-size:14px;letter-spacing:0;color:#9271aa;margin-bottom:8px}
#t-juego .opciones{gap:15px;margin-top:24px}
#t-juego .op{border:2px solid #dfc5fa;border-radius:22px;background:linear-gradient(#bd8af8,#8546d8);color:#fff;box-shadow:0 5px #622eac;padding:18px 6px;font-size:29px}
#t-juego .op.bien{background:linear-gradient(#c4f9d9,#7cddb1);border-color:#e2ffef;color:#246647;box-shadow:0 5px #59b58f}
#t-juego .op.mal{background:linear-gradient(#ffd5df,#f697af);border-color:#ffe5ec;color:#8c3150;box-shadow:0 5px #cf7191}
#t-juego .racha{color:#78519a;min-height:30px;font-size:16px;margin-top:20px}
#memorama .memo{gap:14px;padding:16px;background:#fffaf3a8;border:2px solid #fff;border-radius:28px;box-shadow:0 6px #dac9ea60}
#memorama .carta{aspect-ratio:1/1.08;min-width:0}
#memorama .carta .f,#memorama .carta .b{border:2px solid #e1c5ff;border-radius:20px;box-shadow:0 5px #6934aa}
#memorama .carta .f{background:radial-gradient(ellipse at 30% 10%,#c895ff,transparent 65%),linear-gradient(#a25aec,#7738c9);font-size:clamp(36px,9vw,56px)}
#memorama .carta .f:before{content:'';position:absolute;inset:7px;border:1px solid #efd9ff69;border-radius:13px;pointer-events:none}
#memorama .carta .b{background:linear-gradient(#fffdf7,#f3e6ff);color:#593084;border-color:#fff;box-shadow:0 5px #d5b8ec;font-size:clamp(18px,4.6vw,26px)}
#memorama .carta.hecha{opacity:1}
#memorama .carta.hecha .b{background:linear-gradient(#fff3b8,#ffdc70);color:#714794;border-color:#fff3bd;box-shadow:0 5px #dab956}
#memorama .msg{color:#754b99}
#capa{background:#39245675;backdrop-filter:blur(7px)}
#tarjeta,#t-final .final,#m-final .final{position:relative;background:radial-gradient(ellipse at top,#f1ddff,transparent 60%),linear-gradient(#fffcf4,#fff9ef);border:3px solid white;border-radius:32px;box-shadow:0 8px #c3a1df,0 22px 65px #40216c38;padding:28px 24px;color:#593183;text-align:center}
#tarjeta .grande,#t-final .grande,#m-final .grande{font-size:100px;margin:2px 0 16px;filter:drop-shadow(0 7px 5px #9562b526)}
#tarjeta h3,#t-final h3,#m-final h3{font-size:27px;line-height:1.15;color:#552d81;margin:12px 0}
#tarjeta .est{font-size:42px;margin:18px 0;filter:drop-shadow(0 3px 1px #ce9d3733)}
#tarjeta .nota,#t-final p,#m-final p{color:#886499;font-size:16px;line-height:1.5}
#tarjeta .btn,#t-final .btn,#m-final .btn{border:2px solid #fff1b6;border-radius:20px;background:linear-gradient(#ffe986,#ffcd44);color:#623782;box-shadow:0 5px #d6a936;min-height:55px}
#tarjeta .btn.sec,#t-final .btn.sec,#m-final .btn.sec{background:linear-gradient(#fff,#f2e7ff);border-color:#e6d2f9;box-shadow:0 4px #d2b8e6;color:#755090}
@media(max-width:380px){#t-juego{padding:16px}#memorama .memo{gap:10px;padding:10px}#memorama .carta .f,#memorama .carta .b{border-radius:15px}#tarjeta{padding:22px 18px}}
/* Operaciones y teclado */
.operacion{--tinta:#593783;--lapiz:#8962a6;--escribiendo:#8544c6;--activa-fondo:#ffedb2;--bien:#348d70}
.operacion .tablero{background:linear-gradient(145deg,#fffef9,#f9f0ff);border:2px solid white;border-radius:28px;box-shadow:0 6px #d9c3e9,0 12px 25px #75459915}
.operacion .celda.activa{border:2px solid #e3b94b;border-radius:10px;background:linear-gradient(#fff4c3,#ffe18a);color:#754196;box-shadow:0 2px #d9b95c}
.operacion .pista{background:#fffaf3ef;border:2px solid white;border-radius:22px;box-shadow:0 4px #dfcbea;padding:16px}
.operacion .pista li{border:1px solid #e2cdef;background:#f6edff;color:#704496;border-radius:10px}
.operacion .pista li.marca{background:#ffe38a;border-color:#ecc966}
.op-juego .btn{background:linear-gradient(#fff,#f1e4ff);border:2px solid #e7d2f8;color:#704497;border-radius:18px;box-shadow:0 4px #cfb3e3}
.op-juego .btn .ico{font-size:27px;vertical-align:middle}
.teclado{background:#fffaf4f5;backdrop-filter:blur(12px);border-top:2px solid #fff;border-radius:25px 25px 0 0;box-shadow:0 -5px 25px #76539a20}
.teclado button,#caida .pad button{border:2px solid #e1c8f5;border-radius:16px;background:linear-gradient(#fff,#f0e2ff);color:#673891;box-shadow:0 4px #ceb1e2}
.teclado .ok{background:linear-gradient(#b982f5,#8542d4);border-color:#dbb8ff;color:#fff;box-shadow:0 4px #63309c}
.teclado .del{background:linear-gradient(#fff0ad,#ffd462);border-color:#fff0b0;color:#75428f;box-shadow:0 4px #d4ae4f}
/* Escenario espacial */
#caida .cielo{background:#352958 url('./espacio.svg') center/cover;border:3px solid #d1b7fa;border-radius:27px;box-shadow:0 7px #a98aca;isolation:isolate}
#caida .piso{height:20px;border:0;border-radius:50% 50% 0 0;background:radial-gradient(ellipse at 18% 80%,#77648e 0 9%,transparent 10%),radial-gradient(ellipse at 71% 70%,#9d87b6 0 8%,transparent 9%),linear-gradient(#e4cee9,#ae97c5);box-shadow:0 -4px 0 #f1dfff70,0 -9px 20px #d4afff55;pointer-events:none}
#caida .barra-caida{background:linear-gradient(#fff,#efe0ff);border:2px solid #dac0fb;border-radius:15px;color:#633c8b;box-shadow:0 4px #37234b55}
#caida .barra-caida.objetivo{background:linear-gradient(#fff1b6,#ffdb73);border-color:#fff0aa;color:#623686;box-shadow:0 0 14px #ffd66c50,0 4px #8b643c55}
#caida .barra-caida .hueco{color:#9045c1;border-color:#aa66d7}
#caida .meta .caja{background:#fffaf3;border:2px solid #fff;border-radius:19px;box-shadow:0 4px #d9c1ea;color:#6d4190}
#caida .msg{color:#69418a}
/* Junta 3: gemas y objetivo */
#match .m3{max-width:480px;gap:8px;padding:14px 10px;background:#fffaf2df;border:2px solid white;border-radius:26px;box-shadow:0 6px #d8c0e9;margin:18px auto}
#match .ficha{position:relative;isolation:isolate;border:0;border-radius:0;background:none!important;box-shadow:none;color:#482765;font-size:clamp(10px,2.8vw,15px);overflow:visible}
#match .gema-arte{position:absolute;inset:0;background-repeat:no-repeat;z-index:-1;pointer-events:none}
#match .gema-numero{position:relative;font-weight:700;letter-spacing:-.5px;pointer-events:none}
#match .gema-0 .gema-numero{top:9%}
/* La gema de la misión se busca de un vistazo: contorno claro pegado a la
   silueta (sombras sin desenfoque, que siguen el recorte del dibujo) y el
   resplandor dorado encima. En em, para que crezca con la ficha. */
#match .ficha.meta-obj .gema-arte{filter:
  drop-shadow(.085em 0 0 #fffbe8) drop-shadow(-.085em 0 0 #fffbe8)
  drop-shadow(0 .085em 0 #fffbe8) drop-shadow(0 -.085em 0 #fffbe8)
  drop-shadow(0 0 6px #ffd34d) drop-shadow(0 0 16px #ffab1fcc)}
#match .ficha.meta-obj:after{content:'★';position:absolute;right:-1px;top:-5px;width:17px;height:17px;display:grid;place-items:center;border-radius:50%;background:#ffe070;color:#734299;border:1.5px solid white;box-shadow:0 2px #bf9549;font-size:12px;line-height:1;pointer-events:none}
#match .ficha.sel{transform:scale(.92);outline:3px solid #8543d3;outline-offset:2px;border-radius:14px}
#match .ficha:focus-visible{outline:3px solid #8543d3;outline-offset:2px;border-radius:14px}
#match .meta .caja{background:#fffaf3;border:2px solid white;border-radius:20px;box-shadow:0 4px #d6bce6;color:#633685;padding:12px 18px}
#match .meta .caja:first-child{background:linear-gradient(#fff3bd,#ffe292);border-color:#fff7d7}
#match .meta .caja small{color:#825e96}
#match .msg{color:#6e4390;font-size:16px}
#match #g-juego .btn{background:linear-gradient(#fff,#f0e1ff);border:2px solid #e4cef7;border-radius:18px;box-shadow:0 4px #ceb2e1;color:#6e4292}
#match #g-juego .btn .ico{font-size:26px;vertical-align:middle}
#match .pista{background:#fffaf4;border:2px solid white;border-radius:20px;color:#6d448c}

/* Tarjeta de logro: 3 botones y scroll si no cabe */
#capa{overflow-y:auto;padding:20px 16px;align-items:center}
#capa.cerrable{cursor:pointer}
#tarjeta{cursor:default;margin:auto;max-height:none}
#tarjeta .btn.full{margin-top:10px;width:100%}
#tarjeta .btn.full:first-of-type{margin-top:18px}
#tarjeta .nota b{color:#5b2f88}
@media(max-height:640px){
  #tarjeta{padding:20px 18px}
  #tarjeta .grande{font-size:74px;margin:0 0 8px}
  #tarjeta h3{font-size:23px;margin:6px 0}
  #tarjeta .est{font-size:34px;margin:10px 0}
  #tarjeta .btn{min-height:48px}
}
