.word-merge-tile.is-new {
  animation: wordMergeSpawnPop 260ms cubic-bezier(.2, 1.35, .35, 1);
}

.word-merge-tile.is-merged {
  animation: wordMergeUpgradePulse 360ms ease-out;
}

.word-merge-tile.is-merged .word-merge-tile-shine {
  animation: wordMergeSharpFlash 260ms ease-out;
}

.word-merge-tile.level-7,
.word-merge-tile.level-8 {
  animation-duration: 420ms;
}

@keyframes wordMergeSpawnPop {
  0% {
    opacity: 0;
    transform: scale(0.78) rotate(-1.5deg);
    filter: saturate(0.9);
  }
  74% {
    opacity: 1;
    transform: scale(1.055) rotate(0.8deg);
    filter: saturate(1.18);
  }
  100% {
    transform: scale(1) rotate(0);
    filter: saturate(1);
  }
}

@keyframes wordMergeUpgradePulse {
  0% {
    transform: scale(1);
    filter: brightness(1);
  }
  38% {
    transform: scale(1.13);
    filter: brightness(1.18) saturate(1.35);
  }
  72% {
    transform: scale(0.985);
    filter: brightness(1.06) saturate(1.18);
  }
  100% {
    transform: scale(1);
    filter: brightness(1) saturate(1);
  }
}

@keyframes wordMergeSharpFlash {
  0% {
    opacity: 0;
    transform: translateX(-24%);
  }
  40% {
    opacity: 0.75;
  }
  100% {
    opacity: 0.28;
    transform: translateX(24%);
  }
}
