
#eight-ball {
  overflow: hidden;
  animation-duration: .5s;
  cursor: pointer;
  box-sizing: border-box;
  position: relative;
  margin: 3vmin auto;
  width: 60vmin;
  height: 60vmin;
  border-radius: 50%;
  background: radial-gradient(circle at 40% 30%, #66001a, #D50A51);
  -webkit-box-shadow: inset -20px -20px 45px 0px rgba(238, 11, 91,0.7);
-moz-box-shadow: inset -20px -20px 45px 0px rgba(238, 11, 91,0.7);
box-shadow: inset -20px -20px 45px 0px rgba(238, 11, 91,0.7);
}

#eight-ball:before {
  content: "";
  position: absolute;
  top: 2%;
  left: 5%;
  width: 50%;
  height: 50%;
  border-radius: 50%;
  background: radial-gradient(circle at 50% 50%, #ff99b3, rgba(238, 11, 91, 0) 70%);
  -webkit-filter: blur(20px);
  filter: blur(20px);
  z-index: 2;
}

#shadow {
  position: absolute;
  top: 43vmin;
  left: 50%;
  margin-left: -40vmin;
  width: 80vmin;
  height: 80vmin;
  background: radial-gradient(circle at 50% 50%, rgba(238, 11, 91, 0.4), rgba(238, 11, 91, 0.1) 40%, rgba(238, 11, 91, 0) 50%);
  transform: rotateX(80deg);
  z-index: -3;
}

#eight {
  animation-fill-mode: both;
  animation-delay: .5s;
  animation-duration: .5s;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -20%;
  margin-left: -20%;
  width: 40%;
  height: 40%;
  background: radial-gradient(circle at 0% 0%, #fff, #999);
  border-radius: 50%;
  text-align: center;
  font-size: 16vmin;
  line-height: 23vmin;
  font-family: Monospace;
}

#hole {
  overflow: hidden;
  transform: translateX(150%) rotateY(90deg);
  animation-fill-mode: both;
  animation-delay: 1s;
  animation-duration: .5s;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -25%;
  margin-left: -25%;
  width: 50%;
  height: 50%;
  /* background: radial-gradient(circle at 0% 0%, #000, #D50A51); #dddddd */
  background: linear-gradient(47deg, #ffbfcf, #ffffff, #ffbfcf);
	/* animation: animation-magic-ball__display 13s ease infinite; */
	/* background-size: 600% 600%; */
	/* box-shadow: 0 0px 30px 0px rgba(159, 226, 224, .3); */
	border: 4px solid rgba(91, 0, 33, .2);
		
  border-radius: 50%;
  z-index: 3;  
  
  /* -webkit-box-shadow: inset -10% -10% 20% 0px rgba(0,0,0,0.7), -5px -5px 10px -6px rgba(225,255, 255,.5); */
  /* -moz-box-shadow: inset -10% -10% 20% 0px rgba(0,0,0,0.7), -5px -5px 10px -6px rgba(225,255, 255,.5); */
  box-shadow: inset -20px -20px 45px 0px rgba(221,221,221,0.7), -5px -5px 10px -6px rgba(225,255, 255,.5);
}

#fortune {
  transform: translateX(40px);
  animation-fill-mode: both;
  animation-timing-function: ease-out;
  animation-delay: 1.5s;
  animation-duration: 5s;
  box-sizing: border-box;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -35%;
  margin-left: -35%;
  border-radius: 10%;
  z-index: 4;
  width: 60%;
  height: 50%;
  font-size: 3.5vmin;
  
    text-shadow: 0px 5px 5px rgba(22, 118, 104, .5);
  text-transform: uppercase;
    font-weight: bold;  
  
  //color: white;
  text-align: center;
  //padding: .5rem;
  //background: radial-gradient(circle at 30% 40%, #538, #103);
  /* background: linear-gradient(to right, #6b8cce  20%, #0c3483 40%, #0c3483 60%, #6b8cce  80%); */
    /* background-size: 200% auto;     */
    color: #66462c;
    /* background-clip: text; */
    /* text-fill-color: transparent; */
    /* -webkit-background-clip: text; */
    /* -webkit-text-fill-color: transparent; */
    
   // animation: shine 2s linear infinite;
}

@keyframes animation-magic-ball__display {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 51%;
  }
  100% {
    background-position: 0% 50%;
  }
}

@keyframes ballShake {
  20% {transform: translateX(-10px);}
  40% {transform: translateX(10px);}
  60% {transform: translateX(-10px);}
  80% {transform: translateX(10px);}
  100% {transform: translateX(0px);}
}

@keyframes eightLook {
  0% {transform: translateX(0) rotateY(0deg);}
  100% {transform: translateX(-150%) rotateY(-90deg);}
}
@keyframes eightAsk {
  0% {transform: translateX(-150%) rotateY(-90deg);}
  100% {transform: translateX(0) rotateY(0deg);}
}

@keyframes fortuneLook {
  0% {transform: translateX(150%) rotateY(90deg);}
  100% {transform: rotateY(0deg) translateX(0%);}
}
@keyframes fortuneAsk {
  0% {transform: rotateY(0deg) translateX(0%);}
  100% {transform: translateX(150%) rotateY(90deg);}
}

@keyframes fortuneDrift {
  15% {transform: translateX(-20px) rotateZ(-20deg);}
  30% {transform: translateY(20px) rotateZ(20deg)}
  50% {transform: translateY(-10px) rotateZ(15deg)}
  100% {transform: translateX(0px);}
}
@keyframes fortuneTurn {
  5% {transform: translateX(-40px);}
  100% {transform: translateX(40px);}
}