html,
body {
	margin: 0;
	padding: 0;
}

@page {
	size: portrait;
	size: portrait A4;
	margin: 0;
}


body {
	font-family: "Futura", sans-serif;
	font-size: 24px;
}

#key {
	font-size: 20px;
	width: 70ch;
	max-width: 70vw;
	margin: 3em auto 0 auto;
	display: block;
	height: 22em;
}

.instructions {
	margin: 1em 3em;
	text-align: center;
}

@media (max-width: 1000px) {
	.instructions {
		text-align: justify;
	}
}


@media print {
	.box {
		padding: 0.3em;
		margin-left: 0 !important;
	}

	#regen,
	#id_selector,
	#print,
	#print_container {
		display: none;
	}
}

@media screen {
	.box {
		font-size: 4vh;
	}
}

.box {
	width: 26em;
	padding: 0.5em;
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	white-space: pre;
	position: relative;
	margin: 0 auto;
}

.box > .qr {
	display: block;
	position: absolute;
	right: 0.7em;
	top: 0.8em;
	height: 4.5em;
	width: 4.5em;
}

.fingerprint {
	font-family: "Lucidatypewriter", "Andale Mono", "Fixed", monospace;
	font-size: 120%;
}

#regen {
	position: fixed;
	font-size: 120%;
	padding: 0.2em;
	top: 0.5em;
	right: 0.8em;
	background: #fff;
	background: rgba(255, 255, 255, 0.98);
}
#options {
	position: fixed;
	right: 0.8em;
	top: 3em;
	background: #fff;
	background: rgba(255, 255, 255, 0.98);
	padding: 5px;
	border-radius: 3px;
}
#print_container {
	text-align: right;
}
#print {
	margin-top: 2vmin;
	font-size: 3vmin;
	width: 100%;
	padding: 0.4vmin 0;
}

#id_selector label {
	display: block;
	padding: 0.1em 0 0.1em 0;
}
