::-webkit-scrollbar {
  width: 4px;
  height: 4px;
}

::-webkit-scrollbar-button {
  width: 0px;
  height: 0px;
}

::-webkit-scrollbar-thumb {
  background: #ffffff;
  border: 0px none #ffffff;
  border-radius: 0px;
}

::-webkit-scrollbar-thumb:hover {
  background: #ffffff;
}

::-webkit-scrollbar-thumb:active {
  background: #e9e9e9;
}

::-webkit-scrollbar-track {
  background: #666666;
  border: 0px none #ffffff;
  border-radius: 0px;
}

::-webkit-scrollbar-track:hover {
  background: #666666;
}

::-webkit-scrollbar-track:active {
  background: #333333;
}

::-webkit-scrollbar-corner {
  background: transparent;
}

* {
  box-sizing: border-box;
  font-family: 'Titillium Web', helvetica, sans-serif;
  -webkit-tap-highlight-color: transparent;
  outline: none;
}

body,
html {
  margin: 0;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#cb0060+8,7db9e8+87 */
  background-image: linear-gradient(to bottom, #cb0060, #b53f99, #8964bf, #4e7dcb, #188ec3);
  overflow: auto;
  overflow-x: hidden;
}

.app {
  text-align: center;
}

.pin_container {
  position: relative;
  display: block;
  text-align: center;
  padding-top: 30px;
}

.pin_container input {
  border: none;
  height: 43px;
  width: 320px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  height: 52px;
  border-radius: 4px;
  background: rgba(255, 255, 255, 0.08);
  font-size: 26px;
  max-width: 100%;
  margin: 5px 0;
  padding: 0 10px;
  text-align: center;
  color: white;
  transition: 450ms all ease;
}

.pin_container input.active {
  color: #D3006F;
  background: rgba(255, 255, 255, 0.75);
}

::-webkit-input-placeholder {

  /* WebKit, Blink, Edge */
  color: white;
}

:-moz-placeholder {

  /* Mozilla Firefox 4 to 18 */
  color: white;
}

::-moz-placeholder {

  /* Mozilla Firefox 19+ */
  color: white;
}

:-ms-input-placeholder {

  /* Internet Explorer 10-11 */
  color: white;
}

::-ms-input-placeholder {

  /* Microsoft Edge */
  color: white;
}

::placeholder {

  /* Most modern browsers support this now. */
  color: white;
}

button.enter_game {
  position: relative;
  display: block;
  width: 200px;
  font-size: 22px;
  background: #0C8DD1;
  color: white;
  border: none;
  padding: 12px;
  margin: 10px auto;
  cursor: pointer;
  transition: 450ms all ease;
  box-shadow: 0 6px 20px 0 rgba(0, 0, 0, 0.17);
}

button.enter_game:hover {
  color: #D3006F;
  background: rgba(255, 255, 255, 0.75);
  transform: scale3d(1.1, 1.1, 1.1);
}

button.enter_game:active {
  transform: scale3d(0.9, 0.9, 0.9);
}

.wrong_pin_message {
  background: #B71C1C;
  padding: 25px 15px;
  text-align: center;
  transition: padding .5s;
  position: relative;
  overflow: hidden;
  cursor: pointer;
  box-shadow: inset 0 0 0 1px white;
  width: 320px;
  margin: 0 auto;
  max-width: 100%;
}

.wrong_pin_message:after {
  content: "Falsche PIN oder Nickname";
  position: absolute;
  left: 50%;
  top: 50%;
  font-size: 17px;
  color: #ffffff;
  display: block;
  transform: translate3d(-50%, -50%, 2px);
  -webkit-font-smoothing: antialiased;
  backface-visibility: hidden;
  z-index: 1;
  font-weight: bold;
  text-transform: uppercase;
  width: 100%;
}

.slidein-enter-active,
.slidein-leave-active {
  transition: padding .5s;
}

.slidein-enter,
.slidein-leave-to

/* .fade-leave-active below version 2.1.8 */
{
  padding: 0;
}

.slidein-enter-active,
.slidein-leave-active {
  transition: opacity .5s;
}

.slidein-enter,
.slidein-leave-to

/* .fade-leave-active below version 2.1.8 */
{
  opacity: 0;
}

h2.title {
  position: absolute;
  font-size: 30px;
  color: white;
  text-align: center;
  left: 50%;
  transform: translate3d(-50%, 0, 0);
}

.score {
  position: absolute;
  left: 50%;
  bottom: 0;
  font-size: 20px;
  text-align: center;
  transform: translate3d(-50%, 0, 0);
  animation: score 1.6s;
  color: white;
  animation-fill-mode: forwards;
  display: block;
  line-height: 1;
  z-index: 8888;
  padding: 10px;
  box-shadow: 2px 2px 4px 0 rgba(0, 0, 0, 0.278);
  border-radius: 6px;
  min-width: 80px;
}

.score.positive {
  background: #00ad0f;
}

.score.negative {
  background: #c00;
}

@keyframes score {
  0% {
    opacity: 0;
    transform: scale(0) translate3d(-50%, 00%, 0);
    transform-origin: bottom center;
  }

  50% {
    opacity: 1;
    transform: scale(1) translate3d(-50%, -150%, 0);
    transform-origin: bottom center;
  }

  100% {
    opacity: 0;
    transform: scale(0.9) translate3d(-50%, -300%, 0);
    transform-origin: bottom center;
  }

}

.join_notifier {
  display: inline-block;
  position: relative;
  font-size: 30px;
  color: white;
  text-align: center;
  margin: 0 auto;
  margin-top: 35px;
}

.header-background {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgb(255, 255, 255);  /* Old browsers */
  background: -moz-linear-gradient(top, rgba(255, 255, 255, 0.12) 0%, rgba(252, 252, 252, 0.12) 100%);  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0.12) 0%, rgba(252, 252, 252, 0.12) 100%);  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0.12) 0%, rgba(252, 252, 252, 0.12) 100%);  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#fcfcfc', GradientType=0);  /* IE6-9 */
  filter: drop-shadow(0 3px 3px rgba(0, 0, 0, 0.85));
}

.header-background:after {
  content: "";
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 30px 0 30px;
  border-color: rgba(255, 255, 255, 0.12) transparent transparent transparent;
  bottom: 0;
  left: 50%;
  transform: translate3d(-50%, 100%, 0);
}

.header-slogan {
  position: relative;
  bottom: 5px;
  display: block;
  color: rgba(255, 255, 255, .9);
  font-size: 16px;
  width: 320px;
  text-align: center;
  margin: 0 auto;
  padding: 25px 36px;
  background: rgba(255, 255, 255, .08);
}

.header {
  position: relative;
  display: block;
  height: 360px;  /* max-height: 40vh; */
}

.header-slogan_background {
  position: relative;
  width: 100%;
  height: 220px;    /* top: 5px; */

  /* transform: translate3d(0, -100%,0); */
  margin: 0 auto;
  background-position: center bottom;
  background-size: contain;
  background-repeat: no-repeat;
}

.header-slogan:before,
.header-slogan:after {
  content: "";
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
}

.header-slogan:before {
  left: 0;
  top: 0;
  transform: translate3d(-100%, 0, 0);
  border-width: 0px 12px 86px 0;
  border-color: transparent rgba(255, 255, 255, 0.08) transparent transparent;
}

.header-slogan:after {
  right: 0;
  top: 0;
  transform: translate3d(100%, 0, 0);
  border-width: 0px 0 86px 12px;
  border-color: transparent transparent transparent  rgba(255, 255, 255, 0.08);
}

img.slogan-pic {
  max-width: 100%;
  position: absolute;
  top: 5px;
  transform: translate3d(-50%, -100%, 0);
  left: 50%;
}

span.animated-dots {
  display: block;
  margin: 15px auto;
  position: relative;
  text-align: center;
}

.animated-dots font {
  position: relative;
  display: inline-block;
  width: 10px;
  height: 10px;
  background: white;
  border-radius: 100%;
  animation: dot-animation 1s infinite;
  transition: 450ms all ease;
  margin: 0 8px;
}

.animated-dots font:nth-of-type(2) {
  animation-delay: 100ms;
}

.animated-dots font:nth-of-type(3) {
  animation-delay: 100ms;
}

.animated-dots.started font {
  animation: countdown 450ms ease;
  animation-fill-mode: forwards;
}

.animated-dots.started font:nth-of-type(2) {
  animation-delay: 2s;
}

.animated-dots.started font:nth-of-type(3) {
  animation-delay: 3s;
}

.animated-dots font span {
  font-size: 8px;
  color: white;
  top: 50%;
  left: 50%;
  position: absolute;
  transform: translate3d(-50%, -50%, 0);
  width: auto;
  display: block;
}

@keyframes countdown {
  from {
    transform: scale(1.1);
    margin: 0 0;
    background: rgba(255, 255, 255, 1);
    vertical-align: bottom;
    transform-origin: center;
  }

  to {
    transform: scale(8);
    margin: 0 45px;
    background: rgba(255, 255, 255, 0.3);
    vertical-align: bottom;
    transform-origin: top;
  }

}

@keyframes dot-animation {
  0% {
    transform: scale(1);
    opacity: 0.5
  }

  30% {
    transform: scale(1.3);
    opacity: 1;
  }

  100% {
    transform: scale(1);
    opacity: 0.5
  }

}

.score-info div:last-of-type {

  /* margin-top: 25px; */
  text-align: center;
  font-size: 21px;
}

.score-info {
  position: relative;
  display: block;
  width: 320px;
  max-width: 100%;
  font-size: 18px;
}

.score-info_divider {
  position: relative;
  margin: 0 auto;
  width: 57px;
  height: 4px;
  background: white;
  margin: 15px auto;
}

.countdown {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate3d(-50%, -50%, 0);
}

.countdown_number {
  font-size: 200px;
  color: white;
}



@media screen and (max-width:500px) {
  .header {
    height: auto;
    padding: 10px 0;
  }
}
