/* ==========================================================================
   Katalog — iskalnik, predlogi, lupa v glavi, seznam artiklov
   --------------------------------------------------------------------------
   Naloži se na vseh straneh EMPOR (lupa je v glavi povsod). Jezik strani:
   tableta za polje in gumb, robovi 4 px, oznake v IBM Plex Mono. Pravila
   s predpono body.ttm-empor — glej spomin empor-css-pasti.
   ========================================================================== */

body.ttm-empor .ttm-isk,
body.ttm-empor .ttm-isk-ploskev,
body.ttm-empor .ttm-kat,
body.ttm-empor .ttm-skup-podkat {
	--kat-mornar: #0F294F;
	--kat-modra: #2461A6;
	--kat-besedilo: #3D5673;
	--kat-oznaka: #5B7A99;
	--kat-crta: #E2E8F0;
	--kat-crta-mocna: #C4D8EC;
	--kat-svetlo: #F4F7FA;
}

/* ---- iskalno polje ---------------------------------------------------------- */

body.ttm-empor .ttm-isk {
	position: relative;
	width: 100%;
	max-width: 640px;
	margin: 0;
}

/* Oznaka je za bralnike zaslona; vidna je ob fokusu polja ni potrebna. */
body.ttm-empor .ttm-isk__oznaka {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
}

body.ttm-empor .ttm-isk__polje {
	display: flex;
	align-items: center;
	gap: 6px;
	height: 52px;
	padding: 0 5px 0 18px;
	border: 1px solid var(--kat-crta-mocna);
	border-radius: 999px;
	background: #fff;
	transition: border-color .2s, box-shadow .2s;
}

body.ttm-empor .ttm-isk__polje:focus-within {
	border-color: var(--kat-modra);
	box-shadow: 0 0 0 3px rgba(36, 97, 166, .14);
}

body.ttm-empor .ttm-isk__lupa {
	flex: none;
	color: var(--kat-oznaka);
}

body.ttm-empor .ttm-isk input[type="search"] {
	flex: 1 1 auto;
	min-width: 0;
	height: 100%;
	margin: 0;
	padding: 0 4px;
	border: 0;
	outline: 0;
	background: transparent;
	font: 500 16px/1.2 "Archivo", system-ui, sans-serif;
	color: var(--kat-mornar);
	-webkit-appearance: none;
	appearance: none;
}

body.ttm-empor .ttm-isk input[type="search"]::placeholder {
	color: #8FA6BF;
	opacity: 1;
}

body.ttm-empor .ttm-isk input[type="search"]::-webkit-search-cancel-button {
	cursor: pointer;
}

body.ttm-empor .ttm-isk button[type="submit"] {
	flex: none;
	height: 42px;
	padding: 0 20px;
	border: 0;
	border-radius: 999px;
	background: var(--kat-modra);
	font: 600 15px/1 "Archivo", system-ui, sans-serif;
	color: #fff;
	cursor: pointer;
	transition: background-color .2s;
}

body.ttm-empor .ttm-isk button[type="submit"]:hover {
	background: var(--kat-mornar);
}

body.ttm-empor .ttm-isk--velik {
	max-width: 720px;
}

body.ttm-empor .ttm-isk--velik .ttm-isk__polje {
	height: 60px;
	padding-left: 22px;
	box-shadow: 0 18px 40px -28px rgba(15, 41, 79, .45);
}

body.ttm-empor .ttm-isk--velik input[type="search"] {
	font-size: 17px;
}

body.ttm-empor .ttm-isk--velik button[type="submit"] {
	height: 50px;
	padding: 0 26px;
}

/* ---- predlogi med tipkanjem --------------------------------------------------- */

body.ttm-empor .ttm-isk-predlogi {
	position: absolute;
	z-index: 95;
	top: calc(100% + 8px);
	left: 0;
	right: 0;
	max-height: min(70vh, 560px);
	overflow-y: auto;
	margin: 0;
	padding: 6px;
	border: 1px solid var(--kat-crta);
	border-radius: 4px;
	background: #fff;
	box-shadow: 0 30px 60px -30px rgba(15, 41, 79, .45), 0 2px 6px rgba(15, 41, 79, .06);
	text-align: left;
}

body.ttm-empor .ttm-isk-predlogi[hidden] {
	display: none;
}

body.ttm-empor .ttm-isk-predlogi a {
	display: grid;
	grid-template-columns: 44px minmax(0, 1fr);
	align-items: center;
	gap: 12px;
	padding: 8px 10px;
	border-radius: 4px;
	color: var(--kat-mornar);
	text-decoration: none;
}

body.ttm-empor .ttm-isk-predlogi a:hover,
body.ttm-empor .ttm-isk-predlogi a[aria-selected="true"] {
	background: var(--kat-svetlo);
}

body.ttm-empor .ttm-isk-predlogi__slika {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border: 1px solid var(--kat-crta);
	border-radius: 4px;
	background: #fff;
	font-family: "IBM Plex Mono", monospace;
	font-size: 9px;
	color: var(--kat-oznaka);
	overflow: hidden;
}

body.ttm-empor .ttm-isk-predlogi__slika img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

body.ttm-empor .ttm-isk-predlogi__naziv {
	display: block;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.3;
}

body.ttm-empor .ttm-isk-predlogi__meta {
	display: block;
	margin-top: 2px;
	font-family: "IBM Plex Mono", monospace;
	font-size: 12px;
	color: var(--kat-oznaka);
}

body.ttm-empor .ttm-isk-predlogi mark {
	background: rgba(36, 97, 166, .12);
	color: inherit;
	border-radius: 2px;
}

body.ttm-empor .ttm-isk-predlogi .ttm-isk-predlogi__vec {
	display: block;
	margin-top: 4px;
	padding: 12px 10px;
	border-top: 1px solid var(--kat-crta);
	border-radius: 0 0 4px 4px;
	font-size: 14px;
	font-weight: 600;
	color: var(--kat-modra);
}

body.ttm-empor .ttm-isk-predlogi__nic {
	padding: 12px 10px;
	font-size: 14px;
	color: var(--kat-besedilo);
}

/* ---- lupa v glavi in ploskev, ki jo odpre ------------------------------------- */

body.ttm-empor .ttm-isk-glava {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: none;
	width: 44px;
	height: 44px;
	padding: 0;
	border: 1px solid rgb(226, 232, 240);
	border-radius: 999px;
	background: #fff;
	color: rgb(15, 41, 79);
	cursor: pointer;
	transition: border-color .3s, color .3s;
}

body.ttm-empor .ttm-isk-glava:hover {
	border-color: #2461A6;
	color: #2461A6;
}

/* Pod 430 px so v glavi že logotip, »Pokličite« in meni — lupa bi meni
   izrinila čez rob (izmerjeno 26. 9. 2026). Tam je iskanje v meniju. */
@media (max-width: 429px) {
	body.ttm-empor .ttm-isk-glava--mobil {
		display: none;
	}
}

body.ttm-empor .ttm-isk-meni {
	display: flex;
	align-items: center;
	gap: 12px;
	width: 100%;
	min-height: 52px;
	margin: 8px 0 12px;
	padding: 0 18px;
	border: 1px solid rgb(196, 216, 236);
	border-radius: 999px;
	background: #fff;
	font: 500 16px/1.2 "Archivo", system-ui, sans-serif;
	color: rgb(91, 122, 153);
	text-align: left;
	cursor: pointer;
}

body.ttm-empor .ttm-isk-meni svg {
	flex: none;
	color: rgb(36, 97, 166);
}

body.ttm-empor .ttm-isk-ploskev {
	position: fixed;
	z-index: 120;
	inset: 0;
	background: rgba(15, 41, 79, .32);
	-webkit-backdrop-filter: blur(3px);
	backdrop-filter: blur(3px);
}

body.ttm-empor .ttm-isk-ploskev[hidden] {
	display: none;
}

body.ttm-empor .ttm-isk-ploskev__okvir {
	display: flex;
	align-items: flex-start;
	justify-content: center;
	gap: 14px;
	padding: clamp(18px, 3vw, 36px) clamp(16px, 3.4vw, 56px) clamp(22px, 3vw, 40px);
	background: #fff;
	border-bottom: 1px solid var(--kat-crta);
	box-shadow: 0 30px 70px -40px rgba(15, 41, 79, .6);
}

body.ttm-empor .ttm-isk-ploskev__zapri {
	flex: none;
	width: 48px;
	height: 48px;
	margin-top: 6px;
	padding: 0;
	border: 1px solid var(--kat-crta);
	border-radius: 999px;
	background: #fff;
	font-size: 26px;
	line-height: 1;
	color: var(--kat-mornar);
	cursor: pointer;
}

body.ttm-empor .ttm-isk-ploskev__zapri:hover {
	border-color: var(--kat-modra);
	color: var(--kat-modra);
}

/* ---- Prodajni program: slika in okvir znamk vodita na skupino ----------------- */

body.ttm-empor a.ttm-prog-povezava {
	display: block;
	color: inherit;
	text-decoration: none;
	cursor: pointer;
	transition: outline-color .3s;
	outline: 1px solid transparent;
	outline-offset: -1px;
}

body.ttm-empor a.ttm-prog-povezava:hover {
	outline-color: #2461A6;
}

body.ttm-empor a.ttm-prog-povezava img {
	transition: transform .5s cubic-bezier(.16, 1, .3, 1);
}

body.ttm-empor a.ttm-prog-povezava:hover > img {
	transform: scale(1.02);
}

/* ---- kje stoji iskalnik ------------------------------------------------------- */

body.ttm-empor .ttm-prog-iskanje {
	position: relative;
	z-index: 5;
	margin-top: clamp(24px, 3vw, 36px);
}

body.ttm-empor .ttm-skup-iskanje {
	position: relative;
	z-index: 5;
	margin-top: clamp(22px, 2.6vw, 32px);
}

body.ttm-empor .ttm-izd-vrstica {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 16px 32px;
	margin-bottom: clamp(24px, 3vw, 40px);
}

body.ttm-empor .ttm-izd-vrstica .ttm-izd-drobtine {
	margin-bottom: 0;
}

/* Na strani izdelka je iskalnik drugoten: tanek, v vrsti z drobtinicami,
   brez modrega gumba — lupa in Enter zadoščata, predlogi pridejo sami. */
body.ttm-empor .ttm-izd-iskanje {
	position: relative;
	z-index: 5;
	flex: 0 1 340px;
	min-width: 240px;
}

body.ttm-empor .ttm-izd-iskanje .ttm-isk__polje {
	height: 42px;
	padding: 0 16px;
	border-color: rgb(226, 232, 240);
	background: rgba(255, 255, 255, .8);
	box-shadow: none;
}

body.ttm-empor .ttm-izd-iskanje input[type="search"] {
	font-size: 14px;
}

body.ttm-empor .ttm-izd-iskanje button[type="submit"] {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0 0 0 0);
}

body.ttm-empor .ttm-izd-iskanje .ttm-isk-predlogi {
	left: auto;
	width: min(480px, calc(100vw - 40px));
}

/* ---- stran skupine: podkategorije -------------------------------------------- */

/* Tesno pod vrhom: podkategorije morajo biti vidne brez drsenja (Miha, 26. 9.). */
body.ttm-empor .ttm-skup-podkat {
	padding: clamp(24px, 3vw, 40px) clamp(20px, 3.4vw, 56px) 0;
}

body.ttm-empor .ttm-skup-podkat__mreza {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
	gap: 12px;
	margin-top: clamp(20px, 2.5vw, 32px);
}

body.ttm-empor .ttm-skup-podkat__mreza a {
	position: relative;
	display: grid;
	grid-template-columns: 44px 1fr;
	align-content: start;
	column-gap: 14px;
	row-gap: 6px;
	height: 100%;
	padding: 20px 44px 18px 20px;
	border: 1px solid var(--kat-crta);
	border-radius: 4px;
	background: #fff;
	color: var(--kat-mornar);
	text-decoration: none;
	transition: border-color .2s;
}

body.ttm-empor .ttm-skup-podkat__mreza a::after {
	content: "→";
	position: absolute;
	top: 20px;
	right: 18px;
	font-family: "IBM Plex Mono", monospace;
	color: var(--kat-modra);
	transition: transform .2s;
}

body.ttm-empor .ttm-skup-podkat__mreza a:hover {
	border-color: var(--kat-modra);
}

body.ttm-empor .ttm-skup-podkat__mreza a:hover::after {
	transform: translateX(3px);
}

body.ttm-empor .ttm-skup-podkat__ikona {
	grid-row: 1 / 3;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 4px;
	background: #EEF3F9;
	color: var(--kat-modra);
	transition: background-color .2s, color .2s;
}

body.ttm-empor .ttm-skup-podkat__ikona svg {
	width: 24px;
	height: 24px;
}

body.ttm-empor .ttm-skup-podkat__mreza a:hover .ttm-skup-podkat__ikona {
	background: var(--kat-modra);
	color: #fff;
}

body.ttm-empor .ttm-skup-podkat__ime {
	font-size: 17px;
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: -.01em;
}

body.ttm-empor .ttm-skup-podkat__st {
	font-family: "IBM Plex Mono", monospace;
	font-size: 12px;
	color: var(--kat-oznaka);
}

/* ---- stran skupine: znamke v zložljivem pasu ---------------------------------- */

body.ttm-empor .ttm-skup-znamke > summary {
	display: flex;
	align-items: center;
	gap: clamp(14px, 2vw, 28px);
	min-height: 72px;
	padding: 14px clamp(16px, 2vw, 24px);
	border: 1px solid rgb(226, 232, 240);
	border-radius: 4px;
	background: #fff;
	list-style: none;
	cursor: pointer;
	transition: border-color .2s;
}

body.ttm-empor .ttm-skup-znamke > summary::-webkit-details-marker {
	display: none;
}

body.ttm-empor .ttm-skup-znamke > summary:hover {
	border-color: #2461A6;
}

body.ttm-empor .ttm-skup-znamke > summary:focus-visible {
	outline: 2px solid #2461A6;
	outline-offset: 3px;
}

body.ttm-empor .ttm-skup-znamke__oznaka {
	flex: none;
	font-size: 10px;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: rgb(91, 122, 153);
}

/* Logotipi v pasu: majhni in v sivini — pas je drugoten, podkategorije so glavne. */
body.ttm-empor .ttm-skup-znamke__logotipi {
	display: flex;
	flex: 1 1 auto;
	align-items: center;
	gap: clamp(14px, 2vw, 26px);
	min-width: 0;
	overflow: hidden;
	-webkit-mask-image: linear-gradient(90deg, #000 85%, transparent);
	mask-image: linear-gradient(90deg, #000 85%, transparent);
}

body.ttm-empor .ttm-skup-znamke__logotipi img {
	flex: none;
	width: auto;
	height: auto;
	max-height: 22px;
	max-width: 96px;
	object-fit: contain;
	filter: grayscale(1);
	opacity: .55;
}

body.ttm-empor .ttm-skup-znamke[open] .ttm-skup-znamke__logotipi {
	visibility: hidden;
}

/* + se ob odprtju zavrti v × — isti znak kot pri meniju. */
body.ttm-empor .ttm-skup-znamke__plus {
	position: relative;
	flex: none;
	width: 40px;
	height: 40px;
	margin-left: auto;
	border: 1px solid rgb(196, 216, 236);
	border-radius: 999px;
	transition: transform .3s cubic-bezier(.16, 1, .3, 1), border-color .2s;
}

body.ttm-empor .ttm-skup-znamke__plus::before,
body.ttm-empor .ttm-skup-znamke__plus::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 14px;
	height: 2px;
	margin: -1px 0 0 -7px;
	border-radius: 2px;
	background: #2461A6;
}

body.ttm-empor .ttm-skup-znamke__plus::after {
	transform: rotate(90deg);
}

body.ttm-empor .ttm-skup-znamke[open] .ttm-skup-znamke__plus {
	transform: rotate(45deg);
	border-color: #2461A6;
}

@media (max-width: 640px) {
	body.ttm-empor .ttm-skup-znamke__logotipi {
		display: none;
	}
}

/* ---- stran podkategorije in zadetki ------------------------------------------- */

body.ttm-empor .ttm-kat-glava {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: clamp(22px, 3vw, 48px);
	align-items: end;
}

@media (min-width: 980px) {
	body.ttm-empor .ttm-kat-glava {
		grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
	}
}

body.ttm-empor .ttm-kat-glava h1 {
	margin: 0;
	font-size: clamp(32px, 4.4vw, 60px);
	line-height: .98;
	font-weight: 800;
	letter-spacing: -.04em;
	color: var(--kat-mornar);
	overflow-wrap: anywhere;
}

body.ttm-empor .ttm-kat-opis {
	margin: 18px 0 0;
	max-width: 60ch;
	font-size: clamp(15px, 1.15vw, 17px);
	line-height: 1.7;
	color: var(--kat-besedilo);
}

body.ttm-empor .ttm-kat-glava__iskanje {
	position: relative;
	z-index: 5;
}

body.ttm-empor .ttm-kat-povsod {
	margin: 12px 0 0 20px;
	font-size: 14px;
}

body.ttm-empor .ttm-kat-povsod a {
	font-weight: 600;
	color: var(--kat-modra);
}

body.ttm-empor .ttm-kat-seznam {
	padding-top: clamp(32px, 4vw, 56px);
}

body.ttm-empor .ttm-kat-filter {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 10px 16px;
	margin-bottom: 18px;
}

body.ttm-empor .ttm-kat-filter .ttm-izd-oznaka {
	flex: 0 0 120px;
	margin: 0;
}

body.ttm-empor .ttm-kat-filter ul {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	flex: 1 1 400px;
	min-width: 0;
}

body.ttm-empor .ttm-kat-filter a {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 38px;
	padding: 8px 14px;
	border: 1px solid var(--kat-crta);
	border-radius: 999px;
	background: #fff;
	font-size: 14px;
	font-weight: 600;
	color: var(--kat-mornar);
	text-decoration: none;
	transition: border-color .2s, background-color .2s, color .2s;
}

body.ttm-empor .ttm-kat-filter a span {
	font-family: "IBM Plex Mono", monospace;
	font-size: 11px;
	font-weight: 400;
	color: var(--kat-oznaka);
}

body.ttm-empor .ttm-kat-filter a:hover {
	border-color: var(--kat-modra);
}

body.ttm-empor .ttm-kat-filter a[aria-current="true"] {
	border-color: var(--kat-mornar);
	background: var(--kat-mornar);
	color: #fff;
}

body.ttm-empor .ttm-kat-filter a[aria-current="true"] span {
	color: rgba(255, 255, 255, .7);
}

body.ttm-empor .ttm-kat-vec {
	flex: 1 1 100%;
	margin-left: 136px;
}

body.ttm-empor .ttm-kat-vec summary {
	display: inline-block;
	padding: 6px 0;
	font-size: 14px;
	font-weight: 600;
	color: var(--kat-modra);
	cursor: pointer;
}

body.ttm-empor .ttm-kat-vec ul {
	margin-top: 8px;
}

/* ---- vrstica nad seznamom: število + preklop pogleda --------------------------- */

body.ttm-empor .ttm-kat-orodna {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin: 26px 0 16px;
}

body.ttm-empor .ttm-kat-orodna .ttm-kat-stevilo {
	margin: 0;
}

body.ttm-empor .ttm-kat-pogled {
	display: inline-flex;
	padding: 3px;
	border: 1px solid var(--kat-crta);
	border-radius: 999px;
	background: var(--kat-svetlo);
}

body.ttm-empor .ttm-kat-pogled[hidden] {
	display: none;
}

body.ttm-empor .ttm-kat-pogled button {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	min-height: 36px;
	padding: 0 14px;
	border: 0;
	border-radius: 999px;
	background: transparent;
	font: 600 13px/1 "Archivo", system-ui, sans-serif;
	color: var(--kat-oznaka);
	cursor: pointer;
	transition: background-color .2s, color .2s;
}

body.ttm-empor .ttm-kat-pogled svg {
	fill: currentColor;
}

body.ttm-empor .ttm-kat-pogled button:hover {
	color: var(--kat-mornar);
}

body.ttm-empor .ttm-kat-pogled button[aria-pressed="true"] {
	background: var(--kat-mornar);
	color: #fff;
}

/* ---- pogled »seznam« ---------------------------------------------------------- */
/* Isti markup kot karte — preklopi ga samo razred na <html> (empor-iskanje.js). */

html.ttm-pogled-seznam body.ttm-empor .ttm-kat-mreza {
	grid-template-columns: minmax(0, 1fr);
	gap: 0;
	border-top: 1px solid var(--kat-crta);
}

html.ttm-pogled-seznam body.ttm-empor .ttm-kat-kartica {
	flex-direction: row;
	align-items: center;
	gap: 16px;
	padding: 10px 12px;
	border: 0;
	border-bottom: 1px solid var(--kat-crta);
	border-radius: 0;
	background: transparent;
}

html.ttm-pogled-seznam body.ttm-empor .ttm-kat-kartica:hover {
	background: var(--kat-svetlo);
}

html.ttm-pogled-seznam body.ttm-empor .ttm-kat-kartica__povezava {
	display: grid;
	grid-template-columns: 64px minmax(0, 1fr) 130px;
	grid-template-areas: "slika znamka sifra" "slika naziv sifra" "slika podatki sifra";
	align-items: center;
	column-gap: 16px;
	min-width: 0;
}

html.ttm-pogled-seznam body.ttm-empor .ttm-kat-kartica__slika {
	grid-area: slika;
	width: 64px;
	height: 64px;
	padding: 6px;
	border: 1px solid var(--kat-crta);
	border-radius: 4px;
}

html.ttm-pogled-seznam body.ttm-empor .ttm-kat-kartica__slika img {
	max-height: 50px;
}

html.ttm-pogled-seznam body.ttm-empor .ttm-kat-kartica__slika img.ttm-kat-kartica__logo {
	max-width: 90%;
	max-height: 18px;
}

html.ttm-pogled-seznam body.ttm-empor .ttm-kat-kartica__znamka {
	grid-area: znamka;
	align-self: end;
	padding: 0;
}

html.ttm-pogled-seznam body.ttm-empor .ttm-kat-kartica__naziv {
	grid-area: naziv;
	padding: 2px 0;
	font-size: 15px;
}

html.ttm-pogled-seznam body.ttm-empor .ttm-kat-kartica__podatki {
	grid-area: podatki;
	align-self: start;
	padding: 0;
}

html.ttm-pogled-seznam body.ttm-empor .ttm-kat-kartica__sifra {
	grid-area: sifra;
	margin: 0;
	padding: 0;
	text-align: right;
}

html.ttm-pogled-seznam body.ttm-empor .ttm-kat-kartica__dodaj {
	flex: none;
	margin: 0;
	min-width: 140px;
}

body.ttm-empor .ttm-kat-stevilo {
	margin: 26px 0 16px;
	font-family: "IBM Plex Mono", monospace;
	font-size: 12px;
	letter-spacing: .06em;
	color: var(--kat-oznaka);
}

body.ttm-empor .ttm-kat-mreza {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
	gap: 14px;
}

body.ttm-empor .ttm-kat-kartica {
	display: flex;
	flex-direction: column;
	border: 1px solid var(--kat-crta);
	border-radius: 4px;
	background: #fff;
	transition: border-color .2s;
}

body.ttm-empor .ttm-kat-kartica:hover {
	border-color: var(--kat-modra);
}

body.ttm-empor .ttm-kat-kartica__povezava {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	color: var(--kat-mornar);
	text-decoration: none;
}

body.ttm-empor .ttm-kat-kartica__slika {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 150px;
	padding: 16px;
	background: linear-gradient(158deg, rgb(247, 250, 253), rgb(231, 239, 248));
	border-bottom: 1px solid var(--kat-crta);
	border-radius: 4px 4px 0 0;
}

body.ttm-empor .ttm-kat-kartica__slika img {
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 118px;
	object-fit: contain;
	mix-blend-mode: multiply;
}

/* Logotip namesto fotografije: v sivini, da 14.000 kartic ni oglas za znamke. */
body.ttm-empor .ttm-kat-kartica__slika img.ttm-kat-kartica__logo {
	max-width: 50%;
	max-height: 30px;
	filter: grayscale(1);
	opacity: .4;
	mix-blend-mode: normal;
}

body.ttm-empor .ttm-kat-kartica__znamka {
	padding: 14px 16px 0;
	font-family: "IBM Plex Mono", monospace;
	font-size: 10px;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--kat-oznaka);
}

body.ttm-empor .ttm-kat-kartica__naziv {
	padding: 6px 16px 6px;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.3;
	overflow-wrap: anywhere;
}

/* Podatki iz Pantheona pod nazivom — hladivo, prostornina, območje. */
body.ttm-empor .ttm-kat-kartica__podatki {
	padding: 0 16px 6px;
	font-size: 12px;
	line-height: 1.45;
	color: var(--kat-besedilo);
	overflow-wrap: anywhere;
}

body.ttm-empor .ttm-kat-kartica__sifra {
	margin-top: auto;
	padding: 4px 16px 14px;
	font-family: "IBM Plex Mono", monospace;
	font-size: 12px;
	color: var(--kat-oznaka);
}

body.ttm-empor .ttm-kat-kartica__dodaj {
	margin: 0 12px 12px;
	min-height: 40px;
	padding: 8px 14px;
	border: 1px solid var(--kat-crta-mocna);
	border-radius: 999px;
	background: #fff;
	font: 600 14px/1.2 "Archivo", system-ui, sans-serif;
	color: var(--kat-mornar);
	cursor: pointer;
	transition: border-color .2s, background-color .2s, color .2s;
}

body.ttm-empor .ttm-kat-kartica__dodaj:hover {
	border-color: var(--kat-modra);
	color: var(--kat-modra);
}

body.ttm-empor .ttm-kat-kartica__dodaj.je-na-seznamu {
	border-color: #1F7A3A;
	background: #1F7A3A;
	color: #fff;
}

body.ttm-empor .ttm-kat-prazno {
	padding: clamp(28px, 4vw, 48px);
	border: 1px dashed var(--kat-crta-mocna);
	border-radius: 4px;
	background: var(--kat-svetlo);
}

body.ttm-empor .ttm-kat-prazno p {
	margin: 0 0 12px;
	max-width: 62ch;
	font-size: 16px;
	line-height: 1.6;
	color: var(--kat-besedilo);
}

body.ttm-empor .ttm-kat-prazno .ttm-izd-gumb {
	margin-top: 8px;
}

body.ttm-empor .ttm-kat-strani {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 6px;
	margin-top: clamp(28px, 4vw, 48px);
}

body.ttm-empor .ttm-kat-strani a,
body.ttm-empor .ttm-kat-strani span[aria-current] {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 44px;
	height: 44px;
	padding: 0 14px;
	border: 1px solid var(--kat-crta);
	border-radius: 999px;
	background: #fff;
	font-size: 15px;
	font-weight: 600;
	color: var(--kat-mornar);
	text-decoration: none;
}

body.ttm-empor .ttm-kat-strani a:hover {
	border-color: var(--kat-modra);
	color: var(--kat-modra);
}

body.ttm-empor .ttm-kat-strani span[aria-current] {
	border-color: var(--kat-mornar);
	background: var(--kat-mornar);
	color: #fff;
}

body.ttm-empor .ttm-kat-strani span[aria-hidden] {
	padding: 0 4px;
	color: var(--kat-oznaka);
}

body.ttm-empor .ttm-kat-cta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 18px 24px;
	margin-top: clamp(40px, 5vw, 72px);
	padding-top: clamp(36px, 4.5vw, 64px);
	border-top: 1px solid var(--kat-crta);
	text-align: center;
}

body.ttm-empor .ttm-kat-cta p {
	margin: 0;
	max-width: 74ch;
	font-size: 15px;
	line-height: 1.7;
	color: var(--kat-besedilo);
}

/* ---- telefon --------------------------------------------------------------------- */

@media (max-width: 640px) {
	body.ttm-empor .ttm-isk__polje {
		padding-left: 14px;
	}

	body.ttm-empor .ttm-isk--velik .ttm-isk__polje {
		height: 56px;
		padding-left: 16px;
	}

	body.ttm-empor .ttm-isk--velik button[type="submit"] {
		height: 46px;
		padding: 0 18px;
	}

	body.ttm-empor .ttm-izd-iskanje {
		flex-basis: 100%;
		min-width: 0;
	}

	body.ttm-empor .ttm-kat-filter .ttm-izd-oznaka {
		flex-basis: 100%;
	}

	body.ttm-empor .ttm-kat-vec {
		margin-left: 0;
	}

	/* Na telefonu filtri tečejo vodoravno, namesto da bi zasedli pol zaslona. */
	body.ttm-empor .ttm-kat-filter > ul {
		flex-wrap: nowrap;
		overflow-x: auto;
		margin: 0 -20px;
		padding: 2px 20px 8px;
		scrollbar-width: none;
	}

	body.ttm-empor .ttm-kat-filter > ul::-webkit-scrollbar {
		display: none;
	}

	body.ttm-empor .ttm-kat-filter a {
		white-space: nowrap;
	}

	body.ttm-empor .ttm-kat-mreza {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px;
	}

	body.ttm-empor .ttm-kat-kartica__slika {
		height: 110px;
		padding: 12px;
	}

	body.ttm-empor .ttm-kat-kartica__slika img {
		max-height: 86px;
	}

	body.ttm-empor .ttm-kat-kartica__znamka {
		padding: 10px 12px 0;
	}

	body.ttm-empor .ttm-kat-kartica__naziv {
		padding: 4px 12px;
		font-size: 13px;
	}

	body.ttm-empor .ttm-kat-kartica__podatki {
		padding: 0 12px 4px;
		font-size: 11px;
	}

	body.ttm-empor .ttm-kat-kartica__sifra {
		padding: 4px 12px 10px;
		font-size: 11px;
	}

	body.ttm-empor .ttm-kat-kartica__dodaj {
		margin: 0 8px 8px;
		padding: 8px 10px;
		font-size: 13px;
	}

	/* Seznam na telefonu: sličica levo, besedilo desno, gumb pod besedilom. */
	html.ttm-pogled-seznam body.ttm-empor .ttm-kat-mreza {
		grid-template-columns: minmax(0, 1fr);
	}

	html.ttm-pogled-seznam body.ttm-empor .ttm-kat-kartica {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
		gap: 8px;
		padding: 12px 0;
	}

	html.ttm-pogled-seznam body.ttm-empor .ttm-kat-kartica__povezava {
		grid-template-columns: 56px minmax(0, 1fr);
		grid-template-areas: "slika znamka" "slika naziv" "slika podatki" "slika sifra";
		column-gap: 12px;
	}

	html.ttm-pogled-seznam body.ttm-empor .ttm-kat-kartica__slika {
		width: 56px;
		height: 56px;
		align-self: start;
	}

	html.ttm-pogled-seznam body.ttm-empor .ttm-kat-kartica__sifra {
		text-align: left;
	}

	html.ttm-pogled-seznam body.ttm-empor .ttm-kat-kartica__dodaj {
		justify-self: start;
		margin-left: 68px;
		min-width: 0;
	}

	body.ttm-empor .ttm-kat-pogled button span {
		position: absolute;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip: rect(0 0 0 0);
	}

	body.ttm-empor .ttm-kat-strani a[rel] {
		padding: 0 12px;
	}

	body.ttm-empor .ttm-isk-ploskev__okvir {
		gap: 8px;
		padding: 14px 12px 16px;
	}

	body.ttm-empor .ttm-isk-ploskev__zapri {
		width: 44px;
		height: 44px;
		margin-top: 6px;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.ttm-empor .ttm-kat *,
	body.ttm-empor .ttm-isk *,
	body.ttm-empor .ttm-skup-podkat * {
		transition: none !important;
	}
}

@media print {
	body.ttm-empor .ttm-isk,
	body.ttm-empor .ttm-isk-glava,
	body.ttm-empor .ttm-isk-ploskev,
	body.ttm-empor .ttm-kat-kartica__dodaj {
		display: none !important;
	}
}
