/**
 * Minimalist Checkout for WooCommerce - shop Style Stylesheet
 */

/* ==========================================================================
   1. Typography & Body Base
   ========================================================================== */
body.mcrpd-shop-checkout-body {
	font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	background-color: #ffffff;
	color: #333333;
	margin: 0;
	padding: 0;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.mcrpd-checkout-page-container {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0;
	box-sizing: border-box;
}

/* ==========================================================================
   2. Grid Layout & Structural Columns
   ========================================================================== */
/* Enforce strict layout on main form and sections to prevent theme conflicts */
form.woocommerce-checkout,
#customer_details,
.woocommerce-billing-fields,
.woocommerce-shipping-fields,
.mcrpd-billing-fields-wrap,
.mcrpd-shipping-fields-wrap,
.mcrpd-checkout-section,
.mcrpd-contact-section {
	display: flex !important;
	flex-direction: column !important;
	width: 100% !important;
	box-sizing: border-box !important;
	clear: both !important;
}

.mcrpd-shop-checkout-wrap {
	display: flex !important;
	flex-wrap: wrap !important;
	min-height: 100vh;
	box-sizing: border-box !important;
	margin-top: 15px;
	margin-bottom: 15px;
	width: 100% !important;
}

.mcrpd-checkout-main-content>.woocommerce {
	margin: auto;
	width: 100% !important;
}

/* Left Column: Form & Fields */
.mcrpd-shop-checkout-left {
	flex: 1 1 55% !important;
	max-width: 55% !important;
	width: 55% !important;
	padding: 20px 20px 20px 0px;
	background-color: #ffffff;
	box-sizing: border-box !important;
	float: none !important;
}

/* Right Column: Order review sidebar */
.mcrpd-shop-checkout-right {
	flex: 1 1 45% !important;
	max-width: 45% !important;
	width: 45% !important;
	padding: 30px;
	background-color: #f5f5f5;
	border: 1px solid #e1e1e1;
	box-sizing: border-box !important;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	float: none !important;
}

/* Right Column: clean styles */

.mcrpd-shop-checkout-right .woocommerce-checkout-review-order {
	width: 100% !important;
	background: #fff0 !important;
	float: none !important;
}

/* Brand Header */
.mcrpd-checkout-brand-header {
	display: flex !important;
	justify-content: space-between !important;
	align-items: center !important;
	margin-bottom: 30px;
	padding-bottom: 15px;
	border-bottom: 1px solid #e1e1e1;
}

.mcrpd-brand-logo-link {
	text-decoration: none !important;
}

.mcrpd-brand-name {
	font-size: 22px;
	font-weight: 700;
	color: #111111;
	letter-spacing: -0.5px;
}

.mcrpd-brand-logo-link img {
	max-height: 45px;
	width: auto;
	border-radius: 0px;
	display: block;
}

.mcrpd-cart-icon-link {
	color: #666666;
	transition: color 0.2s ease;
	display: inline-flex !important;
	align-items: center !important;
}

.mcrpd-cart-icon-link:hover {
	color: #111111;
}

.mcrpd-cart-svg {
	width: 22px;
	height: 22px;
}

/* Responsive Collapse */
@media (max-width: 1000px) {
	.mcrpd-shop-checkout-wrap {
		flex-direction: column-reverse !important;
	}

	.mcrpd-shop-checkout-left,
	.mcrpd-shop-checkout-right {
		flex: 1 1 100% !important;
		max-width: 100% !important;
		width: 100% !important;
		box-sizing: border-box !important;
	}

	.mcrpd-shop-checkout-right {
		padding: 20px;
		background-color: #fafafa;
		border-left: none;
		border-bottom: 1px solid #e1e1e1;
	}

	.mcrpd-shop-checkout-left {
		padding: 20px 0 !important;
	}
}

/* ==========================================================================
   3. shop Section Design
   ========================================================================== */
.mcrpd-checkout-section {
	margin-bottom: 35px;
}

.mcrpd-section-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 0;
}

.mcrpd-section-title {
	font-size: 17px;
	font-weight: 600;
	color: #111111;
	margin: 0 0 15px 0 !important;
	letter-spacing: -0.2px;
	line-height: 1.2 !important;
}

.mcrpd-section-title+.mcrpd-section-subtitle {
	margin-top: -10px !important;
}

.mcrpd-section-subtitle {
	font-size: 13px;
	color: #666666;
	margin: 5px 0 20px 0 !important;
	line-height: 1.4 !important;
}

.mcrpd-login-wrap {
	font-size: 13px;
	color: #666666;
}

.mcrpd-login-link {
	color: #1773b0;
	text-decoration: none;
	margin-left: 5px;
	font-weight: 500;
	transition: color 0.15s ease;
}

.mcrpd-login-link:hover {
	color: #125785;
	text-decoration: underline;
}

/* Checkbox Style */
.mcrpd-checkbox-wrapper {
	margin-top: 12px !important;
	display: flex !important;
	align-items: center !important;
}

.mcrpd-checkbox-label,
.mcrpd-contact-fields label.mcrpd-checkbox-label {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: flex-start !important;
	gap: 10px !important;
	cursor: pointer !important;
	font-size: 13.5px !important;
	line-height: 1.4 !important;
	font-weight: 400 !important;
	color: #444444 !important;
	user-select: none;
	margin: 0 !important;
	padding: 0 !important;
	vertical-align: middle !important;
}

.mcrpd-checkbox-label input[type="checkbox"] {
	margin: 0 !important;
	padding: 0 !important;
	width: 16px !important;
	height: 16px !important;
	min-width: 16px !important;
	min-height: 16px !important;
	border: 1px solid #d9d9d9;
	border-radius: 4px;
	cursor: pointer !important;
	flex-shrink: 0 !important;
	vertical-align: middle !important;
	position: static !important;
	top: auto !important;
	accent-color: var(--mcmchk-primary, #1773b0) !important;
}

.mcrpd-checkbox-label .mcrpd-checkbox-text {
	display: inline-block !important;
	line-height: 1.4 !important;
	margin: 0 !important;
	padding: 0 !important;
	vertical-align: middle !important;
}

/* ==========================================================================
   4. Form Input Controls Styling
   ========================================================================== */
.woocommerce-billing-fields__field-wrapper,
.woocommerce-shipping-fields__field-wrapper,
.woocommerce-shipping-fields__field-wrapper-custom,
.woocommerce-address-fields__field-wrapper {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 12px !important;
	margin: 0 !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

.woocommerce-billing-fields__field-wrapper p.form-row,
.woocommerce-shipping-fields__field-wrapper p.form-row,
.woocommerce-address-fields__field-wrapper p.form-row {
	display: flex !important;
	flex-direction: column !important;
	width: 100%;
	margin: 0 0 4px 0 !important;
	padding: 0 !important;
	box-sizing: border-box !important;
}

/* Side-by-side inputs */
/* Remove ID-based structural constraints so WPDesk or other plugins can control the layout */

.woocommerce-billing-fields__field-wrapper p.form-row-first,
.woocommerce-shipping-fields__field-wrapper p.form-row-first,
.woocommerce-address-fields__field-wrapper p.form-row-first {
	width: calc(50% - 6px) !important;
	clear: none !important;
	float: none !important;
}

.woocommerce-billing-fields__field-wrapper p.form-row-last,
.woocommerce-shipping-fields__field-wrapper p.form-row-last,
.woocommerce-address-fields__field-wrapper p.form-row-last {
	width: calc(50% - 6px) !important;
	clear: none !important;
	float: none !important;
}

.woocommerce-billing-fields__field-wrapper p.form-row-wide,
.woocommerce-shipping-fields__field-wrapper p.form-row-wide,
.woocommerce-address-fields__field-wrapper p.form-row-wide {
	width: 100% !important;
	clear: both !important;
	float: none !important;
}

@media (max-width: 600px) {

	.woocommerce-billing-fields__field-wrapper p.form-row-first,
	.woocommerce-billing-fields__field-wrapper p.form-row-last,
	.woocommerce-shipping-fields__field-wrapper p.form-row-first,
	.woocommerce-shipping-fields__field-wrapper p.form-row-last {
		width: 100% !important;
	}
}

/* Core Input Styling */
.woocommerce-checkout input[type="text"]:not(#wc-stripe-hidden-style-input),
.woocommerce-checkout input[type="email"],
.woocommerce-checkout input[type="tel"],
.woocommerce-checkout input[type="password"],
.woocommerce-checkout input[type="number"] {
	background-color: #ffffff !important;
	border: 1px solid #d9d9d9 !important;
	border-radius: 5px !important;
	padding: 12px 14px !important;
	font-size: 14px !important;
	line-height: 1.4 !important;
	color: #333333 !important;
	outline: none !important;
	width: 100% !important;
	height: 48px !important;
	margin: 0 !important;
	box-shadow: none !important;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
	box-sizing: border-box !important;
}

.woocommerce-checkout select {
	background-color: #ffffff !important;
	border: 1px solid #d9d9d9 !important;
	border-radius: 5px !important;
	padding: 18px 35px 4px 14px !important;
	font-size: 14px !important;
	color: #333333 !important;
	outline: none !important;
	width: 100% !important;
	height: 48px !important;
	margin: 0 !important;
	box-shadow: none !important;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
	box-sizing: border-box !important;
}

.woocommerce-checkout input[type="text"]:focus,
.woocommerce-checkout input[type="email"]:focus,
.woocommerce-checkout input[type="tel"]:focus,
.woocommerce-checkout input[type="password"]:focus,
.woocommerce-checkout input[type="number"]:focus,
.woocommerce-checkout select:focus {
	border-color: var(--mcmchk-primary, #1773b0) !important;
	box-shadow: 0 0 0 1px var(--mcmchk-primary, #1773b0) !important;
}

/* Custom checkout labels styling (for when they are visible) */
.woocommerce-billing-fields__field-wrapper label:not(.mcrpd-checkbox-label):not(.woocommerce-form__label-for-checkbox):not(.checkbox),
.woocommerce-shipping-fields__field-wrapper label:not(.mcrpd-checkbox-label):not(.woocommerce-form__label-for-checkbox):not(.checkbox),
.woocommerce-address-fields__field-wrapper label:not(.mcrpd-checkbox-label):not(.woocommerce-form__label-for-checkbox):not(.checkbox),
.mcrpd-contact-fields label:not(.mcrpd-checkbox-label):not(.woocommerce-form__label-for-checkbox):not(.checkbox),
p.form-row label:not(.mcrpd-checkbox-label):not(.woocommerce-form__label-for-checkbox):not(.checkbox) {
	display: block;
	font-size: 13px;
	font-weight: 500;
	margin-bottom: 5px;
	color: #4b5563;
}

/* Hide standard labels visually (while keeping them accessible to screen readers) when class is active */
.mcrpd-hide-labels .woocommerce-billing-fields__field-wrapper label:not(.mcrpd-checkbox-label):not(.woocommerce-form__label-for-checkbox):not(.checkbox),
.mcrpd-hide-labels .woocommerce-shipping-fields__field-wrapper label:not(.mcrpd-checkbox-label):not(.woocommerce-form__label-for-checkbox):not(.checkbox),
.mcrpd-hide-labels .woocommerce-address-fields__field-wrapper label:not(.mcrpd-checkbox-label):not(.woocommerce-form__label-for-checkbox):not(.checkbox),
.mcrpd-hide-labels .mcrpd-contact-fields label:not(.mcrpd-checkbox-label):not(.woocommerce-form__label-for-checkbox):not(.checkbox),
.mcrpd-hide-labels p.form-row:not(#billing_country_field):not(#shipping_country_field):not(#billing_state_field):not(#shipping_state_field):not(.woocommerce-SavedPaymentMethods-saveNew) label:not(.mcrpd-checkbox-label):not(.woocommerce-form__label-for-checkbox):not(.checkbox) {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

/* Show floating labels inside select boxes (Country, State) */
p#billing_country_field label,
p#shipping_country_field label,
p#billing_state_field label,
p#shipping_state_field label {
	display: block !important;
	position: absolute !important;
	width: auto !important;
	height: auto !important;
	clip: auto !important;
	overflow: visible !important;
	top: 6px;
	left: 14px;
	font-size: 11px !important;
	color: #777777 !important;
	z-index: 10;
	margin: 0 !important;
	pointer-events: none;
	/* Allow clicks to pass through to the Select2 box */
}

p#billing_country_field,
p#shipping_country_field,
p#billing_state_field,
p#shipping_state_field {
	position: relative;
}

/* Select2 overrides to match floating label styling */
.woocommerce-checkout .select2-container--default .select2-selection--single {
	height: auto;
	border: 1px solid #d9d9d9 !important;
	border-radius: 5px !important;
	padding: 18px 10px 4px 10px !important;
	background-color: #ffffff !important;
	transition: border-color 0.2s ease;
}

.woocommerce-checkout .select2-container--default.select2-container--focus .select2-selection--single,
.woocommerce-checkout .select2-container--default.select2-container--open .select2-selection--single {
	border-color: #1773b0 !important;
	box-shadow: 0 0 0 1px #1773b0 !important;
}

.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered {
	line-height: 20px !important;
	font-size: 14px;
	color: #333333;
	padding-left: 4px !important;
}

.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow {
	height: 46px !important;
	right: 8px !important;
}

/* Select element styling styling */
.woocommerce-checkout select {
	cursor: pointer;
	appearance: none;
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' fill='none'%3E%3Cpath stroke='%23666' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m1 1 4 4 4-4'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 14px center;
	background-size: 10px 6px;
	padding-right: 35px;
}

/* Hide asterisk default label decoration */
.woocommerce-checkout .required {
	text-decoration: none;
	color: #e02424;
	font-weight: bold;
}

/* ==========================================================================
   5. Shipping Methods Cards Styling (Clean Semantic HTML)
   ========================================================================= */
.mcrpd-shipping-methods-section {
	border: 1px solid #e1e1e1;
	border-radius: 6px;
	padding: 20px;
	background-color: #ffffff;
}

.mcrpd-shipping-methods-section .mcrpd-section-title {
	margin-bottom: 15px;
}

.mcrpd-shipping-package-name {
	font-size: 13px;
	font-weight: 600;
	color: #4b5563;
	margin: 12px 0 8px 0;
}

ul.mcrpd-shipping-methods-list {
	list-style: none !important;
	padding: 0 !important;
	margin: 0 !important;
	border: 1px solid #d9d9d9;
	border-radius: 5px;
	overflow: hidden;
}

ul.mcrpd-shipping-methods-list li {
	display: flex !important;
	align-items: center !important;
	flex-wrap: wrap;
	padding: 16px 20px !important;
	border-bottom: 1px solid #d9d9d9;
	margin: 0 !important;
	cursor: pointer;
	transition: background-color 0.2s ease;
	background-color: #ffffff;
}

ul.mcrpd-shipping-methods-list li:last-child {
	border-bottom: none;
}

ul.mcrpd-shipping-methods-list li:hover {
	background-color: #fafafa;
}

ul.mcrpd-shipping-methods-list li.selected,
ul.mcrpd-shipping-methods-list li.active {
	background-color: #f4f8fa;
}

/* Radio button on the left side */
ul.mcrpd-shipping-methods-list input[type="radio"] {
	display: block !important;
	margin: 0 12px 0 0 !important;
	width: 18px !important;
	height: 18px !important;
	min-width: 18px !important;
	accent-color: #1773b0;
	cursor: pointer;
	flex-shrink: 0;
}

/* Label with price floated right */
ul.mcrpd-shipping-methods-list li label {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	flex: 1;
	font-size: 14px !important;
	font-weight: 500 !important;
	color: #333333 !important;
	cursor: pointer !important;
	margin: 0 !important;
	padding: 0 !important;
	user-select: none;
}

ul.mcrpd-shipping-methods-list li label .woocommerce-Price-amount {
	font-weight: 600;
	color: #111111;
	margin-left: auto;
	padding-left: 15px;
	white-space: nowrap;
}

.mcrpd-no-shipping-required,
.mcrpd-no-shipping-available {
	font-size: 13px;
	color: #666666;
	margin: 0;
}

/* Legacy fallback: if cart-shipping.php is ever loaded by another plugin */
#mcrpd-checkout-shipping-methods tr.woocommerce-shipping-totals,
#mcrpd-checkout-shipping-methods td {
	display: block !important;
	width: 100% !important;
	padding: 0 !important;
	margin: 0 !important;
	border: none !important;
	background: none !important;
}

#mcrpd-checkout-shipping-methods th {
	display: none !important;
}

/* ==========================================================================
   5b. Order Notes / Textarea Styling
   ========================================================================== */
.mcrpd-additional-fields-section {
	margin-top: 0;
}

.mcrpd-additional-fields-section .woocommerce-additional-fields__field-wrapper {
	display: block;
}

.mcrpd-additional-fields-section label {
	display: block !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	color: #333333 !important;
	margin-bottom: 6px !important;
}

.mcrpd-additional-fields-section label .optional {
	font-weight: 400;
	color: #999999;
	font-size: 13px;
}

.woocommerce-checkout textarea,
.woocommerce-checkout textarea.input-text {
	background-color: #ffffff !important;
	border: 1px solid #d9d9d9 !important;
	border-radius: 5px !important;
	padding: 12px 14px !important;
	font-size: 14px;
	color: #333333 !important;
	outline: none;
	width: 100%;
	min-height: 80px;
	resize: vertical;
	box-shadow: none;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
	box-sizing: border-box;
	font-family: inherit;
	line-height: 1.5;
}

.woocommerce-checkout textarea:focus,
.woocommerce-checkout textarea.input-text:focus {
	border-color: #1773b0;
	box-shadow: 0 0 0 1px #1773b0;
}

/* ==========================================================================
   6. Payment Methods & CTA Styling
   ========================================================================== */
.mcrpd-payment-section {
	border-radius: 6px;
	background-color: #ffffff;
}

.mcrpd-payment-methods-list {
	list-style: none !important;
	padding: 0 !important;
	margin: 0 0 20px 0 !important;
}

.mcrpd-payment-methods-list li.wc_payment_method {
	border: 1px solid #d9d9d9 !important;
	border-radius: 6px !important;
	margin: 0 0 10px 0 !important;
	padding: 0 !important;
	list-style: none !important;
	background-color: #ffffff !important;
	overflow: hidden;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.mcrpd-payment-methods-list li.wc_payment_method > label {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 10px !important;
	padding: 14px 16px !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	line-height: 1.4 !important;
	color: #222222 !important;
	background-color: #ffffff !important;
	cursor: pointer !important;
	margin: 0 !important;
	user-select: none;
}

/* Custom radio indicator when multiple payment gateways are active (works even when Stripe hides the input-radio) */
.mcrpd-payment-methods-list li.wc_payment_method:not(:only-child) > label {
	justify-content: flex-start !important;
}

.mcrpd-payment-methods-list li.wc_payment_method:not(:only-child) > label::before {
	content: "" !important;
	display: inline-block !important;
	width: 18px !important;
	height: 18px !important;
	min-width: 18px !important;
	border: 2px solid #c4c4c4 !important;
	border-radius: 50% !important;
	background-color: #ffffff !important;
	box-sizing: border-box !important;
	flex-shrink: 0 !important;
	margin-right: 4px !important;
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.mcrpd-payment-methods-list li.wc_payment_method.payment_box_active:not(:only-child) > label::before {
	border-color: var(--mcmchk-primary, #1773b0) !important;
	border-width: 5px !important;
}

/* Only hide the top-level gateway radio input; preserve radios inside .payment_box (e.g. Stripe Saved Cards) */
.mcrpd-payment-methods-list li.wc_payment_method > input[type="radio"] {
	display: none !important;
}

.mcrpd-payment-methods-list li.wc_payment_method.payment_box_active {
	border-color: var(--mcmchk-primary, #1773b0) !important;
	box-shadow: 0 0 0 1px var(--mcmchk-primary, #1773b0) !important;
}

.mcrpd-payment-methods-list .payment_box {
	background-color: #fafafa !important;
	border-top: 1px solid #e1e1e1 !important;
	padding: 16px !important;
	font-size: 13px !important;
	color: #555555 !important;
	line-height: 1.5 !important;
	margin: 0 !important;
	box-sizing: border-box !important;
}

.mcrpd-payment-methods-list li.wc_payment_method > label img {
	max-height: 24px !important;
	width: auto !important;
	margin-left: auto !important;
	display: inline-block !important;
	vertical-align: middle !important;
}

/* Pay Now CTA button */
.mcrpd-pay-now-button,
.woocommerce-checkout #payment #place_order {
	background-color: var(--mcmchk-primary, #1773b0) !important;
	color: #ffffff !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	line-height: 1.4 !important;
	padding: 16px 24px !important;
	border: none !important;
	border-radius: 5px !important;
	width: 100% !important;
	cursor: pointer !important;
	transition: background-color 0.2s ease, opacity 0.2s ease !important;
	text-shadow: none !important;
	box-shadow: none !important;
	text-transform: none !important;
	letter-spacing: normal !important;
	margin: 0 !important;
	float: none !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
}

.mcrpd-pay-now-button:hover,
.woocommerce-checkout #payment #place_order:hover {
	opacity: 0.92 !important;
}

.mcrpd-place-order-wrapper {
	margin-top: 20px !important;
	padding: 0 !important;
}

.mcrpd-checkout-terms-wrapper {
	margin-bottom: 15px !important;
}

.mcrpd-checkout-terms-wrapper .form-row {
	margin: 10px 0 0 0 !important;
	padding: 0 !important;
}

.mcrpd-checkout-terms-wrapper label.woocommerce-form__label-for-checkbox {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: flex-start !important;
	gap: 10px !important;
	cursor: pointer !important;
	font-size: 13px !important;
	line-height: 1.4 !important;
	font-weight: 400 !important;
	color: #444444 !important;
	margin: 0 !important;
	padding: 0 !important;
}

.mcrpd-checkout-terms-wrapper label.woocommerce-form__label-for-checkbox input[type="checkbox"] {
	margin: 0 !important;
	padding: 0 !important;
	width: 16px !important;
	height: 16px !important;
	min-width: 16px !important;
	min-height: 16px !important;
	flex-shrink: 0 !important;
	vertical-align: middle !important;
	position: static !important;
	accent-color: var(--mcmchk-primary, #1773b0) !important;
}

/* ==========================================================================
   7. Shipping/Billing Address Selector Card Styling
   ========================================================================== */
.mcrpd-shipping-selector-section,
.mcrpd-billing-selector-section {
	border: 1px solid #e1e1e1;
	border-radius: 6px;
	padding: 20px;
	background-color: #ffffff;
	margin-bottom: 25px;
}

.mcrpd-shipping-selector-group,
.mcrpd-billing-selector-group {
	border: 1px solid #d9d9d9 !important;
	border-radius: 5px !important;
	overflow: hidden !important;
}

.mcrpd-shipping-radio-label,
.mcrpd-billing-radio-label {
	display: flex !important;
	align-items: center !important;
	padding: 15px !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 1.4 !important;
	color: #333333 !important;
	cursor: pointer !important;
	background-color: #ffffff !important;
	border-bottom: 1px solid #e1e1e1 !important;
	user-select: none;
	transition: background-color 0.15s;
	margin: 0 !important;
}

.mcrpd-shipping-radio-label:last-child,
.mcrpd-billing-radio-label:last-child {
	border-bottom: none !important;
}

.mcrpd-shipping-radio-label:hover,
.mcrpd-billing-radio-label:hover {
	background-color: #fafafa !important;
}

.mcrpd-shipping-radio-label.selected,
.mcrpd-billing-radio-label.selected {
	background-color: #f4f8fa !important;
}

.mcrpd-shipping-radio-label input[type="radio"],
.mcrpd-billing-radio-label input[type="radio"] {
	margin: 0 12px 0 0 !important;
	accent-color: var(--mcmchk-primary, #1773b0) !important;
	width: 18px !important;
	height: 18px !important;
	min-width: 18px !important;
	flex-shrink: 0 !important;
	vertical-align: middle !important;
}

.mcrpd-different-billing-fields {
	margin-top: 20px;
	border-top: 1px dashed #e1e1e1;
	padding-top: 20px;
}

/* ==========================================================================
   8. Order Review Sidebar Styling (Right Column)
   ========================================================================== */
.mcrpd-shop-checkout-right-inner {
	position: sticky;
	top: 40px;
}

/* Mobile Order Summary Toggle Bar (hidden on desktop) */
.mcrpd-mobile-summary-toggle {
	display: none;
	width: 100%;
	background: transparent;
	border: none;
	padding: 4px 0;
	cursor: pointer;
	align-items: center;
	justify-content: space-between;
	font-family: inherit;
	text-align: left;
}

.mcrpd-mobile-summary-toggle-left {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	font-weight: 500;
	color: #1773b0;
}

.mcrpd-summary-chevron-svg {
	transition: transform 0.2s ease;
}

.mcrpd-mobile-summary-toggle.is-open .mcrpd-summary-chevron-svg {
	transform: rotate(180deg);
}

.mcrpd-mobile-summary-toggle-total {
	font-size: 17px;
	font-weight: 700;
	color: #111111;
}

@media (max-width: 1000px) {
	.mcrpd-mobile-summary-toggle {
		display: flex;
	}

	.mcrpd-order-summary-collapsible {
		display: none;
		padding-top: 18px;
		margin-top: 14px;
		border-top: 1px solid #e1e1e1;
	}

	.mcrpd-order-summary-collapsible.is-open {
		display: block;
	}
}

.mcrpd-sidebar-title {
	font-size: 17px;
	font-weight: 600;
	color: #111111;
	margin: 0 0 20px 0;
	letter-spacing: -0.2px;
}

/* Sidebar Product list */
.mcrpd-sidebar-product-list {
	list-style: none;
	padding: 0;
	margin: 0;
}

.mcrpd-sidebar-product-item {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 15px;
	padding: 12px 0;
	border-bottom: none;
}

.mcrpd-product-thumbnail-wrap {
	position: relative;
	width: 50px;
	height: 50px;
	flex-shrink: 0;
}

.mcrpd-product-thumbnail {
	width: 50px;
	height: 50px;
	border: 1px solid rgba(0, 0, 0, 0.1);
	border-radius: 8px;
	overflow: hidden;
	background-color: #ffffff;
}

.mcrpd-product-thumbnail img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.mcrpd-product-quantity-badge {
	position: absolute;
	top: -6px;
	right: -6px;
	background-color: #000000;
	color: #ffffff;
	font-size: 11px;
	font-weight: 600;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
}

.mcrpd-product-info {
	flex-grow: 1;
}

.mcrpd-product-name {
	font-size: 13px;
	font-weight: 500;
	color: #333333;
	display: block;
	line-height: 1.4;
}

.mcrpd-product-info dl.variation {
	margin: 4px 0 0 0;
	font-size: 11px;
	color: #777777;
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
}

.mcrpd-product-info dl.variation dt,
.mcrpd-product-info dl.variation dd {
	display: inline-block;
	margin: 0;
	padding: 0;
}

.mcrpd-product-info dl.variation dd {
	margin-right: 8px;
}

.mcrpd-product-total-price {
	font-size: 13px;
	font-weight: 500;
	color: #111111;
	text-align: right;
}

/* Return to Cart link */
.mcrpd-return-to-cart-wrap {
	text-align: right;
	margin-top: 15px;
	margin-bottom: 5px;
}

.mcrpd-return-to-cart-link {
	font-size: 11px;
	color: #666666;
	text-decoration: none;
	transition: color 0.2s;
}

.mcrpd-return-to-cart-link:hover {
	color: #111111;
	text-decoration: underline;
}

/* Coupon block */
.mcrpd-sidebar-coupon-wrap {
	display: flex !important;
	align-items: stretch !important;
	gap: 10px !important;
	margin: 25px 0 15px 0 !important;
}

.mcrpd-coupon-input {
	flex-grow: 1 !important;
}

.mcrpd-coupon-button {
	background-color: var(--mcmchk-primary, #1773b0) !important;
	color: #ffffff !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	line-height: 1.4 !important;
	border: none !important;
	border-radius: 5px !important;
	padding: 10px 18px !important;
	height: 48px !important;
	cursor: pointer !important;
	transition: opacity 0.15s ease;
	box-shadow: none !important;
	text-transform: none !important;
	white-space: nowrap !important;
	margin: 0 !important;
}

.mcrpd-coupon-button:hover {
	opacity: 0.9 !important;
	color: #ffffff !important;
}

.mcrpd-coupon-message {
	font-size: 12px;
	margin-top: 5px;
}

.mcrpd-coupon-message.success {
	color: #15803d;
}

.mcrpd-coupon-message.error {
	color: #b91c1c;
}

.mcrpd-sidebar-divider {
	border: none;
	border-top: 1px solid #e1e1e1;
	margin: 15px 0;
}

/* Totals styling */
.mcrpd-sidebar-totals {
	margin-top: 15px;
}

.mcrpd-totals-row {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 10px;
	font-size: 13.5px;
	color: #555555;
}

.mcrpd-totals-value {
	font-weight: 500;
	color: #333333;
}

/* Applied Coupon Tags */
.mcrpd-coupon-tag {
	background-color: rgba(23, 115, 176, 0.08);
	border: 1px solid rgba(23, 115, 176, 0.2);
	color: #1773b0;
	font-size: 11px;
	font-weight: 600;
	padding: 3px 8px;
	border-radius: 4px;
	margin-left: 6px;
	display: inline-flex;
	align-items: center;
	gap: 4px;
}

.mcrpd-coupon-tag-icon {
	font-size: 10px;
}

.mcrpd-remove-coupon-btn {
	color: #1773b0;
	text-decoration: none;
	font-size: 14px;
	line-height: 1;
	cursor: pointer;
	margin-left: 2px;
	font-weight: bold;
}

.mcrpd-remove-coupon-btn:hover {
	color: #b91c1c;
}

/* Total row highlights */
.mcrpd-total-row {
	font-size: 16px;
	color: #111111;
	margin-top: 15px;
}

.mcrpd-total-label {
	font-weight: 600;
}

.mcrpd-total-value {
	font-size: 19px;
	font-weight: 700;
	color: #111111;
	display: inline-flex;
	align-items: baseline;
}

.mcrpd-currency-code {
	font-size: 12px;
	font-weight: 500;
	color: #666666;
	margin-right: 6px;
}

/* WooCommerce Subscriptions Recurring Payment Block (Checkout, Cart & Order Received) */
.mcrpd-recurring-template-wrap {
	margin-top: 16px !important;
	padding-top: 14px !important;
	border-top: 1px dashed #d1d5db !important;
	font-size: 13.5px !important;
	color: #374151 !important;
	line-height: 1.5 !important;
}

.mcrpd-subscription-block {
	display: flex !important;
	flex-direction: column !important;
	gap: 8px !important;
	background-color: #f9fafb !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 6px !important;
	padding: 12px 14px !important;
	box-sizing: border-box !important;
}

.mcrpd-subscription-block .mcrpd-sub-title {
	font-size: 13px !important;
	font-weight: 600 !important;
	color: #111827 !important;
	margin: 0 0 2px 0 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.3px !important;
}

.mcrpd-subscription-block .mcrpd-sub-row {
	display: flex !important;
	align-items: baseline !important;
	justify-content: space-between !important;
	gap: 10px !important;
	font-size: 13px !important;
	color: #4b5563 !important;
}

.mcrpd-subscription-block .mcrpd-sub-row.mcrpd-sub-total {
	font-size: 14px !important;
	color: #111827 !important;
	padding-top: 6px !important;
	border-top: 1px solid #e5e7eb !important;
}

.mcrpd-subscription-block small {
	font-size: 12px !important;
	color: #6b7280 !important;
	display: block !important;
	margin-top: 2px !important;
}

/* Default WooCommerce Subscriptions recurring table rows when template is empty */
.mcrpd-sidebar-totals tr.recurring-totals,
.mcrpd-sidebar-totals tr.recurring-total,
.mcrpd-sidebar-totals tr.cart-subtotal.recurring-total,
.mcrpd-sidebar-totals tr.order-total.recurring-total {
	display: flex !important;
	align-items: baseline !important;
	justify-content: space-between !important;
	gap: 10px !important;
	width: 100% !important;
	padding: 4px 0 !important;
	border: none !important;
	background: transparent !important;
	font-size: 13px !important;
	color: #4b5563 !important;
}

.mcrpd-sidebar-totals tr.recurring-totals {
	margin-top: 12px !important;
	padding-top: 12px !important;
	border-top: 1px dashed #d1d5db !important;
	font-weight: 600 !important;
	color: #111827 !important;
}

.mcrpd-sidebar-totals tr.recurring-totals th,
.mcrpd-sidebar-totals tr.recurring-total th,
.mcrpd-sidebar-totals tr.recurring-total td {
	padding: 0 !important;
	border: none !important;
	background: transparent !important;
	font-size: inherit !important;
}

.mcrpd-sidebar-totals tr.recurring-total td {
	text-align: right !important;
	color: #111827 !important;
	font-weight: 500 !important;
}

/* ==========================================================================
   9. Footer Links & Aesthetics
   ========================================================================== */
.mcrpd-checkout-footer-links {
	display: flex;
	flex-wrap: wrap;
	gap: 15px;
	margin-top: 50px;
	padding-top: 20px;
	border-top: 1px solid #e1e1e1;
}

.mcrpd-checkout-footer-links a {
	font-size: 11px;
	color: #666666;
	text-decoration: none;
	transition: color 0.15s;
}

.mcrpd-checkout-footer-links a:hover {
	color: #111111;
	text-decoration: underline;
}

/* Standard WooCommerce Form Overrides for Perfect shop Integration */
.woocommerce-error,
.woocommerce-message,
.woocommerce-info,
.woocommerce-notice,
.woocommerce-NoticeGroup-checkout {
	position: relative !important;
	list-style: none !important;
	padding: 16px 20px 16px 50px !important;
	border-radius: 6px !important;
	font-size: 14px !important;
	line-height: 1.5 !important;
	margin-bottom: 25px !important;
	font-weight: 500 !important;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.02) !important;
	box-sizing: border-box !important;
	display: block !important;
	clear: both !important;
}

.woocommerce-NoticeGroup-checkout {
	padding: 0 !important;
}

body.woocommerce-order-received .woocommerce-error,
body.woocommerce-order-received .woocommerce-message,
body.woocommerce-order-received .woocommerce-info,
body.woocommerce-order-received .woocommerce-notice {
	padding: 20px 24px 20px 54px !important;
	margin-top: 30px !important;
}

.woocommerce-error li,
.woocommerce-message li,
.woocommerce-info li,
.woocommerce-notice li {
	list-style: none !important;
	margin: 4px 0 0 0 !important;
	padding: 0 !important;
}

.woocommerce-error li:first-child,
.woocommerce-message li:first-child,
.woocommerce-info li:first-child,
.woocommerce-notice li:first-child {
	margin-top: 0 !important;
}

.woocommerce-error {
	background-color: #fef2f2 !important;
	border: 1px solid #fecaca !important;
	color: #991b1b !important;
}

.woocommerce-message {
	background-color: #f0fdf4 !important;
	border: 1px solid #bbf7d0 !important;
	color: #166534 !important;
	display: flex !important;

	align-items: center;
	justify-content: space-between;
}

.woocommerce-message::after {
	display: none !important;
}

.woocommerce-info,
.woocommerce-notice {
	background-color: #f0f9ff !important;
	border: 1px solid #bae6fd !important;
	color: #075985 !important;
}

/* Ensure absolute notice icons align beautifully within the left gutter */
.woocommerce-error::before,
.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-notice::before {
	position: absolute !important;
	left: 18px !important;
	top: 50% !important;
	transform: translateY(-50%) !important;
	font-size: 18px !important;
	line-height: 1 !important;
	font-family: inherit !important;
	display: inline-block !important;
}

.woocommerce-error::before {
	content: "\26A0" !important;
	color: #dc2626 !important;
}

.woocommerce-message::before {
	content: "\2713" !important;
	color: #16a34a !important;
}

.woocommerce-info::before,
.woocommerce-notice::before {
	content: "\2139" !important;
	color: #0284c7 !important;
}

/* ==========================================================================
   9b. WooCommerce Stripe Gateway (Express Checkout & UPE) Compatibility
   ========================================================================== */

/* 1. Express Checkout Element (Link, Apple Pay, Google Pay, Amazon Pay) */
#wc-stripe-express-checkout-element,
#wc-stripe-payment-request-wrapper {
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
	margin: 0 0 16px 0 !important;
	padding: 4px 0 !important;
	clear: both !important;
	overflow: visible !important;
}

/* Hide wrapper if Stripe hides all express buttons or leaves it empty */
#wc-stripe-express-checkout-element:empty,
#wc-stripe-payment-request-wrapper:empty {
	display: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

#wc-stripe-express-checkout-element .StripeElement,
#wc-stripe-express-checkout-element-link,
#wc-stripe-express-checkout-element-applePay,
#wc-stripe-express-checkout-element-googlePay {
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	background: transparent !important;
	box-shadow: none !important;
}

#wc-stripe-express-checkout-button-separator,
#wc-stripe-payment-request-button-separator {
	width: 100% !important;
	text-align: center !important;
	margin: 8px 0 22px 0 !important;
	padding: 0 !important;
	font-size: 12px !important;
	font-weight: 500 !important;
	color: #6b7280 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.5px !important;
	clear: both !important;
}

/* 2. Payment Container & Box Overrides */
.woocommerce-checkout #payment {
	background-color: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	padding: 0 !important;
}

.woocommerce-checkout #payment ul.payment_methods {
	background: transparent !important;
	border: 0 !important;
	padding: 0 !important;
	margin: 0 0 20px 0 !important;
	list-style: none !important;
}

.woocommerce-checkout #payment div.payment_box::before {
	display: none !important;
	content: none !important;
}

.woocommerce-checkout #payment div.payment_box {
	padding: 16px !important;
	background-color: #fafafa !important;
	margin: 0 !important;
	border-top: 1px solid #e1e1e1 !important;
	border-right: 0 !important;
	border-bottom: 0 !important;
	border-left: 0 !important;
	border-radius: 0 0 6px 6px !important;
	width: 100% !important;
	box-sizing: border-box !important;
	color: #4b5563 !important;
	font-size: 13px !important;
	line-height: 1.5 !important;
}

/* 3. Stripe UPE Fieldset & Iframe Container */
fieldset,
fieldset#wc-stripe-upe-form,
fieldset.wc-payment-form {
	border: 0 !important;
	padding: 4px 0 !important;
	margin: 0 !important;
	background: transparent !important;
	position: relative !important;
	width: 100% !important;
	min-width: 0 !important;
	box-sizing: border-box !important;
	overflow: visible !important;
}

.wc-stripe-upe-element,
.wc-stripe-upe-element.StripeElement {
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	background: transparent !important;
	box-shadow: none !important;
}

/* 4. Stripe Hidden Style Probe Input (#wc-stripe-hidden-style-input)
   Stripe UPE reads computed font/color/border from this hidden input to theme the iframe,
   so we preserve typography/colors while preventing 100% width overflow. */
#wc-stripe-hidden-style-input {
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	width: 1px !important;
	height: 1px !important;
	max-width: 100% !important;
	padding: 0 !important;
	margin: 0 !important;
	opacity: 0 !important;
	pointer-events: none !important;
	z-index: -1 !important;
	background-color: #ffffff !important;
	border: 1px solid #d9d9d9 !important;
	border-radius: 5px !important;
	font-size: 14px !important;
	color: #333333 !important;
}

/* 5. Stripe Test Mode Instructions Banner & Copy Button */
.wc-stripe-payment-method-instruction,
#wc-stripe-payment-method-instructions-card {
	background-color: #f0f9ff !important;
	border: 1px solid #bae6fd !important;
	border-radius: 5px !important;
	padding: 10px 12px !important;
	margin: 0 0 14px 0 !important;
	font-size: 12.5px !important;
	line-height: 1.5 !important;
	color: #0c4a6e !important;
	box-sizing: border-box !important;
}

.wc-stripe-payment-method-instruction a {
	color: var(--mcmchk-primary, #1773b0) !important;
	font-weight: 500 !important;
	text-decoration: underline !important;
}

button.wc-stripe-copy-test-number {
	display: inline-flex !important;
	align-items: center !important;
	gap: 4px !important;
	width: auto !important;
	height: auto !important;
	min-height: 0 !important;
	padding: 2px 7px !important;
	margin: 0 2px !important;
	font-size: 12px !important;
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace !important;
	font-weight: 600 !important;
	line-height: 1.3 !important;
	color: #0369a1 !important;
	background-color: #e0f2fe !important;
	border: 1px solid #7dd3fc !important;
	border-radius: 4px !important;
	cursor: pointer !important;
	vertical-align: baseline !important;
	box-shadow: none !important;
	text-transform: none !important;
	letter-spacing: normal !important;
}

button.wc-stripe-copy-test-number:hover {
	background-color: #bae6fd !important;
	color: #075985 !important;
}

/* 6. Stripe Saved Payment Methods List & Save Card Checkbox */
ul.woocommerce-SavedPaymentMethods {
	list-style: none !important;
	padding: 0 !important;
	margin: 0 0 12px 0 !important;
}

ul.woocommerce-SavedPaymentMethods[data-count="0"],
ul.woocommerce-SavedPaymentMethods:empty {
	display: none !important;
	margin: 0 !important;
}

ul.woocommerce-SavedPaymentMethods li {
	display: flex !important;
	align-items: center !important;
	gap: 8px !important;
	padding: 8px 0 !important;
	margin: 0 !important;
	list-style: none !important;
	border: none !important;
	background: transparent !important;
}

ul.woocommerce-SavedPaymentMethods li input[type="radio"] {
	display: inline-block !important;
	width: 16px !important;
	height: 16px !important;
	min-width: 16px !important;
	margin: 0 8px 0 0 !important;
	flex-shrink: 0 !important;
	cursor: pointer !important;
	accent-color: var(--mcmchk-primary, #1773b0) !important;
}

ul.woocommerce-SavedPaymentMethods li label {
	display: inline-flex !important;
	align-items: center !important;
	margin: 0 !important;
	padding: 0 !important;
	font-size: 13.5px !important;
	font-weight: 500 !important;
	color: #333333 !important;
	cursor: pointer !important;
}

.woocommerce-checkout p.woocommerce-SavedPaymentMethods-saveNew {
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	justify-content: flex-start !important;
	gap: 10px !important;
	margin: 14px 0 0 0 !important;
	padding: 0 !important;
	width: 100% !important;
}

.woocommerce-checkout p.woocommerce-SavedPaymentMethods-saveNew input[type="checkbox"] {
	width: 16px !important;
	height: 16px !important;
	min-width: 16px !important;
	min-height: 16px !important;
	margin: 0 !important;
	padding: 0 !important;
	flex-shrink: 0 !important;
	cursor: pointer !important;
	vertical-align: middle !important;
	position: static !important;
	accent-color: var(--mcmchk-primary, #1773b0) !important;
}

.woocommerce-checkout p.woocommerce-SavedPaymentMethods-saveNew label,
.mcrpd-hide-labels .woocommerce-checkout p.woocommerce-SavedPaymentMethods-saveNew label {
	display: inline-block !important;
	position: static !important;
	width: auto !important;
	height: auto !important;
	clip: auto !important;
	overflow: visible !important;
	white-space: normal !important;
	margin: 0 !important;
	padding: 0 !important;
	font-size: 13px !important;
	font-weight: 400 !important;
	line-height: 1.4 !important;
	color: #444444 !important;
	cursor: pointer !important;
}

#wc-stripe-upe-errors:empty {
	display: none !important;
	margin: 0 !important;
}

#wc-stripe-upe-errors {
	margin-top: 10px !important;
}

/* ==========================================================================
   10. Inline Login Form
   ========================================================================== */
.mcrpd-inline-login-form {
	background-color: #f9fafb !important;
	border: 1px solid #e1e1e1 !important;
	border-radius: 6px !important;
	padding: 20px !important;
	margin-bottom: 15px !important;
	box-sizing: border-box !important;
}

.mcrpd-login-fields-row {
	display: flex !important;
	gap: 12px !important;
	margin-bottom: 12px !important;
}

.mcrpd-login-field {
	flex: 1 !important;
}

.mcrpd-login-field input {
	width: 100% !important;
	background-color: #ffffff !important;
	border: 1px solid #d9d9d9 !important;
	border-radius: 5px !important;
	padding: 12px 14px !important;
	font-size: 14px !important;
	color: #333333 !important;
	outline: none !important;
	height: 48px !important;
	box-shadow: none !important;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
	box-sizing: border-box !important;
}

.mcrpd-login-field input:focus {
	border-color: var(--mcmchk-primary, #1773b0) !important;
	box-shadow: 0 0 0 1px var(--mcmchk-primary, #1773b0) !important;
}

.mcrpd-login-actions {
	display: flex !important;
	align-items: center !important;
	gap: 15px !important;
}

.mcrpd-login-button {
	background-color: var(--mcmchk-primary, #1773b0) !important;
	color: #ffffff !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	line-height: 1.4 !important;
	padding: 12px 28px !important;
	border: none !important;
	border-radius: 5px !important;
	cursor: pointer !important;
	transition: background-color 0.2s ease, opacity 0.2s ease;
	white-space: nowrap !important;
	box-shadow: none !important;
	text-transform: none !important;
}

.mcrpd-login-button:hover {
	opacity: 0.92 !important;
}

.mcrpd-forgot-password-link {
	font-size: 13px !important;
	color: var(--mcmchk-primary, #1773b0) !important;
	text-decoration: none !important;
	transition: color 0.15s ease;
}

.mcrpd-forgot-password-link:hover {
	text-decoration: underline !important;
}

.mcrpd-login-message {
	margin-top: 10px !important;
	font-size: 13px !important;
	line-height: 1.4 !important;
}

.mcrpd-login-message.success {
	color: #15803d !important;
}

.mcrpd-login-message.error {
	color: #b91c1c !important;
}

.mcrpd-login-link.active {
	color: #125785;
}

@media (max-width: 600px) {
	.mcrpd-login-fields-row {
		flex-direction: column !important;
	}
}

/* ==========================================================================
   11. Distraction-Free Overrides (Visual Hiding of Theme Header/Footer)
   ========================================================================== */
body.mcrpd-distraction-free header,
body.mcrpd-distraction-free footer,
body.mcrpd-distraction-free .site-header,
body.mcrpd-distraction-free .site-footer,
body.mcrpd-distraction-free #masthead,
body.mcrpd-distraction-free #colophon,
body.mcrpd-distraction-free #header,
body.mcrpd-distraction-free #footer,
body.mcrpd-distraction-free .ast-main-header-wrap,
body.mcrpd-distraction-free .oceanwp-mobile-menu-icon,
body.mcrpd-distraction-free #top-header,
body.mcrpd-distraction-free #bottom-header,
body.mcrpd-distraction-free .elementor-location-header,
body.mcrpd-distraction-free .elementor-location-footer,
body.mcrpd-distraction-free aside,
body.mcrpd-distraction-free #sidebar,
body.mcrpd-distraction-free #secondary,
body.mcrpd-distraction-free .widget-area,
body.mcrpd-distraction-free .storefront-handheld-footer-bar {
	display: none !important;
}

/* Force theme content wrappers to act like a blank canvas */
body.mcrpd-distraction-free #content,
body.mcrpd-distraction-free .site-content,
body.mcrpd-distraction-free #primary,
body.mcrpd-distraction-free #main,
body.mcrpd-distraction-free .content-area {
	width: 100% !important;
	max-width: none !important;
	padding: 0 !important;
	margin: 0 !important;
	float: none !important;
}

/* Ensure our container stays centered at 1200px max-width regardless of theme/Elementor wrappers */
.mcrpd-checkout-page-container,
body.mcrpd-distraction-free .mcrpd-checkout-page-container {
	width: 100% !important;
	max-width: 1200px !important;
	padding: 0 20px !important;
	margin: 0 auto !important;
	box-sizing: border-box !important;
}

/* Prevent plugin's internal header and footer from being hidden */
body.mcrpd-distraction-free header.mcrpd-checkout-brand-header,
body.mcrpd-distraction-free footer.mcrpd-checkout-footer-links {
	display: flex !important;
}

@media (max-width: 340px) {
	.woocommerce-message {
		align-items: flex-start;
		justify-content: space-between;
		flex-direction: column;
		padding: 10px 10px 10px 40px !important;
	}

	.woocommerce-message::before {
		display: none !important;
	}
}

/* ==========================================================================
   12. 3rd-Party Plugin Compatibility Classes
   ========================================================================== */

/* Field Layout (Wrappers) */
.woocommerce-checkout .mcrpd-field,
.woocommerce-checkout .mcrpd-field-half,
.woocommerce-checkout .mcrpd-field-full {
	display: flex !important;
	flex-direction: column !important;
	margin: 0 0 4px 0 !important;
	padding: 0 !important;
	box-sizing: border-box !important;
}

.woocommerce-checkout .mcrpd-field-full {
	width: 100% !important;
	clear: both !important;
	float: none !important;
}

.woocommerce-checkout .mcrpd-field-half {
	width: calc(50% - 6px) !important;
	clear: none !important;
	float: none !important;
}

@media (max-width: 600px) {
	.woocommerce-checkout .mcrpd-field-half {
		width: 100% !important;
	}
}

.woocommerce-checkout .mcrpd-field label:not(.mcrpd-checkbox-label):not(.woocommerce-form__label-for-checkbox):not(.checkbox),
.woocommerce-checkout .mcrpd-field-half label:not(.mcrpd-checkbox-label):not(.woocommerce-form__label-for-checkbox):not(.checkbox),
.woocommerce-checkout .mcrpd-field-full label:not(.mcrpd-checkbox-label):not(.woocommerce-form__label-for-checkbox):not(.checkbox) {
	display: block;
	font-size: 13px;
	font-weight: 500;
	margin-bottom: 5px;
	color: #4b5563;
}

.mcrpd-hide-labels .woocommerce-checkout .mcrpd-field label:not(.mcrpd-checkbox-label):not(.woocommerce-form__label-for-checkbox):not(.checkbox),
.mcrpd-hide-labels .woocommerce-checkout .mcrpd-field-half label:not(.mcrpd-checkbox-label):not(.woocommerce-form__label-for-checkbox):not(.checkbox),
.mcrpd-hide-labels .woocommerce-checkout .mcrpd-field-full label:not(.mcrpd-checkbox-label):not(.woocommerce-form__label-for-checkbox):not(.checkbox) {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

/* Inputs, Textareas and Selects */
.woocommerce-checkout .mcrpd-input,
.woocommerce-checkout .mcrpd-input-text,
.woocommerce-checkout .mcrpd-input-number,
.woocommerce-checkout .mcrpd-input-select,
.woocommerce-checkout .mcrpd-input-textarea,
.woocommerce-checkout input.input-text:not(#wc-stripe-hidden-style-input) {
	background-color: #ffffff !important;
	border: 1px solid #d9d9d9 !important;
	border-radius: 5px !important;
	padding: 12px 14px !important;
	font-size: 14px !important;
	color: #333333 !important;
	outline: none !important;
	width: 100% !important;
	height: 48px !important;
	box-shadow: none !important;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
	box-sizing: border-box !important;
}

.woocommerce-checkout .mcrpd-input:focus,
.woocommerce-checkout .mcrpd-input-text:focus,
.woocommerce-checkout .mcrpd-input-number:focus,
.woocommerce-checkout .mcrpd-input-select:focus,
.woocommerce-checkout .mcrpd-input-textarea:focus,
.woocommerce-checkout input.input-text:focus {
	border-color: var(--mcmchk-primary, #1773b0) !important;
	box-shadow: 0 0 0 1px var(--mcmchk-primary, #1773b0) !important;
}

/* Select specific styles */
.woocommerce-checkout .mcrpd-input-select {
	padding: 18px 14px 4px 14px !important;
	cursor: pointer;
	appearance: none;
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' fill='none'%3E%3Cpath stroke='%23666' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m1 1 4 4 4-4'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 14px center;
	background-size: 10px 6px;
	padding-right: 35px;
}

/* Textarea specific styles */
.woocommerce-checkout .mcrpd-input-textarea {
	min-height: 80px;
	height: auto !important;
	resize: vertical;
	font-family: inherit;
	line-height: 1.5;
}

/* Empty Cart Message */
.mcrpd-empty-cart-page-wrap {
	max-width: 760px !important;
	margin: 40px auto !important;
	padding: 0 20px !important;
	box-sizing: border-box !important;
}

.mcrpd-empty-cart-wrapper {
	display: flex !important;
	flex-direction: column !important;
	justify-content: center !important;
	align-items: center !important;
	text-align: center !important;
	min-height: 45vh !important;
	width: 100% !important;
	background: #ffffff !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 10px !important;
	padding: 48px 28px !important;
	box-sizing: border-box !important;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.03) !important;
}

.mcrpd-empty-cart-box {
	text-align: center;
	background: #ffffff;
	border: 1px solid #e1e1e1;
	border-radius: 10px;
	padding: 40px;
	max-width: 400px;
	box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
}

.mcrpd-empty-cart-icon {
	color: #94a3b8 !important;
	margin-bottom: 18px !important;
}

.mcrpd-empty-cart-icon svg {
	width: 64px !important;
	height: 64px !important;
}

.mcrpd-empty-cart-title {
	font-size: 21px !important;
	font-weight: 600 !important;
	color: #111827 !important;
	margin: 0 0 10px 0 !important;
	line-height: 1.3 !important;
}

.mcrpd-empty-cart-text {
	font-size: 14px !important;
	color: #6b7280 !important;
	margin: 0 0 24px 0 !important;
	line-height: 1.5 !important;
}

.mcrpd-empty-cart-button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	background-color: var(--mcmchk-primary, #1773b0) !important;
	color: #ffffff !important;
	text-decoration: none !important;
	padding: 13px 26px !important;
	border-radius: 6px !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	transition: opacity 0.2s ease !important;
	border: none !important;
}

.mcrpd-empty-cart-button:hover {
	opacity: 0.92 !important;
	color: #ffffff !important;
}

/* ==========================================================================
   13. Minimalist Cart Layout & Interactive Elements
   ========================================================================== */
.mcrpd-cart-header-row {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 12px !important;
	margin: 0 0 20px 0 !important;
	padding: 0 !important;
}

.mcrpd-cart-main-title {
	display: inline-flex !important;
	align-items: center !important;
	gap: 10px !important;
	font-size: 22px !important;
	font-weight: 700 !important;
	color: #111827 !important;
	margin: 0 !important;
	line-height: 1.25 !important;
	letter-spacing: -0.3px !important;
}

.mcrpd-cart-count-badge {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-width: 24px !important;
	height: 24px !important;
	padding: 0 8px !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	color: #374151 !important;
	background-color: #f3f4f6 !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 999px !important;
	line-height: 1 !important;
}

.mcrpd-cart-continue-link {
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
	font-size: 13.5px !important;
	font-weight: 500 !important;
	color: var(--mcmchk-primary, #1773b0) !important;
	text-decoration: none !important;
	transition: opacity 0.15s ease !important;
}

.mcrpd-cart-continue-link:hover {
	opacity: 0.8 !important;
	text-decoration: underline !important;
}

.mcrpd-cart-form {
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

.mcrpd-cart-items-list {
	display: flex !important;
	flex-direction: column !important;
	gap: 12px !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	background: transparent !important;
}

.mcrpd-cart-item-card {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 16px !important;
	padding: 16px !important;
	background-color: #ffffff !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 8px !important;
	box-sizing: border-box !important;
	transition: border-color 0.15s ease, box-shadow 0.15s ease !important;
}

.mcrpd-cart-item-card:hover {
	border-color: #d1d5db !important;
}

.mcrpd-cart-item-image-wrapper {
	position: relative !important;
	width: 64px !important;
	height: 64px !important;
	min-width: 64px !important;
	flex-shrink: 0 !important;
	border-radius: 8px !important;
	border: 1px solid #e5e7eb !important;
	background-color: #f9fafb !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}

.mcrpd-cart-item-image-wrapper img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	border-radius: 7px !important;
	display: block !important;
	margin: 0 !important;
}

.mcrpd-cart-item-image-wrapper .mcrpd-product-qty {
	position: absolute !important;
	top: -8px !important;
	right: -8px !important;
	min-width: 20px !important;
	height: 20px !important;
	padding: 0 6px !important;
	background-color: #6b7280 !important;
	color: #ffffff !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	line-height: 20px !important;
	text-align: center !important;
	border-radius: 999px !important;
	box-sizing: border-box !important;
}

.mcrpd-cart-item-details {
	flex: 1 1 auto !important;
	min-width: 0 !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 3px !important;
}

.mcrpd-cart-item-title,
.mcrpd-cart-item-title a {
	font-size: 14.5px !important;
	font-weight: 600 !important;
	color: #111827 !important;
	text-decoration: none !important;
	line-height: 1.35 !important;
	word-break: break-word !important;
}

.mcrpd-cart-item-title a:hover {
	color: var(--mcmchk-primary, #1773b0) !important;
}

.mcrpd-cart-item-meta,
.mcrpd-cart-item-meta dl.variation {
	font-size: 12.5px !important;
	color: #6b7280 !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1.4 !important;
}

.mcrpd-cart-item-meta dl.variation dt,
.mcrpd-cart-item-meta dl.variation dd {
	display: inline !important;
	margin: 0 4px 0 0 !important;
	padding: 0 !important;
}

.mcrpd-cart-item-meta dl.variation dd p {
	display: inline !important;
	margin: 0 !important;
}

.mcrpd-cart-item-card .subscription-details,
.mcrpd-cart-item-card .woocommerce-subscriptions-product-details__trial,
.mcrpd-cart-item-card .woocommerce-subscriptions-product-details__signup-fee,
.mcrpd-sidebar-product-item .subscription-details,
.mcrpd-sidebar-product-item .woocommerce-subscriptions-product-details__trial,
.mcrpd-sidebar-product-item .woocommerce-subscriptions-product-details__signup-fee {
	display: none !important;
}

.mcrpd-cart-item-controls {
	display: flex !important;
	align-items: center !important;
	gap: 16px !important;
	flex-shrink: 0 !important;
}

/* Quantity Stepper (- / input / +) */
.mcrpd-qty-stepper {
	display: inline-flex !important;
	align-items: center !important;
	border: 1px solid #d1d5db !important;
	border-radius: 6px !important;
	background-color: #ffffff !important;
	height: 36px !important;
	overflow: hidden !important;
	box-sizing: border-box !important;
}

.mcrpd-qty-btn {
	width: 32px !important;
	height: 34px !important;
	min-width: 32px !important;
	padding: 0 !important;
	margin: 0 !important;
	background: transparent !important;
	border: none !important;
	color: #374151 !important;
	font-size: 16px !important;
	font-weight: 500 !important;
	line-height: 1 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	cursor: pointer !important;
	user-select: none !important;
	box-shadow: none !important;
	transition: background-color 0.15s ease, color 0.15s ease !important;
}

.mcrpd-qty-btn:hover {
	background-color: #f3f4f6 !important;
	color: #111827 !important;
}

.mcrpd-qty-input {
	width: 40px !important;
	height: 34px !important;
	min-height: 0 !important;
	padding: 0 2px !important;
	margin: 0 !important;
	border: none !important;
	border-left: 1px solid #e5e7eb !important;
	border-right: 1px solid #e5e7eb !important;
	border-radius: 0 !important;
	text-align: center !important;
	font-size: 13.5px !important;
	font-weight: 600 !important;
	color: #111827 !important;
	background: #ffffff !important;
	box-shadow: none !important;
	-moz-appearance: textfield !important;
	appearance: textfield !important;
}

.mcrpd-qty-input::-webkit-outer-spin-button,
.mcrpd-qty-input::-webkit-inner-spin-button {
	-webkit-appearance: none !important;
	margin: 0 !important;
}

.mcrpd-cart-single-qty-badge {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-width: 36px !important;
	height: 32px !important;
	padding: 0 10px !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	color: #4b5563 !important;
	background-color: #f3f4f6 !important;
	border-radius: 6px !important;
}

.mcrpd-cart-item-subtotal-group {
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
	min-width: 95px !important;
	justify-content: flex-end !important;
}

.mcrpd-cart-item-subtotal {
	font-size: 14.5px !important;
	font-weight: 600 !important;
	color: #111827 !important;
	white-space: nowrap !important;
}

.mcrpd-cart-remove-btn {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 30px !important;
	height: 30px !important;
	padding: 0 !important;
	margin: 0 !important;
	background: transparent !important;
	border: none !important;
	border-radius: 6px !important;
	color: #9ca3af !important;
	cursor: pointer !important;
	box-shadow: none !important;
	transition: color 0.15s ease, background-color 0.15s ease !important;
}

.mcrpd-cart-remove-btn:hover {
	color: #dc2626 !important;
	background-color: #fef2f2 !important;
}

/* Right Column Cart Summary */
.mcrpd-cart-summary-heading {
	font-size: 17px !important;
	font-weight: 600 !important;
	color: #111827 !important;
	margin: 0 0 18px 0 !important;
	line-height: 1.3 !important;
}

.mcrpd-cart-cta-wrapper {
	margin-top: 22px !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 12px !important;
}

.mcrpd-cart-checkout-btn {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	min-height: 50px !important;
	padding: 14px 20px !important;
	background-color: var(--mcmchk-primary, #1773b0) !important;
	color: #ffffff !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	text-align: center !important;
	text-decoration: none !important;
	border: none !important;
	border-radius: 6px !important;
	box-sizing: border-box !important;
	cursor: pointer !important;
	transition: opacity 0.2s ease !important;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05) !important;
}

.mcrpd-cart-checkout-btn:hover {
	opacity: 0.92 !important;
	color: #ffffff !important;
}

/* Hide duplicate default WooCommerce proceed-to-checkout button inside express actions container */
.mcrpd-cart-express-actions a.checkout-button {
	display: none !important;
}

/* ==========================================================================
   14. Minimalist Order Received (Thank You) Layout & Cards
   ========================================================================== */
.mcrpd-thankyou-hero {
	display: flex !important;
	align-items: center !important;
	gap: 16px !important;
	margin: 0 0 24px 0 !important;
}

.mcrpd-thankyou-icon-circle {
	width: 50px !important;
	height: 50px !important;
	min-width: 50px !important;
	border-radius: 50% !important;
	border: 2px solid var(--mcmchk-primary, #1773b0) !important;
	color: var(--mcmchk-primary, #1773b0) !important;
	background-color: #ffffff !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex-shrink: 0 !important;
}

.mcrpd-thankyou-icon-circle.mcrpd-thankyou-icon-failed {
	border-color: #dc2626 !important;
	color: #dc2626 !important;
	background-color: #fef2f2 !important;
}

.mcrpd-thankyou-hero-text {
	display: flex !important;
	flex-direction: column !important;
	gap: 2px !important;
}

.mcrpd-thankyou-order-label {
	font-size: 13px !important;
	font-weight: 500 !important;
	color: #6b7280 !important;
	line-height: 1.3 !important;
}

.mcrpd-thankyou-heading {
	font-size: 22px !important;
	font-weight: 700 !important;
	color: #111827 !important;
	margin: 0 !important;
	line-height: 1.25 !important;
	letter-spacing: -0.3px !important;
}

/* Order Overview 4-Column Strip */
.mcrpd-thankyou-overview-grid {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 12px !important;
	padding: 16px 18px !important;
	margin: 0 0 20px 0 !important;
	background-color: #f9fafb !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 8px !important;
	box-sizing: border-box !important;
}

.mcrpd-thankyou-overview-item {
	display: flex !important;
	flex-direction: column !important;
	gap: 4px !important;
	min-width: 0 !important;
}

.mcrpd-thankyou-overview-label {
	font-size: 11.5px !important;
	font-weight: 500 !important;
	color: #6b7280 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.3px !important;
}

.mcrpd-thankyou-overview-value {
	font-size: 13.5px !important;
	font-weight: 600 !important;
	color: #111827 !important;
	word-break: break-word !important;
}

/* Thank You Content Cards */
.mcrpd-thankyou-card {
	background-color: #ffffff !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 8px !important;
	padding: 20px !important;
	margin: 0 0 20px 0 !important;
	box-sizing: border-box !important;
}

.mcrpd-thankyou-card-title {
	font-size: 16px !important;
	font-weight: 600 !important;
	color: #111827 !important;
	margin: 0 0 10px 0 !important;
	line-height: 1.3 !important;
}

.mcrpd-thankyou-card-desc {
	font-size: 13.5px !important;
	color: #4b5563 !important;
	margin: 0 !important;
	line-height: 1.55 !important;
}

.mcrpd-thankyou-order-note {
	margin-top: 14px !important;
	padding-top: 12px !important;
	border-top: 1px solid #f3f4f6 !important;
	font-size: 13px !important;
	color: #374151 !important;
}

/* Customer Information Two-Column Grid */
.mcrpd-thankyou-addresses-grid {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 24px !important;
	margin-top: 14px !important;
}

.mcrpd-thankyou-subtitle {
	font-size: 13.5px !important;
	font-weight: 600 !important;
	color: #111827 !important;
	margin: 0 0 6px 0 !important;
	line-height: 1.3 !important;
}

.mcrpd-mt-16 {
	margin-top: 16px !important;
}

.mcrpd-thankyou-info-line,
.mcrpd-thankyou-address {
	font-size: 13.5px !important;
	font-style: normal !important;
	color: #4b5563 !important;
	margin: 0 0 4px 0 !important;
	line-height: 1.55 !important;
}

/* Digital Downloads Card */
.mcrpd-thankyou-downloads-list {
	display: flex !important;
	flex-direction: column !important;
	gap: 10px !important;
	margin-top: 12px !important;
}

.mcrpd-thankyou-download-row {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 12px !important;
	padding: 12px 14px !important;
	background-color: #f9fafb !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 6px !important;
}

.mcrpd-thankyou-download-info {
	display: flex !important;
	flex-direction: column !important;
	gap: 2px !important;
}

.mcrpd-thankyou-download-product {
	font-size: 13.5px !important;
	font-weight: 600 !important;
	color: #111827 !important;
}

.mcrpd-thankyou-download-meta {
	font-size: 12px !important;
	color: #6b7280 !important;
}

.mcrpd-thankyou-download-btn {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 8px 14px !important;
	border-radius: 6px !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	background-color: var(--mcmchk-primary, #1773b0) !important;
	color: #ffffff !important;
	white-space: nowrap !important;
}

/* Gateway Output Card (BACS bank details, instructions, etc.) */
.mcrpd-thankyou-gateway-hooks h2,
.mcrpd-thankyou-gateway-hooks h3 {
	font-size: 15px !important;
	font-weight: 600 !important;
	color: #111827 !important;
	margin: 0 0 10px 0 !important;
}

.mcrpd-thankyou-gateway-hooks p {
	font-size: 13.5px !important;
	color: #4b5563 !important;
	line-height: 1.5 !important;
	margin: 0 0 10px 0 !important;
}

.mcrpd-thankyou-gateway-hooks ul.wc-bacs-bank-details {
	list-style: none !important;
	padding: 12px 14px !important;
	margin: 10px 0 0 0 !important;
	background-color: #f9fafb !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 6px !important;
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 14px !important;
}

.mcrpd-thankyou-gateway-hooks ul.wc-bacs-bank-details li {
	font-size: 12.5px !important;
	color: #4b5563 !important;
	margin: 0 !important;
}

/* Bottom Actions Row */
.mcrpd-thankyou-bottom-actions {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 16px !important;
	margin-top: 24px !important;
}

.mcrpd-thankyou-help-text {
	font-size: 13.5px !important;
	color: #6b7280 !important;
	margin: 0 !important;
}

.mcrpd-thankyou-help-text a {
	color: var(--mcmchk-primary, #1773b0) !important;
	font-weight: 500 !important;
	text-decoration: none !important;
}

.mcrpd-thankyou-continue-btn {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 13px 24px !important;
	border-radius: 6px !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	background-color: var(--mcmchk-primary, #1773b0) !important;
	color: #ffffff !important;
	transition: opacity 0.2s ease !important;
	border: none !important;
}

.mcrpd-thankyou-continue-btn:hover {
	opacity: 0.92 !important;
	color: #ffffff !important;
}

.mcrpd-thankyou-failed-actions {
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
	margin-top: 16px !important;
}

.mcrpd-thankyou-secondary-btn {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 12px 20px !important;
	border-radius: 6px !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	text-decoration: none !important;
	border: 1px solid #d1d5db !important;
	color: #374151 !important;
	background-color: #ffffff !important;
}

/* ==========================================================================
   15. Responsive Breakpoints for Cart & Order Received (<= 1000px & <= 600px)
   ========================================================================== */
@media (max-width: 1000px) {
	/* On Cart, keep items on top and Order Summary below on tablet/mobile */
	.mcrpd-shop-checkout-wrap.mcrpd-cart-wrapper {
		flex-direction: column !important;
	}

	.mcrpd-shop-checkout-left.mcrpd-cart-left {
		padding: 0 !important;
	}

	.mcrpd-cart-right {
		border-radius: 10px !important;
		border: 1px solid #e5e7eb !important;
		margin-top: 10px !important;
	}
}

@media (max-width: 600px) {
	.mcrpd-cart-item-card {
		flex-wrap: wrap !important;
		padding: 14px !important;
		gap: 12px !important;
	}

	.mcrpd-cart-item-details {
		width: calc(100% - 80px) !important;
		flex: 1 1 calc(100% - 80px) !important;
	}

	.mcrpd-cart-item-controls {
		width: 100% !important;
		justify-content: space-between !important;
		padding-top: 10px !important;
		border-top: 1px solid #f3f4f6 !important;
	}

	.mcrpd-thankyou-overview-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 14px !important;
	}

	.mcrpd-thankyou-addresses-grid {
		grid-template-columns: 1fr !important;
		gap: 18px !important;
	}

	.mcrpd-thankyou-bottom-actions {
		flex-direction: column-reverse !important;
		align-items: stretch !important;
	}

	.mcrpd-thankyou-continue-btn {
		width: 100% !important;
		box-sizing: border-box !important;
	}

	.mcrpd-thankyou-help-text {
		text-align: center !important;
	}
}