/**
 * WooCommerce Styles - KarbushTV v17.1
 * Исправление цен и похожих товаров
 */

/* ============================================
1. ЦЕНЫ - ГАРАНТИРОВАННОЕ ОТОБРАЖЕНИЕ
============================================ */
.woocommerce .price,
.woocommerce div.product .price {
    color: #46d369 !important;
    font-weight: 700 !important;
    display: block !important;
    font-size: 18px !important;
}

/* Старая цена (зачеркнутая) */
.woocommerce .price del,
.woocommerce div.product .price del {
    color: #757575 !important;
    font-size: 14px !important;
    margin-right: 10px !important;
    display: inline-block !important;
    text-decoration: line-through !important;
    opacity: 0.8 !important;
}

/* Новая цена со скидкой */
.woocommerce .price ins,
.woocommerce div.product .price ins {
    color: #46d369 !important;
    text-decoration: none !important;
    font-weight: 700 !important;
    display: inline-block !important;
    background: transparent !important;
}

/* ============================================
2. ПОХОЖИЕ ТОВАРЫ - ГОРИЗОНТАЛЬНЫЙ СКРОЛЛ
============================================ */
.related.products,
.upsells.products {
    max-width: 100% !important;
    margin: 60px 0 !important;
    padding: 0 4% !important;
    clear: both !important;
}

.related.products h2,
.upsells.products h2 {
    font-size: 24px !important;
    font-weight: 700 !important;
    margin-bottom: 25px !important;
    padding-left: 15px !important;
    border-left: 4px solid #E50914 !important;
    color: #FFFFFF !important;
}

/* Контейнер с прокруткой */
.related.products ul.products,
.upsells.products ul.products {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    gap: 20px !important;
    padding: 10px 5px 30px 5px !important;
    margin: 0 !important;
    scrollbar-width: thin !important;
    scrollbar-color: #E50914 #181818 !important;
    -webkit-overflow-scrolling: touch !important;
}

/* Скроллбар для Chrome/Safari */
.related.products ul.products::-webkit-scrollbar,
.upsells.products ul.products::-webkit-scrollbar {
    height: 8px !important;
}

.related.products ul.products::-webkit-scrollbar-track {
    background: #181818 !important;
    border-radius: 4px !important;
}

.related.products ul.products::-webkit-scrollbar-thumb {
    background: #E50914 !important;
    border-radius: 4px !important;
}

/* Карточка товара */
.related.products ul.products li.product,
.upsells.products ul.products li.product {
    min-width: 200px !important;
    max-width: 200px !important;
    width: auto !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.related.products ul.products li.product .media-card,
.upsells.products ul.products li.product .media-card {
    background: #181818 !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    transition: transform 0.3s ease !important;
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
}

.related.products ul.products li.product .media-card:hover {
    transform: scale(1.05) !important;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.5) !important;
}

/* Кнопка в карточке */
.related.products ul.products li.product .button,
.related.products ul.products li.product .add_to_cart_button,
.upsells.products ul.products li.product .button,
.upsells.products ul.products li.product .add_to_cart_button {
    margin: auto 10px 15px !important;
    width: calc(100% - 20px) !important;
    display: block !important;
}

/* ============================================
3. МАГАЗИН - СОВРЕМЕННАЯ СЕТКА
============================================ */
.archive-page .media-grid.products {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)) !important;
    gap: 25px !important;
    padding: 30px 4% !important;
}

.archive-page .media-card {
    background: #181818 !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    transition: all 0.3s ease !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3) !important;
}

.archive-page .media-card:hover {
    transform: translateY(-5px) !important;
    box-shadow: 0 10px 25px rgba(229, 9, 20, 0.2) !important;
}

/* Заголовок архива */
.archive-header {
    background: linear-gradient(to bottom, #141414, #181818) !important;
    padding: 80px 4% 60px !important;
    border-bottom: 1px solid #333 !important;
}

.archive-title {
    font-size: 48px !important;
    color: #FFFFFF !important;
    margin-bottom: 20px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
}

.archive-description {
    color: #B3B3B3 !important;
    font-size: 18px !important;
    max-width: 800px !important;
    line-height: 1.6 !important;
}

/* ============================================
4. АДАПТИВНОСТЬ
============================================ */
@media (max-width: 1024px) {
    .related.products ul.products li.product,
    .upsells.products ul.products li.product {
        min-width: 180px !important;
        max-width: 180px !important;
    }
}

@media (max-width: 768px) {
    .archive-page .media-grid.products {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 15px !important;
        padding: 20px 4% !important;
    }
    
    .archive-title {
        font-size: 32px !important;
    }
    
    .related.products ul.products li.product,
    .upsells.products ul.products li.product {
        min-width: 160px !important;
        max-width: 160px !important;
    }
}

@media (max-width: 480px) {
    .archive-page .media-grid.products {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}


/* ============================================
ИСПРАВЛЕНИЕ 1: ЦЕНА НА СТРАНИЦЕ МАГАЗИНА — ВИДНА ВСЕГДА
Добавить в конец файла
============================================ */
.archive-page .media-card .media-card-overlay {
    opacity: 1 !important;
    visibility: visible !important;
}

.archive-page .media-card .media-card-meta,
.archive-page .media-card .price {
    display: block !important;
    position: static !important;
    background: transparent !important;
    padding: 12px 15px 0 !important;
}

.archive-page .media-card .price {
    color: #46d369 !important;
    font-weight: 700 !important;
    font-size: 16px !important;
    padding: 0 15px 12px !important;
}

.archive-page .media-card .price del {
    color: #757575 !important;
    font-size: 13px !important;
    margin-right: 8px !important;
    text-decoration: line-through !important;
}

.archive-page .media-card .price ins {
    color: #46d369 !important;
    text-decoration: none !important;
    font-weight: 700 !important;
}

/* ============================================
ИСПРАВЛЕНИЕ 2: ПОХОЖИЕ ТОВАРЫ — ГОРИЗОНТАЛЬНЫЙ СКРОЛЛ
Заменяет существующие правила .related.products
============================================ */
.woocommerce div.product .related.products ul.products,
.woocommerce-page .related.products ul.products {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    gap: 20px !important;
    padding: 10px 5px 30px !important;
    grid-template-columns: none !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: thin !important;
    scrollbar-color: #E50914 #181818 !important;
}

.woocommerce div.product .related.products ul.products::-webkit-scrollbar,
.woocommerce-page .related.products ul.products::-webkit-scrollbar {
    height: 8px !important;
}

.woocommerce div.product .related.products ul.products::-webkit-scrollbar-track {
    background: #181818 !important;
    border-radius: 4px !important;
}

.woocommerce div.product .related.products ul.products::-webkit-scrollbar-thumb {
    background: #E50914 !important;
    border-radius: 4px !important;
}

.woocommerce div.product .related.products ul.products li.product,
.woocommerce-page .related.products ul.products li.product {
    min-width: 200px !important;
    max-width: 200px !important;
    width: auto !important;
    flex: 0 0 auto !important;
}

/* ============================================
ИСПРАВЛЕНИЕ 3: КНОПКА «ВСЕ ТОВАРЫ»
============================================ */
.related-products-header {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    margin-bottom: 25px !important;
}

.related-products-header h2 {
    margin: 0 !important;
}

.btn-all-products {
    background: #E50914 !important;
    color: #fff !important;
    padding: 10px 20px !important;
    border-radius: 4px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    transition: 0.3s !important;
}

.btn-all-products:hover {
    background: #f40612 !important;
    transform: scale(1.02) !important;
}

/* ============================================
АДАПТИВНОСТЬ
============================================ */
@media (max-width: 768px) {
    .woocommerce div.product .related.products ul.products li.product,
    .woocommerce-page .related.products ul.products li.product {
        min-width: 160px !important;
        max-width: 160px !important;
    }
    
    .related-products-header {
        flex-direction: column !important;
        gap: 15px !important;
        align-items: flex-start !important;
    }
}

/* ============================================
ИСПРАВЛЕНИЕ: ПОХОЖИЕ ТОВАРЫ — ГОРИЗОНТАЛЬНЫЙ СКРОЛЛ
Добавить в КОНЕЦ файла
============================================ */
.woocommerce div.product .related.products ul.products,
.woocommerce-page .related.products ul.products {
display: flex !important;
flex-wrap: nowrap !important;
overflow-x: auto !important;
gap: 20px !important;
padding: 10px 5px 30px !important;
grid-template-columns: none !important;
-webkit-overflow-scrolling: touch !important;
scrollbar-width: thin !important;
scrollbar-color: #E50914 #181818 !important;
}

.woocommerce div.product .related.products ul.products::-webkit-scrollbar,
.woocommerce-page .related.products ul.products::-webkit-scrollbar {
height: 8px !important;
}

.woocommerce div.product .related.products ul.products::-webkit-scrollbar-track {
background: #181818 !important;
border-radius: 4px !important;
}

.woocommerce div.product .related.products ul.products::-webkit-scrollbar-thumb {
background: #E50914 !important;
border-radius: 4px !important;
}

.woocommerce div.product .related.products ul.products li.product,
.woocommerce-page .related.products ul.products li.product {
min-width: 200px !important;
max-width: 200px !important;
width: auto !important;
flex: 0 0 auto !important;
}

/* ============================================
ИСПРАВЛЕНИЕ: ЦЕНА НА СТРАНИЦЕ МАГАЗИНА
============================================ */
.archive-page .media-card .media-card-meta,
.archive-page .media-card .price {
display: block !important;
visibility: visible !important;
opacity: 1 !important;
}

/* ============================================
   KSTV CART v18 — СВОЯ ВЁРСТКА КОРЗИНЫ / СПАСИБО
   (фикс ₽: системные фолбэки в конце стека)
============================================ */
.kstv-cart,
.kstv-thankyou {
	max-width: 1200px;
	margin: 0 auto;
	color: var(--text-white, #fff);
	font-family: inherit, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

/* уведомления Woo (купон применён, ошибки) в тёмном стиле */
.woocommerce-cart .woocommerce-message,
.woocommerce-cart .woocommerce-info,
.woocommerce-cart .woocommerce-error,
.woocommerce-checkout .woocommerce-message,
.woocommerce-checkout .woocommerce-info,
.woocommerce-checkout .woocommerce-error {
	background: #181818 !important;
	border: 1px solid #333;
	border-left: 4px solid #46d369;
	color: #fff !important;
	padding: 14px 18px !important;
	border-radius: 8px;
	margin: 0 0 20px !important;
	list-style: none !important;
}
.woocommerce-cart .woocommerce-error,
.woocommerce-checkout .woocommerce-error { border-left-color: #E50914; }
.woocommerce-cart .woocommerce-message a,
.woocommerce-cart .woocommerce-info a { color: #46d369 !important; }

/* ---------- сетка ---------- */
.kstv-cart-grid {
	display: grid;
	grid-template-columns: 1fr 380px;
	gap: 30px;
	align-items: start;
}

/* ---------- список товаров ---------- */
.kstv-cart-items { display: flex; flex-direction: column; gap: 16px; }

.kstv-cart-item {
	display: grid;
	grid-template-columns: 76px 1fr auto auto 32px;
	gap: 18px;
	align-items: center;
	background: var(--bg-secondary, #181818);
	border: 1px solid var(--border-color, #2a2a2a);
	border-radius: 12px;
	padding: 16px;
	transition: border-color .3s;
}
.kstv-cart-item:hover { border-color: #444; }

.kstv-cart-item-thumb a { display: block; }
.kstv-cart-item-thumb img {
	width: 76px; height: 100px;
	object-fit: cover; border-radius: 8px; display: block;
}

.kstv-cart-item-name a {
	color: #fff; font-weight: 600; font-size: 16px;
	text-decoration: none; line-height: 1.4;
}
.kstv-cart-item-name a:hover { color: #E50914; }
.kstv-cart-item-meta { color: #757575; font-size: 13px; margin-top: 6px; }
.kstv-cart-item-meta dl, .kstv-cart-item-meta dd { margin: 0; display: inline; }
.kstv-cart-item-price { color: #757575; font-size: 14px; margin-top: 6px; }
.kstv-cart-item-price .price, .kstv-cart-item-price del, .kstv-cart-item-price ins { font-size: 14px !important; }

/* степпер количества */
.kstv-cart-item-qty {
	display: flex; align-items: center; gap: 8px;
}
.kstv-qty-btn {
	width: 30px; height: 30px;
	border-radius: 50%;
	border: 1px solid #333;
	background: transparent;
	color: #fff; font-size: 16px; line-height: 1;
	cursor: pointer; transition: .2s;
}
.kstv-qty-btn:hover { border-color: #E50914; color: #E50914; }
.kstv-cart-item-qty input.qty {
	width: 42px; text-align: center;
	background: transparent; border: none; color: #fff;
	font-size: 15px; font-weight: 600;
	-moz-appearance: textfield; appearance: textfield;
}
.kstv-cart-item-qty input.qty::-webkit-outer-spin-button,
.kstv-cart-item-qty input.qty::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.kstv-qty-solo { color: #fff; font-weight: 600; padding: 0 10px; }

.kstv-cart-item-total {
	min-width: 100px; text-align: right;
	color: #fff; font-weight: 700; font-size: 16px;
}
.kstv-cart-item-total .price { font-size: 16px !important; }

.kstv-cart-item-remove {
	color: #757575; display: inline-flex; align-items: center; justify-content: center;
	width: 32px; height: 32px; border-radius: 8px; transition: .2s;
}
.kstv-cart-item-remove:hover { color: #E50914; background: rgba(229,9,20,.1); }

/* ---------- купон ---------- */
.kstv-cart-coupon { margin-top: 20px; }
.kstv-coupon-toggle {
	display: inline-flex; align-items: center; gap: 8px;
	background: none; border: none; cursor: pointer;
	color: #B3B3B3; font-size: 14px; padding: 6px 0;
}
.kstv-coupon-toggle:hover { color: #fff; }
.kstv-coupon-toggle svg { transition: transform .3s; }
.kstv-coupon-toggle.open svg { transform: rotate(180deg); }
.kstv-coupon-form { display: flex; gap: 10px; margin-top: 12px; }
.kstv-coupon-form input {
	flex: 1; max-width: 260px;
	background: #141414; border: 1px solid #333; border-radius: 8px;
	color: #fff; padding: 10px 14px; font-size: 14px;
}
.kstv-coupon-form input:focus { outline: none; border-color: #E50914; }
.kstv-coupon-apply {
	background: #333; color: #fff; border: none; border-radius: 8px;
	padding: 10px 20px; font-weight: 600; cursor: pointer; transition: .2s;
}
.kstv-coupon-apply:hover { background: #E50914; }

/* ---------- итоговая карточка ---------- */
.kstv-cart-summary {
	background: var(--bg-secondary, #181818);
	border: 1px solid var(--border-color, #2a2a2a);
	border-radius: 12px;
	padding: 26px;
	position: sticky; top: 100px;
}
.kstv-summary-title {
	font-size: 18px; font-weight: 800; color: #fff;
	margin: 0 0 20px; text-transform: uppercase; letter-spacing: .5px;
}
.kstv-summary-row {
	display: flex; justify-content: space-between; gap: 16px;
	color: #B3B3B3; font-size: 15px; margin-bottom: 14px;
}
.kstv-summary-row em { color: #757575; font-style: normal; font-size: 13px; }
.kstv-summary-discount span:last-child { color: #46d369; font-weight: 700; }
.kstv-summary-total {
	display: flex; justify-content: space-between; align-items: center;
	border-top: 1px solid #333; margin-top: 18px; padding-top: 18px;
	color: #fff; font-size: 17px; font-weight: 700;
}
.kstv-summary-total strong { font-size: 26px; color: #fff; }
.kstv-summary-total .price { color: #fff !important; font-size: 26px !important; }
.kstv-checkout-btn { width: 100%; margin-top: 22px; justify-content: center; }
.kstv-summary-continue { text-align: center; margin: 16px 0 0; }
.kstv-summary-continue a { color: #757575; font-size: 14px; text-decoration: underline; }
.kstv-summary-continue a:hover { color: #fff; }

/* ---------- пустая корзина ---------- */
.kstv-cart-empty {
	text-align: center; padding: 80px 20px;
	background: var(--bg-secondary, #181818);
	border: 1px solid var(--border-color, #2a2a2a);
	border-radius: 12px;
}
.kstv-cart-empty h2 { color: #fff; font-size: 30px; font-weight: 800; margin: 24px 0 12px; }
.kstv-cart-empty p { color: #B3B3B3; margin-bottom: 30px; }

/* ---------- кросс-сейлы как похожие товары ---------- */
.cross-sells { max-width: 1200px; margin: 50px auto 0; }
.cross-sells h2 {
	font-size: 24px; font-weight: 700; color: #fff;
	margin-bottom: 25px; padding-left: 15px; border-left: 4px solid #E50914;
}
.cross-sells ul.products {
	display: flex !important; flex-wrap: nowrap !important;
	overflow-x: auto !important; gap: 20px !important;
	padding: 10px 5px 30px !important;
	scrollbar-width: thin; scrollbar-color: #E50914 #181818;
	-webkit-overflow-scrolling: touch;
}
.cross-sells ul.products li.product { min-width: 200px; max-width: 200px; }

/* ---------- страница "спасибо" ---------- */
.kstv-thankyou { max-width: 720px; margin: 0 auto; padding: 20px 0 40px; }
.kstv-ty-card {
	background: var(--bg-secondary, #181818);
	border: 1px solid var(--border-color, #2a2a2a);
	border-radius: 12px; padding: 50px 40px; text-align: center;
}
.kstv-ty-icon {
	width: 72px; height: 72px; margin: 0 auto 24px;
	border-radius: 50%; background: rgba(70,211,105,.12); color: #46d369;
	display: flex; align-items: center; justify-content: center;
}
.kstv-ty-error .kstv-ty-icon { background: rgba(229,9,20,.12); color: #E50914; font-size: 34px; font-weight: 800; }
.kstv-ty-card h1 { color: #fff; font-size: 32px; font-weight: 800; margin: 0 0 12px; }
.kstv-ty-sub { color: #B3B3B3; margin-bottom: 30px; }
.kstv-ty-details {
	max-width: 460px; margin: 0 auto 30px; text-align: left;
	border-top: 1px solid #333; padding-top: 20px;
}
.kstv-ty-row { display: flex; justify-content: space-between; gap: 16px; color: #B3B3B3; font-size: 15px; margin-bottom: 12px; }
.kstv-ty-row strong { color: #fff; }
.kstv-ty-total { border-top: 1px solid #333; padding-top: 14px; margin-top: 14px; }
.kstv-ty-total strong { font-size: 20px; }
.kstv-ty-actions { display: flex; gap: 20px; justify-content: center; align-items: center; flex-wrap: wrap; }
.kstv-ty-link { color: #757575; text-decoration: underline; }
.kstv-ty-link:hover { color: #fff; }

/* ---------- адаптив ---------- */
@media (max-width: 960px) {
	.kstv-cart-grid { grid-template-columns: 1fr; }
	.kstv-cart-summary { position: static; }
}
@media (max-width: 640px) {
	.kstv-cart-item {
		grid-template-columns: 60px 1fr 32px;
		grid-template-areas:
			"thumb info remove"
			"thumb qty total";
		row-gap: 14px;
	}
	.kstv-cart-item-thumb { grid-area: thumb; }
	.kstv-cart-item-thumb img { width: 60px; height: 84px; }
	.kstv-cart-item-info { grid-area: info; }
	.kstv-cart-item-remove { grid-area: remove; }
	.kstv-cart-item-qty { grid-area: qty; justify-content: flex-start; }
	.kstv-cart-item-total { grid-area: total; }
}

.kstv-wc-content {
	background: transparent !important;
	padding: 0 !important;
	border: none !important;
	border-radius: 0 !important;
}

/* ============================================
   KSTV CHECKOUT v18 — СВОЯ ВЁРСТКА ОФОРМЛЕНИЯ
============================================ */
.kstv-checkout { max-width: 1200px; margin: 0 auto; color: var(--text-white, #fff); }
.kstv-checkout-grid { display: grid; grid-template-columns: 1fr 460px; gap: 30px; align-items: start; }

.kstv-checkout-card {
	background: var(--bg-secondary, #181818);
	border: 1px solid var(--border-color, #2a2a2a);
	border-radius: 12px;
	padding: 26px;
	margin-bottom: 20px;
}
.kstv-checkout-title {
	font-size: 18px; font-weight: 800; color: #fff;
	margin: 0 0 16px; text-transform: uppercase; letter-spacing: .5px;
}
.kstv-checkout-note { color: #888; font-size: 13px; margin: 0 0 18px; line-height: 1.5; }

/* поля (email) */
.kstv-billing-fields .form-row { margin-bottom: 16px; }
.kstv-billing-fields label {
	display: block; color: #aaa; font-size: 13px; font-weight: 600; margin-bottom: 6px;
}
.kstv-billing-fields label .required { color: #E50914; }
.kstv-billing-fields input.input-text,
.kstv-billing-fields select,
.kstv-billing-fields textarea {
	width: 100%; padding: 12px 14px;
	background: #141414; border: 1px solid #333; border-radius: 8px;
	color: #fff; font-size: 15px;
}
.kstv-billing-fields input:focus {
	border-color: #E50914; outline: none;
	box-shadow: 0 0 0 3px rgba(229,9,20,.15);
}
.kstv-checkout-login-hint { color: #888; font-size: 14px; }
.kstv-checkout-login-hint a { color: #E50914; }

/* состав заказа */
.kstv-review-items {
	display: flex; flex-direction: column; gap: 12px;
	margin-bottom: 16px; padding-bottom: 16px; border-bottom: 1px solid #333;
}
.kstv-review-item { display: flex; justify-content: space-between; gap: 14px; font-size: 14px; color: #ccc; }
.kstv-review-item-qty { color: #757575; margin-left: 6px; }
.kstv-review-item-total { color: #fff; font-weight: 600; white-space: nowrap; }
.kstv-review-item-total .price { font-size: 14px !important; }
.kstv-review-row { display: flex; justify-content: space-between; color: #B3B3B3; font-size: 14px; margin-bottom: 10px; }
.kstv-review-discount span:last-child { color: #46d369; font-weight: 700; }
.kstv-review-total {
	display: flex; justify-content: space-between; align-items: center;
	border-top: 1px solid #333; margin-top: 12px; padding-top: 14px;
	font-size: 16px; font-weight: 700; color: #fff;
}
.kstv-review-total strong { font-size: 24px; }
.kstv-review-total .price { color: #fff !important; font-size: 24px !important; }

/* способы оплаты — карточки */
#payment .payment_methods {
	margin: 18px 0 0; padding: 0; list-style: none;
	display: flex; flex-direction: column; gap: 10px; border: none;
}
#payment .payment_methods li.wc_payment_method {
	background: #141414; border: 1px solid #333; border-radius: 10px;
	padding: 14px 16px; transition: border-color .2s;
}
#payment .payment_methods li.wc_payment_method:hover { border-color: #555; }
#payment .payment_methods li.wc_payment_method label {
	display: flex; align-items: center; gap: 10px;
	cursor: pointer; color: #fff; font-size: 15px; font-weight: 600; margin: 0;
}
#payment .payment_methods input[type="radio"] { accent-color: #E50914; width: 18px; height: 18px; flex-shrink: 0; }
#payment .payment_methods .payment_box {
	color: #999; font-size: 13px; margin: 10px 0 0 28px; background: transparent;
}
#payment .payment_methods .payment_box::before { display: none; }

/* кнопка оплаты */
.kstv-place-order-wrap { margin-top: 20px; }
.kstv-terms {
	display: flex; gap: 10px; align-items: flex-start;
	color: #aaa; font-size: 13px; margin-bottom: 16px; cursor: pointer;
}
.kstv-terms input { accent-color: #E50914; width: 18px; height: 18px; margin-top: 2px; flex-shrink: 0; }
.kstv-terms a { color: #E50914; }
#place_order.kstv-place-order {
	width: 100%; justify-content: center;
	font-size: 16px; padding: 16px; border: none; cursor: pointer;
}
#place_order.kstv-place-order:hover { background: #B20710; }
.kstv-no-payment, .kstv-no-gateways { color: #888; font-size: 14px; }

/* гость без guest checkout */
.kstv-checkout-login-card {
	text-align: center; padding: 60px 30px;
	background: var(--bg-secondary, #181818);
	border: 1px solid var(--border-color, #2a2a2a);
	border-radius: 12px;
}
.kstv-checkout-login-card h2 { color: #fff; font-size: 28px; font-weight: 800; margin-bottom: 12px; }
.kstv-checkout-login-card p { color: #B3B3B3; margin-bottom: 26px; }

@media (max-width: 960px) {
	.kstv-checkout-grid { grid-template-columns: 1fr; }
}

/* ---------- пустая корзина: подборка подписок ---------- */
.kstv-empty-picks { margin-top: 40px; }
.kstv-picks-title {
	font-size: 24px; font-weight: 700; color: #fff;
	margin-bottom: 20px; padding-left: 15px; border-left: 4px solid #E50914;
}
.kstv-picks-row {
	display: flex; gap: 20px; overflow-x: auto;
	padding: 10px 5px 30px;
	scrollbar-width: thin; scrollbar-color: #E50914 #181818;
	-webkit-overflow-scrolling: touch;
}
.kstv-picks-row::-webkit-scrollbar { height: 8px; }
.kstv-picks-row::-webkit-scrollbar-track { background: #181818; border-radius: 4px; }
.kstv-picks-row::-webkit-scrollbar-thumb { background: #E50914; border-radius: 4px; }
.kstv-pick-card {
	min-width: 200px; max-width: 200px;
	background: #181818; border: 1px solid #2a2a2a; border-radius: 8px;
	overflow: hidden; display: flex; flex-direction: column;
	transition: transform .3s, box-shadow .3s;
}
.kstv-pick-card:hover { transform: scale(1.04); box-shadow: 0 8px 32px rgba(0,0,0,.5); }
.kstv-pick-link { text-decoration: none; display: block; }
.kstv-pick-thumb img { width: 100%; height: 260px; object-fit: cover; display: block; }
.kstv-pick-name { color: #fff; font-size: 13px; font-weight: 600; line-height: 1.4; padding: 12px 12px 6px; }
.kstv-pick-price { padding: 0 12px 12px; }
.kstv-pick-price .price { font-size: 14px !important; }
.kstv-pick-add {
	margin: 0 12px 14px; padding: 10px; text-align: center;
	background: #E50914; color: #fff; border-radius: 6px;
	font-weight: 600; font-size: 13px; text-decoration: none; transition: background .2s;
}
.kstv-pick-add:hover { background: #B20710; }
@media (max-width: 768px) {
	.kstv-pick-card { min-width: 160px; max-width: 160px; }
	.kstv-pick-thumb img { height: 210px; }
}

/* ===== ПУСТАЯ КОРЗИНА ===== */
.kstv-cart-empty {
padding: 60px 20px;
text-align: center;
}

.kstv-empty-content {
max-width: 600px;
margin: 0 auto 60px;
}

.kstv-empty-icon {
margin-bottom: 30px;
}

.kstv-empty-icon svg {
color: #e50914;
opacity: 0.8;
}

.kstv-empty-title {
font-size: 32px;
font-weight: 700;
color: #fff;
margin-bottom: 16px;
}

.kstv-empty-text {
font-size: 18px;
color: #999;
line-height: 1.6;
margin-bottom: 30px;
}

.kstv-empty-btn {
display: inline-block;
padding: 16px 40px;
background: #e50914;
color: #fff;
text-decoration: none;
border-radius: 4px;
font-size: 16px;
font-weight: 600;
transition: background 0.3s;
}

.kstv-empty-btn:hover {
background: #f40612;
}

/* ===== РЕКОМЕНДАЦИИ ===== */
.kstv-empty-picks {
max-width: 1400px;
margin: 0 auto;
padding: 0 20px;
}

.kstv-picks-title {
font-size: 24px;
font-weight: 700;
color: #fff;
margin-bottom: 30px;
text-align: left;
}

.kstv-picks-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
gap: 24px;
}

.kstv-pick-card {
background: #1a1a1a;
border-radius: 8px;
overflow: hidden;
transition: transform 0.3s, box-shadow 0.3s;
}

.kstv-pick-card:hover {
transform: translateY(-4px);
box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4);
}

.kstv-pick-link {
display: block;
text-decoration: none;
color: inherit;
}

.kstv-pick-thumb {
position: relative;
aspect-ratio: 16/9;
overflow: hidden;
background: #2a2a2a;
}

.kstv-pick-thumb img {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 0.3s;
}

.kstv-pick-card:hover .kstv-pick-thumb img {
transform: scale(1.05);
}

.kstv-pick-badge {
position: absolute;
top: 12px;
right: 12px;
background: #e50914;
color: #fff;
padding: 4px 8px;
border-radius: 4px;
font-size: 12px;
font-weight: 700;
}

.kstv-pick-info {
padding: 16px;
}

.kstv-pick-name {
font-size: 16px;
font-weight: 600;
color: #fff;
margin-bottom: 8px;
line-height: 1.4;
}

.kstv-pick-price {
font-size: 14px;
color: #999;
}

.kstv-pick-price .price ins {
color: #e50914;
text-decoration: none;
font-weight: 600;
}

.kstv-pick-price .price del {
color: #666;
margin-right: 8px;
}

.kstv-pick-add {
display: flex;
align-items: center;
justify-content: center;
gap: 8px;
width: 100%;
padding: 12px;
background: #2a2a2a;
color: #fff;
text-decoration: none;
font-size: 14px;
font-weight: 600;
transition: background 0.3s;
border-top: 1px solid #333;
}

.kstv-pick-add:hover {
background: #e50914;
}

/* Адаптивность */
@media (max-width: 768px) {
.kstv-empty-title {
font-size: 24px;
}

.kstv-empty-text {
font-size: 16px;
}

.kstv-picks-grid {
grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
gap: 16px;
}
}

/* ===== КОРЗИНА — NETFLIX STYLE ===== */
.kstv-cart {
    max-width: 1400px;
    margin: 0 auto;
    padding: 40px 20px;
}

/* Пустая корзина */
.kstv-cart-empty {
    text-align: center;
    padding: 80px 20px;
}

.kstv-cart-empty svg {
    margin-bottom: 24px;
    opacity: 0.6;
}

.kstv-cart-empty h2 {
    font-size: 28px;
    color: #fff;
    margin-bottom: 16px;
    font-weight: 600;
}

.kstv-cart-empty p {
    font-size: 16px;
    color: #999;
    margin-bottom: 32px;
}

/* Рекомендации */
.kstv-empty-picks {
    margin-top: 60px;
    padding: 40px 20px;
    background: #141414;
}

.kstv-picks-title {
    font-size: 24px;
    color: #fff;
    margin-bottom: 30px;
    max-width: 1400px;
    margin-left: auto;
    margin-right: auto;
}

.kstv-picks-row {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 24px;
    max-width: 1400px;
    margin: 0 auto;
}

.kstv-pick-card {
    background: #1a1a1a;
    border-radius: 8px;
    overflow: hidden;
    transition: transform 0.3s;
}

.kstv-pick-card:hover {
    transform: translateY(-4px);
}

.kstv-pick-link {
    display: block;
    text-decoration: none;
    color: inherit;
}

.kstv-pick-thumb {
    position: relative;
    aspect-ratio: 16/9;
    background: #2a2a2a;
}

.kstv-pick-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.kstv-pick-name {
    padding: 16px;
    color: #fff;
    font-size: 16px;
    font-weight: 600;
}

.kstv-pick-price {
    padding: 0 16px 16px;
    color: #e50914;
    font-weight: 600;
}

.kstv-pick-add {
    display: block;
    padding: 12px;
    background: #2a2a2a;
    color: #fff;
    text-align: center;
    text-decoration: none;
    transition: background 0.3s;
}

.kstv-pick-add:hover {
    background: #e50914;
}

/* Сетка корзины */
.kstv-cart-grid {
    display: grid;
    grid-template-columns: 1fr 380px;
    gap: 40px;
    align-items: start;
}

/* Товары */
.kstv-cart-items {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.kstv-cart-item {
    display: grid;
    grid-template-columns: 100px 1fr 120px 140px 40px;
    gap: 20px;
    align-items: center;
    background: #1a1a1a;
    padding: 20px;
    border-radius: 8px;
}

.kstv-cart-item-thumb img {
    width: 100%;
    border-radius: 4px;
}

.kstv-cart-item-name {
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 8px;
}

.kstv-cart-item-name a {
    color: inherit;
    text-decoration: none;
}

.kstv-cart-item-price {
    color: #999;
    font-size: 14px;
}

.kstv-cart-item-qty {
    display: flex;
    align-items: center;
    gap: 12px;
}

.kstv-qty-btn {
    width: 32px;
    height: 32px;
    border: 1px solid #333;
    background: #2a2a2a;
    color: #fff;
    border-radius: 4px;
    cursor: pointer;
    transition: background 0.3s;
}

.kstv-qty-btn:hover {
    background: #e50914;
}

.kstv-cart-item-total {
    color: #fff;
    font-size: 18px;
    font-weight: 600;
    text-align: right;
}

.kstv-cart-item-remove {
    color: #666;
    cursor: pointer;
    transition: color 0.3s;
}

.kstv-cart-item-remove:hover {
    color: #e50914;
}

/* Итого */
.kstv-cart-summary {
    background: #1a1a1a;
    padding: 24px;
    border-radius: 8px;
    position: sticky;
    top: 100px;
}

.kstv-summary-title {
    font-size: 20px;
    color: #fff;
    margin-bottom: 20px;
    font-weight: 600;
}

.kstv-summary-row {
    display: flex;
    justify-content: space-between;
    padding: 12px 0;
    color: #999;
    border-bottom: 1px solid #333;
}

.kstv-summary-total {
    display: flex;
    justify-content: space-between;
    padding: 20px 0;
    color: #fff;
    font-size: 20px;
    font-weight: 700;
}

.kstv-checkout-btn {
    width: 100%;
    margin-top: 20px;
}

.kstv-summary-continue {
    text-align: center;
    margin-top: 16px;
}

.kstv-summary-continue a {
    color: #999;
    text-decoration: underline;
}

/* Адаптивность */
@media (max-width: 968px) {
    .kstv-cart-grid {
        grid-template-columns: 1fr;
    }
    
    .kstv-cart-item {
        grid-template-columns: 80px 1fr;
        gap: 12px;
    }
    
    .kstv-cart-item-qty,
    .kstv-cart-item-total,
    .kstv-cart-item-remove {
        grid-column: 2;
    }
}

/* Скрыть стандартные WooCommerce стили */
.woocommerce-cart-form .cart_item td {
    border: none !important;
}

.woocommerce-cart-form .actions {
    display: none !important;
}

.woocommerce-cart-form .cart-collaterals {
    display: none !important;
}




/* ============================================
СКРЫТЬ СТАНДАРТНЫЕ ИТОГИ WOOCOMMERCE
============================================ */
.woocommerce-cart-form .cart-collaterals {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    overflow: hidden !important;
}

.woocommerce-cart-form .cart_totals {
    display: none !important;
}

.woocommerce-cart-form .wc-proceed-to-checkout {
    display: none !important;
}

/* Скрыть фиолетовую кнопку "Оформить заказ" */
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce-cart .wc-proceed-to-checkout button,
.woocommerce-cart-form .checkout-button {
    display: none !important;
}

/* Скрыть стандартные действия с корзиной */
.woocommerce-cart-form .actions {
    display: none !important;
}

/* Убрать лишние отступы */
.woocommerce-cart .woocommerce {
    padding: 0 !important;
}