/**
 * MMA — archiwum sklepu (siatka, toolbar, karty jak „Polecane produkty”: klasy .mma-upsell-card* + CSS dosłownie ze szablonu produktu).
 * Wersja: 1.5.28 — mobile: paginacja (wyśrodkowanie, kwadraty, okno 5 stron JS), ceny PLN w jednej linii; wcześniej 1.5.27
 */

/* Brak poziomego scrolla na archiwum sklepu (sekcja kontaktowa 100vw + tytuł nowrap) */
body.mma-shop-no-sidebar {
	overflow-x: clip;
}

body.mma-shop-no-sidebar .szkolenia-content {
	overflow-x: clip;
	max-width: 100%;
}

/* === USUNIĘCIE NADPISANIA #primary / pełna szerokość === */
body.mma-shop-no-sidebar .woocommerce,
body.mma-shop-no-sidebar #primary,
body.mma-shop-no-sidebar .site-main,
body.mma-shop-no-sidebar .content-area,
body.mma-shop-no-sidebar .site-content,
body.mma-shop-no-sidebar #content {
	width: 100% !important;
	max-width: 100% !important;
	float: none !important;
	padding: 0 !important;
	overflow: visible !important;
	box-sizing: border-box !important;
}

body.mma-shop-no-sidebar #secondary,
body.mma-shop-no-sidebar .widget-area {
	display: none !important;
}

/* Wyrównanie z .container (mma-31192c): max-width 1210px, padding 20px — jak Szkolenia/Kontakt. */
.mma-shop-archive-root.container.w-container,
.mma-shop-archive-root {
	max-width: 1210px !important;
	margin: 0 auto !important;
	padding-left: 20px !important;
	padding-right: 20px !important;
	box-sizing: border-box !important;
	width: 100% !important;
	overflow: visible !important;
}

/* Tylko archiwum katalogu — na koncie `.mma-shop-archive-root` też jest na kontenerze strony. */
body.post-type-archive-product .mma-shop-archive-root .woocommerce-notices-wrapper,
body.post-type-archive-product .mma-shop-archive-root .wc-block-components-notice-banner,
body.post-type-archive-product .mma-shop-archive-root .woocommerce-message,
body.post-type-archive-product .mma-shop-archive-root .woocommerce-info,
body.tax-product_cat .mma-shop-archive-root .woocommerce-notices-wrapper,
body.tax-product_cat .mma-shop-archive-root .wc-block-components-notice-banner,
body.tax-product_cat .mma-shop-archive-root .woocommerce-message,
body.tax-product_cat .mma-shop-archive-root .woocommerce-info,
body.tax-product_tag .mma-shop-archive-root .woocommerce-notices-wrapper,
body.tax-product_tag .mma-shop-archive-root .wc-block-components-notice-banner,
body.tax-product_tag .mma-shop-archive-root .woocommerce-message,
body.tax-product_tag .mma-shop-archive-root .woocommerce-info {
	display: none !important;
}

@media (max-width: 768px) {
	.mma-shop-archive-root,
	.mma-shop-archive-root.container.w-container {
		padding-left: 16px !important;
		padding-right: 16px !important;
	}
}

.mma-shop-archive-layout {
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
	overflow: visible !important;
}

.szkolenia-content .container.mma-shop-archive-root .mma-shop-archive-layout {
	padding-top: 0;
	padding-bottom: 60px;
}

.szkolenia-content .mma-shop-archive-layout .produkty-sklep.mma-shop-archive-products {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	overflow: visible !important;
	box-sizing: border-box !important;
	padding-left: 0;
	padding-right: 0;
}

/* Okruszki + H1: mma_render_page_hero_parts + mma-cart.css (.mma-cart-bc-outer, .mma-cart-page-title). */

.kalendarz-subtitle.kategoria-subtitle,
.szkolenia-content .mma-shop-archive-layout .kalendarz-subtitle {
	display: none !important;
}

/* Kotwica po paginacji AJAX — scrollIntoView ma uwzględnić sticky header */
#mma-shop-archive-top {
	scroll-margin-top: 100px;
}
@media (max-width: 1100px) {
	#mma-shop-archive-top {
		scroll-margin-top: 72px;
	}
}

/* === TOOLBAR + MEGA MENU (jedna linia) === */
.mma-shop-toolbar {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 12px !important;
	margin-bottom: 24px !important;
	padding: 12px 0 !important;
	border-top: 1px solid #f5c518 !important;
	border-bottom: 1px solid #f5c518 !important;
	flex-wrap: wrap !important;
}

/* Desktop (jak breakpoint mobile toolbar 1100px): jedna linia — PRODUKTY + KATEGORIE + pigułki + szukanie */
@media (min-width: 1101px) {
	.mma-shop-toolbar {
		flex-wrap: nowrap !important;
	}
	.mma-shop-toolbar-left {
		flex-wrap: nowrap !important;
	}
	.mma-shop-toolbar .mma-shop-megamenu {
		flex-wrap: nowrap !important;
	}
	.mma-shop-pills {
		flex-wrap: nowrap !important;
	}
}

@media (max-width: 768px) {
	.mma-shop-toolbar {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
}

.mma-shop-toolbar-left {
	display: flex !important;
	align-items: center !important;
	gap: 8px !important;
	flex: 1 !important;
	min-width: 0 !important;
}

.mma-shop-toolbar-right {
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
	flex-shrink: 0 !important;
	flex: 0 1 auto !important;
	min-width: 0 !important;
}

/* === Wyszukiwarka w toolbarze (desktop) === */
.mma-shop-toolbar .mma-shop-search {
	display: flex !important;
	align-items: center !important;
	gap: 6px !important;
	min-width: 0 !important;
	background: #fff !important;
	border: 1.5px solid #e0e0e0 !important;
	border-radius: 8px !important;
	padding: 4px 8px 4px 10px !important;
	box-sizing: border-box !important;
}

/* Szerokość wyszukiwarki — po bloku bazowym, żeby nie nadpisać reguł z @media (min-width: 1101px) */
@media (min-width: 1101px) {
	.mma-shop-toolbar .mma-shop-search {
		flex: 0 0 220px !important;
		width: 220px !important;
		max-width: 220px !important;
	}
}
.mma-shop-toolbar .mma-shop-search:focus-within {
	border-color: #f5c518 !important;
	background: #fffbea !important;
}
.mma-shop-toolbar .mma-shop-search-icon {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	color: #666 !important;
	flex-shrink: 0 !important;
}
.mma-shop-toolbar .mma-shop-search-input {
	flex: 1 1 auto !important;
	width: 100% !important;
	min-width: 0 !important;
	border: none !important;
	background: transparent !important;
	font-family: 'Inter', sans-serif !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	color: #1a1a1a !important;
	outline: none !important;
	padding: 4px 0 !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
}
.mma-shop-toolbar .mma-shop-search-input::placeholder {
	color: #888 !important;
}
.mma-shop-toolbar .mma-shop-search-clear {
	border: none !important;
	background: transparent !important;
	color: #666 !important;
	font-size: 20px !important;
	line-height: 1 !important;
	cursor: pointer !important;
	padding: 0 4px !important;
	flex-shrink: 0 !important;
	border-radius: 4px !important;
}
.mma-shop-toolbar .mma-shop-search-clear:hover {
	color: #1a1a1a !important;
	background: #f5f5f5 !important;
}

.mma-shop-no-results {
	margin-top: 16px !important;
	margin-bottom: 16px !important;
}
.mma-shop-no-results .mma-shop-no-results-q {
	font-weight: 600 !important;
}

.mma-shop-toolbar .mma-shop-megamenu {
	display: flex !important;
	gap: 8px !important;
	flex-wrap: nowrap !important;
	position: relative !important;
	z-index: 100 !important;
	margin: 0 !important;
}

.mma-shop-toolbar .mma-megamenu-trigger {
	padding: 8px 14px !important;
	font-size: 12px !important;
}

.mma-megamenu-item {
	position: relative !important;
}

.mma-megamenu-trigger {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	padding: 10px 18px !important;
	background: #fff !important;
	border: 1.5px solid #e0e0e0 !important;
	border-radius: 8px !important;
	font-family: 'Montserrat', sans-serif !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	color: #1a1a1a !important;
	cursor: pointer !important;
	transition: all 0.15s !important;
	white-space: nowrap !important;
	text-transform: uppercase !important;
	letter-spacing: 0.5px !important;
}

.mma-megamenu-trigger:hover,
.mma-megamenu-item.is-open .mma-megamenu-trigger {
	border-color: #f5c518 !important;
	background: #fffbea !important;
}

.mma-active-label {
	font-weight: 400 !important;
	color: #888 !important;
	font-size: 12px !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
}

.mma-chevron {
	transition: transform 0.2s !important;
	flex-shrink: 0 !important;
}

.mma-megamenu-item.is-open .mma-chevron {
	transform: rotate(180deg) !important;
}

.mma-megamenu-dropdown {
	display: none !important;
	position: absolute !important;
	top: calc(100% + 6px) !important;
	left: 0 !important;
	min-width: 200px !important;
	background: #fff !important;
	border: 1px solid #e0e0e0 !important;
	border-radius: 12px !important;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1) !important;
	padding: 8px !important;
	z-index: 200 !important;
	max-height: 320px !important;
	overflow-y: auto !important;
}

.mma-megamenu-item.is-open .mma-megamenu-dropdown {
	display: block !important;
}

.mma-megamenu-link {
	display: block !important;
	padding: 9px 14px !important;
	font-family: 'Montserrat', sans-serif !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	color: #333 !important;
	text-decoration: none !important;
	border-radius: 6px !important;
	transition: all 0.12s !important;
	white-space: nowrap !important;
}

.mma-megamenu-link:hover {
	background: #f9f9f9 !important;
	color: #1a1a1a !important;
}

.mma-megamenu-link.is-active {
	background: none !important;
	color: #f5c518 !important;
	font-weight: 700 !important;
}

/* === MEGA PANEL "PRODUKTY" === */
.mma-produkty-wrap {
	position: relative !important;
}

.mma-shop-toolbar .mma-produkty-trigger {
	padding: 8px 14px !important;
	font-size: 12px !important;
}

.mma-produkty-panel {
	display: none !important;
	position: absolute !important;
	left: 0 !important;
	right: auto !important;
	transform: none !important;
	background: #fff !important;
	border: 1px solid #e0e0e0 !important;
	border-radius: 16px !important;
	box-shadow: 0 16px 48px rgba(0, 0, 0, 0.12) !important;
	padding: 12px 24px 24px 24px !important;
	margin-top: -4px !important;
	z-index: 300 !important;
	width: calc(100vw - 48px) !important;
	max-width: min(1480px, calc(100vw - 48px)) !important;
	min-width: auto !important;
}

/* Desktop: wyśrodkowanie względem viewport (top w px ustawia JS — nadpisuje fallback poniżej) */
@media (min-width: 1101px) {
	.mma-produkty-wrap.is-open .mma-produkty-panel {
		position: fixed !important;
		left: 50% !important;
		right: auto !important;
		transform: translateX(-50%) !important;
		margin-top: 0 !important;
		top: 96px;
	}
}

.mma-produkty-wrap.is-open .mma-produkty-panel {
	display: block !important;
}

.mma-produkty-wrap.is-open .mma-produkty-trigger {
	border-color: #f5c518 !important;
	background: #fffbea !important;
}

.mma-produkty-wrap.is-open .mma-produkty-trigger .mma-chevron {
	transform: rotate(180deg) !important;
}

.mma-produkty-columns {
	display: flex !important;
	flex-wrap: nowrap !important;
	align-items: flex-start !important;
	gap: 12px !important;
}

.mma-produkty-col {
	flex: 1 1 0 !important;
	min-width: 0 !important;
	max-width: 100% !important;
	padding: 0 14px !important;
	border-right: 1px solid #f0f0f0 !important;
	box-sizing: border-box !important;
}

.mma-produkty-col:first-child {
	padding-left: 0 !important;
}

.mma-produkty-col:last-child {
	border-right: none !important;
	padding-right: 0 !important;
}

.mma-produkty-col-header {
	font-family: 'Montserrat', sans-serif !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	color: #999 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.8px !important;
	margin-bottom: 12px !important;
	padding-bottom: 8px !important;
	border-bottom: 2px solid #f5c518 !important;
	line-height: 1.3 !important;
	word-break: break-word !important;
	overflow-wrap: break-word !important;
}

.mma-produkty-link {
	display: block !important;
	padding: 6px 0 !important;
	font-family: 'Montserrat', sans-serif !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	color: #333 !important;
	text-decoration: none !important;
	transition: color 0.12s !important;
	white-space: normal !important;
	line-height: 1.35 !important;
	word-break: break-word !important;
	overflow-wrap: break-word !important;
	hyphens: auto !important;
}

/* Desktop: jedna linia na link + nagłówek bez łamania w środku kolumny */
@media (min-width: 1101px) {
	.mma-produkty-wrap.is-open .mma-produkty-panel .mma-produkty-link {
		white-space: nowrap !important;
		word-break: normal !important;
		overflow-wrap: normal !important;
		hyphens: manual !important;
	}

	.mma-produkty-wrap.is-open .mma-produkty-panel .mma-produkty-col-header {
		white-space: nowrap !important;
		word-break: normal !important;
		overflow-wrap: normal !important;
	}
}

.mma-produkty-link:hover {
	color: #f5c518 !important;
}

.mma-produkty-link.is-active {
	background: transparent !important;
	background-color: transparent !important;
	color: #f5c518 !important;
	font-weight: 700 !important;
}

@media (max-width: 1100px) {
	.mma-produkty-panel {
		position: absolute !important;
		left: 0 !important;
		right: auto !important;
		transform: none !important;
		top: calc(100% + 8px) !important;
		width: auto !important;
		max-width: min(100vw - 32px, 1120px) !important;
		min-width: 260px !important;
		max-height: 60vh !important;
		overflow-y: auto !important;
		padding: 12px !important;
		margin-top: 0 !important;
	}

	.mma-produkty-columns {
		flex-direction: column !important;
		gap: 0 !important;
	}

	.mma-produkty-col {
		min-width: 0 !important;
		padding: 0 !important;
		border-right: none !important;
		border-bottom: 1px solid #f5f5f5 !important;
		padding-bottom: 8px !important;
		margin-bottom: 8px !important;
	}

	.mma-produkty-col:last-child {
		border-bottom: none !important;
		margin-bottom: 0 !important;
	}

	.mma-produkty-col-header {
		font-size: 10px !important;
		margin-bottom: 6px !important;
		padding-bottom: 4px !important;
	}

	.mma-produkty-link {
		padding: 7px 8px !important;
		border-radius: 6px !important;
	}

	.mma-produkty-link:hover {
		background: #f9f9f9 !important;
		color: #1a1a1a !important;
	}
}

.mma-shop-pills {
	display: flex !important;
	align-items: center !important;
	gap: 8px !important;
	margin-left: 12px !important;
}

.mma-shop-pill {
	display: inline-flex !important;
	align-items: center !important;
	padding: 8px 16px !important;
	border-radius: 20px !important;
	background: #f0f0f0 !important;
	color: #1a1a1a !important;
	font-family: 'Montserrat', sans-serif !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	transition: all 0.2s ease !important;
	white-space: nowrap !important;
	border: none !important;
}

.mma-shop-pill:hover {
	background: #e0e0e0 !important;
	color: #1a1a1a !important;
	text-decoration: none !important;
}

.mma-shop-pill.is-active {
	background: #f5c518 !important;
	color: #1a1a1a !important;
}

.mma-shop-pills .mma-shop-pill.is-active,
.mma-toolbar-mobile-pills .mma-shop-pill.is-active {
	background: #f5c518 !important;
	color: #1a1a1a !important;
}

@media (max-width: 768px) {
	.mma-shop-pills {
		gap: 6px !important;
		margin-left: 8px !important;
	}

	.mma-shop-pill {
		padding: 6px 12px !important;
		font-size: 12px !important;
	}
}

.mma-cart-modal-overlay {
	display: none;
	position: fixed;
	inset: 0;
	background: rgba(0, 0, 0, 0.55);
	z-index: 99999;
	align-items: center;
	justify-content: center;
	padding: 20px;
	box-sizing: border-box;
}

.mma-cart-modal-overlay.active {
	display: flex;
}

.mma-cart-modal {
	background: #fff;
	border-radius: 20px;
	padding: 40px 32px;
	max-width: 480px;
	width: 100%;
	text-align: center;
	box-shadow: 0 20px 60px rgba(0, 0, 0, 0.2);
	position: relative;
}

.mma-cart-modal-icon {
	width: 64px;
	height: 64px;
	border-radius: 50%;
	background: #e8f5e9;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto 20px auto;
}

.mma-cart-modal-icon svg {
	width: 32px;
	height: 32px;
	stroke: #2e7d32;
}

.mma-cart-modal h3 {
	font-family: 'Montserrat', sans-serif;
	font-size: 22px;
	font-weight: 700;
	color: #1a1a1a;
	margin: 0 0 12px 0;
	text-transform: uppercase;
}

.mma-cart-modal p {
	font-family: 'Inter', sans-serif;
	font-size: 15px;
	color: #555;
	margin: 0 0 28px 0;
	line-height: 1.6;
}

.mma-cart-modal-buttons {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.mma-cart-modal-btn {
	display: block;
	width: 100%;
	padding: 16px 24px;
	border-radius: 50px;
	font-family: 'Inter', sans-serif;
	font-size: 16px;
	font-weight: 600;
	text-align: center;
	cursor: pointer;
	border: none;
	text-decoration: none;
	transition: all 0.2s ease;
	box-sizing: border-box;
}

.mma-cart-modal-btn.primary {
	background: #f5c518;
	color: #1a1a1a;
}

.mma-cart-modal-btn.primary:hover {
	background: #e6b800;
}

.mma-cart-modal-btn.secondary {
	background: #f5f5f5;
	color: #555;
}

.mma-cart-modal-btn.secondary:hover {
	background: #ebebeb;
}

/*
 * P2 (mma-cart v1.9.4, 2026-04-28): natychmiastowy stan ładowania na
 * przycisku „Przejdź do koszyka" / „Dodaj do koszyka". Klik dodaje klasę
 * `.loading` PRZED natywną nawigacją — spinner + przyciemnienie pojawiają
 * się natychmiast (page-load /koszyk/ leci równolegle w tle). Klient zgłosił
 * że wcześniejsze wolne przejście do koszyka dawało wrażenie zawieszenia.
 */
.mma-cart-modal-btn.loading {
	pointer-events: none;
	opacity: 0.7;
	position: relative;
	color: transparent !important;
}

.mma-cart-modal-btn.loading::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 18px;
	height: 18px;
	margin: -9px 0 0 -9px;
	border: 2px solid currentColor;
	border-top-color: transparent;
	border-radius: 50%;
	animation: mma-cart-modal-spin 0.7s linear infinite;
	color: #1a1a1a;
}

@keyframes mma-cart-modal-spin {
	to { transform: rotate(360deg); }
}

.mma-shop-toolbar-views {
	display: flex !important;
	gap: 4px !important;
	background: #f5f5f5 !important;
	border-radius: 8px !important;
	padding: 4px !important;
}

.mma-shop-view-btn {
	width: 36px !important;
	height: 36px !important;
	border: none !important;
	background: transparent !important;
	border-radius: 6px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	cursor: pointer !important;
	color: #888 !important;
	transition: all 0.15s !important;
	padding: 0 !important;
	box-sizing: border-box !important;
}

.mma-shop-view-btn.active,
.mma-shop-view-btn:hover {
	background: #fff !important;
	color: #1a1a1a !important;
	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1) !important;
}

/* Tylko katalog sklepu — na „Moje konto” używane jest `mma-panel-sort-dropdown` (inne pozycjonowanie / portal). */
.mma-sort-dropdown:not(.mma-panel-sort-dropdown) {
	position: relative !important;
}

/* Tekstowy trigger (desktop); ikonowy osobno */
.mma-sort-dropdown:not(.mma-panel-sort-dropdown) .mma-sort-trigger:not(.mma-sort-trigger--icon) {
	display: flex !important;
	align-items: center !important;
	gap: 8px !important;
	padding: 10px 16px !important;
	background: #fff !important;
	border: 1.5px solid #e0e0e0 !important;
	border-radius: 8px !important;
	font-family: 'Montserrat', sans-serif !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	color: #1a1a1a !important;
	cursor: pointer !important;
	white-space: nowrap !important;
	min-width: 180px !important;
	justify-content: space-between !important;
	transition: border-color 0.2s !important;
}

.mma-sort-dropdown:not(.mma-panel-sort-dropdown) .mma-sort-trigger.mma-sort-trigger--icon {
	display: none !important;
}

.mma-sort-dropdown:not(.mma-panel-sort-dropdown) .mma-sort-trigger:not(.mma-sort-trigger--icon):hover,
.mma-sort-dropdown:not(.mma-panel-sort-dropdown).is-open .mma-sort-trigger:not(.mma-sort-trigger--icon) {
	border-color: #f5c518 !important;
}

.mma-sort-dropdown:not(.mma-panel-sort-dropdown).is-open .mma-sort-trigger:not(.mma-sort-trigger--icon) .mma-chevron {
	transform: rotate(180deg) !important;
}

@media (max-width: 768px) {
	.mma-sort-dropdown:not(.mma-panel-sort-dropdown) .mma-sort-trigger:not(.mma-sort-trigger--icon) {
		display: none !important;
	}
	.mma-sort-dropdown:not(.mma-panel-sort-dropdown) .mma-sort-trigger.mma-sort-trigger--icon {
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		min-width: 0 !important;
		width: 44px !important;
		height: 44px !important;
		padding: 0 !important;
		box-sizing: border-box !important;
	}
}

.mma-sort-dropdown:not(.mma-panel-sort-dropdown) .mma-sort-panel {
	display: none !important;
	position: absolute !important;
	top: calc(100% + 6px) !important;
	right: 0 !important;
	min-width: 200px !important;
	background: #fff !important;
	border: 1px solid #e0e0e0 !important;
	border-radius: 12px !important;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1) !important;
	padding: 8px !important;
	z-index: 200 !important;
}

.mma-sort-dropdown:not(.mma-panel-sort-dropdown).is-open .mma-sort-panel {
	display: block !important;
}

.mma-sort-dropdown:not(.mma-panel-sort-dropdown) .mma-sort-option {
	display: block !important;
	width: 100% !important;
	text-align: left !important;
	padding: 9px 14px !important;
	background: none !important;
	border: none !important;
	border-radius: 8px !important;
	font-family: 'Montserrat', sans-serif !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	color: #1a1a1a !important;
	cursor: pointer !important;
	transition: background 0.15s !important;
}

.mma-sort-dropdown:not(.mma-panel-sort-dropdown) .mma-sort-option:hover {
	background: #f9f9f9 !important;
}

.mma-sort-dropdown:not(.mma-panel-sort-dropdown) .mma-sort-option.is-active {
	background: #f5c518 !important;
	font-weight: 700 !important;
}

#mma-shop-ajax-products[aria-busy="true"] {
	position: relative !important;
	opacity: 0.5 !important;
	pointer-events: none !important;
	min-height: 200px !important;
}

#mma-shop-ajax-products[aria-busy="true"]::after {
	content: '' !important;
	position: absolute !important;
	top: 80px !important;
	left: 50% !important;
	width: 40px !important;
	height: 40px !important;
	margin-left: -20px !important;
	border: 3px solid #e5e5e5 !important;
	border-top-color: #fec009 !important;
	border-radius: 50% !important;
	animation: mma-shop-spin 0.8s linear infinite !important;
}

@keyframes mma-shop-spin {
	to {
		transform: rotate(360deg);
	}
}

.mma-shop-sort-select {
	height: 44px !important;
	padding: 0 40px 0 16px !important;
	border: 1px solid #e0e0e0 !important;
	border-radius: 8px !important;
	font-family: 'Montserrat', sans-serif !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	color: #1a1a1a !important;
	background-color: #fff !important;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M3 4.5L6 7.5L9 4.5' stroke='%231a1a1a' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important;
	background-position: right 14px center !important;
	background-size: 12px 12px !important;
	cursor: pointer !important;
	-moz-appearance: none !important;
	-webkit-appearance: none !important;
	appearance: none !important;
	min-width: 200px !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
}

/* === NOWOŚCI === */
.mma-shop-nowosci {
	background: #f9f9f9 !important;
	margin-left: -32px !important;
	margin-right: -32px !important;
	padding: 28px 32px !important;
	border-top: none !important;
	margin-bottom: 28px !important;
}

@media (max-width: 768px) {
	.mma-shop-nowosci {
		margin-left: -16px !important;
		margin-right: -16px !important;
		padding: 20px 16px !important;
	}
}

.mma-shop-nowosci-title {
	font-family: 'Montserrat', sans-serif !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	color: #1a1a1a !important;
	text-transform: uppercase !important;
	margin: 0 0 16px 0 !important;
	letter-spacing: 0.5px !important;
}

.mma-nowosci-carousel-wrapper {
	position: relative !important;
	display: flex !important;
	align-items: center !important;
	padding: 0 50px !important;
}

.mma-nowosci-track-wrap {
	width: 100% !important;
	overflow: hidden !important;
}

.mma-nowosci-track {
	display: flex !important;
	gap: 20px !important;
	transition: transform 0.35s ease !important;
}

/* Szerokość slajdu — jak .mma-upsell-card w karuzeli produktu (KROK 4) */
.mma-nowosci-track .mma-nowosci-card.mma-upsell-card {
	flex: 0 0 calc((100% - 40px) / 3) !important;
	min-width: 0 !important;
}

@media (max-width: 900px) {
	.mma-nowosci-track .mma-nowosci-card.mma-upsell-card {
		flex: 0 0 calc((100% - 14px) / 2) !important;
	}
}

@media (max-width: 768px) {
	.mma-nowosci-track .mma-nowosci-card.mma-upsell-card {
		flex: 0 0 100% !important;
	}
}

.mma-nowosci-nav {
	position: absolute !important;
	top: 50% !important;
	transform: translateY(-50%) !important;
	width: 40px !important;
	height: 40px !important;
	border-radius: 50% !important;
	background: #fff !important;
	border: 1px solid #e0e0e0 !important;
	cursor: pointer !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	transition: all 0.25s ease !important;
	z-index: 10 !important;
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.1) !important;
}

.mma-nowosci-prev {
	left: 0 !important;
}

.mma-nowosci-next {
	right: 0 !important;
}

.mma-nowosci-nav:hover {
	background: #f5c518 !important;
	border-color: #f5c518 !important;
	box-shadow: 0 4px 16px rgba(245, 197, 24, 0.35) !important;
}

.mma-nowosci-nav svg {
	width: 16px !important;
	height: 16px !important;
	stroke: #1a1a1a !important;
	stroke-width: 2 !important;
	fill: none !important;
}

@media (max-width: 900px) {
	.mma-nowosci-nav,
	.mma-filters-nav {
		width: 36px !important;
		height: 36px !important;
	}

	.mma-nowosci-nav svg,
	.mma-filters-nav svg {
		width: 14px !important;
		height: 14px !important;
	}
}

@media (max-width: 700px) {
	.mma-nowosci-nav,
	.mma-filters-nav {
		width: 34px !important;
		height: 34px !important;
	}

	.mma-nowosci-nav svg,
	.mma-filters-nav svg {
		width: 12px !important;
		height: 12px !important;
	}
}

@media (max-width: 480px) {
	.mma-nowosci-nav,
	.mma-filters-nav {
		width: 30px !important;
		height: 30px !important;
	}

	.mma-nowosci-nav svg,
	.mma-filters-nav svg {
		width: 12px !important;
		height: 12px !important;
	}
}

/* === GRID ARCHIWUM SKLEPU === */
body .mma-shop-archive-products ul.products.mma-shop-grid {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 24px !important;
	list-style: none !important;
	padding: 0 !important;
	margin: 0 !important;
	width: 100% !important;
	box-sizing: border-box !important;
	overflow: visible !important;
}

/* WooCommerce clearfix ::before/::after na ul.products — w Grid tworzą anonimowe komórki (puste sloty). */
body .mma-shop-archive-products ul.products.mma-shop-grid::before,
body .mma-shop-archive-products ul.products.mma-shop-grid::after {
	display: none !important;
	content: none !important;
}

@media (max-width: 1024px) {
	body .mma-shop-archive-products ul.products.mma-shop-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 20px !important;
	}
}

@media (max-width: 600px) {
	body .mma-shop-archive-products ul.products.mma-shop-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 12px !important;
	}
}

body.mma-shop-no-sidebar ul.products.mma-shop-grid li.product {
	float: none !important;
	clear: none !important;
	margin: 0 !important;
	width: auto !important;
	max-width: none !important;
}

/* ========================================================
   KARTY — CSS dosłownie z template-parts/product/content-single-product-mma.php
   (linie .mma-upsell-card … .mma-upsell-add-btn.adding + RESPONSYWNOŚĆ UPSELLING v3)
   ======================================================== */

/* WRAPPER li w gridzie sklepu */
body .mma-shop-archive-products ul.products.mma-shop-grid > li.mma-shop-card-wrap {
	min-width: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	float: none !important;
	width: auto !important;
	box-sizing: border-box !important;
}

/* Karta produktu — SZERSZA I NIŻSZA */
.mma-upsell-card {
    flex: 0 0 calc((100% - 40px) / 3);
    min-width: 0;
    scroll-snap-align: start;
    background: #fff;
    border-radius: 12px;
    border: 1px solid #eee;
    overflow: hidden;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    display: flex;
    flex-direction: column;
    text-decoration: none;
    color: inherit;
}

.mma-upsell-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 28px rgba(0,0,0,0.08);
    border-color: #e0e0e0;
}

/* Zdjęcie produktu — CONTAIN + BIAŁE TŁO pod mniejszymi zdjęciami */
.mma-upsell-card-image {
    position: relative;
    aspect-ratio: 16 / 9;
    background: #fff;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
}

.mma-upsell-card-image img {
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
    object-fit: contain;
    transition: transform 0.4s ease;
}

.mma-upsell-card:hover .mma-upsell-card-image img {
    transform: scale(1.03);
}

/* Informacje o produkcie — kompaktowe */
.mma-upsell-card-info {
    padding: 14px 16px 16px 16px;
    display: flex;
    flex-direction: column;
    flex: 1;
}

/* Tytuł */
.mma-upsell-card-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    font-weight: 600;
    color: #1a1a1a;
    margin: 0 0 8px 0;
    line-height: 1.35;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: 38px;
    text-align: center;
    text-decoration: none !important;
    transition: color 0.2s ease;
}

.mma-upsell-card-title:hover {
    color: #f5c518;
    text-decoration: none !important;
}

/* Cena — jeden wiersz (grid), stała wysokość bloku */
.mma-upsell-card-price {
    font-family: 'Inter', sans-serif;
    font-size: 20px;
    font-weight: 700;
    color: #1a1a1a;
    margin: 4px 0 12px 0;
    min-height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    flex-wrap: nowrap;
    box-sizing: border-box;
}

.mma-upsell-card-price .currency {
    font-size: 13px;
    font-weight: 500;
    color: #666;
    margin-left: 3px;
}

.mma-upsell-card-price del {
    display: inline;
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    font-weight: 400;
    color: #666;
    text-decoration: line-through;
    white-space: nowrap;
}

.mma-upsell-card-price del .currency {
    font-size: 13px;
    font-weight: 500;
    color: #666;
    margin-left: 3px;
}

.mma-upsell-card-price .mma-price-sale {
    display: inline-flex;
    align-items: baseline;
    gap: 4px;
    color: #e53e3e;
    font-size: 1em;
    font-weight: 700;
    white-space: nowrap;
}

.mma-upsell-card-price .mma-price-sale .currency {
    font-size: 13px;
    font-weight: 500;
    color: #e53e3e;
    margin-left: 0;
}

.mma-upsell-card-price .mma-upsell-promo-badge {
    display: inline-block;
    background: #e53e3e;
    color: #fff;
    font-family: 'Montserrat', sans-serif;
    font-size: 10px;
    font-weight: 700;
    padding: 2px 7px;
    border-radius: 4px;
    white-space: nowrap;
    align-self: center;
    flex-shrink: 0;
    margin: 0;
    line-height: 1.2;
}

/* Jedna linia: przekreślona + promocyjna (desktop); na mobile kolumna + badge nad — w media query */
.mma-upsell-card-price-duo {
	display: inline-flex;
	align-items: baseline;
	justify-content: center;
	flex-wrap: nowrap;
	gap: 6px;
	max-width: 100%;
	min-width: 0;
}

.mma-upsell-card-price-duo del,
.mma-upsell-card-price-duo .mma-price-sale {
	white-space: nowrap;
}

.mma-upsell-card-price-plain {
	white-space: nowrap;
	display: inline-block;
	max-width: 100%;
}

/* Przycisk dodaj do koszyka */
.mma-upsell-add-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    width: 100%;
    padding: 10px 14px;
    background: #f5c518;
    border: none;
    border-radius: 8px;
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    font-weight: 600;
    color: #1a1a1a;
    cursor: pointer;
    transition: all 0.25s ease;
    margin-top: auto;
}

.mma-upsell-add-btn:hover {
    background: #e6b800;
    transform: translateY(-1px);
}

.mma-upsell-add-btn svg {
    width: 13px;
    height: 13px;
    fill: currentColor;
}

.mma-upsell-add-btn.adding {
    opacity: 0.7;
    pointer-events: none;
}

/* ═══ RESPONSYWNOŚĆ UPSELLING v3 ═══ */

@media (max-width: 1100px) {
    .mma-upsell-container {
        padding: 0 36px;
    }
    
    .mma-upsell-carousel {
        padding: 0 46px;
    }
    
    .mma-upsell-track {
        gap: 16px;
    }
    
    .mma-upsell-card {
        flex: 0 0 calc((100% - 32px) / 3);
    }
}

@media (max-width: 900px) {
    .mma-upsell-container {
        padding: 0 30px;
    }
    
    .mma-upsell-carousel {
        padding: 0 44px;
    }
    
    .mma-upsell-track {
        gap: 14px;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        scrollbar-width: none;
        -ms-overflow-style: none;
    }
    
    .mma-upsell-track::-webkit-scrollbar {
        display: none;
    }
    
    .mma-upsell-card {
        flex: 0 0 calc((100% - 14px) / 2);
    }
    
    .mma-upsell-card-info {
        padding: 12px 14px 14px 14px;
    }
    
    .mma-upsell-card-title {
        font-size: 13px;
        min-height: 35px;
    }
    
    .mma-upsell-card-price {
        font-size: 18px;
    }
    
    .mma-upsell-nav-btn {
        width: 36px;
        height: 36px;
    }
    
    .mma-upsell-nav-btn svg {
        width: 14px;
        height: 14px;
    }
}

@media (max-width: 700px) {
    .mma-upsell-section {
        padding: 24px 0 32px 0;
    }
    
    .mma-upsell-related {
        padding-top: 12px;
    }
    
    .mma-upsell-recommended {
        padding-top: 28px;
        margin-top: 16px;
    }
    
    .mma-upsell-container {
        padding: 0 16px;
    }
    
    .mma-upsell-carousel {
        padding: 0 40px;
    }
    
    .mma-upsell-title {
        font-size: 18px;
        margin-bottom: 16px;
    }
    
    /* 1 PEŁNA KARTA NA MOBILE */
    .mma-upsell-card {
        flex: 0 0 100%;
    }
    
    .mma-upsell-track {
        gap: 0;
        scroll-snap-type: x mandatory;
    }
    
    .mma-upsell-card-image {
        aspect-ratio: 16 / 9;
    }
    
    .mma-upsell-card-info {
        padding: 14px 16px 16px 16px;
    }
    
    .mma-upsell-card-title {
        font-size: 15px;
        min-height: 40px;
        margin-bottom: 6px;
    }
    
    .mma-upsell-card-price {
        font-size: 22px;
        margin: 4px 0 12px 0;
    }
    
    .mma-upsell-card-price .currency {
        font-size: 13px;
    }
    
    .mma-upsell-add-btn {
        padding: 12px 16px;
        font-size: 13px;
        border-radius: 8px;
    }
    
    .mma-upsell-add-btn svg {
        width: 14px;
        height: 14px;
    }
    
    .mma-upsell-nav-btn {
        width: 34px;
        height: 34px;
    }
    
    .mma-upsell-nav-btn svg {
        width: 14px;
        height: 14px;
    }
}

@media (max-width: 480px) {
    .mma-upsell-section {
        padding: 20px 0 28px 0;
    }
    
    .mma-upsell-related {
        padding-top: 10px;
    }
    
    .mma-upsell-recommended {
        padding-top: 24px;
        margin-top: 12px;
    }
    
    .mma-upsell-container {
        padding: 0 12px;
    }
    
    .mma-upsell-carousel {
        padding: 0 36px;
    }
    
    .mma-upsell-title {
        font-size: 16px;
        margin-bottom: 14px;
    }
    
    .mma-upsell-card-title {
        font-size: 14px;
        min-height: 38px;
    }
    
    .mma-upsell-card-price {
        font-size: 20px;
    }
    
    .mma-upsell-add-btn {
        padding: 11px 14px;
        font-size: 12px;
    }
    
    .mma-upsell-nav-btn {
        width: 30px;
        height: 30px;
    }
    
    .mma-upsell-nav-btn svg {
        width: 12px;
        height: 12px;
    }
}

/* Nadpisanie flex w gridzie archiwum (jedyna dozwolona modyfikacja reguły karty) */
ul.products.mma-shop-grid li.mma-shop-card-wrap .mma-upsell-card {
    flex: 1 1 auto;
    width: 100%;
    min-width: 0;
}

/* WooCommerce: symbol waluty jak .currency w źródle */
.mma-upsell-card-price .woocommerce-Price-currencySymbol {
    font-size: 13px;
    font-weight: 500;
    color: #666;
    margin-left: 3px;
}

a.mma-upsell-add-btn {
	text-decoration: none;
	box-sizing: border-box;
}

/* WIDOK LISTA — archiwum */
body .mma-shop-archive-products ul.products.mma-shop-grid.mma-view-list {
	grid-template-columns: 1fr !important;
	gap: 10px !important;
}

body .mma-shop-archive-products ul.products.mma-shop-grid.mma-view-list .mma-upsell-card {
	flex-direction: row !important;
	max-height: 140px !important;
}

body .mma-shop-archive-products ul.products.mma-shop-grid.mma-view-list .mma-upsell-card-image {
	width: 180px !important;
	min-width: 180px !important;
	max-height: 140px !important;
	aspect-ratio: auto !important;
	border-radius: 12px 0 0 12px !important;
	flex-shrink: 0 !important;
}

body .mma-shop-archive-products ul.products.mma-shop-grid.mma-view-list .mma-upsell-card-info {
	flex: 1 !important;
	min-width: 0 !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	justify-content: flex-start !important;
	padding: 12px 16px 16px 16px !important;
	gap: 8px !important;
}

body .mma-shop-archive-products ul.products.mma-shop-grid.mma-view-list .mma-upsell-card-title {
	flex: 0 1 auto !important;
	-webkit-line-clamp: 1 !important;
	min-height: auto !important;
	text-align: center !important;
}

body .mma-shop-archive-products ul.products.mma-shop-grid.mma-view-list .mma-upsell-card-price {
	margin: 0 !important;
	margin-top: auto !important;
	justify-content: flex-start !important;
	flex-wrap: nowrap !important;
	min-width: 0 !important;
}

body .mma-shop-archive-products ul.products.mma-shop-grid.mma-view-list .mma-upsell-add-btn {
	width: auto !important;
	padding: 7px 12px !important;
	font-size: 11px !important;
	margin-top: auto !important;
	margin-left: auto !important;
	align-self: flex-end !important;
}

/* === PAGINACJA === */
.woocommerce-pagination {
	text-align: center !important;
	margin: 40px 0 20px !important;
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
}

.woocommerce-pagination ul.page-numbers {
	display: inline-flex !important;
	gap: 8px !important;
	list-style: none !important;
	padding: 0 !important;
	margin: 0 !important;
	flex-wrap: wrap !important;
	justify-content: center !important;
	border: none !important;
}

.woocommerce-pagination ul.page-numbers li {
	border: none !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.woocommerce-pagination ul.page-numbers li::before,
.woocommerce-pagination ul.page-numbers li::after {
	content: none !important;
	border: none !important;
}

.woocommerce-pagination ul.page-numbers li + li {
	border-left: none !important;
}

.woocommerce-pagination ul.page-numbers li a.page-numbers,
.woocommerce-pagination ul.page-numbers li span.page-numbers {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 40px !important;
	height: 40px !important;
	padding: 0 !important;
	border-radius: 8px !important;
	border: 1px solid #e0e0e0 !important;
	font-family: 'Montserrat', sans-serif !important;
	font-weight: 600 !important;
	font-size: 14px !important;
	color: #1a1a1a !important;
	text-decoration: none !important;
	background: #fff !important;
	transition: background 0.15s !important;
	box-sizing: border-box !important;
}

.woocommerce-pagination ul.page-numbers li span.current {
	background: #f5c518 !important;
	border-color: #f5c518 !important;
	color: #1a1a1a !important;
}

.woocommerce-pagination ul.page-numbers li a.page-numbers:hover {
	background: #f5c518 !important;
	border-color: #f5c518 !important;
	color: #1a1a1a !important;
}

.mma-shop-card-wrap > span.onsale {
	display: none;
}

/* === TOOLBAR MOBILE (≤1100px) === */
.mma-toolbar-mobile {
	display: none !important;
}

@media (max-width: 1100px) {
	.mma-shop-toolbar {
		display: none !important;
	}

	.mma-toolbar-mobile {
		display: flex !important;
		flex-direction: column !important;
		align-items: stretch !important;
		justify-content: flex-start !important;
		gap: 8px !important;
		padding: 10px 0 !important;
		border-top: 1px solid #f5c518 !important;
		border-bottom: 1px solid #f5c518 !important;
		margin-bottom: 20px !important;
		position: relative !important;
		box-sizing: border-box !important;
		max-width: 100% !important;
	}

	.mma-toolbar-mobile-search-bar {
		width: 100% !important;
		box-sizing: border-box !important;
	}
	.mma-toolbar-mobile-search-bar[hidden] {
		display: none !important;
	}
	.mma-toolbar-mobile-search-bar .mma-shop-search--mobile-expanded {
		display: flex !important;
		align-items: center !important;
		gap: 8px !important;
		width: 100% !important;
		background: #fff !important;
		border: 1.5px solid #e0e0e0 !important;
		border-radius: 8px !important;
		padding: 6px 10px !important;
		box-sizing: border-box !important;
	}
	.mma-toolbar-mobile-search-bar .mma-shop-search-input {
		flex: 1 1 auto !important;
		min-width: 0 !important;
		border: none !important;
		background: transparent !important;
		font-family: 'Inter', sans-serif !important;
		font-size: 14px !important;
		outline: none !important;
	}

	.mma-toolbar-mobile-row1 {
		display: flex !important;
		flex-direction: row !important;
		align-items: center !important;
		justify-content: flex-start !important;
		gap: 6px !important;
		width: 100% !important;
		flex-wrap: nowrap !important;
		min-width: 0 !important;
	}

	.mma-mobile-search-toggle {
		width: 36px !important;
		height: 36px !important;
		flex: 0 0 36px !important;
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		background: #fff !important;
		border: 1px solid #e0e0e0 !important;
		border-radius: 6px !important;
		cursor: pointer !important;
		color: #666 !important;
		padding: 0 !important;
	}
	.mma-mobile-search-toggle:hover {
		border-color: #f5c518 !important;
		color: #1a1a1a !important;
	}

	.mma-toolbar-mobile-pills {
		display: flex !important;
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		align-items: center !important;
		justify-content: flex-start !important;
		gap: 6px !important;
		width: 100% !important;
		min-width: 0 !important;
		padding-top: 2px !important;
	}
	.mma-toolbar-mobile-pills .mma-shop-pill {
		flex: 1 1 0 !important;
		min-width: 0 !important;
		max-width: 100% !important;
		text-align: center !important;
		justify-content: center !important;
		padding-left: 5px !important;
		padding-right: 5px !important;
		font-size: 11px !important;
		overflow: hidden !important;
		text-overflow: ellipsis !important;
		white-space: nowrap !important;
	}

	.mma-mobile-trigger-label--short {
		display: none !important;
	}

	.mma-toolbar-mobile-nav {
		display: flex !important;
		align-items: center !important;
		gap: 6px !important;
		flex: 1 1 auto !important;
		min-width: 0 !important;
		flex-shrink: 1 !important;
		position: static !important;
		overflow: visible !important;
	}

	.mma-mobile-views {
		display: flex !important;
		align-items: center !important;
		gap: 4px !important;
		flex: 0 0 auto !important;
		flex-shrink: 0 !important;
	}

	.mma-toolbar-mobile .mma-shop-view-btn {
		width: 36px !important;
		height: 36px !important;
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		background: #fff !important;
		border: 1px solid #e0e0e0 !important;
		border-radius: 6px !important;
		cursor: pointer !important;
		color: #666 !important;
		padding: 0 !important;
	}

	.mma-toolbar-mobile .mma-shop-view-btn.active {
		background: #f5c518 !important;
		border-color: #f5c518 !important;
		color: #1a1a1a !important;
	}

	.mma-mobile-cat-wrap,
	.mma-mobile-kat-wrap {
		position: relative !important;
		overflow: visible !important;
	}

	.mma-mobile-sort-wrap {
		position: relative !important;
		flex: 0 0 auto !important;
	}

	.mma-mobile-cat-trigger {
		display: flex !important;
		align-items: center !important;
		gap: 6px !important;
		padding: 7px 10px !important;
		background: #fff !important;
		border: 1.5px solid #e0e0e0 !important;
		border-radius: 8px !important;
		font-family: 'Montserrat', sans-serif !important;
		font-size: 11px !important;
		font-weight: 600 !important;
		color: #1a1a1a !important;
		cursor: pointer !important;
		white-space: nowrap !important;
	}

	.mma-mobile-cat-trigger .mma-chevron {
		flex-shrink: 0 !important;
	}

	.mma-mobile-cat-wrap.is-open .mma-mobile-cat-trigger,
	.mma-mobile-kat-wrap.is-open .mma-mobile-cat-trigger {
		border-color: #f5c518 !important;
	}

	.mma-mobile-cat-panel {
		display: none !important;
		position: absolute !important;
		top: calc(100% + 6px) !important;
		left: 0 !important;
		min-width: 220px !important;
		background: #fff !important;
		border: 1px solid #e0e0e0 !important;
		border-radius: 12px !important;
		box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12) !important;
		padding: 8px !important;
		z-index: 500 !important;
		max-height: 60vh !important;
		overflow-y: auto !important;
	}

	.mma-mobile-cat-wrap.is-open .mma-mobile-cat-panel {
		display: block !important;
	}

	.mma-mobile-cat-link {
		display: block !important;
		padding: 9px 14px !important;
		border-radius: 8px !important;
		font-family: 'Montserrat', sans-serif !important;
		font-size: 13px !important;
		font-weight: 500 !important;
		color: #1a1a1a !important;
		text-decoration: none !important;
		transition: background 0.15s !important;
	}

	.mma-mobile-cat-link:hover {
		background: #f9f9f9 !important;
	}

	.mma-mobile-cat-link.is-active {
		background: #f5c518 !important;
		font-weight: 700 !important;
	}

	.mma-mobile-cat-divider {
		height: 1px !important;
		background: #f0f0f0 !important;
		margin: 6px 8px !important;
	}

	.mma-mobile-cat-group-label {
		display: block !important;
		padding: 4px 14px 6px !important;
		font-family: 'Montserrat', sans-serif !important;
		font-size: 11px !important;
		font-weight: 700 !important;
		color: #999 !important;
		text-transform: uppercase !important;
		letter-spacing: 0.5px !important;
	}

	.mma-mobile-sort-trigger {
		width: 36px !important;
		height: 36px !important;
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		background: #fff !important;
		border: 1.5px solid #e0e0e0 !important;
		border-radius: 8px !important;
		cursor: pointer !important;
	}

	.mma-mobile-sort-wrap.is-open .mma-mobile-sort-trigger {
		border-color: #f5c518 !important;
	}

	.mma-mobile-sort-panel {
		display: none !important;
		position: absolute !important;
		top: calc(100% + 6px) !important;
		right: 0 !important;
		min-width: 180px !important;
		background: #fff !important;
		border: 1px solid #e0e0e0 !important;
		border-radius: 12px !important;
		box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12) !important;
		padding: 8px !important;
		z-index: 500 !important;
	}

	.mma-mobile-sort-wrap.is-open .mma-mobile-sort-panel {
		display: block !important;
	}

	.mma-mobile-sort-option {
		display: block !important;
		width: 100% !important;
		text-align: left !important;
		padding: 9px 14px !important;
		background: none !important;
		border: none !important;
		border-radius: 8px !important;
		font-family: 'Montserrat', sans-serif !important;
		font-size: 13px !important;
		font-weight: 500 !important;
		color: #1a1a1a !important;
		cursor: pointer !important;
	}

	.mma-mobile-sort-option:hover {
		background: #f9f9f9 !important;
	}

	.mma-mobile-sort-option.is-active {
		background: #f5c518 !important;
		font-weight: 700 !important;
	}

	.mma-active-filters {
		padding: 6px 0 2px 0 !important;
		margin-left: 0 !important;
	}
	.mma-active-filters::-webkit-scrollbar {
		display: none !important;
	}
	.mma-active-tag-pill {
		flex-shrink: 0 !important;
		font-size: 11px !important;
		padding: 5px 10px !important;
	}

	@media (max-width: 480px) {
		.mma-mobile-trigger-label--full {
			display: none !important;
		}
		.mma-mobile-trigger-label--short {
			display: inline !important;
		}
		.mma-mobile-cat-trigger {
			padding: 6px 5px !important;
			max-width: 76px !important;
		}
		.mma-toolbar-mobile-pills .mma-shop-pill {
			font-size: 10px !important;
			padding: 5px 3px !important;
		}
	}

	@media (max-width: 360px) {
		.mma-toolbar-mobile-pills {
			gap: 4px !important;
		}
		.mma-toolbar-mobile-pills .mma-shop-pill {
			font-size: 9px !important;
			padding: 5px 2px !important;
		}
	}

	[data-mma-mobile-kat].is-open .mma-mobile-cat-panel {
		display: block !important;
		max-height: 300px !important;
		overflow-y: auto !important;
	}
}

@media (max-width: 1100px) {
	.mma-shop-cat-heading-wrap {
		padding-left: 0 !important;
		padding-top: 12px !important;
	}
}
@media (min-width: 769px) and (max-width: 1100px) {
	.mma-toolbar-mobile {
		padding-left: 40px !important;
		padding-right: 40px !important;
	}
	.mma-shop-cat-heading-wrap {
		padding-left: 50px !important;
		padding-top: 12px !important;
	}
}

@media (max-width: 768px) {
	.mma-toolbar-mobile {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
	.mma-shop-cat-heading-wrap {
		padding-left: 0 !important;
		padding-top: 10px !important;
		padding-bottom: 4px !important;
	}
}

/* === KATEGORIE — checkboxy === */
.mma-kategorie-dropdown {
	min-width: 240px !important;
	max-height: 380px !important;
	overflow-y: auto !important;
	padding: 8px 0 0 0 !important;
}
.mma-kat-label {
	display: flex !important;
	align-items: center !important;
	gap: 10px !important;
	padding: 9px 14px !important;
	font-family: 'Montserrat', sans-serif !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	color: #333 !important;
	cursor: pointer !important;
	border-radius: 6px !important;
	transition: background 0.1s !important;
	user-select: none !important;
}
.mma-kat-label:hover {
	background: #f9f9f9 !important;
}
.mma-kat-label.is-checked {
	color: #1a1a1a !important;
	font-weight: 700 !important;
}
.mma-kat-checkbox {
	width: 16px !important;
	height: 16px !important;
	accent-color: #f5c518 !important;
	cursor: pointer !important;
	flex-shrink: 0 !important;
}
.mma-kat-footer {
	padding: 8px 14px !important;
	border-top: 1px solid #f0f0f0 !important;
	margin-top: 4px !important;
}
.mma-kat-clear-btn {
	background: none !important;
	border: none !important;
	font-family: 'Montserrat', sans-serif !important;
	font-size: 12px !important;
	color: #999 !important;
	cursor: pointer !important;
	padding: 4px 0 !important;
	text-decoration: underline !important;
}
.mma-kat-clear-btn:hover {
	color: #333 !important;
}
.mma-kat-badge {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	background: #f5c518 !important;
	color: #1a1a1a !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	width: 18px !important;
	height: 18px !important;
	border-radius: 50% !important;
	line-height: 1 !important;
}

/* === AKTYWNE FILTRY (pigułki + nagłówek kategorii) === */
.mma-filters-scroll-wrap {
	display: flex !important;
	align-items: center !important;
	width: 100% !important;
	gap: 0 !important;
	position: relative !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding: 0 50px !important;
	box-sizing: border-box !important;
}
.mma-active-filters {
	flex: 1 !important;
	min-width: 0 !important;
	width: 100% !important;
	display: flex !important;
	align-items: center !important;
	flex-wrap: nowrap !important;
	overflow-x: auto !important;
	-webkit-overflow-scrolling: touch !important;
	gap: 8px !important;
	padding: 8px 0 2px 0 !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	scrollbar-width: none !important;
}
.mma-active-filters::-webkit-scrollbar {
	display: none !important;
}
.mma-filters-nav {
	position: absolute !important;
	top: 50% !important;
	transform: translateY(-50%) !important;
	flex-shrink: 0 !important;
	display: none !important;
	align-items: center !important;
	justify-content: center !important;
	background: #fff !important;
	border: 1px solid #e0e0e0 !important;
	border-radius: 50% !important;
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.1) !important;
	cursor: pointer !important;
	width: 40px !important;
	height: 40px !important;
	padding: 0 !important;
	transition: opacity 0.2s, visibility 0.2s, background 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease !important;
	z-index: 10 !important;
	visibility: hidden !important;
	opacity: 0 !important;
}
.mma-filters-nav.is-visible {
	display: flex !important;
	visibility: visible !important;
	opacity: 1 !important;
}
.mma-filters-nav:hover {
	background: #f5c518 !important;
	border-color: #f5c518 !important;
	box-shadow: 0 4px 16px rgba(245, 197, 24, 0.35) !important;
}
.mma-filters-nav svg {
	width: 16px !important;
	height: 16px !important;
	stroke: #1a1a1a !important;
	stroke-width: 2 !important;
	fill: none !important;
	stroke-linecap: round !important;
	stroke-linejoin: round !important;
}
.mma-filters-prev {
	left: 0 !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}
.mma-filters-next {
	right: 0 !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}
.mma-filters-hidden {
	display: none !important;
}
.mma-active-cat-heading {
	font-family: 'Montserrat', sans-serif !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	color: #1a1a1a !important;
	margin-right: 4px !important;
}
.mma-active-tag-pill {
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
	padding: 6px 14px !important;
	background: #f5c518 !important;
	border: none !important;
	border-radius: 999px !important;
	font-family: 'Montserrat', sans-serif !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	color: #1a1a1a !important;
	cursor: default !important;
	transition: opacity 0.15s !important;
	flex-shrink: 0 !important;
}
.mma-pill-close {
	cursor: pointer !important;
}
.mma-active-tag-pill:hover {
	opacity: 0.8 !important;
}
.mma-active-tag-pill svg {
	flex-shrink: 0 !important;
}

/* === NAGŁÓWEK KATEGORII (nad gridem produktów) === */
.mma-shop-cat-heading-wrap {
	padding: 20px 0 8px 50px !important;
}
.mma-shop-cat-heading-text {
	font-family: 'Montserrat', sans-serif !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	color: #1a1a1a !important;
	text-transform: uppercase !important;
	letter-spacing: 0.5px !important;
}
/* === MOBILE — nagłówki grup w menu Produkty === */
.mma-mobile-group-header {
	display: block !important;
	font-family: 'Montserrat', sans-serif !important;
	font-size: 10px !important;
	font-weight: 700 !important;
	color: #999 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.8px !important;
	padding: 12px 14px 4px 14px !important;
	pointer-events: none !important;
	user-select: none !important;
}
.mma-mobile-group-header:first-child {
	padding-top: 4px !important;
}

/* NOWOŚCI heading — stałe wyrównanie do lewej krawędzi kart
   (.mma-nowosci-track-wrap bez padding-left; offset jak .mma-nowosci-carousel-wrapper: 0 50px ≈ strzałka 40px + zapas) */
.mma-shop-nowosci-title {
	padding-left: 50px !important;
	margin-left: 0 !important;
	box-sizing: border-box !important;
}
@media (max-width: 1100px) {
	.mma-shop-nowosci-title {
		padding-left: 50px !important;
	}
}
@media (max-width: 768px) {
	.mma-shop-nowosci-title {
		padding-left: 50px !important;
	}
}

/* Widok lista — układ „mobile row” do 1100px (desktop >1100px: reguły wyżej, flex-direction: column) */
@media (max-width: 1100px) {
	body .mma-shop-archive-products ul.products.mma-shop-grid.mma-view-list .mma-upsell-card {
		flex-direction: row !important;
		align-items: stretch !important;
		max-height: none !important;
	}
	body .mma-shop-archive-products ul.products.mma-shop-grid.mma-view-list .mma-upsell-card-image {
		width: 90px !important;
		min-width: 90px !important;
		flex-shrink: 0 !important;
		aspect-ratio: 1 / 1 !important;
		max-height: none !important;
		border-radius: 12px 0 0 12px !important;
		align-self: stretch !important;
	}
	body .mma-shop-archive-products ul.products.mma-shop-grid.mma-view-list .mma-upsell-card-info {
		flex: 1 !important;
		min-width: 0 !important;
		display: flex !important;
		flex-direction: row !important;
		flex-wrap: wrap !important;
		align-content: space-between !important;
		padding: 8px 8px 12px 8px !important;
		gap: 0 8px !important;
		justify-content: flex-start !important;
		margin-top: 0 !important;
	}
	body .mma-shop-archive-products ul.products.mma-shop-grid.mma-view-list .mma-upsell-card-title {
		flex: 0 0 100% !important;
		width: 100% !important;
		font-size: 13px !important;
		min-height: auto !important;
		margin-bottom: 0 !important;
		align-self: flex-start !important;
		text-align: center !important;
	}
	body .mma-shop-archive-products ul.products.mma-shop-grid.mma-view-list .mma-upsell-card-price {
		flex: 1 !important;
		font-size: 18px !important;
		margin: 0 !important;
		min-width: 0 !important;
		display: flex !important;
		align-items: center !important;
		align-self: flex-end !important;
		margin-top: 0 !important;
	}
	body .mma-shop-archive-products ul.products.mma-shop-grid.mma-view-list .mma-upsell-add-btn {
		flex-shrink: 0 !important;
		font-size: 10px !important;
		padding: 6px 10px !important;
		white-space: nowrap !important;
		align-self: flex-end !important;
		margin: 0 !important;
		margin-left: 0 !important;
		margin-top: 0 !important;
	}
}

/* === FORMULARZ KONTAKTOWY SKLEPU ===
   form-unify v1.0.7 (2026-04-27 fix2): USUNIĘTE wszystkie overrides `.mma-shop-contact-section ...`
   (kontener 780px, tytuł Oswald 32px, subtitle 15px, tło sekcji `#fff` które tworzyło
   „białą ramkę"). Klient zgłosił że formularz na /sklep/ był szerszy, miał inną typografię
   i był w białej ramce zamiast szarego tła jak na stronie głównej. Po usunięciu tych
   overrides formularz dziedziczy bazowy styl z `mma-kontakt-contact-form.css` (kontener
   700px, tytuł Montserrat 24px, subtitle Inter 14px, tło sekcji `#f9f9f9`, formularz
   w białym boxie z border-radius 16px). Klasa `.mma-shop-contact-section` jest nadal
   obecna w markupie (woocommerce/archive-product.php) jako hook na ewentualne przyszłe
   poprawki scoped — ale aktualnie bez stylów. */

/* === PRZYCISK ATC — zawsze jeden wiersz na mobile === */
@media (max-width: 1100px) {
	body .mma-shop-archive-products .mma-upsell-add-btn,
	body .mma-shop-archive-products ul.products .mma-upsell-add-btn {
		white-space: nowrap !important;
		font-size: clamp(9px, 1.8vw, 12px) !important;
		padding: clamp(8px, 1.5vw, 10px) clamp(8px, 2vw, 14px) !important;
		overflow: hidden !important;
		text-overflow: ellipsis !important;
	}
}
@media (max-width: 480px) {
	body .mma-shop-archive-products .mma-upsell-add-btn,
	body .mma-shop-archive-products ul.products .mma-upsell-add-btn {
		font-size: clamp(8px, 2.5vw, 11px) !important;
		padding: 8px !important;
		gap: 4px !important;
	}
	body .mma-shop-archive-products .mma-upsell-add-btn svg {
		width: 14px !important;
		height: 14px !important;
		flex-shrink: 0 !important;
	}
}

@media (max-width: 1100px) {
	.mma-mobile-sort-panel .mma-mobile-sort-option {
		white-space: nowrap !important;
		font-size: clamp(10px, 3vw, 14px) !important;
		padding: 8px 10px !important;
	}
	.mma-mobile-sort-panel {
		min-width: auto !important;
		max-width: 54vw !important;
	}
}

/* === MOBILE ≤767: siatka sklepu — tytuł, cena (PROMOCJA nad, PLN w jednej linii), paginacja (wyśrodkowana, kwadraty; max 5 numerów — JS) === */
@media (max-width: 767px) {
	body .mma-shop-archive-products ul.products.mma-shop-grid:not(.mma-view-list) {
		align-items: stretch !important;
	}

	body .mma-shop-archive-products ul.products.mma-shop-grid:not(.mma-view-list) > li.mma-shop-card-wrap {
		display: flex !important;
		flex-direction: column !important;
		height: 100% !important;
		min-height: 0 !important;
	}

	body .mma-shop-archive-products ul.products.mma-shop-grid:not(.mma-view-list) > li.mma-shop-card-wrap > .mma-upsell-card {
		flex: 1 1 auto !important;
		height: 100% !important;
		min-height: 0 !important;
		width: 100% !important;
		position: relative !important;
		overflow: visible !important;
		isolation: isolate !important;
	}

	body .mma-shop-archive-products ul.products.mma-shop-grid:not(.mma-view-list) .mma-upsell-card-image {
		z-index: 1 !important;
		position: relative !important;
	}

	body .mma-shop-archive-products ul.products.mma-shop-grid:not(.mma-view-list) .mma-upsell-card-info {
		padding: 8px 8px 10px !important;
		flex: 1 1 auto !important;
		min-height: 0 !important;
		display: flex !important;
		flex-direction: column !important;
	}

	/* MMA_MOBILE_SHOP_GRID_PRICE_BOTTOM — cena+przycisk przyklejone do dołu (jak kafelek z PROMOCJA); flat markup bez price-row */
	body .mma-shop-archive-products ul.products.mma-shop-grid:not(.mma-view-list) .mma-upsell-card-info > .mma-upsell-card-price-row {
		margin-top: auto !important;
		flex-shrink: 0 !important;
		width: 100% !important;
		box-sizing: border-box !important;
	}

	body .mma-shop-archive-products ul.products.mma-shop-grid:not(.mma-view-list) .mma-upsell-card-info > .mma-upsell-card-price {
		margin-top: auto !important;
		flex-shrink: 0 !important;
	}

	body .mma-shop-archive-products ul.products.mma-shop-grid:not(.mma-view-list) .mma-upsell-card-title {
		font-size: 11px !important;
		font-weight: 600 !important;
		line-height: 1.3 !important;
		min-height: 0 !important;
		margin-bottom: 4px !important;
		display: -webkit-box !important;
		-webkit-box-orient: vertical !important;
		-webkit-line-clamp: 2 !important;
		line-clamp: 2 !important;
		overflow: hidden !important;
		text-overflow: ellipsis !important;
	}

	body .mma-shop-archive-products ul.products.mma-shop-grid:not(.mma-view-list) .mma-upsell-card-price {
		flex-direction: row !important;
		flex-wrap: wrap !important;
		align-items: center !important;
		justify-content: center !important;
		gap: 4px !important;
		font-size: 13px !important;
		min-height: 0 !important;
		margin: 2px 0 6px !important;
		max-width: 100% !important;
		width: 100% !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
		box-sizing: border-box !important;
	}

	/* PROMOCJA — poziomy pasek na górze kafelka (full width, poza flow ceny) */
	body .mma-shop-archive-products ul.products.mma-shop-grid:not(.mma-view-list) .mma-upsell-card-price .mma-upsell-promo-badge {
		position: absolute !important;
		top: 0 !important;
		left: 0 !important;
		right: 0 !important;
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
		padding: 4px 6px !important;
		font-size: 9px !important;
		font-weight: 700 !important;
		letter-spacing: 0.12em !important;
		line-height: 1.2 !important;
		text-align: center !important;
		text-transform: uppercase !important;
		border-radius: 0 !important;
		transform: none !important;
		box-sizing: border-box !important;
		box-shadow: none !important;
		z-index: 6 !important;
		pointer-events: none !important;
		order: unset !important;
		align-self: auto !important;
	}

	body .mma-shop-archive-products ul.products.mma-shop-grid:not(.mma-view-list) .mma-upsell-card-price-duo {
		display: flex !important;
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		align-items: baseline !important;
		justify-content: center !important;
		gap: 5px !important;
		max-width: 100% !important;
		min-width: 0 !important;
	}

	body .mma-shop-archive-products ul.products.mma-shop-grid:not(.mma-view-list) .mma-upsell-card-price-duo del,
	body .mma-shop-archive-products ul.products.mma-shop-grid:not(.mma-view-list) .mma-upsell-card-price-duo .mma-price-sale {
		white-space: nowrap !important;
		font-size: 11px !important;
		flex-shrink: 0 !important;
	}

	body .mma-shop-archive-products ul.products.mma-shop-grid:not(.mma-view-list) .mma-upsell-card-price-plain {
		white-space: nowrap !important;
		font-size: 13px !important;
	}

	body .mma-shop-archive-products ul.products.mma-shop-grid:not(.mma-view-list) .mma-upsell-card-price .currency,
	body .mma-shop-archive-products ul.products.mma-shop-grid:not(.mma-view-list) .mma-upsell-card-price-duo del .currency,
	body .mma-shop-archive-products ul.products.mma-shop-grid:not(.mma-view-list) .mma-upsell-card-price-duo .mma-price-sale .currency {
		font-size: 10px !important;
		white-space: nowrap !important;
	}

	body .mma-shop-archive-products ul.products.mma-shop-grid:not(.mma-view-list) .mma-upsell-add-btn {
		font-size: 10px !important;
		padding: 8px 6px !important;
		gap: 4px !important;
	}

	body .mma-shop-archive-products .woocommerce-pagination,
	.mma-shop-archive-products .woocommerce-pagination {
		margin: 28px 0 16px !important;
		display: flex !important;
		justify-content: center !important;
		width: 100% !important;
	}

	body .mma-shop-archive-products .woocommerce-pagination ul.page-numbers,
	.mma-shop-archive-products .woocommerce-pagination ul.page-numbers {
		display: inline-flex !important;
		flex-wrap: nowrap !important;
		align-items: center !important;
		justify-content: center !important;
		gap: 5px !important;
		max-width: 100% !important;
		width: auto !important;
		margin-left: auto !important;
		margin-right: auto !important;
		padding: 0 4px !important;
		box-sizing: border-box !important;
		flex-shrink: 0;
	}

	body .mma-shop-archive-products .woocommerce-pagination ul.page-numbers > li,
	.mma-shop-archive-products .woocommerce-pagination ul.page-numbers > li {
		flex-shrink: 0 !important;
		list-style: none !important;
		margin: 0 !important;
		padding: 0 !important;
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
	}

	body .mma-shop-archive-products .woocommerce-pagination ul.page-numbers li a.page-numbers,
	body .mma-shop-archive-products .woocommerce-pagination ul.page-numbers li span.page-numbers,
	.mma-shop-archive-products .woocommerce-pagination ul.page-numbers li a.page-numbers,
	.mma-shop-archive-products .woocommerce-pagination ul.page-numbers li span.page-numbers {
		width: 30px !important;
		min-width: 30px !important;
		max-width: 30px !important;
		height: 30px !important;
		min-height: 30px !important;
		max-height: 30px !important;
		aspect-ratio: 1 / 1 !important;
		font-size: 11px !important;
		border-radius: 6px !important;
		flex-shrink: 0 !important;
		padding: 0 !important;
		box-sizing: border-box !important;
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		overflow: hidden !important;
	}
}

/* === Moje konto — panel: Nowości/Promocje (.mma-dash-showcase-card) — PROMOCJA + ceny jak siatka sklepu (≤991) ===
   Reguły sklepu są pod .mma-shop-archive-products ul.products… — na koncie ten DOM nie występuje, więc duplikat scope tylko dla dashboardu. */
@media (max-width: 991px) {
	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-showcase-card.mma-upsell-card {
		position: relative !important;
		overflow: visible !important;
		isolation: isolate !important;
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box !important;
	}

	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-image {
		z-index: 1 !important;
		position: relative !important;
	}

	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-info {
		padding: 8px 8px 10px !important;
		flex: 1 1 auto !important;
		min-height: 0 !important;
		min-width: 0 !important;
		max-width: 100% !important;
		display: flex !important;
		flex-direction: column !important;
		box-sizing: border-box !important;
	}

/* MMA_DASH_SHOWCASE_CARD_ACCOUNT_FIX — tytuł czarny (custom.css MyAccount a), cena+przycisk: margin-top auto na price-row */
	/* Tytuł: czarny — .woocommerce-MyAccount-content a w custom.css (#F4C000) ma ta samą specyficzność co bazowy .mma-upsell-card-title; !important + ścieżka z MyAccount-content. */
	body.woocommerce-account .woocommerce-MyAccount-content .mma-dashboard-v2.mma-spec-scope .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-title,
	body.woocommerce-account .woocommerce-MyAccount-content .mma-dashboard-v2.mma-spec-scope .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-title:visited {
		color: #1a1a1a !important;
	}

	body.woocommerce-account .woocommerce-MyAccount-content .mma-dashboard-v2.mma-spec-scope .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-title:hover,
	body.woocommerce-account .woocommerce-MyAccount-content .mma-dashboard-v2.mma-spec-scope .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-title:focus {
		color: #1a1a1a !important;
	}

	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-title {
		font-size: 11px !important;
		font-weight: 600 !important;
		line-height: 1.3 !important;
		min-height: 0 !important;
		margin-bottom: 4px !important;
		display: -webkit-box !important;
		-webkit-box-orient: vertical !important;
		-webkit-line-clamp: 2 !important;
		line-clamp: 2 !important;
		overflow: hidden !important;
		text-overflow: ellipsis !important;
	}

	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-price-row {
		min-width: 0 !important;
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box !important;
		margin-top: auto !important;
		flex-shrink: 0 !important;
	}

	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-price {
		flex-direction: row !important;
		flex-wrap: wrap !important;
		align-items: center !important;
		justify-content: center !important;
		gap: 4px !important;
		font-size: 13px !important;
		min-height: 0 !important;
		margin: 2px 0 6px !important;
		max-width: 100% !important;
		width: 100% !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
		box-sizing: border-box !important;
	}

	/* PROMOCJA — poziomy pasek na górze kafelka (jak sklep ≤767) */
	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-price .mma-upsell-promo-badge {
		position: absolute !important;
		top: 0 !important;
		left: 0 !important;
		right: 0 !important;
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
		padding: 4px 6px !important;
		font-size: 9px !important;
		font-weight: 700 !important;
		letter-spacing: 0.12em !important;
		line-height: 1.2 !important;
		text-align: center !important;
		text-transform: uppercase !important;
		border-radius: 0 !important;
		transform: none !important;
		box-sizing: border-box !important;
		box-shadow: none !important;
		z-index: 6 !important;
		pointer-events: none !important;
		order: unset !important;
		align-self: auto !important;
	}

	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-price-duo {
		display: flex !important;
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		align-items: baseline !important;
		justify-content: center !important;
		gap: 5px !important;
		max-width: 100% !important;
		min-width: 0 !important;
	}

	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-price-duo del,
	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-price-duo .mma-price-sale {
		white-space: nowrap !important;
		font-size: 11px !important;
		min-width: 0 !important;
		flex-shrink: 1 !important;
		overflow: hidden !important;
		text-overflow: ellipsis !important;
	}

	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-price-plain {
		white-space: nowrap !important;
		font-size: 13px !important;
		max-width: 100% !important;
		overflow: hidden !important;
		text-overflow: ellipsis !important;
	}

	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-price .currency,
	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-price-duo del .currency,
	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-price-duo .mma-price-sale .currency {
		font-size: 10px !important;
		white-space: nowrap !important;
	}

	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-showcase-card.mma-upsell-card .mma-upsell-add-btn {
		font-size: 10px !important;
		padding: 8px 6px !important;
		gap: 4px !important;
	}
}

/* === Moje konto — panel główny desktop (≥992): ten sam układ PROMOCJA + ceny TYLKO w .mma-dash-news / .mma-dash-sales — sklep bez zmian === */
@media (min-width: 992px) {
	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-news .mma-dash-showcase-card.mma-upsell-card,
	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-sales .mma-dash-showcase-card.mma-upsell-card {
		position: relative !important;
		overflow: visible !important;
		isolation: isolate !important;
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box !important;
	}

	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-news .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-image,
	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-sales .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-image {
		z-index: 1 !important;
		position: relative !important;
	}

	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-news .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-info,
	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-sales .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-info {
		padding: 8px 8px 10px !important;
		flex: 1 1 auto !important;
		min-height: 0 !important;
		min-width: 0 !important;
		max-width: 100% !important;
		display: flex !important;
		flex-direction: column !important;
		box-sizing: border-box !important;
	}

	body.woocommerce-account .woocommerce-MyAccount-content .mma-dashboard-v2.mma-spec-scope .mma-dash-news .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-title,
	body.woocommerce-account .woocommerce-MyAccount-content .mma-dashboard-v2.mma-spec-scope .mma-dash-news .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-title:visited,
	body.woocommerce-account .woocommerce-MyAccount-content .mma-dashboard-v2.mma-spec-scope .mma-dash-sales .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-title,
	body.woocommerce-account .woocommerce-MyAccount-content .mma-dashboard-v2.mma-spec-scope .mma-dash-sales .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-title:visited {
		color: #1a1a1a !important;
	}

	body.woocommerce-account .woocommerce-MyAccount-content .mma-dashboard-v2.mma-spec-scope .mma-dash-news .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-title:hover,
	body.woocommerce-account .woocommerce-MyAccount-content .mma-dashboard-v2.mma-spec-scope .mma-dash-news .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-title:focus,
	body.woocommerce-account .woocommerce-MyAccount-content .mma-dashboard-v2.mma-spec-scope .mma-dash-sales .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-title:hover,
	body.woocommerce-account .woocommerce-MyAccount-content .mma-dashboard-v2.mma-spec-scope .mma-dash-sales .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-title:focus {
		color: #1a1a1a !important;
	}

	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-news .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-title,
	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-sales .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-title {
		font-size: 11px !important;
		font-weight: 600 !important;
		line-height: 1.3 !important;
		min-height: 0 !important;
		margin-bottom: 4px !important;
		display: -webkit-box !important;
		-webkit-box-orient: vertical !important;
		-webkit-line-clamp: 2 !important;
		line-clamp: 2 !important;
		overflow: hidden !important;
		text-overflow: ellipsis !important;
	}

	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-news .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-price-row,
	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-sales .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-price-row {
		min-width: 0 !important;
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box !important;
		margin-top: auto !important;
		flex-shrink: 0 !important;
	}

	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-news .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-price,
	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-sales .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-price {
		flex-direction: row !important;
		flex-wrap: wrap !important;
		align-items: center !important;
		justify-content: center !important;
		gap: 4px !important;
		font-size: 13px !important;
		min-height: 0 !important;
		margin: 2px 0 6px !important;
		max-width: 100% !important;
		width: 100% !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
		box-sizing: border-box !important;
	}

	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-news .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-price .mma-upsell-promo-badge,
	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-sales .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-price .mma-upsell-promo-badge {
		position: absolute !important;
		top: 0 !important;
		left: 0 !important;
		right: 0 !important;
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
		padding: 4px 6px !important;
		font-size: 9px !important;
		font-weight: 700 !important;
		letter-spacing: 0.12em !important;
		line-height: 1.2 !important;
		text-align: center !important;
		text-transform: uppercase !important;
		border-radius: 0 !important;
		transform: none !important;
		box-sizing: border-box !important;
		box-shadow: none !important;
		z-index: 6 !important;
		pointer-events: none !important;
		order: unset !important;
		align-self: auto !important;
	}

	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-news .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-price-duo,
	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-sales .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-price-duo {
		display: flex !important;
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		align-items: baseline !important;
		justify-content: center !important;
		gap: 5px !important;
		max-width: 100% !important;
		min-width: 0 !important;
	}

	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-news .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-price-duo del,
	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-news .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-price-duo .mma-price-sale,
	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-sales .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-price-duo del,
	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-sales .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-price-duo .mma-price-sale {
		white-space: nowrap !important;
		font-size: 11px !important;
		min-width: 0 !important;
		flex-shrink: 1 !important;
		overflow: hidden !important;
		text-overflow: ellipsis !important;
	}

	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-news .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-price-plain,
	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-sales .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-price-plain {
		white-space: nowrap !important;
		font-size: 13px !important;
		max-width: 100% !important;
		overflow: hidden !important;
		text-overflow: ellipsis !important;
	}

	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-news .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-price .currency,
	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-news .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-price-duo del .currency,
	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-news .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-price-duo .mma-price-sale .currency,
	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-sales .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-price .currency,
	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-sales .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-price-duo del .currency,
	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-sales .mma-dash-showcase-card.mma-upsell-card .mma-upsell-card-price-duo .mma-price-sale .currency {
		font-size: 10px !important;
		white-space: nowrap !important;
	}

	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-news .mma-dash-showcase-card.mma-upsell-card .mma-upsell-add-btn,
	body.woocommerce-account .mma-dashboard-v2.mma-spec-scope .mma-dash-sales .mma-dash-showcase-card.mma-upsell-card .mma-upsell-add-btn {
		font-size: 10px !important;
		padding: 8px 6px !important;
		gap: 4px !important;
	}
}
