/*
 * Coșul (bonul de comandă) și checkout-ul în trei pași. Se încarcă doar pe paginile
 * de coș și de checkout. Blocurile WooCommerce își aduc stilurile lor; aici le aducem
 * în sistemul „Panoul din atelier”: câmpuri de 44px cu contur Oțel și eticheta deasupra,
 * sumar pe Tablă, un singur roșu pentru total și acțiune.
 */

/* ---------- Șina de pași ---------- */
.zbang-steps {
	margin: 0 0 var(--wp--preset--spacing--3);
}
.zbang-steps__list {
	display: flex;
	margin: 0;
	padding: 0;
	list-style: none;
}
.zbang-steps__item {
	display: flex;
	flex: 1;
	align-items: center;
	gap: var(--wp--preset--spacing--2);
	min-width: 0;
	color: var(--wp--preset--color--otel);
	font-weight: 600;
}
.zbang-steps__item:not(:last-child)::after {
	content: "";
	flex: 1;
	height: 1px;
	margin: 0 var(--wp--preset--spacing--3);
	background: var(--wp--preset--color--black);
	opacity: 0.25;
}
.zbang-steps__item:last-child {
	flex: none;
}
.zbang-steps__link {
	display: inline-flex;
	align-items: center;
	gap: var(--wp--preset--spacing--2);
	min-height: 44px;
	color: inherit;
	text-decoration: none;
}
.zbang-steps__link:hover .zbang-steps__label {
	text-decoration: underline;
}
.zbang-steps__mark,
.zbang-step-head__mark {
	display: inline-flex;
	flex: none;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: 32px;
	height: 32px;
	border: 1px solid var(--wp--preset--color--otel);
	border-radius: 50%;
	background: var(--wp--preset--color--white);
	font-size: var(--wp--preset--font-size--info);
	font-weight: 700;
}
.zbang-steps__item.is-current {
	color: var(--wp--preset--color--black);
}
.zbang-steps__item.is-current .zbang-steps__mark {
	border-color: var(--wp--preset--color--black);
	background: var(--wp--preset--color--black);
	color: var(--wp--preset--color--white);
}
/* Pas făcut: cercul Oțel cu o bifă desenată, în locul cifrei */
.zbang-steps__item.is-done .zbang-steps__mark {
	position: relative;
	border-color: var(--wp--preset--color--otel);
	background: var(--wp--preset--color--otel);
	color: transparent;
}
.zbang-steps__item.is-done .zbang-steps__mark::after {
	content: "";
	position: absolute;
	top: 9px;
	left: 11px;
	width: 7px;
	height: 12px;
	border: solid var(--wp--preset--color--white);
	border-width: 0 2px 2px 0;
	transform: rotate(45deg);
}

/* ---------- Câmpuri: eticheta deasupra, 44px, contur Oțel ---------- */
.zbang-order .wc-block-components-text-input,
.zbang-order .wc-blocks-components-select,
.zbang-order .wc-block-components-country-input,
.zbang-order .wc-block-components-state-input {
	margin-top: 12px !important;
}
.zbang-order .wc-block-components-text-input {
	display: flex;
	flex-direction: column-reverse;
}
.zbang-order .wc-block-components-text-input label,
.zbang-order .wc-blocks-components-select__label {
	position: static !important;
	margin: 0 0 var(--wp--preset--spacing--1) !important;
	transform: none !important;
	max-width: none !important;
	color: var(--wp--preset--color--black) !important;
	font-size: var(--wp--preset--font-size--caption) !important;
	font-weight: 600;
	line-height: 1.3 !important;
}
.zbang-order .wc-block-components-text-input input,
.zbang-order .wc-blocks-components-select__select,
.zbang-order .wc-block-components-textarea {
	box-sizing: border-box;
	height: 44px !important;
	min-height: 44px;
	padding: 0 var(--wp--preset--spacing--3) !important;
	border: 1px solid var(--wp--preset--color--otel) !important;
	border-radius: var(--wp--custom--radius--sm) !important;
	background: var(--wp--preset--color--white) !important;
	color: var(--wp--preset--color--black) !important;
	font-family: var(--wp--preset--font-family--body);
	font-size: var(--wp--preset--font-size--body) !important;
	line-height: 42px !important;
	box-shadow: none !important;
}
.zbang-order .wc-block-components-textarea {
	height: auto !important;
	min-height: 96px;
	padding: var(--wp--preset--spacing--2) var(--wp--preset--spacing--3) !important;
	line-height: 1.5 !important;
}
.zbang-order .wc-blocks-components-select__container {
	display: flex;
	flex-direction: column;
	height: auto !important;
	border: 0 !important;
	background: transparent !important;
}
.zbang-order .wc-blocks-components-select__expand {
	top: auto !important;
	bottom: 10px;
}
.zbang-order .wc-block-components-text-input input:focus,
.zbang-order .wc-blocks-components-select__select:focus {
	border-color: var(--wp--preset--color--black) !important;
	outline: 2px solid var(--wp--preset--color--red) !important;
	outline-offset: 2px;
}
.zbang-order .has-error input,
.zbang-order .has-error select {
	border-color: var(--wp--preset--color--red) !important;
}
.zbang-order .wc-block-components-validation-error {
	color: var(--wp--preset--color--red);
	font-size: var(--wp--preset--font-size--info);
}
.zbang-order .wc-block-components-validation-error svg {
	fill: currentColor;
}
.zbang-order .wc-block-components-checkbox {
	margin-top: var(--wp--preset--spacing--3) !important;
	font-size: var(--wp--preset--font-size--body);
}
.zbang-order .wc-block-components-checkbox__input[type="checkbox"] {
	width: 20px;
	height: 20px;
	border-color: var(--wp--preset--color--otel);
	border-radius: var(--wp--custom--radius--sm);
}

/* ---------- Butoanele de acțiune ---------- */
.zbang-order .wc-block-components-button:not(.is-link),
.zbang-step-next__button {
	min-height: 52px;
	border: 0;
	border-radius: var(--wp--custom--radius--sm) !important;
	background: var(--wp--preset--color--red) !important;
	color: var(--wp--preset--color--white) !important;
	font-family: var(--wp--preset--font-family--body);
	font-size: var(--wp--preset--font-size--body);
	font-weight: 600;
	cursor: pointer;
}
.zbang-step-next__button {
	width: 100%;
}

/* ---------- Checkout: pașii 2 și 3 ---------- */
/* WooCommerce limitează titlul și breadcrumb-ul paginilor de coș la 1000px; aici urmează containerul */
.zbang-order .wc-block-breadcrumbs,
.zbang-order .zbang-order__title {
	max-width: var(--wp--style--global--content-size) !important;
	margin-inline: auto !important;
}
.zbang-checkout-steps {
	display: flex;
	flex-direction: column;
}
.zbang-checkout-steps > * {
	order: 20;
}
.zbang-checkout-steps > .zbang-step-head--1 { order: 1; }
.zbang-checkout-steps > .zbang-step-head--2 { order: 2; }
.zbang-checkout-steps > #contact-fields { order: 3; }
.zbang-checkout-steps > #shipping-fields { order: 4; }
.zbang-checkout-steps > #billing-fields { order: 5; }
.zbang-checkout-steps > .zbang-step-next { order: 6; }
.zbang-checkout-steps > .zbang-step-head--3 { order: 10; }

/* Ce nu ține de pasul curent nu se vede (nici pentru tastatură) */
.zbang-checkout-steps[data-zbang-step="2"] > :not(.zbang-step-head, #contact-fields, #shipping-fields, #billing-fields, .zbang-step-next) {
	display: none !important;
}
.zbang-checkout-steps[data-zbang-step="3"] > :is(#contact-fields, #shipping-fields, #billing-fields, .zbang-step-next) {
	display: none !important;
}
.zbang-checkout-steps[data-zbang-step="3"] .zbang-step-head--2 .zbang-seg {
	display: none;
}

/* Conținutul pasului curent atârnă de cercul lui, cu o linie fină */
.zbang-checkout-steps > :is(#contact-fields, #shipping-fields, #billing-fields, .zbang-step-next),
.zbang-checkout-steps[data-zbang-step="3"] > :not(.zbang-step-head) {
	margin: 0 0 0 15px !important;
	padding: 0 0 var(--wp--preset--spacing--3) calc(var(--wp--preset--spacing--4) + 4px) !important;
	border-left: 1px solid var(--wp--preset--color--tabla);
}
.zbang-checkout-steps > .zbang-step-next {
	padding-top: var(--wp--preset--spacing--3) !important;
	padding-bottom: var(--wp--preset--spacing--4) !important;
}

.zbang-step-head {
	display: grid;
	grid-template-columns: 32px minmax(0, auto) minmax(0, 1fr) auto;
	align-items: center;
	column-gap: var(--wp--preset--spacing--3);
	padding: var(--wp--preset--spacing--2) 0;
}
.zbang-step-head__title {
	margin: 0;
	font-size: 22px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: -0.01em;
}
.zbang-step-head__title:focus {
	outline: none;
}
.zbang-step-head.is-current .zbang-step-head__mark {
	border-color: var(--wp--preset--color--black);
	background: var(--wp--preset--color--black);
	color: var(--wp--preset--color--white);
}
.zbang-step-head.is-done .zbang-step-head__title {
	font-weight: 500;
}
.zbang-step-head.is-done .zbang-step-head__title::after {
	content: ":";
}
.zbang-step-head__summary {
	overflow: hidden;
	font-size: 22px;
	line-height: 1.2;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.zbang-step-head.is-next {
	color: color-mix(in srgb, var(--wp--preset--color--otel) 70%, transparent);
}
.zbang-step-head.is-next .zbang-step-head__mark {
	border-color: currentColor;
}
.zbang-step-head__edit {
	min-height: 44px;
	padding: 0 var(--wp--preset--spacing--1);
	border: 0;
	background: none;
	color: var(--wp--preset--color--black);
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 3px;
	cursor: pointer;
}
.zbang-step-head--2 .zbang-seg {
	grid-column: 2 / -1;
}

/* Comutatorul Persoană fizică / Firmă */
.zbang-seg {
	display: grid;
	grid-template-columns: 1fr 1fr;
	margin-top: var(--wp--preset--spacing--3);
	border: 1px solid var(--wp--preset--color--otel);
	border-radius: var(--wp--custom--radius--sm);
	overflow: hidden;
}
.zbang-seg__option {
	min-height: 44px;
	border: 0;
	background: var(--wp--preset--color--white);
	color: var(--wp--preset--color--black);
	font-family: var(--wp--preset--font-family--body);
	font-size: var(--wp--preset--font-size--body);
	font-weight: 600;
	cursor: pointer;
}
.zbang-seg__option + .zbang-seg__option {
	border-left: 1px solid var(--wp--preset--color--otel);
}
.zbang-seg__option[aria-pressed="true"] {
	background: var(--wp--preset--color--black);
	color: var(--wp--preset--color--white);
}
.zbang-seg__option:focus-visible {
	outline: 2px solid var(--wp--preset--color--red);
	outline-offset: -4px;
}
/* Bifa nativă rămâne sursa datelor; comutatorul o setează prin store */
.zbang-checkout-steps .wc-block-components-address-form__zbang-firma {
	display: none !important;
}

/* Câmpurile de contact, în ordinea comp-ului: firmă, apoi e-mail */
.zbang-checkout-steps #contact.wc-block-components-address-form {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	column-gap: var(--wp--preset--spacing--3);
}
.zbang-checkout-steps #contact.wc-block-components-address-form > * {
	flex: 1 1 100%;
	min-width: 0;
}
.zbang-checkout-steps #contact-fields .wc-block-components-checkout-step__heading,
.zbang-checkout-steps #contact-fields .wc-block-components-checkout-step__description {
	display: none;
}
.zbang-checkout-steps #contact .wc-block-components-address-form__zbang-cui { order: 1; flex: 0 1 280px; }
.zbang-checkout-steps #contact .zbang-anaf { order: 1; flex: 1 1 160px; }
.zbang-checkout-steps #contact .wc-block-components-address-form__zbang-denumire { order: 2; }
.zbang-checkout-steps #contact .wc-block-components-address-form__zbang-reg-com { order: 3; }
.zbang-checkout-steps #contact .wc-block-components-address-form__email { order: 4; }
.zbang-checkout-steps #contact .wc-block-checkout__guest-checkout-notice { order: 5; }
.zbang-checkout-steps #contact .wc-block-components-address-form__zbang-denumire,
.zbang-checkout-steps #contact .wc-block-components-address-form__zbang-reg-com {
	flex: 1 1 calc(50% - var(--wp--preset--spacing--3));
}
.wc-block-checkout__guest-checkout-notice {
	width: 100%;
	margin: var(--wp--preset--spacing--2) 0 0;
	color: var(--wp--preset--color--otel);
	font-size: var(--wp--preset--font-size--info);
}

.zbang-anaf {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	/* butonul începe la înălțimea câmpului CUI, sub eticheta lui */
	margin-top: calc(12px + 1.3em * 0.8125 + var(--wp--preset--spacing--1));
}
@media (max-width: 600px) {
	.zbang-anaf {
		margin-top: var(--wp--preset--spacing--2);
	}
}
.zbang-anaf__button {
	align-self: flex-start;
	min-height: 44px;
	padding: 0 var(--wp--preset--spacing--4);
	border: 0;
	border-radius: var(--wp--custom--radius--sm);
	background: var(--wp--preset--color--black);
	color: var(--wp--preset--color--white);
	font-family: var(--wp--preset--font-family--body);
	font-size: var(--wp--preset--font-size--body);
	font-weight: 700;
	cursor: pointer;
}
.zbang-anaf__button:disabled {
	opacity: 0.6;
	cursor: progress;
}
.zbang-anaf__status {
	margin: var(--wp--preset--spacing--1) 0 0;
	font-size: var(--wp--preset--font-size--info);
	line-height: 1.4;
}
.zbang-anaf__status:empty {
	display: none;
}
.zbang-anaf__status[data-kind="error"] {
	color: var(--wp--preset--color--red);
}

/* Titlurile secțiunilor din WooCommerce: subtitluri discrete în pasul curent */
.zbang-order .wc-block-components-checkout-step__title {
	font-size: var(--wp--preset--font-size--body);
	font-weight: 700;
}
.zbang-order .wc-block-components-checkout-step {
	padding-top: var(--wp--preset--spacing--3) !important;
}
.zbang-order .wc-block-components-checkout-step__container::after {
	display: none;
}

/* Livrare și plată: rânduri cu contur, cel ales cu contur Grafit */
.zbang-order .wc-block-components-radio-control--highlight-checked,
.zbang-order .wc-block-components-radio-control-accordion-option {
	border-radius: var(--wp--custom--radius--sm);
}
.zbang-order .wc-block-components-radio-control__input:checked {
	border-color: var(--wp--preset--color--black);
}
.zbang-order .wc-block-components-radio-control__input:checked::before {
	background: var(--wp--preset--color--black);
}

/* ---------- Sumarul comenzii: panoul Tablă ---------- */
.zbang-order--checkout .wp-block-woocommerce-checkout-order-summary-block {
	padding: var(--wp--preset--spacing--4);
	border: 0 !important;
	border-radius: var(--wp--custom--radius--md);
	background: var(--wp--preset--color--tabla);
}
.zbang-order--checkout .wc-block-components-checkout-order-summary__title-text,
.zbang-order--checkout .wc-block-components-order-summary__button-text {
	font-size: var(--wp--preset--font-size--h-3) !important;
	font-weight: 700;
}
.zbang-order--checkout .wc-block-components-totals-wrapper {
	padding-inline: 0 !important;
	border-color: color-mix(in srgb, var(--wp--preset--color--otel) 30%, transparent) !important;
}
.zbang-order--checkout .wc-block-components-order-summary-item {
	align-items: baseline;
	padding-block: var(--wp--preset--spacing--2) !important;
}
/* Fără poză în sumar; cantitatea rămâne, ca „×2” după nume */
.zbang-order--checkout .wc-block-components-order-summary-item__image {
	width: auto !important;
	margin-right: 0 !important;
}
.zbang-order--checkout .wc-block-components-order-summary-item__image img {
	display: none;
}
.zbang-order--checkout .wc-block-components-order-summary-item__quantity {
	position: static !important;
	order: 2;
	min-width: 0 !important;
	height: auto !important;
	padding: 0 var(--wp--preset--spacing--2) !important;
	border: 0 !important;
	background: none !important;
	box-shadow: none !important;
	color: var(--wp--preset--color--black) !important;
	font-size: var(--wp--preset--font-size--info) !important;
	transform: none !important;
}
.zbang-order--checkout .wc-block-components-order-summary-item__quantity span {
	color: var(--wp--preset--color--black) !important;
}
.zbang-order--checkout .wc-block-components-order-summary-item__quantity span[aria-hidden]::before {
	content: "×";
}
.zbang-order--checkout .wc-block-components-order-summary-item__image {
	order: 2;
	align-self: flex-start;
	height: auto !important;
	min-height: 0 !important;
}
.zbang-order--checkout .wc-block-components-order-summary-item__description {
	order: 1;
	flex: 1;
	padding-left: 0 !important;
}
.zbang-order--checkout .wc-block-components-order-summary-item__total-price {
	order: 3;
}
.zbang-order--checkout .wc-block-components-order-summary-item__description {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: baseline;
	gap: var(--wp--preset--spacing--1) var(--wp--preset--spacing--2);
}
.zbang-order--checkout .wc-block-components-order-summary-item__description .wc-block-components-product-name {
	/* coduri ca HEX/SPLINE/TORX au ~130px: sub 140px codul trece deasupra, fără rupturi în cuvânt */
	flex: 1 1 140px;
	min-width: 140px;
	overflow-wrap: break-word;
	word-break: normal;
	hyphens: none;
	font-size: var(--wp--preset--font-size--body);
	font-weight: 600;
	line-height: 1.3;
}
/* Cuponul se aplică din coș; în checkout sumarul rămâne doar sumar */
.zbang-order--checkout .wp-block-woocommerce-checkout-order-summary-coupon-form-block {
	display: none;
}
.zbang-order--checkout .wc-block-components-order-summary-item__total-price {
	color: var(--wp--preset--color--red);
	font-family: var(--wp--preset--font-family--display);
	font-size: var(--wp--preset--font-size--body) !important;
	font-weight: 700;
	white-space: nowrap;
}
.zbang-order--checkout .wc-block-components-order-summary-item {
	display: flex !important;
	align-items: baseline !important;
	gap: var(--wp--preset--spacing--2);
}
/* Reducerile nu se anunță în sumar: prețul vechi și „Salvează” cer Omnibus, care e pe fișa produsului */
.zbang-order :is(.wc-block-components-order-summary-item, .wc-block-cart-items__row) :is(.wc-block-components-product-price__regular, .wc-block-components-sale-badge, .wc-block-components-product-metadata) {
	display: none !important;
}
.zbang-order--checkout .wc-block-components-order-summary-item__individual-prices {
	display: none;
}
.zbang-order .wc-block-components-totals-footer-item {
	align-items: baseline;
}
.zbang-order .wc-block-components-totals-footer-item .wc-block-components-totals-item__label {
	color: var(--wp--preset--color--black);
	font-size: var(--wp--preset--font-size--h-3);
	font-weight: 700;
}
.zbang-order .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
	color: var(--wp--preset--color--red);
	font-family: var(--wp--preset--font-family--display);
	font-size: var(--wp--preset--font-size--h-3);
	font-weight: 800;
}

/* ---------- Coșul: bonul de comandă ---------- */
.zbang-order__title {
	margin-block: var(--wp--preset--spacing--2) var(--wp--preset--spacing--4) !important;
}
.zbang-order--cart .wc-block-cart {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) minmax(0, 440px);
	grid-template-areas:
		"main main"
		"coupon subtotal"
		"back total"
		". submit";
	column-gap: var(--wp--preset--spacing--6);
	align-items: start;
}
.zbang-order--cart .wc-block-cart__main { grid-area: main; }
.zbang-order--cart .wc-block-cart__sidebar,
.zbang-order--cart .wp-block-woocommerce-cart-order-summary-block {
	display: contents !important;
}
.zbang-order--cart .wp-block-woocommerce-cart-order-summary-coupon-form-block {
	grid-area: coupon;
	margin-top: var(--wp--preset--spacing--4);
	border: 0 !important;
}
.zbang-order--cart .wp-block-woocommerce-cart-order-summary-totals-block {
	grid-area: subtotal;
	margin-top: var(--wp--preset--spacing--4);
}
.zbang-order--cart .wp-block-woocommerce-cart-order-summary-block > .wc-block-components-totals-wrapper:not(.wp-block-woocommerce-cart-order-summary-coupon-form-block) {
	grid-area: total;
}
.zbang-order--cart .wc-block-cart__payment-options {
	display: none;
}
.zbang-order--cart .wc-block-cart__submit {
	grid-area: submit;
}
.zbang-cart-back {
	grid-area: back;
	align-self: start;
	justify-self: start;
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	color: var(--wp--preset--color--black);
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 3px;
}
/* Câmpul de reducere, deschis: câmp de 44px și „Aplică” Grafit */
.zbang-order--cart .wc-block-components-totals-coupon .wc-block-components-panel__button {
	margin: 0 0 var(--wp--preset--spacing--2) !important;
	padding: 0 !important;
	font-size: var(--wp--preset--font-size--caption) !important;
	font-weight: 600;
	pointer-events: none;
}
.zbang-order--cart .wc-block-components-totals-coupon .wc-block-components-panel__button-icon {
	display: none;
}
.zbang-order .wc-block-components-totals-coupon__form {
	display: flex;
	gap: var(--wp--preset--spacing--2);
	max-width: 440px;
}
.zbang-order .wc-block-components-totals-coupon__form .wc-block-components-text-input {
	flex: 1 1 auto;
	min-width: 0;
	margin-top: 0 !important;
}
.zbang-order .wc-block-components-totals-coupon__form .wc-block-components-text-input input {
	width: 100%;
}
.zbang-order .wc-block-components-totals-coupon__form .wc-block-components-text-input label {
	position: absolute !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip-path: inset(50%);
}
.zbang-order .wc-block-components-totals-coupon__form .wc-block-components-totals-coupon__button.wc-block-components-button {
	min-height: 44px !important;
	padding: 0 var(--wp--preset--spacing--4) !important;
	background: var(--wp--preset--color--black) !important;
	font-size: var(--wp--preset--font-size--body) !important;
}
/* Totalul bonului: etichetă Grafit, sumă roșie mare */
.zbang-order--cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__label {
	color: var(--wp--preset--color--black);
	font-size: var(--wp--preset--font-size--h-3);
}
.zbang-order--cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
	font-size: var(--wp--preset--font-size--h-3);
}
.zbang-order .wc-block-components-totals-item {
	font-size: var(--wp--preset--font-size--body);
}
.zbang-order--cart .wc-block-cart__main {
	width: 100% !important;
	padding: 0 !important;
}
.zbang-order--cart .wc-block-cart__sidebar {
	width: 100% !important;
	max-width: 440px;
	margin: var(--wp--preset--spacing--4) 0 0 auto !important;
	padding: 0 !important;
}
.zbang-order--cart .wc-block-cart-items {
	width: 100%;
	border: 0 !important;
	border-collapse: collapse;
}
.zbang-order--cart .wc-block-cart-items__header,
.zbang-order--cart .wc-block-cart-items__row {
	display: grid !important;
	grid-template-columns: 150px 64px minmax(0, 1fr) 150px 120px 130px 72px;
	column-gap: var(--wp--preset--spacing--3);
	align-items: center;
	box-sizing: border-box;
	width: 100%;
}
/* Numele conduce rândul, marca stă dedesubt; restul celulelor ocupă ambele rânduri */
@media (min-width: 901px) {
	.zbang-order--cart .wc-block-cart-items__row {
		grid-template-rows: auto auto;
	}
	.zbang-order--cart .wc-block-cart-items__row > *,
	.zbang-order--cart .wc-block-cart-items__row :is(.zbang-code, .wc-block-components-quantity-selector, .wc-block-cart-item__prices, .wc-block-cart-item__remove-link) {
		grid-row: 1 / span 2 !important;
	}
	.zbang-order--cart .wc-block-cart-items__row .wc-block-components-product-name {
		grid-row: 1 !important;
		align-self: end;
		font-size: var(--wp--preset--font-size--reading) !important;
	}
	.zbang-brand-line {
		grid-column: 3;
		grid-row: 2;
		align-self: start;
	}
}
.zbang-brand-line {
	color: var(--wp--preset--color--otel);
	font-size: var(--wp--preset--font-size--info);
}
.zbang-order--cart .wc-block-cart-items__header {
	min-height: 40px;
	padding: 0 var(--wp--preset--spacing--3);
	text-transform: none !important;
	letter-spacing: 0 !important;
	border-radius: var(--wp--custom--radius--sm);
	background: var(--wp--preset--color--black);
	color: var(--wp--preset--color--white);
	font-size: var(--wp--preset--font-size--caption);
	font-weight: 700;
}
.zbang-order--cart .wc-block-cart-items__header > th {
	display: none;
}
.zbang-order--cart .wc-block-cart-items__header::before {
	content: "Cod";
	grid-column: 1;
}
.zbang-order--cart .wc-block-cart-items__header::after {
	content: "Produs";
	grid-column: 2 / 4;
	grid-row: 1;
}
.zbang-order--cart .wc-block-cart-items__header > .wc-block-cart-items__header-total {
	display: block;
	grid-column: 6;
	grid-row: 1;
	padding: 0;
	text-align: right;
	justify-self: end;
	text-transform: none;
	font-size: inherit;
	font-weight: inherit;
}
.zbang-order--cart .wc-block-cart-items__header > .wc-block-cart-items__header-product {
	display: contents;
	text-transform: none !important;
}
.zbang-order--cart .wc-block-cart-items__header-product::before {
	content: "Cantitate";
	grid-column: 4;
	grid-row: 1;
}
.zbang-order--cart .wc-block-cart-items__header-product::after {
	content: "Preț / buc.";
	grid-column: 5;
	grid-row: 1;
	text-align: right;
}
.zbang-order--cart .wc-block-cart-items__row {
	padding: var(--wp--preset--spacing--3);
	border-bottom: 1px solid var(--wp--preset--color--gray-light) !important;
}
.zbang-order--cart .wc-block-cart-items__row > td,
.zbang-order--cart .wc-block-cart-item__wrap,
.zbang-order--cart .wc-block-cart-item__quantity {
	padding: 0 !important;
	border: 0 !important;
}
.zbang-order--cart .wc-block-cart-item__product,
.zbang-order--cart .wc-block-cart-item__wrap,
.zbang-order--cart .wc-block-cart-item__quantity {
	display: contents !important;
}
.zbang-order--cart .wc-block-cart-items__row .zbang-code {
	grid-column: 1;
	grid-row: 1;
	justify-self: start;
}
.zbang-order--cart .wc-block-cart-item__image {
	grid-column: 2;
	grid-row: 1;
}
.zbang-order--cart .wc-block-cart-item__image img {
	display: block;
	width: 64px;
	height: 64px;
	object-fit: contain;
	border: 1px solid var(--wp--preset--color--tabla);
	border-radius: var(--wp--custom--radius--sm);
	background: var(--wp--preset--color--white);
}
.zbang-order--cart .wc-block-components-product-name {
	grid-column: 3;
	grid-row: 1;
	color: var(--wp--preset--color--black);
	font-size: var(--wp--preset--font-size--body);
	font-weight: 600;
	line-height: 1.3;
	text-decoration: none;
}
.zbang-order--cart .wc-block-components-product-name:hover {
	text-decoration: underline;
}
.zbang-order--cart .wc-block-components-quantity-selector {
	grid-column: 4;
	grid-row: 1;
	width: 150px !important;
	margin: 0 !important;
	border: 1px solid var(--wp--preset--color--otel) !important;
	border-radius: var(--wp--custom--radius--sm) !important;
}
.zbang-order--cart .wc-block-components-quantity-selector::after {
	display: none;
}
.zbang-order--cart .wc-block-components-quantity-selector__button {
	min-width: 44px !important;
	min-height: 44px;
	color: var(--wp--preset--color--black) !important;
	font-size: 20px;
	opacity: 1 !important;
}
.zbang-order--cart .wc-block-components-quantity-selector__input {
	font-family: var(--wp--preset--font-family--display);
	font-size: var(--wp--preset--font-size--body) !important;
	font-weight: 700 !important;
}
.zbang-order--cart .wc-block-cart-item__prices {
	grid-column: 5;
	grid-row: 1;
	justify-self: end;
	text-align: right;
	color: var(--wp--preset--color--gray-dark);
	font-family: var(--wp--preset--font-family--display);
	font-size: var(--wp--preset--font-size--info);
	font-weight: 700;
}
.zbang-order--cart .wc-block-cart-item__prices .wc-block-formatted-money-amount {
	font-size: inherit;
}
.zbang-order--cart .wc-block-cart-item__prices ins {
	text-decoration: none;
}
.zbang-order--cart .wc-block-cart-item__total {
	grid-column: 6;
	grid-row: 1;
	justify-self: end;
	text-align: right;
}
.zbang-order--cart .wc-block-cart-item__total .wc-block-components-product-price__value {
	color: var(--wp--preset--color--red);
	font-family: var(--wp--preset--font-family--display);
	font-size: var(--wp--preset--font-size--title);
	font-weight: 800;
	font-variant-numeric: tabular-nums;
}
.zbang-order--cart .wc-block-cart-item__remove-link {
	grid-column: 7;
	grid-row: 1;
	justify-self: end;
	width: auto !important;
	height: auto !important;
	min-height: 44px;
	color: var(--wp--preset--color--black) !important;
	font-size: var(--wp--preset--font-size--info) !important;
	text-decoration: underline !important;
	text-underline-offset: 3px;
}
.zbang-order--cart .wc-block-cart-item__remove-link svg {
	display: none;
}
.zbang-order--cart .wc-block-cart-item__remove-link::before {
	content: "Elimină";
}
.zbang-order--cart .wc-block-cart__totals-title {
	display: none !important;
}
.zbang-order--cart .wc-block-components-totals-wrapper {
	padding-inline: 0 !important;
	border-color: var(--wp--preset--color--gray-light) !important;
}
.zbang-order--cart .wc-block-cart__submit {
	margin-top: var(--wp--preset--spacing--3);
}

@media (max-width: 900px) {
	.zbang-order--cart .wc-block-cart-items__header {
		display: none !important;
	}
	.zbang-order--cart .wc-block-cart-items__row {
		grid-template-columns: 64px minmax(0, 1fr) auto !important;
		grid-template-rows: auto auto auto auto !important;
		grid-template-areas:
			"code code remove"
			"image name name"
			"image unit unit"
			"qty qty total" !important;
		row-gap: var(--wp--preset--spacing--2);
		padding-inline: 0;
	}
	.zbang-order--cart .wc-block-cart-items__row .zbang-code { grid-area: code !important; }
	.zbang-order--cart .wc-block-cart-item__image { grid-area: image !important; align-self: start; }
	.zbang-order--cart .wc-block-components-product-name { grid-area: name !important; }
	.zbang-order--cart .wc-block-cart-item__prices { grid-area: unit !important; text-align: left; }
	.zbang-order--cart .wc-block-components-quantity-selector { grid-area: qty !important; }
	.zbang-order--cart .wc-block-cart-item__total { grid-area: total !important; align-self: center; }
	.zbang-order--cart .wc-block-cart-item__remove-link { grid-area: remove !important; }
	.zbang-order--cart .wc-block-cart__sidebar {
		max-width: none;
	}
}
@media (max-width: 600px) {
	.zbang-steps__label {
		position: absolute;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip-path: inset(50%);
		white-space: nowrap;
	}
	.zbang-steps__item.is-current .zbang-steps__label {
		position: static;
		width: auto;
		height: auto;
		overflow: visible;
		clip-path: none;
	}
	.zbang-steps__list {
		justify-content: space-between;
	}
	.zbang-steps__item,
	.zbang-steps__item:last-child {
		flex: none;
	}
	.zbang-steps__item:not(:last-child)::after {
		display: none;
	}
	.zbang-order--checkout .wc-block-components-checkout-order-summary__title-text {
		font-size: 20px !important;
	}
	.zbang-step-head__title,
	.zbang-step-head__summary {
		font-size: 20px;
	}
	.zbang-step-head {
		grid-template-columns: 32px minmax(0, 1fr) auto;
	}
	.zbang-step-head__summary {
		grid-column: 2 / 3;
		grid-row: 2;
		font-size: var(--wp--preset--font-size--info);
		white-space: normal;
	}
	.zbang-step-head__edit {
		grid-column: 3;
		grid-row: 1;
	}
	.zbang-checkout-steps > :is(#contact-fields, #shipping-fields, #billing-fields, .zbang-step-next),
	.zbang-checkout-steps[data-zbang-step="3"] > :not(.zbang-step-head) {
		margin-left: 0 !important;
		padding-left: 0 !important;
		border-left: 0;
	}
}

/* Pe paginile de comandă, șina urcă mai aproape de antet */
.zbang-order {
	padding-top: var(--wp--preset--spacing--3) !important;
}

/* ---------- Pasul 2: livrarea nu e aleasă, deci nici în total ---------- */
.zbang-sum-title-price {
	display: none;
	margin-left: auto;
	margin-right: var(--wp--preset--spacing--2);
	font-weight: 600;
}
@media (max-width: 700px) {
	body[data-zbang-step="2"] .zbang-sum-title-price {
		display: inline;
	}
}
.zbang-sum-pending {
	display: none;
	padding: var(--wp--preset--spacing--2) var(--wp--preset--spacing--3) 0;
	font-size: var(--wp--preset--font-size--body);
}
body[data-zbang-step="2"] .zbang-sum-pending {
	display: block;
}
body[data-zbang-step="2"] .zbang-order--checkout :is(.wp-block-woocommerce-checkout-order-summary-shipping-block, .wp-block-woocommerce-checkout-order-summary-block > .wc-block-components-checkout-order-summary__content > .wc-block-components-totals-wrapper:last-child, .wc-block-components-checkout-order-summary__title-price) {
	display: none !important;
}
.zbang-sum-pending__row,
.zbang-sum-pending__total {
	display: flex;
	justify-content: space-between;
	gap: var(--wp--preset--spacing--3);
	margin: 0 0 var(--wp--preset--spacing--2);
}
.zbang-sum-pending__row span:last-child {
	color: var(--wp--preset--color--gray-dark);
}
.zbang-sum-pending__total {
	align-items: baseline;
	padding-top: var(--wp--preset--spacing--3);
	border-top: 1px solid color-mix(in srgb, var(--wp--preset--color--otel) 30%, transparent);
	font-size: var(--wp--preset--font-size--h-3);
	font-weight: 700;
}
.zbang-sum-pending__total span:last-child {
	color: var(--wp--preset--color--red);
	font-family: var(--wp--preset--font-family--display);
	font-weight: 800;
}

/* Fără card în card: conținutul sumarului nu are chenar propriu */
.zbang-order--checkout :is(.wc-block-components-checkout-order-summary__content, .wc-block-components-order-summary, .checkout-order-summary-block-fill) {
	border: 0 !important;
	box-shadow: none !important;
}

@media (max-width: 900px) {
	.zbang-order--cart .wc-block-cart {
		grid-template-columns: minmax(0, 1fr);
		grid-template-areas: "main" "subtotal" "total" "submit" "coupon" "back";
	}
	.zbang-order--cart .wc-block-cart-items__row {
		grid-template-areas:
			"code code remove"
			"image name name"
			"image brand brand"
			"image unit unit"
			"qty qty total" !important;
		grid-template-rows: auto auto auto auto auto !important;
	}
	.zbang-brand-line { grid-area: brand !important; }
	.zbang-order--cart .wc-block-cart-items__row .wc-block-components-product-name {
		font-size: var(--wp--preset--font-size--body) !important;
		align-self: start;
	}
}
@media (max-width: 600px) {
	.zbang-step-head--2 .zbang-seg {
		grid-column: 1 / -1;
	}
	.zbang-checkout-steps #contact.wc-block-components-address-form > * {
		flex: 1 1 100% !important;
	}
	.zbang-order--checkout .wc-block-components-checkout-order-summary__title {
		border-top: 0 !important;
		padding-top: 0 !important;
	}
}
