/**
 * Filled cart in the client's mock layout (2026-10-01), loaded on the cart page after familia-checkout.css.
 *
 * Mock, top to bottom: title "Jūsų krepšelis" + grey item count; the line (big picture left; name, grey code, price,
 * grey type line, "Daugiau"; bin top right); grey delivery date; gift lines as light-blue "DOVANA" boxes;
 * "Rekomenduojame" strip; summary card ("Užsakymo suma", "Prekės (N)", gift / discount rows, divider, "Bendra suma",
 * VAT); grey benefit lines; full-width "Tęsti užsakymą"; one-row code field with "Taikyti". Desktop: lines and
 * recommendations left, the column (card, lines, button, code) right and sticky.
 * Kept from the shop: white page, Geologica, ink #140e06, sky #8dc9f7 buttons (familia.css tokens), 10 px card corners
 * (home mosaic), type weights 400 / 500 (feedback: familia.lt type, no uppercase except pills).
 * Markup: WooCommerce Cart block + inner blocks from familia-cart-blocks.js (summary rows, benefit lines, strip);
 * the line's rows are its item data (inc/cart.php, FC_Stock, theme familia_product_subtitle).
 *
 *   01 page and columns     03 gift line          05 summary column
 *   02 cart line            04 recommendations    06 discount code
 */

/* ------------------------------------------------------------------ 01 page and columns */
body.familia.woocommerce-cart #main .entry-header { margin: 0; padding: 28px 0 20px; text-align: left; }
body.familia.woocommerce-cart #main .entry-title { font-size: 28px; font-weight: 500; line-height: 1.2; }
body.familia.woocommerce-cart .familia-cart-count { margin: 6px 0 0; color: var(--f-muted); font-size: var(--f-t-base); line-height: 1.4; }
body.familia.woocommerce-cart .familia-cart-count:empty { display: none; }
@media (min-width: 1024px) {
	body.familia.woocommerce-cart #main .entry-header { padding: 44px 0 28px; }
	body.familia.woocommerce-cart #main .entry-title { font-size: 36px; }
}
/* the column follows the scroll next to the lines (under the sticky header row) */
body.familia.woocommerce-cart .wc-block-cart .wc-block-components-sidebar {
	display: flex;
	flex-direction: column;
	margin-top: 32px;
	padding: 0;
}
@media (min-width: 1024px) {
	body.familia.woocommerce-cart .wc-block-cart .wc-block-components-sidebar {
		position: sticky;
		top: calc(var(--wp-admin--admin-bar--height, 0px) + 100px);
		margin-top: 0;
	}
}

/* ------------------------------------------------------------------ 02 cart line */
/* One grid per line: picture in the first column over all text rows, the texts in the second. The product cell, its
   wrapper and the detail lists are `display: contents`, so the name, the code, the line price (its own cell), the type,
   the quantity and "Daugiau" are grid items placed by `order`; the subscription box (familia-subscriptions) and the
   delivery date span both columns under the line. Rows: six content rows + one flexible row that absorbs a picture
   taller than the texts, so the texts stay together at the top. */
body.familia.woocommerce-cart table.wc-block-cart-items,
body.familia.woocommerce-cart table.wc-block-cart-items > tbody { display: block; width: 100%; margin: 0; border: 0; background: transparent; }
body.familia.woocommerce-cart table.wc-block-cart-items > thead { display: none; }
body.familia.woocommerce-cart table.wc-block-cart-items > tbody { display: flex; flex-direction: column; }
body.familia.woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 42%) minmax(0, 1fr);
	grid-template-rows: repeat(6, auto) 1fr;
	align-items: start;
	column-gap: 16px;
	row-gap: 0;
	margin: 0;
	padding: 20px 0;
	border: 0;
	border-bottom: 1px solid var(--f-default-200);
	border-radius: 0;
	background: transparent;
}
body.familia.woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row:first-child { padding-top: 4px; }
body.familia.woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row > td { display: block; min-width: 0; padding: 0; border: 0; background: transparent; }
body.familia.woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row > td.wc-block-cart-item__product,
body.familia.woocommerce-cart .wc-block-cart-items__row .wc-block-cart-item__wrap,
body.familia.woocommerce-cart .wc-block-cart-items__row .wc-block-components-product-metadata,
body.familia.woocommerce-cart .wc-block-cart-items__row .wc-block-components-product-details { display: contents; }
body.familia.woocommerce-cart .wc-block-cart-items__row .wc-block-cart-item__wrap > *,
body.familia.woocommerce-cart .wc-block-cart-items__row .wc-block-components-product-details > * { grid-column: 2; grid-row: auto; order: 5; min-width: 0; }   /* grid-row: WooCommerce's phone layout (.is-mobile) pins the price and quantity to rows 1–2 */
@media (min-width: 768px) {
	body.familia.woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row {
		grid-template-columns: minmax(0, 220px) minmax(0, 1fr);
		column-gap: 28px;
		padding: 24px 0;
	}
}

/* picture */
body.familia.woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row > td.wc-block-cart-item__image { grid-column: 1; grid-row: 1 / 8; align-self: start; }
body.familia.woocommerce-cart .wc-block-cart-item__image a { display: flex; align-items: center; justify-content: center; height: auto; min-height: 0; margin: 0; }
body.familia.woocommerce-cart .wc-block-cart-item__image img { display: block; width: 100%; max-width: 100%; height: auto; max-height: 200px; object-fit: contain; }

/* name (the mock's bold brand line), leaving room for the bin */
body.familia.woocommerce-cart .wc-block-cart-items__row .wc-block-components-product-name {
	order: 1;
	margin: 0;
	padding-right: 44px;
	overflow-wrap: break-word;
	word-break: normal;
	color: var(--f-ink);
	font-size: var(--f-t-base);
	font-weight: 500;
	line-height: 1.35;
	text-decoration: none;
}
body.familia.woocommerce-cart .wc-block-cart-items__row a.wc-block-components-product-name:hover { color: var(--f-ink); text-decoration: underline; }
@media (min-width: 768px) { body.familia.woocommerce-cart .wc-block-cart-items__row .wc-block-components-product-name { font-size: var(--f-t-18); } }

/* the rows under it: code, type, delivery date – grey; the label spans are hidden (familia-checkout.css 02) */
body.familia.woocommerce-cart .wc-block-cart-items__row .wc-block-components-product-details > span { color: var(--f-muted); font-size: var(--f-t-sm); line-height: 1.45; }
body.familia.woocommerce-cart .wc-block-cart-items__row .wc-block-components-product-details > span > [aria-hidden="true"] { display: none; }   /* " / " */
body.familia.woocommerce-cart .wc-block-cart-items__row .familia-line-sku { order: 2; margin-top: 4px; overflow-wrap: anywhere; }
body.familia.woocommerce-cart .wc-block-cart-items__row .familia-line-sku .wc-block-components-product-details__name { display: none; }
body.familia.woocommerce-cart .wc-block-cart-items__row .familia-line-subtitle { order: 4; margin-top: 6px; }
body.familia.woocommerce-cart .wc-block-cart-items__row .familia-line-date { grid-column: 1 / -1; order: 10; margin-top: 14px; }
body.familia.woocommerce-cart .wc-block-cart-items__row .familia-line-date .familia-delivery { color: inherit; font-size: inherit; font-weight: 400; }
body.familia.woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row > td.familia-sub-cell { grid-column: 1 / -1; grid-row: auto; order: 9; margin: 16px 0 0; padding-top: 0; }
/* the unit price and the "Sutaupote" badge: the mock shows one price */
body.familia.woocommerce-cart .wc-block-cart-items__row .wc-block-cart-item__prices,
body.familia.woocommerce-cart .wc-block-cart-item__total .wc-block-components-sale-badge { display: none; }

/* line price, bold, after the struck-out old one (familia-cart.js) */
body.familia.woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row > td.wc-block-cart-item__total { grid-column: 2; grid-row: auto; order: 3; margin: 10px 0 0; text-align: left; }
body.familia.woocommerce-cart .wc-block-cart-item__total-price-and-sale-badge-wrapper { display: block; }
body.familia.woocommerce-cart .wc-block-cart-item__total .wc-block-components-product-price {
	display: inline-flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0 8px;
}
body.familia.woocommerce-cart .wc-block-cart-item__total .wc-block-components-product-price__value {
	color: var(--f-ink);
	font-size: var(--f-t-18);
	font-weight: 500;
	white-space: nowrap;
}
body.familia.woocommerce-cart .wc-block-cart-item__total .familia-line-old { color: var(--f-muted); font-size: var(--f-t-sm); font-weight: 400; text-decoration: line-through; white-space: nowrap; }

/* "Daugiau ⌄" (familia-cart.js) – a sky-deep text button; the folded details open under it */
body.familia.woocommerce-cart .wc-block-cart-items__row .familia-line-more {
	display: inline-flex;
	align-items: center;
	justify-self: start;
	gap: 6px;
	order: 7;
	min-height: 32px;
	margin: 6px 0 0;
	padding: 0;
	border: 0;
	background: none;
	box-shadow: none;
	color: var(--f-sky-deep);
	font-size: var(--f-t-sm);
	font-weight: 500;
	letter-spacing: 0;
	text-transform: none;
	cursor: pointer;
}
body.familia.woocommerce-cart .familia-line-more:hover { background: none; color: var(--f-ink); }
body.familia.woocommerce-cart .familia-line-more:focus-visible { outline: 2px solid var(--f-ink); outline-offset: 2px; }
body.familia.woocommerce-cart .familia-line-more .familia-cart-icon { display: inline-flex; transition: transform var(--f-fast) var(--f-ease); }
body.familia.woocommerce-cart .familia-line-more .familia-cart-icon svg { width: 14px; height: 14px; }
body.familia.woocommerce-cart .familia-line--open .familia-line-more .familia-cart-icon { transform: rotate(180deg); }
body.familia.woocommerce-cart .wc-block-cart-items__row .familia-line-extra { order: 8; }
body.familia.woocommerce-cart .wc-block-cart-items__row:not(.familia-line--open) .familia-line-extra { display: none; }
body.familia.woocommerce-cart .wc-block-cart-items__row.familia-line--open .familia-line-extra { margin-top: 2px; color: var(--f-ink); }
body.familia.woocommerce-cart .familia-line--open .familia-line-more { margin-bottom: 4px; }
body.familia.woocommerce-cart .wc-block-cart-items__row .familia-line-extra .wc-block-components-product-details__name { color: var(--f-muted); font-weight: 400; }

/* quantity (−/n/+) and the bin: the bin is lifted to the line's top-right corner */
body.familia.woocommerce-cart .wc-block-cart-items__row .wc-block-cart-item__quantity { display: flex; align-items: center; grid-row: auto; order: 6; margin: 12px 0 0; }
body.familia.woocommerce-cart .wc-block-cart-item__quantity .wc-block-components-quantity-selector {
	display: inline-flex;
	align-items: center;
	width: auto;
	min-width: 0;
	margin: 0;
	border: 1px solid var(--f-default-300);
	border-radius: 6px;
	background: var(--f-default-50);
}
body.familia.woocommerce-cart .wc-block-cart-item__quantity .wc-block-components-quantity-selector::after { display: none; }
body.familia.woocommerce-cart .wc-block-components-quantity-selector .wc-block-components-quantity-selector__button {
	width: 36px;
	min-width: 36px;
	height: 36px;
	min-height: 36px;
	padding: 0;
	border: 0;
	border-radius: 6px;
	background: transparent;
	box-shadow: none;
	color: var(--f-ink);
	font-size: 18px;
	font-weight: 400;
	line-height: 1;
	opacity: 1;
}
body.familia.woocommerce-cart .wc-block-components-quantity-selector .wc-block-components-quantity-selector__button:hover:not(:disabled) { background: var(--f-sky-wash); color: var(--f-ink); }
body.familia.woocommerce-cart .wc-block-components-quantity-selector .wc-block-components-quantity-selector__button:disabled { background: transparent; color: var(--f-default-500); }
body.familia.woocommerce-cart .wc-block-components-quantity-selector .wc-block-components-quantity-selector__button:focus-visible { outline: 2px solid var(--f-ink); outline-offset: -2px; }
body.familia.woocommerce-cart .wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input {
	width: 40px;
	min-width: 0;
	height: 36px;
	min-height: 36px;
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
	color: var(--f-ink);
	font-size: var(--f-t-base);
	font-weight: 500;
	text-align: center;
	-moz-appearance: textfield;
}
body.familia.woocommerce-cart .wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input:focus { outline: 2px solid var(--f-ink); outline-offset: -2px; box-shadow: none; }
body.familia.woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__remove-link {
	position: absolute;
	top: 0;
	right: -8px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	min-height: 44px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 6px;
	background: transparent;
	box-shadow: none;
	color: var(--f-ink);
	opacity: 1;
	cursor: pointer;
}
body.familia.woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row:not(:first-child) .wc-block-cart-item__remove-link { top: 16px; }
@media (min-width: 768px) {
	body.familia.woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row:not(:first-child) .wc-block-cart-item__remove-link { top: 20px; }
}
body.familia.woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__remove-link:hover { background: var(--f-default-100); color: var(--f-red); }
body.familia.woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__remove-link:focus-visible { outline: 2px solid var(--f-ink); outline-offset: 0; }
body.familia.woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__remove-link svg { display: block; width: 24px; height: 24px; fill: currentColor; }
body.familia.woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__remove-link::before { display: none; }

/* ------------------------------------------------------------------ 03 gift line */
/* A gift of a gift program (familia-promotions, 0,01 €, fixed quantity, no remove – FP_Gifts adds it back) as the
   mock's light-blue box: small picture, "DOVANA" pill, name, the program's name in grey, the price on the right.
   Gifts come after the products (the DOM order, which React owns, stays). */
body.familia.woocommerce-cart table.wc-block-cart-items > tbody > .wc-block-cart-items__row.familia-line--gift { order: 1; }
body.familia.woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row.familia-line--gift {
	grid-template-columns: 88px minmax(0, 1fr) auto;
	grid-template-rows: none;
	align-items: center;
	column-gap: 14px;
	margin: 16px 0 0;
	padding: 10px 16px 10px 10px;
	border: 1px solid rgb(var(--f-sky-rgb) / .45);
	border-radius: 10px;
	background: var(--f-sky-wash);
}
body.familia.woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row.familia-line--gift + .familia-line--gift { margin-top: 10px; }
body.familia.woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row.familia-line--gift > td.wc-block-cart-item__image { grid-row: 1 / span 3; align-self: center; }
body.familia.woocommerce-cart .familia-line--gift .wc-block-cart-item__image a { overflow: hidden; border-radius: 6px; background: var(--f-default-50); }
body.familia.woocommerce-cart .familia-line--gift .wc-block-cart-item__image img { max-height: 72px; }
body.familia.woocommerce-cart .familia-line--gift .wc-block-components-product-name { padding-right: 0; font-size: var(--f-t-base); }
body.familia.woocommerce-cart .familia-line--gift .wc-block-components-product-name::before {
	content: "DOVANA";
	display: table;
	margin: 0 0 6px;
	padding: 3px 10px;
	border-radius: var(--f-r-pill);
	background: rgb(var(--f-sky-rgb) / .35);
	color: var(--f-sky-deep);
	font-size: var(--f-t-xs);
	font-weight: 500;
	line-height: 1.3;
	letter-spacing: .02em;
}
body.familia.woocommerce-cart .familia-line--gift .wc-block-components-product-details > span { margin-top: 2px; }
body.familia.woocommerce-cart .familia-line--gift .wc-block-components-product-details__name { display: none; }
body.familia.woocommerce-cart .familia-line--gift .familia-line-giftqty { order: 2; margin-top: 2px; color: var(--f-muted); font-size: var(--f-t-sm); }
body.familia.woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row.familia-line--gift > td.wc-block-cart-item__total { grid-column: 3; grid-row: 1 / span 3; align-self: center; margin: 0; }
body.familia.woocommerce-cart .familia-line--gift .wc-block-cart-item__total .wc-block-components-product-price__value { font-size: var(--f-t-base); }
body.familia.woocommerce-cart .familia-line--gift .wc-block-cart-item__quantity,
body.familia.woocommerce-cart .familia-line--gift .familia-line-more { display: none; }
@media (min-width: 768px) {
	body.familia.woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row.familia-line--gift { grid-template-columns: 120px minmax(0, 1fr) auto; }
	body.familia.woocommerce-cart .familia-line--gift .wc-block-cart-item__image img { max-height: 84px; }
}

/* ------------------------------------------------------------------ 04 recommendations */
/* familia-cart-blocks.js `familia/cart-recommended`: the old cart's product list as small cards in one scrolling row */
body.familia.woocommerce-cart .familia-cart-rec { margin: 32px 0 0; padding: 28px 0 0; border-top: 1px solid var(--f-default-200); }
body.familia.woocommerce-cart .familia-cart-rec__head { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
body.familia.woocommerce-cart .familia-cart-rec__title { margin: 0; color: var(--f-ink); font-size: 22px; font-weight: 400; line-height: 1.25; }
body.familia.woocommerce-cart .familia-cart-rec__arrows { display: none; gap: 8px; }
@media (min-width: 1024px) and (hover: hover) { body.familia.woocommerce-cart .familia-cart-rec__arrows { display: flex; } }
body.familia.woocommerce-cart .familia-cart-rec__arrow {
	width: 36px;
	height: 36px;
	min-height: 36px;
	padding: 0;
	border: 1px solid var(--f-default-300);
	border-radius: 50%;
	background: var(--f-default-50);
	box-shadow: none;
	color: var(--f-ink);
	cursor: pointer;
}
body.familia.woocommerce-cart .familia-cart-rec__arrow::before {
	content: "";
	display: block;
	width: 14px;
	height: 14px;
	margin: auto;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m9 5 7 7-7 7' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m9 5 7 7-7 7' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
}
body.familia.woocommerce-cart .familia-cart-rec__arrow--prev::before { transform: scaleX(-1); }
body.familia.woocommerce-cart .familia-cart-rec__arrow:hover { border-color: var(--f-ink); background: var(--f-default-50); color: var(--f-ink); }
body.familia.woocommerce-cart .familia-cart-rec__arrow:focus-visible { outline: 2px solid var(--f-ink); outline-offset: 2px; }
body.familia.woocommerce-cart .familia-cart-rec__list {
	display: flex;
	gap: 12px;
	margin: 16px 0 0;
	padding: 0 0 12px;
	overflow-x: auto;
	list-style: none;
	scroll-snap-type: x mandatory;
	scrollbar-width: thin;
	overscroll-behavior-x: contain;
}
body.familia.woocommerce-cart .familia-cart-rec__card {
	display: flex;
	flex: 0 0 136px;
	flex-direction: column;
	margin: 0;
	padding: 10px;
	border: 1px solid var(--f-default-300);
	border-radius: 10px;
	background: var(--f-default-50);
	scroll-snap-align: start;
}
@media (min-width: 768px) { body.familia.woocommerce-cart .familia-cart-rec__card { flex-basis: 180px; padding: 12px; } }
body.familia.woocommerce-cart .familia-cart-rec__link { display: flex; flex-direction: column; color: var(--f-ink); text-decoration: none; }
body.familia.woocommerce-cart .familia-cart-rec__link:hover { color: var(--f-ink); }
body.familia.woocommerce-cart .familia-cart-rec__link:hover .familia-cart-rec__name { text-decoration: underline; }
body.familia.woocommerce-cart .familia-cart-rec__link:focus-visible { outline: 2px solid var(--f-ink); outline-offset: 2px; border-radius: 6px; }
body.familia.woocommerce-cart .familia-cart-rec__media { display: flex; align-items: center; justify-content: center; aspect-ratio: 1 / 1; overflow: hidden; }
body.familia.woocommerce-cart .familia-cart-rec__media img { width: 100%; height: 100%; max-width: 100%; object-fit: contain; }
body.familia.woocommerce-cart .familia-cart-rec__name {
	display: -webkit-box;
	min-height: 2.7em;
	margin: 8px 0 0;
	overflow: hidden;
	font-size: var(--f-t-sm);
	font-weight: 400;
	line-height: 1.35;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow-wrap: break-word;
}
body.familia.woocommerce-cart .familia-cart-rec__foot { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 6px; margin-top: auto; padding-top: 10px; }
/* phones: the narrow card stacks the price over a full-width button */
@media (max-width: 767px) {
	body.familia.woocommerce-cart .familia-cart-rec__foot { flex-direction: column; align-items: stretch; gap: 8px; }
	body.familia.woocommerce-cart .familia-cart-rec__btn { width: 100%; }
}
body.familia.woocommerce-cart .familia-cart-rec__price { display: flex; flex-direction: column; min-width: 0; color: var(--f-ink); font-size: var(--f-t-sm); font-weight: 500; line-height: 1.25; white-space: nowrap; }
body.familia.woocommerce-cart .familia-cart-rec__price del { color: var(--f-muted); font-size: var(--f-t-xs); font-weight: 400; }
/* familia.lt's small primary button (home mosaic .f-tile__cta): sky, 14 px, 5 px corners */
body.familia.woocommerce-cart .familia-cart-rec__btn {
	display: inline-flex;
	flex: none;
	align-items: center;
	justify-content: center;
	height: 32px;
	min-height: 32px;
	margin: 0;
	padding: 0 12px;
	border: 0;
	border-radius: 5px;
	background: var(--f-sky);
	box-shadow: none;
	color: var(--f-ink);
	font-size: var(--f-t-sm);
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0;
	text-decoration: none;
	text-transform: none;
	cursor: pointer;
	transition: background-color var(--f-mid) var(--f-ease), color var(--f-mid) var(--f-ease);
}
body.familia.woocommerce-cart a.familia-cart-rec__btn:hover,
body.familia.woocommerce-cart button.familia-cart-rec__btn:hover:not(:disabled) { background: var(--f-sky-deep); color: #fff; }
body.familia.woocommerce-cart .familia-cart-rec__btn:focus-visible { outline: 2px solid var(--f-ink); outline-offset: 2px; }
body.familia.woocommerce-cart .familia-cart-rec__btn.is-busy { opacity: .6; cursor: progress; }
body.familia.woocommerce-cart .familia-cart-rec__btn.is-added { background: var(--f-sky-wash); color: var(--f-sky-deep); cursor: default; }

/* ------------------------------------------------------------------ 05 summary column */
/* The order-summary block is `display: contents`, so its parts and the column's other blocks are one flex column
   ordered as the mock: card (heading, rows, total) → benefit lines → button → discount code. The card is drawn by
   its three parts (heading, totals, total) sharing one ground. */
body.familia.woocommerce-cart .wc-block-cart .wp-block-woocommerce-cart-order-summary-block { display: contents; }
body.familia.woocommerce-cart .wc-block-cart .wc-block-cart__totals-title,
body.familia.woocommerce-cart .wc-block-cart .wp-block-woocommerce-cart-order-summary-totals-block,
body.familia.woocommerce-cart .wc-block-cart .wc-block-components-sidebar .wc-block-components-totals-wrapper:has(> .wc-block-components-totals-footer-item) {
	margin: 0;
	padding-inline: 20px;
	border: 0;
	background: var(--f-default-100);
}
body.familia.woocommerce-cart .wc-block-cart .wc-block-cart__totals-title {
	display: block;
	order: 1;
	padding-top: 20px;
	padding-bottom: 10px;
	border-radius: 10px 10px 0 0;
	color: var(--f-ink);
	font-size: 22px;
	font-weight: 400;
	line-height: 1.25;
	text-transform: none;
}
body.familia.woocommerce-cart .wc-block-cart .wp-block-woocommerce-cart-order-summary-totals-block { display: flex; flex-direction: column; order: 2; padding-top: 0; padding-bottom: 0; }
body.familia.woocommerce-cart .wc-block-cart .wp-block-woocommerce-cart-order-summary-totals-block > .familia-summary-items { order: -1; }
body.familia.woocommerce-cart .wc-block-cart .wc-block-components-sidebar .wc-block-components-totals-wrapper:has(> .wc-block-components-totals-footer-item) {
	order: 3;
	padding-top: 0;
	padding-bottom: 20px;
	border-radius: 0 0 10px 10px;
}
body.familia.woocommerce-cart .wc-block-cart .wc-block-components-sidebar .wc-block-components-totals-wrapper.slot-wrapper { order: 4; padding: 0; }
/* the slot holds PW Gift Cards' empty redeem container (gift-card numbers go into the code field) */
body.familia.woocommerce-cart .wc-block-cart .wc-block-components-sidebar .wc-block-components-totals-wrapper.slot-wrapper:not(:has(button, input, a, p)) { display: none; }
body.familia.woocommerce-cart .wc-block-cart .wc-block-components-sidebar > .familia-cart-benefits { order: 5; }
body.familia.woocommerce-cart .wc-block-cart .wc-block-components-sidebar > .wc-block-cart__payment-options { order: 6; }
body.familia.woocommerce-cart .wc-block-cart .wc-block-components-sidebar > .wc-block-cart__submit { order: 7; }
body.familia.woocommerce-cart .wc-block-cart .wc-block-components-sidebar .wp-block-woocommerce-cart-order-summary-coupon-form-block { order: 8; }

/* rows: "Prekės (N)" (familia-cart-blocks.js), gift rows, WooCommerce's discount / fee rows; its own products
   subtotal (only drawn with a discount) and the tax rows give way to ours */
body.familia.woocommerce-cart .wc-block-cart .wp-block-woocommerce-cart-order-summary-totals-block .wc-block-components-totals-wrapper { padding: 0; }
body.familia.woocommerce-cart .wc-block-cart .wp-block-woocommerce-cart-order-summary-subtotal-block,
body.familia.woocommerce-cart .wc-block-cart .wp-block-woocommerce-cart-order-summary-taxes-block,
body.familia.woocommerce-cart .wc-block-cart .wp-block-woocommerce-cart-order-summary-shipping-block { display: none; }
body.familia.woocommerce-cart .wc-block-cart .wp-block-woocommerce-cart-order-summary-totals-block .wc-block-components-totals-item {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: space-between;
	gap: 4px 16px;
	margin: 0;
	padding: 5px 0;
	font-size: 15px;
	line-height: 1.4;
}
body.familia.woocommerce-cart .wc-block-cart .wp-block-woocommerce-cart-order-summary-totals-block .wc-block-components-totals-item__label { color: var(--f-muted); font-weight: 400; }
body.familia.woocommerce-cart .wc-block-cart .wp-block-woocommerce-cart-order-summary-totals-block .wc-block-components-totals-item__value { color: var(--f-ink); font-weight: 400; white-space: nowrap; }
body.familia.woocommerce-cart .wc-block-cart .wc-block-components-totals-discount .wc-block-components-totals-item__label,
body.familia.woocommerce-cart .wc-block-cart .wc-block-components-totals-discount .wc-block-components-totals-item__value { color: var(--f-sky-deep); font-size: 15px; font-weight: 400; }
body.familia.woocommerce-cart .wc-block-cart .wc-block-components-totals-discount .wc-block-components-totals-item__description { flex-basis: 100%; }
body.familia.woocommerce-cart .wc-block-cart .wc-block-components-totals-discount__coupon-list { margin: 2px 0 0; }
body.familia.woocommerce-cart .wc-block-cart .wc-block-components-chip { background: var(--f-default-50); }

/* total: divider, "Bendra suma" and the amount large, the VAT line grey; the delivery note gives way to the benefit lines */
body.familia.woocommerce-cart .wc-block-cart .wc-block-components-totals-footer-item {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: space-between;
	gap: 0 16px;
	margin: 10px 0 0;
	padding: 14px 0 0;
	border: 0;
	border-top: 1px solid var(--f-default-400);
}
body.familia.woocommerce-cart .wc-block-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__label { color: var(--f-ink); font-size: var(--f-t-20); font-weight: 500; }
body.familia.woocommerce-cart .wc-block-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__value { color: var(--f-ink); font-size: 24px; font-weight: 500; white-space: nowrap; }
body.familia.woocommerce-cart .wc-block-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__description { display: block; flex-basis: 100%; margin: 4px 0 0; }
body.familia.woocommerce-cart .wc-block-cart .wc-block-components-totals-footer-item-tax { margin: 0; color: var(--f-muted); font-size: var(--f-t-sm); font-weight: 400; }
body.familia.woocommerce-cart .wc-block-cart .wc-block-components-totals-footer-item-shipping { display: none; }

/* benefit lines (familia-cart-blocks.js `familia/cart-benefits`) */
body.familia.woocommerce-cart .familia-cart-benefits { margin: 16px 0 0; padding: 0 2px; list-style: none; }
body.familia.woocommerce-cart .familia-cart-benefits li { margin: 0; padding: 0; color: var(--f-muted); font-size: var(--f-t-sm); line-height: 1.6; }

/* "Tęsti užsakymą": full width, sky (familia-checkout.css 01 shared primary action) */
body.familia.woocommerce-cart .wc-block-cart .wc-block-components-sidebar > .wc-block-cart__submit { margin: 16px 0 0; }
/* phones: while the button rides in WooCommerce's fixed bottom bar its place stays reserved – otherwise the code field
   under it jumped 56 px the moment the button scrolled back into its place (taps meant for the field hit the button) */
@media (max-width: 782px) {
	body.familia.woocommerce-cart .wc-block-cart .wc-block-components-sidebar > .wc-block-cart__submit { min-height: 56px; }
}
body.familia.woocommerce-cart .wc-block-cart .wc-block-cart__submit-button { min-height: 56px; font-weight: 500; }

/* ------------------------------------------------------------------ 06 discount code */
/* One bordered row: the field (its label as the placeholder "Turiu nuolaidos kodą") and a light "Taikyti" inside.
   The panel heading is not drawn – familia-cart.js opens the panel once. */
body.familia.woocommerce-cart .wc-block-cart .wp-block-woocommerce-cart-order-summary-coupon-form-block { margin: 12px 0 0; padding: 0; }
body.familia.woocommerce-cart .wc-block-cart .wc-block-components-totals-coupon .wc-block-components-panel__button { display: none; }
body.familia.woocommerce-cart .wc-block-cart .wc-block-components-totals-coupon__form {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 4px;
	margin: 0;
	padding: 4px;
	border: 1px solid var(--f-default-400);
	border-radius: 6px;
	background: var(--f-default-50);
}
body.familia.woocommerce-cart .wc-block-cart .wc-block-components-totals-coupon__form:focus-within { border-color: var(--f-ink); box-shadow: 0 0 0 3px rgb(var(--f-sky-rgb) / .45); }
body.familia.woocommerce-cart .wc-block-cart .wc-block-components-totals-coupon__form .wc-block-components-text-input { flex: 1 1 0; min-width: 0; margin: 0; }
body.familia.woocommerce-cart .wc-block-cart .wc-block-components-totals-coupon .wc-block-components-text-input input[type],
body.familia.woocommerce-cart .wc-block-cart .wc-block-components-totals-coupon .wc-block-components-text-input.is-active input[type] {
	height: 44px;
	min-height: 44px;
	padding: 0 12px;
	border: 0;
	border-radius: 4px;
	background: transparent;
	box-shadow: none;
	color: var(--f-ink);
	font-size: var(--f-t-base);
	line-height: 44px;
}
body.familia.woocommerce-cart .wc-block-cart .wc-block-components-totals-coupon .wc-block-components-text-input input[type]:focus { border: 0; outline: none; box-shadow: none; }
body.familia.woocommerce-cart .wc-block-cart .wc-block-components-totals-coupon .wc-block-components-text-input label {
	top: 50%;
	left: 12px;
	max-width: calc(100% - 24px);
	margin: 0;
	transform: translateY(-50%);
	color: var(--f-muted);
	font-size: var(--f-t-base);
	font-weight: 400;
	line-height: 1.2;
	pointer-events: none;
}
body.familia.woocommerce-cart .wc-block-cart .wc-block-components-totals-coupon .wc-block-components-text-input.is-active label { display: none; }
body.familia.woocommerce-cart .wc-block-cart .wc-block-components-totals-coupon__button,
body.familia.woocommerce-cart .wc-block-cart .wc-block-components-totals-coupon__button:disabled {
	flex: 0 0 auto;
	min-width: 96px;
	height: 44px;
	min-height: 44px;
	margin: 0;
	padding: 0 18px;
	border: 0;
	border-radius: 4px;
	background: var(--f-sky-wash);
	box-shadow: none;
	color: var(--f-sky-deep);
	font-size: var(--f-t-base);
	font-weight: 500;
	text-transform: none;
	opacity: 1;
}
body.familia.woocommerce-cart .wc-block-cart .wc-block-components-totals-coupon__button:disabled .wc-block-components-button__text { opacity: .75; }
body.familia.woocommerce-cart .wc-block-cart .wc-block-components-totals-coupon__button:hover:not(:disabled) { background: var(--f-sky); color: var(--f-ink); }
body.familia.woocommerce-cart .wc-block-cart .wc-block-components-totals-coupon__button:focus-visible { outline: 2px solid var(--f-ink); outline-offset: 0; }
body.familia.woocommerce-cart .wc-block-cart .wc-block-components-totals-coupon__form .wc-block-components-validation-error { flex-basis: 100%; margin: 0; padding: 0 8px 6px; }
