*
{
	padding: 0;
	margin: 0;
	outline: none;
}
*, *:before, *:after {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
body
{
	background-color: #141414;
	font-family: 'Open Sans', sans-serif;
	color: #fff;
}
body, html
{
	width: 100%;
	height: 100%;
	overflow: hidden;
}
header
{
	position: fixed;
	background-color: #141414;
	width: 100%;
	height: 64px;
	border-bottom: 2px solid #333;
	display: block;
	z-index: 10;
}
header *
{
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: -moz-none;
	-ms-user-select: none;
	user-select: none;
}
header h1
{
	font-weight: normal;
	display: inline-block;
	width: 40%;
	float: left;
	z-index: 10;
	line-height: 64px;
	text-indent: 30px;
	color: #4297d7;
}
header h1 span.clock
{
	color: #fff;
	padding-left: 10px;
}
header nav
{
	display: inline-block;
	width: 60%;
	float: right;
	text-align: right;
	font-size: 12px;
	z-index: 10;
	height: 64px;
	overflow: hidden;
}
header nav label
{
	margin: 3px 0;
	display: inline-block;
	z-index: 10;
}
article
{
	position: relative;
	height: 100%;
	overflow: auto;
	background-color: #141414;
}
body.playing article
{
	overflow: hidden;
}
article .teleprompter
{
	padding: 300px 50px 1000px 100px;
	font-size: 60px;
	line-height: 86px;
	z-index: 1;
	background-color: #141414;
	will-change: transform;
}
article .teleprompter p
{
	padding-bottom: 15px;
	margin-bottom: 15px;
	border-bottom: 1px solid #444;
}
article .teleprompter p:last-child
{
	border-bottom: 1px solid #4297d7;
}
article .teleprompter.flipx
{
	transform: rotateY(180deg);
	z-index: 1;
	pointer-events: none;
	padding: 300px 50px 1000px 100px !important;
}
article .teleprompter.flipy
{
	transform: rotateX(180deg);
	z-index: 1;
	pointer-events: none;
	padding: 1000px 50px 300px 100px !important;
}
article .teleprompter.flipxy
{
	transform: rotateX(180deg) rotateY(180deg);
	z-index: 1;
	pointer-events: none;
	padding: 1000px 50px 300px 100px !important;
}
.sliders, .buttons, .colors
{
	display: block;
	height: 64px;
	float: right;
}
.sliders label:first-child
{
	margin-top: 10px;
}
.colors
{
	width: 64px;
	padding: 8px;
	text-align: center;
	margin-right: 10px;
}
.buttons
{
	margin: 0 10px 0 10px !important;
	padding: 0;
}
.slider
{
	width: 110px;
	font-size: 12px;
	display: inline-block;
}
.button
{
	color: #fff;
	text-decoration: none;
	width: 50px;
	height: 64px;
	font-size: 40px;
	line-height: 64px !important;
	text-align: center;
	display: inline-block;
	vertical-align: middle;
}
.button.small
{
	font-size: 20px;
}
.button.active
{
	color: #4297d7;
}
.marker
{
	position: fixed;
	left: 0;
	top: 213px;
	color: #4297d7;
	font-size: 40px;
	display: none;
	z-index: 100;
}
.overlay
{
	display: none;
	width: 100%;
	height: 100%;
	position: fixed;
	top: 64px;
	z-index: 100;
	overflow: visible;
}
.overlay .top
{
	position: fixed;
	top: 64px;
	height: 100px;
	width: 100%;
	background-color: #000;
	background-color: rgba(0,0,0,0.75);
	z-index: 10;
}
.overlay .bottom
{
	position: fixed;
	top: 300px;
	height: 10000px;
	width: 100%;
	background-color: #000;
	background-color: rgba(0,0,0,0.75);
	overflow: hidden;
	z-index: 10;
}
.color
{
	border: 1px solid #fff;
	width: 44px;
	outline: none;
	margin: 4px 0;
}

.remote-modal {
	position: absolute;
    top: 0;
    left: 0;
    z-index: 5000;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
	overflow: hidden;
	display: none;
}

.modal-overlay {
	position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.9);
    z-index: 5001;
}

.modal-content {
	z-index: 5002;
	max-width: 50%;
	text-align: center;
}

.remote-id {
	font-size: 50px;
    color: #4297d7;
    padding: 20px;
}

.remote-url {
	color: #4297d7;
    padding: 20px;
}

.close-modal {
	color: white;
	position: absolute;
	z-index: 5002;
	top: 20px;
	right: 20px;
}

#qr-code {
	width: 336px;
    height: 336px;
    display: inline-block;
    padding: 40px;
	background: white;
	border-radius: 8px;
}