* {
	box-sizing: border-box;
	outline: none;
}

html,
body {
	background: rgb(20 20 20);
	font: 16px/1.2em trade-gothic-next, sans-serif;
	height: 100vh;
	margin: 0;
	overflow: hidden;
	width: 100%;
}

a {
	color: rgb(255 255 255);	
}

.center {
	text-align: center;
}

main {
	/* background: rgb(238 235 241); */
	/* border: 30px solid rgb(46 12 86); */
	border-radius: 4px;
	display: grid;
	gap: 20px;
	grid-template-columns: 100%;
	grid-template-rows: min-content 100px 100px;
	grid-template-rows: 95px auto 80px;
	/* margin: 20px; */
	height: 100vh;
	margin: 0 auto;
	position: relative;
	max-width: 800px;
}

form {
	left: 0;
	padding: 25px 15px 15px;
	text-align: center;
	top: 0;
	/* position: fixed; */
	width: 100%;
}

form p {
	margin: 0 auto;
	display: grid;
	gap: 2px;
	grid-template-columns: minmax(220px, 400px) 90px;
	max-width: 440px;
	min-width: 305px;
}

input,
button,
.franticButton {
	background: rgb(255 255 255 / 10%);
	border: 1px solid rgb(255 255 255 / 20%);
	border-radius: 8px 0 0 8px;
	font: 16px/34px trade-gothic-next, sans-serif;
	width: 100%;
}

	input {  padding: 10px; }

	input[type="checkbox"] {
		background: rgb(0 0 0);
		width: unset;
	}

	input:focus {
		background: rgb(255 255 255);
		border: 1px solid rgb(0 0 0);
	}

label:not([for="chickenMode"]) {
	display: none;
}

/* [for="chickenMode"] { display: block; } */

button {
	background: rgb(255 255 255 / 25%);
	border-radius: 0 8px 8px 0;
	/* border: 1px solid rgb(0 0 0); */
	/* border-radius: 0; */
	color: rgb(255 255 255);
}

.franticButton {
	border-radius: 8px;
	color: rgb(255 255 255);
	display: block;
	line-height: 55px;
	text-align: center;
	text-decoration: none;
}

#welcome {
	color: rgb(255 255 255);
	left: 50%;
	line-height: 1.3em;
	padding: 0;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 320px;
}

#welcome img { 
	display: block;
	margin: 0 auto;
}

#welcome p {
}

/* main > div { overflow: hidden;	padding-bottom: 5px; } */

#canvas {
	/* background: #aaa; */
	margin: 0 auto;
	padding: 0;
	max-width: 460px;
	min-width: 305px;
	overflow: hidden;
	/* position: relative; */
	text-align: center;
	/* z-index: 0; */
}

footer {
	background: rgb(20 20 20);
	bottom: 0;
	color: rgb(255 255 255 / 20%);
	height: 80px;
	line-height: 80px;
	left: 0;
	position: fixed;
	text-align: center;
	width: 100%;
}

footer .franticButton {
	margin: 11px auto;
	opacity: .2;
	transition: .2s all;
	width: 100px;
}

	footer .franticButton:hover {
		opacity: 1;
	}

#stats {
	background: rgb(20 20 20);
	color: rgb(255 255 255);
	display: none;
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

#statsInner {
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 320px;
}

#stats figure {
	font-weight: bold;
	margin: 0;
	text-align: center;
}

#stats figcaption {
	padding: 5px 10px;
}

#stats img {
	border: 1px solid rgb(255 255 255 / 20%); 
	border-radius: 8px;
	height: unset;
	width: 100%;
}

.wrong {
	animation: wrong .3s;
}

@keyFrames wrong {
	0% { transform: translateX(0); }
	15% { transform: translateX(-10px); }
	30% { transform: translateX(10px); }
	45% { transform: translateX(-5px); }
	60% { transform: translateX(5px); }
	75% { transform: translateX(-2px); }
	90% { transform: translateX(2px); }
	100% { transform: translateX(0); }
}

#solutionList {
	height: calc(100% - 106px - 80px);
	height: calc(100% - 106px - 200px);
	left: 50%;
	list-style: none;
	margin-top: 0;
	max-width: 340px;
	min-width: 305px;
	overflow: auto;
	padding-left: 0;
	position: fixed;
	text-align: left;
	top: 100px;
	transform: translateX(-50%);
}

#solutionList[aria-hidden=true] {
	display: none;
	visibility: hidden;
}

#solutionList[aria-hidden=false] {
	display: block;
	visibility: visible;
}

#solutionList li {
	margin: 0;
	padding: 0;
}

#solutionList a {
	background: rgb(50 50 50);
	/* border-bottom: 1px solid rgb(255 255 255 / 2%); */
	display: block;
	font-size: 16px;
	/* height: 60px; */
	line-height: 1.2em;
	margin: 0;
	padding: 20px 10px;
	text-decoration: none;
	text-shadow: rgb(0 0 0) 1px 1px 0;
}

#solutionList li:nth-of-type(even) a {
	background: rgb(40 40 40);
}

#solutionList li.active a {
	background: rgb(255 255 255);
	color: rgb(50 50 50);
	text-shadow: unset;
}