.kip-badge-group {
	--kip-badge-gap: 16px;
	--kip-badge-width: 176px;
	--kip-badge-bg: rgba(18, 18, 18, 0.78);
	--kip-badge-hover-bg: rgba(24, 24, 24, 0.92);
	--kip-badge-text: #ffffff;
	--kip-badge-hover-text: #ffffff;
	--kip-badge-dot: #ff5a1f;
	--kip-badge-icon: #ff5a1f;
	--kip-badge-dot-size: 7px;
	--kip-badge-radius-top: 8px;
	--kip-badge-radius-right: 8px;
	--kip-badge-radius-bottom: 8px;
	--kip-badge-radius-left: 8px;
	--kip-badge-padding-top: 10px;
	--kip-badge-padding-right: 14px;
	--kip-badge-padding-bottom: 10px;
	--kip-badge-padding-left: 14px;
	--kip-badge-border: rgba(255, 255, 255, 0.2);
	--kip-badge-shadow: 0 12px 28px rgba(0, 0, 0, 0.22);
	--kip-badge-dot-ring: rgba(255, 90, 31, 0.18);
	--kip-badge-sheen: rgba(255, 255, 255, 0.16);
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--kip-badge-gap);
	width: 100%;
}

.kip-badge-group__badge {
	position: relative;
	isolation: isolate;
	display: inline-flex;
	align-items: center;
	justify-content: flex-start;
	gap: 8px;
	width: var(--kip-badge-width);
	min-height: 40px;
	overflow: hidden;
	padding: var(--kip-badge-padding-top) var(--kip-badge-padding-right) var(--kip-badge-padding-bottom) var(--kip-badge-padding-left);
	border: 1px solid var(--kip-badge-border);
	border-radius: var(--kip-badge-radius-top) var(--kip-badge-radius-right) var(--kip-badge-radius-bottom) var(--kip-badge-radius-left);
	background: var(--kip-badge-bg);
	box-shadow: var(--kip-badge-shadow);
	color: var(--kip-badge-text);
	text-decoration: none;
	transition: transform 0.22s ease, background-color 0.22s ease, border-color 0.22s ease, color 0.22s ease, box-shadow 0.22s ease;
}

.kip-badge-group__badge:hover,
.kip-badge-group__badge:focus-visible {
	background: var(--kip-badge-hover-bg);
	color: var(--kip-badge-hover-text);
	text-decoration: none;
}

.kip-badge-group.has-hover-lift .kip-badge-group__badge:hover,
.kip-badge-group.has-hover-lift .kip-badge-group__badge:focus-visible {
	transform: translateY(-2px);
}

.kip-badge-group__badge::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background: linear-gradient(105deg, transparent 0%, var(--kip-badge-sheen) 46%, transparent 78%);
	opacity: 0;
	transform: translateX(-140%);
	pointer-events: none;
}

.kip-badge-group.has-sheen .kip-badge-group__badge::after {
	animation: kipBadgeSheen 5.6s ease-in-out infinite;
}

.kip-badge-group__mark {
	display: inline-flex;
	flex: 0 0 auto;
	align-items: center;
	justify-content: center;
	color: var(--kip-badge-icon);
	line-height: 1;
}

.kip-badge-group__dot {
	display: block;
	width: var(--kip-badge-dot-size);
	height: var(--kip-badge-dot-size);
	border-radius: 99px;
	background: var(--kip-badge-dot);
	box-shadow: 0 0 0 4px var(--kip-badge-dot-ring), 0 0 18px rgba(255, 90, 31, 0.45);
}

.kip-badge-group.has-pulse-dot .kip-badge-group__dot {
	animation: kipBadgePulse 2.8s ease-in-out infinite;
}

.kip-badge-group__text {
	display: block;
	overflow: hidden;
	color: inherit;
	font-size: 14px;
	font-weight: 800;
	line-height: 1.1;
	text-overflow: ellipsis;
	white-space: nowrap;
	letter-spacing: 0;
}

.kip-badge-group--dark_dot_pill {
	--kip-badge-bg: rgba(18, 18, 18, 0.78);
	--kip-badge-hover-bg: rgba(24, 24, 24, 0.96);
	--kip-badge-border: rgba(255, 255, 255, 0.2);
	--kip-badge-shadow: 0 12px 30px rgba(0, 0, 0, 0.28);
}

.kip-badge-group--glass_dark {
	--kip-badge-bg: rgba(20, 22, 24, 0.52);
	--kip-badge-border: rgba(255, 255, 255, 0.28);
	--kip-badge-shadow: 0 16px 34px rgba(0, 0, 0, 0.24);
}

.kip-badge-group--glass_dark .kip-badge-group__badge,
.kip-badge-group--frosted_border .kip-badge-group__badge {
	backdrop-filter: blur(12px);
}

.kip-badge-group--outline_light {
	--kip-badge-bg: rgba(255, 255, 255, 0.08);
	--kip-badge-hover-bg: rgba(255, 255, 255, 0.16);
	--kip-badge-border: rgba(255, 255, 255, 0.48);
	--kip-badge-shadow: none;
}

.kip-badge-group--orange_fill {
	--kip-badge-bg: #ff5a1f;
	--kip-badge-hover-bg: #df420b;
	--kip-badge-border: rgba(255, 255, 255, 0.22);
	--kip-badge-dot: #ffffff;
	--kip-badge-dot-ring: rgba(255, 255, 255, 0.18);
}

.kip-badge-group--black_gold {
	--kip-badge-bg: #121212;
	--kip-badge-border: rgba(255, 193, 112, 0.48);
	--kip-badge-dot: #ffc170;
	--kip-badge-dot-ring: rgba(255, 193, 112, 0.16);
}

.kip-badge-group--soft_shadow {
	--kip-badge-bg: #ffffff;
	--kip-badge-hover-bg: #fff7f2;
	--kip-badge-text: #161616;
	--kip-badge-hover-text: #161616;
	--kip-badge-border: rgba(17, 17, 17, 0.08);
	--kip-badge-shadow: 0 14px 34px rgba(17, 17, 17, 0.12);
}

.kip-badge-group--minimal_line {
	--kip-badge-bg: transparent;
	--kip-badge-hover-bg: rgba(255, 255, 255, 0.08);
	--kip-badge-border: rgba(255, 255, 255, 0.18);
	--kip-badge-shadow: none;
}

.kip-badge-group--gradient_edge .kip-badge-group__badge {
	border-color: transparent;
	background: linear-gradient(var(--kip-badge-bg), var(--kip-badge-bg)) padding-box, linear-gradient(110deg, rgba(255, 90, 31, 0.9), rgba(255, 255, 255, 0.2)) border-box;
}

.kip-badge-group--frosted_border {
	--kip-badge-bg: rgba(255, 255, 255, 0.1);
	--kip-badge-border: rgba(255, 255, 255, 0.3);
}

.kip-badge-group--compact_chip {
	--kip-badge-width: auto;
	--kip-badge-padding-top: 8px;
	--kip-badge-padding-right: 12px;
	--kip-badge-padding-bottom: 8px;
	--kip-badge-padding-left: 12px;
	--kip-badge-shadow: 0 8px 18px rgba(0, 0, 0, 0.18);
}

.kip-badge-group--large_trust {
	--kip-badge-width: 212px;
	--kip-badge-padding-top: 14px;
	--kip-badge-padding-right: 18px;
	--kip-badge-padding-bottom: 14px;
	--kip-badge-padding-left: 18px;
}

.kip-badge-group--large_trust .kip-badge-group__text {
	font-size: 16px;
}

.kip-badge-group--icon_label {
	--kip-badge-bg: rgba(17, 24, 39, 0.88);
	--kip-badge-border: rgba(255, 255, 255, 0.16);
	--kip-badge-dot: #ffb089;
}

.kip-badge-group--underline_accent .kip-badge-group__badge::before {
	content: "";
	position: absolute;
	right: 14px;
	bottom: 7px;
	left: 14px;
	height: 2px;
	border-radius: 99px;
	background: var(--kip-badge-dot);
	opacity: 0.75;
}

.kip-badge-group--neon_dot {
	--kip-badge-dot: #ff5a1f;
	--kip-badge-dot-ring: rgba(255, 90, 31, 0.26);
	--kip-badge-shadow: 0 0 0 1px rgba(255, 90, 31, 0.08), 0 14px 30px rgba(255, 90, 31, 0.12);
}

.kip-badge-group--solid_light {
	--kip-badge-bg: #f8fafc;
	--kip-badge-hover-bg: #ffffff;
	--kip-badge-text: #111827;
	--kip-badge-hover-text: #111827;
	--kip-badge-border: rgba(17, 24, 39, 0.1);
	--kip-badge-shadow: 0 10px 24px rgba(15, 23, 42, 0.12);
}

@media (max-width: 767px) {
	.kip-badge-group.is-mobile-stack {
		flex-direction: column;
		align-items: stretch;
	}

	.kip-badge-group.is-mobile-stack .kip-badge-group__badge {
		width: 100%;
	}
}

@keyframes kipBadgeSheen {
	0%, 28% {
		opacity: 0;
		transform: translateX(-140%);
	}
	44%, 58% {
		opacity: 1;
	}
	82%, 100% {
		opacity: 0;
		transform: translateX(140%);
	}
}

@keyframes kipBadgePulse {
	0%, 100% {
		opacity: 0.72;
		transform: scale(1);
	}
	50% {
		opacity: 1;
		transform: scale(1.18);
	}
}
