/* BOZHOK — позначки видів консультацій («Популярне», «Топ», «Знижка»…). Однакові в записі на сайті й у редакторі. */
.bz-badge {
	--bz-badge-bg: #f5c542;
	--bz-badge-fg: #1b2a20;
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: .3em;
	padding: .28em .7em .3em;
	border-radius: 999px;
	background: var(--bz-badge-bg);
	color: var(--bz-badge-fg);
	font: 800 .66rem/1.1 Montserrat, "Segoe UI", Arial, sans-serif;
	letter-spacing: .08em;
	text-transform: uppercase;
	white-space: nowrap;
	isolation: isolate;
	overflow: hidden;
	vertical-align: middle;
}
.bz-badge--c-gold { --bz-badge-bg: #f5c542; --bz-badge-fg: #1b2a20; }
.bz-badge--c-green { --bz-badge-bg: #0e5a31; --bz-badge-fg: #fff; }
.bz-badge--c-red { --bz-badge-bg: #c8312f; --bz-badge-fg: #fff; }
.bz-badge--c-blue { --bz-badge-bg: #1f5fbf; --bz-badge-fg: #fff; }
.bz-badge--c-dark { --bz-badge-bg: #1b2a20; --bz-badge-fg: #f5c542; }

/* Форми */
.bz-badge--tag { padding-right: 1.15em; border-radius: .35em; clip-path: polygon(0 0, calc(100% - .55em) 0, 100% 50%, calc(100% - .55em) 100%, 0 100%); }
.bz-badge--stamp { padding: .3em .65em; border-radius: .3em; background: transparent; color: var(--bz-badge-bg); box-shadow: inset 0 0 0 2px var(--bz-badge-bg); transform: rotate(-4deg); }
.bz-badge--ribbon { border-radius: 0 0 0 .55em; padding: .4em .8em .42em 1em; }

/* Ефекти */
.bz-fx-shine::after { content: ""; position: absolute; inset: -40% auto -40% -60%; width: 40%; background: linear-gradient(100deg, transparent, rgba(255, 255, 255, .65), transparent); transform: skewX(-20deg); animation: bz-badge-shine 3.2s ease-in-out infinite; pointer-events: none; }
.bz-fx-pulse { animation: bz-badge-pulse 2s ease-in-out infinite; }
.bz-fx-glow { animation: bz-badge-glow 2.6s ease-in-out infinite; }
.bz-fx-swing { transform-origin: 50% 0; animation: bz-badge-swing 3s ease-in-out infinite; }
.bz-badge--stamp.bz-fx-swing { transform-origin: 50% 50%; }
@property --bz-badge-ang { syntax: "<angle>"; inherits: false; initial-value: 0deg; }
.bz-fx-comet { border: 1.5px solid transparent; background: linear-gradient(var(--bz-badge-bg), var(--bz-badge-bg)) padding-box, conic-gradient(from var(--bz-badge-ang), var(--bz-badge-bg) 0 62%, #fff8dc 82%, var(--bz-badge-bg) 90%) border-box; animation: bz-badge-comet 2.8s linear infinite; }
.bz-badge--stamp.bz-fx-comet { background: transparent; }

@keyframes bz-badge-shine { 0%, 55% { left: -60%; } 90%, 100% { left: 130%; } }
@keyframes bz-badge-pulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.08); } }
@keyframes bz-badge-glow { 0%, 100% { box-shadow: 0 0 0 0 transparent; } 50% { box-shadow: 0 0 .8em .1em color-mix(in srgb, var(--bz-badge-bg) 70%, transparent); } }
@keyframes bz-badge-swing { 0%, 70%, 100% { transform: rotate(0); } 76% { transform: rotate(-7deg); } 82% { transform: rotate(6deg); } 88% { transform: rotate(-3deg); } 94% { transform: rotate(1deg); } }
@keyframes bz-badge-comet { to { --bz-badge-ang: 360deg; } }

@media (prefers-reduced-motion: reduce) {
	.bz-badge, .bz-badge::after { animation: none !important; }
	.bz-fx-shine::after { display: none; }
}

/* Темна тема: «печатка» без заливки — світліші відтінки, щоб текст читався на темному тлі */
html[data-theme="dark"] .bz-badge--stamp.bz-badge--c-red { --bz-badge-bg: #ff7a70; }
html[data-theme="dark"] .bz-badge--stamp.bz-badge--c-green { --bz-badge-bg: #4bc27f; }
html[data-theme="dark"] .bz-badge--stamp.bz-badge--c-blue { --bz-badge-bg: #7fb0ff; }
html[data-theme="dark"] .bz-badge--stamp.bz-badge--c-dark { --bz-badge-bg: #f5c542; }
