main section{max-width:var(--ancho);margin:0 auto;padding:1.4rem 1.1rem 2rem}
.aviso-proto{background:var(--tarjeta);border-left:4px solid var(--amarillo);padding:.6em .8em;border-radius:8px;font-size:.9rem}
.tarjeta-app{background:var(--tarjeta);border-radius:var(--radio);padding:1.1rem;margin:1rem 0}
.tarjeta-app h2{font-size:1.7rem}
.temas{display:grid;gap:.6rem}
.tema-btn{display:flex;justify-content:space-between;align-items:center;width:100%;text-align:left;background:var(--fondo-arriba);color:var(--blanco);border:2px solid #34446a;border-radius:10px;padding:.8em 1em;font:600 1rem var(--texto);cursor:pointer}
.tema-btn small{color:var(--gris);font-weight:400}
.cabecera-test{display:flex;justify-content:space-between;align-items:center}
.rotulo{font-size:1.3rem;text-transform:uppercase}
.reloj{font:1.3rem var(--titulos);background:var(--amarillo);color:var(--tinta);padding:.1em .5em;border-radius:6px}
.reloj.poco{background:var(--rojo);color:#fff}
.barra-prog{height:6px;background:var(--tarjeta);border-radius:3px;margin:.5rem 0 1rem;overflow:hidden}
.barra-prog div{height:100%;width:0;background:var(--amarillo);transition:width .2s}
.enunciado{font:600 1.15rem/1.4 var(--texto);text-transform:none;margin-bottom:1rem}
.opciones{display:grid;gap:.6rem}
.op{display:flex;gap:.7em;align-items:flex-start;width:100%;text-align:left;background:var(--tarjeta);color:var(--blanco);border:2px solid transparent;border-radius:10px;padding:.8em .9em;font:1rem/1.4 var(--texto);cursor:pointer;min-height:48px}
.op b{font-family:var(--titulos);font-weight:400;color:var(--amarillo);min-width:1.2em}
.op.marcada{border-color:var(--amarillo)}
.op.bien{border-color:var(--verde);background:#1d4a3a}
.op.mal{border-color:var(--rojo);background:#4a2330}
.op[disabled]{cursor:default}
.feedback{margin-top:1rem;padding:.8rem;border-radius:10px;background:var(--fondo-arriba);border:1px solid #34446a;font-size:.95rem}
.feedback .fuente{display:block;margin-top:.4em;font-size:.85rem;color:var(--gris)}
.acciones{display:flex;justify-content:space-between;gap:.6rem;margin-top:1.2rem}
.enlace{background:none;border:0;color:var(--gris);text-decoration:underline;font:.9rem var(--texto);padding:.5em 0;cursor:pointer}
.nota-grande{font:4.5rem/1 var(--titulos);color:var(--amarillo)}
.nota-grande small{font-size:1.6rem;color:var(--gris)}
.apto{color:var(--verde)}.noapto{color:var(--rojo)}
.tabla{width:100%;border-collapse:collapse;margin-bottom:1.2rem;font-size:.95rem}
.tabla th,.tabla td{padding:.45em .3em;border-bottom:1px solid #34446a;text-align:center}
.tabla th:first-child,.tabla td:first-child{text-align:left}
.fallo{background:var(--tarjeta);border-radius:10px;padding:.8rem;margin-bottom:.7rem;font-size:.93rem}
.fallo p{margin:.3em 0}
.pie-app{max-width:var(--ancho);margin:0 auto;padding:1rem 1.1rem 2rem}
.estado-nota{font:1.5rem var(--titulos);text-transform:uppercase;margin:.3rem 0 .6rem}
.barra .idioma{display:flex;gap:.3rem}
.idioma button{background:transparent;color:var(--blanco);border:2px solid #34446a;border-radius:8px;padding:.3em .7em;font:700 .9rem var(--texto);cursor:pointer;min-height:36px}
.idioma button.on{background:var(--amarillo);color:var(--tinta);border-color:var(--amarillo)}
.ambito{font-size:1.3rem;margin:1.2rem 0 .5rem;color:var(--amarillo)}
details.tema{background:var(--fondo-arriba);border:2px solid #34446a;border-radius:10px;margin-bottom:.5rem}
details.tema summary{padding:.75em 1em;cursor:pointer;font-weight:600;display:flex;justify-content:space-between;gap:.5em}
details.tema summary small{color:var(--gris);font-weight:400;white-space:nowrap}
details.tema .subs{display:grid;gap:.4rem;padding:0 .7em .8em}
.sub-btn{display:flex;justify-content:space-between;gap:.5em;width:100%;text-align:left;background:var(--tarjeta);color:var(--blanco);border:0;border-radius:8px;padding:.65em .8em;font:.95rem var(--texto);cursor:pointer;min-height:44px}
.sub-btn.todo{border:1px solid var(--amarillo)}
.sub-btn small{color:var(--gris);white-space:nowrap}
.boton[disabled]{opacity:.45;cursor:default}
.barra{position:sticky;top:0;z-index:20}
.cab-der{display:flex;gap:.4rem;align-items:center}
.b-home{background:var(--amarillo);color:var(--tinta);border:0;border-radius:8px;padding:.35em .8em;font:700 .9rem var(--texto);cursor:pointer;min-height:36px}
.b-home::before{content:"⌂ ";}
#b-otra{margin:.6rem 0 1rem}
.sub-btn.amb{margin-bottom:.5rem}
details.tema summary{padding-right:2.6em;font-size:1.05rem}
.logo-inicio{cursor:pointer;text-decoration:none;color:inherit}
.logo-inicio:focus-visible{outline:3px solid #fff;outline-offset:3px}

/* Exámenes oficiales */
.ex-of{margin:.6rem 0 .9rem}
.ex-of .pequeno{margin:.35rem 0 0}
.etiqueta-trad{display:inline-block;font-size:.78rem;font-weight:700;color:var(--tinta);background:var(--amarillo);border-radius:6px;padding:.1em .5em;margin:0 0 .3rem}
.orig{margin:.2rem 0 .8rem;border:1px solid var(--gris);border-radius:10px;padding:.4rem .7rem;font-size:.92rem}
.orig summary{cursor:pointer;color:var(--amarillo);font-size:.95rem}
.orig ol{margin:.3rem 0 .2rem;padding-left:1.4rem}

/* preview */
html[lang="es"] [data-lg="ca"],html[lang="ca"] [data-lg="es"]{display:none}
.tarjeta-resp{display:block;text-decoration:none;color:var(--blanco);border:2px solid var(--amarillo)}
.tarjeta-resp strong{display:block;color:var(--amarillo);font-family:var(--titulos);font-weight:400;text-transform:uppercase;font-size:1.25rem;margin-bottom:.2rem}
