/*
 * Star rating picker on the input forms (see js/katb_star_input.js).
 */
.katb-star-select-hidden {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
	clip: rect(0 0 0 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
	padding: 0 !important;
	margin: -1px !important;
}

/* The rating row sits on its own line at the top of the input forms */
.katb_input_rating,
.katb_widget_input_rating {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 4px 10px;
	margin: 0 0 6px;
}
.katb_input_rating label,
.katb_widget_input_rating label {
	margin: 0;
}
.katb_input_rating .katb-star-input,
.katb_widget_input_rating .katb-star-input {
	margin: 0;
}

.katb-star-input {
	--katb-star-on: #f2c230;
	--katb-star-off: #4a4e56;
	display: inline-flex;
	align-items: center;
	gap: 12px;
	margin: 4px 0 10px;
	padding: 4px 6px;
	border-radius: 8px;
	outline: none;
	vertical-align: middle;
}
.katb-star-input:focus-visible {
	box-shadow: 0 0 0 2px #4aabbf;
}

.katb-star-stars {
	position: relative;
	display: inline-block;
	width: 170px;
	height: 34px;
	cursor: pointer;
	touch-action: none;
	user-select: none;
	-webkit-user-select: none;
}

.katb-star-row {
	position: absolute;
	top: 0;
	left: 0;
	display: flex;
	width: 170px;
	height: 34px;
	pointer-events: none;
}
.katb-star-row svg {
	flex: 0 0 34px;
	width: 34px;
	height: 34px;
}
.katb-star-base svg {
	fill: var(--katb-star-off);
}
.katb-star-fill {
	overflow: hidden;
	width: 0;
	transition: width 0.08s ease-out;
}
.katb-star-fill svg {
	fill: var(--katb-star-on);
	filter: drop-shadow(0 0 4px rgba(242, 194, 48, 0.35));
}

.katb-star-text {
	min-width: 5.5em;
	font-size: 0.95em;
	color: #aab2bc;
}
