:root {
	--bg: hsl(165, 35%, 9%);
	--fg: hsl(165, 25%, 95%);

	--text-title: hsl(165, 65%, 50%);
	--text-subtitle: hsl(180, 65%, 45%);
	--text-accent: hsl(165, 50%, 75%);
	--text-muted: hsl(165, 20%, 65%);
	--text-link: hsl(40, 90%, 55%);
	--text-code: hsl(165, 75%, 50%);

	--surface-alt: hsl(165, 28%, 93%);
	--quote-bg: hsl(165, 22%, 15%);
	--code-bg: hsl(165, 22%, 20%);

	--primary: hsl(165, 85%, 48%);
	--primary-hover: hsl(165, 85%, 38%);
	--secondary: hsl(38, 92%, 62%);
	--secondary-hover: hsl(38, 92%, 52%);

	--border: hsl(180, 25%, 30%);
	--shadow: hsla(165, 30%, 10%, 0.08);
	--highlight: hsl(38, 92%, 62%);
}

body {
	margin: 0 auto;
	max-width: 65ch;
	padding: clamp(1rem, 3vw, 2rem);

	font-family: sans-serif;
	font-size: 1rem;
	line-height: 1.6;
	font-weight: 400;

	background-color: var(--bg);
	color: var(--fg);
	accent-color: var(--primary);

	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.centerer {
	width: 100%;
	display: flex;
	justify-content: center;
}

h1 {
	color: var(--text-title);
	font-weight: 800;
	text-align: center;
}

h2, h3, h4 {
	color: var(--text-subtitle);
	font-weight: 600;
}

a {
	text-decoration: none;
	color: var(--text-link);
}

strong {
	color: var(--text-accent);
	font-weight: 800;
}

em {
	color: var(--text-muted);
	font-weight: 600;
}

code, pre {
	background: var(--code-bg);
	color: var(--text-code);
}

pre {
	padding: 0;
	margin: 0;
}

code {
	padding: 0 0.3rem;
	display: inline-block;
}

code[data-lang=text] {
	text-wrap: wrap;
}

blockquote {
	margin-left: 1rem;
	padding-left: 0.5rem;
	background: var(--quote-bg);
	border-left: 0.3rem solid var(--border);
}

nav {
	display: inline-block;
	line-height: 1.2rem;
	/* margin-left: 50%; */
	/* transform: translate(-50%); */
	background-color: var(--quote-bg);
	padding: 0.5rem 1rem;
}

nav a {
	white-space: nowrap;
}

img {
	max-width: calc(65ch - clamp(1rem, 3vw, 2rem));
}

hr {
	margin: 2rem 0;
}

li + li {
	margin-top: 0.3rem;
}

footer {
	text-align: center;
}
