@import url('https://fonts.googleapis.com/css?family=Open+Sans:300,400,600,700');

@-webkit-keyframes translateUp {
    from {transform:translate3d(0, 0, 0)}
    from {transform:translate3d(0, -200px, 0)}
}

@keyframes translateUp {
    from {transform:translate3d(0, 0, 0)}
    from {transform:translate3d(0, -200px, 0)}
}

@-webkit-keyframes translateDown {
    from {transform:translate3d(0, 0, 0)}
    from {transform:translate3d(0, 200px, 0)}
}

@keyframes translateDown {
    from {transform:translate3d(0, 0, 0)}
    from {transform:translate3d(0, 200px, 0)}
}

@-webkit-keyframes translateTop {
    from {top: 35vh; font-size: 50px;}
    from {top: -20px; font-size: 30px;}
}

@keyframes translateTop {
    from {top: 35vh; font-size: 50px;}
    from {top: -20px; font-size: 30px;}
}

@-webkit-keyframes translateTopTitleCreate {
    from {top: 66vh;}
    from {top: 40px;}
}

@keyframes translateTopTitleCreate{
    from {top: 66vh;}
    from {top: 40px;}
}

@-webkit-keyframes translateTopTitleCreate{
    from {top: 66vh;}
    from {top: 40px;}
}

@keyframes translateIdToBottom{
    from {transform: translate3d(0, 0, 0)}
    from {transform: translate3d(0, 400px, 0)}
}

@-webkit-keyframes translateIdToBottom{
    from {transform: translate3d(0, 0, 0)}
    from {transform: translate3d(0, 400px, 0)}
}

@keyframes reducePadding{
    from {padding: 20px 0px 20px 5px;}
    from {padding: 7px 0px 7px 5px;}
}


/* @keyframes showSearchBar{
    from {transform: translate3d(0, 0, 0)}
    from {transform: translate3d(0, 400px, 0)}
}

@-webkit-keyframes showSearchBar{
    from {transform: translate3d(-2vw, 0, 0)}
    to {transform: translate3d(-60vw, 0, 0)}
}

@keyframes showSearchBar{
    from {transform: translate3d(-2vw, 0, 0)}
    to {transform: translate3d(-60vw, 0, 0)}
}

@-webkit-keyframes hideSearchBar{
    from {transform: translate3d(-60vw, 0, 0)}
    to {transform: translate3d(-2vw,0 , 0)}
}

@keyframes hideSearchBar{
    from {transform: translate3d(-60vw, 0, 0)}
    to {transform: translate3d(-2vw,0 , 0)}
} */






/* .translateUp{
  transform: translate3d(0, -200px, 0)
} */

/* .translateDown{
  transform: translate3d(0, 200px, 0);
} */

.translateTop{
  transform: translate3d(-34vw, -36.5vh, 0);
  font-size: 1.6em;
}

html{
    margin: 0;
    padding: 0;
    background-color: #FFFFFF;
    max-height: calc(100vh - 65px);
    max-width: calc(100vw);
    position: absolute;
    top: 0;
    min-height: calc(100vh - 65px);
    min-width: calc(100vw);
 /*    margin-top: 65px; */
}

.title{
  display: flex;
  justify-content: center;
  align-items: center;
}

h1{
  font-family: 'Open sans';
  font-weight: 700;
  color: black;
  font-size: 50px;
  line-height: 
}

h2{
  font-family: 'Open sans';
  font-weight: 300;
  color: #333333;
  font-size: 23px;
  margin: 10px 0 10px 0;
}

body{
    max-height: calc(100vw);
    max-width: calc(100vh - 65px);
    margin: 0;
    min-width: calc(100vw);
    min-height: calc(100vh - 65px);
    position: absolute;
    top: 0;
    left: 0;
}

p{
    visibility: hidden;
    position: absolute;
    top: 0;
    width: 80%;
    left: 0;
    height: 100%;
    margin: 0;
    z-index: 2;
}

.name{
  position: absolute;
  top: 35vh;
  color: black;
  animation-direction: reverse !important;
  animation-timing-function: ease-in-out !important ;
  -webkit-animation-fill-mode: forwards  !important;/* Safari 4.0 - 8.0 */
    animation-fill-mode: forwards !important;
}

#backgroundImage{
  position: absolute;
    height: 50vh;
    /* left: 0; */
    width: 100vw;
    background-position: center top;
    background-repeat: no-repeat;
    background-size: contain;
  background-image: url('homeBackground.jpeg');
/*  transition: transform 0.3s ease-in-out; */
  animation-direction: reverse !important;
  animation-timing-function: ease-in-out !important ;
  -webkit-animation-fill-mode: forwards  !important;/* Safari 4.0 - 8.0 */
    animation-fill-mode: forwards !important;
}

#join{
  animation-direction: reverse !important;
  animation-timing-function: ease-in-out !important ;
  -webkit-animation-fill-mode: forwards  !important;/* Safari 4.0 - 8.0 */
    animation-fill-mode: forwards !important;
    position: absolute;
    top:80vh;
    width: 80vw;
    text-align: center;
  left: calc(50% - 40vw);
}

#create{
  position: absolute;
   top: 66vh;
      width: 80vw;
      text-align: center;
  margin-top: 10px;
  left: calc(50% - 40vw);
  animation-direction: reverse !important;
  animation-timing-function: ease-in-out !important ;
  -webkit-animation-fill-mode: forwards  !important;/* Safari 4.0 - 8.0 */
    animation-fill-mode: forwards !important;
}

#roomId{
  position: absolute;
  z-index: -1;
  bottom: 8vh;
    width: 70vw;
    text-align: center;
  left: calc(50% - 35vw);
  animation-direction: reverse !important;
  animation-timing-function: ease-in-out !important ;
  -webkit-animation-fill-mode: forwards  !important;/* Safari 4.0 - 8.0 */
    animation-fill-mode: forwards !important;
}

.options{
  height: calc(100vh - 65px);
  width: 100vw;
  left: 0;
  top: 0;
/*  top: 60vh; */
  position: absolute;
/*  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column; */

}

.joinCode{
  font-size: 20px;
  color: #23CF5F;
  font-family: 'Open sans';
  font-weight: 300;
  margin-bottom: 0;
}

#label{
  opacity: 0;
}

.continueButton{
  width: 125px;
    height: 125px;
    background-image: url('continue.svg');
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    position: absolute;
    left: calc(50% - 50px);
    top: 15vh;
    z-index: 2;
    background-position: center;
}

.continueGreen{
  background-image: url('continueGreen.svg')
}

.addSongButton{
    background-image: url('add.svg');
    background-position: center;
    background-size: 60%;
    border-radius: 50%;
    background-color: #23CF5F;
    position: absolute;
    width: 40px;
    background-repeat: no-repeat;
    height: 40px;
    right: 6vw;
    top: 3.5vh;
    z-index: 7;
}

.searchIcon{
  background-image: url('search.svg');
}

.searchBar{
    bottom: 0;
    position: absolute;
    z-index: 1;
    width: 100vw;
    left: 0;
    -webkit-animation-fill-mode: forwards !important;
    animation-fill-mode: forwards !important;
    background-color: transparent;
    color: white;
    font-size: 50px;
    text-align: left;
    padding-left: 10px;
}

.backArrow{
  width: 50px;
  height: 50px;
  background-image: url('before.svg');
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  top: 10px;
  left: 10px;
}

.spotifySignIn{
  width: 80px;
  height: 80px;
  position: fixed;
  display: none;
  top: 350px;
  left: calc(50% - 35px);
  background-image: url('logo.svg');
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  z-index: 2;
}

.spotifyGreen{
  background-image: url('logoGreen.svg');
}

.upvoteButton{
    background-image: url('upvote.svg');
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    width: 40px;
    height: 40px;
    position: absolute;
    top: 2px;
    right: 6vw;
    z-index: 2;
}

.downButton{
    background-image: url('down.svg');
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    width: 40px;
    height: 40px;
    position: absolute;
    top: 2px;
    right: 20vw;
    z-index: 2;
}

.vote{
  font-family: 'Open sans';
    font-size: 23px;
    position: absolute;
    font-weight: 300;
    color: #333;
    top: 10%;
    right: 16vw;
}





























input::-webkit-input-placeholder {
color: white !important;
}

.songContainer{
    width: 100%;
    height: 90vh;
    position: absolute;
    overflow-y: scroll;
    top: 11vh;
    display: flex;
    flex-direction: column;
}

.queueContainer{
    width: 100%;
    height: 90vh;
    position: absolute;
    overflow-y: scroll;
    top: 11vh;
    display: flex;
    flex-direction: column;
}

.songBox{
      width: 77.5%;
  height: 12vh;
  min-height: 80px;
  position: relative;
  padding-left: 22.5%;
      z-index: 2;
}

.songTitle{
    margin: 0;
    font-weight: 600;
    font-size: 18px;
    width: 67%;
}

.artistName{
margin: 0;
    font-family: 'Open sans';
    font-weight: 300;
    font-size: 15px;
    color: #888;
    margin-top: -3px;
}

.imageName{
    position: absolute;
    background-color: grey;
    left: 2.5%;
    width: auto;
    height: 90%;
    top: 10%;
}

.songLength{
    margin: 0;
    font-family: 'Open sans';
    font-size: 15px;
    color: #23CF5F;
    font-weight: 300;
}

.sampleButton{
  background-image: url('playArrow.svg');
  height: 7vh;
    width: 7vh;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: absolute;
    right: 5%;
    top: 0.5vh;
}

.backgroundDark{
    height: 15vh;
    position: fixed;
    /* transform: translate3d(0, -15vh, 0); */
    background: -moz-linear-gradient(top, rgba(0,0,0,0) 0%, rgba(0,0,0,0.65) 100%);
    background: -webkit-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.65) 100%);
    background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,0.65) 100%);
    bottom: 0;
    margin: 0;
    padding: 0;
    width: 100vw;
    z-index: 3;
    left: 0;
}

.controlContainer{
    display: flex;
    align-items: center;
    width: 100%;
    height: 100%;
    width: 100%;
    position: relative;
    justify-content: center;
}

.back{
  background-image: url('./skipPrev.svg');
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 60px;
  height: 60px;
}

.play{
  background-image: url('./playMin.svg');
    background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  margin: 0 50px 0 50px;
  width: 60px;
  height: 60px;
}

.next{
   background-image: url('./skipNexy.svg');
     background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
     width: 60px;
  height: 60px;
}



















.group        { 
  position:relative; 
  margin-bottom:45px; 
}
input         {
  font-size:23px;
  padding: 20px 0px 20px 5px;
  display:block;
  width:100%;
  border:none;
  text-align: center;
  border-bottom:1px solid #757575;
    animation-direction: reverse !important;
  animation-timing-function: ease-in-out !important ;
  -webkit-animation-fill-mode: forwards  !important;/* Safari 4.0 - 8.0 */
    animation-fill-mode: forwards !important;
}
input:focus     { outline:none; }

/* LABEL ========p=============================== */
label          {
  color:#999; 
  font-size:25px;
  font-weight:normal;
  position:absolute;
  font-family: 'Open sans';
  pointer-events:none;
  text-align: center;
  left: 23.5%;
  top: 20px;
  transition:0.2s ease all; 
  -moz-transition:0.2s ease all; 
  -webkit-transition:0.2s ease all;
    animation-direction: reverse !important;
  animation-timing-function: ease-in-out !important ;
  -webkit-animation-fill-mode: forwards  !important;/* Safari 4.0 - 8.0 */
    animation-fill-mode: forwards !important;
}

/* active state */
input:focus ~ label, input:valid ~ label    {
  top:-20px;
  font-size:25px;
  color:#23CF5F;
}

/* BOTTOM BARS ================================= */
.bar  { position:relative; display:block; width:100%; }
.bar:before, .bar:after   {
  content:'';
  height:2px; 
  width:0;
  bottom:1px; 
  position:absolute;
  background:#23CF5F; 
  transition:0.2s ease all; 
  -moz-transition:0.2s ease all; 
  -webkit-transition:0.2s ease all;
}
.bar:before {
  left:50%;
}
.bar:after {
  right:50%; 
}

/* active state */
input:focus ~ .bar:before, input:focus ~ .bar:after {
  width:50%;
}

/* HIGHLIGHTER ================================== */
.highlight {
  position:absolute;
  height:60%; 
  width:100px; 
  top:25%; 
  left:0;
  pointer-events:none;
  opacity:0.5;
}

/* active state */
input:focus ~ .highlight {
  -webkit-animation:inputHighlighter 0.3s ease;
  -moz-animation:inputHighlighter 0.3s ease;
  animation:inputHighlighter 0.3s ease;
}

/* ANIMATIONS ================ */
@-webkit-keyframes inputHighlighter {
  from { background:#23CF5F; }
  to  { width:0; background:transparent; }
}
@-moz-keyframes inputHighlighter {
  from { background:#23CF5F; }
  to  { width:0; background:transparent; }
}
@keyframes inputHighlighter {
  from { background:#23CF5F; }
  to  { width:0; background:transparent; }
}