html *
{
   font-family: Arial;
}

body {
  overflow-x: auto;
  overflow-y: auto;
  background-color: #cfcfcf ;
}

/* Logo header begin */
#header-logo:link {
  text-decoration: none;
}

#header-logo:hover {
  text-decoration: none;
}

#header-logo:active {
  text-decoration: none;
}
/* Logo header end */

#top-bar{
  grid-row-start: 2;
  grid-column-start: 1;
}


#login {
   text-align: center;
   color: white;
}

#header-title {
   text-align: center;
   color: black;
   margin-top: 50px;
}

#header-title:hover {
  color: #8884FF;
  cursor: pointer;
}

#page-title {
  color: black;
  text-align: right;
  font-weight: bold;
  font-size: 24px;
  margin-top: 70px;
  grid-row-start: 1;
  grid-column-start: 2;
  padding-top: 65px;
  padding-left: 25px;
}

#mySearch {
   width: 100%;
   font-size: 18px;
   border: solid transparent 1px;
   background-color: #efefef;
   border-radius: 100000px;
   text-indent: 2px;
 }

#type-input {
   -webkit-transition: width 0.4s ease-in-out;
   transition: width 0.4s ease-in-out;
}

#type-input:focus {
   border: 3px solid white;
   width: 30%;
}

#id-input {
   -webkit-transition: width 0.4s ease-in-out;
   transition: width 0.4s ease-in-out;
}

#id-input:focus {
   border: 3px solid white;
   width: 30%;
}

#music-functions {
  padding-top: 5px;
   grid-row-start: 1; 
   grid-column-start: 3;
   text-align: center; 
}

#song-display {
   background-color: #7C7C7C;   
   grid-row-start: 3;
   grid-column-start: 1; 
   grid-row-end: 3;
   grid-column-end: 1;
   height: 100%;
   width: 100%;
   display: grid;
   grid-template-columns: 33% 33% 33%;
   transition: 0.4s;
   overflow: auto; 
}

#song-img {
  width: 100px;
  height: 100px;
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
  text-align: center;
}

#art-display{
    -webkit-box-reflect: below 3px linear-gradient(transparent, white);
}

#song-info-display {
  max-width: 100%;
  max-height: 50px;
  grid-row-start: 1;
  grid-column-start: 2;
}

#npName {
   font-size: 24px;
   font-weight: bold;
   color: white;
   max-width: 75%;
   white-space: nowrap; 
   overflow: hidden;
   text-overflow: ellipsis;
}

#npArtist {
   font-size: 14px;
   color: #eee;
   text-overflow: ellipsis;
}

#npAlbum {
   font-size: 12px;
   color: #eee;
   opacity: 75%;
   text-overflow: ellipsis;
}

#time {
  color: white;
  font-weight: bold;
}

#border {
   background: #eeeeee;
   border: 1px solid #eeeeee;
}

#add-to-q-btn {
   background: #23C9FF;
   border: transparent;
   border-radius: 10px;
   color: white;
}

#add-to-q-btn:hover {
   background-color: #A9CEF4;
   border-radius: 5px;
   border: transparent;
}

#q-list-btn {
   background: transparent;
   border: transparent;
   -webkit-transition-duration: 0.4s; /* Safari */
   transition-duration: 0.4s;
   margin-left: 8px;
   margin-right: 8px;
}

#q-list-btn:hover {
   background-color: #A9CEF4;
   border-radius: 5px;
   border: transparent;
}

#replay-btn {
   background: transparent;
   border: transparent;
   -webkit-transition-duration: 0.4s; /* Safari */
   transition-duration: 0.4s;
   margin-top: 10px;
}

#replay-btn:hover {
   background-color: #A9CEF4;
   border-radius: 5px;
   border: transparent;
}

#login-btn {
   background-color: white;
   border-radius: 5px;
   border: 1px solid #8884FF;
   color: #8884FF;
}

#login-btn:hover {
   background: #8884FF;
   border: transparent;
   border-radius: 5px;
   color: white;
}

#prev-trk-btn {
   background: transparent;
   border: transparent;
   -webkit-transition-duration: 0.4s; /* Safari */
   transition-duration: 0.4s;
}

#next-trk-btn {
   background: transparent;
   border: transparent;
   -webkit-transition-duration: 0.4s; /* Safari */
   transition-duration: 0.4s;
}

#playpause-btn {
   background: transparent;
   border: transparent;
   -webkit-transition-duration: 0.4s; /* Safari */
   transition-duration: 0.4s;
   margin-right: 8px;
   margin-left: 8px;
}

#shuffle-btn {
    background: transparent;
    border: transparent;
    -webkit-transition-duration: 0.4s; /* Safari */
    transition-duration: 0.4s;
}

#playpause-btn:hover {
   background-color: white;
   border-radius: 5px;
   border: transparent;
}

#prev-trk-btn:hover {
   background-color: #A9CEF4;
   border-radius: 5px;
   border: transparent;
}

#next-trk-btn:hover {
   background-color: #A9CEF4;
   border-radius: 5px;
   border: transparent;
}
#shuffle-btn:hover {
    background-color: #A9CEF4;
    border-radius: 5px;
    border: transparent;
}
/* Menu */

.tab-container {
   width:100%;
   /* added below */
   overflow: hidden; /* can we get rid of this??? */
   
}
#table-div{
  grid-row-start: 2;
  grid-row-end: 4;
  grid-column-start:2;
  grid-column-end: 4;
  overflow:scroll;
 /* max-height: 100%; 
  align-items: stretch;*/ 
}
#song-table{
  overflow:auto;
  -webkit-user-select: none; /* Safari */        
  -moz-user-select: none; /* Firefox */
  -ms-user-select: none; /* IE10+/Edge */
  user-select: none; /* Standard */
  border: 3px solid white;
}
table tr > *:nth-child(5) {
    display: none;
}
table tr > *:nth-child(6) {
    display: none;
}
th {
  text-align: left; 
}
tr:nth-child(even) {
  background-color: #efefef;
}
th:hover {
    background-color: white;
    color: #8884FF;
    border: 1px solid #8884FF;
}

#table-list:hover{
  background-color: #A9CEF4;
  color: white;
  overflow: auto;
  cursor: pointer;
}

.tab-container .button-container {
   height: 100%;
   width: 100%;
   cursor:pointer;
   padding: 1px 1px;

}

.tab-container .button-container button {
   height: 60px;
   width: 100%;
   float:left;
   background-color: #eee;
   color: #3A3335;
   font-size:16px;
   margin: 2px;
   /*font-family: sans-serif;*/
   /* margin: */ 
}

.tab-container .button-container button:hover {
   background-color: #8884FF;
   color: white;
}

.tab-container .tab-panel {
   background-color: gray;
   color: white;
   text-align: center;
   padding-top: 105px;
   box-sizing: border-box;
   font-family: sans-serif;
   font-size: 22px;
   display: none;
}

#slidercontainer {
    width: 100%; /* Width of the outside container */
  }
  
  /* The slider itself */
  #slide {
    -webkit-appearance: none;
    outline: none;
    -webkit-transition: .2s;
    transition: opacity .2s;
  }
  
  /* Mouse-over effects */
  #slide:hover {
    opacity: 1; /* Fully shown on mouse-over */
  }
  
  /* The slider handle (use -webkit- (Chrome, Opera, Safari, Edge) and -moz- (Firefox) to override default look) */ 
  #slide::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    width: 75%;
    height: 25px;
    border-radius: 50%; 
    background: #4CAF50;
    cursor: pointer;
  }

  #slide::-moz-range-thumb {
    width: 75%;
    height: 25px;
    border-radius: 50%;
    background: #4CAF50;
    cursor: pointer;
  }

  ol li:hover{
    color: grey;
  }

  #list {
    list-style-type: none;
   /* margin: 50px;
    padding: 50px; */
    
    display: inline-block;
    *display: inline;
    zoom: 1;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;

    
	  border: 1px solid #efefef;
    margin-top: 20px;
    background: linear-gradient(247deg, #2858e0, #ed35a0, #5ec580);
    background-size: 600% 600%;

    -webkit-animation: AnimationName 21s ease infinite;
    animation: AnimationName 21s ease infinite;

    @-webkit-keyframes AnimationName {
    0%{background-position:14% 0%}
    50%{background-position:87% 100%}
    100%{background-position:14% 0%}
    }
    @keyframes AnimationName { 
    0%{background-position:14% 0%}
    50%{background-position:87% 100%}
    100%{background-position:14% 0%}
    }
}

#listPlaylist {
    list-style-type: none;
   /* margin: 50px;
    padding: 50px; */
    width: 100%;
    height: 100%;
/*    display: inline-block;
    *display: inline; */
/*    zoom: 1;*/
    
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;


	/*border: 1px solid #efefef;*/
    /*margin-top: 75px;*/
/*    background: linear-gradient(247deg, #2858e0, #ed35a0, #5ec580);
    background-size: 100% 100%;

    -webkit-animation: AnimationName 21s ease infinite;
    animation: AnimationName 21s ease infinite;

    @-webkit-keyframes AnimationName {
    0%{background-position:14% 0%}
    50%{background-position:87% 100%}
    100%{background-position:14% 0%}
    }
    @keyframes AnimationName { 
    0%{background-position:14% 0%}
    50%{background-position:87% 100%}
    100%{background-position:14% 0%}
    }*/
}

#list-view{
    height: 100%;
    width: 100%;
    border: 1;
}

.split-view{
    display:none;
    grid-row-start: 2;
    grid-row-end: 4; 
    grid-column-start: 2;
    grid-column-end: 4; 
    border: 1px solid #eeeeee;
}
  .left {
    left: 0;
    background-color:pink;
    background: linear-gradient(247deg, #2858e0, #ed35a0, #5ec580);
    background-size: 100% 100%;
    overflow:auto;

    -webkit-animation: AnimationName 21s ease infinite;
    animation: AnimationName 21s ease infinite;

    @-webkit-keyframes AnimationName {
    0%{background-position:14% 0%}
    50%{background-position:87% 100%}
    100%{background-position:14% 0%}
    }
    @keyframes AnimationName { 
    0%{background-position:14% 0%}
    50%{background-position:87% 100%}
    100%{background-position:14% 0%}
    }

  }
/*  .centered{
    overflow:auto; 
  }*/
  /* Control the right side */
  .right {
    right: 0;
    background-color: pink;
    overflow:auto;
  }
  
  /* If you want the content centered horizontally and vertically */
/*  .centered {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
  }*/
  
  /* Style the image inside the centered container, if needed */
  .centered img {
    width: 150px;
    border-radius: 50%;
  }


/* Button effects for the table headers begin */


#table-header #table-song-col:hover {
  cursor:pointer;
  text-decoration: underline;

}

#table-header #table-artist-col:hover {
  cursor:pointer;
  text-decoration: underline;

}

#table-header #table-album-col:hover {
  cursor:pointer;
  text-decoration: underline;

}

#table-header #table-time-col:hover {
  cursor:pointer;
  text-decoration: underline;
}


/* Button effects for the table headers end */

/* css to make top bar sticky on scroll  */
.sticky {
    position: fixed;
    top: 0;
    width: 100%
}

.content{
    padding: 16px;
}
.sticky + .content {
    padding-top: 60px;
}
/* end of top bar stay */

.loader {
    border: 16px solid #f3f3f3; /* Light grey */
    border-top: 16px solid #3498db; /* Blue */
    border-radius: 50%;
    width: 100px;
    height: 100px;
    animation: spin 2s linear infinite;
    position: fixed;
    left: 0;
    right: 0;
    display: none;/* grid */
    grid-template-columns: 50% 50%;
    grid-template-rows: 50% 50%;
  }
  
  @keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
  }
  /* make right table in split view not clickable / highlight text */
  #song-table-right{
      -webkit-touch-callout: none;
      -webkit-user-select: none;
      -khtml-user-select: none;
      -moz-user-select: none;
      user-select: none;
  }

#overall-grid-container{
  display: grid; 
  /*align-items: stretch;*/

  grid-template-rows: 1fr 1.5fr 1fr;
  grid-template-columns: 30% 35% 35%;
  /* overflow: scroll;  */
  height:100%;
  width: 100%; 

}

.grey-view{
    background-color: #cfcfcf;
    grid-row-start: 1;
    grid-row-end: 4;
    grid-column-start:2;
    grid-column-end: 4;
    /* display: none; */

}
.coverflow-container {
    /* center */
    /* align-items: center; 
    justify-items: center; */
    height: 150px; 
    position: inherit;
    padding: 70px;
    /* top: 0; 
    bottom: 0; 
    left: 0; 
    right: 0; */
    margin: auto;
    
    text-align: center;
    
    /* these are the same as everydaypanos' */
    perspective: 500px;  
    transform-style: preserve-3d;
    }
  
  .cover {
    height: 150px;
    width: 150px;
    display: inline-block;
    margin: 0 -50px;  
    transform:
      rotateY(45deg);  
    transition: .3s;
    border-radius:15px;
    border: 0px solid #777;
    background-color: transparent; /*rgba(0,0,0,0.3);*/    
    line-height: -50px; /* 150px */
    cursor: pointer;
    }
  
  .active {
    margin: 0;
    transform: none;
    }
    .active ~ .cover {
      transform:
        rotateY(-45deg);
      }

  .cover img{
    opacity:0.5;
    border-radius:15px;
  }
  
  .cover.active{
    background-color: white; /*rgba(0,0,0,0.1);*/
    border-radius:15px;
  }
  .cover.active img{
    opacity:1;
    
  }

/* The Modal (background) */
.modal {
  display: none; /* Hidden by default */
  position: fixed; /* Stay in place */
  z-index: 1; /* Sit on top */
  left: 0;
  top: -1;
  width: 100%; /* Full width */
  height: 100%; /* Full height */
  background-color: rgb(0,0,0); /* Fallback color */
  background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
  overflow-y: auto;
}

/* Modal Content/Box */
.modal-content {
  background-color: #fefefe;
  margin: 15% auto; /* 15% from the top and centered */
  padding: 20px;
  border: 1px solid #888;
  border-radius: 30px;
  width: 80%; /* Could be more or less, depending on screen size */
}

/* The Close Button */
.close {
  color: #aaa;
  float: right;
  font-size: 28px;
  font-weight: bold;
}

.close:hover,
.close:focus {
  color: black;
  text-decoration: none;
  cursor: pointer;
}

#playlists {
  color: #4a4945;
  margin-top: 60px;
  text-align: center;
}

#play-all-button {
   background-color: white;
   border-radius: 5px;
   border: 1px solid #8884FF;
   color: #8884FF;
}

#play-all-button:hover {
   background: #8884FF;
   border: transparent;
   border-radius: 5px;
   color: white;
   cursor: pointer;
}