
body {
	display: grid;
	grid-template-areas: "menu main";
	grid-template-columns: 200px 1fr;
	grid-template-rows: 1fr;
	min-height: 100vh;
	margin: 0;
	font-family: sans-serif;
}

#settings {
	position: fixed;
	top: -500%;
	left: 0;
	overflow: auto;
	width: 100%;
	opacity: 0;
	transition: opacity 0.15s ease-in-out;
	background-color: lightgray;
	font-size: 0.8em;
}

#settings:target {
	z-index: 6;
	top: 0;
	bottom: 0;
	opacity: 1;
}

#settings ul {
	width: 400px;
	margin: auto;
	padding: 0 0 15px 0;
	list-style: none;
}

#settings select, #settings label, #settings textarea {
	width: 400px;
}

.menu {
	grid-area: menu;
	z-index: 5;
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	width: 200px;
	text-align: center;
	background-color: lightslategray;
	border-right: 1px solid dimgray;
}

.main {
	grid-area: main;
	overflow-x: hidden;
 }

.center {
	text-align: center;
}

.right {
	text-align: right;
}

input, textarea, select, button {
	box-sizing: border-box;
	margin-bottom: 2px;
}

button {
	padding: 1px;
}

@media screen and (max-width: 600px) {
	body{
		grid-template-areas: "menu" "main";
		grid-template-columns: 1fr;
		grid-template-rows: 270px 1fr;
	}

	#settings ul, #settings h3, #settings select, #settings textarea, #settings button {
		display: block;
		width: 98%;
	}

	#settings {
		padding: 1%;
	}

	.menu {
		position: relative;
		width: 100%;
		border: 0;
		border-bottom: 1px solid dimgray;
	}

	select, button {
		display: inline-block;
		width: 80%;
	}
}
