.lf-pr-wrap {
	--lf-pr-star-color: #f5a623;
	--lf-pr-text: inherit;
	--lf-pr-bg: transparent;
	--lf-pr-radius: 12px;
	--lf-pr-font: inherit;
	max-width: 760px;
	margin: 2.5rem auto;
	font-family: var(--lf-pr-font);
	color: var(--lf-pr-text);
}

.lf-pr-summary {
	display: flex;
	align-items: center;
	gap: .6rem;
	margin-bottom: 1.25rem;
	font-size: 1.05rem;
}

.lf-pr-stars {
	color: var(--lf-pr-star-color);
	font-size: 1.05em;
	letter-spacing: 1px;
	white-space: nowrap;
}
.lf-pr-stars .lf-pr-star-empty { opacity: .25; }
.lf-pr-stars .lf-pr-star-half { opacity: .55; }

.lf-pr-summary-text {
	opacity: .65;
	font-size: .95em;
}

.lf-pr-list-title,
.lf-pr-form-title {
	font-size: 1.05rem;
	font-weight: 600;
	letter-spacing: .01em;
	margin: 0 0 1rem;
	opacity: .85;
}

.lf-pr-form-intro {
	font-size: .92em;
	opacity: .75;
	margin: -.5rem 0 1rem;
	line-height: 1.5;
}

.lf-pr-privacy-note {
	font-size: .88em;
	background: rgba(0, 0, 0, .035);
	border-radius: calc(var(--lf-pr-radius) * .5);
	padding: .6rem .85rem;
	margin: 0 0 1.25rem;
	line-height: 1.5;
	opacity: .85;
}

.lf-pr-rating-row { margin-bottom: 1.1rem !important; }
.lf-pr-rating-label {
	display: block;
	font-weight: 500;
	font-size: .92em;
	margin-bottom: .4rem;
	opacity: .85;
}

.lf-pr-field-hint-inline {
	font-weight: 400;
	font-size: .85em;
	opacity: .6;
}

.lf-pr-checkbox-field label {
	display: flex;
	align-items: flex-start;
	gap: .5rem;
	font-weight: 400;
	font-size: .92em;
	line-height: 1.4;
}
.lf-pr-checkbox-field input[type="checkbox"] {
	margin-top: .15rem;
	flex-shrink: 0;
}

.lf-pr-consent-field {
	background: rgba(0, 0, 0, .03);
	border-radius: calc(var(--lf-pr-radius) * .5);
	padding: .7rem .85rem;
}

.lf-pr-list {
	list-style: none;
	margin: 0 0 1.5rem;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: .75rem;
}

.lf-pr-item {
	background: var(--lf-pr-bg);
	border: 1px solid rgba(0, 0, 0, .07);
	border-radius: var(--lf-pr-radius);
	padding: 1.1rem 1.25rem;
}

.lf-pr-item-head {
	display: flex;
	align-items: center;
	gap: .55rem;
	flex-wrap: wrap;
	margin-bottom: .5rem;
}

.lf-pr-avatar {
	border-radius: 50%;
	width: 32px;
	height: 32px;
	flex-shrink: 0;
}

.lf-pr-author { font-weight: 600; }
.lf-pr-date { opacity: .55; font-size: .85em; margin-left: auto; }

.lf-pr-content { font-size: .97em; line-height: 1.55; }
.lf-pr-content p { margin: .3rem 0; }

.lf-pr-photo {
	max-width: 220px;
	height: auto;
	border-radius: calc(var(--lf-pr-radius) * .6);
	margin-top: .65rem;
	display: block;
}

.lf-pr-field-hint {
	display: block;
	font-size: .8em;
	opacity: .6;
	margin-top: .25rem;
}

.lf-pr-response {
	background: rgba(0, 0, 0, .04);
	border-radius: calc(var(--lf-pr-radius) * .6);
	padding: .6rem .85rem;
	margin-top: .65rem;
	font-size: .92em;
	line-height: 1.5;
}

.lf-pr-empty { opacity: .6; font-size: .95em; }

.lf-pr-notice {
	padding: .75rem 1rem;
	border-radius: calc(var(--lf-pr-radius) * .6);
	margin-bottom: 1.25rem;
	font-size: .95em;
}
.lf-pr-notice-success {
	background: #e6f6ea;
	color: #1d6b34;
	border: 1px solid #b6e3c2;
}
.lf-pr-notice-error {
	background: #fbe9e7;
	color: #a3322a;
	border: 1px solid #f3c2bd;
}

.lf-pr-form-wrap {
	background: var(--lf-pr-bg);
	margin-top: 1.5rem;
	padding: 1.4rem 1.5rem;
	border: 1px solid rgba(0, 0, 0, .08);
	border-radius: var(--lf-pr-radius);
}

.lf-pr-form p { margin: 0 0 .9rem; }

.lf-pr-form label {
	display: block;
	font-weight: 500;
	font-size: .92em;
	margin-bottom: .35rem;
	opacity: .85;
}

.lf-pr-form input[type="text"],
.lf-pr-form input[type="email"],
.lf-pr-form textarea {
	width: 100%;
	padding: .6rem .75rem;
	border: 1px solid rgba(0, 0, 0, .16);
	border-radius: calc(var(--lf-pr-radius) * .45);
	font: inherit;
	color: inherit;
	background: #fff;
	box-sizing: border-box;
	transition: border-color .15s;
}
.lf-pr-form input[type="text"]:focus,
.lf-pr-form input[type="email"]:focus,
.lf-pr-form textarea:focus {
	border-color: var(--lf-pr-star-color);
	outline: none;
}

.lf-pr-honeypot {
	position: absolute !important;
	left: -9999px !important;
	top: auto;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

.lf-pr-submit {
	background: var(--lf-pr-star-color);
	color: #fff;
	border: 0;
	padding: .65rem 1.5rem;
	border-radius: calc(var(--lf-pr-radius) * .45);
	font: inherit;
	font-weight: 600;
	cursor: pointer;
	transition: opacity .15s, transform .1s;
}
.lf-pr-submit:hover { opacity: .88; }
.lf-pr-submit:active { transform: scale(.98); }

/* Selector de estrellas 100% CSS, sin dependencia de JavaScript */
.lf-pr-stars-input {
	display: flex;
	flex-direction: row-reverse;
	gap: .2rem;
	justify-content: flex-start;
	width: max-content;
	font-size: 1.5rem;
}
.lf-pr-stars-input input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}
.lf-pr-stars-input label {
	cursor: pointer;
	color: rgba(0, 0, 0, .2);
	transition: color .15s;
	display: inline-block;
	margin: 0;
	font-weight: 400;
}
.lf-pr-stars-input input:checked ~ label,
.lf-pr-stars-input label:hover,
.lf-pr-stars-input label:hover ~ label {
	color: var(--lf-pr-star-color);
}
