* {
	box-sizing: border-box;
	font-family: Arial, sans-serif;
	font-size: 10pt;
	margin: 0;
}
body {
	background: linear-gradient(45deg, #FBE4D0, #FDEFE3, #FBE4D0) fixed;
	height: 100%;
	margin: 10px;
}
main {
	background: linear-gradient(45deg, whitesmoke, white);
	box-shadow: 3px 4px rgba(0,0,0,0.35);
	border-radius: 15px;
	margin: auto;
	padding: 10px 20px;
	overflow: hidden;
	width: 500px;
}
header {
	display: flex;
	align-items: end;
	background: url(images/banner.png) no-repeat 0% 38%/cover;
	text-shadow: 2px 2px black, 0 0 4px black;
	font-size: 16pt;
	font-weight: bold;
	color: white;
	padding: 5px 10px;
	margin: -10px 0 0 -20px;
	width: 500px;
	height: 160px;
}
footer {
	font-size: 8pt;
	color: #889;
	padding: 5px 0 0 15px;
	margin: 0;
}
h1 {
	border-bottom: 1px solid #889;
	font-size: 12pt;
	padding: 10px 0 1px 15px;
	margin-bottom: 4px;
}
h2 {
	background: linear-gradient(to top right, maroon, red);
	border-radius: 8px;
	font-size: 11pt;
	color: whitesmoke;
	margin-top: 10px;
	padding: 5px 15px;
}
h3 {
	background: linear-gradient(to top right, green, lime);
	border-radius: 8px;
	font-size: 11pt;
	color: whitesmoke;
	margin-top: 10px;
	padding: 5px 15px;
}
h3 b {
	text-shadow: 0 0 3px white;
	font-size: 11pt;
	color: firebrick;
}
ol, ul {
	columns: 3;
}
li {
	word-break: break-word;
	line-height: 12pt;
	width: 120px;
}
li.check {
	list-style: "\2714\FE0F\0020";
}
li.cross {
	list-style: "\274C\0020";
}
li::marker {
	font-size: 8pt;
	color: #889;
}
main > div {
	background: linear-gradient(to top right, silver, gainsboro);
	border-radius: 8px;
	font-size: 0;
	margin-top: 10px;
	padding: 10px 15px;
}
div p:nth-child(odd) {
	font-weight: bold;
	padding: 0;
}
div p:nth-child(even) {
	margin: 0 5px 10px 5px;
	padding: 0;
}
div img {
	aspect-ratio: 1/1;
	object-fit: contain;
	margin: 0 5px;
	width: 30%;
}
p span {
	display: inline-block;
	width: 50%;
}
p {
	padding: 2px 20px;
}
input, textarea {
	margin: 2px 0 2px 90px;
}
label, strong {
	display: inline-block;
	text-align: right;
	margin-right: 5px;
	width: 85px;
}
label ~ * {
	margin-left: 0;
}
textarea {
	resize: vertical;
	vertical-align: middle;
	border: 1px solid #889;
	border-radius: 5px 5px 3px 5px;
	padding: 5px;
	width: 320px;
	min-height: 60px;
	max-height: 320px;
}
input[type=text] {
	border: 1px solid #889;
	border-radius: 5px;
	padding: 4px 5px;
	width: 160px;
}
input[type=file] {
	width: 320px;
}
input[type=submit] {
	border: 1px solid #889;
	border-radius: 4px;
	min-width: 70px;
	margin-top: 4px;
	padding: 3px;
}
input::file-selector-button {
	border: 1px solid #889;
	border-radius: 4px;
	min-width: 70px;
	padding: 3px;
}