body {
  max-width: 66em;
  padding: 1em;
  margin: auto;
  background-image: url("//toptal.com/designers/subtlepatterns/patterns/grunge_wall.png");
  font: 100%/1.5;
  font-family: Georgia;
  text-shadow: 0 1px white;
  position: relative;
  min-height: 1300px;
  overflow: hidden;
  -webkit-font-smoothing: antialiased;
}
a {
  background: #83786d;
  padding: 2px 5px;
  border-radius: 3px;
  text-decoration: none;
  color: white;
  cursor: pointer;
}

header hgroup {
  cursor: pointer;
  padding: 1.2em 4em;
}

header h1 {
  font-size: 450%;
  font-family: "Luckiest Guy", cursive;
  padding: 0;
  margin: 0;
  line-height: 60%;
  border-bottom: 1px solid black;
  font-weight: bold;
  text-shadow: rgba(0, 0, 0, 0.2) 3px 3px 3px;
  color: #fff;
  /*text stroke*/
  -webkit-text-stroke: 4px rgba(0, 0, 0, 0.6);
}
header h2 {
  font-size: 70%;
  line-height: 10px;
}

#cube {
  margin: 40px 85px;
  zoom: 0.85;
  opacity: 0;
}

#tutorial {
  position: absolute;
  opacity: 0;
  display: none;
  top: 870px;
  width: 800px;
  height: 240px;
  left: 50%;
  margin-left: -420px;
  padding: 10px;
  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
  -moz-box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
  background: #ccc;
  background: rgba(0, 0, 0, 0.2);
  z-index: 5000;
  line-height: 50px;
  font-size: 200%;
  text-align: center;
}
#tutorial span {
  color: white;
  font-weight: bold;
  text-decoration: underline;
}
#tutorial span.green {
  color: green;
  text-decoration: none;
}

#messages {
  position: absolute;
  cursor: -webkit-grab;
  top: 120px;
  right: 0px;
  width: 408px;
  height: 240px;
  opacity: 0;
  display: none;
  -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.5);
  -moz-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.5);
  margin-right: 2.1em;
  border-radius: 5px;
  background: rgba(0, 0, 0, 0.2);
  z-index: 5000;
  padding: 15px;
}
#messages .panel {
  padding: 0;
  margin: 0;
  text-align: center;
  opacity: 0.8;
  color: white;
  text-shadow: none;

  display: -webkit-box;
  -webkit-box-align: center;
  height: 100%;
}
#messages ul {
  list-style: none;
  padding: 0px;
  margin: 0px;
  width: 1232px;
  height: 100%;
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
}
#messages .moving {
  -webkit-transition: -webkit-transform 0.2s ease-in-out;
  -moz-transition: -moz-transform 0.2s ease-in-out;
}

#messages li {
  width: 408px;
  height: 240px;
  display: inline-block;
  vertical-align: middle;
}
.wrapper {
  width: 100%;
  height: 100%;
  overflow: hidden;
}

#messages .panel h1 {
  padding: 10px 0;
  margin: 0;
  font-size: 1.8em;
}
#messages .panel h2 {
  font-size: 1.2em;
}
#messages .panel p {
  font-size: 1.1em;
  line-height: 1.4em;
}
#messages .populate {
  display: none;
}
#messages .moving .prev,
#messages .moving .next {
  opacity: 0;
}

/* END MESSAGE CLASSSES */

aside {
  margin-left: 470px;
  margin-top: -10px;
}
#cube-controls {
  opacity: 0;
  display: none;
  margin-right: 2em;
  position: absolute;
  top: 390px;
  right: 0;
}
#cube-controls ul {
  list-style: none;
}
#cube-controls li {
  display: inline-block;
  color: white;
  font-size: 80%;
  line-height: 104px;
  background-image: linear-gradient(
    top,
    rgb(112, 112, 112) 45%,
    rgb(0, 0, 0) 82%
  );
  background-image: -o-linear-gradient(
    top,
    rgb(112, 112, 112) 45%,
    rgb(0, 0, 0) 82%
  );
  background-image: -moz-linear-gradient(
    top,
    rgb(112, 112, 112) 45%,
    rgb(0, 0, 0) 82%
  );
  background-image: -webkit-linear-gradient(
    top,
    rgb(112, 112, 112) 45%,
    rgb(0, 0, 0) 82%
  );
  background-image: -ms-linear-gradient(
    top,
    rgb(112, 112, 112) 45%,
    rgb(0, 0, 0) 82%
  );

  background-image: -webkit-gradient(
    linear,
    left top,
    left bottom,
    color-stop(0.45, rgb(112, 112, 112)),
    color-stop(0.82, rgb(0, 0, 0))
  );
  height: 104px;
  width: 104px;
  margin: 2px;
  text-align: center;
  -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.3);
  -moz-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.3);
  box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.3);
  border-radius: 5px;
}

#cube-controls li:active,
#cube-controls li.pcRotation {
  background-image: linear-gradient(
    bottom,
    rgb(112, 112, 112) 45%,
    rgb(0, 0, 0) 82%
  );
  background-image: -o-linear-gradient(
    bottom,
    rgb(112, 112, 112) 45%,
    rgb(0, 0, 0) 82%
  );
  background-image: -moz-linear-gradient(
    bottom,
    rgb(112, 112, 112) 45%,
    rgb(0, 0, 0) 82%
  );
  background-image: -webkit-linear-gradient(
    bottom,
    rgb(112, 112, 112) 45%,
    rgb(0, 0, 0) 82%
  );
  background-image: -ms-linear-gradient(
    bottom,
    rgb(112, 112, 112) 45%,
    rgb(0, 0, 0) 82%
  );
  background-image: -webkit-gradient(
    linear,
    left bottom,
    left top,
    color-stop(0.45, rgb(112, 112, 112)),
    color-stop(0.82, rgb(0, 0, 0))
  );
}

#cube-controls li > div {
  width: 100%;
  height: 100%;
}

#cube-controls .rotate {
  background: url("img/transform.png") center no-repeat;
  background-size: 65%, 100%;
}

#cube-controls .solve {
  background: url("img/rotate.png") center no-repeat;
  background-size: 80%, 100%;
}

#cube-controls .undo {
  background: url("img/undo.png") center no-repeat;
  background-size: 80%, 100%;
}

#cube-controls .redo {
  background: url("img/redo.png") center no-repeat;
  background-size: 80%, 100%;
}

#log {
  position: absolute;
  top: 10px;
  width: 220px;
  height: 60px;
  right: 34px;
  border-radius: 5px;
  background: rgba(0, 0, 0, 0.2);
  z-index: 5000;
  line-height: 15px;
  font-size: 20px;
  text-align: right;
}

#log a {
  display: flex;
  align-items: center;
  justify-content: center;
  background: none;
}
#log a:hover {
    background:rgba(0, 0, 0, 0.2);
}

#log .html5 {
  background: url("img/h5.png") center 50% no-repeat, #ededed;
  background-size: 60%;
  width: 65px;
  height: 55px;
  display: table;
  -moz-box-shadow: inset 0px 1px 0px 0px #ffffff;
  -webkit-box-shadow: inset 0px 1px 0px 0px #ffffff;
  box-shadow: inset 0px 1px 0px 0px #ffffff;
  border-radius: 6px;
  opacity: 0.9;
}


#log span {
  flex: 1;
  width: 100%;
  font-family: Arial, "MS Trebuchet", serif;
  background: none;
  font-size: 1.4em;
  font-weight: bold;
  text-align: center;
}
