/* Bundle form */
.lpb-bundle-form .lpb-items {
	margin: 0 0 1em;
	border-top: 1px solid rgba(0, 0, 0, 0.08);
}

.lpb-bundle-form .lpb-item {
	display: flex;
	gap: 12px;
	align-items: flex-start;
	padding: 12px 0;
	border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}

.lpb-bundle-form .lpb-item--off {
	opacity: 0.6;
}

.lpb-bundle-form .lpb-item--out-of-stock .lpb-item-title {
	text-decoration: line-through;
}

.lpb-bundle-form .lpb-item-image {
	flex: 0 0 64px;
}

.lpb-bundle-form .lpb-item-image img {
	width: 64px;
	height: auto;
	display: block;
}

.lpb-bundle-form .lpb-item-details {
	flex: 1 1 auto;
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 4px 12px;
	align-items: center;
}

.lpb-bundle-form .lpb-item-title,
.lpb-bundle-form .lpb-item-variations,
.lpb-bundle-form .lpb-item-stock {
	grid-column: 1 / 2;
}

.lpb-bundle-form .lpb-item-price {
	grid-column: 2 / 3;
	grid-row: 1 / 2;
	text-align: right;
}

.lpb-bundle-form .lpb-item-qty {
	grid-column: 2 / 3;
	text-align: right;
}

.lpb-bundle-form .lpb-item-qty input.qty {
	width: 4.5em;
}

.lpb-bundle-form .lpb-optional-label {
	font-size: 0.85em;
	opacity: 0.7;
}

.lpb-bundle-form .lpb-included {
	font-size: 0.9em;
	opacity: 0.75;
}

.lpb-bundle-form .lpb-attribute {
	display: flex;
	gap: 8px;
	align-items: center;
	margin: 4px 0;
}

.lpb-bundle-form .lpb-attribute label {
	min-width: 5em;
	font-size: 0.9em;
}

.lpb-bundle-form .lpb-attribute .reset_variations {
	display: none;
}

.lpb-bundle-form .lpb-variation-availability p {
	margin: 0;
	font-size: 0.9em;
}

.lpb-bundle-form .lpb-tiers {
	margin: 0 0 1em 1.2em;
	font-size: 0.9em;
}

.lpb-bundle-form .lpb-summary {
	margin: 0 0 1em;
}

.lpb-bundle-form .lpb-count,
.lpb-bundle-form .lpb-tier-note {
	display: inline-block;
	margin-right: 1em;
	font-size: 0.9em;
	opacity: 0.8;
}

.lpb-bundle-form .lpb-total {
	margin: 0.25em 0;
	font-size: 1.15em;
}

.lpb-bundle-form .lpb-messages {
	margin: 0.25em 0 0 1.2em;
	color: #b32d2e;
	font-size: 0.9em;
}

.lpb-bundle-form .lpb-messages:empty {
	display: none;
}

.lpb-bundle-form .lpb-add-button.disabled {
	opacity: 0.5;
	cursor: not-allowed;
}

/* Frequently bought together */
.lpb-fbt {
	clear: both;
	margin: 2em 0;
	padding: 1em 1.25em;
	border: 1px solid rgba(0, 0, 0, 0.1);
	border-radius: 4px;
}

.lpb-fbt .lpb-fbt-heading {
	margin-top: 0;
	font-size: 1.2em;
}

.lpb-fbt .lpb-fbt-bundle {
	display: flex;
	justify-content: space-between;
	gap: 1em;
}

/* Classic cart / checkout review / mini cart: indent bundled items */
.woocommerce table.shop_table tr.lpb-bundled-item td.product-name,
.woocommerce-checkout-review-order-table tr.lpb-bundled-item td.product-name {
	padding-left: 2.25em;
	font-size: 0.92em;
	position: relative;
}

.woocommerce table.shop_table tr.lpb-bundled-item td.product-name::before,
.woocommerce-checkout-review-order-table tr.lpb-bundled-item td.product-name::before {
	content: "\21B3";
	position: absolute;
	left: 0.9em;
	opacity: 0.5;
}

.woocommerce table.shop_table tr.lpb-bundled-item td.product-thumbnail img {
	max-width: 40px;
}

.woocommerce table.shop_table tr.lpb-bundled-item td {
	border-top-style: dashed;
}

.woocommerce-mini-cart-item.lpb-bundled-item,
.mini_cart_item.lpb-bundled-item {
	padding-left: 1.5em !important;
	font-size: 0.92em;
}

/* Order details (My Account / thank you) */
.woocommerce-table--order-details tr.lpb-bundled-item td.product-name {
	padding-left: 2.25em;
	font-size: 0.92em;
}

/* Cart / Checkout blocks */
.wc-block-cart-items__row.lpb-bundled-item .wc-block-cart-item__product,
.wc-block-components-order-summary-item.lpb-bundled-item .wc-block-components-order-summary-item__description {
	padding-left: 1.5em;
}

.wc-block-cart-items__row.lpb-bundled-item .wc-block-cart-item__image img {
	max-width: 48px;
}

.wc-block-cart-items__row.lpb-hidden,
.wc-block-components-order-summary-item.lpb-hidden {
	display: none !important;
}

.wc-block-cart-items__row.lpb-zero-price .wc-block-cart-item__prices,
.wc-block-cart-items__row.lpb-zero-price .wc-block-cart-item__total,
.wc-block-components-order-summary-item.lpb-zero-price .wc-block-components-order-summary-item__total-price {
	visibility: hidden;
}

/* Child prices are informational: the parent row shows the bundle total. */
.lpb-bundled-price,
.lpb-bundled-subtotal {
	opacity: 0.6;
	font-size: 0.9em;
}
