/* ---- de sala.css ---- */
.sala-body { background: #f5f5f5; }
.sala { background: #f5f5f5; color: #111111; }
/* ---------- Barra de control del profesor ---------- */

.sala-barra { background: rgba(255, 255, 255,.94); border-top: 1px solid rgba(0, 0, 0,.12); }
.sala-barra-titulo { color: #111111; }
.sala-barra-codigo { color: rgba(17, 17, 17,.6); }
.sala-btn { border: 1.5px solid rgba(0, 0, 0,.2); background: rgba(0, 0, 0,.06); color: #111111; }
.sala-btn:hover { background: rgba(0, 0, 0,.12); }
.sala-btn.primario { border-color: #111111; }
.sala-salir { background: rgba(0, 0, 0,.08); color: #111111; }
.sala-etiqueta { color: rgba(17, 17, 17,.55); }
.sala-url { color: rgba(17, 17, 17,.65); }
.sala-jugador { background: rgba(0, 0, 0,.08); border: 1.5px solid rgba(0, 0, 0,.12); }
.sala-jugador.con-cuenta { border-color: rgba(0, 0, 0,.6); }
.sala-vacio { color: rgba(17, 17, 17,.5); }
.sala-contador { color: rgba(17, 17, 17,.6); }
.sala-reloj { color: #111111; }
.sala-par { background: rgba(0, 0, 0,.07); }
.sala-escriben { color: rgba(17, 17, 17,.65); }
.sala-explicacion { background: rgba(0, 0, 0,.07); border-left: 4px solid #111111; }
.sala-palabra:nth-child(3n) { color: #111111; }
.sala-ranking-fila { background: rgba(0, 0, 0,.07); }
.sala-podio-fila { background: rgba(0, 0, 0,.07); }
.sala-podio-fila.puesto-2 { background: rgba(0, 0, 0,.12); }
/* ---- de juego.css ---- */
.jg { background: #f5f5f5; color: #111111; }
.jg-cerrar { background: rgba(0, 0, 0,.08); color: #111111; }
.jg-cerrar:hover { background: rgba(0, 0, 0,.16); }
.jg-portada-icono, .jg-final-icono { background: rgba(0, 0, 0,.16); color: #111111; }
.jg-final-datos .bien { color: #111111; }
.jg-final-puntos small { color: #111111; }
.jg-hud-dato { background: rgba(0, 0, 0,.07); }
.jg-reloj { background: rgba(0, 0, 0,.1); }
.jg-orden-fila { background: rgba(0, 0, 0,.07); }
.jg-orden-btn { background: rgba(0, 0, 0,.1); color: #111111; }
.jg-orden-btn:hover { background: rgba(0, 0, 0,.2); }
.jg-unir-item { border: 2px solid rgba(0, 0, 0,.14); background: rgba(0, 0, 0,.05); color: #111111; }
.jg-unir-item.unida { border-color: #111111; }
.jg-unir-item.es-correcta { border-color: #111111; }
.jg-input { border: 2px solid rgba(0, 0, 0,.16); background: rgba(0, 0, 0,.06); color: #111111; }
.jg-input:focus { border-color: #111111; }
.jg-comodin { border: 1.5px solid rgba(0, 0, 0,.18); background: rgba(0, 0, 0,.05); color: #111111; }
/* Lo que aparece al responder */
.jg-feedback { border: 2px solid rgba(0, 0, 0,.14); }
.jg-feedback.tono-bien { border-color: #111111; }
.jg-feedback.tono-bien > i { color: #111111; }
.jg-podio-fila { background: rgba(0, 0, 0,.06); }
/* Portada: rótulo de evaluación */
.jg-eval { background: rgba(0, 0, 0,.16); color: #111111; }
/* ---------- Juegos de palabras: palabra desordenada, sopa de letras y crucigrama ---------- */

/* Palabra desordenada */
.jg-ana-armada { border: 2px dashed rgba(0, 0, 0,.2); }
.jg-sopa-palabra { background: rgba(0, 0, 0,.08); border: 1px solid rgba(0, 0, 0,.16); }
.jg-sopa-palabra.hallada { border-color: #111111; }
.jg-sopa-celda { background: rgba(0, 0, 0,.07); color: #111111; }
.jg-sopa-celda:hover { background: rgba(0, 0, 0,.16); }
.jg-cruci-pistas strong { color: #111111; }
.jg-cruci-pistas li:hover { background: rgba(0, 0, 0,.08); }
/* Pareado con aviso al tiro */
.jg-unir-item.acertada { border-color: #111111; background: rgba(0, 0, 0,.18); }
/* ---- de juego_modulos.css ---- */
.jm-body { color: #111111; background: #f5f5f5; }
.jm-cuenta-aviso span { color: #111111; }
/* ---------- Encabezado ---------- */
.jm-header { background: rgba(0, 0, 0, 0.06); }
.jm-header > span { background: rgba(0, 0, 0, 0.07); }
.jm-header b { color: #111111; }
.jm-salir, .jm-salir-chico { background: rgba(0, 0, 0, 0.08); color: #111111; }
.jm-salir:hover, .jm-salir-chico:hover { background: rgba(0, 0, 0, 0.16); }
.jm-modulo { background: rgba(0, 0, 0, 0.05); border: 2px solid rgba(0, 0, 0, 0.1); }
.jm-modulo:hover { border-color: rgba(0, 0, 0, 0.22); background: rgba(0, 0, 0, 0.08); }
.jm-modulo-proximo:hover { border-color: rgba(0, 0, 0, 0.1); background: rgba(0, 0, 0, 0.05); }
.jm-modulo-ganado { border-color: rgba(0, 0, 0, 0.5); background: rgba(0, 0, 0, 0.1); }
.jm-trofeo { background: rgba(0, 0, 0, 0.04); border: 2px dashed rgba(0, 0, 0, 0.14); }
.jm-hud-dato { background: rgba(0, 0, 0, 0.07); }
.jm-wildcard-btn { border: 1.5px solid rgba(0, 0, 0, 0.18); background: rgba(0, 0, 0, 0.05); color: #111111; }
/* Reloj: barra que se consume, como .jg-reloj */
.jm-reloj { background: rgba(0, 0, 0, .1); }
.jm-input { border: 2px solid rgba(0, 0, 0, .16); background: rgba(0, 0, 0, .06); color: #111111; }
.jm-input:focus { border-color: #111111; }
.jm-unir-item { border: 2px solid rgba(0, 0, 0, .14); background: rgba(0, 0, 0, .05); color: #111111; }
.jm-unir-item:hover:not(.jm-unir-usado) { border-color: rgba(0, 0, 0, .3); }
.jm-unir-usado { border-color: #111111; }
/* Feedback: barra pegada abajo, igual que .jg-feedback */
.jm-feedback { border: 2px solid rgba(0, 0, 0, .14); }
.jm-feedback-ok { border-color: #111111; color: #111111; }
.jm-feedback-info { border-color: rgba(0, 0, 0, .3); color: #111111; }
/* ---------- Icono en chip: mismo recurso que .jg-final-icono / .lac-modal-icono ---------- */
.jm-icono-chip { background: rgba(0, 0, 0, .16); color: #111111; }
.jm-racha-caja { background: #ffffff; }
.jm-racha-caja h2 { color: #111111; }
.jm-modal-caja { background: #ffffff; border: 1px solid rgba(0, 0, 0, .08); }
.jm-modal-caja h1 { color: #111111; }
.jm-modal-caja p { color: #111111; }
.jm-modal-premio { color: #111111; }

/* ---- A mano: entrada, espera y preguntas del juego 3D, y botón Volver ---- */
.volver-app {
  background: #ffffff !important; color: #111111 !important; border: 1px solid #d0d0d0 !important;
  box-shadow: 0 1px 6px rgba(0, 0, 0, .1) !important; backdrop-filter: none !important;
}
.jv-portada, .jv-espera { background: #f5f5f5; color: #111111; }
.jv-capa { color: #111111; }
.jv-pregunta { background: rgba(245, 245, 245, .88); }
.jv-tarjeta { background: #ffffff; border: 1px solid #e0e0e0; box-shadow: 0 10px 30px rgba(0, 0, 0, .1); color: #111111; }
.jv-portada p, .jv-espera-texto, .jv-espera-reglas, .jv-espera-nota, .jv-q-ayuda { color: #5a5a5a; }
.jv-espera-reglas i { color: #111111; }
.jv-espera-label, .jv-q-etiqueta { color: #6f6f6f; }
.jv-espera-entrar { background: #f5f5f5; border: 1px solid #e6e6e6; }
.jv-espera-codigo { color: #111111; }
.jv-chip { background: rgba(0, 0, 0, .07); }
.jv-chip.yo { background: rgba(0, 0, 0, .15); }
.jv-chip.bueno { background: rgba(63, 107, 58, .18); }
.jv-chip.malo { background: rgba(143, 47, 47, .15); }
.jv-chip-x { color: #5a5a5a; }
.jv-chip-x:hover { background: rgba(0, 0, 0, .1); color: #111111; }
.jv-q-barra { background: rgba(0, 0, 0, .1); }
.jv-q-barra i { background: #111111; }

/* ---- Pulido: campos blancos con borde y botones negros ---- */
.jg-input, .jv-input, .sj-input, .jm-input { background: #ffffff; border: 2px solid #d0d0d0; color: #111111; }
.jg-input:focus, .jv-input:focus, .sj-input:focus, .jm-input:focus { border-color: #111111; }
.jg-input::placeholder, .jv-input::placeholder, .sj-input::placeholder { color: #9a9a9a; }
.jg-boton-grande, .jv-boton, .sj-boton, .sala-btn.primario { background: #111111; border-color: #111111; color: #ffffff; }
.jg-boton-grande:hover, .jv-boton:hover, .sj-boton:hover, .sala-btn.primario:hover { background: #333333; }
.jv-boton:disabled, .jg-boton-grande:disabled { background: #d0d0d0; color: #8a8a8a; }
.sj-icono, .jg-portada-icono, .jg-final-icono, .jm-icono-chip { background: #111111; color: #ffffff; }
.sj-cuenta { background: #ffffff; border: 2px solid #111111; color: #111111; }
.sj-cuenta:hover { background: #f5f5f5; }
.sj-cuenta > i:first-child { color: #111111; }
.sj-juego { background: #ffffff; border: 1.5px solid #e0e0e0; }
