/**
 * Mi Mundo V1.2 / V1.2.1–V1.2.4 — Brand Presence + discovery density.
 * V1.2.4: Mini columns via CSS Container Queries (not viewport).
 *
 * @package PasionGift_App
 */

.pg-mm-profile {
	display: flex;
	flex-direction: column;
	width: 100%;
	min-width: 0;
	margin: 0 0 var(--pg-space-sm, 0.5rem);
	--pg-mm-focal-x: 50%;
	--pg-mm-focal-y: 50%;
}

.pg-mm-profile__cover {
	position: relative;
	aspect-ratio: 3 / 1;
	min-height: 7.5rem;
	max-height: 240px;
	overflow: hidden;
	margin-inline: calc(-1 * var(--pg-shell-padding-x, 1rem));
	width: calc(100% + (2 * var(--pg-shell-padding-x, 1rem)));
	background:
		linear-gradient(
			145deg,
			color-mix(in srgb, var(--pg-color-brand-wine) 62%, #1c1c1c) 0%,
			color-mix(in srgb, var(--pg-color-brand-wine) 40%, var(--pg-color-brand-nude)) 42%,
			color-mix(in srgb, var(--pg-color-brand-rose) 35%, var(--pg-color-brand-nude)) 100%
		);
}

.pg-mm-profile__cover--empty {
	min-height: 8.5rem;
}

.pg-mm-profile__cover-img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: var(--pg-mm-focal-x) var(--pg-mm-focal-y);
	animation: pg-mm-cover-in 0.55s ease both;
}

.pg-mm-profile__cover-scrim {
	position: absolute;
	inset: auto 0 0;
	height: 48%;
	pointer-events: none;
	background: linear-gradient(to top, rgba(28, 28, 28, 0.38), transparent);
}

.pg-mm-profile__body {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.4rem;
	width: 100%;
	padding: 0 var(--pg-shell-padding-x, 1rem) var(--pg-space-lg, 1.25rem);
	margin-top: -3rem;
	text-align: center;
	box-sizing: border-box;
}

.pg-mm-profile__avatar {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 5.75rem;
	height: 5.75rem;
	border-radius: 999px;
	overflow: hidden;
	border: 3px solid var(--pg-color-surface, #fff);
	background: color-mix(in srgb, var(--pg-color-brand-wine) 14%, var(--pg-color-brand-nude));
	box-shadow:
		0 0 0 1px color-mix(in srgb, var(--pg-color-brand-wine) 12%, transparent),
		0 6px 20px rgba(28, 28, 28, 0.14);
	animation: pg-mm-avatar-in 0.45s ease 0.08s both;
}

.pg-mm-profile__avatar-img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.pg-mm-profile__avatar-fallback {
	font-family: var(--pg-font-family);
	font-size: 1.35rem;
	font-weight: var(--pg-font-weight-semibold, 600);
	letter-spacing: 0.06em;
	color: var(--pg-color-brand-wine);
}

.pg-mm-profile__name {
	margin: 0.35rem 0 0;
	max-width: 100%;
	padding-inline: 0.5rem;
	font-family: var(--pg-font-family);
	font-size: clamp(1.4rem, 4.5vw, 1.85rem);
	font-weight: var(--pg-font-weight-semibold, 600);
	line-height: var(--pg-line-height-tight, 1.2);
	color: var(--pg-color-text);
	letter-spacing: var(--pg-letter-spacing-tight, -0.02em);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.pg-mm-profile__claim {
	margin: 0;
	max-width: 22rem;
	font-family: var(--pg-font-family);
	font-size: var(--pg-font-size-sm, 0.875rem);
	font-weight: var(--pg-font-weight-medium, 500);
	color: var(--pg-color-brand-wine);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.pg-mm-profile__bio {
	margin: 0.15rem 0 0;
	max-width: 26rem;
	font-family: var(--pg-font-family);
	font-size: var(--pg-type-body-sm, 0.9rem);
	line-height: var(--pg-line-height-normal, 1.45);
	color: var(--pg-color-text-muted);
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	overflow: hidden;
}

.pg-mm-profile__context:empty {
	display: none;
}

/* —— Actions —— */
.pg-mm-actions {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0.6rem;
	width: 100%;
	max-width: 22rem;
	margin-top: var(--pg-space-md, 0.85rem);
}

.pg-mm-actions--count-1 {
	max-width: 16rem;
}

.pg-mm-actions--count-2 {
	grid-template-columns: 1fr 1fr;
}

.pg-mm-actions--count-3 {
	grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
	align-items: center;
	max-width: 26rem;
	gap: 0.5rem;
}

.pg-mm-actions__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.4rem;
	min-width: 0;
	min-height: 2.75rem;
	padding: 0.65rem 0.85rem;
	border-radius: 999px;
	font-family: var(--pg-font-family);
	font-size: var(--pg-font-size-sm, 0.875rem);
	font-weight: var(--pg-font-weight-semibold, 600);
	line-height: 1.2;
	text-decoration: none;
	text-align: center;
	box-sizing: border-box;
	transition: background-color 0.18s ease, color 0.18s ease, border-color 0.18s ease, transform 0.18s ease;
}

.pg-mm-actions__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 1.125rem;
	height: 1.125rem;
}

.pg-mm-actions__icon .pg-mm-icon {
	display: block;
	width: 100%;
	height: 100%;
}

.pg-mm-actions__label {
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.pg-mm-actions__media {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 1.35rem;
	height: 1.35rem;
	border-radius: 999px;
	overflow: hidden;
}

.pg-mm-actions__img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.pg-mm-actions__btn--mode-icon {
	padding-inline: 0.75rem;
	min-width: 2.75rem;
}

.pg-mm-actions__btn--mode-icon .pg-mm-actions__icon {
	width: 1.25rem;
	height: 1.25rem;
}

.pg-mm-actions__btn--mode-label {
	gap: 0;
}

/*
 * V1.3 — Image mode: atmospheric partial media (not a thumbnail chip).
 * Theme owns crop, scrim, and hierarchy; admin only picks the attachment.
 */
.pg-mm-actions__btn--mode-image {
	position: relative;
	isolation: isolate;
	justify-content: flex-start;
	gap: 0;
	overflow: hidden;
	min-height: 3rem;
	padding: 0.75rem 1rem;
	border-radius: var(--pg-radius-md, 0.65rem);
	text-align: left;
}

.pg-mm-actions__btn--mode-image .pg-mm-actions__media--atmosphere {
	position: absolute;
	inset: 0 0 0 auto;
	z-index: 0;
	display: block;
	width: clamp(42%, 7.5rem, 58%);
	height: 100%;
	border-radius: 0;
	pointer-events: none;
}

.pg-mm-actions__btn--mode-image .pg-mm-actions__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 70% 50%;
}

.pg-mm-actions__btn--mode-image .pg-mm-actions__scrim {
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	background: linear-gradient(
		95deg,
		color-mix(in srgb, var(--pg-color-brand-nude) 92%, #fff) 0%,
		color-mix(in srgb, var(--pg-color-brand-nude) 78%, #fff) 38%,
		transparent 72%
	);
}

.pg-mm-actions__btn--mode-image .pg-mm-actions__label {
	position: relative;
	z-index: 2;
	max-width: 62%;
	white-space: nowrap;
}

.pg-mm-actions__btn--mode-image.pg-mm-actions__btn--primary {
	color: #fff;
	box-shadow: 0 6px 18px color-mix(in srgb, var(--pg-color-brand-wine) 30%, transparent);
	padding-inline: 1.15rem 1.25rem;
	min-height: 3.25rem;
	min-width: 8rem;
}

.pg-mm-actions__btn--mode-image.pg-mm-actions__btn--primary .pg-mm-actions__media--atmosphere {
	width: clamp(46%, 8.25rem, 62%);
}

.pg-mm-actions__btn--mode-image.pg-mm-actions__btn--primary .pg-mm-actions__scrim {
	background: linear-gradient(
		95deg,
		var(--pg-color-brand-wine) 0%,
		color-mix(in srgb, var(--pg-color-brand-wine) 88%, #1c1c1c) 36%,
		color-mix(in srgb, var(--pg-color-brand-wine) 35%, transparent) 68%,
		transparent 100%
	);
}

.pg-mm-actions__btn--mode-image.pg-mm-actions__btn--secondary {
	color: var(--pg-color-brand-wine);
	background: color-mix(in srgb, var(--pg-color-brand-nude) 55%, #fff);
	border: 1px solid color-mix(in srgb, var(--pg-color-brand-wine) 28%, var(--pg-color-border));
}

.pg-mm-actions__btn--mode-image.pg-mm-actions__btn--secondary .pg-mm-actions__scrim {
	background: linear-gradient(
		95deg,
		color-mix(in srgb, var(--pg-color-brand-nude) 94%, #fff) 0%,
		color-mix(in srgb, var(--pg-color-brand-nude) 82%, #fff) 42%,
		transparent 74%
	);
}

.pg-mm-actions__btn--mode-image:hover {
	transform: translateY(-1px);
}

.pg-mm-actions__btn--mode-image:focus-visible {
	outline: 2px solid var(--pg-color-brand-wine);
	outline-offset: 2px;
}

/* —— Guest Status —— */
.pg-mm-guest {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.35rem;
	width: 100%;
	max-width: 24rem;
	margin-top: 0.55rem;
	padding: 0.85rem 0.95rem;
	border-radius: var(--pg-radius-md, 0.65rem);
	border: 1px solid color-mix(in srgb, var(--pg-color-brand-wine) 16%, var(--pg-color-border));
	background:
		linear-gradient(
			160deg,
			color-mix(in srgb, var(--pg-color-brand-nude) 55%, #fff) 0%,
			color-mix(in srgb, var(--pg-color-brand-rose) 12%, #fff) 100%
		);
	box-sizing: border-box;
	text-align: center;
}

.pg-mm-guest__eyebrow {
	margin: 0;
	font-family: var(--pg-font-family);
	font-size: 0.6875rem;
	font-weight: var(--pg-font-weight-semibold, 600);
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--pg-color-brand-wine);
}

.pg-mm-guest__title {
	margin: 0;
	font-family: var(--pg-font-family);
	font-size: var(--pg-font-size-sm, 0.875rem);
	font-weight: var(--pg-font-weight-semibold, 600);
	line-height: 1.3;
	color: var(--pg-color-text);
}

.pg-mm-guest__body {
	margin: 0;
	max-width: 22rem;
	font-family: var(--pg-font-family);
	font-size: var(--pg-type-body-sm, 0.9rem);
	line-height: 1.4;
	color: var(--pg-color-text-muted);
}

.pg-mm-guest__ctas {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0.5rem;
	width: 100%;
	margin-top: 0.45rem;
}

.pg-mm-guest__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 2.75rem;
	padding: 0.55rem 0.75rem;
	border-radius: 999px;
	font-family: var(--pg-font-family);
	font-size: var(--pg-font-size-sm, 0.875rem);
	font-weight: var(--pg-font-weight-semibold, 600);
	text-decoration: none;
	box-sizing: border-box;
	transition: background-color 0.18s ease, color 0.18s ease, border-color 0.18s ease;
}

.pg-mm-guest__btn--primary {
	background: var(--pg-color-brand-wine);
	color: #fff;
}

.pg-mm-guest__btn--primary:hover {
	background: color-mix(in srgb, var(--pg-color-brand-wine) 88%, #000);
	color: #fff;
}

.pg-mm-guest__btn--secondary {
	background: #fff;
	color: var(--pg-color-brand-wine);
	border: 1px solid color-mix(in srgb, var(--pg-color-brand-wine) 28%, var(--pg-color-border));
}

.pg-mm-guest__btn--secondary:hover {
	background: color-mix(in srgb, var(--pg-color-brand-nude) 70%, #fff);
	color: var(--pg-color-brand-wine);
}

.pg-mm-guest__btn:focus-visible {
	outline: 2px solid var(--pg-color-brand-wine);
	outline-offset: 2px;
}

.pg-mm-actions__btn:focus-visible {
	outline: 2px solid var(--pg-color-brand-wine);
	outline-offset: 2px;
}

.pg-mm-actions__btn--primary {
	background: var(--pg-color-brand-wine);
	color: #fff;
	padding-inline: 1.4rem;
	min-width: 7.25rem;
	box-shadow: 0 4px 14px color-mix(in srgb, var(--pg-color-brand-wine) 28%, transparent);
}

.pg-mm-actions__btn--primary:hover {
	background: color-mix(in srgb, var(--pg-color-brand-wine) 88%, #000);
	color: #fff;
	transform: translateY(-1px);
}

.pg-mm-actions__btn--secondary {
	background: color-mix(in srgb, var(--pg-color-brand-nude) 55%, #fff);
	color: var(--pg-color-brand-wine);
	border: 1px solid color-mix(in srgb, var(--pg-color-brand-wine) 28%, var(--pg-color-border));
}

.pg-mm-actions__btn--secondary:hover {
	background: color-mix(in srgb, var(--pg-color-brand-nude) 80%, #fff);
	color: var(--pg-color-brand-wine);
}

.pg-mm-actions--count-3 .pg-mm-actions__btn--catalog {
	order: 0;
	transform: scale(1.05);
	z-index: 1;
}

.pg-mm-actions--count-3 .pg-mm-actions__btn--catalog:hover {
	transform: scale(1.05) translateY(-1px);
}

.pg-mm-actions--count-3 .pg-mm-actions__btn--catalog.pg-mm-actions__btn--mode-image {
	transform: scale(1.06);
}

.pg-mm-actions--count-3 .pg-mm-actions__btn--catalog.pg-mm-actions__btn--mode-image:hover {
	transform: scale(1.06) translateY(-1px);
}

.pg-mm-actions--count-3 .pg-mm-actions__btn--whatsapp {
	order: -1;
}

.pg-mm-actions--count-3 .pg-mm-actions__btn--telegram {
	order: 1;
}

/* —— Discovery —— */
.pg-mm-discovery {
	display: flex;
	flex-direction: column;
	gap: var(--pg-space-xl, 1.5rem);
	width: 100%;
	padding: var(--pg-space-sm, 0.5rem) var(--pg-shell-padding-x, 1rem) 0;
	box-sizing: border-box;
}

.pg-mm-discovery__section {
	display: flex;
	flex-direction: column;
	gap: var(--pg-space-sm, 0.65rem);
	min-width: 0;
}

.pg-mm-discovery__head {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 0.75rem;
}

.pg-mm-discovery__title,
.pg-mm-info__title,
.pg-account-hero--mm-activity .pg-account-hero__title {
	margin: 0;
	font-family: var(--pg-font-family);
	font-size: var(--pg-type-section-title, 1.125rem);
	font-weight: var(--pg-font-weight-semibold, 600);
	color: var(--pg-color-text);
	letter-spacing: -0.01em;
}

.pg-mm-discovery__more {
	flex-shrink: 0;
	font-family: var(--pg-font-family);
	font-size: var(--pg-font-size-sm, 0.875rem);
	font-weight: var(--pg-font-weight-semibold, 600);
	color: var(--pg-color-brand-wine);
	text-decoration: none;
}

.pg-mm-discovery__more:hover {
	text-decoration: underline;
	text-underline-offset: 2px;
}

.pg-mm-discovery__more:focus-visible {
	outline: 2px solid var(--pg-color-brand-wine);
	outline-offset: 2px;
	border-radius: 2px;
}

.pg-mm-discovery__lede {
	margin: -0.15rem 0 0;
	font-family: var(--pg-font-family);
	font-size: var(--pg-font-size-sm, 0.875rem);
	line-height: 1.4;
	color: var(--pg-color-text-muted);
}

.pg-mm-discovery__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.5rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.pg-mm-discovery--cols-3 .pg-mm-discovery__grid--cats {
	/* Touch/legibility: keep 2 cols under 390px even if admin chose 3. */
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.pg-mm-discovery__card {
	display: flex;
	flex-direction: column;
	gap: 0.45rem;
	text-decoration: none;
	color: inherit;
	min-width: 0;
	min-height: 2.75rem;
}

.pg-mm-discovery__card--cat {
	position: relative;
	border-radius: var(--pg-radius-md, 0.65rem);
	overflow: hidden;
	isolation: isolate;
}

.pg-mm-discovery__card--cat .pg-mm-discovery__media {
	aspect-ratio: 1;
	border-radius: inherit;
}

.pg-mm-discovery--aspect-portrait .pg-mm-discovery__card--cat .pg-mm-discovery__media {
	aspect-ratio: 3 / 4;
}

.pg-mm-discovery--aspect-square .pg-mm-discovery__card--cat .pg-mm-discovery__media {
	aspect-ratio: 1;
}

.pg-mm-discovery__card--cat .pg-mm-discovery__label {
	position: absolute;
	inset: auto 0 0;
	z-index: 1;
	padding: 1.35rem 0.6rem 0.55rem;
	font-size: 0.8125rem;
	font-weight: var(--pg-font-weight-semibold, 600);
	line-height: 1.25;
	color: #fff;
	text-align: left;
	text-shadow: 0 1px 2px rgba(0, 0, 0, 0.35);
	background: linear-gradient(to top, rgba(28, 28, 28, 0.72), transparent);
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
}

/*
 * Density — V1.2.1–V1.2.4:
 * mini = highest density; columns from CONTAINER QUERY on discovery
 *   (not viewport). Always 1:1. Ignores admin mobile_columns.
 * compact = short tiles (4:3), respects mobile_columns + viewport.
 * standard / large (editorial) unchanged; respect mobile_columns.
 *
 * Mini thresholds (discovery content-box, measured):
 *   <300px → 2 cols (~tile ≥140px when narrow)
 *   ≥300px → 3 cols (~tile ≥96px @304px content / viewport 360)
 *   ≥400px → 4 cols (~tile ≥96px)
 *   ≥500px → 5 cols (~tile ≥96px; shell ~529–640 content uses 5, not viewport≥768)
 */
.pg-mm-discovery--density-mini {
	container-type: inline-size;
	container-name: pg-mm-mini;
}

.pg-mm-discovery--density-mini .pg-mm-discovery__grid--cats {
	gap: 0.25rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.pg-mm-discovery--density-mini .pg-mm-discovery__card--cat {
	border-radius: var(--pg-radius-sm, 0.5rem);
	gap: 0;
	min-height: 0;
}

.pg-mm-discovery--density-mini .pg-mm-discovery__card--cat .pg-mm-discovery__media,
.pg-mm-discovery--density-mini.pg-mm-discovery--aspect-square .pg-mm-discovery__card--cat .pg-mm-discovery__media,
.pg-mm-discovery--density-mini.pg-mm-discovery--aspect-portrait .pg-mm-discovery__card--cat .pg-mm-discovery__media {
	/* Mini always 1:1 — ignore portrait to avoid tall tiles */
	aspect-ratio: 1;
	border-radius: inherit;
}

.pg-mm-discovery--density-mini .pg-mm-discovery__card--cat .pg-mm-discovery__label {
	padding: 0.55rem 0.3rem 0.25rem;
	font-size: 0.625rem;
	line-height: 1.1;
	-webkit-line-clamp: 1;
	background: linear-gradient(to top, rgba(28, 28, 28, 0.82), rgba(28, 28, 28, 0.18) 65%, transparent);
}

.pg-mm-discovery--density-mini .pg-mm-discovery__section--products .pg-product-discovery__grid {
	gap: 0.35rem;
}

/* Mini column ladder — container width, not window */
@container pg-mm-mini (min-width: 300px) {
	.pg-mm-discovery--density-mini .pg-mm-discovery__grid--cats {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 0.3rem;
	}

	.pg-mm-discovery--density-mini .pg-mm-discovery__card--cat .pg-mm-discovery__label {
		font-size: 0.6875rem;
		padding: 0.65rem 0.35rem 0.28rem;
	}
}

@container pg-mm-mini (min-width: 400px) {
	.pg-mm-discovery--density-mini .pg-mm-discovery__grid--cats {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 0.35rem;
	}
}

@container pg-mm-mini (min-width: 500px) {
	.pg-mm-discovery--density-mini .pg-mm-discovery__grid--cats {
		grid-template-columns: repeat(5, minmax(0, 1fr));
		gap: 0.45rem;
		max-width: none;
	}
}

.pg-mm-discovery--density-compact .pg-mm-discovery__grid--cats {
	gap: 0.4rem;
}

.pg-mm-discovery--density-compact .pg-mm-discovery__card--cat {
	border-radius: var(--pg-radius-sm, 0.5rem);
}

.pg-mm-discovery--density-compact .pg-mm-discovery__card--cat .pg-mm-discovery__media,
.pg-mm-discovery--density-compact.pg-mm-discovery--aspect-square .pg-mm-discovery__card--cat .pg-mm-discovery__media {
	/* Slightly horizontal → shorter than 1:1 at same column width */
	aspect-ratio: 4 / 3;
	border-radius: inherit;
}

.pg-mm-discovery--density-compact.pg-mm-discovery--aspect-portrait .pg-mm-discovery__card--cat .pg-mm-discovery__media {
	/* Under compact, never use tall 3:4 — cap at square */
	aspect-ratio: 1;
}

.pg-mm-discovery--density-compact .pg-mm-discovery__card--cat .pg-mm-discovery__label {
	padding: 0.95rem 0.5rem 0.4rem;
	font-size: 0.75rem;
	line-height: 1.2;
	-webkit-line-clamp: 2;
	background: linear-gradient(to top, rgba(28, 28, 28, 0.78), rgba(28, 28, 28, 0.2) 70%, transparent);
}

.pg-mm-discovery--density-standard .pg-mm-discovery__grid--cats {
	gap: 0.65rem;
}

.pg-mm-discovery--density-standard .pg-mm-discovery__card--cat .pg-mm-discovery__label {
	padding: 1.45rem 0.65rem 0.6rem;
	font-size: 0.8125rem;
}

.pg-mm-discovery--density-large .pg-mm-discovery__grid--cats {
	gap: 0.75rem;
}

.pg-mm-discovery--density-large .pg-mm-discovery__card--cat .pg-mm-discovery__label {
	padding: 1.75rem 0.7rem 0.7rem;
	font-size: 0.84375rem;
}

.pg-mm-discovery--density-large.pg-mm-discovery--aspect-square .pg-mm-discovery__card--cat .pg-mm-discovery__media {
	aspect-ratio: 1;
}

.pg-mm-discovery--density-large.pg-mm-discovery--aspect-portrait .pg-mm-discovery__card--cat .pg-mm-discovery__media {
	aspect-ratio: 3 / 4;
}

.pg-mm-discovery--density-compact .pg-mm-discovery__section--products .pg-product-discovery__grid {
	gap: 0.5rem;
}

.pg-mm-discovery--density-standard .pg-mm-discovery__section--products .pg-product-discovery__grid {
	gap: 0.65rem;
}

.pg-mm-discovery--density-large .pg-mm-discovery__section--products .pg-product-discovery__grid {
	gap: 0.85rem;
}

.pg-mm-discovery__card--cat:hover .pg-mm-discovery__img,
.pg-mm-discovery__card--cat:hover .pg-mm-discovery__media--empty {
	transform: scale(1.03);
}

.pg-mm-discovery__card:focus-visible {
	outline: 2px solid var(--pg-color-brand-wine);
	outline-offset: 2px;
	border-radius: var(--pg-radius-md, 0.65rem);
}

.pg-mm-discovery__media {
	display: block;
	aspect-ratio: 1;
	border-radius: var(--pg-radius-md, 0.65rem);
	overflow: hidden;
	background: color-mix(in srgb, var(--pg-color-brand-nude) 80%, #fff);
}

.pg-mm-discovery__media--empty {
	background:
		linear-gradient(
			155deg,
			color-mix(in srgb, var(--pg-color-brand-wine) 22%, var(--pg-color-brand-nude)),
			color-mix(in srgb, var(--pg-color-brand-rose) 30%, var(--pg-color-brand-nude))
		);
	transition: transform 0.35s ease;
}

.pg-mm-discovery__img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.35s ease;
}

.pg-mm-discovery__label {
	font-family: var(--pg-font-family);
	font-size: var(--pg-font-size-sm, 0.875rem);
	font-weight: var(--pg-font-weight-medium, 500);
	color: var(--pg-color-text);
}

/* Soften nested product-discovery inside Mi Mundo */
.pg-mm-discovery__section--products .pg-product-discovery {
	margin: 0;
	padding: 0;
	gap: 0.75rem;
}

.pg-mm-discovery__section--products .pg-product-discovery__grid {
	gap: 0.65rem;
}

/* —— Future modules (locked preview; no links) —— */
.pg-mm-future {
	display: flex;
	flex-direction: column;
	gap: var(--pg-space-sm, 0.65rem);
	width: 100%;
	padding: var(--pg-space-md, 1rem) var(--pg-shell-padding-x, 1rem) 0;
	box-sizing: border-box;
}

.pg-mm-future__heading {
	margin: 0;
	font-family: var(--pg-font-family);
	font-size: var(--pg-type-section-title, 1.125rem);
	font-weight: var(--pg-font-weight-semibold, 600);
	color: var(--pg-color-text);
	letter-spacing: -0.01em;
}

.pg-mm-future__list {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.pg-mm-future__card {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.25rem;
	padding: 0.85rem 0.95rem;
	border-radius: var(--pg-radius-md, 0.65rem);
	border: 1px dashed color-mix(in srgb, var(--pg-color-brand-wine) 22%, var(--pg-color-border));
	background: color-mix(in srgb, var(--pg-color-brand-nude) 22%, #fff);
	opacity: 0.92;
	pointer-events: none;
	user-select: none;
}

.pg-mm-future__item--preview .pg-mm-future__card {
	opacity: 1;
	border-style: solid;
}

.pg-mm-future__badge {
	display: inline-block;
	margin-bottom: 0.15rem;
	font-family: var(--pg-font-family);
	font-size: 0.6875rem;
	font-weight: var(--pg-font-weight-semibold, 600);
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--pg-color-brand-wine);
}

.pg-mm-future__title {
	margin: 0;
	font-family: var(--pg-font-family);
	font-size: var(--pg-font-size-sm, 0.875rem);
	font-weight: var(--pg-font-weight-semibold, 600);
	color: var(--pg-color-text);
}

.pg-mm-future__body {
	margin: 0;
	font-family: var(--pg-font-family);
	font-size: var(--pg-type-body-sm, 0.9rem);
	line-height: 1.4;
	color: var(--pg-color-text-muted);
}

/* —— Info —— */
.pg-mm-info {
	display: flex;
	flex-direction: column;
	gap: var(--pg-space-sm, 0.65rem);
	width: 100%;
	padding: var(--pg-space-md, 1rem) var(--pg-shell-padding-x, 1rem) 0;
	box-sizing: border-box;
}

.pg-mm-info__list {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
}

.pg-mm-info__item {
	border-radius: var(--pg-radius-md, 0.65rem);
	border: 1px solid var(--pg-color-border);
	background: color-mix(in srgb, var(--pg-color-brand-nude) 28%, #fff);
	overflow: hidden;
}

.pg-mm-info__summary {
	cursor: pointer;
	padding: 0.9rem 1rem;
	font-family: var(--pg-font-family);
	font-size: var(--pg-font-size-sm, 0.875rem);
	font-weight: var(--pg-font-weight-semibold, 600);
	color: var(--pg-color-text);
	list-style: none;
	min-height: 2.75rem;
	box-sizing: border-box;
}

.pg-mm-info__summary::-webkit-details-marker {
	display: none;
}

.pg-mm-info__summary::after {
	content: '+';
	float: right;
	color: var(--pg-color-brand-wine);
	font-weight: 600;
}

.pg-mm-info__item[open] .pg-mm-info__summary::after {
	content: '–';
}

.pg-mm-info__summary:focus-visible {
	outline: 2px solid var(--pg-color-brand-wine);
	outline-offset: -2px;
}

.pg-mm-info__body {
	padding: 0 1rem 0.95rem;
	font-family: var(--pg-font-family);
	font-size: var(--pg-type-body-sm, 0.9rem);
	line-height: var(--pg-line-height-normal, 1.45);
	color: var(--pg-color-text-muted);
}

.pg-mm-info__body p {
	margin: 0 0 0.5rem;
}

.pg-mm-info__link {
	color: var(--pg-color-brand-wine);
	font-weight: var(--pg-font-weight-medium, 500);
	text-decoration: underline;
	text-underline-offset: 2px;
}

/* —— Mi actividad (soft under brand) —— */
.pg-account-view--mm-brand .pg-account-hero--mm-activity {
	padding-top: var(--pg-space-lg, 1.25rem);
	border-top: 1px solid var(--pg-color-border-subtle, var(--pg-color-border));
	margin-top: var(--pg-space-sm, 0.5rem);
}

.pg-account-view--mm-brand .pg-account-hero--mm-activity .pg-account-hero__brand {
	display: none;
}

.pg-account-view--mm-brand .pg-account-hero--mm-activity .pg-account-hero__title {
	font-size: var(--pg-type-section-title, 1.125rem);
}

.pg-account-view--mm-brand .pg-account-hero--mm-activity .pg-account-hero__subtitle {
	font-size: var(--pg-font-size-sm, 0.875rem);
}

.pg-account-view--mm-brand .pg-account-hub {
	opacity: 0.98;
}

.pg-account-view--mm-brand .pg-account-hub-card__link {
	border-radius: var(--pg-radius-md, 0.65rem);
}

@keyframes pg-mm-cover-in {
	from {
		opacity: 0.65;
		transform: scale(1.04);
	}
	to {
		opacity: 1;
		transform: scale(1);
	}
}

@keyframes pg-mm-avatar-in {
	from {
		opacity: 0;
		transform: translateY(6px) scale(0.96);
	}
	to {
		opacity: 1;
		transform: translateY(0) scale(1);
	}
}

@media (min-width: 360px) {
	.pg-mm-discovery--density-compact .pg-mm-discovery__grid--cats {
		gap: 0.45rem;
	}
}

@media (min-width: 390px) {
	.pg-mm-actions--count-3 {
		gap: 0.65rem;
		max-width: 27rem;
	}

	/*
	 * Compacta / Estándar / Editorial: admin mobile_columns=3 → 3 cols from 390+.
	 * Mini excluded — Mini columns come from @container pg-mm-mini only.
	 */
	.pg-mm-discovery--cols-3:not(.pg-mm-discovery--density-mini) .pg-mm-discovery__grid--cats {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.pg-mm-discovery--density-compact .pg-mm-discovery__grid--cats {
		gap: 0.5rem;
	}
}

@media (min-width: 430px) {
	.pg-mm-profile__cover {
		max-height: 260px;
	}

	.pg-mm-discovery--density-compact .pg-mm-discovery__grid--cats {
		gap: 0.5rem;
	}
}

@media (min-width: 768px) {
	.pg-mm-profile__cover {
		max-height: 300px;
		aspect-ratio: 3.5 / 1;
	}

	.pg-mm-profile__avatar {
		width: 6.75rem;
		height: 6.75rem;
	}

	.pg-mm-profile__body {
		margin-top: -3.35rem;
	}

	/* Non-Mini default at tablet+; Mini stays on container ladder */
	.pg-mm-discovery:not(.pg-mm-discovery--density-mini) .pg-mm-discovery__grid--cats {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 0.75rem;
	}

	.pg-mm-discovery--density-compact .pg-mm-discovery__grid--cats {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 0.55rem;
	}

	/* Compacta / Estándar / Editorial only — Mini never forced by cols-* */
	.pg-mm-discovery--cols-2:not(.pg-mm-discovery--density-mini) .pg-mm-discovery__grid--cats,
	.pg-mm-discovery--density-compact.pg-mm-discovery--cols-2 .pg-mm-discovery__grid--cats {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		max-width: 28rem;
	}

	.pg-mm-discovery--cols-3:not(.pg-mm-discovery--density-mini) .pg-mm-discovery__grid--cats,
	.pg-mm-discovery--density-compact.pg-mm-discovery--cols-3 .pg-mm-discovery__grid--cats {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.pg-mm-actions--count-3 {
		max-width: 30rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.pg-mm-actions__btn,
	.pg-mm-discovery__img,
	.pg-mm-discovery__media--empty {
		transition: none;
	}

	.pg-mm-profile__cover-img,
	.pg-mm-profile__avatar {
		animation: none;
	}

	.pg-mm-actions__btn--primary:hover,
	.pg-mm-actions--count-3 .pg-mm-actions__btn--catalog,
	.pg-mm-actions--count-3 .pg-mm-actions__btn--catalog:hover {
		transform: none;
	}
}
