* {
   margin: 0px;
   padding: 0px;
}

html, body {
   width: 100%;
   height: 100%;
}

#shadowBox {
    background-color: rgb(0, 0, 0);
    /* Fallback color */
    background-color: rgba(0, 0, 0, 0.2);
    /* Black w/opacity/see-through */
    border: 3px solid;
}

.rainbow {
    text-align: center;
    text-decoration: underline;
    font-size: 32px;
    font-family: monospace;
    letter-spacing: 5px;
}
.rainbow_text_animated {
    background: linear-gradient(to right, #6666ff, #0099ff , #00ff00, #ff3399, #6666ff);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    animation: rainbow_animation 6s ease-in-out infinite;
    background-size: 400% 100%;
}

@keyframes rainbow_animation {
    0%,100% {
        background-position: 0 0;
    }

    50% {
        background-position: 100% 0;
    }
}

.cube {
  -webkit-transform-style: preserve-3d;
  -webkit-animation: spin 17s infinite ease-out;
  position: relative;
  width: 50px;
  height: 50px;
  margin-left: -50px;
  margin-top: -50px;
}

.cube div {
   width: 100px;
   height: 100px;
   line-height: 100px;
   text-align: center;
   box-shadow: inset 0px 0px 0px 1px rgba(10, 0, 0, 0.8);
   background: rgba(190, 0, 0, 0.6);
   display: block;
   position: absolute;
}

.cube div.top {
   -webkit-transform: rotateX(15deg); 
  margin-top: -50px;
}

.cube div.right {
   -webkit-transform: rotateY(88deg); 
  margin-left: 50px;
}

.cube div.bottom {
   -webkit-transform: rotateX(-58deg); 
  margin-top: 50px;
}

.cube div.left {
   -webkit-transform: rotateY(-30deg); 
  margin-left: -50px;
}

.cube div.front {
   -webkit-transform: translateZ(13px);
}

.cube div.back {
   -webkit-transform: translateZ(-66px) rotateX(27deg);
}

.cubee {
  -webkit-transform-style: preserve-3d;
  -webkit-animation: spin 13s infinite;
  position: relative;
  width: 50px;
  height: 50px;
  margin-left: -50px;
  margin-top: -50px;
}

.cubee div {
   width: 100px;
   height: 100px;
   line-height: 100px;
   text-align: center;
   box-shadow: inset 0px 0px 0px 1px rgba(10, 0, 0, 0.8);
   background: rgba(190, 0, 0, 0.6);
   display: block;
   position: absolute;
}

.cubee div.top {
   -webkit-transform: rotateX(100deg); 
  margin-top: -50px;
}

.cubee div.right {
   -webkit-transform: rotateY(90deg); 
  margin-left: 50px;
}

.cubee div.bottom {
   -webkit-transform: rotateX(-95deg); 
  margin-top: 55px;
}

.cubee div.left {
   -webkit-transform: rotateY(-90deg); 
  margin-left: -50px;
}

.cubee div.front {
   -webkit-transform: translateZ(50px);
}

.cubee div.back {
   -webkit-transform: translateZ(-50px) rotateX(180deg);
}

@-webkit-keyframes spin {

  0% {-webkit-transform: rotateX(-20deg) rotateY(20deg);}
  100% {-webkit-transform: rotateX(-20deg) rotateY(740deg);}
}


