﻿* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

html {
	font-family: 'Fira Code', 'Courier New', Courier, monospace;
	height: 100%;
}

html>body {
	min-height: 100%;
}

body {
	display: flex;
	flex-direction: column;
}

body>form {
	flex-grow: 1;
}

header {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 1rem 9rem;
}

header>.logo__is-left {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	width: 6rem;
}

header>.logo__is-right {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	width: 6rem;
	transform: scaleX(-1);
}

header>h1 {
	font-size: 2rem;
	font-weight: bolder;
}

logo {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 1rem;
	font-size: 3.1312rem;
	cursor: default;
}

form {
	display: flex;
	flex-wrap: wrap;
}

form>fieldset {
	flex-basis: calc(25%);
	flex-grow: 1;
	flex-shrink: 1;
}

form>fieldset.fieldset__is-large {
	flex-basis: 100%;
}

fieldset {
	display: flex;
	flex-direction: column;
	padding: 1rem;
	border: none;
}

fieldset>h2 {
	align-self: center;
}

fieldset>textarea {
	margin: 0.3em 0 0.4rem;
	flex-grow: 1;
}

fieldset>button {
	align-self: center;
}

h2 {
	font-size: 1rem;
	font-weight: normal;
}

h2::before {
	content: "< ";
}

h2::after {
	content: " >";
}

textarea {
	min-height: 12em;
	resize: vertical;
	padding: 0.3rem;
	border: none;
	font-size: 0.9rem;
}

textarea:focus {
	outline: 2px solid;
	outline-offset: 2px;
}

footer {
	font-size: 0.7rem;
	font-style: italic;
	text-align: right;
	padding: 0.5rem;
}

@media (prefers-color-scheme: light) {
	html {
		color: #242234;
	}

	textarea {
		background-color: #ffffff;
		border-color: #fad6b8;
		color: #242234;
	}

	textarea:focus {
		outline-color: #ffffff;
	}

	fieldset {
		background: linear-gradient(135deg, #fef3c0, #fad6b8)
	}

	header {
		background-color: #fef3c0;
	}

	footer {
		background-color: #fad6b8;
	}

	a,
	a:visited {
		color: #285cc4;
	}
}

@media (prefers-color-scheme: dark) {
	html {
		color: #fef3c0;
	}

	textarea {
		background-color: #141013;
		border-color: #242234;
		color: #fef3c0;
	}

	textarea:focus {
		outline-color: #141013;
	}

	fieldset {
		background: linear-gradient(135deg, #403353, #242234)
	}

	header {
		background-color: #403353;
	}

	footer {
		background-color: #242234;
	}

	a,
	a:visited {
		color: #20d6c7;
	}
}