/* ==========================================================================
   PRINT — guides only.

   A printed guide is used at a kitchen table with a jar in front of you. What
   is wanted on paper is the steps and the checklist; the header, the rail, the
   sticky bars, the newsletter panel and the share row are not.
   ========================================================================== */

@media print {

	/* Everything that is navigation, promotion or chrome. */
	.hdrshell,
	.megawrap,
	.mhdrawer,
	.searchoverlay,
	.stickybar,
	.onthispage,
	.ftr,
	.rail,
	.arttoc,
	.secttoc,
	.sharebar,
	.pnnav,
	.nlpanel,
	.tagblock,
	.skip,
	.tswitch,
	.themefoot,
	.searchframe,
	.filterbar,
	.pager,
	.checkfoot,
	.readmore,
	.btn {
		display: none !important;
	}

	/* One column, full width, no shadows or rounded surfaces to waste ink. */
	.wrap,
	.artsplit,
	.artbody,
	.essay,
	.prose,
	.measure {
		display: block !important;
		max-width: none !important;
		width: auto !important;
		margin: 0 !important;
		padding: 0 !important;
		grid-template-columns: none !important;
	}

	* {
		box-shadow: none !important;
		border-radius: 0 !important;
	}

	body {
		background: #fff !important;
		color: #000 !important;
		font-size: 11pt;
		line-height: 1.4;
	}

	/*
	 * The two things worth printing. Everything else in the article body is
	 * suppressed, so the sheet in someone's hand is the procedure and nothing
	 * else.
	 */
	.prose > *:not(.mh-steps):not(#authcheck):not(h2):not(.info) {
		display: none !important;
	}

	.mh-steps,
	.checklist {
		display: block !important;
	}

	.checklist fieldset {
		border: 1px solid #000;
		padding: 8pt 10pt;
		margin: 0 0 10pt;
		break-inside: avoid;
	}

	.checklist legend {
		font-weight: 700;
		padding: 0 4pt;
	}

	.checklist label {
		display: flex;
		gap: 8pt;
		align-items: flex-start;
		padding: 3pt 0;
		break-inside: avoid;
	}

	/*
	 * An empty box to tick with a pen. A printed sheet is used away from the
	 * screen, so the reader's saved ticks are deliberately not carried over.
	 */
	.checklist input[type="checkbox"] {
		appearance: none;
		-webkit-appearance: none;
		width: 11pt;
		height: 11pt;
		border: 1px solid #000;
		flex: none;
		margin-top: 1pt;
	}

	.mh-steps h2,
	h2.step {
		font-size: 13pt;
		margin: 12pt 0 4pt;
		break-after: avoid;
	}

	/* The safety routing has to survive onto paper. */
	.info.alarm,
	.info.risk {
		display: block !important;
		border: 2pt solid #000 !important;
		padding: 8pt 10pt !important;
		margin: 10pt 0 !important;
		break-inside: avoid;
	}

	.info .sqi,
	.info i {
		display: none !important;
	}

	/* Figures do not earn their ink on a procedure sheet. */
	figure,
	img,
	picture,
	.ph {
		display: none !important;
	}

	/* A printed page is a citation, so it needs its source. */
	.h1post::after {
		content: " — " attr(data-print-source);
	}

	a[href^="http"]::after {
		content: " (" attr(href) ")";
		font-size: 9pt;
		word-break: break-all;
	}

	@page {
		margin: 16mm;
	}
}
