.opt-listing-points {
	display: inline-block;
	vertical-align: middle;
	margin: 0 0 0 0.5em;
	padding: 0.15em 0.6em;
	font-size: 12px;
	font-weight: 600;
	line-height: 1.4;
	letter-spacing: 0.01em;
	color: var(--opt-listing-chip-text, #6b5344);
	background: var(--opt-listing-chip-bg, #f3eadc);
	border-radius: 999px;
	white-space: nowrap;
}
.opt-listing-points[hidden] {
	display: none !important;
}
.opt-listing-points__label {
	display: inline;
}
.opt-listing-points__tier {
	display: none;
}

/* Shop listing + related + upsells + My Account recommendations: center the chip under the price. */
.woocommerce ul.products .opt-listing-points,
.related .opt-listing-points,
.upsells .opt-listing-points,
.content-product .opt-listing-points,
.swiper-slide .opt-listing-points,
.etheme-product-grid-content .opt-listing-points,
.woocommerce-account .opt-listing-points {
	display: block;
	box-sizing: border-box;
	width: fit-content;
	max-width: 100%;
	min-width: 0;
	margin: 0.4em auto 0.35em;
	text-align: center;
}

/* Two-column mobile cards: wrap instead of overflowing the product column. */
@media (max-width: 768px) {
	.woocommerce ul.products .opt-listing-points,
	.related .opt-listing-points,
	.upsells .opt-listing-points,
	.content-product .opt-listing-points,
	.swiper-slide .opt-listing-points,
	.etheme-product-grid-content .opt-listing-points,
	.woocommerce-account .opt-listing-points {
		width: auto;
		max-width: calc(100% - 8px);
		margin: 0.4em 4px 0.35em;
		padding: 0.28em 0.45em;
		font-size: 11px;
		line-height: 1.25;
		white-space: normal;
		overflow-wrap: break-word;
		hyphens: none;
	}
}

/* Product page: chip stays under the main price, left edge with the price. */
.single-product .et_product-block > p.price,
.single-product div.product .summary > p.price {
	margin-left: 0;
	padding-left: 0;
	text-align: left;
}
.single-product .et_product-block > .opt-listing-points,
.single-product div.product .summary .opt-listing-points,
.single-product p.price + .opt-listing-points {
	display: block;
	width: auto;
	max-width: 100%;
	margin: 0.35em 0 0;
	padding-left: 0;
	font-size: 15px;
	text-align: left;
}
.single-product .et_product-block > .opt-listing-points-row,
.single-product div.product .summary .opt-listing-points-row,
.single-product p.price + .opt-listing-points-row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
	align-self: flex-start;
	gap: 0.4em 0.55em;
	width: 100%;
	max-width: 100%;
	margin: 0.35em 0 0;
	padding: 0;
	text-align: left;
}
.single-product .opt-listing-points-row > .opt-listing-points {
	display: inline-block;
	width: fit-content;
	margin: 0;
	padding-left: 0;
	padding-right: 0.6em;
	font-size: 15px;
	text-align: left;
	color: var(--opt-product-chip-text, #6b5344);
	background: var(--opt-product-chip-bg, #f3eadc);
}
.single-product .et_product-block > .opt-listing-points,
.single-product div.product .summary > .opt-listing-points,
.single-product p.price + .opt-listing-points {
	color: var(--opt-product-chip-text, #6b5344);
	background: var(--opt-product-chip-bg, #f3eadc);
}
.opt-listing-points__info {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 20px;
	height: 20px;
	box-sizing: border-box;
	border: 1.5px solid currentColor;
	border-radius: 50%;
	font-size: 13px;
	font-weight: 700;
	line-height: 1;
	color: var(--opt-product-chip-text, #4a4a4a);
	text-decoration: none;
	cursor: help;
}
.opt-listing-points__q {
	display: block;
	line-height: 1;
}
.opt-listing-points__info:hover,
.opt-listing-points__info:focus {
	color: var(--opt-product-chip-text, #4a4a4a);
	text-decoration: none;
}
.opt-listing-points__info[data-opt-help]:hover::after,
.opt-listing-points__info[data-opt-help]:focus::after {
	content: attr(data-opt-help);
	position: absolute;
	left: 50%;
	bottom: calc(100% + 8px);
	transform: translateX(-50%);
	z-index: 20;
	width: max-content;
	max-width: 240px;
	padding: 6px 10px;
	border-radius: 6px;
	background: #2b2b2b;
	color: #ffffff;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.35;
	white-space: normal;
	text-align: center;
	pointer-events: none;
}
@media (max-width: 768px) {
	.opt-listing-points__info {
		white-space: nowrap;
	}
}

/* Cart: under product name — one chip, same colors as listing. */
.opt-cart-points {
	display: inline-block;
	box-sizing: border-box;
	max-width: 100%;
	margin: 0.45em 0 0;
	padding: 0.15em 0.6em;
	font-size: 12px;
	font-weight: 600;
	line-height: 1.4;
	letter-spacing: 0.01em;
	color: #6b5344;
	background: #f3eadc;
	border-radius: 999px;
	white-space: nowrap;
}
.opt-cart-points__label,
.opt-cart-points__label .amount,
.opt-cart-points__label .woocommerce-Price-amount,
.opt-cart-points__label bdi {
	color: #6b5344 !important;
	font-weight: 600;
}
@media (max-width: 768px) {
	.opt-cart-points {
		white-space: normal;
	}
}
.cart_totals tr.opt-cart-earn,
.etheme-elementor-cart-page-totals tr.opt-cart-earn {
	display: block;
	width: 100%;
}
.cart_totals tr.opt-cart-earn th,
.cart_totals tr.opt-cart-earn td,
.etheme-elementor-cart-page-totals tr.opt-cart-earn th,
.etheme-elementor-cart-page-totals tr.opt-cart-earn td {
	display: block;
	width: 100%;
	padding: 0 !important;
	border: none !important;
	background: transparent !important;
	text-align: center !important;
}
.opt-cart-earn__box {
	display: block;
	box-sizing: border-box;
	width: 100%;
	margin-top: 12px;
	padding: 0.45em 0.9em;
	font-weight: 600;
	line-height: 1.35;
	letter-spacing: 0.01em;
	color: #4a4a4a;
	background: #f3f3f3;
	border-radius: 999px;
	text-align: center;
}
.opt-cart-earn__pts,
.opt-cart-earn__value {
	margin: 0;
	color: #4a4a4a;
}
.opt-cart-earn__pts {
	font-size: 12px;
	font-weight: 600;
}
.opt-cart-earn__value {
	margin-top: 2px;
	font-size: 12px;
	font-weight: 600;
}
.opt-cart-earn__box .amount,
.opt-cart-earn__box .woocommerce-Price-amount,
.opt-cart-earn__box bdi,
.opt-cart-earn__value .amount,
.opt-cart-earn__value .woocommerce-Price-amount,
.opt-cart-earn__value bdi {
	color: #4a4a4a !important;
	font-weight: 600;
}
