/* Diseños listos para imprimir: se eligen desde el generador de profesores. */
.examen-generado {
  position: relative;
  overflow: hidden;
  isolation: isolate;
}

.examen-generado::after {
  content: "";
  pointer-events: none;
  position: absolute;
  z-index: 0;
  inset: 0;
}

.examen-generado > * {
  position: relative;
  z-index: 1;
}

.franja-diseno {
  min-height: 42px;
  display: grid;
  place-items: center;
  margin: -10px -10px 20px;
  padding: 7px 48px;
  letter-spacing: 18px;
  font-size: 22px;
  line-height: 1;
  border-radius: 18px 18px 12px 12px;
}

.diseno-clasico .franja-diseno { display: none; }

.diseno-matematicas {
  border: 3px solid #2f80ed;
  background-color: #fafdff;
  background-image:
    linear-gradient(rgba(69, 143, 235, .12) 1px, transparent 1px),
    linear-gradient(90deg, rgba(69, 143, 235, .12) 1px, transparent 1px);
  background-size: 26px 26px;
}
.diseno-matematicas::after {
  background:
    radial-gradient(circle at 3% 97%, #f8c84b 0 10px, transparent 11px),
    radial-gradient(circle at 97% 4%, #73c9ff 0 14px, transparent 15px);
}
.diseno-matematicas .franja-diseno {
  color: #0d4d9d;
  background: linear-gradient(90deg, #d9efff, #f1f8ff, #d9efff);
  border: 1px dashed #67a9eb;
}
.diseno-matematicas .pregunta-examen,
.diseno-matematicas .datos-estudiante {
  background: rgba(255, 255, 255, .88);
  border-radius: 12px;
}

.diseno-animalitos {
  border: 3px solid #f4a433;
  background-color: #fffdf8;
  background-image:
    url("../assets/profesores/fondo-animalitos.png"),
    radial-gradient(circle at 8% 15%, rgba(255, 211, 116, .38), transparent 18%),
    radial-gradient(circle at 91% 83%, rgba(187, 240, 211, .42), transparent 19%);
  background-repeat: no-repeat;
  background-position: center center, center, center;
  background-size: 100% 100%, auto, auto;
}
.diseno-animalitos::after {
  background: linear-gradient(90deg, rgba(255,255,255,.72), rgba(255,255,255,.84), rgba(255,255,255,.72));
}
.diseno-animalitos .franja-diseno {
  color: #9a4b04;
  background: linear-gradient(90deg, #fff0c9, #fff8e9, #fff0c9);
  border: 2px solid #f5bf5a;
  text-shadow: 0 1px #fff;
}
.diseno-animalitos .pregunta-examen,
.diseno-animalitos .datos-estudiante,
.diseno-animalitos .instrucciones-examen {
  background: rgba(255, 255, 255, .88);
  border: 1px solid rgba(244, 164, 51, .22);
  border-radius: 12px;
}

.diseno-espacio {
  border: 3px solid #7562df;
  background-color: #fbfaff;
  background-image:
    radial-gradient(circle at 12% 19%, rgba(255, 216, 111, .8) 0 2px, transparent 3px),
    radial-gradient(circle at 91% 15%, rgba(116, 99, 230, .7) 0 2px, transparent 3px),
    radial-gradient(circle at 5% 87%, rgba(114, 214, 255, .7) 0 3px, transparent 4px),
    radial-gradient(circle at 87% 84%, rgba(255, 151, 199, .7) 0 3px, transparent 4px);
}
.diseno-espacio::after {
  background: linear-gradient(135deg, transparent 0 45%, rgba(219, 212, 255, .34) 45% 48%, transparent 48% 100%);
}
.diseno-espacio .franja-diseno {
  color: #4d3cb0;
  background: linear-gradient(90deg, #e7e1ff, #fbfaff, #e7e1ff);
  border: 1px solid #bfb1ff;
}
.diseno-espacio .pregunta-examen,
.diseno-espacio .datos-estudiante {
  background: rgba(255, 255, 255, .9);
  border-radius: 12px;
}

.opcion-portada { display:flex; align-items:center; gap:9px; padding:12px 14px; border:1px solid rgba(183,214,255,.3); border-radius:14px; background:rgba(255,255,255,.07); }
.opcion-portada input { width:auto !important; margin:0 !important; accent-color:#6da6ff; }
.portada-examen { min-height:510px; display:grid; place-content:center; gap:18px; padding:48px 32px; text-align:center; border-radius:20px; background:rgba(255,255,255,.88); page-break-after:always; }
.portada-examen span { color:#4f46e5; font-size:2.1rem; letter-spacing:12px; }
.portada-examen p { color:#4f46e5; font-weight:800; text-transform:uppercase; letter-spacing:.12em; }
.portada-examen h2 { max-width:640px; color:#172036; font-size:clamp(2.5rem,6vw,4.2rem); line-height:1.04; }
.portada-examen small { color:#475569; font-size:1rem; }
.formato-evaluacion .cabecera-examen { border-bottom-color:#ef4444; }
.formato-evaluacion .titulo-examen { color:#b91c1c; border-bottom-color:#ef4444; }
.formato-reto .cabecera-examen { border-bottom-color:#f59e0b; }
.formato-reto .titulo-examen { color:#b45309; border-bottom-color:#f59e0b; }
.clave-respuestas { display:none; margin-top:30px; padding:25px; border:2px dashed #64748b; border-radius:16px; background:rgba(255,255,255,.92); page-break-before:always; }
.clave-respuestas h3 { color:#1e3a8a; margin-bottom:12px; }
.clave-respuestas ol { display:grid; grid-template-columns:repeat(3,1fr); gap:10px 28px; padding-left:24px; }
.clave-respuestas li { color:#334155; font-weight:800; }

@media print {
  .examen-generado,
  .examen-generado * {
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }
  .examen-generado { box-shadow: none !important; }
  .diseno-matematicas { background-color:#fafdff !important; background-image:linear-gradient(rgba(69, 143, 235, .12) 1px, transparent 1px),linear-gradient(90deg, rgba(69, 143, 235, .12) 1px, transparent 1px) !important; }
  .diseno-animalitos { background-color:#fffdf8 !important; background-image:url("../assets/profesores/fondo-animalitos.png"),radial-gradient(circle at 8% 15%, rgba(255, 211, 116, .38), transparent 18%),radial-gradient(circle at 91% 83%, rgba(187, 240, 211, .42), transparent 19%) !important; }
  .diseno-espacio { background-color:#fbfaff !important; }
  .franja-diseno { display: grid !important; }
  .diseno-clasico .franja-diseno { display: none !important; }
  .diseno-animalitos { background-size: 100% 100%, auto, auto !important; }
  .portada-examen { display:grid !important; min-height:90vh !important; }
  .clave-respuestas { display:none !important; }
  .imprimir-clave .clave-respuestas { display:block !important; }
}

/* Colección visual: dibujos suaves de fondo para las hojas imprimibles. */
.diseno-selva,.diseno-oceano,.diseno-dinosaurios,.diseno-granja,.diseno-arcoiris,.diseno-bosque,.diseno-deportes,.diseno-musica,.diseno-robots,.diseno-frutas,.diseno-castillo,.diseno-safari{border:3px solid var(--color-diseno,#75a7d8);background:var(--fondo-diseno,#fbfdff)}
.diseno-selva::before,.diseno-oceano::before,.diseno-dinosaurios::before,.diseno-granja::before,.diseno-arcoiris::before,.diseno-bosque::before,.diseno-deportes::before,.diseno-musica::before,.diseno-robots::before,.diseno-frutas::before,.diseno-castillo::before,.diseno-safari::before{content:var(--dibujos-diseno);position:absolute;inset:25px 18px;z-index:0;overflow:hidden;opacity:.16;color:var(--color-diseno,#75a7d8);font-size:2rem;line-height:4.2;letter-spacing:1.25rem;word-spacing:2rem;transform:rotate(-5deg);pointer-events:none}.diseno-selva::after,.diseno-oceano::after,.diseno-dinosaurios::after,.diseno-granja::after,.diseno-arcoiris::after,.diseno-bosque::after,.diseno-deportes::after,.diseno-musica::after,.diseno-robots::after,.diseno-frutas::after,.diseno-castillo::after,.diseno-safari::after{background:linear-gradient(125deg,rgba(255,255,255,.72),rgba(255,255,255,.3),rgba(255,255,255,.72))}
.diseno-selva{--color-diseno:#3d9b62;--fondo-diseno:#f5fff6;--dibujos-diseno:"🦜 🌴 🐯 🍃 🐒 🌺 🦜 🌴 🐯 🍃 🐒 🌺 🦜 🌴 🐯 🍃 🐒 🌺"}.diseno-oceano{--color-diseno:#218db9;--fondo-diseno:#f1fbff;--dibujos-diseno:"🐠 🐙 🫧 🐳 🪸 🦀 🐠 🐙 🫧 🐳 🪸 🦀 🐠 🐙 🫧 🐳 🪸 🦀"}.diseno-dinosaurios{--color-diseno:#5a9d4a;--fondo-diseno:#f8fff2;--dibujos-diseno:"🦕 🌋 🦖 🌿 🥚 🦕 🦕 🌋 🦖 🌿 🥚 🦕 🦕 🌋 🦖 🌿 🥚 🦕"}.diseno-granja{--color-diseno:#cc8527;--fondo-diseno:#fffaf1;--dibujos-diseno:"🐮 🌻 🐷 🚜 🐔 🌾 🐮 🌻 🐷 🚜 🐔 🌾 🐮 🌻 🐷 🚜 🐔 🌾"}.diseno-arcoiris{--color-diseno:#c25aab;--fondo-diseno:#fff8fe;--dibujos-diseno:"☁️ 🌈 ⭐ 🦋 ☀️ ☁️ ☁️ 🌈 ⭐ 🦋 ☀️ ☁️ ☁️ 🌈 ⭐ 🦋 ☀️ ☁️"}.diseno-bosque{--color-diseno:#568449;--fondo-diseno:#f6fff4;--dibujos-diseno:"🦉 🍄 🌲 🦌 🍂 🐿️ 🦉 🍄 🌲 🦌 🍂 🐿️ 🦉 🍄 🌲 🦌 🍂 🐿️"}.diseno-deportes{--color-diseno:#e05b48;--fondo-diseno:#fff7f4;--dibujos-diseno:"⚽ 🏀 🏆 🎾 🏃 🥇 ⚽ 🏀 🏆 🎾 🏃 🥇 ⚽ 🏀 🏆 🎾 🏃 🥇"}.diseno-musica{--color-diseno:#7c5cc9;--fondo-diseno:#fbf8ff;--dibujos-diseno:"🎵 🎸 🎹 🎶 🥁 🎺 🎵 🎸 🎹 🎶 🥁 🎺 🎵 🎸 🎹 🎶 🥁 🎺"}.diseno-robots{--color-diseno:#477dc7;--fondo-diseno:#f5f9ff;--dibujos-diseno:"🤖 ⚙️ 🔭 🧪 💡 🚀 🤖 ⚙️ 🔭 🧪 💡 🚀 🤖 ⚙️ 🔭 🧪 💡 🚀"}.diseno-frutas{--color-diseno:#d95e68;--fondo-diseno:#fff8f7;--dibujos-diseno:"🍎 🍓 🍌 🍊 🍉 🍇 🍎 🍓 🍌 🍊 🍉 🍇 🍎 🍓 🍌 🍊 🍉 🍇"}.diseno-castillo{--color-diseno:#8f63cc;--fondo-diseno:#fbf8ff;--dibujos-diseno:"🏰 ✨ 🦄 👑 🐉 🌟 🏰 ✨ 🦄 👑 🐉 🌟 🏰 ✨ 🦄 👑 🐉 🌟"}.diseno-safari{--color-diseno:#b88337;--fondo-diseno:#fffaf1;--dibujos-diseno:"🦒 🦁 🌅 🐘 🌍 🦓 🦒 🦁 🌅 🐘 🌍 🦓 🦒 🦁 🌅 🐘 🌍 🦓"}
.diseno-selva .franja-diseno,.diseno-oceano .franja-diseno,.diseno-dinosaurios .franja-diseno,.diseno-granja .franja-diseno,.diseno-arcoiris .franja-diseno,.diseno-bosque .franja-diseno,.diseno-deportes .franja-diseno,.diseno-musica .franja-diseno,.diseno-robots .franja-diseno,.diseno-frutas .franja-diseno,.diseno-castillo .franja-diseno,.diseno-safari .franja-diseno{color:var(--color-diseno);background:rgba(255,255,255,.72);border:1px dashed var(--color-diseno)}
.diseno-selva .titulo-examen,.diseno-oceano .titulo-examen,.diseno-dinosaurios .titulo-examen,.diseno-granja .titulo-examen,.diseno-arcoiris .titulo-examen,.diseno-bosque .titulo-examen,.diseno-deportes .titulo-examen,.diseno-musica .titulo-examen,.diseno-robots .titulo-examen,.diseno-frutas .titulo-examen,.diseno-castillo .titulo-examen,.diseno-safari .titulo-examen{color:var(--color-diseno);border-bottom-color:var(--color-diseno)}
.diseno-selva .pregunta-examen,.diseno-oceano .pregunta-examen,.diseno-dinosaurios .pregunta-examen,.diseno-granja .pregunta-examen,.diseno-arcoiris .pregunta-examen,.diseno-bosque .pregunta-examen,.diseno-deportes .pregunta-examen,.diseno-musica .pregunta-examen,.diseno-robots .pregunta-examen,.diseno-frutas .pregunta-examen,.diseno-castillo .pregunta-examen,.diseno-safari .pregunta-examen{background:rgba(255,255,255,.84);border-radius:12px;padding-left:12px;padding-right:12px}
@media print{.diseno-selva::before,.diseno-oceano::before,.diseno-dinosaurios::before,.diseno-granja::before,.diseno-arcoiris::before,.diseno-bosque::before,.diseno-deportes::before,.diseno-musica::before,.diseno-robots::before,.diseno-frutas::before,.diseno-castillo::before,.diseno-safari::before{display:block!important}}
