Help heart beat challenge

Tell us what’s happening:

Can somebody help me understand the elements heart:after and heart:before in this code.
I dont grasp why the element ( .heart) has the line (transform: rotate(-45deg):wink: but is not rotating visually it actually stays in the same position.
Thanks

Your code so far


<style>
.back {
  position: fixed;
  padding: 0;
  margin: 0;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: white;
  animation-name: backdiv;
  animation-duration: 1s;
animation-iteration-count: infinite;
}

.heart {
  position: absolute;
  margin: auto;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: pink;
  height: 50px;
  width: 50px;
  transform: rotate(-45deg);
  animation-name: beat;
  animation-duration: 1s;
animation-iteration-count: infinite;
}
.heart:after {
  background-color: pink;
  content: "";
  border-radius: 50%;
  position: absolute;
  width: 50px;
  height: 50px;
  top: 0px;
  left: 25px;
}
.heart:before {
  background-color: pink;
  content: "";
  border-radius: 50%;
  position: absolute;
  width: 50px;
  height: 50px;
  top: -25px;
  left: 0px;
}

@keyframes backdiv {
  50% {
    background: #ffe6f2;
  }
}

@keyframes beat {
  0% {
    transform: scale(1) rotate(-45deg);
   
  }
  50% {
    transform: scale(0.6) rotate(-45deg);
  
  }
}

</style>
<div class="back"></div>
<div class="heart"></div>

Your browser information:

User Agent is: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36.

Challenge: Make a CSS Heartbeat using an Infinite Animation Count

Link to the challenge:

try to remove that line, it is visually rotated!

you can change the color of each element to see where each element is

Ok will try that. Thanks!