/* BF Kalender-Extras 0.5.1 – Adventskalender: Ausverkauft & Knappheit */

/* Etikett auf dem Produktbild (per Skript in die Galerie gesetzt; ohne Skript unsichtbar statt irgendwo) */
.bfke-kn-badge { display: none; }
.woocommerce-product-gallery { position: relative; }
.bfke-kn-badge.is-placed {
	display: inline-block;
	position: absolute;
	top: 14px;
	left: 14px;
	z-index: 9;
	padding: 7px 13px;
	border-radius: 999px;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: .05em;
	text-transform: uppercase;
	pointer-events: none;
	box-shadow: 0 4px 14px rgba(0, 0, 0, .18);
}
.bfke-kn-badge--hot { background: #c62828; color: #fff; }
.bfke-kn-badge--out { background: #4a4643; color: #fff; }
body.bfke-kn-page-sold .woocommerce-product-gallery__image img { opacity: .55; filter: grayscale(.5); }
/* 0.5.1: „Angebot!“ (WooCommerce-Sale-Etikett) lag auf dem Handy über „Ausverkauft“ – bei ausverkauftem Vol. 3 weg damit */
body.bfke-kn-page-sold .onsale,
body.bfke-kn-page-sold .wc-block-components-product-sale-badge { display: none !important; }
/* Liegt auf der Vol.-4-Seite ein Sale-Etikett, rückt „Bald ausverkauft“ per Skript darunter; ganz oben bleibt es sichtbar */
.bfke-kn-badge.is-placed { z-index: 20; }

/* Zeile unter dem Titel + Live-Zähler */
.bfke-kn-note,
.bfke-kn-live {
	display: flex;
	align-items: center;
	gap: 9px;
	margin: 4px 0 8px !important;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.35;
}
.bfke-kn-note { color: #b42318; }
.bfke-kn-live { color: #3d3a36; font-weight: 500; font-size: 14px; }
.bfke-kn-live[hidden] { display: none !important; }
.bfke-kn-dot { position: relative; flex: 0 0 auto; width: 9px; height: 9px; border-radius: 50%; background: #ef4444; }
.bfke-kn-dot::after { content: ""; position: absolute; inset: 0; border-radius: 50%; background: #ef4444; animation: bfke-kn-pulse 1.6s ease-out infinite; will-change: transform, opacity; }
@keyframes bfke-kn-pulse {
	0% { transform: scale(1); opacity: .75; }
	70% { transform: scale(3); opacity: 0; }
	100% { transform: scale(3); opacity: 0; }
}
.bfke-kn-eye {
	flex: 0 0 auto;
	width: 18px;
	height: 18px;
	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='M12 5C6.5 5 2.3 8.6 1 12c1.3 3.4 5.5 7 11 7s9.7-3.6 11-7c-1.3-3.4-5.5-7-11-7zm0 11.5A4.5 4.5 0 1 1 12 7.5a4.5 4.5 0 0 1 0 9zm0-7a2.5 2.5 0 1 0 0 5 2.5 2.5 0 0 0 0-5z'/%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='M12 5C6.5 5 2.3 8.6 1 12c1.3 3.4 5.5 7 11 7s9.7-3.6 11-7c-1.3-3.4-5.5-7-11-7zm0 11.5A4.5 4.5 0 1 1 12 7.5a4.5 4.5 0 0 1 0 9zm0-7a2.5 2.5 0 1 0 0 5 2.5 2.5 0 0 0 0-5z'/%3E%3C/svg%3E") center / contain no-repeat;
	opacity: .75;
}

/* Kasten „Vol. 3 ist vergriffen“ */
.bfke-kn-sold, .bfke-kn-sold * { box-sizing: border-box; }
.bfke-kn-sold {
	margin: 10px 0 18px;
	padding: 16px 18px;
	border: 2px solid #1a1a1a;
	border-radius: 12px;
	background: #fff8ec;
}
.bfke-kn-sold__title { margin: 0 0 4px !important; font-size: 18px; font-weight: 800; line-height: 1.25; color: #1a1a1a; }
.bfke-kn-sold__text { margin: 0 0 12px !important; font-size: 15px; line-height: 1.45; color: #3d3a36; }
.bfke-kn-sold .bfke-kn-sold__btn,
.bfke-kn-sold a.button.bfke-kn-sold__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: 100%;
	min-height: 50px;
	padding: 13px 20px;
	border: 0;
	border-radius: 10px;
	background: #fcaf3b;
	color: #1a1a1a !important;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
	text-decoration: none !important;
	box-shadow: 0 6px 18px rgba(252, 175, 59, .28);
}
.bfke-kn-sold .bfke-kn-sold__btn:hover { background: #f59f17; }

/* Leiste ganz oben */
.bfke-kn-bar {
	display: block;
	position: relative;
	z-index: 100;
	padding: 9px 16px;
	background: #c62828;
	color: #fff !important;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.35;
	text-align: center;
	text-decoration: none !important;
}
.bfke-kn-bar b { margin-left: 6px; font-weight: 800; text-decoration: underline; text-underline-offset: 3px; white-space: nowrap; }
.bfke-kn-bar:hover, .bfke-kn-bar:focus-visible { background: #a91f1f; color: #fff !important; }
.bfke-kn-bar--fb { display: none; }
.bfke-kn-bar--fb.is-placed { display: block; }

@media (max-width: 760px) {
	.bfke-kn-badge.is-placed { top: 10px; left: 10px; padding: 6px 11px; font-size: 11.5px; }
	.bfke-kn-note { font-size: 14px; }
	.bfke-kn-live { font-size: 13.5px; }
	.bfke-kn-bar { padding: 8px 12px; font-size: 13px; }
}
@media (prefers-reduced-motion: reduce) {
	.bfke-kn-dot::after { animation: none; }
}
