/* ==========================================================================
   webuni.css — vlastné úpravy nad style.min.css
   (style.min.css sa NIKDY needituje priamo)
   ========================================================================== */

:root {
	--ai-green: #4AA96C;
	--ai-green-dark: #3A8B57;
	--ai-green-soft: #EAF6EE;
	--ai-strip: #9FE6A0;
	--ai-ink: #1F2A24;
	--ai-muted: #6B7B72;
	--ai-line: #E3E8E5;
}

/* ==========================================================================
   1) HORNÁ ZELENÁ LIŠTA
   ========================================================================== */

#container-top-header-strip {
	background: var(--ai-strip) !important;
}

#container-top-header-strip > .container {
	min-height: 38px;
}

/* skryje textové "|" medzi odkazmi (je to holý textový uzol v šablóne) */
#container-top-header-strip #top-header-login-links {
	font-size: 0 !important;
	display: flex;
	align-items: center;
	gap: 6px;
	padding: 0 !important;
}

#container-top-header-strip #top-header-login-links a {
	font-size: 13px !important;
	font-weight: 600;
	color: #1F3D2B !important;
	text-decoration: none !important;
	line-height: 1;
	padding: 6px 12px;
	border-radius: 999px;
	transition: background .18s ease, color .18s ease;
}

#container-top-header-strip #top-header-login-links a:hover {
	background: rgba(255, 255, 255, .55);
	color: #143021 !important;
}

/* ==========================================================================
   2) HLAVIČKA — jeden riadok: logo | vyhľadávanie | účet + košík
   ========================================================================== */

#container-header {
	background: #fff;
	border-bottom: 1px solid var(--ai-line);
	/* .container-full-width má overflow:hidden — orezávalo by rozbaľovacie okná */
	overflow: visible !important;
}

#container-header > .span-25 {
	display: flex;
	align-items: center;
	gap: 32px;
	padding: 14px 20px;
	box-sizing: border-box;
	max-width: 1500px;
}

#container-header #top-home {
	flex: 0 0 auto;
	display: block;
	line-height: 0;
}

#container-header #top-home .brand img {
	max-height: 58px;
	width: auto;
	display: block;
}

#header-opacity {
	flex: 1 1 auto;
	height: auto !important;
	min-width: 0;
	background: none !important;
	padding: 0 !important;
	margin: 0 !important;
}

#header {
	display: flex !important;
	flex-direction: row !important;
	align-items: center;
	justify-content: flex-end;
	gap: 28px;
	padding: 0 !important;
	background: none !important;
	text-align: left;
	height: auto;
}

#header .ai-header-bot {
	order: 1;
	flex: 1 1 auto;
	min-width: 0;
	padding: 0 !important;
	display: block;
}

#header .ai-header-top {
	order: 2;
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 0 !important;
	width: auto;
}

/* --- 2a) Vyhľadávanie ------------------------------------------------- */

/* Vizuálnu "pilulku" tvorí #search — v základnej téme má border aj pozadie. */
#container-header #header #search {
	display: flex !important;
	align-items: stretch;
	width: 100%;
	max-width: 560px;
	height: 46px;
	margin: 0 !important;
	float: none !important;
	background: #F6F8F7 !important;
	border: 1px solid var(--ai-line) !important;
	border-radius: 999px !important;
	overflow: hidden;
	box-sizing: border-box;
	transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

#container-header #header #search:focus-within {
	background: #fff !important;
	border-color: var(--ai-green) !important;
	box-shadow: 0 0 0 3px rgba(74, 169, 108, .14);
}

#container-header #header #search form,
#container-header #header #search .myform,
#container-header #header #search #fieldset-search {
	display: flex;
	align-items: stretch;
	flex: 1 1 auto;
	min-width: 0;
	height: 100%;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: none !important;
}

#container-header #header #search #fieldset-search dt,
#container-header #header #search #fieldset-search dd {
	display: none !important;
}

#container-header #header #search #fieldset-search .row {
	display: flex;
	align-items: center;
	flex: 1 1 auto;
	min-width: 0;
	height: 100%;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	background: none !important;
	border: 0 !important;
}

#container-header #header #search #fieldset-search .row .element {
	margin: 0 !important;
	padding: 0 !important;
	width: 100%;
}

#container-header #header #search #text {
	width: 100% !important;
	height: 44px !important;
	line-height: 44px;
	margin: 0 !important;
	padding: 0 8px 0 20px !important;
	background: none !important;
	border: 0 !important;
	box-shadow: none !important;
	outline: none !important;
	font-size: 15px;
	color: var(--ai-ink);
	box-sizing: border-box;
}

#container-header #header #search #text::placeholder {
	color: #9AA7A0;
}

#container-header #header #search #fieldset-search .buttons {
	display: flex;
	flex: 0 0 auto;
	height: 100%;
	margin: 0 !important;
	padding: 0 !important;
}

#container-header #header #search .myform #button-indexSearch {
	background: var(--ai-green) !important;
	border-radius: 0 !important;
	height: 100% !important;
	width: 62px !important;
	line-height: normal !important;
	margin: 0 !important;
	padding: 0 !important;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 0 !important;
	transition: background .18s ease;
}

#container-header #header #search .myform #button-indexSearch:hover {
	background: var(--ai-green-dark) !important;
}

#container-header #header #search .myform #button-indexSearch:before {
	font-size: 16px !important;
	padding: 0 !important;
}

#container-header #header #search .myform #button-indexSearch input {
	width: 62px !important;
	height: 100% !important;
	line-height: normal !important;
	padding: 0 !important;
	margin: 0 !important;
	background: none !important;
	border: 0 !important;
	cursor: pointer;
}

/* --- 2b) Účet (Prihlásenie / Registrácia) ----------------------------- */

#header #head-login {
	display: flex;
	align-items: center;
	gap: 4px;
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
	font-size: 0 !important; /* skryje textové "|" medzi odkazmi */
}

#header #head-login > a {
	font-size: 14px !important;
	font-weight: 500;
	color: var(--ai-ink) !important;
	text-decoration: none !important;
	line-height: 1;
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 9px 13px;
	border-radius: 10px;
	white-space: nowrap;
	transition: background .18s ease, color .18s ease;
}

#header #head-login > a:hover {
	background: var(--ai-green-soft);
	color: var(--ai-green-dark) !important;
}

/* Registrácia = hlavná výzva k akcii */
#header #head-login > a:last-of-type {
	border: 1px solid var(--ai-green);
	color: var(--ai-green-dark) !important;
	font-weight: 600;
	border-radius: 999px;
	padding: 8px 16px;
}

#header #head-login > a:last-of-type:hover {
	background: var(--ai-green);
	color: #fff !important;
}

#header #head-login > a:before {
	font-size: 15px !important;
	padding: 0 !important;
	margin: 0 !important;
}

/* --- 2b2) Prihlásený používateľ — "Môj profil" ------------------------- */

/* Základná téma skrýva profilové menu v zelenej lište na desktope.
   Zobrazujeme ho, aby lišta nebola prázdna (rovnako ako pri odhlásenom stave). */
#bg > #container-top-header-strip #top-header-login-list {
	display: block !important;
	float: none !important;
}

#container-top-header-strip #top-header-login-list ul#user_menu,
#header #head-login ul#user_menu {
	position: relative;
	float: none !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0;
	list-style: none;
	cursor: pointer;
}

/* základná téma dáva li{position:relative} — okno by sa kotvilo na nesprávny
   prvok, kotvíme ho na samotné ul#user_menu */
#container-top-header-strip #top-header-login-list ul#user_menu > li,
#header #head-login ul#user_menu > li {
	float: none !important;
	margin: 0 !important;
	list-style: none;
	position: static !important;
}

#container-top-header-strip #top-header-login-list ul#user_menu .button-type-1,
#header #head-login ul#user_menu .button-type-1 {
	background: none !important;
	margin: 0 !important;
	padding: 0 !important;
	height: auto !important;
	width: auto !important;
	border: 0 !important;
	box-shadow: none !important;
}

/* základná téma vykresľuje ikonu cez #head-login::before — pri prihlásenom
   používateľovi je zbytočná, ikonu má už samotné tlačidlo "Môj profil" */
#header #head-login.head-login-is-logged-in:before,
#container-top-header-strip #top-header-login-list:before {
	display: none !important;
	content: none !important;
}

/* ikona používateľa (základná téma skrýva .icon-type-user) */
#container-top-header-strip #top-header-login-list #user-name-button:before,
#header #head-login #user-name-button:before {
	font-family: "Font Awesome 5 Free" !important;
	font-weight: 900;
	content: "\f007";
	margin-right: 8px;
	font-size: 14px;
}

/* v hlavičke: pilulka rovnako ako "Registrácia" */
#header #head-login #user-name-button {
	display: inline-flex !important;
	align-items: center;
	width: auto !important;
	padding: 8px 16px !important;
	line-height: 1 !important;
	border: 1px solid var(--ai-green) !important;
	border-radius: 999px;
	color: var(--ai-green-dark) !important;
	font-size: 14px !important;
	font-weight: 600;
	text-decoration: none !important;
	white-space: nowrap;
	transition: background .18s ease, color .18s ease;
}

#header #head-login #user-name-button:hover {
	background: var(--ai-green) !important;
	color: #fff !important;
	border-color: var(--ai-green) !important;
}

/* v zelenej lište: obyčajný odkaz ako ostatné odkazy lišty */
#container-top-header-strip #top-header-login-list #user-name-button {
	display: inline-flex !important;
	align-items: center;
	width: auto !important;
	padding: 6px 12px !important;
	line-height: 1 !important;
	border: 0 !important;
	border-radius: 999px;
	color: #1F3D2B !important;
	font-size: 13px !important;
	font-weight: 600;
	text-decoration: none !important;
	white-space: nowrap;
	transition: background .18s ease;
}

#container-top-header-strip #top-header-login-list #user-name-button:hover {
	background: rgba(255, 255, 255, .55);
	color: #143021 !important;
}

/* rozbaľovacie okno profilu — základné JS prepína iba položky,
   okno riadime triedou .is-open (pozri user-menu.phtml) */
ul#user_menu ul.profile-menu-window {
	display: none !important;
	position: absolute;
	top: calc(100% + 10px);
	right: 0;
	left: auto;
	margin: 0 !important;
	padding: 8px 0;
	width: 230px;
	background: #fff !important;
	border: 1px solid var(--ai-line) !important;
	border-radius: 12px;
	box-shadow: 0 12px 30px rgba(31, 42, 36, .13);
	z-index: 400;
	list-style: none;
}

ul#user_menu ul.profile-menu-window.is-open {
	display: block !important;
}

ul#user_menu ul.profile-menu-window li.menu {
	display: block !important;
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: normal;
}

ul#user_menu ul.profile-menu-window li.menu a {
	display: block;
	padding: 9px 18px;
	font-size: 13.5px !important;
	color: var(--ai-ink) !important;
	text-decoration: none !important;
	transition: background .15s ease, color .15s ease;
}

ul#user_menu ul.profile-menu-window li.menu a:hover {
	background: var(--ai-green-soft);
	color: var(--ai-green-dark) !important;
	text-decoration: none !important;
}

ul#user_menu ul.profile-menu-window li.menu:last-child a {
	border-top: 1px solid #F0F3F1;
	margin-top: 4px;
	padding-top: 11px;
	color: #B4453C !important;
}

ul#user_menu ul.profile-menu-window li.menu:last-child a:hover {
	background: #FDEDEC;
	color: #99332B !important;
}

/* --- 2c) Košík -------------------------------------------------------- */

#header #public-cart {
	position: relative;
	float: none !important;
	margin: 0 !important;
	width: auto;
	height: auto;
	display: block;
}

#header #public-cart #center-bg {
	background: none !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
}

#header #public-cart .info-cart-small {
	display: flex !important;
	align-items: center;
	gap: 10px;
	height: auto !important;
	margin: 0 !important;
	padding: 8px 16px 8px 10px;
	background: var(--ai-green-soft);
	border: 1px solid #D3EADC;
	border-radius: 999px;
	white-space: nowrap;
	transition: background .18s ease, border-color .18s ease;
}

#header #public-cart .info-cart-small:hover {
	background: #DFF1E6;
	border-color: #BFDFCC;
}

#header #public-cart .info-cart-small .icon-cart-big {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	flex: 0 0 34px;
	background: #fff;
	border-radius: 50%;
	position: static !important;
	top: auto !important;
	left: auto !important;
	margin: 0 !important;
}

#header #public-cart .info-cart-small .icon-cart-big:before {
	padding: 0 !important;
	font-size: 15px !important;
	color: var(--ai-green) !important;
}

#header #public-cart .info-cart-small > p {
	display: flex !important;
	align-items: baseline;
	gap: 4px;
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
	font-size: 14px;
	font-weight: 700;
	color: var(--ai-ink);
	line-height: 1.2;
}

#header #public-cart .info-cart-small > p .cout {
	font-weight: 500;
	color: var(--ai-muted);
}

#header #public-cart .info-cart-small > a {
	margin: 0 !important;
	padding: 0 0 0 10px;
	border-left: 1px solid #C9E3D4;
	font-size: 13px;
	font-weight: 600;
	color: var(--ai-green-dark) !important;
	text-decoration: none !important;
	background: none !important;
	line-height: 1.2;
	height: auto !important;
	width: auto !important;
	display: inline-block;
}

#header #public-cart .info-cart-small > a:hover {
	text-decoration: underline !important;
}

/* rozbaľovací zoznam produktov v košíku */
#header #public-cart .products {
	position: absolute;
	top: 100%;   /* bez medzery, inak sa okno pri prechode myšou zatvorí */
	right: 0;
	left: auto;
	z-index: 300;
	min-width: 280px;
	background: #fff;
	border: 1px solid var(--ai-line);
	border-radius: 12px;
	box-shadow: 0 12px 30px rgba(31, 42, 36, .13);
	padding: 8px;
	display: none;
}

#header #public-cart:hover .products {
	display: block;
}

#header #public-cart .products ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

#header #public-cart .products li {
	padding: 8px 10px;
	border-bottom: 1px solid #F0F3F1;
	font-size: 13px;
}

#header #public-cart .products li:last-child {
	border-bottom: 0;
}

/* ==========================================================================
   3) RESPONZÍVNE SPRÁVANIE
   ========================================================================== */

@media screen and (max-width:1221px) {
	#container-header > .span-25 {
		gap: 20px;
	}

	#header {
		gap: 18px;
	}

	#header #head-login > a {
		padding: 9px 10px;
	}

	#container-header #public-cart .info-cart-small > a {
		display: none;
	}
}

@media screen and (max-width:800px) {
	#container-header > .span-25 {
		flex-wrap: wrap;
		justify-content: center;
		gap: 12px;
		padding: 12px 16px;
	}

	#container-header #top-home {
		order: 1;
	}

	#container-header #top-home .brand img {
		max-height: 46px;
	}

	#header-opacity {
		order: 3;
		flex: 1 1 100%;
	}

	#header {
		flex-direction: column !important;
		align-items: stretch;
		gap: 12px;
	}

	#container-header .ai-header-bot {
		order: 1;
	}

	#header .ai-header-top {
		order: 2;
		justify-content: center;
		flex-wrap: wrap;
	}

	#header #search #fieldset-search {
		max-width: none;
	}

	#container-header #public-cart .info-cart-small > a {
		display: inline-block;
	}
}

/* ==========================================================================
   4) OBRÁZKOVÝ KATALÓG KATEGÓRIÍ NA ÚVODNEJ STRÁNKE (#img-catalog)
   Pôvodne: flex bez zalamovania → karty mali rôzne šírky, nadpisy pretekali
   von z kariet. Teraz: pravidelná mriežka s rovnakými kartami.
   ========================================================================== */

#img-catalog {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(210px, 1fr));
	gap: 22px;
	float: none !important;
	width: 100%;
	padding: 0 !important;
	margin: 0;
	text-align: left;
	align-items: stretch;
}

#img-catalog .img-catalog-block {
	display: flex !important;
	flex-direction: column;
	max-width: none !important;
	min-height: 0 !important;
	width: auto !important;
	margin: 0 !important;
	background: #fff;
	border: 1px solid var(--ai-line) !important;
	border-radius: 14px !important;
	overflow: hidden;
	vertical-align: top;
	transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

#img-catalog .img-catalog-block:hover {
	transform: translateY(-4px);
	border-color: #CFE3D7 !important;
	box-shadow: 0 14px 28px rgba(31, 42, 36, .12);
}

#img-catalog .img-catalog-block .img-catalog-image-link {
	display: flex !important;
	flex-direction: column;
	align-items: stretch;
	flex: 1 1 auto;
	float: none !important;
	height: 100%;
	text-decoration: none !important;
}

/* --- obrázok: rovnaká plocha pre všetky kategórie --- */
#img-catalog .img-catalog-block img {
	width: 100% !important;
	max-width: none !important;
	height: 160px !important;
	object-fit: contain;
	object-position: center;
	display: block;
	float: none !important;
	padding: 18px;
	background: #F7F9F8;
	box-sizing: border-box;
	transition: transform .25s ease;
}

/* základná téma dávala tieň priamo na obrázok — tieň patrí karte */
#img-catalog .img-catalog-block:hover img {
	transform: scale(1.05);
	box-shadow: none !important;
}

/* --- textová časť --- */
#img-catalog .img-catalog-block .img-catalog-image-link > span {
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
	float: none !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 16px 18px 20px 18px !important;
	text-align: left !important;
	box-sizing: border-box;
}

#img-catalog .img-catalog-block .img-catalog-image-link > span span {
	float: none !important;
	width: 100% !important;
}

/* názov kategórie */
#img-catalog .img-catalog-block .img-catalog-image-link > span span:first-child {
	font-size: 17px !important;
	line-height: 1.3 !important;
	font-weight: 700 !important;
	color: var(--ai-ink) !important;
	letter-spacing: .1px;
	margin-bottom: 7px;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	transition: color .18s ease;
}

#img-catalog .img-catalog-block:hover .img-catalog-image-link > span span:first-child {
	color: var(--ai-green-dark) !important;
}

/* popis kategórie */
#img-catalog .img-catalog-block .img-catalog-image-link > span span:nth-child(2) {
	font-size: 13.5px !important;
	line-height: 1.5 !important;
	color: var(--ai-muted) !important;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* skryté tlačidlo "Prezrieť" zaberalo prázdne miesto pod kartou */
#img-catalog .img-catalog-block > .button-type-1 {
	display: none !important;
}

@media screen and (max-width:1036px) {
	#img-catalog {
		grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
		gap: 18px;
	}

	#img-catalog .img-catalog-block img {
		height: 140px !important;
	}
}

@media screen and (max-width:800px) {
	#img-catalog {
		display: grid !important;
		flex-direction: initial !important;
		grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
		gap: 14px;
	}

	#img-catalog .img-catalog-block img {
		height: 120px !important;
		padding: 14px;
	}

	#img-catalog .img-catalog-block .img-catalog-image-link > span {
		padding: 13px 14px 16px 14px !important;
	}

	#img-catalog .img-catalog-block .img-catalog-image-link > span span:first-child {
		font-size: 15px !important;
	}

	#img-catalog .img-catalog-block .img-catalog-image-link > span span:nth-child(2) {
		font-size: 12.5px !important;
	}
}

/* ==========================================================================
   5) SEO BOX (úvodná stránka aj kategórie)
   Pôvodne: .info-articles bol display:flex a v kategóriách boli aj odstavce
   display:flex → nadpis a text sa ukladali vedľa seba a vetu s odkazmi to
   rozhádzalo na stĺpce. Teraz: čitateľná karta s normálnym tokom textu.
   ========================================================================== */

#catalog-products-index > .info-articles,
#category-products > .info-articles {
	display: block !important;
	float: none !important;
	clear: both;   /* nadpis kategórie je plávajúci — box sa oň inak obtekal */
	width: 100%;
	max-width: none !important;
	box-sizing: border-box;
	margin: 8px 0 30px 0 !important;
	padding: 32px 38px !important;
	background: #F7F9F8 !important;
	border: 1px solid var(--ai-line);
	border-radius: 16px;
	color: var(--ai-ink) !important;
	text-align: left !important;
}

/* --- nadpisy --- */
#catalog-products-index > .info-articles h1,
#catalog-products-index > .info-articles h2,
#catalog-products-index > .info-articles h3,
#category-products > .info-articles h1,
#category-products > .info-articles h2,
#category-products > .info-articles h3 {
	display: block !important;
	text-align: left !important;
	padding: 0 !important;
	background: none !important;
	color: var(--ai-ink) !important;
	font-weight: 700 !important;
	letter-spacing: -.2px;
}

#catalog-products-index > .info-articles h1,
#catalog-products-index > .info-articles h2:first-child,
#category-products > .info-articles h1,
#category-products > .info-articles h2:first-child {
	position: relative;
	font-size: 26px !important;
	line-height: 1.3 !important;
	margin: 0 0 22px 0 !important;
	padding-bottom: 14px !important;
}

/* zelený akcent pod hlavným nadpisom */
#catalog-products-index > .info-articles h1:after,
#catalog-products-index > .info-articles h2:first-child:after,
#category-products > .info-articles h1:after,
#category-products > .info-articles h2:first-child:after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 56px;
	height: 3px;
	border-radius: 3px;
	background: var(--ai-green);
}

#catalog-products-index > .info-articles h2,
#category-products > .info-articles h2 {
	font-size: 20px !important;
	line-height: 1.35 !important;
	margin: 26px 0 10px 0 !important;
}

#catalog-products-index > .info-articles h3,
#category-products > .info-articles h3 {
	font-size: 17px !important;
	line-height: 1.4 !important;
	margin: 20px 0 8px 0 !important;
}

/* --- text --- */
#catalog-products-index > .info-articles p,
#category-products > .info-articles p {
	display: block !important;   /* v kategóriách bolo flex → rozhádzané vety */
	max-width: none !important;  /* text vypĺňa celú šírku boxu */
	margin: 0 0 14px 0 !important;
	padding: 0 !important;
	font-size: 15.5px !important;
	line-height: 1.8 !important;
	font-weight: 400 !important;
	color: #4B5A52 !important;
	text-align: left !important;
	background: none !important;
}

#catalog-products-index > .info-articles p:last-child,
#category-products > .info-articles p:last-child {
	margin-bottom: 0 !important;
}

/* prázdne odstavce z editora (CSS :empty ich nechytí, ak majú &nbsp;) */
#catalog-products-index > .info-articles p:empty,
#category-products > .info-articles p:empty {
	display: none !important;
}

/* odstavec, ktorý je celý tučný, slúži ako úvodná veta */
#catalog-products-index > .info-articles p > strong:only-child,
#category-products > .info-articles p > strong:only-child {
	display: block;
	font-size: 17px;
	line-height: 1.65;
	font-weight: 600;
	color: var(--ai-ink);
}

#catalog-products-index > .info-articles ul,
#catalog-products-index > .info-articles ol,
#category-products > .info-articles ul,
#category-products > .info-articles ol {
	max-width: none;
	margin: 0 0 14px 22px !important;
	padding: 0;
	color: #4B5A52;
	font-size: 15.5px;
	line-height: 1.8;
}

#catalog-products-index > .info-articles li,
#category-products > .info-articles li {
	margin-bottom: 4px;
}

#catalog-products-index > .info-articles a,
#category-products > .info-articles a {
	color: var(--ai-green-dark) !important;
	text-decoration: underline;
	text-underline-offset: 2px;
}

#catalog-products-index > .info-articles a:hover,
#category-products > .info-articles a:hover {
	color: var(--ai-green) !important;
}

/* obrázok v SEO boxe kategórie */
#category-products > .info-articles div {
	max-height: 340px !important;
	margin-top: 18px;
	border-radius: 10px;
	overflow: hidden;
}

/* odkaz "Zobraziť viac" pod boxom */
#seo-box-show-more-link {
	display: inline-block;
	margin: -18px 0 26px 0;
	font-size: 14px;
	font-weight: 600;
	color: var(--ai-green-dark) !important;
	cursor: pointer;
}

#seo-box-show-more-link:hover {
	text-decoration: underline;
}

@media screen and (max-width:800px) {
	#catalog-products-index > .info-articles,
	#category-products > .info-articles {
		padding: 22px 18px !important;
		margin-bottom: 22px !important;
		border-radius: 12px;
	}

	#catalog-products-index > .info-articles h1,
	#catalog-products-index > .info-articles h2:first-child,
	#category-products > .info-articles h1,
	#category-products > .info-articles h2:first-child {
		font-size: 21px !important;
		margin-bottom: 18px !important;
	}

	#catalog-products-index > .info-articles h2,
	#category-products > .info-articles h2 {
		font-size: 18px !important;
	}

	#catalog-products-index > .info-articles p,
	#category-products > .info-articles p {
		font-size: 15px !important;
		line-height: 1.75 !important;
	}

	#catalog-products-index > .info-articles p > strong:only-child,
	#category-products > .info-articles p > strong:only-child {
		font-size: 16px;
	}
}

/* ==========================================================================
   6) ĽAVÉ MENU KATEGÓRIÍ (#category)
   Pôvodne: holý zoznam bez kontajnera, textové šípky ► / ▼, sivé (#dedede)
   pozadia, podkategórie bez odsadenia. Teraz: karta s hierarchiou a CSS šípkou.
   ========================================================================== */

.span-6 > #category {
	width: 100% !important;
	float: none !important;
	margin: 0 0 22px 0 !important;
	padding: 0 !important;
	box-sizing: border-box;
	background: #fff;
	border: 1px solid var(--ai-line);
	border-radius: 14px;
	overflow: hidden;
}

/* nadpis karty */
.span-6 > #category .category-tree-title {
	display: block;
	margin: 0 !important;
	padding: 14px 18px !important;
	border-bottom: 1px solid var(--ai-line);
	background: #F7F9F8;
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: .8px;
	text-transform: uppercase;
	color: var(--ai-muted) !important;
	line-height: 1.2;
}

.span-6 > #category ul.category-tree {
	margin: 0 !important;
	padding: 8px !important;
	width: 100%;
	box-sizing: border-box;
	list-style: none;
}

/* oddeľovač pod stromom už netreba — kartu ohraničuje rámik */
.span-6 > #category #category-line-spacer {
	display: none !important;
}

/* --- položky 1. úrovne --- */
.span-6 > #category ul li.depth-1,
.span-6 > #category ul li.depth-1-active {
	display: flex !important;
	align-items: center;
	width: 100%;
	box-sizing: border-box;
	margin: 1px 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border-radius: 10px !important;
	transition: background .16s ease;
}

.span-6 > #category ul li.depth-1:hover {
	background: var(--ai-green-soft) !important;
}

.span-6 > #category ul li.depth-1-active {
	background: var(--ai-green-soft) !important;
}

.span-6 > #category ul li.depth-1 > a,
.span-6 > #category ul li.depth-1-active > a {
	order: 1;
	flex: 1 1 auto;
	min-width: 0;
	display: block;
	margin: 0 !important;
	padding: 11px 6px 11px 14px !important;
	font-size: 13.5px !important;
	font-weight: 600 !important;
	line-height: 1.35;
	color: var(--ai-ink) !important;
	text-decoration: none !important;
}

.span-6 > #category ul li.depth-1-active > a,
.span-6 > #category ul li.depth-1:hover > a {
	color: var(--ai-green-dark) !important;
}

/* --- šípka pre rozbalenie podkategórií --- */
.span-6 > #category span.category-tree-left-arrow {
	order: 2;
	flex: 0 0 auto;
	float: none !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 34px;
	align-self: stretch;
	margin: 0 !important;
	font-size: 0 !important;   /* skryje textové ► / ▼ */
	cursor: pointer;
}

.span-6 > #category span.category-tree-left-arrow:before {
	font-family: "Font Awesome 5 Free" !important;
	font-weight: 900;
	content: "\f107";          /* chevron-down */
	font-size: 12px;
	color: #9AA7A0;
	transform: rotate(-90deg);
	transition: transform .2s ease, color .16s ease;
}

.span-6 > #category span.category-tree-left-arrow.is-open:before {
	transform: rotate(0deg);
	color: var(--ai-green);
}

.span-6 > #category li:hover span.category-tree-left-arrow:before {
	color: var(--ai-green-dark);
}

/* --- podkategórie (2. a nižšia úroveň) --- */
.span-6 > #category ul li.depth-2,
.span-6 > #category ul li.depth-2-active,
.span-6 > #category ul li.depth-3,
.span-6 > #category ul li.depth-3-active,
.span-6 > #category ul li.depth-4,
.span-6 > #category ul li.depth-4-active,
.span-6 > #category ul li.depth-5,
.span-6 > #category ul li.depth-5-active {
	width: auto !important;
	box-sizing: border-box;
	margin: 0 0 0 20px !important;
	padding: 0 0 0 12px !important;
	background: transparent !important;
	border-left: 2px solid #EAEFEC;
	border-radius: 0 !important;
}

.span-6 > #category ul li.depth-3,
.span-6 > #category ul li.depth-3-active { margin-left: 32px !important; }

.span-6 > #category ul li.depth-4,
.span-6 > #category ul li.depth-4-active { margin-left: 44px !important; }

.span-6 > #category ul li.depth-5,
.span-6 > #category ul li.depth-5-active { margin-left: 56px !important; }

.span-6 > #category ul li[class*="depth-2"] > a,
.span-6 > #category ul li[class*="depth-3"] > a,
.span-6 > #category ul li[class*="depth-4"] > a,
.span-6 > #category ul li[class*="depth-5"] > a {
	display: block;
	margin: 0 !important;
	padding: 8px 12px !important;
	border-radius: 8px;
	font-size: 13px !important;
	font-weight: 400 !important;
	line-height: 1.4;
	color: #5B6B62 !important;
	text-decoration: none !important;
	transition: background .16s ease, color .16s ease;
}

.span-6 > #category ul li[class*="depth-2"] > a:hover,
.span-6 > #category ul li[class*="depth-3"] > a:hover,
.span-6 > #category ul li[class*="depth-4"] > a:hover,
.span-6 > #category ul li[class*="depth-5"] > a:hover {
	background: var(--ai-green-soft);
	color: var(--ai-green-dark) !important;
}

.span-6 > #category ul li.depth-2-active > a,
.span-6 > #category ul li.depth-3-active > a,
.span-6 > #category ul li.depth-4-active > a,
.span-6 > #category ul li.depth-5-active > a {
	background: var(--ai-green-soft);
	color: var(--ai-green-dark) !important;
	font-weight: 600 !important;
}

/* malé obrázky kategórií, ak sú zapnuté */
.span-6 > #category img.small_image_category {
	max-width: 22px;
	height: auto;
	margin-left: 14px;
}

/* ==========================================================================
   7) OSTATNÉ BOXY V ĽAVOM STĹPCI
   Zjednotenie do rovnakých kariet ako menu kategórií + odstránenie starých
   sprite obrázkov (Images_CMS.png) z newslettera a menín.
   ========================================================================== */

.span-6 > #newsletter,
.span-6 > #name-days,
.span-6 > #short-news-left-content,
.span-6 > .products-in-left-menu,
.span-6 > #eshop-certificate-img-left {
	width: 100% !important;
	height: auto !important;
	min-height: 0 !important;
	float: none !important;
	margin: 0 0 22px 0 !important;
	padding: 0 !important;
	box-sizing: border-box;
	background: #fff !important;
	background-image: none !important;   /* staré sprite pozadia */
	border: 1px solid var(--ai-line) !important;
	border-radius: 14px !important;
	overflow: hidden;
}

/* spoločný vzhľad hlavičky karty */
.span-6 > #newsletter #newsletter_title,
.span-6 > #name-days .title-block,
.span-6 > .products-in-left-menu #most-selled-products-title,
.span-6 > .products-in-left-menu #last-viewed-products-title,
.span-6 > .products-in-left-menu #product-of-day-title {
	display: block !important;
	width: 100% !important;
	box-sizing: border-box;
	margin: 0 !important;
	padding: 14px 18px !important;
	background: #F7F9F8 !important;
	border-bottom: 1px solid var(--ai-line);
	border-radius: 0 !important;
	text-align: left !important;
	overflow: visible !important;
}

.span-6 > #newsletter #newsletter_title,
.span-6 > #name-days .title-block p.title,
.span-6 > .products-in-left-menu #most-selled-products-title p,
.span-6 > .products-in-left-menu #last-viewed-products-title p,
.span-6 > .products-in-left-menu #product-of-day-title p {
	margin: 0 !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: .8px;
	text-transform: uppercase;
	color: var(--ai-muted) !important;
	line-height: 1.2 !important;
	text-align: left !important;
}

/* --- 7a) Newsletter --------------------------------------------------- */

.span-6 > #newsletter #newsletter_text {
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	padding: 16px 18px 12px 18px !important;
	font-size: 13.5px !important;
	line-height: 1.6 !important;
	color: #5B6B62 !important;
}

.span-6 > #newsletter form {
	padding: 0 18px 18px 18px;
}

.span-6 > #newsletter #fieldset-customerToNewsletter {
	display: flex !important;
	align-items: stretch;
	margin: 0;
	padding: 0;
	border: 0;
	background: #F6F8F7;
	border: 1px solid var(--ai-line);
	border-radius: 999px;
	overflow: hidden;
	height: 42px;
}

.span-6 > #newsletter #fieldset-customerToNewsletter:focus-within {
	background: #fff;
	border-color: var(--ai-green);
}

.span-6 > #newsletter .row {
	display: flex;
	align-items: center;
	flex: 1 1 auto;
	min-width: 0;
	width: auto !important;
	margin: 0 !important;
}

.span-6 > #newsletter .row .element {
	width: 100%;
}

.span-6 > #newsletter #email {
	width: 100% !important;
	height: 40px !important;
	line-height: 40px !important;
	margin: 0 !important;
	padding: 0 8px 0 16px !important;
	background: none !important;
	background-image: none !important;   /* pôvodne sprite */
	border: 0 !important;
	outline: none !important;
	box-shadow: none !important;
	font-size: 13.5px !important;
	color: var(--ai-ink) !important;
	box-sizing: border-box;
}

.span-6 > #newsletter #fieldset-customerToNewsletter .buttons {
	display: flex;
	flex: 0 0 auto;
	float: none !important;
}

.span-6 > #newsletter #button-addNewsletter {
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 46px !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	background: var(--ai-green) !important;
	border: 0 !important;
	border-radius: 0 !important;
	transition: background .18s ease;
}

.span-6 > #newsletter #button-addNewsletter:hover {
	background: var(--ai-green-dark) !important;
}

/* šípka odoslania — nahrádza starý sprite */
.span-6 > #newsletter #button-addNewsletter:before {
	font-family: "Font Awesome 5 Free" !important;
	font-weight: 900;
	content: "\f061";
	font-size: 13px;
	color: #fff;
	position: absolute;
	pointer-events: none;
}

.span-6 > #newsletter #addNewsletter {
	width: 46px !important;
	height: 40px !important;
	margin: 0 !important;
	padding: 0 !important;
	background: none !important;
	background-image: none !important;   /* pôvodne sprite */
	border: 0 !important;
	font-size: 0 !important;
	cursor: pointer;
}

.span-6 > #newsletter hr.space {
	display: none !important;
}

/* --- 7b) Meniny ------------------------------------------------------- */

.span-6 > #name-days .content-block {
	margin: 0 !important;
	padding: 16px 18px !important;
	line-height: 1.6 !important;
	text-align: left !important;
}

.span-6 > #name-days .content-block p {
	margin: 0 !important;
	font-size: 13.5px !important;
	color: #5B6B62 !important;
}

.span-6 > #name-days .content-block span {
	float: none !important;
	width: auto !important;
	display: inline !important;
}

.span-6 > #name-days #name-days-show-today,
.span-6 > #name-days #name-days-show-tomorrow {
	color: var(--ai-ink) !important;
	font-weight: 700 !important;
}

/* --- 7c) Certifikát --------------------------------------------------- */

.span-6 > #eshop-certificate-img-left {
	display: flex !important;
	justify-content: center;
	align-items: center;
	padding: 18px !important;
	border-bottom: 1px solid var(--ai-line) !important;
}

.span-6 > #eshop-certificate-img-left img {
	width: 100%;
	max-width: 170px;
	height: auto;
}

/* --- 7d) Produkty v ľavom stĺpci (Najpredávanejšie a pod.) ------------- */

.span-6 > .products-in-left-menu {
	display: block !important;
	padding: 0 !important;
}

.span-6 > .products-in-left-menu .product-third,
.span-6 > .products-in-left-menu .product-second {
	width: auto !important;
	margin: 0 !important;
	padding: 16px !important;
	box-sizing: border-box;
	background: #fff !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}

.span-6 > .products-in-left-menu .product-images img {
	max-width: 100%;
	height: auto;
}

.span-6 > .products-in-left-menu .product-content-title a {
	font-size: 13.5px !important;
	font-weight: 600 !important;
	color: var(--ai-ink) !important;
	line-height: 1.35 !important;
	text-decoration: none !important;
}

.span-6 > .products-in-left-menu .product-content-title a:hover {
	color: var(--ai-green-dark) !important;
}

/* cena sa lámala v strede ("34.90 € s" / "DPH") */
.span-6 > .products-in-left-menu p.price {
	width: 100% !important;
	margin: 10px 0 12px 0 !important;
	text-align: center !important;
}

.span-6 > .products-in-left-menu p.price .normal_price,
.span-6 > .products-in-left-menu p.price .action_price {
	display: block !important;
	width: 100% !important;
	white-space: nowrap;
	font-size: 17px !important;
	font-weight: 700 !important;
	color: var(--ai-ink) !important;
}

.span-6 > .products-in-left-menu p.price .s-dph {
	display: inline !important;
	white-space: nowrap;
	font-size: 11px !important;
	font-weight: 400 !important;
	color: var(--ai-muted) !important;
}

.span-6 > .products-in-left-menu .catalog-delivery_name {
	font-size: 12px !important;
	color: var(--ai-muted) !important;
	text-align: center;
}

/* ==========================================================================
   8) KATALÓG PRODUKTOV V KATEGÓRII (#category-products .catalog-block)
   Pôvodne: inline-block dlaždice 33.3% bez karty, pevná výška nadpisu 34px,
   sivý pás s cenou "plával" v rôznej výške podľa toho, či produkt mal riadok
   "skladom". Teraz: mriežka rovnakých kariet so zarovnaným pätičkovým pásom.
   ========================================================================== */#category-products .catalog-block,
#tips-after-add-to-cart,
#favorites-product {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
	gap: 20px;
	float: none !important;
	width: 100%;
	margin: 24px 0 !important;
	align-items: stretch;
}#category-products .catalog-block > .product-third,
#category-products .catalog-block > .product-second,
#tips-after-add-to-cart > .product-third,
#tips-after-add-to-cart > .product-second,
#favorites-product > .product-third,
#favorites-product > .product-second {
	display: flex !important;
	flex-direction: column;
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	position: relative;
	background: #fff !important;
	border: 1px solid var(--ai-line) !important;
	border-radius: 14px !important;
	overflow: hidden;
	transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}#category-products .catalog-block > .product-third:hover,
#category-products .catalog-block > .product-second:hover,
#tips-after-add-to-cart > .product-third:hover,
#tips-after-add-to-cart > .product-second:hover,
#favorites-product > .product-third:hover,
#favorites-product > .product-second:hover {
	transform: translateY(-3px);
	border-color: #CFE3D7 !important;
	box-shadow: 0 12px 26px rgba(31, 42, 36, .12) !important;
}

/* --- 8a) Obrázok — rovnaká plocha pre všetky produkty ------------------ */#category-products .catalog-block .product-images,
#tips-after-add-to-cart .product-images,
#favorites-product .product-images {
	float: none !important;
	width: 100% !important;
	height: 210px;
	max-height: none !important;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #F7F9F8;
	position: relative;
	overflow: hidden;
}#category-products .catalog-block .product-images > a,
#tips-after-add-to-cart .product-images > a,
#favorites-product .product-images > a {
	float: none !important;
	width: 100% !important;
	height: 100%;
	display: flex !important;
	align-items: center;
	justify-content: center;
	padding: 14px;
	box-sizing: border-box;
}#category-products .catalog-block .product-images img,
#tips-after-add-to-cart .product-images img,
#favorites-product .product-images img {
	width: auto !important;
	height: auto !important;
	max-width: 100% !important;
	max-height: 100% !important;
	object-fit: contain;
	transition: transform .25s ease;
}#category-products .catalog-block > .product-third:hover .product-images img,
#category-products .catalog-block > .product-second:hover .product-images img,
#tips-after-add-to-cart > .product-third:hover .product-images img,
#tips-after-add-to-cart > .product-second:hover .product-images img,
#favorites-product > .product-third:hover .product-images img,
#favorites-product > .product-second:hover .product-images img {
	transform: scale(1.05);
}

/* --- 8b) Štítky (zľava, posledné kusy) -------------------------------- */#category-products .catalog-block .container-product-actions,
#tips-after-add-to-cart .container-product-actions,
#favorites-product .container-product-actions {
	position: absolute;
	top: 10px;
	left: 10px;
	z-index: 3;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 6px;
	width: auto !important;
	height: auto !important;
	pointer-events: none;
}#category-products .catalog-block .container-product-actions > div,
#tips-after-add-to-cart .container-product-actions > div,
#favorites-product .container-product-actions > div {
	float: none !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	background: none !important;
	border-radius: 999px;
	line-height: 0;
}#category-products .catalog-block .container-product-actions > div > span,
#tips-after-add-to-cart .container-product-actions > div > span,
#favorites-product .container-product-actions > div > span {
	display: inline-block;
	float: none !important;
	width: auto !important;
	padding: 5px 11px;
	border-radius: 999px;
	font-size: 11px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	letter-spacing: .2px;
	color: #fff !important;
	white-space: nowrap;
	background: var(--ai-green);   /* predvolené (napr. "Doporučujeme") */
}

/* zľava */#category-products .catalog-block .container-product-actions > div.clear > span,
#tips-after-add-to-cart .container-product-actions > div.clear > span,
#favorites-product .container-product-actions > div.clear > span {
	background: #D8453C;
}

/* posledné kusy */#category-products .catalog-block .container-product-actions > div.last_items > span,
#tips-after-add-to-cart .container-product-actions > div.last_items > span,
#favorites-product .container-product-actions > div.last_items > span {
	background: #E08C1E;
}

/* --- 8c) Obsah karty -------------------------------------------------- */#category-products .catalog-block .product-content,
#tips-after-add-to-cart .product-content,
#favorites-product .product-content {
	display: flex !important;
	flex-direction: column;
	/* základná téma má flex-wrap:wrap — pri smere column by to obsah
	   zalamovalo do druhého stĺpca a orezávalo mimo kartu */
	flex-wrap: nowrap !important;
	flex: 1 1 auto;
	float: none !important;
	width: 100% !important;
	padding: 14px 14px 0 14px !important;
	box-sizing: border-box;
	text-align: center;
}

/* názov — 2 riadky, nie pevných 34px (dlhšie názvy sa orezávali) */#category-products .catalog-block .product-content h4,
#category-products .catalog-block .product-content .product-content-title,
#tips-after-add-to-cart .product-content h4,
#tips-after-add-to-cart .product-content .product-content-title,
#favorites-product .product-content h4,
#favorites-product .product-content .product-content-title {
	flex: 0 0 auto;
	height: auto !important;
	min-height: 38px;
	margin: 0 0 6px 0 !important;
	text-align: center !important;
}#category-products .catalog-block .product-content h4 a,
#category-products .catalog-block .product-content .product-content-title a,
#tips-after-add-to-cart .product-content h4 a,
#tips-after-add-to-cart .product-content .product-content-title a,
#favorites-product .product-content h4 a,
#favorites-product .product-content .product-content-title a {
	float: none !important;
	display: -webkit-box !important;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	font-size: 14px !important;
	font-weight: 600 !important;
	line-height: 1.35 !important;
	color: var(--ai-ink) !important;
	text-decoration: none !important;
	text-transform: none !important;
}#category-products .catalog-block .product-content h4 a:hover,
#category-products .catalog-block .product-content .product-content-title a:hover,
#tips-after-add-to-cart .product-content h4 a:hover,
#tips-after-add-to-cart .product-content .product-content-title a:hover,
#favorites-product .product-content h4 a:hover,
#favorites-product .product-content .product-content-title a:hover {
	color: var(--ai-green-dark) !important;
}

/* dostupnosť + parametre — pevná výška, aby sa pätička kariet zarovnala */#category-products .catalog-block .catalog-delivery_name,
#tips-after-add-to-cart .catalog-delivery_name,
#favorites-product .catalog-delivery_name {
	min-height: 18px;
	margin-bottom: 2px;
	font-size: 11.5px !important;
	font-weight: 600 !important;
	color: var(--ai-green-dark) !important;
	text-align: center;
}#category-products .catalog-block .show-appurtenances,
#tips-after-add-to-cart .show-appurtenances,
#favorites-product .show-appurtenances {
	/* flex-shrink: 0 je dolezite — .product-content je flex column a pri
	   dvoch a viac nalezitostiach (Farba + Velkost) sa blok zmrastil,
	   takze druhy riadok zmizol za patickou s cenou */
	flex: 0 0 auto;
	min-height: 18px;
	/* odstup od paticky s cenou, aby posledna nalezitost nebola nalepena */
	margin-bottom: 14px;
	font-size: 11.5px !important;
	line-height: 1.45 !important;
	color: var(--ai-muted) !important;
}#category-products .catalog-block .show-appurtenances .appurtenances-value,
#tips-after-add-to-cart .show-appurtenances .appurtenances-value,
#favorites-product .show-appurtenances .appurtenances-value {
	font-size: 11.5px !important;
	font-weight: 400 !important;
	color: var(--ai-muted) !important;
}

/* prázdne bloky z editora zbytočne zväčšovali kartu */#category-products .catalog-block .product-content-description:empty,
#category-products .catalog-block .catalog-free-delivery-info:empty,
#category-products .catalog-block .catalog-hours-left-for-actual-price-countdown:empty,
#tips-after-add-to-cart .product-content-description:empty,
#tips-after-add-to-cart .catalog-free-delivery-info:empty,
#tips-after-add-to-cart .catalog-hours-left-for-actual-price-countdown:empty,
#favorites-product .product-content-description:empty,
#favorites-product .catalog-free-delivery-info:empty,
#favorites-product .catalog-hours-left-for-actual-price-countdown:empty {
	display: none !important;
}#category-products .catalog-block .catalog-free-delivery-info,
#tips-after-add-to-cart .catalog-free-delivery-info,
#favorites-product .catalog-free-delivery-info {
	width: auto !important;
	padding: 0 !important;
	line-height: 1.4 !important;
	font-size: 11.5px !important;
	color: var(--ai-green-dark) !important;
}

/* --- 8d) Pätička karty: cena + tlačidlo ------------------------------- */

/* Pätička je ukotvená absolútne na spodok karty — inak by "plávala"
   v rôznej výške podľa toho, koľko riadkov má názov / dostupnosť. */#category-products .catalog-block > .product-third,
#category-products .catalog-block > .product-second,
#tips-after-add-to-cart > .product-third,
#tips-after-add-to-cart > .product-second,
#favorites-product > .product-third,
#favorites-product > .product-second {
	padding-bottom: 62px !important;
}#category-products .catalog-block .product-content .price,
#tips-after-add-to-cart .product-content .price,
#favorites-product .product-content .price {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 50%;
	height: 62px;
	margin: 0 !important;
	padding: 0 6px 0 14px !important;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	justify-content: center;
	background: #F7F9F8 !important;
	border-top: 1px solid var(--ai-line);
	border-radius: 0 !important;
	text-align: left !important;
	float: none !important;
}#category-products .catalog-block .add-cart-catalog,
#tips-after-add-to-cart .add-cart-catalog,
#favorites-product .add-cart-catalog {
	position: absolute;
	right: 0;
	bottom: 0;
	width: 50%;
	height: 62px;
	margin: 0 !important;
	padding: 0 14px 0 6px !important;
	box-sizing: border-box;
	display: flex !important;
	align-items: center;
	justify-content: flex-end;
	background: #F7F9F8 !important;
	border-top: 1px solid var(--ai-line);
	border-radius: 0 !important;
	float: none !important;
}#category-products .catalog-block .product-content .normal_price,
#tips-after-add-to-cart .product-content .normal_price,
#favorites-product .product-content .normal_price {
	float: none !important;
	width: auto !important;
	display: block;
	white-space: nowrap;
	font-size: 17px !important;
	font-weight: 700 !important;
	color: var(--ai-ink) !important;
}#category-products .catalog-block .product-content .old_price,
#tips-after-add-to-cart .product-content .old_price,
#favorites-product .product-content .old_price {
	float: none !important;
	width: auto !important;
	display: block;
	white-space: nowrap;
	font-size: 12.5px !important;
	font-weight: 400 !important;
	line-height: 1.2 !important;
	color: #9AA7A0 !important;
	text-decoration: line-through;
}#category-products .catalog-block .product-content .s-dph,
#tips-after-add-to-cart .product-content .s-dph,
#favorites-product .product-content .s-dph {
	font-size: 10.5px !important;
	font-weight: 400 !important;
	color: var(--ai-muted) !important;
	white-space: nowrap;
}

/* tlačidlo Do košíka — pôvodne #9fe6a0 s bielym textom (slabý kontrast) */#category-products .catalog-block .product-content .button-add-cart-button,
#tips-after-add-to-cart .product-content .button-add-cart-button,
#favorites-product .product-content .button-add-cart-button {
	float: none !important;
	margin: 0 !important;
	padding: 0 14px !important;
	height: 36px;
	display: flex !important;
	align-items: center;
	justify-content: center;
	background: var(--ai-green) !important;
	border: 0 !important;
	border-radius: 9px !important;
	transition: background .18s ease;
}#category-products .catalog-block .product-content .button-add-cart-button:hover,
#tips-after-add-to-cart .product-content .button-add-cart-button:hover,
#favorites-product .product-content .button-add-cart-button:hover {
	background: var(--ai-green-dark) !important;
}#category-products .catalog-block .product-content .button-add-cart-button input,
#tips-after-add-to-cart .product-content .button-add-cart-button input,
#favorites-product .product-content .button-add-cart-button input {
	height: 36px;
	padding: 0 !important;
	margin: 0 !important;
	background: none !important;
	border: 0 !important;
	color: #fff !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	white-space: nowrap;
	cursor: pointer;
}#category-products .catalog-block .add-cart-catalog form,
#category-products .catalog-block .add-cart-catalog fieldset,
#tips-after-add-to-cart .add-cart-catalog form,
#tips-after-add-to-cart .add-cart-catalog fieldset,
#favorites-product .add-cart-catalog form,
#favorites-product .add-cart-catalog fieldset {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

/* --- 8e) Responzívne -------------------------------------------------- */

@media screen and (max-width:1036px) {#category-products .catalog-block,
#tips-after-add-to-cart,
#favorites-product {
		grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
		gap: 16px;
	}#category-products .catalog-block .product-images,
#tips-after-add-to-cart .product-images,
#favorites-product .product-images {
		height: 180px;
	}
}

@media screen and (max-width:800px) {#category-products .catalog-block,
#tips-after-add-to-cart,
#favorites-product {
		grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
		gap: 12px;
	}#category-products .catalog-block > .product-third,
#category-products .catalog-block > .product-second,
#tips-after-add-to-cart > .product-third,
#tips-after-add-to-cart > .product-second,
#favorites-product > .product-third,
#favorites-product > .product-second {
		width: auto !important;
	}#category-products .catalog-block .product-images,
#tips-after-add-to-cart .product-images,
#favorites-product .product-images {
		height: 150px;
	}#category-products .catalog-block > .product-third,
#category-products .catalog-block > .product-second,
#tips-after-add-to-cart > .product-third,
#tips-after-add-to-cart > .product-second,
#favorites-product > .product-third,
#favorites-product > .product-second {
		padding-bottom: 96px !important;
	}#category-products .catalog-block .product-content .price,
#tips-after-add-to-cart .product-content .price,
#favorites-product .product-content .price {
		width: 100%;
		height: 40px;
		bottom: 56px;
		padding: 0 12px !important;
		align-items: center;
		text-align: center !important;
	}#category-products .catalog-block .add-cart-catalog,
#tips-after-add-to-cart .add-cart-catalog,
#favorites-product .add-cart-catalog {
		width: 100%;
		height: 56px;
		padding: 0 12px !important;
		justify-content: center;
		border-top: 0;
	}
}

/* ==========================================================================
   9) OVLÁDACIE PRVKY KATALÓGU — filter, radenie, stránkovanie
   ========================================================================== */

/* --- 9a) Filter podľa parametrov (#catalog-appurtenances) -------------- */

#category-products #catalog-appurtenances {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 14px 0;
	padding: 0;
}

#category-products #catalog-appurtenances .appurtenances-filter-show {
	position: relative;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
}

#category-products #catalog-appurtenances .appurtenances-filter-show > p {
	margin: 0 !important;
	padding: 9px 16px !important;
	background: #fff;
	border: 1px solid var(--ai-line);
	border-radius: 999px;
	font-size: 13px !important;
	font-weight: 500 !important;
	color: var(--ai-ink) !important;
	white-space: nowrap;
	cursor: pointer;
	transition: background .16s ease, border-color .16s ease, color .16s ease;
}

#category-products #catalog-appurtenances .appurtenances-filter-show > p:hover {
	background: var(--ai-green-soft);
	border-color: #CFE3D7;
	color: var(--ai-green-dark) !important;
}

/* --- 9b) Panel nad výpisom (skladom / radenie / počet / cena) ---------- */

#top-category-panel {
	display: flex !important;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px 22px;
	float: none !important;
	width: 100%;
	height: auto !important;
	margin: 0 0 4px 0;
	padding: 12px 16px;
	box-sizing: border-box;
	background: #F7F9F8;
	border: 1px solid var(--ai-line);
	border-radius: 12px;
}

#top-category-panel > div {
	float: none !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	display: flex;
	align-items: center;
	gap: 8px;
}

#top-category-panel .appurtenances-filter-text {
	float: none !important;
	width: auto !important;
	margin: 0 !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	color: var(--ai-muted) !important;
	white-space: nowrap;
}

#top-category-panel select {
	height: 34px;
	width: auto !important;
	margin: 0 !important;
	padding: 0 30px 0 12px !important;
	background: #fff;
	border: 1px solid var(--ai-line) !important;
	border-radius: 8px;
	font-size: 13px;
	color: var(--ai-ink);
	cursor: pointer;
	appearance: none;
	-webkit-appearance: none;
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%236B7B72' d='M1.4 0 6 4.6 10.6 0 12 1.4 6 7.4 0 1.4z'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 11px center;
}

#top-category-panel select:focus {
	outline: none;
	border-color: var(--ai-green) !important;
}

#top-category-panel #top-category-panel-products-on-storage label {
	float: none !important;
	width: auto !important;
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0 !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	color: var(--ai-ink) !important;
	text-decoration: none !important;
	cursor: pointer;
}

#top-category-panel #ProductsOnStorageOnly {
	float: none !important;
	width: 16px;
	height: 16px;
	margin: 0 !important;
	accent-color: var(--ai-green);
	cursor: pointer;
}

/* cenový posuvník */
#top-category-panel #category-price-range-slider,
#top-category-panel .ui-slider {
	width: 170px !important;
	height: 5px !important;
	margin: 0 !important;
	background: #E3E8E5 !important;
	border: 0 !important;
	border-radius: 999px !important;
}

#top-category-panel .ui-slider .ui-slider-range {
	background: var(--ai-green) !important;
	border-radius: 999px;
}

#top-category-panel .ui-slider .ui-slider-handle {
	width: 15px !important;
	height: 15px !important;
	top: -5px !important;
	background: #fff !important;
	border: 2px solid var(--ai-green) !important;
	border-radius: 50% !important;
	cursor: pointer;
	outline: none;
}

#top-category-panel p {
	margin: 0 !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	color: var(--ai-ink) !important;
	white-space: nowrap;
}

/* --- 9c) Stránkovanie -------------------------------------------------- */

.paginationControlTop,
.paginationControl {
	display: flex !important;
	align-items: center;
	justify-content: flex-end;
	gap: 6px;
	float: none !important;
	width: 100% !important;
	margin: 14px 0 !important;
}

.paginationControlTop .page-number,
.paginationControl .page-number {
	width: auto !important;
	margin: 0 !important;
	order: 2;
}

.paginationControlTop .page-number p,
.paginationControl .page-number p {
	margin: 0 !important;
	font-size: 13px !important;
	color: var(--ai-muted) !important;
	white-space: nowrap;
}

.paginationControlTop .page-number-big,
.paginationControl .page-number-big {
	font-weight: 700 !important;
	color: var(--ai-ink) !important;
}

.paginationControlTop .a_paginator_lt,
.paginationControlTop .a_paginator_lt_disabled,
.paginationControl .a_paginator_lt,
.paginationControl .a_paginator_lt_disabled {
	order: 1;
}

.paginationControlTop .a_paginator_gt,
.paginationControlTop .a_paginator_gt_disabled,
.paginationControl .a_paginator_gt,
.paginationControl .a_paginator_gt_disabled {
	order: 3;
}

.paginationControlTop .a_paginator_lt,
.paginationControlTop .a_paginator_gt,
.paginationControlTop .a_paginator_lt_disabled,
.paginationControlTop .a_paginator_gt_disabled,
.paginationControl .a_paginator_lt,
.paginationControl .a_paginator_gt,
.paginationControl .a_paginator_lt_disabled,
.paginationControl .a_paginator_gt_disabled {
	width: 34px !important;
	height: 34px !important;
	margin: 0 !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	background: #fff;
	border: 1px solid var(--ai-line);
	border-radius: 9px;
	transition: background .16s ease, border-color .16s ease;
}

.paginationControlTop .a_paginator_lt:hover,
.paginationControlTop .a_paginator_gt:hover,
.paginationControl .a_paginator_lt:hover,
.paginationControl .a_paginator_gt:hover {
	background: var(--ai-green-soft);
	border-color: #CFE3D7;
}

.paginationControlTop .a_paginator_lt:before,
.paginationControlTop .a_paginator_gt:before,
.paginationControlTop .a_paginator_lt_disabled:before,
.paginationControlTop .a_paginator_gt_disabled:before,
.paginationControl .a_paginator_lt:before,
.paginationControl .a_paginator_gt:before,
.paginationControl .a_paginator_lt_disabled:before,
.paginationControl .a_paginator_gt_disabled:before {
	padding: 0 !important;
	font-size: 14px !important;
	color: var(--ai-ink) !important;
}

@media screen and (max-width:800px) {
	#top-category-panel {
		gap: 10px 14px;
		padding: 12px;
	}

	#category-products #catalog-appurtenances {
		gap: 6px;
	}

	#category-products #catalog-appurtenances .appurtenances-filter-show > p {
		padding: 8px 13px !important;
		font-size: 12.5px !important;
	}
}

/* ==========================================================================
   10) DETAIL PRODUKTU (#detail)
   ========================================================================== */

#detail #gallery,
#detail #product-detail {
	box-sizing: border-box;
}

/* --- 10a) Nadpis, kód, hodnotenie ------------------------------------- */

#detail #gallery h1 {
	margin: 0 0 10px 0 !important;
	font-size: 26px !important;
	line-height: 1.25 !important;
	font-weight: 700 !important;
	color: var(--ai-ink) !important;
	letter-spacing: -.3px;
}

#detail #container-detail-code-and-evaluation {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px 16px;
	margin-bottom: 16px;
	padding-bottom: 14px;
	border-bottom: 1px solid var(--ai-line);
}

#detail #detail-code-product {
	margin: 0 !important;
	font-size: 12.5px !important;
	color: var(--ai-muted) !important;
}

#detail .evalution {
	display: flex !important;
	align-items: center;
	gap: 3px;
	margin: 0 !important;
}

#detail .evalution p {
	margin: 0 0 0 6px !important;
	font-size: 12.5px !important;
	color: var(--ai-muted) !important;
}

/* --- 10b) Galéria ----------------------------------------------------- */

#detail #gallery .galleries {
	display: flex !important;
	flex-direction: column;
	gap: 12px;
	width: 100%;
}

#detail #gallery .top-photo {
	position: relative;
	width: 100% !important;
	height: 380px !important;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #F7F9F8;
	border: 1px solid var(--ai-line);
	border-radius: 14px;
	overflow: hidden;
	box-sizing: border-box;
}

#detail #gallery .top-photo > a {
	width: 100%;
	height: 100%;
	display: flex !important;
	align-items: center;
	justify-content: center;
	padding: 20px;
	box-sizing: border-box;
}

#detail #gallery .top-photo img {
	width: auto !important;
	height: auto !important;
	max-width: 100% !important;
	max-height: 100% !important;
	object-fit: contain;
}

/* štítky ("Doporučujeme", zľava…) — obal je len pozicovací, pilulka je vnútri */
#detail #gallery .top-photo > div {
	position: absolute;
	top: 12px;
	left: 12px;
	z-index: 2;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	background: none !important;
	line-height: 0;
}

#detail #gallery .top-photo .container-product-actions {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 6px;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	background: none !important;
}

#detail #gallery .top-photo .container-product-actions > div {
	float: none !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	padding: 5px 12px !important;
	border-radius: 999px !important;
	background: var(--ai-green) !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;
	color: #fff !important;
	white-space: nowrap;
}

#detail #gallery .top-photo .container-product-actions > div span {
	float: none !important;
	width: auto !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	color: #fff !important;
}

#detail #gallery .top-photo .container-product-actions > div.clear {
	background: #D8453C !important;
}

#detail #gallery .top-photo .container-product-actions > div.last_items {
	background: #E08C1E !important;
}

#detail #gallery .other-photo {
	display: flex !important;
	flex-wrap: wrap;
	gap: 10px;
	width: 100% !important;
}

#detail #gallery .other-photo a {
	width: 76px;
	height: 76px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 6px;
	box-sizing: border-box;
	background: #F7F9F8;
	border: 1px solid var(--ai-line);
	border-radius: 10px;
	overflow: hidden;
	transition: border-color .16s ease;
}

#detail #gallery .other-photo a:hover {
	border-color: var(--ai-green);
}

#detail #gallery .other-photo img {
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
	object-fit: contain;
}

/* --- 10c) Nákupný panel (cena + do košíka) ---------------------------- */

#detail #price-block {
	background: #fff !important;
	border: 1px solid var(--ai-line);
	border-radius: 14px !important;
	padding: 20px !important;
	margin: 0 0 16px 0 !important;
	box-sizing: border-box;
}

#detail #price-block .detail-old-and-actual-price {
	width: 100% !important;
	margin: 0 0 16px 0 !important;
	padding: 0 !important;
}

#detail #price-block p.price {
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 2px;
}

#detail #price-block .normal_price {
	width: auto !important;
	font-size: 30px !important;
	font-weight: 700 !important;
	line-height: 1.15 !important;
	color: var(--ai-ink) !important;
	white-space: nowrap;
}

#detail #price-block .old_price {
	width: auto !important;
	font-size: 15px !important;
	font-weight: 400 !important;
	color: #9AA7A0 !important;
	text-decoration: line-through;
}

#detail #price-block .s-dph {
	font-size: 12.5px !important;
	font-weight: 400 !important;
	color: var(--ai-muted) !important;
}

#detail .detail-add-to-cart-all {
	width: 100% !important;
	display: flex !important;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
	margin: 0 !important;
	padding: 0 !important;
}

#detail #price-block #count.mini-imput-text {
	width: 62px !important;
	height: 48px !important;
	margin: 0 !important;
	padding: 0 10px !important;
	background: #fff !important;
	border: 1px solid var(--ai-line) !important;
	border-radius: 10px !important;
	font-size: 15px !important;
	font-weight: 600;
	text-align: center;
	color: var(--ai-ink) !important;
	box-sizing: border-box;
}

#detail #price-block #count.mini-imput-text:focus {
	outline: none;
	border-color: var(--ai-green) !important;
}

#detail #price-block .mini-imput-label {
	width: auto !important;
	margin: 0 !important;
	font-size: 13px !important;
	color: var(--ai-muted) !important;
	white-space: nowrap;
}

#detail #price-block .add-cart {
	flex: 1 1 180px;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
}

/* tlačidlo bolo bledozelené (#9fe6a0) s bielym textom — slabý kontrast */
#detail #price-block #button-add-cart-button {
	width: 100% !important;
	height: 48px !important;
	margin: 0 !important;
	padding: 0 !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	background: var(--ai-green) !important;
	border: 0 !important;
	border-radius: 10px !important;
	transition: background .18s ease;
}

#detail #price-block #button-add-cart-button:hover {
	background: var(--ai-green-dark) !important;
}

#detail #price-block #add-cart-button {
	width: 100% !important;
	height: 48px !important;
	margin: 0 !important;
	padding: 0 !important;
	background: none !important;
	border: 0 !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	color: #fff !important;
	cursor: pointer;
}

/* --- 10d) Výber varianty (Farba, Veľkosť) ----------------------------- */

#detail .param-product-select {
	margin: 0 0 16px 0 !important;
	padding: 20px !important;
	background: #fff;
	border: 1px solid var(--ai-line);
	border-radius: 14px;
	box-sizing: border-box;
}

#detail .param-product-select-row {
	display: flex !important;
	flex-direction: column;
	gap: 16px;
	width: 100% !important;
	background: none !important;   /* mala sivé pozadie vnútri bielej karty */
	padding: 0 !important;
	margin: 0 !important;
	border-radius: 0 !important;
}

#detail .param-product-select-row-single {
	width: 100% !important;
	margin: 0 !important;
}

#detail .param-product-select-row-1 {
	width: 100% !important;
	margin: 0 0 8px 0 !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: .6px;
	text-transform: uppercase;
	color: var(--ai-muted) !important;
}

#detail .param-product-select-row-2 {
	display: flex !important;
	flex-wrap: wrap;
	gap: 8px;
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
}

#detail .param-product-select-row-2 > div {
	width: auto !important;
	min-width: 44px;
	height: auto !important;
	margin: 0 !important;
	padding: 9px 14px !important;
	background: #fff !important;
	border: 1px solid var(--ai-line) !important;
	border-radius: 10px !important;
	font-size: 13.5px !important;
	font-weight: 500;
	color: var(--ai-ink) !important;
	text-align: center;
	cursor: pointer;
	transition: border-color .16s ease, background .16s ease, color .16s ease;
}

#detail .param-product-select-row-2 > div:hover {
	border-color: var(--ai-green) !important;
	background: var(--ai-green-soft) !important;
	color: var(--ai-green-dark) !important;
}

/* Zvolenu moznost oznacuje script.min.js triedou
   param-product-select-row-active — nie .active ani .selected. */
#detail .param-product-select-row-2 > div.param-product-select-row-active {
	border-color: var(--ai-green) !important;
	background: var(--ai-green-soft) !important;
	color: var(--ai-green-dark) !important;
	font-weight: 700;
	box-shadow: 0 0 0 1px var(--ai-green);
}

/* fajka pri zvolenej moznosti, aby bol vyber jednoznacny */
#detail .param-product-select-row-2 > div.param-product-select-row-active:after {
	content: "\f00c";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	margin-left: 7px;
	font-size: 10px;
	vertical-align: 1px;
}

#detail .param-product-select hr.space,
#detail .param-product-select hr.dotted {
	display: none !important;
}

/* --- 10e) Tabuľky (skladová dostupnosť, parametre) -------------------- */

#detail .appurtenancesGraphicStorageTable,
#detail .param-product table {
	width: 100% !important;
	margin: 0 0 16px 0 !important;
	background: #fff !important;
	border: 1px solid var(--ai-line) !important;
	border-radius: 12px !important;
	border-collapse: separate !important;
	border-spacing: 0 !important;
	overflow: hidden;
	font-size: 13.5px;
}

#detail .appurtenancesGraphicStorageTable th,
#detail .param-product table th {
	padding: 11px 16px !important;
	background: #F7F9F8 !important;
	border: 0 !important;
	border-bottom: 1px solid var(--ai-line) !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: .5px;
	text-transform: uppercase;
	color: var(--ai-muted) !important;
	text-align: left;
}

#detail .appurtenancesGraphicStorageTable td,
#detail .param-product table td {
	padding: 10px 16px !important;
	background: none !important;
	border: 0 !important;
	border-bottom: 1px solid #F0F3F1 !important;
	color: var(--ai-ink) !important;
	vertical-align: middle;
}

#detail .appurtenancesGraphicStorageTable tr:last-child td,
#detail .param-product table tr:last-child td {
	border-bottom: 0 !important;
}

#detail .param-product table td:first-child {
	width: 42%;
	font-weight: 600;
	color: var(--ai-muted) !important;
}

#detail .param-product {
	border: 0 !important;
	margin-top: 16px;
}

/* --- 10f) Dostupnosť a popis ------------------------------------------ */

#detail .delivery > p {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0 0 16px 0 !important;
	padding: 12px 16px;
	background: var(--ai-green-soft);
	border-radius: 10px;
	font-size: 13.5px !important;
	font-weight: 600 !important;
	color: var(--ai-green-dark) !important;
}

#detail .delivery > p .icon-cart-delivery {
	flex: 0 0 auto;
}

#detail #description {
	margin: 0 0 16px 0 !important;
	padding: 18px 20px !important;
	background: #F7F9F8 !important;
	border: 1px solid var(--ai-line);
	border-radius: 12px !important;
	font-size: 14px !important;
	line-height: 1.7 !important;
	color: #4B5A52 !important;
	text-align: left !important;
	box-sizing: border-box;
}

/* --- 10g) Odkazy pod galériou (upozorniť, otázka, obľúbené…) ---------- */

#detail .info-links {
	width: 100% !important;
	margin: 18px 0 0 0 !important;
	padding: 8px 0 !important;
	border-top: 1px solid var(--ai-line);
}

#detail .info-links ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

#detail .info-links li,
#detail .info-links > div,
#detail .info-links > p {
	margin: 0 !important;
	padding: 0 !important;
}

#detail .info-links a {
	display: inline-flex;
	align-items: center;
	padding: 7px 6px !important;
	font-size: 13px !important;
	color: #4B5A52 !important;
	text-decoration: none !important;
	border-radius: 8px;
	transition: color .16s ease;
}

#detail .info-links a:hover {
	color: var(--ai-green-dark) !important;
}

/* --- 10h) Responzívne -------------------------------------------------- */

@media screen and (max-width:800px) {
	#detail #gallery h1 {
		font-size: 21px !important;
	}

	#detail #gallery .top-photo {
		height: 280px !important;
	}

	#detail #price-block,
	#detail .param-product-select {
		padding: 16px !important;
	}

	#detail #price-block .normal_price {
		font-size: 25px !important;
	}

	#detail #price-block .add-cart {
		flex: 1 1 100%;
	}
}

/* --- 10i) Tabuľka parametrov produktu (.param-product — sú to divy) ---- */

#detail .param-product {
	margin: 0 0 16px 0 !important;
	padding: 0 !important;
	border: 1px solid var(--ai-line) !important;
	border-radius: 12px !important;
	overflow: hidden;
	background: #fff;
	box-sizing: border-box;
}

#detail .param-product .param-product-row {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-bottom: 1px solid #F0F3F1 !important;
	background: #fff !important;
}

#detail .param-product .param-product-row:last-child {
	border-bottom: 0 !important;
}

#detail .param-product .param-product-row:nth-child(even) {
	background: #FAFCFB !important;
}

#detail .param-product .param-product-row > p {
	display: flex !important;
	align-items: stretch;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

#detail .param-product .param-product-row .title {
	flex: 0 0 42%;
	width: auto !important;
	padding: 11px 16px !important;
	border: 0 !important;
	box-sizing: border-box;
	font-size: 13.5px !important;
	font-weight: 600 !important;
	color: var(--ai-muted) !important;
}

#detail .param-product .param-product-row .text {
	flex: 1 1 auto;
	width: auto !important;
	padding: 11px 16px !important;
	border: 0 !important;
	box-sizing: border-box;
	font-size: 13.5px !important;
	color: var(--ai-ink) !important;
}

/* --- 10j) Odstránenie prázdneho miesta nad detailom -------------------
   #gallery malo padding-top:40px, navyše prvý <hr class="space"> pridával
   ďalších ~24px a #product-detail mal margin-top:60px (pravý stĺpec
   začínal nižšie ako ľavý). */

#detail #gallery {
	padding-top: 0 !important;
}

#detail #gallery > hr.space:first-child {
	display: none !important;
}

#detail #product-detail {
	margin-top: 0 !important;
	margin-bottom: 30px !important;
}

/* ==========================================================================
   11) NEWSLETTER NAD PÄTIČKOU (#container-newsletter)
   Pôvodne: biely pruh bez ohraničenia, e-mail a tlačidlo zlepené v jednom
   hranatom bloku, nadpis veľkými písmenami cez pol šírky.
   ========================================================================== */

#container-newsletter {
	display: flex !important;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 20px 32px;
	float: none !important;
	width: auto !important;
	max-width: 1160px !important;
	height: auto !important;
	margin: 30px auto 40px auto !important;
	padding: 30px 34px !important;
	box-sizing: border-box;
	background: var(--ai-green-soft) !important;
	background-image: none !important;   /* pôvodne fotka na pozadí */
	border: 1px solid #D3EADC !important;
	border-radius: 18px !important;
	text-align: left !important;
	overflow: visible !important;
}

/* obálka pred textom */
#container-newsletter:before {
	font-family: "Font Awesome 5 Free" !important;
	font-weight: 900;
	content: "\f0e0";
	flex: 0 0 auto;
	width: 52px;
	height: 52px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #fff;
	border-radius: 50%;
	font-size: 20px;
	color: var(--ai-green) !important;
}

#container-newsletter p {
	flex: 1 1 300px;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	font-size: 19px !important;
	line-height: 1.4 !important;
	font-weight: 700 !important;
	color: var(--ai-ink) !important;
	text-align: left !important;
	text-transform: none;
}

#container-newsletter form {
	flex: 0 1 400px;
	width: auto !important;
	max-width: 400px !important;
	margin: 0;
}

#container-newsletter .myform,
#container-newsletter #fieldset-customerToNewsletter {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

#container-newsletter #fieldset-customerToNewsletter {
	display: flex !important;
	align-items: stretch;
	height: 50px;
	background: #fff;
	border: 1px solid #D3EADC;
	border-radius: 999px;
	overflow: hidden;
	transition: border-color .18s ease, box-shadow .18s ease;
}

#container-newsletter #fieldset-customerToNewsletter:focus-within {
	border-color: var(--ai-green);
	box-shadow: 0 0 0 3px rgba(74, 169, 108, .14);
}

#container-newsletter .row {
	display: flex;
	align-items: center;
	flex: 1 1 auto;
	min-width: 0;
	width: auto !important;
	margin: 0 !important;
	float: none !important;
}

#container-newsletter .element {
	width: 100% !important;
	float: none !important;
}

#container-newsletter input#email {
	width: 100% !important;
	height: 48px !important;
	line-height: 48px !important;
	margin: 0 !important;
	padding: 0 10px 0 20px !important;
	background: none !important;
	border: 0 !important;
	border-radius: 0 !important;
	outline: none !important;
	box-shadow: none !important;
	font-size: 14px !important;
	color: var(--ai-ink) !important;
	box-sizing: border-box;
	float: none !important;
}

#container-newsletter input#email::placeholder {
	color: #9AA7A0;
}

#container-newsletter .buttons {
	display: flex !important;
	flex: 0 0 auto;
	float: none !important;
}

#container-newsletter .button-type-1 {
	display: flex !important;
	align-items: center;
	justify-content: center;
	height: 48px !important;
	margin: 0 !important;
	padding: 0 !important;
	background: var(--ai-green) !important;
	border: 0 !important;
	border-radius: 0 !important;
	float: none !important;
	transition: background .18s ease;
}

#container-newsletter .button-type-1:hover {
	background: var(--ai-green-dark) !important;
}

#container-newsletter #addNewsletter {
	height: 48px !important;
	margin: 0 !important;
	padding: 0 24px !important;
	background: none !important;
	border: 0 !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	color: #fff !important;
	white-space: nowrap;
	cursor: pointer;
	float: none !important;
}

@media screen and (max-width:800px) {
	#container-newsletter {
		flex-direction: row;
		gap: 14px 16px;
		margin: 20px 16px 26px 16px !important;
		padding: 22px 18px !important;
		border-radius: 14px !important;
	}

	#container-newsletter:before {
		width: 42px;
		height: 42px;
		font-size: 17px;
	}

	#container-newsletter p {
		flex: 1 1 200px;
		font-size: 16px !important;
		text-align: left !important;
	}

	#container-newsletter form {
		flex: 1 1 100%;
		max-width: none !important;
	}

	#container-newsletter #addNewsletter {
		padding: 0 18px !important;
	}
}

/* --- oprava: profilové menu v zelenej lište pretekalo mimo obrazovku ----
   Okno je zarovnané doprava (right:0), čo sedí pre tlačidlo v hlavičke
   (je vpravo), ale v hornej lište je tlačidlo pri ľavom okraji — tam
   musí byť okno zarovnané doľava. */

#container-top-header-strip #top-header-login-list ul#user_menu ul.profile-menu-window {
	left: 0;
	right: auto;
}

/* Tlačidlo profilu je vo vnútri plávajúce, takže ul#user_menu malo výšku 0
   a rozbaľovacie okno (top:100%) sa kreslilo cez text "Môj profil".
   flow-root vytvorí nový blokový kontext — ul dostane reálnu výšku,
   ale absolútne pozicované okno sa (na rozdiel od overflow:hidden) neoreže. */
#container-top-header-strip #top-header-login-list ul#user_menu,
#header #head-login ul#user_menu {
	display: flow-root !important;
}

/* ==========================================================================
   12) PRIHLÁSENIE POUŽÍVATEĽA (body.users-login)
   Pôvodne: formulár voľne v širokej ploche, prázdny <dt> vysoký 82px,
   úzke polia (188px), čierne tlačidlo, červené odkazy.
   ========================================================================== */

/* základná téma má .users-login .span-25 > .content{max-width:1000px}
   (3 triedy) — preto !important */
body.users-login .content {
	max-width: 520px !important;
	margin: 0 auto !important;
	padding: 6px 0 46px 0;
	box-sizing: border-box;
}

body.users-login h1.new-reg-info {
	width: 100% !important;
	margin: 0 0 18px 0 !important;
	padding: 0 !important;
	font-size: 25px !important;
	line-height: 1.3 !important;
	font-weight: 700 !important;
	color: var(--ai-ink) !important;
	text-align: center !important;
}

body.users-login .new-reg {
	width: 100% !important;
	float: none !important;
}

/* --- informačný panel --- */

body.users-login #info-block.info-block-registration {
	float: none !important;
	width: 100% !important;
	height: auto !important;
	margin: 0 0 16px 0 !important;
	padding: 14px 16px !important;
	box-sizing: border-box;
	background: var(--ai-green-soft);
	border: 1px solid #D3EADC;
	border-radius: 12px;
}

/* text a <b> sú súrodenci — pri display:flex by z nich boli dva stĺpce,
   preto ikonu pozicujeme absolútne a text necháme plynúť inline */
body.users-login #info-block p {
	position: relative;
	display: block !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 0 0 30px !important;
	box-sizing: border-box;
	font-size: 12.5px !important;
	line-height: 1.6 !important;
	color: #4B5A52 !important;
	text-align: left !important;
}

body.users-login #info-block p b {
	font-weight: 600 !important;
	color: var(--ai-ink) !important;
}

body.users-login #info-block span.info {
	position: absolute;
	left: 0;
	top: 1px;
	float: none !important;
	width: 20px !important;
	height: 20px !important;
	margin: 0 !important;
}

body.users-login #info-block p b {
	display: inline;
}

/* automatické vypĺňanie v Chrome prefarbovalo polia na modro */
body.users-login #fieldset-users input:-webkit-autofill,
body.users-login #fieldset-users input:-webkit-autofill:hover,
body.users-login #fieldset-users input:-webkit-autofill:focus {
	-webkit-box-shadow: 0 0 0 40px #F6F8F7 inset !important;
	-webkit-text-fill-color: var(--ai-ink) !important;
	caret-color: var(--ai-ink);
}

/* --- karta s formulárom --- */

body.users-login #registration-form {
	width: 100% !important;
	float: none !important;
	margin: 0 !important;
	padding: 26px !important;
	box-sizing: border-box;
	background: #fff;
	border: 1px solid var(--ai-line);
	border-radius: 16px;
}

body.users-login #registration-form form,
body.users-login #registration-form .myform,
body.users-login #fieldset-users {
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

/* prázdny <dt> zaberal 82px */
body.users-login #users-label {
	display: none !important;
}

body.users-login #users-element {
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.users-login #fieldset-users dl {
	display: block !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.users-login #fieldset-users .row {
	display: block !important;
	width: 100% !important;
	margin: 0 0 12px 0 !important;
	padding: 0 !important;
	float: none !important;
}

/* #fieldset-users .element malo max-width:188px, ktorý orezával šírku */
body.users-login #fieldset-users .row .element {
	width: 100% !important;
	max-width: none !important;
	float: none !important;
	margin: 0 !important;
}

body.users-login #fieldset-users input[type="text"],
body.users-login #fieldset-users input[type="password"],
body.users-login #fieldset-users input[type="email"] {
	width: 100% !important;
	max-width: none !important;
	height: 46px !important;
	line-height: 46px !important;
	margin: 0 !important;
	padding: 0 16px !important;
	box-sizing: border-box;
	float: none !important;
	background: #F6F8F7 !important;
	border: 1px solid var(--ai-line) !important;
	border-radius: 10px !important;
	font-size: 14px !important;
	color: var(--ai-ink) !important;
	transition: border-color .16s ease, box-shadow .16s ease, background .16s ease;
}

body.users-login #fieldset-users input[type="text"]:focus,
body.users-login #fieldset-users input[type="password"]:focus,
body.users-login #fieldset-users input[type="email"]:focus {
	outline: none;
	background: #fff !important;
	border-color: var(--ai-green) !important;
	box-shadow: 0 0 0 3px rgba(74, 169, 108, .14);
}

body.users-login #fieldset-users input::placeholder {
	color: #9AA7A0;
}

/* --- tlačidlo (pôvodne čierne #333) --- */

body.users-login #fieldset-users .buttons {
	display: block !important;
	width: 100% !important;
	margin: 4px 0 0 0 !important;
	padding: 0 !important;
	float: none !important;
}

body.users-login #button-login {
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 100% !important;
	height: 48px !important;
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
	background: var(--ai-green) !important;
	border: 0 !important;
	border-radius: 10px !important;
	transition: background .18s ease;
}

body.users-login #button-login:hover {
	background: var(--ai-green-dark) !important;
}

body.users-login #login {
	width: 100% !important;
	height: 48px !important;
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
	background: none !important;
	border: 0 !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	color: #fff !important;
	cursor: pointer;
}

/* --- poznámky pod formulárom --- */

body.users-login #registration-form hr.space {
	display: none !important;
}

body.users-login .login-tip {
	width: 100% !important;
	margin: 16px 0 0 0 !important;
	padding: 0 !important;
	font-size: 12.5px !important;
	line-height: 1.6 !important;
	color: var(--ai-muted) !important;
	text-align: center !important;
}

body.users-login .login-tip + .login-tip {
	margin-top: 8px !important;
}

body.users-login .login-tip span {
	font-weight: 600;
	color: var(--ai-ink) !important;
}

body.users-login .login-tip a {
	color: var(--ai-green-dark) !important;
	font-weight: 600;
	text-decoration: none !important;
}

body.users-login .login-tip a:hover {
	text-decoration: underline !important;
}

@media screen and (max-width:800px) {
	body.users-login .content {
		max-width: none;
		padding: 6px 16px 34px 16px;
	}

	body.users-login #registration-form {
		padding: 20px !important;
	}

	body.users-login h1.new-reg-info {
		font-size: 21px !important;
	}
}

/* ==========================================================================
   13) REGISTRÁCIA (body.users-registration)
   Formulár vľavo v karte, panel s výhodami vpravo.
   ========================================================================== */

body.users-registration .content {
	max-width: 1160px !important;
	margin: 0 auto !important;
	padding: 6px 0 46px 0;
	box-sizing: border-box;
}

body.users-registration h1.new-reg-info {
	width: 100% !important;
	margin: 0 0 16px 0 !important;
	padding: 0 !important;
	font-size: 25px !important;
	line-height: 1.3 !important;
	font-weight: 700 !important;
	color: var(--ai-ink) !important;
	text-align: left !important;
}

body.users-registration #info-block.info-block-registration-registration {
	position: relative;
	float: none !important;
	width: 100% !important;
	height: auto !important;
	margin: 0 0 20px 0 !important;
	padding: 14px 16px !important;
	box-sizing: border-box;
	background: #F7F9F8;
	border: 1px solid var(--ai-line);
	border-radius: 12px;
}

body.users-registration #info-block p {
	position: relative;
	display: block !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 0 0 30px !important;
	box-sizing: border-box;
	font-size: 12.5px !important;
	line-height: 1.6 !important;
	color: #4B5A52 !important;
	text-align: left !important;
}

body.users-registration #info-block span.info {
	position: absolute;
	left: 0;
	top: 1px;
	float: none !important;
	width: 20px !important;
	height: 20px !important;
	margin: 0 !important;
}

/* --- 13a) Dvojstĺpcové rozloženie -------------------------------------- */

#registration-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 320px;
	align-items: start;
	gap: 24px;
	width: 100%;
}

body.users-registration #show-registration-form {
	width: auto !important;
	min-width: 0;
	margin: 0 !important;
	padding: 26px !important;
	box-sizing: border-box;
	background: #fff;
	border: 1px solid var(--ai-line);
	border-radius: 16px;
}

/* --- 13b) Panel s výhodami --------------------------------------------- */

#registration-benefits {
	position: sticky;
	top: 20px;
	padding: 22px;
	box-sizing: border-box;
	background: var(--ai-green-soft);
	border: 1px solid #D3EADC;
	border-radius: 16px;
}

#registration-benefits .registration-benefits-title {
	margin: 0 0 16px 0 !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	color: var(--ai-ink) !important;
}

#registration-benefits ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

#registration-benefits li {
	position: relative;
	margin: 0 0 14px 0;
	padding: 0 0 0 30px;
	list-style: none;
}

#registration-benefits li:last-child {
	margin-bottom: 0;
}

#registration-benefits li:before {
	font-family: "Font Awesome 5 Free" !important;
	font-weight: 900;
	position: absolute;
	left: 0;
	top: 1px;
	width: 20px;
	text-align: center;
	font-size: 13px;
	color: var(--ai-green);
}

#registration-benefits li.rb-fast:before      { content: "\f0e7"; }  /* blesk */
#registration-benefits li.rb-orders:before    { content: "\f0ae"; }  /* zoznam */
#registration-benefits li.rb-favorites:before { content: "\f004"; }  /* srdce */
#registration-benefits li.rb-discounts:before { content: "\f02b"; }  /* štítok */
#registration-benefits li.rb-news:before      { content: "\f0e0"; }  /* obálka */

#registration-benefits li strong {
	display: block;
	font-size: 13.5px;
	font-weight: 700;
	line-height: 1.35;
	color: var(--ai-ink);
}

#registration-benefits li span {
	display: block;
	margin-top: 2px;
	font-size: 12.5px;
	line-height: 1.5;
	color: #4B5A52;
}

#registration-benefits .registration-benefits-note {
	margin: 16px 0 0 0 !important;
	padding-top: 14px;
	border-top: 1px solid #D3EADC;
	font-size: 12px !important;
	line-height: 1.5 !important;
	color: var(--ai-muted) !important;
}

/* --- 13c) Formulár ------------------------------------------------------ */

body.users-registration #show-registration-form form,
body.users-registration #show-registration-form .myform {
	width: 100% !important;
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.users-registration #show-registration-form fieldset,
body.users-registration #show-registration-form dd {
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

body.users-registration #show-registration-form dl {
	display: flow-root;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* nadpisy sekcií (Dodacia adresa a pod.) */
body.users-registration #show-registration-form dt {
	width: 100% !important;
	margin: 22px 0 0 0 !important;
	padding: 0 !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: .6px;
	text-transform: uppercase;
	color: var(--ai-muted) !important;
}

body.users-registration #show-registration-form dt:empty {
	display: none !important;
}

body.users-registration #show-registration-form #registration-label {
	display: none !important;
}

/* polia */
body.users-registration #show-registration-form .element {
	width: 100% !important;
	max-width: none !important;
	float: none !important;
	margin: 0 !important;
}

body.users-registration #show-registration-form input[type="text"],
body.users-registration #show-registration-form input[type="password"],
body.users-registration #show-registration-form input[type="email"],
body.users-registration #show-registration-form input[type="tel"],
body.users-registration #show-registration-form select {
	width: 100% !important;
	max-width: none !important;
	height: 46px !important;
	line-height: 46px !important;
	margin: 0 !important;
	padding: 0 14px !important;
	box-sizing: border-box;
	float: none !important;
	background: #F6F8F7 !important;
	border: 1px solid var(--ai-line) !important;
	border-radius: 10px !important;
	font-size: 13.5px !important;
	color: var(--ai-ink) !important;
	transition: border-color .16s ease, box-shadow .16s ease, background .16s ease;
}

body.users-registration #show-registration-form select {
	line-height: normal !important;
	appearance: none;
	-webkit-appearance: none;
	padding-right: 34px !important;
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%236B7B72' d='M1.4 0 6 4.6 10.6 0 12 1.4 6 7.4 0 1.4z'/%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important;
	background-position: right 13px center !important;
	cursor: pointer;
}

body.users-registration #show-registration-form input:focus,
body.users-registration #show-registration-form select:focus {
	outline: none;
	background-color: #fff !important;
	border-color: var(--ai-green) !important;
	box-shadow: 0 0 0 3px rgba(74, 169, 108, .14);
}

body.users-registration #show-registration-form input::placeholder {
	color: #9AA7A0;
}

body.users-registration #show-registration-form input:-webkit-autofill,
body.users-registration #show-registration-form input:-webkit-autofill:hover,
body.users-registration #show-registration-form input:-webkit-autofill:focus {
	-webkit-box-shadow: 0 0 0 40px #F6F8F7 inset !important;
	-webkit-text-fill-color: var(--ai-ink) !important;
}

/* riadky — pôvodné 49/59/39 % percentá zachovávame, len zjednotíme medzery */
body.users-registration #show-registration-form .row-medium,
body.users-registration #show-registration-form .row-medium-margin,
body.users-registration #show-registration-form .row-big,
body.users-registration #show-registration-form .row-small,
body.users-registration #show-registration-form .row-full {
	margin-top: 12px !important;
	margin-bottom: 0 !important;
}

body.users-registration #show-registration-form .row-medium-margin,
body.users-registration #show-registration-form .row-big {
	margin-right: 2% !important;
}

/* --- 13d) Súhlasy a tlačidlo ------------------------------------------- */

body.users-registration #fieldset-data .row {
	display: flex !important;
	align-items: flex-start;
	gap: 10px;
	width: 100% !important;
	margin: 0 0 10px 0 !important;
	padding: 0 !important;
	float: none !important;
}

body.users-registration #fieldset-data .row .element {
	order: 1;
	flex: 0 0 auto;
	width: auto !important;
	margin: 0 !important;
}

body.users-registration #fieldset-data .row label.left {
	order: 2;
	flex: 1 1 auto;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	font-size: 13px !important;
	line-height: 1.5 !important;
	color: #4B5A52 !important;
	cursor: pointer;
}

body.users-registration #fieldset-data input[type="checkbox"] {
	width: 17px !important;
	height: 17px !important;
	margin: 1px 0 0 0 !important;
	accent-color: var(--ai-green);
	cursor: pointer;
}

body.users-registration #show-registration-form .buttons {
	width: 100% !important;
	margin: 18px 0 0 0 !important;
	padding: 0 !important;
	float: none !important;
	text-align: left !important;
}

body.users-registration #button-registration,
body.users-registration #show-registration-form .buttons .button-type-1 {
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 100% !important;
	height: 48px !important;
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
	background: var(--ai-green) !important;
	border: 0 !important;
	border-radius: 10px !important;
	transition: background .18s ease;
}

body.users-registration #button-registration:hover,
body.users-registration #show-registration-form .buttons .button-type-1:hover {
	background: var(--ai-green-dark) !important;
}

body.users-registration #show-registration-form .buttons input[type="submit"] {
	width: 100% !important;
	height: 48px !important;
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
	background: none !important;
	border: 0 !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	color: #fff !important;
	cursor: pointer;
}

/* odkaz "Kliknite sem." pri dodacej adrese */
body.users-registration #show-registration-form a {
	color: var(--ai-green-dark) !important;
	font-weight: 600;
	text-decoration: none !important;
}

body.users-registration #show-registration-form a:hover {
	text-decoration: underline !important;
}

/* --- 13e) Responzívne --------------------------------------------------- */

@media screen and (max-width:1036px) {
	#registration-layout {
		grid-template-columns: minmax(0, 1fr);
	}

	#registration-benefits {
		position: static;
		order: -1;   /* výhody nad formulárom */
	}

	#registration-benefits ul {
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
		gap: 12px 20px;
	}

	#registration-benefits li {
		margin-bottom: 0;
	}
}

@media screen and (max-width:800px) {
	body.users-registration .content {
		padding: 6px 16px 34px 16px;
	}

	body.users-registration h1.new-reg-info {
		font-size: 21px !important;
	}

	body.users-registration #show-registration-form {
		padding: 18px !important;
	}

	/* na mobile je prioritou samotny formular — vyhody idu az za neho */
	#registration-benefits {
		order: 0;
		margin-top: 18px;
	}

	#registration-benefits ul {
		grid-template-columns: minmax(0, 1fr);
	}
}

/* riadok s výberom kategórií newslettera nie je zaškrtávacie pole —
   popis patrí nad výber, nie za neho */
body.users-registration #fieldset-data .row.row-categories-for-newsletter {
	display: block !important;
}

body.users-registration #fieldset-data .row-categories-for-newsletter label.left {
	display: block;
	width: 100% !important;
	margin: 6px 0 6px 0 !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: .6px;
	text-transform: uppercase;
	color: var(--ai-muted) !important;
	cursor: default;
}

body.users-registration #fieldset-data .row-categories-for-newsletter .element {
	width: 100% !important;
}

body.users-registration #fieldset-data .row-categories-for-newsletter select {
	width: 100% !important;
}

/* nadpis "Dodacia adresa" nad blokom dodacej adresy */
body.users-registration #show-registration-form .no-reg-info {
	margin: 22px 0 0 0;
	padding-top: 18px;
	border-top: 1px solid var(--ai-line);
}

body.users-registration #show-registration-form #address2 {
	margin: 0 0 4px 0 !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: .6px;
	text-transform: uppercase;
	color: var(--ai-muted) !important;
}

body.users-registration #show-registration-form .no-reg-info p:not(#address2) {
	margin: 0 !important;
	font-size: 12.5px !important;
	line-height: 1.6 !important;
	color: #4B5A52 !important;
}

/* ==========================================================================
   14) POTVRDENIE VLOŽENIA DO KOŠÍKA (body.cart-add-product-success)
   ========================================================================== */

body.cart-add-product-success .content {
	max-width: 1160px !important;
	margin: 0 auto !important;
	padding: 10px 0 40px 0;
	box-sizing: border-box;
}

#cart-add-product-success.bg-cart-block {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	align-items: center;
	gap: 4px 22px;
	float: none !important;
	width: 100% !important;
	height: auto !important;
	margin: 0 0 34px 0 !important;
	padding: 26px 30px !important;
	box-sizing: border-box;
	background: var(--ai-green-soft) !important;
	border: 1px solid #D3EADC;
	border-radius: 16px;
}

/* --- ikona: pôvodne sprite z Images_CMS.png posunutý o 40px nadol --- */

#cart-add-product-success .icon-success {
	grid-row: 1 / 3;
	position: static !important;
	top: auto !important;
	float: none !important;
	width: 56px !important;
	height: 56px !important;
	margin: 0 !important;
	display: flex;
	align-items: center;
	justify-content: center;
	background-image: none !important;
	background-color: var(--ai-green);
	border-radius: 50%;
}

#cart-add-product-success .icon-success:before {
	font-family: "Font Awesome 5 Free" !important;
	font-weight: 900;
	content: "\f00c";
	font-size: 24px;
	color: #fff;
	line-height: 1;
}

/* --- text --- */

#cart-add-product-success #cart-add-product-success-text {
	float: none !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
}

#cart-add-product-success hr.space {
	display: none !important;
}

#cart-add-product-success p.title {
	margin: 0 0 5px 0 !important;
	padding: 0 !important;
	font-size: 19px !important;
	line-height: 1.3 !important;
	font-weight: 700 !important;
	color: var(--ai-ink) !important;
}

#cart-add-product-success p.text {
	margin: 0 !important;
	padding: 0 !important;
	font-size: 13.5px !important;
	line-height: 1.6 !important;
	color: #4B5A52 !important;
}

/* --- tlačidlá: čierne + bledozelené nahradené dvojicou sekundárne/hlavné --- */

#cart-add-product-success .button-type-1 {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	float: none !important;
	width: auto !important;
	height: 44px !important;
	margin: 0 !important;
	padding: 0 !important;
	border-radius: 10px !important;
	transition: background .18s ease, border-color .18s ease, color .18s ease;
}

#cart-add-product-success .button-type-1 a {
	display: flex !important;
	align-items: center;
	justify-content: center;
	float: none !important;
	width: auto !important;
	height: 44px !important;
	margin: 0 !important;
	padding: 0 22px !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	white-space: nowrap;
}

/* sekundárne — pokračovať v nákupe */
#cart-add-product-success .button-type-back {
	background: #fff !important;
	border: 1px solid var(--ai-line) !important;
}

#cart-add-product-success .button-type-back a {
	color: var(--ai-ink) !important;
}

#cart-add-product-success .button-type-back:hover {
	border-color: var(--ai-green) !important;
}

#cart-add-product-success .button-type-back:hover a {
	color: var(--ai-green-dark) !important;
}

/* hlavné — prejsť do košíka */
#cart-add-product-success .button-type-next {
	background: var(--ai-green) !important;
	border: 0 !important;
}

#cart-add-product-success .button-type-next a {
	color: #fff !important;
}

#cart-add-product-success .button-type-next:hover {
	background: var(--ai-green-dark) !important;
}

/* obal tlačidiel — v mriežke pod textom, v druhom stĺpci */
#cart-add-product-success #cart-add-product-success-text .button-type-1 {
	margin-top: 16px !important;
	margin-right: 10px !important;
}

/* --- 14b) Tipy na ďalší nákup ----------------------------------------- */

#tips-after-add-to-cart {
	float: none !important;
	width: 100% !important;
	margin: 0 !important;
}

#tips-after-add-to-cart .products-title-with-line {
	grid-column: 1 / -1;
	display: block !important;
	width: 100% !important;
	margin: 0 0 18px 0 !important;
	padding: 0 !important;
	font-size: 19px !important;
	font-weight: 700 !important;
	color: var(--ai-ink) !important;
	text-align: left !important;
}

#tips-after-add-to-cart .products-title-with-line span {
	font-size: 19px !important;
	font-weight: 700 !important;
	color: var(--ai-ink) !important;
}

@media screen and (max-width:800px) {
	body.cart-add-product-success .content {
		padding: 10px 16px 30px 16px;
	}

	#cart-add-product-success.bg-cart-block {
		grid-template-columns: auto minmax(0, 1fr);
		gap: 4px 16px;
		padding: 20px !important;
	}

	#cart-add-product-success .icon-success {
		width: 44px !important;
		height: 44px !important;
	}

	#cart-add-product-success .icon-success:before {
		font-size: 19px;
	}

	#cart-add-product-success p.title {
		font-size: 16px !important;
	}

	#cart-add-product-success #cart-add-product-success-text .button-type-1 {
		width: 100% !important;
		margin-right: 0 !important;
		margin-top: 10px !important;
	}

	#cart-add-product-success #cart-add-product-success-text .button-type-1 a {
		width: 100% !important;
	}
}

/* ==========================================================================
   15) ZMENA PRIHLASOVACÍCH ÚDAJOV (body.users-update-login)
   Pôvodne: polia široké 188px vycentrované v 1200px ploche, popisky nad
   nimi na stred, čierne tlačidlo — formulár pôsobil stratene.
   ========================================================================== */

body.users-update-login .content {
	max-width: 520px !important;
	margin: 0 auto !important;
	padding: 6px 0 46px 0;
	box-sizing: border-box;
}

body.users-update-login .new-reg-info-update-login {
	width: 100% !important;
	margin: 0 0 16px 0 !important;
	padding: 0 !important;
	font-size: 25px !important;
	line-height: 1.3 !important;
	font-weight: 700 !important;
	color: var(--ai-ink) !important;
	text-align: center !important;
}

body.users-update-login #info-block.info-block-update-login {
	float: none !important;
	width: 100% !important;
	height: auto !important;
	margin: 0 0 16px 0 !important;
	padding: 14px 16px !important;
	box-sizing: border-box;
	background: var(--ai-green-soft);
	border: 1px solid #D3EADC;
	border-radius: 12px;
}

body.users-update-login #info-block p {
	position: relative;
	display: block !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 0 0 30px !important;
	box-sizing: border-box;
	font-size: 12.5px !important;
	line-height: 1.6 !important;
	color: #4B5A52 !important;
	text-align: left !important;
}

body.users-update-login #info-block span.info {
	position: absolute;
	left: 0;
	top: 1px;
	float: none !important;
	width: 20px !important;
	height: 20px !important;
	margin: 0 !important;
}

/* --- karta s formulárom --- */

body.users-update-login #dd {
	display: flow-root;   /* obsah je plávajúci, inak by mal obal výšku 0 */
	width: 100% !important;
}

body.users-update-login #update-login-form {
	float: none !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 26px !important;
	box-sizing: border-box;
	background: #fff;
	border: 1px solid var(--ai-line);
	border-radius: 16px;
}

body.users-update-login #update-login-form form,
body.users-update-login #update-login-form .myform,
body.users-update-login #fieldset-updateLogin,
body.users-update-login #updateLogin-element {
	width: 100% !important;
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

body.users-update-login #updateLogin-label {
	display: none !important;
}

body.users-update-login #fieldset-updateLogin dl {
	display: flow-root;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.users-update-login #fieldset-updateLogin .row {
	display: block !important;
	width: 100% !important;
	margin: 0 0 14px 0 !important;
	padding: 0 !important;
	float: none !important;
}

/* popisky nad poľom, zarovnané doľava */
body.users-update-login #fieldset-updateLogin label.left {
	display: block !important;
	float: none !important;
	width: 100% !important;
	margin: 0 0 6px 0 !important;
	padding: 0 !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: .5px;
	text-transform: uppercase;
	color: var(--ai-muted) !important;
	text-align: left !important;
}

body.users-update-login #fieldset-updateLogin .element {
	width: 100% !important;
	max-width: none !important;
	float: none !important;
	margin: 0 !important;
	text-align: left !important;
}

body.users-update-login #fieldset-updateLogin input[type="text"],
body.users-update-login #fieldset-updateLogin input[type="password"],
body.users-update-login #fieldset-updateLogin input[type="email"] {
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	height: 46px !important;
	line-height: 46px !important;
	margin: 0 !important;
	padding: 0 16px !important;
	box-sizing: border-box;
	float: none !important;
	background: #F6F8F7 !important;
	border: 1px solid var(--ai-line) !important;
	border-radius: 10px !important;
	font-size: 14px !important;
	color: var(--ai-ink) !important;
	transition: border-color .16s ease, box-shadow .16s ease, background .16s ease;
}

body.users-update-login #fieldset-updateLogin input:focus {
	outline: none;
	background: #fff !important;
	border-color: var(--ai-green) !important;
	box-shadow: 0 0 0 3px rgba(74, 169, 108, .14);
}

body.users-update-login #fieldset-updateLogin input:-webkit-autofill,
body.users-update-login #fieldset-updateLogin input:-webkit-autofill:hover,
body.users-update-login #fieldset-updateLogin input:-webkit-autofill:focus {
	-webkit-box-shadow: 0 0 0 40px #F6F8F7 inset !important;
	-webkit-text-fill-color: var(--ai-ink) !important;
}

/* --- tlačidlo (pôvodne čierne #333, široké 98px) --- */

body.users-update-login #update-login-form .buttons {
	width: 100% !important;
	margin: 20px 0 0 0 !important;
	padding: 0 !important;
	float: none !important;
	text-align: left !important;
}

body.users-update-login #button-savedatauser {
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 100% !important;
	height: 48px !important;
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
	background: var(--ai-green) !important;
	border: 0 !important;
	border-radius: 10px !important;
	transition: background .18s ease;
}

body.users-update-login #button-savedatauser:hover {
	background: var(--ai-green-dark) !important;
}

body.users-update-login #savedatauser {
	width: 100% !important;
	height: 48px !important;
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
	background: none !important;
	border: 0 !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	color: #fff !important;
	cursor: pointer;
}

@media screen and (max-width:800px) {
	body.users-update-login .content {
		max-width: none !important;
		padding: 6px 16px 34px 16px;
	}

	body.users-update-login #update-login-form {
		padding: 20px !important;
	}

	body.users-update-login .new-reg-info-update-login {
		font-size: 21px !important;
	}
}

/* ==========================================================================
   16) ZMENA FAKTURAČNÝCH ÚDAJOV (body.users-update)
   ========================================================================== */

body.users-update .content {
	max-width: 900px !important;
	margin: 0 auto !important;
	padding: 6px 0 46px 0;
	box-sizing: border-box;
}

body.users-update .new-reg-info-update-profile {
	width: 100% !important;
	margin: 0 0 16px 0 !important;
	padding: 0 !important;
	font-size: 25px !important;
	line-height: 1.3 !important;
	font-weight: 700 !important;
	color: var(--ai-ink) !important;
	text-align: left !important;
}

body.users-update #info-block.info-block-update-login {
	float: none !important;
	width: 100% !important;
	height: auto !important;
	margin: 0 0 18px 0 !important;
	padding: 14px 16px !important;
	box-sizing: border-box;
	background: var(--ai-green-soft);
	border: 1px solid #D3EADC;
	border-radius: 12px;
}

body.users-update #info-block p {
	position: relative;
	display: block !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 0 0 30px !important;
	box-sizing: border-box;
	font-size: 12.5px !important;
	line-height: 1.6 !important;
	color: #4B5A52 !important;
	text-align: left !important;
}

body.users-update #info-block p b {
	display: inline;
	font-weight: 600 !important;
	color: var(--ai-ink) !important;
}

body.users-update #info-block span.info {
	position: absolute;
	left: 0;
	top: 1px;
	float: none !important;
	width: 20px !important;
	height: 20px !important;
	margin: 0 !important;
}

/* --- karta s formulárom --- */

body.users-update #update-profile-form {
	float: none !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 26px !important;
	box-sizing: border-box;
	background: #fff;
	border: 1px solid var(--ai-line);
	border-radius: 16px;
}

body.users-update #update-profile-form form,
body.users-update #update-profile-form .myform,
body.users-update #update-profile-form fieldset,
body.users-update #update-profile-form dd {
	width: 100% !important;
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

body.users-update #update-profile-form dl {
	display: flow-root;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.users-update #update-profile-form dt {
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.users-update #update-profile-form dt:empty {
	display: none !important;
}

/* --- popisky doplnené z placeholderu (pozri update.phtml) --- */

body.users-update .ai-field-label {
	/* základná téma skrýva popisky formulárov technikou clip/absolute
	   (pre čítačky obrazovky) — tu ich naopak potrebujeme vidieť */
	display: block !important;
	position: static !important;
	clip: auto !important;
	clip-path: none !important;
	overflow: visible !important;
	height: auto !important;
	float: none !important;
	width: 100% !important;
	margin: 0 0 5px 0 !important;
	padding: 0 !important;
	font-size: 11.5px !important;
	font-weight: 700 !important;
	letter-spacing: .5px;
	text-transform: uppercase;
	color: var(--ai-muted) !important;
	text-align: left !important;
	cursor: pointer;
}

/* --- polia --- */

body.users-update #update-profile-form .element {
	width: 100% !important;
	max-width: none !important;
	float: none !important;
	margin: 0 !important;
}

body.users-update #update-profile-form input[type="text"],
body.users-update #update-profile-form input[type="password"],
body.users-update #update-profile-form input[type="email"],
body.users-update #update-profile-form input[type="tel"],
body.users-update #update-profile-form select {
	width: 100% !important;
	max-width: none !important;
	height: 46px !important;
	line-height: 46px !important;
	margin: 0 !important;
	padding: 0 14px !important;
	box-sizing: border-box;
	float: none !important;
	background: #F6F8F7 !important;
	border: 1px solid var(--ai-line) !important;
	border-radius: 10px !important;
	font-size: 13.5px !important;
	color: var(--ai-ink) !important;
	transition: border-color .16s ease, box-shadow .16s ease, background .16s ease;
}

body.users-update #update-profile-form select {
	line-height: normal !important;
	appearance: none;
	-webkit-appearance: none;
	padding-right: 34px !important;
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%236B7B72' d='M1.4 0 6 4.6 10.6 0 12 1.4 6 7.4 0 1.4z'/%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important;
	background-position: right 13px center !important;
	cursor: pointer;
}

body.users-update #update-profile-form input:focus,
body.users-update #update-profile-form select:focus {
	outline: none;
	background-color: #fff !important;
	border-color: var(--ai-green) !important;
	box-shadow: 0 0 0 3px rgba(74, 169, 108, .14);
}

body.users-update #update-profile-form input:-webkit-autofill,
body.users-update #update-profile-form input:-webkit-autofill:hover,
body.users-update #update-profile-form input:-webkit-autofill:focus {
	-webkit-box-shadow: 0 0 0 40px #F6F8F7 inset !important;
	-webkit-text-fill-color: var(--ai-ink) !important;
}

body.users-update #update-profile-form .row-medium,
body.users-update #update-profile-form .row-medium-margin,
body.users-update #update-profile-form .row-big,
body.users-update #update-profile-form .row-small,
body.users-update #update-profile-form .row-full {
	margin-top: 14px !important;
	margin-bottom: 0 !important;
}

body.users-update #update-profile-form .row-medium-margin,
body.users-update #update-profile-form .row-big {
	margin-right: 2% !important;
}

/* --- blok dodacej adresy --- */

body.users-update #update-profile-form .no-reg-info {
	margin: 24px 0 0 0;
	padding-top: 18px;
	border-top: 1px solid var(--ai-line);
}

body.users-update #update-profile-form #address2 {
	margin: 0 0 4px 0 !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: .6px;
	text-transform: uppercase;
	color: var(--ai-muted) !important;
}

body.users-update #update-profile-form .no-reg-info p:not(#address2) {
	margin: 0 !important;
	font-size: 12.5px !important;
	line-height: 1.6 !important;
	color: #4B5A52 !important;
}

body.users-update #update-profile-form a {
	color: var(--ai-green-dark) !important;
	font-weight: 600;
	text-decoration: none !important;
}

body.users-update #update-profile-form a:hover {
	text-decoration: underline !important;
}

/* --- tlačidlo --- */

body.users-update #update-profile-form .buttons {
	width: 100% !important;
	margin: 22px 0 0 0 !important;
	padding: 0 !important;
	float: none !important;
	text-align: left !important;
}

body.users-update #update-profile-form .buttons .button-type-1 {
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 100% !important;
	height: 48px !important;
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
	background: var(--ai-green) !important;
	border: 0 !important;
	border-radius: 10px !important;
	transition: background .18s ease;
}

body.users-update #update-profile-form .buttons .button-type-1:hover {
	background: var(--ai-green-dark) !important;
}

body.users-update #update-profile-form .buttons input[type="submit"] {
	width: 100% !important;
	height: 48px !important;
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
	background: none !important;
	border: 0 !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	color: #fff !important;
	cursor: pointer;
}

@media screen and (max-width:800px) {
	body.users-update .content {
		max-width: none !important;
		padding: 6px 16px 34px 16px;
	}

	body.users-update #update-profile-form {
		padding: 18px !important;
	}

	body.users-update .new-reg-info-update-profile {
		font-size: 21px !important;
	}
}

/* ==========================================================================
   17) OBĽÚBENÉ PRODUKTY (body.catalog-show-favorites)
   ========================================================================== */

body.catalog-show-favorites .content {
	max-width: 1160px !important;
	margin: 0 auto !important;
	padding: 6px 0 40px 0;
	box-sizing: border-box;
}

body.catalog-show-favorites .new-reg-info-show-favorites {
	width: 100% !important;
	margin: 0 0 20px 0 !important;
	padding: 0 !important;
	font-size: 25px !important;
	line-height: 1.3 !important;
	font-weight: 700 !important;
	color: var(--ai-ink) !important;
	text-align: left !important;
}

body.catalog-show-favorites .favorite-products-info-block {
	float: none !important;
	width: 100% !important;
	height: auto !important;
	margin: 0 0 18px 0 !important;
	padding: 14px 16px !important;
	box-sizing: border-box;
	background: var(--ai-green-soft);
	border: 1px solid #D3EADC;
	border-radius: 12px;
}

body.catalog-show-favorites .favorite-products-info-block p {
	position: relative;
	display: block !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 0 0 30px !important;
	box-sizing: border-box;
	font-size: 12.5px !important;
	line-height: 1.6 !important;
	color: #4B5A52 !important;
	text-align: left !important;
}

body.catalog-show-favorites .favorite-products-info-block span.info {
	position: absolute;
	left: 0;
	top: 1px;
	float: none !important;
	width: 20px !important;
	height: 20px !important;
	margin: 0 !important;
}

/* --- 17a) Mriežka kariet (rovnaká ako katalóg) ------------------------- */

#favorites-product {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
	gap: 20px;
	width: 100%;
	align-items: stretch;
}

#favorites-product .new-reg-info-show-favorites,
#favorites-product .favorite-products-info-block {
	grid-column: 1 / -1;
}

/* --- 17b) Formulár na odoslanie zoznamu e-mailom ----------------------- */

#send-favorite-products-via-email-form {
	float: none !important;
	width: 100% !important;
	max-width: 520px;
	margin: 32px auto 0 auto !important;
	padding: 24px !important;
	box-sizing: border-box;
	background: #fff;
	border: 1px solid var(--ai-line);
	border-radius: 16px;
}

#send-favorite-products-via-email-form-title {
	float: none !important;
	width: 100% !important;
	margin: 0 0 16px 0 !important;
	padding: 0 !important;
	font-size: 15px !important;
	line-height: 1.45 !important;
	font-weight: 700 !important;
	color: var(--ai-ink) !important;
	text-align: center !important;
}

#send-favorite-products-via-email-form form,
#send-favorite-products-via-email-form .myform,
#send-favorite-products-via-email-form fieldset,
#send-favorite-products-via-email-form dd {
	width: 100% !important;
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

#send-favorite-products-via-email-form dt:empty {
	display: none !important;
}

#send-favorite-products-via-email-form .row {
	display: block !important;
	width: 100% !important;
	margin: 0 0 12px 0 !important;
	padding: 0 !important;
	float: none !important;
}

#send-favorite-products-via-email-form .element {
	width: 100% !important;
	max-width: none !important;
	float: none !important;
	margin: 0 !important;
}

#send-favorite-products-via-email-form input[type="text"],
#send-favorite-products-via-email-form input[type="email"] {
	width: 100% !important;
	max-width: none !important;
	height: 46px !important;
	line-height: 46px !important;
	margin: 0 !important;
	padding: 0 16px !important;
	box-sizing: border-box;
	float: none !important;
	background: #F6F8F7 !important;
	border: 1px solid var(--ai-line) !important;
	border-radius: 10px !important;
	font-size: 14px !important;
	color: var(--ai-ink) !important;
	transition: border-color .16s ease, box-shadow .16s ease, background .16s ease;
}

#send-favorite-products-via-email-form input:focus {
	outline: none;
	background: #fff !important;
	border-color: var(--ai-green) !important;
	box-shadow: 0 0 0 3px rgba(74, 169, 108, .14);
}

#send-favorite-products-via-email-form img {
	display: block;
	margin: 4px auto 12px auto;
	max-width: 100%;
	height: auto;
	border-radius: 10px;
}

#send-favorite-products-via-email-form .buttons {
	width: 100% !important;
	margin: 6px 0 0 0 !important;
	padding: 0 !important;
	float: none !important;
	text-align: left !important;
}

#send-favorite-products-via-email-form .button-type-1 {
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 100% !important;
	height: 48px !important;
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
	background: var(--ai-green) !important;
	border: 0 !important;
	border-radius: 10px !important;
	transition: background .18s ease;
}

#send-favorite-products-via-email-form .button-type-1:hover {
	background: var(--ai-green-dark) !important;
}

#send-favorite-products-via-email-form .button-type-1 input[type="submit"] {
	width: 100% !important;
	height: 48px !important;
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
	background: none !important;
	border: 0 !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	color: #fff !important;
	cursor: pointer;
}

@media screen and (max-width:1036px) {
	#favorites-product {
		grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
		gap: 16px;
	}
}

@media screen and (max-width:800px) {
	body.catalog-show-favorites .content {
		padding: 6px 16px 30px 16px;
	}

	#favorites-product {
		grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
		gap: 12px;
	}

	body.catalog-show-favorites .new-reg-info-show-favorites {
		font-size: 21px !important;
	}

	#send-favorite-products-via-email-form {
		padding: 18px !important;
	}
}

/* tlačidlo na odobranie z obľúbených — pôvodne červená ikona voľne
   položená vedľa ceny, teraz krúžok v rohu karty */
#favorites-product .product-third {
	position: relative;
}

#favorites-product .delete-a.favorites-position {
	position: absolute !important;
	top: 10px;
	right: 10px;
	left: auto !important;
	bottom: auto !important;
	z-index: 4;
	width: 30px !important;
	height: 30px !important;
	margin: 0 !important;
	padding: 0 !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	background: rgba(255, 255, 255, .92) !important;
	background-image: none !important;
	border: 1px solid var(--ai-line);
	border-radius: 50%;
	transition: background .16s ease, border-color .16s ease;
}

#favorites-product .delete-a.favorites-position:before {
	font-family: "Font Awesome 5 Free" !important;
	font-weight: 900;
	content: "\f00d";
	font-size: 13px;
	color: var(--ai-muted);
	transition: color .16s ease;
}

#favorites-product .delete-a.favorites-position:hover {
	background: #FDEDEC !important;
	border-color: #F3C7C3;
}

#favorites-product .delete-a.favorites-position:hover:before {
	color: #C0392B;
}

/* v obľúbených sa karty vykresľujú bez tlačidla "Do košíka"
   (render-cart => false), takže cena musí zabrať celú pätičku */
#favorites-product .product-content .price {
	width: 100% !important;
	padding-right: 14px !important;
}

/* ==========================================================================
   18) HISTÓRIA OBJEDNÁVOK (body.orders-orders)
   ========================================================================== */

body.orders-orders .content {
	max-width: 1160px !important;
	margin: 0 auto !important;
	padding: 6px 0 40px 0;
	box-sizing: border-box;
}

body.orders-orders .new-reg-info-orders {
	width: 100% !important;
	margin: 0 0 20px 0 !important;
	padding: 0 !important;
	font-size: 25px !important;
	line-height: 1.3 !important;
	font-weight: 700 !important;
	color: var(--ai-ink) !important;
	text-align: left !important;
}

#user-order {
	width: 100%;
}

#user-order table.table-public {
	width: 100% !important;
	margin: 0 !important;
	background: #fff !important;
	border: 1px solid var(--ai-line) !important;
	border-radius: 14px !important;
	border-collapse: separate !important;
	border-spacing: 0 !important;
	overflow: hidden;
	font-size: 13.5px;
}

/* --- hlavička --- */

#user-order table.table-public tr.title th {
	padding: 13px 16px !important;
	background: #F7F9F8 !important;
	border: 0 !important;
	border-bottom: 1px solid var(--ai-line) !important;
	font-size: 11.5px !important;
	font-weight: 700 !important;
	letter-spacing: .6px;
	text-transform: uppercase;
	color: var(--ai-muted) !important;
	text-align: left;
	white-space: nowrap;
}

/* --- riadky --- */

#user-order table.table-public tbody.content > tr {
	background: #fff !important;
	transition: background .14s ease;
}

#user-order table.table-public tbody.content > tr:nth-child(even) {
	background: #FAFCFB !important;
}

#user-order table.table-public tbody.content > tr:hover {
	background: var(--ai-green-soft) !important;
}

#user-order table.table-public tbody.content > tr > td {
	padding: 12px 16px !important;
	background: none !important;
	border: 0 !important;
	border-bottom: 1px solid #F0F3F1 !important;
	color: var(--ai-ink) !important;
	vertical-align: middle;
	text-align: left;
}

#user-order table.table-public tbody.content > tr:last-child > td {
	border-bottom: 0 !important;
}

/* variabilný symbol + cena */
#user-order table.table-public tbody.content > tr > td:first-child {
	font-weight: 700;
}

#user-order table.table-public tr.title th:nth-child(4),
#user-order table.table-public tbody.content > tr > td:nth-child(4) {
	text-align: right;
	font-weight: 700;
	white-space: nowrap;
}

#user-order table.table-public tr.title th.action,
#user-order table.table-public tbody.content > tr > td:last-child {
	width: 1%;
	text-align: right;
	white-space: nowrap;
}

/* --- odznak stavu (triedu dopĺňa skript v orders.phtml) --- */

#user-order .order-status {
	display: inline-block;
	padding: 4px 11px;
	border-radius: 999px;
	font-size: 11.5px;
	font-weight: 700;
	line-height: 1.4;
	white-space: nowrap;
}

#user-order .order-status-info {
	background: #E8F1FB;
	color: #2A6099;
}

#user-order .order-status-ok {
	background: var(--ai-green-soft);
	color: var(--ai-green-dark);
}

#user-order .order-status-bad {
	background: #FDEDEC;
	color: #B4453C;
}

#user-order .order-status-neutral {
	background: #F0F3F1;
	color: var(--ai-muted);
}

/* --- akcie: pôvodne sprite ikony 32×32 z Images_CMS.png --- */

#user-order td .update-a,
#user-order td .pdf-a {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 32px !important;
	height: 32px !important;
	margin: 0 0 0 6px !important;
	padding: 0 !important;
	float: none !important;
	background-image: none !important;
	background-color: #fff !important;
	border: 1px solid var(--ai-line);
	border-radius: 9px;
	vertical-align: middle;
	transition: background-color .16s ease, border-color .16s ease;
}

#user-order td .update-a:before,
#user-order td .pdf-a:before {
	font-family: "Font Awesome 5 Free" !important;
	font-weight: 900;
	font-size: 12px;
	color: var(--ai-muted);
	transition: color .16s ease;
}

#user-order td .update-a:before {
	content: "\f06e";   /* oko — zobraziť objednávku */
}

#user-order td .pdf-a:before {
	content: "\f1c1";   /* pdf */
}

#user-order td .update-a:hover,
#user-order td .pdf-a:hover {
	background-color: var(--ai-green-soft) !important;
	border-color: #CFE3D7;
}

#user-order td .update-a:hover:before,
#user-order td .pdf-a:hover:before {
	color: var(--ai-green-dark);
}

/* --- prázdny zoznam (nadpis stránky vynechať) --- */

body.orders-orders .content > p:not(.new-reg-info) {
	margin: 0 !important;
	padding: 26px !important;
	background: #F7F9F8;
	border: 1px solid var(--ai-line);
	border-radius: 14px;
	font-size: 14px !important;
	color: #4B5A52 !important;
	text-align: center;
}

/* --- 18b) Mobil: tabuľka ako karty ------------------------------------ */

@media screen and (max-width:800px) {
	body.orders-orders .content {
		padding: 6px 16px 30px 16px;
	}

	body.orders-orders .new-reg-info-orders {
		font-size: 21px !important;
	}

	#user-order table.table-public,
	#user-order table.table-public tbody,
	#user-order table.table-public tbody.content > tr,
	#user-order table.table-public tbody.content > tr > td {
		display: block !important;
		width: 100% !important;
		box-sizing: border-box;
	}

	#user-order table.table-public {
		border: 0 !important;
		border-radius: 0 !important;
		overflow: visible;
		background: none !important;
	}

	#user-order table.table-public tr.title {
		display: none !important;   /* popisky sú v data-label */
	}

	#user-order table.table-public tbody.content > tr {
		margin: 0 0 12px 0;
		padding: 6px 14px;
		background: #fff !important;
		border: 1px solid var(--ai-line);
		border-radius: 12px;
	}

	#user-order table.table-public tbody.content > tr > td {
		display: flex !important;
		align-items: center;
		justify-content: space-between;
		gap: 14px;
		padding: 9px 0 !important;
		border-bottom: 1px solid #F0F3F1 !important;
		text-align: right !important;
	}

	#user-order table.table-public tbody.content > tr > td:last-child {
		border-bottom: 0 !important;
		justify-content: flex-end;
	}

	#user-order table.table-public tbody.content > tr > td[data-label]:before {
		content: attr(data-label);
		flex: 0 0 auto;
		font-size: 11.5px;
		font-weight: 700;
		letter-spacing: .5px;
		text-transform: uppercase;
		color: var(--ai-muted);
		text-align: left;
	}
}

/* ==========================================================================
   19) DETAIL HISTORICKEJ OBJEDNÁVKY (body.orders-update)
   ========================================================================== */

body.orders-update .content {
	max-width: 900px !important;
	margin: 0 auto !important;
	padding: 6px 0 40px 0;
	box-sizing: border-box;
}

#order-detail .order-detail-title {
	width: 100% !important;
	height: auto !important;
	margin: 0 0 20px 0 !important;
	padding: 0 !important;
	background: none !important;
	border: 0 !important;
}

#order-detail .order-detail-title p {
	margin: 0 !important;
	padding: 0 !important;
	font-size: 25px !important;
	line-height: 1.3 !important;
	font-weight: 700 !important;
	color: var(--ai-ink) !important;
	text-align: left !important;
}

/* --- karty --- */

#order-detail .order-detail-card {
	display: block;
	width: 100%;
	margin: 0 0 16px 0;
	box-sizing: border-box;
	background: #fff;
	border: 1px solid var(--ai-line);
	border-radius: 14px;
	overflow: hidden;
}

/* nadpis sekcie — pôvodne sivý pruh cez celú šírku */
#order-detail .order-detail-cell-title {
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	padding: 13px 18px !important;
	box-sizing: border-box;
	background: #F7F9F8 !important;
	border: 0 !important;
	border-bottom: 1px solid var(--ai-line) !important;
	float: none !important;
}

#order-detail .order-detail-cell-title p {
	margin: 0 !important;
	padding: 0 !important;
	font-size: 11.5px !important;
	font-weight: 700 !important;
	letter-spacing: .6px;
	text-transform: uppercase;
	color: var(--ai-muted) !important;
	text-align: left !important;
}

/* --- riadky --- */

#order-detail .order-detail-cell-first,
#order-detail .order-detail-cell-second {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto minmax(90px, auto);
	align-items: center;
	gap: 6px 16px;
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	padding: 12px 18px !important;
	box-sizing: border-box;
	float: none !important;
	background: none !important;
	border-bottom: 1px solid #F0F3F1;
}

#order-detail .order-detail-card > div:last-child {
	border-bottom: 0;
}

#order-detail .order-detail-cell-first > div,
#order-detail .order-detail-cell-second > div {
	width: auto !important;
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
	min-width: 0;
}

#order-detail .order-detail-cell-first p,
#order-detail .order-detail-cell-second p {
	margin: 0 !important;
	padding: 0 !important;
	font-size: 13.5px !important;
	line-height: 1.5 !important;
	color: var(--ai-ink) !important;
	text-align: left !important;
}

/* prvý stĺpec = popis */
#order-detail .order-detail-cell-first > div:first-child p,
#order-detail .order-detail-cell-second > div:first-child p {
	color: var(--ai-muted) !important;
}

/* posledný stĺpec = cena */
#order-detail .order-detail-cell-first > div:last-child,
#order-detail .order-detail-cell-second > div:last-child {
	text-align: right;
	justify-self: end;
}

#order-detail .order-detail-cell-first > div:last-child p,
#order-detail .order-detail-cell-second > div:last-child p {
	text-align: right !important;
	font-weight: 600;
	white-space: nowrap;
}

/* názov produktu v riadku má ostať výrazný */
#order-detail .order-detail-cell-first p b,
#order-detail .order-detail-cell-second p b {
	color: var(--ai-ink) !important;
	font-weight: 700;
}

/* --- odznak stavu --- */

#order-detail .order-status {
	display: inline-block;
	padding: 4px 11px;
	border-radius: 999px;
	font-size: 11.5px;
	font-weight: 700;
	line-height: 1.4;
	white-space: nowrap;
}

#order-detail .order-status-info   { background: #E8F1FB; color: #2A6099; }
#order-detail .order-status-ok     { background: var(--ai-green-soft); color: var(--ai-green-dark); }
#order-detail .order-status-bad    { background: #FDEDEC; color: #B4453C; }
#order-detail .order-status-neutral{ background: #F0F3F1; color: var(--ai-muted); }

/* --- celková suma --- */

#order-detail .total-order-price {
	background: #F7F9F8 !important;
	border-top: 1px solid var(--ai-line);
	border-bottom: 0 !important;
	padding-top: 14px !important;
	padding-bottom: 14px !important;
}

#order-detail .total-order-price > div:first-child p {
	font-size: 13.5px !important;
	font-weight: 700 !important;
	color: var(--ai-ink) !important;
}

#order-detail .total-order-price > div:last-child p {
	font-size: 17px !important;
	font-weight: 700 !important;
	color: var(--ai-ink) !important;
}

/* --- adresy vedľa seba --- */

#order-detail .order-detail-addresses {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
	gap: 16px;
	margin-bottom: 16px;
}

#order-detail .order-detail-addresses .order-detail-card {
	margin: 0;
}

#order-detail .order-detail-address {
	display: block !important;
	padding: 16px 18px !important;
	border-bottom: 0 !important;
}

#order-detail .order-detail-address p {
	margin: 0 0 3px 0 !important;
	font-size: 13.5px !important;
	line-height: 1.55 !important;
	color: #4B5A52 !important;
}

#order-detail .order-detail-address p:first-child {
	font-weight: 700;
	color: var(--ai-ink) !important;
}

/* --- tlačidlo späť --- */

#order-detail .order-detail-actions {
	margin-top: 4px;
}

#order-detail .order-detail-actions .button-type-1 {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: auto !important;
	height: 44px !important;
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
	background: #fff !important;
	border: 1px solid var(--ai-line) !important;
	border-radius: 10px !important;
	transition: border-color .16s ease, background .16s ease;
}

#order-detail .order-detail-actions .button-type-1:hover {
	background: var(--ai-green-soft) !important;
	border-color: #CFE3D7 !important;
}

#order-detail .order-detail-actions .button-type-1 a {
	display: flex !important;
	align-items: center;
	width: auto !important;
	height: 44px !important;
	margin: 0 !important;
	padding: 0 20px 0 16px !important;
	float: none !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	color: var(--ai-ink) !important;
	text-decoration: none !important;
	white-space: nowrap;
}

#order-detail .order-detail-actions .button-type-1:hover a {
	color: var(--ai-green-dark) !important;
}

/* šípka namiesto pôvodnej sprite ikony */
#order-detail .order-detail-actions .icon-type-1 {
	display: none !important;
}

#order-detail .order-detail-actions .button-type-1:before {
	font-family: "Font Awesome 5 Free" !important;
	font-weight: 900;
	content: "\f060";
	margin-left: 16px;
	font-size: 12px;
	color: var(--ai-muted);
}

#order-detail .order-detail-actions .button-type-1:hover:before {
	color: var(--ai-green-dark);
}

@media screen and (max-width:800px) {
	body.orders-update .content {
		padding: 6px 16px 30px 16px;
	}

	#order-detail .order-detail-title p {
		font-size: 21px !important;
	}

	#order-detail .order-detail-cell-first,
	#order-detail .order-detail-cell-second {
		grid-template-columns: minmax(0, 1fr) auto;
		padding: 12px 14px !important;
	}

	#order-detail .order-detail-cell-first > div:nth-child(2),
	#order-detail .order-detail-cell-second > div:nth-child(2) {
		justify-self: end;
	}

	#order-detail .order-detail-cell-first > div:last-child,
	#order-detail .order-detail-cell-second > div:last-child {
		grid-column: 1 / -1;
	}
}

/* ==========================================================================
   20) KOŠÍK — 1. krok (body.cart-first-and-second)
   Pôvodne bol celý obsah vtlačený do 590 px z 1200 px. Teraz dva stĺpce:
   vľavo obsah a formuláre, vpravo lepivý súhrn objednávky.
   ========================================================================== */

body.cart-first-and-second .content {
	max-width: 1160px !important;
	margin: 0 auto !important;
	padding: 6px 0 40px 0;
	box-sizing: border-box;
}

.cart-steps {
	float: none !important;
	width: 100% !important;
	margin: 0 !important;
}

.cart-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 340px;
	align-items: start;
	gap: 22px;
	width: 100%;
	margin-top: 18px;
}

.cart-col-main {
	min-width: 0;
}

.cart-col-aside {
	position: sticky;
	top: 20px;
}

/* --- 20a) Kroky objednávky --------------------------------------------- */

#steps-cart {
	display: flex !important;
	gap: 10px;
	float: none !important;
	width: 100% !important;
	height: auto !important;
	margin: 0 0 18px 0 !important;
	padding: 0 !important;
	list-style: none;
}

#steps-cart li {
	flex: 1 1 0;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	padding: 14px 18px !important;
	box-sizing: border-box;
	float: none !important;
	list-style: none;
	background: #F7F9F8;
	border: 1px solid var(--ai-line);
	border-radius: 12px;
	font-size: 14px !important;
	font-weight: 600 !important;
	line-height: 1.35 !important;
	color: var(--ai-muted) !important;
}

#steps-cart li.active {
	background: var(--ai-green-soft);
	border-color: #D3EADC;
	color: var(--ai-ink) !important;
}

#steps-cart li p,
#steps-cart li span,
#steps-cart li a {
	margin: 0 !important;
	padding: 0 !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	color: inherit !important;
	text-decoration: none !important;
}

/* --- 20b) Informačný blok --------------------------------------------- */

.cart-steps #info-block.bg-cart-block {
	float: none !important;
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	padding: 14px 16px !important;
	box-sizing: border-box;
	background: #F7F9F8 !important;
	border: 1px solid var(--ai-line);
	border-radius: 12px;
}

.cart-steps #info-block p {
	position: relative;
	display: block !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 0 0 30px !important;
	box-sizing: border-box;
	font-size: 12.5px !important;
	line-height: 1.6 !important;
	color: #4B5A52 !important;
	text-align: left !important;
}

.cart-steps #info-block span.info {
	position: absolute;
	left: 0;
	top: 1px;
	float: none !important;
	width: 20px !important;
	height: 20px !important;
	margin: 0 !important;
}

/* --- 20c) Spoločný vzhľad blokov v ľavom stĺpci ------------------------ */

.cart-col-main > #cart-products,
.cart-col-main > #gifts_in_cart,
.cart-col-main > #cart-login-form-first-step,
.cart-col-main #cart-buy-form-first-step,
.cart-col-main #cart-reg-form-first-step,
.cart-col-main #cart-coutry-pay-delivery-selections,
.cart-col-main #three_emails_in_cart,
.cart-col-main #cart_description {
	float: none !important;
	width: 100% !important;
	height: auto !important;
	margin: 0 0 16px 0 !important;
	padding: 20px !important;
	box-sizing: border-box;
	background: #fff !important;
	border: 1px solid var(--ai-line) !important;
	border-radius: 14px !important;
}

.cart-col-main > form {
	display: block;
	width: 100%;
}

/* --- 20d) Tabuľka položiek -------------------------------------------- */

#cart-products #cart-form {
	width: 100% !important;
	margin: 0 !important;
}

#cart-products table {
	width: 100% !important;
	margin: 0 !important;
	border-collapse: collapse !important;
	font-size: 13.5px;
}

#cart-products table tr:first-child td {
	padding: 0 10px 10px 10px !important;
	border-bottom: 1px solid var(--ai-line) !important;
	font-size: 11.5px !important;
	font-weight: 700 !important;
	letter-spacing: .5px;
	text-transform: uppercase;
	color: var(--ai-muted) !important;
	white-space: nowrap;
	vertical-align: bottom;
}

#cart-products table td {
	padding: 14px 10px !important;
	border-bottom: 1px solid #F0F3F1 !important;
	vertical-align: middle;
	color: var(--ai-ink) !important;
}

#cart-products table tr:last-child td {
	border-bottom: 0 !important;
}

#cart-products table img {
	max-width: 64px;
	height: auto;
	border-radius: 8px;
}

#cart-products table a {
	color: var(--ai-ink) !important;
	font-weight: 600;
	text-decoration: none !important;
}

#cart-products table a:hover {
	color: var(--ai-green-dark) !important;
}

/* --- 20e) Počítadlo kusov ----------------------------------------------
   Tlačidlá + a − sú <input type="submit"> a ich value je ID položky
   v košíku — bez skrytia textu sa v košíku zobrazovalo číslo (napr. 6142). */

#cart-products .counter {
	display: inline-flex !important;
	align-items: center;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	background: #F6F8F7;
	border: 1px solid var(--ai-line);
	border-radius: 999px;
	overflow: hidden;
}

#cart-products .counter p {
	display: flex !important;
	align-items: center;
	margin: 0 !important;
	padding: 0 !important;
}

#cart-products .counter .inputCount {
	order: 2;
	min-width: 34px;
	padding: 0 4px;
	font-size: 14px;
	font-weight: 700;
	color: var(--ai-ink);
	text-align: center;
}

#cart-products .counter #input-remove,
#cart-products .counter #input-add,
#cart-products .counter input[type="submit"] {
	width: 32px !important;
	height: 34px !important;
	margin: 0 !important;
	padding: 0 !important;
	background: none !important;
	background-image: none !important;
	border: 0 !important;
	font-size: 0 !important;      /* skryje value (ID položky) */
	color: transparent !important;
	cursor: pointer;
	position: relative;
}

#cart-products .counter #input-remove { order: 1; }
#cart-products .counter #input-add    { order: 3; }

/* znamienka kreslíme cez obal, aby ostali tlačidlá klikateľné */
#cart-products .counter {
	position: relative;
}

#cart-products .counter p:before,
#cart-products .counter p:after {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 32px;
	text-align: center;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 11px;
	color: var(--ai-muted);
	pointer-events: none;
}

#cart-products .counter p:before {
	content: "\f068";   /* mínus */
	left: 0;
}

#cart-products .counter p:after {
	content: "\f067";   /* plus */
	right: 0;
}

/* --- 20f) Odobranie položky (pôvodne čierny štvorec s X) --------------- */

#cart-products .delete-a,
#cart-products a[class*="delete"],
#cart-products input[value="X"],
#cart-products .button-type-1.button-delete {
	background: none !important;
}

#cart-products td .button-type-1:has(a[href*="/take/id/"]) {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 32px !important;
	height: 32px !important;
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
	background: #fff !important;
	border: 1px solid var(--ai-line) !important;
	border-radius: 9px !important;
	transition: background .16s ease, border-color .16s ease;
}

#cart-products td .button-type-1:has(a[href*="/take/id/"]):hover {
	background: #FDEDEC !important;
	border-color: #F3C7C3 !important;
}

#cart-products td .button-type-1:has(a[href*="/take/id/"]) input,
#cart-products td .button-type-1:has(a[href*="/take/id/"]) a {
	width: 32px !important;
	height: 32px !important;
	margin: 0 !important;
	padding: 0 !important;
	background: none !important;
	border: 0 !important;
	font-size: 0 !important;
	color: transparent !important;
	cursor: pointer;
}

#cart-products td .button-type-1:has(a[href*="/take/id/"]):before {
	position: absolute;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f00d";
	font-size: 12px;
	color: var(--ai-muted);
	pointer-events: none;
}

#cart-products td .button-type-1:has(a[href*="/take/id/"]):hover:before {
	color: #C0392B;
}

#cart-products td .button-type-1:has(a[href*="/take/id/"]) {
	position: relative;
}

/* --- 20g) Zľavový kupón ------------------------------------------------ */

#cart-products .discount-coupon,
#cart-products #discount-coupon {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
	margin-top: 16px;
	padding-top: 16px;
	border-top: 1px solid var(--ai-line);
}

#cart-products input[type="text"] {
	height: 44px !important;
	margin: 0 !important;
	padding: 0 14px !important;
	box-sizing: border-box;
	background: #F6F8F7 !important;
	border: 1px solid var(--ai-line) !important;
	border-radius: 10px !important;
	font-size: 13.5px !important;
	color: var(--ai-ink) !important;
}

#cart-products input[type="text"]:focus {
	outline: none;
	background: #fff !important;
	border-color: var(--ai-green) !important;
	box-shadow: 0 0 0 3px rgba(74, 169, 108, .14);
}

/* --- 20h) Súhrn objednávky v pravom stĺpci ----------------------------- */

.cart-summary {
	padding: 20px;
	box-sizing: border-box;
	background: #fff;
	border: 1px solid var(--ai-line);
	border-radius: 14px;
}

/* doprava zadarmo — pôvodne tyrkysový pruh cez celú šírku */
.cart-summary #renderFreeDelivery {
	width: 100% !important;
	margin: 0 0 14px 0 !important;
}

.cart-summary .info-price {
	display: flex !important;
	align-items: center;
	gap: 10px;
	float: none !important;
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	padding: 11px 14px !important;
	box-sizing: border-box;
	background: var(--ai-green-soft) !important;
	border: 1px solid #D3EADC;
	border-radius: 10px;
}

.cart-summary .info-price p {
	margin: 0 !important;
	padding: 0 !important;
	font-size: 12.5px !important;
	font-weight: 600 !important;
	line-height: 1.4 !important;
	color: var(--ai-green-dark) !important;
}

/* Ikony su vyrezy zo sprite obrazka a su float:left — vo flex riadku
   ostavali mimo toku a prekryvali text. Nahradzame ich vektorovymi. */
.cart-summary .info-price > span[class*="icon-type"] {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 20px;
	float: none !important;
	position: static !important;
	width: 20px !important;
	height: 20px !important;
	margin: 0 !important;
	background: none !important;
	font-size: 0;
}

.cart-summary .info-price > span[class*="icon-type"]:before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 16px;
	color: var(--ai-green);
}

.cart-summary .info-price .icon-type-success:before {
	content: "\f058";
}

/* upozornenie, ze do dopravy zadarmo nieco chyba */
.cart-summary .info-price .icon-type-info-price:before {
	content: "\f0d1";
}

.cart-summary #renderFreeDelivery hr.space {
	display: none !important;
}

/* celková suma — pôvodne čierny pruh */
.cart-summary #fullPrice {
	display: block !important;
	float: none !important;
	width: 100% !important;
	height: auto !important;
	margin: 0 0 16px 0 !important;
	padding: 14px 16px !important;
	box-sizing: border-box;
	background: #F7F9F8 !important;
	border: 1px solid var(--ai-line);
	border-radius: 10px;
}

.cart-summary #fullPrice p {
	display: flex !important;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px;
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
}

.cart-summary #fullPrice .text {
	float: none !important;
	width: auto !important;
	height: auto !important;
	font-size: 13.5px !important;
	font-weight: 600 !important;
	color: var(--ai-muted) !important;
	text-align: left !important;
	line-height: 1.3 !important;
}

.cart-summary #fullPrice .price {
	float: none !important;
	width: auto !important;
	height: auto !important;
	font-size: 22px !important;
	font-weight: 700 !important;
	color: var(--ai-ink) !important;
	text-align: right !important;
	white-space: nowrap;
	line-height: 1.2 !important;
}

/* --- 20i) Tlačidlá v súhrne ------------------------------------------- */

#cart-first-step-bottom-buttons {
	display: flex;
	flex-direction: column;
	gap: 10px;
	float: none !important;
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
}

#cart-first-step-bottom-buttons .button-type-1 {
	display: flex !important;
	align-items: center;
	justify-content: center;
	float: none !important;
	width: 100% !important;
	height: 50px !important;
	margin: 0 !important;
	padding: 0 !important;
	border-radius: 10px !important;
	transition: background .18s ease, border-color .18s ease;
}

/* hlavná akcia */
#cart-first-step-bottom-buttons .button-type-next {
	background: var(--ai-green) !important;
	border: 0 !important;
}

#cart-first-step-bottom-buttons .button-type-next:hover {
	background: var(--ai-green-dark) !important;
}

#cart-first-step-bottom-buttons .button-type-next input,
#cart-first-step-bottom-buttons #payDel-button {
	width: 100% !important;
	height: 50px !important;
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
	background: none !important;
	border: 0 !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	color: #fff !important;
	cursor: pointer;
}

/* sekundárna akcia — späť na nákup */
#cart-first-step-bottom-buttons .button-type-back {
	background: #fff !important;
	border: 1px solid var(--ai-line) !important;
	height: 44px !important;
}

#cart-first-step-bottom-buttons .button-type-back:hover {
	background: var(--ai-green-soft) !important;
	border-color: #CFE3D7 !important;
}

#cart-first-step-bottom-buttons .button-type-back a {
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 100% !important;
	height: 44px !important;
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	color: var(--ai-ink) !important;
	text-decoration: none !important;
}

#cart-first-step-bottom-buttons .button-type-back:hover a {
	color: var(--ai-green-dark) !important;
}

/* --- 20j) Darčeky k nákupu -------------------------------------------- */

#gifts_in_cart_text {
	float: none !important;
	width: 100% !important;
	height: auto !important;
	margin: 0 0 14px 0 !important;
	padding: 0 0 12px 0 !important;
	border-bottom: 1px solid var(--ai-line);
}

#gifts_in_cart_text b,
#gifts_in_cart_text p:first-child {
	font-size: 14px !important;
	font-weight: 700 !important;
	color: var(--ai-ink) !important;
}

#gifts_in_cart_text p {
	margin: 0 !important;
	font-size: 13px !important;
	line-height: 1.5 !important;
	color: #4B5A52 !important;
}

#gifts_in_cart_content {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
	gap: 12px;
	float: none !important;
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
}

#gifts_in_cart_content > div {
	display: flex !important;
	flex-direction: column;
	align-items: center;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	padding: 12px !important;
	box-sizing: border-box;
	float: none !important;
	background: #fff;
	border: 1px solid var(--ai-line);
	border-radius: 12px;
	text-align: center;
	transition: border-color .16s ease, box-shadow .16s ease;
}

#gifts_in_cart_content > div:hover {
	border-color: #CFE3D7;
	box-shadow: 0 6px 16px rgba(31, 42, 36, .08);
}

#gifts_in_cart_content img {
	max-width: 100%;
	max-height: 90px;
	width: auto;
	height: auto;
	margin: 6px 0 10px 0;
}

#gifts_in_cart_content input[type="checkbox"] {
	align-self: flex-start;
	width: 17px;
	height: 17px;
	margin: 0 !important;
	accent-color: var(--ai-green);
	cursor: pointer;
}

#gifts_in_cart_content p {
	margin: 0 !important;
	font-size: 12.5px !important;
	line-height: 1.4 !important;
	color: var(--ai-ink) !important;
}

/* --- 20k) Prihlásenie v košíku ---------------------------------------- */

#cart-login-form-first-step > p:first-child {
	margin: 0 0 14px 0 !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	color: var(--ai-ink) !important;
	text-align: left !important;
}

#cart-login-form-first-step-info {
	margin: 12px 0 0 0 !important;
	font-size: 12.5px !important;
	line-height: 1.6 !important;
	color: var(--ai-muted) !important;
	text-align: left !important;
}

#cart-login-form-first-step-info a {
	color: var(--ai-green-dark) !important;
	font-weight: 600;
	text-decoration: none !important;
}

/* --- 20l) Nadpisy sekcií formulárov ------------------------------------ */

#cart-buy-form-first-step > p:first-child,
#cart-reg-form-first-step > p:first-child,
#cart_description > label,
#three_emails_in_cart > p {
	display: block;
	margin: 0 0 14px 0 !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	color: var(--ai-ink) !important;
	text-align: left !important;
}

/* --- 20m) Polia formulárov v košíku ------------------------------------ */

.cart-col-main input[type="text"],
.cart-col-main input[type="password"],
.cart-col-main input[type="email"],
.cart-col-main input[type="tel"],
.cart-col-main select,
.cart-col-main textarea {
	width: 100% !important;
	max-width: none !important;
	height: 46px !important;
	line-height: 46px !important;
	margin: 0 !important;
	padding: 0 14px !important;
	box-sizing: border-box;
	float: none !important;
	background: #F6F8F7 !important;
	border: 1px solid var(--ai-line) !important;
	border-radius: 10px !important;
	font-size: 13.5px !important;
	color: var(--ai-ink) !important;
	transition: border-color .16s ease, box-shadow .16s ease, background .16s ease;
}

.cart-col-main textarea {
	height: auto !important;
	min-height: 90px;
	line-height: 1.6 !important;
	padding: 12px 14px !important;
	resize: vertical;
}

.cart-col-main select {
	line-height: normal !important;
	appearance: none;
	-webkit-appearance: none;
	padding-right: 34px !important;
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%236B7B72' d='M1.4 0 6 4.6 10.6 0 12 1.4 6 7.4 0 1.4z'/%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important;
	background-position: right 13px center !important;
	cursor: pointer;
}

.cart-col-main input:focus,
.cart-col-main select:focus,
.cart-col-main textarea:focus {
	outline: none;
	background-color: #fff !important;
	border-color: var(--ai-green) !important;
	box-shadow: 0 0 0 3px rgba(74, 169, 108, .14);
}

.cart-col-main input:-webkit-autofill,
.cart-col-main input:-webkit-autofill:hover,
.cart-col-main input:-webkit-autofill:focus {
	-webkit-box-shadow: 0 0 0 40px #F6F8F7 inset !important;
	-webkit-text-fill-color: var(--ai-ink) !important;
}

.cart-col-main input[type="checkbox"],
.cart-col-main input[type="radio"] {
	width: 17px !important;
	height: 17px !important;
	margin: 0 8px 0 0 !important;
	padding: 0 !important;
	accent-color: var(--ai-green);
	cursor: pointer;
}

/* --- 20n) Výber krajiny, platby a dopravy ------------------------------ */

#cart-coutry-pay-delivery-selections .cart-block-title,
#cart-coutry-pay-delivery-selections > div > p:first-child {
	margin: 0 0 12px 0 !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: .5px;
	text-transform: uppercase;
	color: var(--ai-muted) !important;
}

#cart-coutry-pay-delivery-selections .bg-cart-block {
	margin: 0 0 16px 0 !important;
	padding: 16px !important;
	box-sizing: border-box;
	background: #F7F9F8 !important;
	border: 1px solid var(--ai-line) !important;
	border-radius: 12px !important;
}

#cart-coutry-pay-delivery-selections label {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0 0 8px 0;
	font-size: 13.5px !important;
	color: var(--ai-ink) !important;
	cursor: pointer;
}

#cart-coutry-pay-delivery-selections img {
	max-height: 22px;
	width: auto;
	vertical-align: middle;
}

/* --- 20o) Odporučenie priateľom --------------------------------------- */

#three_emails_in_cart .three_emails_in_cart_row {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 10px;
}

#three_emails_in_cart label {
	flex: 0 0 70px;
	margin: 0 !important;
	font-size: 12.5px !important;
	color: var(--ai-muted) !important;
}

#three_emails_in_cart .button-type-1 {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	float: none !important;
	width: auto !important;
	height: 42px !important;
	margin: 6px 0 0 0 !important;
	padding: 0 !important;
	background: #fff !important;
	border: 1px solid var(--ai-line) !important;
	border-radius: 10px !important;
}

#three_emails_in_cart .button-type-1:hover {
	background: var(--ai-green-soft) !important;
	border-color: #CFE3D7 !important;
}

#three_emails_in_cart .button-type-1 a {
	display: flex !important;
	align-items: center;
	height: 42px !important;
	padding: 0 18px !important;
	font-size: 13.5px !important;
	font-weight: 600 !important;
	color: var(--ai-ink) !important;
	text-decoration: none !important;
}

#three_emails_in_cart hr.space {
	display: none !important;
}

/* --- 20p) Responzívne -------------------------------------------------- */

@media screen and (max-width:1036px) {
	.cart-layout {
		grid-template-columns: minmax(0, 1fr);
	}

	.cart-col-aside {
		position: static;
		order: -1;   /* súhrn nad obsahom, aby bol hneď vidieť */
	}
}

@media screen and (max-width:800px) {
	body.cart-first-and-second .content {
		padding: 6px 16px 30px 16px;
	}

	#steps-cart {
		flex-direction: column;
		gap: 8px;
	}

	.cart-col-main > #cart-products,
	.cart-col-main > #gifts_in_cart,
	.cart-col-main > #cart-login-form-first-step,
	.cart-col-main #cart-buy-form-first-step,
	.cart-col-main #cart-reg-form-first-step,
	.cart-col-main #cart-coutry-pay-delivery-selections,
	.cart-col-main #three_emails_in_cart,
	.cart-col-main #cart_description,
	.cart-summary {
		padding: 14px !important;
	}

	/* tabuľka položiek ako karty */
	#cart-products table,
	#cart-products table tbody,
	#cart-products table tr,
	#cart-products table td {
		display: block !important;
		width: 100% !important;
		box-sizing: border-box;
	}

	#cart-products table tr:first-child {
		display: none !important;
	}

	#cart-products table tr {
		position: relative;
		margin: 0 0 12px 0;
		padding: 12px;
		border: 1px solid var(--ai-line);
		border-radius: 12px;
	}

	#cart-products table td {
		padding: 5px 0 !important;
		border-bottom: 0 !important;
		text-align: left;
	}

	/* --- polozka kosika ako kompaktna karta ---------------------------- */
	/* :has() rozlisi riadok s produktom od riadku so zlavovym kuponom */

	#cart-products table tr:has(> td.price-all) {
		display: grid !important;
		grid-template-columns: 68px minmax(0, 1fr) auto;
		grid-template-areas:
			"obrazok nazov zmazat"
			"obrazok cena  cena"
			"pocet   pocet spolu";
		align-items: center;
		column-gap: 12px;
		row-gap: 8px;
		padding: 12px !important;
	}

	#cart-products table tr:has(> td.price-all) > td:nth-child(1) {
		grid-area: obrazok;
		align-self: start;
	}

	#cart-products table tr:has(> td.price-all) > td:nth-child(1) img {
		width: 100% !important;
		height: auto;
		border-radius: 8px;
	}

	#cart-products table tr:has(> td.price-all) > td:nth-child(2) {
		grid-area: nazov;
		padding-top: 0 !important;
	}

	#cart-products table tr:has(> td.price-all) > td.price {
		grid-area: cena;
		font-size: 13px !important;
		color: var(--ai-muted) !important;
	}

	/* bez hlavicky tabulky by nebolo jasne, ze ide o cenu za kus */
	#cart-products table tr:has(> td.price-all) > td.price:after {
		content: " / ks";
		font-size: 12px;
	}

	#cart-products table tr:has(> td.price-all) > td:nth-child(4) {
		grid-area: pocet;
		padding-bottom: 0 !important;
	}

	#cart-products table tr:has(> td.price-all) > td.price-all {
		grid-area: spolu;
		padding-bottom: 0 !important;
		font-size: 17px !important;
		font-weight: 700 !important;
		text-align: right !important;
		white-space: nowrap;
	}

	#cart-products table tr:has(> td.price-all) > td:nth-child(6) {
		grid-area: zmazat;
		justify-self: end;
		align-self: start;
		padding: 0 !important;
	}

	#cart-products td .button-type-1:has(a[href*="/take/id/"]) {
		width: 34px !important;
		height: 34px !important;
	}

	/* --- zlavovy kupon ------------------------------------------------- */
	/* Prazdne riadky (bez buniek) by inak dostali ramcek karty. */

	#cart-products table tr:not(:has(> td)) {
		display: none !important;
	}

	#cart-products table tr:not(:has(> td.price-all)) {
		margin-bottom: 0 !important;
		padding: 0 !important;
		border: 0 !important;
	}

	#cart-products table tr:not(:has(> td.price-all)) td {
		padding: 0 !important;
	}

	/* bunka kuponu ma triedu .price a od zakladu pevnu sirku 220px,
	   riadok zase pevnu vysku — obsah preto pretekal von z karty */
	#cart-products table #return-coupons {
		height: auto !important;
		min-height: 0 !important;
	}

	#cart-products table #return-coupons > td.price {
		width: 100% !important;
		max-width: none !important;
		height: auto !important;
	}

	/* #coupons-bg je float:left so sirkou 220px — pretekal z boxu von */
	#cart-products #coupons-bg {
		display: block;
		float: none !important;
		width: 100% !important;
		box-sizing: border-box;
		padding: 14px !important;
		border: 1px solid var(--ai-line);
		border-radius: 12px;
	}

	#cart-products #coupons-bg .coupons-text {
		float: none !important;
		width: 100% !important;
		margin: 0 0 8px 0 !important;
	}

	#cart-products #coupons-bg .coupons-text p {
		margin: 0 !important;
		text-align: left !important;
	}

	#cart-products #coupons-bg input.coupons {
		display: block;
		float: none !important;
		width: 100% !important;
		margin: 0 0 10px 0 !important;
		box-sizing: border-box;
	}

	#cart-products #cart-confirm-coupon-button {
		display: block !important;
		float: none !important;
		width: 100% !important;
		margin: 0 !important;
	}

	#cart-products #cart-confirm-coupon-button a {
		float: none !important;
		width: 100% !important;
		box-sizing: border-box;
	}

	/* --- suhrn az za formularom -------------------------------------- */
	/* Na mobile je poradie prirodzene: obsah -> udaje -> objednanie.
	   Celkovu sumu vidno aj v hlavicke, takze nic nechyba. */

	.cart-col-aside {
		order: 0;
		margin-top: 16px;
	}

	/* --- vyber krajiny, platby a dopravy: kompaktnejsie riadky --------- */
	/* Rozostupy robil <hr class="space"> s 22px spodnym okrajom. */

	#cart-coutry-pay-delivery-selections hr.space {
		margin-bottom: 6px !important;
	}

	#cart-coutry-pay-delivery-selections dd {
		margin-top: 2px !important;
	}

	#cart-coutry-pay-delivery-selections label {
		margin-bottom: 0 !important;
		min-height: 26px;
		align-items: center;
	}

	/* --- poznamka k objednavke nemusi zabrat cely displej ------------- */

	#cart_description textarea {
		height: 130px !important;
		min-height: 130px !important;
	}
}

/* --- 20q) Tlačidlo zľavového kupónu (nie je to odobranie položky) ------ */

#cart-products td .button-type-1:not(:has(a[href*="/take/id/"])) {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	float: none !important;
	width: auto !important;
	height: 44px !important;
	margin: 0 !important;
	padding: 0 !important;
	background: var(--ai-green) !important;
	border: 0 !important;
	border-radius: 10px !important;
	transition: background .18s ease;
}

#cart-products td .button-type-1:not(:has(a[href*="/take/id/"])):hover {
	background: var(--ai-green-dark) !important;
}

#cart-products td .button-type-1:not(:has(a[href*="/take/id/"])) a {
	display: flex !important;
	align-items: center;
	height: 44px !important;
	padding: 0 20px !important;
	margin: 0 !important;
	font-size: 13.5px !important;
	font-weight: 600 !important;
	color: #fff !important;
	text-decoration: none !important;
	white-space: nowrap;
	cursor: pointer;
}

/* riadok s kupónom nech je v jednom riadku */
#cart-products tr:last-child td {
	padding-top: 16px !important;
}

/* --- 20r) Prihlásenie v košíku — formulár ------------------------------ */

#cart-login-form-first-step form,
#cart-login-form-first-step .myform,
#cart-login-form-first-step fieldset,
#cart-login-form-first-step dd,
#cart-login-form-first-step dl {
	width: 100% !important;
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

#cart-login-form-first-step dt {
	display: none !important;
}

#cart-login-form-first-step .row {
	display: block !important;
	width: 100% !important;
	margin: 0 0 10px 0 !important;
	float: none !important;
}

#cart-login-form-first-step .element {
	width: 100% !important;
	max-width: none !important;
	float: none !important;
	margin: 0 !important;
}

#cart-login-form-first-step .buttons {
	width: 100% !important;
	margin: 4px 0 0 0 !important;
	float: none !important;
}

#cart-login-form-first-step .button-type-1 {
	display: flex !important;
	align-items: center;
	justify-content: center;
	float: none !important;
	width: 100% !important;
	height: 46px !important;
	margin: 0 !important;
	padding: 0 !important;
	background: var(--ai-green) !important;
	border: 0 !important;
	border-radius: 10px !important;
	transition: background .18s ease;
}

#cart-login-form-first-step .button-type-1:hover {
	background: var(--ai-green-dark) !important;
}

#cart-login-form-first-step .button-type-1 input {
	width: 100% !important;
	height: 46px !important;
	margin: 0 !important;
	padding: 0 !important;
	background: none !important;
	border: 0 !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	color: #fff !important;
	cursor: pointer;
}

/* --- 20s) Formulár dodacích údajov ------------------------------------- */

#cart-buy-form-first-step .row,
#cart-reg-form-first-step .row,
#cart-buy-form-first-step [class*="row-"],
#cart-reg-form-first-step [class*="row-"] {
	margin-top: 12px !important;
	margin-bottom: 0 !important;
}

#cart-buy-form-first-step dt:empty,
#cart-reg-form-first-step dt:empty {
	display: none !important;
}

#cart-buy-form-first-step #index-load-ajax,
#cart-reg-form-first-step #index-load-ajax,
#cart-coutry-pay-delivery-selections #index-load-ajax {
	display: none !important;   /* sivý načítavací pruh po dokončení AJAXu */
}

#cart-buy-form-first-step .element,
#cart-reg-form-first-step .element {
	width: 100% !important;
	max-width: none !important;
	float: none !important;
}

/* --- 20t) Obsah blokov je plávajúci — bez flow-root by karty skolabovali */

.cart-col-main > #cart-products,
.cart-col-main > #gifts_in_cart,
.cart-col-main > #cart-login-form-first-step,
.cart-col-main #cart-buy-form-first-step,
.cart-col-main #cart-reg-form-first-step,
.cart-col-main #cart-coutry-pay-delivery-selections,
.cart-col-main #three_emails_in_cart,
.cart-col-main #cart_description,
.cart-col-main #cart-buy-form-first-step form,
.cart-col-main #cart-reg-form-first-step form {
	display: flow-root !important;
}

/* riadky odporučenia priateľom pod seba */
#three_emails_in_cart .three_emails_in_cart_row {
	float: none !important;
	width: 100% !important;
	clear: both;
}

#three_emails_in_cart .three_emails_in_cart_row input {
	flex: 1 1 auto;
	width: auto !important;
}

#three_emails_in_cart > span,
#three_emails_in_cart > p {
	float: none !important;
}

#three_emails_in_cart > p {
	display: block;
	margin: 0 0 14px 0 !important;
	font-size: 13.5px !important;
	font-weight: 400 !important;
	line-height: 1.55 !important;
	color: #4B5A52 !important;
}

#three_emails_in_cart > p b {
	color: var(--ai-ink) !important;
}

/* --- 20u) Poznámka k objednávke --------------------------------------- */

#cart_description label {
	display: block;
	margin: 0 0 10px 0 !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	color: var(--ai-ink) !important;
}

/* --- 20v) Súhlasy vo formulári dodacích údajov ------------------------- */

#cart-buy-form-first-step .row label.left,
#cart-reg-form-first-step .row label.left {
	display: inline-flex;
	align-items: flex-start;
	gap: 8px;
	width: auto !important;
	margin: 0 !important;
	font-size: 13px !important;
	line-height: 1.5 !important;
	color: #4B5A52 !important;
	cursor: pointer;
}

/* --- 20w) Riadky so zaškrtávacím poľom: pole vľavo, text hneď zaň ------ */

#cart-buy-form-first-step .row:has(input[type="checkbox"]),
#cart-reg-form-first-step .row:has(input[type="checkbox"]) {
	display: flex !important;
	align-items: flex-start;
	gap: 9px;
	width: 100% !important;
	margin: 0 0 10px 0 !important;
	float: none !important;
}

#cart-buy-form-first-step .row:has(input[type="checkbox"]) .element,
#cart-reg-form-first-step .row:has(input[type="checkbox"]) .element {
	order: 1;
	flex: 0 0 auto;
	width: auto !important;
}

#cart-buy-form-first-step .row:has(input[type="checkbox"]) label.left,
#cart-reg-form-first-step .row:has(input[type="checkbox"]) label.left {
	order: 2;
	flex: 1 1 auto;
	width: auto !important;
	margin: 0 !important;
	text-align: left !important;
}

#cart-buy-form-first-step .row:has(input[type="checkbox"]) input[type="checkbox"],
#cart-reg-form-first-step .row:has(input[type="checkbox"]) input[type="checkbox"] {
	margin: 1px 0 0 0 !important;
}

/* ==========================================================================
   21) PÍSMO — Inter
   Základná téma má "Roboto" natvrdo v desiatkach selektorov, preto je
   potrebný plošný prepis. Ikonové prvky (Font Awesome) sú vynechané,
   inak by sa z ikon stali štvorčeky.
   ========================================================================== */

:root {
	--ai-font: 'Inter', 'Roboto', -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif;
}

body,
body :not(i):not([class*="fa-"]):not(.fa):not(.fas):not(.far):not(.fab):not(.fal):not(.fad):not([class^="icon-"]):not([class*=" icon-"]):not(.slick-next):not(.slick-prev) {
	font-family: var(--ai-font) !important;
}

/* Inter má vyššiu strednú výšku — text pôsobí väčší,
   preto mierne uvoľníme riadkovanie a zjemníme vykreslenie. */
body {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	letter-spacing: -.005em;
}

/* Ceny a číselné údaje s rovnako širokými číslicami,
   aby sa v košíku a v objednávkach zvisle zarovnali. */
#cart-products .price,
#cart-products td,
.cart-summary #fullPrice .price,
#user-order table.table-public td,
#order-detail .order-detail-cell-first > div:last-child p,
#order-detail .order-detail-cell-second > div:last-child p,
#category-products .catalog-block .product-content .normal_price,
#category-products .catalog-block .product-content .old_price,
#tips-after-add-to-cart .product-content .normal_price,
#tips-after-add-to-cart .product-content .old_price,
#favorites-product .product-content .normal_price,
#detail #price-block .normal_price,
#detail #price-block .old_price {
	font-variant-numeric: tabular-nums;
	font-feature-settings: "tnum" 1;
}

/* ==========================================================================
   22) ROZBAĽOVACIE MENU KATEGÓRIÍ V HORNOM MENU
   Týka sa iba položiek s kategóriami — submenu "Funkcie e-shopu"
   (vytiahnuté články na tmavom podklade) je zo selektorov vynechané.
   ========================================================================== */

#articles-menu > ul > li:not(.funkcie_eshopu):not(.active-funkcie_eshopu) > ul.submenu {
	/* Okno musí presne nadväzovať na spodok položky menu. Pôvodných 43 px
	   bolo počítaných na nižšiu lištu a okno sa prekrývalo s tlačidlom,
	   66 px zas nechávalo medzeru, cez ktorú sa pri prechode myšou
	   rozbalenie zatváralo. */
	margin-top: 58px !important;
	padding: 24px 26px !important;
	box-sizing: border-box;
	background: #fff !important;
	border: 1px solid var(--ai-line);
	border-radius: 14px;
	box-shadow: 0 18px 40px rgba(31, 42, 36, .14);
	z-index: 60;
}

/* stĺpce ako mriežka namiesto inline-block s pevnými 25 % a deliacimi čiarami */
#articles-menu > ul > li:not(.funkcie_eshopu):not(.active-funkcie_eshopu) > ul.submenu {
	display: none;
	grid-template-columns: repeat(auto-fit, minmax(255px, 1fr));
	gap: 8px 10px;
	align-items: start;
}

#articles-menu > ul > li:not(.funkcie_eshopu):not(.active-funkcie_eshopu):hover > ul.submenu {
	display: grid !important;
}

/* Neviditeľný pás nad oknom — poistka, aby medzi lištou a rozbalením
   nevznikla "mŕtva zóna", v ktorej kurzor opustí položku menu. */
#articles-menu > ul > li:not(.funkcie_eshopu):not(.active-funkcie_eshopu) > ul.submenu:before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: -16px;
	height: 16px;
	background: transparent;
}

#articles-menu > ul > li:not(.funkcie_eshopu):not(.active-funkcie_eshopu) > ul.submenu > li {
	float: none !important;
	/* nadpis cez celú šírku, pod ním obrázok vľavo a podkategórie vpravo */
	display: grid !important;
	grid-template-columns: 78px minmax(0, 1fr);
	gap: 0 12px;
	align-items: start;
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 12px !important;
	box-sizing: border-box;
	border-right: 0 !important;   /* pôvodne zvislé čiary #dedede */
	border-radius: 10px;
	transition: background .16s ease;
}

#articles-menu > ul > li:not(.funkcie_eshopu):not(.active-funkcie_eshopu) > ul.submenu > li:hover {
	background: #F7F9F8;
}

/* --- názov kategórie --- */

#articles-menu > ul > li:not(.funkcie_eshopu):not(.active-funkcie_eshopu) > ul.submenu > li > a {
	grid-column: 1 / -1;
	display: block !important;
	position: static !important;
	top: auto !important;
	left: auto !important;
	width: auto !important;
	margin: 0 0 10px 0 !important;
	padding: 0 !important;
	font-size: 13.5px !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;
	letter-spacing: .2px;
	color: var(--ai-ink) !important;
	text-decoration: none !important;
	text-align: left !important;
}

#articles-menu > ul > li:not(.funkcie_eshopu):not(.active-funkcie_eshopu) > ul.submenu > li:hover > a,
#articles-menu > ul > li:not(.funkcie_eshopu):not(.active-funkcie_eshopu) > ul.submenu > li.active > a {
	color: var(--ai-green-dark) !important;
	background: none !important;
	text-decoration: none !important;
}

/* --- obrázok kategórie: pôvodne až 220 px vysoký --- */

#articles-menu > ul > li:not(.funkcie_eshopu):not(.active-funkcie_eshopu) > ul.submenu > li > span {
	grid-column: 1;
	display: block !important;
	width: 78px;
}

#articles-menu > ul > li:not(.funkcie_eshopu):not(.active-funkcie_eshopu) > ul.submenu img.small_image_category_top {
	float: none !important;
	position: static !important;
	display: block !important;
	width: 78px !important;
	height: 78px !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 6px !important;
	box-sizing: border-box;
	object-fit: contain;
	background: #F7F9F8;
	border-radius: 10px;
}

/* --- podkategórie --- */

#articles-menu > ul > li:not(.funkcie_eshopu):not(.active-funkcie_eshopu) > ul.submenu > li > ul.submenu-1 {
	grid-column: 2;
	align-self: start;
}

#articles-menu > ul > li:not(.funkcie_eshopu):not(.active-funkcie_eshopu) > ul.submenu ul.submenu-1 {
	display: block !important;
	visibility: visible !important;
	position: static !important;
	float: none !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	background: none !important;
	border: 0 !important;
	box-shadow: none !important;
}

#articles-menu > ul > li:not(.funkcie_eshopu):not(.active-funkcie_eshopu) > ul.submenu ul.submenu-1 > li {
	float: none !important;
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	line-height: normal !important;
}

#articles-menu > ul > li:not(.funkcie_eshopu):not(.active-funkcie_eshopu) > ul.submenu ul.submenu-1 > li > a {
	display: block !important;
	position: static !important;
	/* odkazy boli plávajúce, takže <li> mali nulovú výšku a podkategórie
	   sa vykresľovali cez seba */
	float: none !important;
	width: auto !important;
	margin: 0 !important;
	padding: 5px 8px !important;
	border-radius: 7px;
	font-size: 12.5px !important;
	font-weight: 400 !important;
	line-height: 1.4 !important;
	color: #5B6B62 !important;
	text-decoration: none !important;
	text-align: left !important;
	transition: background .14s ease, color .14s ease;
}

#articles-menu > ul > li:not(.funkcie_eshopu):not(.active-funkcie_eshopu) > ul.submenu ul.submenu-1 > li > a:hover {
	background: var(--ai-green-soft) !important;
	color: var(--ai-green-dark) !important;
}

/* tretia a nižšie úrovne v tomto rozbalení nezobrazujeme (rovnako ako doteraz) */
#articles-menu > ul > li:not(.funkcie_eshopu):not(.active-funkcie_eshopu) > ul.submenu ul.submenu-2,
#articles-menu > ul > li:not(.funkcie_eshopu):not(.active-funkcie_eshopu) > ul.submenu ul.submenu-3 {
	display: none !important;
}

/* ==========================================================================
   23) NÁHĽAD KOŠÍKA V HLAVIČKE (#header #public-cart .products)
   ========================================================================== */

#header #public-cart .products {
	min-width: 320px;
	max-width: 380px;
	margin-top: 0;
	padding: 6px !important;
	border-radius: 14px !important;
	box-shadow: 0 18px 40px rgba(31, 42, 36, .16) !important;
	overflow: hidden;
}

/* Neviditeľný mostík pod pilulkou košíka. Musí patriť košíku, nie oknu —
   okno je v zatvorenom stave display:none, takže by jeho vlastný mostík
   pri prechode myšou neexistoval a rozbalenie by sa zavrelo. */
#header #public-cart:after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: 100%;
	height: 14px;
	background: transparent;
}

#header #public-cart .products ul {
	margin: 0 !important;
	padding: 0 !important;
	width: 100% !important;
	list-style: none;
}

#header #public-cart .products li {
	float: none !important;
	display: block !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	border-bottom: 1px solid #F0F3F1 !important;
	list-style: none;
}

#header #public-cart .products li:last-child {
	border-bottom: 0 !important;
}

#header #public-cart .products li > p {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: baseline;
	gap: 2px 12px;
	float: none !important;
	width: auto !important;
	margin: 0 !important;
	padding: 11px 12px !important;
	border-radius: 10px;
	transition: background .14s ease;
}

#header #public-cart .products li:hover > p {
	background: #F7F9F8;
}

/* názov produktu cez celý riadok */
#header #public-cart .products .name {
	grid-column: 1 / -1;
	float: none !important;
	width: auto !important;
	margin: 0 0 2px 0 !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	line-height: 1.35 !important;
}

#header #public-cart .products .name a {
	color: var(--ai-ink) !important;
	text-decoration: none !important;
}

#header #public-cart .products li:hover .name a {
	color: var(--ai-green-dark) !important;
}

/* počet vľavo, cena vpravo */
#header #public-cart .products .count {
	grid-column: 1;
	float: none !important;
	width: auto !important;
	margin: 0 !important;
	font-size: 12px !important;
	color: var(--ai-muted) !important;
	text-align: left !important;
}

#header #public-cart .products .price-li {
	grid-column: 2;
	float: none !important;
	width: auto !important;
	margin: 0 !important;
	font-size: 12.5px !important;
	font-weight: 700 !important;
	color: var(--ai-ink) !important;
	text-align: right !important;
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
	font-feature-settings: "tnum" 1;
}

/* prázdny košík */
#header #public-cart .products li .name:only-child {
	margin: 0 !important;
	padding: 6px 4px !important;
	font-size: 13px !important;
	font-weight: 400 !important;
	color: var(--ai-muted) !important;
	text-align: center !important;
}

/* ==========================================================================
   24) ODKAZY POD GALÉRIOU V DETAILE PRODUKTU (#detail .info-links)
   Pôvodné ikony boli výrezy zo sprite obrázka Images_CMS.png — zelený dolár,
   modrý otáznik, žlté hviezdy, sivé šípky. Nahradené jednotnou sadou.
   ========================================================================== */

#detail .info-links ul {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
	gap: 2px 8px;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none;
}

#detail .info-links li {
	display: flex !important;
	align-items: center;
	gap: 10px;
	float: none !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none;
	border-radius: 9px;
	transition: background .14s ease;
}

#detail .info-links li:hover {
	background: var(--ai-green-soft);
}

/* --- ikona --- */

#detail .info-links li > span {
	flex: 0 0 auto;
	float: none !important;
	width: 26px !important;
	height: 26px !important;
	margin: 0 0 0 8px !important;
	padding: 0 !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	background-image: none !important;   /* pôvodný sprite */
	background-color: transparent !important;
}

#detail .info-links li > span:before {
	font-family: "Font Awesome 5 Free" !important;
	font-weight: 900;
	font-size: 13px;
	color: var(--ai-muted);
	transition: color .14s ease;
}

#detail .info-links li:hover > span:before {
	color: var(--ai-green-dark);
}

#detail .info-links .icon-cart-low-price:before   { content: "\f0f3"; }  /* zvonček — upozornenie */
#detail .info-links .icon-cart-question:before    { content: "\f059"; }  /* otáznik */
#detail .info-links .icon-cart-send:before        { content: "\f0e0"; }  /* obálka */
#detail .info-links .icon-cart-add-favorit:before { content: "\f004"; }  /* srdce */
#detail .info-links .icon-compare:before          { content: "\f24e"; }  /* váhy — porovnanie */

/* --- text odkazu --- */

#detail .info-links a {
	flex: 1 1 auto;
	display: flex !important;
	align-items: center;
	min-height: 36px;
	margin: 0 !important;
	padding: 6px 10px 6px 0 !important;
	font-size: 13px !important;
	line-height: 1.4 !important;
	color: #4B5A52 !important;
	text-decoration: none !important;
	cursor: pointer;
	transition: color .14s ease;
}

#detail .info-links li:hover a {
	color: var(--ai-green-dark) !important;
}

@media screen and (max-width:800px) {
	#detail .info-links ul {
		grid-template-columns: minmax(0, 1fr);
	}
}

/* ==========================================================================
   25) SPODNÉ STRÁNKOVANIE KATALÓGU (.paginationControl)
   Je priamym potomkom .catalog-block, z ktorého je mriežka — bez roztiahnutia
   cez celý riadok sa vykresľovalo ako ďalšia "dlaždica" vedľa produktov.
   ========================================================================== */

#category-products .catalog-block > .paginationControl,
#tips-after-add-to-cart > .paginationControl,
#favorites-product > .paginationControl {
	grid-column: 1 / -1;
}

.paginationControl {
	display: flex !important;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: 100% !important;
	margin: 22px 0 6px 0 !important;
	padding: 0 !important;
	float: none !important;
}

/* poradie: šípka späť — čísla — šípka vpred, popis strany na vlastný riadok */
.paginationControl .a_paginator_lt,
.paginationControl .a_paginator_lt_disabled { order: 1; }
.paginationControl #pages                   { order: 2; }
.paginationControl .a_paginator_gt,
.paginationControl .a_paginator_gt_disabled { order: 3; }

/* flex-basis 100 % zalomí popis pod ovládacie prvky */
.paginationControl .page-number {
	order: 4;
	flex: 0 0 100%;
	margin: 4px 0 0 0 !important;
	text-align: center;
}

/* --- čísla strán --- */

.paginationControl #pages {
	display: flex;
	align-items: center;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
}

.paginationControl #pages p {
	display: flex;
	align-items: center;
	gap: 4px;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
}

.paginationControl .a_paginator {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	min-width: 34px;
	height: 34px;
	margin: 0 !important;
	padding: 0 8px !important;
	box-sizing: border-box;
	background: #fff;
	border: 1px solid var(--ai-line);
	border-radius: 9px;
	font-size: 13px !important;
	font-weight: 600 !important;
	line-height: 1 !important;
	color: var(--ai-ink) !important;
	text-decoration: none !important;
	transition: background .16s ease, border-color .16s ease, color .16s ease;
}

.paginationControl a.a_paginator:hover {
	background: var(--ai-green-soft);
	border-color: #CFE3D7;
	color: var(--ai-green-dark) !important;
}

/* aktuálna strana je <span>, nie <a> */
.paginationControl span.a_paginator {
	background: var(--ai-green) !important;
	border-color: var(--ai-green) !important;
	color: #fff !important;
	cursor: default;
}

/* --- popis "Strana 1/3" --- */

.paginationControl .page-number {
	width: auto !important;
	height: auto !important;
	margin: 0 0 0 6px !important;
	padding: 0 !important;
	float: none !important;
	font-size: 12.5px !important;
	color: var(--ai-muted) !important;
	white-space: nowrap;
}

.paginationControl .page-number .page-number-big {
	font-weight: 700 !important;
	color: var(--ai-ink) !important;
}

/* --- neaktívne šípky --- */

.paginationControl .a_paginator_lt_disabled,
.paginationControl .a_paginator_gt_disabled {
	opacity: .45;
	cursor: default;
}

/* ==========================================================================
   26) DLAŽDICA "PREJSŤ NA ĎALŠIU STRÁNKU"
   Je súčasťou mriežky produktov, takže má rovnakú veľkosť ako karta produktu.
   ========================================================================== */

.catalog-next-page-tile {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 4px;
	height: 100%;
	min-height: 240px;
	padding: 24px 18px;
	box-sizing: border-box;
	background: #fff;
	border: 1px dashed #CFE3D7;
	border-radius: 14px;
	text-align: center;
	text-decoration: none !important;
	transition: background .18s ease, border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}

.catalog-next-page-tile:hover {
	background: var(--ai-green-soft);
	border-color: var(--ai-green);
	border-style: solid;
	transform: translateY(-3px);
	box-shadow: 0 12px 26px rgba(31, 42, 36, .12);
}

.catalog-next-page-tile-arrow {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	margin-bottom: 12px;
	background: var(--ai-green-soft);
	border-radius: 50%;
	transition: background .18s ease;
}

.catalog-next-page-tile:hover .catalog-next-page-tile-arrow {
	background: var(--ai-green);
}

.catalog-next-page-tile-arrow:before {
	font-family: "Font Awesome 5 Free" !important;
	font-weight: 900;
	content: "\f061";
	font-size: 18px;
	color: var(--ai-green);
	transition: color .18s ease;
	/* jemné dvojité kývnutie doprava, väčšinu cyklu stojí */
	animation: ai-next-arrow-nudge 2.6s ease-in-out infinite;
}

@keyframes ai-next-arrow-nudge {
	0%, 55%  { transform: translateX(0); }
	63%      { transform: translateX(5px); }
	71%      { transform: translateX(0); }
	79%      { transform: translateX(5px); }
	88%, 100%{ transform: translateX(0); }
}

/* pri prejdení myšou animáciu zastavíme, aby sa neprekrývala s hoverom */
.catalog-next-page-tile:hover .catalog-next-page-tile-arrow:before {
	color: #fff;
	animation: none;
	transform: translateX(3px);
	transition: color .18s ease, transform .18s ease;
}

/* rešpektujeme nastavenie systému "obmedziť pohyb" */
@media (prefers-reduced-motion: reduce) {
	.catalog-next-page-tile-arrow:before {
		animation: none;
	}
}

.catalog-next-page-tile-title {
	font-size: 14px;
	font-weight: 700;
	line-height: 1.35;
	color: var(--ai-ink);
}

.catalog-next-page-tile:hover .catalog-next-page-tile-title {
	color: var(--ai-green-dark);
}

.catalog-next-page-tile-info {
	font-size: 12.5px;
	color: var(--ai-muted);
}

@media screen and (max-width:800px) {
	.catalog-next-page-tile {
		min-height: 170px;
		padding: 18px 14px;
	}

	.catalog-next-page-tile-arrow {
		width: 42px;
		height: 42px;
		margin-bottom: 8px;
	}
}

/* ==========================================================================
   27) CENOVÝ ROZSAH V PANELI KATALÓGU
   Posuvník a hodnota boli vedľa seba (278 px), takže sa celý blok nezmestil
   do riadku a padal pod ostatné ovládanie. Teraz je hodnota pod posuvníkom.
   ========================================================================== */

#top-category-panel #top-category-panel-price-range {
	flex-direction: column;
	align-items: flex-start;
	flex-shrink: 0;
	gap: 6px;
	width: auto !important;
}

#top-category-panel #top-category-panel-price-range-slider {
	flex-shrink: 0;
	width: 170px !important;
	margin: 4px 0 0 0 !important;
}

#top-category-panel #top-category-panel-price-range-text {
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	font-size: 12.5px !important;
	font-weight: 600 !important;
	color: var(--ai-ink) !important;
	text-align: center !important;
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
	font-feature-settings: "tnum" 1;
}

/* ovládanie zvisle vycentrované, aby posuvník s popisom nerozhodil riadok */
#top-category-panel {
	align-items: center;
}

/* ovládanie sa do riadku zmestí len tesne — menšie medzery a povolené
   mierne zmenšenie textových blokov */
#top-category-panel {
	column-gap: 16px;
}

#top-category-panel #top-category-panel-products-on-storage,
#top-category-panel #top-category-panel-sort,
#top-category-panel #top-category-panel-count-to-page-category {
	min-width: 0;
	flex-shrink: 1;
}

/* Flexbox tu zalamoval cenový blok do druhého riadku aj vtedy, keď preň
   bolo miesto. Mriežka drží počet stĺpcov deterministicky. */
#top-category-panel {
	display: grid !important;
	grid-template-columns: auto auto auto auto;
	justify-content: start;
	align-items: center;
	gap: 10px 22px;
}

@media screen and (max-width:1221px) {
	#top-category-panel {
		grid-template-columns: auto auto;
		gap: 12px 20px;
	}
}

@media screen and (max-width:570px) {
	#top-category-panel {
		grid-template-columns: minmax(0, 1fr);
	}
}

/* ==========================================================================
   28) NAPOVEDANIE VO VYHĽADÁVANÍ (jQuery UI autocomplete)
   ========================================================================== */

.ui-autocomplete.ai-suggest-menu,
#search ~ .ui-autocomplete,
ul.ui-autocomplete {
	padding: 6px !important;
	background: #fff !important;
	border: 1px solid var(--ai-line) !important;
	border-radius: 14px !important;
	box-shadow: 0 18px 40px rgba(31, 42, 36, .16) !important;
	z-index: 500 !important;
	max-height: 420px;
	overflow-y: auto;
	overflow-x: hidden;
}

ul.ui-autocomplete .ui-menu-item {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: none !important;
	list-style: none;
}

/* --- riadok s produktom --- */

ul.ui-autocomplete .ai-suggest-row {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 8px 10px;
	border-radius: 10px;
	cursor: pointer;
	transition: background .14s ease;
}

ul.ui-autocomplete .ai-suggest-img {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	padding: 4px;
	box-sizing: border-box;
	background: #F7F9F8;
	border: 1px solid var(--ai-line);
	border-radius: 9px;
	overflow: hidden;
}

ul.ui-autocomplete .ai-suggest-img img {
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
	object-fit: contain;
	opacity: 1 !important;
}

ul.ui-autocomplete .ai-suggest-text {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
	flex: 1 1 auto;
}

ul.ui-autocomplete .ai-suggest-name {
	font-size: 13px;
	font-weight: 600;
	line-height: 1.35;
	color: var(--ai-ink);
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}

ul.ui-autocomplete .ai-suggest-price {
	font-size: 12.5px;
	font-weight: 700;
	color: var(--ai-green-dark);
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
	font-feature-settings: "tnum" 1;
}

/* --- posledný riadok "Zobraziť všetkých X výsledkov" --- */

ul.ui-autocomplete .ai-suggest-all > div {
	margin-top: 4px;
	padding: 11px 10px;
	border-top: 1px solid var(--ai-line);
	border-radius: 0 0 9px 9px;
	font-size: 12.5px;
	font-weight: 700;
	color: var(--ai-green-dark);
	text-align: center;
	cursor: pointer;
	transition: background .14s ease;
}

/* --- riadok bez obrázka (napr. "Žiadne výsledky") --- */

ul.ui-autocomplete .ai-suggest-plain > div {
	padding: 10px;
	border-radius: 9px;
	font-size: 13px;
	color: var(--ai-muted);
	cursor: default;
}

/* --- zvýraznenie aktívnej položky (klávesnica aj myš) --- */

ul.ui-autocomplete .ui-menu-item-wrapper,
ul.ui-autocomplete .ui-state-active,
ul.ui-autocomplete .ui-state-focus {
	margin: 0 !important;
	border: 0 !important;
	background: none !important;
	color: inherit !important;
	font-weight: inherit !important;
}

ul.ui-autocomplete .ai-suggest-item:hover > .ai-suggest-row,
ul.ui-autocomplete .ui-state-active > .ai-suggest-row,
ul.ui-autocomplete .ui-state-focus > .ai-suggest-row {
	background: var(--ai-green-soft);
}

ul.ui-autocomplete .ai-suggest-all:hover > div,
ul.ui-autocomplete .ai-suggest-all.ui-state-active > div {
	background: var(--ai-green-soft);
}

@media screen and (max-width:800px) {
	ul.ui-autocomplete .ai-suggest-img {
		width: 42px;
		height: 42px;
	}
}

/* ==========================================================================
   29) SYSTÉMOVÉ HLÁŠKY (#messages #flash-message)
   Pôvodne: úspech = čierny pruh 60 px s ikonou zo sprite images.png,
   chyba = ružový pruh s tyrkysovým rámikom. Teraz jednotné panely.
   ========================================================================== */

#messages {
	float: none !important;
	width: 100% !important;
	margin: 0 0 18px 0;
}

#messages #flash-message:empty {
	display: none !important;
}

#messages #flash-message p {
	position: relative;
	display: flex !important;
	align-items: flex-start;
	gap: 12px;
	width: 100% !important;
	min-height: 0 !important;
	margin: 0 0 10px 0 !important;
	padding: 14px 18px !important;
	box-sizing: border-box;
	border: 1px solid transparent !important;
	border-radius: 12px !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 1.55 !important;
	font-family: inherit !important;
	text-align: left;
}

#messages #flash-message p:last-child {
	margin-bottom: 0 !important;
}

/* ikona — pôvodne výrez zo sprite obrázka 70×53 px */
#messages #flash-message p > span {
	flex: 0 0 auto;
	float: none !important;
	position: static !important;
	left: auto !important;
	top: auto !important;
	width: 22px !important;
	height: 22px !important;
	margin: 0 !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	background: none !important;
	background-image: none !important;
}

#messages #flash-message p > span:before {
	font-family: "Font Awesome 5 Free" !important;
	font-weight: 900;
	font-size: 15px;
	line-height: 1;
}

/* --- úspech --- */

#messages #flash-message p.success {
	background-color: var(--ai-green-soft) !important;
	border-color: #D3EADC !important;
	color: #24603D !important;
}

#messages #flash-message p.success > span:before {
	content: "\f058";   /* fajka v krúžku */
	color: var(--ai-green) !important;
}

/* --- chyba --- */

#messages #flash-message p.error {
	background-color: #FDEDEC !important;
	border-color: #F3C7C3 !important;
	color: #96322A !important;
	font-weight: 500 !important;
}

#messages #flash-message p.error > span:before {
	content: "\f06a";   /* výkričník v krúžku */
	color: #C0392B !important;
}

/* --- informácia --- */

#messages #flash-message p.info {
	background-color: #E8F1FB !important;
	border-color: #CBDDF2 !important;
	color: #24557F !important;
}

#messages #flash-message p.info > span:before {
	content: "\f05a";   /* i v krúžku */
	color: #2A6099 !important;
}

@media screen and (max-width:800px) {
	#messages #flash-message p {
		padding: 12px 14px !important;
		font-size: 13.5px !important;
	}
}

/* ==========================================================================
   30) VYSÚVACIA LIŠTA "NOVINKY" (#news-slide)
   ========================================================================== */

#news-slide {
	z-index: 300 !important;
}

/* --- úchytka --- */

#news-slide #news-slide-icon {
	width: 42px !important;
	height: 150px !important;
	background: var(--ai-green) !important;
	border-radius: 12px 0 0 12px;
	box-shadow: -4px 4px 16px rgba(31, 42, 36, .18);
	transition: background .18s ease;
}

#news-slide #news-slide-icon:hover {
	background: var(--ai-green-dark) !important;
}

#news-slide #news-slide-icon p {
	width: 150px !important;
	height: 42px !important;
	left: -54px !important;
	top: 54px !important;
	margin: 0 !important;
	padding: 0 !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	gap: 8px;
	font-size: 13px !important;
	font-weight: 700 !important;
	letter-spacing: .6px;
	color: #fff !important;
	text-align: center;
}

/* ikona pred textom (text je otočený, ikona sa otočí s ním) */
#news-slide #news-slide-icon p:before {
	font-family: "Font Awesome 5 Free" !important;
	font-weight: 900;
	content: "\f1ea";   /* noviny */
	font-size: 13px;
}

/* --- panel s novinkami --- */

#news-slide #news-slide-content {
	width: 300px !important;
	padding: 8px !important;
	box-sizing: border-box;
	background: #fff !important;
	border: 1px solid var(--ai-line);
	border-right: 0;
	border-radius: 12px 0 0 12px;
	box-shadow: -10px 10px 34px rgba(31, 42, 36, .16);
	max-height: 70vh;
	overflow-y: auto;
}

#news-slide #news-slide-content .news-slide-single {
	float: none !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 10px 12px !important;
	box-sizing: border-box;
	border-bottom: 1px solid #F0F3F1 !important;
	border-radius: 9px;
	transition: background .14s ease;
}

#news-slide #news-slide-content .news-slide-single:last-child {
	border-bottom: 0 !important;
}

#news-slide #news-slide-content .news-slide-single:hover {
	background: #F7F9F8;
}

/* dátum pod nadpisom, nie nad ním */
#news-slide #news-slide-content .news-slide-single > p {
	order: 2;
	float: none !important;
	width: 100% !important;
	margin: 3px 0 0 0 !important;
	padding: 0 !important;
	font-size: 11.5px !important;
	color: var(--ai-muted) !important;
}

#news-slide #news-slide-content .news-slide-single > a {
	order: 1;
	float: none !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	line-height: 1.4 !important;
	color: var(--ai-ink) !important;
	text-decoration: none !important;
	transition: color .14s ease;
}

#news-slide #news-slide-content .news-slide-single:hover > a {
	color: var(--ai-green-dark) !important;
}

/* poradie meníme cez flex — dátum patrí pod nadpis */
#news-slide #news-slide-content .news-slide-single {
	display: flex !important;
	flex-direction: column;
}

@media screen and (max-width:800px) {
	#news-slide #news-slide-content {
		width: 260px !important;
	}
}

/* ==========================================================================
   31) IKONY KONTAKTU V PÄTIČKE
   Pôvodne biele výrezy zo sprite obrázka, ktoré na svetlom podklade
   takmer zanikali. Nahradené ikonami vo farbe textu vedľa nich.
   ========================================================================== */

#container-footer p:has(> .icon-type-phone),
#container-footer p:has(> .icon-type-email) {
	display: flex;
	align-items: center;
	gap: 9px;
	/* zarovnanie pod logo — ostatný text v stĺpci začína o 20 px vpravo */
	margin: 0 0 6px 20px;
}

#container-footer .icon-type-phone,
#container-footer .icon-type-email {
	flex: 0 0 auto;
	float: none !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 18px !important;
	height: 18px !important;
	margin: 0 !important;
	padding: 0 !important;
	background: none !important;
	background-image: none !important;   /* pôvodný sprite */
}

#container-footer .icon-type-phone:before,
#container-footer .icon-type-email:before {
	font-family: "Font Awesome 5 Free" !important;
	font-weight: 900;
	font-size: 14px;
	line-height: 1;
	/* currentColor = presne farba textu vedľa ikony,
	   takže sa prispôsobí aj pri zmene farby pätičky */
	color: currentColor;
}

#container-footer .icon-type-phone:before {
	content: "\f095";   /* telefón */
}

#container-footer .icon-type-email:before {
	content: "\f0e0";   /* obálka */
}

#container-footer .text-margin {
	margin: 0 !important;
}

/* ==========================================================================
   32) MOBILNÁ SPODNÁ LIŠTA S MENU
   Lišta je fixne prilepená na spodok obrazovky. Na telefónoch s gestovým
   ovládaním (iPhone s home indikátorom, Android s gestami) ju spodný pruh
   systému/prehliadača čiastočne prekrýval, takže sa hamburger zle trafil.
   ========================================================================== */

@media screen and (max-width:800px) {
	#container-top-header-strip {
		height: auto !important;
		min-height: 60px;
		padding-bottom: env(safe-area-inset-bottom, 0px) !important;
		box-sizing: content-box;
		box-shadow: 0 -6px 20px rgba(31, 42, 36, .12);
	}

	/* väčšia klikacia plocha pre hamburger bez zmeny jeho grafiky */
	#container-top-header-strip #mobile-hamburger-menu {
		padding: 7px 6px;
		margin: -7px -6px;
	}
}


/* ==========================================================================
   33) MOBILNÁ SPODNÁ LIŠTA — vzhľad
   POZOR: rozloženie #mobile-hamburger-menu sa zámerne nemení. Panel menu je
   naň naviazaný cez absolútne pozicovanie a transformáciu, takže prerobenie
   na flex ho vysunie mimo obrazovku a panel ostane viditeľný.
   ========================================================================== */

@media screen and (max-width:800px) {

	#container-top-header-strip > .container {
		align-items: center;
		padding: 0 14px !important;
		box-sizing: border-box;
	}

	/* --- odkazy prihlásenie / registrácia ako položky spodnej navigácie --- */

	#container-top-header-strip #top-header-login-links {
		display: flex !important;
		align-items: center;
		gap: 4px !important;
		padding: 0 !important;
		font-size: 0 !important;   /* skryje textové "|" medzi odkazmi */
	}

	#container-top-header-strip #top-header-login-links a {
		display: flex !important;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 3px;
		min-width: 62px;
		min-height: 46px;
		margin: 0 !important;
		padding: 5px 8px !important;
		border-radius: 12px;
		font-size: 10.5px !important;
		font-weight: 600 !important;
		line-height: 1.2 !important;
		color: #1F3D2B !important;
		text-align: center;
		white-space: nowrap;
	}

	#container-top-header-strip #top-header-login-links a:active {
		background: rgba(255, 255, 255, .55);
	}

	#container-top-header-strip #top-header-login-links a:before {
		font-family: "Font Awesome 5 Free" !important;
		font-weight: 900;
		font-size: 16px;
		line-height: 1;
		color: #1F3D2B;
	}

	#container-top-header-strip #top-header-login-links a:first-of-type:before {
		content: "\f2f6";   /* prihlásenie */
	}

	#container-top-header-strip #top-header-login-links a:last-of-type:before {
		content: "\f234";   /* registrácia */
	}

	/* --- prihlásený používateľ --- */

	#container-top-header-strip #top-header-login-list #user-name-button {
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 3px;
		min-width: 62px;
		min-height: 46px;
		padding: 5px 8px !important;
		border-radius: 12px;
		font-size: 10.5px !important;
	}

	#container-top-header-strip #top-header-login-list #user-name-button:before {
		margin-right: 0 !important;
		font-size: 16px !important;
	}

	/* --- čiary hamburgeru: tenšie a v tmavozelenej ako ostatné ikony --- */

	#container-top-header-strip #mobile-hamburger-menu > span {
		width: 26px !important;
		height: 3px !important;
		margin-bottom: 5px !important;
		background: #1F3D2B !important;
		border-radius: 2px;
	}
}

/* ==========================================================================
   34) KATEGÓRIE V MOBILNOM MENU
   Zoznam bol plochý — kategórie plynulo nadväzovali na hlavné menu, klikateľný
   bol len samotný text a šípku tvoril PNG obrázok.
   ========================================================================== */

@media screen and (max-width:800px) {

	#mobile-hamburger-menu > div {
		padding-bottom: 30px !important;
	}

	/* --- nadpis nad blokom kategórií --- */

	#mobile-hamburger-menu ul#mobile-hamburger-menu-left-category:not(:empty):before {
		content: "Kategórie";
		display: block;
		margin: 18px 20px 6px 20px;
		padding-top: 16px;
		border-top: 1px solid rgba(31, 61, 43, .18);
		font-size: 11px;
		font-weight: 700;
		letter-spacing: .8px;
		text-transform: uppercase;
		color: rgba(31, 61, 43, .65);
	}

	/* --- riadky menu (hlavné aj kategórie) --- */

	/* POZOR: na položkách sa nesmie prepisovať display — rozbaľovanie
	   podkategórií je riadené práve prepínaním display:none/list-item.
	   Šípku preto pozicujeme absolútne namiesto flexu. */
	#mobile-hamburger-menu ul#mobile-hamburger-menu-top > li,
	#mobile-hamburger-menu ul#mobile-hamburger-menu-left-category > li {
		position: relative;
		margin: 0 10px !important;
		padding: 0 10px !important;
		border-radius: 10px;
		border-bottom: 0 !important;
	}

	#mobile-hamburger-menu ul#mobile-hamburger-menu-left-category > li.depth-1:active,
	#mobile-hamburger-menu ul#mobile-hamburger-menu-top > li:active {
		background: rgba(255, 255, 255, .45);
	}

	/* celý riadok je klikateľný, nie len text */
	#mobile-hamburger-menu ul#mobile-hamburger-menu-top > li > a,
	#mobile-hamburger-menu ul#mobile-hamburger-menu-left-category > li > a {
		display: block !important;
		min-width: 0;
		padding: 13px 40px 13px 0 !important;
		font-size: 14.5px !important;
		font-weight: 600 !important;
		line-height: 1.35 !important;
		color: #1F3D2B !important;
		text-decoration: none !important;
	}

	/* --- podkategórie --- */

	#mobile-hamburger-menu ul#mobile-hamburger-menu-left-category > li.depth-2,
	#mobile-hamburger-menu ul#mobile-hamburger-menu-left-category > li.depth-3,
	#mobile-hamburger-menu ul#mobile-hamburger-menu-left-category > li.depth-4,
	#mobile-hamburger-menu ul#mobile-hamburger-menu-left-category > li.depth-5 {
		margin-left: 30px !important;
		padding-left: 12px !important;
		border-left: 2px solid rgba(31, 61, 43, .18);
		border-radius: 0 10px 10px 0;
	}

	#mobile-hamburger-menu ul#mobile-hamburger-menu-left-category > li.depth-2 > a,
	#mobile-hamburger-menu ul#mobile-hamburger-menu-left-category > li.depth-3 > a,
	#mobile-hamburger-menu ul#mobile-hamburger-menu-left-category > li.depth-4 > a,
	#mobile-hamburger-menu ul#mobile-hamburger-menu-left-category > li.depth-5 > a {
		padding: 11px 0 !important;
		font-size: 13.5px !important;
		font-weight: 400 !important;
		color: rgba(31, 61, 43, .82) !important;
	}

	/* --- šípka na rozbalenie: pôvodne PNG obrázok 10×6 px --- */

	#mobile-hamburger-menu .mobile-hamburger-menu-expand {
		position: absolute;
		right: 4px;
		top: 6px;
		display: flex !important;
		align-items: center;
		justify-content: center;
		width: 36px !important;
		height: 36px !important;
		margin: 0 !important;
		background: none !important;
		background-image: none !important;
	}

	#mobile-hamburger-menu .mobile-hamburger-menu-expand:before {
		font-family: "Font Awesome 5 Free" !important;
		font-weight: 900;
		content: "\f107";
		font-size: 13px;
		color: rgba(31, 61, 43, .7);
		transition: transform .18s ease;
	}

	/* skrytá šípka stromu z ľavého menu tu nemá čo robiť */
	#mobile-hamburger-menu .category-tree-left-arrow {
		display: none !important;
	}
}

/* ==========================================================================
   35) PODMENU HLAVNÝCH POLOŽIEK V MOBILNOM MENU
   Položky submenu boli plávajúce (float:left), takže ich <ul> mal nulovú
   výšku a po rozbalení sa nič nezobrazilo. Preto float rušíme.
   POZOR: na .submenu sa nesmie prepisovať display — rozbaľovanie ho prepína.
   ========================================================================== */

@media screen and (max-width:800px) {

	#mobile-hamburger-menu ul.submenu,
	#mobile-hamburger-menu ul.submenu-1,
	#mobile-hamburger-menu ul.submenu-2,
	#mobile-hamburger-menu ul.submenu-3 {
		position: static !important;
		float: none !important;
		width: auto !important;
		max-width: none !important;
		margin: 2px 0 6px 0 !important;
		padding: 0 !important;
		background: none !important;
		border: 0 !important;
		box-shadow: none !important;
	}

	/* riadky podmenu — bez plávania, na celú šírku */
	#mobile-hamburger-menu ul.submenu > li,
	#mobile-hamburger-menu ul.submenu-1 > li,
	#mobile-hamburger-menu ul.submenu-2 > li,
	#mobile-hamburger-menu ul.submenu-3 > li {
		position: relative;
		float: none !important;
		width: auto !important;
		max-width: none !important;
		height: auto !important;
		margin: 0 0 0 20px !important;
		padding: 0 10px 0 12px !important;
		border-right: 0 !important;
		border-left: 2px solid rgba(31, 61, 43, .18);
		border-radius: 0 10px 10px 0;
		font-size: 13.5px !important;
	}

	#mobile-hamburger-menu ul.submenu > li:active,
	#mobile-hamburger-menu ul.submenu-1 > li:active {
		background: rgba(255, 255, 255, .45);
	}

	#mobile-hamburger-menu ul.submenu > li > a,
	#mobile-hamburger-menu ul.submenu-1 > li > a,
	#mobile-hamburger-menu ul.submenu-2 > li > a,
	#mobile-hamburger-menu ul.submenu-3 > li > a {
		display: block !important;
		float: none !important;
		position: static !important;
		width: auto !important;
		margin: 0 !important;
		padding: 11px 40px 11px 0 !important;
		font-size: 13.5px !important;
		font-weight: 400 !important;
		line-height: 1.35 !important;
		color: rgba(31, 61, 43, .85) !important;
		text-decoration: none !important;
		text-align: left !important;
		text-transform: none !important;
	}

	/* obrázky kategórií sa do mobilného zoznamu nehodia */
	#mobile-hamburger-menu ul.submenu img.small_image_category,
	#mobile-hamburger-menu ul.submenu img.small_image_category_top {
		display: none !important;
	}

	/* tretia úroveň o kúsok viac odsadená */
	#mobile-hamburger-menu ul.submenu-1 > li {
		margin-left: 14px !important;
	}
}

/* rozbalená položka dostáva triedu mobile-hamburger-menu-active s tmavým
   pozadím (#232323) — na zelenom paneli je na nej text nečitateľný */
@media screen and (max-width:800px) {

	#mobile-hamburger-menu .mobile-hamburger-menu-active,
	#mobile-hamburger-menu .mobile-hamburger-menu-active-border-top,
	#mobile-hamburger-menu .mobile-hamburger-menu-active-border-bottom {
		background: rgba(255, 255, 255, .38) !important;
		border-top: 0 !important;
		border-bottom: 0 !important;
	}

	#mobile-hamburger-menu ul#mobile-hamburger-menu-top > li.mobile-hamburger-menu-active {
		border-radius: 12px;
		margin-bottom: 4px !important;
	}

	/* podpoložky vnútri rozbalenej položky nech nemajú vlastné pozadie */
	#mobile-hamburger-menu ul.submenu > li.mobile-hamburger-menu-active,
	#mobile-hamburger-menu ul.submenu-1 > li.mobile-hamburger-menu-active {
		background: none !important;
	}

	/* Šípka sa otočí len pri položke 1. úrovne. Triedu -active dostávajú
	   pri rozbalení aj podpoložky, takže by sa inak otočili všetky. */
	#mobile-hamburger-menu ul#mobile-hamburger-menu-top > li.mobile-hamburger-menu-active > .mobile-hamburger-menu-expand:before,
	#mobile-hamburger-menu ul#mobile-hamburger-menu-left-category > li.mobile-hamburger-menu-active > .mobile-hamburger-menu-expand:before {
		transform: rotate(180deg);
	}
}

/* ==========================================================================
   36) PANEL KATALÓGU NA MOBILE
   V jednom stĺpci bol panel zbytočne vysoký. Teraz sú oba rozbaľovacie
   zoznamy vedľa seba (popis nad nimi) a cena je v jednom riadku
   s posuvníkom, takže panel zaberá polovicu pôvodnej výšky.
   ========================================================================== */

@media screen and (max-width:570px) {

	#top-category-panel {
		display: grid !important;
		grid-template-columns: 1fr 1fr !important;
		gap: 10px 12px !important;
		padding: 12px 14px !important;
		align-items: end;
	}

	#top-category-panel > div {
		width: auto !important;
		margin: 0 !important;
		min-height: 0;
		box-sizing: border-box;
	}

	/* --- zaškrtávacie pole a cena cez celú šírku --- */

	#top-category-panel #top-category-panel-products-on-storage,
	#top-category-panel #top-category-panel-price-range {
		grid-column: 1 / -1;
	}

	#top-category-panel #top-category-panel-products-on-storage label {
		min-height: 0 !important;
		font-size: 13px !important;
	}

	/* --- dvojica zoznamov: popis drobným písmom nad ovládačom --- */

	#top-category-panel #top-category-panel-sort,
	#top-category-panel #top-category-panel-count-to-page-category {
		display: block !important;
		padding: 0 !important;
	}

	#top-category-panel #top-category-panel-sort .appurtenances-filter-text,
	#top-category-panel #top-category-panel-count-to-page-category .appurtenances-filter-text {
		display: block !important;
		margin: 0 0 3px 2px !important;
		font-size: 11px !important;
		font-weight: 600 !important;
		letter-spacing: .02em;
		text-transform: uppercase;
		color: var(--ai-muted) !important;
	}

	#top-category-panel select {
		width: 100% !important;
		min-width: 0 !important;
		height: 38px;
		padding-right: 26px !important;
		background-position: right 8px center !important;
	}

	/* --- cena: posuvník a hodnota v jednom riadku --- */

	#top-category-panel #top-category-panel-price-range {
		display: flex !important;
		flex-direction: row !important;
		align-items: center;
		gap: 10px;
		padding-top: 4px !important;
		border-top: 1px solid rgba(31, 42, 36, .09);
		margin-top: 2px !important;
	}

	#top-category-panel #top-category-panel-price-range-slider {
		/* flex-basis 0 — inak by sa posuvnik zmrastil na nulu
		   (jeho ovladace su absolutne pozicovane, obsah ma sirku 0) */
		flex: 1 1 0%;
		width: auto !important;
		min-width: 0;
		margin: 0 9px !important;
	}

	#top-category-panel #top-category-panel-price-range-text {
		/* bez width:auto by si text vzal 100 % a posuvnik by zostal nulovy */
		flex: 0 0 auto;
		width: auto !important;
		font-size: 12.5px !important;
		white-space: nowrap;
		text-align: right !important;
	}
}

/* ==========================================================================
   37) SPÔSOB PLATBY — ZOBRAZENIE MOŽNOSTÍ
   Základné style.min.css má pravidlo
       .cart-first-radio-container > div:not(.cart-first-radio-border) {display:none}
   ktoré má skrývať POPIS pri každej možnosti. Šablóna dopravy
   (render-delivery-ajax.phtml) vykresľuje položky "naplocho", takže tam
   pravidlo trafí len popisy. Šablóna platby (render-pay-type-ajax.phtml)
   ale každú možnosť obaľuje do <div class="cart-first-radio"> — a ten je
   priamym potomkom kontajnera, takže sa skryli VŠETKY spôsoby platby.
   Tu obal odkrývame a popis skrývame až vo vnútri neho.
   ========================================================================== */

.cart-first-radio-container > div.cart-first-radio {
	display: block !important;
	width: 100%;
	box-sizing: border-box;
	/* to iste pravidlo davalo obalu aj zelene pozadie urcene pre popis */
	background: transparent !important;
	padding: 0 !important;
	border-radius: 0 !important;
}

/* zlava pri platbe — decentne namiesto vykricnikovej cervenej */
.cart-first-radio-container p.cart-pay-discount {
	margin: 0 0 0 45px !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	color: var(--ai-green-dark) !important;
}

/* popis platby ostáva skrytý — rovnako ako pri spôsobe dopravy */
.cart-first-radio-container > div.cart-first-radio > div:not(.cart-first-radio-border) {
	display: none;
}

/* posledná možnosť nemusí mať oddeľovač */
.cart-first-radio-container > div.cart-first-radio:last-child > hr.space {
	display: none;
}

/* ==========================================================================
   38) KRAJINA / PLATBA / DOPRAVA — MODERNÉ VÝBEROVÉ RIADKY
   Poznámka k štruktúre: možnosti NIE SÚ obalené v jednom elemente —
   ide o súrodencov <img>, <dt>, <dd>, <hr class="space"> (pri platbe je
   okolo nich navyše <div class="cart-first-radio">). Obaliť ich cez JS
   nemožno, lebo cart-first-step-functions.js sa medzi nimi pohybuje cez
   .next()/.prev() (výdajné miesta Pošty, Packety, GLS). Riadok preto
   skladáme z dvoch susediacich dlaždíc: obrázok vľavo + text vpravo.
   ========================================================================== */

/* --- 38a) Blok ako celok ----------------------------------------------- */

#cart-coutry-pay-delivery-selections .cart-cols-2,
#cart-coutry-pay-delivery-selections .cart-cols-3 {
	width: 100% !important;
	margin: 0 0 14px 0 !important;
	padding: 16px !important;
	box-sizing: border-box;
	background: #F7F9F8 !important;
	border: 1px solid var(--ai-line) !important;
	border-radius: 14px !important;
}

#cart-coutry-pay-delivery-selections .cart-cols-2:last-child,
#cart-coutry-pay-delivery-selections .cart-cols-3:last-child {
	margin-bottom: 0 !important;
}

#cart-coutry-pay-delivery-selections #del-title {
	margin: 0 0 12px 0 !important;
	padding: 0 !important;
	background: none !important;
	border: 0 !important;
}

#cart-coutry-pay-delivery-selections #del-title p {
	margin: 0 !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: .5px;
	text-transform: uppercase;
	color: var(--ai-muted) !important;
}

/* --- 38b) Kontajner možností ------------------------------------------- */

#cart-coutry-pay-delivery-selections .cart-first-radio-container {
	display: flow-root;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	box-sizing: border-box;
}

#cart-coutry-pay-delivery-selections .cart-first-radio {
	width: 100% !important;
	margin: 0 !important;
}

/* --- 38c) Ľavá dlaždica s logom ---------------------------------------- */

#cart-coutry-pay-delivery-selections .cart-first-radio-container img {
	float: left;
	width: 48px !important;
	height: 46px !important;
	max-height: none !important;
	margin: 0 !important;
	padding: 6px !important;
	box-sizing: border-box;
	object-fit: contain;
	background: #fff;
	border: 1px solid var(--ai-line);
	border-right: 0;
	border-radius: 10px 0 0 10px;
	transition: background .15s ease, border-color .15s ease;
}

/* --- 38d) Pravá dlaždica s prepínačom a názvom -------------------------- */

#cart-coutry-pay-delivery-selections .cart-first-radio-container dd {
	display: flex;
	align-items: center;
	float: none !important;
	overflow: hidden;          /* vlastný BFC — sadne vedľa obtekaného loga */
	min-height: 46px;
	margin: 0 !important;
	padding: 8px 14px !important;
	box-sizing: border-box;
	background: #fff;
	border: 1px solid var(--ai-line);
	border-radius: 10px;
	transition: background .15s ease, border-color .15s ease;
}

/* keď je pred textom logo, dlaždice sa spoja do jedného celku */
#cart-coutry-pay-delivery-selections .cart-first-radio-container img + dt + dd {
	border-left: 0;
	border-radius: 0 10px 10px 0;
}

#cart-coutry-pay-delivery-selections .cart-first-radio-container dd label {
	width: 100%;
	margin: 0 !important;
	font-size: 14.5px !important;
}

#cart-coutry-pay-delivery-selections .cart-first-radio-container dd:hover {
	border-color: #A9DCBC;
}

/* --- 38e) Zvolená možnosť ----------------------------------------------- */

#cart-coutry-pay-delivery-selections .cart-first-radio-container dd:has(input:checked) {
	background: var(--ai-green-soft);
	border-color: var(--ai-green);
}

#cart-coutry-pay-delivery-selections .cart-first-radio-container dd:has(input:checked) label {
	font-weight: 600 !important;
}

/* logo nevie o stave susedného prepínača inak než cez :has(+ ...) */
#cart-coutry-pay-delivery-selections .cart-first-radio-container img:has(+ dt + dd input:checked) {
	background: var(--ai-green-soft);
	border-color: var(--ai-green);
}

/* --- 38f) Medzery medzi možnosťami -------------------------------------- */

#cart-coutry-pay-delivery-selections .cart-first-radio-container hr.space {
	clear: both;
	height: 0 !important;
	margin: 0 0 8px 0 !important;
	padding: 0 !important;
	background: none !important;
	border: 0 !important;
}

/* zľava sa vykresľuje mimo dlaždice — musí podliezť obtekané logo */
#cart-coutry-pay-delivery-selections .cart-pay-discount {
	clear: both;
	margin: 6px 0 0 48px !important;
}

/* ==========================================================================
   38g) KRAJINY VEDĽA SEBA
   Krajín býva málo a majú krátke názvy — na širšom displeji je škoda
   troch celých riadkov. flex-wrap: nowrap je zámerné: obrázok a text sú
   samostatní súrodenci, takže pri zalomení by logo zostalo osamote na
   predchádzajúcom riadku. Preto radšej riadok zapíname až od šírky,
   kde sa všetky možnosti bezpečne zmestia.
   ========================================================================== */

@media screen and (min-width:820px) {

	#cart-coutry-pay-delivery-selections .cart-first-radio-container:has(input[name="radio_country"]) {
		display: flex;
		flex-wrap: nowrap;
		align-items: stretch;
	}

	#cart-coutry-pay-delivery-selections .cart-first-radio-container:has(input[name="radio_country"]) img {
		flex: 0 0 48px;
	}

	#cart-coutry-pay-delivery-selections .cart-first-radio-container:has(input[name="radio_country"]) img:not(:first-child) {
		margin-left: 10px !important;
	}

	#cart-coutry-pay-delivery-selections .cart-first-radio-container:has(input[name="radio_country"]) dd {
		flex: 1 1 auto;
		min-width: 0;
	}

	/* oddeľovače riadkov sú v tomto režime zbytočné */
	#cart-coutry-pay-delivery-selections .cart-first-radio-container:has(input[name="radio_country"]) hr.space {
		display: none !important;
	}
}

/* ==========================================================================
   39) KOŠÍK — 3. KROK, REKAPITULÁCIA PRED ODOSLANÍM (body.cart-third)
   Pozor: #cart-info-table a #steps-cart sú aj v prvom kroku, preto je celá
   sekcia zámerne obalená selektorom body.cart-third.
   ========================================================================== */

body.cart-third .content {
	max-width: 1100px;
	margin: 0 auto;
	padding: 8px 20px 40px 20px;
	box-sizing: border-box;
}

/* --- 39a) Poradie blokov ------------------------------------------------ */
/* Tlačidlá boli v HTML hneď pod úvodným textom, teda ešte pred zoznamom
   produktov a súhrnom. Používateľ má najprv skontrolovať a až potom
   potvrdiť — flexboxom ich presúvame na koniec. */

body.cart-third .cart-steps {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

body.cart-third .cart-steps > #steps-cart          { order: 1; margin-bottom: 0 !important; }
body.cart-third .cart-steps > #info-block          { order: 2; }
body.cart-third .cart-steps > #cart-info-table     { order: 3; }
body.cart-third .cart-steps > .third-cart-order-info { order: 4; }
body.cart-third .cart-steps > #third-cart-submit   { order: 5; }
body.cart-third .cart-steps > hr.space             { display: none !important; }

/* --- 39b) Úvodná informácia --------------------------------------------- */

body.cart-third #info-block {
	margin: 0 !important;
	padding: 16px 18px !important;
	box-sizing: border-box;
	background: var(--ai-green-soft) !important;
	border: 1px solid #D3EADC !important;
	border-radius: 14px !important;
}

body.cart-third #info-block p {
	margin: 0 !important;
	font-size: 14px !important;
	line-height: 1.6 !important;
	color: var(--ai-ink) !important;
}

/* --- 39c) Produkty v objednávke ----------------------------------------- */

body.cart-third #cart-info-table {
	width: 100% !important;
	margin: 0 !important;
	border-collapse: separate !important;
	border-spacing: 0 !important;
	background: #fff;
	border: 1px solid var(--ai-line);
	border-radius: 14px;
	overflow: hidden;
}

body.cart-third #cart-info-table tr.title td {
	padding: 13px 18px !important;
	background: #F7F9F8;
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: .5px;
	text-transform: uppercase;
	color: var(--ai-muted) !important;
}

body.cart-third #cart-info-table tr.normal td {
	padding: 14px 18px !important;
	border-top: 1px solid var(--ai-line);
	vertical-align: middle;
}

body.cart-third #cart-info-table td.third-step-img {
	width: 88px;
}

body.cart-third #cart-info-table td.third-step-img img {
	display: block;
	width: 64px;
	height: 64px;
	object-fit: contain;
	padding: 4px;
	box-sizing: border-box;
	background: #fff;
	border: 1px solid var(--ai-line);
	border-radius: 10px;
}

body.cart-third #cart-info-table tr.normal td a {
	font-size: 15px !important;
	font-weight: 600 !important;
	color: var(--ai-ink) !important;
	text-decoration: none !important;
}

body.cart-third #cart-info-table tr.normal td a:hover {
	color: var(--ai-green-dark) !important;
	text-decoration: underline !important;
}

body.cart-third #cart-info-table td.third-step-product-count {
	width: 90px;
	text-align: center;
	white-space: nowrap;
	font-size: 14px !important;
	color: var(--ai-muted) !important;
}

body.cart-third #cart-info-table td.price-all {
	width: 130px;
	text-align: right;
	white-space: nowrap;
	font-size: 16px !important;
	font-weight: 700 !important;
	font-variant-numeric: tabular-nums;
	color: var(--ai-ink) !important;
}

/* --- 39d) Informácie o objednávke --------------------------------------- */

body.cart-third .third-cart-order-info {
	margin: 0 !important;
	padding: 18px 20px !important;
	box-sizing: border-box;
	background: #fff;
	border: 1px solid var(--ai-line);
	border-radius: 14px;
}

body.cart-third .third-cart-order-info #del-title {
	margin: 0 0 6px 0 !important;
	padding: 0 !important;
	height: auto !important;
	background: none !important;
	border: 0 !important;
}

body.cart-third .third-cart-order-info #del-title p,
body.cart-third .third-cart-order-info #del-title p span {
	margin: 0 !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: .5px;
	text-transform: uppercase;
	color: var(--ai-muted) !important;
}

body.cart-third .third-cart-order-info .info-catr {
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.cart-third .info-catr p {
	display: flex !important;
	align-items: baseline;
	gap: 16px;
	width: 100% !important;
	margin: 0 !important;
	padding: 10px 0 !important;
	border-bottom: 1px solid var(--ai-line);
}

body.cart-third .info-catr p:last-child {
	border-bottom: 0;
	padding-bottom: 0 !important;
}

body.cart-third .info-catr p span.title {
	flex: 0 0 220px;
	font-size: 13.5px !important;
	font-weight: 400 !important;
	color: var(--ai-muted) !important;
}

body.cart-third .info-catr p span.prepend-2 {
	flex: 1 1 auto;
	min-width: 0;
	font-size: 14px !important;
	font-weight: 600 !important;
	color: var(--ai-ink) !important;
}

/* --- 39e) Potvrdenie objednávky ----------------------------------------- */

body.cart-third #third-cart-submit {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	padding: 18px 20px !important;
	box-sizing: border-box;
	background: #F7F9F8;
	border: 1px solid var(--ai-line);
	border-radius: 14px;
}

body.cart-third #third-cart-submit #third-cart-heureka-check-customer {
	flex: 1 1 100%;
	order: -1;
	font-size: 13.5px;
	color: var(--ai-muted);
}

body.cart-third #third-cart-submit .button-type-back {
	float: none !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	background: none !important;
}

body.cart-third #third-cart-submit .button-type-back a {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: auto !important;
	height: 48px !important;
	padding: 0 20px !important;
	box-sizing: border-box;
	background: #fff !important;
	border: 1px solid var(--ai-line) !important;
	border-radius: 12px !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	color: var(--ai-ink) !important;
	text-decoration: none !important;
}

body.cart-third #third-cart-submit .button-type-back a:hover {
	border-color: var(--ai-green) !important;
	color: var(--ai-green-dark) !important;
}

body.cart-third #button-corfimation-button {
	float: none !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	background: none !important;
	border: 0 !important;
}

body.cart-third #corfimation-button {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: auto !important;
	height: 56px !important;
	margin: 0 !important;
	padding: 0 30px !important;
	box-sizing: border-box;
	background: var(--ai-green) !important;
	border: 0 !important;
	border-radius: 12px !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	color: #fff !important;
	cursor: pointer;
	transition: background .15s ease;
}

body.cart-third #corfimation-button:hover {
	background: var(--ai-green-dark) !important;
}

/* blikajúca šípka mala upozorniť na nenápadné tlačidlo — už netreba */
body.cart-third #cart-third-blinking-arrow {
	display: none !important;
}

/* --- 39f) Mobil ---------------------------------------------------------- */

@media screen and (max-width:800px) {

	body.cart-third .content {
		padding: 6px 16px 30px 16px;
	}

	body.cart-third #cart-info-table td.third-step-img {
		width: 68px;
	}

	body.cart-third #cart-info-table td.third-step-img img {
		width: 52px;
		height: 52px;
	}

	body.cart-third #cart-info-table tr.normal td,
	body.cart-third #cart-info-table tr.title td {
		padding: 12px 12px !important;
	}

	body.cart-third .info-catr p {
		flex-direction: column;
		gap: 2px;
	}

	body.cart-third .info-catr p span.title {
		flex: 0 0 auto;
	}

	body.cart-third #third-cart-submit .button-type-back,
	body.cart-third #button-corfimation-button {
		flex: 1 1 100%;
	}

	body.cart-third #third-cart-submit .button-type-back a,
	body.cart-third #corfimation-button {
		width: 100% !important;
	}

	/* na mobile má byť potvrdenie ako prvé po prstoch */
	body.cart-third #button-corfimation-button {
		order: 1;
	}

	body.cart-third #third-cart-submit .button-type-back {
		order: 2;
	}
}

/* ==========================================================================
   40) POĎAKOVANIE ZA NÁKUP (body.cart-success)
   ========================================================================== */

body.cart-success .content {
	max-width: 900px;
	margin: 0 auto;
	padding: 8px 20px 40px 20px;
	box-sizing: border-box;
}

body.cart-success #cart-success {
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	background: none !important;
	border: 0 !important;
}

/* --- 40a) Hlavička s ikonou -------------------------------------------- */

body.cart-success .cart-success-head {
	display: flex;
	align-items: flex-start;
	gap: 18px;
	margin: 0 0 18px 0;
	padding: 24px;
	box-sizing: border-box;
	background: var(--ai-green-soft);
	border: 1px solid #D3EADC;
	border-radius: 16px;
}

/* pôvodná ikona je výrez zo sprite obrázka — po zmenšení sa rozpadla,
   preto ju nahrádzame vektorovou ikonou */
body.cart-success .cart-success-head .icon-success {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 56px;
	width: 56px !important;
	height: 56px !important;
	/* základné CSS ju posúva o position:relative; top:40px — resetujeme,
	   inak ikona visí pod nadpisom namiesto vedľa neho */
	position: static !important;
	top: auto !important;
	left: auto !important;
	float: none !important;
	margin: 1px 0 0 0 !important;
	background: var(--ai-green) !important;
	border-radius: 50%;
}

body.cart-success .cart-success-head .icon-success:before {
	content: "\f00c";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 26px;
	color: #fff;
}

body.cart-success .cart-success-headings {
	flex: 1 1 auto;
	min-width: 0;
	text-align: left !important;
}

body.cart-success #cart-success .cart-success-headings .title {
	margin: 0 0 8px 0 !important;
	font-size: 26px !important;
	font-weight: 700 !important;
	line-height: 1.25 !important;
	color: var(--ai-ink) !important;
	text-align: left !important;
}

body.cart-success #cart-success .cart-success-headings .text {
	margin: 0 !important;
	font-size: 14.5px !important;
	line-height: 1.6 !important;
	color: var(--ai-muted) !important;
	text-align: left !important;
}

/* --- 40b) Rekapitulácia objednávky -------------------------------------- */

body.cart-success .cart-success-facts {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
	gap: 12px;
	margin: 0 0 18px 0;
}

body.cart-success .cart-success-fact {
	display: flex;
	flex-direction: column;
	gap: 5px;
	padding: 14px 16px;
	box-sizing: border-box;
	background: #fff;
	border: 1px solid var(--ai-line);
	border-radius: 14px;
}

body.cart-success .cart-success-fact .csf-label {
	font-size: 11.5px;
	font-weight: 700;
	letter-spacing: .5px;
	text-transform: uppercase;
	color: var(--ai-muted);
}

body.cart-success .cart-success-fact .csf-value {
	font-size: 17px;
	font-weight: 700;
	line-height: 1.3;
	color: var(--ai-ink);
	font-variant-numeric: tabular-nums;
}

/* --- 40c) Čo bude ďalej ------------------------------------------------- */

body.cart-success .cart-success-steps {
	margin: 0 0 18px 0;
	padding: 22px 24px;
	box-sizing: border-box;
	background: #fff;
	border: 1px solid var(--ai-line);
	border-radius: 16px;
}

body.cart-success .cart-success-steps-title {
	margin: 0 0 18px 0 !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: .5px;
	text-transform: uppercase;
	color: var(--ai-muted) !important;
}

body.cart-success .cart-success-steps ol {
	counter-reset: cart-success-step;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

body.cart-success .cart-success-steps li {
	position: relative;
	margin: 0 !important;
	padding: 0 0 22px 52px;
	list-style: none !important;
}

body.cart-success .cart-success-steps li:last-child {
	padding-bottom: 0;
}

/* číslo kroku v krúžku */
body.cart-success .cart-success-steps li:before {
	counter-increment: cart-success-step;
	content: counter(cart-success-step);
	position: absolute;
	left: 0;
	top: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	box-sizing: border-box;
	background: #fff;
	border: 2px solid var(--ai-line);
	border-radius: 50%;
	font-size: 14px;
	font-weight: 700;
	color: var(--ai-muted);
}

/* spojnica medzi krokmi */
body.cart-success .cart-success-steps li:not(:last-child):after {
	content: "";
	position: absolute;
	left: 16px;
	top: 38px;
	bottom: 8px;
	width: 2px;
	background: var(--ai-line);
}

/* už splnený krok */
body.cart-success .cart-success-steps li.css-done:before {
	content: "\f00c";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 13px;
	background: var(--ai-green);
	border-color: var(--ai-green);
	color: #fff;
}

body.cart-success .cart-success-steps li.css-done:after {
	background: var(--ai-green);
}

body.cart-success .cart-success-steps li strong {
	display: block;
	margin: 6px 0 4px 0;
	font-size: 15.5px;
	font-weight: 600;
	color: var(--ai-ink);
}

body.cart-success .cart-success-steps li span {
	display: block;
	font-size: 14px;
	line-height: 1.6;
	color: var(--ai-muted);
}

/* --- 40d) Doplňujúci text, zdieľanie a tlačidlo ------------------------- */

body.cart-success #cart-success-text {
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	text-align: left !important;
}

/* --- upozornenie so zvyraznenim ---------------------------------------- */

body.cart-success .cart-success-note {
	position: relative;
	padding: 20px 18px 20px 78px;
	box-sizing: border-box;
	background: #fff;
	border: 1px solid var(--ai-line);
	border-radius: 14px;
}

/* Výkričník je len obrys — vykreslený priehľadným písmom s obťahom,
   takže je výrazný tvarom, ale neťahá na seba pozornosť plochou. */
body.cart-success .cart-success-note:before {
	content: "!";
	position: absolute;
	left: 24px;
	top: 50%;
	transform: translateY(-50%);
	font-size: 82px;
	font-weight: 800;
	line-height: 1;
	color: transparent;
	-webkit-text-stroke: 2px var(--ai-ink);
	text-stroke: 2px var(--ai-ink);
	pointer-events: none;
}

body.cart-success .cart-success-note .text {
	margin: 0 !important;
	font-size: 13.5px !important;
	line-height: 1.65 !important;
	color: var(--ai-ink) !important;
	text-align: left !important;
}

body.cart-success .cart-success-note .text + .text {
	margin-top: 6px !important;
	color: var(--ai-muted) !important;
}

body.cart-success #cart-success-text > .text {
	margin: 0 0 6px 0 !important;
	font-size: 13.5px !important;
	line-height: 1.65 !important;
	color: var(--ai-muted) !important;
	text-align: left !important;
}

body.cart-success #cart-success-text > hr.space {
	display: none !important;
}

body.cart-success #cart-fb-share-container {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 12px;
	width: 100% !important;
	height: auto !important;
	margin: 18px 0 0 0 !important;
	padding: 20px !important;
	box-sizing: border-box;
	background: #F7F9F8;
	border: 1px solid var(--ai-line);
	border-radius: 16px;
}

body.cart-success #cart-fb-share-container img {
	width: auto !important;
	max-width: 120px !important;
	max-height: 120px !important;
	margin: 0 !important;
	border-radius: 12px;
}

body.cart-success #cart-fb-share-container .text {
	margin: 0 !important;
	font-size: 14px !important;
	color: var(--ai-muted) !important;
}

body.cart-success #cart-fb-share-container > a {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: auto !important;
	height: 44px !important;
	/* základ sem dáva obrázkové tlačidlo — inak presvitá pod novým pozadím */
	padding: 0 22px !important;
	background-image: none !important;
	background-color: #1877F2 !important;
	border-radius: 12px;
	font-size: 13.5px;
	font-weight: 700;
	color: #fff !important;
	text-decoration: none !important;
	cursor: pointer;
}

body.cart-success #cart-fb-share-container > a:hover {
	background-color: #1461C7 !important;
}

body.cart-success #cart-fb-share-container hr.space {
	display: none !important;
}

/* odkaz vnútri je od základu float:left, takže obal mal nulovú výšku
   a tlačidlo vypadávalo z toku — flow-root ho vráti späť */
body.cart-success #cart-success-text .button-type-back {
	display: flow-root !important;
	clear: both;
	float: none !important;
	width: 100% !important;
	height: auto !important;
	/* odstup robí padding, nie margin — clear:both totiž pri obtekaní
	   vytvorí clearance a horný margin sa "prehltne" */
	margin: 0 !important;
	padding: 24px 0 0 0 !important;
	background: none !important;
	text-align: center;
}

body.cart-success #cart-success-text .button-type-back a {
	display: inline-flex !important;
	float: none !important;
	align-items: center;
	justify-content: center;
	width: auto !important;
	height: 48px !important;
	padding: 0 24px !important;
	box-sizing: border-box;
	background: var(--ai-green) !important;
	border: 0 !important;
	border-radius: 12px !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	color: #fff !important;
	text-decoration: none !important;
}

body.cart-success #cart-success-text .button-type-back a:hover {
	background: var(--ai-green-dark) !important;
}

/* --- 40e) Mobil ---------------------------------------------------------- */

@media screen and (max-width:800px) {

	body.cart-success .content {
		padding: 6px 16px 30px 16px;
	}

	body.cart-success .cart-success-head {
		gap: 14px;
		padding: 18px;
	}

	body.cart-success .cart-success-head .icon-success {
		flex: 0 0 44px;
		width: 44px !important;
		height: 44px !important;
	}

	body.cart-success .cart-success-headings .title {
		font-size: 21px !important;
	}

	body.cart-success .cart-success-facts {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	body.cart-success .cart-success-steps {
		padding: 18px 16px;
	}

	body.cart-success #cart-success-text .button-type-back a {
		width: 100% !important;
	}
}

/* ==========================================================================
   41) ŠTÍTKY PRODUKTOV V SLIDEROCH NA ÚVODNEJ STRÁNKE
   Sekcia 8b štýluje štítky len v katalógu, v tipoch po vložení do košíka
   a v obľúbených. Slidery na úvodnej stránke ("Doporučujeme" a horný pás)
   ostávali s pôvodnými modrými obdĺžnikmi — tu ich zjednocujeme.
   ========================================================================== */

.products-on-index-in-slider .container-product-actions,
#big-startup-products .container-product-actions,
#related-product .container-product-actions,
.products-in-left-menu .container-product-actions {
	position: absolute;
	top: 10px;
	left: 10px;
	z-index: 3;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 6px;
	width: auto !important;
	height: auto !important;
	pointer-events: none;
}

.products-on-index-in-slider .container-product-actions > div,
#big-startup-products .container-product-actions > div,
#related-product .container-product-actions > div,
.products-in-left-menu .container-product-actions > div {
	float: none !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	background: none !important;
	border-radius: 999px;
	line-height: 0;
}

.products-on-index-in-slider .container-product-actions > div > span,
#big-startup-products .container-product-actions > div > span,
#related-product .container-product-actions > div > span,
.products-in-left-menu .container-product-actions > div > span {
	display: inline-block;
	float: none !important;
	width: auto !important;
	height: auto !important;
	padding: 5px 11px !important;
	border-radius: 999px;
	font-size: 11px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	letter-spacing: .2px;
	color: #fff !important;
	white-space: nowrap;
	background: var(--ai-green) !important;   /* predvolené — napr. "Doporučujeme" */
}

/* zľava */
.products-on-index-in-slider .container-product-actions > div.clear > span,
#big-startup-products .container-product-actions > div.clear > span,
#related-product .container-product-actions > div.clear > span,
.products-in-left-menu .container-product-actions > div.clear > span {
	background: #D8453C !important;
}

/* akcia */
.products-on-index-in-slider .container-product-actions > div.action > span,
#big-startup-products .container-product-actions > div.action > span,
#related-product .container-product-actions > div.action > span,
.products-in-left-menu .container-product-actions > div.action > span {
	background: var(--ai-ink) !important;
}

/* posledné kusy */
.products-on-index-in-slider .container-product-actions > div.last_items > span,
#big-startup-products .container-product-actions > div.last_items > span,
#related-product .container-product-actions > div.last_items > span,
.products-in-left-menu .container-product-actions > div.last_items > span {
	background: #E08C1E !important;
}

/* ==========================================================================
   42) DARČEK K NÁKUPU
   ========================================================================== */

/* --- 42a) Riadok darčeka v zozname položiek ---------------------------- */

#cart-products table tr#tr-cart-gift {
	background: var(--ai-green-soft);
}

/* štítok pri názve, aby bolo hneď jasné, o čo ide */
#cart-products .cart-gift-badge {
	display: inline-block;
	margin: 0 0 6px 0;
	padding: 3px 11px 3px 9px;
	background: var(--ai-green);
	border-radius: 999px;
	font-size: 10.5px;
	font-weight: 700;
	letter-spacing: .4px;
	text-transform: uppercase;
	color: #fff;
}

#cart-products .cart-gift-badge:before {
	content: "\f06b";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	margin-right: 6px;
	font-size: 10px;
}

/* prečiarknutá cena je len informácia o pôvodnej hodnote */
/* Pozor: bunka so zlavovym kuponom ma tiez triedu .price — bez vynimky
   by nowrap roztiahol tabulku a kupon by pretiekol mimo karty. */
#cart-products table tr:not(#return-coupons) > td.price,
#cart-products table tr:not(#return-coupons) > td.price-all {
	white-space: nowrap;
}

/* preciarknutie je na <s> zo sablony, nie na celej bunke — inak by sa
   dedilo aj na popisok "zadarmo" pod cenou */
#cart-products table tr#tr-cart-gift td.price,
#cart-products table tr#tr-cart-gift td.price-all {
	/* preciarknutie z bunky sa vykresli aj cez potomkov a neda sa u nich
	   vypnut — preto ho ruzime tu a davame ho len na <s> okolo ceny */
	text-decoration: none !important;
	color: var(--ai-muted) !important;
	font-weight: 500 !important;
}

#cart-products table tr#tr-cart-gift td.price s,
#cart-products table tr#tr-cart-gift td.price-all s {
	text-decoration: line-through;
}

#cart-products .cart-gift-free {
	display: block;
	margin-top: 3px;
	font-size: 13px;
	font-weight: 700;
	color: var(--ai-green-dark);
	text-decoration: none;
}

/* --- 42b) Hláška o uplatnenej zľave ------------------------------------ */

/* riadok s hláškou nepotrebuje rámček ani odsadenie ako položka košíka */
#cart-products tr:has(> td > .position-discount) > td {
	padding: 6px 0 !important;
}

#cart-products .position-discount {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 4px 0 !important;
	padding: 11px 14px;
	box-sizing: border-box;
	background: var(--ai-green-soft);
	border: 1px solid #D3EADC;
	border-radius: 12px;
}

/* pôvodná fajka bola výrez zo sprite obrázka a bola neúmerne veľká */
#cart-products .position-discount .icon-type-discount {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 22px !important;
	height: 22px !important;
	min-width: 22px;
	margin: 0 !important;
	/* základ ju posúva o position:relative; top:7px kvôli pôvodnému
	   veľkému sprite obrázku — vo flex riadku tým vypadne z osi textu */
	position: static !important;
	top: auto !important;
	background: none !important;
	font-size: 0;
	line-height: 1 !important;
}

#cart-products .position-discount .icon-type-discount:before {
	content: "\f058";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 18px;
	color: var(--ai-green);
}

#cart-products .position-discount .text-discount {
	margin: 0 !important;
	/* základ tu má line-height 85px, aby text vycentroval k veľkej ikone */
	line-height: 1.4 !important;
	font-size: 13.5px !important;
	font-weight: 600 !important;
	color: var(--ai-ink) !important;
}

/* --- 42c) Darček v pravom súhrne --------------------------------------- */

.cart-summary-gifts {
	margin: 0 0 14px 0;
	padding: 14px;
	box-sizing: border-box;
	background: var(--ai-green-soft);
	border: 1px solid #D3EADC;
	border-radius: 12px;
}

.cart-summary-gifts-title {
	display: flex;
	align-items: center;
	gap: 7px;
	margin: 0 0 10px 0 !important;
	font-size: 11.5px !important;
	font-weight: 700 !important;
	letter-spacing: .5px;
	text-transform: uppercase;
	color: var(--ai-green-dark) !important;
}

.cart-summary-gifts-title:before {
	content: "\f06b";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 13px;
}

.cart-summary-gift {
	display: flex;
	align-items: center;
	gap: 11px;
}

.cart-summary-gift + .cart-summary-gift {
	margin-top: 10px;
	padding-top: 10px;
	border-top: 1px solid #D3EADC;
}

.cart-summary-gift img {
	flex: 0 0 46px;
	width: 46px;
	height: 46px;
	object-fit: contain;
	padding: 4px;
	box-sizing: border-box;
	background: #fff;
	border: 1px solid #D3EADC;
	border-radius: 10px;
}

.cart-summary-gift .csg-text {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}

.cart-summary-gift .csg-name {
	font-size: 13.5px;
	font-weight: 600;
	line-height: 1.3;
	color: var(--ai-ink);
}

.cart-summary-gift .csg-price {
	font-size: 12.5px;
	font-weight: 700;
	color: var(--ai-green-dark);
}

.cart-summary-gift .csg-price s {
	margin-left: 4px;
	font-weight: 400;
	color: var(--ai-muted);
}

/* ==========================================================================
   43) ROZBAĽOVACÍ FILTER PODĽA VLASTNOSTÍ (Dĺžka, Farba, Materiál, ...)
   Zoznam hodnôt je v základnom CSS position:absolute so šírkou 150 %,
   z-indexom 2 a bez tieňa — prekrývali ho štítky produktov a pôsobil ako
   priesvitný útržok. Tu z neho robíme čitateľný panel.
   ========================================================================== */

#category-products #catalog-appurtenances .appurtenances-filter-show > div,
#category-products #catalog-appurtenances #manufacturers-filter-show > div {
	top: 44px !important;
	z-index: 30 !important;
	min-width: 210px;
	width: max-content !important;
	max-width: 300px;
	max-height: 280px;
	overflow-y: auto;
	padding: 10px !important;
	box-sizing: border-box;
	background: #fff !important;
	border: 1px solid var(--ai-line) !important;
	border-radius: 12px !important;
	box-shadow: 0 10px 28px rgba(31, 42, 36, .14);
}

/* posledný filter v rade by inak vyliezol mimo obrazovku */
#category-products #catalog-appurtenances .appurtenances-filter-show:last-of-type > div {
	left: auto !important;
	right: 0;
}

#category-products #catalog-appurtenances .appurtenances-filter-show label,
#category-products #catalog-appurtenances #manufacturers-filter-show label {
	display: flex !important;
	align-items: center;
	gap: 9px;
	float: none !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 7px 8px !important;
	box-sizing: border-box;
	border-radius: 8px;
	font-size: 13.5px !important;
	line-height: 1.35 !important;
	color: var(--ai-ink) !important;
	cursor: pointer;
}

#category-products #catalog-appurtenances .appurtenances-filter-show label:hover,
#category-products #catalog-appurtenances #manufacturers-filter-show label:hover {
	background: var(--ai-green-soft);
}

#category-products #catalog-appurtenances .appurtenances-filter-show label input,
#category-products #catalog-appurtenances #manufacturers-filter-show label input {
	flex: 0 0 auto;
	width: 16px !important;
	height: 16px !important;
	margin: 0 !important;
	accent-color: var(--ai-green);
	cursor: pointer;
}

/* hodnota, ktorá by nevrátila žiadny produkt */
#category-products #catalog-appurtenances label.catalog-filter-not-active {
	opacity: .45;
}

/* otvorený filter zvýrazníme, nech je jasné, ktorý panel patrí ku ktorému */
#category-products #catalog-appurtenances .appurtenances-filter-show:has(> div[style*="display: block"]) > p,
#category-products #catalog-appurtenances #manufacturers-filter-show:has(> div[style*="display: block"]) > p {
	background: var(--ai-green-soft) !important;
	border-color: var(--ai-green) !important;
	color: var(--ai-green-dark) !important;
}

/* ==========================================================================
   44) DROBČEKOVÁ NAVIGÁCIA NA MOBILE
   Základ dáva #navigation flex-direction:column a všetko centruje, takže
   šípka späť, popisok „Nachádzate sa tu:" a samotná cesta zaberali tri
   riadky nad sebou. Na mobile z toho robíme jeden vodorovný pás.
   ========================================================================== */

@media screen and (max-width:800px) {

	#navigation {
		display: flex !important;
		flex-direction: row !important;
		align-items: center;
		justify-content: flex-start !important;
		gap: 10px;
		padding: 8px 16px !important;
		box-sizing: border-box;
	}

	/* popisok je na mobile balast — cestu aj tak vidno */
	#navigation #home {
		display: none !important;
	}

	#navigation #navigation-back-button {
		flex: 0 0 34px;
		width: 34px !important;
		height: 34px !important;
		margin: 0 !important;
	}

	#navigation #navigation-back-button a {
		display: flex !important;
		align-items: center;
		justify-content: center;
		float: none !important;
		width: 34px !important;
		height: 34px !important;
		margin: 0 !important;
		padding: 0 !important;
		background: #F7F9F8 !important;
		border: 1px solid var(--ai-line);
		border-radius: 10px;
		font-size: 0;
	}

	#navigation #navigation-back-button a:before {
		content: "\f060";
		font-family: "Font Awesome 5 Free";
		font-weight: 900;
		font-size: 12px;
		color: var(--ai-ink);
	}

	/* cesta v jednom riadku — pri dlhých názvoch sa posúva prstom */
	#navigation .top-navigation {
		flex: 1 1 auto;
		float: none !important;
		width: auto !important;
		min-width: 0;
		margin: 0 !important;
	}

	#navigation ul.navigation {
		display: flex !important;
		flex-wrap: nowrap;
		align-items: center;
		float: none !important;
		width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
		overflow-x: auto;
		overflow-y: hidden;
		scrollbar-width: none;
		-webkit-overflow-scrolling: touch;
	}

	#navigation ul.navigation::-webkit-scrollbar {
		display: none;
	}

	#navigation ul.navigation li {
		display: flex !important;
		align-items: center;
		flex: 0 0 auto;
		float: none !important;
		width: auto !important;
		margin: 0 !important;
		padding: 0 !important;
		background: none !important;
		list-style: none !important;
	}

	/* pôvodný oddeľovač je obrázok v li a:before — nahrádzame ho */
	#navigation ul.navigation li a:before {
		content: none !important;
		display: none !important;
	}

	#navigation ul.navigation li + li:before {
		content: "\f054" !important;
		font-family: "Font Awesome 5 Free";
		font-weight: 900;
		margin: 0 8px;
		font-size: 8px;
		color: var(--ai-muted);
	}

	#navigation ul.navigation li a {
		float: none !important;
		padding: 0 !important;
		font-size: 11.5px !important;
		white-space: nowrap;
		color: var(--ai-muted) !important;
	}

	/* aktuálna stránka nie je odkaz na klikanie, ale orientačný bod */
	#navigation ul.navigation li:last-child a {
		font-weight: 600 !important;
		color: var(--ai-ink) !important;
	}
}

/* ==========================================================================
   45) ZĽAVOVÝ KUPÓN NA JEDNOM RIADKU (desktop)
   Na mobile ostáva pod sebou — pozri sekciu 20 (max-width:800px).
   ========================================================================== */

@media screen and (min-width:801px) {

	#cart-products #coupons-bg {
		display: flex;
		align-items: center;
		flex-wrap: wrap;
		gap: 12px;
		float: none !important;
		width: 100% !important;
		box-sizing: border-box;
	}

	#cart-products #coupons-bg .coupons-text {
		flex: 0 0 auto;
		float: none !important;
		width: auto !important;
		margin: 0 !important;
	}

	#cart-products #coupons-bg .coupons-text p {
		margin: 0 !important;
		white-space: nowrap;
	}

	#cart-products #coupons-bg input.coupons {
		flex: 1 1 200px;
		float: none !important;
		width: auto !important;
		min-width: 0;
		margin: 0 !important;
	}

	#cart-products #cart-confirm-coupon-button {
		flex: 0 0 auto;
		float: none !important;
		width: auto !important;
		margin: 0 !important;
	}
}

/* ==========================================================================
   46) ZĽAVOVÝ KUPÓN AKO ROZBAĽOVACÍ ODKAZ
   Väčšina zákazníkov kupón nemá — pole ho len rozptyľuje. Preto je
   v pokoji vidieť iba odkaz „Mám zľavový kupón".
   ========================================================================== */

#cart-products #coupon-toggle {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 4px 0;
	font-size: 14px;
	font-weight: 600;
	color: var(--ai-green-dark);
	cursor: pointer;
	user-select: none;
}

#cart-products #coupon-toggle:before {
	content: "\f02b";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 13px;
}

#cart-products #coupon-toggle:after {
	content: "\f078";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 9px;
	color: var(--ai-muted);
	transition: transform .15s ease;
}

#cart-products #coupon-toggle.is-open:after {
	transform: rotate(180deg);
}

#cart-products #coupon-toggle:hover {
	text-decoration: underline;
}

#cart-products #coupon-fields {
	display: none;
}

#cart-products #coupon-fields.is-open {
	display: block;
	margin-top: 12px;
}

/* popisok nad poliami je pri rozbaľovacom odkaze už zbytočný */
#cart-products #coupon-fields .coupons-text {
	display: none !important;
}

#cart-products #coupon-fields .coupons-text-error {
	width: 100%;
	margin-top: 8px;
	font-size: 13px;
	color: #D8453C;
}

#cart-products #coupon-fields .coupons-text-error p {
	margin: 0 !important;
	color: #D8453C !important;
}

@media screen and (min-width:801px) {

	#cart-products #coupon-fields.is-open {
		display: flex;
		align-items: center;
		flex-wrap: wrap;
		gap: 12px;
	}

	#cart-products #coupon-fields input.coupons {
		flex: 1 1 200px;
		float: none !important;
		width: auto !important;
		min-width: 0;
		margin: 0 !important;
	}

	#cart-products #coupon-fields #cart-confirm-coupon-button {
		flex: 0 0 auto;
		float: none !important;
		width: auto !important;
		margin: 0 !important;
	}
}

/* --- 46a) Uplatnený kupón ---------------------------------------------- */

#cart-products .coupons-text-long {
	display: flex !important;
	align-items: center;
	gap: 12px;
	float: none !important;
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	padding: 11px 14px !important;
	box-sizing: border-box;
	background: var(--ai-green-soft);
	border: 1px solid #D3EADC;
	border-radius: 12px;
}

#cart-products .coupons-text-long:before {
	content: "\f02b";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	flex: 0 0 auto;
	font-size: 16px;
	color: var(--ai-green);
}

#cart-products .coupons-text-long p {
	flex: 1 1 auto;
	min-width: 0;
	margin: 0 !important;
	padding: 0 !important;
	font-size: 13.5px !important;
	font-weight: 600 !important;
	line-height: 1.4 !important;
	color: var(--ai-ink) !important;
}

/* odstránenie kupónu — pôvodne veľké zelené tlačidlo s písmenom X */
#cart-products #coupon-remove {
	flex: 0 0 auto;
	float: none !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	background: none !important;
	border: 0 !important;
}

#cart-products #coupon-remove a {
	display: flex !important;
	align-items: center;
	justify-content: center;
	float: none !important;
	width: 32px !important;
	height: 32px !important;
	margin: 0 !important;
	padding: 0 !important;
	background: #fff !important;
	border: 1px solid #D3EADC !important;
	border-radius: 8px !important;
	font-size: 0;
	text-decoration: none !important;
}

#cart-products #coupon-remove a:hover {
	border-color: #D8453C !important;
}

#cart-products #coupon-remove a span {
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	background: none !important;
	font-size: 0;
	position: static !important;
	top: auto !important;
}

#cart-products #coupon-remove a span:before {
	content: "\f00d";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 13px;
	color: var(--ai-muted);
}

#cart-products #coupon-remove a:hover span:before {
	color: #D8453C;
}

/* --- 20r) Poznámka k objednávke ---------------------------------------- */
/* Textarea má v šablóne rows="24", teda cez 520 px — zbytočne rozbíja
   stránku. Necháme rozumnú výšku, používateľ si ju vie potiahnuť. */

#cart_description textarea {
	height: 110px !important;
	min-height: 110px !important;
	resize: vertical;
}

/* ==========================================================================
   47) PRODUKTY NA DOKÚPENIE PRE VÝHODNEJŠIU DOPRAVU
   Blok #products-to-break-price-level je mimo .cart-layout, takže mal ešte
   pôvodný vzhľad — tmavý pruh s červeným výkričníkom a nezarovnané karty.
   ========================================================================== */

/* obsah sa dotahuje ajaxom az po zvoleni dopravy — prazdny blok by inak
   nechal na stranke prazdnu bielu kartu */
#products-to-break-price-level:empty {
	display: none !important;
}

#products-to-break-price-level {
	width: 100% !important;
	margin: 0 0 16px 0 !important;
	padding: 18px 20px !important;
	box-sizing: border-box;
	background: #fff;
	border: 1px solid var(--ai-line);
	border-radius: 14px;
}

/* --- 47a) Hláška ------------------------------------------------------- */

#products-to-break-price-level > .info-price {
	display: flex !important;
	align-items: center;
	gap: 10px;
	float: none !important;
	width: 100% !important;
	height: auto !important;
	margin: 0 0 16px 0 !important;
	padding: 11px 14px !important;
	box-sizing: border-box;
	background: var(--ai-green-soft) !important;
	border: 1px solid #D3EADC !important;
	border-radius: 12px !important;
}

/* pôvodná ikona je výrez zo sprite a je posunutá cez position:relative */
#products-to-break-price-level > .info-price > span[class*="icon-type"] {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 20px;
	position: static !important;
	top: auto !important;
	float: none !important;
	width: 20px !important;
	height: 20px !important;
	margin: 0 !important;
	background: none !important;
	font-size: 0;
}

#products-to-break-price-level > .info-price > span[class*="icon-type"]:before {
	content: "\f0d1";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 16px;
	color: var(--ai-green);
}

#products-to-break-price-level > .info-price p {
	margin: 0 !important;
	padding: 0 !important;
	font-size: 13.5px !important;
	font-weight: 600 !important;
	line-height: 1.4 !important;
	color: var(--ai-green-dark) !important;
	text-align: left !important;
}

/* --- 47b) Karty produktov ---------------------------------------------- */

#products-to-break-price-level-list {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
	gap: 14px;
	float: none !important;
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
}

#products-to-break-price-level-list > div[class*="product-"] {
	position: relative;
	display: flex !important;
	flex-direction: column;
	float: none !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	padding: 12px 12px 88px 12px !important;
	box-sizing: border-box;
	background: #fff;
	border: 1px solid var(--ai-line) !important;
	border-radius: 14px !important;
	overflow: hidden;
	transition: border-color .15s ease, box-shadow .15s ease;
}

#products-to-break-price-level-list > div[class*="product-"]:hover {
	border-color: #C9D8CF !important;
	box-shadow: 0 8px 20px rgba(31, 42, 36, .08) !important;
}

#products-to-break-price-level-list .product-images {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100% !important;
	height: 150px;
	margin: 0 0 10px 0 !important;
	overflow: hidden;
}

#products-to-break-price-level-list .product-images img {
	max-width: 100%;
	max-height: 150px;
	width: auto !important;
	height: auto !important;
	object-fit: contain;
}

/* štítky rovnaké ako v katalógu */
#products-to-break-price-level-list .container-product-actions {
	position: absolute;
	top: 10px;
	left: 10px;
	z-index: 3;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 6px;
	width: auto !important;
	height: auto !important;
	pointer-events: none;
}

#products-to-break-price-level-list .container-product-actions > div {
	float: none !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	background: none !important;
	line-height: 0;
}

#products-to-break-price-level-list .container-product-actions > div > span {
	display: inline-block;
	float: none !important;
	width: auto !important;
	padding: 5px 11px !important;
	border-radius: 999px;
	background: var(--ai-green) !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	color: #fff !important;
	white-space: nowrap;
}

#products-to-break-price-level-list .container-product-actions > div.clear > span {
	background: #D8453C !important;
}

#products-to-break-price-level-list .container-product-actions > div.action > span {
	background: var(--ai-ink) !important;
}

#products-to-break-price-level-list .product-content {
	display: flex !important;
	flex-direction: column;
	flex-wrap: nowrap !important;
	flex: 1 1 auto;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

#products-to-break-price-level-list .product-content h4 {
	flex: 0 0 auto;
	width: 100% !important;
	height: auto !important;
	margin: 0 0 6px 0 !important;
	text-align: left !important;
}

#products-to-break-price-level-list .product-content h4 a {
	font-size: 13.5px !important;
	font-weight: 600 !important;
	line-height: 1.35 !important;
	color: var(--ai-ink) !important;
	text-decoration: none !important;
}

#products-to-break-price-level-list .catalog-delivery_name {
	flex: 0 0 auto;
	margin: 0 !important;
	font-size: 11.5px !important;
	font-weight: 600 !important;
	color: var(--ai-green-dark) !important;
	text-align: left !important;
}

/* --- 47c) Pätička karty: cena + tlačidlo ------------------------------- */

/* Karty su uzke — cena a tlacidlo sa vedla seba nezmestili a "s DPH"
   sa lamalo mimo paticky. Preto su pod sebou. */
#products-to-break-price-level-list .product-content .price {
	position: absolute;
	left: 0;
	bottom: 46px;
	display: flex;
	align-items: baseline;
	gap: 5px;
	width: 100%;
	height: auto;
	margin: 0 !important;
	padding: 0 12px !important;
	box-sizing: border-box;
	background: none !important;
	text-align: left !important;
	white-space: nowrap;
}

#products-to-break-price-level-list .product-content .price .normal_price,
#products-to-break-price-level-list .product-content .price .new_price {
	font-size: 16px !important;
	font-weight: 700 !important;
	color: var(--ai-ink) !important;
}

#products-to-break-price-level-list .product-content .price .s-dph {
	font-size: 10.5px !important;
	font-weight: 400 !important;
	color: var(--ai-muted) !important;
}

#products-to-break-price-level-list .product-content .price .old_price {
	font-size: 11.5px !important;
	color: var(--ai-muted) !important;
	text-decoration: line-through;
}

#products-to-break-price-level-list .add-cart-catalog {
	position: absolute;
	left: 0;
	bottom: 0;
	display: flex;
	align-items: center;
	width: 100%;
	height: 46px;
	margin: 0 !important;
	padding: 0 12px 10px 12px !important;
	box-sizing: border-box;
	background: none !important;
}

/* tlacidlo je zabalene v <form><fieldset><div> — sirku treba pretlacit
   cez celu tu retaz, inak sa roztiahne len vonkajsi obal */
#products-to-break-price-level-list .add-cart-catalog form,
#products-to-break-price-level-list .add-cart-catalog fieldset,
#products-to-break-price-level-list .add-cart-catalog > form > fieldset > div {
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: none !important;
}

#products-to-break-price-level-list .add-cart-catalog input[type="submit"],
#products-to-break-price-level-list .add-cart-catalog input[type="button"],
#products-to-break-price-level-list .add-cart-catalog a {
	display: block;
	width: 100% !important;
	height: 38px !important;
	padding: 0 14px !important;
	background: var(--ai-green) !important;
	border: 0 !important;
	border-radius: 10px !important;
	font-size: 12.5px !important;
	font-weight: 600 !important;
	color: #fff !important;
	cursor: pointer;
}

#products-to-break-price-level-list .add-cart-catalog input:hover,
#products-to-break-price-level-list .add-cart-catalog a:hover {
	background: var(--ai-green-dark) !important;
}

@media screen and (max-width:800px) {

	#products-to-break-price-level {
		padding: 14px !important;
	}

	#products-to-break-price-level-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px;
	}

	#products-to-break-price-level-list .product-images {
		height: 120px;
	}

	#products-to-break-price-level-list .product-images img {
		max-height: 120px;
	}
}

/* ==========================================================================
   48) DORUČOVACIA ADRESA V KOŠÍKU
   Blok sa objaví po zaškrtnutí „Tovar doručiť na inú adresu" — zostal
   nedotknutý: holé odstavce s adresou, podčiarknuté „Upraviť" a čierne
   tlačidlo na pridanie adresy.
   ========================================================================== */

#cart-delivery-address-show-and-select {
	/* flex + wrap: riadky adresy idu cez celu sirku, odkaz „Upraviť“
	   a tlacidlo potom sadnu vedla seba do jedneho riadku (v zaklade
	   su oba float:left a prekryvali sa) */
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0 14px;
	margin: 12px 0 0 0 !important;
	padding: 14px 16px !important;
	box-sizing: border-box;
	background: #F7F9F8;
	border: 1px solid var(--ai-line);
	border-radius: 12px;
}

/* prvý riadok je názov adresy */
#cart-delivery-address-show-and-select > p:first-child {
	flex: 0 0 100%;
	margin: 0 0 8px 0 !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: .4px;
	text-transform: uppercase;
	color: var(--ai-muted) !important;
}

#cart-delivery-address-show-and-select > p {
	flex: 0 0 100%;
	margin: 0 !important;
	font-size: 13.5px !important;
	line-height: 1.55 !important;
	color: var(--ai-ink) !important;
}

/* --- 48a) Odkaz na úpravu --------------------------------------------- */

#cart-delivery-address-show-and-select > a {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	flex: 0 0 auto;
	float: none !important;
	width: auto !important;
	margin: 12px 0 0 0 !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	color: var(--ai-green-dark) !important;
	text-decoration: none !important;
}

#cart-delivery-address-show-and-select > a:before {
	content: "\f304";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 11px;
}

#cart-delivery-address-show-and-select > a:hover {
	text-decoration: underline !important;
}

/* --- 48b) Tlačidlo na pridanie adresy --------------------------------- */

#cart-delivery-address-show-and-select .button-type-1 {
	float: none !important;
	width: auto !important;
	height: auto !important;
	margin: 12px 0 0 0 !important;
	padding: 0 !important;
	background: none !important;
	border: 0 !important;
}

#cart-delivery-address-show-and-select .button-type-1 a {
	display: inline-flex !important;
	align-items: center;
	gap: 8px;
	float: none !important;
	width: auto !important;
	height: 42px !important;
	padding: 0 18px !important;
	box-sizing: border-box;
	background: #fff !important;
	border: 1px solid var(--ai-line) !important;
	border-radius: 10px !important;
	font-size: 13.5px !important;
	font-weight: 600 !important;
	color: var(--ai-ink) !important;
	text-decoration: none !important;
	transition: border-color .15s ease, color .15s ease;
}

#cart-delivery-address-show-and-select .button-type-1 a:before {
	content: "\f067";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 11px;
	color: var(--ai-green);
}

#cart-delivery-address-show-and-select .button-type-1 a:hover {
	border-color: var(--ai-green) !important;
	color: var(--ai-green-dark) !important;
}

/* ==========================================================================
   49) PRIDANIE / ÚPRAVA DORUČOVACEJ ADRESY (body.users-update-address)
   Pohľad bol holý formulár roztiahnutý cez celú šírku obrazovky.
   ========================================================================== */

body.users-update-address .content {
	max-width: 640px !important;
	margin: 0 auto !important;
	padding: 6px 20px 46px 20px;
	box-sizing: border-box;
}

body.users-update-address .new-reg-info-update-address {
	width: 100% !important;
	margin: 0 0 6px 0 !important;
	padding: 0 !important;
	font-size: 25px !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;
	color: var(--ai-ink) !important;
	text-align: left !important;
}

body.users-update-address .update-address-lead {
	margin: 0 0 18px 0 !important;
	font-size: 14px !important;
	line-height: 1.6 !important;
	color: var(--ai-muted) !important;
}

body.users-update-address #update-address-form {
	width: 100% !important;
	padding: 24px !important;
	box-sizing: border-box;
	background: #fff;
	border: 1px solid var(--ai-line);
	border-radius: 16px;
}

/* --- 49a) Formulár ----------------------------------------------------- */

body.users-update-address #update-address-form form,
body.users-update-address #update-address-form fieldset,
body.users-update-address #update-address-form dl,
body.users-update-address #update-address-form dd {
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: none !important;
}

/* Zend generuje ku kazdemu polu <dt> s popiskom, ktory je v zaklade
   skryty cez clip — necháme ho skrytý, popis nesie placeholder. */
body.users-update-address #update-address-form dt {
	display: none !important;
}

body.users-update-address #update-address-form .element,
body.users-update-address #update-address-form input[type="text"],
body.users-update-address #update-address-form input[type="tel"],
body.users-update-address #update-address-form select {
	max-width: none !important;
}

body.users-update-address #update-address-form input[type="text"],
body.users-update-address #update-address-form input[type="tel"],
body.users-update-address #update-address-form select {
	width: 100% !important;
	height: 46px !important;
	margin: 0 0 12px 0 !important;
	box-sizing: border-box;
}

/* --- 49b) Rozloženie polí ---------------------------------------------- */
/* Základ uz rieši šírky cez triedy .row-full / .row-medium / .row-big /
   .row-small na obaloch polí. Netreba vlastnú mriežku — stačí, aby vnútorné
   <dl> zabralo celú šírku karty (riadky sú plávajúce, preto flow-root). */

body.users-update-address #update-address-form dl {
	display: flow-root;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.users-update-address #update-address-form dl > div {
	box-sizing: border-box;
}

body.users-update-address #update-address-form .element {
	width: 100% !important;
	max-width: none !important;
}

/* --- 49c) Tlačidlo ----------------------------------------------------- */

/* obal tlacidla ma v zaklade tmave pozadie, ktore presvitalo spoza noveho */
body.users-update-address #update-address-form .buttons {
	clear: both;
	width: 100% !important;
	margin: 8px 0 0 0 !important;
	padding: 0 !important;
	text-align: left !important;
}

body.users-update-address #update-address-form #button-update,
body.users-update-address #update-address-form .buttons .button-type-1 {
	float: none !important;
	display: inline-block !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	background: none !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.users-update-address #update-address-form #update,
body.users-update-address #update-address-form input[type="submit"] {
	width: auto !important;
	height: 48px !important;
	margin: 8px 0 0 0 !important;
	padding: 0 26px !important;
	box-sizing: border-box;
	background: var(--ai-green) !important;
	border: 0 !important;
	border-radius: 12px !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	color: #fff !important;
	cursor: pointer;
	transition: background .15s ease;
}

body.users-update-address #update-address-form #update:hover,
body.users-update-address #update-address-form input[type="submit"]:hover {
	background: var(--ai-green-dark) !important;
}

@media screen and (max-width:800px) {

	body.users-update-address .content {
		padding: 6px 16px 34px 16px;
	}

	body.users-update-address #update-address-form {
		padding: 18px !important;
	}

	body.users-update-address #update-address-form #update,
	body.users-update-address #update-address-form input[type="submit"] {
		width: 100% !important;
	}
}

/* ==========================================================================
   50) KATALÓG NA VEĽKÝCH MONITOROCH
   Mriežka je auto-fill s minimom 230 px, takže na širokom monitore vyšlo
   6 stĺpcov a karty boli len ~244 px široké. Nad 1400 px preto počet
   stĺpcov pevne obmedzujeme na 5 — karty sú tým výrazne väčšie.
   ========================================================================== */

/* Šírka obsahu je v základnom CSS odstupňovaná: od 1422 px má .container
   1400 px a až od 1934 px 1912 px. Počet stĺpcov preto viažeme na tie isté
   hranice, aby karta ostala v rozumnej šírke (~250 – 295 px). */

@media screen and (min-width:1422px) and (max-width:1933px) {

	#category-products .catalog-block,
	#tips-after-add-to-cart,
	#favorites-product {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 22px;
	}
}

@media screen and (min-width:1934px) {

	#category-products .catalog-block,
	#tips-after-add-to-cart,
	#favorites-product {
		grid-template-columns: repeat(5, minmax(0, 1fr));
		gap: 22px;
	}

	/* väčšia karta znesie aj väčší náhľad */
	#category-products .catalog-block .product-images,
	#tips-after-add-to-cart .product-images,
	#favorites-product .product-images {
		height: 250px;
	}

	#products-to-break-price-level-list {
		grid-template-columns: repeat(5, minmax(0, 1fr));
	}
}

/* ==========================================================================
   51) OBRÁZKOVÝ KATALÓG KATEGÓRIÍ NA CELÚ ŠÍRKU (veľké monitory)
   #catalog-products-index má max-width 1500 px, takže dlaždice kategórií
   boli užšie ako slíder nad nimi. Obmedzenie preto na širokých displejoch
   presúvame z rodiča na jednotlivé bloky — dlaždice ho už nedostanú a
   roztiahnu sa na plnú šírku obsahu.
   ========================================================================== */

@media screen and (min-width:1934px) {

	#catalog-products-index {
		max-width: none !important;
		padding: 0 !important;
	}

	/* SEO box a hlavička ostávajú v pôvodnej šírke */
	#catalog-products-index > .info-articles,
	#catalog-products-index > hr.space,
	#catalog-products-index > #index-catalog-header {
		width: 100%;
		/* !important je nutne — SEO box ma zo sekcie 5 max-width:none */
		max-width: 1460px !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}

	/* dlaždice kategórií cez celú šírku — získaný priestor využijeme na
	   viac dlaždíc v riadku, nie na ich zväčšenie */
	#catalog-products-index > #img-catalog {
		width: 100%;
		max-width: none;
		grid-template-columns: repeat(6, minmax(0, 1fr));
	}

	/* Názov kategórie zarovnávame s odkazom „Prihlásenie" v hornej lište.
	   Dlaždica má rámček 1 px a text vnútri odsadenie 18 px, lišta má
	   odsadenie 12 px — uberáme teda 7 px. */
	#img-catalog .img-catalog-block .img-catalog-image-link > span {
		padding-left: 11px !important;
		padding-right: 11px !important;
	}

	/* Horné menu začínalo o 33 px vpravo od obsahu (odsadenie <li> a <a>),
	   takže „UKÁŽKOVÉ PRODUKTY" nelícovalo s názvami kategórií ani
	   s odkazom „Prihlásenie". Posúvame celý zoznam doľava. */
	#articles-menu > ul#submenu-with-width-of-content {
		margin-left: -33px !important;
	}

	/* logo v hlavičke o 150 px doľava */
	#container-header .brand {
		position: relative;
		left: -150px;
	}

	/* košík spolu s prihlásením a registráciou o 120 px doprava */
	#container-header .ai-header-top {
		position: relative;
		left: 120px;
	}

	/* pravý panel v detaile produktu vyššie — box s cenou tak padne
	   do zorného poľa hneď pri načítaní (20 px zabralo vlastné
	   odsadenie stĺpca, zvyšok doťahujeme záporným okrajom) */
	#detail #product-detail {
		padding-top: 0 !important;
		margin-top: -20px !important;
	}

	/* slíder „Doporučujeme" tiež cez celú šírku (počet položiek v ňom
	   nastavuje slick cez JS — pozri show-product-index.phtml) */
	#catalog-products-index > .products-title-with-line,
	#catalog-products-index > .products-on-index-in-slider {
		width: 100%;
		max-width: none !important;
	}
}

/* ==========================================================================
   52) KOŠÍK NA NAJŠIRŠÍCH DISPLEJOCH
   Prvý krok je zámerne úzky (1160 px), aby sa formulár dobre čítal.
   Od 1934 px (kedy má .container 1912 px) ho mierne rozšírime a spolu
   s ním aj pravý súhrn — nie však na plnú šírku obsahu.
   ========================================================================== */

@media screen and (min-width:1934px) {

	body.cart-first-and-second .content {
		max-width: 1420px !important;
	}

	body.cart-first-and-second .cart-layout {
		grid-template-columns: minmax(0, 1fr) 380px;
		gap: 26px;
	}

	/* rekapitulácia pred odoslaním — rovnaká šírka ako prvý krok */
	body.cart-third .content {
		max-width: 1420px;
	}

	/* poďakovanie za nákup — je obsahovo redšie, stačí mierne rozšíriť */
	body.cart-success .content {
		max-width: 1120px;
	}

	/* potvrdenie vloženia do košíka + tipy na ďalší nákup */
	body.cart-add-product-success .content {
		max-width: 1420px !important;
	}

	body.cart-add-product-success #tips-after-add-to-cart {
		grid-template-columns: repeat(5, minmax(0, 1fr));
	}

	body.cart-success .cart-success-facts {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

/* ==========================================================================
   53) BOX „NEVIETE SI PORADIŤ?" V ĽAVOM MENU
   Pôvodne to bol jeden PNG obrázok s 3D otáznikom. Teraz je to karta
   s textom — texty sú preložiteľné a box sa prispôsobí šírke stĺpca.
   ========================================================================== */

#question_for_seller_right_link {
	display: flex !important;
	align-items: center;
	gap: 12px;
	float: none !important;
	width: 100% !important;
	height: auto !important;
	margin: 0 0 20px 0 !important;
	padding: 16px !important;
	box-sizing: border-box;
	background: var(--ai-green-soft) !important;
	border: 1px solid #D3EADC !important;
	border-radius: 14px !important;
	text-decoration: none !important;
	cursor: pointer;
	transition: border-color .15s ease, background .15s ease;
}

#question_for_seller_right_link:hover {
	background: #E0F2E7 !important;
	border-color: var(--ai-green) !important;
}

/* obrázok už nepotrebujeme — ak by ho niekde šablóna ešte vykreslila */
#question_for_seller_right_link img,
#question_for_seller_right_link .question_for_seller_right {
	display: none !important;
}

#question_for_seller_right_link .qfs-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 40px;
	width: 40px;
	height: 40px;
	background: var(--ai-green);
	border-radius: 50%;
}

#question_for_seller_right_link .qfs-icon:before {
	content: "\f059";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 19px;
	color: #fff;
}

#question_for_seller_right_link .qfs-text {
	display: flex;
	flex-direction: column;
	gap: 3px;
	min-width: 0;
}

#question_for_seller_right_link .qfs-text strong {
	font-size: 14px;
	font-weight: 700;
	line-height: 1.25;
	color: var(--ai-ink);
}

#question_for_seller_right_link .qfs-text span {
	font-size: 12.5px;
	line-height: 1.4;
	color: var(--ai-muted);
}

/* ==========================================================================
   54) VYSKAKOVACIE OKNO „OTÁZKA NA PREDAJCU"
   Pôvodne float-ové rozloženie: polia 183 px vedľa seba, prázdne .row
   s nulovou výškou, čierne tlačidlo so sprite šípkou a zatvárací krížik
   ako obrázok. Prerábame na jednoduchý dvojstĺpcový formulár.
   ========================================================================== */

#form-question-seller {
	box-sizing: border-box;
	background: #fff;
	border-radius: 16px;
	box-shadow: 0 18px 50px rgba(31, 42, 36, .22);
	overflow: hidden;
}

#form-question-seller #alert-window {
	display: block;
	width: 100% !important;
	height: auto !important;
	padding: 0 !important;
}

/* --- 54a) Hlavička okna ------------------------------------------------ */

#form-question-seller .icon-box {
	position: absolute;
	top: 18px;
	left: 22px;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
	float: none !important;
	width: 38px !important;
	height: 38px !important;
	margin: 0 !important;
	background: var(--ai-green);
	border-radius: 50%;
}

/* ikona je výrez zo sprite obrázka a je posunutá cez position:relative */
#form-question-seller .icon-box span[class*="icon-type"] {
	position: static !important;
	top: auto !important;
	left: auto !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	background: none !important;
	font-size: 0;
}

#form-question-seller .icon-box span[class*="icon-type"]:before {
	content: "\f059";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 18px;
	color: #fff;
}

#form-question-seller .title-box {
	position: relative;
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	padding: 20px 22px 18px 74px !important;
	box-sizing: border-box;
	background: #F7F9F8 !important;
	border-bottom: 1px solid var(--ai-line);
}

#form-question-seller .title-box-position {
	float: none !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
}

#form-question-seller .title-box .title {
	margin: 0 !important;
	padding: 0 !important;
	font-size: 17px !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;
	color: var(--ai-ink) !important;
	text-align: left !important;
}

#form-question-seller .close-window {
	position: absolute;
	top: 16px;
	right: 16px;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
}

/* --- 54b) Telo formulára ----------------------------------------------- */

#form-question-seller > #alert-window > .content {
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	padding: 20px 22px 0 22px !important;
	box-sizing: border-box;
	background: none !important;
}

#form-question-seller .info-required {
	margin: 0 0 14px 0 !important;
	font-size: 12.5px !important;
	color: var(--ai-muted) !important;
}

#form-question-seller .myform,
#form-question-seller dd,
#form-question-seller dl {
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* popisky Zend formulára sú skryté, texty nesú placeholdery */
#form-question-seller dt {
	display: none !important;
}

#form-question-seller fieldset {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px 16px;
	float: none !important;
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

#form-question-seller fieldset > dl {
	display: contents;
}

#form-question-seller .row,
#form-question-seller .row-captcha {
	float: none !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
}

#form-question-seller .element {
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Základ posúva jednotlivé prvky cez position:relative s pevnými
   posunmi (textarea top:-204px left:400px, obrázok kódu top:-92px,
   riadok s kódom top:18px left:45px…). V mriežke by tak vyskočili
   mimo, preto posuny rušíme plošne. */
#form-question-seller .row,
#form-question-seller .row-captcha,
#form-question-seller .element,
#form-question-seller input,
#form-question-seller textarea,
#form-question-seller img,
#form-question-seller #question-button,
#form-question-seller .button-type-3-center {
	position: static !important;
	top: auto !important;
	left: auto !important;
	right: auto !important;
	bottom: auto !important;
}

#form-question-seller input[type="text"],
#form-question-seller input[type="email"],
#form-question-seller input[type="tel"],
#form-question-seller textarea {
	float: none !important;
	width: 100% !important;
	height: 44px !important;
	margin: 0 !important;
	padding: 0 14px !important;
	box-sizing: border-box;
	background: #F7F9F8 !important;
	border: 1px solid var(--ai-line) !important;
	border-radius: 10px !important;
	font-size: 14px !important;
	color: var(--ai-ink) !important;
}

#form-question-seller textarea {
	height: 120px !important;
	padding: 12px 14px !important;
	resize: vertical;
}

/* Ikonu na pozadí polí dáva pravidlo so selektorom
   „#fieldset-send_for_seller .row .element #phone1" — má vyššiu
   špecifickosť, preto ju rušíme rovnako konkrétne. */
#form-question-seller #fieldset-send_for_seller .row .element input,
#form-question-seller #fieldset-send_for_seller .row .element textarea,
#form-question-seller #fieldset-send_for_seller .row-captcha .element input {
	background-image: none !important;
}

#form-question-seller input:focus,
#form-question-seller textarea:focus {
	outline: none;
	border-color: var(--ai-green) !important;
	background: #fff !important;
}

/* správa cez obidva stĺpce */
#form-question-seller .row:has(textarea) {
	grid-column: 1 / -1;
}

/* --- 54c) Overovací kód ------------------------------------------------ */

#form-question-seller .row-captcha {
	display: flex;
	align-items: center;
	gap: 12px;
}

#form-question-seller .row-captcha .element {
	display: flex;
	align-items: center;
	gap: 12px;
}

#form-question-seller .row-captcha img {
	flex: 0 0 auto;
	max-height: 44px;
	width: auto;
	border: 1px solid var(--ai-line);
	border-radius: 10px;
}

#form-question-seller .row-captcha input[type="text"] {
	flex: 1 1 auto;
	min-width: 0;
}

/* --- 54d) Tlačidlo ----------------------------------------------------- */

#form-question-seller hr.space {
	display: none !important;
}

#form-question-seller #question-button {
	float: none !important;
	display: block !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	padding: 18px 22px 22px 22px !important;
	background: none !important;
	border: 0 !important;
}

#form-question-seller .button-type-3-left,
#form-question-seller .button-type-3-right,
#form-question-seller #question-button span[class*="icon-type"] {
	display: none !important;
}

#form-question-seller .button-type-3-center {
	float: none !important;
	display: inline-block !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	background: none !important;
}

#form-question-seller #send-question {
	width: auto !important;
	height: 46px !important;
	margin: 0 !important;
	padding: 0 24px !important;
	box-sizing: border-box;
	background: var(--ai-green) !important;
	border: 0 !important;
	border-radius: 12px !important;
	font-size: 14.5px !important;
	font-weight: 600 !important;
	color: #fff !important;
	cursor: pointer;
	transition: background .15s ease;
}

#form-question-seller #send-question:hover {
	background: var(--ai-green-dark) !important;
}

@media screen and (max-width:640px) {

	#form-question-seller fieldset {
		grid-template-columns: minmax(0, 1fr);
	}

	#form-question-seller .row-captcha .element {
		flex-wrap: wrap;
	}
}

/* ==========================================================================
   55) POTVRDENIE ODBERU NOVINIEK
   (newsletter/public_index/validate-and-add-newsletter)
   Druhý krok prihlásenia na newsletter — bol to holý formulár roztiahnutý
   cez celú šírku obrazovky s čiernym tlačidlom.
   ========================================================================== */

body.newsletter-validate-and-add-newsletter .content > .validate-and-add-newsletter-info-block,
body.newsletter-validate-and-add-newsletter .content > .validate-and-add-newsletter-info-block ~ form {
	max-width: 520px;
	margin-left: auto !important;
	margin-right: auto !important;
}

/* --- 55a) Úvodná informácia -------------------------------------------- */

#info-block.validate-and-add-newsletter-info-block {
	display: block;
	float: none !important;
	width: 100% !important;
	height: auto !important;
	margin: 24px auto 16px auto !important;
	padding: 14px 16px !important;
	box-sizing: border-box;
	background: var(--ai-green-soft) !important;
	border: 1px solid #D3EADC !important;
	border-radius: 14px !important;
}

/* ikona je vnútri <p>, nie jeho súrodenec — flex musí byť na odseku,
   inak sa prekryje s textom */
#info-block.validate-and-add-newsletter-info-block p {
	display: flex;
	align-items: flex-start;
	gap: 11px;
	margin: 0 !important;
	padding: 0 !important;
	font-size: 13.5px !important;
	line-height: 1.6 !important;
	color: var(--ai-ink) !important;
	text-align: left !important;
}

/* ikona je výrez zo sprite a je posunutá cez position:relative */
#info-block.validate-and-add-newsletter-info-block span.info {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 20px;
	margin-top: 1px !important;
	position: static !important;
	top: auto !important;
	float: none !important;
	width: 20px !important;
	height: 20px !important;
	margin: 0 !important;
	background: none !important;
	font-size: 0;
}

#info-block.validate-and-add-newsletter-info-block span.info:before {
	content: "\f05a";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 17px;
	color: var(--ai-green);
}

/* --- 55b) Formulár ----------------------------------------------------- */

body.newsletter-validate-and-add-newsletter #fieldset-validateNewsletterForm {
	width: 100% !important;
	margin: 0 auto 40px auto !important;
	padding: 24px !important;
	box-sizing: border-box;
	background: #fff;
	border: 1px solid var(--ai-line) !important;
	border-radius: 16px;
}

body.newsletter-validate-and-add-newsletter #fieldset-validateNewsletterForm .row,
body.newsletter-validate-and-add-newsletter #fieldset-validateNewsletterForm .row-captcha,
body.newsletter-validate-and-add-newsletter #fieldset-validateNewsletterForm .buttons,
body.newsletter-validate-and-add-newsletter #fieldset-validateNewsletterForm .element {
	float: none !important;
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.newsletter-validate-and-add-newsletter #fieldset-validateNewsletterForm .row {
	margin-bottom: 12px !important;
}

body.newsletter-validate-and-add-newsletter #fieldset-validateNewsletterForm label {
	display: block;
	float: none !important;
	width: 100% !important;
	margin: 0 0 6px 0 !important;
	font-size: 12.5px !important;
	font-weight: 600 !important;
	color: var(--ai-muted) !important;
	text-align: left !important;
}

body.newsletter-validate-and-add-newsletter #fieldset-validateNewsletterForm input[type="text"],
body.newsletter-validate-and-add-newsletter #fieldset-validateNewsletterForm select {
	float: none !important;
	width: 100% !important;
	height: 46px !important;
	margin: 0 !important;
	padding: 0 14px !important;
	box-sizing: border-box;
	background: #F7F9F8 !important;
	background-image: none !important;
	border: 1px solid var(--ai-line) !important;
	border-radius: 10px !important;
	font-size: 14px !important;
	color: var(--ai-ink) !important;
}

body.newsletter-validate-and-add-newsletter #fieldset-validateNewsletterForm input:focus,
body.newsletter-validate-and-add-newsletter #fieldset-validateNewsletterForm select:focus {
	outline: none;
	background: #fff !important;
	border-color: var(--ai-green) !important;
}

/* --- 55c) Overovací kód ------------------------------------------------ */

body.newsletter-validate-and-add-newsletter #fieldset-validateNewsletterForm .row-captcha .element {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 16px !important;
}

body.newsletter-validate-and-add-newsletter #fieldset-validateNewsletterForm .row-captcha img {
	flex: 0 0 auto;
	position: static !important;
	top: auto !important;
	left: auto !important;
	max-height: 46px;
	width: auto;
	border: 1px solid var(--ai-line);
	border-radius: 10px;
}

body.newsletter-validate-and-add-newsletter #fieldset-validateNewsletterForm .row-captcha input[type="text"] {
	flex: 1 1 auto;
	min-width: 0;
	position: static !important;
	top: auto !important;
	left: auto !important;
}

/* --- 55d) Tlačidlo ----------------------------------------------------- */

body.newsletter-validate-and-add-newsletter #button-addValidatedNewsletter {
	display: block !important;
	float: none !important;
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	background: none !important;
	border: 0 !important;
}

body.newsletter-validate-and-add-newsletter #button-addValidatedNewsletter input[type="submit"] {
	width: 100% !important;
	height: 48px !important;
	margin: 0 !important;
	padding: 0 24px !important;
	box-sizing: border-box;
	background: var(--ai-green) !important;
	border: 0 !important;
	border-radius: 12px !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	color: #fff !important;
	cursor: pointer;
	transition: background .15s ease;
}

body.newsletter-validate-and-add-newsletter #button-addValidatedNewsletter input[type="submit"]:hover {
	background: var(--ai-green-dark) !important;
}

/* ==========================================================================
   56) PÄTIČKA
   Pôvodne: diagonálny dvojfarebný podklad (obrázok na #container-footer),
   obsah natlačený v ľavej tretine a pravá polovica prázdna, tri stĺpce
   rôznej výšky, drobný sivý text a copyright schovaný v ľavom stĺpci.
   ========================================================================== */

#container-footer {
	background-image: none !important;
	background-color: #F4F6F5 !important;
	border-top: 1px solid var(--ai-line);
}

#footer {
	width: 100% !important;
	margin: 0 !important;
	padding: 48px 0 0 0 !important;
	box-sizing: border-box;
}

/* --- 56a) Stĺpce cez celú šírku ---------------------------------------- */

#footer #info-articles {
	display: grid !important;
	grid-template-columns: 1.4fr 1fr 1fr;
	gap: 32px 40px;
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 0 36px 0 !important;
	box-sizing: border-box;
}

#footer #info-articles > div[class*="span-"] {
	float: none !important;
	width: auto !important;
	height: auto !important;
	min-width: 0;
	margin: 0 !important;
	padding: 0 !important;
}

/* --- 56b) Prvý stĺpec: logo a kontakt ---------------------------------- */

#footer #mediahelp img {
	max-width: 190px;
	height: auto;
	margin: 0 0 16px 0 !important;
}

#footer #mediahelp p {
	margin: 0 0 6px 0 !important;
	font-size: 13.5px !important;
	line-height: 1.6 !important;
	color: var(--ai-ink) !important;
}

#footer #mediahelp .text-2-copyright,
#footer #mediahelp .text-2-advertisment-1 {
	font-size: 12.5px !important;
	color: var(--ai-muted) !important;
}

#footer #mediahelp br,
#footer #mediahelp hr.space {
	display: none !important;
}



/* --- 56c) Zoznamy odkazov ---------------------------------------------- */

#footer .group-title {
	width: auto !important;
	height: auto !important;
	margin: 0 0 14px 0 !important;
	padding: 0 !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: .5px;
	text-transform: uppercase;
	color: var(--ai-muted) !important;
}

#footer .ul-group {
	display: flex;
	flex-direction: column;
	gap: 9px;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

#footer .ul-group li {
	float: none !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
	background: none !important;
}

#footer .ul-group li a {
	display: inline-block;
	font-size: 13.5px !important;
	line-height: 1.4 !important;
	color: var(--ai-ink) !important;
	text-decoration: none !important;
	transition: color .15s ease;
}

#footer .ul-group li a:hover {
	color: var(--ai-green-dark) !important;
	text-decoration: underline !important;
}

/* --- 56d) Spodný pruh --------------------------------------------------- */

#footer .footer-bottom-bar {
	grid-column: 1 / -1;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 8px 24px;
	margin-top: 8px;
	padding-top: 18px;
	border-top: 1px solid var(--ai-line);
}

#footer .footer-bottom-bar p {
	margin: 0 !important;
	font-size: 12.5px !important;
	line-height: 1.5 !important;
	color: var(--ai-muted) !important;
}

#footer .footer-bottom-bar a {
	color: var(--ai-muted) !important;
	text-decoration: none !important;
}

#footer .footer-bottom-bar a:hover {
	color: var(--ai-green-dark) !important;
	text-decoration: underline !important;
}

@media screen and (max-width:1036px) {

	#footer #info-articles {
		grid-template-columns: 1fr 1fr;
		gap: 28px 30px;
	}
}

@media screen and (max-width:800px) {

	#footer {
		padding: 30px 16px 0 16px !important;
	}

	#footer #info-articles {
		grid-template-columns: minmax(0, 1fr);
		gap: 24px;
		padding-bottom: 22px !important;
	}

	/* na mobile bolo všetko vycentrované — zľava sa číta lepšie */
	#footer #info-articles,
	#footer #mediahelp,
	#footer #mediahelp p,
	#footer .group-title,
	#footer .ul-group,
	#footer .ul-group li,
	#footer .footer-bottom-bar,
	#footer .footer-bottom-bar p {
		text-align: left !important;
	}

	#footer #mediahelp img {
		margin: 0 0 12px 0 !important;
	}

	/* odkazy do dvoch stĺpcov — pätička bola inak neúmerne dlhá */
	#footer .ul-group {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px 16px;
	}

	#footer .group-title {
		margin-bottom: 10px !important;
	}

	#footer .footer-bottom-bar {
		justify-content: flex-start;
		gap: 4px;
		padding-top: 16px;
	}
}

/* na najužších displejoch sa odkazy nezmestia do dvoch stĺpcov */
@media screen and (max-width:400px) {

	#footer .ul-group {
		grid-template-columns: minmax(0, 1fr);
	}
}

/* ==========================================================================
   57) ŠÍRKA ROZBALENÉHO SUBMENU V HORNOM MENU
   Submenu je position:absolute a jeho obalom bol #container-articles-menu,
   ktorý ide cez celú šírku okna. Na širokom monitore sa preto roztiahlo
   na 3425 px, hoci obsah stránky má 1912 px, a kategórie začínali ďaleko
   vľavo mimo osi stránky. Obalom robíme samotnú lištu menu.
   ========================================================================== */

@media screen and (min-width:1222px) {

	#articles-menu {
		position: relative;
	}

	#articles-menu ul.submenu {
		left: 0 !important;
		right: auto !important;
		width: 100% !important;
	}
}

/* --- 57a) Väčšie kategórie v rozbalenom submenu ------------------------ */
/* Na širokom monitore má submenu 1912 px a šesť stĺpcov po ~300 px —
   je v ňom miesto na výraznejší obrázok aj text. */

@media screen and (min-width:1222px) {

	/* Selektory musia dorovnať špecifickosť pravidiel zo sekcie 22
	   (#articles-menu > ul > li:not(...):not(...) > ul.submenu ...). */
	#articles-menu > ul > li:not(.funkcie_eshopu):not(.active-funkcie_eshopu) > ul.submenu > li > a {
		font-size: 17px !important;
		font-weight: 700 !important;
		margin-bottom: 12px !important;
	}

	#articles-menu > ul > li:not(.funkcie_eshopu):not(.active-funkcie_eshopu) > ul.submenu > li > span,
	#articles-menu > ul > li:not(.funkcie_eshopu):not(.active-funkcie_eshopu) > ul.submenu img.small_image_category {
		width: 120px !important;
		height: 120px !important;
		min-width: 120px !important;
	}

	/* Stĺpec pre obrázok bol napevno 78 px — po zväčšení obrázka
	   z neho vytekal a názov kategórie (ktorý ide cez oba stĺpce)
	   sa prekrýval s jeho pozadím. */
	#articles-menu > ul > li:not(.funkcie_eshopu):not(.active-funkcie_eshopu) > ul.submenu > li {
		grid-template-columns: 120px minmax(0, 1fr) !important;
		column-gap: 14px;
	}

	/* menej kategórií na riadok — zvyšok sa zalomí pod ne */
	#articles-menu > ul > li:not(.funkcie_eshopu):not(.active-funkcie_eshopu) > ul.submenu {
		grid-template-columns: repeat(auto-fit, minmax(420px, 1fr)) !important;
		row-gap: 26px;
	}

	#articles-menu > ul > li:not(.funkcie_eshopu):not(.active-funkcie_eshopu) > ul.submenu ul.submenu-1 li a {
		font-size: 15px !important;
		line-height: 1.5 !important;
	}
}

/* ==========================================================================
   58) OKNO „UPOZORNIŤ NA ZNÍŽENIE CENY" (#form-question-for-frend)
   Rovnaká stavba ako okno otázky na predajcu — float-ové rozloženie,
   sprite ikony a čierne tlačidlo so šípkou.
   ========================================================================== */

#form-question-for-frend {
	box-sizing: border-box;
	background: #fff;
	border-radius: 16px;
	box-shadow: 0 18px 50px rgba(31, 42, 36, .22);
	overflow: hidden;
}

#form-question-for-frend #alert-window {
	display: block;
	width: 100% !important;
	height: auto !important;
	padding: 0 !important;
}

/* --- 58a) Hlavička ----------------------------------------------------- */

#form-question-for-frend .icon-box {
	position: absolute;
	top: 18px;
	left: 22px;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
	float: none !important;
	width: 38px !important;
	height: 38px !important;
	margin: 0 !important;
	background: var(--ai-green);
	border-radius: 50%;
}

#form-question-for-frend .icon-box span[class*="icon-type"] {
	position: static !important;
	top: auto !important;
	left: auto !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	background: none !important;
	font-size: 0;
}

/* Ten istý obal sa používa pre dve rôzne okná — rozlíšime ich podľa
   obsahu: znížená cena má #slow-price-content, poslanie známemu formulár. */
#form-question-for-frend .icon-box span[class*="icon-type"]:before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 17px;
	color: #fff;
}

#form-question-for-frend:has(#slow-price-content) .icon-box span[class*="icon-type"]:before {
	content: "\f02b";
}

#form-question-for-frend:has(#fieldset-send_for_seller) .icon-box span[class*="icon-type"]:before {
	content: "\f0e0";
}

#form-question-for-frend .title-box {
	position: relative;
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	padding: 18px 22px 16px 74px !important;
	box-sizing: border-box;
	background: #F7F9F8 !important;
	border-bottom: 1px solid var(--ai-line);
}

#form-question-for-frend .title-box-position {
	float: none !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
}

#form-question-for-frend .title-box .title {
	margin: 0 !important;
	padding: 0 !important;
	font-size: 17px !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;
	color: var(--ai-ink) !important;
	text-align: left !important;
}

#form-question-for-frend .title-box .title-info {
	margin: 3px 0 0 0 !important;
	padding: 0 !important;
	font-size: 13px !important;
	color: var(--ai-muted) !important;
	text-align: left !important;
}

#form-question-for-frend .close-window {
	position: absolute;
	top: 16px;
	right: 16px;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
}

/* --- 58b) Telo --------------------------------------------------------- */

#form-question-for-frend > #alert-window > .content {
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	padding: 20px 22px 22px 22px !important;
	box-sizing: border-box;
	background: none !important;
}

#form-question-for-frend #slow-price-content {
	float: none !important;
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
}

#form-question-for-frend #slow-price-content form {
	width: 100% !important;
}

#form-question-for-frend #slow-price-content p {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
	width: 100% !important;
	margin: 0 0 12px 0 !important;
	padding: 0 !important;
	font-size: 13.5px !important;
	line-height: 1.5 !important;
	color: var(--ai-ink) !important;
}

#form-question-for-frend #slow-price-content p.title {
	display: block;
	margin-bottom: 14px !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: .4px;
	text-transform: uppercase;
	color: var(--ai-muted) !important;
}

#form-question-for-frend #slow-price-content p.title b {
	font-weight: 700 !important;
}

#form-question-for-frend #slow-price-content input[type="text"] {
	flex: 1 1 200px;
	float: none !important;
	width: auto !important;
	min-width: 0;
	height: 44px !important;
	margin: 0 !important;
	padding: 0 14px !important;
	box-sizing: border-box;
	background: #F7F9F8 !important;
	background-image: none !important;
	border: 1px solid var(--ai-line) !important;
	border-radius: 10px !important;
	font-size: 14px !important;
	color: var(--ai-ink) !important;
}

#form-question-for-frend #slow-price-content input[type="text"]:focus {
	outline: none;
	background: #fff !important;
	border-color: var(--ai-green) !important;
}

#form-question-for-frend #slow-price-content input.checkbok-slow-price {
	flex: 0 0 auto;
	float: none !important;
	width: 17px !important;
	height: 17px !important;
	margin: 0 !important;
	accent-color: var(--ai-green);
	cursor: pointer;
}

/* --- 58c) Tlačidlo ----------------------------------------------------- */

#form-question-for-frend .slow-price-content-button {
	width: 100% !important;
	height: auto !important;
	margin: 6px 0 0 0 !important;
}

#form-question-for-frend .button-type-3 {
	float: none !important;
	display: inline-block !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	background: none !important;
	border: 0 !important;
}

#form-question-for-frend .button-type-3-left,
#form-question-for-frend .button-type-3-right,
#form-question-for-frend .button-type-3 span[class*="icon-type"] {
	display: none !important;
}

#form-question-for-frend .button-type-3-center {
	float: none !important;
	display: inline-block !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	background: none !important;
}

#form-question-for-frend #low-price-button {
	width: auto !important;
	height: 46px !important;
	margin: 0 !important;
	padding: 0 24px !important;
	box-sizing: border-box;
	background: var(--ai-green) !important;
	border: 0 !important;
	border-radius: 12px !important;
	font-size: 14.5px !important;
	font-weight: 600 !important;
	color: #fff !important;
	cursor: pointer;
	transition: background .15s ease;
}

#form-question-for-frend #low-price-button:hover {
	background: var(--ai-green-dark) !important;
}

/* ==========================================================================
   59) DIALÓG „STRÁŽIŤ DOSTUPNOSŤ" (jQuery UI)
   ========================================================================== */

.ui-dialog:has(#product-customer-interest-dialog) {
	max-width: 560px;
	padding: 0 !important;
	background: #fff !important;
	border: 0 !important;
	border-radius: 16px !important;
	box-shadow: 0 18px 50px rgba(31, 42, 36, .22);
	overflow: hidden;
}

.ui-dialog:has(#product-customer-interest-dialog) .ui-dialog-titlebar {
	margin: 0 !important;
	padding: 18px 22px !important;
	background: #F7F9F8 !important;
	border: 0 !important;
	border-bottom: 1px solid var(--ai-line) !important;
	border-radius: 0 !important;
	font-size: 17px !important;
	font-weight: 700 !important;
	color: var(--ai-ink) !important;
}

.ui-dialog:has(#product-customer-interest-dialog) #product-customer-interest-dialog {
	padding: 20px 22px !important;
}

.ui-dialog:has(#product-customer-interest-dialog) input[type="text"] {
	width: 100% !important;
	height: 44px !important;
	margin: 0 0 12px 0 !important;
	padding: 0 14px !important;
	box-sizing: border-box;
	background: #F7F9F8 !important;
	background-image: none !important;
	border: 1px solid var(--ai-line) !important;
	border-radius: 10px !important;
	font-size: 14px !important;
}

.ui-dialog:has(#product-customer-interest-dialog) .ui-dialog-buttonpane {
	margin: 0 !important;
	padding: 0 22px 20px 22px !important;
	border: 0 !important;
	background: none !important;
}

.ui-dialog:has(#product-customer-interest-dialog) .ui-dialog-buttonpane button {
	height: 46px !important;
	padding: 0 24px !important;
	background: var(--ai-green) !important;
	border: 0 !important;
	border-radius: 12px !important;
	font-size: 14.5px !important;
	font-weight: 600 !important;
	color: #fff !important;
	cursor: pointer;
}

.ui-dialog:has(#product-customer-interest-dialog) .ui-dialog-buttonpane button:hover {
	background: var(--ai-green-dark) !important;
}


/* ==========================================================================
   60) OKNO „POSLAŤ ZNÁMEMU NA E-MAIL"
   Používa ten istý obal #form-question-for-frend ako okno o znížení ceny,
   ale vnútri má rovnaký formulár ako otázka na predajcu (#fieldset-send_for_seller).
   Preto sem preberáme telo zo sekcie 54.
   ========================================================================== */

/* --- 60c) Tlačidlo ----------------------------------------------------- */

#form-question-for-frend #question-button {
	float: none !important;
	display: block !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	padding: 18px 22px 22px 22px !important;
	background: none !important;
	border: 0 !important;
}

#form-question-for-frend #question-button .button-type-3-left,
#form-question-for-frend #question-button .button-type-3-right,
#form-question-for-frend #question-button span[class*="icon-type"] {
	display: none !important;
}

#form-question-for-frend #question-button input[type="submit"],
#form-question-for-frend #question-button input[type="button"] {
	width: auto !important;
	height: 46px !important;
	margin: 0 !important;
	padding: 0 24px !important;
	box-sizing: border-box;
	background: var(--ai-green) !important;
	border: 0 !important;
	border-radius: 12px !important;
	font-size: 14.5px !important;
	font-weight: 600 !important;
	color: #fff !important;
	cursor: pointer;
}

#form-question-for-frend #question-button input:hover {
	background: var(--ai-green-dark) !important;
}

/* --- 60a) Telo formulára (rovnaká stavba ako otázka na predajcu) ------- */

#form-question-for-frend > #alert-window > .content {
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	padding: 20px 22px 0 22px !important;
	box-sizing: border-box;
	background: none !important;
}

#form-question-for-frend .info-required {
	margin: 0 0 14px 0 !important;
	font-size: 12.5px !important;
	color: var(--ai-muted) !important;
}

#form-question-for-frend .myform,
#form-question-for-frend dd,
#form-question-for-frend dl {
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* popisky Zend formulára sú skryté, texty nesú placeholdery */
#form-question-for-frend dt {
	display: none !important;
}

#form-question-for-frend fieldset {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px 16px;
	float: none !important;
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

#form-question-for-frend fieldset > dl {
	display: contents;
}

#form-question-for-frend .row,
#form-question-for-frend .row-captcha {
	float: none !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
}

#form-question-for-frend .element {
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Základ posúva jednotlivé prvky cez position:relative s pevnými
   posunmi (textarea top:-204px left:400px, obrázok kódu top:-92px,
   riadok s kódom top:18px left:45px…). V mriežke by tak vyskočili
   mimo, preto posuny rušíme plošne. */
#form-question-for-frend .row,
#form-question-for-frend .row-captcha,
#form-question-for-frend .element,
#form-question-for-frend input,
#form-question-for-frend textarea,
#form-question-for-frend img,
#form-question-for-frend #question-button,
#form-question-for-frend .button-type-3-center {
	position: static !important;
	top: auto !important;
	left: auto !important;
	right: auto !important;
	bottom: auto !important;
}

#form-question-for-frend input[type="text"],
#form-question-for-frend input[type="email"],
#form-question-for-frend input[type="tel"],
#form-question-for-frend textarea {
	float: none !important;
	width: 100% !important;
	height: 44px !important;
	margin: 0 !important;
	padding: 0 14px !important;
	box-sizing: border-box;
	background: #F7F9F8 !important;
	border: 1px solid var(--ai-line) !important;
	border-radius: 10px !important;
	font-size: 14px !important;
	color: var(--ai-ink) !important;
}

#form-question-for-frend textarea {
	height: 120px !important;
	padding: 12px 14px !important;
	resize: vertical;
}

/* Ikonu na pozadí polí dáva pravidlo so selektorom
   „#fieldset-send_for_seller .row .element #phone1" — má vyššiu
   špecifickosť, preto ju rušíme rovnako konkrétne. */
#form-question-for-frend #fieldset-send_for_seller .row .element input,
#form-question-for-frend #fieldset-send_for_seller .row .element textarea,
#form-question-for-frend #fieldset-send_for_seller .row-captcha .element input {
	background-image: none !important;
}

#form-question-for-frend input:focus,
#form-question-for-frend textarea:focus {
	outline: none;
	border-color: var(--ai-green) !important;
	background: #fff !important;
}

/* správa cez obidva stĺpce */
#form-question-for-frend .row:has(textarea) {
	grid-column: 1 / -1;
}

/* --- 60b) Overovací kód ------------------------------------------------ */

#form-question-for-frend .row-captcha {
	display: flex;
	align-items: center;
	gap: 12px;
}

#form-question-for-frend .row-captcha .element {
	display: flex;
	align-items: center;
	gap: 12px;
}

#form-question-for-frend .row-captcha img {
	flex: 0 0 auto;
	max-height: 44px;
	width: auto;
	border: 1px solid var(--ai-line);
	border-radius: 10px;
}

#form-question-for-frend .row-captcha input[type="text"] {
	flex: 1 1 auto;
	min-width: 0;
}


/* štítky v „Podobných produktoch" potrebujú vzťažný prvok pre absolútne
   umiestnenie — obrázok ho v tomto bloku nemal */
#related-product .product-images {
	position: relative;
}

/* ==========================================================================
   61) SCROLLOVANIE MOBILNÉHO MENU
   Panel menu má pevnú výšku na celý displej a overflow: visible, takže
   po rozbalení kategórií sa na položky, ktoré sa nezmestili, nedalo
   dostať — nedali sa odscrollovať.
   ========================================================================== */

@media screen and (max-width:800px) {

	#mobile-hamburger-menu > div {
		overflow-y: auto !important;
		overflow-x: hidden !important;
		-webkit-overflow-scrolling: touch;
		overscroll-behavior: contain;
	}

	/* spodná lišta s prihlásením prekrýva koniec zoznamu */
	#mobile-hamburger-menu > div > ul:last-of-type {
		padding-bottom: 90px !important;
	}
}

/* ==========================================================================
   62) PREPÍNAČ „DOPORUČUJEME / POSLEDNÉ KUSY / NOVINKY" NA MOBILE
   Základ ho na malých displejoch prepína na flex-direction: column, takže
   každé tlačidlo zabralo vlastný riadok, hoci sa dve vedľa seba zmestia.
   ========================================================================== */

@media screen and (max-width:800px) {

	#index-catalog-header {
		flex-direction: row !important;
		flex-wrap: wrap !important;
		justify-content: center;
		align-items: center;
		gap: 10px;
		height: auto !important;
		margin: 26px 0 18px 0 !important;
	}

	#index-catalog-header a {
		flex: 0 1 auto;
		margin: 0 !important;
		padding: 10px 16px !important;
		border-radius: 999px !important;
		font-size: 13.5px !important;
		white-space: nowrap;
	}
}

/* ==========================================================================
   63) MOBILNÁ PÄTIČKA — DOLADENIE VZHĽADU
   Nadväzuje na sekciu 56. Kontakt dostáva bielu kartu, nadpisy skupín
   zelenú farbu so zvýrazňovacou linkou a odkazy pohodlnejšiu výšku
   na dotyk.
   ========================================================================== */

@media screen and (max-width:800px) {

	/* Nad kartou s logom bolo 70 px sivého miesta — 40 px z odsadenia
	   #container-footer a 30 px z #footer. Polovicu uberáme. */
	#container-footer {
		background-color: #F2F5F3 !important;
		padding-top: 6px !important;
	}

	#footer {
		padding-top: 14px !important;
	}

	/* --- kontaktná karta --- */

	/* Logo vľavo, kontakty pod sebou vpravo od neho. Mriežka drží telefón
	   aj e-mail v jednom stĺpci — pri užšom displeji sa celý stĺpec
	   presunie pod logo, nie len jeden riadok. */
	#footer #mediahelp {
		display: grid;
		grid-template-columns: auto minmax(0, 1fr);
		align-items: center;
		gap: 4px 18px;
		padding: 16px !important;
		background: #fff;
		border: 1px solid var(--ai-line);
		border-radius: 14px;
	}

	#footer #mediahelp img {
		grid-column: 1;
		grid-row: 1 / span 2;
		max-width: 140px;
		margin: 0 0 0 8px !important;
	}

	#footer #mediahelp .text-1-phone,
	#footer #mediahelp .text-1-email {
		grid-column: 2;
		display: flex !important;
		align-items: center;
		gap: 10px;
		min-height: 38px;
		margin: 0 !important;
		font-size: 14px !important;
		font-weight: 600 !important;
	}

	/* na najužších displejoch ide všetko pod seba */
	@media screen and (max-width:430px) {

		#footer #mediahelp {
			grid-template-columns: minmax(0, 1fr);
		}

		#footer #mediahelp img {
			grid-column: 1;
			grid-row: auto;
			margin: 0 0 10px 8px !important;
		}

		#footer #mediahelp .text-1-phone,
		#footer #mediahelp .text-1-email {
			grid-column: 1;
		}
	}

	#footer #mediahelp .text-1-email a {
		color: var(--ai-ink) !important;
		text-decoration: none !important;
	}

	/* ikony kontaktov do zelených koliesok */
	#container-footer .icon-type-phone,
	#container-footer .icon-type-email {
		display: flex !important;
		align-items: center;
		justify-content: center;
		flex: 0 0 32px;
		width: 32px !important;
		height: 32px !important;
		margin: 0 !important;
		background: var(--ai-green-soft) !important;
		border-radius: 50%;
	}

	#container-footer .icon-type-phone:before,
	#container-footer .icon-type-email:before {
		font-size: 13px !important;
		color: var(--ai-green-dark) !important;
	}

	#footer #mediahelp .text-margin {
		margin: 0 !important;
	}

	/* --- skupiny odkazov --- */

	#footer #info-articles > div[class*="span-"]:not(#mediahelp) {
		padding-top: 4px;
	}

	#footer .group-title {
		position: relative;
		margin: 0 0 14px 0 !important;
		padding: 0 0 10px 0 !important;
		font-size: 12.5px !important;
		color: var(--ai-green-dark) !important;
	}

	#footer .group-title:after {
		content: "";
		position: absolute;
		left: 0;
		bottom: 0;
		width: 28px;
		height: 2px;
		background: var(--ai-green);
		border-radius: 2px;
	}

	#footer .ul-group {
		gap: 2px 16px;
	}

	#footer .ul-group li a {
		display: block;
		padding: 9px 0 !important;
		font-size: 14.5px !important;
	}

	/* --- spodný pruh --- */

	#footer .footer-bottom-bar {
		margin-top: 4px;
		padding-top: 18px;
		padding-bottom: 4px;
	}

	#footer .footer-bottom-bar p {
		font-size: 12px !important;
	}
}

/* ==========================================================================
   64) MOBILNÁ HLAVIČKA — LOGO A KOŠÍK V JEDNOM RIADKU
   Logo bolo vycentrované a košík až pod vyhľadávaním. Košík je vnorený
   v .ai-header-top, preto na obale používame display: contents — jeho
   deti sa tak stanú položkami hlavného riadka a dajú sa preusporiadať.
   ========================================================================== */

@media screen and (max-width:800px) {

	/* Logo (#top-home > .brand) je mimo #header, preto spoločným
	   riadkom robíme až .span-25 a medzičlánky rušíme cez display:contents. */
	#container-header > .span-25 {
		display: flex !important;
		flex-wrap: wrap;
		align-items: center;
		gap: 10px 12px;
	}

	#container-header #top-home,
	#container-header #header-opacity,
	#container-header #header,
	#container-header .ai-header-top {
		display: contents !important;
	}

	#container-header .brand {
		order: 1;
		flex: 0 0 auto;
		width: auto !important;
		margin: 0 !important;
		text-align: left !important;
	}

	#container-header .brand img {
		max-width: 140px;
		height: auto;
	}

	#container-header #public-cart {
		order: 2;
		flex: 0 1 auto;
		margin: 0 0 0 auto !important;
		min-width: 0;
	}

	#container-header #head-login {
		order: 3;
		flex: 1 1 100%;
		margin: 0 !important;
	}

	#container-header .ai-header-bot {
		order: 4;
		flex: 1 1 100%;
		margin: 0 !important;
	}

	/* --- 64a) Košík ---------------------------------------------------- */

	#container-header #public-cart .info-cart-small {
		display: flex !important;
		align-items: center;
		justify-content: flex-end;
		flex-wrap: nowrap;
		gap: 9px;
		width: auto !important;
		min-width: 0;
		padding: 8px 12px !important;
	}

	#container-header #public-cart .info-cart-small > p {
		display: flex;
		align-items: baseline;
		gap: 5px;
		width: auto !important;
		margin: 0 !important;
		white-space: nowrap;
	}

	#container-header #public-cart .info-cart-small > a {
		white-space: nowrap;
	}

	/* Košík s odkazom „Prejsť do košíka" má ~304 px, logo 140 px a medzera
	   12 px — spolu 456 px. Toľko miesta zostane až od šírky okna cca 520 px
	   (zvyšok zoberie odsadenie a posuvník). Pod touto hranicou by košík
	   odskočil na vlastný riadok, preto odkaz skryjeme — celý box je aj tak
	   preklik do košíka. */
	@media screen and (max-width:520px) {

		#container-header #public-cart .info-cart-small > a {
			display: none !important;
		}
	}
}

/* ==========================================================================
   65) KÓD PRODUKTU A HODNOTENIE NA MOBILE
   Nadpis produktu je na mobile vycentrovaný, riadok pod ním nie —
   dorovnávame ho.
   ========================================================================== */

@media screen and (max-width:800px) {

	#detail #container-detail-code-and-evaluation {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: center;
		gap: 4px 14px;
		width: 100% !important;
		text-align: center !important;
	}

	#detail #container-detail-code-and-evaluation #detail-code-product {
		float: none !important;
		width: auto !important;
		margin: 0 !important;
	}

	#detail #container-detail-code-and-evaluation .evalution {
		float: none !important;
		width: auto !important;
		margin: 0 !important;
		justify-content: center;
	}
}
