/* V74: capas de composición de las animaciones.
   No se alteran duraciones, textos, coreografías ni efectos particulares. */
body.result-open #resultMount{isolation:isolate}
.wild-deck-window{isolation:isolate}
.wild-fx-ghost{
  will-change:transform,opacity!important;
  backface-visibility:hidden;
  /* El brillo continúa estático; ya no se recalcula un filtro por cuadro. */
  filter:none!important;
  box-shadow:0 0 18px rgba(123,218,255,.32)!important;
}
.wild-fx-ghost-identity{
  box-shadow:0 0 17px rgba(255,212,142,.3)!important;
}
.wild-fx-ghost-avatar{
  box-shadow:0 0 20px rgba(183,165,255,.35)!important;
}
/* Modal del sorteo y de las cartas renderizados en una sola capa aislada. */
#resultCurtain:not([hidden]),#wildDeckModal:not([hidden]){isolation:isolate}
#resultMount .team .player .avatar{backface-visibility:hidden}
@media(prefers-reduced-motion:reduce){
 .wild-fx-ghost{will-change:auto!important}
}

/* Las diez filas del sorteo ya no animan box-shadow y background a
   cada cuadro; mantienen la entrada escalonada y el resalte estático. */
@keyframes v37RoleEnter{
 from{opacity:.72;transform:translate3d(0,-5px,0)}
 to{opacity:1;transform:translate3d(0,0,0)}
}
@keyframes v37PlayerEnter{
 from{opacity:.76;transform:scale(.992)}
 to{opacity:1;transform:scale(1)}
}
.role-reveal-running #resultMount .team .player.role-reveal-champ{
 box-shadow:inset 0 0 0 2px rgba(133,230,213,.7)!important;
}
.role-reveal-running #resultMount .team .player.role-reveal-player{
 box-shadow:inset 0 0 0 1px rgba(217,155,120,.5)!important;
}
