@import url(//fonts.googleapis.com/css?family=Ubuntu:300,400,700,300italic,400italic,700italic);

* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	font-family: 'Ubuntu', sans-serif;
	color: #5a5a5a;
}

html {
	width: 100vh;
	height: 100%;
	/*padding-bottom: 20px;*/
}

html,
body {
	width: 100vw;
	background-color: #f5f5f5;
	font-size: 14px;
	height: 100vh;
	overflow: hidden;
}

body {
	padding-top: 60px;
}

div.header {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 60px;
	padding: 5px 10px;
	background-color: #e5e5e5;
}

body.dark a {
	color: #e5e5e5;
}

body.dark div.header {
	background-color: #444;
}

div.header h3 {
	font-size: 18px;
	line-height: 46px;
}

div.header svg {
	height: 40px;
	width: auto;
/*	display: inline-block;*/
	float: left;
	margin: 5px 15px 0 0;
}

body.dark div.header h3 {
	color: #e5e5e5;
}

div.volume {
	width: 150px;
	height: 10px;
	position: absolute;
	top: 25px;
	right: 70px;
	background: #5a5a5a;
	border: none;
}

body.dark div.volume {
	background: #e5e5e5;
}

.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default {
	background: #888 !important;
	border: none;
}

body.dark .ui-state-default,
body.dark .ui-widget-content .ui-state-default,
body.dark .ui-widget-header .ui-state-default {
	background: #555 !important;
	border: none;
}

span.ui-slider-handle:focus,
span.ui-slider-handle:hover,
span.ui-state-focus,
span.ui-widget-content .ui-state-focus {
	outline: none;
	background: ;
	border-color: #ccc;
}

div.soundControl {
	position: absolute;
	top: 10px;
	right: 10px;
	width: 40px;
	height: 40px;
}

::selection {
	color: #fff;
	background-color: #ffa766;
}

::-moz-selection {
	color: #fff;
	background-color: #ffa766;
}

div.wrap {
	height: calc(100vh - 60px);
	width: 100vw;
	position: relative;
	margin: auto;
	overflow: hidden;
}

body.dark div.wrap {
	background-color: #333;
}

div.square {
	position: relative;
	float: left;
	height: 80px;
	width: 80px;
}

div.dot {
	height: 80%;
	background-color: rgb(200, 200, 200);
	width: 80%;
	position: absolute;
	left: 50%;
	top: 50%;
	margin: -40% 0 0 -40%;
	opacity: 0.2;
	border-radius: 50%;
}

label.darkModeSwitch {
	position: absolute;
	width: 70px;
	height: 40px;
	top: 10px;
	right: 245px;
	border-radius: 20px;
	background-color: #5a5a5a;
	padding: 5px;
}

body.dark div.soundControl svg * {
	fill: #e5e5e5;
}

body.dark label.darkModeSwitch {
	background-color: #e5e5e5;
}

label.darkModeSwitch input {
	display: none;
}

label.darkModeSwitch span.slider {
	height: 30px;
	width: 30px;
	border-radius: 15px;
	background-color: #e5e5e5;
	display: block;
	-webkit-transition: margin-left 0.2s linear;
	transition: margin-left 0.2s linear;
	position: absolute;
	top: 5px;
	left: 5px;
}

body.dark label.darkModeSwitch span.slider {
	background-color: #222;
}

label.darkModeSwitch input:checked + span.slider {
	margin-left: 30px;
}

@media screen and (orientation: portrait) and (max-width: 840px) {
	body {
		padding-top: 120px;
	}
	div.header {
		height: 120px;
	}
	label.darkModeSwitch {
		position: relative;
		float: left;
		top: auto;
		left: auto;
		right: auto;
		margin-top: 15px;
	}
	div.volume {
		top: auto;
		left: auto;
		right: auto;
		float: left;
		margin-top: 30px;
		margin-left: 80px;
	}
	div.soundControl {
		top: auto;
		left: auto;
		right: auto;
		floaT: left;
		margin: 10px 0 0 240px;
	}
}

@media screen and (orientation: portrait) and (max-width: 550px) {
	body {
		padding-top: 160px;
	}
	div.header {
		text-align: center;
		height: 160px;
	}
	div.header > a {
		display: block;
		width: 100%;
		text-align: center;
		height: 50px;
	}
	div.header svg {
		float: none;
	}
	div.soundControl {
		right: 10px;
	}
	div.volume {
		width: calc(100% - 150px);
	}
}

@media screen and (orientation: portrait) and (max-width: 300px) {
	body {
		padding-top: 190px;
	}
	div.header {
		height: 190px;
	}
	div.header h3 {
		line-height: 30px;
	}
}

/*@media screen and (orientation: portrait) {

	div.wrap {
		height: 100vw;
		width: 100vw;
		position: absolute;
		top: 50%;
		margin-top: -50vw;
	}

	div.square {
		height: 10vw;
		width: 10vw;
	}

}*/