/* ranshtam: RS Bundle Deals storefront */

/* Product badge (inherits WoodMart .product-label shape when inside its labels) */
.rs-bd-label {
	display: inline-block;
	background: var(--rs-bd-bg, #000);
	color: var(--rs-bd-fg, #fff);
	font-weight: 700;
	line-height: 1.3;
	white-space: nowrap;
}
.product-labels .rs-bd-label.product-label {
	background: var(--rs-bd-bg, #000);
	color: var(--rs-bd-fg, #fff);
}

/* Fallback position for non-WoodMart themes */
.rs-bd-labels {
	position: absolute;
	inset-block-start: 10px;
	inset-inline-start: 10px;
	z-index: 3;
	display: flex;
	flex-direction: column;
	gap: 4px;
	pointer-events: none;
}
.rs-bd-label--floating {
	padding: 4px 10px;
	font-size: 12px;
	border-radius: 999px;
}

/* Single product box */
.rs-bd-box {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 12px;
	margin: 12px 0 16px;
	padding: 12px 14px;
	border: 1px solid var(--rs-bd-bg, #000);
	border-radius: 8px;
	font-size: 14px;
	line-height: 1.5;
}
.rs-bd-box__badge {
	flex: none;
	padding: 4px 12px;
	border-radius: 999px;
	background: var(--rs-bd-bg, #000);
	color: var(--rs-bd-fg, #fff);
	font-weight: 700;
	white-space: nowrap;
}
.rs-bd-box__text {
	flex: 1 1 180px;
	min-width: 0;
}
.rs-bd-box__link {
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 3px;
	white-space: nowrap;
}
.rs-bd-box__link:hover,
.rs-bd-box__link:focus-visible {
	text-decoration-thickness: 2px;
}

/* Cart and mini cart messages */
.rs-bd-notices {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin: 0 0 16px;
}
.rs-bd-notice {
	padding: 10px 14px;
	border-radius: 6px;
	font-size: 14px;
	line-height: 1.5;
	background: #f5f5f5;
	border-inline-start: 4px solid #000;
}
.rs-bd-notice--ok {
	background: #eef8f0;
	border-inline-start-color: #1e7b34;
}
.rs-bd-notice__link {
	font-weight: 600;
	text-decoration: underline;
	white-space: nowrap;
}
.widget_shopping_cart .rs-bd-notices,
.woocommerce-mini-cart + .rs-bd-notices {
	margin: 10px 0;
}
.widget_shopping_cart .rs-bd-notice {
	font-size: 13px;
	padding: 8px 10px;
}

/* Savings row in totals */
.rs-bd-savings th,
.rs-bd-savings td {
	color: #1e7b34;
	font-weight: 600;
}

@media (max-width: 767px) {
	.rs-bd-box {
		padding: 10px 12px;
		font-size: 13px;
	}
	.rs-bd-box__link {
		flex-basis: 100%;
	}
}
