/* NH Add to Cart — countdown bar, button price + guarantee line, stacked price */
.fgp-timer {
	box-sizing: border-box;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 6px 8px;
	width: 100%;
	min-height: 40px;
	margin: 0 0 12px;
	padding: 8px 16px;
	border-radius: 999px;
	background-color: #6e0f12;
	color: #ffffff;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.3;
	text-align: center;
}
.fgp-timer[hidden] { display: none; }
.fgp-timer .fgp-timer-time { font-variant-numeric: tabular-nums; white-space: nowrap; }
.fgp-timer .fgp-timer-ico { display: inline-flex; align-items: center; font-size: 1.1em; line-height: 1; }
.fgp-timer .fgp-timer-ico svg { width: 1em; height: 1em; fill: currentColor; }
.fgp-timer .fgp-timer-ico i { font-size: inherit; color: inherit; }
.fgp-q-390bae15 > .fgp-timer { margin-bottom: 0; }

/* Add buttons: label · price ~~regular~~ / second line */
.fgp-390bae15 .fgp-btn.has-sub { display: flex; flex-direction: column; align-items: center; justify-content: center; }
.fgp-q-390bae15 .fgp-q-btn.fgp-q-btn.has-sub { flex-direction: column; }
.fgp-btn-main { display: inline-flex; flex-wrap: wrap; align-items: baseline; justify-content: center; gap: .1em .4em; }
.fgp-btn-price { display: inline-flex; align-items: baseline; gap: .45em; white-space: nowrap; }
.fgp-btn-new { text-decoration: none; }
.fgp-btn-old { font-size: .9em; font-weight: 400; opacity: .75; text-decoration: line-through; }
.fgp-btn-sep { opacity: .8; }
.fgp-btn-sub { text-transform: none; letter-spacing: normal; display: flex; align-items: center; justify-content: center; gap: .35em; width: 100%; margin-top: 3px; font-size: .78em; font-weight: 500; line-height: 1.3; opacity: .92; }
.fgp-btn-sub-ico { display: inline-flex; align-items: center; line-height: 1; }
.fgp-btn-sub-ico svg { width: 1em; height: 1em; fill: currentColor; }
.fgp-btn-sub-ico i { font-size: inherit; color: inherit; }

/* Price display: stacked (sale price on top, regular price below) */
.fgp-pl-stacked .fgp-390bae15 .fgp-mode-price {
	display: inline-flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 2px;
	padding: 6px 10px;
	border-radius: 6px;
	background-color: #fdecee;
}
.fgp-pl-stacked .fgp-390bae15 .fgp-mode-price .fgp-new { order: -1; font-size: 1.12em; line-height: 1.15; }
.fgp-pl-stacked .fgp-390bae15 .fgp-mode-price .fgp-old { font-size: .82em; line-height: 1.15; }
.fgp-pl-stacked .fgp-390bae15 .fgp-price-row .fgp-mode-price { align-items: flex-start; }

/* Narrow buttons (phones, small cards): price on its own line, no separator */
.fgp-390bae15 .fgp-btn,
.fgp-q-390bae15 .fgp-q-btn.fgp-q-btn { container-type: inline-size; }
@container (max-width: 340px) {
	.fgp-btn-main { flex-direction: column; align-items: center; }
	.fgp-btn-sep { display: none; }
}

/* Narrow panels: when the button carries a price / second line, quantity sits on its own row */
.fgp-390bae15 .fgp-panel { container-type: inline-size; }
@container (max-width: 440px) {
	.fgp-390bae15 .fgp-buy:has(.fgp-btn-price, .fgp-btn-sub) { flex-wrap: wrap; }
	.fgp-390bae15 .fgp-buy:has(.fgp-btn-price, .fgp-btn-sub) .fgp-btn { flex: 1 1 100%; }
}
