/*
 * OAP Catalogue Redesign — Iteration 2, Sharp Clean Design
 * Единый CSS-файл каталога.
 * Подключается ПОСЛЕДНИМ в desktop.php (после oap-buttons-modern.css).
 * Содержит: все 3 вида каталога, сайдбар фильтров, панель сортировки,
 * теги фильтров, кнопки корзины, закладки.
 * НЕ содержит: стили корзины, страницы товара, подтверждения заказа.
 *
 * Дизайн: Sharp Clean — квадратные углы (r4), приглушённые стикеры,
 * белый фон картинок, индустриальная кнопка, hover-подъём.
 */


/* ============================================================
   CSS CUSTOM PROPERTIES
   ============================================================ */
:root {
	--oap-surface: #ffffff;
	--oap-text-1: #1a1a1a;
	--oap-text-2: #6b6b6b;
	--oap-text-3: #9e9e9e;
	--oap-accent: #1b6bb1;
	--oap-accent-dk: #155a96;
	--oap-red: #d44;
	--oap-green: #27ae60;
	--oap-border: #868686;
	--oap-r: 4px;
	--oap-sticker-super: #b85c5c;
	--oap-sticker-sale: #5a8bb8;
	--oap-sticker-new: #1edb71;
	--oap-sticker-hit: #FFA500;
}


/* ============================================================
   БЛОКИ КАТЕГОРИЙ
   ============================================================ */
.cat_blocks { margin: 0; padding-left: 0; }
.cat_blocks > li { display: inline-block; height: 150px; width: 145px; overflow: hidden; text-align: center; vertical-align: top; margin-right: 10px; margin-bottom: 10px; border: 1px solid #ddd; padding: 5px; }
.block_caption { text-align: center; display: block; line-height: 15px; }
.block_image > img { max-width: 96px; }


/* ============================================================
   МЕТКИ О НАЛИЧИИ (общие для всех видов)
   ============================================================ */
.product_div_exist_info { font-size: 12px; }
.product_div_exist_info > .green { color: var(--oap-green); }
.product_div_exist_info > .orange { color: #e0ae36; }
.product_div_exist_info > .blue { color: #3f43ec; }
.product_div_exist_info > .red { color: #ec3f3f; }


/* ============================================================
   ЗАЧЁРКНУТАЯ ЦЕНА (общая)
   ============================================================ */
.product_div_price_crossed_out:before { position: absolute; content: ""; left: 0; top: 50%; right: 0; border-top: 1px solid #000; -webkit-transform: rotate(-5deg); transform: rotate(-5deg); }


/* ============================================================
   СТИКЕРЫ — приглушённые цвета, перекрывают inline style из PHP
   ============================================================ */
.sticker > A:hover, .sticker > A:active { text-decoration: none !important; }
.sticker {
	text-align: center;
	font-size: 11px;
	font-weight: 600;
	line-height: 1.5;
	padding: 3px 14px;
	color: #fff !important;
}
.sticker a { color: #fff !important; border-bottom: none !important; }

/*
 * Стикеры по class_css из БД (shop_products_stickers.class_css).
 * Переопределяем inline background-color через !important.
 * super_price = «Супер цена», hit_product = «Хит», new_product = «Новинка»
 */
.sticker.super_price { background-color: var(--oap-sticker-super) !important; }
.sticker.wholesale_discount { background-color: var(--oap-sticker-sale) !important; }
.sticker.new_product { background-color: var(--oap-sticker-new) !important; }
.sticker.hit_product { background-color: var(--oap-sticker-hit) !important; }


/* ============================================================
   ЗАКЛАДКИ И СРАВНЕНИЕ (общие) — Sharp Clean: тонкие, серый ярче
   ============================================================ */
.product_div_actions { position: absolute; bottom: 0; display: flex; gap: 10px; }
.product_div_bookmark, .product_div_compare { display: flex; align-items: center; font-size: 11px; }
.product_div_bookmark i, .product_div_compare i { font-size: 18px; }
.product_div_bookmark span, .product_div_compare span { margin-left: 5px; }
.product_div_bookmark:hover a, .product_div_compare:hover a { color: #AAA; }


/* ============================================================
   ОЦЕНКИ ПОЛЬЗОВАТЕЛЕЙ (общие)
   ============================================================ */
.product_div_marks { position: absolute; font-size: 11px; }
.product_div_marks > .product_div_marks_count { border-bottom: 1px dotted #CCC; }


/* ============================================================
   БЛОК "ПОКАЗАТЬ ЕЩЁ"
   ============================================================ */
.showAnother_wrap { width: 200px; height: 100px; padding-top: 7px; position: absolute; top: 50%; left: 50%; margin-left: -100px; margin-top: -50px; }
.showAnother_div { font-size: 24px; color: #000; }
.plus_another { border: 1px solid #DDD; width: 30px; height: 30px; line-height: 30px; border-radius: 50%; font-size: 20px; margin: 0 87px; }
.shownCount_div { color: #bba8b0; font-size: 12px; text-align: center; }
.showAnother_tile:hover .showAnother_div, .showAnother_list:hover .showAnother_div { color: var(--oap-accent); }
.showAnother_tile:hover .plus_another, .showAnother_list:hover .plus_another { border: 1px solid #BBB; }
.showAnother_tile:hover, .showAnother_list:hover { cursor: pointer; box-shadow: 0 4px 16px rgba(0,0,0,0.1); }
.showAnother_tile { height: 400px; background-color: #FFF; border: none; padding: 10px; text-align: center; position: relative; box-shadow: 0 1px 4px rgba(0,0,0,0.06); border-radius: var(--oap-r); }
.showAnother_list { height: 100px; background-color: #FFF; border: none; padding: 10px; text-align: center; position: relative; border-bottom: 1px solid #f0efed; }


/* ============================================================
   КОНТЕЙНЕР ТОВАРОВ — flex вместо float
   Решает проблему карточек разной высоты и правильный перенос рядов.
   JS совместим: innerHTML и append() работают с flex.
   Bootstrap col-* padding даёт отступы между карточками.
   ============================================================ */
#products_area {
	display: flex !important;
	flex-wrap: wrap;
}
/* Bootstrap .row ::before/::after (display:table) — clearfix для float.
   В flex-контейнере они становятся flex-items и ломают раскладку. Убираем. */
#products_area::before,
#products_area::after {
	display: none !important;
}


/* ============================================================
   HOVER НА БЛОКАХ — Sharp Clean: подъём + тень
   ============================================================ */
.product_div_tile:hover {
	position: relative; z-index: 1000;
	transform: translateY(-4px);
	box-shadow: 0 8px 28px rgba(0,0,0,0.1);
	background: #fff;
}
.product_div_list_confirm:hover { position: relative; z-index: 1000; box-shadow: 0 0 3px 3px rgba(0,0,0,0.1); }


/* ============================================================
   VIEW 1 — ПЛИТКА (.product_div_tile) — Sharp Clean
   ============================================================ */
.product_div_tile-fixed_width { width: 220px; }
.product_div_tile {
	display: flex; flex-direction: column;
	min-height: 380px;
	background: var(--oap-surface);
	border-radius: var(--oap-r);
	border: none;
	padding: 0;
	text-align: center;
	position: relative;
	box-shadow: 0 1px 4px rgba(0,0,0,0.06);
	transition: box-shadow 0.25s, transform 0.25s cubic-bezier(0.22, 1, 0.36, 1);
	margin-bottom: 12px;
	overflow: hidden;
}

/* Картинка — белый фон */
.product_div_tile > .product_div_image_wrap {
	height: 210px; display: flex; align-items: center; justify-content: center;
	flex-shrink: 0; background: #fff;
}
.product_div_tile > .product_div_image_wrap > a > img { max-width: 170px !important; max-height: 170px !important; }

/* Название */
.product_div_tile > .product_div_name {
	text-align: left; padding: 8px 14px 0; line-height: 1.4; font-size: 13px;
	max-height: none; overflow: hidden; white-space: normal; word-break: break-word;
	flex-shrink: 0;
	display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;
}
.product_div_tile > .product_div_name a { color: var(--oap-text-1); text-decoration: none; font-weight: 500; }
.product_div_tile > .product_div_name a:hover { color: var(--oap-accent); text-decoration: underline; }

/* Цена — крупная, жирная */
.product_div_tile > .product_div_price { text-align: left; padding: 8px 14px 0; flex-shrink: 0; }
.product_div_tile > .product_div_price > .price { color: var(--oap-text-1); font-size: 22px; font-weight: 700; line-height: 1; letter-spacing: -0.3px; }
.product_div_tile > .product_div_price > .currency { color: var(--oap-text-2); font-size: 15px; font-weight: 500; }

/* Цена от-до */
.product_div_tile > .product_div_price_from_to { text-align: left; padding: 8px 14px 0; line-height: 1.2; flex-shrink: 0; }
.product_div_tile > .product_div_price_from_to > .price { color: var(--oap-text-1); font-size: 20px; font-weight: 700; }
.product_div_tile > .product_div_price_from_to > .currency { color: var(--oap-text-2); font-size: 15px; }

/* Зачёркнутая цена */
.product_div_tile > .product_div_price_crossed_out { text-align: left; padding: 2px 14px 0; font-weight: bold; color: var(--oap-text-3); font-size: 13px; position: relative; flex-shrink: 0; }

/* Скидка */
.product_div_tile > .product_div_discount { text-align: left; padding: 2px 14px 0; flex-shrink: 0; font-size: 11px; color: var(--oap-accent); white-space: nowrap; line-height: 1.4; }

/* Наличие — отдельная строка */
.product_div_tile > .product_div_exist_info { margin-top: auto; text-align: left; padding: 4px 14px 0; font-size: 12px; flex-shrink: 0; }

.product_div_tile > .product_checkbox_div { display: none; }

/* Стикеры — стопка слева сверху, квадратные */
.product_div_tile > .stickers { position: absolute; top: 0; left: 0; display: flex; flex-direction: column; z-index: 2; }
.product_div_tile > .stickers > .sticker {
	margin-top: 0; padding: 3px 14px;
	font-weight: 600; font-size: 11px;
	border-radius: 0; text-align: center;
	line-height: 1.5;
}

/* Закладка-сердечко — Sharp Clean: тонкая иконка, ярче серый */
.product_div_tile > .product_div_actions {
	position: absolute; top: 8px; right: 8px; bottom: auto; left: auto;
	z-index: 5; padding: 0; gap: 0;
}
.product_div_tile .product_div_bookmark span { display: none !important; }
.product_div_tile .product_div_bookmark a {
	display: flex; align-items: center; justify-content: center;
	width: 30px; height: 30px;
	background: rgba(255,255,255,0.92); border-radius: var(--oap-r);
	color: #aaa; font-size: 16px; text-decoration: none;
	transition: all 0.2s;
}
.product_div_tile .product_div_bookmark a:hover { background: #fff; color: var(--oap-red); }
.product_div_tile .product_div_bookmark .fa-bookmark-o::before { content: "\f08a"; }
.product_div_tile .product_div_bookmark .fa-bookmark::before { content: "\f004"; }
.product_div_tile .product_div_bookmark .fa-bookmark { color: var(--oap-red); text-shadow: 0 0 1px rgba(0,0,0,0.3); }

/* Кнопка корзины — индустриальный стиль */
.product_div_tile > .main_action_div { padding: 8px 14px 12px; flex-shrink: 0; display: flex; justify-content: center; }
.product_div_tile .cart_btn_purchase_action { padding: 0 !important; margin: 0; }

.product_div_tile > .product_div_marks { display: none; }


/* ============================================================
   VIEW 2 — СПИСОК С ФОТО (.product_div_list_photo)
   ⚠️ Этот класс используется также для корзины (стили в solid_cart_table.css)
   ============================================================ */

/* --- Desktop (min-width: 700px) --- */
@media screen and (min-width: 700px) {
	.product_div_list_photo {
		display: flex; align-items: stretch;
		min-height: 120px; background: var(--oap-surface);
		border-bottom: 1px solid #f0efed;
		padding: 10px 14px; gap: 14px;
		position: relative; transition: background 0.15s;
		box-sizing: border-box;
	}
	.product_div_list_photo:hover { background: #fafafa; }

	/* Картинка */
	.product_div_list_photo > .product_div_image_wrap {
		flex-shrink: 0; width: 100px;
		display: flex; align-items: center; justify-content: center;
		background: #fff;
	}
	.product_div_list_photo > .product_div_image_wrap > a > img,
	.product_div_list_photo > .product_div_image_wrap > img { max-height: 90px !important; max-width: 90px; object-fit: contain; }

	/* Название */
	.product_div_list_photo > .product_div_name {
		order: 1; flex: 1 1 0; min-width: 0;
		text-align: left; font-size: 13px; font-weight: 500;
		line-height: 1.4; color: var(--oap-text-1);
		white-space: normal; word-break: break-word;
		align-self: flex-start; padding-top: 2px;
	}
	.product_div_list_photo > .product_div_name a { color: var(--oap-text-1); text-decoration: none; }
	.product_div_list_photo > .product_div_name a:hover { color: var(--oap-accent); text-decoration: underline; }

	/* Описание — до 3 строк */
	.product_div_list_photo > .product_div_description {
		order: 2; flex: 1 1 0; min-width: 0;
		text-align: left; font-size: 11px; line-height: 1.4;
		color: #757575; overflow: hidden;
		display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical;
		align-self: flex-start; padding-top: 0;
		white-space: normal; word-break: break-word;
	}
	.product_div_list_photo > .product_div_description:before,
	.product_div_list_photo > .product_div_description:after { content: none; display: none; }
	.product_div_list_photo > .product_div_description *:first-child { float: none; width: auto; margin-left: 0; }
	.product_div_list_photo > .product_div_description > * { line-height: 1.3; font-size: 12px; color: #757575; }

	/* Стикеры — inline */
	.product_div_list_photo > .stickers {
		order: 3; display: flex; align-items: center;
		gap: 4px; flex-shrink: 0; align-self: center;
	}
	.product_div_list_photo > .stickers > .sticker {
		padding: 2px 8px; border-radius: 2px;
		font-size: 10px; white-space: nowrap;
		line-height: 1.5; font-weight: 600;
	}
	.product_div_list_photo > .stickers > .sticker a { text-decoration: none; }

	/* Скидка */
	.product_div_list_photo > .product_div_discount {
		order: 3; flex-shrink: 0; align-self: center;
		font-size: 11px; color: var(--oap-accent); white-space: nowrap;
		padding: 2px 8px; background: #e3f2fd; border-radius: 2px;
	}

	/* Наличие */
	.product_div_list_photo > .product_div_exist_info { order: 4; flex-shrink: 0; align-self: center; font-size: 12px; white-space: nowrap; min-width: 75px; text-align: center; }

	/* Зачёркнутая цена */
	.product_div_list_photo > .product_div_price_crossed_out { order: 5; flex-shrink: 0; align-self: center; text-align: right; white-space: nowrap; font-size: 12px; color: var(--oap-text-3); position: relative; }

	/* Цена */
	.product_div_list_photo > .product_div_price { order: 6; flex-shrink: 0; align-self: center; text-align: right; white-space: nowrap; min-width: 80px; }
	.product_div_list_photo > .product_div_price > .price { color: var(--oap-text-1); font-size: 17px; font-weight: 700; line-height: 1; }
	.product_div_list_photo > .product_div_price > .currency { color: var(--oap-text-2); font-size: 13px; font-weight: 500; }

	/* Цена от-до */
	.product_div_list_photo > .product_div_price_from_to { order: 6; flex-shrink: 0; align-self: center; text-align: right; white-space: nowrap; min-width: 80px; line-height: 1; }
	.product_div_list_photo > .product_div_price_from_to > .price { color: var(--oap-text-1); font-size: 17px; font-weight: 700; }
	.product_div_list_photo > .product_div_price_from_to > .currency { color: var(--oap-text-2); font-size: 13px; font-weight: 500; }

	/* Кнопка корзины */
	.product_div_list_photo > .main_action_div { order: 7; flex-shrink: 0; align-self: center; }
	.product_div_list_photo .cart_btn_purchase_action { padding: 0 !important; margin: 0; }

	/* Закладка */
	.product_div_list_photo > .product_div_actions { position: absolute; top: 8px; left: 8px; bottom: auto; right: auto; z-index: 5; padding: 0; gap: 0; }
	.product_div_list_photo .product_div_bookmark span { display: none !important; }
	.product_div_list_photo .product_div_bookmark a {
		display: flex; align-items: center; justify-content: center;
		width: 28px; height: 28px;
		background: rgba(255,255,255,0.92); border-radius: var(--oap-r);
		color: #aaa; font-size: 15px; text-decoration: none;
		transition: all 0.2s;
	}
	.product_div_list_photo .product_div_bookmark a:hover { background: #fff; color: var(--oap-red); }
	.product_div_list_photo .product_div_bookmark .fa-bookmark-o::before { content: "\f08a"; }
	.product_div_list_photo .product_div_bookmark .fa-bookmark::before { content: "\f004"; }
	.product_div_list_photo .product_div_bookmark .fa-bookmark { color: var(--oap-red); text-shadow: 0 0 1px rgba(0,0,0,0.3); }

	.product_div_list_photo > .product_div_marks { display: none; }
	.product_div_list_photo > .product_checkbox_div { display: none; }
}

/* --- Mobile (max-width: 699px) --- */
@media screen and (max-width: 699px) {
	.product_div_list_photo {
		display: flex; flex-wrap: wrap; align-items: flex-start;
		gap: 6px 10px; min-height: 80px; padding: 10px;
		background: var(--oap-surface); border-bottom: 1px solid #f0efed;
		position: relative; box-sizing: border-box;
	}

	.product_div_list_photo > .product_div_image_wrap { flex-shrink: 0; width: 80px; display: flex; align-items: center; justify-content: center; }
	.product_div_list_photo > .product_div_image_wrap > a > img,
	.product_div_list_photo > .product_div_image_wrap > img { max-height: 70px !important; max-width: 70px; }

	.product_div_list_photo > .product_div_name { order: 1; flex: 1 1 0; min-width: 0; font-size: 13px; font-weight: 500; line-height: 1.4; color: var(--oap-text-1); text-align: left; white-space: normal; word-break: break-word; }
	.product_div_list_photo > .product_div_name a { color: var(--oap-text-1); text-decoration: none; }

	.product_div_list_photo > .product_div_description {
		order: 2; flex: 1 1 100%; font-size: 11px; line-height: 1.4;
		color: #757575; text-align: left; overflow: hidden;
		display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical;
		white-space: normal;
	}
	.product_div_list_photo > .product_div_description:before,
	.product_div_list_photo > .product_div_description:after { content: none; display: none; }
	.product_div_list_photo > .product_div_description *:first-child { float: none; width: auto; margin-left: 0; }
	.product_div_list_photo > .product_div_description > * { line-height: 1.3; font-size: 11px; color: #757575; }

	.product_div_list_photo > .stickers { order: 3; display: flex; gap: 4px; flex-shrink: 0; align-items: center; }
	.product_div_list_photo > .stickers > .sticker { padding: 1px 6px; border-radius: 2px; font-size: 10px; white-space: nowrap; line-height: 1.5; font-weight: 600; }
	.product_div_list_photo > .stickers > .sticker a { text-decoration: none; }

	.product_div_list_photo > .product_div_discount { order: 3; flex-shrink: 0; font-size: 10px; color: var(--oap-accent); white-space: nowrap; padding: 1px 6px; background: #e3f2fd; border-radius: 2px; }

	.product_div_list_photo > .product_div_exist_info { order: 4; flex-shrink: 0; font-size: 12px; white-space: nowrap; }

	.product_div_list_photo > .product_div_price_crossed_out { order: 5; flex-shrink: 0; font-size: 11px; color: var(--oap-text-3); white-space: nowrap; position: relative; }

	.product_div_list_photo > .product_div_price { order: 6; flex-shrink: 0; white-space: nowrap; }
	.product_div_list_photo > .product_div_price > .price { font-size: 16px; color: var(--oap-text-1); font-weight: 700; }
	.product_div_list_photo > .product_div_price > .currency { font-size: 13px; color: var(--oap-text-2); }

	.product_div_list_photo > .product_div_price_from_to { order: 6; flex-shrink: 0; white-space: nowrap; line-height: 1; }
	.product_div_list_photo > .product_div_price_from_to > .price { font-size: 16px; color: var(--oap-text-1); font-weight: 700; }
	.product_div_list_photo > .product_div_price_from_to > .currency { font-size: 13px; color: var(--oap-text-2); }

	.product_div_list_photo > .main_action_div { order: 7; flex-shrink: 0; margin-left: auto; }

	.product_div_list_photo > .product_div_actions { position: absolute; top: 6px; left: 6px; z-index: 5; padding: 0; gap: 0; }
	.product_div_list_photo .product_div_bookmark span { display: none !important; }
	.product_div_list_photo .product_div_bookmark a {
		display: flex; align-items: center; justify-content: center;
		width: 26px; height: 26px;
		background: rgba(255,255,255,0.92); border-radius: var(--oap-r);
		color: #aaa; font-size: 14px; text-decoration: none;
	}
	.product_div_list_photo .product_div_bookmark .fa-bookmark-o::before { content: "\f08a"; }
	.product_div_list_photo .product_div_bookmark .fa-bookmark::before { content: "\f004"; }
	.product_div_list_photo .product_div_bookmark .fa-bookmark { color: var(--oap-red); text-shadow: 0 0 1px rgba(0,0,0,0.3); }

	.product_div_list_photo > .product_div_marks { display: none; }
	.product_div_list_photo > .product_div_checkbox_div { display: none; }

	/* Скрыть "Розничная" на мобилке (класс product_div_discount) */
	.product_div_list_photo > .product_div_discount { display: none; }
}


/* ============================================================
   VIEW 3 — СПИСОК БЕЗ ФОТО (.product_div_list)
   ============================================================ */

/* --- Desktop (min-width: 700px) --- */
@media screen and (min-width: 700px) {
	.product_div_list {
		display: flex; align-items: center; gap: 10px;
		min-height: 48px; padding: 8px 14px;
		background: var(--oap-surface); border-bottom: 1px solid #f0efed;
		transition: background 0.15s; box-sizing: border-box; overflow: hidden;
	}
	.product_div_list:hover { background: #fafafa; }

	/* Закладка */
	.product_div_list > .product_div_actions { order: 1; flex-shrink: 0; display: flex; align-items: center; position: static; }
	.product_div_list .product_div_bookmark { display: flex; align-items: center; }
	.product_div_list .product_div_bookmark span { display: none; }
	.product_div_list .product_div_bookmark i { font-size: 18px; color: #aaa; transition: color 0.15s; }
	.product_div_list .product_div_bookmark:hover i { color: var(--oap-red); }
	.product_div_list .product_div_bookmark .fa-bookmark { color: var(--oap-red); }

	/* Название */
	.product_div_list > .product_div_name {
		order: 2; flex: 1 1 0; min-width: 120px;
		text-align: left; font-size: 13px; font-weight: 500;
		color: var(--oap-text-1); line-height: 1.4;
		white-space: normal; overflow: hidden; max-height: 2.8em;
	}
	.product_div_list > .product_div_name a { color: var(--oap-text-1); text-decoration: none; }
	.product_div_list > .product_div_name a:hover { color: var(--oap-accent); text-decoration: underline; }

	/* Стикеры — inline */
	.product_div_list > .stickers { order: 3; display: flex; gap: 4px; flex-shrink: 0; }
	.product_div_list > .stickers > .sticker { padding: 2px 8px; border-radius: 2px; font-size: 10px; white-space: nowrap; line-height: 1.5; font-weight: 600; }
	.product_div_list > .stickers > .sticker a { text-decoration: none; }

	/* Скидка */
	.product_div_list > .product_div_discount { order: 4; flex-shrink: 0; font-size: 11px; color: var(--oap-accent); white-space: nowrap; padding: 2px 8px; background: #e3f2fd; border-radius: 2px; }

	/* Наличие */
	.product_div_list > .product_div_exist_info { order: 5; flex-shrink: 0; font-size: 12px; white-space: nowrap; min-width: 80px; text-align: center; }

	/* Зачёркнутая цена */
	.product_div_list > .product_div_price_crossed_out { order: 6; flex-shrink: 0; text-align: right; white-space: nowrap; font-size: 11px; color: var(--oap-text-3); position: relative; }

	/* Цена */
	.product_div_list > .product_div_price { order: 7; flex-shrink: 0; text-align: right; white-space: nowrap; min-width: 80px; }
	.product_div_list > .product_div_price .price { font-size: 15px; color: var(--oap-text-1); font-weight: 700; }
	.product_div_list > .product_div_price .currency { font-size: 12px; color: var(--oap-text-2); font-weight: 500; }

	/* Цена от-до */
	.product_div_list > .product_div_price_from_to { order: 7; flex-shrink: 0; text-align: right; white-space: nowrap; min-width: 80px; line-height: 1; }
	.product_div_list > .product_div_price_from_to .price { font-size: 15px; color: var(--oap-text-1); font-weight: 700; }
	.product_div_list > .product_div_price_from_to .currency { font-size: 12px; color: var(--oap-text-2); font-weight: 500; }

	/* Кнопка корзины */
	.product_div_list > .main_action_div { order: 8; flex-shrink: 0; }
	.product_div_list .cart_btn_purchase_action { padding: 0 !important; margin: 0; }

	.product_div_list > .product_div_marks { display: none; }
	.product_div_list > .product_checkbox_div { display: none; }
}

/* --- Mobile (max-width: 699px) --- */
@media screen and (max-width: 699px) {
	.product_div_list {
		display: flex; flex-wrap: wrap; align-items: center;
		gap: 6px 10px; min-height: 60px; padding: 10px 12px;
		background: var(--oap-surface); border-bottom: 1px solid #f0efed;
		box-sizing: border-box;
	}

	.product_div_list > .product_div_name {
		order: 1; flex: 1 1 100%; text-align: left; font-size: 13px; font-weight: 500;
		color: var(--oap-text-1); line-height: 1.4; white-space: normal; overflow: hidden;
		display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;
	}
	.product_div_list > .product_div_name a { color: var(--oap-text-1); text-decoration: none; }

	.product_div_list > .stickers { order: 2; display: flex; gap: 4px; flex-shrink: 0; }
	.product_div_list > .stickers > .sticker { padding: 1px 6px; border-radius: 2px; font-size: 10px; white-space: nowrap; line-height: 1.6; font-weight: 600; }
	.product_div_list > .stickers > .sticker a { text-decoration: none; }

	.product_div_list > .product_div_discount { order: 3; flex-shrink: 0; font-size: 10px; color: var(--oap-accent); white-space: nowrap; padding: 1px 6px; background: #e3f2fd; border-radius: 2px; }

	.product_div_list > .product_div_exist_info { order: 4; flex-shrink: 0; font-size: 12px; white-space: nowrap; }

	.product_div_list > .product_div_price_crossed_out { order: 5; flex-shrink: 0; font-size: 11px; color: var(--oap-text-3); white-space: nowrap; position: relative; }

	.product_div_list > .product_div_price { order: 6; flex-shrink: 0; white-space: nowrap; }
	.product_div_list > .product_div_price .price { font-size: 14px; color: var(--oap-text-1); font-weight: 700; }
	.product_div_list > .product_div_price .currency { font-size: 12px; color: var(--oap-text-2); }

	.product_div_list > .product_div_price_from_to { order: 6; flex-shrink: 0; white-space: nowrap; line-height: 1; }
	.product_div_list > .product_div_price_from_to .price { font-size: 14px; color: var(--oap-text-1); font-weight: 700; }
	.product_div_list > .product_div_price_from_to .currency { font-size: 12px; color: var(--oap-text-2); }

	.product_div_list > .main_action_div { order: 7; flex-shrink: 0; margin-left: auto; }

	.product_div_list > .product_div_actions { order: 8; display: flex; align-items: center; position: static; }
	.product_div_list .product_div_bookmark span { display: none; }
	.product_div_list .product_div_bookmark i { font-size: 18px; color: #aaa; }
	.product_div_list .product_div_bookmark .fa-bookmark { color: var(--oap-red); }

	.product_div_list > .product_div_marks { display: none; }
	.product_div_list > .product_checkbox_div { display: none; }

	/* Скрыть "Розничная" на мобилке (класс product_div_discount) */
	.product_div_list > .product_div_discount { display: none; }
}


/* ============================================================
   ПАНЕЛЬ СОРТИРОВКИ (.products_area_turning)
   Flexbox layout, segmented control для видов, стилизованный select
   ============================================================ */

/* --- Общие (base) --- */
.products_area_turning {
	background: var(--oap-surface);
	border-radius: var(--oap-r);
	box-shadow: 0 1px 4px rgba(0,0,0,0.06);
	margin-bottom: 12px;
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 6px 14px;
	min-height: 44px;
	box-sizing: border-box;
	font-family: 'Roboto', sans-serif;
}

/* Лейбл "Сортировка" */
.showSort_name {
	font-size: 13px;
	color: var(--oap-text-2);
	white-space: nowrap;
	flex-shrink: 0;
}

/* Обёртка select */
.showSort_wrap {
	flex-shrink: 0;
}

/* Select сортировки — стилизация по style guide */
#sort_select {
	border: 1px solid var(--oap-border);
	border-radius: var(--oap-r);
	padding: 6px 28px 6px 10px;
	font-size: 13px;
	font-family: 'Roboto', sans-serif;
	color: var(--oap-text-1);
	background: #fafafa;
	transition: border-color 0.2s;
	outline: none;
	min-width: 180px;
	height: 32px;
	line-height: 1;
	cursor: pointer;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%236b6b6b'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 10px center;
}
#sort_select:focus {
	border-color: var(--oap-accent);
	background-color: #fff;
}
#sort_select:hover {
	border-color: #bbb;
}

/* Лейбл "Вид каталога" — убран из HTML, но на всякий случай скрываем */
.showRestyle_name { display: none; }

/* Segmented control — обёртка */
.showRestyle_wrap {
	display: inline-flex;
	border: 1px solid var(--oap-border);
	border-radius: var(--oap-r);
	overflow: hidden;
	margin-left: auto;
	flex-shrink: 0;
}

/* Кнопка вида — Material Icons */
.showRestyle {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 32px;
	background: #fafafa;
	border: none;
	border-right: 1px solid var(--oap-border);
	cursor: pointer;
	transition: background 0.15s, color 0.15s;
	background-image: none !important;
}
.showRestyle:last-child {
	border-right: none;
}
.showRestyle .material-icons {
	font-size: 18px;
	color: var(--oap-text-2);
	transition: color 0.15s;
}
.showRestyle:hover {
	background: #e3f2fd;
}
.showRestyle:hover .material-icons {
	color: var(--oap-accent);
}

/* Активный вид */
.showRestyle.showRestyle_current {
	background: #fff !important;
	box-shadow: inset 0 -2px 0 var(--oap-accent);
	pointer-events: none;
	background-image: none !important;
}
.showRestyle.showRestyle_current .material-icons {
	color: var(--oap-accent);
}

/* Сброс старых PNG-стилей для ID-селекторов */
#showRestyle_1, #showRestyle_2, #showRestyle_3 {
	position: static !important;
	background-image: none !important;
}
#showRestyle_1:hover, #showRestyle_2:hover, #showRestyle_3:hover {
	background-image: none !important;
}
#showRestyle_1.showRestyle_current,
#showRestyle_2.showRestyle_current,
#showRestyle_3.showRestyle_current {
	background-color: #fff !important;
	background-image: none !important;
	border-color: transparent !important;
}

/* --- Mobile --- */
@media screen and (max-width: 600px) {
	.products_area_turning {
		flex-wrap: wrap;
		gap: 6px 10px;
		padding: 8px 10px;
		min-height: auto;
	}
	.showSort_name { display: none; }
	.showSort_wrap { flex: 1 1 0; min-width: 0; }
	#sort_select { width: 100%; min-width: 0; }
	.showRestyle_wrap { margin-left: 0; }
}


/* ============================================================
   САЙДБАР ФИЛЬТРОВ
   ============================================================ */
.side_properties_widgets_div { width: 100%; background: var(--oap-surface); border-radius: var(--oap-r); box-shadow: 0 1px 4px rgba(0,0,0,0.06); padding: 8px 0 4px; margin-bottom: 10px; }
.side_properties_widgets_div > H3 { text-align: center; font-size: 20px; }
.one_property { margin-left: 12px; margin-right: 12px; }
.one_property_separator { border-bottom: 1px solid #f0efed; margin: 2px 0; }
.one_property > H4 { padding: 6px 0 4px; text-align: left; color: #424242; font-size: 12px; font-weight: 500; letter-spacing: 0.03em; text-transform: uppercase; margin: 8px 0 4px; }
.slider_ranges { text-align: center; padding: 4px 0 8px; }
.slider_ranges > INPUT[type=text] { width: 70px; border: 1px solid #d0d0d0; border-radius: var(--oap-r); padding: 4px 6px; font-size: 13px; color: var(--oap-text-1); background: #fafafa; }
.slider_container { padding: 8px 0 4px; }
.list_div { margin-bottom: 10px; max-height: 200px; overflow: auto; }
.match_products_count { color: #bba8b0; font-size: 10px; }

.sidebar-reset-wrap { text-align: center; padding: 10px 12px 8px; }
.btn-sidebar-reset { display: block; width: 100%; background: #f5f5f5; border: 1px solid #d0d0d0; border-radius: var(--oap-r); color: var(--oap-text-2); font-size: 13px; padding: 7px 12px; cursor: pointer; transition: background 0.15s, border-color 0.15s, color 0.15s; text-align: center; line-height: 1.4; }
.btn-sidebar-reset:hover { background: #e3f2fd; border-color: var(--oap-accent); color: var(--oap-accent); }

.show_hidden_div { text-align: center; }
.show_hidden_a { font-size: 11px; border-bottom: 1px dotted; }

/* Чекбоксы */
input[type=checkbox].css-checkbox { position: absolute; z-index: -1000; left: -1000px; overflow: hidden; clip: rect(0 0 0 0); height: 1px; width: 1px; margin: -1px; padding: 0; border: 0; }
input[type=checkbox].css-checkbox + label.css-label { padding-left: 19px; height: 14px; display: inline-block; line-height: 14px; background-repeat: no-repeat; background-position: 0 0; font-size: 14px; vertical-align: middle; cursor: pointer; }
input[type=checkbox].css-checkbox:checked + label.css-label { background-position: 0 -14px; }
label.css-label { background-image: url(/content/shop/images/csscheckbox.png); -webkit-touch-callout: none; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }
.css-label { font-weight: normal; }


/* ============================================================
   ТЕГИ АКТИВНЫХ ФИЛЬТРОВ (#filter_box_catalog)
   ============================================================ */
#filter_box_catalog .btn { border-radius: var(--oap-r); line-height: 1em; display: inline-block; margin-right: 10px; margin-bottom: 5px; }
#filter_box_catalog .btn > .fa { margin-right: 0; margin-left: 5px; font-size: 12px; }

/* Тег активного фильтра — КРАСНОВАТЫЙ */
#filter_box_catalog .btn-ar.btn-default { background-color: #f8d7da !important; color: #842029 !important; border: 1px solid #f1aeb5 !important; border-radius: var(--oap-r) !important; font-size: 13px !important; padding: 4px 10px !important; margin-right: 6px; margin-bottom: 6px; font-weight: 400 !important; cursor: pointer; transition: background 0.15s, border-color 0.15s; }
#filter_box_catalog .btn-ar.btn-default:hover { background-color: #f1c0c5 !important; border-color: #e08d96 !important; color: #6b1a23 !important; }
#filter_box_catalog .btn-ar.btn-default:focus,
#filter_box_catalog .btn-ar.btn-default:active { background-color: #f1c0c5 !important; border-color: #e08d96 !important; color: #6b1a23 !important; outline: none !important; }

/* Кнопка "Сбросить фильтр" — ТЕМНЕЕ КРАСНОВАТЫЙ */
#filter_box_catalog .btn-ar.btn-primary { background-color: #e9c6cb !important; color: #842029 !important; border: 1px solid #d4a0a8 !important; border-radius: var(--oap-r) !important; font-size: 13px !important; padding: 4px 10px !important; margin-right: 6px; margin-bottom: 6px; font-weight: 400 !important; cursor: pointer; transition: background 0.15s, border-color 0.15s; }
#filter_box_catalog .btn-ar.btn-primary:hover { background-color: #dbb0b7 !important; border-color: #c4878f !important; color: #6b1a23 !important; }
#filter_box_catalog .btn-ar.btn-primary:focus,
#filter_box_catalog .btn-ar.btn-primary:active { background-color: #dbb0b7 !important; border-color: #c4878f !important; color: #6b1a23 !important; outline: none !important; }


/* ============================================================
   CART CONTROLS — кнопки [ — ] 1 [ + ] [🛒] flex-ряд (все view, все размеры)
   HTML: div.cart_btn_purchase_action > div.product_div_count_need + a.cart_btn_add
   ============================================================ */
.cart_btn_purchase_action {
	display: flex;
	align-items: center;
	gap: 6px;
}
.product_div_count_need {
	display: inline-flex;
	align-items: center;
}
.count_need_minus,
.count_need_plus {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 32px;
	font-size: 15px;
	text-decoration: none !important;
	color: #555;
	background: #eee;
	border: none;
	cursor: pointer;
	transition: background 0.15s;
}
.count_need_minus { border-radius: var(--oap-r) 0 0 var(--oap-r); }
.count_need_plus  { border-radius: 0 var(--oap-r) var(--oap-r) 0; }
.count_need_minus:hover,
.count_need_plus:hover {
	background: #ddd;
	text-decoration: none !important;
}

.count_need_input {
	width: 36px;
	height: 32px;
	border: none;
	text-align: center;
	font-size: 13px;
	color: #222;
	background: #fff;
	outline: none;
}

/* Иконка корзины */
.cart_btn_add {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	padding: 0 !important;
	font-size: 0 !important;
	text-decoration: none;
	border-radius: var(--oap-r);
	background: var(--oap-accent) !important;
	border: none !important;
	color: #fff !important;
	cursor: pointer;
	overflow: hidden;
	line-height: 1;
	transition: background 0.15s;
	flex-shrink: 0;
}
.cart_btn_add::before {
	font-family: 'Material Icons';
	content: 'shopping_cart';
	font-size: 18px;
	color: #fff;
	-webkit-font-feature-settings: 'liga';
	font-feature-settings: 'liga';
}
.cart_btn_add:hover {
	background: var(--oap-accent-dk) !important;
	box-shadow: 0 2px 6px rgba(27, 107, 177, 0.25);
}


/* ============================================================
   БРЕНД + АРТИКУЛ (.product_div_meta)
   ============================================================ */
.product_div_meta {
	display: flex; align-items: baseline; gap: 6px;
	line-height: 1.3;
}
.product_div_brand {
	font-size: 11px; font-weight: 700; letter-spacing: 1.5px;
	text-transform: uppercase; color: var(--oap-accent);
	flex-shrink: 0;
}
.product_div_article {
	font-size: 11px; font-weight: 500; color: var(--oap-text-3);
	flex-shrink: 0;
}

/* View 1 — Плитка: мета в card-body */
.product_div_tile > .product_div_meta { padding: 8px 14px 0; flex-shrink: 0; }

/* View 2 — Список с фото: мета как компактный блок перед name */
@media screen and (min-width: 700px) {
	.product_div_list_photo > .product_div_meta {
		order: 1; flex-shrink: 0;
		align-self: center;
	}
}
@media screen and (max-width: 699px) {
	.product_div_list_photo > .product_div_meta {
		order: 1; flex: 1 1 100%;
	}
}

/* View 3 — Компактный: inline с названием */
@media screen and (min-width: 700px) {
	.product_div_list > .product_div_meta {
		order: 2; flex-shrink: 0; gap: 5px;
	}
}
@media screen and (max-width: 699px) {
	.product_div_list > .product_div_meta {
		order: 1; flex: 1 1 100%; gap: 5px;
	}
}


/* ============================================================
   ФИКС: View 3 — сердечко вместо bookmark (пропущено раньше)
   ============================================================ */
.product_div_list .product_div_bookmark .fa-bookmark-o::before { content: "\f08a"; }
.product_div_list .product_div_bookmark .fa-bookmark::before { content: "\f004"; }
.product_div_list .product_div_bookmark .fa-bookmark { color: var(--oap-red); text-shadow: 0 0 1px rgba(0,0,0,0.3); }
.product_div_list .product_div_bookmark i { color: #aaa; transition: color 0.15s; }
.product_div_list .product_div_bookmark:hover i { color: var(--oap-red); }


/* ============================================================
   БОРДЕРЫ КАРТОЧЕК — тонкий border для чёткого разделения
   ============================================================ */
/* View 1 — Плитка */
.product_div_tile {
	border: 1px solid var(--oap-border);
}

/* View 2 — Список с фото: усиленный разделитель */
.product_div_list_photo {
	border-bottom: 1px solid var(--oap-border) !important;
}

/* View 3 — Компактный: усиленный разделитель */
.product_div_list {
	border-bottom: 1px solid var(--oap-border) !important;
}


/* ============================================================
   GAP МЕЖДУ КАРТОЧКАМИ View 1 (Плитка)
   Bootstrap col-* padding даёт горизонтальные отступы,
   но margin-bottom нужен для вертикальных.
   ============================================================ */
#products_area {
	gap: 16px 0;
}
.product_div_tile {
	margin-bottom: 0 !important;
}


/* ============================================================
   ИЗБРАННОЕ В КОРЗИНЕ (.cart-fav-btn)
   ============================================================ */
.cart-fav-btn {
	color: #aaa !important;
	transition: color 0.2s;
}
.cart-fav-btn:hover {
	color: var(--oap-red) !important;
	text-decoration: none !important;
}
.cart-fav-btn.cart-fav-active {
	color: var(--oap-red) !important;
}
.cart-fav-btn .material-icons {
	font-size: 20px;
	vertical-align: middle;
}


/* ============================================================
   ПАГИНАЦИЯ КАТАЛОГА
   ============================================================ */
#bottom_pagination_div {
	display: flex;
	gap: 4px;
	flex-wrap: wrap;
	justify-content: center;
	margin-top: 16px;
}
#bottom_pagination_div .btn {
	border-radius: 6px !important;
	border: 1px solid var(--oap-border) !important;
	background: #fff !important;
	color: var(--oap-text-1) !important;
	font-size: 13px;
	padding: 6px 12px;
	transition: background 0.15s, color 0.15s, border-color 0.15s;
	box-shadow: none !important;
}
#bottom_pagination_div .btn:hover {
	background: #e3f2fd !important;
	border-color: var(--oap-accent) !important;
	color: var(--oap-accent) !important;
}
#bottom_pagination_div .btn.active {
	background: var(--oap-accent) !important;
	border-color: var(--oap-accent) !important;
	color: #fff !important;
}
#bottom_pagination_div .btn.disabled,
#bottom_pagination_div .btn[disabled] {
	opacity: 0.4;
	pointer-events: none;
}


/* Кнопка "Подробнее" (когда нет корзины, приоритет 3/4) */
.main_action_div > a.btn {
	background: var(--oap-accent) !important;
	border-color: var(--oap-accent) !important;
	color: #fff !important;
	border-radius: var(--oap-r) !important;
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	transition: background 0.15s;
}
.main_action_div > a.btn:hover {
	background: var(--oap-accent-dk) !important;
}


/* ============================================================
   САЙДБАР ФИЛЬТРОВ
   ============================================================ */
#side_properties_widgets_div {
	background: #fff;
	border: 1px solid var(--oap-border);
	border-radius: 8px;
	padding: 12px 16px;
	margin-bottom: 16px;
}

/* Заголовки фильтров */
#side_properties_widgets_div .one_property h4 {
	font-size: 12px;
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	color: var(--oap-text-1);
	margin: 12px 0 8px 0;
	padding: 0;
}
#side_properties_widgets_div .one_property:first-child h4 {
	margin-top: 4px;
}

/* Чекбоксы */
#side_properties_widgets_div .css-checkbox {
	accent-color: var(--oap-accent);
	width: 15px;
	height: 15px;
	vertical-align: middle;
	margin-right: 4px;
	cursor: pointer;
}
#side_properties_widgets_div .css-label {
	font-size: 13px;
	color: var(--oap-text-1);
	cursor: pointer;
	vertical-align: middle;
}
#side_properties_widgets_div .list_div > div {
	padding: 2px 0;
}
#side_properties_widgets_div .match_products_count {
	font-size: 11px;
	color: #9e9e9e;
}

/* Кнопка "Сбросить фильтр" */
.btn-sidebar-reset {
	width: 100%;
	padding: 8px 12px;
	border: 1px solid var(--oap-border) !important;
	border-radius: 6px;
	background: #f5f5f5 !important;
	color: var(--oap-text-1) !important;
	font-size: 13px;
	cursor: pointer;
	transition: background 0.15s, border-color 0.15s;
}
.btn-sidebar-reset:hover {
	background: #e3f2fd !important;
	border-color: var(--oap-accent) !important;
	color: var(--oap-accent) !important;
}

/* Слайдер цены */
#side_properties_widgets_div .slider_ranges {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 8px;
}
#side_properties_widgets_div .slider_ranges input[type="text"] {
	width: 70px;
	padding: 4px 8px;
	border: 1px solid var(--oap-border);
	border-radius: 4px;
	font-size: 13px;
	text-align: center;
	background: #fafafa;
}
#side_properties_widgets_div .slider_ranges input[type="text"]:focus {
	border-color: var(--oap-accent);
	outline: none;
}

/* jQuery UI Slider — акцентные цвета */
#side_properties_widgets_div .ui-slider {
	background: #e0e0e0 !important;
	border: none !important;
	height: 6px !important;
	border-radius: 3px !important;
}
#side_properties_widgets_div .ui-slider .ui-slider-range {
	background: var(--oap-accent) !important;
	border-radius: 3px !important;
}
#side_properties_widgets_div .ui-slider .ui-slider-handle {
	background: #fff !important;
	border: 2px solid var(--oap-accent) !important;
	border-radius: 50% !important;
	width: 16px !important;
	height: 16px !important;
	top: -5px !important;
	cursor: pointer;
}
#side_properties_widgets_div .ui-slider .ui-slider-handle:hover {
	box-shadow: 0 0 0 4px rgba(27, 107, 177, 0.15);
}

/* Разделитель между фильтрами */
.one_property_separator {
	border-bottom: 1px solid #ebebeb;
	margin: 8px 0;
}

/* Ссылка "Еще варианты" */
#side_properties_widgets_div a[href="javascript:void(0);"] {
	font-size: 12px;
	color: var(--oap-accent);
	text-decoration: none;
}
#side_properties_widgets_div a[href="javascript:void(0);"]:hover {
	text-decoration: underline;
}



/* ============================================================
   VIEW 1 — ПЛИТКА — МОБИЛЬНАЯ АДАПТАЦИЯ (≤600px)
   Сетка 2 в ряд (col-xs-6 из PHP), компактные карточки.
   Референс: oe.kz mobile — 2 колонки, компактный +/- и иконка корзины.
   ============================================================ */
@media screen and (max-width: 600px) {

	/* Карточка — компактная */
	.product_div_tile {
		min-height: auto;
		padding: 0;
		margin-bottom: 0 !important;
		border-radius: var(--oap-r);
		overflow: hidden;
	}

	/* Фото — уменьшить */
	.product_div_tile > .product_div_image_wrap {
		height: 130px;
	}
	.product_div_tile > .product_div_image_wrap > a > img {
		max-width: 110px !important;
		max-height: 110px !important;
	}

	/* Бренд + артикул */
	.product_div_tile > .product_div_meta {
		padding: 6px 8px 0;
	}
	.product_div_tile .product_div_brand {
		font-size: 9px;
		letter-spacing: 1px;
	}
	.product_div_tile .product_div_article {
		font-size: 9px;
	}

	/* Название */
	.product_div_tile > .product_div_name {
		padding: 4px 8px 0;
		font-size: 12px;
		line-height: 1.3;
		-webkit-line-clamp: 2;
		max-height: 2.6em;
	}
	.product_div_tile > .product_div_name a {
		font-size: 12px;
	}

	/* Стикеры */
	.product_div_tile > .stickers > .sticker {
		font-size: 9px;
		padding: 2px 8px;
	}

	/* Цена */
	.product_div_tile > .product_div_price {
		padding: 4px 8px 0;
	}
	.product_div_tile > .product_div_price > .price {
		font-size: 16px;
		font-weight: 700;
	}
	.product_div_tile > .product_div_price > .currency {
		font-size: 12px;
	}

	/* Цена от-до */
	.product_div_tile > .product_div_price_from_to {
		padding: 4px 8px 0;
	}
	.product_div_tile > .product_div_price_from_to > .price {
		font-size: 16px;
	}
	.product_div_tile > .product_div_price_from_to > .currency {
		font-size: 12px;
	}

	/* Зачёркнутая цена */
	.product_div_tile > .product_div_price_crossed_out {
		padding: 1px 8px 0;
		font-size: 11px;
	}

	/* Скидка */
	.product_div_tile > .product_div_discount {
		padding: 1px 8px 0;
		font-size: 10px;
	}

	/* Наличие */
	.product_div_tile > .product_div_exist_info {
		padding: 2px 8px 0;
		font-size: 11px;
	}

	/* Закладка-сердечко — уменьшить */
	.product_div_tile > .product_div_actions {
		top: 4px;
		right: 4px;
	}
	.product_div_tile .product_div_bookmark a {
		width: 24px;
		height: 24px;
		font-size: 13px;
	}

	/* Кнопка корзины — компактный padding для мобильной плитки */
	.product_div_tile > .main_action_div {
		padding: 6px 8px 8px;
	}

	/* Hover на плитке — отключить transform на мобилке */
	.product_div_tile:hover {
		transform: none;
		box-shadow: 0 1px 4px rgba(0,0,0,0.06);
	}

	/* Мобильная плитка: полностью отказ от Bootstrap grid.
	   Родитель .col-lg-12 имеет padding:15px → content=360px.
	   .row margin:-15px расширяет до 390px но плитки без col-padding
	   торчат за экран. Решение: оставляем .row margin,
	   добавляем padding:0 21px (компенсация 15px + 6px отступ) */
	#products_area {
		padding: 0 21px;
		gap: 8px;
	}
	/* Плитка в 2 колонки через flex */
	.product_div_tile {
		width: calc(50% - 4px) !important;
		max-width: calc(50% - 4px) !important;
		flex: 0 0 calc(50% - 4px);
	}

	/* Скрыть "Розничная" — она в классе product_div_discount */
	.product_div_tile > .product_div_discount {
		display: none;
	}

	/* Компактные +/- и корзина для мобилки */
	.count_need_minus,
	.count_need_plus {
		width: 26px;
		height: 28px;
		font-size: 14px;
	}
	.count_need_input {
		width: 30px;
		height: 28px;
		font-size: 12px;
	}
	.cart_btn_add {
		width: 28px;
		height: 28px;
	}
	.cart_btn_add::before {
		font-size: 16px;
	}
}
