@keyframes snow {
  0% { background-position: 0px 0px, 0px 0px, 0px 0px; }
  50% { background-position: 500px 500px, 100px 200px, -100px 150px; }
  100% { background-position: 500px 1000px, 200px 400px, -100px 300px; }
}

html {
  box-sizing: border-box;
  width: 100%;
  height: 100%;
}
*, *:before, *:after {
  box-sizing: inherit;
}
body {
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  font-family: Arial, Verdana;
  color: #746309;
  background: #F0CB13;
  font-size: 16px;
  transition: background 800ms ease, color 800ms ease;
  -webkit-transition: background 800ms ease, color 800ms ease;
  -o-transition: background 800ms ease, color 800ms ease;
}
a {
  font-weight: bold;
  color: #746309;
}
a:hover {
  color: #000;
}
.left {
  position: relative;
  width: 500px;
  height: 100%;
  float: left;
  transition: transform 1600ms cubic-bezier(.47,.22,0,1.32);
  -webkit-transition: transform 1600ms cubic-bezier(.47,.22,0,1.32);
  -o-transition: transform 1600ms cubic-bezier(.47,.22,0,1.32);
  z-index: 1;
}
h1 {
  font-size: 13em;
  line-height: 1em;
  margin: 50px 0 0 0;
  padding: 0;
  font-family: Oswald;
  transition: transform 1200ms cubic-bezier(1,.13,0,1.08), color 600ms ease, letter-spacing 2000ms ease;
  -webkit-transition: transform 1200ms cubic-bezier(1,.13,0,1.08), color 600ms ease, letter-spacing 2000ms ease;
  -moz-transition: transform 1200ms cubic-bezier(1,.13,0,1.08), color 600ms ease, letter-spacing 2000ms ease;
  -o-transition: transform 1200ms cubic-bezier(1,.13,0,1.08), color 600ms ease, letter-spacing 2000ms ease;
  transform: translateX(-650px);
  letter-spacing: 40px;
  color: #000;
  -webkit-transform: translateX(-35px);
  -moz-transform: translateX(-35px);
  -o-transform: translateX(-35px);
  color: #FF044C;
  letter-spacing: 0px;
}
h2 {
  font-size: 1.2em;
  line-height: 1.4em;
  width: 340px;
  margin: 1em 0 0 0;
  padding: 0;
  text-align: right;
  transform: translateX(65px);
  -webkit-transform: translateX(65px);
  -o-transform: translateX(65px);
  -moz-transform: translateX(65px);
}
h2 > small {
  display: block;
  font-size: 0.7em;
  line-height: 1.7;
  font-weight: normal;
  margin-top: 1em;
}
.css-applied > pre {
  font-family: Arial, Verdana;
}
.right {
  z-index: 50;
  position: relative;
  width: calc(100% - 500px);
  height: 100%;
  float: right;
}
.code-editor {
  background: #FFF;
  padding: 1em;
  overflow: hidden;
  height: 100%;
}
.CodeMirror {
  background: none;
  height: auto;
  font-size: 0.8em;
}
.error {
  z-index: 100;
  position: absolute;
  top: 0;
  right: 0;
  margin: 1em 1em;
  color: #FFF;
  font-size: 0.7em;
  background: #F00;
  padding: 0 2px;
  transition: transform 400ms ease;
  -webkit-transition: transform 400ms ease;
  -o-transition: transform 400ms ease;
  transform: translateY(-100px);
  -webkit-transform: translateY(-100px);
  -o-transform: translateY(-100px);
  -moz-transform: translateY(-100px);
}
.btn {
  font-size: 1em;
  padding: 1em;
  border-radius: 4px;
  background: #FF044C;
  border-top: none;
  border-left: none;
  border-right: solid 2px #000;
  border-bottom: solid 2px #000;
  color: #FFF;
  font-weight: bold;
  margin: 1em 0 0 17.3em;
  outline: none;
  transition: transform 200ms ease, background 400ms ease;
  -webkit-transition: transform 200ms ease, background 400ms ease;
  -o-transition: transform 200ms ease, background 400ms ease;
  cursor: pointer;
}
.btn:active {
  transform: translateY(6px);
  -webkit-transform: translateY(6px);
  -o-transform: translateY(6px);
  -moz-transform: translateY(6px);
}
.btn:hover {
  background: #A2002E;
}
.snow-animation {
  font-size: 0.6em;
  position: absolute;
  bottom: 10px;
  left: 10px;
  z-index: 200;
}
.snow-animation a {
  opacity: 0.4;
  text-decoration: none;
}
.snow-animation a:hover{
  opacity: 1;
}
@media all and (max-width: 900px) {
  .left {
    width: 50%;
  }
  h2 {
    transform: translateX(-29px);
    -webkit-transform: translateX(-29px);
    -o-transform: translateX(-29px);
    -moz-transform: translateX(-29px);
  }
  h1 {
    font-size: 10.2em;
    transform: translateX(-35px);
    -webkit-transform: translateX(-35px);
    -o-transform: translateX(-35px);
    -moz-transform: translateX(-35px);
  }
  .right {
    width: 50%;
  }
  .btn {
    margin: 1em 0 0 11.4em;
  }
}
