/* Popis proizvoda: čipovi (sam čip je u assets/css/cip.css), alati, filteri
   (bočno na desktopu, dijalog na mobitelu) i usporedba linije. */
.cc-cipovi {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	padding: 16px 0;
}

.cc-popis__tijelo {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
}

.cc-popis__upravljanje {
	display: contents;
}

.cc-popis__alati {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0 8px;
}

/* Bez čipova alati stoje odmah ispod naslova; na brendu ispod "Svi
   proizvodi", koji ima vlastiti razmak. */
.cc-popis__tijelo:first-child .cc-popis__alati {
	padding-top: 16px;
}

.cc-pojam__svi + .cc-popis .cc-popis__alati {
	padding-top: 0;
}

/* Dvije klase: .cc-gumb iz teme (48 px, 22 px uvlake, 16 px)
   učitava se poslije. */
.cc-popis .cc-popis__filteri-gumb {
	min-height: 44px;
	padding: 0 14px;
	font-size: 15px;
}

.cc-znacka {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 20px;
	height: 20px;
	padding: 0 6px;
	border-radius: 10px;
	background: var(--wp--preset--color--crvena);
	color: var(--wp--preset--color--bijela);
	font-size: 12px;
}

.cc-znacka[hidden] {
	display: none;
}

.cc-popis__broj {
	order: 3;
	flex-basis: 100%;
	margin: 14px 0 0;
	padding: 12px 0 4px;
	border-top: 1px solid var(--wp--preset--color--linija);
	color: var(--wp--preset--color--tekst-2);
	font-size: 13px;
}

/* Pretraga i brend: broj je u naslovu, pa na mobitelu nema crte
   ni retka s brojem (čitač ga i dalje čuje). */
@media (max-width: 959px) {

	.cc-popis--pretraga .cc-popis__broj,
	.cc-popis--brend .cc-popis__broj {
		position: absolute;
		width: 1px;
		height: 1px;
		margin: 0;
		padding: 0;
		overflow: hidden;
		border: 0;
		clip-path: inset(50%);
	}

	.cc-popis--pretraga .cc-popis__alati,
	.cc-popis--brend .cc-popis__alati {
		padding-bottom: 4px;
	}

	.cc-popis--pretraga .cc-cipovi {
		padding: 20px 0 8px;
	}

	.cc-popis--pretraga .cc-linija-kartica + .cc-popis__tijelo .cc-popis__alati {
		padding-top: 20px;
	}
}

.cc-popis__poredaj {
	display: flex;
	flex-grow: 1;
	align-items: center;
	gap: 8px;
	font-size: 14px;
}

.cc-popis__poredaj span {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip-path: inset(50%);
}

.cc-popis__poredaj select {
	flex-grow: 1;
	height: 44px;
	padding: 0 10px;
	border: 1px solid var(--wp--preset--color--rub);
	border-radius: 4px;
	background: var(--wp--preset--color--bijela);
	color: inherit;
	font: inherit;
}

.cc-popis .cc-mreza {
	padding-top: 8px;
}

.cc-popis__vise {
	display: flex;
	justify-content: center;
	padding: 28px 0 8px;
}

.cc-popis__vise[hidden],
.cc-popis__prazno[hidden] {
	display: none;
}

.cc-popis__vise .cc-gumb {
	width: 100%;
}

.cc-popis__prazno {
	padding: 24px 0;
	color: var(--wp--preset--color--tekst-2);
}

/* Filteri: na mobitelu dijalog preko cijelog zaslona. */
.cc-filteri {
	display: none;
}

.cc-filteri.je-otvoren {
	position: fixed;
	z-index: 100;
	inset: 0;
	display: flex;
	flex-direction: column;
	background: var(--wp--preset--color--bijela);
}

.cc-filteri__vrh {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 8px 8px 8px 16px;
	border-bottom: 1px solid var(--wp--preset--color--linija);
}

.cc-filteri__naslov {
	flex-grow: 1;
	margin: 0;
	font-size: 18px;
	font-stretch: 100%;
	font-weight: 700;
	line-height: 1.3;
}

.cc-filteri__sadrzaj {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 18px;
	padding: 8px 16px 16px;
	overflow-y: auto;
}

.cc-filteri__dno {
	padding: 12px 16px 16px;
	border-top: 1px solid var(--wp--preset--color--linija);
}

.cc-filteri__dno .cc-gumb {
	width: 100%;
}

.cc-filter {
	min-width: 0;
	margin: 0;
	padding: 0;
	border: 0;
}

.cc-filter[hidden],
.cc-filter label[hidden],
.cc-cipovi .cc-cip[hidden] {
	display: none;
}

.cc-filter legend {
	padding: 8px 0 6px;
	font-weight: 700;
}

.cc-filter__vrijednosti {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.cc-filter--gumbi .cc-filter__vrijednosti,
.cc-filter--boje .cc-filter__vrijednosti {
	flex-direction: row;
	flex-wrap: wrap;
	gap: 8px;
}

.cc-filter__red {
	display: flex;
	align-items: center;
	gap: 10px;
	min-height: 44px;
	cursor: pointer;
}

.cc-filter__red input {
	width: 20px;
	height: 20px;
	margin: 0;
	accent-color: var(--wp--preset--color--tinta);
}

.cc-filter__naziv {
	flex-grow: 1;
}

.cc-filter__broj {
	color: var(--wp--preset--color--tekst-2);
	font-size: 13px;
}

.cc-filter__gumb {
	position: relative;
	display: inline-flex;
	cursor: pointer;
}

.cc-filter__gumb input,
.cc-filter__boja input {
	position: absolute;
	opacity: 0;
	inset: 0;
	width: 100%;
	height: 100%;
	margin: 0;
	cursor: pointer;
}

.cc-filter__gumb span {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	padding: 0 12px;
	border: 1px solid var(--wp--preset--color--rub);
	border-radius: 4px;
	font-size: 14px;
}

.cc-filter__gumb input:checked + span {
	border: 2px solid var(--wp--preset--color--tinta);
	background: var(--wp--preset--color--temelj);
	font-weight: 700;
}

.cc-filter__gumb input:focus-visible + span,
.cc-filter__boja input:focus-visible + .cc-filter__kruzic {
	outline: 2px solid var(--wp--preset--color--tinta);
	outline-offset: 2px;
}

.cc-filter__boja {
	position: relative;
	display: inline-flex;
	padding: 4px;
}

.cc-filter__kruzic {
	display: block;
	width: 36px;
	height: 36px;
	border: 1px solid var(--wp--preset--color--rub);
	border-radius: 50%;
	background: var(--cc-boja);
}

.cc-filter__kruzic.je-bezbojna {
	background: repeating-conic-gradient(#d6d3cd 0% 25%, #fff 0% 50%) 50% / 12px 12px;
}

.cc-filter__boja input:checked + .cc-filter__kruzic {
	box-shadow: 0 0 0 2px var(--wp--preset--color--bijela), 0 0 0 4px var(--wp--preset--color--tinta);
}

@media (min-width: 960px) {

	.cc-popis__tijelo {
		border-top: 1px solid var(--wp--preset--color--linija);
	}

	.cc-popis__tijelo.ima-filtere {
		grid-template-columns: 250px minmax(0, 1fr);
		grid-template-areas:
			"filteri alati"
			"filteri mreza"
			"filteri vise"
			"filteri prazno";
		align-items: start;
		gap: 0 40px;
		padding-top: 8px;
	}

	.ima-filtere .cc-popis__alati {
		grid-area: alati;
	}

	.ima-filtere .cc-filteri {
		grid-area: filteri;
	}

	.ima-filtere .cc-mreza {
		grid-area: mreza;
	}

	.ima-filtere .cc-popis__vise {
		grid-area: vise;
	}

	.ima-filtere .cc-popis__prazno {
		grid-area: prazno;
	}

	.cc-filteri,
	.cc-filteri.je-otvoren {
		position: static;
		z-index: auto;
		display: flex;
		flex-direction: column;
		gap: 14px;
		padding-top: 12px;
		background: none;
	}

	.ima-filtere .cc-mreza {
		padding-top: 0;
	}

	.cc-filteri__vrh {
		padding: 0;
		border: 0;
	}

	.cc-filteri__sadrzaj {
		gap: 14px;
		padding: 0;
		overflow: visible;
	}

	.cc-popis .cc-filteri__zatvori,
	.cc-popis .cc-filteri__dno,
	.cc-popis .cc-popis__filteri-gumb {
		display: none;
	}

	.cc-popis__alati,
	.cc-popis__tijelo:first-child .cc-popis__alati {
		flex-wrap: nowrap;
		justify-content: space-between;
		padding: 16px 0;
	}

	.cc-popis__broj {
		order: 0;
		flex-basis: auto;
		margin: 0;
		padding: 0;
		border: 0;
		font-size: 14px;
	}

	/* Brend: broj stoji uz naslov "Svi proizvodi". */
	.cc-popis--brend .cc-popis__broj {
		position: absolute;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip-path: inset(50%);
	}

	.cc-popis__poredaj {
		flex-grow: 0;
		margin-left: auto;
	}

	.cc-popis__poredaj span {
		position: static;
		width: auto;
		height: auto;
		overflow: visible;
		clip-path: none;
	}

	.cc-popis__vise .cc-gumb {
		width: auto;
	}
}

/* Usporedba proizvoda linije: bez alata, čipovi pa redovi s crtama. */
.cc-popis--usporedba .cc-cipovi {
	padding: 12px 0;
}

.cc-popis--usporedba .cc-popis__tijelo {
	border-top: 1px solid var(--wp--preset--color--linija);
}

.cc-popis--usporedba > .cc-popis__tijelo:first-child {
	margin-top: 12px;
}

.cc-usporedba__redovi {
	display: flex;
	flex-direction: column;
}

.cc-usporedba__glava {
	display: none;
}

.cc-usporedba__red {
	display: grid;
	grid-template-columns: 72px minmax(0, 1fr) 18px;
	gap: 3px 12px;
	padding: 14px 0;
	border-bottom: 1px solid var(--wp--preset--color--linija);
}

.cc-usporedba__red > * {
	grid-column: 2;
}

/* Strelica kao u retku izbornika; na proizvod vodi naziv. */
.cc-usporedba__red::after {
	content: "";
	grid-row: 1 / span 5;
	grid-column: 3;
	align-self: center;
	width: 18px;
	height: 18px;
	background: currentcolor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 6l6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 6l6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat;
}

.cc-usporedba__red[hidden] {
	display: none;
}

.cc-usporedba__celija-proizvod {
	display: contents;
}

.cc-usporedba__proizvod {
	display: contents;
	color: var(--wp--preset--color--tinta);
	font-weight: 700;
	line-height: 1.2;
	text-decoration: none;
}

.cc-usporedba__slika {
	display: flex;
	grid-row: 1 / span 5;
	grid-column: 1;
	align-items: center;
	justify-content: center;
	width: 72px;
	height: 72px;
	overflow: hidden;
	border-radius: 4px;
	background: var(--wp--preset--color--temelj);
}

.cc-usporedba__slika img {
	width: 88%;
	height: 88%;
	object-fit: contain;
	mix-blend-mode: multiply;
}

.cc-usporedba__vrsta {
	grid-row: 1;
	grid-column: 2;
	color: var(--wp--preset--color--tekst-2);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.cc-usporedba__opis,
.cc-usporedba__namjena {
	color: var(--wp--preset--color--tekst-2);
	font-size: 13px;
}

.cc-usporedba__cijena .cc-kartica__cijena {
	display: block;
	font-size: 15px;
}

@media (min-width: 960px) {

	.cc-popis--usporedba .cc-popis__tijelo {
		border-top: 0;
	}

	.cc-usporedba__glava,
	.cc-usporedba__red {
		display: grid;
		grid-template-columns: minmax(0, 2.2fr) minmax(0, 1fr) minmax(0, 1.4fr) minmax(0, 1.6fr) minmax(0, 1fr);
		gap: 16px;
		align-items: center;
	}

	.cc-usporedba__red > * {
		grid-column: auto;
	}

	.cc-usporedba__red::after {
		content: none;
	}

	.cc-usporedba--bez-namjene .cc-usporedba__glava,
	.cc-usporedba--bez-namjene .cc-usporedba__red {
		grid-template-columns: minmax(0, 2.2fr) minmax(0, 1.2fr) minmax(0, 1.6fr) 0 minmax(0, 1fr);
		column-gap: 16px;
	}

	.cc-usporedba--bez-namjene [role="columnheader"]:nth-child(4),
	.cc-usporedba--bez-namjene .cc-usporedba__namjena {
		overflow: hidden;
		visibility: hidden;
	}

	.cc-usporedba__glava {
		padding: 10px 0;
		border-bottom: 2px solid var(--wp--preset--color--tinta);
		color: var(--wp--preset--color--tekst-2);
		font-size: 13px;
		font-weight: 700;
	}


	.cc-usporedba__celija-proizvod {
		display: block;
	}

	.cc-usporedba__proizvod {
		display: flex;
		align-items: center;
		gap: 12px;
		line-height: inherit;
	}

	.cc-usporedba__slika {
		width: 56px;
		height: 56px;
	}

	.cc-usporedba__vrsta {
		grid-row: auto;
		grid-column: auto;
		color: inherit;
		font-size: 15px;
		font-weight: 400;
		letter-spacing: 0;
		text-transform: none;
	}

	.cc-usporedba__opis {
		font-size: 15px;
	}

	.cc-usporedba__cijena {
		text-align: right;
	}

	.cc-usporedba__cijena .cc-dostupnost {
		justify-content: flex-end;
	}
}

/* Pretraga: kartica linije i savjet ispod rezultata. */
.cc-linija-kartica {
	display: flex;
	align-items: center;
	gap: 14px;
	max-width: 640px;
	margin-top: 16px;
	padding: 14px;
	border: 1.5px solid var(--wp--preset--color--tinta);
	border-radius: 4px;
	color: var(--wp--preset--color--tinta);
	text-decoration: none;
}

.cc-linija-kartica__slika {
	display: flex;
	flex-shrink: 0;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 56px;
	overflow: hidden;
	border-radius: 4px;
	background: var(--wp--preset--color--temelj);
}

.cc-linija-kartica__slika img {
	width: 88%;
	height: 88%;
	object-fit: contain;
	mix-blend-mode: multiply;
}

.cc-linija-kartica__tekst {
	display: flex;
	flex-grow: 1;
	flex-direction: column;
	gap: 2px;
	font-size: 13px;
}

.cc-linija-kartica__tekst strong {
	font-size: 17px;
}

.cc-savjet-trgovina {
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin-top: 32px;
	padding: 18px;
	border-radius: 4px;
	background: var(--wp--preset--color--temelj);
}

.cc-savjet-trgovina p {
	margin: 4px 0 0;
	color: var(--wp--preset--color--tekst-2);
	font-size: 14px;
}

@media (min-width: 960px) {

	.cc-linija-kartica__slika {
		width: 72px;
		height: 72px;
	}

	.cc-savjet-trgovina {
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
	}
}

.cc-popis__uvod {
	padding-top: 24px;
}

.cc-popis__uvod p {
	margin: 4px 0 0;
	color: var(--wp--preset--color--tekst-2);
	font-size: 14px;
}

.cc-pretraga-naslov {
	display: flex;
	flex-direction: column;
	gap: 6px;
	padding-top: 16px;
}

.cc-pretraga-naslov p {
	margin: 0;
	color: var(--wp--preset--color--tekst-2);
}

.cc-pretraga-naslov .cc-mala {
	font-size: 13px;
}

.cc-dokumenti--linija {
	padding-top: 28px;
}

.cc-dokumenti--linija h2 {
	font-size: 24px;
}

.cc-dokumenti--linija .cc-dokument {
	min-height: 48px;
	font-size: 14px;
}

.cc-dokumenti--linija .cc-dokument__naziv {
	font-weight: 400;
}

@media (min-width: 960px) {

	.cc-popis__uvod {
		padding-top: 48px;
	}

	.cc-pretraga-naslov {
		padding-top: 32px;
	}

	.cc-dokumenti--linija {
		padding-top: 48px;
	}

	.cc-dokumenti--linija h2 {
		font-size: 28px;
	}

	.cc-dokumenti--linija .cc-dokumenti__popis {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}
