/**
 * StoreLab - Catalog view switcher (List View Only Styling)
 */


/* Zorg dat de list-view CSS GEEN effect heeft op WCVendors tab content containers */
body.storelab-body-list-view .wcv-store-grid-navigation ~ :not(.products),
body.storelab-body-list-view .tab-panels,
body.storelab-body-list-view .entry-content:not(.products) {
	display: block !important;
	flex-direction: initial !important;
}


/* De Knoppen (enkel op catalogus) */
.storelab-cvs-toggle {
	display: flex !important;
	justify-content: flex-end !important;
	width: 100% !important;
	gap: 6px;
	margin-bottom: 20px;
}
.storelab-cvs-toggle .storelab-cvs-btn {
	display: inline-flex; align-items: center; gap: 6px; padding: 6px 14px;
	border: 1px solid #dcdcdc; background-color: #ffffff; color: #333333;
	font-size: 13px; line-height: 1; border-radius: 4px; cursor: pointer;
	transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
	text-transform: capitalize !important;
	font-weight: 500;
}
.storelab-cvs-toggle .storelab-cvs-btn.active {
	background-color: var(--primary-color, #d63384);
	border-color: var(--primary-color, #d63384);
	color: #ffffff;
}	

/* Standaard verbergen in Grid */
.storelab-cvs-excerpt,
.storelab-list-btn-wrap {
	display: none;
}

/* Desktop/Mobiel beschrijving toggles */
.storelab-excerpt-mobile {
	display: none !important;
}
.storelab-excerpt-desktop {
	display: inline !important;
}

/* ==========================================================
   LIJSTWEERGAVE STRUCTUUR (ACTIEF BIJ KLIK OP LIST)
   ========================================================== */

body.storelab-body-list-view .products.row {
	display: flex !important;
	flex-direction: column !important;
	width: 100% !important;
	margin: 0 !important;
}

body.storelab-body-list-view .products.row .product-small.col {
	width: 100% !important;
	max-width: 100% !important;
	flex: 0 0 100% !important;
	padding: 0 0 15px 0 !important;
	margin: 0 0 15px 0 !important;
	border-bottom: 1px solid #eeeeee !important;
}

body.storelab-body-list-view .product-small.col > br,
body.storelab-body-list-view .product-small .col-inner > br {
	display: none !important;
}

/* Hoofdbox */
body.storelab-body-list-view .product-small .box {
	display: flex !important;
	flex-direction: row !important;
	align-items: flex-start !important;
	justify-content: space-between !important;
	width: 100% !important;
	gap: 16px !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
}

/* KOLOM 1: Afbeelding (80x80px) */
body.storelab-body-list-view .product-small .box-image {
	width: 80px !important;
	min-width: 80px !important;
	max-width: 80px !important;
	height: 80px !important;
	margin: 0 !important;
	padding: 0 !important;
	flex-shrink: 0 !important;
	position: relative !important;
	overflow: hidden !important;
	border-radius: 4px !important;
}

body.storelab-body-list-view .product-small .box-image a,
body.storelab-body-list-view .product-small .box-image .image-fade_in_back {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	overflow: hidden !important;
	border-radius: 4px !important;
}

body.storelab-body-list-view .product-small .box-image img {
	width: 80px !important;
	height: 80px !important;
	object-fit: cover !important;
	border-radius: 4px !important;
	position: static !important;
}

/* Fix Uitverkocht Overlay ::after */
body.storelab-body-list-view li.product.outofstock .box-image::after,
body.storelab-body-list-view .col.outofstock .box-image::after {
	padding: 3px 6px !important;
	font-size: 7.5px !important;
	letter-spacing: 0.5px !important;
	max-width: 90% !important;
	white-space: nowrap !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
	box-sizing: border-box !important;
}

body.storelab-body-list-view .product-small .out-of-stock-label {
	font-size: 8px !important;
	padding: 2px 4px !important;
	max-width: 90% !important;
	white-space: nowrap !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
	z-index: 2 !important;
}

body.storelab-body-list-view .product-small .box-image img.back-image,
body.storelab-body-list-view .product-small .image-tools,
body.storelab-body-list-view .product-small .badge-container,
body.storelab-body-list-view .product-small small.wcvendors_sold_by_in_loop {
	display: none !important;
}

/* KOLOM 2: Middenstuk */
body.storelab-body-list-view .product-small .box-text {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	text-align: left !important;
	flex: 1 1 auto !important;
	min-width: 0 !important;
	padding: 0 140px 0 0 !important;
	margin: 0 !important;
}

/* 1. TITEL */
body.storelab-body-list-view .product-small .title-wrapper,
body.storelab-body-list-view .product-small .title-wrapper p.name,
body.storelab-body-list-view .product-small .woocommerce-loop-product__title {
	margin: 0 0 0 0 !important;
	padding: 0 !important;
	text-align: left !important;
	line-height: 1.1 !important;
}

body.storelab-body-list-view .product-small .woocommerce-loop-product__title a {
	font-size: 1.02em !important;
	font-weight: 500 !important;
	text-decoration: none !important;
	border-bottom: none !important;
	box-shadow: none !important;
	color: #111111 !important;
}

/* 2. STERREN */
body.storelab-body-list-view .product-small .star-rating,
body.storelab-body-list-view .product-small .woocommerce-product-rating {
	display: block !important;
	margin: 0 0 2px 0 !important;
	padding: 0 !important;
	float: none !important;
	font-size: 0.95em !important;
	line-height: 1 !important;
	height: 1em !important;
	min-height: 1em !important;
	overflow: hidden !important;
	color: #ffb400 !important;
	visibility: visible !important;
	opacity: 1 !important;
}

body.storelab-body-list-view .product-small .star-rating span {
	color: #ffb400 !important;
	height: 1em !important;
}

/* 3. BESCHRIJVING */
body.storelab-body-list-view .storelab-cvs-excerpt {
	display: block !important;
	margin: 1px 0 3px 0 !important;
	text-align: left !important;
	white-space: nowrap !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
	width: 100% !important;
	max-width: 100% !important;
}

/* 4. VENDOR */
body.storelab-body-list-view .product-small .price-wrapper {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	margin: 0 !important;
	padding: 0 !important;
	width: 100% !important;
}

body.storelab-body-list-view .product-small .sl-vendor-catalog-wrap {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: flex-start !important;
	gap: 6px !important;
	margin: 1px 0 0 0 !important;
	order: 1 !important;
}

body.storelab-body-list-view .product-small .sl-vendor-catalog-avatar {
	width: 18px !important;
	height: 18px !important;
	border-radius: 50% !important;
}

body.storelab-body-list-view .product-small .sl-vendor-catalog-name {
	font-size: 0.98em !important;
	font-weight: 500 !important;
	color: #333333 !important;
}

/* KOLOM 3: Prijs & Knop Container rechts */
body.storelab-body-list-view .product-small .col-inner {
	position: relative !important;
}

body.storelab-body-list-view .product-small .price {
	position: absolute !important;
	right: 0 !important;
	top: 0 !important;
	font-size: 1.02em !important;
	font-weight: bold !important;
	color: var(--primary-color, #d63384) !important;
	margin: 0 !important;
	text-align: right !important;
	line-height: 1 !important;
}

body.storelab-body-list-view .storelab-list-btn-wrap {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-end !important;
	justify-content: flex-start !important;
	position: absolute !important;
	right: 0 !important;
	top: 26px !important;
}

body.storelab-body-list-view .storelab-view-product-btn {
	display: inline-block !important;
	padding: 6px 14px !important;
	background-color: var(--primary-color, #d63384) !important;
	color: #ffffff !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	border-radius: 4px !important;
	text-decoration: none !important;
	white-space: nowrap !important;
	width: auto !important;
	transition: filter 0.2s ease !important;
}

body.storelab-body-list-view .storelab-view-product-btn:hover {
	filter: brightness(0.9);
}

/* ==========================================================
   MOBIELE WEERGAVE (Max 580px)
   ========================================================== */
@media screen and (max-width: 580px) {
	body.storelab-body-list-view .storelab-excerpt-desktop {
		display: none !important;
	}
	body.storelab-body-list-view .storelab-excerpt-mobile {
		display: inline !important;
	}

	body.storelab-body-list-view .product-small .col-inner,
	body.storelab-body-list-view .product-small .box {
		position: static !important;
		display: flex !important;
		flex-direction: row !important;
		flex-wrap: wrap !important;
		align-items: flex-start !important;
		gap: 12px !important;
		width: 100% !important;
	}

	body.storelab-body-list-view .product-small .box-image {
		width: 65px !important;
		min-width: 65px !important;
		max-width: 65px !important;
		height: 65px !important;
		flex: 0 0 65px !important;
	}

	body.storelab-body-list-view .product-small .box-image img {
		width: 65px !important;
		height: 65px !important;
	}

	body.storelab-body-list-view .product-small .box-text {
		padding: 0 !important;
		flex: 1 1 calc(100% - 77px) !important;
		min-width: 0 !important;
		width: auto !important;
	}

	body.storelab-body-list-view .product-small .title-wrapper,
	body.storelab-body-list-view .product-small .woocommerce-loop-product__title,
	body.storelab-body-list-view .product-small .woocommerce-loop-product__title a {
		white-space: normal !important;
		word-break: break-word !important;
		overflow: visible !important;
		text-overflow: clip !important;
		font-size: 0.98em !important;
		line-height: 1.25 !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	body.storelab-body-list-view .product-small .star-rating {
		margin: 3px 0 2px 0 !important;
	}

	body.storelab-body-list-view .product-small .price-wrapper {
		position: static !important;
		width: 100% !important;
		margin: 0 !important;
	}

	body.storelab-body-list-view .product-small .price {
		position: static !important;
		font-size: 1.1em !important;
		text-align: left !important;
		margin: 2px 0 !important;
		line-height: 1.1 !important;
	}

	body.storelab-body-list-view .storelab-cvs-excerpt {
		white-space: normal !important;
		overflow: visible !important;
		text-overflow: clip !important;
		font-size: 0.84em !important;
		margin: 6px 0 4px 0 !important;
		width: 100% !important;
		flex: 0 0 100% !important;
	}

	body.storelab-body-list-view .product-small .sl-vendor-catalog-wrap {
		width: 100% !important;
		margin: 2px 0 4px 0 !important;
		flex: 0 0 100% !important;
	}

	body.storelab-body-list-view .storelab-list-btn-wrap {
		display: none !important;
	}
}