.admin-staylodgic-content {
	max-width: none;
	margin: 0 auto;
}

.calendar-insights-wrap,
.front-booking-search {
	max-width: 600px;
	margin: 0 auto;
}

#booking-details-ajax {
	margin-top: 50px;
}

.invoice-container section,
.invoice-container footer {
	page-break-inside: avoid;
}

.invoice-container {
	width: 800px;
	max-width: 800px;
	margin: auto;
	aspect-ratio: 1 / 1.4142;
	/* A4 ratio */
	position: relative;
	min-height: 95vh;
	padding-bottom: 5vh;
	border: 1px solid #eee;
	overflow-y: scroll;
}

.invoice-container,
.invoice-container * {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 14px;
}

.invoice-container-inner {
	padding: 50px 70px;
}

.invoice-container footer {
	position: absolute;
	bottom: 0;
	width: 100%;
	text-align: center;
}

.invoice-footer {
	text-align: center;
	padding-bottom: 40px;
	font-size: 11px;
	letter-spacing: 2px;
	background: #eee;
	padding-top: 35px;
}

.registration-button,
.save-pdf-invoice-button,
.print-invoice-button {
	/* Button styling */
	margin-top: 15px;
	padding: 10px 20px;
	background-color: #4caf50;
	color: white;
	border: none;
	cursor: pointer;
	text-decoration: none;
	margin-right: 1px;
}

.registration-button:hover,
.save-pdf-invoice-button:hover,
.print-invoice-button:hover {
	background-color: #45a049;
}

.invoice-buttons-container {
	margin: 0 auto;
	text-align: center;
	padding-bottom: 22px;
	padding-top: 30px;
	border-top: 1px solid #ccc;
	margin-top: 50px;
}

.metabox-wrapper .reservation-details {
	padding-top: 15px;
	font-weight: 500;
}

#staylodgic_registration_data-section-title {
	font-size: 32px;
	font-weight: 100;
	text-align: center;
}

h2#invoice-subheading,
.invoice-container h2 {
	font-size: 16px;
	font-weight: 600;
	margin-top: 20px;
	margin-bottom: 19px;
	padding-bottom: 22px;
	border-bottom: 1px solid #000;
}

#invoice-booking-pricing .nightly-rate {
	display: inline-block;
	width: 50%;
}

#invoice-booking-pricing .subtotal-info .price,
#invoice-booking-pricing .invoice-total .price {
	width: 25%;
}

#invoice-booking-pricing .price {
	display: inline-block;
	width: 50%;
}

#invoice-booking-pricing .nights,
#invoice-booking-pricing .tax-value {
	width: 50%;
	display: inline-block;
}

#invoice-hotel-info {
	margin-top: 0;
	padding-top: 30px;
	margin-bottom: 10px;
	padding-bottom: 15px;
	text-align: right;
}

#invoice-hotel-info {
	clear: both;
}

#invoice-hotel-header {
	display: flex;
	justify-content: space-between;
	align-items: start;
}

#invoice-hotel-logo {
	flex: 1;
	/* Adjust if needed */
}

.invoice-logo {
	max-width: 250px;
}

#invoice-info {
	flex: 1;
	text-align: right;
	/* Adjust if needed */
}

#invoice-booking-information {
	display: flex;
	justify-content: space-between;
}

#invoice-booking-details,
#invoice-booking-pricing {
	flex: 1;
	/* Optional: Add some margin between columns */
	margin-right: 20px;
}

/* If you want the last section to not have margin on the right */
#invoice-booking-pricing {
	margin-right: 0;
}

.invoice-booking-status {
	font-size: 27px;
	font-weight: 700;
	color: #bb944a;
}

#invoice-booking-details span {
	width: 50%;
	display: inline-block;
}

.registration-signature {
	width: 140px;
}

.invoice-customer-registration {
	padding: 0 10px;
}

.wp-core-ui .invoice-buttons-container button {
	margin-right: 5px;
}

.wp-core-ui .invoice-buttons-container a {
	margin-right: 8px;
}

.registration-delete-container {
	text-align: center;
	margin-top: 30px;
}

.wp-core-ui .staylodgic-modal button {
	margin-right: 5px;
}

#qrcode {
	margin-top: 10px;
}

.registrations-not-found-notice-wrap {
	text-align: center;
}

.registrations-not-found-notice {
	text-align: center;
	margin-top: 20px;
	margin-bottom: 30px;
	padding: 10px 20px;
	background: #ff0909;
	display: inline-block;
	color: #fff;
}

.registration-notice.booking-number-not-found {
	padding: 5px 10px;
	background: #ffe4cb;
	display: inline-block;
	margin-left: 10px;
}

.invoice-container-buttons {
	text-align: center;
	margin-bottom: 20px;
}

.staylodgic_bookings_page_staylodgic-invoicing h1 {
	margin-top: 30px;
	margin-bottom: 30px;
	text-align: center;
}

.expor-import-calendar h1 {
	font-size: 28px;
	margin-top: 30px;
	margin-bottom: 24px;
}

.import-export-heading {
	margin-bottom: 7px;
	font-weight: 600;
}

.import-export-wrap {
	margin: 18px 0;
}

.room_ical_export_wrapper {
	border-bottom: 1px solid #eee;
	margin-bottom: 14px;
	padding-bottom: 22px;
}

.availability-sync-stats {
	font-size: 9px;
	margin-top: 5px;
	text-transform: uppercase;
	color: #959595;
}

.availability-sync-stats span {
	margin-right: 11px;
}

.room_ical_links_wrapper {
	border-bottom: 1px solid #e8e8e8;
	margin-bottom: 20px;
	padding-bottom: 20px;
}

.add_more_ical.button.button-secondary {
	margin-top: 14px;
}

.room_ical_link_group.input-group {
	margin-top: 14px;
}

.how-to-admin h2 {
	font-size: 16px;
	margin-bottom: 18px;
}

.how-to-admin {
	padding: 24px 30px 20px;
	background: #fffce6;
	margin-bottom: 20px;
}

.expor-import-calendar #export-import-form,
.main-sync-form-wrap #sync-form {
	max-width: 840px;
	width: 100%;
	float: none;
}

.how-to-admin ol {
	padding-left: 0;
	margin-top: 16px;
	font-size: 13px;
	margin-left: 16px;
}

.availability-sync-stats .file-error {
	background: #ff0000;
	color: #fff;
	padding: 3px 7px;
	font-weight: bold;
}

#save_all_ical_rooms .spinner-inactive {
	display: none;
}

#save_all_ical_rooms .spinner-active {
	display: inline-block;
}

.staylodgic_actvtres_page_staylodgic-activity-invoicing h1 {
	margin-top: 30px;
	margin-bottom: 30px;
	text-align: center;
}

.exporter_calendar-no-records {
	font-size: 11px;
	background: #f00;
	display: inline-block;
	color: #fff;
	padding: 3px 15px;
	font-weight: 500;
}

.exporter_calendar-error-wrap {
	display: none;
}

.expor-import-calendar {
	padding-right: 10px;
}

.metaboxtype_staylodgic_registration_data {
	overflow-y: scroll;
}

@media print {
	body {
		font-family: Arial, Helvetica, sans-serif;
	}

	.invoice-container {
		width: auto;
		max-width: none;
		min-height: 0;
		padding-bottom: 0;
		box-shadow: none;
		aspect-ratio: auto;
		/* Let the browser handle the page size */
	}

	.invoice-container-inner {
		padding: 0;
	}
}