/**

 * Product Discovery — visual styles.

 *

 * @package PasionGift_App

 */



.pg-product-discovery {

	display: flex;

	flex-direction: column;

	gap: var(--pg-section-title-gap);

	width: 100%;

	min-width: 0;

}



.pg-product-discovery__title {

	margin: 0;

	padding-inline: 0.125rem;

	font-family: var(--pg-font-family);

	font-size: var(--pg-type-section-title);

	font-weight: var(--pg-font-weight-semibold);

	line-height: var(--pg-line-height-tight);

	color: var(--pg-color-text);

	letter-spacing: var(--pg-letter-spacing-snug);

}



.pg-product-discovery__meta {

	display: flex;

	flex-direction: column;

	gap: 0.125rem;

	padding-inline: 0.125rem;

	min-width: 0;

}



.pg-product-discovery__total,

.pg-product-discovery__showing {

	margin: 0;

	font-family: var(--pg-font-family);

	font-size: var(--pg-font-size-sm);

	line-height: var(--pg-line-height-snug);

	color: var(--pg-color-text-muted);

}



.pg-product-discovery__total {

	font-weight: var(--pg-font-weight-medium);

	color: var(--pg-color-text);

}



.pg-product-discovery__grid {

	display: grid;

	grid-template-columns: repeat(2, minmax(0, 1fr));

	gap: var(--pg-grid-gap);

	align-items: stretch;

	width: 100%;

	min-width: 0;

}



.pg-product-discovery__footer {

	display: flex;

	flex-direction: column;

	align-items: stretch;

	gap: 0.75rem;

	width: 100%;

	min-width: 0;

}



.pg-product-discovery__actions {

	display: flex;

	justify-content: center;

	width: 100%;

}



.pg-product-discovery__load-more {

	display: inline-flex;

	align-items: center;

	justify-content: center;

	width: 100%;

	max-width: 100%;

	min-height: 2.75rem;

	padding: 0.75rem 1rem;

	border: 1px solid var(--pg-color-border);

	border-radius: var(--pg-radius-pill, 999px);

	background-color: var(--pg-color-surface);

	color: var(--pg-color-text);

	font-family: var(--pg-font-family);

	font-size: var(--pg-font-size-sm);

	font-weight: var(--pg-font-weight-semibold);

	line-height: 1.2;

	text-align: center;

	cursor: pointer;

	transition: border-color 0.15s ease, background-color 0.15s ease;

}



.pg-product-discovery__load-more:hover {

	border-color: var(--pg-color-accent);

	background-color: var(--pg-color-interactive-bg);

}



.pg-product-discovery__load-more:focus-visible {

	outline: 2px solid var(--pg-color-accent);

	outline-offset: 2px;

}



.pg-product-discovery__load-more[disabled] {

	opacity: 0.6;

	cursor: not-allowed;

}



.pg-product-discovery__status {

	margin: 0;

	padding-inline: 0.125rem;

	font-family: var(--pg-font-family);

	font-size: var(--pg-font-size-sm);

	line-height: var(--pg-line-height-snug);

	text-align: center;

}



.pg-product-discovery__status--loading {

	color: var(--pg-color-text-muted);

}



.pg-product-discovery__status--end {

	color: var(--pg-color-text-muted);

}



.pg-product-discovery__status--error {

	color: var(--pg-color-danger, #b42318);

}



@media (min-width: 768px) {

	.pg-product-discovery {

		gap: var(--pg-space-md);

	}



	.pg-product-discovery__load-more {

		width: auto;

		min-width: 14rem;

		max-width: 20rem;

	}

}



@media (min-width: 1024px) {

	.pg-product-discovery__grid {

		grid-template-columns: repeat(3, minmax(0, 1fr));

	}

}

