/* ==========================================================================
   brandtweary.com — paged-media stylesheet

   Drives both the browser's Print dialog and the WeasyPrint build that
   produces brandt-weary-resume.pdf. Screen rules from style.css still apply
   in print media, so this file overrides rather than restates.

   Paper is white with black text: a resume is printed and photocopied, and
   the dark screen palette does not survive that.
   ========================================================================== */

@page {
	size: Letter;
	margin: 0.7in 0.75in;

	@bottom-center {
		content: counter(page) " / " counter(pages);
		font-family: ui-sans-serif, system-ui, Arial, sans-serif;
		font-size: 8pt;
		color: #666;
	}
}

/* The first page carries the name block, so it needs no running footer
   distinction; a wider top margin would push the header off-balance. */

html,
body {
	background: #fff;
	color: #000;
	font-size: 10pt;
	line-height: 1.4;
	padding: 0;
	margin: 0;
}

.page {
	max-width: none;
	margin: 0;
	padding: 0;
}

/* Screen-only chrome. */
.skip-link,
.resume-actions,
.print-hide {
	display: none !important;
}

h1 {
	color: #000;
	font-size: 20pt;
	letter-spacing: 0;
}

h2 {
	color: #000;
	font-size: 10.5pt;
	/* No tracking on paper. A letter-spaced heading is emitted as separately
	   positioned glyphs, and text extractors read the widened gap after the
	   first letter as a space ("S OFTWARE") — which breaks section detection
	   in an applicant tracking system. */
	letter-spacing: normal;
	border-bottom: 1pt solid #000;
	padding-bottom: 2pt;
	/* A section heading never ends a page. */
	break-after: avoid;
	page-break-after: avoid;
}

h3 {
	color: #000;
	font-size: 11pt;
	break-after: avoid;
	page-break-after: avoid;
}

.muted,
.contact,
.entry-meta,
.placeholder,
.resume-title {
	color: #333;
}

.resume-title {
	font-size: 11pt;
	margin: 2pt 0 0;
}

.contact > li:not(:last-child)::after {
	color: #666;
}

a {
	color: #000;
	text-decoration: none;
}

/* Recover destinations on paper. Opt out with .no-print-url where the link
   text already is the URL (the contact line, for instance). */
a[href^="http"]:not(.no-print-url)::after {
	content: " <" attr(href) ">";
	font-size: 8.5pt;
	color: #444;
	word-break: break-all;
}

.resume-head {
	margin-bottom: 0;
}

.resume-section {
	margin-top: 14pt;
}

/* An entry is the atom of the document — title, meta, and bullets stay
   together on one page. */
.entry {
	margin-top: 10pt;
	break-inside: avoid;
	page-break-inside: avoid;
}

.entry:first-of-type {
	margin-top: 8pt;
}

.entry-summary,
.entry-detail,
.bullets {
	margin-top: 4pt;
}

.bullets > li {
	margin: 2pt 0;
	break-inside: avoid;
	page-break-inside: avoid;
}

.bullets > li::marker {
	color: #000;
}

.citations > li,
.skills dt,
.skills dd {
	break-inside: avoid;
	page-break-inside: avoid;
}

.citations > li {
	font-size: 9.5pt;
	margin-bottom: 6pt;
}

.skills dt {
	color: #000;
	margin-top: 6pt;
	break-after: avoid;
	page-break-after: avoid;
}

.skills dd {
	font-size: 9.5pt;
}

/* Orphan/widow control for any prose that does flow across a break. */
p,
li {
	orphans: 2;
	widows: 2;
}
