@font-face {
	font-family: 'Cairo';
	font-style: normal;
	font-weight: 400;
	src: url('Cairo-Regular.ttf') format('truetype');
}

html, body{
	width: 100%;
	height: 100%;
}
body{
	font-family: 'Cairo';
	margin: 0;
	background: #222;
	position:relative;
}
#stage{
	background: #000;
	width:960px; height:540px;
	position:absolute;
	margin:auto;
	top:0; left:0; right:0; bottom:0;
	cursor: none;
}
.overlay{

	display: none;

	text-align: center;
	color: #fff;
	letter-spacing: 1px;

	width:500px; height:170px;

	position:absolute;
	margin:auto;
	top:0; left:0; right:0; bottom:0;

}
.overlay > div:nth-child(1){
	font-size: 100px;
	line-height: 100px;
}
.overlay > div:nth-child(2){
	font-size: 20px;
}
#modal_shade{
	display: none;
	background: rgba(0,0,0,0.8);
	width:960px; height:540px;
	position:absolute;
	margin:auto;
	top:0; left:0; right:0; bottom:0;
	cursor: pointer;
}
#paused{
	cursor: pointer;
}

/* Responsive fullscreen adaptation */
html, body {
    width: 100%;
    height: 100%;
    margin: 0;
    overflow: hidden;
}

body {
    position: fixed;
    inset: 0;
}

#stage {
    position: fixed;
    width: min(100vw, 177.7778vh);
    height: min(100vh, 56.25vw);
    top: 50%;
    left: 50%;
    right: auto;
    bottom: auto;
    transform: translate(-50%, -50%);
    margin: 0;
    overflow: hidden;
    background: #000;
}

#stage canvas {
    display: block;
    width: 100% !important;
    height: 100% !important;
}

#modal_shade {
    position: fixed;
    width: min(100vw, 177.7778vh);
    height: min(100vh, 56.25vw);
    top: 50%;
    left: 50%;
    right: auto;
    bottom: auto;
    transform: translate(-50%, -50%);
    margin: 0;
}

.overlay {
    position: fixed;
}
