/*
 ***************************************************************************************************
 * Medusa hibrid RFQ / booking mód
 ***************************************************************************************************
 */

/*
 * A plugin natív RFQ gombja megmarad a háttérben, mert a popup lifecycle azt használja,
 * de a látható belépési pontot a Medusa-specifikus alternatív panel adja.
 */
.rnb-cart .redq_request_for_a_quote {
	display                                                 : none !important;
}

/*
 * Az alternatív RFQ panel alapértelmezetten rejtett, csak RFQ módban jelenik meg.
 */
.medusa-hybrid-rfq {
	display                                                 : none;
	margin-top                                              : 18px;
	padding                                                 : 22px;
	border                                                  : 1px solid var(--medusa-theme-border);
	background                                              : color-mix(in srgb, var(--medusa-theme-surface) 90%, white 10%);
	box-shadow                                              : none;
	color                                                   : var(--medusa-theme-text);
}

.rnb-cart.medusa-hybrid-rfq-mode--rfq .medusa-hybrid-rfq {
	display                                                 : block;
}

/*
 * RFQ módban a natív booking summary és a Book Now gomb nem maradhat elsődleges.
 */
.rnb-cart.medusa-hybrid-rfq-mode--rfq .booking-pricing-info,
.rnb-cart.medusa-hybrid-rfq-mode--rfq .redq_add_to_cart_button {
	display                                                 : none !important;
}

.medusa-hybrid-rfq__header {
	margin-bottom                                           : 18px;
}

.medusa-hybrid-rfq__title {
	margin                                                  : 0 0 8px;
	font-size                                               : 24px;
	line-height                                             : 1.2;
	color                                                   : var(--medusa-theme-text);
}

.medusa-hybrid-rfq__lead {
	margin                                                  : 0;
	font-size                                               : 15px;
	line-height                                             : 1.65;
	color                                                   : var(--medusa-theme-text-soft);
}

.medusa-hybrid-rfq__details,
.medusa-hybrid-rfq__coupon {
	padding                                                 : 16px 18px;
	border                                                  : 1px solid var(--medusa-theme-border);
	background                                              : color-mix(in srgb, white 84%, var(--medusa-theme-surface) 16%);
}

.medusa-hybrid-rfq__details {
	margin-bottom                                           : 14px;
}

.medusa-hybrid-rfq__details-grid {
	grid-template-columns                                   : repeat(3, minmax(0, 1fr));
}

.medusa-hybrid-rfq__summary-title,
.medusa-hybrid-rfq__debug-title {
	margin-bottom                                           : 10px;
	font-size                                               : 13px;
	font-weight                                             : 700;
	letter-spacing                                          : 0.04em;
	text-transform                                          : uppercase;
	color                                                   : var(--medusa-theme-text-soft);
}

/*
 * A summary lista stílusa tudatosan a plugin booking összegzőjéhez közelít,
 * így az RFQ mód se idegen blokkként hasson.
 */
.medusa-hybrid-rfq__summary-body ul {
	margin                                                  : 0;
	padding                                                 : 0;
	list-style                                              : none;
}

.medusa-hybrid-rfq__summary-body li {
	display                                                 : flex;
	justify-content                                         : space-between;
	gap                                                     : 12px;
	padding                                                 : 10px 0;
	border-bottom                                           : 1px solid var(--medusa-theme-border);
	font-size                                               : 15px;
}

.medusa-hybrid-rfq__summary-body li:last-child {
	border-bottom                                           : 0;
}

.medusa-hybrid-rfq__summary-body .name {
	font-weight                                             : 600;
	color                                                   : var(--medusa-theme-text);
}

.medusa-hybrid-rfq__summary-body .price {
	text-align                                              : right;
	font-weight                                             : 600;
	color                                                   : var(--medusa-theme-text);
}

.medusa-hybrid-rfq__debug-grid {
	display                                                 : grid;
	grid-template-columns                                   : repeat(2, minmax(0, 1fr));
	gap                                                     : 12px;
}

.medusa-hybrid-rfq__debug-item {
	display                                                 : flex;
	flex-direction                                          : column;
	gap                                                     : 4px;
	padding                                                 : 12px 14px;
	border                                                  : 1px solid var(--medusa-theme-border);
	background                                              : color-mix(in srgb, var(--medusa-theme-surface) 76%, white 24%);
}

.medusa-hybrid-rfq__debug-label,
.medusa-hybrid-rfq__coupon-label {
	font-size                                               : 12px;
	font-weight                                             : 700;
	letter-spacing                                          : 0.04em;
	text-transform                                          : uppercase;
	color                                                   : var(--medusa-theme-text-soft);
}

.medusa-hybrid-rfq__debug-value {
	font-size                                               : 15px;
	font-weight                                             : 600;
	color                                                   : var(--medusa-theme-text);
}

.medusa-hybrid-rfq__coupon-input {
	width                                                   : 100%;
	min-height                                              : 48px;
	margin-top                                              : 8px;
	padding                                                 : 0 14px;
	border                                                  : 1px solid var(--medusa-theme-border);
	background                                              : #ffffff;
	color                                                   : var(--medusa-theme-text);
	font-size                                               : 15px;
}

.medusa-hybrid-rfq__coupon-input:focus {
	border-color                                            : var(--medusa-theme-brand-soft);
	outline                                                 : none;
	box-shadow                                              : 0 0 0 3px color-mix(in srgb, var(--medusa-theme-brand-soft) 24%, white 76%);
}

.medusa-hybrid-rfq__coupon-hint {
	margin                                                  : 10px 0 0;
	font-size                                               : 13px;
	line-height                                             : 1.55;
	color                                                   : var(--medusa-theme-text-soft);
}

.medusa-hybrid-rfq__actions {
	margin-top                                              : 16px;
}

.medusa-hybrid-rfq__cta.button {
	display                                                 : inline-flex;
	align-items                                             : center;
	justify-content                                         : center;
	min-height                                              : 50px;
	padding                                                 : 0 20px;
	border                                                  : 1px solid var(--medusa-theme-brand-soft);
	background                                              : color-mix(in srgb, var(--medusa-theme-brand-soft) 18%, white 82%);
	color                                                   : var(--medusa-theme-text) !important;
	box-shadow                                              : none;
}

.medusa-hybrid-rfq__cta.button:hover {
	border-color                                            : var(--medusa-theme-brand);
	background                                              : color-mix(in srgb, var(--medusa-theme-brand-soft) 28%, white 72%);
	color                                                   : var(--medusa-theme-brand-hover) !important;
}

/*
 * A saját RFQ popup külön child theme réteg, ezért a felépítését és stílusát is itt
 * tartjuk kézben ahelyett, hogy a plugin esetlegesen hiányzó markupjára támaszkodnánk.
 */
.medusa-hybrid-rfq-popup {
	position                                                : relative;
	max-width                                               : 560px;
	padding                                                 : 26px;
	background                                              : color-mix(in srgb, var(--medusa-theme-surface) 90%, white 10%);
	color                                                   : var(--medusa-theme-text);
}

.mfp-close-btn-in .mfp-content > .mfp-close,
.medusa-hybrid-rfq-popup .mfp-close {
	display                                                 : inline-flex;
	align-items                                             : center;
	justify-content                                         : center;
	position                                                : absolute;
	left                                                    : auto;
	width                                                   : 42px;
	height                                                  : 42px;
	margin                                                  : 0;
	padding                                                 : 0;
	padding-bottom                                          : 0;
	border                                                  : 1px solid #8f3d3d;
	border-radius                                           : 0;
	background                                              : color-mix(in srgb, #8f3d3d 14%, white 86%);
	color                                                   : #8f3d3d;
	font-size                                               : 22px;
	line-height                                             : 1;
	top                                                     : 10px !important;
	right                                                   : 10px !important;
	opacity                                                 : 1;
	box-shadow                                              : none;
	z-index                                                 : 2;
	transition                                              : border-color 0.2s ease, color 0.2s ease, background-color 0.2s ease;
}

.mfp-close-btn-in .mfp-content > .mfp-close:hover,
.mfp-close-btn-in .mfp-content > .mfp-close:focus,
.medusa-hybrid-rfq-popup .mfp-close:hover,
.medusa-hybrid-rfq-popup .mfp-close:focus {
	border-color                                            : #7a2e2e;
	background                                              : color-mix(in srgb, #8f3d3d 22%, white 78%);
	color                                                   : #7a2e2e;
	opacity                                                 : 1;
}

.medusa-hybrid-rfq-popup__title {
	margin                                                  : 0 0 8px;
	font-size                                               : 24px;
	line-height                                             : 1.2;
}

.medusa-hybrid-rfq-popup__lead {
	margin                                                  : 0 0 16px;
	font-size                                               : 14px;
	line-height                                             : 1.65;
	color                                                   : var(--medusa-theme-text-soft);
}

.medusa-hybrid-rfq-popup__field {
	margin-bottom                                           : 14px;
}

.medusa-hybrid-rfq-popup__field label,
.medusa-hybrid-rfq-popup__gdpr label {
	display                                                 : block;
	margin-bottom                                           : 6px;
	font-size                                               : 12px;
	font-weight                                             : 700;
	letter-spacing                                          : 0.04em;
	text-transform                                          : uppercase;
	color                                                   : var(--medusa-theme-text-soft);
}

.medusa-hybrid-rfq-popup__field input,
.medusa-hybrid-rfq-popup__field textarea {
	width                                                   : 100%;
	padding                                                 : 12px 14px;
	border                                                  : 1px solid var(--medusa-theme-border);
	background                                              : #ffffff;
	color                                                   : var(--medusa-theme-text);
	font-size                                               : 15px;
}

.medusa-hybrid-rfq-popup__field textarea {
	resize                                                  : vertical;
	min-height                                              : 110px;
}

.medusa-hybrid-rfq-popup__field input:focus,
.medusa-hybrid-rfq-popup__field textarea:focus {
	border-color                                            : var(--medusa-theme-brand-soft);
	outline                                                 : none;
	box-shadow                                              : 0 0 0 3px color-mix(in srgb, var(--medusa-theme-brand-soft) 24%, white 76%);
}

.medusa-hybrid-rfq-popup__hint {
	margin                                                  : 8px 0 0;
	font-size                                               : 13px;
	line-height                                             : 1.55;
	color                                                   : var(--medusa-theme-text-soft);
}

.medusa-hybrid-rfq-popup__gdpr {
	margin-bottom                                           : 14px;
	padding                                                 : 12px 14px;
	border                                                  : 1px solid var(--medusa-theme-border);
	background                                              : color-mix(in srgb, var(--medusa-theme-surface-accent) 74%, white 26%);
}

.medusa-hybrid-rfq-popup__gdpr label {
	display                                                 : flex;
	gap                                                     : 10px;
	margin-bottom                                           : 0;
	text-transform                                          : none;
	letter-spacing                                          : 0;
	font-size                                               : 14px;
	font-weight                                             : 500;
}

.medusa-hybrid-rfq-popup__gdpr input[type='checkbox'] {
	margin-top                                              : 4px;
	accent-color                                            : var(--medusa-theme-brand);
}

.medusa-hybrid-rfq-popup__actions {
	margin-top                                              : 18px;
}

.medusa-hybrid-rfq-popup__submit.button {
	min-height                                              : 48px;
	padding                                                 : 0 22px;
	border                                                  : 1px solid var(--medusa-theme-button-bg);
	background                                              : var(--medusa-theme-button-bg);
	color                                                   : var(--medusa-theme-button-text) !important;
	font-weight                                             : 700;
	letter-spacing                                          : 0.01em;
	box-shadow                                              : 0 10px 22px rgba(181, 136, 31, 0.18);
}

.medusa-hybrid-rfq-popup__submit.button:hover,
.medusa-hybrid-rfq-popup__submit.button:focus {
	border-color                                            : var(--medusa-theme-button-bg-hover);
	background                                              : var(--medusa-theme-button-bg-hover);
	color                                                   : var(--medusa-theme-button-text) !important;
	box-shadow                                              : 0 12px 26px rgba(143, 106, 18, 0.22);
}

.medusa-hybrid-rfq-popup__message {
	margin-top                                              : 12px;
	font-size                                               : 14px;
	line-height                                             : 1.55;
	color                                                   : var(--medusa-theme-text-soft);
}

.medusa-hybrid-rfq-popup__message--error {
	color                                                   : #8f3d3d;
}

.medusa-hybrid-rfq-popup__message--success {
	color                                                   : #3f6b4a;
}

@media (max-width: 768px) {
	.medusa-hybrid-rfq {
		padding                                             : 18px;
	}

	.medusa-hybrid-rfq__title {
		font-size                                           : 21px;
	}

	.medusa-hybrid-rfq__debug-grid {
		grid-template-columns                               : 1fr;
	}

	.medusa-hybrid-rfq__summary-body li {
		flex-direction                                      : column;
		align-items                                         : flex-start;
	}

	.medusa-hybrid-rfq__summary-body .price {
		text-align                                          : left;
	}

	.medusa-hybrid-rfq-popup {
		padding                                             : 20px;
	}
}