/* CSS that adds the bare minimum for a simple layout */ /* This site's CSS only does 9 major things: * 1. sans-serif instead of serif for low-res screens. * 2. Consistent font size;
 and  shouldn't be smaller.
 * 3. max text width for readability
 * 4. single-row nav links widescreen, multiline nav on narrow screens
 * 5. Bigger "home" link that doubles as a site header
 * 6. Soft border around code in case it looks too similar to regular
 *    text, and to show it continue across more than one line
 * 7. Horizontally center inline images; left-aligned stick out.
 * 8. Padding fixes so the above changes don't make elements misalign.
 * 9. dark.css changes a few colors if the browser wants dark mode.
 * Everything else is browser defaults:
 * default fonts, non-dark-mode colors, etc.
 */
html {
	font-family: sans-serif;
	font-size: 16px;
	line-height: 1.5rem;
}

body {
	margin: auto;
	max-width: 50rem;
	padding: 2rem 5%;
}

nav ul {
	/* nav links should look more prominent than normal links */
	font-size: 1.25rem;

	/* Use whitespace instead of bullets to separate nav from article.
	   Also avoid top-padding at the top of the page. */
	list-style-type: none;
	margin: 0 0 2rem;
	padding: 0;
}

/* nav links should be easy to tap with fat fingers */
nav li {
	padding: 0.5rem 0.25rem;
}

/* The posts list doesn't need bullets; simple spacing and repetition
 * of the "date + title" format is enough to convey separation
 * between elements.
 */
.posts {
	padding: 0;
}

.posts li {
	list-style-type: none;
	margin-bottom: 1rem;
}

/* Make the home link a bit bigger to serve as a site heading */
.home {
	font-size: 1.5rem;
	font-weight: bold;
	padding: 0 0.5rem 0.75rem 0;
}

/* single-line nav on widescreen, multi-line nav on narrow screens */
@media (min-width: 32rem) {
	nav li {
		display: inline;
	}
}

h1,
h2,
h3 {
	line-height: 1.25em;
}

img {
	display: block;
	height: auto;
	margin: auto;
	max-width: 100%;
}

code {
	padding: 0 0.25rem;
}

pre,
code {
	border: 1px solid #bbb;
}

pre code {
	border: 0; /* don't border each line in a pre block */
	padding: 0; /* otherwise the first line in a pre block gets indented. */
}

/* Allow horizontal scroll in a pre block, but don't clip it vertically */
pre {
	/* csslint ignore:start */
	overflow: auto visible;

	/* csslint ignore:end */
	padding: 0.5rem;
}