/**
 * SWEB — Checkout / flux comandă
 * Pasul 1 „Comanda ta" (sumar comandă) — shortcode [sweb_order].
 * Calibrat 1:1 din Figma:
 *   Order step 1 #16268:21736 · Order Summary #16279:17110
 * Bază = Follies / General (crem + portocaliu). Jerry + Americana override mai jos.
 */

/* -------------------------------------------------------------------------- *
 * Container
 * -------------------------------------------------------------------------- */
.sweb-order {
	box-sizing: border-box;
	width: 100%;
	max-width: 1440px;
	margin: 0 auto;
	padding: 16px 48px 64px;
	font-family: 'Inter', sans-serif;
	color: var(--sweb-c-text, #4E220B);
}

/* Breadcrumbs */
.sweb-order__crumbs {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 16px;
	font-size: 16px;
	line-height: 1;
}
.sweb-order__crumbs a { color: var(--sweb-c-text, #4E220B); text-decoration: none; }
.sweb-order__crumbs a:hover { text-decoration: underline; }
.sweb-order__crumbsep { color: var(--sweb-c-text-muted, #8D6C5A); }
.sweb-order__crumbcur { font-weight: 700; color: var(--sweb-c-text, #4E220B); }
.sweb-order *,
.sweb-order *::before,
.sweb-order *::after { box-sizing: border-box; }

/* Reset butoane — anulează overlay-ul „roz" al temei/Woo */
.sweb-order button {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	font-family: inherit;
	margin: 0;
	box-shadow: none;
	text-shadow: none;
	outline: none;
}
.sweb-order button:focus,
.sweb-order button:hover,
.sweb-order button:active { box-shadow: none; outline: none; }

/* -------------------------------------------------------------------------- *
 * Antet (titlu + bară de progres)
 * -------------------------------------------------------------------------- */
.sweb-order__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	flex-wrap: wrap;
	margin-bottom: 40px;
}
.sweb-order__title {
	margin: 0;
	font-family: 'Google Sans Flex', sans-serif;
	font-weight: 600;
	font-size: 36px;
	line-height: 1;
	letter-spacing: -0.02em;
	color: var(--sweb-c-text, #4E220B);
}

/* Bară de progres (pași) */
.sweb-steps {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 16px;
}
.sweb-steps__step {
	display: flex;
	align-items: center;
	gap: 8px;
}
.sweb-steps__num {
	flex: 0 0 auto;
	width: 44px;
	height: 44px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 999px;
	background: #DFD5CF;
	color: var(--sweb-c-text, #4E220B);
	font-family: 'Google Sans Flex', sans-serif; font-weight: 600;
	font-size: 20px;
	line-height: 1;
}
.sweb-steps__step.is-active .sweb-steps__num {
	background: var(--sweb-c-text, #4E220B);
	color: #FEFAF0;
}
.sweb-steps__label {
	font-family: 'Inter', sans-serif;
	font-weight: 500;
	font-size: 14px;
	line-height: 1;
	color: var(--sweb-c-text-muted, #8D6C5A);
	white-space: nowrap;
}
.sweb-steps__step.is-active .sweb-steps__label { color: var(--sweb-c-text, #4E220B); }
.sweb-steps__bar {
	width: 120px;
	max-width: 12vw;
	height: 2px;
	border-radius: 99px;
	background: #DFD5CF;
}
.sweb-steps__bar.is-done { background: var(--sweb-c-primary, #D35A0C); }

/* -------------------------------------------------------------------------- *
 * Grid (listă + sumar)
 * -------------------------------------------------------------------------- */
.sweb-order__grid {
	display: grid;
	grid-template-columns: 1fr 437px;
	align-items: start;
	gap: 16px;
}
.sweb-order__list {
	display: flex;
	flex-direction: column;
	gap: 20px;
	min-width: 0;
}

/* Etichete coloane */
.sweb-order__labels {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding-bottom: 8px;
	border-bottom: 1px solid #DFD5CF;
	font-weight: 500;
	font-size: 14px;
	letter-spacing: 0.01em;
	color: var(--sweb-c-text, #4E220B);
}

/* Card restaurant */
.sweb-order__card {
	display: flex;
	flex-direction: column;
	background: #FFFFFF;
	border: 1px solid #DFD5CF;
	border-radius: 8px;
	overflow: hidden;
}
.sweb-order__cardlogo {
	display: flex;
	align-items: center;
	padding: 12px 16px;
	background: #FFFDF9;
	border-bottom: 1px solid #DFD5CF;
}
.sweb-order__cardlogo img { height: 28px; width: auto; max-width: 160px; object-fit: contain; display: block; }
.sweb-order__cardlogo span {
	font-family: 'Google Sans Flex', sans-serif; font-weight: 600;
	font-size: 18px;
	color: var(--sweb-c-text, #4E220B);
}
.sweb-order__rows {
	display: flex;
	flex-direction: column;
	gap: 16px;
	padding: 16px;
}

/* Linie produs — o singură linie: thumb | nume | preț unitar | stepper | subtotal, trash abs. */
.sweb-order__row {
	position: relative;
	display: grid;
	grid-template-columns: 120px minmax(120px, 1fr) minmax(80px, auto) auto minmax(80px, auto);
	grid-template-areas: "thumb name price qty sub";
	align-items: center;
	gap: 16px;
	padding-right: 44px;
}
.sweb-order__thumb {
	grid-area: thumb;
	width: 120px;
	height: 104px;
	border: 1px solid #DFD5CF;
	border-radius: 8px;
	overflow: hidden;
	box-sizing: border-box;
	background-color: #FEFAF0;
	background-image: var(--sweb-thumb-img);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
/* Thumb-uri per restaurant (ca in sidecart general) */
.sweb-order__card--follies .sweb-order__thumb,
.sweb-order__card--general .sweb-order__thumb {
	padding: 0 8px;
	background-image: var(--sweb-thumb-img), url('/wp-content/uploads/2026/07/card-homepage.jpg');
	background-size: contain, cover;
	background-position: center, center;
	background-repeat: no-repeat, no-repeat;
	background-origin: content-box, border-box;
	background-color: #FEFAF0;
}
.sweb-order__card--jerry .sweb-order__thumb {
	background-color: #FFFFFF;
	border: 4px solid transparent !important;
	border-image: var(--jerry-rough, url('../../img/rough-border-irregular.svg')) 8 / 4px round !important;
	border-radius: 0 !important;
}
.sweb-order__card--americana .sweb-order__thumb {
	border: 1px solid #363636 !important;
	background-color: #0F0F0F;
	background-size: cover !important;
}
.sweb-order__name {
	grid-area: name;
	min-width: 0;
	font-family: 'Google Sans Flex', sans-serif;
	font-weight: 600;
	font-size: 16px;
	line-height: 1.1;
	letter-spacing: 0;
	color: var(--sweb-c-text, #4E220B);
}
.sweb-order__opt {
	display: block;
	margin-top: 3px;
	font-family: 'Inter', sans-serif;
	font-weight: 400;
	font-size: 12px;
	line-height: 1.35;
	color: var(--sweb-c-text-muted, #8D6C5A);
}
.sweb-order__price {
	grid-area: price;
	font-family: 'Inter', sans-serif;
	font-weight: 500;
	font-size: 16px;
	line-height: 1;
	color: var(--sweb-c-text-muted, #8D6C5A);
	white-space: nowrap;
}
.sweb-order__price .woocommerce-Price-amount { color: inherit; font-weight: 500; }

/* Stepper cantitate — butoane rotunde */
.sweb-order__qty {
	grid-area: qty;
	justify-self: center;
	display: inline-flex;
	align-items: center;
	gap: 12px;
}
.sweb-order__qtybtn,
.sweb-order__qtybtn:hover,
.sweb-order__qtybtn:focus,
.sweb-order__qtybtn:active,
.sweb-order__qtybtn:focus-visible {
	flex: 0 0 40px !important;
	width: 40px !important;
	height: 40px !important;
	box-sizing: border-box;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	padding: 0 !important;
	border: 0 !important;
	outline: 0 !important;
	border-radius: 999px !important;
	background: var(--sweb-c-primary, #D35A0C) !important;
	color: #FEFAF0 !important;
	cursor: pointer;
	box-shadow: none !important;
	transition: opacity 0.15s ease;
}
.sweb-order__qtybtn:hover { opacity: 0.9; }
.sweb-order__qtybtn svg { width: 18px; height: 18px; display: block; color: #FEFAF0; stroke: #FEFAF0; }
.sweb-order__qtybtn[disabled],
.sweb-order__qtybtn[disabled]:hover {
	background: #EBE8E6 !important;
	color: #B9ACA3 !important;
	cursor: default;
	opacity: 1;
}
.sweb-order__qtybtn[disabled] svg { color: #B9ACA3; stroke: #B9ACA3; }
/* Minus: fara animatie pe hover - aspect constant (ca pe hover) */
.sweb-order__qtybtn--minus,
.sweb-order__qtybtn--minus:hover,
.sweb-order__qtybtn--minus:focus,
.sweb-order__qtybtn--minus:active { transition: none !important; opacity: 0.9 !important; }
.sweb-order__qtybtn--minus[disabled],
.sweb-order__qtybtn--minus[disabled]:hover { opacity: 1 !important; }
.sweb-order__qtyval {
	min-width: 20px;
	text-align: center;
	font-family: 'Inter', sans-serif;
	font-weight: 500;
	font-size: 16px;
	color: var(--sweb-c-text, #4E220B);
}

/* Subtotal linie */
.sweb-order__linesub {
	grid-area: sub;
	justify-self: end;
	font-family: 'Inter', sans-serif;
	font-weight: 500;
	font-size: 16px;
	line-height: 1;
	color: var(--sweb-c-accent, #C54D00);
	white-space: nowrap;
}
.sweb-order__linesub .woocommerce-Price-amount { color: inherit; }

/* Buton ștergere linie — colț dreapta-sus, fără roz/hover de la temă */
.sweb-order__del,
.sweb-order__del:hover,
.sweb-order__del:focus,
.sweb-order__del:active,
.sweb-order__del:focus-visible {
	position: absolute;
	top: 0;
	right: 0;
	width: 28px !important;
	height: 28px !important;
	box-sizing: border-box;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	padding: 0 !important;
	background: #FEFAF0 !important;
	border: 1px solid #DFD5CF !important;
	border-radius: 4px !important;
	color: var(--sweb-c-text-muted, #8D6C5A) !important;
	cursor: pointer;
	outline: 0 !important;
	box-shadow: none !important;
	transition: color 0.15s ease, border-color 0.15s ease;
}
.sweb-order__del:hover { color: var(--sweb-c-danger, #D73B3B) !important; border-color: var(--sweb-c-danger, #D73B3B) !important; }
.sweb-order__del svg { display: none !important; }
.sweb-order__del::before {
	content: "";
	flex: 0 0 auto;
	width: 14px;
	height: 16px;
	background-color: currentColor;
	-webkit-mask: url('../../img/icon-trash.svg') center / contain no-repeat;
	        mask: url('../../img/icon-trash.svg') center / contain no-repeat;
}

/* Coș gol */
.sweb-order__empty {
	grid-column: 1 / -1;
	margin: 0;
	padding: 40px 16px;
	text-align: center;
	font-size: 16px;
	color: var(--sweb-c-text-muted, #8D6C5A);
}

/* Acțiuni sub listă — pe aceeași linie */
.sweb-order__actions {
	display: flex;
	flex-wrap: nowrap;
	gap: 16px;
	padding-top: 16px;
	border-top: 1px solid #DFD5CF;
	margin-top: 4px;
}
.sweb-order__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 12px 24px;
	border-radius: 8px;
	font-family: 'Inter', sans-serif;
	font-weight: 500;
	font-size: 16px;
	line-height: 1;
	text-decoration: none;
	white-space: nowrap;
	cursor: pointer;
	transition: opacity 0.15s ease;
}
.sweb-order__btn:hover { opacity: 0.9; }
.sweb-order__btn--ghost { background: transparent; border: 1px solid var(--sweb-c-text, #4E220B); color: var(--sweb-c-text, #4E220B); }
.sweb-order__btn--dark { background: var(--sweb-c-text, #4E220B); border: 1px solid var(--sweb-c-text, #4E220B); color: #FEFAF0 !important; }
.sweb-order__btnicon { display: inline-flex; align-items: center; }
.sweb-order__btnicon svg { width: 16.5px; height: 19.5px; display: block; stroke-width: 1.5px; }

/* -------------------------------------------------------------------------- *
 * Card sumar comandă
 * -------------------------------------------------------------------------- */
.sweb-order__summary {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 24px;
	padding: 24px;
	background: #FFFFFF;
	border: 1px solid #DFD5CF;
	border-radius: 16px;
	position: sticky;
	top: 109px;
}
.sweb-order__sumtitle {
	margin: 0 0 24px;
	font-family: 'Google Sans Flex', sans-serif;
	font-weight: 600;
	font-size: 24px;
	line-height: 1;
	letter-spacing: 0;
	color: var(--sweb-c-text, #4E220B);
}
.sweb-order__sumrow {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 16px;
	font-size: 16px;
}
.sweb-order__sumrow > span:first-child { color: var(--sweb-c-text-muted, #8D6C5A); font-weight: 400; }
.sweb-order__sumrow > span:last-child { color: var(--sweb-c-text, #4E220B); font-weight: 500; }
.sweb-order__sumrow:last-child { margin-bottom: 0; }
.sweb-order__sumdiv { height: 1px; background: #DFD5CF; border-radius: 99px; margin-bottom: 16px; }
.sweb-order__sumrow--total > span:first-child {
	font-family: 'Google Sans Flex', sans-serif;
	font-weight: 600;
	font-size: 20px;
	color: var(--sweb-c-text, #4E220B);
}
.sweb-order__grandtotal {
	font-family: 'Inter', sans-serif !important;
	font-weight: 600 !important;
	font-size: 20px;
	color: var(--sweb-c-accent, #C54D00) !important;
}
.sweb-order__grandtotal .woocommerce-Price-amount { color: inherit; }
.sweb-order__next {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: 14px 24px;
	border-radius: 6px;
	background: var(--sweb-c-primary, #D35A0C);
	color: #FEFAF0;
	font-family: 'Google Sans Flex', sans-serif;
	font-weight: 600;
	font-size: 16px;
	line-height: 1;
	text-decoration: none;
	cursor: pointer;
	transition: opacity 0.15s ease;
}
.sweb-order__next:hover { opacity: 0.9; }

/* Stare de încărcare AJAX */
.sweb-order.is-busy { opacity: 0.6; pointer-events: none; }

/* Toast-ul de „adăugat" trebuie să apară peste popup-ul „Ai uitat ceva?" */
.sweb-addpop { z-index: 1300; }

/* -------------------------------------------------------------------------- *
 * Recomandări „Ți-ar mai place și.." (carusele pe branduri)
 * -------------------------------------------------------------------------- */
.sweb-order__recos { margin-top: 64px; display: flex; flex-direction: column; gap: 32px; }
.sweb-recos__title {
	margin: 0;
	font-family: 'Google Sans Flex', sans-serif; font-weight: 600;
	font-size: 32px;
	line-height: 1;
	letter-spacing: -0.02em;
	color: var(--sweb-c-text, #4E220B);
}
.sweb-brand--americana .sweb-recos__title { font-family: 'Racing Sans One', sans-serif; color: #FFFCFA; }
.sweb-recos__group { display: flex; flex-direction: column; gap: 16px; }
.sweb-recos__logo { display: flex; align-items: center; height: 48px; }
.sweb-recos__logo img { height: 40px; width: auto; max-width: 180px; object-fit: contain; display: block; }
.sweb-recos__logo span { font-family: 'Google Sans Flex', sans-serif; font-weight: 600; font-size: 24px; color: var(--sweb-c-text, #4E220B); }
.sweb-brand--jerry .sweb-recos__logo span { font-family: 'Afacad', sans-serif; color: #1A1A1A; }
.sweb-brand--americana .sweb-recos__logo span { font-family: 'Racing Sans One', sans-serif; color: #FFFCFA; }
/* Logo Follies/general devine alb pe pagina Americana (dark) */
.sweb-brand--americana .sweb-recos__group--follies .sweb-recos__logo img { filter: brightness(0) invert(1); }
/* Spațiu pentru săgețile absolute ale cat-row (jumătate peste marginea cardului) */
.sweb-order__recos .sweb-cat-row { padding: 0 8px; }
/* Americana in recomandarile de pe pagini generale (checkout/cos): fara fundalul negru sub carduri */
.sweb-order__recos .sweb-recos__group--americana .sweb-pp__rec {
	background: transparent !important;
	color: var(--sweb-c-text, #4E220B) !important;
}

@media (max-width: 600px) {
	.sweb-order__recos { margin-top: 40px; }
	.sweb-recos__title { font-size: 24px; }
}

/* -------------------------------------------------------------------------- *
 * Jerry — alb, bordură desenată de mână, CTA roșu, font Afacad
 * -------------------------------------------------------------------------- */
.sweb-brand--jerry .sweb-order__crumbs a,
.sweb-brand--jerry .sweb-order__crumbcur { color: #1A1A1A; }
.sweb-brand--jerry .sweb-order__title { font-family: 'Afacad', sans-serif; font-weight: 600; letter-spacing: 0; color: #1A1A1A; }
.sweb-brand--jerry .sweb-steps__num { font-family: 'Afacad', sans-serif; font-weight: 600; }
.sweb-brand--jerry .sweb-steps__step.is-active .sweb-steps__num { background: #1A1A1A; }
.sweb-brand--jerry .sweb-steps__bar.is-done { background: #E3403E; }
.sweb-brand--jerry .sweb-order__card {
	background: #FFFFFF;
	border: 4px solid transparent !important;
	border-image: var(--jerry-rough, url('../../img/rough-border-irregular.svg')) 8 / 4px round !important;
	border-radius: 0 !important;
	overflow: visible;
}
.sweb-brand--jerry .sweb-order__cardlogo { background: #FFFFFF; border-bottom: 1px dashed #CECFD0; }
.sweb-brand--jerry .sweb-order__name { font-family: 'Afacad', sans-serif; font-weight: 600; font-size: 18px; color: #1A1A1A; }
.sweb-brand--jerry .sweb-order__price { font-family: 'Afacad', sans-serif; color: #4A5565; }
.sweb-brand--jerry .sweb-order__linesub { font-family: 'Afacad', sans-serif; font-weight: 600; color: #1A1A1A; }
.sweb-brand--jerry .sweb-order__thumb {
	background-color: #FFFFFF;
	border: 4px solid transparent !important;
	border-image: var(--jerry-rough, url('../../img/rough-border-irregular.svg')) 8 / 4px round !important;
	border-radius: 0 !important;
}
.sweb-brand--jerry .sweb-order__qtybtn { background: #E3403E !important; }
.sweb-brand--jerry .sweb-order__qtyval { font-family: 'Afacad', sans-serif; color: #1A1A1A; }
.sweb-brand--jerry .sweb-order__del {
	background: #FFFFFF !important;
	border: 4px solid transparent !important;
	border-image: var(--jerry-rough, url('../../img/rough-border-irregular.svg')) 8 / 4px round !important;
	border-radius: 0 !important;
	color: #1A1A1A;
}
.sweb-brand--jerry .sweb-order__btn {
	font-family: 'Afacad', sans-serif; font-weight: 600; font-size: 18px;
	border: 4px solid transparent !important;
	border-image: var(--jerry-rough, url('../../img/rough-border-irregular.svg')) 8 / 4px round !important;
	border-radius: 0 !important;
}
.sweb-brand--jerry .sweb-order__btn--ghost { background: #FFFFFF; color: #1A1A1A; }
.sweb-brand--jerry .sweb-order__btn--dark { background: #1A1A1A; color: #FFFFFF; }
.sweb-brand--jerry .sweb-order__summary {
	background: #FFFFFF;
	border: 4px solid transparent !important;
	border-image: var(--jerry-rough, url('../../img/rough-border-irregular.svg')) 8 / 4px round !important;
	border-radius: 0 !important;
}
.sweb-brand--jerry .sweb-order__sumtitle { font-family: 'Afacad', sans-serif; font-weight: 600; color: #1A1A1A; }
.sweb-brand--jerry .sweb-order__sumrow--total > span:first-child { font-family: 'Afacad', sans-serif; font-weight: 600; color: #1A1A1A; }
.sweb-brand--jerry .sweb-order__grandtotal { font-family: 'Afacad', sans-serif !important; color: #1A1A1A !important; }
.sweb-brand--jerry .sweb-order__next {
	font-family: 'Afacad', sans-serif; font-weight: 600; font-size: 18px;
	background: #E3403E;
	border: 4px solid transparent !important;
	border-image: var(--jerry-rough, url('../../img/rough-border-irregular.svg')) 8 / 4px round !important;
	border-radius: 0 !important;
}

/* -------------------------------------------------------------------------- *
 * Americana — dark #161616, font Racing Sans One, CTA albastru
 * -------------------------------------------------------------------------- */
.sweb-brand--americana .sweb-order { color: #FFFCFA; }
.sweb-brand--americana .sweb-order__crumbs a,
.sweb-brand--americana .sweb-order__crumbcur { color: #FFFCFA; }
.sweb-brand--americana .sweb-order__crumbsep { color: #999999; }
.sweb-brand--americana .sweb-order__title { font-family: 'Racing Sans One', sans-serif; letter-spacing: 0; color: #FFFCFA; }
.sweb-brand--americana .sweb-steps__num { font-family: 'Racing Sans One', sans-serif; background: #363636; color: #FFFCFA; }
.sweb-brand--americana .sweb-steps__step.is-active .sweb-steps__num { background: #3475EE; color: #FFFCFA; }
.sweb-brand--americana .sweb-steps__label { color: #999999; }
.sweb-brand--americana .sweb-steps__step.is-active .sweb-steps__label { color: #FFFCFA; }
.sweb-brand--americana .sweb-steps__bar { background: #363636; }
.sweb-brand--americana .sweb-steps__bar.is-done { background: #3475EE; }
.sweb-brand--americana .sweb-order__labels { color: #FFFCFA; border-color: #363636; }
.sweb-brand--americana .sweb-order__card { background: #1E1E1E; border-color: #363636; }
.sweb-brand--americana .sweb-order__cardlogo { background: #161616; border-bottom-color: #363636; }
.sweb-brand--americana .sweb-order__name { color: #FFFCFA; }
.sweb-brand--americana .sweb-order__price { color: #CCCCCC; }
.sweb-brand--americana .sweb-order__linesub { color: #6190E7; }
.sweb-brand--americana .sweb-order__thumb { border-color: #363636; background-color: #0F0F0F; }
.sweb-brand--americana .sweb-order__qtybtn { background: #3475EE !important; color: #FFFCFA; }
.sweb-brand--americana .sweb-order__qtyval { color: #FFFCFA; }
.sweb-brand--americana .sweb-order__del { background: #161616 !important; border: 1px solid #363636 !important; color: #CCCCCC; }
.sweb-brand--americana .sweb-order__empty { color: #CCCCCC; }
.sweb-brand--americana .sweb-order__btn { font-family: 'Racing Sans One', sans-serif; font-size: 15px; }
.sweb-brand--americana .sweb-order__btn--ghost { background: #161616; border-color: #363636; color: #FFFCFA; }
.sweb-brand--americana .sweb-order__btn--dark { background: #3475EE; border-color: #3475EE; color: #FFFCFA; }
.sweb-brand--americana .sweb-order__actions { border-top-color: #363636; }
.sweb-brand--americana .sweb-order__summary { background: #1E1E1E; border-color: #363636; }
.sweb-brand--americana .sweb-order__sumtitle { font-family: 'Racing Sans One', sans-serif; color: #FFFCFA; }
.sweb-brand--americana .sweb-order__sumrow > span:first-child { color: #CCCCCC; }
.sweb-brand--americana .sweb-order__sumrow > span:last-child { color: #FFFCFA; }
.sweb-brand--americana .sweb-order__sumdiv { background: #363636; }
.sweb-brand--americana .sweb-order__sumrow--total > span:first-child { font-family: 'Racing Sans One', sans-serif; color: #FFFCFA; }
.sweb-brand--americana .sweb-order__grandtotal { color: #6190E7 !important; }
.sweb-brand--americana .sweb-order__next { font-family: 'Racing Sans One', sans-serif; background: #3475EE; border-radius: 4px; }
/* Logo-uri monocrome (Follies / general) devin albe pe fundal închis; Jerry rămâne colorat */
.sweb-brand--americana .sweb-order__card--follies .sweb-order__cardlogo img,
.sweb-brand--americana .sweb-order__card--general .sweb-order__cardlogo img {
	filter: brightness(0) invert(1);
}

/* -------------------------------------------------------------------------- *
 * Responsive
 * -------------------------------------------------------------------------- */
@media (max-width: 1024px) {
	.sweb-order__grid { grid-template-columns: 1fr; }
	.sweb-order__summary { position: static; }
}
@media (max-width: 600px) {
	.sweb-order { padding: 16px 16px 48px; }
	.sweb-order__title { font-size: 28px; }
	.sweb-steps__label { display: none; }
	.sweb-steps__bar { width: 40px; }
	/* Mobil: thumb stânga, nume sus, preț+subtotal, iar stepperul „−/+" pe rând dedesubt. */
	.sweb-order__row {
		grid-template-columns: 88px 1fr auto;
		grid-template-areas:
			"thumb name name"
			"thumb price sub"
			"qty   qty   qty";
		column-gap: 12px;
		row-gap: 10px;
		padding-right: 36px;
	}
	.sweb-order__thumb { width: 88px; height: 80px; align-self: start; }
	.sweb-order__qty { justify-self: start; }
	.sweb-order__price { justify-self: start; }
	.sweb-order__linesub { justify-self: end; }
	.sweb-order__actions { flex-wrap: wrap; }
}

/* ========================================================================== *
 * PASUL 2 — „Finalizarea comenzii" (restilizare checkout WooCommerce nativ)
 * Figma: Order step 2 #16278:16769
 * ========================================================================== */
.sweb-pay {
	box-sizing: border-box;
	width: 100%;
	max-width: 1440px;
	margin: 0 auto;
	padding: 16px 48px 64px;
	font-family: 'Inter', sans-serif;
	color: var(--sweb-c-text, #4E220B);
}
.sweb-pay *, .sweb-pay *::before, .sweb-pay *::after { box-sizing: border-box; }
.sweb-hide { display: none !important; }

/* Layout 2 coloane: formular (stânga) + rezumat/cupon/plată (dreapta) */
.sweb-pay form.checkout.woocommerce-checkout {
	display: grid;
	grid-template-columns: minmax(0, 665px) 437px;
	/* Randul 1 = FIX cat titlul „Comanda ta", restul se duce in randul 2.
	 * Fara asta, randurile sunt `auto`, iar `#customer_details` (grid-row: 1/3)
	 * isi imparte inaltimea EGAL peste ambele randuri => randul 1 se umfla si
	 * ramane gol sub titlu. Masurat: coloana stanga 1787px, titlu 49px,
	 * rezumat 966px => (1787-49-966)/2 = 386px gol. Cu cat creste formularul
	 * din stanga, cu atat creste golul. */
	grid-template-rows: min-content 1fr;
	column-gap: 16px;
	row-gap: 0;
	align-items: start;
	justify-content: center;
}
.sweb-pay #customer_details { grid-column: 1; grid-row: 1 / 3; }
.sweb-pay #order_review_heading { grid-column: 2; grid-row: 1; }
.sweb-pay #order_review { grid-column: 2; grid-row: 2; }

/* --- Cardul de formular (stânga) --- */
.sweb-pay #customer_details {
	background: #FFFFFF;
	border: 1px solid #DFD5CF;
	border-radius: 16px;
	padding: 24px;
}
.sweb-pay #customer_details .col2-set,
.sweb-pay #customer_details .col-1,
.sweb-pay #customer_details .col-2 { width: 100%; max-width: none; float: none; margin: 0; padding: 0; }
.sweb-pay #customer_details .col-2 { margin-top: 24px; }
.sweb-pay__cardtitle {
	margin: 0 0 20px;
	font-family: 'Google Sans Flex', sans-serif; font-weight: 600;
	font-size: 20px;
	line-height: 1;
	color: var(--sweb-c-text, #4E220B);
}
.sweb-brand--jerry .sweb-pay__cardtitle { font-family: 'Afacad', sans-serif; font-weight: 600; }
.sweb-brand--americana .sweb-pay__cardtitle { font-family: 'Racing Sans One', sans-serif; }

/* Grila câmpurilor (2 coloane) */
.sweb-pay .woocommerce-billing-fields__field-wrapper,
.sweb-pay .woocommerce-additional-fields__field-wrapper {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 22px 16px;
}
/* Nota de comanda: gap egal cu restul campurilor. `margin-top: 22px` facea golul
 * dublu (52px vs 28px la restul) — wrapper-ul are deja spacing natural. — Seba */
.sweb-pay .woocommerce-additional-fields__field-wrapper { margin-top: 0; }
.sweb-pay .form-row { margin: 0; padding: 0; float: none !important; width: auto !important; }
.sweb-pay .form-row-wide,
.sweb-pay .sweb-f--area { grid-column: 1 / -1; }
/* WooCommerce reconstruieste clasele campurilor de adresa la randare: pune
 * `form-row-wide` (full) pe city/state/phone PESTE ce seteaza filtrul nostru
 * (`woocommerce_checkout_fields` da form-row-first/last, dar la randare address
 * fields devin -wide). Fixam pe ID, care bate clasele => city|state si email|phone
 * revin la 50/50 pe aceeasi linie. Adresa (address_1) ramane full. Verificat live. */
.sweb-pay #billing_city_field,
.sweb-pay #billing_state_field,
.sweb-pay #billing_phone_field { grid-column: auto !important; }
.sweb-pay .woocommerce-billing-fields h3,
.sweb-pay .woocommerce-additional-fields > h3 { display: none; }

/* Câmp cu label flotant peste bordură */
.sweb-pay .sweb-f { position: relative; }
.sweb-pay .sweb-f__label {
	position: absolute;
	top: -8px;
	left: 12px;
	z-index: 2;
	margin: 0;
	padding: 0 4px;
	background: #FFFFFF;
	font-family: 'Inter', sans-serif;
	font-weight: 500;
	font-size: 12px;
	letter-spacing: 0.02em;
	color: #8D6C5A;
	line-height: 1;
}
.sweb-pay .sweb-f__label .required,
.sweb-pay .sweb-f__label abbr { color: #8D6C5A; text-decoration: none; border: 0; }
.sweb-pay .sweb-f .woocommerce-input-wrapper { width: 100%; }
.sweb-pay .sweb-f input.input-text,
.sweb-pay .sweb-f select,
.sweb-pay .sweb-f textarea,
.sweb-pay .select2-container .select2-selection {
	width: 100%;
	height: auto;
	min-height: 44px;
	padding: 12px 16px;
	border: 1px solid #DFD5CF;
	border-radius: 8px;
	background: #FFFFFF;
	font-family: 'Inter', sans-serif;
	font-size: 16px;
	color: var(--sweb-c-text, #4E220B);
	box-shadow: none;
	outline: none;
}
.sweb-pay .sweb-f textarea { min-height: 120px; resize: vertical; line-height: 1.4; }
.sweb-pay .sweb-f--area textarea { min-height: 130px; }
.sweb-pay .sweb-f input.input-text:focus,
.sweb-pay .sweb-f select:focus,
.sweb-pay .sweb-f textarea:focus {
	border-color: var(--sweb-c-primary, #D35A0C);
	box-shadow: 0 0 0 3px rgba(236, 131, 75, 0.2);
}
.sweb-pay .sweb-f input::placeholder,
.sweb-pay .sweb-f textarea::placeholder { color: #8D6C5A; opacity: 1; }
/* select2 (Județ / localitate) aliniat cu inputurile */
.sweb-pay .select2-container .select2-selection__rendered { line-height: 20px; padding: 0; color: var(--sweb-c-text, #4E220B); }
.sweb-pay .select2-container--default .select2-selection--single { border: 0; background: transparent; }
.sweb-pay .select2-container .select2-selection__arrow { top: 10px; right: 10px; }
/* Selecturi (Municipiu / Judet): border ca la inputuri (bate default-ul WooCommerce, 0,2,2) */
.sweb-pay .sweb-f select,
.sweb-pay .sweb-f textarea { border-color: #DFD5CF !important; border-radius: 8px !important; }
.sweb-pay .sweb-f select:focus { border-color: var(--sweb-c-primary, #D35A0C) !important; }

/* Checkbox „Livrare la o altă adresă" */
.sweb-pay #ship-to-different-address { margin: 22px 0 0; }
.sweb-pay #ship-to-different-address label {
	display: flex; align-items: center; gap: 10px;
	font-family: 'Inter', sans-serif; font-size: 16px; font-weight: 400; color: var(--sweb-c-text, #4E220B);
	cursor: pointer;
}
.sweb-pay #ship-to-different-address input { width: 20px; height: 20px; accent-color: var(--sweb-c-primary, #D35A0C); }

/* --- Coloana din dreapta: card-uri --- */
.sweb-pay #order_review { display: flex; flex-direction: column; gap: 16px; }

/* Cardul „Comanda ta" (titlu + tabel rezumat) */
.sweb-pay #order_review_heading {
	margin: 0;
	padding: 24px 24px 0;
	background: #FFFFFF;
	border: 1px solid #DFD5CF;
	border-bottom: 0;
	border-radius: 16px 16px 0 0;
	font-family: 'Google Sans Flex', sans-serif; font-weight: 600;
	font-size: 24px;
	line-height: 1;
	color: var(--sweb-c-text, #4E220B);
}
.sweb-brand--jerry .sweb-pay #order_review_heading { font-family: 'Afacad', sans-serif; font-weight: 600; }
.sweb-brand--americana .sweb-pay #order_review_heading { font-family: 'Racing Sans One', sans-serif; }
/* Avertismentul de comandă minimă (`.sweb-minwarn`) e GOL cât timp comanda e peste prag;
   fiind flex-child, un element gol adăuga încă un gap (16px) între „Comanda ta" și cupon.
   Îl scoatem din flux cât e gol → gap uniform între toate cardurile. — Seba */
.sweb-pay .sweb-minwarn:empty { display: none !important; }
.sweb-pay .woocommerce-checkout-review-order-table {
	margin: 0;
	/* WooCommerce pune margin-bottom: 24px pe `table.shop_table` (specificitate mai mare),
	   deci gap-ul spre cupon devenea 56px in loc de 16px. Il anulam → gap uniform. — Seba */
	margin-bottom: 0 !important;
	background: #FFFFFF;
	border: 1px solid #DFD5CF;
	border-top: 0;
	border-radius: 0 0 16px 16px;
	padding: 16px 24px 24px;
	border-collapse: collapse;
	width: 100%;
}
.sweb-pay .woocommerce-checkout-review-order-table thead,
.sweb-pay .woocommerce-checkout-review-order-table .cart_item { display: none; }
/* Anuleaza border/radius default WooCommerce pe shop_table (bate specificitatea woocommerce.css) */
.sweb-pay .woocommerce table.shop_table { border: 1px solid #DFD5CF !important; border-top: 0 !important; border-radius: 0 0 16px 16px !important; }

/* Rezumat „Comanda ta" — grupat pe brand, cu imagini (rând injectat) */
.sweb-pay__reviewrow > td { padding: 0 0 8px !important; border: 0 !important; background: transparent !important; }
.sweb-pay__summary { display: flex; flex-direction: column; gap: 16px; }
.sweb-pay__sumdiv { height: 1px; background: #DFD5CF; }
.sweb-pay__sumgroup { display: flex; flex-direction: column; gap: 12px; }
.sweb-pay__sumlogo { display: flex; align-items: center; }
.sweb-pay__sumlogo img { height: 26px; width: auto; max-width: 140px; object-fit: contain; display: block; }
.sweb-pay__sumlogo span { font-family: 'Google Sans Flex', sans-serif; font-weight: 600; font-size: 16px; color: var(--sweb-c-text, #4E220B); }
.sweb-pay__sumitem { position: relative; display: flex; align-items: center; gap: 12px; padding-right: 34px; }
.sweb-pay__sumthumb {
	flex: 0 0 auto;
	width: 84px; height: 72px;
	border: 1px solid #DFD5CF; border-radius: 8px;
	overflow: hidden; box-sizing: border-box;
	background-color: #FEFAF0;
	background-image: var(--sweb-thumb-img);
	background-repeat: no-repeat; background-position: center; background-size: contain;
}
/* Thumb review per restaurant (ca pe /cos) */
.sweb-pay__sumgroup--follies .sweb-pay__sumthumb,
.sweb-pay__sumgroup--general .sweb-pay__sumthumb {
	padding: 0 6px;
	background-image: var(--sweb-thumb-img), url('/wp-content/uploads/2026/07/card-homepage.jpg');
	background-size: contain, cover;
	background-position: center, center;
	background-repeat: no-repeat, no-repeat;
	background-origin: content-box, border-box;
	background-color: #FEFAF0;
}
.sweb-pay__sumgroup--jerry .sweb-pay__sumthumb {
	background-color: #FFFFFF;
	border: 4px solid transparent !important;
	border-image: var(--jerry-rough, url('../../img/rough-border-irregular.svg')) 8 / 4px round !important;
	border-radius: 0 !important;
}
.sweb-pay__sumgroup--americana .sweb-pay__sumthumb {
	border: 1px solid #363636 !important;
	background-color: #0F0F0F;
	background-size: cover !important;
}
.sweb-pay__suminfo { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 6px; }
.sweb-pay__sumname { font-family: 'Inter', sans-serif; font-weight: 600; font-size: 16px; line-height: 1.25; color: var(--sweb-c-text, #4E220B); }
.sweb-pay__sumqty { font-family: 'Inter', sans-serif; font-weight: 400; font-size: 14px; color: #8D6C5A; }
.sweb-pay__sumqty .woocommerce-Price-amount { color: inherit; }
.sweb-pay__sumopt { font-family: 'Inter', sans-serif; font-weight: 400; font-size: 12px; line-height: 1.35; color: #8D6C5A; }
.sweb-pay__sumdel {
	position: absolute; top: 0; right: 0;
	width: 28px; height: 28px;
	display: inline-flex; align-items: center; justify-content: center;
	background: #FEFAF0; border: 1px solid #DFD5CF; border-radius: 4px;
	color: #8D6C5A; text-decoration: none;
}
.sweb-pay__sumdel:hover { color: var(--sweb-c-danger, #D73B3B); border-color: var(--sweb-c-danger, #D73B3B); }
.sweb-pay__sumdel svg { display: none; }
.sweb-pay__sumdel::before {
	content: ""; flex: 0 0 auto; width: 14px; height: 16px;
	background-color: currentColor;
	-webkit-mask: url('../../img/icon-trash.svg') center / contain no-repeat;
	        mask: url('../../img/icon-trash.svg') center / contain no-repeat;
}
/* Logo Follies/general devine alb pe pagina Americana (dark) */
.sweb-brand--americana .sweb-pay__sumgroup--follies .sweb-pay__sumlogo img,
.sweb-brand--americana .sweb-pay__sumgroup--general .sweb-pay__sumlogo img { filter: brightness(0) invert(1); }
.sweb-pay .woocommerce-checkout-review-order-table th,
.sweb-pay .woocommerce-checkout-review-order-table td {
	border: 0;
	padding: 8px 0;
	font-family: 'Inter', sans-serif;
	font-size: 16px;
	color: var(--sweb-c-text, #4E220B);
}
.sweb-pay .woocommerce-checkout-review-order-table .cart_item td { border-bottom: 1px solid #EFE7E1; }
.sweb-pay .woocommerce-checkout-review-order-table .product-name { color: var(--sweb-c-text, #4E220B); font-weight: 600; }
.sweb-pay .woocommerce-checkout-review-order-table .product-name .product-quantity { color: #8D6C5A; font-weight: 400; }
.sweb-pay .woocommerce-checkout-review-order-table .product-total { text-align: right; white-space: nowrap; }
.sweb-pay .woocommerce-checkout-review-order-table .cart-subtotal th,
.sweb-pay .woocommerce-checkout-review-order-table tr.shipping th,
.sweb-pay .woocommerce-checkout-review-order-table tr.fee th { color: #8D6C5A; font-weight: 400; }
.sweb-pay .woocommerce-checkout-review-order-table .cart-subtotal td,
.sweb-pay .woocommerce-checkout-review-order-table tr.shipping td,
.sweb-pay .woocommerce-checkout-review-order-table tr.fee td { text-align: right; font-weight: 500; }
.sweb-pay .woocommerce-checkout-review-order-table tr.order-total th { font-family: 'Google Sans Flex', sans-serif; font-weight: 600; font-size: 20px; }
.sweb-pay .woocommerce-checkout-review-order-table tr.order-total td { text-align: right; }
.sweb-pay .woocommerce-checkout-review-order-table tr.order-total .amount { color: var(--sweb-c-accent, #C54D00); font-weight: 600; font-size: 20px; }
.sweb-pay .woocommerce-checkout-review-order-table tr.order-total { border-top: 1px solid #DFD5CF; }

/* Cardul Cupon */
.sweb-pay__coupon {
	background: #FFFFFF;
	border: 1px solid #DFD5CF;
	border-radius: 16px;
	/* acelasi padding ca celelalte carduri din coloana (ex. „Taxă de livrare"). — Seba */
	padding: 18px 20px;
}
.sweb-pay__cardtitle { /* reutilizat: titlu card dreapta */ }
.sweb-pay__coupon .sweb-pay__cardtitle,
.sweb-pay__coupon > h2 {
	margin: 0 0 16px;
	font-family: 'Google Sans Flex', sans-serif; font-weight: 600;
	font-size: 20px;
}
.sweb-pay__coupon .woocommerce-form-coupon-toggle,
.sweb-pay__coupon .clear { display: none !important; }
/* Cupon: input ca celelalte campuri + buton pe dreapta, aceeasi inaltime */
.sweb-pay__coupon { display: flex; flex-wrap: wrap; align-items: stretch; column-gap: 16px; row-gap: 16px; }
.sweb-pay__coupon .sweb-pay__cardtitle,
.sweb-pay__coupon > h2 { flex: 1 1 100%; }
.sweb-pay__coupon .form-row { margin: 0 !important; padding: 0 !important; }
.sweb-pay__coupon .form-row-first { flex: 1 1 auto; min-width: 0; width: auto; position: relative; }
.sweb-pay__coupon .form-row-last { flex: 0 0 auto; width: auto; display: flex; align-items: stretch; }
.sweb-pay__coupon #coupon_code {
	width: 100%; min-height: 48px; padding: 12px 16px;
	border: 1px solid #DFD5CF; border-radius: 8px; background: #FFFFFF;
	font-family: 'Inter', sans-serif; font-size: 16px; color: var(--sweb-c-text, #4E220B);
	box-shadow: none; outline: none;
}
.sweb-pay__coupon #coupon_code:focus { border-color: var(--sweb-c-primary, #D35A0C); box-shadow: 0 0 0 3px rgba(236,131,75,0.2); }
.sweb-pay__coupon #coupon_code::placeholder { color: #8D6C5A; opacity: 1; }
.sweb-pay__coupon .form-row-last button,
.sweb-pay__coupon .form-row-last button:hover,
.sweb-pay__coupon .form-row-last button:focus,
.sweb-pay__coupon .form-row-last button:active {
	align-self: stretch;
	min-height: 48px;
	padding: 12px 28px;
	border: 0 !important;
	border-radius: 8px !important;
	/* buton primar ca restul CTA-urilor (era maro inchis, iesea din stil). — Seba */
	background: var(--sweb-c-primary, #D35A0C) !important;
	color: #FEFAF0 !important;
	font-family: 'Google Sans Flex', sans-serif; font-weight: 600; font-size: 16px;
	cursor: pointer;
	box-shadow: none !important;
	white-space: nowrap;
}
.sweb-pay__coupon .form-row-last button:hover { opacity: 0.9; }
.sweb-brand--jerry .sweb-pay__coupon .form-row-last button { background: #E3403E !important; }
.sweb-brand--americana .sweb-pay__coupon .form-row-last button { background: #3475EE !important; }

/* Cardul de plată */
.sweb-pay #payment.woocommerce-checkout-payment {
	background: #FFFFFF;
	border: 1px solid #DFD5CF;
	border-radius: 16px;
	padding: 24px;
}
.sweb-pay #payment::before { content: "Alege metoda de plată"; display: block; margin-bottom: 20px; font-family: 'Google Sans Flex', sans-serif; font-weight: 600; font-size: 20px; color: var(--sweb-c-text, #4E220B); }
.sweb-brand--jerry .sweb-pay #payment::before { font-family: 'Afacad', sans-serif; font-weight: 600; }
.sweb-brand--americana .sweb-pay #payment::before { font-family: 'Racing Sans One', sans-serif; }
.sweb-pay ul.wc_payment_methods { list-style: none; margin: 0 !important; padding: 0 !important; display: flex; flex-direction: column; gap: 10px; border: 0 !important; }
.sweb-pay #payment div.form-row.place-order { padding: 0 !important; }
.sweb-pay ul.wc_payment_methods li.wc_payment_method {
	display: grid;
	grid-template-columns: auto 1fr;
	grid-template-areas: "radio title" "radio desc";
	align-items: center;
	column-gap: 12px; row-gap: 2px;
	position: relative;
	padding: 14px 76px 14px 16px;
	border: 1px solid #DFD5CF;
	border-radius: 12px;
	background: #FFFFFF;
}
.sweb-pay ul.wc_payment_methods li.wc_payment_method > label {
	grid-area: title; margin: 0; display: block;
	font-family: 'Google Sans Flex', sans-serif; font-weight: 600; font-size: 16px; color: var(--sweb-c-text, #4E220B);
	cursor: pointer;
}
.sweb-pay ul.wc_payment_methods li.wc_payment_method > input[type="radio"] {
	grid-area: radio; align-self: center;
	-webkit-appearance: none !important; appearance: none !important;
	width: 22px !important; height: 22px !important; margin: 0 !important;
	border: 1.5px solid #DFD5CF; border-radius: 50%; background: #FFFFFF;
	display: inline-block !important; opacity: 1 !important; position: relative !important;
	flex: 0 0 auto; cursor: pointer;
}
.sweb-pay ul.wc_payment_methods li.wc_payment_method > input[type="radio"]:checked { border-color: var(--sweb-c-text, #4E220B); }
.sweb-pay ul.wc_payment_methods li.wc_payment_method > input[type="radio"]:checked::after {
	content: ""; position: absolute; inset: 4px; border-radius: 50%; background: var(--sweb-c-text, #4E220B);
}
.sweb-pay ul.wc_payment_methods li.wc_payment_method > .payment_box {
	grid-area: desc; display: block !important;
	background: transparent !important;
	margin: 0 !important; padding: 0 !important;
	font-size: 14px; color: #8D6C5A;
}
.sweb-pay ul.wc_payment_methods li.wc_payment_method > .payment_box p { margin: 0; }
.sweb-pay .payment_box::before { display: none !important; }
.sweb-pay .woocommerce-privacy-policy-text { margin: 20px 0 0; font-size: 14px; color: #677753; line-height: 1.5; }
.sweb-pay .woocommerce-privacy-policy-text a { color: var(--sweb-c-text, #4E220B); text-decoration: underline; font-weight: 500; }

/* Buton „Finalizează comanda" */
.sweb-pay #place_order,
.sweb-pay #place_order:hover,
.sweb-pay #place_order:focus,
.sweb-pay #place_order:active {
	width: 100%;
	margin-top: 0;
	padding: 14px 24px;
	border: 0 !important;
	border-radius: 6px !important;
	background: var(--sweb-c-primary, #D35A0C) !important;
	color: #FEFAF0 !important;
	font-family: 'Google Sans Flex', sans-serif; font-weight: 600;
	font-size: 16px;
	line-height: 1;
	cursor: pointer;
	box-shadow: none !important;
	transition: opacity 0.15s ease;
}
.sweb-brand--jerry .sweb-pay #place_order { font-family: 'Afacad', sans-serif; font-weight: 600; background: #E3403E !important; }
.sweb-brand--americana .sweb-pay #place_order { font-family: 'Racing Sans One', sans-serif; background: #3475EE !important; }
.sweb-pay #place_order:hover { opacity: 0.9; }

/* Notice-uri WooCommerce în layout */
.sweb-pay .woocommerce-NoticeGroup,
.sweb-pay .woocommerce-error,
.sweb-pay .woocommerce-message,
.sweb-pay .woocommerce-info { grid-column: 1 / -1; }

/* Responsive */
@media (max-width: 1040px) {
	.sweb-pay form.checkout.woocommerce-checkout { grid-template-columns: 1fr; }
	.sweb-pay #customer_details { grid-column: 1; grid-row: auto; }
	/* „Comanda ta" (heading) + produse = UN card continuu: heading are colturile de
	 * sus rotunjite, review continua fara gap. Gap-ul de 24px separa formularul de
	 * cardul „Comanda ta". Inainte era invers (heading lipit de formular, gol sub el). — Seba */
	.sweb-pay #order_review_heading { grid-column: 1; grid-row: auto; margin-top: 24px; }
	.sweb-pay #order_review { grid-column: 1; grid-row: auto; margin-top: 0; }
}
@media (max-width: 600px) {
	.sweb-pay { padding: 16px 16px 48px; }
	.sweb-pay .woocommerce-billing-fields__field-wrapper { grid-template-columns: 1fr; }
	.sweb-pay__coupon .checkout_coupon.woocommerce-form-coupon { flex-direction: column; }
}

/* ------- Pasul 2: rafinări (validare neutră, select-uri, radio, cupon) ------- */

/* Borduri neutre — anulează roșul/verdele de validare WooCommerce ca în design */
.sweb-pay .form-row.woocommerce-invalid input.input-text,
.sweb-pay .form-row.woocommerce-invalid select,
.sweb-pay .form-row.woocommerce-invalid textarea,
.sweb-pay .form-row.woocommerce-validated input.input-text,
.sweb-pay .form-row.woocommerce-validated select,
.sweb-pay .form-row.woocommerce-validated textarea,
.sweb-pay .woocommerce-invalid input.input-text,
.sweb-pay .woocommerce-validated input.input-text {
	border-color: #DFD5CF !important;
	box-shadow: none !important;
}
.sweb-pay .form-row.woocommerce-invalid input.input-text:focus,
.sweb-pay .form-row.woocommerce-invalid select:focus,
.sweb-pay .form-row.woocommerce-validated input.input-text:focus {
	border-color: var(--sweb-c-primary, #D35A0C) !important;
	box-shadow: 0 0 0 3px rgba(236, 131, 75, 0.2) !important;
}
/* Ascunde mesajele inline per-câmp (eroarea apare în notice-ul de sus la submit) */
.sweb-pay .woocommerce-billing-fields .woocommerce-error,
.sweb-pay .woocommerce-additional-fields .woocommerce-error { display: none; }

/* Select-uri (Județ / Municipiu) — aspect uniform cu inputurile + chevron */
.sweb-pay .sweb-f select,
.sweb-pay .sweb-f select.sweb-select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238D6C5A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 14px center;
	padding-right: 40px;
	cursor: pointer;
}

/* Camp BLOCAT: judet unic prestabilit (Covasna) + email cand esti logat.
 * Gri, ne-modificabil (`pointer-events: none` opreste deschiderea select-ului
 * si focusul; valoarea se trimite normal, nu e `disabled`). Sageata select
 * ascunsa — nu se deschide. — cerut de Seba */
.sweb-pay .sweb-f--locked select,
.sweb-pay .sweb-f--locked input.input-text {
	background-color: #F1EDE9 !important;
	color: #7A6555 !important;
	border-color: #DFD5CF !important;
	cursor: not-allowed;
	pointer-events: none;
}
.sweb-pay .sweb-f--locked select {
	background-image: none !important;
	padding-right: 14px;
}
/* Label-ul flotant are notch alb (`background: #FFFFFF`) care „taie" borderul.
 * Pe camp gri arata prost (dreptunghi alb pe gri) => label asortat cu fundalul. — Seba */
.sweb-pay .sweb-f--locked .sweb-f__label {
	background: #F1EDE9;
	border-radius: 4px;
}

/* Cupon — label flotant + placeholder, bordură neutră */
.sweb-pay__coupon .checkout_coupon .form-row { position: relative; }
.sweb-pay__coupon .checkout_coupon label {
	position: absolute;
	top: -8px;
	left: 12px;
	z-index: 2;
	margin: 0;
	padding: 0 4px;
	background: #FFFFFF;
	font-family: 'Inter', sans-serif;
	font-weight: 500;
	font-size: 12px;
	letter-spacing: 0.02em;
	color: #8D6C5A;
	line-height: 1;
}
.sweb-pay__coupon .checkout_coupon input.input-text { border-color: #DFD5CF !important; }
.sweb-pay__coupon .checkout_coupon input.input-text::placeholder { color: #8D6C5A; opacity: 1; }

/* Metode de plata - card selectat + iconita (radio definit mai sus) */
.sweb-pay ul.wc_payment_methods li.wc_payment_method:has(input:checked) {
	border-color: var(--sweb-c-primary, #D35A0C);
	background: rgba(245, 122, 32, 0.04);
}
.sweb-pay__payicon { position: absolute; right: 16px; top: 50%; transform: translateY(-50%); margin: 0; display: inline-flex; align-items: center; justify-content: center; }
.sweb-pay__payicon--cash { width: 44px; height: 32px; border-radius: 6px; background: rgba(58, 114, 13, 0.1); }
.sweb-pay__payicon--cash img, .sweb-pay__payicon--cash svg { width: 24px; height: 24px; }
.sweb-pay__payicon--card img { height: 40px; width: auto; display: block; }
.sweb-brand--jerry .sweb-pay ul.wc_payment_methods li.wc_payment_method:has(input:checked) { border-color: #E3403E; background: rgba(227,64,62,0.04); }
.sweb-brand--americana .sweb-pay ul.wc_payment_methods li.wc_payment_method:has(input:checked) { border-color: #3475EE; background: rgba(52,117,238,0.06); }

/* Opțiunea „Plată cu cardul" (mock) — dezactivată vizual (integrare în lucru) */
.sweb-pay ul.wc_payment_methods li.wc_payment_method.sweb-pay__method--mock.is-disabled {
	opacity: 0.6;
	cursor: not-allowed;
	background: #F6F1EC;
}
.sweb-pay__method--mock.is-disabled > label,
.sweb-pay__method--mock.is-disabled > input[type="radio"] { cursor: not-allowed; }
.sweb-pay__method--mock.is-disabled .payment_box p { color: #8D6C5A; font-style: italic; }

/* Voucherele clientului (aplicare rapidă) în cardul de cupon */
.sweb-pay__vouchers { flex: 1 1 100%; display: flex; flex-direction: column; gap: 10px; margin-top: 4px; }
.sweb-pay__vouchlabel { font-family: 'Inter', sans-serif; font-weight: 600; font-size: 14px; color: var(--sweb-c-text, #4E220B); }
.sweb-pay__voucher {
	display: flex; align-items: center; justify-content: space-between; gap: 12px;
	padding: 12px 14px; border: 1px dashed var(--sweb-c-primary, #D35A0C); border-radius: 10px;
	background: rgba(245, 122, 32, 0.05);
}
.sweb-pay__voucher.is-applied { border-style: solid; border-color: #3A720D; background: rgba(58, 114, 13, 0.07); }
.sweb-pay__voucherinfo { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.sweb-pay__vouchval { font-family: 'Inter', sans-serif; font-weight: 600; font-size: 14px; color: var(--sweb-c-text, #4E220B); }
.sweb-pay__vouchcode { font-family: 'Inter', sans-serif; font-size: 12px; letter-spacing: 0.04em; color: #8D6C5A; }
.sweb-pay__vouchbtn {
	flex: 0 0 auto; border: 0; cursor: pointer; border-radius: 8px;
	padding: 8px 18px; font-family: 'Inter', sans-serif; font-weight: 600; font-size: 14px;
	color: #FFFFFF; background: var(--sweb-c-primary, #D35A0C); transition: opacity 0.15s ease;
}
.sweb-pay__vouchbtn:hover { opacity: 0.9; }
.sweb-pay__vouchbtn.is-done { background: #3A720D; cursor: default; }
.sweb-brand--jerry .sweb-pay__vouchbtn { background: #1A1A1A; }
.sweb-brand--jerry .sweb-pay__voucher { border-color: #E3403E; background: rgba(227,64,62,0.05); }
.sweb-brand--americana .sweb-pay__vouchbtn { background: #3475EE; }
.sweb-brand--americana .sweb-pay__voucher { border-color: #3475EE; background: rgba(52,117,238,0.06); }

/* ========================================================================== *
 * PASUL 3 — „Comanda ta a fost plasată!" (order-received)
 * Figma: Order success #16283:17563
 * ========================================================================== */
.sweb-success {
	box-sizing: border-box;
	width: 100%;
	max-width: 668px;
	margin: 0 auto;
	padding: 40px 24px 64px;
	font-family: 'Inter', sans-serif;
	color: var(--sweb-c-text, #4E220B);
	display: flex;
	flex-direction: column;
	gap: 32px;
}
.sweb-success *, .sweb-success *::before, .sweb-success *::after { box-sizing: border-box; }
.sweb-success__head { display: flex; flex-direction: column; align-items: center; gap: 16px; text-align: center; }
.sweb-success__badge {
	width: 64px; height: 64px; flex: 0 0 auto;
	display: inline-flex; align-items: center; justify-content: center;
	border-radius: 999px; background: #277109;
}
.sweb-success__badge svg { width: 34px; height: 34px; }
.sweb-success__title {
	margin: 0;
	font-family: 'Google Sans Flex', sans-serif; font-weight: 600;
	font-size: 44px; line-height: 1.05; letter-spacing: -0.02em;
	color: var(--sweb-c-text, #4E220B);
}
.sweb-brand--jerry .sweb-success__title { font-family: 'Afacad', sans-serif; font-weight: 600; }
.sweb-brand--americana .sweb-success__title { font-family: 'Racing Sans One', sans-serif; }
.sweb-brand--americana .sweb-success { color: #FFFCFA; }
.sweb-success__sub { margin: -16px 0 0; text-align: center; font-size: 16px; font-weight: 500; color: var(--sweb-c-text, #4E220B); }

/* Card */
.sweb-success__card {
	background: #FFFDF9;
	border: 1px solid #DFD5CF;
	border-radius: 16px;
	padding: 32px;
	display: flex; flex-direction: column; gap: 16px;
}
.sweb-brand--americana .sweb-success__card { background: #1E1E1E; border-color: #363636; }
.sweb-success__block { display: flex; flex-direction: column; gap: 12px; }
.sweb-success__h {
	margin: 0;
	font-family: 'Google Sans Flex', sans-serif; font-weight: 600;
	font-size: 20px; line-height: 1; color: var(--sweb-c-text, #4E220B);
}
.sweb-brand--jerry .sweb-success__h { font-family: 'Afacad', sans-serif; font-weight: 600; }
.sweb-brand--americana .sweb-success__h,
.sweb-brand--americana .sweb-success__title { color: #FFFCFA; }
.sweb-brand--americana .sweb-success__h { font-family: 'Racing Sans One', sans-serif; }
.sweb-success__div { height: 1px; background: #DFD5CF; }
.sweb-brand--americana .sweb-success__div { background: #363636; }
.sweb-success__ordno { margin: 0; font-size: 16px; color: #8D6C5A; }
.sweb-success__ordno strong { color: var(--sweb-c-text, #4E220B); }
.sweb-success__hint { margin: 0; display: flex; align-items: flex-start; gap: 8px; font-size: 14px; line-height: 1.4; color: #8D6C5A; }
.sweb-success__hicon { flex: 0 0 auto; color: #8D6C5A; }
.sweb-success__hicon svg { width: 18px; height: 18px; display: block; }

/* Sumar */
.sweb-success__group { display: flex; flex-direction: column; gap: 12px; }
.sweb-success__logo { display: flex; align-items: center; }
.sweb-success__logo img { height: 26px; width: auto; max-width: 140px; object-fit: contain; display: block; }
.sweb-success__logo span { font-family: 'Google Sans Flex', sans-serif; font-weight: 600; font-size: 16px; color: var(--sweb-c-text, #4E220B); }
.sweb-success__item { display: flex; align-items: center; gap: 16px; }
.sweb-success__thumb {
	flex: 0 0 auto; width: 102px; height: 88px;
	border: 1px solid #DFD5CF; border-radius: 8px;
	background-color: #FEFAF0;
	background-repeat: no-repeat; background-position: center; background-size: cover;
}
.sweb-success__info { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 6px; }
.sweb-success__name { font-family: 'Inter', sans-serif; font-weight: 600; font-size: 16px; line-height: 1.25; color: var(--sweb-c-text, #4E220B); }
.sweb-success__qty { font-family: 'Inter', sans-serif; font-size: 14px; color: #8D6C5A; }
.sweb-success__qty .woocommerce-Price-amount { color: inherit; }
.sweb-success__linesub { flex: 0 0 auto; font-weight: 500; font-size: 14px; color: var(--sweb-c-text, #4E220B); white-space: nowrap; }
.sweb-brand--americana .sweb-success__name,
.sweb-brand--americana .sweb-success__linesub { color: #FFFCFA; }
.sweb-brand--americana .sweb-success__thumb { border-color: #363636; background-color: #0F0F0F; }
.sweb-brand--americana .sweb-success__group--follies .sweb-success__logo img,
.sweb-brand--americana .sweb-success__group--general .sweb-success__logo img { filter: brightness(0) invert(1); }

/* Totaluri */
.sweb-success__totals { display: flex; flex-direction: column; gap: 8px; margin-top: 4px; }
.sweb-success__row { display: flex; align-items: center; justify-content: space-between; gap: 16px; font-size: 16px; }
.sweb-success__row > span:first-child { color: #8D6C5A; }
.sweb-success__row > span:last-child { color: var(--sweb-c-text, #4E220B); font-weight: 500; }
.sweb-success__row--total { margin-top: 4px; }
.sweb-success__row--total > span:first-child { font-family: 'Inter', sans-serif; font-weight: 700; font-size: 16px; color: var(--sweb-c-text, #4E220B); }
.sweb-success__grand { color: var(--sweb-c-accent, #C54D00) !important; font-weight: 700 !important; font-size: 16px; }
.sweb-success__grand .woocommerce-Price-amount { color: inherit; }
.sweb-brand--americana .sweb-success__row > span:last-child,
.sweb-brand--americana .sweb-success__row--total > span:first-child { color: #FFFCFA; }

/* Linii text */
.sweb-success__line { margin: 0; font-size: 16px; line-height: 1.4; color: var(--sweb-c-text, #4E220B); }
.sweb-success__muted { color: #8D6C5A; }
.sweb-brand--americana .sweb-success__line { color: #FFFCFA; }

/* Buton */
.sweb-success__btn {
	display: inline-flex; align-items: center; justify-content: center;
	width: 100%; padding: 14px 24px; border-radius: 6px;
	background: var(--sweb-c-primary, #D35A0C); color: #FEFAF0;
	font-family: 'Google Sans Flex', sans-serif; font-weight: 600; font-size: 16px; line-height: 1;
	text-decoration: none; cursor: pointer; transition: opacity 0.15s ease;
}
.sweb-success__btn:hover { opacity: 0.9; }
.sweb-brand--jerry .sweb-success__btn { font-family: 'Afacad', sans-serif; font-weight: 600; background: #E3403E; }
.sweb-brand--americana .sweb-success__btn { font-family: 'Racing Sans One', sans-serif; background: #3475EE; }

@media (max-width: 600px) {
	.sweb-success { padding: 24px 16px 48px; }
	.sweb-success__title { font-size: 32px; }
	.sweb-success__card { padding: 20px; }
	.sweb-success__thumb { width: 84px; height: 72px; }
}

/* ========================================================================== *
 * Popup „Ai uitat ceva?" (upsell pe Pasul 1) — Figma #16289:17111
 * ========================================================================== */
.sweb-forgot {
	position: fixed; inset: 0; z-index: 1200;
	display: flex; align-items: center; justify-content: center;
	padding: 20px;
	visibility: hidden; opacity: 0;
	transition: opacity 0.25s ease, visibility 0.25s ease;
}
.sweb-forgot.is-open { visibility: visible; opacity: 1; }
.sweb-forgot__overlay { position: absolute; inset: 0; background: rgba(49, 21, 7, 0.35); }
.sweb-forgot__panel {
	position: relative;
	width: 860px; max-width: 100%;
	max-height: 92vh; overflow-y: auto; overflow-x: hidden;
	scrollbar-width: none; -ms-overflow-style: none;
	box-sizing: border-box;
	display: flex; flex-direction: column; gap: 24px;
	padding: 32px;
	background: #FFFDF9;
	border: 1px solid #DFD5CF;
	border-radius: 40px;
	box-shadow: 0 0 16px 0 rgba(49, 21, 7, 0.35);
	transform: translateY(12px); transition: transform 0.25s ease;
}
.sweb-forgot.is-open .sweb-forgot__panel { transform: translateY(0); }
.sweb-forgot__panel::-webkit-scrollbar { width: 0; height: 0; display: none; }
.sweb-forgot__panel *, .sweb-forgot__panel *::before, .sweb-forgot__panel *::after { box-sizing: border-box; }
.sweb-forgot__head { display: flex; align-items: center; justify-content: center; position: relative; }
.sweb-forgot__title {
	margin: 0;
	font-family: 'Google Sans Flex', sans-serif; font-weight: 600;
	font-size: 32px; line-height: 1; letter-spacing: -0.02em; text-align: center;
	color: var(--sweb-c-text, #4E220B);
}
.sweb-brand--jerry .sweb-forgot__title { font-family: 'Afacad', sans-serif; font-weight: 600; }
.sweb-brand--americana .sweb-forgot__title { font-family: 'Racing Sans One', sans-serif; }
.sweb-forgot__close {
	position: absolute; right: 0; top: 50%; transform: translateY(-50%);
	width: 32px; height: 32px; padding: 0;
	display: inline-flex; align-items: center; justify-content: center;
	border: 0 !important; background: transparent !important; box-shadow: none !important;
	color: var(--sweb-c-text, #4E220B); cursor: pointer;
}
.sweb-forgot__close svg { width: 22px; height: 22px; }
.sweb-forgot__sub { margin: 0; text-align: center; font-size: 16px; line-height: 1.3; color: var(--sweb-c-text, #4E220B); }

/* Secțiuni pe categorii (Sosuri / Deserturi / Băuturi) */
.sweb-forgot__sections { display: flex; flex-direction: column; gap: 24px; }
.sweb-forgot__section { display: flex; flex-direction: column; gap: 12px; }
.sweb-forgot__section-title {
	margin: 0;
	font-family: 'Google Sans Flex', sans-serif; font-weight: 600; font-size: 20px; line-height: 1.1;
	color: var(--sweb-c-text, #4E220B);
}
.sweb-brand--jerry .sweb-forgot__section-title { font-family: 'Afacad', sans-serif; font-weight: 600; }
.sweb-brand--americana .sweb-forgot__section-title { font-family: 'Racing Sans One', sans-serif; }

/* Grid de tile-uri (imagine + titlu la hover) */
.sweb-forgot__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.sweb-forgot__tile {
	position: relative; display: block; aspect-ratio: 1 / 1;
	border: 1px solid #DFD5CF; border-radius: 16px; overflow: hidden;
	background: #FFFDF9; text-decoration: none; cursor: pointer;
}
.sweb-forgot__tile-img {
	position: absolute; inset: 0;
	background-repeat: no-repeat; background-position: center; background-size: cover;
}
.sweb-forgot__tile-add {
	position: absolute; top: 8px; right: 8px; z-index: 2;
	width: 30px; height: 30px; border-radius: 50%;
	display: flex; align-items: center; justify-content: center;
	background: var(--sweb-c-primary, #D35A0C); color: #FEFAF0;
	font-size: 0; line-height: 0;
	box-shadow: 0 2px 6px rgba(49, 21, 7, 0.25);
}
/* „+" desenat cu pseudo-elemente = perfect centrat in bulina, independent de metrica
   fontului (glifa „+" iesea optic sus). — Seba */
.sweb-forgot__tile-add::before,
.sweb-forgot__tile-add::after {
	content: ''; position: absolute; top: 50%; left: 50%;
	background: currentColor; border-radius: 1px;
}
.sweb-forgot__tile-add::before { width: 13px; height: 2.5px; transform: translate(-50%, -50%); }
.sweb-forgot__tile-add::after  { width: 2.5px; height: 13px; transform: translate(-50%, -50%); }
.sweb-brand--jerry .sweb-forgot__tile-add { background: #E3403E; }
.sweb-brand--americana .sweb-forgot__tile-add { background: #3475EE; }
.sweb-forgot__tile-tag {
	position: absolute; top: 8px; right: 8px; z-index: 2;
	padding: 5px 10px; border-radius: 999px;
	background: var(--sweb-c-primary, #D35A0C); color: #FEFAF0;
	font-family: 'Inter', sans-serif; font-weight: 600; font-size: 11px; line-height: 1; letter-spacing: 0.03em; text-transform: uppercase;
	box-shadow: 0 2px 6px rgba(49, 21, 7, 0.25);
}
.sweb-brand--jerry .sweb-forgot__tile-tag { background: #E3403E; }
.sweb-brand--americana .sweb-forgot__tile-tag { background: #3475EE; }
.sweb-forgot__chips { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 6px; }
.sweb-forgot__chip {
	display: inline-flex; align-items: center; justify-content: center;
	padding: 6px 11px; border-radius: 999px;
	background: #FFFDF9; color: var(--sweb-c-text, #4E220B);
	font-family: 'Inter', sans-serif; font-weight: 600; font-size: 12px; line-height: 1;
	text-decoration: none; white-space: nowrap; cursor: pointer;
	transition: opacity 0.15s ease, transform 0.1s ease;
}
.sweb-forgot__chip:hover { opacity: 0.92; transform: translateY(-1px); }
.sweb-forgot__chip.is-loading { opacity: 0.6; pointer-events: none; }
/* Feedback „adăugat" fără a închide popup-ul */
/* Fara bordura verde la adaugare — feedback-ul e pop-ul (motion.css). — Seba */
.sweb-forgot__tile.is-added { box-shadow: none; }
.sweb-forgot__chip.is-added { background: #2E7D32; color: #FEFAF0; }

/* ── Overlay „Alege varianta" pe tile-urile variabile (tip ALEGE) ──
   Click pe card → overlay alb translucid peste el, cu butoanele de marime
   stivuite. JS marcheaza tile-ul cu .is-vpick (deci fara JS chips-urile
   raman vizibile = fallback). Butonul declanseaza chip-ul ascuns (AJAX) si
   inchide overlay-ul; popup-ul ramane deschis. — Seba */
.sweb-forgot__tile--var.is-vpick .sweb-forgot__chips { display: none !important; }
.sweb-forgot__vpick {
	position: absolute; inset: 0; z-index: 5;
	display: flex; flex-direction: column; align-items: stretch; justify-content: center;
	gap: 8px; padding: 14px; box-sizing: border-box;
	background: rgba(255, 255, 255, 0.82);
	backdrop-filter: blur(3px); -webkit-backdrop-filter: blur(3px);
	/* backdrop-filter „scapă" de sub overflow:hidden-ul cardului la colțuri, deci punem
	   noi acelasi border-radius ca al cardului (16px) ca sa nu iasa peste colturi. — Seba */
	border-radius: inherit;
	overflow: hidden;
}
.sweb-forgot__vpick-title {
	font-family: 'Inter', sans-serif; font-weight: 700; font-size: 12px; line-height: 1.2;
	color: var(--sweb-c-text, #4E220B); text-align: center; margin-bottom: 2px;
}
/* Butoanele de varianta: theme-proof. hello-elementor reset.css pune pe [type=button]
   border+outline roz #CC3366, width:auto si padding mare pe focus/active => iesea din card
   si se colora roz. Le fortam cu specificitate mai mare (.sweb-forgot ...) + !important pe
   toate starile. — Seba */
.sweb-forgot .sweb-forgot__vopt,
.sweb-forgot .sweb-forgot__vopt:hover,
.sweb-forgot .sweb-forgot__vopt:focus,
.sweb-forgot .sweb-forgot__vopt:focus-visible,
.sweb-forgot .sweb-forgot__vopt:active {
	-webkit-appearance: none !important; appearance: none !important;
	width: 100% !important; min-width: 0 !important; max-width: 100% !important;
	margin: 0 !important; padding: 9px 12px !important;
	border: 1.5px solid #D8C6B8 !important; border-radius: 10px !important;
	background: #FFFDF9 !important; color: var(--sweb-c-text, #4E220B) !important;
	font-family: 'Inter', sans-serif !important; font-weight: 600 !important;
	font-size: 13px !important; line-height: 1 !important;
	text-align: center !important; text-transform: none !important; letter-spacing: normal !important;
	box-shadow: none !important; outline: none !important; box-sizing: border-box !important;
	cursor: pointer;
	transition: background 0.12s ease, color 0.12s ease, border-color 0.12s ease;
}
.sweb-forgot .sweb-forgot__vopt:hover,
.sweb-forgot .sweb-forgot__vopt:focus,
.sweb-forgot .sweb-forgot__vopt:focus-visible,
.sweb-forgot .sweb-forgot__vopt:active {
	background: var(--sweb-c-primary, #D35A0C) !important; color: #FEFAF0 !important;
	border-color: var(--sweb-c-primary, #D35A0C) !important;
}
.sweb-brand--jerry .sweb-forgot__vopt:hover,
.sweb-brand--jerry .sweb-forgot__vopt:focus,
.sweb-brand--jerry .sweb-forgot__vopt:active { background: #E3403E !important; border-color: #E3403E !important; }
.sweb-brand--americana .sweb-forgot__vopt:hover,
.sweb-brand--americana .sweb-forgot__vopt:focus,
.sweb-brand--americana .sweb-forgot__vopt:active { background: #3475EE !important; border-color: #3475EE !important; }
.sweb-forgot__tile-overlay {
	position: absolute; inset: 0; z-index: 1;
	display: flex; flex-direction: column; justify-content: flex-end; gap: 4px;
	padding: 10px 12px;
	/* Numele e MEREU vizibil; gradientul negru e subtil normal (ca sa se vada produsul)
	   si se inchide (mai intunecat) pe hover, cand cardul se si mareste. — Seba */
	background: linear-gradient(to top, rgba(49, 21, 7, 0.5) 0%, rgba(49, 21, 7, 0) 58%);
	opacity: 1; transition: background 0.2s ease;
}
.sweb-forgot__tile:hover .sweb-forgot__tile-overlay,
.sweb-forgot__tile:focus .sweb-forgot__tile-overlay {
	background: linear-gradient(to top, rgba(49, 21, 7, 0.82) 0%, rgba(49, 21, 7, 0) 70%);
}
.sweb-forgot__tile-name {
	font-family: 'Google Sans Flex', sans-serif; font-weight: 600; font-size: 14px; line-height: 1.2;
	color: #FFFDF9;
}
.sweb-brand--jerry .sweb-forgot__tile-name { font-family: 'Afacad', sans-serif; font-weight: 600; }
.sweb-brand--americana .sweb-forgot__tile-name { font-family: 'Racing Sans One', sans-serif; }
.sweb-forgot__tile-price { font-family: 'Inter', sans-serif; font-weight: 600; font-size: 13px; color: #FFE3C4; }
.sweb-forgot__tile-price .woocommerce-Price-amount { color: inherit; }
.sweb-forgot__tile.is-loading { opacity: 0.6; pointer-events: none; }

/* Buton „Explorează meniul" */
.sweb-forgot__foot { display: flex; justify-content: center; }
.sweb-forgot__explore {
	display: inline-flex; align-items: center; justify-content: center;
	padding: 14px 36px; border-radius: 8px;
	background: var(--sweb-c-primary, #D35A0C); color: #FEFAF0;
	font-family: 'Google Sans Flex', sans-serif; font-weight: 600; font-size: 16px; line-height: 1;
	text-decoration: none; cursor: pointer; transition: opacity 0.15s ease;
}
.sweb-forgot__explore:hover { opacity: 0.9; }
.sweb-brand--jerry .sweb-forgot__explore { font-family: 'Afacad', sans-serif; font-weight: 600; background: #E3403E; }
.sweb-brand--americana .sweb-forgot__explore { font-family: 'Racing Sans One', sans-serif; background: #3475EE; }

@media (max-width: 600px) {
	.sweb-forgot__panel { padding: 20px; border-radius: 24px; gap: 18px; }
	.sweb-forgot__title { font-size: 24px; }
	.sweb-forgot__grid { grid-template-columns: repeat(2, 1fr); }
	.sweb-forgot__tile-overlay { opacity: 1; background: linear-gradient(to top, rgba(49, 21, 7, 0.6) 0%, rgba(49, 21, 7, 0) 62%); }
}

/* Card „Informații livrare" (taxă + comenzi minime pe localitate) */
.sweb-pay__delivery {
	box-sizing: border-box;
	margin: 20px 0 0;
	padding: 18px 20px;
	background: #FFFFFF;
	border: 1px solid #DFD5CF;
	border-radius: 16px;
}
.sweb-pay__delivery .sweb-pay__cardtitle { margin: 0 0 12px; font-size: 18px; }
.sweb-pay__delrow {
	display: flex; align-items: center; justify-content: space-between; gap: 12px;
	margin: 0 0 6px; font-family: 'Inter', sans-serif; font-size: 15px; font-weight: 600;
	color: var(--sweb-c-text, #4E220B);
}
.sweb-pay__delnote { margin: 10px 0 8px; font-family: 'Inter', sans-serif; font-size: 13px; color: #8D6C5A; }
.sweb-pay__delmin { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }
.sweb-pay__delmin li {
	display: flex; align-items: center; justify-content: space-between; gap: 12px;
	padding: 8px 12px; border: 1px dashed #DFD5CF; border-radius: 8px;
	font-family: 'Inter', sans-serif; font-size: 14px; color: var(--sweb-c-text, #4E220B);
}
.sweb-pay__delmin li span:last-child { font-weight: 700; color: var(--sweb-c-primary, #D35A0C); white-space: nowrap; }
.sweb-brand--jerry .sweb-pay__delmin li span:last-child { color: #E3403E; }
.sweb-brand--americana .sweb-pay__delmin li span:last-child { color: #3475EE; }

/* Avertisment „comandă minimă neatinsă" + buton plasare blocat */
.sweb-pay__minwarn {
	display: flex; align-items: flex-start; gap: 10px;
	margin: 0 0 16px; padding: 14px 16px;
	background: #FDECEC; border: 1px solid #E3403E; border-radius: 12px;
	font-family: 'Inter', sans-serif; font-size: 14px; line-height: 1.4; color: #8A2A28;
}
.sweb-pay__minwarn-ic {
	flex: 0 0 auto; width: 22px; height: 22px; border-radius: 50%;
	background: #E3403E; color: #fff; font-weight: 700; text-align: center; line-height: 22px;
}
.sweb-pay__minwarn strong { color: #6E1F1D; }
.sweb-btn--blocked,
#place_order.sweb-btn--blocked {
	opacity: 0.5 !important; cursor: not-allowed !important; pointer-events: none;
}
