/* ============================================================
 * BND DESIGN 2026 v2 — СВЕТЛЫЙ ПРЕМИУМ МИНИМАЛИЗМ
 * Дата: 30.10.2026, вторая итерация
 * Задача: заказчик просил «светлый минимализм», «премиум».
 * Было: тёмный зелёный градиент, красные кнопки, агрессивные радиусы.
 * Стало: белое полотно, тонкий акцент, воздух, утончённая типографика.
 * ============================================================ */

:root {
    --bnd-ink: #0f172a;           /* slate-950 — главный текст */
    --bnd-ink-2: #334155;         /* slate-700 — вторичный текст */
    --bnd-ink-3: #64748b;         /* slate-500 — мета/подписи */
    --bnd-line: #e2e8f0;          /* slate-200 — делители */
    --bnd-surface: #ffffff;       /* чистое белое */
    --bnd-surface-2: #f8fafc;     /* slate-50 — фон страницы */
    --bnd-accent: #0d9488;        /* teal-600 — основной акцент */
    --bnd-accent-2: #0f766e;      /* teal-700 — hover */
    --bnd-accent-soft: #ccfbf1;   /* teal-100 — фокус-кольцо */
    --bnd-r-card: 16px;
    --bnd-r-btn: 10px;
    --bnd-r-sm: 8px;
    --bnd-sh-1: 0 1px 2px rgba(15, 23, 42, .04);
    --bnd-sh-2: 0 4px 14px rgba(15, 23, 42, .06);
    --bnd-sh-3: 0 8px 24px rgba(15, 23, 42, .08);
}

/* --- 1. ПОЛОТНО: чистое белое, никаких текстур ------------- */
body,
.ast-separate-container,
.ast-plain-container,
.site-content {
    background-image: none !important;
    background-color: var(--bnd-surface-2) !important;
}

/* --- 2. ТИПОГРАФИКА: системный стек, тонкие веса ------------ */
body,
body.ast-separate-container .entry-content,
.elementor-widget-text-editor {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
                 "Helvetica Neue", Arial, "Noto Sans", sans-serif;
    color: var(--bnd-ink);
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

h1, h2, h3, h4,
.elementor-heading-title {
    color: var(--bnd-ink);
    font-weight: 700;
    letter-spacing: -.02em;
    line-height: 1.15;
}

/* --- 3. HERO: светлый, минимальный, без градиента ------------ */
.elementor-element-6dec7691 {
    background-image: none !important;
    background-color: var(--bnd-surface) !important;
    border-radius: 0 !important;              /* никаких скруглений у края экрана */
    padding-bottom: 40px !important;
    border-bottom: 1px solid var(--bnd-line);
}

/* H1 — крупно, но не кричаще */
.elementor-element-6dec7691 .elementor-heading-title {
    color: var(--bnd-ink) !important;
    font-weight: 700 !important;
    font-size: clamp(28px, 6vw, 40px) !important;
    line-height: 1.1 !important;
    letter-spacing: -.02em !important;
    margin-bottom: 8px !important;
}

/* Подзаголовок — серый, читаемый */
.elementor-element-6dec7691 .elementor-widget-text-editor,
.elementor-element-6dec7691 .elementor-widget-text-editor li,
.elementor-element-6dec7691 .elementor-widget-text-editor p {
    color: var(--bnd-ink-2) !important;
    font-size: 15px !important;
    line-height: 1.6 !important;
}

.elementor-element-6dec7691 .elementor-widget-text-editor ul {
    list-style: none;
    margin: 16px 0 24px 0;
    padding: 0;
}

.elementor-element-6dec7691 .elementor-widget-text-editor li {
    position: relative;
    padding-left: 1.4em;
    margin-bottom: 8px;
    color: var(--bnd-ink-2) !important;
}

.elementor-element-6dec7691 .elementor-widget-text-editor li::before {
    content: "";
    position: absolute;
    left: 0;
    top: .55em;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--bnd-accent);
    opacity: .7;
}

/* Кнопка hero — тонкий контур, не заливка */
.elementor-element-6dec7691 .elementor-button {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 14px 28px !important;
    border: 1px solid var(--bnd-accent) !important;
    border-radius: var(--bnd-r-btn) !important;
    background: transparent !important;
    color: var(--bnd-accent) !important;
    font-weight: 600 !important;
    font-size: 15px !important;
    text-decoration: none !important;
    transition: background .18s ease, color .18s ease, border-color .18s ease !important;
    box-shadow: none !important;
}

.elementor-element-6dec7691 .elementor-button:hover,
.elementor-element-6dec7691 .elementor-button:focus {
    background: var(--bnd-accent) !important;
    color: #fff !important;
    border-color: var(--bnd-accent-2) !important;
}

/* --- 4. КАТЕГОРИИ: плитки-карточки -------------------------- */
.bnd-cats,
.bnd-cats-wrap {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
    gap: 12px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.bnd-cats a,
.bnd-cats-wrap a {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 18px 10px;
    background: var(--bnd-surface);
    border: 1px solid var(--bnd-line);
    border-radius: var(--bnd-r-card);
    box-shadow: var(--bnd-sh-1);
    text-align: center;
    text-decoration: none;
    color: var(--bnd-ink);
    font-weight: 500;
    font-size: 13.5px;
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}

.bnd-cats a:hover,
.bnd-cats-wrap a:hover,
.bnd-cat-btn:hover {
    transform: translateY(-2px);
    box-shadow: var(--bnd-sh-2);
    border-color: var(--bnd-accent);
    color: var(--bnd-accent);
}

.bnd-cats a:active,
.bnd-cats-wrap a:active,
.bnd-cats a:focus-visible,
.bnd-cats-wrap a:focus-visible,
.bnd-cat-btn:active,
.bnd-cat-btn:focus-visible {
    background: var(--bnd-accent) !important;
    border-color: var(--bnd-accent-2) !important;
    color: #fff !important;
    transform: translateY(0) !important;
    box-shadow: var(--bnd-sh-1) !important;
}

/* --- 5. КАРТОЧКИ ТОВАРОВ (каталог) -------------------------- */
ul.products li.product {
    background: var(--bnd-surface);
    border: 1px solid var(--bnd-line);
    border-radius: var(--bnd-r-card);
    box-shadow: var(--bnd-sh-1);
    padding: 12px !important;
    margin: 0 !important;
    overflow: hidden;
    transition: transform .16s ease, box-shadow .16s ease;
    display: flex;
    flex-direction: column;
}

ul.products li.product:hover {
    transform: translateY(-2px);
    box-shadow: var(--bnd-sh-2);
}

ul.products li.product .woocommerce-loop-product__link {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
}

ul.products li.product img {
    border-radius: 12px;
    background: var(--bnd-surface-2);
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
    object-fit: contain;
    margin-bottom: 10px;
}

ul.products li.product .woocommerce-loop-product__title {
    font-size: 13.5px !important;
    font-weight: 600 !important;
    line-height: 1.35 !important;
    color: var(--bnd-ink) !important;
    padding: 0 !important;
    margin: 0 0 6px !important;
    min-height: 2.7em;
}

ul.products li.product .price {
    color: var(--bnd-ink) !important;
    font-weight: 700 !important;
    font-size: 16px !important;
    margin: 0 0 10px !important;
}

ul.products li.product .price del {
    color: var(--bnd-ink-3) !important;
    font-weight: 400 !important;
    font-size: 12.5px !important;
}

/* Кнопка «В корзину» в каталоге — заливка акцентом */
#content ul.products li.product a.button,
#content ul.products li.product a.add_to_cart_button,
#content ul.products li.product a.product_type_simple,
ul.products li.product a.button,
ul.products li.product a.button.add_to_cart_button,
ul.products li.product .button,
ul.products li.product .add_to_cart_button,
ul.products li.product .product_type_simple {
    display: block !important;
    margin-top: auto !important;
    width: 100% !important;
    border-radius: var(--bnd-r-btn) !important;
    background-color: var(--bnd-accent) !important;
    background-image: none !important;
    color: #fff !important;
    font-weight: 600 !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
    padding: 10px 12px !important;
    text-align: center !important;
    text-decoration: none !important;
    border: 0 !important;
    box-shadow: none !important;
    text-shadow: none !important;
    transition: background-color .16s ease;
}

#content ul.products li.product a.button:hover,
#content ul.products li.product a.add_to_cart_button:hover,
ul.products li.product a.button:hover,
ul.products li.product .button:hover,
ul.products li.product .add_to_cart_button:hover {
    background-color: var(--bnd-accent-2) !important;
    background-image: none !important;
    color: #fff !important;
}

ul.products li.product a.button.loading,
ul.products li.product a.button.added {
    background-color: var(--bnd-accent-2) !important;
    color: #fff !important;
    opacity: 1 !important;
}

/* --- 6. ПОПУЛЯРНОЕ (bndpop01) — СВОИ КЛАССЫ ------------------ */
.bnd-pop-card {
    background: var(--bnd-surface) !important;
    border: 1px solid var(--bnd-line) !important;
    border-radius: var(--bnd-r-card) !important;
    box-shadow: var(--bnd-sh-1) !important;
    padding: 12px !important;
    transition: transform .16s ease, box-shadow .16s ease;
}

.bnd-pop-card:hover {
    transform: translateY(-2px);
    box-shadow: var(--bnd-sh-2);
}

.bnd-pop-link {
    display: block;
    text-decoration: none;
    color: var(--bnd-ink) !important;
}

.bnd-pop-img img {
    border-radius: 12px !important;
    background: var(--bnd-surface-2) !important;
    width: 100% !important;
    aspect-ratio: 1 / 1 !important;
    object-fit: contain !important;
}

.bnd-pop-name {
    display: block;
    font-size: 13px !important;
    font-weight: 500 !important;
    line-height: 1.35 !important;
    color: var(--bnd-ink) !important;
    margin: 8px 0 6px !important;
    min-height: 2.7em;
}

.bnd-pop-foot {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-top: 8px;
    padding-top: 8px;
    border-top: 1px solid var(--bnd-line);
}

.bnd-pop-price {
    font-weight: 700 !important;
    font-size: 15px !important;
    color: var(--bnd-ink) !important;
}

/* Кнопка "В корзину" в Популярном — зелёная, как в каталоге */
.bnd-pop-add,
.bnd-pop-add:visited {
    display: inline-block !important;
    padding: 8px 14px !important;
    border-radius: var(--bnd-r-btn) !important;
    background-color: var(--bnd-accent) !important;
    background-image: none !important;
    color: #fff !important;
    font-weight: 600 !important;
    font-size: 12.5px !important;
    line-height: 1.3 !important;
    text-align: center !important;
    text-decoration: none !important;
    border: 0 !important;
    box-shadow: none !important;
    transition: background-color .16s ease;
}

.bnd-pop-add:hover,
.bnd-pop-add:focus {
    background-color: var(--bnd-accent-2) !important;
    color: #fff !important;
}

/* Ссылка "Все популярные товары" */
.bnd-pop-all {
    color: var(--bnd-accent) !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    font-size: 13px !important;
}

.bnd-pop-all:hover {
    text-decoration: underline !important;
}

/* --- 7. СТРАНИЦА ТОВАРА ------------------------------------- */
.single-product div.product .product_title {
    font-size: 26px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -.02em;
    margin-bottom: 8px;
}

.single-product div.product p.price {
    font-size: 28px !important;
    font-weight: 700 !important;
    color: var(--bnd-ink) !important;
    margin: 0 0 18px !important;
}

.single-product div.product .woocommerce-product-gallery img {
    border-radius: var(--bnd-r-card);
}

.single-product div.product form.cart .single_add_to_cart_button {
    border-radius: var(--bnd-r-btn) !important;
    background: var(--bnd-accent) !important;
    color: #fff !important;
    font-weight: 700 !important;
    padding: 15px 32px !important;
    border: 0 !important;
    width: 100%;
    transition: background .16s ease;
}

.single-product div.product form.cart .single_add_to_cart_button:hover {
    background: var(--bnd-accent-2) !important;
}

.single-product div.product form.cart .qty {
    border-radius: var(--bnd-r-btn) !important;
    border: 1px solid var(--bnd-line) !important;
    padding: 12px !important;
    height: auto !important;
}

.single-product div.product .woocommerce-tabs ul.tabs {
    border-bottom: 1px solid var(--bnd-line);
    padding: 0 !important;
}

.single-product div.product .woocommerce-tabs ul.tabs li {
    border: 0 !important;
    background: none !important;
    border-radius: 0 !important;
    margin: 0 !important;
}

.single-product div.product .woocommerce-tabs ul.tabs li a {
    font-weight: 600 !important;
    color: var(--bnd-ink-3) !important;
    padding: 12px 16px !important;
}

.single-product div.product .woocommerce-tabs ul.tabs li.active a {
    color: var(--bnd-accent) !important;
    box-shadow: inset 0 -2px 0 var(--bnd-accent);
}

/* --- 8. КНОПКИ ОБЩЕГО НАЗНАЧЕНИЯ ---------------------------- */
.button,
button,
input[type="submit"],
.ast-button {
    border-radius: var(--bnd-r-btn) !important;
}

/* --- 9. ПОЛЯ ВВОДА ------------------------------------------ */
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="number"],
input[type="search"],
select,
textarea {
    border-radius: var(--bnd-r-btn) !important;
    border: 1px solid var(--bnd-line) !important;
    padding: 12px 14px !important;
    background: var(--bnd-surface) !important;
    box-shadow: none !important;
    transition: border-color .16s ease, box-shadow .16s ease;
}

input:focus,
select:focus,
textarea:focus {
    border-color: var(--bnd-accent) !important;
    box-shadow: 0 0 0 3px var(--bnd-accent-soft) !important;
    outline: none !important;
}

/* --- 10. КАТЕГОРИИ/АРХИВЫ ----------------------------------- */
.term-description,
.woocommerce-products-header {
    color: var(--bnd-ink-2);
    line-height: 1.65;
}

.woocommerce-products-header .page-title,
.woocommerce-products-header h1 {
    font-size: 26px;
    font-weight: 700;
    letter-spacing: -.02em;
    color: var(--bnd-ink);
    margin-bottom: 6px;
}

/* --- 11. ПАГИНАЦИЯ ------------------------------------------ */
.woocommerce nav.woocommerce-pagination ul {
    border: 0 !important;
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
    justify-content: center;
}

.woocommerce nav.woocommerce-pagination ul li {
    border: 0 !important;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    height: 40px;
    padding: 0 12px !important;
    border-radius: var(--bnd-r-btn) !important;
    background: var(--bnd-surface);
    border: 1px solid var(--bnd-line) !important;
    color: var(--bnd-ink) !important;
    font-weight: 600;
}

.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce nav.woocommerce-pagination ul li a:hover {
    background: var(--bnd-accent) !important;
    color: #fff !important;
    border-color: var(--bnd-accent) !important;
}

/* --- 12. ФУТЕР ---------------------------------------------- */
.site-footer,
.site-primary-footer-wrap,
.site-below-footer-wrap {
    background: var(--bnd-ink) !important;
    color: rgba(255, 255, 255, .7) !important;
    border-top: 0 !important;
}

.site-footer a,
.site-primary-footer-wrap a {
    color: rgba(255, 255, 255, .8) !important;
    text-decoration: none;
    transition: color .16s ease;
}

.site-footer a:hover,
.site-primary-footer-wrap a:hover {
    color: #fff !important;
}

/* --- 13. МЕЛОЧИ --------------------------------------------- */
::selection {
    background: var(--bnd-accent);
    color: #fff;
}

img {
    max-width: 100%;
    height: auto;
}

.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
    border-radius: var(--bnd-r-btn) !important;
    border-top: 0 !important;
    border-left: 4px solid var(--bnd-accent);
    background: var(--bnd-surface) !important;
    box-shadow: var(--bnd-sh-1);
    color: var(--bnd-ink) !important;
}

.woocommerce-error {
    border-left-color: #dc2626;
}

/* --- 14. МЕНЮ: фикс перелива, 15 пунктов влезают ------------- */
.site-header-below-section-center,
.ast-builder-menu-1,
.main-header-bar-navigation,
.site-navigation,
.main-navigation {
    min-width: 0 !important;
    max-width: 100% !important;
}

.ast-below-header-bar {
    max-width: 100%;
    overflow-x: hidden;
}

.ast-below-header-bar .ast-container {
    max-width: 100% !important;
    overflow: hidden;
}

.main-header-menu.ast-nav-menu {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    max-width: 100% !important;
    min-width: 0 !important;
    row-gap: 2px;
}

.main-header-menu .menu-item {
    flex: 0 1 auto !important;
    min-width: 0;
}

.main-header-menu .menu-link {
    font-size: 12.5px !important;
    padding: 8px 7px !important;
    white-space: nowrap;
    line-height: 1.25;
    color: var(--bnd-ink) !important;
}

@media (min-width: 922px) and (max-width: 1280px) {
    .main-header-menu .menu-link {
        font-size: 12px !important;
        padding: 8px 5px !important;
        letter-spacing: 0 !important;
    }
}

.ast-below-header-bar .main-header-menu::-webkit-scrollbar {
    height: 0;
}

html, body {
    max-width: 100%;
    overflow-x: hidden;
}

/* --- 15. МОБИЛЬНЫЕ УТОЧНЕНИЯ -------------------------------- */
@media (max-width: 544px) {
    .elementor-element-6dec7691 {
        padding-bottom: 28px !important;
    }

    .elementor-element-6dec7691 .elementor-heading-title {
        font-size: 26px !important;
    }

    .elementor-element-6dec7691 .elementor-button {
        padding: 13px 24px !important;
        font-size: 14px !important;
    }

    .single-product div.product .product_title {
        font-size: 22px;
    }

    .single-product div.product p.price {
        font-size: 24px !important;
    }

    ul.products li.product {
        padding: 10px !important;
    }

    ul.products li.product .woocommerce-loop-product__title {
        font-size: 12.5px !important;
    }

    .bnd-pop-card {
        padding: 10px !important;
    }

    .bnd-pop-name {
        font-size: 12.5px !important;
    }

    .bnd-pop-add {
        padding: 7px 12px !important;
        font-size: 12px !important;
    }
}

@media (min-width: 545px) and (max-width: 921px) {
    .elementor-element-6dec7691 .elementor-heading-title {
        font-size: 36px !important;
    }
}

/* --- 16. КОРЗИНА: мини-корзина (drawer) и страница корзины ------- */
/* Мобильный drawer: показываем кнопку удаления, добавляем количество */
/* Скрываем дубликат кнопки удаления (два одинаковых) */
.astra-cart-drawer .remove_from_cart_button {
    display: none !important;
}

.astra-cart-drawer .elementor-menu-cart__product-remove,
.astra-cart-drawer .product-remove {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    width: auto !important;
    height: auto !important;
}

/* Кнопка удаления в drawer: прозрачная с крестиком ×, красная при наведении */
.astra-cart-drawer .elementor_remove_from_cart_button {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 28px !important;
    height: 28px !important;
    border-radius: 50% !important;
    background: transparent !important;
    color: var(--bnd-ink-3) !important;
    font-size: 18px !important;
    line-height: 1 !important;
    text-decoration: none !important;
    border: none !important;
    transition: background .16s ease, color .16s ease;
}

.astra-cart-drawer .elementor_remove_from_cart_button::before {
    content: "×" !important;
    font-size: 20px !important;
    line-height: 1 !important;
    font-weight: 300 !important;
}

.astra-cart-drawer .elementor_remove_from_cart_button:hover {
    background: #fee2e2 !important; /* red-100 */
    color: #dc2626 !important;      /* red-600 */
}

/* Количество в мини-корзине (drawer) */
.astra-cart-drawer .elementor-menu-cart__product-quantity,
.astra-cart-drawer .woocommerce-mini-cart-item .quantity {
    display: flex !important;
    align-items: center;
    gap: 8px;
    margin-top: 8px;
}

.astra-cart-drawer .qty {
    width: 56px !important;
    height: 32px !important;
    padding: 0 8px !important;
    border: 1px solid var(--bnd-line) !important;
    border-radius: var(--bnd-r-btn) !important;
    text-align: center;
    font-size: 13px !important;
    background: var(--bnd-surface) !important;
}

.astra-cart-drawer .qty:focus {
    border-color: var(--bnd-accent) !important;
    box-shadow: 0 0 0 3px var(--bnd-accent-soft) !important;
    outline: none !important;
}

/* Кнопка "Просмотр корзины" и "Оформление заказа" в drawer */
.astra-cart-drawer .elementor-button--view-cart,
.astra-cart-drawer .elementor-button--checkout,
.astra-cart-drawer .wc-forward,
.astra-cart-drawer .elementor-menu-cart__footer-buttons a,
.astra-cart-drawer .elementor-menu-cart__footer-buttons button {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 100% !important;
    padding: 12px 16px !important;
    border-radius: var(--bnd-r-btn) !important;
    background-color: var(--bnd-accent) !important;
    background-image: none !important;
    color: #fff !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    text-decoration: none !important;
    border: none !important;
    min-height: 48px !important;
    box-sizing: border-box !important;
    transition: background-color .16s ease;
}

.astra-cart-drawer .elementor-button--view-cart:hover,
.astra-cart-drawer .elementor-button--checkout:hover,
.astra-cart-drawer .wc-forward:hover,
.astra-cart-drawer .elementor-menu-cart__footer-buttons a:hover,
.astra-cart-drawer .elementor-menu-cart__footer-buttons button:hover {
    background-color: var(--bnd-accent-2) !important;
    color: #fff !important;
}

/* Сброс дефолтных стилей Elementor для кнопок в drawer */
.astra-cart-drawer .elementor-button.elementor-size-md,
.astra-cart-drawer .elementor-button.elementor-button--view-cart,
.astra-cart-drawer .elementor-button.elementor-button--checkout {
    width: 100% !important;
    border-radius: var(--bnd-r-btn) !important;
    padding: 12px 16px !important;
    min-height: 48px !important;
    box-sizing: border-box !important;
}

/* Убираем иконки/декорации Elementor у кнопок в drawer */
.astra-cart-drawer .elementor-button-text {
    display: inline !important;
}

.astra-cart-drawer .elementor-button .elementor-button-icon {
    display: none !important;
}

/* Количество в мини-корзине (drawer) - стили для input, если появится через JS/PHP */
.astra-cart-drawer .elementor-menu-cart__product .quantity,
.astra-cart-drawer .woocommerce-mini-cart-item .quantity {
    display: flex !important;
    align-items: center;
    gap: 8px;
    margin-top: 8px !important;
    width: 100% !important;
    justify-content: flex-end !important;
}

.astra-cart-drawer .elementor-menu-cart__product .qty,
.astra-cart-drawer .woocommerce-mini-cart-item .qty {
    width: 56px !important;
    height: 32px !important;
    padding: 0 8px !important;
    border: 1px solid var(--bnd-line) !important;
    border-radius: var(--bnd-r-btn) !important;
    text-align: center;
    font-size: 13px !important;
    background: var(--bnd-surface) !important;
    -moz-appearance: textfield;
}

.astra-cart-drawer .elementor-menu-cart__product .qty::-webkit-outer-spin-button,
.astra-cart-drawer .elementor-menu-cart__product .qty::-webkit-inner-spin-button,
.astra-cart-drawer .woocommerce-mini-cart-item .qty::-webkit-outer-spin-button,
.astra-cart-drawer .woocommerce-mini-cart-item .qty::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.astra-cart-drawer .elementor-menu-cart__product .qty:focus,
.astra-cart-drawer .woocommerce-mini-cart-item .qty:focus {
    border-color: var(--bnd-accent) !important;
    box-shadow: 0 0 0 3px var(--bnd-accent-soft) !important;
    outline: none !important;
}

/* Подытог в drawer */
.astra-cart-drawer .elementor-menu-cart__subtotal {
    padding: 12px 16px !important;
    border-top: 1px solid var(--bnd-line) !important;
    font-weight: 600 !important;
    color: var(--bnd-ink) !important;
}

/* --- СТРАНИЦА КОРЗИНЫ --- */
/* Маленькие превью товаров */
.woocommerce-cart-form__cart-item .product-thumbnail img,
.woocommerce-cart-form__cart-item td.product-thumbnail img,
.cart_item .product-thumbnail img,
.cart_item td.product-thumbnail img {
    width: 64px !important;
    height: 64px !important;
    max-width: 64px !important;
    max-height: 64px !important;
    object-fit: contain !important;
    border-radius: 8px !important;
    background: var(--bnd-surface-2) !important;
}

/* Название товара */
.woocommerce-cart-form__cart-item .product-name a,
.cart_item .product-name a {
    font-weight: 600 !important;
    color: var(--bnd-ink) !important;
    font-size: 14px !important;
    text-decoration: none !important;
}

.woocommerce-cart-form__cart-item .product-name a:hover,
.cart_item .product-name a:hover {
    color: var(--bnd-accent) !important;
}

/* Цена */
.woocommerce-cart-form__cart-item .product-price .amount,
.cart_item .product-price .amount {
    font-weight: 700 !important;
    color: var(--bnd-ink) !important;
    font-size: 14px !important;
}

/* Количество на странице корзины */
.woocommerce-cart-form__cart-item .qty,
.cart_item .qty,
.woocommerce-cart-form .quantity .qty {
    width: 64px !important;
    height: 36px !important;
    padding: 0 10px !important;
    border: 1px solid var(--bnd-line) !important;
    border-radius: var(--bnd-r-btn) !important;
    text-align: center !important;
    font-size: 14px !important;
    background: var(--bnd-surface) !important;
    -moz-appearance: textfield;
}

.woocommerce-cart-form__cart-item .qty::-webkit-outer-spin-button,
.woocommerce-cart-form__cart-item .qty::-webkit-inner-spin-button,
.cart_item .qty::-webkit-outer-spin-button,
.cart_item .qty::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.woocommerce-cart-form__cart-item .qty:focus,
.cart_item .qty:focus {
    border-color: var(--bnd-accent) !important;
    box-shadow: 0 0 0 3px var(--bnd-accent-soft) !important;
    outline: none !important;
}

/* Кнопка удаления на странице корзины: прозрачная с крестиком ×, красная при наведении */
/* Скрываем SVG-иконку Astra внутри кнопки */
.woocommerce-cart-form__cart-item .remove svg,
.cart_item .remove svg,
.product-remove a.remove svg,
.woocommerce-cart-form__cart-item .remove .ahfb-svg-iconset,
.cart_item .remove .ahfb-svg-iconset,
.product-remove a.remove .ahfb-svg-iconset {
    display: none !important;
}

.woocommerce-cart-form__cart-item .remove,
.cart_item .remove,
.product-remove a.remove {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 28px !important;
    height: 28px !important;
    border-radius: 50% !important;
    background: transparent !important;
    color: var(--bnd-ink-3) !important;
    font-size: 18px !important;
    line-height: 1 !important;
    text-decoration: none !important;
    border: none !important;
    opacity: 1 !important;
    flex-shrink: 0 !important;
    transition: background .16s ease, color .16s ease, opacity .16s ease;
}

.woocommerce-cart-form__cart-item .remove::before,
.cart_item .remove::before,
.product-remove a.remove::before {
    content: "×" !important;
    font-size: 20px !important;
    line-height: 1 !important;
    font-weight: 300 !important;
}

.woocommerce-cart-form__cart-item .remove:hover,
.cart_item .remove:hover,
.product-remove a.remove:hover {
    background: #fee2e2 !important; /* red-100 */
    color: #dc2626 !important;      /* red-600 */
    opacity: 1 !important;
}

/* Принудительно уменьшаем превью товара в корзине */
.woocommerce-cart-form__cart-item .product-thumbnail img,
.woocommerce-cart-form__cart-item td.product-thumbnail img,
.cart_item .product-thumbnail img,
.cart_item td.product-thumbnail img {
    width: 64px !important;
    height: 64px !important;
    max-width: 64px !important;
    max-height: 64px !important;
    min-width: 0 !important;
    min-height: 0 !important;
    object-fit: contain !important;
    border-radius: 8px !important;
    background: var(--bnd-surface-2) !important;
    display: block !important;
}

/* Ячейка названия - растягивается */
.woocommerce-cart-form__cart-item .product-name,
.woocommerce-cart-form__cart-item td.product-name,
.cart_item .product-name,
.cart_item td.product-name {
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    white-space: normal !important;
    word-break: break-word !important;
}

/* Маленькие превью товаров */
.woocommerce-cart-form__cart-item .product-thumbnail img,
.woocommerce-cart-form__cart-item td.product-thumbnail img,
.cart_item .product-thumbnail img,
.cart_item td.product-thumbnail img {
    width: 64px !important;
    height: 64px !important;
    max-width: 64px !important;
    max-height: 64px !important;
    object-fit: contain !important;
    border-radius: 8px !important;
    background: var(--bnd-surface-2) !important;
    display: block !important;
}

/* =====================================================================
   A-PRIME (01.11.2026): табличная раскладка корзины — только от 769px.
   Причина: эти правила были написаны под десктоп, но лежали вне медиа-
   запроса и действовали на телефоне, перебивая карточки из style.css
   (правка 12.10 по заказу заказчика): display: table-row !important,
   table-layout: fixed и width: 1% сжимали поле количества до 12 px,
   а nowrap + overflow: hidden обрезали название, цену и сумму.
   На телефоне теперь работает блок карточек в style.css (строки 164-280),
   здесь — прежний вид таблицы для компьютера и планшета от 769px.
   ===================================================================== */
@media (min-width: 769px) {
    /* Убираем лишние отступы в ячейках */
    .woocommerce-cart-form__cart-item td,
    .cart_item td {
        padding: 12px 8px !important;
        vertical-align: middle !important;
    }

    /* Строка товара — табличная */
    .woocommerce-cart-form__cart-item,
    .cart_item {
        display: table-row !important;
        width: 100% !important;
    }

    .woocommerce-cart-form__cart-item td,
    .cart_item td {
        padding: 12px 8px !important;
        vertical-align: middle !important;
        white-space: nowrap !important;
        overflow: hidden !important;
    }

    /* Ячейка с изображением - фиксированная ширина */
    .woocommerce-cart-form__cart-item .product-thumbnail,
    .woocommerce-cart-form__cart-item td.product-thumbnail,
    .cart_item .product-thumbnail,
    .cart_item td.product-thumbnail {
        width: 80px !important;
        min-width: 80px !important;
        padding: 8px !important;
    }

    /* Ячейки цены, количества, подытога - компактные */
    .woocommerce-cart-form__cart-item .product-price,
    .woocommerce-cart-form__cart-item .product-quantity,
    .woocommerce-cart-form__cart-item .product-subtotal,
    .woocommerce-cart-form__cart-item .product-remove,
    .cart_item .product-price,
    .cart_item .product-quantity,
    .cart_item .product-subtotal,
    .cart_item .product-remove {
        width: 1% !important;
        white-space: nowrap !important;
        padding: 12px 6px !important;
    }

    /* Таблица корзины - фиксированная раскладка */
    .woocommerce-cart-form table.shop_table,
    .woocommerce-cart-form__cart-item,
    form.woocommerce-cart-form table {
        table-layout: fixed !important;
        width: 100% !important;
        border-collapse: collapse !important;
    }
}

/* Кнопки на странице корзины: Обновить корзину, Перейти к оформлению */
.woocommerce-cart-form .actions .button,
.woocommerce-cart-form .button[name="update_cart"],
.woocommerce-cart-form .button.update_cart,
.wc-proceed-to-checkout a.button,
.checkout-button,
.woocommerce .cart-collaterals .wc-proceed-to-checkout a.button,
.woocommerce-checkout-review-order .button,
#place_order {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px 24px !important;
    border-radius: var(--bnd-r-btn) !important;
    background-color: var(--bnd-accent) !important;
    background-image: none !important;
    color: #fff !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    text-decoration: none !important;
    border: none !important;
    box-shadow: none !important;
    transition: background-color .16s ease, transform .16s ease;
}

.woocommerce-cart-form .actions .button:hover,
.woocommerce-cart-form .button[name="update_cart"]:hover,
.woocommerce-cart-form .button.update_cart:hover,
.wc-proceed-to-checkout a.button:hover,
.checkout-button:hover {
    background-color: var(--bnd-accent-2) !important;
    color: #fff !important;
    transform: translateY(-1px);
}

/* Вторая кнопка (Обновить) - outline стиль */
.woocommerce-cart-form .actions .button[name="update_cart"],
.woocommerce-cart-form .button.update_cart {
    background-color: transparent !important;
    border: 1px solid var(--bnd-accent) !important;
    color: var(--bnd-accent) !important;
}

.woocommerce-cart-form .actions .button[name="update_cart"]:hover,
.woocommerce-cart-form .button.update_cart:hover {
    background-color: var(--bnd-accent) !important;
    color: #fff !important;
    border-color: var(--bnd-accent-2) !important;
}

/* Итоги корзины (cart totals) */
.woocommerce-cart-totals,
.cart_totals {
    background: var(--bnd-surface) !important;
    border: 1px solid var(--bnd-line) !important;
    border-radius: var(--bnd-r-card) !important;
    padding: 20px !important;
    box-shadow: var(--bnd-sh-1) !important;
}

.woocommerce-cart-totals h2,
.cart_totals h2 {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: var(--bnd-ink) !important;
    margin-bottom: 16px !important;
    padding-bottom: 12px !important;
    border-bottom: 1px solid var(--bnd-line) !important;
}

.woocommerce-cart-totals .cart-subtotal th,
.woocommerce-cart-totals .cart-subtotal td,
.woocommerce-cart-totals .shipping th,
.woocommerce-cart-totals .shipping td,
.woocommerce-cart-totals .order-total th,
.woocommerce-cart-totals .order-total td {
    padding: 10px 0 !important;
    font-size: 14px !important;
}

.woocommerce-cart-totals .order-total th,
.woocommerce-cart-totals .order-total td {
    font-weight: 700 !important;
    font-size: 16px !important;
    border-top: 1px solid var(--bnd-line) !important;
    padding-top: 14px !important;
}

/* Пустая корзина */
.woocommerce-cart-form__empty,
.cart-empty {
    text-align: center !important;
    padding: 40px 20px !important;
}

.woocommerce-cart-form__empty .button,
.cart-empty .button {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    padding: 12px 24px !important;
    border-radius: var(--bnd-r-btn) !important;
    background-color: var(--bnd-accent) !important;
    color: #fff !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    border: none !important;
    transition: background-color .16s ease;
}

.woocommerce-cart-form__empty .button:hover,
.cart-empty .button:hover {
    background-color: var(--bnd-accent-2) !important;
}

/* --- 17. СКРЫТИЕ САЙДБАРА НА СТРАНИЦАХ БЕЗ ВИДЖЕТОВ ------------- */
/* populyarnoe (page-id-5692) - убираем левый сайдбар с рубриками, архивами, мета */
.page-id-5692 .widget-area.secondary,
.page-id-5692 #secondary,
.page-id-5692 .ast-left-sidebar .sidebar-main-layout {
    display: none !important;
}

.page-id-5692 .content-area.primary,
.page-id-5692 .ast-left-sidebar .content-area {
    width: 100% !important;
    max-width: 100% !important;
    flex: 1 1 100% !important;
}

/* Для страниц с левым сайдбаром, где не нужны виджеты */
body:has(.widget-area.secondary) .widget.widget_categories,
body:has(.widget-area.secondary) .widget.widget_archive,
body:has(.widget-area.secondary) .widget.widget_meta,
body:has(.widget-area.secondary) .widget.widget_recent_comments,
body:has(.widget-area.secondary) .widget.widget_search,
body:has(.widget-area.secondary) .widget.widget_recent_entries {
    /* По умолчанию не скрываем - только на конкретных страницах */
}
