body {
	background-color: #01817F;
	margin: 0;
	height: 100%;
	width: 100%;
	background-position: 50% 50%;
}

#main-window {
	position: fixed;
	z-index:99;
	min-height: 520px;
	width:560px;
	overflow:hidden;
	display: flex;
	flex-flow: column nowrap;
	justify-content: space-between;
	margin: 10px;
}
@media (max-width: 600px) {
	#main-window {
		margin: 0;
		transform: none !important;
		left: 0;
		width: calc(100% - 6px);
	}

	#main-window > .window-body {
		min-height: calc(100vh - 42px);
	}
}

input[type=submit] {
	filter: contrast(1);
}

input#spotify-input {
	width: 100%;
	margin-bottom: 10px;
}

input#spotify-input + input[type=submit]{
	background-image: url(img/sound.png);
	background-repeat:no-repeat;
	padding: 4px 8px 4px 24px;
	height: 16px;
	min-width: 0;
	background-position: 4px 50%;
	font-weight: bold;

}

.tree-view.overview {
	height: 384px;
	overflow-y: scroll;
}

#bsod, .hide {
	display: none !important;
}

.offscreen {
    clip: rect(0 0 0 0); 
    clip-path: inset(50%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap; 
    width: 1px;
}

.window.popup {
	position: fixed;
	z-index: 100;
	top: calc(50% - 75px);
	left: calc(50% - 150px);
	width: 300px;
}

.window.popup .title-bar-text {
	height: 13px;
	overflow:hidden;
	text-overflow:ellipsis;
	white-space:nowrap;
}

.window.popup.login {
	width: 380px;
	left: calc(50% - 190px);
}

.window.popup .window-body {
	display: flex;
	flex-flow: row nowrap;
}
.window.popup .window-body .text {
	display: flex;
	flex-flow: column nowrap;
	justify-content: space-between;
}

.window.popup .window-body .icon {
	width: 32px;
	height: 32px;
	padding: 16px;
	background-position: center center;
	background-repeat: no-repeat;
	background-image: url('img/check.png');
}

.window.popup .window-body .icon.login {
	background-image: url('img/login.png');
	background-attachment:unset;
}

.window.popup .window-body .icon.error {
	background-image: url('img/error.png');
}

.window.popup .window-body .icon.warning {
	background-image: url('img/warning.png');
}


.window {
	flex-grow: 1;
	flex-shrink: 0;
	max-width:calc(100% - 5px);
}

.window.hide {
	display:none;
}

.window form {
	margin: 0;
}

.window-body {
	flex-grow: 1;
	display: flex;
	flex-flow: column nowrap;
}

/* tab menu fix */ 
menu[role="tablist"] > li > a {
	padding: 6px;
	margin: 0;
}

iframe {
	opacity: 0;
	position: fixed;
}

iframe.hide {
	left: 100%;

}

/* Media player */

#album {
	background: black;
	width: 100%;
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
	align-items: center;
}

#album h1, #album h2 {
	color: white;
	margin: 0;
	overflow: hidden;
	max-width: 100%;
	white-space: nowrap;
	text-overflow:ellipsis;
}

#album h1 {
	font-size: 2rem;
}
#album h2 {
	font-size: 1.5rem;
	font-weight: normal;
}
#album img {
	width: 256px;
}

#seek {
	height: 22px;
}

#seek::-moz-range-thumb {
	background:transparent;
	background-image: url(img/seek.svg);
	width: 21px;
	transform: none;
}
input[type="range"]#seek::-webkit-slider-thumb {
	background:transparent;
	background-image: url(img/seek.svg);
	width: 21px;
	transform: translateX(-5px) translateY(-4px);
}

input[type="range"]#seek::-webkit-slider-runnable-track{
	height: 11px;
	background: transparent;
	box-shadow: 1px 0 0 white, 1px 1px 0 white, 0 1px 0 white, -1px 0 0 #461c1c, -1px -1px 0 #333, -1px 1px black, 1px -1px #a460a4
}

#seek::-moz-range-track {
	height: 11px;
	background: transparent;
	box-shadow: 1px 0 0 white, 1px 1px 0 white, 0 1px 0 white, -1px 0 0 #461c1c, -1px -1px 0 #333, -1px 1px black, 1px -1px #a460a4
}


#media-control {
	display:flex;
}


#media-control button {
	min-width: 0;
	width: 32px;
	height: 32px;
	background-size: 50%;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	box-shadow:none;
}

#media-control:not(.waiting) button:not(.dummy):hover {
	box-shadow: inset -1px -1px #0a0a0a,inset 1px 1px #fff,inset -2px -2px grey,inset 2px 2px #dfdfdf
}

#media-control .spacer {
	display: inline-block;
	height: 24px;
	width: 1px;
	margin: 4px 5px;
	background: gray;
}

#media-control button#play {
	background-image:url(img/play.svg);
}

#media-control button#pause {
	background-image:url(img/pause.svg);
}

#media-control button#stop {
	background-image:url(img/stop.svg);
}

#media-control.waiting button#play {
	background-image:url(img/play-inactive.svg);
}
#media-control.waiting button#pause {
	background-image:url(img/pause-inactive.svg);
}
#media-control.waiting button#stop {
	background-image:url(img/stop-inactive.svg);
}

#media-control button#prev {
	background-image:url(img/prev.svg);
}
#media-control button#back {
	background-image:url(img/back.svg);
}
#media-control button#forward {
	background-image:url(img/forward.svg);
}
#media-control button#next {
	background-image:url(img/next.svg);
}
#media-control button#eject {
	background-image:url(img/eject.svg);
}

#media-control #volume {
	background-image:url(img/volume.png);
	background-repeat:no-repeat;
	padding-left: 24px;
	background-position: 0 50%;
	max-width: 120px;
}

#media-control #volume.playing {
	background-image:url(img/pawel.png);
}
#media-control #volume.muted {
	background-image:url(img/muted.png);
}

#volume::-moz-range-thumb {
	background: transparent;
	background-image:url(img/vol-select.svg);
}


input[type="range"]#volume::-webkit-slider-thumb {
	background: transparent;
	-webkit-appearance: none;
	background-image:url(img/vol-select.svg);
	transform: translateY(1px);
}

#volume::-moz-range-track {
	background: none;
	background-image: url(img/slider.svg);
	background-position: 0 50%;
	background-size: contain;
	background-repeat:no-repeat;
	box-shadow: none;
	border: none;
	border-bottom: 1px solid white;
	border-right: 1px solid white;
	height: 19px;
}

#volume::-webkit-slider-runnable-track {
	background: none;
	background-image: url(img/slider.svg);
	background-position: 0 50%;
	background-size: contain;
	background-repeat:no-repeat;
	box-shadow: none;
	border: none;
	border-bottom: 1px solid white;
	border-right: 1px solid white;
	height: 19px;
}

/* Clippy */
#clippy {
	position: fixed;
	z-index:99;
	display: flex;
	flex-flow: column nowrap;
	align-items: flex-end;
	width: 256px;
	left: 580px;
	top: 0;
	height:580px;
	justify-content: flex-end;
}

#clippy .body {
	background: #ffffe0;
	color: black;
	padding: 10px;
	border-radius: 10px;
	border: 1px solid black;
	position: relative;
}

#clippy .body .content {
	max-height: 375px;
	overflow-y: scroll;
}

@media (max-width: 500px) {
	#clippy {
		width: calc(100vw - 10px);
		top: unset;
		left: unset;
		transform: none !important;
		bottom: 0;
		right: 0;
		height: unset;
	}
	#clippy .body.hide {
		display: none;
	}
	.body.hide ~ img {
		display:none;
	}
}

#clippy .body.hide {
	display: none;
}

#clippy .body::after {
  content: "";
  position: absolute;
  bottom: -13px;
  right: 128px;
  border-width: 13px 17px 0;
  border-style: solid;
  border-color: lightyellow transparent;
  display: block;
  width: 0;
}

#clippy .body::before {
  content: "";
  position: absolute;
  bottom: -14px;
  right: 127px;
  border-width: 14px 19px 0;
  border-style: solid;
  border-color: black transparent;
  display: block;
  width: 0;
}

#clippy .body button {
	background: lightyellow;
	border: 1px #999 solid;
	border-radius: 2px;
	box-shadow: none;
	margin-top: 5px;
}

#clippy img {
	width: 128px;
}

#vote-stars {
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	align-items: center;
}

#vote-stars .star-wrapper {
	height: 31px;
	width:160px;
}

#vote-stars a {
	cursor:pointer;
	display: inline-block;
	width: 32px;
	height: 32px;
	margin-right: -2px;
	background-image: url(img/star-inactive.png);
}
#vote-stars .star-wrapper:hover a {
	background-image: url(img/star.png);
}

#vote-stars a:hover {
	background-image: url(img/star.png);
}

#vote-stars a:hover ~ a {
	background-image: url(img/star-inactive.png) !important;
}

#average-stars {
	width: 200px;
}

#average-stars .stars {
	background-image: url(img/star-inactive.png);
	background-repeat: repeat-x;
	height: 32px;
	width: 160px;
	position: relative;
}

#average-stars .stars-overlay {
	background-image: url(img/star.png);
	background-repeat: repeat-x;
	height: 32px;
	width: 160px;
	position: absolute;
}

.undo-wrapper {
	display: flex;
	flex-flow: row nowrap;
	justify-content: center;
	flex-grow: 1;
	align-items: center;
}

.undo-wrapper p {
	flex-grow: 1;
	padding: 0 5px;
	text-align: right;
}

.undo {
	background-image: url(img/undo.png);
	background-repeat: no-repeat;
	background-position: 50% 0;
	padding: 32px 0 4px 0;
	height: 50px;
	min-width: 40px;
}

.skip {
	background-image: url(img/download.png);
	background-repeat: no-repeat;
	background-position: 50% 20%;
	padding: 32px 0 4px 0;
	height: 50px;
	min-width: 40px;
	margin-left: 5px;
}

.progress-indicator {
	height: 26px;
	padding: 4px 3px;
	width: 340px;
}

.field-row.settings label {
	width: 200px;
}

.field-row.settings {
	margin-bottom: 8px;
}

.settings .icon {
	height: 40px;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	width: 40px;
	min-width: 0;
}

.settings .admin-panel {
	background-image: url(img/gears.png);
}

.settings .spotify {
	background-image: url(img/spotify.png);
	background-size: 32px;
}

.settings #spotify-cancel {
	background-image: url(img/spotify-cancel.png);
	background-size: 16px;
	background-position: 50% 50%;
	background-repeat: no-repeat;
	min-width: 0;
}