/**
 * S+W Druckversion — eigenständige Seite (includes/sw-druck.php).
 *
 * Variante „druck": weißes A4-Blatt, Textfarbe statt Tafel-Weiß, feste
 * Pixelgrößen (kein clamp/vw — der Export muss auf jedem Gerät gleich
 * ausfallen; 794 CSS-px = 210 mm bei 96 dpi, 16 px ≙ 12 pt).
 * Variante „social": 1080 px wie die Website (Widget-CSS gilt unverändert).
 * Die Leiste oben ist Bedienung und erscheint weder im Druck noch im Export
 * (`data-sw-export-skip`, @media print).
 */

/* ---------- Bühne ---------- */

html {
	background: #d9d6cf;
}

body.sw-druck {
	margin: 0;
	min-height: 100vh;
	font-family: var(--sw-font-sans, 'Meta Pro', 'Fira Sans', sans-serif);
	color: var(--sw-color-text, #1D1D1B);
	background: #d9d6cf;
	-webkit-font-smoothing: antialiased;
}

.sw-druck__buehne {
	display: flex;
	justify-content: center;
	padding: 2rem 1rem 4rem;
	overflow-x: auto;
}

/* ---------- Leiste ---------- */

.sw-druck__leiste {
	position: sticky;
	top: 0;
	z-index: 10;
	background: var(--sw-color-white, #fff);
	border-bottom: 1px solid rgba(29, 29, 27, 0.12);
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.06);
}

.sw-druck__leiste-innen {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0.75rem 1rem;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.75rem 1.5rem;
}

.sw-druck__info {
	display: flex;
	align-items: baseline;
	flex-wrap: wrap;
	gap: 0.5rem;
	font-size: 1.0625rem;
}

.sw-druck__info strong {
	font-weight: 700;
}

.sw-druck__badge {
	font-style: normal;
	font-size: 0.8125rem;
	letter-spacing: 0.5px;
	padding: 0.15rem 0.6rem;
	border-radius: 60px;
	background: var(--sw-color-gold, #D3B880);
	color: var(--sw-color-text, #1D1D1B);
}

.sw-druck__wochen {
	display: flex;
	flex-wrap: wrap;
	gap: 0.375rem;
}

.sw-druck__woche {
	font-size: 0.9375rem;
	padding: 0.3rem 0.8rem;
	border-radius: 60px;
	border: 1px solid rgba(29, 29, 27, 0.35);
	color: var(--sw-color-text, #1D1D1B);
	text-decoration: none;
	font-variant-numeric: tabular-nums;
}

.sw-druck__woche:hover {
	border-color: var(--sw-color-text, #1D1D1B);
}

.sw-druck__woche--aktiv {
	background: var(--sw-color-text, #1D1D1B);
	border-color: var(--sw-color-text, #1D1D1B);
	color: var(--sw-color-white, #fff);
}

.sw-druck__aktionen {
	margin-left: auto;
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.sw-druck__btn {
	appearance: none;
	font: inherit;
	font-size: 0.9375rem;
	font-weight: 500;
	letter-spacing: 0.5px;
	padding: 0.6rem 1.25rem;
	border-radius: 60px;
	border: 1px solid var(--sw-color-text, #1D1D1B);
	background: var(--sw-color-white, #fff);
	color: var(--sw-color-text, #1D1D1B);
	text-decoration: none;
	cursor: pointer;
	transition: background-color 0.2s ease, color 0.2s ease, opacity 0.2s ease;
}

.sw-druck__btn:hover:not(:disabled),
.sw-druck__btn:focus-visible {
	background: var(--sw-color-text, #1D1D1B);
	color: var(--sw-color-white, #fff);
}

.sw-druck__btn--primaer {
	background: var(--sw-color-wine, #631C39);
	border-color: var(--sw-color-wine, #631C39);
	color: var(--sw-color-white, #fff);
}

.sw-druck__btn:disabled {
	opacity: 0.6;
	cursor: default;
}

.sw-druck__status {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 1rem 0.5rem;
	font-size: 0.875rem;
	color: rgba(29, 29, 27, 0.7);
	min-height: 0;
}

.sw-druck__status:empty {
	display: none;
}

/* ---------- Blatt (A4) ---------- */

.sw-druck__blatt {
	position: relative;
	flex: 0 0 auto;
	width: 794px;
	min-height: 1123px;
	box-sizing: border-box;
	padding: 64px 72px 56px;
	background: var(--sw-color-white, #fff);
	color: var(--sw-color-text, #1D1D1B);
	box-shadow: 0 10px 40px rgba(0, 0, 0, 0.18);
	display: flex;
	flex-direction: column;
}

.sw-druck__inhalt {
	flex: 1 0 auto;
}

.sw-druck__fuss {
	margin-top: 40px;
	padding-top: 12px;
	border-top: 1px solid rgba(29, 29, 27, 0.25);
	display: flex;
	justify-content: space-between;
	font-size: 13px;
	letter-spacing: 0.5px;
	color: rgba(29, 29, 27, 0.75);
}

/* Weißes Logo für den Druck schwarz einfärben (transparentes PNG). */
.sw-druck__logo--einfaerben img {
	filter: brightness(0);
}

/* Feste Größen für die Druck-Variante — überschreiben die clamp()-Werte des
   Widget-CSS mit höherer Spezifität (.sw-druck--druck .sw-druck__blatt …). */

.sw-druck--druck .sw-druck__blatt .sw-tagesessen,
.sw-druck--druck .sw-druck__blatt .sw-angebote {
	--sw-tagesessen-color: var(--sw-color-text, #1D1D1B);
	--sw-angebote-color: var(--sw-color-text, #1D1D1B);
	color: var(--sw-color-text, #1D1D1B);
}

.sw-druck--druck .sw-druck__blatt .sw-tagesessen__logo {
	margin-bottom: 40px;
}

.sw-druck--druck .sw-druck__blatt .sw-tagesessen__logo img {
	width: 240px;
	height: auto;
}

.sw-druck--druck .sw-druck__blatt .sw-tagesessen__kopf,
.sw-druck--druck .sw-druck__blatt .sw-angebote__kopf {
	margin-bottom: 36px;
}

.sw-druck--druck .sw-druck__blatt .sw-tagesessen .sw-tagesessen__titel,
.sw-druck--druck .sw-druck__blatt .sw-angebote .sw-angebote__titel {
	color: var(--sw-color-text, #1D1D1B);
	font-size: 30px;
	font-weight: 700;
	line-height: 1.25;
	margin: 0;
}

.sw-druck--druck .sw-druck__blatt .sw-tagesessen__zeitraum,
.sw-druck--druck .sw-druck__blatt .sw-angebote__zeitraum {
	font-size: 30px;
	font-weight: 400;
	line-height: 1.25;
	margin: 0;
}

.sw-druck--druck .sw-druck__blatt .sw-tagesessen__liste {
	row-gap: 26px;
}

.sw-druck--druck .sw-druck__blatt .sw-tagesessen__zeile {
	grid-template-columns: 170px 1fr;
	column-gap: 20px;
}

.sw-druck--druck .sw-druck__blatt .sw-tagesessen__tag,
.sw-druck--druck .sw-druck__blatt .sw-tagesessen__gericht {
	font-size: 24px;
	line-height: 1.3;
}

.sw-druck--druck .sw-druck__blatt .sw-tagesessen__gruss {
	margin-top: 44px;
	font-size: 24px;
}

.sw-druck--druck .sw-druck__blatt .sw-tagesessen__hinweis,
.sw-druck--druck .sw-druck__blatt .sw-angebote__hinweis {
	margin-top: 44px;
	font-size: 15px;
	line-height: 1.5;
}

.sw-druck--druck .sw-druck__blatt .sw-angebote__liste {
	row-gap: 22px;
}

.sw-druck--druck .sw-druck__blatt .sw-angebote__produkt {
	font-size: 26px;
}

.sw-druck--druck .sw-druck__blatt .sw-angebote__zusatz,
.sw-druck--druck .sw-druck__blatt .sw-angebote__menge {
	font-size: 15px;
}

.sw-druck--druck .sw-druck__blatt .sw-angebote__preis {
	font-size: 30px;
}

/* ---------- Social-Variante (1080 px wie die Website) ---------- */

.sw-druck--social .sw-druck__blatt {
	width: 1080px;
	min-height: 0;
	padding: 96px 24px;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
}

.sw-druck--social .sw-druck__inhalt {
	max-width: 45rem; /* --sw-content-narrow */
	margin: 0 auto;
}

.sw-druck--social .sw-angebote__kopf {
	margin-bottom: 2.5rem;
}

.sw-druck--social .sw-angebote__titel {
	font-size: 2.5rem; /* ≈ Kit-H2 Desktop 40 px */
	font-weight: 700;
	line-height: 1.3;
	margin: 0;
}

/* Im Export-Klon keinen Schatten mitrastern */
.sw-export-clone .sw-druck__blatt {
	box-shadow: none;
}

/* ---------- Drucken ---------- */

@page {
	size: A4;
	margin: 0;
}

@media print {
	html, body.sw-druck {
		background: #fff;
	}
	.sw-druck__leiste {
		display: none !important;
	}
	.sw-druck__buehne {
		display: block;
		padding: 0;
		overflow: visible;
	}
	/* 210 mm = 793,7 CSS-px: die Pixelmaße des Blatts gelten im Druck 1:1,
	   deshalb hier keine eigenen Schriftgrößen. */
	.sw-druck__blatt {
		width: 210mm;
		min-height: 297mm;
		box-shadow: none;
		margin: 0;
		-webkit-print-color-adjust: exact;
		print-color-adjust: exact;
	}
}
