
/* =====================================================
   ESM 67 REAL FIX
   1) Luz blanca hover real sobre iconos
   2) Quitar flechas/botones inferiores de módulos
   3) Ordenar textos sin cortar
   NO toca Firebase ni lógica.
   ===================================================== */

/* Flechas/botones de entrar/abrir dentro de cards */
#appPanel .modulo-card .flecha,
#appPanel .modulo-card .arrow,
#appPanel .modulo-card .modulo-flecha,
#appPanel .modulo-card .module-arrow,
#appPanel .modulo-card .btn-abrir,
#appPanel .modulo-card .abrir,
#appPanel .modulo-card .open-module,
#appPanel .modulo-card .entrar,
#appPanel .modulo-card button,
#appPanel .modulo-card a.btn,
#appPanel .modulo-card a[class*="btn"],
#appPanel .modulo-card [class*="flecha"],
#appPanel .modulo-card [class*="arrow"],
#appPanel .modulo-card [class*="abrir"],
#appPanel .module-card .flecha,
#appPanel .module-card .arrow,
#appPanel .module-card button,
#appPanel .module-card [class*="flecha"],
#appPanel .module-card [class*="arrow"]{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
  width:0 !important;
  height:0 !important;
  min-width:0 !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
}

/* Tarjeta clickeable completa */
#appPanel .modulo-card,
#appPanel .module-card,
#appPanel [data-modulo]{
  cursor:pointer !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:flex-start !important;
  text-align:center !important;
  overflow:visible !important;
}

/* Iconos con transición */
#appPanel .modulo-card .icono img,
#appPanel .modulo-card .icono-glass img,
#appPanel .modulo-card img.esm-icono-app-3d,
#appPanel .modulo-card img,
#appPanel .module-card img,
#appPanel [data-modulo] img{
  transition: transform .18s ease, filter .18s ease !important;
  transform-origin:center center !important;
}

/* Luz blanca hover aprobada: solo imagen/icono */
#appPanel .modulo-card:hover .icono img,
#appPanel .modulo-card:hover .icono-glass img,
#appPanel .modulo-card:hover img.esm-icono-app-3d,
#appPanel .modulo-card:hover img,
#appPanel .module-card:hover img,
#appPanel [data-modulo]:hover img{
  transform: translateY(-4px) scale(1.08) !important;
  filter:
    drop-shadow(0 0 8px rgba(255,255,255,1))
    drop-shadow(0 0 18px rgba(255,255,255,.90))
    drop-shadow(0 0 32px rgba(255,255,255,.58))
    drop-shadow(0 12px 14px rgba(0,0,0,.38)) !important;
}

/* Que NO ilumine círculo/fondo/contenedor */
#appPanel .modulo-card:hover .icono,
#appPanel .modulo-card:hover .icono-glass,
#appPanel .modulo-card:hover .esm-icono-app3d-wrap,
#appPanel .module-card:hover .icono,
#appPanel [data-modulo]:hover .icono{
  background:transparent !important;
  background-image:none !important;
  box-shadow:none !important;
  filter:none !important;
}

/* Textos ordenados */
#appPanel .modulo-card h1,
#appPanel .modulo-card h2,
#appPanel .modulo-card h3,
#appPanel .modulo-card h4,
#appPanel .modulo-card strong,
#appPanel .modulo-card .modulo-titulo,
#appPanel .modulo-card .module-title,
#appPanel .modulo-card .titulo-modulo,
#appPanel .modulo-card .nombre-modulo,
#appPanel .module-card h1,
#appPanel .module-card h2,
#appPanel .module-card h3,
#appPanel .module-card h4,
#appPanel [data-modulo] h3,
#appPanel [data-modulo] strong{
  display:block !important;
  width:100% !important;
  max-width:190px !important;
  margin:8px auto 4px auto !important;
  padding:0 !important;
  text-align:center !important;
  line-height:1.12 !important;
  white-space:normal !important;
  overflow:visible !important;
  text-overflow:clip !important;
  word-break:normal !important;
  overflow-wrap:break-word !important;
  hyphens:auto !important;
}

#appPanel .modulo-card p,
#appPanel .modulo-card span,
#appPanel .module-card p,
#appPanel [data-modulo] p{
  text-align:center !important;
  line-height:1.20 !important;
  white-space:normal !important;
  overflow:visible !important;
  text-overflow:clip !important;
}
