@font-face {
  font-family: 'FontAwesome';
  src: url('./fonts/fontawesome-webfont.eot?v=4.2.0');
  src: url('./fonts/fontawesome-webfont.eot?#iefix&v=4.2.0') format('embedded-opentype'), 
       url('./fonts/fontawesome-webfont.woff?v=4.2.0') format('woff'), 
       url('./fonts/fontawesome-webfont.ttf?v=4.2.0') format('truetype'), 
       url('./fonts/fontawesome-webfont.svg?v=4.2.0#fontawesomeregular') format('svg');
  font-weight: normal;
  font-style: normal;
}

html, body, #content {
  width: 100%;
  height: 100%;  
}
* {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;          
          box-sizing: border-box;
}
html {
  background-position: center center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  -webkit-background-size: cover;  
  -moz-background-size: cover;  
  -o-background-size: cover;  
  background-size: cover;  
  background-color: whitesmoke;
}
body {
  font-family: "Verdana",Arial,sans-serif;
  font-size: 18px;
  color: #fff;
}
a {
  color: #fff;
  text-decoration: none;
}
img {
  border: none;
/*  vertical-align: top;*/ /*important, otherwise 5px gap at bottom*/ /*apparently solved in IE11 current version*/
}
input,
select {
  margin: 5px;
  padding: 5px 5px;
  font-family: "Verdana",Arial,sans-serif;
  font-size: 18px;
  vertical-align: middle;
}
input[type=checkbox] {
 width: 24px; 
 height: 24px;
 vertical-align: middle;
}

.description {
  font-style: italic;
  font-size: 14px;
  line-height: 110%;
  padding-left: 10px;
  padding-right: 5px;
}
iframe.iframe-style{
  padding: 0px 10px 0px 10px;
  border: 0;
  width: 100%;
  height: 100%;
  background-color: white;
  color: #000;
  position: absolute;
}
.iframe-style{
  background-color: white;
  color: #000;
  height: initial;
}
.license_link {
  font-size: 12px;
  font-style: italic;
  clear: both;
}

/*paddings*/
/*.api:not(#api1):not(#api6):not(#api4):not(#api16):not(#api17) {*/
.api {
  padding: 0px 0px;
}

/*portlets*/
.drag {
  position: absolute;
  display: none;
  top: 50px;
  bottom: 50px;
  z-index: 1;
  left: 0px;
  right: 0px;
  background-color: #222;
}
/*remove scrollbar*/
::-webkit-scrollbar {
  display: none;
}
.drag {
  -ms-overflow-style: none;
  /*overflow: -moz-scrollbars-none;*/
}
.handler {
  position: fixed;
  top: 0px;
  left: 50px;
  right: 0px;
  height: 50px;
  line-height: 50px;
  z-index: 1;
  background-color: #000;
  padding: 0px 5px;
}
.close-popup {
  cursor: pointer;
  position: fixed;
  left: 50px;
  top: 0px;
  width: 50px;
  height: 50px;
  text-align: center;
  font-family: FontAwesome;
}
.close-popup div {
  display: none;
}  
.close-popup:after {
  content: "\f100";
  font-size: 50px;
}
.close-popup:hover {
  background-color: rgba(256,256,256, 0.1);
}  
.handler span{
  position: fixed;
  left: 110px;
  top: 0px;
  right: 5px;
  font-size: 30px;
  overflow: hidden;
  height: 50px;
}
.top-spacer {
  height: 0px;
}
.total {
  padding: 3px 10px;
}


#drag17 {
  position: fixed;
  overflow: hidden;
  display: block;
  height: 50px;
  width: 50px;
  left: 0px;
  right: auto;
  top: 0px;
  bottom: auto;
  background-color: #000;
  z-index: 999999999;
}
#drag17 .view-menu{
  line-height: 50px;
  width: 50px;
  height: 50px;
  text-align: center;
  font-family: FontAwesome;
  font-size: 30px;
}
#drag17 .view-menu div{
  display: none;
}
#drag17 .view-menu:after{
  content: "\f0c9";
}
#drag17 .handler{
  display:none;
}

#drag16 {
  left: 0px;
  right: 0px;
  top: 0px;
  bottom: 50px;
  display: block;
  z-index: 0;
  background-color: transparent;
}
#visualScale {
  position: fixed;
  top: 60px;
  z-index: 1;
  left: 10px;
  right: 0px;  
}
#visualSelect {
  position: fixed;
  top: 100px;
  z-index: 1;
  left: 10px;
  right: 0px;  
}

#drag1 {
  display: block;
  z-index: 999999999;
}

#drag6 {
  position: absolute;
  overflow: hidden;
  display: block;
  height: 50px;
  left: 0px;
  right: 0px;
  top: auto;
  bottom: 0px;
  background-color: #000;
}
#drag6 .handler {
  display: none;
}

#drag16 .handler{
  display: none;
}

.api {
  width: 100%;
  height: 100%;
  overflow: auto;
}
#api4, #api16, #api6 {
  overflow: hidden;
}
.api:not(#api1){
  -webkit-overflow-scrolling:touch;
}

.scrollfield {
  position: fixed;
  top: 0px;
  right: 0px;
  z-index: 1;
  width: 90px;
}

/*colors*/
.showTree,
#drag3 .api {
  background-color: green;
}
.showAlbums,
#drag7 .api {
  background-color: red;
}
.showSearch,
#drag14 .api {
  background-color: blue;
}
.view-albums,
#drag2 .api {
  background-color: orange;
}
.view-playlist,
#drag5 .api {
  background-color: indigo;
}
.view-now-playing,
#drag4 .api {
  background-color: orangered;
}
.freq-spectrum {
  background-color: olive;
}
.desktop-manage,
#drag12 .api {
  background-color: gray;
  padding: 10px;
}
.users,
#drag11 .api {
  background-color: darkgreen;
  padding: 10px;
}
.settings,
#drag13 .api {
  background-color: darkblue;
  padding: 10px;
}
.about-AudioStreamer,
#drag10 .api {
  background-color: purple;
  padding: 10px;
}
#drag8 .api,
#drag15 .api,
#drag14 .api
 {
  padding: 10px;  
}

/*player*/
#jquery_jplayer_1 {
  display: none;
}
.jp-previous, .jp-play, .jp-pause, .jp-next {
  float: left;
  cursor: pointer;
  line-height: 50px;
  text-align: center;
  height: 50px;
  width: 50px;
  font-size: 30px;
  font-family: FontAwesome;
}
.jp-next {
  /* margin-right: 5px; */
}
.jp-previous div,
.jp-play div,
.jp-pause div,
.jp-next div {
  display: none; 
}
.jp-previous:before {
  content: "\f048";
}
.jp-play:before {
  content: "\f04b";
}
.jp-pause:before {
  content: "\f04c";
}
.jp-next:before {
  content: "\f051";
}

.jp-mute,
.jp-unmute {
  display: none;
  visibility: hidden;
}
.jp-previous:hover,
.jp-play:hover,
.jp-pause:hover,
.jp-next:hover {
  background-color: rgba(256,256,256, 0.1);
}

/*Player*/
.jp-current-time {
  overflow: hidden;
  line-height: 16px;
  font-size: 14px;
  position: absolute;
  left: 155px;
  top: 0px;
  z-index:1;
  pointer-events: none;
}
.jp-duration {
  overflow: hidden;
  line-height: 16px;
  font-size: 14px;
  position: absolute;
  right: 55px;
  top: 0px;
  z-index:1;
  pointer-events: none;
}
.jp-progress-title { 
  line-height: 16px;
  font-size: 14px;
  position: absolute;
  left: 155px;
  right: 55px;
  top: 16px;
  pointer-events: none;
}
.jp-bar {
  position: absolute;
  right: 50px;
  height: 100%;  
  left: 150px;
  z-index: 0;
}
.jp-volume-bar {
  display: none;
}

.jp-play-bar,
.jp-seek-bar,
.jp-buffer-bar {
  position: absolute;
  display: block;
  height: 100%;
}
.jp-play-bar {
  background-color: orangered; 
  z-index: 3;
}
.jp-buffer-bar {
  background-color: #444;
  z-index: 2;
}
.jp-seek-bar {
  background-color: #666;
  z-index: 1;
}


/*Menu*/
.showPlayer,
.desktop-save,
.desktop-save-as,
.view-now-playing,
.view-song-info,
.view-logging,
.view-create-database {
  display: none;
}
.view-menu {
  cursor: pointer;
  line-height: 50px;
  padding: 0px 5px;
  height: 50px;
  font-size: 30px;
}
.showPlayer,
.showTree,
.showAlbums,
.showSearch,
.view-albums,
.view-song-info,
.view-playlist,
.view-now-playing,
.freq-spectrum,
.desktop-save,
.desktop-save-as,
.desktop-manage,
.users,
.settings,
.view-logging,
.view-create-database,
.about-AudioStreamer,
.logout {
  cursor: pointer;
  line-height: 50px;
  padding: 0px 10px;
  height: 50px;
  font-size: 30px;
}
.showPlayer:hover,
.showTree:hover,
.showAlbums:hover,
.showSearch:hover,
.view-albums:hover,
.view-song-info:hover,
.view-playlist:hover,
.view-now-playing:hover,
.freq-spectrum:hover,
.desktop-save:hover,
.desktop-save-as:hover,
.desktop-manage:hover,
.users:hover,
.settings:hover,
.view-logging:hover,
.view-create-database:hover,
.about-AudioStreamer:hover,
.logout:hover,
.view-menu:hover {
  box-shadow: inset 0px 0px 277px 200px rgba(0,0,0,0.4);
}

/*table, lists*/
ul {
  padding: 0;
}
.masterDirectory  {
  font-size: 0px;
}
.masterDirectory a {
  display: block;
  font-size: 18px;
  width: 100%;
  min-height: 50px;
  padding: 3px 10px;
  position: relative;
}
#tree,
#treeSearch,
#directory,
#playlistSortable {
  position: relative;
}
#tree li,
#treeSearch li,
#directory li,
#playlistSortable li {
  display: block;
  width: 100%;
  position: relative;
}
#tree li:nth-child(odd),
#treeSearch li:nth-child(odd),
#directory li:nth-child(odd),
#playlistSortable li:nth-child(odd) {
  background-color: rgba(0,0,0,0.2);
}
#tree li a,
#treeSearch li a,
#directory li a,
.directory,
#directory li span,
#playlistSortable li a{
  display: block;
  font-size: 18px;
  padding: 3px 10px;
  width: 100%;
  min-height: 50px;
}
.action {
  display: none;
  cursor: pointer;  
  font-family: FontAwesome;
  position: absolute;
  top: 0px;
  right: 0px;
  width:  50px;
  height: 50px;
  text-align: center;
  font-size: 30px;
  line-height:  50px;
  background-color: rgba(0,0,0, 0.2);
}
.action:after {
  content: "\f137";
}
.action:hover {
  background-color: rgba(0,0,0, 0.4);  
}
.masterDirectory .back {
  display: block;
  cursor: pointer;  
  width: 50px;
  height: 50px;
  text-align: center;  
  font-size: 50px;
  position: absolute;
  top: 0px;
  right: 0px;
  background-color: rgba(0,0,0, 0.2);
  line-height: 50px;
}  
#tree .add,
#tree .play,
#directory .add,
#directory .play,
#directory .info,
#playlistSortable .delete,
#playlistSortable .move {
  display: block;    
  position: absolute;
  top: 0px;
}
#tree .play,
#directory .play,
#playlistSortable .delete {
  right: 0px;
}
#tree .add,
#directory .add,
#playlistSortable .move {
  right: 50px;
}
#directory .info{
  right: 100px;
}
ul {
  list-style-type: none;
}
ul div, li div {
  float: left;
}
.ui-state-highlight {
  height: 50px; 
  line-height: 50px;
  display: block;
}
table, ul, li {
  clear: both;
}
table {
  margin: 5px;
}
tr {
}
td {
  min-height: 50px;
}
table:not(.dump):not(.login) {
  border-spacing: 0px;
  border: solid #fff 1px;
  box-sizing: border-box; 
}
table:not(.dump):not(.login) th,
table:not(.dump):not(.login):not(.desktop):not(.user):not(.theme) td {
  padding: 5px;
}
/*
table:not(.dump) tr:hover,
#tree li:hover,
li:hover {
  background: rgba(0,0,0,0.2);
}       
*/
table:not(.dump) th {
  border-top: none;
  font-weight: normal;
  padding: 3px;
  text-align: left;    
}
table:not(.dump) td {
  border-top: 1px solid #aaa;
  text-align: left;    
}
table:not(.dump) tr:nth-child(1) td {
  border: none;
}
table input[type="text"],
table input[type="password"],
table select {
  /* width: 100%; */
}
.dump {
  border-spacing: 2px;
}
.dump td {
  border: 1px solid #aaa;
  padding: 2px;
  font-size: 14px;
}
.logging td{
  font-size: 14px;  
} 
/*buttons, ...*/
.copy div,
.update div,
.delete div,
.add div,
.play div,
.info div,
.move div,
.back div,
.action div {
  display: none;
}
.copy,
.update,
.delete,
.add,
.play,
.info,
.move,
.back {
  cursor: pointer;  
  width: 50px;
  height: 50px;
  text-align: center;  
  font-size: 30px;
  line-height: 50px;
  font-family: FontAwesome;
  background-color: rgba(0,0,0, 0.2);
}
.copy:hover,
.update:hover,
.delete:hover,
.add:hover,
.play:hover,
.info:hover,
.move:hover,
.back:hover {
  background-color: rgba(0,0,0, 0.4);
}
.copy:before {
  content: "\f055";
}
.update:before {
  content: "\f0c7";
}
.delete:before {
  content: "\f1f8";
}
.add:before {
  content: "\f0fe";
}
.play:before {
  content: "\f144";
}
.info:before {
  content: "\f05a";
}
.move:before {
  content: "\f0dc";
}
.back:before {
  content: "\f100";
  top: 0px;
  position: absolute;
  width: 50px;
  right: 0px;
}
.refresh,
.search,
.getID3,
input[type="button"] {
  text-transform: lowercase;
  cursor: pointer;
  display: inline-block; 
  padding: 5px;
  margin: 5px;
  border: 2px solid white;
  color: white;
  background-color: transparent;
}
.refresh:hover,
.search:hover,
.getID3:hover,
input[type="button"]:hover {
  box-shadow: inset 0 32px 0px rgba(0,0,0,0.2);  
}

.radio-playlist {
  display: block;
  position: absolute;
  top: 0px;
  right: 100px;
  cursor: pointer;
  font-family: FontAwesome;
  font-size: 30px;
  height: 50px;
  width: 50px;
  text-align: center;
}
.radio-playlist:before {
  content: "\f055";
}
.radio-playlist.radio-on:before {
  content: "\f058";
}
.shuffle-playlist {
  display: block;
  position: absolute;
  top: 0px;
  right: 50px;
  cursor: pointer;
  font-family: FontAwesome;
  font-size: 30px;
  height: 50px;
  width: 50px;
  text-align: center;
}
.shuffle-playlist:before {
  content: "\f074";
}
.clear-playlist {
  display: block;
  position: absolute;
  top: 0px;
  right: 0px;
  cursor: pointer;
  font-family: FontAwesome;
  font-size: 30px;
  height: 50px;
  width: 50px;
  text-align: center;
}
.clear-playlist:before {
  content: "\f1f8";
}
.radio-playlist:hover,
.shuffle-playlist:hover,
.clear-playlist:hover {
  background-color: rgba(256,256,256, 0.1);
}
.radio-playlist div,
.shuffle-playlist div,
.clear-playlist div{
  display: none;
}

#tree li.highlighted a,
#treeSearch li.highlighted a,
#playlistSortable li.jp-playlist-current a{
  padding-left: 40px;
}
li.jp-playlist-current:before,
.highlighted:before {
  width: 40px;
  height: 50px;
  line-height: 30px;
  text-align: center;
  font-family: FontAwesome;
  font-size: 20px;
  content: "\f0a9";
  position: absolute;
}

.changed {
  background-color: rgba(0,0,0,0.7);
}
.cover-album,
.cover-now-playing  {
  cursor: pointer;
  border: none;
}
#largeAlbumCoverImage {
  box-shadow: 0px 0px 10px 5px rgba(0,0,0,0.5);
}
.ajax-loader {
  width: 50px;
  height: 50px;
  line-height: 50px;
  text-align: center;
  font-family: FontAwesome;
  font-size: 30px;
  -webkit-animation: rotation 1s infinite linear;
  animation: rotation 1s infinite linear;
}
@-webkit-keyframes rotation {
    from {-webkit-transform: rotate(0deg);}
    to   {-webkit-transform: rotate(359deg);}
}
@keyframes rotation {
    from {transform: rotate(0deg);}
    to   {transform: rotate(359deg);}
}
.ajax-loader:before {
  content: "\f110";
}
.uparrow {
  cursor: pointer;
  position: fixed;
  bottom: 0px;
  right: 0px;
  display: block;
  width: 50px;
  height: 50px;
  line-height: 50px;
  text-align: center;
  font-family: FontAwesome;
  font-size: 30px;
  z-index: 1;
}
.uparrow:before{
  content: '\f077';
}
.uparrow:hover {
  background-color: rgba(256,256,256, 0.1);
}
#visualisation {
  overflow: hidden;
}
#visualisation > div {
  padding: 5px;
}
#spectrocanvas {
  background-color: black;
}

/*css rules depending on screen width*/
@media screen and (max-width:1024px){

}

@media only screen and (max-width:640px) {

/* Force table to not be like tables anymore */
table, 
thead, 
tbody, 
th, 
td, 
tr { 
  display: block; 
} 
/* Hide table headers */
tr:first-child { 
  position: absolute;
  top: -9999px;
  left: -9999px;
} 
tr { 
  border: 1px solid #ccc; 
} 
/* Behave  like a "row" */
table:not(.dump) td { 
  border: none;
  border-bottom: 1px solid #aaa; 
  position: relative;
  padding-left: 100px; 
  white-space: normal;
  text-align: left; 
}
table:not(.dump):not(.login) th,
table:not(.dump):not(.login):not(.desktop):not(.user):not(.theme) td {
  padding-left: 100px;
}
 
td:before { 
  /* Now like a table header */
  position: absolute;
  /* Top/left values mimic padding */
  left: 5px;
  padding-right: 10px; 
  white-space: nowrap;
  text-align: left;
  /*Label the data*/
  content: attr(row-title);
}

.action {
  display: block;
}
#tree .add,
#tree .play,
#directory .add,
#directory .play,
#directory .info,
#playlistSortable .delete,
#playlistSortable .move {
  display: none;
}
#tree .play,
#directory .play,
#playlistSortable .delete {
  right: 50px;
}
#tree .add,
#directory .add,
#playlistSortable .move {
  right: 100px;
}
#directory .info{
  right: 150px;
}  
.radio-playlist {
  display: none;
  right: 150px;
}
.shuffle-playlist {
  display: none;
  right: 100px;
}
.clear-playlist {
  display: none;
  right: 50px;
}

}



