/* Druckausgabe */
@media print {
	@page {
		size: A4;
		margin: 1.5cm;
	}
	
	* {
		background: none !important;
		box-shadow: none !important;
		color: black !important;
		border-left-color: #fff !important;
		text-align: left;
	}
	
	/* GRID DEAKTIVIEREN - Das ist der wichtigste Teil! */
	body {
		display: block !important;
		grid-template-columns: none !important;
		grid-template-rows: none !important;
		gap: 0 !important;
		width: 100% !important;
		font-family: var(--font-serif);
		font-weight: 400;
		margin: 0;
		padding: 0;
		line-height: 1.2;
		max-width: none !important;
	}
	
	/* Alle Grid-Container zu Block-Elementen machen */
	.skills {
		display: block !important;
		grid-template-columns: none !important;
		gap: 0 !important;
		list-style: none;
	}
	
	.skills > li {
		display: block !important;
		margin: 6pt 0 !important;
		padding: 4pt 0 !important;
		page-break-inside: avoid;
		break-inside: avoid;
	}
	
	/* Job-Flexbox ebenfalls deaktivieren */
	.job {
		display: block !important;
		flex-direction: column !important;
		gap: 0 !important;
		margin: 6pt 0 !important;
		padding: 4pt 0 !important;
		page-break-inside: avoid;
		break-inside: avoid;
	}
	
	.job-content {
		flex: none !important;
		display: block !important;
	}
	
	/* Header und Footer als Block-Elemente */
	header, footer {
		grid-column: auto !important;
		display: block !important;
		margin: 0 !important;
		padding: 6pt 0 !important;
	}
	
	header ul, footer ul {
		display: block !important;
		flex-direction: column !important;
		gap: 0 !important;
	}
	
	header li, footer li {
		display: inline !important;
		float: left;
		margin: 0 8pt 0 0 !important;
	}
	
	/* Navigation komplett ausblenden */
	nav {
		display: none !important;
	}
	
	/* Main-Content als Block */
	main {
		display: block !important;
		padding: 0 !important;
	}
	
	/* Seitenumbrüche kontrollieren */
	h1, h2, h3, h4, h5 {
		margin: 6pt 0 4pt;
		padding: 0;
		page-break-after: avoid;
		break-after: avoid;
	}
	
	/* Überschriften-Größen */
	h1 { font-size: 12pt; }
	h2 { font-size: 11pt; }
	h3 { font-size: 10pt; }
	
	/* Absätze zusammenhalten */
	p {
		margin: 6pt 0 10pt 0;
		padding: 0;
		font-size: 9pt;
		page-break-inside: avoid;
		break-inside: avoid;
		orphans: 2;
		widows: 2;
	}
	
	/* Sections als Block-Elemente */
	section {
		display: block !important;
		margin: 12pt 0 !important;
		padding: 0 !important;
		page-break-inside: avoid;
		break-inside: avoid;
	}
	
	/* Articles als Block-Elemente */
	article {
		display: block !important;
		margin: 6pt 0 !important;
		padding: 0 !important;
	}
	
	/* Elemente zusammenhalten */
	li, .job-content, .education-item {
		page-break-inside: avoid;
		break-inside: avoid;
	}
	
	/* Links */
	a, a:link, a:visited, a:hover, a:active, a:focus {
		font-weight: 700;
		text-decoration: none;
	}
	
	/* URL nach Links anzeigen */
	main a[href]:after {
		content: " <" attr(href) ">";
		font-style: italic;
		font-weight: 400;
		text-decoration: none;
		break-inside: avoid;
	}
	
	/* Abkürzungen */
	abbr {
		text-decoration: none;
	}
	
	/* Elemente ausblenden */
	img, figure, aside, 
	header li:last-child, 
	footer li:last-child, 
	footer p,
	.certificate-image,
	.image {
		display: none !important;
	}
	
	/* Layout-Anpassungen */
	#publikationen h3 {
		min-height: 0 !important;
	}
	
	/* Icons entfernen */
	header li::before, 
	h3[data-type]::before, 
	.projects-list li::before, 
	.skills li li::before, 
	footer li::before {
		content: '' !important;
	}
	
	/* Listen-Styling */
	.skills li ul, 
	.projects-list, 
	.publications-list {
		list-style: inside;
	}
	
	/* Borders entfernen */
	.job, 
	.skills > li, 
	.education-item, 
	.projects-list li, 
	.publications-list li {
		border-left: none !important;
		border: none !important;
	}
	
	/* Prefixes für bessere Lesbarkeit */
	.job-title::before, 
	.skills h3::before {
		content: '- ';
	}
	
	/* Footer-Info */
	header:after {
		content: '\A <https://steffen-geyer.de/lebenslauf/>';
		white-space: pre;
		break-inside: avoid;
	}
	
	/* Spezielle Anpassungen Layout */
	.languages {
		display: block !important;
		gap: 0 !important;
	}
	
	.language {
		display: inline !important;
		margin: 0 4pt 0 0 !important;
		padding: 0 !important;
	}
	
	.language::after {
		content: ' ';
	}
}