:root {
	--light-background: white;
	--light-offset-background: #eee;
	--light-colorful-background: lightblue;
	--light-text: black;
	--light-colorful-text-contrast: #5f77db;
	--light-link: blue;
	--light-link-visited: purple;
	--light-outline: black;
	--light-attention: khaki;
	--light-error: pink;
	--light-error-contrast: black;
	--light-highlight: lightgreen;

	--dark-background: black;
	--dark-offset-background: #111;
	--dark-colorful-background: #2d3739;
	--dark-text: #eee;
	--dark-colorful-text-contrast: #5f77db;
	--dark-link: #9e9efb;
	--dark-link-visited: #936a93;
	--dark-outline: #eee;
	--dark-attention: rgb(79, 71, 17);
	--dark-error: pink;
	--dark-error-contrast: #4f1721;
	--dark-highlight: #006000;
}

body {
	max-width: 8in;
	margin: 0 auto;
	padding: 0 0.5em;
	color: var(--light-text);
	background-color: var(--light-background);
}
h2 { font-size: 130%; }
h3 { font-size: 110%; }
h4 { font-size: 100%; }
a { color: var(--light-link); }
a:visited { color: var(--light-link-visited); }

@media screen and (prefers-color-scheme: dark) {
	body {
		color: var(--dark-text);
		background-color: var(--dark-background);
	}
	a { color: var(--dark-link); }
	a:visited { color: var(--dark-link-visited); }
	img {
		opacity: 75%;
		transition: opacity .5s ease-in-out;
	}
	img:hover { opacity: 100%; }
}

@media print {
	nav { display: none; }
	a, a:visited { text-decoration: underline; }
	a[href]:not([data-no-expand-print]):after { content: ' (' attr(href) ')'; }
}
