/* ==========================================================================
   Kosár + Pénztár — Cart Block (ID 8) + Checkout Block (ID 9) CSS-réteg.
   Fázis 6 v2 · Bundle: „easybutor kosár.dc.html" + „easybutor pénztár.dc.html"
   (2026-07-22, Claude Design handoff — vizuális forrásigazság).

   🔴 SEKÉLY, VERZIÓ-KOMMENTELT override — a selectorok a HIDRATÁLT blokk-DOM-ról
   olvasva, WooCommerce 10.7.0 (lokál felmérés: Playwright, 2026-07-22).

   TILALMAK (WOOCOMMERCE_RULES §4.3): a blokk markup/DOM/tartalom NEM módosul;
   a `wc-blocks-style` NEM kapcsol le (csak felülírunk); nincs blokk-DOM-ra
   épülő JS; nincs theme.json. A Stripe belső mezőihez nem nyúlunk.

   Oldal-chrome (breadcrumb + H1 + lépésjelző): page-kosar.php / page-penztar.php
   (theme-tulajdonú markup a blokk KÖRÜL) — stílusa itt, az 1. szekcióban.
   Betöltés: is_cart()||is_checkout(), a main.css UTÁN (inc/enqueue.php).
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. Oldal-chrome (.eb-wooshop) — bundle fejléc-sáv mindkét oldalon.
   -------------------------------------------------------------------------- */
.section-wrapper.eb-wooshop {
	padding-top: clamp(18px, 2.6vw, 28px);
	padding-bottom: clamp(56px, 7vw, 96px);
}

/* Breadcrumb — a woo-archive.css párja (ott csak archívon töltődik be). */
.eb-wooshop .woocommerce-breadcrumb {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	font-size: 13.5px;
	color: #a69c8c;
	margin: 0;
}

.eb-wooshop .woocommerce-breadcrumb .eb-ic {
	width: 16px;
	height: 16px;
	color: #c7bfb1;
}

.eb-wooshop .woocommerce-breadcrumb a {
	color: #a69c8c;
	transition: color var(--transition-fast);
}

.eb-wooshop .woocommerce-breadcrumb a:hover {
	color: var(--color-text);
}

.eb-wooshop .woocommerce-breadcrumb .eb-bc-crumb:last-child {
	color: var(--color-text-muted);
	font-weight: 600;
}

/* Fejléc-sor: H1 + tagline balra, gomb/lépésjelző jobbra (bundle). */
.eb-wooshop__hero {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: space-between;
	gap: 16px;
	margin: clamp(14px, 1.8vw, 20px) 0 clamp(16px, 2vw, 22px);
}

.eb-wooshop__title {
	font-family: var(--font-heading);
	font-weight: 800;
	font-size: clamp(30px, 4.4vw, 52px);
	line-height: 1.02;
	letter-spacing: -.03em;
	margin: 0;
}

.eb-wooshop__lead {
	font-size: 14.5px;
	color: var(--color-text-faint);
	margin: 8px 0 0;
}

.eb-wooshop__back {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	border: 1px solid #d8cfc0;
	color: var(--color-text);
	font-weight: 600;
	font-size: 14px;
	padding: 11px 20px;
	border-radius: 10px;
	transition: background var(--transition-fast);
}

.eb-wooshop__back:hover {
	background: var(--color-product-bg);
}

/* Lépésjelző (pénztár): ✓ Kosár — 2 Pénztár — 3 Kész. */
.eb-wooshop__steps {
	display: flex;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
}

.eb-wooshop__step {
	display: flex;
	align-items: center;
	gap: 9px;
	font-size: 13.5px;
	font-weight: 600;
	color: #a69c8c;
}

.eb-wooshop__stepdot {
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background: #efe9de;
	color: #a69c8c;
	font-family: var(--font-heading);
	font-weight: 700;
	font-size: 13px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex: none;
}

.eb-wooshop__step--done {
	color: var(--color-text-muted);
}

.eb-wooshop__step--done .eb-wooshop__stepdot {
	background: var(--acc);
	color: #fff;
}

a.eb-wooshop__step--done:hover {
	color: var(--color-text);
}

.eb-wooshop__step--active {
	color: var(--color-text);
	font-weight: 700;
}

.eb-wooshop__step--active .eb-wooshop__stepdot {
	background: #fff;
	border: 2px solid var(--acc);
	color: var(--acc-deep);
}

.eb-wooshop__stepline {
	width: 24px;
	height: 2px;
	border-radius: 2px;
	background: #e0d7c8;
}

.eb-wooshop__stepline--active {
	background: var(--acc);
	opacity: .5;
}

/* --------------------------------------------------------------------------
   2. Közös blokk-alapok (kosár + pénztár).
   -------------------------------------------------------------------------- */
.wp-block-woocommerce-cart,
.wp-block-woocommerce-checkout {
	color: var(--color-text);
	font-family: var(--font-body);
	padding-top: 0;
}

/* Kétoszlopos elrendezés — bundle: minmax(0,1fr) + fix sidebar, sticky.
   Csak az `is-large` konténer-állapotban (alatta a wc-blocks saját 1 oszlopos
   elrendezése él). A wc-blocks %-os szélességeit reseteljük. */
.wc-block-cart.is-large {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 358px;
	gap: clamp(20px, 2.6vw, 34px);
	align-items: start;
}

.wc-block-checkout.is-large {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 384px;
	gap: clamp(20px, 2.6vw, 34px);
	align-items: start;
}

/* Fő oszlop: a wc-blocks %-os szélességét és külső oldal-paddingját nullázzuk
   (a grid vezérli a szélességet). A sidebart itt NEM érintjük — annak saját
   kártya-paddingja van (lásd lent), amit ez a reset korábban tévesen levert. */
.wc-block-cart.is-large .wc-block-cart__main,
.wc-block-checkout.is-large .wc-block-checkout__main {
	width: auto;
	padding-left: 0;
	padding-right: 0;
	margin: 0;
}

/* Sidebar: szélesség a grid-től, de a saját kártya-paddingunk MARAD. is-large
   specificitással (0,3,0) írjuk, hogy egyszerre üsse a wc-blocks natív is-large
   szabályát ÉS ne a korábbi reset nullázza a bal/jobb paddingot. */
.wc-block-cart.is-large .wc-block-cart__sidebar,
.wc-block-checkout.is-large .wc-block-checkout__sidebar {
	width: auto;
	margin: 0;
	padding: clamp(14px, 1.7vw, 20px);
	position: sticky;
	top: 88px; /* bundle: sticky top 88 (68px header + 20) */
}

/* Bundle: ≤960 (kosár) / ≤980 (pénztár) → 1 oszlop. ⚠️ A wc-blocks a Cart/Checkout
   elrendezését a KONTÉNER szélessége szerint váltja (is-large → is-medium → is-small
   → is-mobile), és ~756px alatt saját (részben 2-oszlopos cramped) elrendezést +
   0 sidebar-paddingot ad. Ezért itt MINDEN wc-állapotra rákényszerítjük az 1 oszlopot
   és a kártya-paddingot (!important a késői wc-szabályok ellen). */
@media (max-width: 1024px) {
	.wc-block-cart,
	.wc-block-checkout {
		display: grid !important;
		grid-template-columns: 1fr !important;
		gap: clamp(16px, 3vw, 24px) !important;
		align-items: start;
	}

	.wc-block-cart__main,
	.wc-block-checkout__main,
	.wc-block-cart__sidebar,
	.wc-block-checkout__sidebar {
		width: auto !important;
		max-width: 100% !important;
		min-width: 0 !important;
	}

	.wc-block-cart__sidebar,
	.wc-block-checkout__sidebar {
		position: static !important;
		margin: 0 !important;
		padding: clamp(16px, 4vw, 20px) !important;
	}
}

/* Sidebar kártya (mindkét oldal összesítője). */
.wc-block-cart__sidebar,
.wc-block-checkout__sidebar {
	background: #fff;
	border: 1px solid #ede5d8;
	border-radius: var(--radius-panel);
	padding: clamp(14px, 1.7vw, 20px);
}

/* A wc-blocks BELSŐ összesítő-doboz saját kerete/paddingja ki — különben
   dupla kártya-keret jelenik meg a mi sidebar-kártyánkon belül. */
.wc-block-cart__sidebar .wp-block-woocommerce-cart-order-summary-block,
.wc-block-checkout__sidebar .wp-block-woocommerce-checkout-order-summary-block {
	border: 0;
	border-radius: 0;
	background: transparent;
	padding: 0;
	margin: 0;
}

/* --------------------------------------------------------------------------
   3. Kosár — tétel-táblázat mint kártya.
   -------------------------------------------------------------------------- */
.wc-block-cart table.wc-block-cart-items {
	/* !important: a wc-blocks sajátja is az (background:none!important) */
	background: #fff !important;
	border: 1px solid #ede5d8;
	border-radius: var(--radius-panel);
	padding: 0 clamp(16px, 2.4vw, 28px);
	border-collapse: separate;
	border-spacing: 0;
	width: 100%;
	margin: 0;
}

/* Fejléc-sor: TERMÉK … ÖSSZEG (bundle). A középső „Részletek" felirat
   vizuálisan rejtve, de a felolvasónak megmarad (th-szemantika él). */
.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__header th {
	font-family: var(--font-heading);
	font-weight: 700;
	font-size: 12.5px;
	letter-spacing: .09em;
	text-transform: uppercase;
	color: #a69c8c;
	text-align: left;
	padding: clamp(16px, 2.2vw, 22px) 0 14px;
	border-bottom: 1px solid #eee7da;
}

.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__header-image {
	/* thumb (bundle: clamp 76–96) + kép-szöveg köz (clamp 13–20) együtt */
	width: calc(clamp(76px, 8.5vw, 96px) + clamp(13px, 2vw, 20px));
}

.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__header-product span {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	white-space: nowrap;
}

.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__header-total {
	text-align: right !important;
}

/* Tétel-sorok. */
.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row td {
	padding: clamp(18px, 2.4vw, 24px) 0;
	border-bottom: 0;
	vertical-align: top;
}

.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row + .wc-block-cart-items__row td {
	border-top: 1px solid #eee7da;
}

/* Termékkép — bundle: négyzet, #F1F0EE, r14, keret. */
.wc-block-cart table.wc-block-cart-items .wc-block-cart-item__image {
	padding-right: clamp(13px, 2vw, 20px) !important;
}

.wc-block-cart table.wc-block-cart-items .wc-block-cart-item__image a {
	display: block;
}

.wc-block-cart table.wc-block-cart-items .wc-block-cart-item__image img {
	width: 100%;
	height: auto;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	border-radius: 14px;
	border: 1px solid #ede5d8;
	background: var(--color-product-bg);
}

/* Terméknév + ár. */
.wc-block-cart table.wc-block-cart-items .wc-block-cart-item__product .wc-block-components-product-name {
	font-family: var(--font-heading);
	font-weight: 700;
	font-size: clamp(15.5px, 1.9vw, 17.5px);
	line-height: 1.28;
	color: var(--color-text);
	text-decoration: none;
}

.wc-block-cart table.wc-block-cart-items .wc-block-cart-item__product .wc-block-components-product-name:hover {
	color: var(--acc);
}

/* Egységár a név alatt (bundle: „74 100 Ft / db"). A „/ db" képzés
   prezentációs pseudo-tartalom — HU-only felület, a blokk-markup érintetlen. */
.wc-block-cart-item__prices {
	font-size: 13px;
	color: var(--color-text-faint);
	margin-top: 4px;
}

.wc-block-cart-item__prices .wc-block-components-product-price__value {
	font-weight: 400;
}

.wc-block-cart-item__prices .wc-block-components-product-price::after {
	content: ' / db';
}

/* Konfig-metaadat (CPD méret/ajtószín + accessories szövegek). */
.wc-block-components-product-metadata {
	font-size: 13.5px;
	color: var(--color-text-faint);
	margin-top: 9px;
}

.wc-block-components-product-details {
	margin: 0;
}

.wc-block-components-product-details__name {
	color: #a69c8c;
	font-weight: 400;
}

.wc-block-components-product-details__value {
	color: #3b372f;
	font-weight: 600;
}

.wc-block-components-product-metadata__description p {
	font-size: 13px;
	line-height: 1.5;
	color: var(--color-text-faint);
	margin: 0;
	max-width: 54ch;
}

/* Mennyiség + törlés sor. */
.wc-block-cart table.wc-block-cart-items .wc-block-cart-item__quantity {
	display: flex;
	align-items: center;
	gap: 11px;
	margin-top: 16px;
}

/* Qty-stepper: külön négyzetgombok (bundle) a wc-blocks pill helyett.
   DOM-sorrend: input, −, ＋ → vizuális sorrend order-rel: − [qty] ＋. */
.wc-block-components-quantity-selector {
	display: flex;
	align-items: center;
	gap: 6px;
	border: 0;
	background: none;
	margin: 0;
	width: auto;
}

.wc-block-components-quantity-selector::after {
	display: none; /* wc-blocks belső keret-pszeudó ki */
}

.wc-block-cart table.wc-block-cart-items .wc-block-components-quantity-selector .wc-block-components-quantity-selector__input {
	order: 2;
	width: 42px;
	min-width: 42px;
	flex: none;
	text-align: center;
	font-family: var(--font-heading);
	font-weight: 700;
	font-size: 16px;
	color: var(--color-text);
	border: 0;
	background: transparent;
	padding: 0;
	-moz-appearance: textfield;
}

.wc-block-components-quantity-selector__input::-webkit-outer-spin-button,
.wc-block-components-quantity-selector__input::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

.wc-block-components-quantity-selector .wc-block-components-quantity-selector__button {
	width: 36px;
	height: 36px;
	flex: none;
	border-radius: 9px;
	border: 1px solid #e0d7c8;
	background: #fff;
	color: #3b372f;
	font-size: 20px;
	line-height: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	opacity: 1;
	min-width: 0;
	transition: border-color var(--transition-fast);
}

.wc-block-components-quantity-selector__button--minus {
	order: 1;
}

.wc-block-components-quantity-selector__button--plus {
	order: 3;
}

.wc-block-components-quantity-selector .wc-block-components-quantity-selector__button:hover {
	border-color: var(--acc);
	color: var(--color-text);
}

.wc-block-components-quantity-selector .wc-block-components-quantity-selector__button:disabled {
	opacity: .4;
	cursor: not-allowed;
	border-color: #e0d7c8;
}

/* Törlés-gomb (a wc-blocks kuka-SVG-je) — bundle: négyzet ikon-gomb. */
.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity .wc-block-cart-item__remove-link {
	width: 36px;
	height: 36px;
	flex: none;
	border: 1px solid #ede5d8;
	border-radius: 9px;
	background: #fff;
	color: #a69c8c;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	margin: 0;
	cursor: pointer;
	text-decoration: none;
	transition: color var(--transition-fast), border-color var(--transition-fast);
}

.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity .wc-block-cart-item__remove-link svg {
	width: 20px;
	height: 20px;
	fill: currentColor;
}

.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity .wc-block-cart-item__remove-link:hover {
	border-color: #d98a6a;
	color: var(--acc);
}

/* Sor-összeg (jobb oszlop). */
.wc-block-cart table.wc-block-cart-items .wc-block-cart-item__total {
	text-align: right;
}

.wc-block-cart-item__total .wc-block-components-product-price__value {
	font-family: var(--font-heading);
	font-weight: 700;
	font-size: clamp(15.5px, 1.9vw, 17.5px);
	color: var(--color-text);
	white-space: nowrap;
}

/* --------------------------------------------------------------------------
   4. Kosár — összesítő sidebar.
   -------------------------------------------------------------------------- */
.wc-block-cart__sidebar .wc-block-cart__totals-title {
	font-family: var(--font-heading);
	font-weight: 700;
	font-size: 12.5px;
	letter-spacing: .09em;
	text-transform: uppercase;
	color: #a69c8c;
	margin: 0 0 10px;
	padding: 0;
	text-align: left;
	border: 0;
}

/* A wc-blocks totals-wrapper saját border-top-jai és NEGATÍV oldal-margói ki
   (utóbbiak a kártya-paddingon túlnyúló „sáv"-hatást adták) — bundle-dividerek be. */
.wc-block-cart__sidebar .wc-block-components-totals-wrapper,
.wc-block-checkout__sidebar .wc-block-components-totals-wrapper {
	padding: 0;
	margin: 0;
	border: 0;
}

.wc-block-cart__sidebar .wc-block-components-totals-wrapper::after,
.wc-block-checkout__sidebar .wc-block-components-totals-wrapper::after {
	content: none;
}

/* A totals-CSOPORT wc-adta sötét border-top-ja ki; helyette bundle-divider a
   Részösszeg FÖLÉ (border-top + kis felső padding). A footer-item (végösszeg)
   saját border-topja marad. */
.wc-block-cart__sidebar .wp-block-woocommerce-cart-order-summary-totals-block,
.wc-block-checkout__sidebar .wp-block-woocommerce-checkout-order-summary-totals-block {
	border: 0;
	border-top: 1px solid #eee7da;
	padding: 14px 0 0;
	margin: 0;
}

.wc-block-components-totals-item {
	padding: 0 0 6px;
	font-size: 14.5px;
}

.wc-block-components-totals-item__label {
	color: var(--color-text-muted);
	font-weight: 400;
	font-size: 14.5px;
}

.wc-block-components-totals-item__value {
	font-weight: 600;
	color: var(--color-text);
	font-size: 14.5px;
}

.wc-block-components-totals-item__description {
	font-size: 12px;
	color: #a69c8c;
}

/* Végösszeg-sor (Becsült összeg / Fizetendő) — bundle: nagy accent érték. */
/* A footer-item MINDKÉT osztályt hordozza (totals-item is), ezért a
   `.wc-block-components-totals-item { padding:0 0 6px }` ütné a felső paddingot —
   sidebar-prefixszel (0,2,0) nyerünk. */
.wc-block-cart__sidebar .wc-block-components-totals-footer-item,
.wc-block-checkout__sidebar .wc-block-components-totals-footer-item {
	border-top: 1px solid #eee7da;
	margin-top: 0;
	padding: 14px 0 0;
	align-items: baseline;
	flex-wrap: wrap;
}

/* ÁFA-megjegyzés a végösszeg alatt (bundle) — statikus HU felirat pszeudóból
   (a wc a taxes-sort külön option nélkül nem írja ki; blokk-tartalom ide nem
   szúrható). */
.wc-block-cart__sidebar .wc-block-components-totals-footer-item::after,
.wc-block-checkout__sidebar .wc-block-components-totals-footer-item::after {
	content: 'Az árak az áfát tartalmazzák.';
	display: block;
	width: 100%;
	font-family: var(--font-body);
	font-weight: 400;
	font-size: 12px;
	letter-spacing: 0;
	color: #a69c8c;
	text-align: right;
	line-height: 1;
	margin-top: 0;
}

.wc-block-components-totals-footer-item .wc-block-components-totals-item__label {
	font-family: var(--font-heading);
	font-weight: 800;
	font-size: 18px;
	line-height: 1.1;
	color: var(--color-text);
}

.wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
	font-family: var(--font-heading);
	font-weight: 800;
	font-size: clamp(23px, 2.6vw, 28px);
	line-height: 1;
	letter-spacing: -.01em;
	color: var(--acc-deep);
	white-space: nowrap;
}

/* A money-span saját line-height-ja is szoros, hogy az ÁFA-sor közel legyen. */
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value .wc-block-formatted-money-amount {
	line-height: 1;
}

/* ÁFA-megjegyzés a végösszeg alatt (wc-blocks description / tax sor). */
.wc-block-components-totals-footer-item .wc-block-components-totals-item__description {
	font-size: 12px;
	color: #a69c8c;
	margin-top: 6px;
}

/* Shared Cart gomb (easybutor-shared-cart slot fill) — bundle: accent-outline,
   share-ikon, hover: --acc-soft háttér. A plugin markupját nem érintjük;
   az ikon mask-pszeudóval (currentColor) kerül a szöveg elé. */
.wc-block-cart__sidebar .slot-wrapper,
.wc-block-cart__sidebar .wc-block-components-order-meta {
	padding: 0;
	border: 0;
	margin: 0;
}

.eb-shared-cart--block {
	margin-top: 22px;
}

.eb-shared-cart--block .eb-shared-cart__button {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	width: 100%;
	background: #fff;
	border: 1.5px solid var(--acc);
	border-radius: 12px;
	color: var(--acc-deep);
	font-family: var(--font-body);
	font-weight: 700;
	font-size: 14.5px;
	letter-spacing: 0;
	text-transform: none;
	padding: 14px;
	transition: background var(--transition-fast);
}

.eb-shared-cart--block .eb-shared-cart__button::before {
	content: '';
	width: 20px;
	height: 20px;
	flex: none;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M18 16.08c-.76 0-1.44.3-1.96.77L8.91 12.7c.05-.23.09-.46.09-.7s-.04-.47-.09-.7l7.05-4.11c.54.5 1.25.81 2.04.81 1.66 0 3-1.34 3-3s-1.34-3-3-3-3 1.34-3 3c0 .24.04.47.09.7L8.04 9.81C7.5 9.31 6.79 9 6 9c-1.66 0-3 1.34-3 3s1.34 3 3 3c.79 0 1.5-.31 2.04-.81l7.12 4.16c-.05.21-.08.43-.08.65 0 1.61 1.31 2.92 2.92 2.92 1.61 0 2.92-1.31 2.92-2.92s-1.31-2.92-2.92-2.92z'/></svg>") center / contain no-repeat;
	mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M18 16.08c-.76 0-1.44.3-1.96.77L8.91 12.7c.05-.23.09-.46.09-.7s-.04-.47-.09-.7l7.05-4.11c.54.5 1.25.81 2.04.81 1.66 0 3-1.34 3-3s-1.34-3-3-3-3 1.34-3 3c0 .24.04.47.09.7L8.04 9.81C7.5 9.31 6.79 9 6 9c-1.66 0-3 1.34-3 3s1.34 3 3 3c.79 0 1.5-.31 2.04-.81l7.12 4.16c-.05.21-.08.43-.08.65 0 1.61 1.31 2.92 2.92 2.92 1.61 0 2.92-1.31 2.92-2.92s-1.31-2.92-2.92-2.92z'/></svg>") center / contain no-repeat;
}

.eb-shared-cart--block .eb-shared-cart__button:hover,
.eb-shared-cart--block .eb-shared-cart__button:focus {
	background: var(--acc-soft);
	border-color: var(--acc);
	color: var(--acc-deep);
	outline: none;
}

.eb-shared-cart--block .eb-shared-cart__button:focus-visible {
	outline: 2px solid var(--acc-deep);
	outline-offset: 2px;
}

.eb-shared-cart--block .eb-shared-cart__message {
	margin-top: 12px;
	border-radius: 12px;
	padding: 12px 14px;
	font-size: 12.5px;
	line-height: 1.5;
}

.eb-shared-cart--block .eb-shared-cart__message--success {
	display: flex;
	align-items: flex-start;
	gap: 9px;
	background: var(--acc-soft);
	border: 1px solid var(--acc-bg);
	color: var(--color-text-muted);
}

/* check_circle ikon a siker-üzenet elé (bundle). */
.eb-shared-cart--block .eb-shared-cart__message--success::before {
	content: '';
	width: 19px;
	height: 19px;
	flex: none;
	background: var(--acc-deep);
	-webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z'/></svg>") center / contain no-repeat;
	mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z'/></svg>") center / contain no-repeat;
}

.eb-shared-cart--block .eb-shared-cart__message--error {
	border-color: var(--color-error);
	color: var(--color-error);
}

.eb-shared-cart--block .eb-shared-cart__url {
	border: 1.5px solid var(--color-border-alt);
	border-radius: var(--radius-input);
	color: var(--color-text);
}

/* Fő CTA: „Tovább a pénztárhoz" — bundle: accent, r12, glow, nyíl-ikon. */
.wc-block-cart__submit {
	padding: 0;
	margin: 12px 0 0;
}

.wc-block-cart__submit-container {
	padding: 0;
}

.wc-block-cart__submit-button.wc-block-components-button {
	width: 100%;
	background: var(--acc);
	border-radius: 12px;
	padding: 16px;
	font-family: var(--font-heading);
	font-weight: 700;
	font-size: 15.5px;
	box-shadow: 0 12px 30px var(--acc-sh);
	transition: background var(--transition-fast);
}

.wc-block-cart__submit-button.wc-block-components-button:hover {
	background: var(--acc-deep);
	box-shadow: 0 12px 30px var(--acc-sh);
}

.wc-block-cart .wc-block-cart__submit-button .wc-block-components-button__text {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
}

.wc-block-cart .wc-block-cart__submit-button .wc-block-components-button__text::after {
	display: block;
	content: '';
	width: 20px;
	height: 20px;
	flex: none;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 4l-1.41 1.41L16.17 11H4v2h12.17l-5.58 5.59L12 20l8-8z'/></svg>") center / contain no-repeat;
	mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 4l-1.41 1.41L16.17 11H4v2h12.17l-5.58 5.59L12 20l8-8z'/></svg>") center / contain no-repeat;
}

/* Üres express-payment sáv ne hagyjon hézagot. */
.wc-block-cart__payment-options:empty {
	display: none;
}

/* Bizalmi sor (blokk-tartalom: .eb-pay-note paragraph a kosár CTA / pénztár
   összesítő alatt — DB_CHANGES 2026-07-23) — bundle: lakat + halvány szöveg. */
.eb-pay-note {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	margin: 8px 0 0;
	font-size: 12.5px;
	line-height: 1.5;
	color: var(--color-text-faint);
	text-align: center;
}

.eb-pay-note::before {
	content: '';
	width: 17px;
	height: 17px;
	flex: none;
	background: var(--acc);
	-webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zm-6 9c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zM9 8V6c0-1.66 1.34-3 3-3s3 1.34 3 3v2H9z'/></svg>") center / contain no-repeat;
	mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zm-6 9c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zM9 8V6c0-1.66 1.34-3 3-3s3 1.34 3 3v2H9z'/></svg>") center / contain no-repeat;
}

/* --------------------------------------------------------------------------
   5. Üres kosár — bundle: központi kártya. A blokk gyári „új termékek"
      szekciója display:none (prezentációs döntés a bundle szerint; a
      blokk-tartalom érintetlen, adminból visszakapcsolható a CSS törlésével).
   -------------------------------------------------------------------------- */
.wp-block-woocommerce-empty-cart-block {
	max-width: 560px;
	margin: clamp(18px, 4vw, 48px) auto 0;
	background: #fff;
	border: 1px solid #ede5d8;
	border-radius: var(--radius-card);
	padding: clamp(36px, 5vw, 58px) clamp(24px, 4vw, 44px);
	text-align: center;
}

.wp-block-woocommerce-empty-cart-block .wp-block-separator,
.wp-block-woocommerce-empty-cart-block .wc-block-grid,
.wp-block-woocommerce-empty-cart-block h2:not(:first-of-type) {
	display: none;
}

.wp-block-woocommerce-empty-cart-block h2 {
	font-family: var(--font-heading);
	font-weight: 700;
	font-size: clamp(22px, 3vw, 28px);
	letter-spacing: -.02em;
	margin: 0 0 10px;
}

/* A wc-blocks szomorú-kosár ikonja (a cím ::before pszeudója) → bundle:
   accent-soft csempe + terrakotta kosár-ikon. A wc mask-technikáját
   background-image-re cseréljük, hogy csempe + ikon egy pszeudóból kijöjjön. */
.wp-block-woocommerce-empty-cart-block h2.with-empty-cart-icon::before {
	content: '';
	display: block;
	width: 76px;
	height: 76px;
	margin: 0 auto 22px;
	border-radius: 20px;
	background-color: var(--acc-soft);
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23A85535'><path d='M7 18c-1.1 0-1.99.9-1.99 2S5.9 22 7 22s2-.9 2-2-.9-2-2-2zM1 2v2h2l3.6 7.59-1.35 2.45c-.16.28-.25.61-.25.96 0 1.1.9 2 2 2h12v-2H7.42c-.14 0-.25-.11-.25-.25l.03-.12.9-1.63h7.45c.75 0 1.41-.41 1.75-1.03l3.58-6.49c.08-.14.12-.31.12-.49 0-.55-.45-1-1-1H5.21l-.94-2H1zm16 16c-1.1 0-1.99.9-1.99 2s.89 2 1.99 2 2-.9 2-2-.9-2-2-2z'/></svg>");
	background-position: center;
	background-repeat: no-repeat;
	background-size: 38px 38px;
	-webkit-mask: none;
	mask: none;
	position: static;
	transform: none;
}

.wp-block-woocommerce-empty-cart-block p {
	font-size: 15px;
	line-height: 1.6;
	color: var(--color-text-muted);
	margin: 0 auto 26px;
	max-width: 36ch;
}

.wp-block-woocommerce-empty-cart-block img,
.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__image {
	margin: 0 auto 22px;
}

/* Üres kosár CTA („Irány a katalógus" — blokk-tartalom, DB_CHANGES 2026-07-23):
   bundle accent gomb storefront-ikonnal. */
.wp-block-woocommerce-empty-cart-block .wp-block-buttons {
	margin: 0;
}

.wp-block-woocommerce-empty-cart-block .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	background: var(--acc);
	color: #fff;
	font-family: var(--font-body);
	font-weight: 700;
	font-size: 15px;
	padding: 14px 26px;
	border: 0;
	border-radius: 12px;
	transition: background var(--transition-fast);
}

.wp-block-woocommerce-empty-cart-block .wp-block-button__link:hover {
	background: var(--acc-deep);
	color: #fff;
}

.wp-block-woocommerce-empty-cart-block .wp-block-button__link::before {
	content: '';
	width: 20px;
	height: 20px;
	flex: none;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M21.9 8.89l-1.05-4.37c-.22-.9-1-1.52-1.91-1.52H5.05c-.9 0-1.69.63-1.9 1.52L2.1 8.89c-.24 1.02-.02 2.06.62 2.88.08.11.19.19.28.29V19c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2v-6.94c.09-.09.2-.18.28-.28.64-.82.87-1.87.62-2.89zM13 5h1.96l.54 4.52c.05.39-.07.78-.33 1.07-.22.26-.54.41-.95.41-.67 0-1.22-.59-1.22-1.31V5zM8.49 9.52 9.04 5H11v4.69c0 .72-.55 1.31-1.29 1.31-.34 0-.65-.15-.89-.41-.25-.29-.37-.68-.33-1.07zm-4.45-.16L5.05 5h1.97l-.58 4.86c-.08.65-.6 1.14-1.21 1.14-.49 0-.8-.29-.93-.47-.27-.32-.36-.75-.26-1.11zM5 19v-6.03c.08.01.15.03.23.03.87 0 1.66-.36 2.24-.95.6.6 1.4.95 2.31.95.87 0 1.65-.36 2.23-.93.59.57 1.39.93 2.29.93.84 0 1.64-.35 2.24-.95.58.59 1.37.95 2.24.95.08 0 .15-.02.23-.03V19H5z'/></svg>") center / contain no-repeat;
	mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M21.9 8.89l-1.05-4.37c-.22-.9-1-1.52-1.91-1.52H5.05c-.9 0-1.69.63-1.9 1.52L2.1 8.89c-.24 1.02-.02 2.06.62 2.88.08.11.19.19.28.29V19c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2v-6.94c.09-.09.2-.18.28-.28.64-.82.87-1.87.62-2.89zM13 5h1.96l.54 4.52c.05.39-.07.78-.33 1.07-.22.26-.54.41-.95.41-.67 0-1.22-.59-1.22-1.31V5zM8.49 9.52 9.04 5H11v4.69c0 .72-.55 1.31-1.29 1.31-.34 0-.65-.15-.89-.41-.25-.29-.37-.68-.33-1.07zm-4.45-.16L5.05 5h1.97l-.58 4.86c-.08.65-.6 1.14-1.21 1.14-.49 0-.8-.29-.93-.47-.27-.32-.36-.75-.26-1.11zM5 19v-6.03c.08.01.15.03.23.03.87 0 1.66-.36 2.24-.95.6.6 1.4.95 2.31.95.87 0 1.65-.36 2.23-.93.59.57 1.39.93 2.29.93.84 0 1.64-.35 2.24-.95.58.59 1.37.95 2.24.95.08 0 .15-.02.23-.03V19H5z'/></svg>") center / contain no-repeat;
}

/* --------------------------------------------------------------------------
   6. Pénztár — űrlap-kártya és lépések.
   -------------------------------------------------------------------------- */
.wc-block-checkout__form {
	background: #fff;
	border: 1px solid #ede5d8;
	border-radius: var(--radius-panel);
	padding: clamp(20px, 2.6vw, 32px);
	max-width: none;
}

/* Lépés-szekciók: elválasztó vonal + tér (bundle dividerek). */
.wc-block-checkout__form .wc-block-components-checkout-step {
	padding: clamp(22px, 3vw, 30px) 0 0;
	margin: clamp(22px, 3vw, 30px) 0 0;
	border: 0;
	border-top: 1px solid #eee7da;
}

.wc-block-checkout__form .wc-block-checkout__contact-fields {
	border-top: 0;
	padding-top: 0;
	margin-top: 0;
}

.wc-block-components-checkout-step__heading {
	margin: 0 0 16px;
}

/* Szekció-cím: ikon-csempe + Archivo cím (bundle). Az ikon accent-tile
   háttér-SVG-vel (fix Terrakotta accent — D-döntés szerint egy accent él).
   A `.wc-block-checkout__form` prefix a wc-blocks késői cím-szabályát üti
   (különben 500/20px marad a bundle 700/clamp(17-19) helyett). */
.wc-block-checkout__form .wc-block-components-checkout-step__title {
	display: flex;
	align-items: center;
	gap: 11px;
	font-family: var(--font-heading);
	font-weight: 700;
	font-size: clamp(17px, 2vw, 19px);
	letter-spacing: -.01em;
	color: var(--color-text);
	margin: 0;
}

.wc-block-components-checkout-step__title::before {
	content: '';
	width: 34px;
	height: 34px;
	flex: none;
	border-radius: 10px;
	background-color: var(--acc-soft);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 20px 20px;
}

/* Ikonok lépésenként (Material-glyph path-ok, fill = --acc-deep #A85535). */
.wc-block-checkout__contact-fields .wc-block-components-checkout-step__title::before {
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23A85535'><path d='M20 4H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 4-8 5-8-5V6l8 5 8-5v2z'/></svg>");
}

.wc-block-checkout__shipping-method .wc-block-components-checkout-step__title::before {
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23A85535'><path d='M20 8h-3V4H3c-1.1 0-2 .9-2 2v11h2c0 1.66 1.34 3 3 3s3-1.34 3-3h6c0 1.66 1.34 3 3 3s3-1.34 3-3h2v-5l-3-4zM6 18.5c-.83 0-1.5-.67-1.5-1.5s.67-1.5 1.5-1.5 1.5.67 1.5 1.5-.67 1.5-1.5 1.5zm13.5-9 1.96 2.5H17V9.5h2.5zm-1.5 9c-.83 0-1.5-.67-1.5-1.5s.67-1.5 1.5-1.5 1.5.67 1.5 1.5-.67 1.5-1.5 1.5z'/></svg>");
}

.wc-block-checkout__shipping-fields .wc-block-components-checkout-step__title::before,
.wc-block-checkout__billing-fields .wc-block-components-checkout-step__title::before {
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23A85535'><path d='M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5z'/></svg>");
}

.wc-block-checkout__shipping-option .wc-block-components-checkout-step__title::before {
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23A85535'><path d='M20 2H4c-1 0-2 .9-2 2v3.01c0 .72.43 1.34 1 1.69V20c0 1.1 1.1 2 2 2h14c.9 0 2-.9 2-2V8.7c.57-.35 1-.97 1-1.69V4c0-1.1-1-2-2-2zm-5 12H9v-2h6v2zm5-7H4V4h16v3z'/></svg>");
}

.wc-block-checkout__payment-method .wc-block-components-checkout-step__title::before {
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23A85535'><path d='M20 4H4c-1.11 0-1.99.89-1.99 2L2 18c0 1.11.89 2 2 2h16c1.11 0 2-.89 2-2V6c0-1.11-.89-2-2-2zm0 14H4v-6h16v6zm0-10H4V6h16v2z'/></svg>");
}

/* Megjegyzés-lépés: nincs ikon-csempe (bundle: sima checkbox-sor). */
.wc-block-checkout__order-notes .wc-block-components-checkout-step__title::before {
	display: none;
}

.wc-block-components-checkout-step__description {
	font-size: 12.5px;
	color: #a69c8c;
	margin: -8px 0 14px;
}

/* Vendég-notice + belépés-prompt a kártya felett. */
.wc-block-checkout__guest-checkout-notice,
.wc-block-checkout__login-prompt {
	font-size: 13.5px;
	color: var(--color-text-faint);
}

.wc-block-checkout__login-prompt a {
	color: var(--acc-deep);
	font-weight: 600;
}

/* --------------------------------------------------------------------------
   7. Pénztár — Átvétel módja (Ship/Pickup váltó) — bundle szegmens-kontroll.
   -------------------------------------------------------------------------- */
/* A `.wc-block-checkout` prefix a wc-blocks `.components-button-group`
   szabályát üti (különben áttetsző-sötét bg / 8px radius / 4px padding marad). */
.wc-block-checkout .wc-block-checkout__shipping-method-container {
	background: var(--color-product-bg);
	border: 0;
	border-radius: 14px;
	padding: 5px;
	display: flex;
	gap: 6px;
}

.wc-block-checkout__shipping-method-option {
	flex: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	padding: 12px 14px;
	border-radius: 11px;
	border: 1px solid transparent;
	background: transparent;
	color: var(--color-text-faint);
	font-weight: 600;
	font-size: 14.5px;
	cursor: pointer;
	transition: background var(--transition-fast), color var(--transition-fast);
}

.wc-block-checkout__shipping-method-option:hover {
	background: rgba(255, 255, 255, .55);
	color: var(--color-text-muted);
}

.wc-block-checkout__shipping-method-container .wc-block-checkout__shipping-method-option--selected,
.wc-block-checkout__shipping-method-container .wc-block-checkout__shipping-method-option--selected:hover {
	background: #fff;
	border: 1px solid #e6ddce;
	color: var(--acc-deep);
	box-shadow: 0 4px 12px rgba(38, 36, 31, .06);
	outline: none;
}

.wc-block-checkout__shipping-method-option-icon {
	width: 20px;
	height: 20px;
	fill: currentColor;
}

.wc-block-checkout__shipping-method-option-title {
	font-size: 14.5px;
	font-weight: 600;
}

/* --------------------------------------------------------------------------
   8. Pénztár — címkártya, mezők, checkboxok.
   -------------------------------------------------------------------------- */
.wc-block-components-address-card {
	background: #f9f6f1;
	border: 1px solid #ede5d8;
	border-radius: 14px;
	padding: 16px 18px;
}

.wc-block-components-address-card address {
	font-style: normal;
	font-size: 14px;
	color: var(--color-text-muted);
	line-height: 1.6;
}

.wc-block-components-address-card__address-section--primary,
.wc-block-components-address-card .wc-block-components-address-card__address-section:first-child {
	font-family: var(--font-heading);
	font-weight: 700;
	font-size: 15px;
	color: var(--color-text);
}

.wc-block-components-address-card__edit {
	color: var(--acc-deep);
	font-weight: 600;
	font-size: 13.5px;
	text-decoration: none;
}

.wc-block-components-address-card__edit:hover {
	color: var(--acc);
}

/* Szöveges mezők + selectek — bundle: r12, #E0D7C8 keret, accent fókusz-ring.
   (A wc-blocks lebegő-címkés mintáját megtartjuk, csak skinneljük.)
   A `.wc-block-checkout` prefix a wc-blocks késői mező-szabályát üti — különben
   a WC-default marad (4px radius, sötét keret, 16/12 padding). A padding
   lebegő-címke-barát (14px felül, hogy a felúszó címke ne vágódjon). */
.wc-block-checkout .wc-block-components-text-input input[type='text'],
.wc-block-checkout .wc-block-components-text-input input[type='email'],
.wc-block-checkout .wc-block-components-text-input input[type='tel'],
.wc-block-checkout .wc-block-components-text-input input[type='password'],
.wc-block-checkout .wc-block-components-text-input input[type='number'],
.wc-block-checkout .wc-blocks-components-select .wc-blocks-components-select__container,
.wc-block-checkout textarea {
	background: #fff;
	border: 1px solid #e0d7c8;
	border-radius: 12px;
	padding: 14px 15px;
	color: var(--color-text);
	font-size: 15px;
	box-shadow: none;
	transition: border-color var(--transition-fast), box-shadow var(--transition-fast);
}

.wc-block-checkout .wc-block-components-text-input input:focus,
.wc-block-checkout .wc-blocks-components-select .wc-blocks-components-select__container:focus-within,
.wc-block-checkout textarea:focus {
	border-color: var(--acc);
	box-shadow: 0 0 0 3px var(--acc-sh);
	outline: none;
}

/* Select: a keretet a .__container adja (fent, r12/#E0D7C8) — a BELSŐ <select>
   a wc-default sötét/r4 keretével dupla-keretet csinált; itt levesszük és a
   paddingot a select kapja (a konténer 0). */
.wc-block-checkout .wc-blocks-components-select .wc-blocks-components-select__container {
	padding: 0;
}

.wc-block-checkout .wc-blocks-components-select__select {
	border: 0;
	border-radius: 12px;
	background: transparent;
	padding: 14px 15px;
	font-size: 15px;
	color: var(--color-text);
	box-shadow: none;
}

/* Kombinált cím-mezők (Cím / address_1–2): a wc joined-field r11/#E4DBCB
   helyett egységes r12/#E0D7C8. */
.wc-block-checkout .wc-block-components-address-form input[type='text'] {
	border-radius: 12px;
	border-color: #e0d7c8;
}

.wc-block-components-text-input label,
.wc-blocks-components-select__label {
	color: var(--color-text-faint);
}

.wc-block-components-text-input.is-active label {
	color: var(--color-text-faint);
}

/* Hibás mező. */
.wc-block-components-text-input.has-error input {
	border-color: var(--color-error) !important;
}

.wc-block-components-text-input.has-error input:focus {
	box-shadow: 0 0 0 3px rgba(231, 76, 60, .16);
}

.wc-block-components-validation-error,
.wc-block-components-validation-error p {
	color: var(--color-error);
	font-size: 12.5px;
}

/* Checkboxok — bundle: 22px, r7, pipálva accent + glow. */
.wc-block-components-checkbox .wc-block-components-checkbox__input[type='checkbox'] {
	width: 22px;
	height: 22px;
	border-radius: 7px;
	border: 2px solid #cfc4b2;
	background: #fff;
	margin-top: 1px;
	transition: background var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast);
}

.wc-block-components-checkbox .wc-block-components-checkbox__input[type='checkbox']:checked {
	background: var(--acc);
	border-color: var(--acc);
	box-shadow: 0 4px 10px var(--acc-sh);
}

.wc-block-components-checkbox .wc-block-components-checkbox__input[type='checkbox']:focus-visible {
	outline: 2px solid var(--acc-deep);
	outline-offset: 2px;
}

.wc-block-components-checkbox__mark {
	fill: #fff;
	color: #fff;
}

.wc-block-components-checkbox__label {
	font-size: 14px;
	color: #3b372f;
	line-height: 1.5;
}

/* --------------------------------------------------------------------------
   9. Pénztár — szállítási opciók + fizetési módok (opció-kártyák).
   -------------------------------------------------------------------------- */

/* A wc-blocks „highlight-checked" csoport-kerete ki — kártyánkénti keret be. */
.wc-block-components-radio-control--highlight-checked {
	border: 0;
}

.wc-block-components-shipping-rates-control__package {
	border: 0;
	padding: 0;
	margin: 0;
}

/* Opció-sorok (szállítási díj — GLS XXL). */
.wc-block-components-radio-control__option {
	border: 1px solid #e7dfd1;
	border-radius: 14px;
	padding: 15px 16px 15px 44px;
	margin-bottom: 10px;
	background: #fff;
	transition: border-color var(--transition-fast), box-shadow var(--transition-fast);
}

.wc-block-components-radio-control__option:last-child {
	margin-bottom: 0;
}

/* Kiválasztott opció — a wc-blocks „highlight-checked" saját (sötét,
   currentColor) keretét accent-re cseréljük; a szülő-lánc a wc-selectorok
   specificitását tükrözi (mi később töltődünk → mi nyerünk). */
.wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control__option--checked-option-highlighted,
.wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control__option-checked,
.wc-block-components-radio-control__option--checked-option-highlighted,
.wc-block-components-radio-control__option-checked {
	border: 1.5px solid var(--acc);
	/* accent-glow ÉS a wc-blocks saját 1px sötét gyűrűje (label.-es szabály,
	   magasabb specificitás) levéve — Zsolt: felesleges; a kiválasztást az
	   accent-keret jelzi. */
	box-shadow: none !important;
}

/* A wc-blocks a kiválasztott opcióra saját ::after keret-overlay-t rajzol
   (sötét, currentColor) — kikapcsoljuk, a keretet a fenti szabály adja. */
.wc-block-components-radio-control__option--checked-option-highlighted::after,
.wc-block-components-radio-control__option-checked::after,
.wc-block-components-radio-control-accordion-option--checked-option-highlighted::after {
	content: none;
}

/* Rádió-pötty: accent (a wc currentColor-ból dolgozik → color is accent). */
.wc-block-components-radio-control__option .wc-block-components-radio-control__input {
	width: 20px;
	height: 20px;
	border: 2px solid #cfc4b2;
	background: #fff;
}

.wc-block-components-radio-control__option .wc-block-components-radio-control__input:checked {
	border-color: var(--acc);
	background: #fff;
	color: var(--acc);
}

.wc-block-components-radio-control__option .wc-block-components-radio-control__input:checked::before {
	background: var(--acc);
	width: 10px;
	height: 10px;
	margin: 0;
}

.wc-block-components-radio-control__label,
.wc-block-components-radio-control__label-group {
	font-weight: 700;
	font-size: 15px;
	color: var(--color-text);
}

.wc-block-components-radio-control__secondary-label {
	font-family: var(--font-heading);
	font-weight: 700;
	font-size: 15px;
	color: var(--color-text);
}

.wc-block-components-radio-control__description,
.wc-block-components-radio-control__secondary-description {
	font-size: 12.5px;
	color: var(--color-text-faint);
	line-height: 1.5;
}

/* Fizetési módok — accordion-opciók kártyaként. A Stripe BELSŐ mezőihez nem
   nyúlunk (§4.3), csak a kártya-keret + tartalom-padding a miénk. */
.wc-block-components-radio-control-accordion-option {
	border: 1px solid #e7dfd1;
	border-radius: 14px;
	margin-bottom: 10px;
	background: #fff;
	overflow: hidden;
	transition: border-color var(--transition-fast), box-shadow var(--transition-fast);
}

.wc-block-components-radio-control-accordion-option:last-child {
	margin-bottom: 0;
}

.wc-block-checkout__payment-method .wc-block-components-radio-control-accordion-option--checked-option-highlighted,
.wc-block-components-radio-control-accordion-option--checked-option-highlighted {
	border: 1.5px solid var(--acc);
	/* accent-glow (box-shadow) levéve — Zsolt: felesleges. */
	box-shadow: none;
}

.wc-block-components-radio-control-accordion-option .wc-block-components-radio-control__option {
	border: 0;
	border-radius: 0;
	margin: 0;
	box-shadow: none;
}

.wc-block-components-payment-method-label {
	font-weight: 700;
	font-size: 15px;
	color: var(--color-text);
}

.wc-block-components-radio-control-accordion-content {
	padding: 0 16px 15px 44px;
	font-size: 13px;
	line-height: 1.55;
	color: var(--color-text-muted);
	min-width: 0;
	/* A hosszú, szóköz nélküli IBAN-string (pl. HU16126000…) különben törhetetlen
	   és keskeny nézeten (≤~360px) kitolja a fizetési szekciót. */
	overflow-wrap: break-word;
	word-break: break-word;
}

/* BACS/utalás leíró doboz-érzet (bundle: #F9F6F1 panel). */
.wc-block-components-radio-control-accordion-content > * {
	background: #f9f6f1;
	border: 1px solid #ede5d8;
	border-radius: 11px;
	padding: 12px 14px;
	margin: 0;
	overflow-wrap: break-word;
	word-break: break-word;
}

.wc-block-components-radio-control-accordion-content > * + * {
	margin-top: 8px;
}

/* Megjegyzés textarea. */
.wc-block-checkout__add-note textarea {
	border-radius: 12px;
	font-size: 14.5px;
	line-height: 1.5;
}

/* ÁSZF-sor. */
.wc-block-checkout__terms {
	font-size: 12.5px;
	color: var(--color-text-muted);
	line-height: 1.5;
	margin-top: clamp(12px, 1.6vw, 16px);
	padding-top: clamp(12px, 1.6vw, 16px);
	border-top: 1px solid #eee7da;
}

.wc-block-checkout__terms .wc-block-components-checkbox__label {
	font-size: 12.5px;
	color: var(--color-text-muted);
}

.wc-block-checkout__terms a {
	color: var(--acc-deep);
	font-weight: 600;
}

.wc-block-checkout__terms a:hover {
	text-decoration: underline;
}

/* Elállási nyilatkozat — az ÁSZF-sor alá, EGY hozzájárulás-csoportként.
   A WooCommerce az „order" helyre regisztrált mezőket önálló lépésként rendereli,
   „Additional order information" címmel (erre nincs magyar fordítás) + a téma
   ikon-csempéjével és saját elválasztó vonallal. Egyetlen jelölőnégyzethez ez sok.

   ⚠️ A HELYES HORGONY: `.wc-block-checkout__order-fields`.
   (2026-09-10, két téves kör után: a `.wc-block-checkout__additional-information`
   sehol nem létezik; a `…-fields` alak CSAK a szerkesztő-bundle-ben; a mentett
   `.wp-block-woocommerce-…-block` wrapper pedig NINCS a kiszolgált HTML-ben, mert a
   pénztárt teljes egészében JS építi fel. A futásidejű osztály a frontend bundle-ben
   deklarált `wc-block-checkout__order-fields`.) */
.wc-block-checkout__form .wc-block-checkout__order-fields {
	border-top: 0;
	padding-top: 0;
	margin-top: clamp(8px, 1.1vw, 11px);
}

/* A lépés-fejléc (angol cím + üres ikon-csempe) elrejtése: a jelölőnégyzet felirata
   önmagában elmondja, miről van szó. */
.wc-block-checkout__order-fields .wc-block-components-checkout-step__heading {
	display: none;
}

/* Tipográfia: pontosan az ÁSZF-sor ritmusa. */
.wc-block-checkout__order-fields .wc-block-components-checkbox__label {
	font-size: 12.5px;
	color: var(--color-text-muted);
	line-height: 1.5;
}

/* A „Megrendelés" gomb ne fusson rá a feliratra. */
.wc-block-checkout__order-fields .wc-block-components-checkout-step__container {
	padding-bottom: 0;
}

.wc-block-checkout__order-fields .wc-block-components-checkbox {
	margin-bottom: clamp(14px, 1.8vw, 18px);
}

.wc-block-checkout__order-fields .wc-block-components-validation-error {
	font-size: 12px;
	margin-top: 4px;
	margin-bottom: 6px;
}

/* --------------------------------------------------------------------------
   10. Pénztár — akciósor: vissza-link + „Megrendelés" gomb.
   -------------------------------------------------------------------------- */
.wc-block-checkout__actions_row {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 16px;
	flex-wrap: wrap;
	padding: 0;
	margin: 0;
	border: 0;
}

/* Az actions-blokk wc-default padding/margója ki — különben a Megrendelés gomb
   és a bizalmi sor közé ~28px extra kerül. */
.wc-block-checkout__sidebar .wc-block-checkout__actions {
	padding: 0;
	margin: 0;
}

/* „Vissza a kosárhoz" link törölve (Zsolt kérése) — a navigációt a fejléc kosár-ikon
   és a breadcrumb adja; a Megrendelés gomb így teljes szélességű a sidebarban. */
.wc-block-components-checkout-return-to-cart-button {
	display: none;
}

.wc-block-components-checkout-place-order-button.wc-block-components-button {
	background: var(--acc);
	border-radius: 12px;
	padding: 15px 26px;
	width: 100%;
	min-width: 0;
	font-family: var(--font-heading);
	font-weight: 700;
	font-size: 15.5px;
	box-shadow: 0 12px 30px var(--acc-sh);
	transition: background var(--transition-fast);
}

.wc-block-components-checkout-place-order-button.wc-block-components-button:hover {
	background: var(--acc-deep);
}

/* Lakat-ikon a gombfeliratban (bundle). */
.wc-block-components-checkout-place-order-button__text {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
}

.wc-block-components-checkout-place-order-button__text::before {
	content: '';
	width: 19px;
	height: 19px;
	flex: none;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zm-6 9c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zM9 8V6c0-1.66 1.34-3 3-3s3 1.34 3 3v2H9z'/></svg>") center / contain no-repeat;
	mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zm-6 9c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zM9 8V6c0-1.66 1.34-3 3-3s3 1.34 3 3v2H9z'/></svg>") center / contain no-repeat;
}

/* Inaktív állapot (bundle: bézs, glow nélkül). */
.wc-block-components-checkout-place-order-button.wc-block-components-button:disabled,
.wc-block-components-checkout-place-order-button.wc-block-components-button[aria-disabled='true'] {
	background: #eae1d2;
	color: #aea391;
	box-shadow: none;
	opacity: 1;
	cursor: not-allowed;
}

/* Bundle: a Megrendelés gomb VIZUÁLISAN inaktív, amíg az ÁSZF-et nincs elfogadva
   (:has() a terms-checkbox állapotára). ⚠️ SZÁNDÉKOSAN NINCS pointer-events:none —
   a gomb mindig kattintható marad, és a WC validálja az ÁSZF-et (kötelező pipa
   hiányában hibaüzenetet ad). Így a rendelés-leadás soha nem blokkolódik CSS-ből. */
.wc-block-checkout:has(.wc-block-checkout__terms input[type='checkbox']:not(:checked)) .wc-block-components-checkout-place-order-button.wc-block-components-button {
	background: #eae1d2;
	color: #aea391;
	box-shadow: none;
	cursor: pointer;
}

/* --------------------------------------------------------------------------
   11. Pénztár — rendelés-összesítő sidebar.
   -------------------------------------------------------------------------- */
.wc-block-components-checkout-order-summary__title {
	font-family: var(--font-heading);
	font-weight: 700;
	font-size: 12.5px;
	letter-spacing: .09em;
	text-transform: uppercase;
	color: #a69c8c;
	padding: 0 0 12px;
	border: 0;
}

.wc-block-components-checkout-order-summary__title-text {
	flex: 1;
}

.wc-block-components-checkout-order-summary__content {
	padding: 0;
	border: 0;
}

/* Tétel-sorok az összesítőben (58px kép + qty-badge — bundle). */
.wc-block-components-order-summary-item {
	padding: 9px 0;
	font-size: 13.5px;
	min-width: 0; /* flex-elemként ne nőjön a tartalom min-content-jére (ár-kilógás ellen) */
}

.wc-block-components-order-summary-item + .wc-block-components-order-summary-item {
	border-top: 1px solid #eee7da;
}

/* A `.wc-block-checkout__sidebar` prefix a wc-blocks késői kép-szabályát üti
   (különben ~48×42-re méretezi, nem 58×58 négyzetre). */
.wc-block-checkout__sidebar .wc-block-components-order-summary-item__image,
.wc-block-components-order-summary-item__image {
	position: relative;
	width: 58px;
	min-width: 58px;
	height: 58px;
	flex: none;
	overflow: visible; /* a qty-badge kilóghat (-7px) */
}

/* Négyzetes (1:1) termékkép — a forráskép tetszőleges arányú (pl. 300×135),
   object-fit: cover tölti ki torzítás nélkül. */
.wc-block-checkout__sidebar .wc-block-components-order-summary-item__image img,
.wc-block-components-order-summary-item__image img {
	width: 58px;
	height: 58px;
	object-fit: cover;
	object-position: center;
	border-radius: 12px;
	border: 1px solid #ede5d8;
	background: var(--color-product-bg);
}

/* Mennyiség-badge: sötét pötty fehér gyűrűvel, bal-felső (bundle). */
.wc-block-checkout__sidebar .wc-block-components-order-summary-item__quantity,
.wc-block-components-order-summary-item__image .wc-block-components-order-summary-item__quantity,
.wc-block-components-order-summary-item__quantity {
	background: var(--color-dark);
	color: #fff;
	border: 0;
	box-shadow: 0 0 0 2px #fff;
	min-width: 20px;
	height: 20px;
	border-radius: 100px;
	font-family: var(--font-heading);
	font-weight: 700;
	font-size: 11px;
	line-height: 20px;
	top: -7px;
	left: -7px;
	right: auto;
}

.wc-block-checkout__sidebar .wc-block-components-order-summary-item__description,
.wc-block-components-order-summary-item .wc-block-components-order-summary-item__description {
	padding-left: 13px;
	/* A leírás-oszlop a maradék helyet tölti ki, de a TARTALOM nem diktálja a
	   szélességet (flex-basis:0 + min-width:0) — így a nowrap metadata (pl.
	   „Kiegészítő ehhez: …") kipontozódik, nem tolja ki az árat a sávból. */
	flex: 1 1 0;
	min-width: 0;
	overflow: hidden;
}

.wc-block-components-order-summary-item__description .wc-block-components-product-name {
	font-family: var(--font-heading);
	font-weight: 700;
	font-size: 13.5px;
	line-height: 1.25;
	color: var(--color-text);
}

/* A rejtett egység-ár ÜRES wrapperje is ki — különben a magassága nélkül is a
   margója gap-et hagy a név és a szín között. */
.wc-block-components-order-summary-item__description .wc-block-cart-item__prices {
	display: none;
}

.wc-block-components-order-summary-item__total-price {
	font-family: var(--font-heading);
	font-weight: 700;
	font-size: 13.5px;
	color: var(--color-text);
	flex: 0 0 auto; /* az ár sose zsugorodjon/csússzon ki */
	white-space: nowrap;
}

/* MINDEN metadata-sor (szín, „Kiegészítő ehhez: …", stb.) egy sorban, a leírás-
   oszlop szélességére korlátozva, túlcsordulásnál kipontozva — soha nem lóg túl. */
.wc-block-components-order-summary-item .wc-block-components-product-metadata,
.wc-block-components-order-summary-item .wc-block-components-product-metadata > *,
.wc-block-components-order-summary-item .wc-block-components-product-details > * {
	max-width: 100%;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* Egység-ár („X Ft / db") elrejtve — a bundle csak az össz-árat mutatja. */
.wc-block-components-order-summary-item__individual-prices {
	display: none;
}

.wc-block-components-order-summary-item .wc-block-components-product-metadata {
	font-size: 12.5px;
	margin-top: 2px;
}

/* A wc-blocks belső order-summary padding (pr:16px) ütközik a kártya-paddinggal
   és a tétel-tartalom túllóg rajta (a jobb szél inkonzisztens) — nullázzuk, hogy
   a tétel-sor CSAK a kártya szimmetrikus paddingját használja. */
.wc-block-checkout__sidebar .wc-block-components-order-summary,
.wc-block-cart__sidebar .wc-block-components-order-summary {
	padding: 0;
}

/* A tétel-lista konténere wc-default `display: table` — a táblázat a TARTALOMRA
   nő (figyelmen kívül hagyva a szülő szélességét), ezért a hosszú metadata
   kitolta az egész oszlopot. Block + 100% szélesség → a szülő (kártya) korlátoz,
   a tétel-sorok kipontozódnak. NEM sidebar-scope: a WC keskeny nézeten (is-small/
   is-mobile) egy KÜLÖN mobil-összesítőt is rendel a sidebaron KÍVÜL — arra is kell. */
.wc-block-components-order-summary__content {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
}

/* Bundle: az összesítőben csak név + szín + össz-ár. A bőbeszédű rövid leírást
   (product-metadata__description — pl. „18 mm Egger bútorlap…") elrejtjük; a szín
   KÜLÖN elemben van (.product-details), tehát marad. (Nem sidebar-scope — a mobil-
   összesítőre is, különben ott a hosszú leírás vízszintes túllógást okoz.) */
.wc-block-components-order-summary-item .wc-block-components-product-metadata__description {
	display: none;
}

/* Szín-sor: „Szín:" halvány címke + hangsúlyos érték (bundle). EGY sorban,
   túlcsordulásnál kipontozva (…). */
.wc-block-components-order-summary-item .wc-block-components-product-details {
	margin: 0;
}

/* A product-details szerkezet: div > span(__[attr]) > __name + __value. Egy sor,
   kipontozva. A konténerre ÉS a közvetlen gyerekre is (block + ellipsis). */
.wc-block-components-order-summary-item .wc-block-components-product-details,
.wc-block-components-order-summary-item .wc-block-components-product-details > * {
	display: block;
	max-width: 100%;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	margin: 0;
}

.wc-block-components-order-summary-item .wc-block-components-product-details__name {
	color: #a69c8c;
	font-weight: 400;
}

.wc-block-components-order-summary-item .wc-block-components-product-details__value {
	color: #3b372f;
	font-weight: 600;
}

/* Bundle: max 3 tétel az összesítőben; a 4.+ line-item elrejtve. A „+N db további
   termék" sort a page-penztar.php JS-e injektálja (dinamikus N a store-ból). A sor
   .eb-more-row osztályú (NEM order-summary-item), így a nth-child rejtés nem érinti. */
.wc-block-components-order-summary__content > .wc-block-components-order-summary-item:nth-child(n+4) {
	display: none;
}

.eb-more-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 9px 0;
	border-top: 1px solid #eee7da;
	color: var(--color-text-muted);
	text-decoration: none;
}

.eb-more-row:hover {
	opacity: .72;
}

.eb-more-row__left {
	display: flex;
	align-items: center;
	gap: 13px;
	min-width: 0;
}

.eb-more-row__icon {
	width: 40px;
	height: 40px;
	flex: none;
	border-radius: 11px;
	background: var(--color-product-bg);
	border: 1px dashed #d8cdbb;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--acc-deep);
}

.eb-more-row__icon svg {
	width: 22px;
	height: 22px;
	fill: currentColor;
}

.eb-more-row__text {
	font-size: 13.5px;
	color: var(--color-text-muted);
	line-height: 1.4;
}

.eb-more-row__text strong {
	font-family: var(--font-heading);
	font-weight: 700;
	color: var(--color-text);
}

.eb-more-row__chevron {
	flex: none;
	display: flex;
	color: var(--color-text-faint);
}

.eb-more-row__chevron svg {
	width: 19px;
	height: 19px;
	fill: currentColor;
}

/* --------------------------------------------------------------------------
   12. Értesítések (blokk-szintű) + betöltés.
   -------------------------------------------------------------------------- */
/* Robusztus túllógás-védelem MINDEN blokk-notice-ra (Stripe/fizetési hiba,
   megerősítés, kupon-üzenet, stb.): a hosszú, törhetetlen tartalom (pl. egy URL
   vagy azonosító) SOSE tolja szét a szekciót — a notice legfeljebb a befoglaló
   box széléig ér, a szöveg pedig tördel. (Az éles oldalon a Stripe bármilyen
   hiba/megerősítő üzenetet dobhat — ez általánosan kezeli.) */
.wc-block-components-notice-banner,
.wc-block-store-notice,
.wc-block-components-notice-banner__summary {
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
}

.wc-block-components-notice-banner__content,
.wc-block-components-notice-banner__content *,
.wc-block-store-notice {
	min-width: 0;
	overflow-wrap: break-word;
	word-break: break-word;
}

/* A notice flex-elrendezésében a szöveg-blokk zsugorodhasson (min-width:0),
   különben a törhetetlen URL kitolná az ikon/×-gomb mellett. */
.wc-block-components-notice-banner > .wc-block-components-notice-banner__content {
	flex: 1 1 auto;
}

.wc-block-components-notice-banner.is-success {
	border-color: var(--color-success);
}

.wc-block-components-notice-banner.is-error {
	border-color: var(--color-error);
}

.wc-block-components-notice-banner.is-info {
	border-color: var(--color-warning);
}

.wc-block-components-skeleton__element {
	opacity: .6;
}

/* --------------------------------------------------------------------------
   13. Mobil / kis konténer finomítás.
      (Az 1 oszlopos átrendezést a wc-blocks saját is-medium/is-small
      logikája végzi — a 2. szekció grid-je csak is-large-on él.)
   -------------------------------------------------------------------------- */
/* Mobil sticky „Tovább a pénztárhoz" sáv (wc-blocks kis nézeten fixálja). */
.wc-block-cart__submit-container--sticky {
	background: rgba(247, 244, 239, .94);
	-webkit-backdrop-filter: blur(6px);
	backdrop-filter: blur(6px);
	border-top: 1px solid #eee7da;
	padding: 12px 16px;
}

@media (max-width: 767px) {
	.eb-wooshop__hero {
		align-items: flex-start;
		flex-direction: column;
		gap: 14px;
	}

	.wc-block-cart__sidebar,
	.wc-block-checkout__sidebar {
		padding: 18px 16px;
	}

	.wc-block-cart table.wc-block-cart-items {
		padding: 0 14px;
		max-width: 100%;
	}
}

/* Mobil (≤600px): az item-táblázat wc-default `display:table` + a fix px grid-
   oszlopok a tartalom-min-content miatt TÚLLÓGTAK a kártyán (a fehér item-kártya
   szélesebb volt, mint a totál-kártya). Ebben a tartományban a táblázatot block-ká
   tesszük (width:100% = pontosan a kártya) és a sor termék-oszlopát rugalmasra
   (minmax(0,1fr)) állítjuk → az item-kártya egy vonalban a totál-kártyával, a
   hosszú név/szín tördel, semmi nem lóg túl. (601–767px-en a wc saját, tág
   elrendezése amúgy is kitölti a kártyát — ott nem nyúlunk hozzá.) */
@media (max-width: 600px) {
	.wc-block-cart table.wc-block-cart-items {
		display: block;
		width: 100%;
		max-width: 100%;
		box-sizing: border-box;
	}

	.wc-block-cart table.wc-block-cart-items > tbody,
	.wc-block-cart table.wc-block-cart-items > thead {
		display: block;
		width: 100%;
	}

	.wc-block-cart .wc-block-cart-items__row {
		grid-template-columns: auto minmax(0, 1fr) auto auto !important;
		width: 100%;
		max-width: 100%;
	}

	.wc-block-cart .wc-block-cart-item__product {
		min-width: 0;
	}
}


/* --------------------------------------------------------------------------
   9. Order-received (köszönő oldal) — klasszikus Woo thankyou-markup a
   Checkout Block oldalán. Újratervezve 2026-08-12.

   Markup: woocommerce/checkout/thankyou.php (theme override) + a core
   order/order-details*.php sablonok + a BACS átjáró kimenete (bacs.php, 10.7.0).
   Hierarchia: kulcsadat-sáv → e-mail visszaigazolás → FIZETÉSI TEENDŐ (kiemelt)
   → rendelés részletei → címek → segítség-sáv.
   -------------------------------------------------------------------------- */

/* A köszönő nézetben nincs lépésjelző és breadcrumb → szűkebb felső tér. */
.eb-wooshop--received .eb-wooshop__hero {
	margin-top: 0;
	align-items: flex-start;
}

/* Pipa-badge és a cím EGY sorban (a badge a címmel függőlegesen középre igazítva). */
.eb-wooshop__titlerow {
	display: flex;
	align-items: center;
	gap: clamp(12px, 1.4vw, 18px);
}

.eb-wooshop__badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: none;
	width: clamp(38px, 4.4vw, 52px);
	height: clamp(38px, 4.4vw, 52px);
	border-radius: 50%;
	background: var(--acc);
	color: #fff;
	box-shadow: 0 8px 22px var(--acc-sh);
}

.eb-wooshop__badge svg {
	width: 55%;
	height: 55%;
}

.eb-ty {
	max-width: 860px;
}

/* --- Kulcsadat-sáv (rendelésszám / dátum / fizetési mód [/ végösszeg]) ----- */
.eb-ty__facts {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
	gap: 1px;
	background: #EEE7DA;
	border: 1px solid #EEE7DA;
	border-radius: var(--radius-feature);
	overflow: hidden;
	margin: 0 0 12px;
}

.eb-ty__fact {
	background: #fff;
	padding: 14px 18px;
	display: flex;
	flex-direction: column;
	gap: 3px;
	min-width: 0;
}

.eb-ty__factlabel {
	font-size: 11.5px;
	font-weight: 600;
	letter-spacing: .07em;
	text-transform: uppercase;
	color: var(--color-text-faintest);
}

.eb-ty__factvalue {
	font-family: var(--font-heading);
	font-weight: 700;
	font-size: 16.5px;
	letter-spacing: -.01em;
	overflow-wrap: anywhere;
}

.eb-ty__fact--total .eb-ty__factvalue {
	color: var(--acc-deep);
	font-size: 19px;
}

/* --- E-mail visszaigazolás sor -------------------------------------------- */
.eb-ty__mailnote {
	display: flex;
	align-items: center;
	gap: 9px;
	font-size: 14px;
	color: var(--color-text-muted);
	margin: 0 0 22px;
}

.eb-ty__mailnote svg {
	flex: none;
	color: #b9ae9d;
}

.eb-ty__mailnote strong {
	color: var(--color-text);
	overflow-wrap: anywhere;
}

/* --- Fizetési teendő (elsődleges kártya) ---------------------------------- */
.eb-ty__pay {
	background: #fff;
	border: 1px solid #EEE7DA;
	border-radius: var(--radius-panel);
	box-shadow: 0 10px 30px rgba(38, 34, 28, .05);
	padding: clamp(18px, 2.4vw, 26px);
	margin: 0 0 8px;
}

.eb-ty__pay--transfer {
	border-left: 4px solid var(--acc);
}

.eb-ty__paytitle {
	font-size: clamp(18px, 2.4vw, 23px);
	font-weight: 700;
	margin: 0 0 16px;
}

/* Utalandó összeg + közlemény: a két adat, ami nélkül nem indul az utalás. */
.eb-ty__paykeys {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
	gap: 12px;
	margin-bottom: 18px;
}

.eb-ty__paykey {
	background: var(--acc-soft);
	border: 1px solid #EEDACF;
	border-radius: var(--radius-feature);
	padding: 13px 16px;
	display: flex;
	flex-direction: column;
	gap: 4px;
	min-width: 0;
}

.eb-ty__paylabel {
	font-size: 11.5px;
	font-weight: 600;
	letter-spacing: .07em;
	text-transform: uppercase;
	color: #9d8571;
}

.eb-ty__payvalue {
	display: flex;
	align-items: center;
	gap: 8px;
	font-family: var(--font-heading);
	font-weight: 800;
	font-size: 22px;
	line-height: 1.15;
	letter-spacing: -.02em;
	color: var(--acc-deep);
	overflow-wrap: anywhere;
}

.eb-ty__copy {
	position: relative;
	flex: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	padding: 0;
	border: 1px solid #E3CDC0;
	border-radius: 9px;
	background: #fff;
	color: var(--acc-deep);
	cursor: pointer;
	transition: background var(--transition-fast), border-color var(--transition-fast);
}

.eb-ty__copy:hover {
	background: var(--acc-bg);
	border-color: var(--acc);
}

.eb-ty__copied {
	position: absolute;
	bottom: calc(100% + 7px);
	left: 50%;
	transform: translateX(-50%);
	background: var(--color-dark);
	color: #fff;
	font-family: var(--font-body);
	font-size: 11.5px;
	font-weight: 600;
	letter-spacing: 0;
	padding: 4px 9px;
	border-radius: 7px;
	white-space: nowrap;
	opacity: 0;
	pointer-events: none;
	transition: opacity var(--transition-fast);
}

.eb-ty__copy.is-copied .eb-ty__copied {
	opacity: 1;
}

/* Az átjáró saját kimenete a kártyán belül (BACS: utasítás-szöveg + bankadatok). */
.eb-ty__payinfo > *:first-child {
	margin-top: 0;
}

.eb-ty__payinfo > *:last-child {
	margin-bottom: 0;
}

.eb-ty__payinfo p {
	font-size: 14.5px;
	color: var(--color-text-muted);
	margin: 0 0 12px;
}

.eb-wooshop .woocommerce-bacs-bank-details {
	background: #FBF8F3;
	border: 1px solid #EEE7DA;
	border-radius: var(--radius-feature);
	margin: 14px 0 0;
	padding: 16px 18px;
}

/* A „Bank adatok" cím visszafogott: a kártya címe már megmondta a teendőt. */
.eb-wooshop .wc-bacs-bank-details-heading {
	font-family: var(--font-body);
	font-size: 11.5px;
	font-weight: 700;
	letter-spacing: .07em;
	text-transform: uppercase;
	color: var(--color-text-faintest);
	margin: 0 0 10px;
}

.eb-wooshop .wc-bacs-bank-details-account-name {
	font-size: 15px;
	font-weight: 700;
	margin: 0 0 8px;
}

.eb-wooshop ul.wc-bacs-bank-details {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 6px;
}

.eb-wooshop ul.wc-bacs-bank-details li {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 10px;
	font-size: 14.5px;
	margin: 0;
	padding: 7px 0 0;
	border-top: 1px dashed #E6DECF;
	overflow-wrap: anywhere;
}

.eb-wooshop ul.wc-bacs-bank-details li:first-child {
	border-top: 0;
	padding-top: 0;
}

.eb-wooshop ul.wc-bacs-bank-details li strong {
	font-family: var(--font-heading);
	letter-spacing: -.01em;
}

/* --- Sikertelen fizetés --------------------------------------------------- */
.eb-ty__failed {
	background: #fff;
	border: 1px solid #EEE7DA;
	border-radius: var(--radius-panel);
	padding: clamp(18px, 2.4vw, 26px);
	margin-bottom: 20px;
}

.eb-ty__failedtitle {
	font-size: clamp(18px, 2.4vw, 23px);
	font-weight: 700;
	margin: 0 0 14px;
}

.eb-ty__failedactions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 18px 0 0;
}

/* --- Rendelés részletei + címek (core order/*.php markup) ----------------- */
.eb-wooshop .woocommerce-order-details__title,
.eb-wooshop .woocommerce-customer-details h2,
.eb-wooshop .woocommerce-column__title,
.eb-wooshop .woocommerce-order-downloads__title {
	font-size: clamp(16px, 1.9vw, 19px);
	font-weight: 700;
	margin: 30px 0 12px;
}

.eb-wooshop table.woocommerce-table--order-details,
.eb-wooshop table.woocommerce-table--order-downloads {
	background: #fff;
	border: 1px solid #EEE7DA;
	border-collapse: separate;
	border-radius: var(--radius-panel);
	border-spacing: 0;
	overflow: hidden;
	width: 100%;
}

.eb-wooshop table.woocommerce-table--order-details th,
.eb-wooshop table.woocommerce-table--order-details td,
.eb-wooshop table.woocommerce-table--order-downloads th,
.eb-wooshop table.woocommerce-table--order-downloads td {
	border: 0;
	border-bottom: 1px solid #F1EBDF;
	font-size: 14.5px;
	padding: 13px 18px;
	text-align: left;
	vertical-align: top;
}

.eb-wooshop table.woocommerce-table--order-details thead th,
.eb-wooshop table.woocommerce-table--order-downloads thead th {
	background: #FBF8F3;
	color: var(--color-text-muted);
	font-size: 11.5px;
	font-weight: 700;
	letter-spacing: .07em;
	text-transform: uppercase;
}

.eb-wooshop table.woocommerce-table--order-details td:last-child,
.eb-wooshop table.woocommerce-table--order-details th:last-child {
	text-align: right;
	white-space: nowrap;
}

.eb-wooshop table.woocommerce-table--order-details tfoot th,
.eb-wooshop table.woocommerce-table--order-details tfoot td {
	background: #FBF8F3;
	font-weight: 600;
}

/* A végösszeg-sor KULCS alapján emelkedik ki (order-details.php override) —
   nem „utolsó sor" alapon, mert utána még jön a fizetési mód és a megjegyzés. */
.eb-wooshop table.woocommerce-table--order-details tfoot tr.order-total-row--order_total th,
.eb-wooshop table.woocommerce-table--order-details tfoot tr.order-total-row--order_total td {
	font-family: var(--font-heading);
	font-size: 16.5px;
	font-weight: 700;
	color: var(--acc-deep);
}

.eb-wooshop table.woocommerce-table--order-details tfoot tr.order-note-row th,
.eb-wooshop table.woocommerce-table--order-details tfoot tr.order-note-row td {
	background: #fff;
	color: var(--color-text-muted);
	font-weight: 400;
	white-space: normal;
}

.eb-wooshop table.woocommerce-table--order-details tfoot tr.order-note-row th {
	font-weight: 600;
}

.eb-wooshop table.woocommerce-table--order-details tfoot tr:last-child th,
.eb-wooshop table.woocommerce-table--order-details tfoot tr:last-child td {
	border-bottom: 0;
}

.eb-wooshop .wc-item-meta {
	color: var(--color-text-muted);
	font-size: 12.5px;
	list-style: none;
	margin: 6px 0 0;
	padding: 0;
}

.eb-wooshop .wc-item-meta li {
	margin: 2px 0;
}

.eb-wooshop .wc-item-meta p,
.eb-wooshop .wc-item-meta strong {
	display: inline;
	margin: 0;
}

.eb-wooshop .woocommerce-columns--addresses {
	display: grid;
	gap: 14px;
	grid-template-columns: 1fr 1fr;
}

.eb-wooshop .woocommerce-customer-details address {
	background: #fff;
	border: 1px solid #EEE7DA;
	border-radius: var(--radius-feature);
	font-size: 14.5px;
	font-style: normal;
	line-height: 1.7;
	padding: 16px 18px;
}

/* --- Segítség-sáv (a lap lezárása) ---------------------------------------- */
.eb-ty__help {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	background: #FBF8F3;
	border: 1px solid #EEE7DA;
	border-radius: var(--radius-feature);
	padding: 16px 20px;
	margin-top: 26px;
}

.eb-ty__helptext {
	font-size: 14.5px;
	color: var(--color-text-muted);
	margin: 0;
}

.eb-ty__helpactions {
	display: inline-flex;
	flex-wrap: wrap;
	gap: 10px;
}

.eb-ty__helpactions .button {
	font-size: 14px;
	padding: 10px 18px;
}

/* --- Vendég e-mail-megerősítő űrlap (lejárt session után) ----------------- */
.eb-wooshop .woocommerce-verify-email {
	background: #fff;
	border: 1px solid #EEE7DA;
	border-radius: var(--radius-panel);
	margin-top: 6px;
	max-width: 560px;
	padding: 20px;
}

.eb-wooshop .woocommerce-verify-email .form-row {
	display: flex;
	flex-direction: column;
	margin: 0 0 14px;
}

.eb-wooshop .woocommerce-verify-email .form-row label {
	font-size: 13.5px;
	font-weight: 600;
	color: var(--color-text-muted);
	margin-bottom: 6px;
}

.eb-wooshop .woocommerce-verify-email .form-row input[type="email"] {
	width: 100%;
}

@media (max-width: 640px) {
	.eb-wooshop .woocommerce-columns--addresses {
		grid-template-columns: 1fr;
	}

	.eb-wooshop table.woocommerce-table--order-details th,
	.eb-wooshop table.woocommerce-table--order-details td {
		padding: 11px 13px;
	}

	.eb-ty__helpactions .button {
		flex: 1 1 auto;
		text-align: center;
	}
}

/* IBAN-sor a bankadat-listában: a JS-sel hozzáadott másoló gomb igazítása. */
.eb-wooshop ul.wc-bacs-bank-details li.iban {
	align-items: center;
}

.eb-wooshop ul.wc-bacs-bank-details li .eb-ty__copy {
	width: 26px;
	height: 26px;
	border-radius: 8px;
}

/* Mobil: a rendelés-tábla ne lógjon ki (a jobb oszlop nowrap-je + a hosszú
   szállítási megnevezés vízszintes scrollt okozott ≤430px-en). */
.eb-wooshop table.woocommerce-table--order-details .woocommerce-table__product-name,
.eb-wooshop table.woocommerce-table--order-details tfoot td {
	overflow-wrap: anywhere;
}

@media (max-width: 640px) {
	.eb-wooshop table.woocommerce-table--order-details td:last-child,
	.eb-wooshop table.woocommerce-table--order-details th:last-child {
		white-space: normal;
	}
}

/* --------------------------------------------------------------------------
   10. Belépés-kártya a köszönő oldalon (global/form-login.php + a vendég
   e-mail-megerősítő űrlap). Akkor jelenik meg, ha a rendelés regisztrált
   vásárlóhoz tartozik, de a látogató nincs belépve.
   -------------------------------------------------------------------------- */
.eb-wooshop .woocommerce-info,
.eb-wooshop .woocommerce-message,
.eb-wooshop .woocommerce-error {
	max-width: 560px;
}

.eb-login {
	background: #fff;
	border: 1px solid #EEE7DA;
	border-radius: var(--radius-panel);
	box-shadow: 0 10px 30px rgba(38, 34, 28, .05);
	max-width: 560px;
	padding: clamp(18px, 2.4vw, 26px);
}

.eb-login__message p {
	font-size: 14.5px;
	color: var(--color-text-muted);
	margin: 0 0 6px;
}

.eb-login__fields {
	margin-top: 14px;
}

.eb-login__fields .form-row {
	display: flex;
	flex-direction: column;
	margin: 0 0 14px;
}

.eb-login__fields label,
.eb-wooshop .woocommerce-verify-email .form-row label {
	font-size: 13.5px;
	font-weight: 600;
	color: var(--color-text-muted);
	margin-bottom: 6px;
}

.eb-login__fields .required {
	color: var(--acc-deep);
	text-decoration: none;
	border: 0;
}

.eb-login__fields .input-text {
	width: 100%;
}

.eb-login__meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	margin: 2px 0 18px;
}

.eb-login__remember {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	color: var(--color-text-muted);
	margin: 0;
	cursor: pointer;
}

.eb-login__remember input {
	width: 17px;
	height: 17px;
	accent-color: var(--acc);
	margin: 0;
}

.eb-login__lost {
	font-size: 13.5px;
	font-weight: 600;
	color: var(--acc-deep);
	border-bottom: 1px solid transparent;
	transition: border-color var(--transition-fast);
}

.eb-login__lost:hover {
	border-bottom-color: currentColor;
}

.eb-login__submit {
	margin: 0;
}

.eb-login__submit .button {
	width: 100%;
}

/* Jelszó-megjelenítő gomb (a woocommerce.js szúrja be; a stílusa a lekapcsolt
   klasszikus Woo CSS-ben lenne — lásd woo-account.css 12. szekció). */
.eb-wooshop .password-input {
	display: block;
	position: relative;
}

.eb-wooshop .show-password-input {
	position: absolute;
	right: 12px;
	top: 50%;
	transform: translateY(-50%);
	width: 24px;
	height: 24px;
	padding: 0;
	border: 0;
	background: transparent;
	cursor: pointer;
	opacity: .55;
	transition: opacity var(--transition-fast);
}

.eb-wooshop .show-password-input::before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	background-color: var(--color-text-muted);
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 16q1.875 0 3.188-1.312Q16.5 13.375 16.5 11.5t-1.312-3.188Q13.875 7 12 7 10.125 7 8.812 8.312 7.5 9.625 7.5 11.5t1.312 3.188Q10.125 16 12 16Zm0-1.8q-1.125 0-1.912-.788Q9.3 12.625 9.3 11.5t.788-1.912Q10.875 8.8 12 8.8t1.913.788q.787.787.787 1.912t-.787 1.912q-.788.788-1.913.788Zm0 4.8q-3.65 0-6.65-2.038Q2.35 14.925 1 11.5q1.35-3.425 4.35-5.463Q8.35 4 12 4t6.65 2.037Q21.65 8.075 23 11.5q-1.35 3.425-4.35 5.462Q15.65 19 12 19Z'/%3E%3C/svg%3E") center / 22px 22px no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 16q1.875 0 3.188-1.312Q16.5 13.375 16.5 11.5t-1.312-3.188Q13.875 7 12 7 10.125 7 8.812 8.312 7.5 9.625 7.5 11.5t1.312 3.188Q10.125 16 12 16Zm0-1.8q-1.125 0-1.912-.788Q9.3 12.625 9.3 11.5t.788-1.912Q10.875 8.8 12 8.8t1.913.788q.787.787.787 1.912t-.787 1.912q-.788.788-1.913.788Zm0 4.8q-3.65 0-6.65-2.038Q2.35 14.925 1 11.5q1.35-3.425 4.35-5.463Q8.35 4 12 4t6.65 2.037Q21.65 8.075 23 11.5q-1.35 3.425-4.35 5.462Q15.65 19 12 19Z'/%3E%3C/svg%3E") center / 22px 22px no-repeat;
}

.eb-wooshop .show-password-input:hover,
.eb-wooshop .show-password-input.display-password {
	opacity: 1;
}

.eb-wooshop .show-password-input.display-password::before {
	background-color: var(--acc);
}

.eb-wooshop .password-input .input-text {
	padding-right: 44px;
}
