/*
 * SHARPI – poprawki z audytu (10.2026)
 * Każda reguła działa tylko, gdy w Ustawienia → SHARPI poprawki dana poprawka
 * jest włączona (klasa body „sap-f-<nazwa>”). Selektory mają wyższą
 * specyficzność niż wcześniejsze warstwy (motyw, mu-plugins: przedrostek
 * „:not(#sap-x)” daje wagę identyfikatora) i !important,
 * bo te warstwy same ustawiają rozmiary z !important (np. sharpi-mobile-density-v1).
 */

/* ---------- price_gap: jeden odstęp między kwotą a „zł” ---------- */
html body:not(#sap-x).sap-f-price-gap .woocommerce-Price-amount .woocommerce-Price-currencySymbol {
	margin-left: 0 !important;
	padding-left: 0 !important;
}

/* ---------- currency_switcher: jeden przełącznik waluty ---------- */
html body:not(#sap-x).sap-f-currency-switcher #sharpi-header-switchers .woocommerce-currency-switcher-form,
html body:not(#sap-x).sap-f-currency-switcher #sharpi-header-switchers .dd-container {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
	clip-path: inset(50%) !important;
	white-space: nowrap !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

/* ---------- mobile_fonts: czytelność na telefonie ---------- */
@media (max-width: 768px) {
	html body:not(#sap-x).sap-f-mobile-fonts[class] .top-bar .top-bar-item,
	html body:not(#sap-x).sap-f-mobile-fonts[class] .top-bar .top-bar-item span {
		font-size: 12px !important;
	}
	html body:not(#sap-x).sap-f-mobile-fonts .sharpi-breadcrumbs .woocommerce-breadcrumb,
	html body:not(#sap-x).sap-f-mobile-fonts .sharpi-breadcrumbs .woocommerce-breadcrumb a,
	html body:not(#sap-x).sap-f-mobile-fonts .sharpi-breadcrumbs .woocommerce-breadcrumb span,
	html body:not(#sap-x).sap-f-mobile-fonts nav.woocommerce-breadcrumb.sharpi-breadcrumb,
	html body:not(#sap-x).sap-f-mobile-fonts nav.woocommerce-breadcrumb.sharpi-breadcrumb a,
	html body:not(#sap-x).sap-f-mobile-fonts nav.woocommerce-breadcrumb.sharpi-breadcrumb span {
		font-size: 12px !important;
	}
	html body:not(#sap-x).sap-f-mobile-fonts footer .footer-column li a {
		display: inline-block !important;
		font-size: 14px !important;
		padding: 8px 0 !important;
	}
	html body:not(#sap-x).sap-f-mobile-fonts footer .footer-column h3,
	html body:not(#sap-x).sap-f-mobile-fonts footer .footer-brands h3,
	html body:not(#sap-x).sap-f-mobile-fonts footer .footer-newsletter h4 {
		font-size: 13px !important;
	}
	html body:not(#sap-x).sap-f-mobile-fonts footer .footer-bottom p,
	html body:not(#sap-x).sap-f-mobile-fonts footer .footer-brands .sharpi-seo-distributor-label {
		font-size: 12px !important;
	}
}

@media (max-width: 600px) {
	/* Strona główna (sekcje v4) */
	html body:not(#sap-x).sap-f-mobile-fonts.home .sharpi-v4-home .sharpi-v4-eyebrow {
		font-size: 12px !important;
		letter-spacing: 0.08em !important;
	}
	html body:not(#sap-x).sap-f-mobile-fonts.home .sharpi-v4-home .sharpi-v4-button {
		font-size: 15px !important;
		min-height: 48px !important;
	}
	html body:not(#sap-x).sap-f-mobile-fonts.home .sharpi-v4-home .sharpi-v4-hero-points,
	html body:not(#sap-x).sap-f-mobile-fonts.home .sharpi-v4-home .sharpi-v4-hero-points li,
	html body:not(#sap-x).sap-f-mobile-fonts.home .sharpi-v4-home .sharpi-v4-hero-points span {
		font-size: 13px !important;
	}
	html body:not(#sap-x).sap-f-mobile-fonts.home .sharpi-v4-home .sharpi-v4-hero-note small {
		font-size: 11px !important;
	}
	html body:not(#sap-x).sap-f-mobile-fonts.home .sharpi-v4-home .sharpi-v4-hero-product-link {
		font-size: 13px !important;
		min-height: 44px !important;
	}
	html body:not(#sap-x).sap-f-mobile-fonts.home .sharpi-v4-home .sharpi-v4-category-card > span,
	html body:not(#sap-x).sap-f-mobile-fonts.home .sharpi-v4-home .sharpi-v4-path-card .sharpi-v4-path-number,
	html body:not(#sap-x).sap-f-mobile-fonts.home .sharpi-v4-home .sharpi-v4-why article > span {
		font-size: 12px !important;
	}
	html body:not(#sap-x).sap-f-mobile-fonts.home .sharpi-v4-home .sharpi-v4-category-card h3 {
		font-size: 16px !important;
	}
	html body:not(#sap-x).sap-f-mobile-fonts.home .sharpi-v4-home .sharpi-v4-category-card p,
	html body:not(#sap-x).sap-f-mobile-fonts.home .sharpi-v4-home .sharpi-v4-why article p,
	html body:not(#sap-x).sap-f-mobile-fonts.home .sharpi-v4-home .sharpi-v4-blog-body p {
		font-size: 13px !important;
		line-height: 1.45 !important;
	}
	html body:not(#sap-x).sap-f-mobile-fonts.home .sharpi-v4-home .sharpi-v4-category-card strong,
	html body:not(#sap-x).sap-f-mobile-fonts.home .sharpi-v4-home .sharpi-v4-path-card strong {
		font-size: 12px !important;
	}
	html body:not(#sap-x).sap-f-mobile-fonts.home .sharpi-v4-home .sharpi-v4-badge {
		font-size: 11px !important;
	}
	html body:not(#sap-x).sap-f-mobile-fonts.home .sharpi-v4-home .sharpi-v4-blog-body .sharpi-v4-blog-meta {
		font-size: 12px !important;
	}
	html body:not(#sap-x).sap-f-mobile-fonts.home .sharpi-v4-home .sharpi-v4-section-heading p {
		font-size: 14px !important;
	}
	html body:not(#sap-x).sap-f-mobile-fonts.home .sharpi-v4-home .sharpi-v4-section-heading .sharpi-v4-text-link {
		font-size: 13px !important;
		min-height: 44px !important;
		display: inline-flex !important;
		align-items: center !important;
	}
	html body:not(#sap-x).sap-f-mobile-fonts.home .sharpi-v4-home del .woocommerce-Price-amount {
		font-size: 12px !important;
	}

	/* Kategoria */
	html body:not(#sap-x).sap-f-mobile-fonts .sharpi-tiles .sharpi-tile .sharpi-tile__meta {
		font-size: 12px !important;
	}
	html body:not(#sap-x).sap-f-mobile-fonts .sharpi-tiles .sharpi-tile .sharpi-tile__name {
		font-size: 13px !important;
	}
	html body:not(#sap-x).sap-f-mobile-fonts .sharpi-cat-hero .sharpi-cat-hero__badges .sharpi-badge {
		font-size: 12px !important;
	}
	html body:not(#sap-x).sap-f-mobile-fonts .sharpi-cat-hero .sharpi-cat-hero__subtitle {
		font-size: 13px !important;
	}
	html body:not(#sap-x).sap-f-mobile-fonts .sharpi-cat-hero .sharpi-cat-hero__cta .sharpi-cta {
		font-size: 14px !important;
		min-height: 44px !important;
	}
	html body:not(#sap-x).sap-f-mobile-fonts .sharpi-cat-section .sharpi-chips .sharpi-chip {
		font-size: 13px !important;
	}
	html body:not(#sap-x).sap-f-mobile-fonts ul.products li.product .woocommerce-loop-product__title {
		font-size: 14px !important;
		line-height: 1.35 !important;
	}
	html body:not(#sap-x).sap-f-mobile-fonts ul.products li.product a.button {
		font-size: 14px !important;
		min-height: 44px !important;
	}
	html body:not(#sap-x).sap-f-mobile-fonts .sharpi-load-more .sharpi-load-more__button,
	html body:not(#sap-x).sap-f-mobile-fonts .sharpi-load-more .sharpi-load-more__all {
		font-size: 14px !important;
		min-height: 44px !important;
	}
	html body:not(#sap-x).sap-f-mobile-fonts .sharpi-buying-guide .sharpi-guide-kicker {
		font-size: 11px !important;
	}
	html body:not(#sap-x).sap-f-mobile-fonts .sharpi-buying-guide .sharpi-guide-lead,
	html body:not(#sap-x).sap-f-mobile-fonts .sharpi-cat-faq details summary,
	html body:not(#sap-x).sap-f-mobile-fonts .sharpi-cat-faq details p,
	html body:not(#sap-x).sap-f-mobile-fonts .sharpi-cat-faq .sharpi-cat-faq__heading p {
		font-size: 14px !important;
	}
	html body:not(#sap-x).sap-f-mobile-fonts .sharpi-guide-quick article,
	html body:not(#sap-x).sap-f-mobile-fonts .sharpi-guide-quick article strong {
		font-size: 13px !important;
	}
}

/* ---------- home_render: bez leniwego renderowania sekcji ---------- */
@media (max-width: 768px) {
	html body:not(#sap-x).sap-f-home-render.home main > section,
	html body:not(#sap-x).sap-f-home-render.home .site-main > section,
	html body:not(#sap-x).sap-f-home-render.home .sharpi-v4-home > section {
		content-visibility: visible !important;
		contain-intrinsic-size: none !important;
	}
}

/* ---------- category_mobile: kategoria na telefonie ---------- */
html body:not(#sap-x).sap-f-category-mobile .sharpi-toolbar:has(.woocommerce-notices-wrapper:empty):not(:has(select, form, .woocommerce-result-count)) {
	display: none !important;
}
@media (max-width: 600px) {
	html body:not(#sap-x).sap-f-category-mobile .sharpi-cat-hero .sharpi-cat-hero__media,
	html body:not(#sap-x).sap-f-category-mobile .sharpi-cat-hero .sharpi-cat-hero__badges {
		display: none !important;
	}
	html body:not(#sap-x).sap-f-category-mobile .sharpi-cat-section .sharpi-tiles {
		display: flex !important;
		flex-wrap: nowrap !important;
		overflow-x: auto !important;
		gap: 10px !important;
		scroll-snap-type: x proximity !important;
		padding: 2px 0 10px !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		-webkit-overflow-scrolling: touch !important;
	}
	html body:not(#sap-x).sap-f-category-mobile .sharpi-cat-section .sharpi-tiles .sharpi-tile {
		flex: 0 0 132px !important;
		min-height: 0 !important;
		scroll-snap-align: start !important;
	}
	html body:not(#sap-x).sap-f-category-mobile .sharpi-cat-section .sharpi-tiles .sharpi-tile img {
		max-height: 56px !important;
		width: auto !important;
	}
	html body:not(#sap-x).sap-f-category-mobile .sharpi-cat-section .sharpi-chips {
		flex-wrap: nowrap !important;
		overflow-x: auto !important;
		-webkit-overflow-scrolling: touch !important;
	}
	html body:not(#sap-x).sap-f-category-mobile .sharpi-cat-section .sharpi-chips .sharpi-chip {
		flex: 0 0 auto !important;
	}
	html body:not(#sap-x).sap-f-category-mobile .sharpi-cat-section {
		min-width: 0 !important;
		max-width: 100% !important;
	}
	html body:not(#sap-x).sap-f-category-mobile .sharpi-cat-section .sharpi-tiles,
	html body:not(#sap-x).sap-f-category-mobile .sharpi-cat-section .sharpi-chips {
		max-width: 100% !important;
		min-width: 0 !important;
	}
	html body:not(#sap-x).sap-f-category-mobile main.site-main > ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		width: auto !important;
		margin-left: 12px !important;
		margin-right: 12px !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
		box-sizing: border-box !important;
		column-gap: 10px !important;
	}
	html body:not(#sap-x).sap-f-category-mobile main.site-main > ul.products li.product a.button {
		height: auto !important;
		min-height: 44px !important;
		line-height: 1.2 !important;
		padding: 10px 8px !important;
		white-space: normal !important;
	}
	html body:not(#sap-x).sap-f-category-mobile .sharpi-filter-container {
		width: auto !important;
		max-width: none !important;
		margin-left: 12px !important;
		margin-right: 12px !important;
		box-sizing: border-box !important;
	}
}

/* ---------- grid_padding: siatka w kontenerze na komputerze ---------- */
@media (min-width: 601px) {
	html body:not(#sap-x).sap-f-grid-padding main.site-main > ul.products {
		max-width: 1240px !important;
		margin-left: auto !important;
		margin-right: auto !important;
		padding-left: 24px !important;
		padding-right: 24px !important;
		box-sizing: border-box !important;
	}
}

/* ---------- product_mobile: nazwa i cena wyżej na telefonie ---------- */
@media (max-width: 600px) {
	html body:not(#sap-x).sap-f-product-mobile.single-product .woocommerce-product-gallery .woocommerce-product-gallery__image img {
		max-height: 280px !important;
		width: auto !important;
		margin-left: auto !important;
		margin-right: auto !important;
		object-fit: contain !important;
	}
	html body:not(#sap-x).sap-f-product-mobile.single-product .woocommerce-product-gallery .flex-control-thumbs {
		flex-wrap: nowrap !important;
		overflow-x: auto !important;
		gap: 6px !important;
		margin-top: 8px !important;
	}
	html body:not(#sap-x).sap-f-product-mobile.single-product .woocommerce-product-gallery .flex-control-thumbs li {
		flex: 0 0 48px !important;
		width: 48px !important;
		height: 48px !important;
		margin: 0 !important;
	}
	html body:not(#sap-x).sap-f-product-mobile.single-product .sharpi-product-feature-strip {
		display: flex !important;
		flex-wrap: nowrap !important;
		overflow-x: auto !important;
		gap: 8px !important;
		padding-bottom: 4px !important;
	}
	html body:not(#sap-x).sap-f-product-mobile.single-product .sharpi-product-feature-strip .sharpi-product-feature {
		flex: 0 0 auto !important;
		min-width: 0 !important;
		padding: 8px 12px !important;
	}
	html body:not(#sap-x).sap-f-product-mobile.single-product .sharpi-product-feature-strip .sharpi-product-feature strong,
	html body:not(#sap-x).sap-f-product-mobile.single-product .sharpi-product-feature-strip .sharpi-product-feature small {
		font-size: 13px !important;
		white-space: nowrap !important;
	}
}

/* ---------- zoom_icon: lupa na zdjęciu, nie obok opisu ---------- */
html body:not(#sap-x).sap-f-zoom-icon.single-product .woocommerce-product-gallery {
	position: relative !important;
}
html body:not(#sap-x).sap-f-zoom-icon.single-product .woocommerce-product-gallery .woocommerce-product-gallery__trigger {
	position: absolute !important;
	top: 12px !important;
	right: 12px !important;
	left: auto !important;
	z-index: 9 !important;
}

/* ---------- floating_widgets: czat nie zasłania przycisków ---------- */
@media (max-width: 768px) {
	html body:not(#sap-x).sap-f-floating-widgets .listeo-floating-chat-widget {
		bottom: 96px !important;
		right: 12px !important;
	}
}

/* ---------- b2b_page: wstęp na /b2b/ ---------- */
html body:not(#sap-x).sap-f-b2b-page .sap-b2b-intro {
	display: flex;
	flex-wrap: wrap;
	gap: 16px 32px;
	align-items: center;
	justify-content: space-between;
	margin: 0 0 28px;
	padding: 22px 24px;
	border: 1px solid #e6dfd6;
	border-radius: 16px;
	background: #faf7f3;
	color: #1a1612;
}
html body:not(#sap-x).sap-f-b2b-page .sap-b2b-intro__text {
	flex: 1 1 420px;
	min-width: 0;
}
html body:not(#sap-x).sap-f-b2b-page .sap-b2b-intro__text p {
	margin: 0 0 6px;
	font-size: 15px;
	line-height: 1.55;
}
html body:not(#sap-x).sap-f-b2b-page .sap-b2b-intro__lead {
	font-size: 17px !important;
	font-weight: 700;
}
html body:not(#sap-x).sap-f-b2b-page .sap-b2b-intro__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: center;
}
html body:not(#sap-x).sap-f-b2b-page .sap-b2b-intro .sap-btn {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	padding: 0 18px;
	border-radius: 999px;
	border: 1px solid #c9bfb3;
	color: #1a1612;
	font-weight: 600;
	font-size: 15px;
	text-decoration: none;
	background: #fff;
}
html body:not(#sap-x).sap-f-b2b-page .sap-b2b-intro .sap-btn--primary {
	background: #f7941d;
	border-color: #f7941d;
	color: #1a1612;
}
html body:not(#sap-x).sap-f-b2b-page .sap-b2b-intro .sap-btn--link {
	border: 0;
	background: transparent;
	text-decoration: underline;
	padding: 0 6px;
}

/* ---------- reviews_notice ---------- */
html body:not(#sap-x).sap-f-reviews-notice .sap-reviews-notice {
	margin: 18px 0 0;
	font-size: 13px;
	line-height: 1.5;
	color: #6b6056;
}
