/**
 * Ofertas de México Core - Página de Ofertas Samsung
 *
 * Estilos propios de la tarjeta de producto Samsung y sus controles
 * (chips de categoría, selector de orden, selectores de tienda y variante,
 * panel con cupones a medias y avisos). El "chrome" de la página
 * (encabezado, chips, modal, toast, paginación) reutiliza las clases
 * .omx-cupones__* y .omx-inicio__* de cupones.css, así que este archivo
 * se carga DESPUÉS de ese (ver Ofertas_Mexico_Core::enqueue_public_assets).
 *
 * Paleta: la misma del resto del sitio (amarillo de marca, tintes cálidos,
 * texto casi negro). Sin azul. El cupón personal va en negro, igual que en
 * Cupones Tech.
 *
 * Todo vive bajo .omx-samsung para no afectar a Mercado Libre, Amazon
 * ni la Home. Una tarjeta = columna izquierda con la imagen, columna
 * derecha con información, precios y controles, y una franja inferior.
 */

.omx-samsung {
	--omx-sam-fuente: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	--omx-sam-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;

	--omx-sam-amarillo: #f4c400;
	--omx-sam-amarillo-borde: #d4a900;
	--omx-sam-amarillo-texto: #6f5200;
	--omx-sam-aviso-amarillo-fondo: #fff9dd;
	--omx-sam-aviso-amarillo-borde: #eadb8c;
	--omx-sam-aviso-amarillo-texto: #4a3a00;
	--omx-sam-aviso-rojo-fondo: #fdecea;
	--omx-sam-aviso-rojo-borde: #f4c7c3;
	--omx-sam-aviso-rojo-texto: #8f2a22;
	--omx-sam-negro: #1f1f1f;
	--omx-sam-verde-fondo: #eaf3de;
	--omx-sam-verde-texto: #27500a;

	white-space: normal;
}

/* Misma tipografía que el resto del sitio, sin importar el contenedor donde se
   coloque el shortcode (por ejemplo, un bloque de código que forzaba letra
   monoespaciada). Solo los códigos de cupón conservan la monoespaciada. */
.omx-samsung,
.omx-samsung * {
	font-family: var(--omx-sam-fuente) !important;
}

.omx-samsung .omx-sam-cupon__cod,
.omx-samsung .omx-sam-cupon__cod * {
	font-family: var(--omx-sam-mono) !important;
}

/* Un atributo hidden siempre gana sobre cualquier display de abajo. */
.omx-samsung [hidden] {
	display: none !important;
}

.omx-samsung h2 {
	margin: 0;
}

/* ===== Filtro de categorías =====
   Usa el componente común .omx-segmento (cupones.css): una sola línea, scroll horizontal con snap
   y activo amarillo. Aquí no hay estilos propios. */

/* ===== Selector de orden ===== */

.omx-sam-orden {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 0.5rem;
	margin: 0.4rem 0 0.7rem;
}

.omx-sam-orden__label {
	font-size: 0.78rem;
	color: var(--omx-color-texto-suave);
}

.omx-samsung select.omx-sam-orden__sel {
	min-height: 40px;
	max-width: 100%;
	padding: 0 0.7rem;
	border: 1px solid var(--omx-color-borde);
	border-radius: 8px;
	background-color: #ffffff;
	color: var(--omx-color-texto);
	font-size: 0.84rem;
	font-weight: 600;
	cursor: pointer;
	box-shadow: none;
}

.omx-samsung select.omx-sam-orden__sel:focus-visible {
	outline: 2px solid var(--omx-color-cabecera-fondo);
	outline-offset: 2px;
}

/* ===== Lista y tarjeta: una por fila ===== */

.omx-sam-lista {
	display: flex;
	flex-direction: column;
	gap: 0.65rem;
}

.omx-sam-card {
	border: 1px solid var(--omx-color-borde);
	border-radius: 12px;
	background: var(--omx-color-fondo);
	color: var(--omx-color-texto);
	box-shadow: 0 3px 8px rgba(22, 20, 15, 0.09);
	padding: 0.75rem;
}

/* Parte superior: columna izquierda = imagen; derecha = información y controles. */

.omx-sam-card__top {
	display: grid;
	grid-template-columns: 120px minmax(0, 1fr);
	gap: 0.75rem;
	align-items: stretch;
}

.omx-sam-card__media {
	position: relative;
	display: flex;
	min-height: 140px;
}

.omx-samsung .omx-sam-card__img {
	position: relative;
	display: flex;
	flex: 1 1 auto;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 140px;
	padding: 0;
	border: 1px solid #eeeeee;
	border-radius: 10px;
	background: #ffffff !important;
	color: #b4b2a9;
	overflow: hidden;
}

.omx-samsung button.omx-sam-card__img {
	cursor: zoom-in;
	box-shadow: none;
	-webkit-appearance: none;
	appearance: none;
}

.omx-sam-card__img img {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.omx-sam-card__zoom {
	position: absolute;
	right: 4px;
	bottom: 4px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: rgba(22, 20, 15, 0.72);
	color: #ffffff;
	pointer-events: none;
}

/* Badges sobre la imagen (Destacado / Agotado). */
.omx-sam-card__badges {
	position: absolute;
	top: 6px;
	left: 6px;
	z-index: 2;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 4px;
	pointer-events: none;
}

.omx-sam-card__badges .omx-sam-badge--agotado {
	background: var(--omx-sam-negro);
	color: #ffffff;
	border-color: var(--omx-sam-negro);
}

.omx-sam-card__info {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
	min-width: 0;
}

.omx-samsung h2.omx-sam-card__titulo,
.omx-samsung h1.omx-sam-card__titulo {
	margin: 0;
	padding: 0;
	font-size: 0.92rem;
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: 0;
	color: var(--omx-color-texto);
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* Línea de resumen: solo cupones y regalo/beneficios de la ruta mostrada. */
.omx-sam-linea {
	margin: 0;
	font-size: 0.72rem;
	line-height: 1.3;
	color: var(--omx-color-texto-suave);
}

/* ===== Precio principal: "Ahora $X", lista tachada y % de descuento ===== */

.omx-sam-precio {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0.05rem 0.45rem;
	margin-top: 0.1rem;
}

.omx-sam-precio__ahora {
	font-size: 0.78rem;
	color: var(--omx-color-texto-suave);
}

.omx-sam-precio__final {
	font-size: 1.45rem;
	font-weight: 800;
	line-height: 1.15;
	color: var(--omx-color-texto);
	font-variant-numeric: tabular-nums;
}

.omx-sam-precio__original {
	font-size: 0.85rem;
	color: #8a8a8a;
	text-decoration: line-through;
	font-variant-numeric: tabular-nums;
}

.omx-sam-pill-desc {
	align-self: center;
	flex: 0 0 auto;
	font-size: 0.72rem;
	font-weight: 700;
	line-height: 1.2;
	padding: 0.1rem 0.45rem;
	border-radius: 6px;
	background: var(--omx-sam-verde-fondo);
	color: var(--omx-sam-verde-texto);
}

/* ===== Selectores de tienda y de variante (dentro de la tarjeta) ===== */

.omx-sam-controles {
	display: flex;
	flex-direction: column;
	gap: 0.7rem;
	margin-top: 0.4rem;
}

/* Cada grupo (Tienda / variante) lleva una microetiqueta discreta encima. */
.omx-sam-grupo {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
}

.omx-sam-micro {
	margin: 0;
	font-size: 0.66rem;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0.02em;
	color: var(--omx-color-texto-suave);
}

.omx-sam-sel {
	display: grid;
	gap: 0.35rem;
}

/* Tienda: siempre en una sola fila (dos columnas iguales). */
.omx-sam-sel--tienda {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

/* Variantes: chips compactos, en una sola línea cuando caben. */
.omx-sam-sel--variante {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
}

.omx-samsung button.omx-sam-opcion {
	-webkit-appearance: none;
	appearance: none;
	-webkit-tap-highlight-color: transparent;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.1rem;
	min-width: 0;
	min-height: 44px;
	padding: 0.3rem 0.4rem;
	border: 1px solid #d3d1c7;
	border-radius: 8px;
	background: #ffffff !important;
	color: #444441 !important;
	font-size: 0.8rem;
	font-weight: 600;
	line-height: 1.2;
	text-align: center;
	cursor: pointer;
	box-shadow: none;
}

.omx-samsung button.omx-sam-opcion:hover,
.omx-samsung button.omx-sam-opcion:focus,
.omx-samsung button.omx-sam-opcion:active {
	background: var(--omx-color-fondo-suave) !important;
	color: #241900 !important;
	border-color: var(--omx-sam-amarillo-borde);
}

/* Opción elegida: con color de la página (amarillo), en todos los estados. */
.omx-samsung button.omx-sam-opcion.is-active,
.omx-samsung button.omx-sam-opcion.is-active:hover,
.omx-samsung button.omx-sam-opcion.is-active:focus,
.omx-samsung button.omx-sam-opcion.is-active:active {
	border-color: var(--omx-sam-amarillo-borde);
	background: var(--omx-color-amarillo-tint) !important;
	box-shadow: inset 0 0 0 1px var(--omx-sam-amarillo-borde);
	color: #241900 !important;
	font-weight: 700;
}

.omx-samsung button.omx-sam-opcion:disabled {
	background: var(--omx-color-fondo-suave) !important;
	color: #8a8a8a !important;
	border-style: dashed;
	box-shadow: none;
	cursor: not-allowed;
}

.omx-sam-opcion__nombre {
	font-size: 0.72rem;
	font-weight: 500;
	line-height: 1.2;
}

.omx-sam-opcion__precio {
	font-size: 0.92rem;
	font-weight: 800;
	line-height: 1.2;
	font-variant-numeric: tabular-nums;
}

.omx-sam-opcion__precio.is-na {
	font-size: 0.7rem;
	font-weight: 500;
}

/* Variantes (pulgadas, capacidad, tamaño...): chips compactos de una línea.
   El amarillo queda reservado para la tienda elegida y las acciones; la variante
   elegida va en negro con texto blanco. Estas reglas van después de las de
   .omx-sam-opcion para tener prioridad en todos los estados. */
.omx-samsung button.omx-sam-opcion--variante {
	position: relative;
	flex-direction: row;
	min-width: 0;
	min-height: 32px;
	height: 32px;
	padding: 0 0.7rem;
	border: 1px solid #d3d1c7;
	border-radius: 999px;
	background: #ffffff !important;
	color: #444441 !important;
	font-size: 0.78rem;
	font-weight: 600;
	line-height: 1;
	white-space: nowrap;
	box-shadow: none;
}

/* Área táctil de ~44 px sin agrandar el chip. */
.omx-samsung button.omx-sam-opcion--variante::after {
	content: "";
	position: absolute;
	top: -6px;
	right: -2px;
	bottom: -6px;
	left: -2px;
}

.omx-samsung button.omx-sam-opcion--variante:hover,
.omx-samsung button.omx-sam-opcion--variante:focus,
.omx-samsung button.omx-sam-opcion--variante:active {
	background: var(--omx-color-fondo-suave) !important;
	color: #241900 !important;
	border-color: #bdbdbd;
	box-shadow: none;
}

.omx-samsung button.omx-sam-opcion--variante.is-active,
.omx-samsung button.omx-sam-opcion--variante.is-active:hover,
.omx-samsung button.omx-sam-opcion--variante.is-active:focus,
.omx-samsung button.omx-sam-opcion--variante.is-active:active {
	background: var(--omx-sam-negro) !important;
	color: #ffffff !important;
	border-color: var(--omx-sam-negro);
	box-shadow: none;
	font-weight: 700;
}

.omx-samsung button.omx-sam-opcion--variante:focus-visible {
	outline: 2px solid var(--omx-color-cabecera-fondo);
	outline-offset: 2px;
}

/* Una sola tienda: solo se indica cuál. */
.omx-sam-solo {
	align-self: flex-start;
	margin: 0;
	padding: 0.3rem 0.6rem;
	border: 1px dashed var(--omx-color-borde);
	border-radius: 8px;
	background: var(--omx-color-fondo-suave);
	color: var(--omx-color-texto-suave);
	font-size: 0.74rem;
	line-height: 1.2;
}

/* ===== Badges ===== */

.omx-sam-badge {
	display: inline-block;
	flex: 0 0 auto;
	font-size: 0.65rem;
	line-height: 1.2;
	border-radius: 4px;
	padding: 0.12rem 0.42rem;
	white-space: nowrap;
}

.omx-sam-badge--destacado {
	background: var(--omx-color-amarillo-tint);
	color: var(--omx-color-amarillo);
	border: 1px solid rgba(169, 121, 6, 0.25);
}

.omx-sam-badge--agotado {
	background: var(--omx-color-fondo-suave);
	color: var(--omx-color-texto-suave);
	border: 1px solid var(--omx-color-borde);
}

/* ===== Franja inferior: Like · Dislike · Compartir + acción principal ===== */

.omx-sam-pie {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.6rem;
	margin-top: 0.6rem;
	padding-top: 0.6rem;
	border-top: 1px solid var(--omx-color-borde);
}

.omx-sam-reacciones {
	display: flex;
	align-items: center;
	gap: 0.1rem;
	flex: 1 1 auto;
	min-width: 0;
}

/* Texto informativo "Actualizado …": discreto, en la misma fila, sin crecer ni empujar el botón. */
.omx-sam-actualizado {
	flex: 0 1 auto;
	min-width: 0;
	margin-left: 0.3rem;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-size: 0.68rem;
	line-height: 1.2;
	color: var(--omx-color-texto-suave);
}

.omx-sam-pie .omx-sam-btn {
	flex: 0 0 auto;
}

.omx-samsung button.omx-sam-reaccion {
	-webkit-appearance: none;
	appearance: none;
	-webkit-tap-highlight-color: transparent;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 44px;
	padding: 0;
	border: 0;
	border-radius: 8px;
	background: transparent !important;
	color: var(--omx-color-texto-suave) !important;
	cursor: pointer;
	box-shadow: none;
}

.omx-samsung button.omx-sam-reaccion:hover,
.omx-samsung button.omx-sam-reaccion:focus,
.omx-samsung button.omx-sam-reaccion:active {
	background: transparent !important;
	color: var(--omx-color-texto) !important;
}

/* Like / Dislike inertes (métricas apagadas): igual que antes. */
.omx-samsung button.omx-sam-reaccion[aria-disabled="true"] {
	cursor: default;
	opacity: 0.75;
}

/* Like / Dislike seleccionado (V0.1.66): el mismo tinte amarillo de la opción elegida de la card. */
.omx-samsung button.omx-sam-reaccion[aria-pressed="true"],
.omx-samsung button.omx-sam-reaccion[aria-pressed="true"]:hover,
.omx-samsung button.omx-sam-reaccion[aria-pressed="true"]:focus,
.omx-samsung button.omx-sam-reaccion[aria-pressed="true"]:active {
	background: var(--omx-color-amarillo-tint) !important;
	color: #241900 !important;
	box-shadow: inset 0 0 0 1px var(--omx-sam-amarillo-borde);
}

.omx-samsung button.omx-sam-reaccion:focus-visible {
	outline: 2px solid var(--omx-color-cabecera-fondo);
	outline-offset: 2px;
}

.omx-samsung .omx-sam-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 0 1.1rem;
	border: 1px solid #e0b500;
	border-radius: 8px;
	background: var(--omx-color-boton-fondo) !important;
	color: var(--omx-color-boton-texto) !important;
	font-size: 0.86rem;
	font-weight: 700;
	line-height: 1.1;
	text-align: center;
	text-decoration: none;
	white-space: nowrap;
	cursor: pointer;
	box-shadow: none;
	-webkit-appearance: none;
	appearance: none;
}

.omx-samsung .omx-sam-btn:hover {
	background: var(--omx-color-boton-fondo-hover) !important;
	text-decoration: none;
}

.omx-samsung .omx-sam-btn:focus-visible,
.omx-samsung .omx-sam-cupon:focus-visible,
.omx-samsung .omx-sam-eco-btn:focus-visible,
.omx-samsung .omx-sam-card__img:focus-visible,
.omx-samsung .omx-sam-opcion:focus-visible {
	outline: 2px solid var(--omx-color-cabecera-fondo);
	outline-offset: 2px;
}

/* Abierta: el botón de la tarjeta pasa a blanco; el amarillo es "Ir a la oferta". */
.omx-sam-card.is-open .omx-sam-btn--toggle {
	background: #ffffff !important;
	color: #444441 !important;
	border-color: #d3d1c7;
}

.omx-sam-card.is-open .omx-sam-btn--toggle:hover {
	background: var(--omx-color-fondo-suave) !important;
}

.omx-samsung .omx-sam-btn--off {
	background: var(--omx-color-fondo-suave) !important;
	color: var(--omx-color-texto-suave) !important;
	border-color: var(--omx-color-borde);
	cursor: not-allowed;
}

.omx-samsung .omx-sam-btn--ir {
	display: flex;
	width: 100%;
	margin-top: 0.8rem;
}

/* ===== Panel abierto: cómo conseguir el precio de la selección actual ===== */

.omx-sam-panel {
	margin-top: 0.75rem;
	padding-top: 0.75rem;
	border-top: 1px dashed #d3d1c7;
}

/* Avisos: amarillo para información, rojo suave para condiciones y notas. */

.omx-sam-aviso {
	display: flex;
	align-items: flex-start;
	gap: 0.5rem;
	margin: 0 0 0.6rem;
	padding: 0.55rem 0.7rem;
	border: 1px solid transparent;
	border-radius: 10px;
	font-size: 0.8rem;
	line-height: 1.4;
}

.omx-sam-aviso--amarillo {
	background: var(--omx-sam-aviso-amarillo-fondo);
	border-color: var(--omx-sam-aviso-amarillo-borde);
	color: var(--omx-sam-aviso-amarillo-texto);
}

.omx-sam-aviso--rojo {
	background: var(--omx-sam-aviso-rojo-fondo);
	border-color: var(--omx-sam-aviso-rojo-borde);
	color: var(--omx-sam-aviso-rojo-texto);
}

.omx-sam-aviso--compacto {
	margin-bottom: 0.4rem;
	padding: 0.4rem 0.6rem;
	font-size: 0.78rem;
}

.omx-sam-aviso .omx-sam-ico {
	flex: 0 0 auto;
	margin-top: 0.12rem;
}

.omx-sam-aviso__cuerpo {
	flex: 1 1 auto;
	min-width: 0;
}

.omx-sam-aviso__cuerpo p {
	margin: 0;
}

.omx-sam-aviso__cuerpo p + p {
	margin-top: 0.15rem;
}

/* Separador "o" entre regalos alternativos (uno u otro, no los dos). */
.omx-sam-o {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	margin: 0.3rem 0;
	font-size: 0.7rem;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: var(--omx-sam-amarillo-texto);
}

.omx-sam-o::before,
.omx-sam-o::after {
	content: "";
	flex: 1 1 auto;
	height: 1px;
	background: var(--omx-sam-aviso-amarillo-borde);
}

/* Pasos */

.omx-sam-paso {
	display: flex;
	gap: 0.65rem;
	margin-bottom: 0.75rem;
	font-size: 0.86rem;
}

.omx-sam-paso__num {
	flex: 0 0 22px;
	height: 22px;
	margin-top: 1px;
	border-radius: 50%;
	background: var(--omx-sam-negro);
	color: #ffffff;
	font-size: 0.72rem;
	font-weight: 700;
	display: flex;
	align-items: center;
	justify-content: center;
}

.omx-sam-paso__cuerpo {
	flex: 1 1 auto;
	min-width: 0;
}

.omx-sam-paso__titulo {
	margin: 0;
	line-height: 1.35;
}

.omx-sam-paso__sub {
	margin: 0.15rem 0 0;
	font-size: 0.78rem;
	color: var(--omx-color-texto-suave);
}

.omx-sam-ayuda {
	margin: 0.4rem 0 0;
	font-size: 0.74rem;
	color: var(--omx-color-texto-suave);
}

.omx-samsung button.omx-sam-eco-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	margin-left: 0.3rem;
	padding: 0.1rem 0.45rem;
	min-height: 28px;
	border: 0;
	border-radius: 6px;
	background: transparent !important;
	color: var(--omx-sam-amarillo-texto) !important;
	font-size: 0.8rem;
	font-weight: 700;
	text-decoration: underline;
	cursor: pointer;
	box-shadow: none;
}

.omx-sam-directo {
	margin: 0 0 0.75rem;
	font-size: 0.84rem;
	color: var(--omx-color-texto-suave);
}

/* ===== Cupones a medias: inicio del código real + capa "Ver y copiar" ===== */

.omx-sam-cupones {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
	margin-top: 0.4rem;
}

.omx-samsung button.omx-sam-cupon {
	display: flex;
	align-items: stretch;
	width: 100%;
	height: 44px;
	padding: 0;
	border: 1px dashed var(--omx-sam-amarillo-texto);
	border-radius: 8px;
	background: #ffffff !important;
	color: var(--omx-sam-amarillo-texto) !important;
	text-align: left;
	overflow: hidden;
	cursor: pointer;
	box-shadow: none;
}

.omx-sam-cupon__cod {
	flex: 1 1 auto;
	display: flex;
	align-items: center;
	gap: 0.35rem;
	min-width: 0;
	padding: 0 0.7rem;
	font-size: 0.86rem;
	letter-spacing: 0.04em;
	overflow: hidden;
	white-space: nowrap;
}

.omx-sam-cupon__capa {
	flex: 0 0 52%;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.3rem;
	background: var(--omx-sam-amarillo);
	color: #241900;
	font-size: 0.78rem;
	font-weight: 700;
	clip-path: polygon(10px 0, 100% 0, 100% 100%, 0 100%);
}

/* Cupón personal: en negro, igual que en Cupones Tech. */
.omx-samsung button.omx-sam-cupon.is-personal {
	border: 1px solid var(--omx-sam-negro);
	color: var(--omx-sam-negro) !important;
}

.omx-sam-cupon.is-personal .omx-sam-cupon__capa {
	background: var(--omx-sam-negro);
	color: #ffffff;
}

.omx-samsung button.omx-sam-cupon.is-revelado {
	border-style: solid;
	background: var(--omx-color-fondo-suave) !important;
}

.omx-sam-cupon.is-revelado .omx-sam-cupon__capa {
	flex: 0 0 auto;
	padding: 0 0.8rem;
	background: var(--omx-sam-verde-fondo);
	color: var(--omx-sam-verde-texto);
	clip-path: none;
}

/* ===== Extras ===== */

.omx-sam-bloque-titulo {
	margin: 0.2rem 0 0.35rem;
	font-size: 0.78rem;
	color: var(--omx-color-texto-suave);
}

.omx-sam-ico {
	display: inline-flex;
}

/* ===== Visor de imagen ampliada ===== */

.omx-sam-lightbox {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 10002;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 1rem;
}

.omx-sam-lightbox__fondo {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.78);
}

.omx-sam-lightbox__marco {
	position: relative;
	display: flex;
	margin: 0;
	max-width: 100%;
	max-height: 100%;
}

.omx-sam-lightbox__img {
	display: block;
	width: auto;
	height: auto;
	max-width: min(100%, 900px);
	max-height: 82vh;
	border-radius: 10px;
	background: #ffffff;
}

.omx-samsung button.omx-sam-lightbox__cerrar {
	position: absolute;
	top: -12px;
	right: -12px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	padding: 0;
	border: 1px solid #dedbd4;
	border-radius: 50%;
	background: #ffffff !important;
	color: #4a4843 !important;
	cursor: pointer;
	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.25);
}

/* ===== Modal de Eco Renueva ===== */

.omx-sam-eco-pasos {
	margin: 0 0 0.8rem;
	padding-left: 1.2rem;
	font-size: 0.9rem;
	line-height: 1.5;
}

.omx-sam-eco-nota {
	margin: 0;
	font-size: 0.84rem;
	color: var(--omx-color-texto-suave);
}

@media (max-width: 640px) {
	.omx-sam-card {
		padding: 0.65rem;
	}

	.omx-sam-precio__final {
		font-size: 1.35rem;
	}

	.omx-samsung .omx-sam-btn {
		padding: 0 0.9rem;
		font-size: 0.82rem;
	}
}

/* Nombre enlazado a la ficha: se ve igual que el texto (sin subrayado) y se subraya al apuntar. */
.omx-samsung .omx-sam-card__titulo a.omx-sam-card__enlace {
	color: inherit;
	text-decoration: none;
}

.omx-samsung .omx-sam-card__titulo a.omx-sam-card__enlace:hover {
	text-decoration: underline;
}

.omx-samsung .omx-sam-card__titulo a.omx-sam-card__enlace:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 2px;
	border-radius: 2px;
}

/* Página de ficha: regreso al listado y nombre completo (sin recortar a 3 líneas). */
.omx-ficha__nav {
	margin: 0 0 0.7rem;
}

.omx-samsung a.omx-ficha__volver {
	font-size: 0.85rem;
	font-weight: 600;
	color: inherit;
	text-decoration: none;
	opacity: 0.75;
}

.omx-samsung a.omx-ficha__volver:hover,
.omx-samsung a.omx-ficha__volver:focus-visible {
	text-decoration: underline;
	opacity: 1;
}

.omx-samsung h1.omx-ficha__titulo {
	margin: 0 0 0.6rem;
	font-size: 1.15rem;
	font-weight: 700;
}

.omx-ficha h1.omx-sam-card__titulo {
	display: block;
	overflow: visible;
	-webkit-line-clamp: unset;
}

@media (prefers-reduced-motion: reduce) {
	.omx-samsung * {
		transition: none !important;
		animation: none !important;
	}
}
