/* set size of root element */
html{
    font-size: 7px;    
}

/* set border-box style for all elements of webpage */
*{
  box-sizing: border-box;
  font-family: Arial, Helvetica, sans-serif;
}

/* set margin of body element as 0 (because there is some margin by default) */
body{
  margin: 0;
}

.bg-container{
  height: 100vh;
  background-color: #0C1126;
  overflow-y: auto;
}

/* header */
.page-header{
  height: 10vh;
  padding: 1.5rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  box-shadow: 1rem 1rem 2rem 2rem rgb(4, 31, 70);
}

.logoAndTitle-container{
    display: flex;
    justify-content: flex-start;
    align-items: center;
    width: 18%;
}

.logoAndTitle-container img{
    width: 3rem;
    height: 3rem;
    border-radius: 2.5rem;
    margin-right: 0.8rem;
    max-height: 3rem;
    max-width: 3rem;
}

.titlepara{
    color: #CECFD3;
    font-size: 1.1rem;
    font-weight: 600;
}

.searchboxAndProfile-container{
    display: flex;
    justify-content: flex-end;
    align-items: center;
    width: 55%;
}

.search-box{
    padding: 0.5rem;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    background-color: #12183F;
    border-radius: 0.5rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 70%;
    margin-right: 0.8rem;
}

.search-box input{
    font-size: 1.1rem;
    padding: 0.6rem;
    padding-left: 0.1rem;
    background-color: transparent;
    width: 80%;
    height: 0.7rem;
    border: 0;
    margin-left: 0.3rem;
    margin-right: 0.3rem;
    color: white;
}

.search-box input:focus{
  outline: none;
}

.search-box i{
    color: white;
    /* font-size: 2rem; */
}

.profile-photo{
    width: 3rem;
    height: 3rem;
    border-radius: 1.5rem;
    margin-left: 0.8rem;
}

.bell{
    color: #E7E7E6;
}

/* content */
main{
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  height: 90vh;
  overflow-y: auto;
  padding: 1.8rem;
  padding-top: 1rem;
  padding-bottom: 0rem;
}

/* carousel */
.carousel-container{
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 2rem;
}

.img-container{
  width: 33%;
}

.img-container img{
  width: 100%;
  border-radius: 0.7rem;
}

/* give some negative margin to the middle image for carousel effect */
.img2{
  position: relative;
  padding-top: 0.7rem;
  padding-bottom: 0.7rem;
  width: 37%;
  margin-left: -4rem;
  margin-right: -4rem;
  z-index: 2;
}

.img2 img{
  position: relative;
}

/* by default opacity is applied on all the child in a div, to counter this problem we create the background image with added opacity to show the blur effect using the pseudo element */
.img2::before {    
  content: "";
  background-image: url(../../songs/carousel-2.jpg);
  background-size: cover;
  position: absolute;
  border-radius: 0.7rem;
  top: 0px;
  right: 0px;
  bottom: 0px;
  left: 0px;
  opacity: 0.5;
}

/* hover effect of carousel using transition */
.img1{
  transition: all 0.3s ease-in-out;
}

.img1:hover{
  width: 37%;
}

/* hover effect of carousel using transition */
.img3{
  transition: all 0.3s ease-in-out;
}

.img3:hover{
  width: 37%;
}

/* queue */
.queue-container{
  width: 95%;
  margin-bottom: 2rem;
}

#queue-2{
  display: none;
}

.queue-header{
  color: #CECFD3;
  font-size: 1.1rem;
  font-weight: 700;
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

/* implementing the dropdown(on queue button click) via checbox */

/* hide the checkbox */
.queue-header input{
  display: none;
}

.queue-header label{
  font-size: 0.8rem;
  color: #51E2C2;
}

.queue-btn-container{
  position: relative;
}

/* set position of dropdown absolute to the label to appear over other elements , set height 0 and overflow hidden add transition effect */
.queue-btn-dropdown{
  position: absolute;
  height: 0;
  overflow: hidden;
  top: 1.5rem;
  left: -4rem;
  background-color: white;
  text-align: center;
  transition: all 0.2s linear;
}

.queue-btn-dropdown a{
  text-decoration: none;
  font-size: 0.8rem;
  color: black;
}

/* on clicking the label dropdown will appear, make height non zero */
#mycheckbox:checked ~ div{
  height: 4.7rem;
  padding: 0.3rem;
}

#mycheckbox2:checked ~ div{
  height: 4.7rem;
  padding: 0.3rem;
}

/* queue elements */
.queue-elements-container{
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
}

.queue-element{
  margin-bottom: 0.6rem;
  width: 100%;
  background-color: #24273D;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-left: 2rem;
  padding-right: 2rem;
}

.song-image-container{
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.queue-number{
  font-size: 0.8rem;
  color: #8092A1;
  margin-right: 1rem;
}

.image-container{
  position: relative;
}

.queue-song-img{
  width: 3rem;
  border-radius: 0.4rem;
  margin-right: 1rem;
}

.queue-song-img ~i{
  transition: all 0.2s ease-in-out;
}

.queue-song-img ~i:hover{
  opacity: 0.9;
  height: 1rem;
}

.queue-song-img:hover ~ i{
  opacity: 0.9;
  height: 1rem;
}
.play-btn{
  position: absolute;
  height: 0;
  overflow: hidden;
  color: white;
  top: 1rem;
  left: 1rem;
}

.queue-song-name{
  font-size: 0.9rem;
  color: #F6F7F9;
}

.queue-artist-name{
  font-size: 0.9rem;
  color: #8A909D;
}

.wishlist-icon{
  color: #92A6B3;
}

.currently-on-song{
  color: #21B6D9;
  transform: rotate(-90deg);
  margin-right: 0.9rem;
}

/* latest-release */
.latest-release-container{
  width: 100%;
  margin-bottom: 2rem;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

.latest-release-header{
  width: 100%;
}

.latest-release-header p{
  color: #CECFD3;
  font-size: 1.1rem;
  font-weight: 700;
}

.latest-release-cards-container{
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 0.7rem;
}

.latest-release-card{
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  width: 47%;
}

.song-name-and-img-container{
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

.latest-release-img-container{
  background-image: url(../../songs/latest-release-onism.jpg);
  background-size: cover;
  height: 5rem;
  width: 5rem;
  margin-right: 1rem;
  position: relative;
}

.latest-release-play-btn{
  position: absolute;
  height: 0;
  overflow: hidden;
  color: white;
  top: 2rem;
  left: 2rem;
}

.latest-release-pause-btn{
  position: absolute;
  height: 0;
  overflow: hidden;
  color: white;
  top: 2rem;
  left: 2rem;
}

.latest-release-img-container:hover .latest-release-play-btn{
  height: 1rem;
}

/* on clicking the play buttons ,make the footer visible */
#play-btn-checkbox1:checked ~ footer ,
#play-btn-checkbox2:checked ~ footer ,
#play-btn-checkbox3:checked ~ footer ,
#play-btn-checkbox4:checked ~ footer{
  display: block;
}

/* on clicking the play btns , make its height 0 (display none) */
#play-btn-checkbox1:checked ~ .for-responsiveness > main > .latest-release-container div:nth-child(even) div:first-child > .song-name-and-img-container > .latest-release-img-container > label > i.play-1 ,

#play-btn-checkbox2:checked ~ .for-responsiveness > main > .latest-release-container div:nth-child(even) div:last-child > .song-name-and-img-container > .latest-release-img-container > label > i.play-2 ,

#play-btn-checkbox3:checked ~ .for-responsiveness > main > .latest-release-container div:last-child div:first-child > .song-name-and-img-container > .latest-release-img-container > label > i.play-3 ,

#play-btn-checkbox4:checked ~ .for-responsiveness > main > .latest-release-container div:last-child div:last-child > .song-name-and-img-container > .latest-release-img-container > label > i.play-4
 {
  height: 0;
  overflow: hidden;
}

/* on clicking the play btns, make the height of pause btn non zero */
#play-btn-checkbox1:checked ~ .for-responsiveness > main > .latest-release-container div:nth-child(even) div:first-child > .song-name-and-img-container > .latest-release-img-container > label > i.pause-1 ,

#play-btn-checkbox2:checked ~ .for-responsiveness > main > .latest-release-container div:nth-child(even) div:last-child > .song-name-and-img-container > .latest-release-img-container > label > i.pause-2 ,

#play-btn-checkbox3:checked ~ .for-responsiveness > main > .latest-release-container div:last-child div:first-child > .song-name-and-img-container > .latest-release-img-container > label > i.pause-3 ,

#play-btn-checkbox4:checked ~ .for-responsiveness > main > .latest-release-container div:last-child div:last-child > .song-name-and-img-container > .latest-release-img-container > label > i.pause-4
{
  height: 1rem;
}

/* on cliking the play btns, reduce the height of main content to make space for footer */
#play-btn-checkbox1:checked ~ .for-responsiveness > main ,
#play-btn-checkbox2:checked ~ .for-responsiveness > main ,
#play-btn-checkbox3:checked ~ .for-responsiveness > main ,
#play-btn-checkbox4:checked ~ .for-responsiveness > main
{
  height: 75vh;
}

/* on cliking the play btns, reduce the height of queue-container to make space for footer */
#play-btn-checkbox1:checked ~ .for-responsiveness > #queue-2 ,
#play-btn-checkbox2:checked ~ .for-responsiveness > #queue-2 ,
#play-btn-checkbox3:checked ~ .for-responsiveness > #queue-2 ,
#play-btn-checkbox4:checked ~ .for-responsiveness > #queue-2
{
  height: 75vh;
}

.song-name{
  color: #FCFCFD;
  font-size: 0.8rem;
}

.date{
  color: #E2E3E5;
  font-size: 0.7rem;
}

.more-details{
  color: #93A9B2;
  font-size: 0.8rem;
}

.time{
  color: #8D8C93;
  font-size: 0.6rem;
}

.latest-release-dropdown-container{
  position: relative;
}

.latest-release-dropdown{
  position: absolute;
  z-index: 2;
  height: 0;
  overflow: hidden;
  top: 1rem;
  left: -6.9rem;
  background-color: white;
  text-align: center;
  transition: all 0.2s linear;
}

.latest-release-dropdown a{
  text-decoration: none;
  font-size: 0.8rem;
  color: black;
}

#latest-release-checkbox1,#latest-release-checkbox2,#latest-release-checkbox3,#latest-release-checkbox4{
  display: none;
}

#latest-release-checkbox1:checked ~ div,#latest-release-checkbox2:checked ~ div,#latest-release-checkbox3:checked ~ div,#latest-release-checkbox4:checked ~ div{
  height: 8rem;
  width: 8.7rem;
  padding: 0.3rem;
}

.links-container{
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

.links-container i{
  color: #8D89AD;
  margin-right: 0.7rem;
}

/* popular artists */
.popular-artists-container{
  width: 100%;
  margin-bottom: 2rem;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

.popular-artists-header{
  width: 100%;
}

.popular-artists-header p{
  color: #CECFD3;
  font-size: 1.1rem;
  font-weight: 700;
}

.popular-artists-img-container{
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 0.7rem;
}

.popular-artists-1-container{
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  text-align: center;
  width: 15%;
}

.popular-artists-1-container p{
  color: white;
  font-size: 0.8rem;
}

.popular-artists-img1-container{
  width: 75%;
  position: relative;
  overflow: hidden;
}

.popular-artists-img1-container:before{
  content: "";
  display: block;
  padding-top: 100%;
}

.popular-artists{
  position: absolute;
  padding-top: 42%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: url(../../songs/ed-sheeran.jpg);
  background-position: center;
  background-size: 100% 100%;
  background-size: cover;
  border-radius: 4rem;
  transition: all 0.2s ease-in-out;
}

.popular-artists-2{
  background-image: url(../../songs/cold-play.jpg) !important;
}

.popular-artists-3{
  background-image: url(../../songs/zayn.jpg) !important;
}

.popular-artists-4{
  background-image: url(../../songs/charlie-puth.jpg) !important;
}

.popular-artists-5{
  background-image: url(../../songs/imagine-dragon.jpg) !important;
}

.popular-artists-6{
  background-image: url(../../songs/bruno-mars.jpg) !important;
}

.popular-artists > a{
  position: static;
  height: 0;
  display: none;
  overflow: hidden;
  color: white;
}

.popular-artists:hover > a{
  height: 4rem;
  display: inline;
}

.popular-artists:hover{
  opacity: 0.7;
  color: white;
}

/* stations */
.stations-container{
  width: 100%;
  background-color: #101743;
  display: flex;
  align-items: center;
  justify-content: space-around;
  margin-bottom: 4rem;
}

.stations-logo-container{
  width: 18%;
  position: relative;
  overflow: hidden;
}

.stations-logo-container:before{
  content: "";
  display: block;
  padding-top: 100%;
}

.stations-logo-img-container{
  position: absolute;
  width: 100%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: url(../images/stations-img.png);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.stations-img-container{
  width: 12%;
  position: relative;
}

.stations-img{
  width: 100%;
  overflow: hidden;
  position: relative;
}

.stations-img:before{
  content: "";
  display: block;
  padding-top: 100%;
}

.img-1{
  filter: blur(1.1px);
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: url(../images/love.jpg);
  background-position: center;
  background-size: 100% 100%;
  background-size: cover;
  border-radius: 4rem;
}

.img-2{
  background-image: url(../images/retro.png) !important;
}

.img-3{
  background-image: url(../images/chill.jpg) !important;
}

.img-4{
  background-image: url(../images/workout.jpg) !important;
}

.img-5{
  background-image: url(../images/rock.jpg) !important;
}

.img-6{
  background-image: url(../images/pop.jpg) !important;
}

.stations-para{
  font-weight: bold;
  text-align: center;
  position: absolute;
  color: white;
  top: 50%;
  margin-top: -5px;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  font-size: 0.9rem;
}

/* genre */
.genre-container{
  width: 100%;
  margin-bottom: 2rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.genre-img-container{
  width: 32%;
  height: 9rem;
  background-image: url(../images/party.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100% 100%;
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  transition: all 0.3s ease-in-out;
}

.genre-img-container:hover{
  background-size: 120% 120%;
}

.genre-img-container p{
  color: #FAFAFB;
  text-align: center;
  font-size: 1.3rem;
  position: absolute;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
}

.genre-img-2{
  background-image: url("../images/electronic.jpg");
}

.genre-img-3{
  background-image: url("../images/road-trip.jpg");
}

/* latest-english */
.latest-english-container{
  width: 100%;
  margin-bottom: 2rem;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

.latest-english-header{
  width: 100%;
}

.latest-english-header p{
  color: #CECFD3;
  font-size: 1.1rem;
  font-weight: 700;
}

.latest-english-content{
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 0.7rem;
}

.latest-english-card-container{
  width: 14%;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
}

.latest-english-card-container img{
  width: 100%;
}

.latest-english-card-container p{
  color: #FFFEFE;
  font-size: 0.7rem;
}

/* footer (audio player controls)*/
footer{
  display: none;
  width: 100%;
  height: 15vh;
  background-color: #282828;
  padding-left: 1.8rem;
  padding-right: 1.8rem;
}

.audio-player-container{
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.current-song-container{
  width: 23%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
}

.current-song-container img{
  width: 60%;
  max-width: 80px;
  max-height: 37px;
}

.current-song-container p{
  font-size: 0.7rem;
  color: #EAEAEA;
}

.current-song-container button{
  background-color: transparent;
  border: 0;
}

.current-song-container i{
  color: #ACADAD;
  font-size: 0.9rem;
}

.current-song-controls-container{
  width: 46%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.controls-button-container{
  width: 70%;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.controls-button-container button{
  background-color: transparent;
  border: 0;
}

.controls-button-container i{
  font-size: 0.8rem;
  color: #B3B2B2;
}

.progress-time-container{
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.progress-time-container p{
  font-size: 0.5rem;
  color: #B3B2B2;
}

.progress-container{
  width: 85%;
  height: 0.3rem;
  background-color: #404040;
  border-radius: 2rem;
  position: relative;
}

.progress{
  width: 40%;
  height: inherit;
  border-top-left-radius: inherit;
  border-bottom-left-radius: inherit;
  background-image: linear-gradient(to right,#1ED860,#24DB6A,#33E485,#3FEC99);
}

.circle{
  position: absolute;
  border-radius: 6rem;
  width: 0.7rem;
  height: 0.7rem;
  background-color: white;
  left: 39%;
  top: 50%;
  margin-top: -0.35rem;
}

.current-song-more-options-container{
  width: 23%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
}

.current-song-more-options-container button{
  background-color: transparent;
  border: 0;
  color: #B3B2B2;
}

.current-song-more-options-container i{
  font-size: 0.8rem;
}

.sound-progress-container{
  width: 40%;
  height: 0.3rem;
  background-color: #404040;
  border-radius: 2rem;
  position: relative;
}

.sound-progress{
  width: 20%;
  height: inherit;
  border-top-left-radius: inherit;
  border-bottom-left-radius: inherit;
  background-image: linear-gradient(to right,#489925,#58A42B,#86CB3E,#9EDC46);
}

.sound-circle{
  position: absolute;
  border-radius: 6rem;
  width: 0.7rem;
  height: 0.7rem;
  background-color: white;
  left: 18%;
  top: 50%;
  margin-top: -0.35rem;
}

/* hide scrollbar */

/* Hide scrollbar for Chrome, Safari and Opera */
main::-webkit-scrollbar {
  display: none;
}

/* Hide scrollbar for IE, Edge and Firefox */
main {
-ms-overflow-style: none;  /* IE and Edge */
scrollbar-width: none;  /* Firefox */
}

/* Hide scrollbar for Chrome, Safari and Opera */
#queue-2::-webkit-scrollbar {
  display: none;
}

/* Hide scrollbar for IE, Edge and Firefox */
#queue-2 {
-ms-overflow-style: none;  /* IE and Edge */
scrollbar-width: none;  /* Firefox */
}

/* media query for extra small devices */
@media (min-width: 365px)
{
  html{
    font-size: 9px;
  }
}

/* media query for small devices */
@media (min-width: 576px)
{
    html{
        font-size: 11px;
    }
    
}

/* media query for medium devices */
@media (min-width: 768px){
    html{
        font-size: 13px;
    }

    .current-song-container {
      flex-direction: row;
    }

    .current-song-container img{
      width: 25%;
      margin-right: 1rem;
      max-height: none;
    }

    .current-song-button-container{
      display: flex;
      flex-direction: row;
    }

    .current-song-more-options-container{
      flex-direction: row;
    }

    .for-responsiveness{
      padding-left: 3rem;
      padding-right: 3rem;
      display: flex;
      justify-content: space-between;
    }

    main{
      width: 60%;
    }

    #queue-1{
      display: none;
    }

    #queue-2{
      display: block;
      width: 35%;
      height: 90vh;
      overflow-y: auto;
      margin-bottom: 0;
    }
}

/* media query for large devices */
@media (min-width: 992px){
    html{
        font-size: 15px;
    } 
}

/* media query for extra-large devices */
@media (min-width: 1200px){
    html{
        font-size: 17px;
    }
}



