
/* =========================================================
   STL FORGE — CATALOG CARDS v0.1.0
   Scope: only the main WooCommerce shop archive.
   Existing XStore/WooCommerce loop stays intact.
   ========================================================= */

body.stlf-catalog-cards-enabled {
	--stlf-card-bg: #171719;
	--stlf-card-bg-soft: #1b1b1e;
	--stlf-card-border: rgba(255,255,255,.075);
	--stlf-card-border-hover: rgba(129,101,255,.38);
	--stlf-card-purple: #6241ed;
	--stlf-card-purple-2: #7a59f6;
	--stlf-card-purple-soft: #b4a5ff;
	--stlf-card-text: #f2eef5;
	--stlf-card-muted: #918a98;
	--stlf-card-dim: #69636f;
}

/* ---------- Card shell ---------- */

body.stlf-catalog-cards-enabled .products-grid .product {
	margin-bottom: 28px !important;
}

body.stlf-catalog-cards-enabled .products-grid .product > .content-product {
	position: relative !important;
	display: flex !important;
	flex-direction: column !important;
	height: 100% !important;
	overflow: hidden !important;
	background:
		radial-gradient(circle at 100% 0%, rgba(98,65,237,.055), transparent 34%),
		linear-gradient(180deg, #19191c 0%, #161618 100%) !important;
	border: 1px solid var(--stlf-card-border) !important;
	border-radius: 17px !important;
	box-shadow:
		0 12px 30px rgba(0,0,0,.10),
		inset 0 1px 0 rgba(255,255,255,.018) !important;
	transform: translateY(0);
	transition:
		transform .18s ease,
		border-color .18s ease,
		box-shadow .18s ease !important;
}

body.stlf-catalog-cards-enabled .products-grid .product > .content-product:hover {
	transform: translateY(-2px);
	border-color: var(--stlf-card-border-hover) !important;
	box-shadow:
		0 18px 42px rgba(0,0,0,.22),
		0 0 0 1px rgba(98,65,237,.035),
		inset 0 1px 0 rgba(255,255,255,.025) !important;
}

/* ---------- Media ---------- */

body.stlf-catalog-cards-enabled .products-grid .product-image-wrapper {
	position: relative !important;
	overflow: hidden !important;
	margin: 0 !important;
	background: #101012 !important;
	border-radius: 16px 16px 0 0 !important;
	border-bottom: 1px solid rgba(255,255,255,.055) !important;
}

body.stlf-catalog-cards-enabled .products-grid .product-content-image {
	display: block !important;
	overflow: hidden !important;
	aspect-ratio: 2 / 3 !important;
	background: #101012 !important;
}

body.stlf-catalog-cards-enabled .products-grid .product-content-image > img,
body.stlf-catalog-cards-enabled .products-grid .product-content-image .image-swap,
body.stlf-catalog-cards-enabled .products-grid .product-content-image .image-swap img {
	width: 100% !important;
	height: 100% !important;
	aspect-ratio: 2 / 3 !important;
	object-fit: cover !important;
	object-position: center !important;
}

body.stlf-catalog-cards-enabled .products-grid .product-content-image img {
	transition: transform .32s cubic-bezier(.2,.7,.2,1), opacity .2s ease !important;
}

body.stlf-catalog-cards-enabled .products-grid .content-product:hover .product-content-image > img,
body.stlf-catalog-cards-enabled .products-grid .content-product:hover .product-content-image .image-swap img {
	transform: scale(1.018) !important;
}

/* Keep XStore image swap intact but remove aggressive effects. */
body.stlf-catalog-cards-enabled .products-grid .hover-effect-swap .image-swap {
	border-radius: 0 !important;
}

/* ---------- NEW / SALE badges ---------- */

body.stlf-catalog-cards-enabled .products-grid .content-product > .sale-wrapper {
	position: absolute !important;
	left: 12px !important;
	top: 12px !important;
	right: auto !important;
	z-index: 12 !important;
	width: auto !important;
	height: auto !important;
	pointer-events: none !important;
}

body.stlf-catalog-cards-enabled .products-grid .content-product > .sale-wrapper:nth-of-type(2) {
	top: 43px !important;
}

body.stlf-catalog-cards-enabled .products-grid .sale-wrapper .onsale {
	position: static !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-width: 0 !important;
	width: auto !important;
	height: 24px !important;
	padding: 0 9px !important;
	margin: 0 !important;
	border: 1px solid rgba(255,255,255,.10) !important;
	border-radius: 999px !important;
	background: rgba(98,65,237,.92) !important;
	box-shadow: 0 7px 18px rgba(0,0,0,.22) !important;
	color: #fff !important;
	font: 700 9px/1 Poppins, sans-serif !important;
	letter-spacing: .035em !important;
	text-transform: uppercase !important;
}

body.stlf-catalog-cards-enabled .products-grid .sale-wrapper .new-label {
	background: rgba(98,65,237,.96) !important;
	color: #fff !important;
}

body.stlf-catalog-cards-enabled .products-grid .sale-wrapper .with-percentage {
	background: rgba(116,82,245,.92) !important;
}

/* ---------- Wishlist: quiet icon over media ---------- */

body.stlf-catalog-cards-enabled .products-grid .product-image-wrapper > .xstore-wishlist {
	position: absolute !important;
	top: 12px !important;
	right: 12px !important;
	left: auto !important;
	z-index: 13 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 34px !important;
	height: 34px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 1px solid rgba(255,255,255,.10) !important;
	border-radius: 10px !important;
	background: rgba(15,15,18,.74) !important;
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	color: #d6d0da !important;
	box-shadow: 0 7px 18px rgba(0,0,0,.16) !important;
	opacity: .94 !important;
	transform: none !important;
	transition: background .16s ease, border-color .16s ease, color .16s ease !important;
}

body.stlf-catalog-cards-enabled .products-grid .product-image-wrapper > .xstore-wishlist:hover {
	background: rgba(98,65,237,.20) !important;
	border-color: rgba(139,108,255,.38) !important;
	color: #b9a9ff !important;
}

body.stlf-catalog-cards-enabled .products-grid .product-image-wrapper > .xstore-wishlist:before,
body.stlf-catalog-cards-enabled .products-grid .product-image-wrapper > .xstore-wishlist:after {
	display: none !important;
}

/* ---------- Content ---------- */

body.stlf-catalog-cards-enabled .products-grid .product-details {
	display: flex !important;
	flex: 1 1 auto !important;
	flex-direction: column !important;
	align-items: stretch !important;
	text-align: left !important;
	padding: 14px 14px 11px !important;
	margin: 0 !important;
	background: transparent !important;
}

body.stlf-catalog-cards-enabled .products-grid .products-page-cats {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 6px !important;
	min-height: 23px;
	margin: 0 0 9px !important;
	font-size: 0 !important; /* hides XStore comma text nodes */
	line-height: 1 !important;
}

body.stlf-catalog-cards-enabled .products-grid .products-page-cats a {
	display: inline-flex !important;
	align-items: center !important;
	min-height: 22px !important;
	padding: 0 8px !important;
	margin: 0 !important;
	border: 1px solid rgba(139,108,255,.20) !important;
	border-radius: 999px !important;
	background: rgba(98,65,237,.055) !important;
	color: #9188a5 !important;
	font: 650 8.5px/1 Poppins, sans-serif !important;
	white-space: nowrap !important;
	text-decoration: none !important;
	transition: border-color .15s ease, color .15s ease, background .15s ease !important;
}

body.stlf-catalog-cards-enabled .products-grid .products-page-cats a:hover {
	color: #b5a6ff !important;
	border-color: rgba(139,108,255,.36) !important;
	background: rgba(98,65,237,.10) !important;
}

body.stlf-catalog-cards-enabled .products-grid .products-page-cats a[href*="diamond-tier"] {
	color: #b9a9ff !important;
	border-color: rgba(139,108,255,.31) !important;
	background: rgba(98,65,237,.10) !important;
}

body.stlf-catalog-cards-enabled .products-grid .product-title {
	min-height: 39px !important;
	margin: 0 0 10px !important;
	padding: 0 !important;
	font: 650 12.5px/1.48 Poppins, sans-serif !important;
	letter-spacing: -.01em !important;
	text-align: left !important;
}

body.stlf-catalog-cards-enabled .products-grid .product-title a {
	color: #eeeaf1 !important;
	text-decoration: none !important;
	transition: color .15s ease !important;
}

body.stlf-catalog-cards-enabled .products-grid .product-title a:hover {
	color: #b8a9ff !important;
}

body.stlf-catalog-cards-enabled .products-grid .price {
	display: flex !important;
	align-items: baseline !important;
	flex-wrap: wrap !important;
	gap: 5px !important;
	margin: auto 0 0 !important;
	color: #ddd7e1 !important;
	font: 700 12px/1.25 Poppins, sans-serif !important;
	text-align: left !important;
}

body.stlf-catalog-cards-enabled .products-grid .price del {
	color: #655f69 !important;
	font-size: 10px !important;
	opacity: 1 !important;
}

body.stlf-catalog-cards-enabled .products-grid .price ins {
	color: #8f74ff !important;
	font-size: 12px !important;
	font-weight: 750 !important;
	text-decoration: none !important;
}

/* ---------- Actions: moved below details by our JS ---------- */

body.stlf-catalog-cards-enabled .products-grid .footer-product.stlf-card-actions {
	position: relative !important;
	inset: auto !important;
	display: grid !important;
	grid-template-columns: minmax(0,1fr) 58px !important;
	gap: 8px !important;
	width: auto !important;
	height: auto !important;
	margin: 0 13px 13px !important;
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
	opacity: 1 !important;
	visibility: visible !important;
	transform: none !important;
	z-index: 4 !important;
}

body.stlf-catalog-cards-enabled .products-grid .footer-product.stlf-card-actions .show-quickly,
body.stlf-catalog-cards-enabled .products-grid .footer-product.stlf-card-actions .button {
	position: relative !important;
	inset: auto !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	min-width: 0 !important;
	height: 38px !important;
	margin: 0 !important;
	padding: 0 10px !important;
	border-radius: 10px !important;
	font: 750 8px/1 Poppins, sans-serif !important;
	letter-spacing: .055em !important;
	text-transform: uppercase !important;
	box-shadow: none !important;
	opacity: 1 !important;
	visibility: visible !important;
	transform: none !important;
	cursor: pointer !important;
	white-space: nowrap !important;
}

body.stlf-catalog-cards-enabled .products-grid .footer-product.stlf-card-actions .show-quickly {
	border: 1px solid rgba(139,108,255,.24) !important;
	background: linear-gradient(180deg, rgba(98,65,237,.055), rgba(98,65,237,.025)) !important;
	color: #a998f7 !important;
}

body.stlf-catalog-cards-enabled .products-grid .footer-product.stlf-card-actions .show-quickly:hover {
	border-color: rgba(139,108,255,.43) !important;
	background: rgba(98,65,237,.09) !important;
	color: #c1b5ff !important;
}

body.stlf-catalog-cards-enabled .products-grid .footer-product.stlf-card-actions .button {
	border: 1px solid rgba(139,108,255,.38) !important;
	background: linear-gradient(135deg, #6241ed, #7656f4) !important;
	color: #fff !important;
}

body.stlf-catalog-cards-enabled .products-grid .footer-product.stlf-card-actions .button:hover {
	background: linear-gradient(135deg, #6b49f0, #8162f7) !important;
	border-color: rgba(166,144,255,.55) !important;
}

body.stlf-catalog-cards-enabled .products-grid .footer-product.stlf-card-actions .button:before,
body.stlf-catalog-cards-enabled .products-grid .footer-product.stlf-card-actions .button:after,
body.stlf-catalog-cards-enabled .products-grid .footer-product.stlf-card-actions .show-quickly:before,
body.stlf-catalog-cards-enabled .products-grid .footer-product.stlf-card-actions .show-quickly:after {
	display: none !important;
	content: none !important;
}

/* Added-to-cart links generated by WooCommerce are intentionally hidden;
   the existing STL Forge toast/off-canvas remains the feedback UI. */
body.stlf-catalog-cards-enabled .products-grid .footer-product.stlf-card-actions .added_to_cart {
	display: none !important;
}

/* ---------- Responsive ---------- */

@media (max-width: 1199px) {
	body.stlf-catalog-cards-enabled .products-grid .product-title {
		font-size: 12px !important;
	}
}

@media (max-width: 767px) {
	body.stlf-catalog-cards-enabled .products-grid .product {
		margin-bottom: 16px !important;
	}

	body.stlf-catalog-cards-enabled .products-grid .product > .content-product {
		border-radius: 14px !important;
	}

	body.stlf-catalog-cards-enabled .products-grid .product-image-wrapper {
		border-radius: 13px 13px 0 0 !important;
	}

	body.stlf-catalog-cards-enabled .products-grid .product-details {
		padding: 10px 10px 8px !important;
	}

	body.stlf-catalog-cards-enabled .products-grid .products-page-cats {
		gap: 4px !important;
		margin-bottom: 7px !important;
		min-height: 20px;
	}

	body.stlf-catalog-cards-enabled .products-grid .products-page-cats a {
		min-height: 19px !important;
		padding: 0 6px !important;
		font-size: 7px !important;
	}

	body.stlf-catalog-cards-enabled .products-grid .product-title {
		min-height: 34px !important;
		margin-bottom: 7px !important;
		font-size: 10.5px !important;
		line-height: 1.45 !important;
	}

	body.stlf-catalog-cards-enabled .products-grid .price {
		font-size: 10.5px !important;
	}

	body.stlf-catalog-cards-enabled .products-grid .footer-product.stlf-card-actions {
		grid-template-columns: minmax(0,1fr) 48px !important;
		gap: 6px !important;
		margin: 0 9px 9px !important;
	}

	body.stlf-catalog-cards-enabled .products-grid .footer-product.stlf-card-actions .show-quickly,
	body.stlf-catalog-cards-enabled .products-grid .footer-product.stlf-card-actions .button {
		height: 34px !important;
		padding: 0 7px !important;
		font-size: 7px !important;
		border-radius: 9px !important;
	}

	body.stlf-catalog-cards-enabled .products-grid .product-image-wrapper > .xstore-wishlist {
		top: 9px !important;
		right: 9px !important;
		width: 30px !important;
		height: 30px !important;
		border-radius: 9px !important;
	}

	body.stlf-catalog-cards-enabled .products-grid .content-product > .sale-wrapper {
		left: 9px !important;
		top: 9px !important;
	}

	body.stlf-catalog-cards-enabled .products-grid .content-product > .sale-wrapper:nth-of-type(2) {
		top: 37px !important;
	}

	body.stlf-catalog-cards-enabled .products-grid .sale-wrapper .onsale {
		height: 21px !important;
		padding: 0 7px !important;
		font-size: 7px !important;
	}
}


/* =========================================================
   STL FORGE — FORGE QUICK VIEW v0.5.0
   Replaces only the XStore Quick View experience on /stl-models/.
   ========================================================= */

.stlf-catalog-qv-overlay {
	position: fixed;
	inset: 0;
	z-index: 2147483200;
	background: rgba(4,4,7,.76);
	backdrop-filter: blur(2px);
	-webkit-backdrop-filter: blur(2px);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity .18s ease, visibility .18s ease;
}

.stlf-catalog-qv-modal {
	position: fixed;
	z-index: 2147483201;
	top: 50%;
	left: 50%;
	width: min(980px, calc(100vw - 52px));
	max-height: min(720px, calc(100dvh - 52px));
	overflow: auto;
	border: 1px solid rgba(143,120,255,.16);
	border-radius: 22px;
	background:
		radial-gradient(circle at 100% 0%, rgba(98,65,237,.11), transparent 35%),
		#171719;
	box-shadow: 0 35px 90px rgba(0,0,0,.52);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: translate(-50%,-48%) scale(.985);
	transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
}

body.stlf-catalog-qv-open {
	overflow: hidden !important;
}

body.stlf-catalog-qv-open .stlf-catalog-qv-overlay {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

body.stlf-catalog-qv-open .stlf-catalog-qv-modal {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transform: translate(-50%,-50%) scale(1);
}

.stlf-catalog-qv-close {
	position: absolute;
	z-index: 5;
	top: 14px;
	right: 14px;
	display: grid;
	place-items: center;
	width: 38px;
	height: 38px;
	margin: 0;
	padding: 0;
	border: 1px solid rgba(255,255,255,.08);
	border-radius: 11px;
	background: rgba(32,32,35,.94);
	color: #c6c0cb;
	cursor: pointer;
	font: 400 20px/1 system-ui,sans-serif;
	transition: color .15s ease, border-color .15s ease, background .15s ease;
}

.stlf-catalog-qv-close:hover {
	color: #fff;
	border-color: rgba(143,120,255,.30);
	background: rgba(98,65,237,.13);
}

.stlf-catalog-qv-content {
	min-height: 480px;
}

.stlf-catalog-qv-loading {
	display: flex;
	min-height: 480px;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	gap: 9px;
	color: #d8d2dd;
	font-family: Poppins,sans-serif;
}

.stlf-catalog-qv-loading[hidden] {
	display: none !important;
}

.stlf-catalog-qv-loading strong {
	font-size: 10px;
	letter-spacing: .12em;
}

.stlf-catalog-qv-loading small {
	color: #77717d;
	font-size: 9px;
}

.stlf-catalog-qv-spinner {
	width: 28px;
	height: 28px;
	margin-bottom: 4px;
	border: 2px solid rgba(255,255,255,.09);
	border-top-color: #7657f5;
	border-radius: 999px;
	animation: stlfCatalogQvSpin .7s linear infinite;
}

@keyframes stlfCatalogQvSpin {
	to { transform: rotate(360deg); }
}

.stlf-catalog-qv-product {
	display: grid;
	grid-template-columns: minmax(0,.88fr) minmax(0,1.12fr);
	min-height: 535px;
}

.stlf-catalog-qv-visual {
	min-width: 0;
	padding: 16px;
	border-right: 1px solid rgba(255,255,255,.055);
}

.stlf-catalog-qv-image-link {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	min-height: 503px;
	overflow: hidden;
	border-radius: 15px;
	background: #101012;
}

.stlf-catalog-qv-image {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 503px;
	object-fit: cover;
	object-position: center;
}

.stlf-catalog-qv-sale {
	position: absolute;
	top: 12px;
	left: 12px;
	display: inline-flex;
	align-items: center;
	min-height: 25px;
	padding: 0 9px;
	border: 1px solid rgba(255,255,255,.11);
	border-radius: 999px;
	background: rgba(98,65,237,.94);
	color: #fff;
	box-shadow: 0 8px 20px rgba(0,0,0,.18);
	font: 750 8px/1 Poppins,sans-serif;
	letter-spacing: .055em;
}

.stlf-catalog-qv-copy {
	display: flex;
	flex-direction: column;
	min-width: 0;
	padding: 38px 42px 34px 34px;
}

.stlf-catalog-qv-kicker {
	display: block;
	margin-bottom: 12px;
	color: #9e87ff;
	font: 750 8px/1 Poppins,sans-serif;
	letter-spacing: .17em;
}

.stlf-catalog-qv-taxonomy {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	margin-bottom: 14px;
}

.stlf-catalog-qv-taxonomy > span {
	display: inline-flex;
	align-items: center;
	min-height: 22px;
	padding: 0 8px;
	border: 1px solid rgba(143,120,255,.16);
	border-radius: 999px;
	background: rgba(98,65,237,.055);
	color: #9185a0;
	font: 650 7.5px/1 Poppins,sans-serif;
	letter-spacing: .03em;
}

.stlf-catalog-qv-title {
	margin: 0 0 10px !important;
	color: #f4f0f6 !important;
	font: 650 clamp(25px,3vw,35px)/1.12 Poppins,sans-serif !important;
	letter-spacing: -.04em !important;
}

.stlf-catalog-qv-title a {
	color: inherit !important;
	text-decoration: none !important;
}

.stlf-catalog-qv-price {
	margin-bottom: 19px;
	color: #c8bece;
	font: 700 18px/1.3 Poppins,sans-serif;
}

.stlf-catalog-qv-price del {
	margin-right: 6px;
	color: #625d66;
	opacity: 1;
	font-size: 13px;
}

.stlf-catalog-qv-price ins {
	color: #9b84ff;
	text-decoration: none !important;
}

.stlf-catalog-qv-label {
	display: block;
	margin-bottom: 8px;
	color: #766f7d;
	font: 750 7px/1 Poppins,sans-serif;
	letter-spacing: .14em;
}

.stlf-catalog-qv-spec-block {
	margin-bottom: 18px;
	padding: 13px;
	border: 1px solid rgba(255,255,255,.055);
	border-radius: 12px;
	background: rgba(255,255,255,.012);
}

.stlf-catalog-qv-specs {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.stlf-catalog-qv-specs span {
	display: inline-flex;
	align-items: center;
	min-height: 25px;
	padding: 0 9px;
	border: 1px solid rgba(143,120,255,.13);
	border-radius: 999px;
	background: rgba(98,65,237,.045);
	color: #968c9f;
	font: 600 7.5px/1 Poppins,sans-serif;
}

.stlf-catalog-qv-excerpt {
	margin: 0 0 22px !important;
	color: #918a96 !important;
	font: 500 10.5px/1.72 Poppins,sans-serif !important;
}

.stlf-catalog-qv-actions {
	display: grid;
	grid-template-columns: 1.15fr .85fr;
	gap: 8px;
	margin-top: auto;
}

.stlf-catalog-qv-primary,
.stlf-catalog-qv-secondary {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 44px !important;
	margin: 0 !important;
	padding: 0 13px !important;
	border-radius: 11px !important;
	cursor: pointer !important;
	font: 750 8px/1 Poppins,sans-serif !important;
	letter-spacing: .055em !important;
	text-decoration: none !important;
	box-shadow: none !important;
	text-align: center !important;
}

.stlf-catalog-qv-primary {
	border: 1px solid rgba(143,120,255,.28) !important;
	background: linear-gradient(135deg,#6241ed,#7655ff) !important;
	color: #fff !important;
}

.stlf-catalog-qv-primary:hover {
	background: linear-gradient(135deg,#6c4af0,#8162f7) !important;
	color: #fff !important;
}

.stlf-catalog-qv-secondary {
	border: 1px solid rgba(143,120,255,.17) !important;
	background: rgba(98,65,237,.055) !important;
	color: #aa9afb !important;
}

.stlf-catalog-qv-secondary:hover {
	border-color: rgba(143,120,255,.30) !important;
	background: rgba(98,65,237,.10) !important;
	color: #c3b8ff !important;
}

.stlf-catalog-qv-success {
	margin-top: 12px;
	padding: 13px;
	border: 1px solid rgba(143,120,255,.17);
	border-radius: 12px;
	background: rgba(98,65,237,.045);
}

.stlf-catalog-qv-success[hidden] {
	display: none !important;
}

.stlf-catalog-qv-success-copy {
	display: flex;
	align-items: center;
	gap: 10px;
}

.stlf-catalog-qv-success-icon {
	display: grid;
	place-items: center;
	flex: 0 0 auto;
	width: 28px;
	height: 28px;
	border-radius: 999px;
	background: rgba(98,65,237,.14);
	color: #ae9fff;
	font: 700 12px/1 Poppins,sans-serif;
}

.stlf-catalog-qv-success-copy strong {
	display: block;
	color: #ddd7e2;
	font: 750 8px/1.2 Poppins,sans-serif;
	letter-spacing: .08em;
}

.stlf-catalog-qv-success-copy p {
	margin: 4px 0 0 !important;
	color: #7d7683 !important;
	font: 500 8px/1.45 Poppins,sans-serif !important;
}

.stlf-catalog-qv-success-actions {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 7px;
	margin-top: 11px;
}

.stlf-catalog-qv-success-actions button {
	min-height: 35px;
	border-radius: 9px;
	cursor: pointer;
	font: 700 7px/1 Poppins,sans-serif;
	letter-spacing: .04em;
}

.stlf-catalog-qv-continue {
	border: 1px solid rgba(255,255,255,.065);
	background: rgba(255,255,255,.02);
	color: #908995;
}

.stlf-catalog-qv-open-cart {
	border: 1px solid rgba(143,120,255,.20);
	background: rgba(98,65,237,.11);
	color: #b6a8fb;
}

/* While Forge Quick View is open, do not let XStore auto-open its cart canvas
   over our success state. */
body.stlf-catalog-qv-open .et_b_header-cart .et-mini-content.active,
body.stlf-catalog-qv-open .et_b_header-cart .et-mini-content.et-content-shown {
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

/* Safety: if XStore somehow starts its own Quick View in the same click,
   keep it out of the way while Forge Quick View owns the interaction. */
body.stlf-catalog-qv-open .et-quick-view-wrapper,
body.stlf-catalog-qv-open .quick-view-popup,
body.stlf-catalog-qv-open .et-quick-view-canvas {
	display: none !important;
}

@media (max-width: 900px) {
	.stlf-catalog-qv-modal {
		width: min(760px, calc(100vw - 30px));
		max-height: calc(100dvh - 30px);
	}

	.stlf-catalog-qv-product {
		grid-template-columns: 1fr;
	}

	.stlf-catalog-qv-visual {
		border-right: 0;
		border-bottom: 1px solid rgba(255,255,255,.055);
	}

	.stlf-catalog-qv-image-link,
	.stlf-catalog-qv-image {
		min-height: 390px;
		max-height: 52vh;
	}

	.stlf-catalog-qv-copy {
		padding: 27px 28px 28px;
	}
}

@media (max-width: 620px) {
	.stlf-catalog-qv-modal {
		width: calc(100vw - 18px);
		max-height: calc(100dvh - 18px);
		border-radius: 17px;
	}

	.stlf-catalog-qv-visual {
		padding: 10px;
	}

	.stlf-catalog-qv-image-link,
	.stlf-catalog-qv-image {
		min-height: 300px;
		max-height: 42vh;
	}

	.stlf-catalog-qv-copy {
		padding: 22px 18px 20px;
	}

	.stlf-catalog-qv-actions,
	.stlf-catalog-qv-success-actions {
		grid-template-columns: 1fr;
	}
}


/* =========================================================
   v0.2.2 — XStore late Quick View trigger hardening
   ========================================================= */

body.stlf-catalog-cards-enabled .products-grid .stlf-catalog-qv-trigger {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	min-width: 0 !important;
	height: 38px !important;
	margin: 0 !important;
	padding: 0 10px !important;
	border: 1px solid rgba(139,108,255,.24) !important;
	border-radius: 10px !important;
	background: linear-gradient(180deg, rgba(98,65,237,.055), rgba(98,65,237,.025)) !important;
	color: #a998f7 !important;
	box-shadow: none !important;
	font: 750 8px/1 Poppins, sans-serif !important;
	letter-spacing: .055em !important;
	text-transform: uppercase !important;
	white-space: nowrap !important;
	cursor: pointer !important;
}

body.stlf-catalog-cards-enabled .products-grid .stlf-catalog-qv-trigger:hover {
	border-color: rgba(139,108,255,.43) !important;
	background: rgba(98,65,237,.09) !important;
	color: #c1b5ff !important;
}

@media (max-width: 767px) {
	body.stlf-catalog-cards-enabled .products-grid .stlf-catalog-qv-trigger {
		height: 34px !important;
		padding: 0 7px !important;
		border-radius: 9px !important;
		font-size: 7px !important;
	}
}


/* =========================================================
   v0.3.0 — FORGE QUICK VIEW GALLERY
   ========================================================= */

.stlf-catalog-qv-gallery {
	display: flex;
	flex-direction: column;
	gap: 10px;
	width: 100%;
	height: 100%;
}

.stlf-catalog-qv-gallery .stlf-catalog-qv-image-link {
	position: relative;
	display: block;
	flex: 1 1 auto;
	width: 100%;
	height: auto;
	min-height: 425px;
	overflow: hidden;
	border-radius: 15px;
	background: #101012;
}

.stlf-catalog-qv-gallery .stlf-catalog-qv-image {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 425px;
	object-fit: cover;
	object-position: center;
	transition: opacity .16s ease, transform .22s ease;
}

.stlf-catalog-qv-gallery .stlf-catalog-qv-image.is-switching {
	opacity: .38;
	transform: scale(.995);
}

.stlf-catalog-qv-thumbs {
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: 52px;
	gap: 7px;
	width: 100%;
	min-height: 68px;
	padding: 1px 1px 4px;
	overflow-x: auto;
	overflow-y: hidden;
	scrollbar-width: thin;
	scrollbar-color: rgba(139,108,255,.32) transparent;
	scroll-snap-type: x proximity;
}

.stlf-catalog-qv-thumbs::-webkit-scrollbar {
	height: 4px;
}

.stlf-catalog-qv-thumbs::-webkit-scrollbar-track {
	background: transparent;
}

.stlf-catalog-qv-thumbs::-webkit-scrollbar-thumb {
	border-radius: 999px;
	background: rgba(139,108,255,.30);
}

.stlf-catalog-qv-thumb {
	position: relative;
	width: 52px;
	height: 66px;
	padding: 0;
	overflow: hidden;
	scroll-snap-align: start;
	border: 1px solid rgba(255,255,255,.07);
	border-radius: 9px;
	background: #111113;
	cursor: pointer;
	opacity: .62;
	transform: translateY(0);
	transition:
		opacity .14s ease,
		border-color .14s ease,
		box-shadow .14s ease,
		transform .14s ease;
}

.stlf-catalog-qv-thumb:hover {
	opacity: .92;
	border-color: rgba(139,108,255,.26);
	transform: translateY(-1px);
}

.stlf-catalog-qv-thumb.is-active {
	opacity: 1;
	border-color: #7658f5;
	box-shadow:
		0 0 0 1px rgba(118,88,245,.18),
		0 5px 14px rgba(0,0,0,.18);
}

.stlf-catalog-qv-thumb img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	pointer-events: none;
}

.stlf-catalog-qv-gallery-nav {
	position: absolute;
	z-index: 4;
	top: 50%;
	display: grid;
	place-items: center;
	width: 34px;
	height: 40px;
	margin: 0;
	padding: 0;
	border: 1px solid rgba(255,255,255,.09);
	border-radius: 10px;
	background: rgba(13,13,16,.72);
	backdrop-filter: blur(7px);
	-webkit-backdrop-filter: blur(7px);
	color: rgba(255,255,255,.82);
	cursor: pointer;
	font: 400 24px/1 system-ui,sans-serif;
	opacity: 0;
	transform: translateY(-50%);
	transition:
		opacity .15s ease,
		background .15s ease,
		border-color .15s ease,
		color .15s ease;
}

.stlf-catalog-qv-image-link:hover .stlf-catalog-qv-gallery-nav,
.stlf-catalog-qv-gallery-nav:focus-visible {
	opacity: 1;
}

.stlf-catalog-qv-gallery-nav:hover {
	background: rgba(98,65,237,.22);
	border-color: rgba(139,108,255,.38);
	color: #fff;
}

.stlf-catalog-qv-gallery-prev {
	left: 10px;
}

.stlf-catalog-qv-gallery-next {
	right: 10px;
}

.stlf-catalog-qv-gallery-count {
	position: absolute;
	z-index: 3;
	right: 11px;
	bottom: 11px;
	display: inline-flex;
	align-items: center;
	gap: 3px;
	min-height: 24px;
	padding: 0 8px;
	border: 1px solid rgba(255,255,255,.08);
	border-radius: 999px;
	background: rgba(13,13,16,.72);
	backdrop-filter: blur(7px);
	-webkit-backdrop-filter: blur(7px);
	color: #aaa3ae;
	font: 650 7.5px/1 Poppins,sans-serif;
	letter-spacing: .02em;
}

@media (max-width: 900px) {
	.stlf-catalog-qv-gallery .stlf-catalog-qv-image-link,
	.stlf-catalog-qv-gallery .stlf-catalog-qv-image {
		min-height: 360px;
		max-height: 50vh;
	}

	.stlf-catalog-qv-gallery-nav {
		opacity: .88;
	}
}

@media (max-width: 620px) {
	.stlf-catalog-qv-gallery {
		gap: 8px;
	}

	.stlf-catalog-qv-gallery .stlf-catalog-qv-image-link,
	.stlf-catalog-qv-gallery .stlf-catalog-qv-image {
		min-height: 285px;
		max-height: 40vh;
	}

	.stlf-catalog-qv-thumbs {
		grid-auto-columns: 46px;
		min-height: 60px;
		gap: 6px;
	}

	.stlf-catalog-qv-thumb {
		width: 46px;
		height: 58px;
		border-radius: 8px;
	}

	.stlf-catalog-qv-gallery-nav {
		width: 32px;
		height: 38px;
	}

	.stlf-catalog-qv-gallery-count {
		right: 9px;
		bottom: 9px;
	}
}


/* =========================================================
   v0.5.0 — PRODUCT PAGE STYLE MODEL HIGHLIGHT
   Uses the complete WooCommerce short description.
   ========================================================= */

.stlf-catalog-qv-highlight {
	position: relative;
	margin: 1px 0 22px;
	padding: 12px 15px 13px 17px;
	border-left: 2px solid #7658f5;
	border-radius: 0 11px 11px 0;
	background:
		linear-gradient(90deg, rgba(98,65,237,.055), rgba(98,65,237,.018) 45%, transparent 100%);
}

.stlf-catalog-qv-highlight-label {
	display: block;
	margin-bottom: 9px;
	color: #a991ff;
	font: 750 7px/1 Poppins,sans-serif;
	letter-spacing: .15em;
	text-transform: uppercase;
}

.stlf-catalog-qv-highlight-content {
	color: #8f8895;
	font-family: Poppins,sans-serif;
}

.stlf-catalog-qv-highlight-content > *:first-child {
	margin-top: 0 !important;
}

.stlf-catalog-qv-highlight-content > *:last-child {
	margin-bottom: 0 !important;
}

.stlf-catalog-qv-highlight-content h1,
.stlf-catalog-qv-highlight-content h2,
.stlf-catalog-qv-highlight-content h3,
.stlf-catalog-qv-highlight-content h4 {
	margin: 0 0 8px !important;
	color: #eeeaf1 !important;
	font-family: Poppins,sans-serif !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	line-height: 1.34 !important;
	letter-spacing: -.025em !important;
	text-transform: none !important;
}

.stlf-catalog-qv-highlight-content p {
	margin: 0 0 9px !important;
	color: #89828e !important;
	font: 500 9.5px/1.62 Poppins,sans-serif !important;
}

.stlf-catalog-qv-highlight-content p:first-of-type {
	color: #bbb3c0 !important;
	font-weight: 650 !important;
	line-height: 1.54 !important;
}

.stlf-catalog-qv-highlight-content strong,
.stlf-catalog-qv-highlight-content b {
	color: #c8c0cc !important;
	font-weight: 700 !important;
}

.stlf-catalog-qv-highlight-content em,
.stlf-catalog-qv-highlight-content i {
	color: #aaa2af !important;
}

.stlf-catalog-qv-highlight-content a {
	color: #a991ff !important;
	text-decoration: none !important;
}

.stlf-catalog-qv-highlight-content ul,
.stlf-catalog-qv-highlight-content ol {
	margin: 8px 0 9px 16px !important;
	padding: 0 !important;
	color: #8f8895 !important;
	font: 500 9px/1.58 Poppins,sans-serif !important;
}

.stlf-catalog-qv-highlight-content li {
	margin: 0 0 4px !important;
}

/* Keep actions anchored visually after richer description content. */
.stlf-catalog-qv-copy {
	overflow: hidden;
}

.stlf-catalog-qv-actions {
	flex: 0 0 auto;
}

@media (max-width: 900px) {
	.stlf-catalog-qv-highlight {
		margin-bottom: 18px;
		padding: 12px 14px 13px 16px;
	}

	.stlf-catalog-qv-highlight-content h1,
	.stlf-catalog-qv-highlight-content h2,
	.stlf-catalog-qv-highlight-content h3,
	.stlf-catalog-qv-highlight-content h4 {
		font-size: 14px !important;
	}

	.stlf-catalog-qv-highlight-content p {
		font-size: 9.5px !important;
	}
}

@media (max-width: 620px) {
	.stlf-catalog-qv-highlight {
		padding: 11px 12px 12px 14px;
		border-radius: 0 9px 9px 0;
	}

	.stlf-catalog-qv-highlight-content h1,
	.stlf-catalog-qv-highlight-content h2,
	.stlf-catalog-qv-highlight-content h3,
	.stlf-catalog-qv-highlight-content h4 {
		font-size: 13px !important;
	}

	.stlf-catalog-qv-highlight-content p {
		font-size: 9px !important;
		line-height: 1.6 !important;
	}
}


/* =========================================================
   v0.5.0 — Larger Model Highlight typography
   ========================================================= */

.stlf-catalog-qv-highlight-label {
	font-size: 7.8px;
	letter-spacing: .16em;
}

.stlf-catalog-qv-highlight-content h1,
.stlf-catalog-qv-highlight-content h2,
.stlf-catalog-qv-highlight-content h3,
.stlf-catalog-qv-highlight-content h4 {
	font-size: 17px !important;
	line-height: 1.35 !important;
	margin-bottom: 9px !important;
}

.stlf-catalog-qv-highlight-content p {
	font-size: 10.2px !important;
	line-height: 1.7 !important;
	margin-bottom: 10px !important;
}

.stlf-catalog-qv-highlight-content p:first-of-type {
	font-size: 10.6px !important;
	line-height: 1.65 !important;
}

.stlf-catalog-qv-highlight-content ul,
.stlf-catalog-qv-highlight-content ol {
	font-size: 9.8px !important;
	line-height: 1.62 !important;
}

@media (max-width: 900px) {
	.stlf-catalog-qv-highlight-content h1,
	.stlf-catalog-qv-highlight-content h2,
	.stlf-catalog-qv-highlight-content h3,
	.stlf-catalog-qv-highlight-content h4 {
		font-size: 15px !important;
	}
	.stlf-catalog-qv-highlight-content p {
		font-size: 9.8px !important;
	}
}

@media (max-width: 620px) {
	.stlf-catalog-qv-highlight-content h1,
	.stlf-catalog-qv-highlight-content h2,
	.stlf-catalog-qv-highlight-content h3,
	.stlf-catalog-qv-highlight-content h4 {
		font-size: 14px !important;
	}
	.stlf-catalog-qv-highlight-content p {
		font-size: 9.4px !important;
	}
}


/* =========================================================
   v0.5.0 — SAFE CATALOG UX HOTFIX
   No attribute MutationObserver. No XStore filter manipulation.
   ========================================================= */

/* Native XStore toolbar controls — hide only precise, known UI pieces. */
body.stlf-catalog-cards-enabled .filter-wrap .woocommerce-ordering,
body.stlf-catalog-cards-enabled .filter-wrap .view-switcher,
body.stlf-catalog-cards-enabled .filter-wrap .view-mode,
body.stlf-catalog-cards-enabled .filter-wrap .grid-list-switcher,
body.stlf-catalog-cards-enabled .filter-wrap .products-per-page,
body.stlf-catalog-cards-enabled .filter-wrap .limit-selector,
body.stlf-catalog-cards-enabled .before-shop-loop .woocommerce-ordering,
body.stlf-catalog-cards-enabled .before-shop-loop .view-switcher,
body.stlf-catalog-cards-enabled .before-shop-loop .products-per-page,
body.stlf-catalog-cards-enabled .before-shop-loop .limit-selector {
	display: none !important;
}

body.stlf-catalog-cards-enabled .stlf-native-breadcrumb-hidden {
	display: none !important;
}

/* Forge breadcrumb */
body.stlf-catalog-cards-enabled .stlf-catalog-breadcrumb {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	margin: 0 0 8px;
	color: #77717f;
	font: 650 9px/1 Poppins,sans-serif;
	letter-spacing: .045em;
	text-transform: uppercase;
}

body.stlf-catalog-cards-enabled .stlf-catalog-breadcrumb::before {
	content: '';
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background: #7658f5;
	box-shadow: 0 0 0 3px rgba(118,88,245,.10);
}

body.stlf-catalog-cards-enabled .stlf-catalog-breadcrumb a {
	color: #827b89 !important;
	text-decoration: none !important;
}

body.stlf-catalog-cards-enabled .stlf-catalog-breadcrumb a:hover {
	color: #b6a8ff !important;
}

body.stlf-catalog-cards-enabled .stlf-catalog-breadcrumb-separator {
	color: #4f4a54;
	font-size: 12px;
}

body.stlf-catalog-cards-enabled .stlf-catalog-breadcrumb-current {
	color: #c2bbc8;
	font-weight: 750;
}

/* Sold individually: ADD -> ADDED */
body.stlf-catalog-cards-enabled .products-grid .stlf-card-actions .stlf-is-added {
	border-color: rgba(139,108,255,.34) !important;
	background: linear-gradient(135deg, rgba(98,65,237,.18), rgba(139,108,255,.10)) !important;
	color: #cec4ff !important;
}

body.stlf-catalog-cards-enabled .products-grid .stlf-card-actions .stlf-is-added:hover {
	border-color: rgba(139,108,255,.50) !important;
	color: #fff !important;
}

/* Forge Load More — visual enhancement only; XStore keeps the loading engine. */
body.stlf-catalog-cards-enabled .stlf-forge-load-more {
	position: relative !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-width: 300px !important;
	min-height: 58px !important;
	margin: 30px auto 14px !important;
	padding: 10px 28px 24px !important;
	border: 1px solid rgba(139,108,255,.24) !important;
	border-radius: 14px !important;
	background:
		radial-gradient(circle at 50% 130%, rgba(98,65,237,.15), transparent 55%),
		linear-gradient(180deg, #18171c, #141418) !important;
	color: #eeeaf3 !important;
	box-shadow: 0 12px 30px rgba(0,0,0,.18) !important;
	font: 800 10px/1 Poppins,sans-serif !important;
	letter-spacing: .07em !important;
	text-transform: uppercase !important;
}

body.stlf-catalog-cards-enabled .stlf-forge-load-more::before {
	content: '';
	position: absolute;
	top: 0;
	left: 10%;
	right: 10%;
	height: 1px;
	background: linear-gradient(90deg, transparent, #7658f5, transparent);
}

body.stlf-catalog-cards-enabled .stlf-forge-load-more::after {
	content: attr(data-stlf-loaded);
	position: absolute;
	left: 0;
	right: 0;
	bottom: 9px;
	color: #766f7c;
	font: 650 7px/1 Poppins,sans-serif;
	letter-spacing: .08em;
	text-align: center;
}

body.stlf-catalog-cards-enabled .stlf-forge-load-more.is-loading {
	opacity: .72;
	cursor: progress !important;
}

body.stlf-catalog-cards-enabled .stlf-forge-load-more.is-loading::after {
	content: 'FORGING MORE MODELS…';
	color: #a28fff;
}

@media (max-width: 620px) {
	body.stlf-catalog-cards-enabled .stlf-forge-load-more {
		width: calc(100% - 28px) !important;
		min-width: 0 !important;
	}
}


/* v0.5.0 — Load More safety
   XStore remains the owner of pagination. Our state is visual only. */
body.stlf-catalog-cards-enabled .stlf-forge-load-more.is-loading {
	filter: saturate(.9);
}



/* =========================================================
   v0.5.0 — FORGE BREADCRUMB
   Product Page-inspired treatment for STL Models archive.
   ========================================================= */

body.stlf-catalog-cards-enabled .stlf-catalog-breadcrumb {
	position: relative;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 10px !important;
	width: auto !important;
	min-height: 38px !important;
	margin: 0 auto 10px !important;
	padding: 0 15px !important;
	border: 1px solid rgba(255,255,255,.055) !important;
	border-radius: 12px !important;
	background:
		linear-gradient(180deg, rgba(255,255,255,.018), rgba(255,255,255,.006)),
		radial-gradient(circle at 0% 50%, rgba(98,65,237,.085), transparent 42%) !important;
	box-shadow:
		inset 0 1px 0 rgba(255,255,255,.014),
		0 7px 20px rgba(0,0,0,.08) !important;
	color: #817a88 !important;
	font: 600 9.5px/1 Poppins,sans-serif !important;
	letter-spacing: .01em !important;
	text-transform: none !important;
	white-space: nowrap !important;
}

/* Remove the old pseudo-dot from previous versions. */
body.stlf-catalog-cards-enabled .stlf-catalog-breadcrumb::before {
	content: none !important;
}

body.stlf-catalog-cards-enabled .stlf-catalog-breadcrumb-mark {
	display: block !important;
	flex: 0 0 auto !important;
	width: 6px !important;
	height: 6px !important;
	margin-right: 1px !important;
	border-radius: 50% !important;
	background: #7658f5 !important;
	box-shadow:
		0 0 0 4px rgba(118,88,245,.075),
		0 0 12px rgba(118,88,245,.18) !important;
}

body.stlf-catalog-cards-enabled .stlf-catalog-breadcrumb a {
	position: relative;
	color: #8f8796 !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	transition: color .15s ease !important;
}

body.stlf-catalog-cards-enabled .stlf-catalog-breadcrumb a:hover {
	color: #bcaeff !important;
}

body.stlf-catalog-cards-enabled .stlf-catalog-breadcrumb-separator {
	display: inline-grid !important;
	place-items: center !important;
	width: 14px !important;
	color: #514b57 !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 1 !important;
}

body.stlf-catalog-cards-enabled .stlf-catalog-breadcrumb-current {
	color: #d6d0dc !important;
	font-weight: 700 !important;
}

/* Keep the archive heading visually connected to the breadcrumb. */
body.stlf-catalog-cards-enabled .stlf-catalog-breadcrumb + h1,
body.stlf-catalog-cards-enabled .stlf-catalog-breadcrumb + h2,
body.stlf-catalog-cards-enabled .stlf-catalog-breadcrumb + h3 {
	margin-top: 0 !important;
}

/* Let the heading wrapper center our compact breadcrumb. */
body.stlf-catalog-cards-enabled .stlf-catalog-breadcrumb {
	left: 50%;
	transform: translateX(-50%);
}

@media (max-width: 620px) {
	body.stlf-catalog-cards-enabled .stlf-catalog-breadcrumb {
		gap: 8px !important;
		min-height: 36px !important;
		margin-bottom: 9px !important;
		padding: 0 13px !important;
		border-radius: 11px !important;
		font-size: 9px !important;
	}

	body.stlf-catalog-cards-enabled .stlf-catalog-breadcrumb-mark {
		width: 5px !important;
		height: 5px !important;
	}

	body.stlf-catalog-cards-enabled .stlf-catalog-breadcrumb-separator {
		width: 11px !important;
		font-size: 13px !important;
	}
}


/* =========================================================
   v0.5.0 — BREADCRUMB ANCHOR FIX
   Does not depend on XStore rendering an STL MODELS heading.
   ========================================================= */

body.stlf-catalog-cards-enabled .stlf-native-return-hidden {
	display: none !important;
}

body.stlf-catalog-cards-enabled .stlf-catalog-navline {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 20px !important;
	width: 100% !important;
	margin: 6px 0 18px !important;
	padding: 0 !important;
}

/* Override v0.4.3 centering hack because breadcrumb now lives in its own row. */
body.stlf-catalog-cards-enabled .stlf-catalog-navline .stlf-catalog-breadcrumb {
	left: auto !important;
	transform: none !important;
	justify-content: flex-start !important;
	margin: 0 !important;
}

body.stlf-catalog-cards-enabled .stlf-catalog-return {
	display: inline-flex !important;
	align-items: center !important;
	gap: 7px !important;
	flex: 0 0 auto !important;
	min-height: 38px !important;
	padding: 0 14px !important;
	border: 1px solid rgba(255,255,255,.045) !important;
	border-radius: 12px !important;
	background: rgba(255,255,255,.008) !important;
	color: #a49daa !important;
	font: 600 9.5px/1 Poppins,sans-serif !important;
	text-decoration: none !important;
	transition:
		color .15s ease,
		border-color .15s ease,
		background .15s ease !important;
}

body.stlf-catalog-cards-enabled .stlf-catalog-return:hover {
	border-color: rgba(139,108,255,.22) !important;
	background: rgba(98,65,237,.045) !important;
	color: #d8d0ff !important;
}

body.stlf-catalog-cards-enabled .stlf-catalog-return-arrow {
	color: #8b6cff !important;
	font-size: 13px !important;
	line-height: 1 !important;
}

@media (max-width: 720px) {
	body.stlf-catalog-cards-enabled .stlf-catalog-navline {
		align-items: stretch !important;
		flex-direction: column !important;
		gap: 8px !important;
		margin-bottom: 14px !important;
	}

	body.stlf-catalog-cards-enabled .stlf-catalog-navline .stlf-catalog-breadcrumb,
	body.stlf-catalog-cards-enabled .stlf-catalog-return {
		width: 100% !important;
		justify-content: flex-start !important;
	}

	body.stlf-catalog-cards-enabled .stlf-catalog-return {
		min-height: 36px !important;
	}
}


/* =========================================================
   v0.5.0 — NATIVE XSTORE BREADCRUMB
   Exact selectors from STL Forge's live XStore markup.
   ========================================================= */

/* Remove previous custom breadcrumb UI if cached markup ever survives. */
body.stlf-catalog-cards-enabled .stlf-catalog-navline,
body.stlf-catalog-cards-enabled .stlf-catalog-breadcrumb {
	display: none !important;
}

/* Re-enable XStore's real elements. */
body.stlf-catalog-cards-enabled
.page-heading.stlf-xstore-breadcrumb-ready
nav.woocommerce-breadcrumb,
body.stlf-catalog-cards-enabled
.page-heading.stlf-xstore-breadcrumb-ready
a.back-history {
	display: flex !important;
	visibility: visible !important;
	opacity: 1 !important;
}

/* Main breadcrumb section */
body.stlf-catalog-cards-enabled
.page-heading.bc-type-default.bc-effect-mouse.bc-color-dark.stlf-xstore-breadcrumb-ready {
	position: relative !important;
	margin: 18px auto 24px !important;
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
	min-height: 0 !important;
}

/* Keep XStore container but give it a clean Forge layout */
body.stlf-catalog-cards-enabled
.page-heading.stlf-xstore-breadcrumb-ready > .container {
	width: 100% !important;
	max-width: 1480px !important;
	padding-left: 24px !important;
	padding-right: 24px !important;
}

body.stlf-catalog-cards-enabled
.page-heading.stlf-xstore-breadcrumb-ready .row {
	margin: 0 !important;
}

body.stlf-catalog-cards-enabled
.page-heading.stlf-xstore-breadcrumb-ready .col-md-12.a-center {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 18px !important;
	width: 100% !important;
	padding: 0 !important;
	text-align: left !important;
}

/* Breadcrumb capsule: Home › STL Models */
body.stlf-catalog-cards-enabled
.page-heading.stlf-xstore-breadcrumb-ready
nav.woocommerce-breadcrumb.stlf-native-forge-breadcrumb {
	position: relative !important;
	align-items: center !important;
	justify-content: flex-start !important;
	gap: 9px !important;
	width: auto !important;
	min-height: 40px !important;
	margin: 0 !important;
	padding: 0 15px !important;
	border: 1px solid rgba(255,255,255,.055) !important;
	border-radius: 12px !important;
	background:
		linear-gradient(180deg, rgba(255,255,255,.018), rgba(255,255,255,.006)),
		radial-gradient(circle at 0% 50%, rgba(98,65,237,.09), transparent 44%) !important;
	box-shadow:
		inset 0 1px 0 rgba(255,255,255,.014),
		0 8px 22px rgba(0,0,0,.09) !important;
	font-family: Poppins, sans-serif !important;
	line-height: 1 !important;
}

/* Violet Forge marker */
body.stlf-catalog-cards-enabled
.page-heading.stlf-xstore-breadcrumb-ready
nav.woocommerce-breadcrumb.stlf-native-forge-breadcrumb::before {
	content: '' !important;
	display: block !important;
	flex: 0 0 auto !important;
	width: 6px !important;
	height: 6px !important;
	margin-right: 1px !important;
	border-radius: 50% !important;
	background: #7658f5 !important;
	box-shadow:
		0 0 0 4px rgba(118,88,245,.075),
		0 0 12px rgba(118,88,245,.18) !important;
}

/* Home */
body.stlf-catalog-cards-enabled
.page-heading.stlf-xstore-breadcrumb-ready
nav.woocommerce-breadcrumb.stlf-native-forge-breadcrumb > a {
	display: inline-flex !important;
	align-items: center !important;
	min-height: 38px !important;
	padding: 0 !important;
	color: #928a99 !important;
	font: 600 10px/1 Poppins,sans-serif !important;
	letter-spacing: .005em !important;
	text-decoration: none !important;
	text-transform: none !important;
	transition: color .15s ease !important;
}

body.stlf-catalog-cards-enabled
.page-heading.stlf-xstore-breadcrumb-ready
nav.woocommerce-breadcrumb.stlf-native-forge-breadcrumb > a:hover {
	color: #b9aaff !important;
}

/* XStore delimiter */
body.stlf-catalog-cards-enabled
.page-heading.stlf-xstore-breadcrumb-ready
nav.woocommerce-breadcrumb.stlf-native-forge-breadcrumb
span.delimeter {
	display: inline-grid !important;
	place-items: center !important;
	width: 14px !important;
	height: 38px !important;
	margin: 0 !important;
	color: #514b57 !important;
}

body.stlf-catalog-cards-enabled
.page-heading.stlf-xstore-breadcrumb-ready
nav.woocommerce-breadcrumb.stlf-native-forge-breadcrumb
span.delimeter i {
	display: block !important;
	color: #514b57 !important;
	font-size: 8px !important;
	line-height: 1 !important;
}

/* STL Models title is actually inside the breadcrumb nav */
body.stlf-catalog-cards-enabled
.page-heading.stlf-xstore-breadcrumb-ready
nav.woocommerce-breadcrumb.stlf-native-forge-breadcrumb
h1.title {
	display: inline-flex !important;
	align-items: center !important;
	min-height: 38px !important;
	margin: 0 !important;
	padding: 0 !important;
	color: #ddd7e2 !important;
	font: 700 10px/1 Poppins,sans-serif !important;
	letter-spacing: .005em !important;
	text-transform: none !important;
}

/* Return to previous page */
body.stlf-catalog-cards-enabled
.page-heading.stlf-xstore-breadcrumb-ready
a.back-history.stlf-native-forge-return {
	position: static !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 7px !important;
	flex: 0 0 auto !important;
	min-height: 40px !important;
	margin: 0 !important;
	padding: 0 15px !important;
	border: 1px solid rgba(255,255,255,.045) !important;
	border-radius: 12px !important;
	background: rgba(255,255,255,.008) !important;
	color: #9e97a4 !important;
	font: 600 10px/1 Poppins,sans-serif !important;
	letter-spacing: 0 !important;
	text-decoration: none !important;
	text-transform: none !important;
	transition:
		color .15s ease,
		border-color .15s ease,
		background .15s ease !important;
}

body.stlf-catalog-cards-enabled
.page-heading.stlf-xstore-breadcrumb-ready
a.back-history.stlf-native-forge-return::before {
	content: '←' !important;
	display: inline-block !important;
	color: #8b6cff !important;
	font-size: 13px !important;
	line-height: 1 !important;
}

body.stlf-catalog-cards-enabled
.page-heading.stlf-xstore-breadcrumb-ready
a.back-history.stlf-native-forge-return:hover {
	border-color: rgba(139,108,255,.23) !important;
	background: rgba(98,65,237,.045) !important;
	color: #d9d2ff !important;
}

@media (max-width: 767px) {
	body.stlf-catalog-cards-enabled
	.page-heading.stlf-xstore-breadcrumb-ready > .container {
		padding-left: 14px !important;
		padding-right: 14px !important;
	}

	body.stlf-catalog-cards-enabled
	.page-heading.stlf-xstore-breadcrumb-ready .col-md-12.a-center {
		flex-direction: column !important;
		align-items: stretch !important;
		gap: 8px !important;
	}

	body.stlf-catalog-cards-enabled
	.page-heading.stlf-xstore-breadcrumb-ready
	nav.woocommerce-breadcrumb.stlf-native-forge-breadcrumb,
	body.stlf-catalog-cards-enabled
	.page-heading.stlf-xstore-breadcrumb-ready
	a.back-history.stlf-native-forge-return {
		width: 100% !important;
		justify-content: flex-start !important;
	}

	body.stlf-catalog-cards-enabled
	.page-heading.stlf-xstore-breadcrumb-ready {
		margin-top: 12px !important;
		margin-bottom: 16px !important;
	}
}


/* =========================================================
   v0.5.0 — CENTERED / LARGER FORGE BREADCRUMB
   Visual-only refinement. Native XStore markup remains intact.
   ========================================================= */

/* Desktop: true centered breadcrumb, independent of the Return button width. */
body.stlf-catalog-cards-enabled
.page-heading.stlf-xstore-breadcrumb-ready .col-md-12.a-center {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
	align-items: center !important;
	gap: 18px !important;
}

/* Breadcrumb occupies the actual center column. */
body.stlf-catalog-cards-enabled
.page-heading.stlf-xstore-breadcrumb-ready
nav.woocommerce-breadcrumb.stlf-native-forge-breadcrumb {
	grid-column: 2 !important;
	justify-self: center !important;
	min-height: 44px !important;
	padding: 0 18px !important;
	border-radius: 13px !important;
}

/* Return action stays aligned at the right edge. */
body.stlf-catalog-cards-enabled
.page-heading.stlf-xstore-breadcrumb-ready
a.back-history.stlf-native-forge-return {
	grid-column: 3 !important;
	justify-self: end !important;
	min-height: 42px !important;
	padding: 0 16px !important;
	font-size: 10.5px !important;
}

/* Larger breadcrumb typography for easier reading. */
body.stlf-catalog-cards-enabled
.page-heading.stlf-xstore-breadcrumb-ready
nav.woocommerce-breadcrumb.stlf-native-forge-breadcrumb > a {
	min-height: 42px !important;
	font-size: 11.5px !important;
	font-weight: 650 !important;
}

body.stlf-catalog-cards-enabled
.page-heading.stlf-xstore-breadcrumb-ready
nav.woocommerce-breadcrumb.stlf-native-forge-breadcrumb
h1.title {
	min-height: 42px !important;
	font-size: 11.5px !important;
	font-weight: 750 !important;
}

body.stlf-catalog-cards-enabled
.page-heading.stlf-xstore-breadcrumb-ready
nav.woocommerce-breadcrumb.stlf-native-forge-breadcrumb
span.delimeter {
	height: 42px !important;
	width: 16px !important;
}

body.stlf-catalog-cards-enabled
.page-heading.stlf-xstore-breadcrumb-ready
nav.woocommerce-breadcrumb.stlf-native-forge-breadcrumb
span.delimeter i {
	font-size: 9px !important;
}

body.stlf-catalog-cards-enabled
.page-heading.stlf-xstore-breadcrumb-ready
nav.woocommerce-breadcrumb.stlf-native-forge-breadcrumb::before {
	width: 7px !important;
	height: 7px !important;
}

/* Give the navigation strip a little more breathing room. */
body.stlf-catalog-cards-enabled
.page-heading.bc-type-default.bc-effect-mouse.bc-color-dark.stlf-xstore-breadcrumb-ready {
	margin-top: 22px !important;
	margin-bottom: 26px !important;
}

@media (max-width: 767px) {
	body.stlf-catalog-cards-enabled
	.page-heading.stlf-xstore-breadcrumb-ready .col-md-12.a-center {
		display: flex !important;
		flex-direction: column !important;
		align-items: stretch !important;
		gap: 8px !important;
	}

	body.stlf-catalog-cards-enabled
	.page-heading.stlf-xstore-breadcrumb-ready
	nav.woocommerce-breadcrumb.stlf-native-forge-breadcrumb,
	body.stlf-catalog-cards-enabled
	.page-heading.stlf-xstore-breadcrumb-ready
	a.back-history.stlf-native-forge-return {
		grid-column: auto !important;
		justify-self: auto !important;
		width: 100% !important;
		justify-content: flex-start !important;
	}

	body.stlf-catalog-cards-enabled
	.page-heading.stlf-xstore-breadcrumb-ready
	nav.woocommerce-breadcrumb.stlf-native-forge-breadcrumb > a,
	body.stlf-catalog-cards-enabled
	.page-heading.stlf-xstore-breadcrumb-ready
	nav.woocommerce-breadcrumb.stlf-native-forge-breadcrumb
	h1.title {
		font-size: 10.5px !important;
	}
}


/* =========================================================
   v0.5.0 — RETURN ARROW POSITION FIX
   XStore gives .back-history::before its own absolute positioning.
   Force the arrow back inside our Forge button.
   ========================================================= */

body.stlf-catalog-cards-enabled
.page-heading.stlf-xstore-breadcrumb-ready
a.back-history.stlf-native-forge-return::before {
	position: static !important;
	inset: auto !important;
	top: auto !important;
	right: auto !important;
	bottom: auto !important;
	left: auto !important;
	transform: none !important;
	float: none !important;
	margin: 0 !important;
	width: auto !important;
	height: auto !important;
	flex: 0 0 auto !important;
}


/* =========================================================
   v0.5.0 — PRODUCT CATEGORY ARCHIVES
   Same Forge catalog language as /stl-models/.
   ========================================================= */

/*
 * Product category archives deliberately inherit the exact same card,
 * Quick View, toolbar, breadcrumb, ADD/ADDED and Load More treatment
 * through .stlf-catalog-cards-enabled.
 *
 * This dedicated body class is intentionally light for now so category
 * pages remain visually identical to the main catalog.
 */
body.stlf-product-category-archive .page-heading.stlf-xstore-breadcrumb-ready {
	z-index: 1;
}

