/**
 * ENSO Print Styles
 * Version: 1.0.7
 */

/* Print button styling */
.enso-print-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 12px 24px;
	background: #2271b1;
	color: #fff;
	border: none;
	border-radius: 4px;
	cursor: pointer;
	font-size: 14px;
	font-weight: 500;
	transition: background 0.2s;
}
.enso-print-btn:hover {
	background: #135e96;
}
.enso-print-btn svg {
	width: 18px;
	height: 18px;
}

/* Print layout container - hidden on screen */
#enso-print-layout {
	display: none;
}

/* Print styles */
@media print {
	/* Remove browser headers/footers completely */
	@page {
		margin: 0;
		size: A4;
	}

	/* Hide EVERYTHING and collapse it */
	html, html body, html body * {
		visibility: hidden !important;
	}

	/* Make all elements take no space */
	body > *:not(#enso-print-layout),
	header:not(#enso-print-layout *),
	footer:not(#enso-print-layout *),
	nav:not(#enso-print-layout *),
	aside:not(#enso-print-layout *),
	.elementor-location-header,
	.elementor-location-footer,
	.site-header, .site-footer,
	.elementor-section:not(#enso-print-layout *),
	.elementor-container:not(#enso-print-layout *),
	.e-con:not(#enso-print-layout *),
	.e-con-inner:not(#enso-print-layout *),
	.elementor:not(#enso-print-layout *) {
		display: none !important;
		height: 0 !important;
		overflow: hidden !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	/* Reset html and body */
	html, body {
		margin: 0 !important;
		padding: 0 !important;
		height: auto !important;
		width: 100% !important;
		overflow: visible !important;
		background: #fff !important;
	}

	/* Show print layout and all its contents */
	#enso-print-layout,
	#enso-print-layout * {
		visibility: visible !important;
	}

	#enso-print-layout {
		display: block !important;
		position: absolute !important;
		left: 0 !important;
		top: 0 !important;
		width: 100% !important;
		height: auto !important;
		background: #fff !important;
		padding: 15mm !important;
		box-sizing: border-box !important;
		z-index: 999999 !important;
		-webkit-print-color-adjust: exact !important;
		print-color-adjust: exact !important;
	}

	/* Header: Logo left, QR right - FORCE FLEXBOX */
	#enso-print-layout .print-header {
		display: -webkit-box !important;
		display: -webkit-flex !important;
		display: -ms-flexbox !important;
		display: flex !important;
		-webkit-box-orient: horizontal !important;
		-webkit-box-direction: normal !important;
		-webkit-flex-direction: row !important;
		-ms-flex-direction: row !important;
		flex-direction: row !important;
		-webkit-box-pack: justify !important;
		-webkit-justify-content: space-between !important;
		-ms-flex-pack: justify !important;
		justify-content: space-between !important;
		-webkit-box-align: center !important;
		-webkit-align-items: center !important;
		-ms-flex-align: center !important;
		align-items: center !important;
		margin-bottom: 15px !important;
		padding-bottom: 10px !important;
		border-bottom: 2px solid #333 !important;
		width: 100% !important;
	}

	#enso-print-layout .print-header-left {
		display: inline-block !important;
		float: left !important;
	}

	#enso-print-layout .print-header-right {
		display: inline-block !important;
		float: right !important;
	}

	#enso-print-layout .print-logo {
		max-width: 120px !important;
		height: auto !important;
		display: block !important;
	}

	#enso-print-layout .print-qr {
		width: 70px !important;
		height: 70px !important;
		display: block !important;
	}

	/* Title */
	#enso-print-layout .print-title {
		display: block !important;
		clear: both !important;
		font-size: 22px !important;
		font-weight: bold !important;
		margin: 0 0 30px 0 !important;
		padding-top: 10px !important;
		color: #333 !important;
	}

	/* Meta: Price, Status, Floor - horizontal with FLEXBOX */
	#enso-print-layout .print-meta {
		display: -webkit-box !important;
		display: -webkit-flex !important;
		display: -ms-flexbox !important;
		display: flex !important;
		-webkit-box-orient: horizontal !important;
		-webkit-box-direction: normal !important;
		-webkit-flex-direction: row !important;
		-ms-flex-direction: row !important;
		flex-direction: row !important;
		gap: 40px !important;
		margin-bottom: 15px !important;
		-webkit-flex-wrap: nowrap !important;
		-ms-flex-wrap: nowrap !important;
		flex-wrap: nowrap !important;
		-webkit-box-align: start !important;
		-webkit-align-items: flex-start !important;
		-ms-flex-align: start !important;
		align-items: flex-start !important;
	}

	#enso-print-layout .print-meta-item {
		display: inline-block !important;
	}

	#enso-print-layout .print-meta-label {
		display: block !important;
		font-size: 10px !important;
		color: #666 !important;
		text-transform: uppercase !important;
		letter-spacing: 0.5px !important;
	}

	#enso-print-layout .print-meta-value {
		display: block !important;
		font-size: 16px !important;
		font-weight: 600 !important;
		color: #333 !important;
	}

	#enso-print-layout .print-status {
		display: inline-block !important;
		padding: 4px 12px !important;
		border-radius: 4px !important;
		font-size: 11px !important;
		font-weight: 600 !important;
		text-transform: uppercase !important;
	}

	#enso-print-layout .print-status.available {
		background: #d4edda !important;
		color: #155724 !important;
		-webkit-print-color-adjust: exact !important;
		print-color-adjust: exact !important;
	}

	#enso-print-layout .print-status.reserved {
		background: #fff3cd !important;
		color: #856404 !important;
		-webkit-print-color-adjust: exact !important;
		print-color-adjust: exact !important;
	}

	#enso-print-layout .print-status.sold {
		background: #f8d7da !important;
		color: #721c24 !important;
		-webkit-print-color-adjust: exact !important;
		print-color-adjust: exact !important;
	}

	/* Specs: Area, Rooms - horizontal */
	#enso-print-layout .print-specs {
		display: -webkit-box !important;
		display: -webkit-flex !important;
		display: -ms-flexbox !important;
		display: flex !important;
		-webkit-box-orient: horizontal !important;
		-webkit-box-direction: normal !important;
		-webkit-flex-direction: row !important;
		-ms-flex-direction: row !important;
		flex-direction: row !important;
		gap: 20px !important;
		margin: 15px 0 !important;
		padding: 12px !important;
		background: #f8f9fa !important;
		border-radius: 4px !important;
		-webkit-box-pack: center !important;
		-webkit-justify-content: center !important;
		-ms-flex-pack: center !important;
		justify-content: center !important;
		-webkit-print-color-adjust: exact !important;
		print-color-adjust: exact !important;
	}

	#enso-print-layout .print-spec {
		display: block !important;
		text-align: center !important;
		padding: 0 15px !important;
	}

	#enso-print-layout .print-spec-value {
		display: block !important;
		font-size: 18px !important;
		font-weight: bold !important;
		color: #333 !important;
	}

	#enso-print-layout .print-spec-label {
		display: block !important;
		font-size: 9px !important;
		color: #666 !important;
		text-transform: uppercase !important;
	}

	/* Image */
	#enso-print-layout .print-image-container {
		display: block !important;
		margin: 15px 0 !important;
		text-align: center !important;
	}

	#enso-print-layout .print-image {
		display: inline-block !important;
		max-width: 100% !important;
		max-height: 250px !important;
		object-fit: contain !important;
	}

	/* Description */
	#enso-print-layout .print-description {
		display: block !important;
		margin: 15px 0 !important;
		font-size: 11px !important;
		line-height: 1.5 !important;
		color: #444 !important;
	}

	#enso-print-layout .print-description h3 {
		display: block !important;
		font-size: 13px !important;
		margin: 0 0 8px 0 !important;
		color: #333 !important;
	}

	/* Hide print button */
	.enso-print-btn {
		display: none !important;
	}
}
