html { height: 100%; }
body {
	display: flex;
	font-family: "Inter", "Liberation Sans", sans-serif;
	margin: 0px;
	min-height: 100%;
	justify-content: center;
	text-underline-offset: 4px;
}

#contents {
	min-height: 100%;
	max-width: 800px;
	display: grid;
	grid-template:
		"icon head" 84px
		". main" auto
		/ 100px auto;
}

#icon {
	grid-area: icon;
	height: 100%;
	width: 100%;
	border-bottom: 1px solid black;
	display: flex;
	justify-content: center;
	align-items: center;
}

header {
	grid-area: head;
	display: flex;
	flex-direction: column;
	border-left: 1px solid black;
	border-bottom: 1px solid black;
	height: 100%;
}

main {
	grid-area: main;
	border-left: 1px solid black;
	padding-left: 12px;
	padding-right: 12px;
}

#title {
	display: flex;
	align-items: center;
	flex-grow: 1;
	padding-left: 12px;
	font-size: 28pt;
}

nav {
	width: 100%;
	border-top: 1px solid black;
	font-size: 14pt;
	font-weight: 500;
}

nav ul {
	list-style: none;
	display: flex;
	margin: 0px;
	padding: 0px;
}

nav ul li {
	height: 100%;
	border-right: 1px solid black;
	padding: 4px 12px;
}

.inline-link-list {
	list-style: none;
	display: inline-flex;
	margin: 0px;
	padding: 0px;
}

.inline-link-list li {
	padding: 0px;
}

.inline-link-list li:not(:first-child)::before {
	content: "\00a0· ";
}

ul {
	margin-top: 0px;
	list-style-type: "—   ";
	list-style-position: outside;
}

ul li {
	padding-bottom: 8px;
}

a {
	color: #3364FF;
	text-decoration: none;
}

a:hover {
	color: #3364FF;
	text-decoration: underline;
}

.current {
	text-decoration: underline;
}

@media only screen and (max-width: 600px) {
	#contents {
		min-height: 100%;
		max-width: 800px;
		display: flex;
		flex-direction: column;
	}

	#icon {
		display: none;
	}

	header {
		height: auto;
		border-left: unset;
	}

	#title {
		font-size: 24pt;
	}

	nav {
		font-size: 12pt;
	}

	main {
		border-left: unset;
	}
}
