html {
	margin: 0;
	width: 100%;
	height: 100%;
}

body {
	margin: 0;
	width: 100%;
	min-height: 100%;
	text-align: center;
	display: flex;
	flex-direction: column;
	justify-content: center;
	background-color: #224;
	align-items: center;
	padding: 0;
}

#banner {
	width: 100%;
	height: auto;
	max-width: min(800px, calc(100vw - 20px));
	margin: 0 auto;
	border-radius: 0 0 20px 20px;
	display: block;
	box-shadow: 0 0 20px 2px rgba(0, 255, 127, 0.5);
	opacity: 0.5;
}

.box {
	text-align: left;
	padding: 20px 30px;
	display: inline-block;
/*	white-space: nowrap; */
	background-color: #112;
	color: #aab;
	border-radius: 20px;
	font-family: sans-serif;
	font-size: 18px;
	font-weight: 300;
	box-shadow: 0 0 20px 2px rgba(0, 255, 127, 0.25);
	max-width: 800px;
}

.info a, .info a:visited {
	color: #bfb;
	text-decoration: none;
}

.info p {
	line-height: 1.1;
}

.info a:hover {
	text-decoration: underline;
}

.button {
	display: inline-block;
	background-color: #333;
	color: #aab;
	text-decoration: none;
	padding: 10px 25px;
	border-radius: 5px;
	font-weight: 500;
	margin: 7px;
	border: none;
}

.button:hover {
	background-color: #444;
}

.button.red {
	background-color: #422;
	color: #fcc;
}

.button.red:hover {
	background-color: #633;
}

.button.orange {
	background-color: #642;
	color: #ffc;
}

.button.orange:hover {
	background-color: #852;
}

.button.yellow {
	background-color: #663;
	color: #ffe;
}

.button.yellow:hover {
	background-color: #884;
}

.button.green {
	background-color: #242;
	color: #cfc;
}

.button.green:hover {
	background-color: #363;
}

.button.cyan {
	background-color: #255;
	color: #cff;
}

.button.cyan:hover {
	background-color: #377;
}

.button.blue {
	background-color: #226;
	color: #ccf;
}

.button.blue:hover {
	background-color: #338;
}

.button.violet {
	background-color: #424;
	color: #fcf;
}

.button.violet:hover {
	background-color: #636;
}

.auth_box {
	display: flex;
	flex-direction: row;
}

.auth_box input {
	background-color: #224;
	color: #aab;
	border: 1px solid #000;
	border-radius: 5px;
	outline: none;
	padding: 5px 10px;
}
.auth_box * {
	font-size: 18px;
	margin: 7px;
}

@media (max-width: 600px) {
	.info, .auth_box {
		padding: 10px 15px;
	}
	*, .auth_box * {
		font-size: 15px;
	}
	a.button {
		padding: 10px 15px;
		margin: 5px;
	}
}

.hidden {
	display: none !important;
}

.error {
	background-color: #422 !important;
}

.disabled {
	color: #888 !important;
	/* pointer-events: none; */
	/* background-color: #444 !important; */
}

#chatlink:not(.disabled) {
	box-shadow: 0 0 10px 2px rgba(255, 191, 191, 0.5);
}
