html {
	font-family: sans-serif;-ms-text-size-adjust: 100%;-webkit-text-size-adjust: 100%;
}

body {
	background-color: #000;
	color: #fff;
	margin: 0;
	width: 100%;
	width: 100vw;
	height: 100%;
	height: 100vh;
	margin: 0;
	line-height: 1.2;
	font-family: 'Courier New', Courier, monospace;
	/*
	overflow: hidden;
	*/
}

#initialize {
	position: fixed;
	top: 0px;
	left: 0px;
	background-color: #000;
	color: #fff;
	width: 100%;
	height: 100%;
	border: 0px;
	z-index: 100;
}

* {
	box-sizing: border-box;
}

a {
	color: inherit;
	cursor: pointer;
}

body.loading * {
	visibility: hidden!important;
}

section {
	position: relative;
	width: 100%;
	height: 100%;
	margin: 0px auto;
	padding: 0;
	z-index: 1;
	/*
	display: none;
	*/
	z-index: 1;
}

p {
	margin: 0px;
}

video {
	/*
	display: none;
	*/
}

svg {
	position: relative;
	/*
	position: fixed;
	top: 0px;
	left: 0px;
	right: 0px;
	bottom: 21px;
	*/
	fill: #fff;
	width: 100vw;
	height: calc(100vh - 21px);
	margin: 0px auto;
	z-index: 1;
}

#anim {
	/*display: none;*/
	z-index: 2;
}

#text {
	/*display: none;*/
	z-index: 1;
}

span.lyrics {
	position: fixed;
	top: 50%;
	left: 50%;
	display: block;
	font-size: 100px;
	font-weight: bold;
	white-space: nowrap;
	transform: translate(-50%,-50%);
}

header {
	position: fixed;
	top: 0px;
	left: 0px;
	background-color: #000;
	color: #fff;
	padding: 2px;
	font-size: 18px;
	z-index: 2;
}

aside {
	position: fixed;
	top: 0px;
	background-color: #212121;
	right: 100%;
	width: 100%;
	max-width: 400px;
	height: 100%;
	padding: 20px 10px;
	overflow: auto;
	z-index: 5;
}

aside.showing {
	right: 0%;
}

button {
	background-color: transparent;
	color: inherit;
	margin: 0px;
	padding: 0px;
	border: 0px;
	display: inline;
	text-decoration: underline;
	font-family: inherit;
	font-size: inherit;
	cursor: pointer;
}

main {
	position: absolute;
	top: 50%;
	left: 50%;
	background-color: #020202;
	color: #fff;
	width: 1365px;
	height: 768px;
	overflow: hidden;
	transform: translate(-50%, -50%);
}

main .text-wrapper {
	position: relative;
	width: 100%;
	height: 100%;
}

main .text-wrapper pre {
	position: absolute;
	top: 50%;
	left: 50%;
	margin: 0;
	padding: 0;
	line-height: 1;
	letter-spacing: 4px;
	font-family: "Courier New", Courier, monospace;
	font-size: 10px;
	transform: translate(-50%, -50%);
}

#glitch1 {
	color: #33cc33;
}

#glitch2 {
	color: #196619;
}

#glitch3 {
	color: #9900ff;
}

#glitch4 {
	color: #4c0080;
}

footer {
	position: fixed;
	left: 0px;
	bottom: 0px;
	background-color: #000;
	color: #f00;
	width: 100%;
	text-align: center;
	white-space: nowrap;
	z-index: 5; 
}

footer span {
	display: inline-block;
}

@media(max-width:991px){
	#timer {
		display: none;
	}
}

#timer:before {
	content: attr(data-current)' [';
	display: inline;
}

#timer:after {
	content: '] 'attr(data-total);
	display: inline;
}

#rain {
	fill: #fff;
}