/* SHOPSTYLE — корзина, боковая корзина, чекаут, «спасибо» (ТЗ п.6).
   Только CSS поверх шаблонов Woodmart/WC; палитра — переменные из style.css. */

/* ---------- заголовки секций (единый стиль) ---------- */
.woocommerce-cart .cart_totals h2, /* Woodmart 8: h2 внутри .cart-totals-inner */
.woocommerce-checkout #order_review_heading,
.woocommerce-billing-fields > h3,
.woocommerce-shipping-fields > h3,
.woocommerce-additional-fields > h3,
.cart-collaterals .cross-sells .title,
.ss-empty-cart-viewed .title {
	font-size: 13px;
	font-weight: 500;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--ss-text);
}

/* ---------- боковая корзина (панель) ---------- */

/* бар «до бесплатной доставки» — тонкая линия, без ярких пятен */
.wd-free-progress-bar { --wd-primary-color: var(--ss-accent); margin: 12px 0 4px; }
.wd-free-progress-bar .wd-free-progress-msg,
.wd-free-progress-bar .wd-progress-msg { font-size: 12px; color: var(--ss-muted); letter-spacing: .02em; }
.wd-free-progress-bar .progress-area { height: 3px; background: var(--ss-line); border-radius: 0; }
.wd-free-progress-bar .progress-area .progress-bar { background: var(--ss-accent); border-radius: 0; }

/* ---------- страница корзины ---------- */
.woocommerce-cart .shop_table.cart th { font-size: 12px; font-weight: 500; letter-spacing: .1em; text-transform: uppercase; color: var(--ss-muted); border-bottom: 1px solid var(--ss-line); }
.woocommerce-cart .shop_table.cart td { border-bottom: 1px solid var(--ss-line); vertical-align: middle; }
.woocommerce-cart .shop_table.cart .product-name a { font-weight: 400; }
.woocommerce-cart .shop_table.cart .variation { color: var(--ss-muted); font-size: 13px; }      /* цвет / размер */
.woocommerce-cart .shop_table.cart .variation dt, .woocommerce-cart .shop_table.cart .variation dd { display: inline; margin: 0 4px 0 0; font-weight: 400; }
.woocommerce-cart .shop_table.cart .product-remove .remove { color: var(--ss-muted); border-color: transparent; }
.woocommerce-cart .shop_table.cart .product-remove .remove:hover { color: var(--ss-accent); }
.woocommerce-cart .quantity .qty { background: transparent; border: 0; border-bottom: 1px solid var(--ss-line); border-radius: 0; box-shadow: none; }

/* промокод: свёрнут, раскрывается по ссылке (assets/page-cart.js) */
.woocommerce-cart .cart-actions .coupon label { display: none; }
.woocommerce-cart .ss-coupon-toggle { display: inline-block; font-size: 13px; color: var(--ss-muted); text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.woocommerce-cart .ss-coupon-toggle:hover { color: var(--ss-accent); }
.woocommerce-cart .coupon.ss-collapsed .input-text,
.woocommerce-cart .coupon.ss-collapsed .button { display: none; }
.woocommerce-cart .coupon .input-text { background: transparent; border: 0; border-bottom: 1px solid var(--ss-line); border-radius: 0; box-shadow: none; max-width: 200px; }
.woocommerce-cart .coupon .input-text:focus { border-bottom-color: var(--ss-text); }
.woocommerce-cart .cart-actions button[name="update_cart"] { background: transparent; border: 1px solid var(--ss-line); color: var(--ss-text); box-shadow: none; }

/* итоги */
.woocommerce-cart .cart_totals { background: transparent; border: 1px solid var(--ss-line); padding: 24px; }
.woocommerce-cart .cart-totals-inner { border: 0; padding: 0; background: transparent; box-shadow: none; } /* Woodmart 8 рисует свою рамку — оставляем одну */
.woocommerce-cart .cart_totals .shop_table th, .woocommerce-cart .cart_totals .shop_table td { border-bottom: 1px solid var(--ss-line); font-weight: 400; }
.woocommerce-cart .cart_totals .order-total th, .woocommerce-cart .cart_totals .order-total td { font-weight: 500; font-size: 16px; }
.woocommerce-cart .wc-proceed-to-checkout .button { width: 100%; }

/* «Дополните образ» — кросс-селлы; «Вы смотрели» — на пустой корзине */
.cart-collaterals .cross-sells { margin-top: 56px; }
.ss-empty-cart-viewed { margin-top: 48px; }
/* Woodmart 8: пустая корзина = h2.wd-empty-block-title (текст WC, фильтр wc_empty_cart_message) + p.wd-empty-block-text (опция empty_cart_text) */
.woocommerce-cart .wd-empty-block-title { font-size: 15px; letter-spacing: .12em; text-transform: uppercase; font-weight: 500; text-align: center; margin-top: 40px; }
.woocommerce-cart .wd-empty-block-title:before { display: none; }
.woocommerce-cart .wd-empty-block-text { color: var(--ss-muted); max-width: 420px; margin: 8px auto 0; text-align: center; }
.woocommerce-cart .return-to-shop { text-align: center; margin-top: 20px; }
.woocommerce-cart .return-to-shop .button { background: transparent; border: 1px solid var(--ss-text); color: var(--ss-text); box-shadow: none; }
.woocommerce-cart .return-to-shop .button:hover { background: var(--ss-text); color: var(--ss-bg); }

/* ---------- чекаут: один экран, три визуальных шага ---------- */
.woocommerce-checkout .woocommerce-billing-fields,
.woocommerce-checkout .woocommerce-shipping-fields,
.woocommerce-checkout .woocommerce-additional-fields,
.woocommerce-checkout .checkout-order-review { padding: 24px 0; border-top: 1px solid var(--ss-line); }
.woocommerce-checkout .woocommerce-billing-fields { border-top: 0; padding-top: 0; }

/* заголовки шагов: текст h3 гасим, подпись рисуем через :before */
.woocommerce-checkout .woocommerce-billing-fields > h3,
.woocommerce-checkout .woocommerce-shipping-fields > h3#ship-to-different-address,
.woocommerce-checkout #order_review_heading { font-size: 0; line-height: 0; margin-bottom: 18px; }
.woocommerce-checkout .woocommerce-billing-fields > h3:before,
.woocommerce-checkout #ship-to-different-address:before,
.woocommerce-checkout #order_review_heading:before,
.woocommerce-checkout #payment:before {
	display: block; font-family: var(--wd-text-font); font-size: 13px; line-height: 1.4; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--ss-text);
}
.woocommerce-checkout .woocommerce-billing-fields > h3:before { content: "1 · Контакты"; }
.woocommerce-checkout #ship-to-different-address:before { content: "2 · Доставка"; margin-bottom: 10px; }
.woocommerce-checkout #ship-to-different-address label { font-size: 14px; line-height: 1.4; font-weight: 400; text-transform: none; letter-spacing: 0; color: var(--ss-muted); }
.woocommerce-checkout #order_review_heading:before { content: "Ваш заказ"; }
.woocommerce-checkout #payment:before { content: "3 · Оплата"; margin: 24px 0 14px; }
.woocommerce-checkout .woocommerce-additional-fields > h3 { font-size: 0; }
.woocommerce-checkout .woocommerce-additional-fields > h3:before { content: "Комментарий к заказу"; font-size: 13px; }
/* «способ доставки» внутри таблицы заказа — тоже часть шага 2 */
.woocommerce-checkout .woocommerce-shipping-totals th { font-size: 12px; letter-spacing: .1em; text-transform: uppercase; font-weight: 500; vertical-align: top; }
.woocommerce-checkout #shipping_method li { padding: 6px 0; border-bottom: 1px solid var(--ss-line); }
.woocommerce-checkout #shipping_method li:last-child { border-bottom: 0; }
.woocommerce-checkout #shipping_method label { font-size: 13px; color: var(--ss-text); }
.woocommerce-checkout #shipping_method label .amount { color: var(--ss-muted); }

/* поля: прозрачные, только нижняя линия (ТЗ п.8) */
.woocommerce-checkout .form-row label { font-size: 12px; letter-spacing: .04em; color: var(--ss-muted); margin-bottom: 2px; }
.woocommerce-checkout .form-row label .required { color: var(--ss-accent); text-decoration: none; }
.woocommerce-checkout .form-row .input-text,
.woocommerce-checkout .form-row textarea { padding-left: 14px; padding-right: 14px; } /* поля — серые «таблетки» из ui.css; прежняя «только линия» без отступа прижимала текст к краю */
.woocommerce-checkout .form-row .input-text:focus,
.woocommerce-checkout .form-row textarea:focus,
.woocommerce-checkout .form-row select:focus { border-bottom-color: var(--ss-text); }
.woocommerce-checkout .form-row.woocommerce-invalid .input-text,
.woocommerce-checkout .form-row.woocommerce-invalid select,
.woocommerce-checkout .form-row.woocommerce-invalid .select2-selection--single { border-bottom-color: var(--ss-accent); }
.woocommerce-checkout .form-row.woocommerce-validated .input-text { border-bottom-color: var(--ss-line); }

/* ошибки сразу под полем (WC 11 выводит .checkout-inline-error-message сам) */
.woocommerce-checkout .checkout-inline-error-message { margin: 4px 0 0; font-size: 12px; line-height: 1.4; color: var(--ss-accent); }
.woocommerce-checkout .form-row.woocommerce-invalid label { color: var(--ss-accent); }

/* таблица заказа + оплата */
.woocommerce-checkout .checkout-order-review { background: transparent; border: 1px solid var(--ss-line); padding: 24px; box-shadow: none; }
.woocommerce-checkout .checkout-order-review::before, .woocommerce-checkout .checkout-order-review::after { display: none; } /* «чек» Woodmart 8 */
.woocommerce-checkout .woocommerce-checkout-review-order-table th,
.woocommerce-checkout .woocommerce-checkout-review-order-table td { border-bottom: 1px solid var(--ss-line); font-weight: 400; }
.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name .variation { color: var(--ss-muted); font-size: 12px; }
.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total th,
.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total td { font-weight: 500; font-size: 16px; }
.woocommerce-checkout #payment { background: transparent; }
.woocommerce-checkout #payment .wc_payment_methods { border: 0; }
.woocommerce-checkout #payment .wc_payment_method { padding: 8px 0; border-bottom: 1px solid var(--ss-line); }
.woocommerce-checkout #payment .wc_payment_method:last-child { border-bottom: 0; }
.woocommerce-checkout #payment .payment_box { color: var(--ss-muted); font-size: 13px; padding: 10px 14px; margin: 6px 0 0; }
.woocommerce-checkout #payment .payment_box:before { display: none; }
.woocommerce-checkout .woocommerce-privacy-policy-text { font-size: 12px; color: var(--ss-muted); }
.woocommerce-checkout #place_order { width: 100%; margin-top: 8px; }

/* сообщения сверху: сдержанно, без красной плашки */
.woocommerce-checkout .woocommerce-NoticeGroup-checkout .woocommerce-error { background: transparent; border: 1px solid var(--ss-accent); color: var(--ss-text); }

/* ---------- телефон: итог прилипает снизу ---------- */
@media (max-width: 767.98px) {
	.woocommerce-checkout .checkout-order-review { padding: 16px; }
	.ss-checkout-bar {
		position: fixed; left: 0; right: 0; bottom: 0; z-index: 390;
		display: flex; align-items: center; justify-content: space-between; gap: 12px;
		padding: 10px 16px calc(10px + env(safe-area-inset-bottom));
		background: var(--ss-bg); border-top: 1px solid var(--ss-line);
	}
	.ss-checkout-bar__label { font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: var(--ss-muted); }
	.ss-checkout-bar__total { font-size: 16px; font-weight: 500; }
	.ss-checkout-bar .button { margin: 0; padding: 10px 18px; font-size: 12px; }
	body.woocommerce-checkout.ss-has-bar { padding-bottom: 72px; }
	.woocommerce-cart .cart_totals { padding: 16px; }
}
/* ponytail: sticky-bar только через JS-клон (position:sticky у tfoot держится лишь внутри таблицы) */

/* ---------- страница «спасибо» ---------- */
.woocommerce-order .woocommerce-thankyou-order-received { font-size: 16px; line-height: 1.6; max-width: 640px; }
.woocommerce-order .woocommerce-thankyou-order-received strong { font-weight: 500; }
.woocommerce-order .ss-thanks-list { list-style: none; margin: 16px 0 24px; padding: 0; max-width: 640px; }
.woocommerce-order .ss-thanks-list li { padding: 10px 0; border-bottom: 1px solid var(--ss-line); font-size: 14px; }
.woocommerce-order .ss-thanks-list li:last-child { border-bottom: 0; }
.woocommerce-order .ss-thanks-list a { color: var(--ss-accent); text-decoration: underline; text-underline-offset: 3px; }
.woocommerce-order .ss-thanks-list .ss-ph { color: var(--ss-accent); font-weight: 500; }
.woocommerce-order .woocommerce-order-overview { border: 1px solid var(--ss-line); padding: 16px 20px; margin-bottom: 32px; }
.woocommerce-order .woocommerce-order-overview li { font-size: 12px; letter-spacing: .06em; text-transform: uppercase; color: var(--ss-muted); border-color: var(--ss-line); }
.woocommerce-order .woocommerce-order-overview li strong { text-transform: none; letter-spacing: 0; color: var(--ss-text); font-weight: 500; }

/* дубль: стандартное «Ваша корзина пока пуста» WC скрываем, остаётся блок темы */
.woocommerce-cart .cart-empty.woocommerce-info,
.woocommerce-cart p.cart-empty{display:none}
.woocommerce-cart .wd-empty-block-text > h3{display:none} /* старый заголовок из опции, если остался */


/* ===== правки 14.09: шрифт крупнее, радиокнопки в стиле сайта, меньше рамок ===== */
.woocommerce-cart .shop_table.cart td,.woocommerce-cart .shop_table.cart .product-name a,.woocommerce-cart .cart_totals .shop_table th,.woocommerce-cart .cart_totals .shop_table td,
.woocommerce-checkout .woocommerce-checkout-review-order-table th,.woocommerce-checkout .woocommerce-checkout-review-order-table td,.woocommerce-checkout .form-row .input-text,.woocommerce-checkout .form-row select,.woocommerce-checkout .form-row textarea{font-size:15px}
.woocommerce-cart .shop_table.cart .variation,.woocommerce-checkout #shipping_method label,.woocommerce-checkout #payment .wc_payment_method label{font-size:14px}
.woocommerce-cart .cart_totals .order-total th,.woocommerce-cart .cart_totals .order-total td,.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total th,.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total td{font-size:18px}
.woocommerce-cart .cart_totals h2,.woocommerce-checkout #order_review_heading:before,.woocommerce-checkout .woocommerce-billing-fields > h3:before,.woocommerce-checkout #payment:before{font-size:14px}
.woocommerce-checkout .form-row label{font-size:13px}
/* одна рамка у блока итогов: Woodmart 8 рисует «чек» псевдоэлементами + вложенный .cart-totals-inner */
.woocommerce-cart .cart_totals::before,.woocommerce-cart .cart_totals::after,.woocommerce-cart .cart-totals-inner::before,.woocommerce-cart .cart-totals-inner::after{display:none!important}
.woocommerce-cart .cart-totals-inner{border:0!important;box-shadow:none!important;background:transparent!important;padding:0!important}
.woocommerce-cart .cart_totals{padding:28px}
.woocommerce-cart .cart_totals .shop_table th,.woocommerce-cart .cart_totals .shop_table td{padding:14px 0}
.woocommerce-cart .cart_totals .shipping td,.woocommerce-cart .cart_totals .shipping th{border-bottom:0}
.woocommerce-cart .cart_totals .shipping .woocommerce-shipping-destination,.woocommerce-cart .cart_totals .shipping .woocommerce-shipping-calculator{display:none}
.woocommerce-cart #shipping_method li{padding:7px 0;border:0}
.woocommerce-cart .coupon.ss-collapsed,.woocommerce-cart .cart-actions .coupon{border:0!important;box-shadow:none!important;background:transparent!important;padding:0!important}
/* радиокнопки: вместо синих системных — кружок в цвете сайта */
.woocommerce-cart #shipping_method input[type=radio],.woocommerce-checkout #shipping_method input[type=radio],.woocommerce-checkout #payment input[type=radio]{-webkit-appearance:none;appearance:none;width:16px;height:16px;margin:0 10px 0 0;border:1px solid var(--ss-text);border-radius:50%;background:transparent;vertical-align:-3px;position:relative;cursor:pointer;flex:0 0 auto}
.woocommerce-cart #shipping_method input[type=radio]:checked::after,.woocommerce-checkout #shipping_method input[type=radio]:checked::after,.woocommerce-checkout #payment input[type=radio]:checked::after{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--ss-text)}
.woocommerce-cart #shipping_method input[type=radio]:focus-visible,.woocommerce-checkout #shipping_method input[type=radio]:focus-visible{outline:2px solid var(--ss-accent);outline-offset:2px}
.woocommerce-cart #shipping_method label,.woocommerce-checkout #shipping_method label{display:inline;line-height:1.5}
.woocommerce-cart #shipping_method li,.woocommerce-checkout #shipping_method li{display:flex;align-items:flex-start;gap:0}
@media (max-width:767.98px){.woocommerce-cart .cart_totals{padding:20px}.woocommerce-cart .shop_table.cart td{padding:10px 8px}}

/* поля адреса скрыты при самовывозе (класс ставит inc/checkout.php и JS) */
.woocommerce-checkout .form-row.ss-ship-hidden{display:none!important}

/* согласие на SMS-рассылку (inc/checkout.php) — без пометки «(необязательно)» */
.woocommerce-checkout .ss-sms-consent .optional{display:none}

/* купон в оформлении: поле и кнопка одной строкой, без пустой рамки вокруг (владелец 26.10.2026: «проверь отступы и формы») */
.woocommerce-checkout form.checkout_coupon { display: flex; gap: 8px; align-items: stretch; padding: 12px; margin: 0 0 20px; border-radius: 14px; }
.woocommerce-checkout form.checkout_coupon .form-row { float: none; width: auto; margin: 0; padding: 0; }
.woocommerce-checkout form.checkout_coupon .form-row-first { flex: 1; }
.woocommerce-checkout form.checkout_coupon .input-text { width: 100%; height: 44px; padding: 0 14px; }
.woocommerce-checkout form.checkout_coupon .button { height: 44px; padding: 0 16px; white-space: nowrap; }
.woocommerce-checkout form.checkout_coupon .clear { display: none; }

/* блок «Ваш заказ» на телефоне: одна рамка вместо двух — цена «4 700 ₽» не переносится по цифрам */
@media (max-width: 768.98px) {
	.woocommerce-checkout .checkout-order-review { padding: 12px !important; } /* !important: у Woodmart селектор сильнее */
	.woocommerce-checkout .checkout-order-review .wd-table-wrapper { padding: 4px 12px !important; }
	.woocommerce-checkout .woocommerce-billing-fields { padding-bottom: 8px; }
}
.woocommerce-checkout .woocommerce-checkout-review-order-table .product-total { white-space: nowrap; }
/* блоки без полей (доставка по данным покупателя, комментарий убран — inc/cart.php) не оставляют пустых полос */
.woocommerce-checkout .woocommerce-shipping-fields:not(:has(.form-row, #ship-to-different-address)),
.woocommerce-checkout .woocommerce-additional-fields:not(:has(.form-row)) { display: none; }
.woocommerce-checkout #ss_ym_point { height: 76px; min-height: 0; }
/* пункты Ozon (shopstyle-ozon-delivery): каждый пункт — отдельная строка с кружком слева, а не сплошной текст */
.woocommerce-checkout #shipping_method .ss-ozon-point { display: block !important; position: relative; padding: 10px 0 10px 28px; border-top: 1px solid var(--ss-line); font-size: 13px; line-height: 1.45; cursor: pointer; }
.woocommerce-checkout #shipping_method .ss-ozon-point input[type="radio"] { position: absolute; left: 0; top: 12px; margin: 0; }
.woocommerce-checkout .ss-ozon-point small { color: var(--ss-muted); }
/* способ доставки: кружок слева от названия (подпись была на всю ширину и уезжала под кружок); пункты и поле адреса — строкой ниже */
.woocommerce-checkout #shipping_method > li { gap: 0 10px; }
.woocommerce-checkout #shipping_method > li > label { flex: 1; width: auto; min-width: 0; margin: 0; }
.woocommerce-checkout #shipping_method > li > :not(input):not(label) { flex-basis: 100%; }
