.mgr-wrapper {
	font-family: inherit;
	max-width: 100%;
	box-sizing: border-box;
}

.mgr-wrapper *,
.mgr-wrapper *::before,
.mgr-wrapper *::after {
	box-sizing: inherit;
}

/* Summary bar (grid / list / carousel) */

.mgr-summary {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 16px;
	flex-wrap: wrap;
}

.mgr-summary-rating {
	font-size: 1.4em;
	font-weight: 700;
}

.mgr-summary-total {
	color: #666;
	font-size: 0.9em;
}

.mgr-star-rating {
	color: #fbbc04;
	letter-spacing: 1px;
	white-space: nowrap;
}

.mgr-star-empty {
	color: #d9d9d9;
}

.mgr-stars-lg {
	font-size: 1.5em;
}

/* Review grid / list / carousel layouts */

.mgr-reviews.mgr-layout-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
	gap: 16px;
}

.mgr-reviews.mgr-layout-list {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.mgr-reviews.mgr-layout-carousel {
	display: flex;
	gap: 16px;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	padding-bottom: 8px;
}

.mgr-reviews.mgr-layout-carousel .mgr-review {
	flex: 0 0 280px;
	scroll-snap-align: start;
}

/* Grid con cantidad fija de columnas (variantes de mgr-layout-grid, que se
   ajusta solo con auto-fill). */

.mgr-reviews.mgr-layout-grid-2col {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 16px;
}

.mgr-reviews.mgr-layout-grid-3col {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 16px;
}

.mgr-reviews.mgr-layout-grid-4col {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 16px;
}

/* Grid ancho completo: tarjetas más grandes, pensado para secciones hero/destacadas. */

.mgr-reviews.mgr-layout-grid-full {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(340px, 1fr));
	gap: 24px;
}

.mgr-reviews.mgr-layout-grid-full .mgr-review {
	padding: 24px;
}

.mgr-reviews.mgr-layout-grid-full .mgr-text {
	font-size: 1.05em;
}

/* Lista compacta: como mgr-layout-list pero con menos espaciado, para sidebars angostos. */

.mgr-reviews.mgr-layout-lista-compacta {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.mgr-reviews.mgr-layout-lista-compacta .mgr-review {
	padding: 10px 12px;
}

.mgr-reviews.mgr-layout-lista-compacta .mgr-review-header {
	margin-bottom: 6px;
}

/* Mosaico: columnas estilo Pinterest, cada tarjeta con su altura natural. */

.mgr-reviews.mgr-layout-mosaico {
	columns: 3;
	column-gap: 16px;
}

.mgr-reviews.mgr-layout-mosaico .mgr-review {
	break-inside: avoid;
	margin-bottom: 16px;
}

@media (max-width: 900px) {
	.mgr-reviews.mgr-layout-grid-3col,
	.mgr-reviews.mgr-layout-grid-4col {
		grid-template-columns: repeat(2, 1fr);
	}

	.mgr-reviews.mgr-layout-mosaico {
		columns: 2;
	}
}

@media (max-width: 600px) {
	.mgr-reviews.mgr-layout-grid-2col,
	.mgr-reviews.mgr-layout-grid-3col,
	.mgr-reviews.mgr-layout-grid-4col {
		grid-template-columns: 1fr;
	}

	.mgr-reviews.mgr-layout-mosaico {
		columns: 1;
	}
}

/* Destacado + grid: la reseña con mejor calificación grande arriba
   (`.mgr-featured`, misma tarjeta `.mgr-review` agrandada), el resto en un
   grid chico debajo (`.mgr-reviews.mgr-layout-destacado-grid`). */

.mgr-featured {
	margin-bottom: 20px;
}

.mgr-featured .mgr-review {
	padding: 28px;
	border-width: 2px;
}

.mgr-featured .mgr-text {
	font-size: 1.15em;
}

.mgr-reviews.mgr-layout-destacado-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
	gap: 12px;
}

.mgr-reviews.mgr-layout-destacado-grid .mgr-review {
	padding: 12px;
}

.mgr-reviews.mgr-layout-destacado-grid .mgr-text {
	font-size: 0.9em;
}

/* Testimonio único: reusa el widget slider (mismo HTML/JS que .mgr-slider),
   pero cada slide ocupa el 100% del ancho y la tarjeta de reseña
   (mgr_render_review_card, sin cambios) se reordena por CSS: avatar grande
   arriba, texto grande centrado, nombre/fecha debajo. `display: contents` en
   el header saca avatar y meta del grupo para poder intercalar el texto
   entre ambos con `order`. */

.mgr-slider-testimonial .mgr-slider-slide {
	flex: 0 0 100%;
}

.mgr-slider-testimonial .mgr-slider-slide .mgr-review {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 14px;
	padding: 32px 24px;
}

.mgr-slider-testimonial .mgr-slider-slide .mgr-review-header {
	display: contents;
}

.mgr-slider-testimonial .mgr-slider-slide .mgr-avatar,
.mgr-slider-testimonial .mgr-slider-slide .mgr-avatar-fallback {
	order: 1;
	width: 72px;
	height: 72px;
	flex: none;
	font-size: 1.6em;
}

.mgr-slider-testimonial .mgr-slider-slide .mgr-text {
	order: 2;
	font-size: 1.25em;
	line-height: 1.6;
	margin: 0;
}

.mgr-slider-testimonial .mgr-slider-slide .mgr-review-meta {
	order: 3;
	align-items: center;
}

.mgr-slider-testimonial .mgr-slider-slide .mgr-author-row,
.mgr-slider-testimonial .mgr-slider-slide .mgr-stars-row {
	justify-content: center;
}

@media (max-width: 480px) {
	.mgr-slider-testimonial .mgr-slider-slide .mgr-review {
		padding: 24px 16px;
	}
}

/* Review card (shared by every layout) */

.mgr-review {
	background: #fff;
	border: 1px solid #e5e5e5;
	border-radius: 10px;
	padding: 16px;
}

.mgr-review-header {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	margin-bottom: 10px;
}

.mgr-avatar {
	border-radius: 50%;
	width: 40px;
	height: 40px;
	flex: 0 0 40px;
	object-fit: cover;
}

.mgr-avatar-fallback {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-weight: 700;
	font-size: 1.05em;
}

.mgr-review-meta {
	display: flex;
	flex-direction: column;
	gap: 3px;
	min-width: 0;
}

.mgr-author-row {
	display: flex;
	align-items: center;
	gap: 6px;
}

.mgr-author {
	font-weight: 600;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.mgr-stars-row {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 0.85em;
}

.mgr-verified {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 15px;
	height: 15px;
	border-radius: 50%;
	background: #4285f4;
	color: #fff;
	font-size: 0.7em;
	line-height: 1;
}

.mgr-text {
	margin: 0 0 8px;
	line-height: 1.5;
	color: #333;
}

.mgr-text-clamped {
	display: -webkit-box;
	-webkit-line-clamp: 4;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* !important acá a propósito: muchos temas de WordPress le ponen su propio
   estilo de botón (relleno, padding, radius) a cualquier <button>, y sin esto
   el "Leer más" sale como botón grande del tema en vez de link de texto. */
.mgr-wrapper .mgr-read-more {
	background: none !important;
	border: none !important;
	box-shadow: none !important;
	border-radius: 0 !important;
	padding: 0 0 8px !important;
	margin: 0 !important;
	color: #4285f4 !important;
	font-weight: 600 !important;
	font-size: 0.9em !important;
	font-family: inherit !important;
	line-height: 1.4 !important;
	text-transform: none !important;
	letter-spacing: normal !important;
	cursor: pointer;
	display: inline-block;
	width: auto;
	height: auto;
}

.mgr-wrapper .mgr-read-more:hover {
	text-decoration: underline;
}

.mgr-time {
	font-size: 0.8em;
	color: #999;
	line-height: 1.3;
}

.mgr-cta {
	display: inline-block;
	margin-top: 16px;
	text-decoration: none;
	font-weight: 600;
}

.mgr-error {
	color: #b32d2e;
}

.mgr-empty {
	color: #666;
}

/* Google branding bits */

.mgr-google-g {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	background: #fff;
	border: 1px solid #e5e5e5;
	color: #4285f4;
	font-weight: 700;
	font-size: 0.7em;
	flex: 0 0 auto;
}

.mgr-google-wordmark {
	font-weight: 700;
	font-size: 1.2em;
	letter-spacing: 0.5px;
}

.mgr-g-blue {
	color: #4285f4;
}

.mgr-g-red {
	color: #ea4335;
}

.mgr-g-yellow {
	color: #fbbc05;
}

.mgr-g-green {
	color: #34a853;
}

/* Slider widget (header + horizontal track with nav arrows) */

.mgr-slider {
	border: 1px solid #e5e5e5;
	border-radius: 12px;
	padding: 20px;
}

.mgr-slider-header {
	display: flex;
	align-items: center;
	gap: 20px;
	flex-wrap: wrap;
	margin-bottom: 20px;
	padding: 14px 20px;
	border: 1px solid #e5e5e5;
	border-radius: 10px;
	width: fit-content;
	max-width: 100%;
}

.mgr-slider-label {
	font-size: 1.3em;
	font-weight: 800;
	letter-spacing: 0.5px;
	text-transform: uppercase;
}

.mgr-slider-total {
	color: #666;
	font-size: 0.9em;
	white-space: nowrap;
}

.mgr-slider-header .mgr-google-wordmark {
	margin-left: auto;
}

.mgr-slider-body {
	display: flex;
	align-items: center;
	gap: 8px;
}

.mgr-slider-track {
	display: flex;
	gap: 16px;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
	flex: 1;
	min-width: 0;
}

.mgr-slider-track::-webkit-scrollbar {
	display: none;
}

.mgr-slider-slide {
	flex: 0 0 260px;
	scroll-snap-align: start;
}

.mgr-slider-slide .mgr-review {
	border: none;
	padding: 0;
}

/* !important en los botones del slider (nav y dots) a propósito: muchos temas
   le aplican su propio estilo de botón (relleno de color, radius, padding) a
   cualquier <button>, y sin esto salen como pill de color en vez de flecha/punto. */
.mgr-wrapper .mgr-slider-nav {
	flex: 0 0 auto;
	width: 32px;
	height: 32px;
	min-width: 32px;
	border-radius: 50% !important;
	border: 1px solid #dcdcde !important;
	background: #fff !important;
	box-shadow: none !important;
	text-shadow: none !important;
	padding: 0 !important;
	margin: 0 !important;
	font-size: 1.3em !important;
	font-family: inherit !important;
	font-weight: 400 !important;
	line-height: 1 !important;
	text-transform: none !important;
	letter-spacing: normal !important;
	cursor: pointer;
	color: #3c434a !important;
}

.mgr-wrapper .mgr-slider-nav:hover:not(:disabled) {
	background: #f6f7f7 !important;
}

.mgr-wrapper .mgr-slider-nav:disabled {
	opacity: 0.35 !important;
	cursor: default;
}

.mgr-slider-dots {
	display: flex;
	justify-content: center;
	gap: 6px;
	margin-top: 14px;
}

.mgr-wrapper .mgr-dot {
	width: 7px !important;
	height: 7px !important;
	min-width: 0 !important;
	border-radius: 50% !important;
	border: none !important;
	background: #d9d9d9 !important;
	box-shadow: none !important;
	padding: 0 !important;
	margin: 0 !important;
	cursor: pointer;
}

.mgr-wrapper .mgr-dot.is-active {
	background: #4285f4 !important;
	width: 18px !important;
	border-radius: 4px !important;
}

@media (max-width: 480px) {
	.mgr-slider-header {
		flex-direction: column;
		align-items: flex-start;
		gap: 6px;
	}

	.mgr-slider-header .mgr-google-wordmark {
		margin-left: 0;
	}

	.mgr-slider-slide {
		flex-basis: 220px;
	}
}

/* Style variants */

.mgr-wrapper.mgr-style-dark .mgr-slider,
.mgr-wrapper.mgr-style-dark {
	background: #1d2327;
}

.mgr-wrapper.mgr-style-dark .mgr-slider {
	border-color: #3c434a;
}

.mgr-wrapper.mgr-style-dark:not(:has(.mgr-slider)) {
	padding: 20px;
	border-radius: 8px;
}

.mgr-wrapper.mgr-style-dark .mgr-summary-total,
.mgr-wrapper.mgr-style-dark .mgr-slider-total,
.mgr-wrapper.mgr-style-dark .mgr-time {
	color: #a7aaad;
}

.mgr-wrapper.mgr-style-dark .mgr-review {
	background: #2c3338;
	border-color: #3c434a;
}

.mgr-wrapper.mgr-style-dark .mgr-review-reply {
	background: rgba(255,255,255,.08);
	border-left-color: #555;
}

.mgr-wrapper.mgr-style-dark .mgr-slider-slide .mgr-review {
	background: none;
}

.mgr-wrapper.mgr-style-dark .mgr-author,
.mgr-wrapper.mgr-style-dark .mgr-text,
.mgr-wrapper.mgr-style-dark .mgr-slider-label,
.mgr-wrapper.mgr-style-dark .mgr-summary-rating {
	color: #f0f0f1;
}

.mgr-wrapper.mgr-style-dark .mgr-slider-nav {
	background: #2c3338 !important;
	border-color: #3c434a !important;
	color: #f0f0f1 !important;
}

.mgr-wrapper.mgr-style-dark .mgr-google-g {
	background: #2c3338;
	border-color: #3c434a;
}

.mgr-wrapper.mgr-style-dark .mgr-dot {
	background: #3c434a !important;
}

.mgr-wrapper.mgr-style-minimal .mgr-review {
	background: none;
	border: none;
	border-bottom: 1px solid #e5e5e5;
	border-radius: 0;
	padding: 16px 0;
}

.mgr-wrapper.mgr-style-minimal .mgr-review:last-child {
	border-bottom: none;
}

.mgr-wrapper.mgr-style-minimal .mgr-slider {
	border: none;
	padding: 0;
}

.mgr-wrapper.mgr-style-minimal .mgr-slider-header {
	border: none;
	padding: 14px 0;
}

.mgr-wrapper.mgr-style-minimal .mgr-slider-nav {
	border: none !important;
}

.mgr-wrapper.mgr-style-minimal .mgr-slider-slide .mgr-review {
	border-bottom: none;
	padding: 0;
}

/* ==========================================================================
   Fondos
   ========================================================================== */

.mgr-wrapper.mgr-style-fondo-crema .mgr-slider,
.mgr-wrapper.mgr-style-fondo-crema {
	background: #faf6ee;
}

.mgr-wrapper.mgr-style-fondo-crema .mgr-slider {
	border-color: #ece3d0;
}

.mgr-wrapper.mgr-style-fondo-crema:not(:has(.mgr-slider)) {
	padding: 20px;
	border-radius: 8px;
}

.mgr-wrapper.mgr-style-fondo-crema .mgr-review {
	background: #fffdf8;
	border-color: #ece3d0;
}

.mgr-wrapper.mgr-style-fondo-crema .mgr-slider-header {
	border-color: #ece3d0;
}

.mgr-wrapper.mgr-style-acento-arriba .mgr-review {
	position: relative;
	overflow: hidden;
	padding-top: 20px;
}

.mgr-wrapper.mgr-style-acento-arriba .mgr-review::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 4px;
	background: linear-gradient(90deg, #4285f4, #34a853, #fbbc04, #ea4335);
}

.mgr-wrapper.mgr-style-acento-arriba .mgr-slider {
	position: relative;
	overflow: hidden;
	padding-top: 24px;
}

.mgr-wrapper.mgr-style-acento-arriba .mgr-slider::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 4px;
	background: linear-gradient(90deg, #4285f4, #34a853, #fbbc04, #ea4335);
}

.mgr-wrapper.mgr-style-acento-arriba .mgr-slider-slide .mgr-review {
	padding-top: 0;
}

.mgr-wrapper.mgr-style-acento-arriba .mgr-slider-slide .mgr-review::before {
	content: none;
}

.mgr-wrapper.mgr-style-degradado .mgr-slider,
.mgr-wrapper.mgr-style-degradado {
	background: linear-gradient(135deg, #ffffff 0%, #eef3fb 55%, #fdf6e3 100%);
}

.mgr-wrapper.mgr-style-degradado:not(:has(.mgr-slider)) {
	padding: 20px;
	border-radius: 8px;
}

.mgr-wrapper.mgr-style-degradado .mgr-review {
	background: linear-gradient(135deg, #ffffff 0%, #f5f8fd 60%, #fdf8ec 100%);
	border-color: #e6e6e6;
}

/* ==========================================================================
   Bordes y sombras
   ========================================================================== */

.mgr-wrapper.mgr-style-borde-fino .mgr-review {
	border: 1px solid #8f939a;
	box-shadow: none;
}

.mgr-wrapper.mgr-style-borde-fino .mgr-slider {
	border: 1px solid #8f939a;
}

.mgr-wrapper.mgr-style-sombra-flotante .mgr-review {
	border: none;
	box-shadow: 0 14px 28px -12px rgba(0, 0, 0, 0.28);
}

.mgr-wrapper.mgr-style-sombra-flotante .mgr-slider {
	border: none;
	box-shadow: 0 14px 28px -12px rgba(0, 0, 0, 0.2);
}

.mgr-wrapper.mgr-style-sombra-flotante .mgr-slider-slide .mgr-review {
	box-shadow: none;
}

.mgr-wrapper.mgr-style-sombra-difusa .mgr-review {
	border: none;
	box-shadow: 0 6px 34px rgba(0, 0, 0, 0.08);
}

.mgr-wrapper.mgr-style-sombra-difusa .mgr-slider {
	border: none;
	box-shadow: 0 6px 34px rgba(0, 0, 0, 0.08);
}

.mgr-wrapper.mgr-style-sombra-difusa .mgr-slider-slide .mgr-review {
	box-shadow: none;
}

.mgr-wrapper.mgr-style-plano .mgr-review {
	border: none;
	box-shadow: none;
	border-radius: 0;
	border-bottom: 1px solid #ececec;
	padding-left: 0;
	padding-right: 0;
}

.mgr-wrapper.mgr-style-plano .mgr-review:last-child {
	border-bottom: none;
}

.mgr-wrapper.mgr-style-plano .mgr-slider {
	border: none;
	padding: 0;
	border-radius: 0;
}

.mgr-wrapper.mgr-style-plano .mgr-slider-header {
	border: none;
	padding: 14px 0;
}

.mgr-wrapper.mgr-style-plano .mgr-slider-slide .mgr-review {
	border-bottom: none;
	padding: 0;
}

/* ==========================================================================
   Modo oscuro
   ========================================================================== */

.mgr-wrapper.mgr-style-oscuro-total .mgr-slider,
.mgr-wrapper.mgr-style-oscuro-total {
	background: #0f1113;
}

.mgr-wrapper.mgr-style-oscuro-total .mgr-slider {
	border-color: #0f1113;
}

.mgr-wrapper.mgr-style-oscuro-total:not(:has(.mgr-slider)) {
	padding: 20px;
	border-radius: 8px;
}

.mgr-wrapper.mgr-style-oscuro-total .mgr-summary-total,
.mgr-wrapper.mgr-style-oscuro-total .mgr-slider-total,
.mgr-wrapper.mgr-style-oscuro-total .mgr-time {
	color: #8a8a8a;
}

.mgr-wrapper.mgr-style-oscuro-total .mgr-review {
	background: #17191c;
	border-color: #26282b;
}

.mgr-wrapper.mgr-style-oscuro-total .mgr-slider-slide .mgr-review {
	background: none;
}

.mgr-wrapper.mgr-style-oscuro-total .mgr-author,
.mgr-wrapper.mgr-style-oscuro-total .mgr-text,
.mgr-wrapper.mgr-style-oscuro-total .mgr-slider-label,
.mgr-wrapper.mgr-style-oscuro-total .mgr-summary-rating {
	color: #f5f5f5;
}

.mgr-wrapper.mgr-style-oscuro-total .mgr-slider-nav {
	background: #17191c !important;
	border-color: #26282b !important;
	color: #f5f5f5 !important;
}

.mgr-wrapper.mgr-style-oscuro-total .mgr-google-g {
	background: #17191c;
	border-color: #26282b;
}

.mgr-wrapper.mgr-style-oscuro-total .mgr-dot {
	background: #26282b !important;
}

.mgr-wrapper.mgr-style-oscuro-dorado .mgr-slider,
.mgr-wrapper.mgr-style-oscuro-dorado {
	background: #20202a;
}

.mgr-wrapper.mgr-style-oscuro-dorado .mgr-slider {
	border: 1px solid #b8923d;
}

.mgr-wrapper.mgr-style-oscuro-dorado:not(:has(.mgr-slider)) {
	padding: 20px;
	border-radius: 8px;
	border: 1px solid #b8923d;
}

.mgr-wrapper.mgr-style-oscuro-dorado .mgr-review {
	background: #262632;
	border-color: #4a3d1f;
}

.mgr-wrapper.mgr-style-oscuro-dorado .mgr-slider-slide .mgr-review {
	background: none;
	border: none;
}

.mgr-wrapper.mgr-style-oscuro-dorado .mgr-author,
.mgr-wrapper.mgr-style-oscuro-dorado .mgr-slider-label,
.mgr-wrapper.mgr-style-oscuro-dorado .mgr-summary-rating {
	color: #f5e9c9;
}

.mgr-wrapper.mgr-style-oscuro-dorado .mgr-text {
	color: #cfc4a8;
}

.mgr-wrapper.mgr-style-oscuro-dorado .mgr-summary-total,
.mgr-wrapper.mgr-style-oscuro-dorado .mgr-slider-total,
.mgr-wrapper.mgr-style-oscuro-dorado .mgr-time {
	color: #9c8f6e;
}

.mgr-wrapper.mgr-style-oscuro-dorado .mgr-slider-nav {
	background: #262632 !important;
	border-color: #b8923d !important;
	color: #f5e9c9 !important;
}

.mgr-wrapper.mgr-style-oscuro-dorado .mgr-dot {
	background: #4a3d1f !important;
}

.mgr-wrapper.mgr-style-oscuro-dorado .mgr-dot.is-active {
	background: #d4af37 !important;
}

.mgr-wrapper.mgr-style-oscuro-dorado .mgr-google-g {
	background: #262632;
	border-color: #b8923d;
	color: #d4af37;
}

.mgr-wrapper.mgr-style-oscuro-dorado .mgr-verified {
	background: #d4af37;
}

.mgr-wrapper.mgr-style-oscuro-minimal .mgr-slider,
.mgr-wrapper.mgr-style-oscuro-minimal {
	background: #14161a;
}

.mgr-wrapper.mgr-style-oscuro-minimal .mgr-slider {
	border: none;
	padding: 0;
}

.mgr-wrapper.mgr-style-oscuro-minimal:not(:has(.mgr-slider)) {
	padding: 20px;
	border-radius: 8px;
}

.mgr-wrapper.mgr-style-oscuro-minimal .mgr-slider-header {
	border: none;
	padding: 14px 0;
}

.mgr-wrapper.mgr-style-oscuro-minimal .mgr-review {
	background: none;
	border: none;
	border-bottom: 1px solid #26282b;
	border-radius: 0;
	padding: 16px 0;
}

.mgr-wrapper.mgr-style-oscuro-minimal .mgr-review:last-child {
	border-bottom: none;
}

.mgr-wrapper.mgr-style-oscuro-minimal .mgr-slider-slide .mgr-review {
	border-bottom: none;
	padding: 0;
}

.mgr-wrapper.mgr-style-oscuro-minimal .mgr-author,
.mgr-wrapper.mgr-style-oscuro-minimal .mgr-slider-label,
.mgr-wrapper.mgr-style-oscuro-minimal .mgr-summary-rating {
	color: #e4e4e6;
}

.mgr-wrapper.mgr-style-oscuro-minimal .mgr-text {
	color: #9a9da3;
}

.mgr-wrapper.mgr-style-oscuro-minimal .mgr-summary-total,
.mgr-wrapper.mgr-style-oscuro-minimal .mgr-slider-total,
.mgr-wrapper.mgr-style-oscuro-minimal .mgr-time {
	color: #6f7278;
}

.mgr-wrapper.mgr-style-oscuro-minimal .mgr-slider-nav {
	border: none !important;
	background: none !important;
	color: #8ab4f8 !important;
}

.mgr-wrapper.mgr-style-oscuro-minimal .mgr-google-g {
	background: #14161a;
	border-color: #3a3d43;
	color: #8ab4f8;
}

.mgr-wrapper.mgr-style-oscuro-minimal .mgr-dot {
	background: #3a3d43 !important;
}

.mgr-wrapper.mgr-style-alto-contraste .mgr-slider,
.mgr-wrapper.mgr-style-alto-contraste {
	background: #000;
}

.mgr-wrapper.mgr-style-alto-contraste .mgr-slider {
	border: 2px solid #fff;
}

.mgr-wrapper.mgr-style-alto-contraste:not(:has(.mgr-slider)) {
	padding: 20px;
	border-radius: 4px;
	border: 2px solid #fff;
}

.mgr-wrapper.mgr-style-alto-contraste .mgr-review {
	background: #000;
	border: 2px solid #fff;
}

.mgr-wrapper.mgr-style-alto-contraste .mgr-slider-slide .mgr-review {
	background: none;
	border: none;
}

.mgr-wrapper.mgr-style-alto-contraste .mgr-author,
.mgr-wrapper.mgr-style-alto-contraste .mgr-text,
.mgr-wrapper.mgr-style-alto-contraste .mgr-slider-label,
.mgr-wrapper.mgr-style-alto-contraste .mgr-summary-rating {
	color: #fff;
	font-weight: 600;
}

.mgr-wrapper.mgr-style-alto-contraste .mgr-summary-total,
.mgr-wrapper.mgr-style-alto-contraste .mgr-slider-total,
.mgr-wrapper.mgr-style-alto-contraste .mgr-time {
	color: #ddd;
}

.mgr-wrapper.mgr-style-alto-contraste .mgr-slider-nav {
	background: #000 !important;
	border: 2px solid #fff !important;
	color: #fff !important;
}

.mgr-wrapper.mgr-style-alto-contraste .mgr-dot {
	background: #555 !important;
}

.mgr-wrapper.mgr-style-alto-contraste .mgr-dot.is-active {
	background: #fff !important;
}

.mgr-wrapper.mgr-style-alto-contraste .mgr-google-g {
	background: #000;
	border-color: #fff;
	color: #fff;
}

/* ==========================================================================
   Compactos y minimalistas
   ========================================================================== */

.mgr-wrapper.mgr-style-solo-texto .mgr-review {
	background: none;
	border: none;
	box-shadow: none;
	padding: 8px 0;
}

.mgr-wrapper.mgr-style-solo-texto .mgr-avatar,
.mgr-wrapper.mgr-style-solo-texto .mgr-google-g {
	display: none;
}

.mgr-wrapper.mgr-style-solo-texto .mgr-slider {
	border: none;
	padding: 0;
}

.mgr-wrapper.mgr-style-solo-texto .mgr-slider-header {
	border: none;
	padding: 14px 0;
}

.mgr-wrapper.mgr-style-linea-compacta .mgr-review {
	padding: 10px 14px;
}

.mgr-wrapper.mgr-style-linea-compacta .mgr-text,
.mgr-wrapper.mgr-style-linea-compacta .mgr-time {
	display: none;
}

.mgr-wrapper.mgr-style-linea-compacta .mgr-review-header {
	margin-bottom: 0;
}

.mgr-wrapper.mgr-style-linea-compacta .mgr-slider-slide .mgr-review {
	padding: 0;
}

.mgr-wrapper.mgr-style-punteado .mgr-review {
	border: 1px dashed #b1b4ba;
	box-shadow: none;
}

.mgr-wrapper.mgr-style-punteado .mgr-slider {
	border: 1px dashed #b1b4ba;
}

.mgr-wrapper.mgr-style-chip-chico .mgr-review {
	display: inline-flex;
	align-items: center;
	border-radius: 999px;
	padding: 8px 16px;
}

.mgr-wrapper.mgr-style-chip-chico .mgr-review-header {
	margin-bottom: 0;
}

.mgr-wrapper.mgr-style-chip-chico .mgr-text {
	display: none;
}

.mgr-wrapper.mgr-style-chip-chico .mgr-slider-slide .mgr-review {
	padding: 8px 16px;
}

.mgr-wrapper.mgr-style-chip-chico .mgr-slider-slide {
	flex-basis: auto;
}

/* ==========================================================================
   Destacados y lujo
   ========================================================================== */

.mgr-wrapper.mgr-style-marco-dorado .mgr-review {
	background: #fffaf2;
	border: 3px double #cfa445;
	padding: 20px;
}

.mgr-wrapper.mgr-style-marco-dorado .mgr-slider {
	background: #fffaf2;
	border: 3px double #cfa445;
}

.mgr-wrapper.mgr-style-marco-dorado .mgr-slider-slide .mgr-review {
	background: none;
	border: none;
	padding: 0;
}

.mgr-wrapper.mgr-style-marco-dorado .mgr-google-g {
	border-color: #cfa445;
}

.mgr-wrapper.mgr-style-marco-dorado-oscuro .mgr-slider,
.mgr-wrapper.mgr-style-marco-dorado-oscuro {
	background: #1a1a1a;
}

.mgr-wrapper.mgr-style-marco-dorado-oscuro .mgr-slider {
	border: 3px double #d4af37;
}

.mgr-wrapper.mgr-style-marco-dorado-oscuro:not(:has(.mgr-slider)) {
	padding: 20px;
	border-radius: 8px;
	border: 3px double #d4af37;
}

.mgr-wrapper.mgr-style-marco-dorado-oscuro .mgr-review {
	background: #1a1a1a;
	border: 3px double #d4af37;
	padding: 20px;
}

.mgr-wrapper.mgr-style-marco-dorado-oscuro .mgr-slider-slide .mgr-review {
	background: none;
	border: none;
	padding: 0;
}

.mgr-wrapper.mgr-style-marco-dorado-oscuro .mgr-author,
.mgr-wrapper.mgr-style-marco-dorado-oscuro .mgr-slider-label,
.mgr-wrapper.mgr-style-marco-dorado-oscuro .mgr-summary-rating {
	color: #f5e9c9;
}

.mgr-wrapper.mgr-style-marco-dorado-oscuro .mgr-text {
	color: #d8cba3;
}

.mgr-wrapper.mgr-style-marco-dorado-oscuro .mgr-summary-total,
.mgr-wrapper.mgr-style-marco-dorado-oscuro .mgr-slider-total,
.mgr-wrapper.mgr-style-marco-dorado-oscuro .mgr-time {
	color: #a5966c;
}

.mgr-wrapper.mgr-style-marco-dorado-oscuro .mgr-google-g {
	background: #1a1a1a;
	border-color: #d4af37;
	color: #d4af37;
}

.mgr-wrapper.mgr-style-marco-dorado-oscuro .mgr-slider-nav {
	background: #1a1a1a !important;
	border-color: #d4af37 !important;
	color: #f5e9c9 !important;
}

.mgr-wrapper.mgr-style-marco-dorado-oscuro .mgr-dot {
	background: #4a3d1f !important;
}

.mgr-wrapper.mgr-style-marco-dorado-oscuro .mgr-dot.is-active {
	background: #d4af37 !important;
}

.mgr-wrapper.mgr-style-sello-verificado .mgr-review {
	position: relative;
	overflow: hidden;
	padding-top: 24px;
}

.mgr-wrapper.mgr-style-sello-verificado .mgr-review::after {
	content: '✓ Verificado';
	position: absolute;
	top: 12px;
	right: -30px;
	width: 120px;
	background: #00a32a;
	color: #fff;
	font-size: 10px;
	font-weight: 700;
	text-align: center;
	padding: 3px 0;
	transform: rotate(35deg);
}

.mgr-wrapper.mgr-style-sello-verificado .mgr-slider {
	position: relative;
	overflow: hidden;
}

.mgr-wrapper.mgr-style-tipografia-elegante {
	font-family: Georgia, 'Times New Roman', serif;
}

.mgr-wrapper.mgr-style-tipografia-elegante .mgr-review {
	background: #fdfaf5;
	border-color: #e5ddc8;
}

.mgr-wrapper.mgr-style-tipografia-elegante .mgr-slider {
	background: #fdfaf5;
	border-color: #e5ddc8;
}

.mgr-wrapper.mgr-style-tipografia-elegante .mgr-author {
	font-style: italic;
	letter-spacing: 0.2px;
}

.mgr-wrapper.mgr-style-tipografia-elegante .mgr-text {
	font-style: italic;
}

.mgr-wrapper.mgr-style-tipografia-elegante .mgr-slider-label {
	font-family: Georgia, 'Times New Roman', serif;
	text-transform: none;
	font-style: italic;
}

.mgr-hover-anim .mgr-review {
	transition: transform .18s ease, box-shadow .18s ease;
}
.mgr-hover-anim .mgr-review:hover {
	transform: translateY(-3px);
	box-shadow: 0 8px 20px rgba(0,0,0,.08);
}

.mgr-no-arrows .mgr-slider-nav {
	display: none;
}

.mgr-rating-note {
	font-size: .85em;
	color: #666;
	margin: 0 0 12px;
}

.mgr-review-reply {
	margin-top: 10px;
	padding: 10px 12px;
	background: #f5f5f5;
	border-radius: 8px;
	border-left: 3px solid #ccc;
}
.mgr-review-reply-label {
	display: block;
	font-weight: 600;
	font-size: .8em;
	margin-bottom: 2px;
}
.mgr-review-reply-text {
	margin: 0;
	font-size: .9em;
	color: #444;
}

.mgr-align-center .mgr-summary,
.mgr-align-center .mgr-slider-header {
	justify-content: center;
	text-align: center;
}
.mgr-align-center .mgr-review {
	text-align: center;
}
.mgr-align-center .mgr-review-header {
	flex-direction: column;
	align-items: center;
}
.mgr-align-center .mgr-author-row,
.mgr-align-center .mgr-stars-row {
	justify-content: center;
}

.mgr-align-right .mgr-summary,
.mgr-align-right .mgr-slider-header {
	justify-content: flex-end;
	text-align: right;
}
.mgr-align-right .mgr-review {
	text-align: right;
}
.mgr-align-right .mgr-review-header {
	flex-direction: row-reverse;
}
.mgr-align-right .mgr-author-row,
.mgr-align-right .mgr-stars-row {
	justify-content: flex-end;
}
