body {
	margin: 0;
	font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
	background-color: #1d1f21;
	color: #fbf1c7;
	line-height: 1.6;
	min-height: 100vh;
}

nav {
	width: 250px;
	background-color: #282828;
	padding: 20px;
	position: fixed;
	top: 0;
	left: 0;
	height: 100vh;
	overflow-y: auto;
}

nav h2 {
	color: #fabd2f;
	margin-top: 0;
	font-size: 1.2em;
}

nav a {
	display: block;
	color: #8ec07c;
	text-decoration: none;
	margin: 10px 0;
}

nav a:hover {
	color: #83a598;
}

main {
	margin-left: 270px;
	padding: 20px;
	max-width: 900px;
}

h1, h2, h3 {
	color: #fabd2f;
}

h1 {
	border-bottom: 2px solid #fabd2f;
	padding-bottom: 5px;
}

code {
	padding: 4px 6px;
	border-radius: 4px;
	font-family: monospace;
	word-break: break-word;
}

pre {
	color: #ffffff;
	font-size: 1.1em;
	padding: 12px;
	overflow-x: auto;
	background-color: #1d2021;
	border-radius: 4px;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.5);
}

.note, .ok, .warn, .red {
	background-color: #3c3836;
	padding: 6px;
	margin: 10px 0;
	border-radius: 6px;
}

.note { border-left: 6px solid #fe8019; }
.ok   { border-left: 6px solid #a3dea5; }
.warn { border-left: 6px solid #807dd1; }
.red  { border-left: 6px solid #ee1c13; }

section {
	margin-bottom: 50px;
	scroll-margin-top: 70px;
}

.external { color: blueviolet; }

@media screen and (max-width: 768px) {

	nav,
	.nav-toggle-label,
	#nav-toggle {
		display: none !important;
	}

	main {
		margin-left: 0 !important;
		padding: 16px;
	}
}
