* {
	box-sizing: border-box;
}

:root {
	--accent-color: #1463b7;
	--accent-background-color: #1463b745;
}

html,
body {
	padding: 0;
	margin: 0;
}
body {
	font-family: Iowan Old Style, Apple Garamond, Baskerville, Times New Roman,
		Droid Serif, Times, Source Serif Pro, serif, Apple Color Emoji, Segoe UI Emoji,
		Segoe UI Symbol;
	font-variant-numeric: oldstyle-nums;

	width: fit-content;
	margin: 0 auto;
	display: grid;
	grid-template-areas: "nav main";
	grid-template-columns: max-content max-content;
}

body > nav {
	grid-area: nav;
	padding: 0.5rem;

	background-color: var(--accent-background-color);
	min-width: 400px;
}

body > nav ul {
	margin: 0;
	margin-top: 0.5rem;
	list-style-type: "–\a0";
}

body > nav a {
	text-decoration: none;
}

body > nav #sidebar-tag {
	margin-top: 0.5em;

	height: 2.4em;
	width: 100%;

	-webkit-appearance: none;
	appearance: none;
	border-radius: 8px;
	padding: 0.4em 0.8em;
	border: 1px solid hsl(0, 0%, 65%);
	color: black;
	background: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9Ii0xMCAtMTAgMTIwIDEyMCI+PHBvbHlnb24gZmlsbD0iIzQ0NCIgcG9pbnRzPSI1MCA5Mi41LCAxMDAgNy41LCAwIDcuNSIvPjwvc3ZnPg==)
			no-repeat calc(100% - 0.5em) 50%,
		hsla(0, 0%, 97%);
	background-size: auto 40%;
}

a {
	color: inherit;
}

h2 {
	font-size: 1.17em;
}
h3 {
	font-size: 1em;
}

main {
	grid-area: main;
	width: 600px;
	padding: 1em 1.5em 0.5em 2em;
}

article > ul,
article > ol {
	padding: 0;
}
article > ul {
	list-style: circle;
}

article > h1 {
	color: var(--accent-color);
	margin-top: 0;
	width: 100%;
	text-align: center;
	border-bottom: 1px solid currentColor;
}

article > h3 {
	color: var(--accent-color);
}

article hr,
article > h2 {
	color: var(--accent-color);
	border: none;
	border-bottom: 1px dotted currentColor;
}

blockquote {
	margin: 0;
	font-style: italic;
}
blockquote > p {
	margin-top: 0;
}

article > img,
article > video,
article > p > video {
	max-width: 100%;
	height: auto;
	margin: 0 auto;
	display: block;
}

select {
	border: none;
	border-radius: 0;
	color: currentColor;
	font-size: 0.9em;
	-webkit-appearance: none;
	appearance: none;
	padding: 0.1em 1.3em 0.1em 0.3em;
	background: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9Ii0xMCAtMTAgMTIwIDEyMCI+PHBvbHlnb24gZmlsbD0iIzQ0NCIgcG9pbnRzPSI1MCA5Mi41LCAxMDAgNy41LCAwIDcuNSIvPjwvc3ZnPg==)
			no-repeat calc(100% - 0.5em) 50%,
		var(--accent-background-color, initial);
	background-size: auto 40%;
}

article > #nosleep-wrapper {
	margin: 0.5rem 0;
	display: flex;
	justify-content: center;
	font-size: small;
}
article > #nosleep-wrapper > label {
	margin: auto 0;
}

#history > :not(:last-child)::after {
	content: ", ";
}

#tag-list > a::before {
	content: " ";
	display: inline-block;
	width: 0.6rem;
	height: 0.6rem;
	vertical-align: middle;
	margin-right: 0.2rem;
	background-color: var(--accent-background-color);
}

@media (max-width: 1000px) {
	body {
		grid-template-columns: initial;
		grid-template-areas: "main" "nav";
		width: 100%;
	}
	main {
		width: 100%;
	}

	body > nav {
		min-width: initial;
	}
}

@media (prefers-color-scheme: dark) {
	html {
		background: #222;
		color: #e7e7e7;
	}

	:root {
		--accent-color: #5895d6;
		--accent-background-color: #5895d67a;
	}
}
