/**
 * MotorRemont — WooCommerce stilovi.
 * Kartice, shop, filteri, stranica proizvoda, korpa, naplata, moj nalog.
 */

/* ==========================================================================
   Mreža proizvoda
   ========================================================================== */

ul.products {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}

/* ==========================================================================
   Karusel proizvoda na početnoj (najprodavaniji, preporučeni)

   Jedan red koji se pomjera. Bez JS-a ostaje običan skrolabilan red: prstom na
   telefonu, trackpadom ili tastaturom na desktopu. Dugmad dodaje carousel.js
   tek kada izmjeri da ima šta da se pomjeri, pa nema mrtvog dugmeta.
   ========================================================================== */

.mr-carousel { position: relative; }

/* Namjerno bez `scroll-behavior: smooth`. Mjereno: uz to pravilo programsko
   pomjeranje ostane na nuli kad preglednik ne izvodi animaciju (pozadinski tab,
   okruženje bez kompozicije). Glatko pomjeranje traži carousel.js, koji ima i
   sigurnosnu mrežu ako animacija ne krene. */
.mr-carousel__viewport {
	overflow-x: auto;
	overflow-y: hidden;
	scroll-snap-type: x proximity;
	scrollbar-width: none;
	/* Prostor da se sjena kartice i fokus obrub ne odsijeku pri skrolu. */
	margin: -6px;
	padding: 6px;
}
.mr-carousel__viewport::-webkit-scrollbar { display: none; }
.mr-carousel__viewport:focus-visible { outline: 2px solid var(--mr-primary); outline-offset: 2px; }

/* Grid iz osnovnog pravila ovdje postaje jedan red.

   Namjerno flex, a ne grid. Grid kontejner u skrolabilnom okviru zadrži širinu
   roditelja i kartice se preliju izvan njega, pa skrola nema: mjereno, lista je
   ostala na 1200 px dok joj je sadržaj bio 1928 px. Flex se u istoj situaciji
   prirodno rastegne. Isti obrazac tema već koristi za galeriju i brendove.

   Klase columns-N moraju biti nabrojane izričito. One nose veću specifičnost
   (ul.products.columns-4) i dolaze kasnije u fajlu, pa bi inače pobijedile i
   stisnule prve četiri kartice na 38 px. */
.mr-carousel__viewport > ul.products,
.mr-carousel__viewport > ul.products.columns-2,
.mr-carousel__viewport > ul.products.columns-3,
.mr-carousel__viewport > ul.products.columns-4,
.mr-carousel__viewport > ul.products.columns-5,
.mr-carousel__viewport > ul.products.columns-6 {
	display: flex;
	grid-template-columns: none;
	align-items: stretch;
	width: max-content;
}
.mr-carousel__viewport > ul.products > li.product {
	flex: 0 0 220px;
	scroll-snap-align: start;
	width: 220px;
	max-width: 220px;
}

.mr-carousel__btn {
	position: absolute;
	top: 50%;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	margin: 0;
	padding: 0;
	transform: translateY(-50%);
	border: 1px solid var(--mr-outline-variant, rgba(0, 0, 0, 0.12));
	border-radius: 50%;
	background: var(--mr-surface, #fff);
	color: var(--mr-on-surface, #1a1c1e);
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.14);
	cursor: pointer;
	transition: opacity 0.18s ease, transform 0.18s ease;
}
.mr-carousel__btn:hover { transform: translateY(-50%) scale(1.06); }
.mr-carousel__btn:focus-visible { outline: 2px solid var(--mr-primary); outline-offset: 2px; }
.mr-carousel__btn--prev { left: -6px; }
.mr-carousel__btn--next { right: -6px; }

/* Red je kružan, pa dugmad nikad nisu ugašena. Pravilo ostaje kao zaštita ako
   se kružno kretanje ikad isključi. */
.mr-carousel__btn[disabled] { opacity: 0; pointer-events: none; }

@media (min-width: 1024px) {
	.mr-carousel__btn--prev { left: -20px; }
	.mr-carousel__btn--next { right: -20px; }
}

/* Na telefonu se vide tačno dvije pune kartice, pa jedan potez pomjeri red za
   dvije. Mjera je u vw, ne u procentima: lista je široka max-content, pa bi
   procenat bio kružan.

   Računica: 100vw manje 32 px bočnog razmaka `.mr-container`, manje 10 px
   razmaka između kartica, sve podijeljeno na dva. Na iPhoneu 14 to je 166,5 px.
   Korak pomjeranja se iz toga izvodi sam, jer `carousel.js` broji koliko cijelih
   kartica stane u okvir. */
@media (max-width: 767px) {
	.mr-carousel__viewport > ul.products > li.product {
		flex-basis: calc((100vw - 32px - 10px) / 2);
		width: calc((100vw - 32px - 10px) / 2);
		max-width: none;
	}
}

@media (prefers-reduced-motion: reduce) {
	.mr-carousel__btn { transition: none; }
	.mr-carousel__btn:hover { transform: translateY(-50%); }
}

/* Poništava float raspored WooCommerce core CSS-a (grid preuzima). */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product,
.woocommerce ul.products[class*="columns-"] li.product,
.woocommerce-page ul.products[class*="columns-"] li.product {
	width: auto;
	float: none;
	margin: 0;
	clear: none;
}
.woocommerce ul.products::before,
.woocommerce ul.products::after,
.woocommerce-page ul.products::before,
.woocommerce-page ul.products::after { content: none; }
@media (min-width: 640px) {
	ul.products { gap: 20px; }
	ul.products.columns-3 { grid-template-columns: repeat(2, 1fr); }
	ul.products.columns-4 { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 900px) {
	ul.products.columns-3 { grid-template-columns: repeat(3, 1fr); }
	ul.products.columns-4 { grid-template-columns: repeat(3, 1fr); }
}
@media (min-width: 1200px) {
	ul.products.columns-4 { grid-template-columns: repeat(4, 1fr); }
	ul.products { gap: 24px; }
}

/* ==========================================================================
   Kartica proizvoda
   ========================================================================== */

.mr-product-card {
	position: relative;
	display: flex;
	flex-direction: column;
	container-type: inline-size;
	background: var(--mr-white);
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-lg);
	overflow: hidden;
	transition: box-shadow 0.25s, transform 0.25s;
}
.mr-product-card:hover {
	box-shadow: var(--mr-shadow-lg);
	transform: translateY(-3px);
}

.mr-product-card__badges {
	position: absolute;
	top: 12px; left: 12px;
	z-index: 5;
	display: flex;
	flex-direction: row;
	gap: 6px;
	max-width: calc(100% - 68px);
}
.mr-product-card__badges .onsale { position: static; margin: 0; }

/* Poništava zeleni krug WooCommerce core CSS-a za „Akcija" oznaku. */
.woocommerce span.onsale,
.woocommerce-page span.onsale {
	position: absolute;
	top: 16px;
	left: 16px;
	min-height: 0;
	min-width: 0;
	margin: 0;
	padding: 4px 10px;
	background: var(--mr-accent);
	color: #fff;
	border-radius: var(--mr-r-sm);
	font-size: 11px;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	z-index: 9;
}
.woocommerce .mr-product-card__badges span.onsale,
.woocommerce-page .mr-product-card__badges span.onsale { position: static; top: auto; left: auto; }

/* Veći kvadratni okvir čuva cijeli proizvod u kadru. Fotografije različitih
   omjera više se ne režu, a proizvod ostaje glavni vizuelni element kartice. */
.mr-product-card__media {
	display: flex;
	align-items: center;
	justify-content: center;
	aspect-ratio: 1 / 1;
	/* Na vrlo širokim karticama zadržava razumnu visinu i brzinu stranice. */
	max-height: 320px;
	width: 100%;
	overflow: hidden;
	background: var(--mr-white);
	border-bottom: 1px solid var(--mr-border);
}
.mr-product-card__media img {
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	/* Dobavljačevi snimci nisu svi kvadratni: dio je 768x877, pa ih je `contain`
	   u kvadratnom okviru stavljao među bijele trake sa strane. `cover` popuni
	   okvir, a odsijeca samo 12 posto visine, i to bijeli rub. Izmjereno na
	   uzorku: motiv zauzima najviše 81 posto raspona snimka, pa ni uvećanje ne
	   dolazi blizu njega. */
	padding: 0;
	object-fit: cover;
	object-position: center;
	transform: scale(1.06);
	transition: transform 0.4s;
}
.mr-product-card:hover .mr-product-card__media img { transform: scale(1.09); }

/* Red sa brendom je jednako visok na SVAKOJ kartici, bez obzira da li brend ima
   visok logo (Scheppach) ili usku traku wordmarka. Da nije tako, naslovi u istom
   redu proizvoda ne počinju u istoj liniji — klijent je to tražio 4. 9. 2026. */
.mr-product-card {
	--mr-card-identity-h: 46px;
	--mr-card-brand-logo-h: 22px;
	--mr-card-brand-tall-h: 44px;
}
.mr-product-card__identity {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	min-height: var(--mr-card-identity-h);
	margin-bottom: 6px;
}

.mr-product-card__signals {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	flex: 0 1 auto;
	flex-wrap: wrap;
	gap: 5px;
	min-width: 0;
	min-height: 0;
	max-width: 62%;
	margin-left: auto;
	padding: 0;
	overflow: visible;
}
.mr-product-card__signals.is-empty {
	display: none;
}
.mr-product-card__signals .mr-badge {
	flex: 0 1 auto;
	max-width: 100%;
	padding: 3px 7px;
	overflow: hidden;
	/* 9 px se na telefonu nije moglo pročitati. Ako ne stane, skraćuje se
	   trotačkom — oznaka koja se ne čita nije uštedjela ništa. */
	font-size: 11px;
	line-height: 1.35;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.mr-badge__compact { display: none; }

.mr-product-card__body {
	display: flex;
	flex-direction: column;
	flex: 1;
	padding: 14px;
}
.mr-product-card__brand {
	display: inline-flex;
	align-items: center;
	justify-content: flex-start;
	align-self: flex-start;
	width: 100px;
	height: var(--mr-card-identity-h, 30px);
	min-height: var(--mr-card-identity-h, 30px);
	max-width: 100%;
	padding: 4px;
	box-sizing: border-box;
	overflow: hidden;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--mr-outline);
	margin-bottom: 3px;
}
.mr-product-card__identity .mr-product-card__brand {
	flex: 0 1 100px;
	margin-bottom: 0;
}
.mr-product-card__brand-logo {
	display: block;
	width: 92px;
	height: var(--mr-card-brand-logo-h, 22px);
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
	object-position: left center;
}
.mr-product-card__brand.mr-brand-identity--dark { border-radius: 4px; background: var(--mr-navy, #102454); }
/* Puni Scheppach Germany logo ima visok format; koristi punu visinu reda umjesto
   uske trake wordmarka, ali red ostaje iste visine kao na ostalim karticama. */
.mr-product-card__identity .mr-product-card__brand.mr-brand-identity--brand-scheppach.has-logo {
	padding: 0;
}
.mr-product-card__identity .mr-brand-identity--brand-scheppach .mr-product-card__brand-logo {
	width: auto;
	height: var(--mr-card-brand-tall-h, 44px);
	margin: 0;
}
.mr-product-card__brand-name { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mr-product-card__title {
	font-family: var(--mr-font-body);
	font-size: 14px;
	font-weight: 700;
	line-height: 1.35;
	margin: 0 0 8px;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	min-height: 2.7em;
}
.mr-product-card__title a { color: var(--mr-ink); }
.mr-product-card__title a:hover { color: var(--mr-primary); }

.mr-product-card__rating { display: flex; align-items: center; gap: 6px; margin-bottom: 6px; }
.mr-product-card__rating-count { font-size: 12px; color: var(--mr-outline); }

.mr-product-card__trust {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 6px 10px;
	min-height: 24px;
	margin-bottom: 10px;
}
.mr-product-card__stock { min-width: 0; }

.mr-product-warranty {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	max-width: 100%;
	padding: 3px 7px;
	border-radius: 6px;
	background: var(--mr-primary-pale);
	color: var(--mr-primary);
	font-size: 11px;
	font-weight: 650;
	line-height: 1.3;
	white-space: nowrap;
}
.mr-product-warranty .mr-icon {
	flex: 0 0 auto;
}

/* Besplatna dostava je potvrđena pogodnost kupovine, pa koristi dosljednu
   zelenu statusnu oznaku na karticama i na stranici proizvoda. */
.mr-badge--shipping {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	max-width: 100%;
	padding: 4px 8px;
	color: #17662f;
	background: #edf8f0;
	border: 1px solid #acd7b7;
	border-radius: 7px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1.3;
	text-transform: none;
	white-space: nowrap;
}
.mr-badge--shipping::before {
	display: inline-grid;
	width: 15px;
	height: 15px;
	place-items: center;
	flex: 0 0 15px;
	content: '\2713';
	color: #17662f;
	font-size: 10px;
	font-weight: 800;
	line-height: 1;
	background: #d7efdd;
	border-radius: 50%;
}
.mr-badge--shipping-single {
	padding: 6px 10px;
	font-size: 12px;
}

.mr-product-card__footer {
	display: flex;
	flex-direction: column;
	width: 100%;
	margin-top: auto;
}
.mr-product-card__price { margin-bottom: 12px; min-height: 44px; display: flex; flex-direction: column; justify-content: flex-end; }
.mr-product-card__price .price { display: flex; flex-direction: column; line-height: 1.25; }
.mr-product-card__price del {
	position: relative;
	display: inline-flex;
	align-self: flex-start;
	font-size: 13px;
	line-height: 1.15;
	color: var(--mr-outline);
	text-decoration: none;
}
.mr-product-card__price del::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	height: 1.5px;
	background: currentColor;
	transform: translateY(-50%);
	pointer-events: none;
}
.mr-product-card__price del .amount {
	color: var(--mr-outline);
	font-size: 13px;
	font-weight: 500;
}
.mr-product-card__price ins { text-decoration: none; }
.mr-product-card__price .amount {
	font-family: var(--mr-font-heading);
	font-size: 20px;
	font-weight: 700;
	color: var(--mr-accent);
}

.woocommerce ul.products li.product.mr-product-card .button.mr-btn--block,
.woocommerce-page ul.products li.product.mr-product-card .button.mr-btn--block {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 44px;
	margin: 0;
	font-size: 13px;
	line-height: 1.2;
	text-align: center;
}

/* Male širine (360–430 px): dvije čitljive kartice u redu. */
@media (max-width: 430px) {
	/* Isti kompaktni 4:3 okvir koristi se i na telefonu. */
	ul.products { gap: 10px; }
	.mr-product-card__body { padding: 10px; }
	.mr-product-card__title { font-size: 13px; }
	.mr-product-card__price .amount { font-size: 17px; }
	.mr-product-card__price { min-height: 40px; margin-bottom: 8px; }
	.mr-product-card .button.mr-btn--block {
		min-height: 44px;
		font-size: 12px;
		padding: 6px 8px;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}
	.mr-compare-btn { min-height: 44px; margin-top: 2px; font-size: 12px; }
}

@media (max-width: 767px) {
	.mr-shop__header {
		margin-bottom: 18px;
		text-align: center;
	}
	.mr-shop__header .term-description,
	.mr-shop__header p {
		margin-inline: auto;
	}
	.mr-shop__mobile-tools {
		display: contents;
	}
	.mr-shop__mobile-bar {
		position: sticky;
		top: 102px;
		z-index: 28;
		align-items: stretch;
		gap: 8px;
		margin: 0;
		padding: 8px 0;
		background: var(--mr-bg);
		border-bottom: 1px solid var(--mr-border);
		box-shadow: 0 5px 12px rgba(13, 31, 69, 0.06);
	}
	/*
	 * Sortiranje uzima ostatak reda, dugme „Filteri" samo svoju širinu.
	 * Na pola reda (128 px za tekst na ekranu od 375 px) odsijecao se i
	 * zatečeni naziv „Standardno sortiranje" (135 px). Ovako je 206 px, pa
	 * stane i najduži naziv cijene (181 px), i na ekranu od 360 px.
	 */
	.mr-shop__mobile-bar > .mr-btn { flex: 0 0 auto; min-width: 0; }
	.mr-shop__mobile-sort { flex: 1 1 auto; min-width: 0; }
	.mr-shop__mobile-bar > .mr-btn {
		min-height: 48px;
		justify-content: center;
		background: var(--mr-white);
		border-color: var(--mr-border-soft);
	}
	.mr-shop__mobile-bar > .mr-btn.is-active {
		background: var(--mr-primary-pale);
		border-color: var(--mr-primary);
		color: var(--mr-primary);
	}
	.mr-shop__mobile-sort .woocommerce-ordering { width: 100%; margin: 0; }
	.mr-shop__mobile-sort select {
		width: 100%;
		height: 48px;
		min-width: 0;
		padding: 0 30px 0 10px;
		background: var(--mr-white);
		border: 1px solid var(--mr-border-soft);
		border-radius: var(--mr-r-sm);
		color: var(--mr-ink);
		font-size: 13px;
		font-weight: 650;
		text-overflow: ellipsis;
	}
	.mr-shop__mobile-count {
		display: block;
		clear: both;
		margin: 8px 0 16px;
		text-align: left;
		font-size: 12px;
	}
	.mr-shop__mobile-count .woocommerce-result-count {
		float: none;
		width: auto;
		margin: 0;
	}
	.mr-shop__toolbar {
		flex-direction: column;
		align-items: stretch;
		padding: 12px;
	}
	.mr-shop__toolbar.is-empty { display: none; }
	.mr-shop__toolbar .mr-shop__result-count {
		display: none;
	}
	.mr-shop__toolbar .mr-shop__orderby { display: none; }
	.mr-shop__chips:empty,
	.mr-shop__chips.is-empty {
		display: none;
	}
}

@media (max-width: 374px) {
	.mr-shop__mobile-bar { gap: 6px; }
	.mr-shop__mobile-bar > .mr-btn,
	.mr-shop__mobile-sort select { font-size: 12px; }
}
/*
 * WooCommerce poslije AJAX dodavanja ubacuje još jedan link „Vidi korpu".
 * Toast, korpa u zaglavlju i mobilna navigacija već potvrđuju radnju, pa ovaj
 * treći poziv samo mijenja visinu kartice.
 */
.woocommerce .mr-product-card a.added_to_cart,
.mr-product-card a.added_to_cart { display: none; }

/* Zvjezdice */
/* Sirina se ne postavlja rukom nego je diktira samih pet zvjezdica.
   Do 4.107.5 je stajalo `width: 5.4em`, a pet znakova sa razmakom od 0.1em
   zauzme 5.5em, pa se zadnjoj odsijecao vrh: puna ocjena 5 se citala kao 4,5.
   Posto je razmak i iza zadnje zvjezdice, jedna zvjezdica je tacno petina
   sirine, pa postotak koji WooCommerce upise u `span` pada gdje treba. */
.woocommerce .star-rating,
.star-rating {
	position: relative;
	display: inline-block;
	/* `max-content` mora stajati izricito: WooCommerceov vlastiti stil postavlja
	   `width: 5.4em` i puko brisanje ovog reda ga ne nadjacava. */
	width: max-content;
	height: 1em;
	line-height: 1;
	font-size: 13px;
	font-family: star, sans-serif;
	white-space: nowrap;
	overflow: hidden;
}
.woocommerce .star-rating::before,
.star-rating::before {
	content: '\2605\2605\2605\2605\2605';
	color: var(--mr-border-soft);
	/* `static` mora stajati izricito: WooCommerce ovaj pseudoelement drzi
	   apsolutno pozicioniranim, pa bez ovoga ne bi diktirao sirinu i okvir bi
	   pao na nulu. */
	position: static;
	letter-spacing: 0.1em;
}
.woocommerce .star-rating span,
.star-rating span {
	position: absolute; top: 0; left: 0;
	height: 100%;
	overflow: hidden;
	white-space: nowrap;
	padding-top: 1.5em;
}
.woocommerce .star-rating span::before,
.star-rating span::before {
	content: '\2605\2605\2605\2605\2605';
	color: var(--mr-star);
	position: absolute; top: 0; left: 0;
	letter-spacing: 0.1em;
}

/* ==========================================================================
   Shop raspored
   ========================================================================== */

.mr-shop { padding: 20px 0 40px; }
.mr-shop__header { margin-bottom: 20px; max-width: 100%; }
.mr-shop__title { font-size: 26px; margin: 0 0 8px; }
.mr-shop__header .term-description,
.mr-shop__header p { color: var(--mr-ink-muted); font-size: 15px; max-width: 820px; }

/* Kategorije su putokaz prema proizvodima. Glavne kategorije ostaju kratka
 * traka, a brojne podkategorije koriste urednu mrežu sa progresivnim otkrivanjem. */
.mr-shop-subcategories-wrap { margin-top: 20px; }
.mr-shop-subcategories { gap: 8px; margin: 0; }

.mr-shop-subcategories--roots {
	display: flex;
	flex-wrap: wrap;
}

.mr-shop-subcategories--children {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(235px, 1fr));
}

.mr-shop-subcategory {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-width: 0;
	min-height: 46px;
	padding: 5px 11px 5px 5px;
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-md);
	background: #fff;
	color: var(--mr-ink);
	font-size: 13px;
	line-height: 1.2;
	text-decoration: none;
	transition: border-color 0.2s ease, background-color 0.2s ease;
}

.mr-shop-subcategories--children .mr-shop-subcategory {
	width: 100%;
	min-height: 56px;
	padding: 6px 10px 6px 6px;
}

.mr-shop-subcategory:hover,
.mr-shop-subcategory:focus-visible {
	border-color: var(--mr-primary);
	background: var(--mr-primary-pale);
}

.mr-shop-subcategory__thumb { width: 34px; height: 34px; }
.mr-shop-subcategories--children .mr-shop-subcategory__thumb { width: 42px; height: 42px; }
.mr-shop-subcategory__name {
	display: -webkit-box;
	flex: 1;
	min-width: 0;
	overflow: hidden;
	font-weight: 600;
	line-height: 1.25;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}
.mr-shop-subcategory--all {
	padding-left: 11px;
	color: var(--mr-primary);
	background: var(--mr-primary-pale);
}
.mr-shop-subcategory small {
	flex: 0 0 auto;
	color: var(--mr-outline);
	font-size: 12px;
	font-variant-numeric: tabular-nums;
}

.has-desktop-overflow .mr-shop-subcategories--children.is-collapsed > .mr-shop-subcategory:nth-child(n+9) { display: none; }

.mr-shop-subcategories-toggle {
	display: none;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 44px;
	margin: 12px auto 0;
	padding: 8px 14px;
	border: 1px solid var(--mr-border-soft);
	border-radius: var(--mr-r-md);
	background: #fff;
	color: var(--mr-primary);
	font-size: 13px;
	font-weight: 700;
}
.mr-shop-subcategories-toggle--mobile { display: none; }
.has-desktop-overflow .mr-shop-subcategories-toggle--desktop { display: inline-flex; }
.mr-shop-subcategories-toggle:hover,
.mr-shop-subcategories-toggle:focus-visible { border-color: var(--mr-primary); background: var(--mr-primary-pale); }
.mr-shop-subcategories-toggle__count {
	min-width: 24px;
	padding: 2px 7px;
	border-radius: var(--mr-r-pill);
	background: var(--mr-primary-pale);
	font-size: 11px;
	font-variant-numeric: tabular-nums;
}
.mr-shop-subcategories-toggle .mr-icon { transition: transform 0.2s ease; }
.mr-shop-subcategories-toggle.is-expanded .mr-icon { transform: rotate(180deg); }

.mr-product-landing {
	--mr-landing-accent: var(--mr-primary);
	--mr-landing-accent-soft: var(--mr-primary-pale);
	--mr-landing-hero-start: #071b3f;
	--mr-landing-hero-end: #123f83;
	padding: 22px 0 80px;
	background:
		linear-gradient(180deg, #f2f5fa 0, var(--mr-bg) 330px);
}

.mr-product-landing--sale {
	--mr-landing-accent: #c0192d;
	--mr-landing-accent-soft: #fff0f2;
	--mr-landing-hero-start: #101b39;
	--mr-landing-hero-end: #70182b;
}

/* Poklon je na kartici crven kao i akcija, pa grupa zadržava istu boju. */
.mr-product-landing--gifts {
	--mr-landing-accent: #c0192d;
	--mr-landing-accent-soft: #fff0f2;
	--mr-landing-hero-start: #101b39;
	--mr-landing-hero-end: #70182b;
}

/* Prekidač grupa: bira se prije kategorije, pa stoji iznad nje. */
.mr-landing-groups {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin-top: 18px;
}

.mr-landing-groups__item {
	display: flex;
	align-items: center;
	gap: 11px;
	min-height: 60px;
	padding: 11px 14px;
	color: var(--mr-ink-muted);
	background: var(--mr-white);
	border: 1px solid var(--mr-border);
	border-radius: 14px;
	box-shadow: 0 6px 18px rgba(13, 31, 69, 0.05);
	text-decoration: none;
	transition: color 0.18s ease, background-color 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

.mr-landing-groups__item:hover,
.mr-landing-groups__item:focus-visible {
	color: var(--mr-landing-accent);
	border-color: color-mix(in srgb, var(--mr-landing-accent) 35%, var(--mr-border));
	transform: translateY(-1px);
}

.mr-landing-groups__item.is-active {
	color: var(--mr-landing-accent);
	background: var(--mr-landing-accent-soft);
	border-color: var(--mr-landing-accent);
	box-shadow: inset 0 0 0 1px var(--mr-landing-accent);
}

.mr-landing-groups__icon {
	display: grid;
	flex: 0 0 38px;
	width: 38px;
	height: 38px;
	place-items: center;
	color: var(--mr-landing-accent);
	background: var(--mr-landing-accent-soft);
	border-radius: 10px;
}

.mr-landing-groups__item.is-active .mr-landing-groups__icon {
	color: var(--mr-white);
	background: var(--mr-landing-accent);
}

.mr-landing-groups__copy {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 2px;
}

.mr-landing-groups__copy strong {
	color: var(--mr-ink);
	font-size: 15px;
	font-weight: 750;
	line-height: 1.2;
}

.mr-landing-groups__item.is-active .mr-landing-groups__copy strong {
	color: var(--mr-landing-accent);
}

.mr-landing-groups__copy small {
	overflow: hidden;
	color: var(--mr-ink-muted);
	font-size: 12px;
	line-height: 1.3;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.mr-landing-groups__count {
	margin-left: auto;
	padding: 3px 10px;
	color: var(--mr-ink-muted);
	background: var(--mr-bg);
	border-radius: 999px;
	font-size: 13px;
	font-weight: 750;
	font-variant-numeric: tabular-nums;
}

.mr-landing-groups__item.is-active .mr-landing-groups__count {
	color: var(--mr-white);
	background: var(--mr-landing-accent);
}

@media (max-width: 480px) {
	.mr-landing-groups__item {
		padding: 10px 11px;
	}

	.mr-landing-groups__copy small {
		display: none;
	}
}

.mr-product-landing__hero {
	position: relative;
	isolation: isolate;
	display: grid;
	width: 100%;
	min-width: 0;
	grid-template-columns: minmax(0, 1fr) minmax(240px, 300px);
	align-items: center;
	gap: 48px;
	min-height: 330px;
	margin-top: 8px;
	padding: 44px 48px;
	overflow: hidden;
	color: var(--mr-white);
	background:
		linear-gradient(125deg, var(--mr-landing-hero-start), var(--mr-landing-hero-end));
	border-radius: 24px;
	box-shadow: 0 22px 48px rgba(7, 27, 63, 0.16);
}

.mr-product-landing__hero::before,
.mr-product-landing__hero::after {
	position: absolute;
	z-index: -1;
	content: "";
	pointer-events: none;
}

.mr-product-landing__hero::before {
	inset: 0;
	background:
		radial-gradient(circle at 91% 8%, rgba(255, 255, 255, 0.19), transparent 29%),
		radial-gradient(circle at 58% 120%, color-mix(in srgb, var(--mr-landing-accent) 45%, transparent), transparent 40%);
}

.mr-product-landing__hero::after {
	top: -84px;
	right: -70px;
	width: 300px;
	height: 300px;
	border: 56px solid rgba(255, 255, 255, 0.055);
	border-radius: 50%;
}

.mr-product-landing__hero-content,
.mr-product-landing__summary {
	position: relative;
	z-index: 1;
	min-width: 0;
	max-width: 100%;
}

.mr-product-landing__eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 16px;
	padding: 7px 12px;
	color: var(--mr-white);
	background: rgba(255, 255, 255, 0.13);
	border: 1px solid rgba(255, 255, 255, 0.22);
	border-radius: var(--mr-r-pill);
	font-size: 12px;
	font-weight: 750;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.mr-product-landing__hero h1 {
	max-width: 720px;
	margin: 0 0 14px;
	color: var(--mr-white);
	font-size: clamp(40px, 4.5vw, 62px);
	line-height: 1.02;
	letter-spacing: -0.035em;
}

.mr-product-landing__hero-content > p {
	max-width: 720px;
	margin: 0;
	color: rgba(255, 255, 255, 0.82);
	font-size: 17px;
	line-height: 1.65;
	overflow-wrap: break-word;
}

.mr-product-landing__hero-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 18px;
	margin-top: 26px;
}

.mr-product-landing__hero .mr-btn--white {
	min-height: 50px;
	border-radius: 9px;
	box-shadow: 0 10px 24px rgba(0, 0, 0, 0.14);
}

.mr-product-landing__shop-link {
	display: inline-flex;
	align-items: center;
	min-height: 46px;
	color: var(--mr-white);
	font-size: 14px;
	font-weight: 700;
	text-decoration: underline;
	text-decoration-color: rgba(255, 255, 255, 0.38);
	text-underline-offset: 5px;
}

.mr-product-landing__shop-link:hover,
.mr-product-landing__shop-link:focus-visible {
	color: var(--mr-white);
	text-decoration-color: currentColor;
}

.mr-product-landing__summary {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	min-width: 0;
	padding: 26px;
	background: rgba(255, 255, 255, 0.11);
	border: 1px solid rgba(255, 255, 255, 0.2);
	border-radius: 18px;
	box-shadow: inset 0 1px rgba(255, 255, 255, 0.12);
	backdrop-filter: blur(8px);
}

.mr-product-landing__summary-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 54px;
	margin-bottom: 18px;
	color: var(--mr-white);
	background: rgba(255, 255, 255, 0.14);
	border-radius: 15px;
}

.mr-product-landing__summary strong {
	color: var(--mr-white);
	font-family: var(--mr-font-heading);
	font-size: 46px;
	line-height: 1;
	font-variant-numeric: tabular-nums;
}

.mr-product-landing__summary > span {
	margin-top: 7px;
	color: var(--mr-white);
	font-size: 15px;
	font-weight: 750;
}

.mr-product-landing__summary small {
	width: 100%;
	margin-top: 15px;
	padding-top: 15px;
	color: rgba(255, 255, 255, 0.69);
	border-top: 1px solid rgba(255, 255, 255, 0.14);
	font-size: 12px;
	line-height: 1.45;
}

.mr-product-landing__categories {
	display: flex;
	align-items: stretch;
	gap: 12px;
	margin-top: 20px;
	padding: 14px;
	overflow-x: auto;
	background: var(--mr-white);
	border: 1px solid var(--mr-border);
	border-radius: 16px;
	box-shadow: 0 8px 24px rgba(13, 31, 69, 0.06);
	scroll-snap-type: x proximity;
	scrollbar-width: thin;
}

.mr-product-landing__categories a {
	display: inline-flex;
	flex: 0 0 200px;
	align-items: center;
	gap: 11px;
	min-height: 92px;
	padding: 10px;
	color: var(--mr-ink-muted);
	background: var(--mr-white);
	border: 1px solid var(--mr-border);
	border-radius: 13px;
	text-decoration: none;
	scroll-snap-align: start;
	transition: color 0.18s ease, background-color 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

.mr-product-landing__categories a:hover,
.mr-product-landing__categories a:focus-visible {
	color: var(--mr-landing-accent);
	border-color: color-mix(in srgb, var(--mr-landing-accent) 35%, var(--mr-border));
	box-shadow: 0 8px 20px rgba(13, 31, 69, 0.08);
	transform: translateY(-1px);
}

.mr-product-landing__categories a:active {
	transform: scale(0.985);
}

.mr-product-landing__categories a.is-active {
	color: var(--mr-landing-accent);
	background: color-mix(in srgb, var(--mr-landing-accent) 8%, var(--mr-white));
	border-color: var(--mr-landing-accent);
	box-shadow: inset 0 0 0 1px var(--mr-landing-accent);
}

.mr-product-landing__category-media {
	display: grid;
	flex: 0 0 62px;
	width: 62px;
	height: 62px;
	overflow: hidden;
	place-items: center;
	background: var(--mr-white);
	border-radius: 10px;
	box-shadow: inset 0 0 0 1px rgba(13, 31, 69, 0.09);
}

.mr-product-landing__category-image {
	box-sizing: border-box;
	width: 100%;
	height: 100%;
	padding: 4px;
	object-fit: contain;
}

.mr-product-landing__category-copy {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 7px;
	min-width: 0;
}

.mr-product-landing__category-copy strong {
	color: inherit;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.25;
	text-wrap: balance;
}

.mr-product-landing__category-copy small {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 25px;
	height: 24px;
	padding: 0 7px;
	color: var(--mr-ink-muted);
	background: rgba(0, 0, 0, 0.055);
	border-radius: var(--mr-r-pill);
	font-size: 11px;
	font-variant-numeric: tabular-nums;
}

.mr-product-landing__categories .is-active .mr-product-landing__category-copy small {
	color: var(--mr-landing-accent);
	background: color-mix(in srgb, var(--mr-landing-accent) 12%, var(--mr-white));
}

.mr-product-landing__products {
	margin-top: 48px;
	scroll-margin-top: 150px;
}

.mr-product-landing__section-head {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 28px;
	margin-bottom: 22px;
}

.mr-product-landing__section-head > div {
	max-width: 780px;
}

.mr-product-landing__section-head span {
	display: block;
	margin-bottom: 7px;
	color: var(--mr-landing-accent);
	font-size: 12px;
	/* 700 je najdeblje što IBM Plex Sans ima. */
	font-weight: 700;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.mr-product-landing__section-head h2 {
	margin: 0;
	font-size: clamp(28px, 3vw, 40px);
	letter-spacing: -0.025em;
}

.mr-product-landing__section-head p {
	max-width: 680px;
	margin: 9px 0 0;
	color: var(--mr-ink-muted);
}

.mr-landing-subcategories { margin-bottom: 24px; }
.mr-landing-subcategories__path {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px 10px;
	margin: 0 0 12px;
	padding: 0;
	list-style: none;
	font-size: 14px;
}
.mr-landing-subcategories__path li + li::before { content: '›'; margin-right: 10px; color: var(--mr-ink-muted); }
.mr-landing-subcategories .mr-shop-subcategory[aria-current="page"] { border-color: var(--mr-primary); background: var(--mr-primary-pale); }

.mr-product-landing__toolbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 14px 20px;
	margin-bottom: 24px;
	padding: 14px 16px;
	background: var(--mr-white);
	border: 1px solid var(--mr-border);
	border-radius: 12px;
	box-shadow: 0 4px 14px rgba(13, 31, 69, 0.04);
}

.mr-product-landing__result {
	margin: 0;
	color: var(--mr-ink-muted);
	font-size: 13px;
}

.mr-product-landing__ordering,
.mr-product-landing__brand-filter {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0;
}

.mr-product-landing__ordering label,
.mr-product-landing__brand-filter label {
	color: var(--mr-ink);
	font-size: 13px;
	font-weight: 700;
	white-space: nowrap;
}

.mr-product-landing__ordering select,
.mr-product-landing__brand-filter select {
	min-width: 205px;
	min-height: 42px;
	padding: 8px 38px 8px 12px;
	color: var(--mr-ink);
	background-color: var(--mr-white);
	border: 1px solid var(--mr-border-soft);
	border-radius: 8px;
	font-size: 13px;
	font-weight: 600;
}

/* Naziv brenda je kratak, pa meni ne treba širinu koju traži „Cijena: viša
   prema nižoj". Uže polje ostavlja mjesta pretrazi u istom redu. */
.mr-product-landing__brand-filter select { min-width: 168px; }

.mr-product-landing__ordering select:focus,
.mr-product-landing__brand-filter select:focus {
	outline: 0;
	border-color: var(--mr-landing-accent);
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--mr-landing-accent) 13%, transparent);
}

.mr-product-landing ul.products {
	margin-top: 0;
	margin-bottom: 0;
}

.mr-product-landing .mr-product-card {
	box-shadow: 0 7px 22px rgba(13, 31, 69, 0.055);
}

.mr-product-landing .mr-product-card:hover {
	box-shadow: 0 14px 30px rgba(13, 31, 69, 0.1);
}

.mr-product-landing--sale .mr-product-card__price ins {
	color: var(--mr-accent);
}

.mr-product-landing .mr-shop__pagination {
	margin-top: 40px;
}

@media (max-width: 900px) {
	.mr-product-landing__hero {
		grid-template-columns: 1fr;
		gap: 30px;
		padding: 38px;
	}

	.mr-product-landing__summary {
		display: grid;
		grid-template-columns: 54px auto 1fr;
		align-items: center;
		gap: 4px 16px;
	}

	.mr-product-landing__summary-icon {
		grid-row: 1 / span 3;
		margin: 0;
	}

	.mr-product-landing__summary strong {
		grid-column: 2;
		font-size: 36px;
	}

	.mr-product-landing__summary > span {
		grid-column: 3;
		margin: 0;
	}

	.mr-product-landing__summary small {
		grid-column: 2 / -1;
		margin-top: 2px;
		padding-top: 10px;
	}
}

@media (max-width: 640px) {
	.mr-product-landing {
		padding-top: 14px;
		padding-bottom: 58px;
	}

	.mr-product-landing__hero {
		gap: 24px;
		min-height: 0;
		padding: 28px 22px;
		border-radius: 18px;
		box-shadow: 0 14px 32px rgba(7, 27, 63, 0.14);
	}

	.mr-product-landing__hero::after {
		width: 210px;
		height: 210px;
		border-width: 38px;
	}

	/* Na telefonu se izostavlja. „Naš izbor" iznad naslova „Preporučeni
	   proizvodi" ne dodaje ništa, a uzima red iznad naslova na ekranu gdje je
	   svaki red skup. Naslov nosi svoju težinu sam. Na desktopu ostaje. */
	.mr-product-landing__eyebrow {
		display: none;
	}

	.mr-product-landing__hero h1 {
		font-size: clamp(34px, 11vw, 46px);
	}

	.mr-product-landing__hero-content > p {
		font-size: 15px;
		line-height: 1.55;
	}

	.mr-product-landing__hero-actions {
		align-items: stretch;
		gap: 10px;
		margin-top: 22px;
	}

	.mr-product-landing__hero-actions .mr-btn {
		flex: 1 1 100%;
	}

	.mr-product-landing__shop-link {
		justify-content: center;
		width: 100%;
	}

	.mr-product-landing__summary {
		grid-template-columns: 46px auto;
		gap: 4px 13px;
		padding: 18px;
	}

	.mr-product-landing__summary-icon {
		width: 46px;
		height: 46px;
	}

	.mr-product-landing__summary strong {
		grid-column: 2;
		font-size: 32px;
	}

	.mr-product-landing__summary > span,
	.mr-product-landing__summary small {
		grid-column: 1 / -1;
	}

	.mr-product-landing__summary > span {
		margin-top: 8px;
	}

	.mr-product-landing__summary small {
		margin-top: 10px;
	}

	.mr-product-landing__categories {
		margin-right: -16px;
		margin-left: -16px;
		padding-top: 12px;
		padding-right: 16px;
		padding-bottom: 12px;
		padding-left: 16px;
		border-right: 0;
		border-left: 0;
		border-radius: 0;
		box-shadow: none;
	}

	.mr-product-landing__categories a {
		flex-basis: 174px;
		min-height: 82px;
		padding: 9px;
	}

	.mr-product-landing__category-media {
		flex-basis: 54px;
		width: 54px;
		height: 54px;
	}

	.mr-product-landing__category-copy strong {
		font-size: 12.5px;
	}

	.mr-product-landing__products {
		margin-top: 36px;
	}

	.mr-product-landing__section-head {
		margin-bottom: 18px;
	}

	.mr-product-landing__section-head h2 {
		font-size: 28px;
	}

	.mr-product-landing__section-head p {
		font-size: 14px;
	}

	.mr-product-landing__toolbar {
		flex-direction: column;
		align-items: stretch;
		gap: 12px;
	}

	.mr-product-landing__ordering,
	.mr-product-landing__brand-filter {
		display: grid;
		grid-template-columns: auto minmax(0, 1fr);
	}

	.mr-product-landing__ordering select,
	.mr-product-landing__brand-filter select {
		width: 100%;
		min-width: 0;
	}
}

@media (max-width: 1199px) {
	.mr-shop-subcategories--children { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.mr-shop-subcategories-toggle { display: none; }
	.has-tablet-overflow .mr-shop-subcategories--children.is-collapsed > .mr-shop-subcategory:nth-child(n+9) { display: none; }
	.has-tablet-overflow .mr-shop-subcategories-toggle--desktop { display: inline-flex; }
}

@media (max-width: 767px) {
	.mr-shop-subcategories-wrap { margin-top: 16px; }
	.mr-shop-subcategories--roots {
		flex-wrap: nowrap;
		overflow-x: auto;
		gap: 6px;
		margin-left: -16px;
		margin-right: -16px;
		padding: 0 16px 4px;
		scrollbar-width: none;
		-webkit-overflow-scrolling: touch;
	}
	.mr-shop-subcategories--roots::-webkit-scrollbar { display: none; }
	.mr-shop-subcategories--roots .mr-shop-subcategory {
		flex: 0 0 auto;
		min-height: 40px;
		padding: 4px 10px 4px 4px;
		font-size: 12.5px;
	}
	.mr-shop-subcategories--roots .mr-shop-subcategory__thumb { width: 30px; height: 30px; }
	.mr-shop-subcategories--roots .mr-shop-subcategory__name { max-width: 118px; }
	.mr-shop-subcategory--all { padding-left: 10px; }

	.mr-shop-subcategories--children {
		grid-template-columns: 1fr;
		gap: 6px;
	}
	.mr-shop-subcategories--children .mr-shop-subcategory {
		min-height: 54px;
		padding: 5px 9px 5px 5px;
		font-size: 13px;
	}
	.mr-shop-subcategories--children .mr-shop-subcategory__thumb { width: 40px; height: 40px; }
	.mr-shop-subcategories-toggle { display: none; width: 100%; margin-top: 8px; }
	.has-mobile-overflow .mr-shop-subcategories--children.is-collapsed > .mr-shop-subcategory:nth-child(n+5) { display: none; }
	.has-mobile-overflow .mr-shop-subcategories-toggle--mobile { display: flex; }
	.has-mobile-overflow .mr-shop-subcategories-toggle--desktop { display: none; }
}

/* Pretraživ mobilni panel za brojne podkategorije. */
.mr-subcats-sheet { display: none; }
@media (max-width: 767px) {
	.mr-subcats-sheet {
		position: fixed;
		inset: 0;
		z-index: 130;
		display: block;
	}
	.mr-subcats-sheet[hidden] { display: none; }
	.mr-subcats-sheet__overlay {
		position: absolute;
		inset: 0;
		width: 100%;
		height: 100%;
		padding: 0;
		background: rgba(15, 23, 42, 0.56);
		border: 0;
	}
	.mr-subcats-sheet__panel {
		position: absolute;
		left: 0;
		right: 0;
		bottom: 0;
		display: flex;
		flex-direction: column;
		max-height: min(90svh, 760px);
		padding: 18px 16px max(22px, env(safe-area-inset-bottom));
		background: var(--mr-white);
		border-radius: var(--mr-r-lg) var(--mr-r-lg) 0 0;
		box-shadow: 0 -12px 36px rgba(16, 24, 40, 0.18);
	}
	.mr-subcats-sheet__head {
		display: flex;
		align-items: flex-start;
		justify-content: space-between;
		gap: 14px;
		margin-bottom: 14px;
	}
	.mr-subcats-sheet__head strong { display: block; font-size: 20px; line-height: 1.2; }
	.mr-subcats-sheet__head span { display: block; margin-top: 3px; color: var(--mr-ink-muted); font-size: 13px; }
	.mr-subcats-sheet__close {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		flex: 0 0 44px;
		width: 44px;
		height: 44px;
		background: var(--mr-muted-bg);
		border: 1px solid var(--mr-border);
		border-radius: 50%;
		color: var(--mr-ink);
	}
	.mr-subcats-sheet__search {
		width: 100%;
		height: 48px;
		padding: 0 14px;
		background: var(--mr-white);
		border: 1px solid var(--mr-border-soft);
		border-radius: var(--mr-r-md);
		color: var(--mr-ink);
		font-size: 16px;
	}
	.mr-subcats-sheet__search:focus { outline: 2px solid var(--mr-primary); outline-offset: 2px; }
	.mr-subcats-sheet__list {
		display: grid;
		gap: 6px;
		margin-top: 12px;
		overflow-y: auto;
		overscroll-behavior: contain;
	}
	/* Stavka ima display: grid, pa bi klasa nadjačala [hidden] iz preglednika i
	   pretraga u panelu ne bi sakrila nijedan red. Isti obrazac kao kod
	   .mr-category-card[hidden] u main.css. */
	.mr-subcats-sheet__item[hidden] { display: none !important; }
	.mr-subcats-sheet__empty[hidden] { display: none !important; }
	.mr-subcats-sheet__item {
		display: grid;
		grid-template-columns: 44px minmax(0, 1fr) auto;
		align-items: center;
		gap: 10px;
		min-height: 56px;
		padding: 5px 10px 5px 5px;
		background: var(--mr-white);
		border: 1px solid var(--mr-border);
		border-radius: var(--mr-r-md);
		color: var(--mr-ink);
		font-size: 13px;
		font-weight: 700;
		line-height: 1.25;
		text-align: left;
	}
	.mr-subcats-sheet__thumb { width: 44px; height: 44px; }
	.mr-subcats-sheet__item small {
		min-width: 26px;
		padding: 2px 7px;
		background: var(--mr-muted-bg);
		border-radius: var(--mr-r-pill);
		color: var(--mr-outline);
		font-size: 11px;
		text-align: center;
	}
	.mr-subcats-sheet__empty { margin: 20px 0 0; color: var(--mr-ink-muted); text-align: center; }
	body.mr-subcats-open { overflow: hidden; }
}

.mr-shop__mobile-tools { margin-bottom: 16px; }
.mr-shop__mobile-bar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 6px;
}
.mr-shop__mobile-count { font-size: 13px; color: var(--mr-ink-muted); }
.mr-shop__mobile-count .woocommerce-result-count { margin: 0; }
.mr-filter-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 20px; height: 20px;
	background: var(--mr-accent);
	color: #fff;
	border-radius: var(--mr-r-pill);
	font-size: 11px;
}

.mr-shop__layout {
	display: grid;
	grid-template-columns: 1fr;
	gap: 28px;
	align-items: start;
	transition: opacity 0.18s ease;
}
.mr-shop.is-loading .mr-shop__layout,
.mr-shop.is-loading .mr-shop__mobile-bar {
	opacity: 0.48;
	pointer-events: none;
}
.mr-shop__loader {
	position: fixed;
	left: 50%;
	top: 50%;
	z-index: 120;
	display: none;
	align-items: center;
	gap: 11px;
	min-height: 52px;
	padding: 12px 18px;
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-md);
	background: var(--mr-white);
	box-shadow: 0 16px 42px rgba(13, 31, 69, 0.18);
	color: var(--mr-ink);
	font-size: 14px;
	font-weight: 700;
	transform: translate(-50%, -50%);
}
.mr-shop.is-loading .mr-shop__loader { display: flex; }

@media (min-width: 900px) {
	.mr-shop__title { font-size: 32px; }
	.mr-shop__layout { grid-template-columns: 280px minmax(0, 1fr); gap: 32px; }
	.mr-shop__mobile-tools { display: none; }
}

/* Sidebar / filteri — stalno vidljiv, sticky, ne pomjera layout. */
@media (min-width: 900px) {
	.mr-shop__sidebar {
		position: sticky;
		top: 120px;
		align-self: start;
		max-height: calc(100vh - 140px);
		overflow-y: auto;
		overscroll-behavior: contain;
		scrollbar-width: thin;
	}
	.mr-shop__sidebar-overlay { display: none; }
	.mr-filters__close, .mr-filters__head .mr-filters__close { display: none; }
}

.mr-filters {
	background: var(--mr-white);
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-lg);
	padding: 20px;
}
.mr-filters__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 6px;
}
.mr-filters__title {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-family: var(--mr-font-heading);
	font-weight: 700;
	font-size: 17px;
}
.mr-filters__close {
	width: 44px; height: 44px;
	display: flex; align-items: center; justify-content: center;
	background: none; border: none; color: var(--mr-ink);
}

/* Pretraga unutar onoga što kupac već gleda. Stoji na vrhu filtera, jer je to
   mjesto na koje gleda kad hoće suziti listu, a ne otvoriti novu. */
.mr-filters__search {
	position: relative;
	display: flex;
	align-items: center;
	margin: 0 0 4px;
}
.mr-filters__search input[type="search"] {
	width: 100%;
	height: 40px;
	padding: 0 40px 0 12px;
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-sm);
	background: #fff;
	font-size: 14px;
	color: var(--mr-ink);
}
.mr-filters__search input[type="search"]:focus {
	outline: none;
	border-color: var(--mr-primary);
	box-shadow: 0 0 0 3px var(--mr-primary-pale);
}
.mr-filters__search-btn {
	position: absolute;
	right: 0;
	width: 40px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: none;
	border: none;
	color: var(--mr-ink-muted);
	cursor: pointer;
}
.mr-filters__search-btn:hover { color: var(--mr-primary); }

.mr-filter-group { padding: 16px 0; border-bottom: 1px solid var(--mr-border); }
.mr-filter-group:last-child { border-bottom: none; padding-bottom: 4px; }
.mr-filter-title { font-size: 14px; font-weight: 700; margin: 0 0 12px; }

.mr-filter-cats { margin: 0; padding: 0; list-style: none; font-size: 14px; }
.mr-filter-cats > li { margin-bottom: 2px; }
.mr-filter-cats a {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 8px;
	padding: 8px 10px;
	border-radius: var(--mr-r-sm);
	color: var(--mr-ink-muted);
	line-height: 1.3;
}
.mr-filter-cat-thumb { width: 30px; height: 30px; }
.mr-filter-cat-thumb--child { width: 24px; height: 24px; border-radius: 7px; }
.mr-filter-cat-name { flex: 1; min-width: 0; }
.mr-filter-cats a:hover { background: var(--mr-muted-bg); color: var(--mr-primary); }
.mr-filter-cats li.is-current > a {
	color: var(--mr-primary);
	font-weight: 700;
	background: var(--mr-primary-pale);
}
/* Podkategorije aktivne grane: uvučene, tanka linija vodilja. */
.mr-filter-subcats { margin: 2px 0 6px; padding: 0 0 0 12px; list-style: none; border-left: 2px solid var(--mr-border); }
.mr-filter-subcats a { padding: 6px 10px; font-size: 13px; }
/* „Prikaži više" za dugu listu kategorija. */
.mr-filter-cats.is-collapsed:not(.is-searching) > li:nth-child(n+9) { display: none; }

.mr-price-filter__row {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 10px;
	color: var(--mr-outline);
}
.mr-price-filter__row input {
	width: 100%;
	min-width: 0;
	height: 40px;
	padding: 0 10px;
	border: 1px solid var(--mr-border-soft);
	border-radius: var(--mr-r-sm);
}
.mr-price-filter__row input:focus { outline: none; border-color: var(--mr-primary); box-shadow: 0 0 0 2px var(--mr-primary-pale); }

.mr-filter-checks { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 4px; }
.mr-filter-check {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 6px 8px;
	border-radius: var(--mr-r-sm);
	color: var(--mr-ink-muted);
	font-size: 14px;
}
.mr-filter-check:hover { background: var(--mr-muted-bg); color: var(--mr-ink); }
.mr-filter-check__box {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 18px; height: 18px;
	border: 2px solid var(--mr-border-soft);
	border-radius: 3px;
	background: var(--mr-white);
	color: transparent;
	flex-shrink: 0;
	transition: background-color 0.15s, border-color 0.15s;
}
.mr-filter-check.is-checked { color: var(--mr-ink); font-weight: 600; }
.mr-filter-check.is-checked .mr-filter-check__box {
	background: var(--mr-primary);
	border-color: var(--mr-primary);
	color: #fff;
}
.mr-filter-brand-logo {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 30px;
	padding: 4px;
	border: 1px solid var(--mr-border-soft);
	border-radius: 4px;
	background: #fff;
	box-sizing: border-box;
	overflow: hidden;
	flex: 0 0 auto;
}
.mr-filter-brand-logo--dark { background: var(--mr-navy, #102454); border-color: var(--mr-navy, #102454); }
.mr-filter-brand-logo img {
	display: block;
	width: 48px;
	height: 22px;
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
	object-position: center;
}
.mr-filter-brand-name { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

/* Pretraga vrijednosti filtera + „Prikaži više" */
.mr-filter-search {
	width: 100%;
	height: 38px;
	margin-bottom: 10px;
	padding: 0 12px;
	border: 1px solid var(--mr-border-soft);
	border-radius: var(--mr-r-sm);
	font-size: 13px;
}
.mr-filter-search:focus { outline: none; border-color: var(--mr-primary); box-shadow: 0 0 0 2px var(--mr-primary-pale); }
.mr-filter-checks.is-collapsed:not(.is-searching) li:nth-child(n+9) { display: none; }
.mr-filter-more {
	margin-top: 8px;
	background: none;
	border: none;
	padding: 4px 0;
	color: var(--mr-primary);
	font-size: 13px;
	font-weight: 700;
}
.mr-filter-more:hover { text-decoration: underline; }

/* Mobilni filter drawer */
@media (max-width: 899px) {
	.mr-shop__sidebar {
		position: fixed;
		inset: 0;
		z-index: 100;
		display: none;
	}
	.mr-shop__sidebar.is-open { display: block; }
	.mr-shop__sidebar-overlay {
		position: absolute;
		inset: 0;
		background: rgba(15, 23, 42, 0.55);
	}
	.mr-shop__sidebar-panel {
		position: absolute;
		left: 0; right: 0; bottom: 0;
		max-height: 86vh;
		overflow-y: auto;
		background: var(--mr-white);
		border-radius: var(--mr-r-lg) var(--mr-r-lg) 0 0;
		padding-bottom: env(safe-area-inset-bottom, 12px);
	}
	.mr-shop__sidebar-panel .mr-filters { border: none; border-radius: 0; }
	body.mr-filters-open { overflow: hidden; }
	.mr-filters__head {
		position: sticky;
		top: 0;
		z-index: 2;
		padding: 4px 0 10px;
		background: var(--mr-white);
	}
}

.mr-filters__footer { display: none; }
@media (max-width: 899px) {
	.mr-shop__sidebar-panel { max-height: 90svh; }
	.mr-filters__footer {
		position: sticky;
		bottom: 0;
		z-index: 3;
		display: grid;
		grid-template-columns: minmax(88px, auto) minmax(0, 1fr);
		align-items: center;
		gap: 10px;
		margin: 14px -20px -20px;
		padding: 12px 20px max(12px, env(safe-area-inset-bottom));
		background: var(--mr-white);
		border-top: 1px solid var(--mr-border);
		box-shadow: 0 -6px 18px rgba(16, 24, 40, 0.08);
	}
	.mr-filters__clear {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-height: 46px;
		padding: 8px 12px;
		color: var(--mr-primary);
		font-size: 14px;
		font-weight: 700;
	}
	.mr-filters__show { min-height: 46px; width: 100%; }
}

/* Toolbar */
.mr-shop__toolbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	background: var(--mr-white);
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-lg);
	padding: 12px 16px;
	margin-bottom: 20px;
}
.mr-shop__chips { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.mr-shop__chips-label { font-size: 12px; font-weight: 600; color: var(--mr-outline); }
.mr-shop__clear-all { font-size: 13px; font-weight: 600; }
.mr-shop__result-count .woocommerce-result-count,
.mr-shop__result-count { margin: 0; font-size: 13px; color: var(--mr-ink-muted); }

.mr-shop__orderby .woocommerce-ordering { margin: 0; }
.mr-shop__orderby select {
	height: 42px;
	padding: 0 34px 0 12px;
	border: 1px solid var(--mr-border-soft);
	border-radius: var(--mr-r-sm);
	background: var(--mr-white);
	font-size: 14px;
	color: var(--mr-ink);
}

/* Paginacija prodavnice */
.mr-shop__pagination .woocommerce-pagination { margin-top: 38px; text-align: center; }
.woocommerce nav.woocommerce-pagination ul.page-numbers,
.woocommerce-page nav.woocommerce-pagination ul.page-numbers {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 9px;
	margin: 0;
	padding: 0;
	border: 0;
}
.woocommerce nav.woocommerce-pagination ul.page-numbers li,
.woocommerce-page nav.woocommerce-pagination ul.page-numbers li {
	display: inline-flex;
	margin: 0;
	border: 0;
}
.woocommerce nav.woocommerce-pagination ul.page-numbers li a,
.woocommerce nav.woocommerce-pagination ul.page-numbers li span,
.woocommerce-page nav.woocommerce-pagination ul.page-numbers li a,
.woocommerce-page nav.woocommerce-pagination ul.page-numbers li span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 46px;
	height: 46px;
	margin: 0;
	padding: 0 12px;
	color: var(--mr-ink);
	font-size: 14px;
	font-weight: 700;
	line-height: 1;
	background: var(--mr-white);
	border: 1px solid var(--mr-border);
	border-radius: 11px;
	box-shadow: none;
	transition: color 0.18s, background-color 0.18s, border-color 0.18s;
}
.woocommerce nav.woocommerce-pagination ul.page-numbers li a:hover,
.woocommerce nav.woocommerce-pagination ul.page-numbers li a:focus-visible,
.woocommerce-page nav.woocommerce-pagination ul.page-numbers li a:hover,
.woocommerce-page nav.woocommerce-pagination ul.page-numbers li a:focus-visible {
	color: var(--mr-primary);
	background: var(--mr-primary-pale);
	border-color: var(--mr-primary);
	box-shadow: none;
	outline: none;
}
.woocommerce nav.woocommerce-pagination ul.page-numbers li span.current,
.woocommerce-page nav.woocommerce-pagination ul.page-numbers li span.current {
	color: var(--mr-white);
	background: var(--mr-primary);
	border-color: var(--mr-primary);
	box-shadow: none;
}
.woocommerce nav.woocommerce-pagination ul.page-numbers li span.dots,
.woocommerce-page nav.woocommerce-pagination ul.page-numbers li span.dots {
	min-width: 24px;
	padding: 0 2px;
	color: var(--mr-outline);
	background: transparent;
	border: 0;
	box-shadow: none;
}
.woocommerce nav.woocommerce-pagination ul.page-numbers li a.prev,
.woocommerce nav.woocommerce-pagination ul.page-numbers li a.next,
.woocommerce-page nav.woocommerce-pagination ul.page-numbers li a.prev,
.woocommerce-page nav.woocommerce-pagination ul.page-numbers li a.next {
	color: var(--mr-primary);
	background: var(--mr-primary-pale);
	border-color: transparent;
}
@media (max-width: 480px) {
	.woocommerce nav.woocommerce-pagination ul.page-numbers,
	.woocommerce-page nav.woocommerce-pagination ul.page-numbers { gap: 6px; }
	.woocommerce nav.woocommerce-pagination ul.page-numbers li a,
	.woocommerce nav.woocommerce-pagination ul.page-numbers li span,
	.woocommerce-page nav.woocommerce-pagination ul.page-numbers li a,
	.woocommerce-page nav.woocommerce-pagination ul.page-numbers li span {
		min-width: 42px;
		height: 42px;
		padding: 0 9px;
	}
}

/* Prazno stanje */
.mr-shop__empty {
	text-align: center;
	padding: 64px 16px;
	background: var(--mr-white);
	border: 1px dashed var(--mr-border-soft);
	border-radius: var(--mr-r-lg);
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 12px;
}
.mr-shop__empty .mr-icon { color: var(--mr-border-soft); }
.mr-shop__empty h2 { margin: 0; font-size: 22px; }
.mr-shop__empty p { margin: 0; color: var(--mr-ink-muted); }
.mr-shop__empty-actions { display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; margin-top: 8px; }

/* Podkategorije u arhivi */
ul.products li.product-category a { display: block; text-align: center; }
ul.products li.product-category img { border-radius: var(--mr-r-md); }
ul.products li.product-category h2 { font-size: 16px; margin: 10px 0; }
ul.products li.product-category .count { color: var(--mr-outline); font-size: 13px; }

/* ==========================================================================
   Stranica proizvoda
   ========================================================================== */

/* Pojedinačno, ne skraćeno. `padding: 20px 0 64px` je postavljao bočni padding
   na 0 i time brisao 16 px koje daje `.mr-container` — cijeli sažetak proizvoda
   je na telefonu dodirivao obje ivice ekrana. */
.mr-single-wrap { padding-top: 20px; padding-bottom: 64px; }

.mr-single-product__grid {
	display: grid;
	grid-template-columns: 1fr;
	min-width: 0;
	gap: 32px;
	margin-bottom: 28px; /* Bilo 48; do karakteristika se dolazi ranije. */
}
@media (min-width: 1024px) {
	.mr-single-product__grid {
		grid-template-columns: 58fr 42fr;
		gap: 48px;
		align-items: start;
	}
	/* Sticky galerija na desktopu. */
	.mr-single-product__gallery {
		position: sticky;
		top: 150px;
	}
}

/* Galerija — poništava WC core float raspored (48%/52%) unutar grida.
   #content varijante su nužne: WC layout koristi ".woocommerce #content …"
   selektore sa ID specifičnošću. */
.woocommerce #content div.product .mr-single-product__grid div.images,
.woocommerce #content div.product .mr-single-product__grid div.summary,
.woocommerce-page #content div.product .mr-single-product__grid div.images,
.woocommerce-page #content div.product .mr-single-product__grid div.summary,
.woocommerce div.product .mr-single-product__grid div.images,
.woocommerce-page div.product .mr-single-product__grid div.images,
.woocommerce div.product .mr-single-product__grid div.summary,
.woocommerce-page div.product .mr-single-product__grid div.summary {
	width: 100%;
	min-width: 0;
	max-width: 100%;
	float: none;
	margin-bottom: 0;
}
.mr-single-product__gallery,
.mr-single-product__summary,
.mr-single-product__gallery .woocommerce-product-gallery,
.mr-gallery__stage,
.mr-gallery__slides,
.mr-gallery__thumbs {
	min-width: 0;
	max-width: 100%;
	box-sizing: border-box;
}
.mr-single-product__gallery .woocommerce-product-gallery {
	position: relative;
	background: var(--mr-white);
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-lg);
	padding: 16px;
}
/* Sigurnosno: kada galerija ima slike, mora biti vidljiva. WooCommerce postavlja
   opacity:0 kao FOUC zaštitu i vraća je na 1 tek nakon JS inicijalizacije; kod
   proizvoda sa jednom slikom taj korak zna ostati nedovršen na desktopu, pa
   galerija ostane nevidljiva. Klasa .images se dodaje serverski kad slike postoje. */
.mr-single-product__gallery .woocommerce-product-gallery.images {
	opacity: 1 !important;
}
/* Zaliha se prikazuje u meta redu ispod naslova — sakrij dupli WC red
   (dostupnost varijacija ostaje vidljiva u .woocommerce-variation-availability). */
.mr-single-product__summary > p.stock { display: none; }
.woocommerce-product-gallery__wrapper { margin: 0; }
.woocommerce-product-gallery__image a { display: block; }
.woocommerce-product-gallery__image img { border-radius: var(--mr-r-md); }
.woocommerce-product-gallery .flex-viewport { border-radius: var(--mr-r-md); }
.woocommerce-product-gallery .flex-control-thumbs {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 8px;
	margin: 12px 0 0;
	padding: 0;
	list-style: none;
}
/* Mobilno: thumbnails kao horizontalni slider, ne 5 uskih kolona. */
@media (max-width: 767px) {
	.woocommerce-product-gallery .flex-control-thumbs {
		display: flex;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		scroll-snap-type: x mandatory;
		padding-bottom: 4px;
	}
	.woocommerce-product-gallery .flex-control-thumbs li {
		flex: 0 0 76px;
		scroll-snap-align: start;
	}
	.mr-single-product__gallery .woocommerce-product-gallery { padding: 10px; }
}
.woocommerce-product-gallery .flex-control-thumbs img {
	border: 2px solid var(--mr-border);
	border-radius: var(--mr-r-md);
	cursor: pointer;
	opacity: 0.75;
	transition: border-color 0.2s, opacity 0.2s;
}
.woocommerce-product-gallery .flex-control-thumbs img:hover,
.woocommerce-product-gallery .flex-control-thumbs img.flex-active {
	border-color: var(--mr-primary);
	opacity: 1;
}
.woocommerce-product-gallery__trigger {
	position: absolute;
	top: 24px; right: 24px;
	z-index: 9;
	width: 40px; height: 40px;
	display: flex; align-items: center; justify-content: center;
	background: var(--mr-white);
	border: 1px solid var(--mr-border);
	border-radius: 50%;
	text-indent: -9999px;
	overflow: hidden;
}
.woocommerce-product-gallery__trigger::before {
	content: '';
	position: absolute;
	top: 12px; left: 12px;
	width: 10px; height: 10px;
	border: 2px solid var(--mr-outline);
	border-radius: 50%;
	text-indent: 0;
}
.woocommerce-product-gallery__trigger::after {
	content: '';
	position: absolute;
	top: 23px; left: 23px;
	width: 2px; height: 6px;
	background: var(--mr-outline);
	transform: rotate(-45deg);
}
.mr-single-product__gallery .onsale {
	position: absolute;
	top: 24px; left: 24px;
	z-index: 9;
}

/* Sažetak */
.mr-single-product__summary .product_title {
	font-size: 26px;
	line-height: 1.2;
	margin: 0 0 10px;
}
@media (min-width: 768px) {
	.mr-single-product__summary .product_title { font-size: 32px; }
}

.mr-product-meta-row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px 18px;
	margin-bottom: 18px;
	font-size: 14px;
	color: var(--mr-ink-muted);
}
.mr-product-brand a {
	font-weight: 700;
	font-size: 13px;
	text-transform: uppercase;
	letter-spacing: 0.06em;
}
.mr-product-brand.mr-brand-identity {
	display: inline-flex;
	align-items: center;
	justify-content: flex-start;
	width: 148px;
	height: 50px;
	max-width: 100%;
	padding: 4px;
	box-sizing: border-box;
	overflow: hidden;
}
.mr-product-brand__logo {
	display: block;
	width: 140px;
	height: 42px;
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
	object-position: left center;
}
.mr-product-brand.mr-brand-identity--dark { border-radius: 6px; background: var(--mr-navy, #102454); color: #fff; }
.mr-product-brand__name { flex: 0 1 auto; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

@media (max-width: 767px) {
	.mr-product-brand.mr-brand-identity { width: 128px; height: 44px; }
	.mr-product-brand__logo { width: 120px; height: 36px; }
}
.mr-product-brand.mr-brand-identity--brand-scheppach.has-logo { width: auto; height: 72px; }
.mr-brand-identity--brand-scheppach .mr-product-brand__logo { width: auto; height: 64px; margin: 0; }

/* Auto-update korpe je progresivno poboljšanje: dugme ostaje u HTML-u za
   no-JS korisnike, ali se u aktivnom prikazu ne vraća nakon AJAX rerendera. */
.js .woocommerce-cart-form [name="update_cart"] { display: none !important; }
.mr-product-rating-row { display: inline-flex; align-items: center; gap: 8px; }
.mr-review-link { font-size: 13px; color: var(--mr-ink-muted); }
.mr-review-link:hover { color: var(--mr-primary); }
.mr-product-sku strong { font-family: monospace; }

/* Cijena (poništava zelenu boju WooCommerce core CSS-a) */
.woocommerce div.product p.price,
.woocommerce div.product span.price { color: var(--mr-accent); }
.mr-single-product__summary .price {
	display: flex;
	flex-direction: column;
	background: var(--mr-muted-bg);
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-lg);
	padding: 20px 24px;
	margin: 0 0 22px;
	line-height: 1.2;
}
.mr-single-product__summary .price del { color: var(--mr-outline); font-size: 16px; margin-bottom: 4px; }
.mr-single-product__summary .price del .amount { color: var(--mr-outline); font-weight: 400; font-size: 16px; }
.mr-single-product__summary .price ins { text-decoration: none; }
.mr-single-product__summary .price .amount {
	font-family: var(--mr-font-heading);
	font-size: 36px;
	font-weight: 800;
	color: var(--mr-accent);
}
.mr-single-product__summary .woocommerce-product-details__short-description {
	color: var(--mr-ink-muted);
	margin-bottom: 20px;
}

/* Količina i dugmad */
.mr-single-product__summary form.cart {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-bottom: 8px;
}
/* WooCommerce cilja `.woocommerce div.product form.cart` i postavlja
   `margin-bottom: 2em`, dakle 32 px, pa red iznad nije imao efekta:
   izmjereno 32 px umjesto 8. Isti prefiks vraca kontrolu temi. */
.woocommerce div.product .mr-single-product__summary form.cart { margin-bottom: 8px; }
.mr-single-product__summary form.cart.variations_form { display: block; }
.mr-single-product__summary form.cart .quantity { flex-shrink: 0; }
/* GLAVNA AKCIJA: Dodaj u korpu — puno MotorRemont plavo, veliko i jasno. */
.woocommerce div.product .mr-single-product__summary form.cart .button.single_add_to_cart_button,
.mr-single-product__summary form.cart .single_add_to_cart_button {
	flex: 1;
	min-height: 54px;
	background: var(--mr-primary);
	color: #fff;
	border: 2px solid var(--mr-primary);
	border-radius: var(--mr-r-md);
	font-size: 16px;
	font-weight: 700;
	padding: 10px 22px;
	box-shadow: var(--mr-shadow);
	transition: background-color 0.2s, color 0.2s, box-shadow 0.2s;
}
.woocommerce div.product .mr-single-product__summary form.cart .button.single_add_to_cart_button:hover,
.mr-single-product__summary form.cart .single_add_to_cart_button:hover {
	background: var(--mr-primary-light);
	border-color: var(--mr-primary-light);
	color: #fff;
	box-shadow: var(--mr-shadow-lg);
}
.mr-single-product__summary .mr-btn--buy-now { flex-basis: 100%; }

.quantity {
	display: inline-flex;
	align-items: stretch;
	height: 48px;
	border: 1px solid var(--mr-border-soft);
	border-radius: var(--mr-r-md);
	background: var(--mr-white);
	overflow: hidden;
}
.quantity .qty {
	width: 56px;
	border: none;
	text-align: center;
	font-weight: 600;
	-moz-appearance: textfield;
	appearance: textfield;
}
.quantity .qty::-webkit-outer-spin-button,
.quantity .qty::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.quantity .qty:focus { outline: none; }

/* Varijacije */
table.variations { width: 100%; border-collapse: collapse; margin-bottom: 16px; }
table.variations th, table.variations td { padding: 8px 0; text-align: left; vertical-align: middle; }
/*
 * Naziv opcije („Dimenzije") mora se vidjeti prije nego kupac krene tražiti
 * dugme. Klijent je 4. 9. uveče tražio krupnije, deblje i u drugoj boji, uz
 * napomenu da može ostati tamna ako „Odaberi opciju" bude crveno. Ovdje je
 * urađeno oboje: naziv u firminoj plavoj, a poziv na izbor crven dok izbor
 * nije napravljen.
 */
table.variations label {
	font-family: var(--mr-font-heading);
	font-weight: 800;
	font-size: 16px;
	color: var(--mr-primary);
	margin: 0;
}
/* Dok stoji prazna opcija, tekst u polju je crven; izborom se vraća na crno. */
table.variations select:has(option[value=""]:checked) {
	color: var(--mr-accent);
	font-weight: 700;
}
table.variations select {
	width: 100%;
	height: 44px;
	padding: 0 12px;
	border: 1px solid var(--mr-border-soft);
	border-radius: var(--mr-r-sm);
	background: var(--mr-white);
}
/*
 * Gornje pravilo je do 4.129.2 gubilo od WooCommerceovog
 * `.woocommerce div.product form.cart .variations select`, koje je specifičnije
 * (0,3,3 prema 0,1,2). Zato je polje izbora bilo jedino na sajtu sa radijusom
 * 4 px i prozirnom pozadinom, dok svi ostali padajući meniji imaju 8 px i
 * bijelu (`.mr-product-landing__ordering select`). Vidjelo se tek 14. 9. 2026,
 * kad su uvezeni prvi artikli sa izborom.
 *
 * `visibility: hidden` koje WooCommerce stavlja na „Očisti" i dalje zauzima
 * mjesto, pa se link prelamao u drugi red i ćelija je na 390 px bila visoka
 * 93 px umjesto 54. Zbog toga je ćelija sada flex: link stoji uz polje u istom
 * redu, a rezervisano mjesto znači da izbor opcije ne pomjera raspored.
 * Mjereno na 390 i na 1400 px (memorija `klijent-gleda-na-telefonu`).
 */
.woocommerce div.product form.cart table.variations td.value {
	display: flex;
	align-items: center;
	gap: 8px;
}
.woocommerce div.product form.cart table.variations th.label,
.woocommerce div.product form.cart table.variations td.value {
	padding: 6px 0;
}
.woocommerce div.product form.cart table.variations select {
	width: 100%;
	min-width: 0;
	height: 42px;
	margin-right: 0;
	border-radius: 8px;
	background-color: var(--mr-white);
}
.reset_variations { font-size: 13px; color: var(--mr-accent); }

/* Vidljiv izbor opcije („Sklopljen" ili „U kutiji")
   ------------------------------------------------------------------
   Dvije opcije stoje jedna uz drugu u jednom redu; kontrola koja se na
   telefonu slaže u kolonu je klijentu greška. Padajuća lista i dalje nosi
   stvarni izbor, samo se ne vidi; vidi `inc/variant-options.php`. */
.mr-optionpick { margin: 0 0 18px; }
/*
 * Oznaka je oznaka polja, ne naslov. Do 4.131.0 je bila 16 px, debljine 800, u
 * firminoj plavoj i u naslovnom pismu, pa se na stranici takmičila sa nazivom
 * artikla i cijenom umjesto da ih pusti naprijed. Sada je sitna i mirna, a
 * kartice ispod nose pogled.
 */
.mr-optionpick__label {
	display: block;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: .01em;
	color: color-mix(in srgb, var(--mr-outline) 80%, var(--mr-ink));
	margin-bottom: 6px;
}
.mr-optionpick__list {
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: 1fr;
	gap: 10px;
}
.mr-optionpick__btn {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 2px;
	position: relative;
	min-height: 56px;
	padding: 9px 14px;
	text-align: left;
	background: var(--mr-white);
	border: 1px solid var(--mr-border-soft);
	border-radius: 10px;
	cursor: pointer;
	transition: border-color .15s ease, background-color .15s ease, box-shadow .15s ease;
}
.mr-optionpick__btn:hover:not(:disabled) { border-color: var(--mr-primary); }
.mr-optionpick__btn:focus-visible { outline: 2px solid var(--mr-primary); outline-offset: 2px; }
/* Unutrašnji prsten umjesto deblje ivice: debljina se mijenja bez pomjeranja
   sadržaja, pa izbor ne trza raspored. */
.mr-optionpick__btn.is-active {
	border-color: var(--mr-primary);
	box-shadow: inset 0 0 0 1px var(--mr-primary);
	background: color-mix(in srgb, var(--mr-primary) 6%, var(--mr-white));
}
.mr-optionpick__name {
	font-weight: 700;
	font-size: 14px;
	line-height: 1.2;
	color: var(--mr-ink);
	padding-right: 18px;
}
.mr-optionpick__btn.is-active .mr-optionpick__name { color: var(--mr-primary); }
.mr-optionpick__price {
	font-family: var(--mr-font-heading);
	font-weight: 800;
	font-size: 15px;
	line-height: 1.2;
	color: var(--mr-accent);
}
/* Odabrano se ne oslanja samo na boju. */
.mr-optionpick__btn.is-active::after {
	content: "";
	position: absolute;
	top: 11px;
	right: 12px;
	width: 13px;
	height: 8px;
	border-left: 2px solid var(--mr-primary);
	border-bottom: 2px solid var(--mr-primary);
	transform: rotate(-45deg);
}
/* Zaliha se ispisuje tek kad opcije nema; inače bi trošila red bez potrebe. */
.mr-optionpick__stock { display: none; }
.mr-optionpick__btn:disabled {
	cursor: not-allowed;
	background: var(--mr-muted-bg);
	border-color: var(--mr-border);
}
.mr-optionpick__btn:disabled .mr-optionpick__name { color: var(--mr-outline); }
.mr-optionpick__btn:disabled .mr-optionpick__price { color: var(--mr-outline); text-decoration: line-through; }
.mr-optionpick__btn:disabled .mr-optionpick__stock {
	display: block;
	font-size: 11px;
	font-weight: 600;
	color: var(--mr-outline);
}

/* Raspon cijene kao „od X": uspravna kartica cijene je crtici između dva
   iznosa davala vlastiti red, pa je blok bio visok tri reda. */
.mr-single-product__summary .price:has(.mr-price-od) {
	flex-direction: row;
	align-items: baseline;
	flex-wrap: wrap;
	gap: 0 10px;
}
/* `--mr-outline` na pozadini kartice daje 4.25:1, ispod traženih 4.5 za tekst
   ove veličine. Primjesa `--mr-ink` diže na 5.55, a oznaka i dalje ostaje
   sporedna uz crvenu cijenu. Mjereno na kartici, ne procijenjeno. */
.mr-price-od {
	font-family: var(--mr-font-heading);
	font-size: 18px;
	font-weight: 700;
	color: color-mix(in srgb, var(--mr-outline) 80%, var(--mr-ink));
}
/* Odabrani iznos ide u karticu cijene (vidi `initVariationPriceInCard`), pa bi
   ovaj blok bio ista cijena drugi put, sitnija i nize na stranici. */
.mr-single-product__summary .woocommerce-variation-price { display: none; }
/* Zaliha varijante se ne ponavlja: stoji već gore uz šifru, a opcija koje nema
   je onemogućena i sama piše „Nema na stanju". */
.mr-single-product__summary .woocommerce-variation-availability { display: none; }
.woocommerce-variation-price { margin-bottom: 12px; }
.single_variation_wrap .woocommerce-variation-add-to-cart {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}
.single_variation_wrap .single_add_to_cart_button { flex: 1; }

/* Meta ispod dugmadi */
/* Kategorija lijevo, „Dodaj u omiljene" desno, u istom redu. Do 4.109.1 je
   dugme imalo svoj red iznad, pa se do tehnickih karakteristika dolazilo
   66 px kasnije. Razmaci su smanjeni sa 18 na 10 px iz istog razloga. */
.mr-single-product__summary .product_meta {
	padding-top: 10px;
	margin-top: 10px;
	border-top: 1px solid var(--mr-border);
	font-size: 14px;
	color: var(--mr-ink-muted);
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 6px 14px;
}
.mr-single-product__summary .product_meta .sku_wrapper { display: none; }
.mr-single-product__summary .product_meta .posted_in { flex: 1 1 auto; min-width: 0; }
/* Dugme se drzi desnog ruba i kad kategorija prelomi u dva reda. */
.mr-single-product__summary .product_meta .mr-single-wishlist { margin-top: 0; margin-left: auto; flex: 0 0 auto; }

/* Signali povjerenja — raspored zavisi od STVARNE širine sažetka
   (auto-fit minmax + container query), ne od širine viewporta. */
.mr-single-product__summary { container-type: inline-size; }
.mr-trust-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
	gap: 10px;
	margin-top: 18px;
}
@container (min-width: 520px) {
	.mr-trust-grid { grid-template-columns: repeat(2, 1fr); }
}
.mr-trust-item {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	padding: 12px 14px;
	background: var(--mr-white);
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-lg);
	font-size: 13px;
	line-height: 1.4;
}
.mr-trust-item .mr-icon { color: var(--mr-primary); margin-top: 1px; }
.mr-trust-item strong { display: block; font-size: 13px; }
.mr-trust-item span { color: var(--mr-ink-muted); font-size: 12px; }

/* Jednokratna obavijest o povratku proizvoda na stanje. */
.mr-stock-alert {
	display: flex;
	align-items: flex-start;
	gap: 14px;
	margin-top: 20px;
	padding: 18px;
	background: var(--mr-primary-pale);
	border: 1px solid rgba(31, 60, 126, 0.22);
	border-radius: var(--mr-r-lg);
	scroll-margin-top: 140px;
}
.mr-stock-alert__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 44px;
	width: 44px;
	height: 44px;
	background: var(--mr-white);
	border-radius: 50%;
	color: var(--mr-primary);
}
.mr-stock-alert__content { min-width: 0; flex: 1; }
.mr-stock-alert h2 {
	margin: 0 0 5px;
	font-size: 19px;
}
.mr-stock-alert p {
	margin: 0;
	color: var(--mr-ink-muted);
	font-size: 13px;
	line-height: 1.5;
}
.mr-stock-alert__form {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 9px;
	margin-top: 14px;
}
.mr-stock-alert__form input[type="email"] {
	min-width: 0;
	height: 46px;
	padding: 0 13px;
	background: var(--mr-white);
	border: 1px solid var(--mr-border-soft);
	border-radius: var(--mr-r-sm);
	color: var(--mr-ink);
}
.mr-stock-alert__form input[type="email"]:focus {
	outline: 2px solid var(--mr-primary);
	outline-offset: 2px;
}
.mr-stock-alert__form .mr-btn { min-height: 46px; white-space: nowrap; }
.mr-stock-alert__honeypot {
	position: absolute !important;
	left: -10000px !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
}
.mr-stock-alert .mr-stock-alert__privacy {
	margin-top: 9px;
	font-size: 11px;
}
.mr-stock-alert__notice {
	margin-top: 12px !important;
	padding: 10px 12px;
	background: var(--mr-white);
	border-radius: var(--mr-r-sm);
	font-weight: 650;
}
.mr-stock-alert__notice--success { color: #236b2c !important; }
.mr-stock-alert__notice--error { color: #a51d1d !important; }

@media (max-width: 520px) {
	.mr-stock-alert { display: block; padding: 15px; }
	.mr-stock-alert__icon { flex-basis: 38px; width: 38px; height: 38px; }
	.mr-stock-alert__icon { margin-bottom: 10px; }
	.mr-stock-alert__form { grid-template-columns: 1fr; }
	.mr-stock-alert__form .mr-btn { width: 100%; }
}

/* Sticky mobilna traka za kupovinu (iznad donje navigacije, safe-area). */
.mr-sticky-buy {
	position: fixed;
	left: 0; right: 0;
	bottom: calc(66px + env(safe-area-inset-bottom, 0px));
	z-index: 80;
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 10px 16px;
	background: var(--mr-white);
	border-top: 1px solid var(--mr-border);
	box-shadow: 0 -4px 12px rgba(0, 0, 0, 0.08);
}
.mr-sticky-buy[hidden] { display: none; }
.mr-sticky-buy__price {
	flex: 1 1 0;
	min-width: 0;
	display: flex;
	flex-direction: column;
	line-height: 1.2;
	overflow: hidden;
}
.mr-sticky-buy__price .price { display: flex; flex-direction: column; }
.mr-sticky-buy__price del { font-size: 11px; color: var(--mr-outline); }
.mr-sticky-buy__price del .amount { color: var(--mr-outline); font-weight: 400; font-size: 11px; }
.mr-sticky-buy__price ins { text-decoration: none; }
.mr-sticky-buy__price .amount {
	font-family: var(--mr-font-heading);
	font-size: 19px;
	font-weight: 800;
	color: var(--mr-accent);
	white-space: nowrap;
}
.mr-sticky-buy__stock {
	flex: 1 1 auto;
	color: var(--mr-accent);
	font-size: 14px;
	font-weight: 750;
}
.mr-sticky-buy__btn {
	flex: 0 1 190px;
	min-width: 148px;
	max-width: 54%;
	min-height: 46px;
	padding: 8px 12px;
	font-size: 14px;
	white-space: nowrap;
}
.mr-sticky-buy__btn:disabled,
.mr-sticky-buy__btn[aria-disabled="true"] {
	background: var(--mr-muted-bg);
	border-color: var(--mr-border-soft);
	color: var(--mr-outline);
	box-shadow: none;
	cursor: not-allowed;
}
/*
 * Traka za kupovinu i na desktopu.
 *
 * Do 4. 9. 2026. je bila samo mobilna. Klijent je vidio takvu traku na
 * Agromarketu i tražio isto kod nas: „dobra fora kad se skrola dole da uvijek
 * nudi da se doda u korpu". Ponašanje je isto na oba, mijenja se samo raspored:
 * na telefonu stoji iznad donje navigacije i nosi cijenu i dugme, a na desktopu
 * stoji uz donju ivicu, u širini sadržaja, i ima mjesta za sliku i naziv da
 * kupac zna šta dodaje kad je proizvod odavno odskrolan.
 */
.mr-sticky-buy__product { display: none; }
@media (max-width: 767px) {
 .mr-sticky-buy[data-mr-sticky-buy] { flex-wrap: wrap; row-gap: 6px; }
 .mr-sticky-buy[data-mr-sticky-buy] .mr-sticky-buy__product { display: block; flex: 0 0 100%; min-width: 0; }
 .mr-sticky-buy__thumb { display: none; }
 .mr-sticky-buy__name { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; overflow-wrap: anywhere; font-size: 12px; font-weight: 600; line-height: 1.35; color: var(--mr-ink); }
}
/* AGM dobija više prostora unutar postojeće, jednake visine reda brenda. */
.mr-product-card__identity .mr-brand-identity--brand-agm.has-logo { padding: 0; }
.mr-product-card__identity .mr-brand-identity--brand-agm .mr-product-card__brand-logo { width: 100%; height: var(--mr-card-brand-tall-h, 44px); }

@media (min-width: 768px) {
	.mr-sticky-buy {
		bottom: 0;
		gap: 16px;
		padding: 10px max(16px, calc((100vw - var(--mr-container)) / 2));
	}
	.mr-sticky-buy__product {
		display: flex;
		align-items: center;
		gap: 12px;
		flex: 1 1 auto;
		min-width: 0;
	}
	.mr-sticky-buy__thumb {
		flex: 0 0 auto;
		width: 44px;
		height: 44px;
		display: flex;
		align-items: center;
		justify-content: center;
		overflow: hidden;
		border: 1px solid var(--mr-border);
		border-radius: 6px;
		background: var(--mr-white);
	}
	.mr-sticky-buy__thumb img { max-width: 100%; max-height: 100%; object-fit: contain; }
	.mr-sticky-buy__name {
		font-weight: 700;
		font-size: 14px;
		color: var(--mr-ink);
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
	}
	.mr-sticky-buy__price { flex: 0 0 auto; align-items: flex-end; }
	.mr-sticky-buy__btn { flex: 0 0 auto; max-width: none; }
	/* Kod rasprodatog artikla nema šta da se doda u korpu, pa traka nema
	   svrhu na desktopu; na telefonu ostaje kako je i bila. */
	.mr-sticky-buy--alert { display: none; }
}
/* Mjesto za sticky traku ide na dno podnožja, ne na kraj artikla.
   Traka se ne gasi kad kupac dođe do podnožja, pa je jedino tamo stvarno
   prekriva nešto. Do 16. 9. 2026. je stajalo 90 i 180 px ispod artikla, što
   je na telefonu ispod „Pitanja i odgovori" ostavljalo 255 px praznog, a
   dno podnožja je traka i dalje pokrivala. Na telefonu je traka visoka
   89 px sa nazivom u dva reda, na desktopu 64 px. */
@media (min-width: 768px) {
	.single-product .mr-single-wrap { padding-bottom: 40px; }
	.single-product:not(:has(.mr-sticky-buy--alert)) .mr-footer__bottom { padding-bottom: 84px; }
}
@media (max-width: 767px) {
	.single-product .mr-single-wrap { padding-bottom: 32px; }
	.single-product .mr-footer__bottom { padding-bottom: 116px; }
	.single-product .mr-single-product__summary .product_title { font-size: 22px; overflow-wrap: break-word; }
	.mr-single-product__summary .price .amount { font-size: 30px; }
}

/* Tabovi → accordion na telefonu. */
.mr-acc-toggle { display: none; }
@media (max-width: 767px) {
	.woocommerce-tabs ul.tabs,
	.woocommerce div.product .woocommerce-tabs ul.tabs { display: none; }
	.mr-acc-toggle {
		display: flex;
		align-items: center;
		justify-content: space-between;
		width: 100%;
		min-height: 52px;
		padding: 12px 16px;
		margin-top: 8px;
		background: var(--mr-white);
		border: 1px solid var(--mr-border);
		border-radius: var(--mr-r-md);
		font-size: 15px;
		font-weight: 700;
		color: var(--mr-ink);
		text-align: left;
	}
	.mr-acc-toggle .mr-icon { transition: transform 0.2s; color: var(--mr-outline); }
	.mr-acc-toggle.is-open { border-color: var(--mr-primary); color: var(--mr-primary); }
	.mr-acc-toggle.is-open .mr-icon { transform: rotate(180deg); color: var(--mr-primary); }
	.woocommerce-tabs .panel { display: none !important; padding: 14px 4px 6px; }
	.woocommerce-tabs .panel.mr-acc-open { display: block !important; }
}

/* Tabela karakteristika na telefonu: naziv iznad vrijednosti, bez overflowa. */
@media (max-width: 767px) {
	table.woocommerce-product-attributes,
	table.woocommerce-product-attributes tbody,
	table.woocommerce-product-attributes tr,
	table.woocommerce-product-attributes th,
	table.woocommerce-product-attributes td { display: block; width: 100%; }
	table.woocommerce-product-attributes th {
		padding: 10px 14px 2px;
		border-bottom: none;
		font-size: 12px;
		text-transform: uppercase;
		letter-spacing: 0.04em;
		color: var(--mr-outline);
	}
	table.woocommerce-product-attributes td { padding: 0 14px 10px; }
}

/* Tabovi u urednom content panelu (bijela pozadina, border, radius, padding). */
.woocommerce-tabs {
	margin-bottom: 40px;
	background: var(--mr-white);
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-lg);
	padding: 20px 18px;
}
@media (min-width: 768px) { .woocommerce-tabs { padding: 24px; } }
@media (min-width: 1024px) { .woocommerce-tabs { padding: 32px; } }
.woocommerce div.product .woocommerce-tabs ul.tabs,
.woocommerce-tabs ul.tabs {
	display: flex;
	gap: 28px;
	margin: 0 0 24px;
	padding: 0;
	list-style: none;
	border-bottom: 1px solid var(--mr-border);
	overflow-x: auto;
	scrollbar-width: none;
}
.woocommerce div.product .woocommerce-tabs ul.tabs::before,
.woocommerce div.product .woocommerce-tabs ul.tabs::after { display: none; }
.woocommerce-tabs ul.tabs::-webkit-scrollbar { display: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li,
.woocommerce-tabs ul.tabs li {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a,
.woocommerce-tabs ul.tabs li a {
	display: block;
	padding: 0 4px 14px;
	color: var(--mr-ink-muted);
	font-size: 14px;
	font-weight: 600;
	white-space: nowrap;
	border-bottom: 2px solid transparent;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a:hover,
.woocommerce-tabs ul.tabs li a:hover { color: var(--mr-primary); }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a,
.woocommerce-tabs ul.tabs li.active a {
	color: var(--mr-primary);
	font-weight: 700;
	border-bottom-color: var(--mr-primary);
}
.woocommerce-tabs .panel { max-width: 920px; color: var(--mr-ink-muted); line-height: 1.7; }
.woocommerce-tabs .panel > h2:first-child { display: none; }
.woocommerce-tabs .panel h2 { font-size: 20px; margin: 1.6em 0 0.7em; color: var(--mr-ink); }
.woocommerce-tabs .panel h2:first-of-type { margin-top: 0; }
.woocommerce-tabs .panel p { margin: 0 0 1em; }
/* Opisi iz kupialat uvoza imaju sekcije („Prednosti", „Karakteristike"). Bez
   ovoga h3 uzima pregledačevu podrazumijevanu veličinu, veću od h2 iznad. */
.woocommerce-tabs .panel h3 { font-size: 16px; font-weight: 700; margin: 1.6em 0 0.6em; color: var(--mr-ink); }
.woocommerce-tabs .panel h3:first-child { margin-top: 0; }
.woocommerce-tabs .panel ul { margin: 0 0 1em; padding-left: 22px; }
.woocommerce-tabs .panel ul li { margin-bottom: 6px; }
/* Artikal bez opisa nema tab „Opis proizvoda", pa napomena o distributerstvu
   ide ispod reda tabova. Isti okvir i boja kao u panelu, da ne visi. */
.mr-service-note-fallback { max-width: 920px; color: var(--mr-ink-muted); line-height: 1.7; margin: 18px 0 0; }
.mr-service-note-fallback p { margin: 0; }

/* Tabela karakteristika (zebra) */
table.woocommerce-product-attributes {
	width: 100%;
	border-collapse: collapse;
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-lg);
	overflow: hidden;
}
table.woocommerce-product-attributes tr:nth-child(odd) { background: var(--mr-muted-bg); }
table.woocommerce-product-attributes tr:nth-child(even) { background: var(--mr-white); }
table.woocommerce-product-attributes th,
table.woocommerce-product-attributes td {
	padding: 12px 16px;
	text-align: left;
	border-bottom: 1px solid var(--mr-border);
	font-size: 14px;
}
table.woocommerce-product-attributes th { width: 34%; color: var(--mr-ink); font-weight: 600; }
table.woocommerce-product-attributes td { color: var(--mr-ink-muted); }
table.woocommerce-product-attributes td p { margin: 0; }

/* Link proizvođača u karakteristikama: postojeći logo i čitljiva web adresa. */
table.woocommerce-product-attributes .mr-brand-website {
	display: inline-flex;
	align-items: center;
	max-width: 100%;
	min-height: 32px;
	padding: 4px 0;
	color: var(--mr-primary);
	font-style: normal;
	text-decoration: none;
}
table.woocommerce-product-attributes .mr-brand-website__logo {
	display: block;
	width: 112px;
	max-width: 100%;
	height: auto;
	max-height: 32px;
	margin: 0;
	object-fit: contain;
	object-position: left center;
}
.mr-brand-website__name { font-weight: 600; }

table.woocommerce-product-attributes .mr-brand-website:hover { color: var(--mr-primary-light); }
table.woocommerce-product-attributes .mr-brand-website:focus-visible { outline: 2px solid var(--mr-primary); outline-offset: 4px; }
table.woocommerce-product-attributes .mr-brand-website--dark { padding: 8px; border-radius: 4px; background: var(--mr-navy, #102454); color: #fff; }

/* Dugi uvozni atributi: pojedinačne stavke umjesto zida teksta. */
/*
 * Ponuda baterije uz alat koji se prodaje bez nje. Stoji odmah ispod dugmeta
 * za kupovinu, jer je to trenutak kad kupac odlučuje, a ne na dnu stranice
 * gdje bi je pola njih preskočilo. Uokvirena je i blago obojena, da se čita
 * kao upozorenje koje pomaže, a ne kao još jedna reklama.
 */
.mr-battery-offer {
	margin-top: 18px;
	padding: 14px 16px;
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-md, 12px);
	background: var(--mr-surface, #f7f9fc);
}
.mr-battery-offer__title {
	margin: 0 0 4px;
	font-size: 15px;
	font-weight: 700;
}
.mr-battery-offer__note {
	margin: 0 0 12px;
	color: var(--mr-ink-muted);
	font-size: 13px;
	line-height: 1.5;
	text-wrap: pretty;
}
.mr-battery-offer__list {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.mr-battery-offer__item {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 8px;
	border-radius: var(--mr-r-sm);
	background: var(--mr-bg);
}
.mr-battery-offer__link {
	display: flex;
	flex: 1 1 auto;
	align-items: center;
	gap: 10px;
	min-width: 0;
	color: var(--mr-ink);
	text-decoration: none;
}
.mr-battery-offer__thumb {
	flex: 0 0 auto;
	width: 44px;
	height: 44px;
}
.mr-battery-offer__thumb img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}
.mr-battery-offer__name {
	display: -webkit-box;
	overflow: hidden;
	font-size: 13px;
	line-height: 1.35;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}
.mr-battery-offer__price {
	flex: 0 0 auto;
	color: var(--mr-accent);
	font-size: 14px;
	/* 700 je najdeblje što IBM Plex Sans ima. */
	font-weight: 700;
	white-space: nowrap;
}
.mr-battery-offer__buy {
	flex: 0 0 auto;
	min-height: 36px;
	padding: 6px 14px;
	font-size: 13px;
}

/* Samo upozorenje: bateriju i punjač nudi „Često se kupuje zajedno" niže. */
.mr-battery-offer--poruka .mr-battery-offer__note { margin-bottom: 0; }
.mr-battery-offer__jump {
	color: var(--mr-primary);
	font-weight: 600;
}

@media (max-width: 480px) {
	.mr-battery-offer__item { flex-wrap: wrap; }
	.mr-battery-offer__link { flex: 1 1 100%; }
	.mr-battery-offer__buy { flex: 1 1 auto; justify-content: center; }
}

table.woocommerce-product-attributes tr:has(.mr-attr-list) th,
table.woocommerce-product-attributes tr:has(.mr-attr-list) td { vertical-align: top; }
.woocommerce-tabs .panel .mr-attr-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.woocommerce-tabs .panel .mr-attr-list li {
	position: relative;
	min-width: 0;
	margin: 0;
	padding: 9px 11px 9px 28px;
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-sm);
	background: var(--mr-white);
	color: var(--mr-ink-muted);
	line-height: 1.45;
}
.woocommerce-tabs .panel .mr-attr-list li::before {
	content: '';
	position: absolute;
	top: 15px;
	left: 12px;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--mr-primary);
}
@media (max-width: 1023px) {
	.woocommerce-tabs .panel .mr-attr-list { grid-template-columns: 1fr; }
}

/* Recenzije */
#reviews .commentlist { list-style: none; margin: 0; padding: 0; }
#reviews .comment_container {
	display: flex;
	gap: 14px;
	padding: 16px;
	background: var(--mr-white);
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-lg);
	margin-bottom: 12px;
}
#reviews .avatar { border-radius: 50%; width: 44px; height: 44px; }
#reviews .comment-text { flex: 1; }
#reviews .meta { margin: 4px 0; font-size: 13px; color: var(--mr-outline); }
#review_form .comment-reply-title { font-size: 18px; font-weight: 700; display: block; margin-bottom: 12px; }
#review_form .stars a { color: var(--mr-star); }

/* Povezani, upsell, cross-sell */
.related.products, .upsells.products, .mr-cross-sells {
	padding-top: 32px;
	border-top: 1px solid var(--mr-border);
	margin-bottom: 40px;
}

/* „Često se kupuje zajedno" i „Pitanja i odgovori" su `.mr-section`, ali na
   artiklu stoje među blokovima koji već nose svoj razmak (kartice 40 px,
   povezani 32 px iznad linije i 40 px ispod). Uz puni razmak sekcije je
   između njih ostajalo 112 do 176 px praznog. */
.single-product .mr-single-wrap .mr-fbt { padding-top: 0; padding-bottom: 32px; scroll-margin-top: 140px; }
.single-product .mr-single-wrap .mr-qa { padding-top: 0; padding-bottom: 0; }
.related.products > h2, .upsells.products > h2, .mr-cross-sells > h2 {
	font-size: 22px;
	margin-bottom: 20px;
}

/* ==========================================================================
   Obavijesti (notices)
   ========================================================================== */

.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.woocommerce-noreviews,
p.no-comments {
	position: relative;
	margin: 0 0 20px;
	padding: 14px 18px 14px 46px;
	border-radius: var(--mr-r-md);
	font-size: 14px;
	list-style: none;
	background: var(--mr-white);
	border: 1px solid var(--mr-border);
}
.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-error li::before,
.woocommerce-error::before {
	content: '';
	position: absolute;
	left: 18px; top: 18px;
	width: 10px; height: 10px;
	border-radius: 50%;
}
.woocommerce-message { border-left-color: var(--mr-success); }
.woocommerce-message::before { background: var(--mr-success); }
.woocommerce-info { border-left-color: var(--mr-primary); }
.woocommerce-info::before { background: var(--mr-primary); }
.woocommerce-error { border-left-color: var(--mr-error); }
.woocommerce-error::before { background: var(--mr-error); }
.woocommerce-error { margin-left: 0; }
.woocommerce-error li { margin: 0; }
.woocommerce-message .button,
.woocommerce-info .button,
.woocommerce-error .button {
	float: right;
	margin-left: 12px;
	background: none;
	border: none;
	color: var(--mr-primary);
	font-weight: 700;
	padding: 0;
}

/* ==========================================================================
   Forme (globalno za WooCommerce)
   ========================================================================== */

.woocommerce form .form-row { margin-bottom: 14px; }
.woocommerce form .form-row label {
	display: block;
	font-size: 14px;
	font-weight: 600;
	margin-bottom: 5px;
}
.woocommerce form .form-row .required { color: var(--mr-accent); text-decoration: none; }
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce form .form-row .woocommerce-input-wrapper input {
	width: 100%;
	min-height: 46px;
	padding: 10px 14px;
	border: 1px solid var(--mr-border-soft);
	border-radius: var(--mr-r-sm);
	background: var(--mr-white);
	transition: border-color 0.2s, box-shadow 0.2s;
}
.woocommerce form .form-row textarea { min-height: 110px; }
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus {
	outline: none;
	border-color: var(--mr-primary);
	box-shadow: 0 0 0 2px var(--mr-primary-pale);
}
.woocommerce form .form-row.woocommerce-invalid input.input-text { border-color: var(--mr-error); }
.woocommerce form .form-row.woocommerce-validated input.input-text { border-color: var(--mr-success); }

.select2-container--default .select2-selection--single {
	min-height: 46px;
	border: 1px solid var(--mr-border-soft);
	border-radius: var(--mr-r-sm);
}
.select2-container--default .select2-selection--single .select2-selection__rendered { line-height: 44px; padding-left: 14px; }
.select2-container--default .select2-selection--single .select2-selection__arrow { height: 44px; }

/* Dugmad WooCommercea */
.woocommerce .button,
.woocommerce button.button,
.woocommerce a.button,
.woocommerce input.button,
.woocommerce #respond input#submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 46px;
	padding: 10px 22px;
	background: var(--mr-primary);
	color: #fff;
	border: none;
	border-radius: var(--mr-r-sm);
	font-size: 14px;
	font-weight: 600;
	cursor: pointer;
	transition: background-color 0.2s;
}
.woocommerce .button:hover,
.woocommerce button.button:hover,
.woocommerce a.button:hover,
.woocommerce input.button:hover { background: var(--mr-primary-light); color: #fff; }
.woocommerce .button.alt, .woocommerce button.button.alt { background: var(--mr-accent); }
.woocommerce .button.alt:hover, .woocommerce button.button.alt:hover { background: var(--mr-accent-light); }
.woocommerce .button:disabled,
.woocommerce button.button:disabled { opacity: 0.55; cursor: not-allowed; }

/* ==========================================================================
   Galerija proizvoda (vlastita, bez flexslidera)
   ========================================================================== */

.mr-gallery__stage {
	position: relative;
	display: flex;
	width: 100%;
	align-items: center;
	justify-content: center;
	background: var(--mr-white);
	border-radius: var(--mr-r-md);
	overflow: hidden;
}

/* Pozornica ima stalan omjer, pa visina ne skače pri listanju bez obzira na
   dimenzije pojedine slike. */
.mr-gallery__slides {
	position: relative;
	margin: 0;
	width: 100%;
	aspect-ratio: 4 / 3;
	background: var(--mr-white);
}
.mr-gallery__slide {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 8px;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.22s ease;
}
.mr-gallery__slide.is-active { opacity: 1; visibility: visible; }
/*
 * Slika se UKLAPA u pozornicu i uvijek je centrirana. Namjerno bez
 * width:100%: dio uvezenih slika je svega 100×100 px, pa bi razvlačenje
 * dalo mutan prikaz. Male slike ostaju oštre i centrirane.
 */
.mr-gallery__slide img {
	display: block;
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
	object-fit: contain;
	border-radius: var(--mr-r-md);
}
/*
 * WooCommerce svojim stilom slaže slike od druge nadalje u mrežu:
 * `.woocommerce div.product div.images .woocommerce-product-gallery__image:nth-child(n+2) { width: 25% }`
 * Bez flexslidera to pravilo dolazi do izražaja i sve osim prve slike
 * postane četvrtina širine (168 px umjesto 672 px). Selektor ispod ima
 * veću specifičnost pa vraća pun okvir svakom slajdu.
 */
.woocommerce div.product div.images.mr-gallery .woocommerce-product-gallery__image:nth-child(n+2),
.woocommerce div.product div.images.mr-gallery .woocommerce-product-gallery__image {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	float: none;
	width: 100%;
	margin: 0;
	padding: 8px;
}

/* Zoom (WooCommerce) omota sliku u dodatni sloj — mora pratiti isti okvir. */
.woocommerce div.product div.images.mr-gallery .mr-gallery__slide > a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}

/*
 * WooCommerce postavlja `div.images img { width: 100% }`, što bi razvuklo i
 * male slike. Ovaj selektor ima veću specifičnost i drži sliku unutar okvira
 * bez razvlačenja preko izvorne veličine.
 */
.woocommerce div.product div.images.mr-gallery .mr-gallery__slide img {
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
	object-fit: contain;
	margin: 0 auto;
}

.mr-gallery__nav {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 3;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	background: rgba(255, 255, 255, 0.94);
	border: 1px solid var(--mr-border);
	border-radius: 50%;
	color: var(--mr-primary);
	box-shadow: var(--mr-shadow);
	transition: background-color 0.18s, border-color 0.18s, opacity 0.18s;
	opacity: 0;
}
.mr-gallery__nav--prev { left: 12px; }
.mr-gallery__nav--next { right: 12px; }
.mr-gallery:hover .mr-gallery__nav,
.mr-gallery__nav:focus-visible { opacity: 1; }
.mr-gallery__nav:hover { background: #fff; border-color: var(--mr-primary); }

/* Na dodirnim uređajima nema hovera — strelice su stalno vidljive. */
@media (hover: none) {
	.mr-gallery__nav { opacity: 1; width: 40px; height: 40px; }
}

.mr-gallery__counter {
	position: absolute;
	bottom: 12px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 3;
	margin: 0;
	padding: 5px 12px;
	background: rgba(15, 23, 42, 0.72);
	border-radius: var(--mr-r-pill);
	color: #fff;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.02em;
}

/* Dugme za uvećanje dolazi iz WooCommercea (PhotoSwipe) — samo ga stilizujemo. */
.mr-gallery .woocommerce-product-gallery__trigger {
	position: absolute;
	top: 12px;
	right: 12px;
	z-index: 3;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	margin: 0;
	background: rgba(255, 255, 255, 0.94);
	border: 1px solid var(--mr-border);
	border-radius: 50%;
	color: var(--mr-ink-muted);
	font-size: 0;
	text-decoration: none;
}
.mr-gallery .woocommerce-product-gallery__trigger:hover {
	color: var(--mr-primary);
	border-color: var(--mr-primary);
}
/* WooCommerce ikonu crta kroz ::before — vraćamo joj čitljivu veličinu. */
.mr-gallery .woocommerce-product-gallery__trigger::before,
.mr-gallery .woocommerce-product-gallery__trigger img,
.mr-gallery .woocommerce-product-gallery__trigger svg {
	font-size: 18px;
	width: 18px;
	height: 18px;
}

/* Traka sličica */
.mr-gallery__thumbs {
	display: flex;
	width: 100%;
	gap: 10px;
	margin: 12px 0 0;
	padding: 2px;
	list-style: none;
	overflow-x: auto;
	scroll-snap-type: x proximity;
	scrollbar-width: thin;
}
.mr-gallery__thumb { flex: 0 0 auto; scroll-snap-align: start; }
.mr-gallery__thumb button {
	display: block;
	padding: 0;
	width: 74px;
	height: 74px;
	background: var(--mr-white);
	border: 2px solid var(--mr-border);
	border-radius: var(--mr-r-md);
	overflow: hidden;
	opacity: 0.72;
	transition: border-color 0.18s, opacity 0.18s;
}
.mr-gallery__thumb button:hover { opacity: 1; border-color: var(--mr-border-soft); }
.mr-gallery__thumb.is-active button {
	opacity: 1;
	border-color: var(--mr-primary);
}
.mr-gallery__thumb img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

@media (max-width: 767px) {
	.mr-gallery__thumb button { width: 62px; height: 62px; }
	.mr-gallery__thumbs { gap: 8px; }
}

@media (prefers-reduced-motion: reduce) {
	.mr-gallery__slide,
	.mr-gallery__nav { transition: none; }
}

/* ==========================================================================
   Poređenje proizvoda
   ========================================================================== */

.mr-compare-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	align-self: center;
	width: auto;
	min-height: 36px;
	margin: 6px 0 0;
	padding: 6px 10px;
	background: transparent;
	border: 0;
	border-radius: var(--mr-r-sm);
	color: var(--mr-primary);
	font-size: 13px;
	font-weight: 600;
	line-height: 1.3;
	transition: color 0.18s, background-color 0.18s, border-color 0.18s;
}
.mr-compare-btn:hover:not(:disabled),
.mr-compare-btn:focus-visible {
	color: var(--mr-primary);
	background: var(--mr-primary-pale);
}
.mr-compare-btn.is-active {
	background: var(--mr-primary-pale);
	color: var(--mr-primary);
}
.mr-compare-btn:disabled { opacity: 0.45; cursor: not-allowed; }
/* Blokiran jer je proizvod iz druge kategorije — poređenje ne bi imalo smisla. */
.mr-compare-btn.is-blocked { opacity: 0.35; }

/* Kratka poruka kada izbor nije moguć. */
.mr-compare-note {
	position: fixed;
	left: 50%;
	bottom: 24px;
	z-index: 1100;
	transform: translate(-50%, 12px);
	max-width: calc(100% - 32px);
	padding: 12px 18px;
	background: var(--mr-navy);
	color: #fff;
	border-radius: var(--mr-r-md);
	font-size: 14px;
	font-weight: 600;
	text-align: center;
	box-shadow: var(--mr-shadow-lg);
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.2s ease, transform 0.2s ease;
}
.mr-compare-note.is-visible { opacity: 1; transform: translate(-50%, 0); }
@media (prefers-reduced-motion: reduce) {
	.mr-compare-note { transition: none; }
}

/* Plutajuća traka odabranih */
.mr-compare-bar {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 900;
	padding: 12px 0;
	background: var(--mr-white);
	border-top: 1px solid var(--mr-border);
	box-shadow: 0 -6px 20px rgba(0, 0, 0, 0.09);
}
.mr-compare-bar[hidden] { display: none; }
body.mr-has-compare-bar { padding-bottom: 96px; }

.mr-compare-bar__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	flex-wrap: wrap;
}
.mr-compare-bar__list {
	display: flex;
	align-items: center;
	gap: 10px;
	flex: 1 1 auto;
	min-width: 0;
	margin: 0;
	padding: 0;
	list-style: none;
	overflow-x: auto;
}
.mr-compare-bar__item {
	display: flex;
	align-items: center;
	gap: 8px;
	flex: 0 0 auto;
	max-width: 210px;
	padding: 6px 8px 6px 6px;
	background: var(--mr-muted-bg);
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-md);
}
.mr-compare-bar__item img,
.mr-compare-bar__ph {
	width: 36px;
	height: 36px;
	flex-shrink: 0;
	object-fit: contain;
	background: var(--mr-white);
	border-radius: var(--mr-r-sm);
}
.mr-compare-bar__name {
	font-size: 12px;
	font-weight: 600;
	line-height: 1.3;
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}
.mr-compare-bar__remove {
	flex-shrink: 0;
	width: 24px;
	height: 24px;
	background: transparent;
	border: 0;
	color: var(--mr-outline);
	font-size: 18px;
	line-height: 1;
}
.mr-compare-bar__remove:hover { color: var(--mr-accent); }

.mr-compare-bar__actions { display: flex; align-items: center; gap: 12px; flex: 0 0 auto; }
.mr-compare-bar__clear {
	background: transparent;
	border: 0;
	color: var(--mr-ink-muted);
	font-size: 13px;
	font-weight: 600;
	text-decoration: underline;
}
.mr-compare-bar__clear:hover { color: var(--mr-accent); }
.mr-compare-bar__go { white-space: nowrap; }

/* Stranica poređenja */
.mr-compare__toolbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 12px;
	margin-bottom: 16px;
}
.mr-compare__toggle {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	font-weight: 600;
	cursor: pointer;
}
.mr-compare__toggle input { width: 18px; height: 18px; accent-color: var(--mr-primary); }

.mr-compare__scroll {
	/* I skriveni tekst cijena mora ostati unutar vodoravnog klizača. */
	position: relative;
	overflow-x: auto;
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-lg);
	background: var(--mr-white);
	box-shadow: var(--mr-shadow);
	/* Nagovještaj da se tabela može skrolati vodoravno. */
	scrollbar-width: thin;
}
.mr-compare__table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	font-size: 14px;
}
.mr-compare__table th,
.mr-compare__table td {
	padding: 13px 16px;
	border-bottom: 1px solid var(--mr-border);
	text-align: left;
	vertical-align: middle;
}
/* Naizmjenične zone da se red lakše prati po širini. */
.mr-compare__table tbody tr:nth-child(even) td { background: rgba(0, 0, 0, 0.016); }
.mr-compare__table tbody tr:last-child th,
.mr-compare__table tbody tr:last-child td { border-bottom: 0; }
.mr-compare__table tbody tr:hover td { background: var(--mr-primary-pale); }
/* Prva kolona (nazivi redova) ostaje vidljiva pri horizontalnom skrolu. */
.mr-compare__table th[scope="row"],
.mr-compare__corner {
	position: sticky;
	left: 0;
	z-index: 2;
	min-width: 148px;
	background: var(--mr-muted-bg);
	font-weight: 600;
	color: var(--mr-ink-muted);
	/* Sjena razdvaja fiksnu kolonu od sadržaja koji klizi ispod nje. */
	box-shadow: 6px 0 10px -8px rgba(0, 0, 0, 0.22);
}
/* Zaglavlje ostaje vidljivo i pri vertikalnom skrolu — proizvod se uvijek zna. */
.mr-compare__table thead th {
	position: sticky;
	top: 0;
	z-index: 4;
	background: var(--mr-white);
	border-bottom: 2px solid var(--mr-border);
}
.mr-compare__corner { z-index: 5; background: var(--mr-muted-bg); }

.mr-compare__product {
	position: relative;
	min-width: 208px;
	background: var(--mr-white);
	text-align: center !important;
	vertical-align: top;
	padding-top: 18px !important;
}
.mr-compare__remove {
	position: absolute;
	top: 8px;
	right: 8px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	background: var(--mr-muted-bg);
	border: 1px solid var(--mr-border);
	border-radius: 50%;
	color: var(--mr-ink-muted);
}
.mr-compare__remove:hover { color: var(--mr-accent); border-color: var(--mr-accent); }
/* Fiksan kvadratni okvir — slike su različitih omjera (neke pejzažne), pa bi
   se bez ovoga naslovi i dugmad razišli po visini između kolona. */
.mr-compare__thumb {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 4px auto 10px;
	width: 120px;
	height: 120px;
	background: var(--mr-muted-bg);
	border-radius: var(--mr-r-md);
	overflow: hidden;
}
.mr-compare__thumb img {
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
	object-fit: contain;
}
.mr-compare__name {
	display: block;
	margin-bottom: 10px;
	color: var(--mr-ink);
	font-weight: 600;
	line-height: 1.35;
}
.mr-compare__name:hover { color: var(--mr-primary); }

/* Red sa razlikama nosi tanku plavu oznaku na fiksnoj koloni — čitljivije od
   pozadine koja se sudara sa naizmjeničnim zonama. */
.mr-compare__row.is-diff th[scope="row"] {
	color: var(--mr-primary);
	background: var(--mr-primary-pale);
	font-weight: 750;
}
.mr-compare__row.is-diff td { font-weight: 600; color: var(--mr-ink); }
.mr-compare__row.is-same td { color: var(--mr-ink-muted); }

.mr-compare__empty { color: var(--mr-outline); }

/* Cijena vizuelno najjača — to je razlog zbog kojeg se i poredi. */
.mr-compare__row:first-child td { font-size: 17px; font-weight: 700; color: var(--mr-accent); }
.mr-compare__row:first-child del { font-size: 13px; font-weight: 600; color: var(--mr-outline); margin-right: 6px; }
.mr-compare__row:first-child ins { text-decoration: none; }
.mr-compare__note { margin-top: 12px; font-size: 13px; color: var(--mr-ink-muted); }

/* „Prikaži samo razlike" — sakriva redove u kojima su sve vrijednosti iste. */
.mr-compare__table.is-diff-only .mr-compare__row.is-same { display: none; }

@media (max-width: 767px) {
	.mr-compare__product { min-width: 158px; padding-left: 10px !important; padding-right: 10px !important; }
	.mr-compare__table th[scope="row"] {
		min-width: 116px;
		font-size: 12px;
		padding-left: 10px;
		padding-right: 10px;
		line-height: 1.35;
	}
	.mr-compare__table td { padding-left: 10px; padding-right: 10px; font-size: 13px; }
	.mr-compare__row.is-diff th[scope="row"] { padding-left: 7px; }
	.mr-compare__thumb { max-width: 84px; }
	.mr-compare__name { font-size: 13px; }
	.mr-compare__row:first-child td { font-size: 15px; }
	.mr-compare-bar__name { display: none; }
	.mr-compare-bar__item { max-width: none; }
	body.mr-has-compare-bar { padding-bottom: 150px; }
}

/* ==========================================================================
   Brzi pregled (Quick View)
   ========================================================================== */

.mr-product-card__media-wrap { position: relative; }

.mr-quickview-btn {
	position: absolute;
	left: 50%;
	bottom: 10px;
	transform: translate(-50%, 8px);
	z-index: 4;
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 9px 16px;
	min-height: 40px;
	background: rgba(255, 255, 255, 0.96);
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-pill);
	color: var(--mr-primary);
	font-size: 13px;
	font-weight: 600;
	white-space: nowrap;
	box-shadow: var(--mr-shadow);
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.18s ease, transform 0.18s ease, background-color 0.18s;
}
.mr-product-card:hover .mr-quickview-btn,
.mr-quickview-btn:focus-visible {
	opacity: 1;
	transform: translate(-50%, 0);
	pointer-events: auto;
}
.mr-quickview-btn:hover { background: #fff; border-color: var(--mr-primary); }

/* Bez hovera ili na mobilnoj širini: diskretna ikona uz omiljeno. */
@media (hover: none), (max-width: 767px) {
	.mr-quickview-btn {
		top: 8px;
		right: 60px;
		bottom: auto;
		left: auto;
		width: 44px;
		height: 44px;
		min-height: 44px;
		padding: 0;
		justify-content: center;
		border-radius: 50%;
		opacity: 1;
		transform: none;
		pointer-events: auto;
		box-shadow: 0 2px 10px rgba(16, 24, 40, 0.1);
	}
	.mr-quickview-btn > span { display: none; }
	.mr-product-card > .mr-wishlist-btn {
		top: 8px;
		right: 8px;
		width: 44px;
		height: 44px;
	}
}
@media (prefers-reduced-motion: reduce) {
	.mr-quickview-btn { transition: none; }
}

.mr-quickview-overlay {
	position: fixed;
	inset: 0;
	z-index: 1000;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 20px;
	background: rgba(15, 23, 42, 0.6);
	opacity: 0;
	transition: opacity 0.18s ease;
}
.mr-quickview-overlay.is-open { opacity: 1; }
.mr-quickview-overlay[hidden] { display: none; }

body.mr-modal-open { overflow: hidden; }

.mr-quickview {
	position: relative;
	width: 100%;
	max-width: 880px;
	max-height: calc(100vh - 40px);
	overflow-y: auto;
	background: var(--mr-white);
	border-radius: var(--mr-r-lg);
	box-shadow: var(--mr-shadow-lg);
	transform: translateY(12px);
	transition: transform 0.18s ease;
}
.mr-quickview-overlay.is-open .mr-quickview { transform: translateY(0); }

.mr-quickview__close {
	position: absolute;
	top: 10px;
	right: 10px;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	background: rgba(255, 255, 255, 0.92);
	border: 1px solid var(--mr-border);
	border-radius: 50%;
	color: var(--mr-ink);
}
.mr-quickview__close-label { display: none; }
.mr-quickview__close:hover { background: var(--mr-muted-bg); color: var(--mr-accent); }

.mr-quickview__content { display: grid; gap: 0; }
@media (min-width: 720px) {
	.mr-quickview__content { grid-template-columns: minmax(0, 45%) minmax(0, 55%); }
}

.mr-quickview__loading,
.mr-quickview__error {
	grid-column: 1 / -1;
	margin: 0;
	padding: 48px 24px;
	text-align: center;
	color: var(--mr-ink-muted);
}
.mr-quickview__error { color: var(--mr-accent); }

/* Kolona, ne red. Kockice sa slikama su drugo dijete ovog bloka, pa bi u redu
   stajale pored glavne slike i smanjile je na sličicu. */
.mr-quickview__media {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 12px;
	min-width: 0;
	padding: 20px;
	background: var(--mr-muted-bg);
	border-radius: var(--mr-r-lg) var(--mr-r-lg) 0 0;
}
@media (min-width: 720px) {
	.mr-quickview__media { border-radius: var(--mr-r-lg) 0 0 var(--mr-r-lg); }
}
.mr-quickview__main {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-width: 0;
	min-height: 0;
}
/* Namjerno `__main img`, a ne `__media img`: ovo pravilo ne smije gađati
   kockice, koje imaju vlastitu veličinu. */
.mr-quickview__main img {
	width: 100%;
	height: auto;
	max-height: 380px;
	object-fit: contain;
	border-radius: var(--mr-r-md);
}
.mr-quickview__media .mr-badge { position: absolute; top: 14px; left: 14px; z-index: 1; }

.mr-quickview__body { padding: 22px 24px 26px; min-width: 0; }
.mr-quickview__brand {
	display: inline-flex;
	align-items: center;
	justify-content: flex-start;
	width: 104px;
	height: 38px;
	margin-bottom: 8px;
	padding: 4px;
	box-sizing: border-box;
	overflow: hidden;
}
.mr-quickview__brand-logo {
	display: block;
	width: 96px;
	height: 30px;
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
	object-position: left center;
}
.mr-quickview__brand.mr-brand-identity--brand-scheppach.has-logo { width: auto; height: 58px; }
.mr-brand-identity--brand-scheppach .mr-quickview__brand-logo { width: auto; height: 50px; margin: 0; }
.mr-quickview__title { margin: 0 0 10px; font-size: 21px; line-height: 1.3; padding-right: 44px; }
.mr-quickview__title a { color: var(--mr-ink); }
.mr-quickview__title a:hover { color: var(--mr-primary); }

.mr-quickview__meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 16px;
	margin-bottom: 12px;
	font-size: 13px;
	color: var(--mr-ink-muted);
}

.mr-quickview__price { margin-bottom: 14px; font-size: 26px; font-weight: 800; color: var(--mr-accent); }
.mr-quickview__price del { font-size: 16px; font-weight: 600; color: var(--mr-outline); margin-right: 8px; }
.mr-quickview__price ins { text-decoration: none; }

.mr-quickview__excerpt { margin-bottom: 14px; color: var(--mr-ink-muted); font-size: 14px; line-height: 1.6; }
.mr-quickview__excerpt p { margin: 0 0 8px; }

.mr-quickview__specs {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: 6px 14px;
	margin: 0 0 18px;
	padding: 12px 14px;
	background: var(--mr-muted-bg);
	border-radius: var(--mr-r-md);
	font-size: 13px;
}
.mr-quickview__specs dt { color: var(--mr-ink-muted); }
.mr-quickview__specs dd { margin: 0; font-weight: 600; color: var(--mr-ink); }

.mr-quickview__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-bottom: 14px; }
.mr-quickview__qty {
	display: inline-flex;
	align-items: center;
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-md);
	overflow: hidden;
}
.mr-quickview__qty .mr-qty-btn {
	width: 42px;
	height: 46px;
	background: transparent;
	border: 0;
	color: var(--mr-ink);
	font-size: 18px;
	line-height: 1;
}
.mr-quickview__qty .mr-qty-btn:hover { background: var(--mr-muted-bg); }
.mr-quickview__qty-input {
	width: 52px;
	height: 46px;
	border: 0;
	border-left: 1px solid var(--mr-border);
	border-right: 1px solid var(--mr-border);
	text-align: center;
	font-size: 15px;
	font-weight: 600;
	-moz-appearance: textfield;
}
.mr-quickview__qty-input::-webkit-outer-spin-button,
.mr-quickview__qty-input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }

.mr-quickview__add { flex: 1 1 180px; min-height: 46px; }
.mr-quickview__add.loading { opacity: 0.6; pointer-events: none; }
.mr-quickview__add.added::after { content: ''; }

.mr-quickview__details { display: inline-block; font-size: 14px; font-weight: 600; }

@media (max-width: 719px) {
	.mr-quickview-overlay { padding: 0; align-items: flex-end; }
	.mr-quickview {
		max-width: 100%;
		max-height: 92vh;
		max-height: 92dvh;
		overscroll-behavior: contain;
		border-radius: var(--mr-r-lg) var(--mr-r-lg) 0 0;
	}
	.mr-quickview__close {
		position: sticky;
		top: 10px;
		right: auto;
		z-index: 10;
		width: auto;
		min-width: 44px;
		height: 44px;
		margin: 10px 10px -54px auto;
		padding: 0 13px;
		gap: 7px;
		background: var(--mr-white);
		border-color: var(--mr-primary);
		border-radius: 999px;
		color: var(--mr-primary);
		box-shadow: 0 3px 14px rgba(15, 23, 42, 0.16);
	}
	.mr-quickview__close-label {
		display: inline;
		font-size: 13px;
		font-weight: 700;
		line-height: 1;
	}
	/* Nema tvrde visine na cijelom bloku: u njemu je sada i red kockica, pa bi
	   ograničenje od 240 px odsjeklo kockice. Ograničava se sama slika. */
	.mr-quickview__media { max-height: none; padding: 14px; gap: 10px; }
	.mr-quickview__main img { max-height: 190px; }
	/* Selektor je namjerno specifičniji: osnovno pravilo za kockice stoji niže
	   u fajlu, pa bi ga inače nadjačalo. */
	.mr-quickview__media .mr-quickview__thumb { width: 48px; height: 48px; }
	.mr-quickview__title { font-size: 18px; }
	.mr-quickview__price { font-size: 22px; }
}

@media (prefers-reduced-motion: reduce) {
	.mr-quickview-overlay,
	.mr-quickview { transition: none; }
}

/* ==========================================================================
   Korpa
   ========================================================================== */


.woocommerce-cart-form { margin-bottom: 28px; position: relative; min-width: 0; }
.mr-cart-layout { width: 100%; }
table.shop_table {
	width: 100%;
	border-collapse: collapse;
	background: var(--mr-white);
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-lg);
	overflow: hidden;
}
table.shop_table th,
table.shop_table td {
	padding: 16px;
	text-align: left;
	border-bottom: 1px solid var(--mr-border);
	font-size: 14px;
	vertical-align: middle;
}
table.shop_table thead th {
	background: var(--mr-muted-bg);
	font-weight: 700;
	font-size: 13px;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: var(--mr-ink-muted);
}

/* Desktop korpa: stabilne širine kolona, sve vertikalno centrirano. */
.woocommerce-cart-form table.shop_table { table-layout: fixed; }
.woocommerce-cart-form .product-remove { width: 48px; text-align: center; padding-left: 8px; padding-right: 8px; }
.woocommerce-cart-form .product-thumbnail { width: 104px; }
.woocommerce-cart-form .product-name { width: auto; }
.woocommerce-cart-form .product-price { width: 120px; }
.woocommerce-cart-form .product-quantity { width: 170px; }
.woocommerce-cart-form .product-subtotal { width: 130px; font-weight: 700; color: var(--mr-ink); }

table.shop_table td.product-thumbnail img {
	width: 88px; height: 88px;
	object-fit: contain;
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-md);
	background: var(--mr-white);
}
table.shop_table td.product-name { line-height: 1.4; }
table.shop_table td.product-name a { font-weight: 600; color: var(--mr-ink); }
table.shop_table td.product-name a:hover { color: var(--mr-primary); }
.woocommerce-cart-form .product-quantity .quantity { width: 100%; max-width: 138px; }
table.shop_table .product-remove a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px; height: 34px;
	border-radius: 50%;
	background: var(--mr-muted-bg);
	color: var(--mr-error) !important;
	font-size: 18px;
	font-weight: 700;
	line-height: 1;
	text-decoration: none;
}
table.shop_table .product-remove a:hover { background: var(--mr-error); color: #fff !important; }

/* Red radnji (kupon + skriveno „Ažuriraj korpu"). */
table.shop_table td.actions { text-align: right; }
table.shop_table td.actions .coupon { float: left; display: flex; gap: 8px; }
table.shop_table td.actions .coupon input.input-text {
	min-height: 46px;
	padding: 8px 14px;
	border: 1px solid var(--mr-border-soft);
	border-radius: var(--mr-r-sm);
	width: 180px;
}

/* Collapsible kupon (mobilno). */
.mr-coupon-toggle {
	display: none;
	background: none;
	border: none;
	padding: 6px 0;
	color: var(--mr-primary);
	font-size: 14px;
	font-weight: 700;
	text-decoration: underline;
	cursor: pointer;
}

/* Loading stanje tokom AJAX ažuriranja. */
.woocommerce-cart-form.mr-cart--busy { pointer-events: none; }
.mr-cart-item--busy { position: relative; opacity: 0.6; transition: opacity 0.15s; }
.mr-cart-item--busy::after {
	content: '';
	position: absolute;
	top: 50%; right: 16px;
	width: 16px; height: 16px;
	margin-top: -8px;
	border: 2px solid var(--mr-border-soft);
	border-top-color: var(--mr-primary);
	border-radius: 50%;
	animation: mr-spin 0.7s linear infinite;
}

.cart-collaterals {
	display: flex;
	justify-content: flex-end;
	margin-top: 24px;
}
.cart-collaterals .cart_totals {
	width: 100%;
	max-width: 420px;
	background: var(--mr-white);
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-lg);
	padding: 24px;
}
.cart-collaterals .cart_totals h2 { font-size: 20px; margin-top: 0; }
.cart-collaterals table.shop_table { border: none; }
.cart-collaterals table.shop_table td,
.cart-collaterals table.shop_table th { padding: 12px 0; }
.cart-collaterals table.shop_table th { background: none; text-transform: none; letter-spacing: 0; width: 42%; }
.cart-collaterals table.shop_table .mr-cart-tax-included th,
.cart-collaterals table.shop_table .mr-cart-tax-included td {
	padding-top: 8px;
	padding-bottom: 8px;
	font-size: 13px;
	color: var(--mr-ink-muted);
}
.cart-collaterals table.shop_table .mr-cart-tax-included td { text-align: right; }
.mr-cart-tax-included__note {
	display: block;
	max-width: 250px;
	margin: 5px 0 0 auto;
	font-size: 11px;
	font-weight: 400;
	line-height: 1.45;
	color: var(--mr-ink-muted);
}
.wc-proceed-to-checkout { margin-top: 16px; }
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 54px;
	margin: 0;
	padding: 12px 20px;
	border: 0;
	border-radius: var(--mr-r-sm);
	font-size: 15px;
	font-weight: 750;
	line-height: 1.2;
	color: var(--mr-white);
	background: var(--mr-primary);
}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:focus-visible {
	color: var(--mr-white);
	background: var(--mr-primary-light);
}

/* Na širokom desktopu artikli i sažetak čine jedan kompaktan checkout korak. */
@media (min-width: 1200px) {
	.mr-cart-layout {
		display: grid;
		grid-template-columns: minmax(0, 1fr) minmax(340px, 390px);
		gap: 28px;
		align-items: start;
	}
	.mr-cart-layout .woocommerce-cart-form { margin: 0; }
	.mr-cart-layout .cart-collaterals {
		display: block;
		width: 100%;
		margin: 0;
		position: sticky;
		top: 172px;
	}
	.mr-cart-layout .cart-collaterals .cart_totals {
		float: none;
		width: 100%;
		max-width: none;
		padding: 26px;
		box-shadow: 0 12px 32px rgba(13, 31, 69, 0.06);
	}
	.mr-cart-layout .cart-collaterals .cart_totals h2 {
		font-size: 22px;
		padding-bottom: 16px;
		margin-bottom: 4px;
		border-bottom: 1px solid var(--mr-border);
	}
	.mr-cart-layout .cart-collaterals .order-total th,
	.mr-cart-layout .cart-collaterals .order-total td {
		padding-top: 18px;
		font-size: 17px;
	}
}

/* Prazna korpa — uredno prazno stanje. */
.woocommerce-cart .cart-empty.woocommerce-info,
.wc-empty-cart-message {
	text-align: center;
	background: var(--mr-white);
	border: 1px dashed var(--mr-border-soft);
	border-left-width: 1px;
	border-radius: var(--mr-r-lg);
	padding: 48px 24px 20px;
	font-size: 16px;
	color: var(--mr-ink);
}
.woocommerce-cart .cart-empty.woocommerce-info::before { display: none; }
.woocommerce-cart .wc-empty-cart-message + .return-to-shop,
.woocommerce-cart .cart-empty + .return-to-shop {
	text-align: center;
	padding-bottom: 40px;
}
.return-to-shop { margin-top: 16px; text-align: center; }
.return-to-shop .button {
	display: inline-flex;
	min-height: 50px;
	padding: 12px 28px;
}

/* Moj nalog: prazno stanje narudžbi. */
.woocommerce-MyAccount-content .woocommerce-Message--info,
.woocommerce-MyAccount-content .no_orders,
.woocommerce-account .woocommerce-info {
	text-align: center;
	background: var(--mr-muted-bg);
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-lg);
	padding: 32px 20px;
}

/* Mobilna korpa: svaki artikal kao uredna kartica. */
@media (max-width: 767px) {
	.mr-coupon-toggle { display: inline-block; }
	.mr-coupon--collapsible { display: none; }
	.mr-coupon--collapsible.is-open { display: flex; flex-wrap: wrap; margin-top: 8px; }

	.woocommerce-cart-form table.shop_table { table-layout: auto; border: none; background: none; }
	table.shop_table_responsive thead { display: none; }
	table.shop_table_responsive tbody { display: flex; flex-direction: column; gap: 12px; }
	table.shop_table_responsive tr.cart_item {
		display: grid;
		grid-template-columns: 76px 1fr auto;
		grid-template-areas:
			'thumb name remove'
			'thumb meta meta';
		gap: 4px 12px;
		align-items: start;
		background: var(--mr-white);
		border: 1px solid var(--mr-border);
		border-radius: var(--mr-r-lg);
		padding: 14px;
	}
	table.shop_table_responsive tr.cart_item td {
		display: block;
		border: none;
		padding: 0;
	}
	table.shop_table_responsive td.product-remove { grid-area: remove; text-align: right; }
	table.shop_table_responsive td.product-thumbnail {
		display: block !important;
		grid-area: thumb;
		width: 76px !important;
	}
	table.shop_table_responsive td.product-thumbnail::before {
		display: none !important;
		content: none !important;
	}
	table.shop_table_responsive td.product-name::before {
		display: none !important;
		content: none !important;
	}
	table.shop_table_responsive td.product-thumbnail a { display: block; }
	table.shop_table_responsive td.product-thumbnail img { width: 72px; height: 72px; }
	table.shop_table_responsive td.product-name {
		grid-area: name;
		width: auto !important;
		font-weight: 600;
		text-align: left !important;
		overflow-wrap: anywhere;
		align-self: center;
	}
	/* Cijena, količina, ukupno u urednom redu labela → vrijednost. */
	table.shop_table_responsive td.product-price,
	table.shop_table_responsive td.product-quantity,
	table.shop_table_responsive td.product-subtotal {
		grid-area: auto;
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		padding: 8px 0 0;
		border-top: 1px solid var(--mr-border);
		margin-top: 8px;
	}
	table.shop_table_responsive td.product-price { grid-column: 1 / -1; }
	table.shop_table_responsive td.product-quantity { grid-column: 1 / -1; }
	table.shop_table_responsive td.product-subtotal { grid-column: 1 / -1; }
	table.shop_table_responsive td.product-price .amount,
	table.shop_table_responsive td.product-subtotal .amount { margin-left: auto; }
	table.shop_table_responsive tr.cart_item td.product-price::before,
	table.shop_table_responsive tr.cart_item td.product-quantity::before,
	table.shop_table_responsive tr.cart_item td.product-subtotal::before {
		content: attr(data-title);
		font-size: 12px;
		font-weight: 700;
		text-transform: uppercase;
		color: var(--mr-outline);
	}
	.woocommerce-cart-form .product-quantity .quantity { max-width: 130px; width: auto; }

	/* Red radnji: kupon collapsible, dugmad puna širina. */
	table.shop_table_responsive tr:not(.cart_item) { display: block; }
	table.shop_table td.actions {
		display: block;
		text-align: left;
		background: none;
		border: none;
		padding: 12px 0 0;
	}
	table.shop_table td.actions .coupon { float: none; width: 100%; }
	table.shop_table td.actions .coupon input.input-text { flex: 1; width: auto; }
	table.shop_table td.actions .coupon .button { flex-shrink: 0; }
}

/* ========================================================================== 
   Naplata
   ========================================================================== */

/* Checkout već ima vlastite kartice, zato uklanjamo veliki vanjski page panel. */
.woocommerce-checkout .mr-page__article {
	background: transparent;
	border: 0;
	border-radius: 0;
	padding: 0;
}
.woocommerce-checkout .mr-page__content { max-width: none; }

.woocommerce-checkout .col2-set {
	display: block;
	width: 100%;
	margin: 0 0 28px;
}
/* WooCommerce core postavlja 48% + float na .col-1/.col-2. To je uzrok
   uske forme i ogromne praznine na desktopu, pa se ovdje ciljano poništava. */
.woocommerce-checkout .col2-set::before,
.woocommerce-checkout .col2-set::after { display: none; }
.woocommerce-checkout .col2-set .col-1,
.woocommerce-checkout .col2-set .col-2 {
	float: none !important;
	width: 100% !important;
	margin: 0;
}
@media (min-width: 900px) {
	form.woocommerce-checkout {
		display: grid;
		grid-template-columns: minmax(0, 1.15fr) minmax(360px, 0.85fr);
		grid-template-areas:
			"customer review-title"
			"customer review";
		grid-template-rows: auto 1fr;
		column-gap: 40px;
		row-gap: 12px;
		align-items: start;
	}
	form.woocommerce-checkout .col2-set {
		grid-area: customer;
		min-width: 0;
		margin-bottom: 0;
	}
	form.woocommerce-checkout #order_review_heading {
		grid-area: review-title;
		margin: 0;
	}
	form.woocommerce-checkout #order_review {
		grid-area: review;
		min-width: 0;
	}
}

.woocommerce-billing-fields h3,
.woocommerce-shipping-fields h3,
#order_review_heading {
	font-size: clamp(20px, 2vw, 26px);
	line-height: 1.2;
	margin: 0 0 20px;
}
.woocommerce-billing-fields,
.woocommerce-shipping-fields,
.woocommerce-additional-fields {
	background: var(--mr-white);
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-lg);
	padding: 24px;
	margin-bottom: 20px;
}
.woocommerce-checkout form .form-row {
	padding: 0;
	margin: 0 0 18px;
}
.woocommerce-checkout form .form-row label {
	line-height: 1.35;
	font-weight: 650;
	margin-bottom: 8px;
}
.woocommerce-checkout form .form-row input.input-text,
.woocommerce-checkout form .form-row textarea,
.woocommerce-checkout form .form-row select,
.woocommerce-checkout .select2-container .select2-selection--single {
	min-height: 52px;
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-sm);
	background: var(--mr-white);
	font: inherit;
}
.woocommerce-checkout form .form-row input.input-text,
.woocommerce-checkout form .form-row textarea,
.woocommerce-checkout form .form-row select { padding: 12px 14px; }
.woocommerce-checkout form .form-row textarea { min-height: 120px; resize: vertical; }
.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__rendered {
	line-height: 50px;
	padding-left: 14px;
}
.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__arrow {
	height: 50px;
	right: 8px;
}
.woocommerce-checkout .woocommerce-input-wrapper > strong {
	display: flex;
	align-items: center;
	min-height: 52px;
	padding: 12px 14px;
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-sm);
	background: var(--mr-muted-bg);
	font-weight: 600;
}
.woocommerce-checkout form .form-row.woocommerce-invalid input.input-text,
.woocommerce-checkout form .form-row.woocommerce-invalid select,
.woocommerce-checkout form .form-row.woocommerce-invalid .select2-selection {
	border-color: var(--mr-error);
	box-shadow: 0 0 0 3px rgba(182, 32, 32, 0.09);
}
.woocommerce-checkout form .form-row input:focus,
.woocommerce-checkout form .form-row textarea:focus,
.woocommerce-checkout form .form-row select:focus,
.woocommerce-checkout .select2-container--focus .select2-selection {
	border-color: var(--mr-primary);
	box-shadow: 0 0 0 3px rgba(0, 47, 110, 0.1);
	outline: 0;
}
#order_review {
	background: var(--mr-white);
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-lg);
	padding: 24px;
}
#order_review table.shop_table {
	width: 100%;
	border: none;
	table-layout: auto;
}
#order_review table.shop_table th,
#order_review table.shop_table td {
	padding: 14px 0;
	border-left: 0;
	border-right: 0;
	vertical-align: top;
}
#order_review table.shop_table th:last-child,
#order_review table.shop_table td:last-child {
	width: 31%;
	padding-left: 18px;
	text-align: right;
}
#order_review tbody .product-name {
	display: grid;
	grid-template-columns: 58px minmax(0, 1fr) auto;
	column-gap: 12px;
	row-gap: 5px;
	align-items: center;
	overflow-wrap: anywhere;
}
.mr-checkout-product__thumb {
	grid-column: 1;
	grid-row: 1 / span 2;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 58px;
	height: 58px;
	padding: 4px;
	border: 1px solid var(--mr-border);
	border-radius: 10px;
	background: var(--mr-white);
}
.mr-checkout-product__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	border-radius: 7px;
}
.mr-checkout-product__name {
	grid-column: 2;
	grid-row: 1;
	font-weight: 650;
	line-height: 1.35;
	color: var(--mr-ink);
}
#order_review tbody .product-quantity {
	grid-column: 3;
	grid-row: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 28px;
	height: 28px;
	padding: 0 8px;
	border-radius: 999px;
	background: var(--mr-primary-pale);
	color: var(--mr-primary);
	font-size: 12px;
	font-weight: 750;
	white-space: nowrap;
}
#order_review tbody .variation,
#order_review tbody .wc-item-meta {
	grid-column: 2 / -1;
	grid-row: 2;
	margin: 0;
	font-size: 12px;
	color: var(--mr-ink-muted);
}
#order_review ul#shipping_method {
	list-style: none;
	margin: 0;
	padding: 0;
}
#order_review ul#shipping_method li { margin: 0; }

.woocommerce-checkout #payment {
	background: transparent;
	border-radius: 0;
}
.woocommerce-checkout #payment ul.payment_methods {
	list-style: none;
	margin: 18px 0 0;
	padding: 0;
	border: 0;
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.woocommerce-checkout #payment ul.payment_methods li {
	line-height: 1.5;
	background: var(--mr-white);
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-md);
	padding: 16px;
}
.woocommerce-checkout #payment ul.payment_methods li input { margin-right: 8px; }
.woocommerce-checkout #payment ul.payment_methods label { font-weight: 700; margin: 0; }
.woocommerce-checkout #payment div.payment_box {
	position: relative;
	width: 100%;
	margin: 14px 0 0;
	padding: 14px 16px;
	background: var(--mr-primary-pale);
	border: 1px solid rgba(0, 47, 110, 0.12);
	border-radius: var(--mr-r-sm);
	font-size: 14px;
	line-height: 1.55;
	color: var(--mr-ink-muted);
}
.woocommerce-checkout #payment div.payment_box::before {
	content: "";
	position: absolute;
	top: -8px;
	left: 24px;
	width: 14px;
	height: 14px;
	margin: 0;
	border: 1px solid rgba(0, 47, 110, 0.12);
	border-right: 0;
	border-bottom: 0;
	background: var(--mr-primary-pale);
	transform: rotate(45deg);
}
.woocommerce-checkout #payment .mr-checkout-consent {
	margin: 0 0 12px;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.5;
	color: var(--mr-ink-muted);
}
.woocommerce-checkout #payment .mr-checkout-consent a {
	color: inherit;
	text-decoration: underline;
}
.woocommerce-checkout .monri-installments label {
	display: block;
	margin: 0 0 6px;
	font-weight: 600;
	font-size: 14px;
}
.woocommerce-checkout .monri-installments select {
	max-width: 220px;
	padding: 8px 10px;
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-sm);
	background: var(--mr-white);
}
.woocommerce-checkout #payment .place-order {
	float: none;
	margin: 18px 0 0;
	padding: 0;
}
#place_order {
	display: flex;
	align-items: center;
	justify-content: center;
	float: none;
	width: 100%;
	min-height: 56px;
	font-size: 16px;
	font-weight: 750;
	background: var(--mr-accent);
	color: var(--mr-white);
	border-radius: var(--mr-r-sm);
}
#place_order:hover { background: var(--mr-accent-light); }

.woocommerce-terms-and-conditions-wrapper { font-size: 13px; color: var(--mr-ink-muted); margin-bottom: 12px; }

@media (min-width: 768px) {
	.woocommerce-billing-fields,
	.woocommerce-shipping-fields,
	.woocommerce-additional-fields,
	#order_review { padding: 30px; }
}
@media (min-width: 1100px) {
	form.woocommerce-checkout #order_review {
		position: sticky;
		top: 168px;
		box-shadow: 0 12px 32px rgba(13, 31, 69, 0.06);
	}
}
@media (max-width: 899px) {
	form.woocommerce-checkout { display: block; }
	form.woocommerce-checkout #order_review_heading { margin-top: 30px; }
	.woocommerce-checkout form .form-row-first,
	.woocommerce-checkout form .form-row-last {
		float: none;
		width: 100%;
	}
	#order_review tbody .product-name {
		grid-template-columns: 50px minmax(0, 1fr) auto;
		column-gap: 10px;
	}
	.mr-checkout-product__thumb {
		width: 50px;
		height: 50px;
	}
}
@media (max-width: 479px) {
	#order_review { padding: 18px; }
	#order_review table.shop_table th,
	#order_review table.shop_table td { padding-top: 12px; padding-bottom: 12px; }
	#order_review table.shop_table th:last-child,
	#order_review table.shop_table td:last-child {
		width: 30%;
		padding-left: 10px;
	}
	#order_review tbody .product-name {
		grid-template-columns: 46px minmax(0, 1fr);
		column-gap: 9px;
	}
	.mr-checkout-product__thumb {
		width: 46px;
		height: 46px;
	}
	#order_review tbody .product-quantity {
		grid-column: 2;
		grid-row: 2;
		justify-self: start;
	}
	#order_review tbody .variation,
	#order_review tbody .wc-item-meta { grid-row: 3; }
}
@media (max-width: 480px) {
	.woocommerce-billing-fields,
	.woocommerce-shipping-fields,
	.woocommerce-additional-fields,
	#order_review { padding: 18px; }
	#order_review table.shop_table th:last-child,
	#order_review table.shop_table td:last-child {
		width: 30%;
		padding-left: 12px;
	}
}

/* Potvrda narudžbe */
.woocommerce-order .woocommerce-thankyou-order-received {
	font-size: 20px;
	font-weight: 700;
	color: var(--mr-success);
	margin-bottom: 20px;
}
ul.woocommerce-thankyou-order-details {
	list-style: none;
	margin: 0 0 24px;
	padding: 20px;
	background: var(--mr-white);
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-lg);
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}
ul.woocommerce-thankyou-order-details li { font-size: 13px; color: var(--mr-ink-muted); }
ul.woocommerce-thankyou-order-details strong { display: block; font-size: 15px; color: var(--mr-ink); }

/* ==========================================================================
   Moj nalog
   ========================================================================== */

/* Poništi WooCommerce core float raspored (navigacija/sadržaj). */
.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content {
	float: none;
	width: auto;
	margin: 0;
}

/* Grid: navigacija lijevo, sadržaj desno, oboje od iste linije.
   Koristi se .logged-in (WP body klasa) umjesto :has() radi pouzdanosti. */
.woocommerce-account .entry-content > .woocommerce {
	display: block;
}
@media (min-width: 900px) {
	.logged-in.woocommerce-account .entry-content > .woocommerce {
		display: grid;
		grid-template-columns: 270px minmax(0, 1fr);
		gap: 28px;
		align-items: start;
	}
	/* WooCommerce clearfix pseudo-elementi su inače dodatne grid stavke:
	   gurnu navigaciju desno, a sadržaj u novi red. */
	.logged-in.woocommerce-account .entry-content > .woocommerce::before,
	.logged-in.woocommerce-account .entry-content > .woocommerce::after {
		content: none;
		display: none;
	}
}
.woocommerce-MyAccount-navigation { margin-bottom: 20px; }
@media (min-width: 900px) { .woocommerce-MyAccount-navigation { margin-bottom: 0; } }
.woocommerce-MyAccount-navigation ul {
	list-style: none;
	margin: 0;
	padding: 8px;
	background: var(--mr-white);
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-lg);
}
.woocommerce-MyAccount-navigation li { margin: 0; }
.woocommerce-MyAccount-navigation li a {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 11px 14px;
	border-radius: var(--mr-r-md);
	color: var(--mr-ink-muted);
	font-weight: 600;
	font-size: 14px;
}
.woocommerce-MyAccount-navigation li a .mr-icon { color: var(--mr-outline); flex-shrink: 0; }
.woocommerce-MyAccount-navigation li a:hover { background: var(--mr-muted-bg); color: var(--mr-primary); }
.woocommerce-MyAccount-navigation li a:hover .mr-icon { color: var(--mr-primary); }
.woocommerce-MyAccount-navigation li.is-active a {
	background: var(--mr-primary-pale);
	color: var(--mr-primary);
}
.woocommerce-MyAccount-navigation li.is-active a .mr-icon { color: var(--mr-primary); }
/* Odjava: diskretno crvena, posljednja stavka. */
.woocommerce-MyAccount-navigation-link--customer-logout a { color: var(--mr-accent); }
.woocommerce-MyAccount-navigation-link--customer-logout a .mr-icon { color: var(--mr-accent); }
.woocommerce-MyAccount-navigation-link--customer-logout a:hover { background: var(--mr-error-container, #ffdad6); color: var(--mr-accent); }

.woocommerce-MyAccount-content {
	background: var(--mr-white);
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-lg);
	padding: 24px;
	min-width: 0;
}
@media (min-width: 768px) { .woocommerce-MyAccount-content { padding: 28px; } }
.woocommerce-MyAccount-content table.shop_table { border: 1px solid var(--mr-border); }

/* Kontrolna tabla: pozdrav + kartice brzih akcija. */
.mr-account-dash__greeting { font-size: 18px; margin: 0 0 4px; }
.mr-account-dash__intro { color: var(--mr-ink-muted); margin: 0 0 22px; }
.mr-account-cards {
	display: grid;
	grid-template-columns: 1fr;
	gap: 12px;
}
@media (min-width: 560px) { .mr-account-cards { grid-template-columns: 1fr 1fr; } }
.mr-account-card {
	display: block;
	padding: 18px;
	background: var(--mr-muted-bg);
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-lg);
	transition: border-color 0.2s, background-color 0.2s;
}
.mr-account-card:hover { border-color: var(--mr-primary); background: var(--mr-primary-pale); }
.mr-account-card__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px; height: 42px;
	margin-bottom: 10px;
	background: var(--mr-white);
	border-radius: 50%;
	color: var(--mr-primary);
}
.mr-account-card__title { display: block; font-weight: 700; color: var(--mr-ink); margin-bottom: 2px; }
.mr-account-card__text { display: block; font-size: 13px; color: var(--mr-ink-muted); }

/* Mobilna navigacija: horizontalni scroll tab meni. */
@media (max-width: 899px) {
	.woocommerce-MyAccount-navigation ul {
		display: flex;
		gap: 6px;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
		padding: 6px;
	}
	.woocommerce-MyAccount-navigation ul::-webkit-scrollbar { display: none; }
	.woocommerce-MyAccount-navigation li a { white-space: nowrap; }
}
.woocommerce-MyAccount-content .woocommerce-Address {
	background: var(--mr-muted-bg);
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-md);
	padding: 18px;
}
.woocommerce-Addresses { display: grid; gap: 16px; }
@media (min-width: 768px) { .woocommerce-Addresses { grid-template-columns: 1fr 1fr; } }

/* Prijava i registracija: odvojeni, fokusirani prikazi. */
.mr-auth {
	width: min(100%, 650px);
	margin: 6px auto 24px;
}
.mr-auth__header {
	max-width: 580px;
	margin: 0 auto 22px;
	text-align: center;
}
.mr-auth__eyebrow {
	display: inline-flex;
	align-items: center;
	min-height: 30px;
	margin-bottom: 10px;
	padding: 5px 12px;
	border-radius: 999px;
	background: var(--mr-primary-pale);
	color: var(--mr-primary);
	font-size: 12px;
	font-weight: 750;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}
.mr-auth__header h2 {
	margin: 0 0 9px;
	font-size: clamp(28px, 4vw, 36px);
	line-height: 1.15;
}
.mr-auth__header p {
	margin: 0;
	color: var(--mr-ink-muted);
	font-size: 15px;
	line-height: 1.6;
}
.mr-auth .woocommerce-form-login,
.mr-auth .woocommerce-form-register,
.woocommerce-ResetPassword {
	max-width: none;
	margin: 0;
	padding: 34px;
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-lg);
	background: var(--mr-white);
	box-shadow: 0 14px 38px rgba(13, 31, 69, 0.07);
}
.mr-auth .form-row {
	margin: 0 0 20px;
	padding: 0;
}
.mr-auth .form-row label {
	display: block;
	margin-bottom: 8px;
	font-weight: 700;
}
.mr-auth input.input-text {
	width: 100%;
	min-height: 54px;
	padding: 12px 14px;
	border: 1px solid var(--mr-border-soft);
	border-radius: var(--mr-r-sm);
	background: var(--mr-white);
	font: inherit;
}
.mr-auth input.input-text:focus {
	border-color: var(--mr-primary);
	box-shadow: 0 0 0 3px rgba(0, 47, 110, 0.1);
	outline: 0;
}
.mr-auth__options {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin: -2px 0 20px;
}
.mr-auth .woocommerce-form-login__rememberme {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: 0;
	font-size: 14px;
	font-weight: 600;
}
.mr-auth .woocommerce-form-login__rememberme input {
	width: 18px;
	height: 18px;
	margin: 0;
	accent-color: var(--mr-primary);
}
.mr-auth__lost-password {
	font-size: 14px;
	font-weight: 650;
	color: var(--mr-primary);
}
.mr-auth__submit-row { margin-bottom: 0 !important; }
.mr-auth__submit-row .button {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 54px;
	margin: 0;
	border-radius: var(--mr-r-sm);
	background: var(--mr-primary);
	color: var(--mr-white);
	font-size: 16px;
	font-weight: 750;
}
.mr-auth__submit-row .button:hover,
.mr-auth__submit-row .button:focus-visible {
	background: var(--mr-primary-light);
	color: var(--mr-white);
}
.mr-auth__switch {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	margin-top: 16px;
	padding: 18px 20px;
	border: 1px solid rgba(0, 47, 110, 0.12);
	border-radius: var(--mr-r-md);
	background: var(--mr-primary-pale);
	font-size: 14px;
	color: var(--mr-ink-muted);
}
.mr-auth__switch-link {
	font-weight: 750;
	color: var(--mr-primary);
	text-decoration: underline;
	text-underline-offset: 3px;
}
.mr-auth__benefits {
	display: grid;
	gap: 9px;
	margin: 4px 0 22px;
	padding: 16px 18px;
	list-style: none;
	border-radius: var(--mr-r-sm);
	background: var(--mr-muted-bg);
}
.mr-auth__benefits li {
	position: relative;
	padding-left: 23px;
	font-size: 14px;
	line-height: 1.45;
	color: var(--mr-ink-muted);
}
.mr-auth__benefits li::before {
	content: '✓';
	position: absolute;
	left: 0;
	top: 0;
	color: var(--mr-success);
	font-weight: 800;
}
.mr-auth__notice {
	padding: 14px 16px;
	border-radius: var(--mr-r-sm);
	background: var(--mr-primary-pale);
	color: var(--mr-ink-muted);
	font-size: 14px;
}
.mr-auth .woocommerce-privacy-policy-text {
	margin: 0 0 20px;
	font-size: 13px;
	line-height: 1.55;
	color: var(--mr-ink-muted);
}
.mr-registration-trap {
	position: absolute !important;
	left: -10000px !important;
	top: auto !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
}
.woocommerce-account:not(.logged-in) .woocommerce-notices-wrapper {
	width: min(100%, 650px);
	margin-inline: auto;
}
.woocommerce-account:not(.logged-in) .woocommerce-ResetPassword {
	width: min(100%, 650px);
	margin-inline: auto;
}
.woocommerce-LostPassword { font-size: 13px; }
@media (max-width: 559px) {
	.mr-auth { margin-top: 0; }
	.mr-auth__header { text-align: left; }
	.mr-auth .woocommerce-form-login,
	.mr-auth .woocommerce-form-register,
	.woocommerce-ResetPassword { padding: 22px 18px; }
	.mr-auth__options {
		align-items: flex-start;
		flex-direction: column;
		gap: 10px;
	}
	.mr-auth__switch {
		align-items: flex-start;
		flex-direction: column;
	}
}
.show-password-input { display: none; }

/* ==========================================================================
   Ostalo
   ========================================================================== */

.woocommerce-store-notice {
	position: fixed;
	bottom: 0; left: 0; right: 0;
	z-index: 999;
	background: var(--mr-primary);
	color: #fff;
	padding: 12px 20px;
	text-align: center;
	font-size: 14px;
}
.woocommerce-store-notice a { color: #fff; text-decoration: underline; }

/* Stranica omiljenih */
.mr-wishlist-page ul.products { margin-top: 8px; }

/* Widget filteri (opciono) */
.mr-filter-group .woocommerce-widget-layered-nav-list { list-style: none; margin: 0; padding: 0; }
.mr-filter-group .woocommerce-widget-layered-nav-list li { padding: 5px 0; font-size: 14px; }
.mr-filter-group .woocommerce-widget-layered-nav-list li.chosen a { color: var(--mr-primary); font-weight: 700; }

/* ==========================================================================
   Kaskadne završne korekcije (moraju biti NA KRAJU fajla)
   ========================================================================== */

/* Telefon: horizontalni tabovi sakriveni — koristi se accordion. */
@media (max-width: 767px) {
	.woocommerce-tabs ul.tabs,
	.woocommerce div.product .woocommerce-tabs ul.tabs { display: none; }
}

/* ========================================================================== 
   Mobilna korpa i naplata v4.2.2
   ========================================================================== */

.mr-cart-dock { display: none; }

@media (max-width: 767px) {
	body.woocommerce-cart {
		padding-bottom: calc(76px + env(safe-area-inset-bottom, 0px));
	}
	body.woocommerce-checkout { padding-bottom: 0; }

	/* Na korpi i naplati ostavljamo fokus na završetku kupovine. */
	.woocommerce-cart .mr-bottom-nav,
	.woocommerce-checkout .mr-bottom-nav { display: none; }

	.woocommerce-cart .mr-cart-dock {
		display: flex;
		position: fixed;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 45;
		align-items: center;
		gap: 12px;
		padding: 10px 16px calc(10px + env(safe-area-inset-bottom, 0px));
		border-top: 1px solid var(--mr-border);
		background: var(--mr-bg);
		box-shadow: 0 -6px 20px rgb(0 0 0 / 10%);
	}
	.mr-cart-dock__sum {
		display: flex;
		flex: 0 0 auto;
		flex-direction: column;
		min-width: 0;
		line-height: 1.2;
	}
	.mr-cart-dock__label {
		color: var(--mr-ink-muted);
		font-size: 11px;
	}
	.mr-cart-dock__total {
		color: var(--mr-accent);
		font-size: 16px;
		font-weight: 700;
		white-space: nowrap;
	}
	.mr-cart-dock__go {
		flex: 1 1 auto;
		justify-content: center;
		min-width: 0;
		min-height: 48px;
		padding-inline: 14px;
		text-align: center;
	}
	.woocommerce-cart .woocommerce {
		padding-bottom: calc(84px + env(safe-area-inset-bottom, 0px));
	}
	.woocommerce-cart .woocommerce-shipping-destination { display: none; }

	.woocommerce-cart .mr-page,
	.woocommerce-checkout .mr-page {
		padding-top: 14px;
		padding-bottom: 44px;
	}
	.woocommerce-cart .mr-page__article {
		padding: 0;
		background: transparent;
		border: 0;
		border-radius: 0;
	}
	.woocommerce-cart .mr-page__header,
	.woocommerce-checkout .mr-page__header { margin: 4px 0 18px; }
	.woocommerce-cart .mr-page__title { font-size: 30px; }
	.woocommerce-checkout .mr-page__title { font-size: 28px; }

	/* Kompaktna kartica artikla u korpi. */
	table.shop_table_responsive tr.cart_item {
		position: relative;
		grid-template-columns: 82px minmax(0, 1fr) minmax(88px, auto);
		grid-template-areas:
			"thumb name name"
			"thumb price price"
			"quantity quantity subtotal";
		column-gap: 12px;
		row-gap: 5px;
		padding: 14px;
		border-radius: var(--mr-r-md);
		box-shadow: 0 6px 18px rgba(13, 31, 69, 0.04);
	}
	table.shop_table_responsive td.product-remove {
		position: absolute;
		top: 12px;
		right: 12px;
		z-index: 2;
		width: 34px !important;
	}
	table.shop_table_responsive td.product-remove a {
		width: 32px;
		height: 32px;
		font-size: 16px;
	}
	table.shop_table_responsive td.product-thumbnail {
		grid-area: thumb;
		width: 82px !important;
	}
	table.shop_table_responsive td.product-thumbnail img {
		width: 82px;
		height: 82px;
		border-radius: 10px;
	}
	.woocommerce-cart table.shop_table_responsive tr.cart_item td.product-name {
		grid-area: name;
		padding: 2px 44px 0 0 !important;
		font-size: 14px;
		font-weight: 650;
		line-height: 1.35;
		text-align: left !important;
		align-self: start;
	}
	.woocommerce-cart table.shop_table_responsive tr.cart_item td.product-name a {
		display: block;
		text-align: left !important;
	}
	table.shop_table_responsive td.product-price {
		grid-area: price;
		display: flex;
		align-items: center;
		justify-content: flex-start;
		gap: 7px;
		margin: 0;
		padding: 0;
		border: 0;
		color: var(--mr-ink-muted);
		font-size: 13px;
	}
	table.shop_table_responsive td.product-price .amount {
		margin: 0;
		color: var(--mr-ink);
		font-weight: 650;
	}
	table.shop_table_responsive tr.cart_item td.product-price::before {
		content: attr(data-title);
		font-size: 12px;
		font-weight: 650;
		color: var(--mr-outline);
	}
	table.shop_table_responsive td.product-quantity {
		grid-area: quantity;
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		justify-content: flex-start;
		gap: 6px;
		min-width: 0;
		margin-top: 9px;
		padding: 11px 0 0;
		border-top: 1px solid var(--mr-border);
	}
	table.shop_table_responsive td.product-subtotal {
		grid-area: subtotal;
		display: flex;
		flex-direction: column;
		align-items: flex-end;
		justify-content: flex-start;
		gap: 7px;
		min-width: 88px;
		margin-top: 9px;
		padding: 11px 0 0;
		border-top: 1px solid var(--mr-border);
		text-align: right !important;
	}
	table.shop_table_responsive tr.cart_item td.product-quantity::before,
	table.shop_table_responsive tr.cart_item td.product-subtotal::before {
		font-size: 11px;
		letter-spacing: 0.03em;
	}
	table.shop_table_responsive td.product-subtotal .amount {
		margin: 0;
		color: var(--mr-ink);
		font-size: 15px;
		font-weight: 750;
		white-space: nowrap;
	}
	.woocommerce-cart-form .product-quantity .quantity {
		width: 132px;
		max-width: 100%;
		min-height: 42px;
	}

	table.shop_table td.actions {
		margin-top: 12px;
		padding: 13px 14px;
		background: var(--mr-white);
		border: 1px solid var(--mr-border);
		border-radius: var(--mr-r-md);
	}
	table.shop_table td.actions .coupon.mr-coupon--collapsible { display: none; }
	table.shop_table td.actions .coupon.mr-coupon--collapsible.is-open { display: flex; }
	.cart-collaterals {
		display: block;
		margin-top: 18px;
	}
	.cart-collaterals .cart_totals {
		max-width: none;
		padding: 18px;
		border-radius: var(--mr-r-md);
	}
	.cart-collaterals .cart_totals h2 {
		margin-bottom: 4px;
		font-size: 20px;
	}
	.cart-collaterals table.shop_table th,
	.cart-collaterals table.shop_table td { padding: 11px 0; }
	.woocommerce-cart .wc-proceed-to-checkout a.checkout-button { min-height: 52px; }

	/* Naplata: manji paneli i kontrole prilagođene telefonu. */
	.woocommerce-billing-fields,
	.woocommerce-shipping-fields,
	.woocommerce-additional-fields,
	#order_review {
		padding: 16px;
		border-radius: var(--mr-r-md);
	}
	.woocommerce-billing-fields h3,
	.woocommerce-shipping-fields h3,
	#order_review_heading {
		margin-bottom: 16px;
		font-size: 21px;
	}
	form.woocommerce-checkout #order_review_heading { margin-top: 24px; }
	.woocommerce-checkout form .form-row { margin-bottom: 14px; }
	.woocommerce-checkout form .form-row label {
		margin-bottom: 6px;
		font-size: 13px;
	}
	.woocommerce-checkout form .form-row input.input-text,
	.woocommerce-checkout form .form-row textarea,
	.woocommerce-checkout form .form-row select,
	.woocommerce-checkout .select2-container .select2-selection--single {
		min-height: 48px;
	}
	.woocommerce-checkout form .form-row input.input-text,
	.woocommerce-checkout form .form-row textarea,
	.woocommerce-checkout form .form-row select { padding: 10px 12px; }
	.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__rendered {
		line-height: 46px;
		padding-left: 12px;
	}
	.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__arrow { height: 46px; }
	.woocommerce-checkout .woocommerce-input-wrapper > strong {
		min-height: 48px;
		padding: 10px 12px;
	}

	/* Pregled narudžbe s većom slikom i jasnijom cijenom. */
	#order_review table.shop_table thead { display: none; }
	#order_review table.shop_table tbody tr.cart_item {
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto;
		align-items: center;
		column-gap: 10px;
		padding: 12px 0;
		border-bottom: 1px solid var(--mr-border);
	}
	#order_review table.shop_table tbody tr.cart_item td {
		display: block;
		width: auto !important;
		padding: 0;
		border: 0;
	}
	#order_review table.shop_table tbody tr.cart_item td.product-total {
		padding-left: 8px;
		font-size: 14px;
		font-weight: 750;
		white-space: nowrap;
	}
	#order_review tbody .product-name {
		grid-template-columns: 58px minmax(0, 1fr);
		column-gap: 10px;
	}
	.mr-checkout-product__thumb {
		width: 58px;
		height: 58px;
	}
	#order_review tbody .product-quantity {
		grid-column: 2;
		grid-row: 2;
		justify-self: start;
		height: 24px;
		min-width: 24px;
	}
	#order_review tbody .variation,
	#order_review tbody .wc-item-meta {
		grid-column: 2;
		grid-row: 3;
	}
	#order_review table.shop_table tfoot tr {
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto;
		align-items: start;
		border-bottom: 1px solid var(--mr-border);
	}
	#order_review table.shop_table tfoot th,
	#order_review table.shop_table tfoot td {
		display: block;
		width: auto !important;
		padding: 12px 0;
		border: 0;
	}
	#order_review table.shop_table tfoot td {
		padding-left: 12px;
		text-align: right;
	}
	.woocommerce-checkout #payment ul.payment_methods {
		margin-top: 14px;
		gap: 8px;
	}
	.woocommerce-checkout #payment ul.payment_methods li { padding: 14px; }
	.woocommerce-checkout #payment div.payment_box {
		margin-top: 12px;
		padding: 12px 13px;
		font-size: 13px;
	}
	#place_order {
		min-height: 52px;
		font-size: 15px;
	}
}

/* Na 390 px ime/prezime i grad/poštanski broj stanu u dva uredna stupca. */
@media (min-width: 380px) and (max-width: 899px) {
	.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
	.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 12px;
	}
	.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row,
	.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row {
		grid-column: 1 / -1;
		min-width: 0;
	}
	.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-first,
	.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row-first { grid-column: 1; }
	.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-last,
	.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row-last { grid-column: 2; }
	.woocommerce-checkout #billing_postcode_field,
	.woocommerce-checkout #shipping_postcode_field { grid-column: 1; }
	.woocommerce-checkout #billing_city_field,
	.woocommerce-checkout #shipping_city_field { grid-column: 2; }
}

@media (max-width: 379px) {
	table.shop_table_responsive tr.cart_item {
		grid-template-columns: 74px minmax(0, 1fr) minmax(82px, auto);
		column-gap: 10px;
		padding: 12px;
	}
	table.shop_table_responsive td.product-thumbnail { width: 74px !important; }
	table.shop_table_responsive td.product-thumbnail img { width: 74px; height: 74px; }
	.woocommerce-cart table.shop_table_responsive tr.cart_item td.product-name { font-size: 13.5px; }
	table.shop_table_responsive td.product-subtotal { min-width: 82px; }
}

/* ==========================================================================
   Nedavno pregledani proizvodi
   ========================================================================== */

.mr-recently { padding-top: 8px; }
.mr-recently[hidden] { display: none; }
.mr-recently .mr-section__head { align-items: center; }
.mr-recently__clear {
	background: transparent;
	border: 0;
	padding: 4px 2px;
	color: var(--mr-ink-muted);
	font-size: 13px;
	font-weight: 600;
	text-decoration: underline;
	white-space: nowrap;
}
.mr-recently__clear:hover { color: var(--mr-accent); }

/* ==========================================================================
   Pitanja i odgovori
   ========================================================================== */

.mr-qa__list { margin: 0 0 28px; padding: 0; list-style: none; display: grid; gap: 14px; }
.mr-qa__item {
	padding: 16px 18px;
	background: var(--mr-white);
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-lg);
}
.mr-qa__question {
	display: flex; gap: 10px; align-items: flex-start;
	margin: 0 0 4px; font-size: 15px; font-weight: 700; color: var(--mr-ink);
}
.mr-qa__marker {
	flex: 0 0 auto;
	display: flex; align-items: center; justify-content: center;
	width: 26px; height: 26px;
	background: var(--mr-primary-pale); color: var(--mr-primary);
	border-radius: 50%; font-size: 13px; font-weight: 800;
}
.mr-qa__marker--a { background: #eaf7ee; color: #1c6b33; }
.mr-qa__meta { margin: 0 0 0 36px; font-size: 12px; color: var(--mr-ink-muted); }
.mr-qa__answer {
	display: flex; gap: 10px; align-items: flex-start;
	margin: 12px 0 0 0; padding: 12px 14px;
	background: var(--mr-muted-bg); border-radius: var(--mr-r-md);
}
.mr-qa__answer p { margin: 0 0 2px; font-size: 14px; line-height: 1.6; color: var(--mr-ink); }
.mr-qa__answer .mr-qa__meta { margin-left: 0; }
.mr-qa__pending { margin: 10px 0 0 36px; font-size: 13px; color: var(--mr-outline); font-style: italic; }
.mr-qa__empty { margin: 0 0 24px; color: var(--mr-ink-muted); }

.mr-qa__form {
	padding: 20px;
	background: var(--mr-white);
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-lg);
	max-width: 720px;
}
.mr-qa__form-title { margin: 0 0 14px; font-size: 17px; }
.mr-qa__grid { display: grid; gap: 14px; }
@media (min-width: 640px) { .mr-qa__grid { grid-template-columns: 1fr 1fr; } }
.mr-qa__row { margin: 0 0 14px; display: flex; flex-direction: column; gap: 6px; }
.mr-qa__grid .mr-qa__row { margin: 0; }
.mr-qa__row label { font-size: 13px; font-weight: 600; }
.mr-qa__row input, .mr-qa__row textarea {
	padding: 11px 13px; border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-md); font-size: 15px; width: 100%;
}
.mr-qa__hint { font-size: 12px; color: var(--mr-ink-muted); }
.mr-hp-field { position: absolute; left: -9999px; }

/* ==========================================================================
   Često se kupuje zajedno
   ========================================================================== */

.mr-fbt__card {
	display: grid; gap: 18px;
	padding: 20px;
	background: var(--mr-white);
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-lg);
}
.mr-fbt__head { display: grid; gap: 4px; }
.mr-fbt__title { margin: 0; font-size: 24px; font-weight: 700; letter-spacing: -0.015em; }
.mr-fbt__lead { margin: 0; font-size: 14px; color: var(--mr-ink-muted); }

.mr-fbt__body { display: grid; gap: 18px; }
@media (min-width: 900px) {
	.mr-fbt__body { grid-template-columns: minmax(0,1fr) minmax(220px,260px); gap: 24px; align-items: stretch; }
}

/*
 * Kartice pune širinu bez obzira na to koliko ih je: dva artikla daju dvije
 * šire kolone, četiri daju četiri uže. Ranije su bile fiksnih 150 px u redu
 * širine 900, pa je uz dva artikla stajala prazna polovina reda. Broj kolona
 * stiže iz PHP-a kao `--2`, `--3` ili `--4`, jer `auto-fit` uz `minmax(0,1fr)`
 * ne može izračunati koliko ih stane.
 */
.mr-fbt__items {
	display: grid; column-gap: 30px; row-gap: 16px;
	margin: 0; padding: 0; list-style: none;
}
.mr-fbt__items--2 { grid-template-columns: repeat(2, minmax(0,1fr)); }
.mr-fbt__items--3 { grid-template-columns: repeat(3, minmax(0,1fr)); }
.mr-fbt__items--4 { grid-template-columns: repeat(4, minmax(0,1fr)); }
/* Pet kolona: glavni artikal i četiri ručno izabrana (MOTORREMONT_FBT_MANUAL_MAX). */
.mr-fbt__items--5 { grid-template-columns: repeat(5, minmax(0,1fr)); column-gap: 26px; }
.mr-fbt__items--5 .mr-fbt__item + .mr-fbt__item::before { left: -19px; }
/* Do 1199 px lijeva strana kartice je preuska za pet kolona od po 90 px. */
@media (min-width: 900px) and (max-width: 1199px) {
	.mr-fbt__items--5 { grid-template-columns: repeat(3, minmax(0,1fr)); }
	.mr-fbt__items--5 .mr-fbt__item:nth-child(3n+1)::before { content: none; }
}

.mr-fbt__item {
	position: relative; min-width: 0;
	display: grid; gap: 6px; align-content: start;
}
/* Plus stoji u razmaku između kartica, u visini slike. */
.mr-fbt__item + .mr-fbt__item::before {
	content: "+"; position: absolute; left: -21px; top: 46px;
	font-size: 20px; font-weight: 700; line-height: 1; color: var(--mr-outline);
}
/* Bijela podloga kao na karticama proizvoda: snimci dobavljača su bijeli, pa
   na sivoj podlozi svaki izgleda kao zalijepljen pravougaonik. */
.mr-fbt__thumb {
	display: flex; align-items: center; justify-content: center;
	height: 112px; padding: 8px;
	background: var(--mr-white); border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-md); overflow: hidden;
}
.mr-fbt__thumb img { max-width: 100%; max-height: 100%; width: auto; height: auto; object-fit: contain; }
/* Dva reda su rezervisana i kad naziv stane u jedan, da cijene i kvadratići
   stoje u istoj liniji na svim karticama u redu. */
.mr-fbt__name {
	font-size: 13px; font-weight: 600; line-height: 1.35; color: var(--mr-ink);
	display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
	min-height: 2.7em;
}
.mr-fbt__name:hover { color: var(--mr-primary); }
.mr-fbt__price { font-size: 14px; font-weight: 700; color: var(--mr-accent); }
.mr-fbt__badge {
	position: absolute; top: 6px; left: 6px;
	padding: 3px 8px; background: var(--mr-primary); color: #fff;
	border-radius: var(--mr-r-pill); font-size: 10px; font-weight: 700; text-transform: uppercase;
}
.mr-fbt__pick {
	display: flex; align-items: center; gap: 8px;
	font-size: 13px; font-weight: 600; color: var(--mr-ink); cursor: pointer;
}
.mr-fbt__pick input {
	flex: 0 0 auto; width: 17px; height: 17px;
	accent-color: var(--mr-primary); cursor: pointer;
}
.mr-fbt__single {
	justify-self: start;
	font-size: 12px; font-weight: 600; color: var(--mr-ink-muted);
	line-height: 1.3; border-bottom: 1px dashed currentColor;
}
.mr-fbt__single:hover { color: var(--mr-primary); }
.mr-fbt__single.loading { opacity: 0.6; }
.mr-fbt__single.added { color: var(--mr-accent); }
.mr-fbt__item .added_to_cart { display: none; }
.mr-fbt__note { font-size: 12px; color: var(--mr-ink-muted); }

/* Odznačen prijedlog ostaje čitljiv, ali se vidi da nije u zbiru. */
.mr-fbt__item--off .mr-fbt__thumb,
.mr-fbt__item--off .mr-fbt__name,
.mr-fbt__item--off .mr-fbt__price { opacity: 0.45; }

.mr-fbt__summary {
	display: flex; flex-direction: column; justify-content: center; gap: 2px;
	padding: 18px; background: var(--mr-muted-bg); border-radius: var(--mr-r-md);
	text-align: center;
}
.mr-fbt__total-label { margin: 0; font-size: 13px; color: var(--mr-ink-muted); }
.mr-fbt__total { margin: 0 0 12px; font-size: 26px; font-weight: 800; color: var(--mr-accent); }
.mr-fbt__submit { width: 100%; }
.mr-fbt__submit[disabled] { opacity: 0.5; cursor: not-allowed; }

/* Tablet: tri i četiri kartice idu u dva reda, pa plus nestaje na prelomu. */
@media (max-width: 899px) {
	.mr-fbt__items--3,
	.mr-fbt__items--4,
	.mr-fbt__items--5 { grid-template-columns: repeat(2, minmax(0,1fr)); }
	.mr-fbt__items--3 .mr-fbt__item:nth-child(2n+1)::before,
	.mr-fbt__items--4 .mr-fbt__item:nth-child(2n+1)::before,
	.mr-fbt__items--5 .mr-fbt__item:nth-child(2n+1)::before { content: none; }
}

/*
 * Telefon: kartice se okreću u spisak sa slikom lijevo. Klijent gleda sajt na
 * telefonu, a četiri uspravne kartice tamo pojedu cijeli ekran.
 */
@media (max-width: 560px) {
	.mr-fbt__card { padding: 16px; }
	.mr-fbt__items { grid-template-columns: 1fr; row-gap: 14px; }
	/* Slika je izvađena iz toka, pa naziv, cijena i kvadratić stoje u istoj
	   koloni desno od nje. Sa običnim prelomom cijena bi pala ispod slike. */
	.mr-fbt__item {
		display: block; position: relative;
		min-height: 88px; padding-left: 100px; padding-bottom: 14px;
		border-bottom: 1px solid var(--mr-border);
	}
	.mr-fbt__item:last-child { padding-bottom: 0; border-bottom: 0; }
	/* Mora ponoviti isti oblik selektora, inače pravilo sa plusom ostaje jače. */
	.mr-fbt__item + .mr-fbt__item::before { content: none; }
	.mr-fbt__thumb { position: absolute; left: 0; top: 0; width: 88px; height: 88px; }
	.mr-fbt__name { -webkit-line-clamp: 3; min-height: 0; margin-bottom: 4px; }
	.mr-fbt__price { display: block; margin-bottom: 6px; }
	.mr-fbt__pick { margin-bottom: 4px; }
	.mr-fbt__single,
	.mr-fbt__note { display: inline-block; }
	.mr-fbt__summary { padding: 16px; }
}

/* ==========================================================================
   Pametne oznake
   ========================================================================== */

.mr-product-card__badges { display: flex; flex-direction: row; align-items: flex-start; gap: 5px; }
.mr-badge--saving { background: var(--mr-accent); color: #fff; }
.mr-badge--best   { background: #f59e0b; color: #3d2a00; }
.mr-badge--stock  { background: #fff4e5; color: #8a4b00; border: 1px solid #f0c48a; }
.mr-badge--new    { background: var(--mr-primary); color: #fff; }

/* Oznaka baterijske platforme, odmah do logotipa brenda. Crtana u temi da
   ostane oštra i bez pozadine na svakoj veličini kartice. */
.mr-platform-link { display: inline-flex; text-decoration: none; flex: 0 0 auto; }
.mr-platform {
	display: inline-flex;
	align-items: stretch;
	font-family: var(--mr-font-heading, inherit);
	font-weight: 800;
	font-size: 10px;
	line-height: 1;
	letter-spacing: 0.02em;
	white-space: nowrap;
}
.mr-platform__name,
.mr-platform__volt { display: inline-flex; align-items: center; padding: 3px 4px; }

.mr-platform--fuse .mr-platform__name { color: var(--mr-ink); padding-right: 2px; }
.mr-platform--fuse .mr-platform__volt { color: #f07f26; padding-left: 0; }

.mr-platform--ixes .mr-platform__volt {
	color: var(--mr-ink);
	border: 1.5px solid var(--mr-ink);
	border-right: 0;
}
.mr-platform--ixes .mr-platform__name {
	color: #fff;
	background: var(--mr-ink);
	border: 1.5px solid var(--mr-ink);
}
.mr-platform--ixes { flex-direction: row-reverse; }

/* Makitine platforme (XGT 40V, LXT 18V, CXT 12V, G 18V). FUSE i IXES imaju
   znak crtan po logotipu serije; za Makitu takav znak ne postoji, pa oznaka
   ostaje suzdržana: naziv u tinti, napon u okviru. Ne izmišlja se tuđa
   grafika, a oznaka i dalje izgleda namjerno. */
.mr-platform--xgt .mr-platform__name,
.mr-platform--lxt .mr-platform__name,
.mr-platform--cxt .mr-platform__name,
.mr-platform--makita-g .mr-platform__name {
	color: var(--mr-ink);
	padding-right: 3px;
}
.mr-platform--xgt .mr-platform__volt,
.mr-platform--lxt .mr-platform__volt,
.mr-platform--cxt .mr-platform__volt,
.mr-platform--makita-g .mr-platform__volt {
	color: var(--mr-ink);
	border: 1.5px solid currentColor;
	border-radius: 3px;
	padding: 2px 4px;
}

.mr-platform--slika { padding: 0; }
/* WooCommerce svojim `li.product a img { width:100% }` razvuče svaku sliku
   unutar kartice, pa oznaka platforme mora nadjačati tu specifičnost. */
.mr-platform__logo,
.mr-product-card .mr-platform__logo,
.woocommerce ul.products li.product a .mr-platform__logo {
	display: block;
	width: auto;
	height: 26px;
	max-width: 96px;
	/* WooCommerce svakoj slici u kartici daje `margin: 0 0 1em`, što je ovdje
	   14 piksela praznog prostora ispod znaka i diže ga iznad ugla. */
	margin: 0;
	object-fit: contain;
	/* Providna podloga se stapa sa bijelim snimkom; tanki bijeli obrub drži
	   znak čitljivim i na rijetkim tamnim fotografijama. */
	filter: drop-shadow(0 0 2px rgba(255, 255, 255, 0.95));
}

/* Donji desni ugao fotografije. Tamo je najviše praznog bijelog prostora, a
   srce je gore desno i akcijska oznaka gore lijevo. */
.mr-product-card__media-wrap .mr-platform-link {
	position: absolute;
	right: 10px;
	bottom: 10px;
	z-index: 3;
	/* Bez ovoga anchor nosi visinu linijskog okvira i kutija naraste na 40
	   piksela, pa znak vizuelno odskoči od donjeg ugla. */
	display: block;
	line-height: 0;
	transition: opacity 0.15s ease;
}

/* Na hover izlazi „Brzi pregled" po sredini dna, pa se oznaka povuče da se
   ta dva ne preklapaju na užim karticama. Na dodiru hovera nema i ostaje. */
.mr-product-card:hover .mr-product-card__media-wrap .mr-platform-link {
	opacity: 0;
	pointer-events: none;
}

/* `inline-flex` se poravnava po osnovnoj liniji, pa ispod znaka ostaje prazan
   prostor visine donjeg produžetka slova i znak se digne iznad ugla. Blok
   flex nema tu liniju. Zamjenski crtani znak prati istu veličinu. */
.mr-product-card__media-wrap .mr-platform {
	display: flex;
	font-size: 14px;
}

.mr-platform-link:hover .mr-platform { opacity: 0.75; }

/* TOP nosi artikal koji je vlasnik označio i kao preporučen i kao
   najprodavaniji. Jedna oznaka umjesto dvije, i jača od obje. */
.mr-badge--top {
	background: var(--mr-accent);
	color: #fff;
	letter-spacing: 0.08em;
}

/* Preporuka je stav prodavnice, ne činjenica o prodaji — zato tiša od žute
   „Najprodavanije". Ista svijetloplava kojom filteri označavaju odabrano. */
.mr-badge--recommended {
	background: var(--mr-primary-pale);
	color: var(--mr-primary);
	border: 1px solid var(--mr-primary);
}

@container (max-width: 220px) {
	.mr-product-card .mr-platform__logo,
	.woocommerce ul.products li.product a .mr-platform__logo {
		height: 20px;
		max-width: 74px;
	}
	.mr-product-card__media-wrap .mr-platform-link {
		right: 6px;
		bottom: 6px;
	}
	/* Varijable idu na __body, ne na .mr-product-card: kartica je sama kontejner
	   pa je vlastiti @container upit nikad ne pogađa. */
	.mr-product-card__body {
		--mr-card-identity-h: 34px;
		--mr-card-brand-logo-h: 18px;
		--mr-card-brand-tall-h: 32px;
	}
	.mr-product-card__identity {
		gap: 4px;
		margin-bottom: 5px;
	}
	.mr-product-card__identity .mr-product-card__brand {
		flex: 0 0 clamp(54px, 34cqi, 64px);
		width: clamp(54px, 34cqi, 64px);
		padding: 3px;
	}
	.mr-product-card__identity .mr-product-card__brand-logo {
		width: 100%;
	}
	.mr-product-card__identity .mr-brand-identity--brand-scheppach .mr-product-card__brand-logo {
		width: auto;
	}
	.mr-product-card__identity .mr-product-card__signals {
		flex: 1 1 auto;
		max-width: none;
	}
	.mr-product-card .mr-badge[data-short] .mr-badge__full {
		position: absolute;
		width: 1px;
		height: 1px;
		padding: 0;
		margin: -1px;
		overflow: hidden;
		clip: rect(0, 0, 0, 0);
		white-space: nowrap;
		border: 0;
	}
	.mr-product-card .mr-badge[data-short] .mr-badge__compact {
		display: inline;
	}
	/* „Preporučeno” mora ostati čitava riječ. Smanjena slova i normalan zapis
	   zauzimaju manje prostora od velikih verzala, bez zamjene kraćom oznakom. */
	.mr-product-card .mr-badge[data-short].mr-badge--recommended .mr-badge__full {
		position: static;
		width: auto;
		height: auto;
		padding: 0;
		margin: 0;
		overflow: visible;
		clip: auto;
		white-space: nowrap;
	}
	.mr-product-card .mr-badge[data-short].mr-badge--recommended .mr-badge__compact {
		display: none;
	}
	.mr-product-card__signals .mr-badge--recommended {
		flex: 0 0 auto;
		max-width: none;
		padding: 3px 5px;
		font-size: 10px;
		letter-spacing: 0;
		text-transform: none;
		text-overflow: clip;
	}
	.mr-product-card__badges {
		top: 8px;
		left: 8px;
		max-width: calc(100% - 60px);
	}
	.mr-product-card__badges .mr-badge {
		padding: 3px 6px;
	}
	.mr-product-card__trust {
		align-items: flex-start;
		flex-direction: column;
		justify-content: flex-start;
		gap: 5px;
	}
	.mr-product-warranty {
		padding: 3px 6px;
		/* Garancija je stvarna obaveza prodavnice i razlog da se kupi ovdje.
		   Ne smije biti najsitniji tekst na kartici. */
		font-size: 11px;
	}
}

@media (hover: none), (max-width: 767px) {
	@container (max-width: 220px) {
		.mr-product-card .mr-quickview-btn {
			top: 56px;
			right: 6px;
		}
		.mr-product-card > .mr-wishlist-btn {
			top: 6px;
			right: 6px;
		}
	}
}

.mr-single-product__highlights {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
	margin-bottom: 10px;
}

/* ==========================================================================
   Dorada: ritam razmaka, sjene, tipografija
   ========================================================================== */

/* Jedinstven sistem sjena umjesto nasumičnih vrijednosti. */
.mr-product-card,
.mr-quickview,
.mr-fbt__card,
.mr-qa__item,
.mr-qa__form,
.mr-compare__scroll {
	box-shadow: 0 1px 2px rgba(16, 24, 40, 0.04), 0 4px 14px rgba(16, 24, 40, 0.05);
}
.mr-product-card { transition: box-shadow 0.22s ease, transform 0.22s ease; }
.mr-product-card:hover {
	box-shadow: 0 2px 6px rgba(16, 24, 40, 0.06), 0 12px 28px rgba(16, 24, 40, 0.10);
	transform: translateY(-2px);
}

/* Naslovi sekcija: usklađena skala i mirniji razmak ispod. */
.mr-section__title { letter-spacing: -0.015em; }
.mr-section__subtitle { max-width: 62ch; }

/* Cijene: tabularni brojevi da se kolone poravnaju. */
.mr-product-card__price,
.mr-compare__row:first-child td,
.mr-fbt__total,
.woocommerce-Price-amount {
	font-variant-numeric: tabular-nums;
}

@media (prefers-reduced-motion: reduce) {
	.mr-product-card { transition: none; }
	.mr-product-card:hover { transform: none; }
}

/* Dugi SEO tekst kategorije, ispod mreže proizvoda */
.mr-shop__seo {
	margin: 48px 0 8px;
	padding: 28px 30px;
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-lg);
	background: var(--mr-white);
}
.mr-shop__seo-title {
	margin: 0 0 16px;
	font-family: var(--mr-font-heading);
	font-size: 22px;
	line-height: 1.25;
	color: var(--mr-primary);
}
.mr-shop__seo-body {
	max-width: 78ch;
	font-size: 15.5px;
	line-height: 1.72;
	color: var(--mr-ink-muted);
}
.mr-shop__seo-body > *:first-child { margin-top: 0; }
.mr-shop__seo-body > *:last-child { margin-bottom: 0; }
.mr-shop__seo-body p { margin: 0 0 15px; }
.mr-shop__seo-body h3 {
	margin: 26px 0 10px;
	font-family: var(--mr-font-heading);
	font-size: 17px;
	line-height: 1.3;
	color: var(--mr-ink);
}
.mr-shop__seo-body ul,
.mr-shop__seo-body ol { margin: 0 0 15px; padding-left: 22px; }
.mr-shop__seo-body li { margin: 0 0 7px; }
.mr-shop__seo-body strong { color: var(--mr-ink); }
.mr-shop__seo-body a { color: var(--mr-primary-light); }

@media (max-width: 767px) {
	.mr-shop__seo { margin-top: 36px; padding: 22px 18px; }
	.mr-shop__seo-title { font-size: 19px; }
	.mr-shop__seo-body { font-size: 15px; line-height: 1.68; }
}


/* Bodovi: stanje i trosenje. Stoji uz zbir u korpi i na kontrolnoj tabli
   naloga, tamo gdje kupac vec gleda iznos. */
.mr-bodovi {
	padding: 14px 16px;
	margin: 0 0 16px;
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-md);
	background: var(--mr-primary-pale);
}
.mr-bodovi__title { margin: 0 0 6px; font-size: 15px; font-weight: 700; }
.mr-bodovi__balance { margin: 0 0 10px; font-size: 14px; }
.mr-bodovi__active { margin: 0 0 10px; font-size: 14px; font-weight: 600; }
.mr-bodovi__form { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.mr-bodovi__form label { flex: 1 1 100%; font-size: 13px; font-weight: 600; }
.mr-bodovi__form input[type="number"] {
	width: 110px;
	height: 38px;
	padding: 0 10px;
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-sm);
	background: #fff;
}
.mr-bodovi__hint { flex: 1 1 100%; font-size: 12px; color: var(--mr-ink-muted); }
.mr-bodovi--account { background: #fff; }


/* Kockice sa slikama u brzom pregledu */
/* Traka kockica ne smije rastezati blok slike: `width` je vezan za roditelja,
   a `flex: 0 0 auto` je drži na svojoj visini. Bez ovoga je na telefonu blok
   bio širi od ekrana. */
.mr-quickview__thumbs {
	display: flex;
	flex: 0 0 auto;
	gap: 8px;
	width: 100%;
	max-width: 100%;
	overflow-x: auto;
	overscroll-behavior-x: contain;
	scrollbar-width: thin;
	padding-bottom: 4px;
}
.mr-quickview__thumb {
	flex: 0 0 auto;
	width: 56px;
	height: 56px;
	padding: 2px;
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-sm);
	background: #fff;
	cursor: pointer;
}
.mr-quickview__thumb img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	display: block;
}
.mr-quickview__thumb.is-active { border-color: var(--mr-primary); box-shadow: 0 0 0 2px var(--mr-primary-pale); }
.mr-quickview__thumb:focus-visible { outline: 2px solid var(--mr-primary); outline-offset: 2px; }

/* Pretraga na landing stranicama (akcije, preporuceni, novi proizvodi) */
.mr-landing-search {
	position: relative;
	display: flex;
	align-items: center;
	flex: 1 1 220px;
	max-width: 320px;
}
.mr-landing-search input[type="search"] {
	width: 100%;
	height: 40px;
	padding: 0 40px 0 12px;
	border: 1px solid var(--mr-border);
	border-radius: var(--mr-r-sm);
	background: #fff;
	font-size: 14px;
	color: var(--mr-ink);
}
.mr-landing-search input[type="search"]:focus {
	outline: none;
	border-color: var(--mr-primary);
	box-shadow: 0 0 0 3px var(--mr-primary-pale);
}
.mr-landing-search__btn {
	position: absolute;
	right: 0;
	width: 40px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: none;
	border: none;
	color: var(--mr-ink-muted);
	cursor: pointer;
}
.mr-landing-search__btn:hover { color: var(--mr-primary); }

/* Prijedlozi unutar ponude. Polje je usko, a red rezultata nosi sliku, naziv,
   oznaku i cijenu, pa se lista širi preko njega. Sidro je desna ivica polja:
   lijevo ima mjesta, a desno stoji „Poredaj:" i ivica kontejnera. */
.mr-landing-search.is-live-search-open { z-index: 75; }
.mr-landing-search .mr-live-search--scoped {
	left: auto;
	right: 0;
	width: min(460px, calc(100vw - 32px));
}

@media (max-width: 640px) {
	.mr-landing-search { max-width: none; flex-basis: 100%; }
	.mr-landing-search .mr-live-search--scoped { left: 0; right: 0; width: auto; }
}


/* Strelice za promjenu slike u brzom pregledu. Stoje preko glavne slike, uz
   ivice, i ne pomjeraju raspored. */
.mr-quickview__main { position: relative; }
.mr-quickview__nav {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	padding: 0;
	border: 1px solid var(--mr-border);
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.94);
	color: var(--mr-ink);
	cursor: pointer;
	box-shadow: 0 4px 14px rgba(13, 31, 69, 0.14);
}
.mr-quickview__nav:hover { background: #fff; color: var(--mr-primary); }
.mr-quickview__nav:focus-visible { outline: 2px solid var(--mr-primary); outline-offset: 2px; }
.mr-quickview__nav--prev { left: 0; }
.mr-quickview__nav--next { right: 0; }

@media (max-width: 719px) {
	.mr-quickview__nav { width: 32px; height: 32px; }
}

/* Poklon ostaje vidljiv u donjem lijevom uglu fotografije. Kad ih je više,
   krug nosi broj, da kupac zna prije klika da ih je više od jednog. */
.mr-gift-button { position: absolute; left: 6px; bottom: 6px; z-index: 5; display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border: 1px solid var(--mr-accent); border-radius: 50%; background: #fff; color: var(--mr-accent); text-decoration: none; }
.mr-gift-button svg { flex: 0 0 auto; }
.mr-gift-button__label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.mr-gift-button__count { position: absolute; top: -5px; right: -5px; box-sizing: border-box; min-width: 19px; height: 19px; padding: 0 5px; border-radius: 10px; background: var(--mr-accent); color: #fff; font-size: 11px; font-weight: 700; line-height: 19px; text-align: center; }
.mr-gift-button:hover { background: #fff0f2; color: var(--mr-accent); }
.mr-gift-button:focus-visible { outline: 3px solid var(--mr-accent); outline-offset: 2px; }
.mr-gift-eyebrow, .mr-gift-quantity { color: var(--mr-accent); font-weight: 600; }
@media (hover: hover) and (min-width: 768px) {
	.mr-product-card__media-wrap:has(.mr-gift-button) .mr-quickview-btn { bottom: 58px; }
}

/*
 * Spisak poklona na artiklu, u brzom pregledu i u poređenju. Stoji iznad
 * dugmeta za korpu, pa je red nizak: sličica 40 px, naziv i vrijednost. Na
 * telefonu naziv staje u jedan red, jer tri poklona u dva reda teksta guraju
 * dugme za korpu ispod prvog ekrana; cijeli naziv je u prozoru na klik.
 */
.mr-gifts { margin: 0 0 18px; padding: 10px 12px 8px; border: 1px solid var(--mr-accent); border-radius: var(--mr-r-md, 8px); background: #fff; }
.mr-gifts__title { display: flex; align-items: center; gap: 8px; margin: 0 0 6px; color: var(--mr-accent); font-size: 14px; font-weight: 700; line-height: 1.3; }
.mr-gifts__title svg { width: 20px; height: 20px; flex: 0 0 auto; }
.mr-gifts__list { display: grid; gap: 2px; margin: 0; padding: 0; list-style: none; }
.mr-gifts__list li { margin: 0; }
.mr-gifts__item { display: grid; grid-template-columns: 40px minmax(0, 1fr); align-items: center; gap: 10px; min-height: 44px; margin: 0 -6px; padding: 2px 6px; border-radius: 6px; color: var(--mr-ink); text-decoration: none; }
.mr-gifts__item:hover { background: #fff0f2; color: var(--mr-ink); }
.mr-gifts__item:focus-visible { outline: 3px solid var(--mr-accent); outline-offset: -1px; }
.mr-gifts__thumb { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; overflow: hidden; border: 1px solid var(--mr-border); border-radius: 6px; background: #fff; }
.mr-gifts__thumb img { display: block; width: 100%; height: 100%; object-fit: contain; }
.mr-gifts__text { display: grid; min-width: 0; }
.mr-gifts__name { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-size: 14px; font-weight: 600; line-height: 1.3; }
.mr-gifts__value { color: var(--mr-ink-muted); font-size: 12px; font-weight: 500; line-height: 1.35; }
.mr-gifts__value .amount { color: inherit; font-weight: 600; }
.mr-gifts__value--out { color: var(--mr-accent); }
@media (max-width: 560px) {
	.mr-gifts__name { display: block; -webkit-line-clamp: unset; white-space: nowrap; text-overflow: ellipsis; }
}

/* Više poklona u prozoru: spisak preko obje kolone brzog pregleda. */
.mr-quickview__content > .mr-gift-view { grid-column: 1 / -1; }
.mr-gift-view { padding: 22px 24px 26px; min-width: 0; }
.mr-gift-view > .mr-gift-eyebrow { margin: 0; padding-right: 48px; font-size: 13px; }
.mr-gift-view__title { margin: 2px 48px 6px 0; font-size: 22px; line-height: 1.25; }
.mr-gift-view__lead { margin: 0 0 16px; color: var(--mr-ink-muted); font-size: 14px; line-height: 1.45; }
.mr-gift-view__list { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; }
.mr-gift-view__item { display: grid; grid-template-columns: 104px minmax(0, 1fr); align-items: start; gap: 14px; margin: 0; padding: 12px; border: 1px solid var(--mr-border); border-radius: var(--mr-r-md, 8px); }
.mr-gift-view__media { display: flex; align-items: center; justify-content: center; width: 104px; height: 104px; background: #fff; }
.mr-gift-view__media img { max-width: 100%; max-height: 100%; width: auto; height: auto; object-fit: contain; }
.mr-gift-view__body { min-width: 0; }
.mr-gift-view__name { margin: 0 0 4px; font-size: 15px; font-weight: 700; line-height: 1.3; }
.mr-gift-view__price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 10px; margin: 0 0 6px; }
.mr-gift-view__price strong { color: var(--mr-accent); font-size: 18px; }
.mr-gift-view__price .mr-gifts__value { font-size: 13px; }
.mr-gift-view__excerpt { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; margin: 0 0 6px; color: var(--mr-ink-muted); font-size: 13px; line-height: 1.45; }
.mr-gift-view__details { display: inline-block; font-size: 14px; font-weight: 600; }
@media (min-width: 720px) {
	.mr-gift-view__list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 719px) {
	.mr-gift-view { padding: 0 16px 22px; }
	/* Dugme za zatvaranje na telefonu je traka uz desni rub, visoka 44 px. */
	.mr-gift-view > .mr-gift-eyebrow { display: flex; align-items: center; min-height: 64px; padding-right: 120px; }
	.mr-gift-view__title { margin-right: 0; font-size: 19px; }
	.mr-gift-view__item { grid-template-columns: 72px minmax(0, 1fr); gap: 12px; padding: 10px; }
	.mr-gift-view__media { width: 72px; height: 72px; }
	.mr-gift-view__excerpt { -webkit-line-clamp: 2; }
}

.mr-product-card .mr-platform--zen .mr-platform__logo { height: 36px; max-width: 106px; }
@container (max-width: 220px) {
	.mr-product-card .mr-platform--zen .mr-platform__logo { height: 30px; max-width: 82px; }
}

/* -------------------------------------------------------------------------
 * Krugovi za izbor boje (Caneras Model X, zahtjev klijenta 4. 9. 2026)
 * ---------------------------------------------------------------------- */
.mr-swatches { margin: 16px 0; scroll-margin-top: 140px; }
.mr-swatches__label { display: block; font-family: var(--mr-font-heading); font-weight: 800; font-size: 18px; color: var(--mr-primary); }
.mr-swatches__help { margin: 4px 0 12px; font-size: 13px; line-height: 1.5; color: var(--mr-ink-muted); }
.mr-swatches__chosen { display: block; margin-top: 8px; min-height: 20px; font-size: 13px; color: var(--mr-ink-muted); }
.mr-swatches__list { display: flex; flex-wrap: wrap; gap: 8px; }
.mr-swatch { display: flex; flex: 1 1 88px; max-width: 160px; min-width: 0; min-height: 88px; align-items: center; justify-content: center; flex-direction: column; gap: 4px; padding: 8px 6px; border: 2px solid var(--mr-border); border-radius: var(--mr-r-sm); background: var(--mr-white); color: var(--mr-ink); cursor: pointer; }
.mr-swatch__chip { width: 24px; height: 24px; border: 1px solid var(--mr-outline); border-radius: 50%; background: var(--mr-swatch-color); }
.mr-swatch__name { font-size: 14px; font-weight: 700; line-height: 1.2; overflow-wrap: anywhere; }
.mr-swatch__stock { font-size: 11px; line-height: 1.3; color: var(--mr-success); }
.mr-swatch:hover:not(:disabled), .mr-swatch.is-active { border-color: var(--mr-primary); background: var(--mr-bg); }
.mr-swatch.is-active .mr-swatch__name { text-decoration: underline; text-underline-offset: 3px; }
.mr-swatch:focus-visible { outline: 2px solid var(--mr-primary); outline-offset: 2px; }
.mr-swatch:disabled { cursor: not-allowed; background: var(--mr-muted-bg); border-style: dashed; }
.mr-swatch:disabled .mr-swatch__chip { opacity: .45; }
.mr-swatch:disabled .mr-swatch__stock { color: var(--mr-accent); }
/* Izbor je preseljen u krugove; lista ostaje radi WooCommerce logike. */
.mr-variation-row--hidden { display: none; }

/* Stranica proizvođača: logo JE naslov, pa ime ne stoji dvaput. */
.mr-shop__title--logo {
	display: block;
	line-height: 0;
}
.mr-shop__title--logo img {
	display: block;
	width: auto;
	max-width: 220px;
	max-height: 64px;
	object-fit: contain;
}

/* Iz filtriranog spiska na stranicu proizvođača. */
.mr-shop__brand-page {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	margin-left: 4px;
	color: var(--mr-primary);
	font-size: 13px;
	font-weight: 700;
	text-decoration: underline;
	text-underline-offset: 3px;
}
.mr-shop__brand-page:hover { color: var(--mr-primary-light); }

/* Akcijski popust u zbiru korpe: iznos ustede mora da se vidi, jer se popust
   primjenjuje snizavanjem cijene artikla, pa kupac inace ne zna sta je dobio. */
.mr-launch-saving th,
.mr-launch-saving td { color: var(--mr-accent); }
.mr-launch-saving td strong { font-size: 16px; white-space: nowrap; }
