/* Waslli Kuwait design layer: kw-browse. Loaded after the base stylesheet. */
/* Browse surfaces: header, home, shop / category / search, 404, footer.
 * Colours come from the brand tokens (kw-brand.css). Product cards are scoped
 * with #primary so one card design wins over the older layered card rules. */

/* ---------------------------------------------------------------- Icons */
.waslli-icon { display: inline-block; flex: 0 0 auto; vertical-align: -3px; }

/* ---------------------------------------------------------------- Header */
/* The base sheet sets overflow-x: hidden on these pages. With html clipped on
 * phones that turns body into a scroll container and the sticky header stops
 * sticking; clip trims the same overflow without creating one. */
body.waslli-shop-v2 { overflow-x: clip; }

/* «الأقسام» only where the category bar collapses (≤860px); wider screens
 * always show the bar, so the button would do nothing there. */
#site-header .menu-toggle__icon { display: inline-flex; line-height: 0; }
#site-header .menu-toggle__close { display: none; }
#site-header .menu-toggle[aria-expanded="true"] .menu-toggle__open { display: none; }
#site-header .menu-toggle[aria-expanded="true"] .menu-toggle__close { display: block; }
@media (max-width: 860px) {
	#site-header .menu-toggle { display: inline-flex; align-items: center; gap: 6px; }
}
@media (min-width: 861px) {
	#site-header .menu-toggle { display: none; }
}

@media (max-width: 768px) {
	/* The bar is already 98% opaque: the blur only costs GPU on every scroll. */
	#site-header.site-header { -webkit-backdrop-filter: none; backdrop-filter: none; }
	#site-header .header-main { padding-block: 6px !important; }
	#site-header .menu-toggle,
	#site-header .cart-link { min-height: 44px; display: inline-flex; align-items: center; }
	#site-header .header-action-link { min-height: 44px; align-items: center; }
	#site-header .product-search { min-height: 44px; }
	/* 16px stops iOS Safari from zooming into the field. */
	#site-header .product-search input[type="search"] { min-height: 44px; font-size: 16px !important; padding-block: 0 !important; }
	#site-header .product-search button { min-height: 44px; }
	#site-header .category-nav a { display: flex; align-items: center; min-height: 44px; }
}

/* «تتبّع طلبك» / «تواصل معنا» (header.php): only inside the collapsed
 * «الأقسام» menu; wider screens have «حسابي» and the top strip. */
#site-header .category-nav .category-nav__extra { display: none; }
@media (max-width: 860px) {
	#site-header .category-nav .category-nav__extra { display: flex; border-top: 1px solid var(--waslli-line, #DCE3ED); }
	#site-header .category-nav .category-nav__extra a { color: var(--waslli-primary, #1D4E89); }
}

/* Top strip «تواصل معنا» on touch widths: a 44px tap area without making the
 * strip taller (the negative margin keeps its layout height). */
@media (max-width: 1023px) {
	#site-header .store-notice-inner > a {
		display: inline-flex;
		align-items: center;
		min-height: 44px;
		margin-block: -8px;
		padding-inline: 10px;
		margin-inline-end: -10px;
	}
}

/* ---------------------------------------------------------------- Home hero */
.waslli-hero .waslli-hero__bg,
.waslli-hero .hero-eyebrow__dot { display: none !important; }
.waslli-hero .hero-eyebrow { -webkit-backdrop-filter: none; backdrop-filter: none; }
.waslli-hero .hero-countdown,
.waslli-hero .hero-cta-secondary { -webkit-backdrop-filter: none; backdrop-filter: none; }
.waslli-hero .hero-countdown__sep { animation: none; }

.waslli-hero .hero-mini-trust {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 6px 16px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.waslli-hero .hero-mini-trust__item { display: inline-flex; align-items: center; gap: 6px; margin: 0; white-space: nowrap; }
.waslli-hero .hero-mini-trust__item .waslli-icon { width: 16px; height: 16px; color: var(--waslli-accent, #E3B448); }

@media (min-width: 641px) {
	.waslli-hero { padding-block: 40px 44px; }
	.waslli-hero .hero-title { font-size: clamp(30px, 3.6vw, 46px); margin-bottom: 12px; }
	.waslli-hero .hero-copy { margin-bottom: 22px; }
	.waslli-hero .hero-ctas { margin-bottom: 0; }
	/* Desktop shows the trust row below the hero instead. */
	.waslli-hero .hero-mini-trust { display: none; }
}

@media (max-width: 640px) {
	/* Products must start inside the first phone screen. */
	html body .waslli-hero { padding-block: 18px 30px !important; }
	html body .waslli-hero .hero-eyebrow { margin-bottom: 8px !important; font-size: 12px; }
	html body .waslli-hero .hero-title { font-size: 24px !important; line-height: 1.35 !important; margin: 0 0 6px !important; }
	html body .waslli-hero .hero-copy { font-size: 15px !important; line-height: 1.6 !important; margin: 0 auto 14px !important; }
	/* No hero buttons on phones: «تسوّق الآن» only opens the shop, which
	 * «كل المنتجات ←» right below already does, and a gold button here
	 * competes with the cards' «أضف إلى السلة». Products start higher. */
	html body .waslli-hero .hero-ctas { display: none !important; }
	html body .waslli-hero .hero-mini-trust { display: flex !important; font-size: 12.5px; gap: 6px 10px; }
	html body .waslli-hero .hero-mini-trust__item { gap: 4px; }
	html body .waslli-hero .hero-mini-trust__item .waslli-icon { width: 14px; height: 14px; }
}

/* ---------------------------------------------------------------- Trust row (desktop) */
.waslli-trustbar { padding: 16px 0; }
.waslli-trustbar .trustbar-item { padding: 12px 16px; gap: 12px; }
.waslli-trustbar .trustbar-icon { width: 40px; height: 40px; }
.waslli-trustbar .trustbar-icon svg { width: 22px; height: 22px; }
.waslli-trustbar .trustbar-text strong { font-size: 15px; }
.waslli-trustbar .trustbar-text span { font-size: 13px; }
@media (max-width: 640px) {
	/* Phones get the one-line row inside the hero. */
	html body .waslli-trustbar { display: none !important; }
}

/* ---------------------------------------------------------------- Home notices */
/* front-page.php prints pending WooCommerce notices (e.g. an add-to-cart link
 * for a product that needs options). Icon in its own gutter, like checkout. */
.waslli-home-notices { padding-block: 14px; }
.waslli-home-notices :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) {
	position: relative;
	margin: 0;
	padding-block: 14px;
	padding-inline: 46px 16px;
	border: 1px solid var(--waslli-line, #DCE3ED);
	border-top: 3px solid var(--waslli-primary, #1D4E89);
	border-radius: var(--waslli-radius, 10px);
	background: var(--waslli-white, #fff);
	color: var(--waslli-ink, #0F1B2D);
	font-size: 14px;
	line-height: 1.7;
	list-style: none;
}
.waslli-home-notices :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) + * { margin-top: 10px; }
.waslli-home-notices .woocommerce-error { border-top-color: var(--waslli-danger, #B42318); }
.waslli-home-notices :is(.woocommerce-message, .woocommerce-info, .woocommerce-error)::before {
	position: absolute;
	top: 15px;
	inset-inline-start: 16px;
	inset-inline-end: auto;
	color: var(--waslli-primary, #1D4E89);
}
.waslli-home-notices .woocommerce-error::before { color: var(--waslli-danger, #B42318); }
.waslli-home-notices .woocommerce-error li { margin: 0; padding: 0; list-style: none; }
.waslli-home-notices a:not(.button) { color: var(--waslli-primary, #1D4E89); font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }
.waslli-home-notices :focus { outline: none; }

/* ---------------------------------------------------------------- Home sections */
.home-products-tabs .section-heading a,
.home-section .section-heading a { display: inline-flex; align-items: center; min-height: 44px; }
.products-tabs .products-tab { min-height: 44px; }
.products-tab__icon { display: inline-flex; line-height: 0; }
.products-tab__icon .waslli-icon { width: 16px; height: 16px; }

@media (max-width: 640px) {
	html body .home-products-tabs { padding-block: 18px 28px; }
	html body .home-products-tabs .section-heading {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		margin-bottom: 10px;
	}
	html body .home-products-tabs .section-heading::before,
	html body .home-products-tabs .section-heading::after { display: none; }
	html body .home-products-tabs .section-heading h2 { font-size: 20px; text-align: start; }
	html body .home-products-tabs .section-heading a { position: static; padding: 0; background: transparent; font-size: 14px; }
	html body .products-tabs {
		display: flex;
		flex-wrap: nowrap;
		width: 100%;
		max-width: none;
		margin: 0 0 14px;
		padding: 4px;
		gap: 4px;
		border-radius: 12px;
		box-shadow: none;
	}
	html body .products-tabs .products-tab { flex: 1 1 0; justify-content: center; padding: 0 8px; font-size: 14px; border-radius: 9px; }
}

/* Category strip under the hero: round images, one line on desktop,
 * a sideways swipe on phones (the row bleeds to the screen edges). */
.home-cats { padding-block: 28px 8px; }
.home-cats .section-heading { margin-bottom: 16px; }
.home-cats__list {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(104px, 1fr));
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.home-cat {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	min-height: 44px;
	padding: 6px 4px;
	border-radius: 14px;
	color: var(--waslli-ink);
	text-align: center;
	text-decoration: none;
}
.home-cat__media {
	display: block;
	width: 88px;
	height: 88px;
	border: 2px solid var(--waslli-line);
	border-radius: 50%;
	background: var(--waslli-primary-soft, #EEF3FA);
	overflow: hidden;
	transition: border-color .15s ease, box-shadow .15s ease;
}
.home-cat__media img,
.home-cat__media .category-placeholder {
	display: grid;
	place-items: center;
	width: 100%;
	height: 100%;
	object-fit: cover;
	font-size: 30px;
}
.home-cat__name { font-size: 14px; font-weight: 700; line-height: 1.4; }
.home-cat:hover .home-cat__media,
.home-cat:focus-visible .home-cat__media { border-color: var(--waslli-accent); box-shadow: 0 6px 16px rgb(12 35 64 / 12%); }
.home-cat:focus-visible { outline: 2px solid var(--waslli-primary); outline-offset: 2px; }

@media (max-width: 640px) {
	.home-cats { padding-block: 16px 4px; }
	html body .home-cats .section-heading,
	html body .home-cat-rail .section-heading {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		margin-bottom: 10px;
	}
	html body .home-cats .section-heading::before,
	html body .home-cats .section-heading::after,
	html body .home-cat-rail .section-heading::before,
	html body .home-cat-rail .section-heading::after { display: none; }
	html body .home-cats .section-heading h2,
	html body .home-cat-rail .section-heading h2 { font-size: 19px; text-align: start; }
	html body .home-cat-rail .section-heading a { position: static; padding: 0; background: transparent; font-size: 14px; white-space: nowrap; }
	.home-cats__list {
		display: flex;
		gap: 4px;
		margin-inline: calc(50% - 50vw);
		padding: 2px calc(50vw - 50%) 8px;
		overflow-x: auto;
		overscroll-behavior-inline: contain;
		scroll-snap-type: x proximity;
		scroll-padding-inline: 10px;
		scrollbar-width: none;
	}
	.home-cats__list::-webkit-scrollbar { display: none; }
	.home-cats__list > li { flex: 0 0 84px; scroll-snap-align: start; }
	.home-cat { padding-inline: 2px; }
	.home-cat__media { width: 68px; height: 68px; }
	.home-cat__name { font-size: 12.5px; }
}

/* Phones: «اكتشف منتجاتنا» keeps two rows; the category rows below carry the rest. */
@media (max-width: 640px) {
	.waslli-browse #primary .home-products-tabs ul.products > li.product:nth-child(n+5) { display: none !important; }
}

/* Category rails: one full row on larger screens («عرض الكل» for the rest),
 * a sideways swipe of up to 8 cards on phones. */
.home-cat-rail { padding-block: 30px; }
@media (min-width: 1025px) {
	.waslli-browse #primary .home-cat-rail ul.products > li.product:nth-child(n+5) { display: none !important; }
}
@media (min-width: 641px) and (max-width: 1024px) {
	.waslli-browse #primary .home-cat-rail ul.products > li.product:nth-child(n+4) { display: none !important; }
}
@media (max-width: 640px) {
	.home-cat-rail { padding-block: 18px 20px; }
	.waslli-browse #primary .home-cat-rail ul.products {
		display: flex !important;
		gap: 10px !important;
		margin-inline: calc(50% - 50vw) !important;
		padding: 2px calc(50vw - 50%) 8px !important;
		overflow-x: auto;
		overscroll-behavior-inline: contain;
		scroll-snap-type: x mandatory;
		/* Snap to the page gutter (10px on phones), not the screen edge. */
		scroll-padding-inline: 10px;
		scrollbar-width: none;
	}
	.waslli-browse #primary .home-cat-rail ul.products::-webkit-scrollbar { display: none; }
	/* ~2.3 cards visible: the cut card shows the row scrolls. */
	.waslli-browse #primary .home-cat-rail ul.products > li.product {
		flex: 0 0 calc((100vw - 52px) / 2.3) !important;
		width: auto !important;
		scroll-snap-align: start;
	}
}

/* Category tiles: no image → a large initial (after «ال»). */
.category-placeholder { font-size: 44px; color: var(--waslli-primary); background: var(--waslli-primary-soft, #EEF3FA); }

/* Reviews: static cards (no autoplay slider). */
.waslli-reviews-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.waslli-reviews-grid .testimonial-card { display: flex !important; flex-direction: column; animation: none !important; margin: 0; }
.waslli-reviews-grid .testimonial-card__stars { color: var(--waslli-accent, #E3B448); }
.waslli-reviews-grid .testimonial-card__stars .is-off { color: var(--waslli-line, #DCE3ED); }
@media (max-width: 900px) { .waslli-reviews-grid { grid-template-columns: 1fr; } }

/* ---------------------------------------------------------------- Product cards (one design) */
.waslli-browse #primary ul.products {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 20px !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}
.waslli-browse #primary .waslli-shop-main ul.products { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
@media (max-width: 1024px) {
	.waslli-browse #primary ul.products { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 16px !important; }
}
@media (max-width: 640px) {
	.waslli-browse #primary ul.products,
	.waslli-browse #primary .waslli-shop-main ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 10px !important; }
}

/* Short grids (home tabs, suggestions) end on a full row: an incomplete last
 * row is hidden once there is more than one row. Both have a «كل المنتجات»
 * link for the rest. Columns: 4 (≥1025px), 3 (641–1024px), 2 (≤640px). */
@media (min-width: 1025px) {
	.waslli-browse #primary .home-products-tabs ul.products > li.product:nth-child(4n+1):nth-child(n+5):nth-last-child(-n+3),
	.waslli-browse #primary .home-products-tabs ul.products > li.product:nth-child(4n+1):nth-child(n+5):nth-last-child(-n+3) ~ li.product,
	.waslli-browse #primary .waslli-suggested ul.products > li.product:nth-child(4n+1):nth-child(n+5):nth-last-child(-n+3),
	.waslli-browse #primary .waslli-suggested ul.products > li.product:nth-child(4n+1):nth-child(n+5):nth-last-child(-n+3) ~ li.product { display: none !important; }
}
@media (min-width: 641px) and (max-width: 1024px) {
	.waslli-browse #primary .home-products-tabs ul.products > li.product:nth-child(3n+1):nth-child(n+4):nth-last-child(-n+2),
	.waslli-browse #primary .home-products-tabs ul.products > li.product:nth-child(3n+1):nth-child(n+4):nth-last-child(-n+2) ~ li.product,
	.waslli-browse #primary .waslli-suggested ul.products > li.product:nth-child(3n+1):nth-child(n+4):nth-last-child(-n+2),
	.waslli-browse #primary .waslli-suggested ul.products > li.product:nth-child(3n+1):nth-child(n+4):nth-last-child(-n+2) ~ li.product { display: none !important; }
}
@media (max-width: 640px) {
	.waslli-browse #primary .home-products-tabs ul.products > li.product:nth-child(2n+1):nth-child(n+3):last-child,
	.waslli-browse #primary .waslli-suggested ul.products > li.product:nth-child(2n+1):nth-child(n+3):last-child { display: none !important; }
}

.waslli-browse #primary ul.products li.product {
	position: relative !important;
	display: flex !important;
	flex-direction: column !important;
	width: 100% !important;
	min-width: 0;
	margin: 0 !important;
	padding: 0 !important;
	border: 1px solid var(--waslli-line, #DCE3ED) !important;
	border-radius: var(--waslli-radius, 10px) !important;
	background: var(--waslli-white, #fff) !important;
	box-shadow: none !important;
	overflow: hidden !important;
	text-align: start !important;
	transform: none !important;
	will-change: auto;
	transition: box-shadow .2s ease, border-color .2s ease !important;
}
@media (hover: hover) {
	.waslli-browse #primary ul.products li.product:hover {
		transform: none !important;
		border-color: color-mix(in srgb, var(--waslli-primary, #1D4E89) 35%, var(--waslli-line, #DCE3ED)) !important;
		box-shadow: var(--waslli-shadow, 0 1px 2px rgb(12 35 64 / 6%), 0 8px 24px rgb(12 35 64 / 8%)) !important;
	}
}
.waslli-browse #primary ul.products li.product a.woocommerce-loop-product__link {
	position: relative;
	display: flex !important;
	flex: 1 1 auto;
	flex-direction: column;
	overflow: visible;
	color: inherit;
	text-decoration: none !important;
}
.waslli-browse #primary ul.products li.product a.woocommerce-loop-product__link::after { content: none !important; display: none !important; }
.waslli-browse #primary ul.products li.product a.woocommerce-loop-product__link > img {
	display: block !important;
	width: 100% !important;
	height: auto !important;
	aspect-ratio: 1 / 1 !important;
	margin: 0 !important;
	object-fit: cover !important;
	background: var(--waslli-off-white, #F7F9FC) !important;
	transform: none !important;
	transition: none !important;
}

/* Badges sit on the image corner (reading start), never pushing the title. */
.waslli-browse #primary ul.products li.product .waslli-loop-badges {
	position: absolute !important;
	top: 8px !important;
	inset-inline-start: 8px !important;
	right: auto;
	z-index: 3;
	display: flex !important;
	flex-direction: column;
	align-items: flex-start;
	gap: 4px;
	pointer-events: none;
}
.waslli-browse #primary ul.products li.product .waslli-loop-badge {
	padding: 4px 8px !important;
	border-radius: 6px !important;
	box-shadow: none !important;
	font-size: 12px !important;
	font-weight: 800 !important;
	line-height: 1.25 !important;
	white-space: nowrap;
}
.waslli-browse #primary ul.products li.product .waslli-loop-badge--sale { background: var(--waslli-accent, #E3B448) !important; color: var(--waslli-on-accent, #0C2340) !important; }
.waslli-browse #primary ul.products li.product .waslli-loop-badge--new { background: var(--waslli-dark, #0C2340) !important; color: #fff !important; }
.waslli-browse #primary ul.products li.product .waslli-loop-badge--out { background: var(--waslli-muted, #5A6578) !important; color: #fff !important; }
.waslli-browse #primary ul.products li.product .waslli-loop-badge--free { background: var(--waslli-primary, #1D4E89) !important; color: #fff !important; }

/* Title: 2 lines. Line-height 1.7 keeps tall Arabic letters of a third line
 * out of the box; no bottom padding inside the clipped area. */
.waslli-browse #primary ul.products li.product .woocommerce-loop-product__title {
	display: -webkit-box !important;
	-webkit-box-orient: vertical !important;
	-webkit-line-clamp: 2 !important;
	height: 3.4em !important;
	min-height: 0 !important;
	margin: 10px 12px 4px !important;
	padding: 0 !important;
	overflow: hidden !important;
	color: var(--waslli-ink, #0F1B2D) !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	line-height: 1.7 !important;
	text-align: start !important;
	overflow-wrap: anywhere;
}
.waslli-browse #primary ul.products li.product .price {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: baseline !important;
	justify-content: flex-start !important;
	gap: 2px 8px !important;
	min-height: 0 !important;
	margin: 0 0 12px !important;
	padding: 0 12px !important;
	color: var(--waslli-price, var(--waslli-dark, #0C2340)) !important;
	font-size: 18px !important;
	font-weight: 800 !important;
	line-height: 1.35 !important;
	text-align: start !important;
}
.waslli-browse #primary ul.products li.product .price ins {
	order: 1;
	background: transparent !important;
	color: var(--waslli-price, var(--waslli-dark, #0C2340)) !important;
	font-weight: 800 !important;
	text-decoration: none !important;
}
.waslli-browse #primary ul.products li.product .price del {
	order: 2;
	color: var(--waslli-muted, #5A6578) !important;
	font-size: 13px !important;
	font-weight: 400 !important;
	opacity: 1 !important;
}
/* Number first, then «د.ك» (reading right to left). */
.waslli-browse #primary ul.products li.product .price bdi { direction: rtl; unicode-bidi: isolate; }

/* One action per card. */
.waslli-browse #primary ul.products li.product .button {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: auto !important;
	height: auto !important;
	min-height: 44px !important;
	margin: auto 12px 12px !important;
	padding: 0 10px !important;
	border: 0 !important;
	border-radius: var(--waslli-btn-radius, 10px) !important;
	background: var(--waslli-accent, #E3B448) !important;
	background-image: none !important;
	box-shadow: none !important;
	color: var(--waslli-on-accent, #0C2340) !important;
	font-size: 14px !important;
	font-weight: 800 !important;
	line-height: 1.25 !important;
	text-align: center !important;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	transform: none !important;
	filter: none !important;
}
.waslli-browse #primary ul.products li.product .button:hover,
.waslli-browse #primary ul.products li.product .button:focus-visible {
	background: var(--waslli-accent-hover, #D6A535) !important;
	color: var(--waslli-on-accent, #0C2340) !important;
}
.waslli-browse #primary ul.products li.product .star-rating { display: none !important; }
.waslli-browse #primary ul.products li.product .added_to_cart { display: none !important; }
/* No cart drawer on the 404 page: show WooCommerce's «عرض السلة» link instead. */
.error404 #primary ul.products li.product .added_to_cart {
	display: flex !important;
	justify-content: center;
	min-height: 40px;
	align-items: center;
	margin: -4px 12px 10px;
	color: var(--waslli-primary, #1D4E89);
	font-weight: 700;
}

@media (max-width: 640px) {
	.waslli-browse #primary ul.products li.product .woocommerce-loop-product__title { margin: 8px 10px 2px !important; font-size: 14px !important; }
	.waslli-browse #primary ul.products li.product .price { margin-bottom: 10px !important; padding: 0 10px !important; font-size: 16px !important; gap: 0 6px !important; }
	.waslli-browse #primary ul.products li.product .price del { font-size: 12.5px !important; }
	.waslli-browse #primary ul.products li.product .button { margin: auto 8px 8px !important; font-size: 14px !important; }
	.waslli-browse #primary ul.products li.product .waslli-loop-badges { top: 6px !important; inset-inline-start: 6px !important; }
	.waslli-browse #primary ul.products li.product .waslli-loop-badge { font-size: 11.5px !important; padding: 3px 7px !important; }
}

/* ---------------------------------------------------------------- Shop / category header */
.waslli-browse .waslli-shop-hero {
	margin: 0 0 4px !important;
	padding: 20px 0 12px !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--waslli-ink, #0F1B2D) !important;
	overflow: visible;
}
.waslli-browse .waslli-shop-hero__bg { display: none !important; }
.waslli-browse .waslli-shop-hero__crumbs { gap: 6px; margin: 0 0 6px; color: var(--waslli-muted, #5A6578); font-size: 13px; }
.waslli-browse .waslli-shop-hero__crumbs a { color: var(--waslli-primary, #1D4E89); }
.waslli-browse .waslli-shop-hero__crumbs a:hover { color: var(--waslli-primary-deep, #173F70); }
.waslli-browse .waslli-shop-hero__crumbs .is-current { color: var(--waslli-ink, #0F1B2D); font-weight: 700; }
.waslli-browse .waslli-shop-hero__sep { color: var(--waslli-line, #DCE3ED); }
.waslli-browse .waslli-shop-hero__head { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 12px; }
.waslli-browse .waslli-shop-hero__title {
	margin: 0 !important;
	color: var(--waslli-ink, #0F1B2D) !important;
	font-size: 30px !important;
	font-weight: 800;
	line-height: 1.3;
	text-shadow: none !important;
}
.waslli-browse .waslli-shop-hero__count {
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	-webkit-backdrop-filter: none !important;
	backdrop-filter: none !important;
	color: var(--waslli-muted, #5A6578) !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	white-space: nowrap;
}
.waslli-browse .waslli-shop-hero__desc { max-width: 760px; margin: 6px 0 0 !important; color: var(--waslli-muted, #5A6578) !important; font-size: 15px !important; line-height: 1.7; }
@media (max-width: 640px) {
	.waslli-browse .waslli-shop-hero { padding: 12px 0 8px !important; }
	.waslli-browse .waslli-shop-hero__crumbs,
	.waslli-browse .waslli-shop-hero__desc { display: none !important; }
	.waslli-browse .waslli-shop-hero__title { font-size: 22px !important; }
	.waslli-browse .waslli-shop-hero__count { font-size: 13px !important; }
}

/* WooCommerce title block: search results, and any archive with no results
 * (no hero there). Same spacing as the hero. */
.waslli-browse .woocommerce-products-header { margin: 0 0 4px; padding: 24px 0 12px; }
.waslli-browse .woocommerce-products-header__title.page-title { margin: 0; color: var(--waslli-ink, #0F1B2D); font-size: 30px; font-weight: 800; line-height: 1.3; }
.waslli-browse-search .woocommerce-products-header { margin: 0; padding: 20px 0 8px; }
.waslli-browse-search .woocommerce-products-header__title.page-title { font-size: 26px; line-height: 1.4; }
@media (max-width: 640px) {
	.waslli-browse .woocommerce-products-header { padding: 16px 0 8px; }
	.waslli-browse .woocommerce-products-header__title.page-title { font-size: 22px; }
	.waslli-browse-search .woocommerce-products-header { padding: 12px 0 6px; }
	.waslli-browse-search .woocommerce-products-header__title.page-title { font-size: 20px; }
}

/* Category rail chips */
.waslli-shop-v2 .shop-category-rail { margin: 0 0 12px !important; padding: 2px 2px 10px !important; }
@media (max-width: 640px) {
	.waslli-shop-v2 .shop-category-rail a { min-height: 40px !important; padding: 0 12px !important; font-size: 13px !important; }
}

/* Toolbar: filter + sort on one compact row */
.waslli-shop-toolbar { padding: 8px 12px; margin: 0 0 14px; gap: 10px; box-shadow: none; border-color: var(--waslli-line, #DCE3ED); }
.waslli-shop-toolbar__count { color: var(--waslli-muted, #5A6578); }
.waslli-shop-v2 .waslli-shop-toolbar .woocommerce-ordering { margin-inline-start: auto; }
.waslli-shop-toolbar__filter-btn {
	min-height: 44px;
	padding: 0 14px;
	border-radius: var(--waslli-btn-radius, 10px);
	background: var(--waslli-dark, #0C2340);
	color: #fff;
	font-size: 14px;
}
.waslli-sort-control__trigger {
	min-height: 44px;
	padding: 6px 12px;
	border: 1px solid var(--waslli-line, #DCE3ED);
	border-radius: var(--waslli-btn-radius, 10px);
	background: var(--waslli-white, #fff);
	box-shadow: none;
	color: var(--waslli-ink, #0F1B2D);
	font-size: 14px;
}
.waslli-sort-control__trigger:hover,
.waslli-sort-control.is-open .waslli-sort-control__trigger {
	border-color: var(--waslli-primary, #1D4E89);
	background: var(--waslli-white, #fff);
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--waslli-primary, #1D4E89) 14%, transparent);
}
.waslli-sort-control__arrow { background: var(--waslli-primary-soft, #EEF3FA); color: var(--waslli-primary, #1D4E89); }
.waslli-sort-control.is-open .waslli-sort-control__arrow { background: var(--waslli-primary, #1D4E89); color: #fff; }
.waslli-sort-control__option { min-height: 44px; color: var(--waslli-ink, #0F1B2D); font-size: 14px; }
.waslli-sort-control__option:hover,
.waslli-sort-control__option:focus-visible { background: var(--waslli-primary-soft, #EEF3FA); color: var(--waslli-dark, #0C2340); }
.waslli-sort-control__option.is-active { background: var(--waslli-dark, #0C2340); color: #fff; }
.waslli-sort-control__option::after { color: var(--waslli-primary, #1D4E89); }
@media (max-width: 640px) {
	html body .waslli-shop-toolbar {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		gap: 8px;
		padding: 0;
		margin: 0 0 12px;
		border: 0;
		background: transparent;
	}
	html body .waslli-shop-toolbar__filter-btn { order: 1; flex: 0 0 auto; padding: 0 14px; font-size: 14px; }
	html body.waslli-shop-v2 .waslli-shop-toolbar .woocommerce-ordering { order: 2; flex: 1 1 0; width: auto; min-width: 0; margin: 0; }
	html body.waslli-shop-v2 .woocommerce-ordering.waslli-sort-enhanced,
	html body .waslli-sort-control { width: 100%; min-width: 0; }
	html body .waslli-sort-control__trigger { min-height: 44px; font-size: 14px; }
	html body .waslli-shop-toolbar__count { order: 0; flex: 1 1 100%; text-align: start; font-size: 13px; }
	html body .waslli-filter-price input { font-size: 16px; min-height: 44px; }
}

/* Desktop: the sidebar holds the filters, so the toolbar is just the sort menu. */
@media (min-width: 901px) {
	.waslli-shop-toolbar { padding: 0; border: 0; background: transparent; justify-content: flex-end; }
}

.waslli-filter-price input { font-size: 15px; min-height: 44px; }
.waslli-filter-price label { font-size: 13px; }

/* Filter drawer: plain text labels now (no emoji). Apply is a secondary
 * action (gold stays for buying). */
.waslli-shop-filters .waslli-filter-apply {
	min-height: 44px;
	border-radius: var(--waslli-btn-radius, 10px);
	background: var(--waslli-dark, #0C2340);
	background-image: none;
	box-shadow: none;
	color: #fff !important;
	font-size: 14px;
}
.waslli-shop-filters .waslli-filter-apply:hover { background: var(--waslli-dark-deep, #081A30); filter: none; transform: none; color: #fff !important; }
.waslli-shop-filters .waslli-filter-reset { display: inline-flex; align-items: center; min-height: 44px; background: var(--waslli-bg, #F4F6FA); color: var(--waslli-muted, #5A6578); }
.waslli-shop-filters .waslli-filter-reset:hover { background: var(--waslli-line, #DCE3ED); color: var(--waslli-ink, #0F1B2D); }
/* Open accordion header: brand soft fill (the base sheet's is a green tint). */
.waslli-shop-filters .waslli-filter-group--accordion[open] > summary { background: var(--waslli-primary-soft, #EEF3FA); border-bottom-color: var(--waslli-line, #DCE3ED); }
/* Sort chevron: the same plain «⌄» as the filter accordions (no circle). */
.waslli-sort-control .waslli-sort-control__arrow,
.waslli-sort-control.is-open .waslli-sort-control__arrow {
	flex: 0 0 auto;
	width: auto;
	height: auto;
	border-radius: 0;
	background: transparent;
	color: var(--waslli-primary, #1D4E89);
	font-size: 20px;
}
.waslli-shop-filters__head h3 { font-size: 17px; color: var(--waslli-ink, #0F1B2D); }
.waslli-shop-filters__close { min-width: 44px; min-height: 44px; }

/* ---------------------------------------------------------------- Empty state + suggestions */
.waslli-shop-empty {
	margin: 8px 0 0;
	padding: 28px 20px !important;
	border: 1px solid var(--waslli-line, #DCE3ED);
	border-radius: var(--waslli-radius, 10px);
	background: var(--waslli-white, #fff);
	text-align: center;
}
.waslli-shop-empty__icon {
	display: inline-grid !important;
	place-items: center;
	width: 52px;
	height: 52px;
	margin: 0 auto 10px;
	border-radius: 50%;
	background: var(--waslli-primary-soft, #EEF3FA);
	color: var(--waslli-primary, #1D4E89);
	font-size: 0 !important;
}
.waslli-shop-empty__icon .waslli-icon { width: 24px; height: 24px; }
.waslli-shop-empty__title { margin: 0 0 6px; color: var(--waslli-ink, #0F1B2D); font-size: 20px; line-height: 1.5; overflow-wrap: anywhere; }
.waslli-shop-empty p { margin: 0 0 16px; color: var(--waslli-muted, #5A6578); font-size: 15px; }
.waslli-shop-empty .waslli-shop-empty__cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 0 20px;
	border-radius: var(--waslli-btn-radius, 10px);
	background: var(--waslli-dark, #0C2340);
	background-image: none;
	box-shadow: none;
	color: #fff;
	font-weight: 800;
	text-decoration: none;
}
.waslli-shop-empty .waslli-shop-empty__cta:hover { background: var(--waslli-dark-deep, #081A30); color: #fff; }
.waslli-shop-empty .waslli-shop-empty__link {
	display: flex;
	align-items: center;
	justify-content: center;
	width: fit-content;
	min-height: 44px;
	margin: 6px auto 0;
	padding: 0 8px;
	color: var(--waslli-primary, #1D4E89);
	font-weight: 700;
	text-decoration: none;
}
.waslli-shop-empty .waslli-shop-empty__link:hover { color: var(--waslli-primary-deep, #173F70); text-decoration: underline; }
/* Next to the filter sidebar the suggestions start right under the box. */
.waslli-shop-main .waslli-suggested { margin-top: 22px; }
.waslli-suggested { margin: 28px 0 8px; }
.waslli-suggested__title { margin: 0 0 14px; color: var(--waslli-ink, #0F1B2D); font-size: 22px; line-height: 1.4; }
@media (max-width: 640px) {
	.waslli-suggested { margin-top: 22px; }
	.waslli-suggested__title { font-size: 19px; }
}

/* ---------------------------------------------------------------- 404 */
.error404 #primary .waslli-404 { padding-block: 28px 40px !important; }
.waslli-404__intro { max-width: 640px; margin: 0 auto; text-align: center; }
.waslli-404__title { margin: 0 0 8px; color: var(--waslli-ink, #0F1B2D); font-size: 30px; line-height: 1.35; }
.waslli-404__text { margin: 0 0 18px; color: var(--waslli-muted, #5A6578); font-size: 16px; line-height: 1.8; }
.waslli-404__search {
	display: flex;
	gap: 8px;
	max-width: 520px;
	margin: 0 auto 10px;
}
.waslli-404__search input[type="search"] {
	flex: 1 1 auto;
	min-width: 0;
	min-height: 48px;
	padding: 0 14px;
	border: 1px solid var(--waslli-line, #DCE3ED);
	border-radius: var(--waslli-btn-radius, 10px);
	background: var(--waslli-white, #fff);
	color: var(--waslli-ink, #0F1B2D);
	font-size: 16px;
}
.waslli-404__search input[type="search"]:focus { border-color: var(--waslli-primary, #1D4E89); outline: 0; box-shadow: 0 0 0 3px color-mix(in srgb, var(--waslli-primary, #1D4E89) 18%, transparent); }
.waslli-404__search button {
	min-height: 48px;
	padding: 0 20px;
	border: 0;
	border-radius: var(--waslli-btn-radius, 10px);
	background: var(--waslli-dark, #0C2340);
	color: #fff;
	font-size: 15px;
	font-weight: 800;
	cursor: pointer;
}
.waslli-404__shop { display: inline-flex; align-items: center; min-height: 44px; color: var(--waslli-primary, #1D4E89); font-weight: 800; }
@media (max-width: 640px) {
	.error404 #primary .waslli-404 { padding-block: 20px 32px !important; }
	.waslli-404__title { font-size: 24px; }
	.waslli-404__text { font-size: 15px; }
}

/* ---------------------------------------------------------------- Footer */
.site-footer .footer-col .footer-cta {
	min-height: 44px;
	border: 1px solid transparent;
	background-image: none;
	box-shadow: none;
}
.site-footer .footer-col .footer-cta:hover { transform: none; filter: none; box-shadow: none; }
/* WhatsApp is the main support channel when it is set. */
.site-footer .footer-col .footer-cta--wa,
.site-footer .footer-col .footer-cta--wa:hover { background: #fff; color: var(--waslli-dark, #0C2340) !important; }
.site-footer .footer-col .footer-cta--ghost { background: transparent; border-color: rgb(255 255 255 / 40%); color: #fff !important; }
.site-footer .footer-col .footer-cta--ghost:hover { background: rgb(255 255 255 / 8%); border-color: #fff; color: #fff !important; }
.site-footer .footer-col .footer-email { display: inline-flex; align-items: center; min-height: 44px; color: #fff; font-weight: 700; text-decoration: none; overflow-wrap: anywhere; }
.site-footer .footer-col .footer-email:hover { text-decoration: underline; }
/* The base stylesheet reserves 62px under the footer for the mobile bottom
 * bar. No bar (no WhatsApp number) → no empty strip. Product, cart and
 * checkout keep it for their own sticky bars. */
@media (max-width: 900px) {
	body.waslli-no-mobile-cta:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout) { padding-bottom: 0; }
}
/* Tablet: the support buttons line up under their heading (start edge); the
 * base sheet centres them with !important up to 900px. */
@media (min-width: 641px) and (max-width: 1023px) {
	.site-footer .footer-col--contact .footer-cta { margin-inline: 0 !important; }
}
@media (max-width: 640px) {
	html body .site-footer .footer-col li { margin: 0 !important; }
	html body .site-footer .footer-col li a { display: flex; align-items: center; min-height: 40px; font-size: 13.5px; }
	/* Stack the support buttons full width (WhatsApp first). */
	html body .site-footer .footer-col--contact .footer-cta { grid-column: 1 / -1; }
}

/* ---------------------------------------------------------------- Motion */
@media (prefers-reduced-motion: reduce) {
	.products-tab-panel { animation: none !important; }
	.waslli-browse #primary ul.products li.product,
	.waslli-browse #primary ul.products li.product * { transition: none !important; }
}

/* Card: «توصيل مجاني» chip under the price (real free shipping only). */
.waslli-browse #primary ul.products li.product .waslli-card-ship,
ul.products li.product .waslli-card-ship {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	align-self: flex-start;
	margin: 4px 0 6px;
	padding: 3px 8px;
	border-radius: 999px;
	background: #EAF6EF;
	color: #0A6B3A;
	font-size: 12.5px;
	font-weight: 700;
	line-height: 1.5;
}
ul.products li.product .waslli-card-ship .waslli-icon { width: 14px; height: 14px; }
