/* Kha Rating Experience: visual layer only; native KK markup remains available to its AJAX. */
body.kha-rating-experience-enabled .kk-star-ratings.kha-rating-experience--mounted {
	position: relative;
	display: block;
	width: min(100%, 320px);
	max-width: 100%;
	margin: 40px auto;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

body.kha-rating-experience-enabled .kk-star-ratings.kha-rating-experience--mounted > .kksr-stars,
body.kha-rating-experience-enabled .kk-star-ratings.kha-rating-experience--mounted > .kksr-legend {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	white-space: nowrap;
}

body.kha-rating-experience-enabled .kha-rating-experience__card {
	padding: 24px 28px;
color: var(--bs-dark-text-emphasis);
	text-align: center;
	transition: transform .4s ease;
}

body.kha-rating-experience-enabled .kk-star-ratings.kha-rating-experience--pending .kha-rating-experience__card { transform: scale(.99); }

body.kha-rating-experience-enabled .kha-rating-experience__title {
	margin: 0 0 18px;
	font-weight: 600;
	letter-spacing: -.4px;
	line-height: 1.3;
	transition: opacity .3s ease, transform .3s ease;
}

body.kha-rating-experience-enabled .kha-rating-experience__stars {
	display: flex;
	flex-direction: row-reverse;
	justify-content: center;
	gap: 8px;
	margin-bottom: 18px;
	transition: transform .5s ease, margin .5s ease;
}

body.kha-rating-experience-enabled .kha-rating-experience__stars input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

body.kha-rating-experience-enabled .kha-rating-experience__stars label {
	position: relative;
	z-index: 1;
	color: #f1f5f9;
	cursor: pointer;
	font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Inter", sans-serif;
	font-size: 36px;
	font-synthesis: none;
	font-variant-emoji: text;
	line-height: 1;
	transition: color .4s ease, filter .4s ease, transform .4s ease;
	-webkit-tap-highlight-color: transparent;
}

body.kha-rating-experience-enabled .kha-rating-experience__stars:not(.kha-rating-experience__stars--locked) label:hover,
body.kha-rating-experience-enabled .kha-rating-experience__stars:not(.kha-rating-experience__stars--locked) label:hover ~ label,
body.kha-rating-experience-enabled .kha-rating-experience__stars:not(.kha-rating-experience__stars--locked) input:checked ~ label {
	color: #f59e0b;
	filter: drop-shadow(0 4px 12px rgba(245, 158, 11, .25));
}

body.kha-rating-experience-enabled .kha-rating-experience__stars:not(.kha-rating-experience__stars--locked) input:checked + label { transform: scale(1.08); }

body.kha-rating-experience-enabled .kha-rating-experience__stars--locked {
	margin-bottom: 20px;
	transform: scale(.9);
}

body.kha-rating-experience-enabled .kha-rating-experience__stars--locked label { cursor: default; }

body.kha-rating-experience-enabled .kha-rating-experience__stars--locked input:checked ~ label {
	color: #fcd34d;
	filter: none;
	transform: scale(1);
}

body.kha-rating-experience-enabled .kha-rating-experience__stats {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 24px;
	overflow: hidden;
	color: #64748b;
	font-size: 14px;
	font-weight: 500;
}

body.kha-rating-experience-enabled .kha-rating-experience__stats-inner {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
}

body.kha-rating-experience-enabled .kha-rating-experience__stats strong {
	margin-right: 4px;
	font-weight: 600;
}

body.kha-rating-experience-enabled .kha-rating-experience__success { color: #10b981; font-weight: 600; }
body.kha-rating-experience-enabled .kha-rating-experience__slide-in { animation: kha-rating-slide-up-in .4s cubic-bezier(.22, 1, .36, 1) forwards; }
body.kha-rating-experience-enabled .kha-rating-experience__slide-out { animation: kha-rating-slide-up-out .3s cubic-bezier(.22, 1, .36, 1) forwards; }
body.kha-rating-experience-enabled .kha-rating-experience__jump { display: inline-block; animation: kha-rating-value-jump .8s cubic-bezier(.34, 1.56, .64, 1) forwards; }

@keyframes kha-rating-slide-up-in { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
@keyframes kha-rating-slide-up-out { from { opacity: 1; transform: translateY(0); } to { opacity: 0; transform: translateY(-10px); } }
@keyframes kha-rating-value-jump { 0% { color: #10b981; transform: scale(1.25); } 100% { color: inherit; transform: scale(1); } }

@media (max-width: 767px) {
	body.kha-rating-experience-enabled .kk-star-ratings.kha-rating-experience--mounted { width: 100%; max-width: 320px; margin: 32px auto; }
	body.kha-rating-experience-enabled .kha-rating-experience__card { padding: 22px 18px; border-radius: 18px; }
	body.kha-rating-experience-enabled .kha-rating-experience__title { font-size: 16px; }
	body.kha-rating-experience-enabled .kha-rating-experience__stars { gap: 7px; }
}

@media (prefers-reduced-motion: reduce) {
	body.kha-rating-experience-enabled .kha-rating-experience__card,
	body.kha-rating-experience-enabled .kha-rating-experience__title,
	body.kha-rating-experience-enabled .kha-rating-experience__stars,
	body.kha-rating-experience-enabled .kha-rating-experience__stars label { transition: none; }
	body.kha-rating-experience-enabled .kha-rating-experience__slide-in,
	body.kha-rating-experience-enabled .kha-rating-experience__slide-out,
	body.kha-rating-experience-enabled .kha-rating-experience__jump { animation: none; }
}
