
* {
  box-sizing: border-box;
}

body {
  display: flex;
  flex-direction: column;
  height: 100vh;
  margin: 0;
  color: rgb(4, 107, 197);
  background-size: cover;
  background-repeat: no-repeat;
  background: linear-gradient(to top, rgba(255,255,255,0) 20%, rgba(255,255,255,1)), url(../images/background.jpeg);
}

section {
  display: flex;
  justify-content: space-around;
  flex-grow: 4;
}

button:hover {
  transform: scale(1.30);
  animation: ease-in-out;
}

main {
  display: flex;
  justify-content: center;
  flex-grow: 8;
}

button {
  color: whitesmoke;
  background-color: rgb(9, 78, 156);
  border-radius: 6px;
  border: none;
  padding: 10px 20px;
}

.button {
  display: flex;
  align-content: center;
  justify-content: center;
  align-self: center;
  flex-grow: 3;
	-webkit-animation: pulse linear 1s infinite;
	animation: pulse linear 1s infinite;
}
@-webkit-keyframes pulse {
	0% { height:22px; } 
	50% { height:45px; } 
	100% { height:22px; }
}
@keyframes pulse {
	0% { height:22px; } 
	50% { height:45px; } 
	100% { height:22px; }
}


p {
  align-self: center;
  justify-content: center;
  align-content: center;
  flex-grow: 3;
  font-weight: bolder;
}

.game-name {
  font-family: 'Monoton', cursive;
  font-size: 36px;
  display: flex;
  justify-content: center;
  align-content: center;
  align-self: center;
  flex-grow: 6;
  justify-self: center;

}

.score-div {
  justify-content: center;
  align-content: center;
  align-self: center;
  flex-grow: 3;
  font-weight: bolder;
}

.grid-wrapper {
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.grid {
  align-items: center;
  background-image: url(../images/gridbackground.gif);
  background-repeat: no-repeat;
  background-size: contain;

  box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.2);
  display: flex;
  flex-wrap: wrap;
  height: 100%;
  justify-content: center;
  height: 680px;
  width: 680px;
  border: 3px solid rgb(13, 11, 55) ;
  
}

.grid div {
  flex-grow: 1;
  height: 5%;
  width: 5%;
  color: transparent;
}

.grid div.player {
  background-repeat: no-repeat;
  background-size: contain;
  cursor: pointer;
}

.grid div.bullet {
  background-repeat: no-repeat;
  background-size: contain;
  cursor: pointer;
}

.bullet {
  background-image: url(../images/playerbullet.gif);
  background-repeat: no-repeat;
  background-size: contain;
  cursor: pointer;
}

.alien {
  background-image: url(../images/alien.gif);
  transition: background-image 1s;
  background-repeat: no-repeat;
  background-size: contain;
  cursor: pointer;
  width:200px;
  height: 200px;
  -webkit-animation: fadeinout .5s linear forwards;
  animation: fadeinout .5s linear forwards;
}

@-webkit-keyframes fadeinout {
0%,100% { opacity: 0; }
50% { opacity: 1; }
}

@keyframes fadeinout {
0%,100% { opacity: 0; }
50% { opacity: 1; }
}
.player {
  background-image: url(../images/player.gif);
  background-repeat: no-repeat;
  background-size: contain;
  cursor: pointer;
  -webkit-animation: pulsing linear 1s infinite;
	animation: pulsing linear 1s infinite;
}
@-webkit-keyframes pulsing {
  0% {transform: scale(1.0)}
  50% {transform: scale(1.5)}
  100% {transform: scale(1.0)}
}
@keyframes pulsing {
  0% {transform: scale(1.0)}
  50% {transform: scale(1.5)}
  100% {transform: scale(1.0)}
}


.explosion {
  background-image: url(../images/alienexplosion.gif);
  background-repeat: no-repeat;
  background-size: cover;
  cursor: pointer;
}

.alienbullet {
  background-image: url(../images/alienbomb.gif);
  background-repeat: no-repeat;
  background-size: contain;
  cursor: pointer;
}

.hiddenclass {

  display: none;
  flex-grow: 0;
}

.playerexplosion {
  background-image: url(../images/playerexplosion.gif);
  background-repeat: no-repeat;
  background-size: cover;
  cursor: pointer;
}

.bulletcollision {
  background-image: url(../images/bulletcollision.gif);
  background-repeat: no-repeat;
  background-size: cover;
  cursor: pointer;
}
