.kbs-original-badge {
	align-items: center;
	background: #effdf7;
	border: 1px solid #8eecc6;
	border-radius: 999px;
	box-shadow: 0 5px 14px rgba(0, 158, 108, .14);
	color: #007f5f;
	direction: rtl;
	display: inline-flex !important;
	font-size: 13px;
	font-weight: 700;
	gap: 8px;
	line-height: 1.25;
	max-width: calc(100% - 20px);
	padding: 7px 11px 7px 13px;
	position: relative !important;
	text-align: right;
	vertical-align: middle;
	will-change: box-shadow, transform;
	animation: kbs-badge-breathe 2.8s ease-in-out infinite;
}

.kbs-original-badge svg {
	background: #009e6c;
	border-radius: 50%;
	color: #fff;
	display: block !important;
	fill: currentColor !important;
	height: 24px !important;
	max-height: 24px !important;
	max-width: 24px !important;
	min-width: 24px !important;
	padding: 5px !important;
	width: 24px !important;
	animation: kbs-icon-pulse 1.8s ease-in-out infinite;
}

.kbs-original-badge--single {
	margin: 0 0 14px;
}

@keyframes kbs-badge-breathe {
	0%, 100% { box-shadow: 0 5px 14px rgba(0, 158, 108, .14); transform: translateY(0); }
	50% { box-shadow: 0 7px 20px rgba(0, 158, 108, .28); transform: translateY(-1px); }
}

@keyframes kbs-icon-pulse {
	0%, 100% { transform: scale(1); }
	50% { transform: scale(1.12); }
}

.kbs-size-picker {
	direction: ltr;
	margin: 2px 0 8px;
	max-width: 100%;
	width: 100%;
}

.kbs-size-grid {
	display: grid;
	gap: 10px 11px;
	grid-template-columns: repeat(auto-fill, minmax(72px, 88px));
	justify-content: start;
	max-width: 100%;
}

.kbs-size-option {
	align-items: center;
	background: linear-gradient(135deg, rgba(255, 255, 255, .78), rgba(217, 215, 216, .72));
	backdrop-filter: blur(9px) saturate(135%);
	border: 1px solid rgba(255, 255, 255, .82);
	border-radius: 999px;
	box-shadow: inset 0 1px 1px rgba(255, 255, 255, .72), 0 4px 10px rgba(51, 41, 42, .08);
	color: #27313c;
	cursor: pointer;
	display: flex;
	font-size: 15px;
	justify-content: center;
	min-height: 53px;
	padding: 7px 9px;
	position: relative;
	transition: border-color .18s ease, background-color .18s ease, color .18s ease, box-shadow .18s ease, transform .18s ease;
	width: 100%;
}

.kbs-size-option:hover:not(:disabled) {
	background: linear-gradient(135deg, rgba(255, 255, 255, .95), rgba(229, 247, 239, .85));
	border-color: rgba(0, 158, 108, .52);
	box-shadow: inset 0 1px 1px rgba(255, 255, 255, .9), 0 6px 14px rgba(0, 158, 108, .14);
	transform: translateY(-1px);
}

.kbs-size-option:focus-visible {
	box-shadow: 0 0 0 3px rgba(0, 158, 108, .22);
	outline: 0;
}

.kbs-size-option.is-selected {
	background: linear-gradient(135deg, rgba(227, 255, 244, .9), rgba(158, 237, 204, .75));
	border-color: rgba(0, 145, 98, .7);
	box-shadow: inset 0 1px 1px rgba(255, 255, 255, .9), 0 5px 13px rgba(0, 142, 96, .2);
	color: #006f53;
	font-weight: 700;
}

.kbs-size-option.is-unavailable,
.kbs-size-option:disabled {
	background: linear-gradient(135deg, rgba(231, 229, 230, .66), rgba(202, 198, 200, .56));
	border-color: rgba(255, 255, 255, .46);
	box-shadow: inset 0 1px 1px rgba(255, 255, 255, .45);
	color: #73777c;
	cursor: not-allowed;
	text-decoration: line-through;
	text-decoration-thickness: 1px;
}

.kbs-size-option.is-unavailable::after,
.kbs-size-option:disabled::after {
	border-top: 2px solid rgba(91, 91, 91, .55);
	content: '';
	left: 18%;
	op: 50%;
	position: absolute;
	right: 18%;
	transform: translateY(-50%);
}

.kbs-original-select {
	height: 1px;
	margin: -1px;
	overflow: hidden;
	position: absolute;
	width: 1px;
	clip: rect(0, 0, 0, 0);
	clip-path: inset(50%);
	white-space: nowrap;
}

@media (max-width: 480px) {
	.kbs-size-grid { gap: 8px; grid-template-columns: repeat(auto-fill, minmax(67px, 78px)); }
	.kbs-size-option { font-size: 14px; min-height: 47px; }
}

@media (prefers-reduced-motion: reduce) {
	.kbs-original-badge { animation: none; }
	.kbs-original-badge svg { animation: none; }
	.kbs-size-option { transition: none; }
}
