/* =========================================================
   PRODUCT PAGE + WAPF + UPSELLS
========================================================= */


/* =========================================================
   WAPF — кастомные опции товара
========================================================= */

/* Скрыть лишние строки цены */

.wapf-product-totals .wapf--inner > div:nth-child(1),
.wapf-product-totals .wapf--inner > div:nth-child(2) {
    display: none !important;
}

/* Компактный блок итогов */

.wapf-product-totals {
    margin: 8px 0;
}

.wapf-product-totals .wapf--inner > div {
    padding: 4px 0 !important;
    line-height: 1.2;
}

/* Выделение итоговой цены */

.wapf-product-totals .wapf-grand-total {
    font-weight: 700;
    font-size: 1.1em;
    color: #000;
}

/* Скрыть описание опции */

.bundle-option .wapf-field-description {
    display: none;
}

/* Показывать описание при выборе */

.bundle-option:has(input[type="checkbox"]:checked) .wapf-field-description {
    display: block;
}


/* =========================================================
   PRODUCT OPTIONS
========================================================= */

.woocommerce div.product form.cart label {
    font-size: 14px !important;
}


/* =========================================================
   UPSELLS — управление кнопками
========================================================= */

.no-cart-button .woocommerce ul.products li.product .button,
.no-cart-button .add_to_cart_button,
.no-cart-button .product_type_variable {
    display: none !important;
}

.upsell-products .woocommerce ul.products li.product .button {
    display: inline-block !important;
}


/* =========================================================
   UPSELLS — скрыть вариации
========================================================= */

.upsell-products p {
    display: none !important;
}


/* =========================================================
   CROSS SELL
========================================================= */

.single-product .no-cart-button .ast-woo-shop-product-description {
    display: none !important;
}


/* =========================================================
   PRODUCT DESCRIPTION — ARCHIVE
========================================================= */

.woocommerce ul.products li.product .product-excerpt,
.woocommerce ul.products li.product .short-description {
    font-size: 12px;
    line-height: 1.3;
    color: #777;
}

/* Elementor */

.elementor-widget-woocommerce-products .woocommerce ul.products li.product p {
    font-size: 12px;
    line-height: 1.3;
    color: #000;
}


/* =========================================================
   OUT OF STOCK
========================================================= */

.woocommerce ul.products li.product .ast-shop-product-out-of-stock {
    position: static !important;

    background: transparent !important;

    color: #900 !important;

    font-weight: 500 !important;

    font-size: 14px !important;

    text-align: center !important;

    text-transform: none !important;

    padding: 6px 0 !important;

    margin-top: 8px !important;
}

.astra-shop-thumbnail-wrap a {
    display: block;
}

.astra-shop-thumbnail-wrap {
    text-align: left;
}

.ast-shop-product-out-of-stock {
    min-height: 20px;
}


/* =========================================================
   HALO FAKE SWATCH
========================================================= */

.post-37134 .woocommerce-loop-product__buttons {
    margin-top: 60px !important;
    position: relative;
}

.post-37134 .woocommerce-loop-product__buttons::after {

    content: "";

    position: absolute;

    left: 0;
    top: -34px;

    width: 15px;
    height: 15px;

    border-radius: 50%;

    background: #fff;

    border: 1px solid #111;

    box-shadow:
        0 0 0 2px #f3f3f3;
}


/* =========================================================
   WAPF CARD
========================================================= */

.wapf-field-container.wapf-field-checkboxes {

    background:#efefef;
    border:1px solid #e3e3e3;
    border-radius:14px;

    padding:12px 14px;

    margin-bottom:10px;

    margin-left:4px;
}


/* Заголовок */

.wapf-field-label span{
    font-size:12px;
    font-weight:600;
}


/* Текст */

.wapf-label-text,
.wapf-pricing-hint{
    font-size:12px;
}


/* =========================================================
   ENGRAVING FIELD
========================================================= */

.wapf-field-text input{

    background:#efefef;

    border:1px solid #e3e3e3;

    border-radius:12px;

    padding:8px 10px;

    font-size:10px;
}

.wapf-field-text .wapf-field-label span{

    font-size:12px;

    font-weight:100;
}

.wapf-field-text .wapf-field-description{

    margin-top:6px;

    font-size:10px;

    line-height:1.4;

    color:#000;
}


/* =========================================================
   WAPF WRAPPER
========================================================= */

.wapf-wrapper{
    margin-bottom:25px;
}


/* =========================================================
   WAPF CHECKBOX
========================================================= */

input.wapf-input[type="checkbox"] {

    -webkit-appearance: none !important;
    appearance: none !important;

    border-radius: 50% !important;
    border: 2px solid #bdbdbd !important;
    background: #fff !important;

    width: 15px !important;
    height: 15px !important;

    top: 0px;

    cursor: pointer;
    position: relative;

    box-shadow: none !important;
    outline: none !important;

    transition:
        border 0.35s cubic-bezier(0.22,1,0.36,1),
        box-shadow 0.35s cubic-bezier(0.22,1,0.36,1);
}

input.wapf-input[type="checkbox"]:checked {

    background:#fff !important;

    border:5px solid #198f2d !important;

    box-shadow:0 0 0 4px rgba(25,143,45,0.12);
}


/* =========================================================
   CLICKABLE CARD
========================================================= */

.wapf-field-container.wapf-field-checkboxes {
    position: relative !important;
}

.wapf-field-container.wapf-field-checkboxes .wapf-input-label::after {

    content: "" !important;

    position: absolute !important;

    top: 0 !important;
    left: 0 !important;

    width: 100% !important;
    height: 100% !important;

    cursor: pointer !important;
}


/* =========================================================
   SELECTED CARD
========================================================= */

.wapf-field-container.wapf-field-checkboxes {

    transition: all .2s ease;

    border: 1.5px solid #d9d9d9;
}

.wapf-field-container.wapf-field-checkboxes:has(input[type="checkbox"]:checked) {
    border-color: #7bc487;
}


/* =========================================================
   IOS TAP FIX
========================================================= */

.wapf-field-container.wapf-field-checkboxes,
.wapf-field-container.wapf-field-checkboxes label,
.wapf-field-container.wapf-field-checkboxes input {
    -webkit-tap-highlight-color: transparent !important;
}


/* =========================================================
   MOBILE ADD TO CART
========================================================= */

@media (max-width:768px){

    .single_add_to_cart_button{

        min-height:35px !important;

        padding-top:14px !important;
        padding-bottom:14px !important;
    }
}


/* =========================================================
   SVG ICONS
========================================================= */

/* Отступ под SVG */
.wapf-label-text {
    display: flex;
    align-items: center;
    gap: 8px;
}

/* Размер SVG */
.wapf-label-text::before {
    content: "";
    width: 20px;
    height: 20px;
    display: inline-block;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    flex-shrink: 0;
}

/* ✒️ Гравировка */
input[data-field-id="68afff9617a76"] + .wapf-label-text::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke-width='1.8' stroke='%23222222'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M16.862 4.487a2.25 2.25 0 113.182 3.182L7.5 20.213 3 21l.787-4.5L16.862 4.487z'/%3E%3C/svg%3E");
}

/* 📦 Коробка */
input[data-field-id="69b50f644cecb"] + .wapf-label-text::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke-width='1.8' stroke='%23222222'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M21 8.25L12 3 3 8.25m18 0V15.75L12 21m9-12.75L12 13.5M3 8.25V15.75L12 21m0-7.5V21'/%3E%3C/svg%3E");
}

/* 🧴 Набор ухода */
input[data-field-id="68b3f2d31f6f5"] + .wapf-label-text::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke-width='1.8' stroke='%23222222'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M9 3h6m-5 0v4m4-4v4m-7 3h10l1 11H6L7 10z'/%3E%3C/svg%3E");
}

/* 👜 Сумка */
input[data-field-id="68f11251077a2"] + .wapf-label-text::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke-width='1.8' stroke='%23222222'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M8 7V6a4 4 0 118 0v1m-9 0h10l1 13H6L7 7z'/%3E%3C/svg%3E");
}