/*
 * Merchado Flow — Checkout v4 styling
 * Volledige shell + 2-koloms layout + WooCommerce overrides
 */

/* ============ Reset / globals voor shell ============ */
body.merchado-checkout-shell {
	font-family: 'Inter', system-ui, -apple-system, sans-serif !important;
	background: #FFFFFF !important;
	color: #1D1D1B !important;
	margin: 0 !important;
}
body.merchado-checkout-shell .ct-header,
body.merchado-checkout-shell #ct-footer,
body.merchado-checkout-shell .ct-page-title,
body.merchado-checkout-shell .ct-breadcrumbs-container,
body.merchado-checkout-shell .merchado-topbar,
body.merchado-checkout-shell .ct-topbar,
body.merchado-checkout-shell #cartpops-modal,
body.merchado-checkout-shell .ct-cart-item,
body.merchado-checkout-shell .ct-header-offerte,
body.merchado-checkout-shell .merchado-google-rating,
body.merchado-checkout-shell .merchado-usp-topbar,
body.merchado-checkout-shell .ct-google-rating,
body.merchado-checkout-shell .merchado-shop-rating,
body.merchado-checkout-shell .google-rating,
body.merchado-checkout-shell [class*="google-rating"],
body.merchado-checkout-shell [class*="usp-topbar"] {
	display: none !important;
}

/* Browser autofill — voorkom Chrome's gele/grijze achtergrond op pill-inputs */
body.merchado-checkout-shell input:-webkit-autofill,
body.merchado-checkout-shell input:-webkit-autofill:hover,
body.merchado-checkout-shell input:-webkit-autofill:focus,
body.merchado-checkout-shell textarea:-webkit-autofill,
body.merchado-checkout-shell select:-webkit-autofill {
	-webkit-text-fill-color: #1D1D1B !important;
	-webkit-box-shadow: 0 0 0 1000px #FFFFFF inset !important;
	box-shadow: 0 0 0 1000px #FFFFFF inset !important;
	transition: background-color 5000s ease-in-out 0s !important;
}

/* ============ Defeat Blocksy + WC default checkout layouts ============ */
body.merchado-checkout-shell form.checkout,
body.merchado-checkout-shell form.checkout.ct-woocommerce-checkout,
body.merchado-checkout-shell form.mc-checkout {
	display: block !important;
	grid-template-columns: none !important;
	grid-template-areas: none !important;
	gap: 0 !important;
	grid-gap: 0 !important;
	max-width: none !important;
	width: 100% !important;
}
body.merchado-checkout-shell .woocommerce {
	display: block !important;
	max-width: none !important;
	width: 100% !important;
}
body.merchado-checkout-shell .woocommerce-billing-fields,
body.merchado-checkout-shell .woocommerce-shipping-fields,
body.merchado-checkout-shell .woocommerce-additional-fields {
	max-width: none !important;
	width: 100% !important;
}

/* ============ Variables ============ */
:root {
	--mf-ink: #1D1D1B;
	--mf-cream: #EFEEE5;
	--mf-panel: #F7F5F0;
	--mf-rust: #9E491D;
	--mf-rust-hover: #894424;
	--mf-muted: #B2B2B2;
	--mf-border: #EFEEE5;
	--mf-border-strong: #E5E4DC;
	--mf-bg: #FFFFFF;
	--mf-radius-input: 9999px;
	--mf-radius-card: 14px;
	--mf-shell-max: 1320px;
	--mf-shell-pad-x: 64px;
}

/* ============ Shell header ============ */
.mc-shell__header {
	background: #FFFFFF;
}
.mc-shell__header-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	max-width: var(--mf-shell-max);
	margin: 0 auto;
	padding: 18px var(--mf-shell-pad-x);
}
.mc-shell__secure {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 12px;
	color: var(--mf-ink);
	text-decoration: none;
	flex: 0 0 auto;
}
.mc-shell__logo { display: inline-flex; align-items: center; }
.mc-shell__logo svg { width: 124px; height: 26px; display: block; }

.mc-shell__steps {
	display: flex;
	align-items: center;
	gap: 14px;
	flex: 1 0 auto;
	justify-content: center;
}
.mc-step {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 12px;
	font-weight: 500;
}
.mc-step__num {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	font-size: 11px;
	font-weight: 600;
}
.mc-step--done .mc-step__num   { background: var(--mf-cream); color: var(--mf-ink); }
.mc-step--done                  { color: var(--mf-muted); }
.mc-step--active .mc-step__num { background: var(--mf-ink); color: #fff; }
.mc-step--active                { color: var(--mf-ink); }
.mc-step--future .mc-step__num { background: #fff; border: 1px solid var(--mf-muted); color: var(--mf-muted); }
.mc-step--future                { color: var(--mf-muted); }
.mc-step__sep { display: inline-block; width: 22px; height: 1px; background: var(--mf-muted); }
/* R3: voltooide stappen klikbaar (Winkelmand → opent drawer). */
.mc-step--clickable { cursor: pointer; text-decoration: none; transition: opacity .12s ease; }
.mc-step--clickable:hover { opacity: .75; }
.mc-step--clickable:hover .mc-step__label { color: #9E491D; }
/* Blocksy geeft de <a>-stap (Winkelmand) 16px link-font — forceer alle stappen gelijk. */
.mc-shell__steps a.mc-step,
.mc-shell__steps .mc-step,
.mc-shell__steps .mc-step__label {
	font-size: 12px !important;
	line-height: 1.2 !important;
	font-weight: 500 !important;
}

/* R3: "Logo / ontwerp" per product op de checkout (hergebruikt het per-regel upload-UI). */
body.merchado-checkout-shell .mc-section--logo .mc-logo-item { padding: 12px 0; border-bottom: 1px solid var(--mf-cream, #ECE7D8); }
body.merchado-checkout-shell .mc-section--logo .mc-logo-item:last-child { border-bottom: 0; }
body.merchado-checkout-shell .mc-section--logo .mc-logo-item__name { display: block; font-family: 'Inter', sans-serif; font-size: 13px; font-weight: 600; color: var(--mf-ink, #1D1D1B); margin: 0 0 8px; }
body.merchado-checkout-shell .mc-section--logo .mc-cartpage__upload { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; margin: 0; padding: 0; border: 0; }
body.merchado-checkout-shell .mc-section--logo .mc-cartpage__upload-label { display: none; }
body.merchado-checkout-shell .mc-section--logo .mc-cartpage__upload-btn { display: inline-flex; align-items: center; gap: 6px; padding: 7px 14px; border: 1px solid var(--mf-ink, #1D1D1B); border-radius: 9999px; background: #fff; font-family: 'Inter', sans-serif; font-size: 12px; font-weight: 600; color: var(--mf-ink, #1D1D1B); cursor: pointer; transition: background .12s ease, color .12s ease; }
body.merchado-checkout-shell .mc-section--logo .mc-cartpage__upload-btn:hover,
body.merchado-checkout-shell .mc-section--logo .mc-cartpage__upload-btn:focus { background: var(--mf-ink, #1D1D1B) !important; color: #fff !important; }
/* het label-icoon (SVG) volgt currentColor → ook wit op hover */
body.merchado-checkout-shell .mc-section--logo .mc-cartpage__upload-btn:hover svg,
body.merchado-checkout-shell .mc-section--logo .mc-cartpage__upload-btn:focus svg { stroke: #fff !important; color: #fff !important; }
body.merchado-checkout-shell .mc-section--logo .mc-cartpage__upload-defer { display: inline-flex; align-items: center; gap: 5px; font-family: 'Inter', sans-serif; font-size: 12px; color: #6b6b66; cursor: pointer; }
/* R4: per-product notitie-veld (volle breedte onder de upload-controls). */
body.merchado-checkout-shell .mc-section--logo .mc-cartpage__note { flex: 1 1 100%; display: flex; flex-direction: column; gap: 6px; margin-top: 4px; }
body.merchado-checkout-shell .mc-cartpage__note-label { font-family: 'Inter', sans-serif; font-size: 12px; font-weight: 500; color: #8A8A86; }
body.merchado-checkout-shell .mc-cartpage__note-input { width: 100%; min-height: 56px; padding: 10px 14px; background: #FBFAF7; border: 1px solid var(--mf-border-strong, #E5E4DC); border-radius: 12px; font-family: 'Inter', sans-serif; font-size: 13px; color: var(--mf-ink, #1D1D1B); line-height: 1.45; box-sizing: border-box; resize: vertical; }
body.merchado-checkout-shell .mc-cartpage__note-input:focus { outline: 0; border-color: var(--mf-ink, #1D1D1B); }
body.merchado-checkout-shell .mc-section--logo .mc-cartpage__upload-list { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px; flex-basis: 100%; }
body.merchado-checkout-shell .mc-section--logo .mc-cartpage__file { display: inline-flex; align-items: center; gap: 8px; max-width: 100%; padding: 5px 6px 5px 8px; background: #fff; border: 1px solid var(--mf-border, #E6DFCE); border-radius: 9px; box-shadow: 0 1px 2px rgba(29,29,27,0.05); font-family: 'Inter', sans-serif; font-size: 12px; color: var(--mf-ink, #1D1D1B); }
body.merchado-checkout-shell .mc-section--logo .mc-cartpage__file::before { content: "\2713"; flex-shrink: 0; display: inline-flex; align-items: center; justify-content: center; width: 16px; height: 16px; border-radius: 50%; background: #2E8B57; color: #fff; font-size: 9px; font-weight: 700; line-height: 1; }
body.merchado-checkout-shell .mc-section--logo .mc-cartpage__file-name { color: var(--mf-ink, #1D1D1B); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 280px; }
body.merchado-checkout-shell .mc-section--logo .mc-cartpage__file-remove { display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; width: 22px; height: 22px; padding: 0; border: 0; border-radius: 50%; background: transparent; color: #9b9b95; cursor: pointer; transition: background .12s ease, color .12s ease; }
body.merchado-checkout-shell .mc-section--logo .mc-cartpage__file-remove:hover { background: #FCE8E6; color: #C0392B; }

/* Wachtwoord show/hide-toggle: nette grijze oog-knop i.p.v. de zwarte "blob"
   (WC's .show-password-input pakte de zwarte button-stijl + miste het dashicon). */
body.merchado-checkout-shell .password-input { position: relative; display: block; }
body.merchado-checkout-shell .password-input .input-text { padding-right: 44px !important; }
body.merchado-checkout-shell .show-password-input {
	position: absolute !important; top: 50% !important; right: 14px !important; transform: translateY(-50%) !important;
	width: 24px !important; height: 24px !important; min-height: 0 !important; padding: 0 !important; margin: 0 !important;
	border: 0 !important; border-radius: 0 !important; box-shadow: none !important; background: transparent !important;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%236b6b66' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important; background-position: center !important; background-size: 18px 18px !important;
	cursor: pointer !important;
}
body.merchado-checkout-shell .show-password-input::before,
body.merchado-checkout-shell .show-password-input::after { content: none !important; display: none !important; }
body.merchado-checkout-shell .show-password-input.display-password { opacity: .55 !important; }

/* ============ Shell main + footer ============ */
/* Bleed van het sidebar-paneel tot de viewport-rand opvangen op body-niveau (niet op
   de max-width container, anders stopt het grijs bij 1320px). overflow-x: clip maakt
   GEEN scroll-container (anders dan hidden/auto) → position:sticky blijft werken. */
body.merchado-checkout-shell { position: relative; }
/* Shopify-stijl paneel: warm-grijs achter de rechterkolom, van onder de header tot de
   onderkant van de pagina (incl. achter de footer) en door tot de viewport-rand. De
   header is wit/opaak en dekt de bovenkant af; z-index:-1 houdt het achter alle content.
   De divider zit op alle breedtes in de goot: ≤1320px = 100%-496, >1320px = 50%+164 (min() kiest). */
body.merchado-checkout-shell::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	left: min(calc(100% - 536px), calc(50% + 124px));
	background: var(--mf-panel, #F7F5F0);
	border-left: 1px solid var(--mf-border-strong);
	z-index: -1;
	pointer-events: none;
}
.mc-shell__main {
	max-width: var(--mf-shell-max);
	margin: 0 auto;
	padding: 40px var(--mf-shell-pad-x) 72px var(--mf-shell-pad-x);
	overflow-x: clip; /* klemt eventuele content-overflow af; raakt het body::before-paneel niet (dat ligt erbuiten) */
}
.mc-shell__footer {
	border-top: 1px solid var(--mf-border);
	padding: 0;
	font-size: 12px;
	color: var(--mf-muted);
	margin-top: 32px;
}
.mc-shell__footer-inner {
	display: flex;
	justify-content: space-between;
	max-width: var(--mf-shell-max);
	margin: 0 auto;
	padding: 20px var(--mf-shell-pad-x);
}

/* ============ 2-col grid ============ */
body.merchado-checkout-shell .mc-checkout {
	max-width: 100% !important;
	width: 100% !important;
}
body.merchado-checkout-shell .mc-checkout__grid {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) 440px !important;
	gap: 64px !important;
	align-items: start !important;
	width: 100% !important;
	max-width: 100% !important;
	position: relative !important; /* sluit absolute form-elementen (verborgen select2) in */
}
/* WC/select2's verborgen a11y-select correct wegclippen — onze select{width:100%} maakte
   'm anders 1440px breed → horizontale overflow. */
body.merchado-checkout-shell .mc-checkout select.select2-hidden-accessible {
	width: 1px !important;
	height: 1px !important;
	min-height: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	clip: rect(0 0 0 0) !important;
	overflow: hidden !important;
	position: absolute !important;
}
body.merchado-checkout-shell .mc-checkout__form-col {
	display: flex !important;
	flex-direction: column !important;
	gap: 36px !important;
	min-width: 0 !important;
	width: 100% !important;
	max-width: 100% !important;
}
body.merchado-checkout-shell .mc-checkout__sidebar {
	display: flex !important;
	flex-direction: column !important;
	gap: 18px !important;
	width: 440px !important;
	max-width: 100% !important;
	position: sticky !important;
	top: 24px !important;
	min-width: 0 !important;
	z-index: 1 !important;
}

/* ============ Hero ============ */
body.merchado-checkout-shell .mc-hero {
	display: flex !important;
	flex-direction: column !important;
	gap: 10px !important;
	width: 100% !important;
	max-width: 100% !important;
	margin-bottom: 4px !important;
}
body.merchado-checkout-shell .mc-hero__eyebrow {
	font-size: 11px !important;
	font-weight: 500 !important;
	color: var(--mf-rust) !important;
	letter-spacing: 0.14em !important;
	text-transform: uppercase !important;
}
body.merchado-checkout-shell .mc-hero__title {
	font-family: 'Inter', system-ui, sans-serif !important;
	font-size: 24px !important;
	font-weight: 600 !important;
	line-height: 30px !important;
	letter-spacing: -0.015em !important;
	color: var(--mf-ink) !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	white-space: normal !important;
	word-break: normal !important;
	overflow-wrap: break-word !important;
	width: auto !important;
	max-width: 100% !important;
}
body.merchado-checkout-shell .mc-hero__lead {
	font-size: 14px !important;
	line-height: 22px !important;
	color: var(--mf-ink) !important;
	opacity: 0.75 !important;
	margin: 0 !important;
	max-width: 520px !important;
}

/* ============ Section headers ============ */
body.merchado-checkout-shell .mc-section h3,
body.merchado-checkout-shell .mc-checkout h3,
body.merchado-checkout-shell .mc-checkout #order_review_heading,
body.merchado-checkout-shell .mc-form-section__title,
body.merchado-checkout-shell .woocommerce-additional-fields h3 {
	font-family: 'Inter', system-ui, sans-serif !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	color: var(--mf-ink) !important;
	letter-spacing: -0.005em !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	text-transform: none !important;
	line-height: 1.3 !important;
}

/* ============ Form-sections (Contactgegevens / Bedrijfsgegevens / Bezorging) ============ */
body.merchado-checkout-shell .mc-billing {
	display: flex !important;
	flex-direction: column !important;
	gap: 28px !important;
}
body.merchado-checkout-shell .mc-form-section {
	display: flex !important;
	flex-direction: column !important;
	gap: 16px !important;
}
/* Het [hidden]-attribuut moet winnen van de flex-regel hierboven (anders bleef
   de factuuradres-sectie zichtbaar terwijl "Factuuradres is hetzelfde" aanstond). */
body.merchado-checkout-shell .mc-form-section[hidden] { display: none !important; }
/* Meer lucht boven de Afleveradres-sectie (stond strak onder Bedrijfsgegevens). */
.mc-checkout .mc-form-section--shipping { margin-top: 28px !important; }
body.merchado-checkout-shell .mc-form-section__head {
	display: flex !important;
	align-items: baseline !important;
	justify-content: space-between !important;
	gap: 16px !important;
	padding: 0 !important;
	border-bottom: 0 !important;
	flex-wrap: wrap !important;
}
body.merchado-checkout-shell .mc-form-section__body {
	display: block !important;
}
body.merchado-checkout-shell .mc-form-section__body::after {
	content: "" !important;
	display: block !important;
	clear: both !important;
}
body.merchado-checkout-shell .mc-form-section__action {
	font-size: 13px !important;
	font-weight: 500 !important;
	color: var(--mf-ink) !important;
	opacity: 0.85 !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
	margin: 0 !important;
	text-decoration: none !important;
	flex-shrink: 0 !important;
}
body.merchado-checkout-shell .mc-form-section__action--login {
	color: var(--mf-ink) !important;
	opacity: 0.7 !important;
}
body.merchado-checkout-shell .mc-form-section__action--login strong {
	color: var(--mf-rust) !important;
	font-weight: 600 !important;
	text-decoration: underline !important;
}
body.merchado-checkout-shell .mc-form-section__action--login:hover strong {
	color: var(--mf-rust-hover) !important;
}
body.merchado-checkout-shell .mc-form-section__action--hint {
	color: var(--mf-ink) !important;
	opacity: 0.5 !important;
	font-weight: 400 !important;
}
body.merchado-checkout-shell .mc-form-section__action--checkbox {
	cursor: pointer !important;
}
body.merchado-checkout-shell .mc-form-section__action--checkbox input[type="checkbox"] {
	width: 16px !important;
	height: 16px !important;
	margin: 0 4px 0 0 !important;
	accent-color: var(--mf-ink) !important;
	cursor: pointer !important;
}

/* Optionele sectie (Bedrijfsgegevens) — inklapbare Shopify-stijl toggle (+/×). */
body.merchado-checkout-shell .mc-optional { display: block; }
body.merchado-checkout-shell .mc-optional > summary {
	list-style: none; cursor: pointer; display: inline-flex; align-items: center; gap: 9px;
	font-family: 'Inter', sans-serif; font-size: 14px; font-weight: 600; color: var(--mf-ink); user-select: none;
}
body.merchado-checkout-shell .mc-optional > summary::-webkit-details-marker { display: none; }
body.merchado-checkout-shell .mc-optional > summary::marker { content: ""; }
body.merchado-checkout-shell .mc-optional__plus {
	position: relative; width: 20px; height: 20px; flex-shrink: 0; border-radius: 50%;
	border: 1px solid var(--mf-border-strong, #D9D2C2); transition: transform .15s ease, border-color .15s ease;
}
body.merchado-checkout-shell .mc-optional__plus::before,
body.merchado-checkout-shell .mc-optional__plus::after {
	content: ""; position: absolute; top: 50%; left: 50%; background: var(--mf-ink); border-radius: 2px;
}
body.merchado-checkout-shell .mc-optional__plus::before { width: 9px; height: 1.5px; transform: translate(-50%, -50%); }
body.merchado-checkout-shell .mc-optional__plus::after { width: 1.5px; height: 9px; transform: translate(-50%, -50%); }
body.merchado-checkout-shell .mc-optional[open] .mc-optional__plus { transform: rotate(45deg); border-color: var(--mf-ink); }
body.merchado-checkout-shell .mc-optional > summary:hover .mc-optional__plus { border-color: var(--mf-ink); }
body.merchado-checkout-shell .mc-optional__hint { font-weight: 400; color: var(--mf-ink); opacity: .45; font-size: 13px; }
/* flow-root bevat de WC float-velden (form-row-first/last) — anders lopen ze door
   in de Afleveradres-sectie en klapt de layout in elkaar. */
body.merchado-checkout-shell .mc-optional__body { display: flow-root; margin-top: 16px; }

/* WC's eigen ship-to-different-address h3 verbergen (we hebben eigen Bezorging-sectie) */
body.merchado-checkout-shell .woocommerce-shipping-fields,
body.merchado-checkout-shell h3#ship-to-different-address {
	display: none !important;
}

/* ============ Bestanden upload sectie ============ */
body.merchado-checkout-shell .mc-section--files { display: flex !important; flex-direction: column !important; gap: 16px !important; }
body.merchado-checkout-shell .mc-files {
	display: flex !important;
	flex-direction: column !important;
	gap: 12px !important;
}
body.merchado-checkout-shell .mc-files__list {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 8px !important;
}
body.merchado-checkout-shell .mc-files__list:empty { display: none !important; }
body.merchado-checkout-shell .mc-files__item {
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
	padding: 12px 14px !important;
	background: #fff !important;
	border: 1px solid var(--mf-border-strong) !important;
	border-radius: 10px !important;
}
body.merchado-checkout-shell .mc-files__icon {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 36px !important;
	height: 36px !important;
	background: var(--mf-cream) !important;
	color: var(--mf-rust) !important;
	border-radius: 50% !important;
	flex-shrink: 0 !important;
}
body.merchado-checkout-shell .mc-files__info {
	flex: 1 !important;
	min-width: 0 !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 2px !important;
}
body.merchado-checkout-shell .mc-files__name {
	font-size: 13px !important;
	font-weight: 600 !important;
	color: var(--mf-ink) !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
	white-space: nowrap !important;
}
body.merchado-checkout-shell .mc-files__size {
	font-size: 11px !important;
	color: var(--mf-ink) !important;
	opacity: 0.6 !important;
}
body.merchado-checkout-shell .mc-files__remove {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 28px !important;
	height: 28px !important;
	background: transparent !important;
	color: var(--mf-ink) !important;
	border: 0 !important;
	border-radius: 50% !important;
	cursor: pointer !important;
	opacity: 0.55 !important;
	transition: opacity .12s ease, background .12s ease, color .12s ease !important;
	padding: 0 !important;
	min-height: 0 !important;
	box-shadow: none !important;
}
body.merchado-checkout-shell .mc-files__remove:hover {
	opacity: 1 !important;
	background: var(--mf-cream) !important;
	color: var(--mf-rust) !important;
}
body.merchado-checkout-shell .mc-files__dropzone {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 6px !important;
	padding: 22px 16px !important;
	background: var(--mf-cream-soft, #F7F6F0) !important;
	border: 1.5px dashed var(--mf-rust) !important;
	border-radius: 12px !important;
	cursor: pointer !important;
	text-align: center !important;
	transition: background .12s ease, border-color .12s ease !important;
}
body.merchado-checkout-shell .mc-files__dropzone:hover,
body.merchado-checkout-shell .mc-files__dropzone.is-drag-over {
	background: var(--mf-cream) !important;
	border-color: var(--mf-rust-hover) !important;
}
body.merchado-checkout-shell .mc-files__drop-icon {
	color: var(--mf-rust) !important;
	margin-bottom: 4px !important;
}
body.merchado-checkout-shell .mc-files__drop-title {
	font-size: 13px !important;
	font-weight: 600 !important;
	color: var(--mf-ink) !important;
}
body.merchado-checkout-shell .mc-files__drop-meta {
	font-size: 11px !important;
	color: var(--mf-ink) !important;
	opacity: 0.6 !important;
}
body.merchado-checkout-shell .mc-files__error {
	padding: 10px 14px !important;
	background: #FEEFE9 !important;
	color: #9E491D !important;
	border-radius: 8px !important;
	font-size: 12px !important;
	line-height: 1.5 !important;
}
body.merchado-checkout-shell .mc-files__item.is-uploading { opacity: 0.6 !important; }

/* Hint-boodschap bij uncheck "Factuur op dit adres" */
body.merchado-checkout-shell .mc-billing-hint {
	display: flex !important;
	align-items: flex-start !important;
	gap: 10px !important;
	margin: 12px 0 4px 0 !important;
	padding: 12px 14px !important;
	background: var(--mf-cream) !important;
	border-radius: 10px !important;
	font-size: 12px !important;
	line-height: 1.5 !important;
	color: var(--mf-ink) !important;
}
body.merchado-checkout-shell .mc-billing-hint[hidden] {
	display: none !important;
}
body.merchado-checkout-shell .mc-billing-hint__icon {
	flex-shrink: 0 !important;
	color: var(--mf-rust) !important;
	margin-top: 1px !important;
}
body.merchado-checkout-shell .mc-billing-hint__text {
	flex: 1 !important;
	opacity: 0.85 !important;
}
/* "Ship to a different address" toggle naast Bezorging header */
body.merchado-checkout-shell .woocommerce-shipping-fields h3#ship-to-different-address {
	font-size: 13px !important;
	font-weight: 500 !important;
	border-bottom: 0 !important;
	padding: 0 !important;
	margin: 12px 0 12px 0 !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
}
body.merchado-checkout-shell .woocommerce-shipping-fields h3#ship-to-different-address .woocommerce-form__label-for-checkbox {
	margin: 0 !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	cursor: pointer !important;
}
/* WC's "Have a coupon? Click here to enter your code" / inloggen-link bovenaan checkout */
body.merchado-checkout-shell .woocommerce-form-login-toggle,
body.merchado-checkout-shell .woocommerce-form-coupon-toggle {
	margin: 0 0 16px 0 !important;
}
body.merchado-checkout-shell .woocommerce-info {
	font-size: 13px !important;
}

/* ============ Form labels + inputs (pill-shape) ============ */
.mc-checkout .form-row {
	margin: 0 0 14px 0 !important;
	padding: 0 !important;
}
.mc-checkout .form-row label,
.mc-checkout label {
	font-size: 12px !important;
	font-weight: 500 !important;
	color: var(--mf-ink) !important;
	margin-bottom: 5px !important;
	display: block !important;
	letter-spacing: 0 !important;
}
.mc-checkout .form-row input.input-text,
.mc-checkout .form-row input[type=text],
.mc-checkout .form-row input[type=email],
.mc-checkout .form-row input[type=tel],
.mc-checkout .form-row input[type=number],
.mc-checkout .form-row select,
.mc-checkout .select2-selection--single,
.mc-checkout .select2-container .select2-selection {
	border-radius: 10px !important;
	border: 1px solid var(--mf-border-strong) !important;
	padding: 12px 20px !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	color: var(--mf-ink) !important;
	background: var(--mf-bg) !important;
	height: auto !important;
	min-height: 0 !important;
	line-height: 1.4 !important;
	box-shadow: none !important;
	width: 100% !important;
	box-sizing: border-box !important;
}
.mc-checkout .form-row input:focus,
.mc-checkout .form-row select:focus,
.mc-checkout .select2-container--open .select2-selection {
	border-color: var(--mf-ink) !important;
	outline: 0 !important;
}
.mc-checkout .form-row textarea {
	border-radius: 10px !important;
	border: 1px solid var(--mf-border-strong) !important;
	padding: 12px 20px !important;
	font-family: 'Inter', system-ui, sans-serif !important;
	font-size: 13px !important;
	min-height: 88px !important;
	box-shadow: none !important;
	width: 100% !important;
	box-sizing: border-box !important;
}
.mc-checkout .select2-container--default .select2-selection--single .select2-selection__rendered {
	line-height: 1.4 !important;
	padding-left: 0 !important;
	color: var(--mf-ink) !important;
}
.mc-checkout .select2-container--default .select2-selection--single .select2-selection__arrow {
	height: 100% !important;
	right: 18px !important;
}

/* Two-column rows on desktop (first/last name etc.) */
@media (min-width: 768px) {
	.mc-checkout .form-row-first { width: calc(50% - 8px) !important; float: left !important; margin-right: 16px !important; }
	.mc-checkout .form-row-last  { width: calc(50% - 8px) !important; float: left !important; margin-right: 0 !important; clear: none !important; }
	/* 3-koloms voor Postcode / Huisnummer / Toevoeging */
	.mc-checkout .form-row-third { width: calc((100% - 32px) / 3) !important; float: left !important; margin-right: 16px !important; clear: none !important; }
	.mc-checkout .form-row-third.mc-col-3 { margin-right: 0 !important; }
	.mc-checkout .form-row.notes,
	.mc-checkout .form-row.create-account { clear: both !important; }
}
.mc-checkout .woocommerce-billing-fields::after,
.mc-checkout .woocommerce-shipping-fields::after,
.mc-checkout fieldset::after { content: ""; display: block; clear: both; }
/* Hidden field utility (voor billing_address_1 die we via JS combineren) */
.mc-checkout .mc-hidden-field,
.mc-checkout .form-row.mc-hidden-field { display: none !important; }

/* ============ Punt 4 — Afleveradres als één gegroepeerd blok (Shopify-stijl) ============
   De adresvelden zitten in één omrande kaart met dunne hairline-dividers i.p.v.
   losse omrande velden. Contact (e-mail/telefoon) blijft losse zachte velden —
   precies het Shopify-patroon: los veld bovenaan, adres gegroepeerd eronder. */
.mc-checkout .mc-form-section--shipping .mc-form-section__body {
	border: 1px solid var(--mf-border-strong) !important;
	border-radius: 12px !important;
	background: var(--mf-bg) !important;
	overflow: hidden !important;
}
/* Elke veldrij = een cel: geen losse marge/rand, wél een dunne onderlijn. */
.mc-checkout .mc-form-section--shipping .form-row {
	margin: 0 !important;
	padding: 10px 16px !important;
	border-bottom: 1px solid var(--mf-border) !important;
	background: transparent !important;
}
.mc-checkout .mc-form-section--shipping .form-row:focus-within { background: #FCFBF8 !important; }
.mc-checkout .mc-form-section--shipping .form-row label {
	font-size: 11px !important;
	margin-bottom: 2px !important;
	color: #8A8A86 !important;
}
/* Inputs in de kaart zijn randloos/transparant — de kaart levert de rand. */
.mc-checkout .mc-form-section--shipping .form-row input.input-text,
.mc-checkout .mc-form-section--shipping .form-row input[type=text],
.mc-checkout .mc-form-section--shipping .form-row input[type=email],
.mc-checkout .mc-form-section--shipping .form-row input[type=tel],
.mc-checkout .mc-form-section--shipping .form-row input[type=number],
.mc-checkout .mc-form-section--shipping .form-row select,
.mc-checkout .mc-form-section--shipping .select2-selection--single,
.mc-checkout .mc-form-section--shipping .select2-container .select2-selection {
	border: 0 !important;
	border-radius: 0 !important;
	padding: 2px 0 !important;
	background: transparent !important;
	min-height: 24px !important;
}
.mc-checkout .mc-form-section--shipping .select2-container--default .select2-selection--single .select2-selection__arrow { right: 0 !important; }
/* Validatie-fout zichtbaar houden zonder losse rand. */
.mc-checkout .mc-form-section--shipping .form-row.woocommerce-invalid { background: #FCEEEC !important; }
.mc-checkout .mc-form-section--shipping .form-row.woocommerce-invalid label { color: #C0392B !important; }
/* Adresboek-kaarten + bezorghint (ingelogd / afwijkend factuuradres) ingesprongen houden. */
.mc-checkout .mc-form-section--shipping .mc-address-choose,
.mc-checkout .mc-form-section--shipping .mc-address-other,
.mc-checkout .mc-form-section--shipping .mc-billing-hint { margin: 10px 16px !important; }
/* Adresboek-blokken breken de float-stroom af zodat de velden eronder schoon
   beginnen (anders schoof "Achternaam" lager dan "Voornaam"). */
.mc-checkout .mc-form-section--shipping .mc-address-choose,
.mc-checkout .mc-form-section--shipping .mc-address-other,
.mc-checkout .mc-form-section--shipping .mc-billing-hint { clear: both !important; width: auto !important; }

/* Robuuste layout: de gegroepeerde kaart als flex-wrap. Floats faalden zodra de
   adresboek-blokken ertussen stonden (Achternaam zakte 1 rij). In een flex-
   container worden floats genegeerd → cellen lijnen altijd uit. */
@media (min-width: 768px) {
	.mc-checkout .mc-form-section--shipping .mc-form-section__body { display: flex !important; flex-wrap: wrap !important; align-items: stretch !important; }
	.mc-checkout .mc-form-section--shipping .form-row { float: none !important; }
	.mc-checkout .mc-form-section--shipping .form-row-wide,
	.mc-checkout .mc-form-section--shipping .mc-address-choose,
	.mc-checkout .mc-form-section--shipping .mc-address-other,
	.mc-checkout .mc-form-section--shipping .mc-billing-hint { flex: 0 0 100% !important; width: 100% !important; }
	.mc-checkout .mc-form-section--shipping .form-row-first { flex: 0 0 50% !important; width: 50% !important; margin-right: 0 !important; border-right: 1px solid var(--mf-border) !important; }
	.mc-checkout .mc-form-section--shipping .form-row-last  { flex: 0 0 50% !important; width: 50% !important; margin-right: 0 !important; }
	.mc-checkout .mc-form-section--shipping .form-row-third { flex: 0 0 33.333% !important; width: 33.333% !important; margin-right: 0 !important; border-right: 1px solid var(--mf-border) !important; }
	.mc-checkout .mc-form-section--shipping .form-row-third.mc-col-3 { border-right: 0 !important; }
}

/* ============ Blok D — bevestigingskaart (ingelogde klant) ============ */
body.merchado-checkout-shell .mc-confirm-card {
	display: flex; flex-direction: column; gap: 8px;
	background: var(--mf-cream, #F5F1E8); border-radius: 16px;
	padding: 22px 26px; margin: 0 0 8px 0;
}
/* R4: prominente "Ingelogd"-badge bovenaan de gegevens-kaart. */
body.merchado-checkout-shell .mc-confirm-card__badge {
	display: inline-flex; align-items: center; gap: 7px; align-self: flex-start;
	padding: 5px 13px 5px 6px; background: #E7EFE6; border-radius: 9999px;
	font-family: 'Inter', sans-serif; font-size: 12.5px; font-weight: 600; color: #2F5E3C; letter-spacing: 0.01em;
}
body.merchado-checkout-shell .mc-confirm-card__badge-icon {
	display: inline-flex; align-items: center; justify-content: center;
	width: 18px; height: 18px; background: #3F7A4F; border-radius: 9999px; flex-shrink: 0;
}
/* R4: levertijd + proefdruk-belofte onder de totalen in de sidebar. */
body.merchado-checkout-shell .mc-review__reassure {
	display: flex; flex-direction: column; gap: 12px;
	margin-top: 16px; padding: 16px 18px;
	background: var(--mf-panel, #F7F5F0); border: 1px solid var(--mf-border, #ECE7D8); border-radius: 14px;
}
body.merchado-checkout-shell .mc-review__reassure-row { display: flex; align-items: flex-start; gap: 10px; }
body.merchado-checkout-shell .mc-review__reassure-row svg { flex-shrink: 0; margin-top: 1px; }
body.merchado-checkout-shell .mc-review__reassure-text { display: flex; flex-direction: column; gap: 1px; }
body.merchado-checkout-shell .mc-review__reassure-text strong { font-family: 'Inter', sans-serif; font-size: 13.5px; font-weight: 600; color: var(--mf-ink, #1D1D1B); }
body.merchado-checkout-shell .mc-review__reassure-text span { font-family: 'Inter', sans-serif; font-size: 12.5px; font-weight: 400; color: #6B6B66; line-height: 1.4; }
body.merchado-checkout-shell .mc-confirm-card--warn { border-left: 3px solid #C8862B; }
body.merchado-checkout-shell .mc-confirm-card__head { display: flex; flex-direction: row; align-items: flex-start; justify-content: space-between; gap: 16px; }
body.merchado-checkout-shell .mc-confirm-card__title { font-family: 'Inter', sans-serif; font-size: 18px; font-weight: 600; color: var(--mf-ink, #1D1D1B); }
body.merchado-checkout-shell button.mc-confirm-card__edit,
body.merchado-checkout-shell button.mc-confirm-card__fill {
	display: inline-flex !important; align-items: center !important; gap: 6px !important;
	background: transparent !important; border: 0 !important; box-shadow: none !important;
	padding: 0 !important; min-height: 0 !important; height: auto !important; width: auto !important;
	cursor: pointer !important; font-family: 'Inter', sans-serif !important; font-size: 14px !important;
	color: var(--mf-rust, #9E491D) !important; text-decoration: underline !important; text-underline-offset: 3px !important;
	flex-shrink: 0 !important;
}
body.merchado-checkout-shell button.mc-confirm-card__edit { font-weight: 500 !important; }
body.merchado-checkout-shell button.mc-confirm-card__fill { font-weight: 600 !important; }
body.merchado-checkout-shell .mc-confirm-card__line { font-family: 'Inter', sans-serif; font-size: 15px; font-weight: 400; color: #5C5C58; }
body.merchado-checkout-shell .mc-confirm-card__hint { font-family: 'Inter', sans-serif; font-size: 13px; font-weight: 400; color: #8A8A86; }
body.merchado-checkout-shell .mc-confirm-card__warnline { display: flex; flex-direction: row; align-items: center; gap: 8px; font-family: 'Inter', sans-serif; font-size: 14px; font-weight: 500; color: #9A6A1E; }

/* Optie 3 — "Kies een wachtwoord" (stil account aanmaken voor gast-offertes) */
body.merchado-checkout-shell .mc-account-create { margin: 2px 0 20px; }
body.merchado-checkout-shell .mc-account-create__hint { display: block; margin-top: 6px; font-family: 'Inter', sans-serif; font-size: 12px; color: #8A8A86; line-height: 1.5; }

/* ============ Blok D / D2 — adres-keuze ============ */
body.merchado-checkout-shell .mc-address-choose { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin: 0 0 12px 0; }
body.merchado-checkout-shell button.mc-address-card {
	display: flex !important; flex-direction: row !important; align-items: flex-start !important; gap: 12px !important;
	text-align: left !important; width: 100% !important; min-height: 0 !important; height: auto !important;
	background: #FFFFFF !important; border: 1px solid #E5E1D6 !important; border-radius: 14px !important;
	padding: 16px 18px !important; cursor: pointer !important; box-shadow: none !important;
}
body.merchado-checkout-shell button.mc-address-card.is-selected { border: 2px solid var(--mf-ink, #1D1D1B) !important; padding: 15px 17px !important; }
body.merchado-checkout-shell .mc-address-card__radio { width: 18px; height: 18px; border-radius: 50%; border: 2px solid #CFC9BC; flex-shrink: 0; margin-top: 2px; box-sizing: border-box; }
body.merchado-checkout-shell button.mc-address-card.is-selected .mc-address-card__radio { border-color: var(--mf-ink, #1D1D1B); background: var(--mf-ink, #1D1D1B); box-shadow: inset 0 0 0 2.5px #FFFFFF; }
body.merchado-checkout-shell .mc-address-card__body { display: flex; flex-direction: column; gap: 3px; }
body.merchado-checkout-shell .mc-address-card__label { font-family: 'Inter', sans-serif; font-size: 15px; font-weight: 600; color: var(--mf-ink, #1D1D1B); }
body.merchado-checkout-shell .mc-address-card__line { font-family: 'Inter', sans-serif; font-size: 14px; font-weight: 400; color: #5C5C58; line-height: 20px; }
body.merchado-checkout-shell button.mc-address-other {
	display: inline-flex !important; align-items: center !important; gap: 8px !important;
	background: transparent !important; border: 0 !important; box-shadow: none !important;
	padding: 0 !important; min-height: 0 !important; height: auto !important; width: auto !important;
	cursor: pointer !important; font-family: 'Inter', sans-serif !important; font-size: 14px !important; font-weight: 500 !important;
	color: var(--mf-rust, #9E491D) !important; margin: 0 0 6px 0 !important;
}
@media (max-width: 600px) {
	body.merchado-checkout-shell .mc-address-choose { grid-template-columns: 1fr; }
}

/* ============ Blok D / D3 — beheer-paneel (slide-in) ============ */
.mc-addr-manage-link { display: inline-flex; align-items: center; background: transparent !important; border: 0 !important; box-shadow: none !important; padding: 0 !important; min-height: 0 !important; margin: 6px 0 0 0; cursor: pointer; font-family: 'Inter', sans-serif; font-size: 13px !important; line-height: 1.2 !important; font-weight: 500 !important; color: var(--mf-rust, #9E491D) !important; text-decoration: underline; text-underline-offset: 3px; }
.mc-addrpanel-backdrop { position: fixed; inset: 0; background: rgba(29,29,27,0.45); z-index: 100000; }
.mc-addrpanel { position: fixed; top: 0; right: 0; bottom: 0; width: 480px; max-width: 92vw; background: #FFFFFF; z-index: 100001; display: flex; flex-direction: column; box-shadow: -12px 0 40px rgba(0,0,0,0.12); overflow: hidden; }
/* Verberg paneel + backdrop standaard; .mc-addrpanel's display:flex zou anders het UA [hidden] overrulen → paneel altijd open. */
.mc-addrpanel[hidden], .mc-addrpanel-backdrop[hidden] { display: none !important; }
.mc-addrpanel__head { display: flex; flex-direction: row; align-items: flex-start; justify-content: space-between; gap: 16px; padding: 22px 28px 18px; border-bottom: 1px solid #ECE9DD; }
.mc-addrpanel__head-text { display: flex; flex-direction: column; gap: 3px; }
.mc-addrpanel__title { font-family: 'Inter', sans-serif; font-size: 19px; font-weight: 600; color: #1D1D1B; }
.mc-addrpanel__sub { font-family: 'Inter', sans-serif; font-size: 13px; color: #8A8A86; }
.mc-addrpanel__close { width: 34px !important; height: 34px !important; min-height: 0 !important; border-radius: 50% !important; border: 0 !important; background: #F5F1E8 !important; box-shadow: none !important; display: flex; align-items: center; justify-content: center; cursor: pointer; color: #1D1D1B !important; flex-shrink: 0; padding: 0 !important; }
.mc-addrpanel__body { flex: 1; overflow-y: auto; padding: 22px 28px 32px; display: flex; flex-direction: column; gap: 26px; }
.mc-addrpanel__section { display: flex; flex-direction: column; gap: 12px; }
.mc-addrpanel__legend { font-family: 'Inter', sans-serif; font-size: 12px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: #9E491D; }
.mc-addrpanel__contact { display: flex; flex-direction: column; gap: 4px; background: #F8F6F0; border-radius: 12px; padding: 16px 18px; }
.mc-addrpanel__contact-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.mc-addrpanel__contact-name { font-family: 'Inter', sans-serif; font-size: 15px; font-weight: 600; color: #1D1D1B; }
.mc-addrpanel__contact-line { font-family: 'Inter', sans-serif; font-size: 14px; color: #5C5C58; }
.mc-addrpanel__list { display: flex; flex-direction: column; gap: 10px; }
.mc-addrpanel__empty { font-family: 'Inter', sans-serif; font-size: 14px; color: #8A8A86; margin: 0; }
.mc-addr-row { display: flex; flex-direction: row; align-items: flex-start; justify-content: space-between; gap: 12px; border: 1px solid #ECE9DD; border-radius: 12px; padding: 14px 16px; }
.mc-addr-row__info { display: flex; flex-direction: column; gap: 3px; }
.mc-addr-row__title { display: flex; align-items: center; gap: 8px; }
.mc-addr-row__label { font-family: 'Inter', sans-serif; font-size: 15px; font-weight: 600; color: #1D1D1B; }
.mc-addr-row__badge { font-family: 'Inter', sans-serif; font-size: 11px; font-weight: 600; color: #9E491D; background: #F3E6DD; padding: 2px 8px; border-radius: 9999px; white-space: nowrap; }
.mc-addr-row__line { font-family: 'Inter', sans-serif; font-size: 14px; color: #5C5C58; }
.mc-addr-row__actions { display: flex; flex-direction: row; align-items: center; gap: 12px; flex-shrink: 0; }
.mc-addr-link { background: transparent !important; border: 0 !important; box-shadow: none !important; padding: 0 !important; min-height: 0 !important; height: auto !important; cursor: pointer; font-family: 'Inter', sans-serif; font-size: 13px !important; line-height: 1.2 !important; font-weight: 500 !important; color: #9E491D !important; }
.mc-addr-link--muted { color: #A8A39A !important; }
.mc-addrpanel__form { display: flex; flex-direction: column; gap: 12px; border: 1.5px solid #1D1D1B; border-radius: 12px; padding: 18px; }
.mc-addrpanel__form-head { display: flex; align-items: center; gap: 8px; }
.mc-addrpanel__form-title { font-family: 'Inter', sans-serif; font-size: 15px; font-weight: 600; color: #1D1D1B; }
.mc-addrpanel__field { display: flex; flex-direction: column; gap: 6px; }
.mc-addrpanel__field > span { font-family: 'Inter', sans-serif; font-size: 12px; font-weight: 500; color: #5C5C58; }
.mc-addrpanel__field input { padding: 11px 14px !important; border: 1px solid #D8D3C6 !important; border-radius: 10px !important; font-family: 'Inter', sans-serif; font-size: 14px; color: #1D1D1B; background: #FFFFFF !important; }
.mc-addrpanel__row { display: flex; flex-direction: row; gap: 10px; }
.mc-addrpanel__field--grow { flex: 1; }
.mc-addrpanel__field--nr { width: 78px; }
.mc-addrpanel__field--toev { width: 78px; }
.mc-addrpanel__field--pc { width: 130px; }
.mc-addrpanel__check { display: flex; flex-direction: row; align-items: center; gap: 8px; font-family: 'Inter', sans-serif; font-size: 13px; color: #5C5C58; cursor: pointer; }
.mc-addrpanel__form-actions { display: flex; align-items: center; gap: 14px; }
.mc-addrpanel__save { display: inline-flex !important; align-items: center; justify-content: center; padding: 11px 22px !important; min-height: 0 !important; background: #1D1D1B !important; color: #FFFFFF !important; border: 0 !important; border-radius: 9999px !important; box-shadow: none !important; cursor: pointer; font-family: 'Inter', sans-serif; font-size: 14px !important; line-height: 1.2 !important; font-weight: 600 !important; }
.mc-addrpanel__error { font-family: 'Inter', sans-serif; font-size: 13px; color: #B3261E; }
@media (max-width: 520px) { .mc-addrpanel { width: 100%; max-width: 100%; } }

/* ============ Toggle ============ */
body.merchado-checkout-shell .mc-toggle {
	padding: 16px 18px !important;
	background: var(--mf-cream) !important;
	border-radius: 12px !important;
	display: block !important;
}
body.merchado-checkout-shell .mc-toggle__label {
	display: block !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	color: var(--mf-ink) !important;
	margin: 0 0 10px 0 !important;
}
body.merchado-checkout-shell .mc-toggle--locked .mc-toggle__hint {
	margin: 0 !important;
	font-size: 12px !important;
	line-height: 18px !important;
	color: var(--mf-ink) !important;
	opacity: 0.7 !important;
}

/* ============ Review (order summary) ============ */
body.merchado-checkout-shell .mc-review {
	display: flex;
	flex-direction: column;
	gap: 0;
}
body.merchado-checkout-shell .mc-review__items {
	display: flex;
	flex-direction: column;
	gap: 0;
}
body.merchado-checkout-shell .mc-review__item {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	gap: 12px;
	padding: 14px 0;
	border-bottom: 1px solid var(--mf-border);
}
body.merchado-checkout-shell .mc-review__item:first-child { padding-top: 0; }
body.merchado-checkout-shell .mc-review__thumb {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 56px;
	background: var(--mf-cream);
	border-radius: 8px;
	flex-shrink: 0;
	overflow: visible;
}
body.merchado-checkout-shell .mc-review__thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 8px;
}
body.merchado-checkout-shell .mc-review__thumb-initials {
	font-family: 'Inter', sans-serif;
	font-size: 16px;
	font-weight: 600;
	color: var(--mf-rust);
}
body.merchado-checkout-shell .mc-review__badge {
	position: absolute;
	top: -7px;
	right: -7px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 20px;
	height: 20px;
	padding: 0 6px;
	background: var(--mf-ink);
	color: #fff;
	font-family: 'Inter', sans-serif;
	font-size: 10px;
	font-weight: 600;
	border-radius: 9999px;
}
body.merchado-checkout-shell .mc-review__info {
	display: flex;
	flex-direction: column;
	gap: 2px;
	flex: 1;
	min-width: 0;
}
body.merchado-checkout-shell .mc-review__name {
	font-size: 13px;
	font-weight: 600;
	color: var(--mf-ink);
	line-height: 18px;
}
body.merchado-checkout-shell .mc-review__variant {
	font-size: 11px;
	color: var(--mf-ink);
	opacity: 0.65;
	line-height: 15px;
}
body.merchado-checkout-shell .mc-review__prices {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 2px;
	white-space: nowrap;
}
body.merchado-checkout-shell .mc-review__total {
	font-size: 13px;
	font-weight: 600;
	color: var(--mf-ink);
}
body.merchado-checkout-shell .mc-review__per-unit {
	font-size: 11px;
	color: var(--mf-ink);
	opacity: 0.6;
}
body.merchado-checkout-shell .mc-review__totals {
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding: 16px 0 0 0;
}
body.merchado-checkout-shell .mc-review__row {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: baseline;
	font-size: 12px;
	color: var(--mf-ink);
}
body.merchado-checkout-shell .mc-review__row--muted {
	color: var(--mf-ink);
	opacity: 0.65;
}
body.merchado-checkout-shell .mc-review__row--coupon { color: var(--mf-rust); }
body.merchado-checkout-shell .mc-review__value--accent { color: var(--mf-rust); font-weight: 500; }
body.merchado-checkout-shell .mc-review__divider {
	height: 1px;
	background: var(--mf-border);
	margin: 4px 0;
}
body.merchado-checkout-shell .mc-review__row--total {
	align-items: baseline;
	margin-top: 2px;
}
body.merchado-checkout-shell .mc-review__total-label {
	font-family: 'Inter', sans-serif;
	font-size: 14px;
	font-weight: 600;
	color: var(--mf-ink);
}
body.merchado-checkout-shell .mc-review__total-amount {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 2px;
}
body.merchado-checkout-shell .mc-review__total-amount .woocommerce-Price-amount,
body.merchado-checkout-shell .mc-review__total-amount bdi {
	font-family: 'Inter', sans-serif;
	font-size: 16px !important;
	font-weight: 700 !important;
	color: var(--mf-ink) !important;
	letter-spacing: -0.02em !important;
	line-height: 1.1 !important;
}
body.merchado-checkout-shell .mc-review__total-excl {
	font-size: 10px;
	color: var(--mf-ink);
	opacity: 0.6;
}

/* Hide WC default review-order table als ze er toch nog inkomen */
body.merchado-checkout-shell .woocommerce-checkout-review-order-table {
	display: none !important;
}

/* ============ Quote-mode review (geen prijzen) ============ */
body.merchado-checkout-shell .mc-review__value--muted {
	color: var(--mf-ink) !important;
	opacity: 0.6 !important;
	font-style: italic !important;
}
body.merchado-checkout-shell .mc-review__quote-note {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	margin: 8px 0 0 0;
	padding: 14px 16px;
	background: var(--mf-cream);
	border-radius: 10px;
}
body.merchado-checkout-shell .mc-review__quote-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	background: #fff;
	color: var(--mf-rust);
	border-radius: 50%;
	flex-shrink: 0;
	margin-top: 1px;
}
body.merchado-checkout-shell .mc-review__quote-text {
	display: flex;
	flex-direction: column;
	gap: 2px;
}
body.merchado-checkout-shell .mc-review__quote-text strong {
	font-size: 13px;
	font-weight: 600;
	color: var(--mf-ink);
}
body.merchado-checkout-shell .mc-review__quote-text span {
	font-size: 12px;
	line-height: 1.5;
	color: var(--mf-ink);
	opacity: 0.75;
}

/* ============ Summary (geen card-rand in design — gewoon kolom-content) ============ */
body.merchado-checkout-shell .mc-summary {
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
}
body.merchado-checkout-shell .mc-summary__head {
	display: flex !important;
	justify-content: space-between !important;
	align-items: baseline !important;
	margin: 0 0 14px 0 !important;
}
body.merchado-checkout-shell .mc-summary__title {
	font-size: 14px !important;
	font-weight: 600 !important;
	color: var(--mf-ink) !important;
	line-height: 1.2 !important;
}
body.merchado-checkout-shell a.mc-summary__edit {
	font-size: 12px !important;
	font-weight: 500 !important;
	color: var(--mf-rust) !important;
	text-decoration: underline !important;
	line-height: 1.2 !important;
	letter-spacing: 0 !important;
}
body.merchado-checkout-shell a.mc-summary__edit:hover {
	color: var(--mf-rust-hover) !important;
}

/* ============ Kortingscode-rij in sidebar ============ */
body.merchado-checkout-shell .mc-coupon {
	display: flex !important;
	gap: 8px !important;
	margin: 14px 0 6px 0 !important;
}
body.merchado-checkout-shell .mc-coupon input[type="text"] {
	flex: 1 1 auto !important;
	border-radius: 9999px !important;
	border: 1px solid var(--mf-border-strong) !important;
	padding: 11px 18px !important;
	font-family: 'Inter', sans-serif !important;
	font-size: 13px !important;
	background: #fff !important;
	color: var(--mf-ink) !important;
	min-width: 0 !important;
	box-shadow: none !important;
}
body.merchado-checkout-shell .mc-coupon__apply {
	flex: 0 0 auto !important;
	background: #fff !important;
	color: var(--mf-ink) !important;
	border: 1px solid var(--mf-ink) !important;
	border-radius: 9999px !important;
	padding: 11px 20px !important;
	font-family: 'Inter', sans-serif !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	cursor: pointer !important;
}
body.merchado-checkout-shell .mc-coupon__apply:hover {
	background: var(--mf-ink) !important;
	color: #fff !important;
}

/* ============ Payment section (in left column) ============ */
body.merchado-checkout-shell .mc-section--payment { margin-top: 0 !important; }
body.merchado-checkout-shell .mc-section--payment > h3 { margin: 0 0 12px 0 !important; }
body.merchado-checkout-shell .mc-checkout #payment,
body.merchado-checkout-shell .mc-checkout .mc-payment {
	background: transparent !important;
	border-radius: 0 !important;
	padding: 0 !important;
	box-shadow: none !important;
}
body.merchado-checkout-shell .mc-checkout #payment::before,
body.merchado-checkout-shell .mc-checkout .mc-payment::before { display: none !important; }
body.merchado-checkout-shell .mc-checkout #payment ul.payment_methods,
body.merchado-checkout-shell .mc-checkout .mc-payment ul.payment_methods {
	padding: 0 !important;
	border: 1px solid var(--mf-border-strong) !important;
	border-radius: 12px !important;
	overflow: hidden !important;
	background: #fff !important;
	margin: 0 0 18px 0 !important;
	list-style: none !important;
}
body.merchado-checkout-shell .mc-checkout #payment ul.payment_methods li,
body.merchado-checkout-shell .mc-checkout .mc-payment ul.payment_methods li {
	background: #fff !important;
	border: 0 !important;
	border-bottom: 1px solid var(--mf-border, #ECE7D8) !important;
	border-radius: 0 !important;
	padding: 4px 18px !important;
	margin: 0 !important;
	list-style: none !important;
	transition: background .15s ease !important;
}
body.merchado-checkout-shell .mc-checkout #payment ul.payment_methods li:last-child,
body.merchado-checkout-shell .mc-checkout .mc-payment ul.payment_methods li:last-child { border-bottom: 0 !important; }
body.merchado-checkout-shell .mc-checkout #payment ul.payment_methods li::before,
body.merchado-checkout-shell .mc-checkout .mc-payment ul.payment_methods li::before { display: none !important; }
body.merchado-checkout-shell .mc-checkout #payment ul.payment_methods li.selected,
body.merchado-checkout-shell .mc-checkout #payment ul.payment_methods li:has(input[type=radio]:checked) {
	background: var(--mf-cream-soft, #FBF7F0) !important;
}
body.merchado-checkout-shell .mc-checkout #payment ul.payment_methods li label,
body.merchado-checkout-shell .mc-checkout .mc-payment ul.payment_methods li label {
	font-weight: 600 !important;
	color: var(--mf-ink) !important;
	font-size: 14px !important;
	margin: 0 !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 10px !important;
	cursor: pointer !important;
}
body.merchado-checkout-shell .mc-checkout #payment ul.payment_methods li input[type=radio],
body.merchado-checkout-shell .mc-checkout .mc-payment ul.payment_methods li input[type=radio] {
	margin: 0 6px 0 0 !important;
	width: 16px !important;
	height: 16px !important;
	accent-color: var(--mf-ink) !important;
}
body.merchado-checkout-shell .mc-checkout #payment .payment_box,
body.merchado-checkout-shell .mc-checkout .mc-payment .payment_box {
	background: transparent !important;
	margin: 10px 0 0 0 !important;
	padding: 0 !important;
	font-size: 12px !important;
	color: var(--mf-ink) !important;
	opacity: 0.7 !important;
	line-height: 1.5 !important;
}
body.merchado-checkout-shell .mc-checkout #payment .payment_box::before,
body.merchado-checkout-shell .mc-checkout .mc-payment .payment_box::before { display: none !important; }
body.merchado-checkout-shell .mc-checkout #payment .payment_box p { margin: 0 !important; }

/* Gateway-logo's (iDEAL/VISA/MC etc.) zoals in design rechts naast label */
body.merchado-checkout-shell .mc-checkout #payment ul.payment_methods li label img {
	max-height: 18px !important;
	width: auto !important;
	margin: 0 0 0 8px !important;
	float: none !important;
	border: 0 !important;
	box-shadow: none !important;
	padding: 0 !important;
	background: transparent !important;
}

/* R3: betaal-iconen rechts uitlijnen + B2B-badge voor "Op factuur" (mockup). */
body.merchado-checkout-shell .mc-checkout #payment ul.payment_methods li,
body.merchado-checkout-shell .mc-checkout .mc-payment ul.payment_methods li {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: center !important;
}
body.merchado-checkout-shell .mc-checkout #payment ul.payment_methods li label { flex: 1 1 auto !important; padding: 6px 0 !important; } /* slankere cards (was 18px label-padding) */
body.merchado-checkout-shell .mc-checkout #payment ul.payment_methods li label img:first-of-type { margin-left: auto !important; }
body.merchado-checkout-shell .mc-checkout #payment ul.payment_methods li .payment_box { flex-basis: 100% !important; }
body.merchado-checkout-shell .mc-checkout #payment ul.payment_methods li.payment_method_bacs label::after {
	content: "B2B";
	margin-left: auto;
	background: var(--mf-ink, #1D1D1B);
	color: #fff;
	font-size: 9px;
	font-weight: 700;
	letter-spacing: .04em;
	padding: 3px 7px;
	border-radius: 4px;
}

/* ============ Place order button ============ */
body.merchado-checkout-shell .mc-checkout .place-order {
	margin: 12px 0 0 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	width: 100% !important;
	float: none !important;
}
body.merchado-checkout-shell .mc-checkout #place_order,
body.merchado-checkout-shell .mc-checkout .button.alt,
body.merchado-checkout-shell .mc-checkout .mc-place-order {
	background: var(--mf-ink) !important;
	color: #fff !important;
	border-radius: var(--mf-radius-input) !important;
	padding: 18px 36px !important;
	font-family: 'Inter', sans-serif !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	border: 0 !important;
	width: 100% !important;
	margin: 4px 0 0 0 !important;
	text-shadow: none !important;
	box-shadow: none !important;
	cursor: pointer !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	line-height: 1 !important;
}
body.merchado-checkout-shell .mc-checkout #place_order:hover,
body.merchado-checkout-shell .mc-checkout .button.alt:hover { background: #000 !important; }
/* "Liever eerst een offerte" — secundaire CTA onderaan de sidebar; zet de
   checkout om naar offerte-modus (?flow=offerte → is_quote_mode). */
body.merchado-checkout-shell .mc-checkout__sidebar .mc-quote-switch {
	display: block;
	width: 100%;
	margin: 16px 0 0;
	padding: 14px 24px;
	box-sizing: border-box;
	text-align: center;
	background: transparent;
	border: 1.5px solid var(--mf-ink);
	border-radius: 9999px;
	color: var(--mf-ink);
	font-family: 'Inter', sans-serif;
	font-size: 15px;
	font-weight: 600;
	line-height: 1;
	text-decoration: none;
	transition: background .15s ease, color .15s ease;
}
body.merchado-checkout-shell .mc-checkout__sidebar .mc-quote-switch:hover,
body.merchado-checkout-shell .mc-checkout__sidebar .mc-quote-switch:focus {
	background: var(--mf-ink) !important;
	color: #fff !important;
}
/* Terms-checkbox boven place-order */
body.merchado-checkout-shell .mc-checkout .woocommerce-terms-and-conditions-wrapper {
	margin: 0 0 12px 0 !important;
	font-size: 12px !important;
}
body.merchado-checkout-shell .mc-checkout .woocommerce-form__label-for-checkbox {
	display: inline-flex !important;
	align-items: flex-start !important;
	gap: 8px !important;
	margin: 0 !important;
	font-size: 12px !important;
	font-weight: 500 !important;
	cursor: pointer !important;
}
body.merchado-checkout-shell .mc-checkout .woocommerce-form__label-for-checkbox input[type=checkbox] {
	margin: 2px 0 0 0 !important;
	accent-color: var(--mf-ink) !important;
}

/* WC privacy-policy disclaimer onder de payment-methods. Theme/Blocksy stylet
   het anchor default groter dan de paragraph — forceer consistent klein/regular. */
body.merchado-checkout-shell .mc-checkout .woocommerce-privacy-policy-text,
body.merchado-checkout-shell .mc-checkout .woocommerce-privacy-policy-text p {
	font-family: 'Inter', sans-serif !important;
	font-size: 12px !important;
	font-weight: 400 !important;
	line-height: 1.5 !important;
	color: rgba(29, 29, 27, 0.65) !important;
	margin: 0 0 14px 0 !important;
}
body.merchado-checkout-shell .mc-checkout .woocommerce-privacy-policy-text a,
body.merchado-checkout-shell .mc-checkout .woocommerce-privacy-policy-link {
	font-family: inherit !important;
	font-size: inherit !important;
	font-weight: 500 !important;
	color: var(--mf-ink) !important;
	text-decoration: underline !important;
	text-decoration-thickness: 1px !important;
	text-underline-offset: 3px !important;
}

/* ============ Help + trust block (sidebar) ============ */
body.merchado-checkout-shell .mc-help {
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
	padding: 16px 0 0 0 !important;
	border-top: 1px solid var(--mf-border) !important;
	margin: 6px 0 0 0 !important;
}
body.merchado-checkout-shell .mc-help__icon {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 36px !important;
	height: 36px !important;
	background: var(--mf-cream) !important;
	border-radius: 50% !important;
	flex-shrink: 0 !important;
}
body.merchado-checkout-shell .mc-help__text {
	display: flex !important;
	flex-direction: column !important;
	gap: 1px !important;
}
body.merchado-checkout-shell .mc-help__small {
	font-size: 11px !important;
	color: var(--mf-ink) !important;
	opacity: 0.65 !important;
	line-height: 1.3 !important;
}
body.merchado-checkout-shell .mc-help__phone {
	font-size: 14px !important;
	font-weight: 600 !important;
	color: var(--mf-ink) !important;
	line-height: 1.2 !important;
}
body.merchado-checkout-shell .mc-help__hours {
	font-size: 11px !important;
	color: var(--mf-ink) !important;
	opacity: 0.55 !important;
	line-height: 1.3 !important;
}
body.merchado-checkout-shell .mc-trust {
	display: flex !important;
	align-items: center !important;
	gap: 10px !important;
	padding: 12px 0 0 0 !important;
	border-top: 1px solid var(--mf-border) !important;
	margin: 4px 0 0 0 !important;
}
body.merchado-checkout-shell .mc-trust__stars {
	display: inline-flex !important;
	gap: 1px !important;
	color: var(--mf-rust) !important;
}
body.merchado-checkout-shell .mc-trust__stars svg { display: block !important; }
body.merchado-checkout-shell .mc-trust__score {
	font-size: 13px !important;
	font-weight: 700 !important;
	color: var(--mf-ink) !important;
}
body.merchado-checkout-shell .mc-trust__count {
	font-size: 12px !important;
	color: var(--mf-ink) !important;
	opacity: 0.7 !important;
}

/* ============ Misc WC tweaks ============ */
.mc-checkout .woocommerce-input-wrapper { width: 100%; display: block; }
.mc-checkout .required { color: var(--mf-rust) !important; text-decoration: none !important; }
.mc-checkout #ship-to-different-address {
	margin-top: 12px !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
}
.mc-checkout #ship-to-different-address label {
	margin: 0 !important;
	font-size: 13px !important;
	font-weight: 500 !important;
}
.mc-checkout .woocommerce-shipping-fields h3#ship-to-different-address {
	border: 0 !important;
	padding: 0 !important;
	margin: 0 0 12px 0 !important;
}
.mc-checkout .woocommerce-form__label-for-checkbox input[type=checkbox] {
	accent-color: var(--mf-ink) !important;
}
.mc-checkout .woocommerce-info,
.mc-checkout .woocommerce-message,
.mc-checkout .woocommerce-error {
	background: var(--mf-cream) !important;
	border: 0 !important;
	border-left: 3px solid var(--mf-rust) !important;
	border-radius: 8px !important;
	padding: 12px 16px !important;
	color: var(--mf-ink) !important;
	font-size: 13px !important;
}
.mc-checkout .woocommerce-info::before,
.mc-checkout .woocommerce-message::before,
.mc-checkout .woocommerce-error::before { display: none !important; }

/* ============ Tablet / Mobile ============ */
@media (max-width: 1024px) {
	:root { --mf-shell-pad-x: 28px; }
	.mc-shell__main { padding: 32px var(--mf-shell-pad-x) 56px var(--mf-shell-pad-x); }
	body.merchado-checkout-shell .mc-checkout__grid { grid-template-columns: 1fr !important; gap: 28px !important; }
	body.merchado-checkout-shell::before { display: none !important; } /* geen bleed-paneel bij gestapelde kolommen */
	body.merchado-checkout-shell .mc-checkout__sidebar {
		position: static !important;
		width: 100% !important;
		background: var(--mf-panel, #F7F5F0) !important;
		border: 1px solid var(--mf-border-strong) !important;
		border-radius: 14px !important;
		padding: 22px 20px !important;
	}
	.mc-shell__header-inner { padding: 14px var(--mf-shell-pad-x); gap: 16px; }
}
@media (max-width: 640px) {
	:root { --mf-shell-pad-x: 18px; }
	.mc-shell__header-inner {
		padding: 12px var(--mf-shell-pad-x);
		flex-wrap: wrap;
		gap: 10px;
	}
	.mc-shell__steps { order: 3; width: 100%; justify-content: center; gap: 8px; }
	.mc-step__label { display: none; }
	.mc-step__sep { width: 14px; }
	.mc-shell__main { padding: 24px var(--mf-shell-pad-x) 40px var(--mf-shell-pad-x); }
	body.merchado-checkout-shell .mc-hero__title { font-size: 22px !important; line-height: 28px !important; }
	body.merchado-checkout-shell .mc-hero__lead { font-size: 13px !important; line-height: 20px !important; }
	.mc-checkout .form-row-first,
	.mc-checkout .form-row-last { width: 100% !important; float: none !important; margin-right: 0 !important; }
}

/* Offerte-modus: geen betaalkeuze tonen; er is maar 1 (verborgen, aangevinkte) methode.
   Radio blijft in de DOM zodat payment_method meepost, ook na WC's AJAX-herrender. */
body.merchado-checkout-shell .mc-checkout--quote #payment ul.payment_methods,
body.merchado-checkout-shell .mc-checkout--quote .mc-payment ul.payment_methods {
	display: none !important;
}
body.merchado-checkout-shell .mc-checkout--quote .mc-section--payment {
	margin-top: 8px;
}
