html {
	background: linear-gradient(60deg, rgb(150 100 128) 24.5%, black 25%, transparent 25.5%),
				linear-gradient(120deg, rgb(150 100 128) 24.5%, black 25%, transparent 25.5%),
				linear-gradient(240deg, rgb(150 100 128) 24.5%, black 25%, transparent 25.5%),
				linear-gradient(300deg, rgb(150 100 128) 24.5%, black 25%, transparent 25.5%);
	background-size: 100px calc(sqrt(3) / 2 * 200px - 3px);
	background-color: rgb(80 95 145);
	background-position: center;
	background-attachment: fixed;
	scrollbar-color: rgb(50 75 215) rgb(50 65 115);
}

p, h1, h2, h3, a, li, button, select, label, img {
	font-family: ocr-a-std, monospace;
	overflow-wrap: anywhere;
}

a {
	text-decoration: underline;
	color: aliceblue;
}

body {
	background-color: rgba(50, 75, 175, 0.85);
	color: aliceblue; /* :) */
	margin: auto;
	max-width: 800px;
	padding-left: 30px;
	padding-right: 30px;
	padding-bottom: 10px;
	box-shadow: 0 6px 20px 0 rgba(0, 0, 0, 0.25), 0 6px 20px 0 rgba(0, 0, 0, 0.25);
}

img:not(.topbar) {
	height: 100%;
	display: block;
	margin: auto;
	max-width: 100%;
	object-fit: contain;
}

.topbar {
	display: inline-block;
	margin-bottom: 12px;
	max-width: 100%;
	max-height: 100vh;
	height: auto;
}

.navbar {
	max-width: 500px;
	margin: auto;
	display: flex;
	justify-content: space-between;
}

select, label {
	margin-top: 35px;
}

button { /* To negate iOS automatic styling */
	-webkit-appearance: none;
	border-radius: 5px;
}

button:hover, select:hover {
	cursor: pointer;
}

.centered-buttons {
	display: flex;
	justify-content: center;
	gap: 10px;
}

header {
	text-align: center;
}

.header-title {
	text-align: center;
}

hr {
	width: 70%;
	margin-top: 25px;
	margin-bottom: 25px;
	border-style: hidden;
	border-top: 3px dashed aliceblue;
	color: aliceblue;
}

#caption {
	font-size: smaller;
	opacity: 0.75;
	text-align: center;
}

footer {
	width: 100%;
	text-align: center;
	font-size: smaller;
}