

/* Start:/local/templates/ultra/components/dresscode/catalog/.default/style.min.css?1793172336146*/
#middleSlider{margin-bottom:24px}.panel-click.selected{pointer-events:none}.items.productList{margin-bottom:24px}.removeFromWishlist{display:none}
/* End */


/* Start:/local/templates/ultra/components/dresscode/catalog.item/ultra/style.css?179319039616776*/
/* ULTRA.KG, шаблон ultra: карточка товара (catalog.item «ultra»).
   Две колонки: фото (закреплено при прокрутке, миниатюры под ним) · название, конфигурация, блок покупки,
   «Коротко о товаре»; ниже — характеристики, описание, похожие. До 900px — одна колонка,
   панель «цена + В корзину» внизу экрана. Цвета и шрифты — токены шаблона (--ul-*, css/ultra.css). */

.nc-wrap {
	--nc-sticky-top: 96px;
	--nc-green: var(--ul-ok-fg);
	--nc-green-50: var(--ul-ok-bg);
	--nc-amber: var(--ul-warn-fg);
	--nc-amber-50: var(--ul-warn-bg);
	margin: 0 auto;
	padding: 4px 24px 40px;
	color: var(--ul-text);
	font: 400 15px/1.5 var(--ul-body);
}
.nc-wrap *, .nc-wrap *::before, .nc-wrap *::after { box-sizing: border-box; }
.nc-wrap h1, .nc-wrap h2, .nc-wrap h3, .nc-wrap p, .nc-wrap ul, .nc-wrap dl, .nc-wrap dd { margin: 0; padding: 0; }
.nc-wrap ul { list-style: none; }
.nc-wrap button { font: inherit; color: inherit; }
.nc-wrap a { text-decoration: none; }

.nc-stage {
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
	grid-template-areas:
		"gallery title"
		"gallery config"
		"gallery buy"
		"gallery facts";
	grid-template-rows: auto auto auto 1fr;
	gap: 14px 28px;
	align-items: start;
}
.nc-g-gallery { grid-area: gallery; position: sticky; top: var(--nc-sticky-top); }
.nc-g-title { grid-area: title; }
.nc-g-config { grid-area: config; }
.nc-g-buy { grid-area: buy; }
.nc-g-facts { grid-area: facts; }

/* ---------- Галерея ---------- */
.nc-gallery { padding: 18px; border-radius: 24px; background: var(--ul-photo); }
.nc-shot { position: relative; }
.nc-track {
	display: flex;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
	border-radius: 16px;
}
.nc-track::-webkit-scrollbar { display: none; }
/* Фото целиком: в grid-ячейке height:100% у картинки не срабатывал (высота бралась из пропорций — квадратное фото
   выходило выше слайда и низ обрезался), во flex-контейнере с заданной высотой — срабатывает */
.nc-slide { display: flex; align-items: center; justify-content: center; flex: 0 0 100%; height: clamp(300px, 38vw, 520px); padding: 10px; scroll-snap-align: start; cursor: zoom-in; }
.nc-slide img { width: 100%; height: 100%; min-width: 0; min-height: 0; object-fit: contain; }
.nc-counter {
	position: absolute;
	right: 10px;
	bottom: 10px;
	padding: 4px 10px;
	border-radius: 999px;
	background: rgba(43,47,54,.72);
	color: #fff;
	font: 600 12px/1.3 var(--ul-body);
	pointer-events: none;
}
.nc-dots { display: none; }
.nc-thumbs { display: flex; gap: 8px; margin-top: 14px !important; overflow-x: auto; scrollbar-width: none; }
.nc-thumbs::-webkit-scrollbar { display: none; }
.nc-thumb {
	display: grid;
	place-items: center;
	width: 68px;
	height: 68px;
	padding: 6px;
	border: 2px solid var(--ul-g-100);
	border-radius: 14px;
	background: var(--ul-photo);
	cursor: pointer;
	transition: border-color .15s;
}
.nc-thumb img { max-width: 100%; max-height: 100%; object-fit: contain; }
.nc-thumb:hover { border-color: var(--ul-g-300); }
.nc-thumb[aria-current="true"] { border-color: var(--ul-red); }

/* ---------- Название ---------- */
.nc-kicker { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 10px; margin-bottom: 10px; }
.nc-wrap .nc-brand {
	padding: 5px 12px;
	border-radius: 999px;
	background: var(--ul-card);
	color: var(--ul-text);
	font: 800 13px/1.2 var(--ul-body);
	letter-spacing: .02em;
	text-transform: uppercase;
}
.nc-wrap a.nc-brand:hover { color: var(--ul-red); }
.nc-stock {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 5px 12px;
	border-radius: 999px;
	background: var(--nc-green-50);
	color: var(--nc-green);
	font: 600 13px/1.2 var(--ul-body);
}
.nc-stock::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: currentColor; }
.nc-stock--order { background: var(--nc-amber-50); color: var(--nc-amber); }
.nc-stock--out { background: var(--ul-g-100); color: var(--ul-muted); }
.nc-article { color: var(--ul-muted); font-size: 13px; }
.nc-wrap .nc-title { color: var(--ul-text); font: italic 800 clamp(20px, 1.9vw, 27px)/1.25 var(--ul-display); text-transform: none; overflow-wrap: anywhere; }
.nc-meta { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 14px; }
.nc-wrap .nc-act {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	height: 36px;
	padding: 0 14px;
	border-radius: 999px;
	background: var(--ul-card);
	color: var(--ul-g-700);
	font: 600 13px/1 var(--ul-body);
	transition: background .15s, color .15s;
}
.nc-act__icon { width: 18px; height: 18px; flex: 0 0 auto; }
.nc-wrap .nc-act:hover, .nc-wrap .nc-act.added { background: var(--ul-red-50); color: var(--ul-red); }
.nc-act.added .nc-act__icon { fill: currentColor; }
.nc-act.loading { opacity: .6; }
.nc-act__on, .nc-act.added .nc-act__off { display: none; }
.nc-act.added .nc-act__on { display: inline; }

/* ---------- Блоки справа ---------- */
.nc-g-config, .nc-buy, .nc-g-facts { padding: 20px 22px; border-radius: 24px; background: var(--ul-card); }
.nc-wrap .nc-h { margin-bottom: 12px; color: var(--ul-text); font: italic 800 18px/1.25 var(--ul-display); text-transform: none; }

/* Конфигурация */
.nc-opt-group + .nc-opt-group { margin-top: 14px; }
.nc-opt-label { margin-bottom: 8px; color: var(--ul-muted); font-size: 13px; }
.nc-opt-label b { color: var(--ul-text); }
.nc-opts { display: flex; flex-wrap: wrap; gap: 8px; }
.nc-opt {
	display: grid;
	gap: 2px;
	min-width: 96px;
	padding: 9px 14px;
	border: 2px solid var(--ul-g-200);
	border-radius: 14px;
	background: var(--ul-card);
	text-align: left;
	cursor: pointer;
	transition: border-color .15s, background .15s;
}
.nc-opt:hover { border-color: var(--ul-g-300); }
.nc-opt__value { color: var(--ul-text); font: 700 14px/1.2 var(--ul-body); }
.nc-opt__price { min-height: 15px; color: var(--ul-muted); font: 500 12px/1.25 var(--ul-body); white-space: nowrap; }
.nc-opt[aria-checked="true"] { border-color: var(--ul-red); background: var(--ul-red-50); }
.nc-opt[aria-checked="true"] .nc-opt__value { color: var(--ul-red); }
.nc-opt.is-other { border-style: dashed; }

/* Покупка */
.nc-price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 12px; }
.nc-price__value { color: var(--ul-text); font: 800 34px/1.1 var(--ul-body); white-space: nowrap; font-variant-numeric: tabular-nums; }
.nc-price__value--none { font-size: 24px; }
.nc-price__old { color: var(--ul-muted); font-size: 15px; }
.nc-price__old b { margin-left: 4px; padding: 2px 8px; border-radius: 999px; background: var(--ul-red); color: #fff; font: 700 13px/1.4 var(--ul-body); }
.nc-price-note { margin-top: 6px; color: var(--ul-muted); font-size: 13px; }
.nc-buy__actions { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: 8px; margin-top: 16px; }
.nc-wrap .nc-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: 100%;
	height: 52px;
	padding: 0 16px;
	border: 0;
	border-radius: 999px;
	font: 700 15px/1 var(--ul-body);
	text-align: center;
	text-transform: none;
	white-space: nowrap;
	cursor: pointer;
	transition: background-color .15s, color .15s, opacity .15s;
}
.nc-wrap .nc-btn img { display: none; }
.nc-btn__icon { width: 18px; height: 18px; flex: 0 0 auto; }
.nc-wrap .nc-btn--primary { background: var(--ul-red); color: #fff; }
/* Значок корзины — как на кнопках каталога */
.nc-wrap .nc-btn--primary::before {
	content: "";
	flex: 0 0 auto;
	width: 20px;
	height: 20px;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.9%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M2.5 3.5h2.6l2.4 11.2a1.5 1.5 0 0 0 1.5 1.2h8.6a1.5 1.5 0 0 0 1.5-1.1l1.9-7.3H6.1%22/%3E%3Ccircle cx=%229.5%22 cy=%2220%22 r=%221.4%22/%3E%3Ccircle cx=%2217.5%22 cy=%2220%22 r=%221.4%22/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%221.9%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M2.5 3.5h2.6l2.4 11.2a1.5 1.5 0 0 0 1.5 1.2h8.6a1.5 1.5 0 0 0 1.5-1.1l1.9-7.3H6.1%22/%3E%3Ccircle cx=%229.5%22 cy=%2220%22 r=%221.4%22/%3E%3Ccircle cx=%2217.5%22 cy=%2220%22 r=%221.4%22/%3E%3C/svg%3E") center / contain no-repeat;
}
.nc-wrap .nc-btn--primary.requestPrice::before, .nc-wrap .nc-btn--primary.subscribe::before, .nc-wrap .nc-btn--primary.disabled::before { content: none; }
.nc-wrap .nc-btn--primary:hover { background: var(--ul-red-600); color: #fff; }
.nc-wrap .nc-btn--primary.added { background: var(--ul-ink); color: #fff; }
.nc-wrap .nc-btn--primary.loading { opacity: .7; }
.nc-wrap .nc-btn--primary.disabled:not(.requestPrice) { background: var(--ul-g-100); color: var(--ul-muted); cursor: default; }
.nc-wrap .nc-btn--soft { background: var(--ul-g-100); color: var(--ul-g-700); }
.nc-wrap .nc-btn--soft:hover { background: var(--ul-red-50); color: var(--ul-red); }
.nc-wrap .nc-btn--soft.disabled { opacity: .5; cursor: default; }
.nc-help { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 16px; padding-top: 14px; border-top: 1px solid var(--ul-g-100); }
.nc-help__text { margin-right: auto; color: var(--ul-muted); font-size: 13px; }
.nc-wrap .nc-help__link {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	height: 36px;
	padding: 0 14px;
	border-radius: 999px;
	background: var(--ul-g-50);
	color: var(--ul-text);
	font: 700 14px/1 var(--ul-body);
	white-space: nowrap;
	transition: background .15s, color .15s;
}
.nc-wrap .nc-help__link .ul-icon { width: 18px; height: 18px; }
.nc-wrap .nc-help__link--icon { justify-content: center; width: 36px; padding: 0; }
.nc-wrap .nc-help__link:hover { background: var(--ul-red-50); color: var(--ul-red); }

/* Преимущества магазина под блоком покупки — те же, что на главной (ultraPerks) */
.nc-perks { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin-top: 10px !important; }
.nc-perks a {
	display: flex;
	align-items: center;
	gap: 10px;
	height: 100%;
	padding: 10px 12px;
	border-radius: 16px;
	background: var(--ul-card);
	color: var(--ul-text);
	transition: box-shadow .15s;
}
.nc-perks a:hover { box-shadow: 0 8px 20px rgba(43,47,54,.08); }
.nc-perks__icon { display: grid; place-items: center; flex: 0 0 auto; width: 36px; height: 36px; border-radius: 12px; background: var(--ul-red-50); color: var(--ul-red); }
.nc-perks__icon .ul-icon { width: 20px; height: 20px; }
.nc-perks b { display: block; font: 700 13px/1.3 var(--ul-body); }
.nc-perks small { display: block; margin-top: 2px; color: var(--ul-muted); font-size: 12px; line-height: 1.3; }

/* «Коротко о товаре» — плитки */
.nc-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.nc-fact { min-width: 0; padding: 10px 12px; border-radius: 14px; background: var(--ul-g-50); }
.nc-fact dt { display: -webkit-box; overflow: hidden; color: var(--ul-muted); font-size: 12px; line-height: 1.3; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.nc-fact dd { margin-top: 3px; color: var(--ul-text); font: 700 14px/1.3 var(--ul-body); overflow-wrap: anywhere; }
.nc-wrap .nc-link { display: inline-block; margin-top: 12px; color: var(--ul-red); font: 700 14px/1.3 var(--ul-body); }
.nc-wrap .nc-link:hover { text-decoration: underline; }
.nc-wrap [data-nc-config].is-changed { animation: ncFlash 1.2s ease; }
@keyframes ncFlash { from { background: var(--ul-red-50); } to { background: transparent; } }

/* ---------- Ниже: разделы ---------- */
.nc-anchors { display: flex; flex-wrap: wrap; gap: 6px; margin: 22px 0 12px; }
.nc-wrap .nc-anchors a { padding: 9px 16px; border-radius: 999px; background: var(--ul-card); color: var(--ul-g-700); font: 700 14px/1 var(--ul-body); transition: background .15s, color .15s; }
.nc-wrap .nc-anchors a:hover { background: var(--ul-red-50); color: var(--ul-red); }
.nc-block { margin-top: 12px; padding: 26px 28px; border-radius: 24px; background: var(--ul-card); scroll-margin-top: var(--nc-sticky-top); }
.nc-wrap .nc-block__h { margin-bottom: 16px; color: var(--ul-text); font: italic 800 24px/1.2 var(--ul-display); text-transform: none; }
.nc-block__lead { margin: -8px 0 16px !important; color: var(--ul-muted); font-size: 14px; }
.nc-text { max-width: 900px; font-size: 15px; line-height: 1.65; overflow-wrap: anywhere; }
.nc-text img { max-width: 100%; height: auto; }
.nc-text p + p { margin-top: 10px; }
/* Похожие товары — карточки каталога прямо на сером фоне */
.nc-block.nc-similar { padding: 0; background: none; }
.nc-similar .nc-block__h { margin-top: 10px; }

/* ---------- Фото крупно ---------- */
.nc-zoom { position: fixed; inset: 0; z-index: 3000; display: grid; place-items: center; padding: 56px 72px; background: rgba(20,22,26,.92); }
.nc-zoom[hidden] { display: none; }
.nc-zoom__img { max-width: 100%; max-height: 100%; object-fit: contain; border-radius: 12px; background: var(--ul-photo); }
.nc-zoom__close, .nc-zoom__nav {
	position: absolute;
	display: grid;
	place-items: center;
	width: 48px;
	height: 48px;
	border: 0;
	border-radius: 50%;
	background: var(--ul-card);
	color: var(--ul-text);
	cursor: pointer;
}
.nc-zoom__close { top: 16px; right: 16px; }
.nc-zoom__nav { top: 50%; margin-top: -24px; }
.nc-zoom__nav--prev { left: 16px; }
.nc-zoom__nav--next { right: 16px; }
.nc-zoom__nav--prev .ul-icon { transform: rotate(90deg); }
.nc-zoom__nav--next .ul-icon { transform: rotate(-90deg); }
.nc-zoom__close:hover, .nc-zoom__nav:hover { color: var(--ul-red); }
html.nc-zoom-open, html.nc-zoom-open body { overflow: hidden; }

/* Панель «цена + В корзину» — только на телефоне, над нижним меню (parts/tabbar.php) */
.nc-buybar { display: none; }

@media (max-width: 1100px) {
	.nc-stage { gap: 12px 20px; }
	.nc-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.nc-buy__actions { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 900px) {
	.nc-stage { grid-template-columns: minmax(0, 1fr); grid-template-areas: "gallery" "title" "config" "buy" "facts"; grid-template-rows: none; }
	.nc-g-gallery { position: static; }
	.nc-gallery { padding: 10px; border-radius: 20px; }
	.nc-slide { height: min(86vw, 420px); }
	.nc-thumbs { display: none; }
	.nc-dots { position: absolute; left: 0; right: 0; bottom: 8px; display: flex; justify-content: center; gap: 6px; pointer-events: none; }
	.nc-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--ul-g-300); transition: background .15s, width .15s; }
	.nc-dot.is-on { width: 18px; border-radius: 4px; background: var(--ul-red); }
	.nc-counter { display: none; }
	.nc-g-config, .nc-buy, .nc-g-facts { padding: 16px; border-radius: 20px; }
	.nc-price__value { font-size: 28px; }
	.nc-block { padding: 18px 16px; border-radius: 20px; }
	.nc-wrap .nc-block__h { font-size: 20px; }
	.nc-buybar {
		position: fixed;
		left: 0;
		right: 0;
		bottom: var(--ul-tabbar-h, 0px);
		z-index: 990;
		display: flex;
		align-items: center;
		gap: 12px;
		padding: 10px 14px;
		background: var(--ul-card);
		box-shadow: 0 -8px 24px rgba(43,47,54,.12);
	}
	.nc-buybar__price { display: grid; min-width: 0; }
	.nc-buybar__price b { color: var(--ul-text); font: 800 19px/1.15 var(--ul-body); white-space: nowrap; font-variant-numeric: tabular-nums; }
	.nc-buybar__price span { overflow: hidden; color: var(--ul-muted); font-size: 12px; white-space: nowrap; text-overflow: ellipsis; }
	.nc-wrap .nc-buybar .nc-btn { flex: 0 0 auto; width: auto; min-width: 150px; height: 48px; margin-left: auto; }
	body.ultra.nc-page { padding-bottom: calc(72px + var(--ul-tabbar-h, 0px)); }
}

@media (max-width: 700px) {
	.nc-wrap { padding-left: 12px; padding-right: 12px; }
}

@media (max-width: 560px) {
	.nc-perks { grid-template-columns: minmax(0, 1fr); }
	.nc-help__text { flex-basis: 100%; }
	.nc-zoom { padding: 56px 8px; }
	.nc-zoom__nav { display: none; }
}

@media (prefers-reduced-motion: reduce) {
	.nc-wrap *, .nc-zoom * { transition: none !important; animation: none !important; }
}

/* End */
/* /local/templates/ultra/components/dresscode/catalog/.default/style.min.css?1793172336146 */
/* /local/templates/ultra/components/dresscode/catalog.item/ultra/style.css?179319039616776 */
