#atk-mobile-menu{

    position:fixed;

    left:0;

    right:0;

    bottom:0;

    height:65px;

    padding-bottom: env(safe-area-inset-bottom);
    box-sizing: border-box;

    display:flex;

    justify-content:space-evenly;

    align-items:center;

    z-index:999999;

    box-shadow: 0 -4px 18px rgba(0,0,0,.25);

}

.atk-mobile-item{

    position:relative;

    flex:1;

    display:flex;
    flex-direction:column;

    justify-content:center;
    align-items:center;

    height:100%;

    color:#fff;

    text-decoration:none;

    font-size:14px;

    font-weight:600;

    line-height:1.1;

    gap:3px;

    transition:.25s;

}
/* =========================================
   BOTÓN ACTIVO
========================================= */

.atk-mobile-item.atk-mobile-active {
    position: relative !important;

    background: rgba(255,255,255,.14) !important;
    color: #fff !important;
}

/* Línea inferior del botón activo */

.atk-mobile-item.atk-mobile-active::after {
    content: "";

    position: absolute;

    left: 20%;
    right: 20%;
    bottom: 3px;

    height: 3px;

    border-radius: 999px;

    background: linear-gradient(
        90deg,
        #ffffff,
        rgba(255,255,255,.75)
    );

    box-shadow:
        0 0 8px rgba(255,255,255,.35);
}

.atk-mobile-item:hover{

    background:rgba(255,255,255,.10);

    color:#fff;

}

.atk-mobile-label{

    text-align:center;

}

/* Ocultar en escritorio */

@media (min-width:768px){

    #atk-mobile-menu{

        display:none;

    }

}
#atk-search-results{

    margin-top:18px;

    max-height:420px;

    overflow-y:auto;

}

.atk-search-item{

    display:flex !important;

    align-items:center;

    gap:12px;

    width:100%;

    box-sizing:border-box;

    text-decoration:none;

    color:#222;

    background:#fff;

    border-radius:10px;

    padding:10px 12px;

    margin-bottom:12px;

    box-shadow:0 2px 6px rgba(0,0,0,.06);

border:1px solid #ececec;

}

.atk-search-item:hover{

    background:#fafafa;

    transform:translateY(-2px);

    box-shadow:0 8px 20px rgba(0,0,0,.12);

}

.atk-search-image{

    width:60px;

    height:60px;

    object-fit:contain;

    flex-shrink:0;

    border-radius:8px;

    border:1px solid #ececec;

    background:#fff;

    padding:4px;

}

.atk-search-image{

    width:60px;

    height:60px;

    object-fit:contain;

    flex-shrink:0;

    border-radius:8px;

    border:1px solid #ececec;

    background:#fff;

    padding:4px;

}

.atk-search-info{

    flex:1;

    display:flex;

    flex-direction:column;

    justify-content:center;

}

.atk-search-title{

    font-size:16px;

    font-weight:600;

    line-height:1.35;

    margin-bottom:6px;

    color:#222;

}

.atk-search-price{

    font-size:20px;

    font-weight:700;

    color:#4F15E0;

    margin-bottom:4px;

}

.atk-search-stock{
    display:inline-block !important;
    margin-top:3px !important;
    padding:3px 8px !important;
    border-radius:999px !important;
    font-size:12px !important;
    font-weight:600 !important;
}

.atk-search-stock.is-available{
    background:#eaf8ed !important;
    color:#2e7d32 !important;
}

.atk-search-stock.is-unavailable{
    background:#fdecec !important;
    color:#d32f2f !important;
}

#atk-search-modal{

    display:none;

    position:fixed;

    inset:0;

    background:rgba(0,0,0,.70);

    z-index:999999;

    justify-content:center;

    align-items:center;

    padding:16px;

    box-sizing:border-box;

}

.atk-search-box{

    width:90%;

    max-width:500px;

    background:#fff;

    padding:20px;

    border-radius:16px;

    box-sizing:border-box;

    box-shadow:0 15px 40px rgba(0,0,0,.25);

    position:relative;

}

@keyframes atkSearchOpen{

    from{

        opacity:0;

        transform:translateY(20px) scale(.98);

    }

    to{

        opacity:1;

        transform:translateY(0) scale(1);

    }

}
.atk-add-cart{

    margin-top:10px;

    width:100%;

    height:42px;

    border:none;

    border-radius:10px;

    background:linear-gradient(90deg,#4F15E0,#1566E0);

    color:#fff;

    font-size:15px;

    font-weight:600;

    cursor:pointer;

    transition:.2s;

}

.atk-add-cart:hover{

    background:#3910B5;

}

.atk-add-cart:disabled{

    background:#cfcfcf;

    cursor:not-allowed;

}
#atk-cart-count{

    position:absolute;

    top:8px;

    right:18px;

    min-width:18px;

    height:18px;

    padding:0 5px;

    border-radius:999px;

    background:#ff3b30;

    color:#fff;

    font-size:11px;

    font-weight:700;

    display:flex;

    align-items:center;

    justify-content:center;

    line-height:1;

}
/* ==========================
   CART DRAWER
========================== */

#atk-cart-drawer{

    position:fixed;

    top:0;

    right:-100%;

    width:90%;

    max-width:420px;

    height:100vh;

    background:#fff;

    z-index:9999999;

    transition:right .30s ease;

    display:flex;

    flex-direction:column;

    box-shadow:-6px 0 20px rgba(0,0,0,.18);

}

#atk-cart-drawer.active{

    right:0;

}

.atk-cart-header{

    height:60px;

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:0 20px;

    border-bottom:1px solid #eee;

    font-size:18px;

    font-weight:700;

}

#atk-cart-close{

    background:none;

    border:none;

    font-size:26px;

    cursor:pointer;

}

#atk-cart-content{

    flex:1;

    overflow-y:auto;

    padding:20px;

}
#atk-search-input{

    width:100%;

    height:48px;

    padding:0 16px;

    border:1px solid #ddd;

    border-radius:10px;

    font-size:16px;

    outline:none;

    box-sizing:border-box;

}

#atk-search-input:focus{
    border-color:#4F15E0 !important;

    box-shadow:
        0 0 0 3px rgba(79,21,224,.12) !important;
}
/* ===========================
   CART DRAWER
=========================== */

#atk-cart-content{
    flex:1;
    overflow-y:auto;
    padding:18px;
    background:#f7f7fb;
}

.atk-cart-item{

    display:flex;
    gap:15px;

    background:#fff;

    border-radius:14px;

    padding:14px;

    margin-bottom:15px;

    box-shadow:0 4px 12px rgba(0,0,0,.08);

    align-items:center;

}

.atk-cart-image-wrap{

    width:90px;

    flex-shrink:0;

}

.atk-cart-image{

    width:100%;

    border-radius:10px;

    border:1px solid #ececec;

}

.atk-cart-info{

    flex:1;

}

.atk-cart-title{

    font-size:16px;

    font-weight:700;

    margin-bottom:8px;

    line-height:1.35;

}

.atk-cart-price{

    color:#4F15E0;

    font-size:22px;

    font-weight:bold;

    margin-bottom:14px;

}

.atk-cart-actions{

    display:flex;

    justify-content:space-between;

    align-items:center;

}

.atk-cart-quantity{

    display:flex;

    align-items:center;

    gap:10px;

}

.atk-cart-quantity button{

    width:34px;

    height:34px;

    border:none;

    border-radius:8px;

    background:#4F15E0;

    color:#fff;

    font-size:18px;

    cursor:pointer;

}

.atk-cart-quantity span{

    min-width:20px;

    text-align:center;

    font-weight:bold;

    font-size:17px;

}

.atk-cart-remove{

    width:36px;

    height:36px;

    border:none;

    border-radius:8px;

    background:#ef5350;

    color:#fff;

    cursor:pointer;

}

.atk-cart-footer{

    position:sticky;

    bottom:0;

    background:#fff;

    border-top:1px solid #ececec;

    padding:18px;

}

.atk-cart-total{

    display:flex;

    justify-content:space-between;

    align-items:center;

    font-size:20px;

    margin-bottom:15px;

}

.atk-cart-checkout{

    width:100%;

    height:48px;

    border:none;

    border-radius:10px;

    background:linear-gradient(90deg,#4F15E0,#1566E0);

    color:#fff;

    font-size:17px;

    font-weight:700;

    cursor:pointer;

}
.atk-loading {
    opacity: 0.5;
    cursor: wait !important;
    pointer-events: none;
}

.atk-search-loading{
    display:flex;
    align-items:center;
    justify-content:center;

    min-height:100px;

    color:#777;

    font-size:14px;
    font-weight:500;
}
/* =========================================
   CARRITO VACÍO
========================================= */

.atk-cart-empty{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;

    min-height:300px;

    padding:35px 25px;
}

.atk-cart-empty-icon{
    width:70px;
    height:70px;

    display:flex;
    align-items:center;
    justify-content:center;

    margin-bottom:18px;

    border-radius:50%;

    background:linear-gradient(
        135deg,
        #4F15E0,
        #1566E0
    );

    color:#fff;

    font-size:32px;

    box-shadow:0 8px 20px rgba(79,21,224,.20);
}

.atk-cart-empty-title{
    margin-bottom:10px;

    color:#222;

    font-size:22px;
    font-weight:700;
}

.atk-cart-empty-text{
    max-width:300px;

    margin-bottom:22px;

    color:#666;

    font-size:15px;
    line-height:1.5;
}

.atk-cart-continue{
    min-width:190px;
    height:46px;

    padding:0 24px;

    border:none;
    border-radius:10px;

    background:linear-gradient(
        90deg,
        #4F15E0,
        #1566E0
    );

    color:#fff;

    font-size:15px;
    font-weight:700;

    cursor:pointer;

    box-shadow:0 5px 15px rgba(79,21,224,.20);

    transition:
        transform .2s ease,
        box-shadow .2s ease;
}

.atk-cart-continue:hover{
    transform:translateY(-1px);

    box-shadow:0 7px 18px rgba(79,21,224,.28);
}
/* =========================================
   CONTROLES DE CANTIDAD DEL CARRITO
========================================= */

.atk-qty-minus,
.atk-qty-plus{

    width:38px;
    height:38px;

    display:flex;
    align-items:center;
    justify-content:center;

    border:none;
    border-radius:10px;

    background:linear-gradient(
        135deg,
        #4F15E0,
        #1566E0
    );

    color:#fff;

    font-size:20px;
    font-weight:700;

    line-height:1;

    cursor:pointer;

    transition:
        transform .15s ease,
        box-shadow .15s ease,
        opacity .15s ease;

    box-shadow:0 4px 10px rgba(79,21,224,.18);
}

/* Efecto al pasar el mouse */

.atk-qty-minus:hover,
.atk-qty-plus:hover{

    transform:translateY(-1px);

    box-shadow:0 6px 14px rgba(79,21,224,.25);
}

/* Efecto al presionar */

.atk-qty-minus:active,
.atk-qty-plus:active{

    transform:scale(.94);
}

/* Estado deshabilitado */

.atk-qty-minus:disabled,
.atk-qty-plus:disabled{

    opacity:.55;

    cursor:not-allowed;

    transform:none;
}

/* Número de cantidad */

.atk-cart-quantity > span{

    min-width:28px;

    text-align:center;

    color:#222;

    font-size:16px;
    font-weight:700;
}


/* =========================================
   BOTÓN ELIMINAR
========================================= */

.atk-cart-remove{

    width:38px;
    height:38px;

    display:flex;
    align-items:center;
    justify-content:center;

    border:none;
    border-radius:10px;

    background:#ef5350;

    color:#fff;

    font-size:16px;

    cursor:pointer;

    transition:
        transform .15s ease,
        box-shadow .15s ease,
        opacity .15s ease;

    box-shadow:0 4px 10px rgba(239,83,80,.18);
}

.atk-cart-remove:hover{

    transform:translateY(-1px);

    box-shadow:0 6px 14px rgba(239,83,80,.25);
}

.atk-cart-remove:active{

    transform:scale(.94);
}

.atk-cart-remove:disabled{

    opacity:.55;

    cursor:not-allowed;

    transform:none;
}
/* =========================================
   ANIMACIÓN DE ACTUALIZACIÓN DE CANTIDAD
========================================= */

.atk-cart-quantity > span{
    display:inline-flex;
    align-items:center;
    justify-content:center;

    min-width:28px;
    height:38px;

    transition:
        transform .15s ease,
        opacity .15s ease;
}

.atk-cart-quantity > span.atk-qty-changing{
    transform:scale(1.25);
    opacity:.55;
}


/* =========================================
   ESTADO DE CARGA DE LOS BOTONES
========================================= */

.atk-qty-minus.atk-loading,
.atk-qty-plus.atk-loading{

    opacity:.55;

    cursor:wait;

    transform:scale(.94);
}
/* =========================================
   MODAL ELIMINAR PRODUCTO
========================================= */

#atk-remove-modal{

    position:fixed;

    inset:0;

    display:flex;

    align-items:center;

    justify-content:center;

    background:rgba(15,15,30,.55);

    backdrop-filter:blur(4px);

    opacity:0;

    visibility:hidden;

    pointer-events:none;

    transition:
        opacity .2s ease,
        visibility .2s ease;

    z-index:999999;
}


/* =========================================
   MODAL ELIMINAR PRODUCTO
   ========================================= */

#atk-remove-modal{

    position:fixed;

    top:0;
    left:0;
    right:0;
    bottom:0;

    width:100%;
    height:100%;

    display:flex;

    align-items:center;
    justify-content:center;

    padding:20px;

    box-sizing:border-box;

    background:rgba(0,0,0,.55);

    opacity:0;

    visibility:hidden;

    pointer-events:none;

    /*
     * Muy importante:
     * debe quedar por encima del drawer
     */
    z-index:999999;

    transition:
        opacity .2s ease,
        visibility .2s ease;

}


/* Modal visible */

#atk-remove-modal.active{

    opacity:1;

    visibility:visible;

    pointer-events:auto;

}


/* =========================================
   CAJA
   ========================================= */

.atk-remove-modal-box{

    width:min(90%,380px);

    background:#fff;

    border-radius:20px;

    padding:28px 24px 24px;

    text-align:center;

    box-shadow:
        0 20px 60px rgba(0,0,0,.25);

    transform:
        translateY(15px)
        scale(.96);

    transition:
        transform .2s ease;

    box-sizing:border-box;

}


/* Animación de entrada */

#atk-remove-modal.active
.atk-remove-modal-box{

    transform:
        translateY(0)
        scale(1);

}


/* =========================================
   ICONO
   ========================================= */

.atk-remove-modal-icon{

    width:56px;

    height:56px;

    margin:0 auto 14px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:16px;

    background:#fff0f0;

    color:#ef5350;

    font-size:25px;

}


/* =========================================
   TÍTULO
   ========================================= */

.atk-remove-modal-title{

    font-size:21px;

    font-weight:700;

    color:#222;

    margin-bottom:8px;

}


/* =========================================
   TEXTO
   ========================================= */

.atk-remove-modal-text{

    font-size:15px;

    line-height:1.5;

    color:#666;

    margin-bottom:22px;

}


/* =========================================
   BOTONES
   ========================================= */

.atk-remove-modal-actions{

    display:flex;

    gap:10px;

}


/* =========================================
   CANCELAR
   ========================================= */

.atk-remove-cancel{

    flex:1;

    height:46px;

    border:none;

    border-radius:10px;

    background:#f1f1f5;

    color:#333;

    font-size:15px;

    font-weight:600;

    cursor:pointer;

    transition:.15s ease;

}


.atk-remove-cancel:hover{

    background:#e6e6eb;

}


/* =========================================
   ELIMINAR
   ========================================= */

.atk-remove-confirm{

    flex:1;

    height:46px;

    border:none;

    border-radius:10px;

    background:#ef5350;

    color:#fff;

    font-size:15px;

    font-weight:700;

    cursor:pointer;

    transition:.15s ease;

    box-shadow:
        0 4px 12px rgba(239,83,80,.2);

}


.atk-remove-confirm:hover{

    background:#e53935;

    transform:translateY(-1px);

}


.atk-remove-confirm:active{

    transform:scale(.97);

}
/* =========================================
   ATK - SIN RESULTADOS DE BÚSQUEDA
========================================= */

#atk-search-results .atk-no-results {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    padding: 35px 20px;

    text-align: center;
}

#atk-search-results .atk-no-results-icon {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 58px;
    height: 58px;

    margin-bottom: 14px;

    border-radius: 50%;

    background: #f3f0ff;

    font-size: 26px;
}

#atk-search-results .atk-no-results-title {
    margin-bottom: 6px;

    color: #222;

    font-size: 16px;
    font-weight: 600;
}

#atk-search-results .atk-no-results-text {
    max-width: 280px;

    color: #777;

    font-size: 13px;
    line-height: 1.5;
}
/* =========================================
   BOTÓN CERRAR BÚSQUEDA
========================================= */

#atk-search-close{
    position:absolute;

    top:12px;
    right:12px;

    width:36px;
    height:36px;

    display:flex;
    align-items:center;
    justify-content:center;

    padding:0;

    border:none;
    border-radius:50%;

    background:#f3f3f5;
    color:#555;

    font-size:20px;
    font-weight:500;

    cursor:pointer;

    transition:
        background .2s ease,
        transform .15s ease;
}

#atk-search-close:active{
    transform:scale(.92);
    background:#e8e8eb;
}
/* =========================================
   CHECKOUT MÓVIL - BOTÓN REALIZAR PEDIDO
========================================= */

@media (max-width: 768px){

    .wc-block-checkout__actions{
        padding-bottom:85px !important;
    }

    .wc-block-components-checkout-place-order-button{
        width:100% !important;
        min-height:58px !important;

        margin-bottom:10px !important;

        border:none !important;
        border-radius:12px !important;

        background:linear-gradient(
            90deg,
            #4F15E0 0%,
            #1566E0 100%
        ) !important;

        color:#fff !important;

        font-size:17px !important;
        font-weight:700 !important;

        box-shadow:0 4px 12px rgba(79,21,224,.25) !important;

        transition:.2s ease !important;
    }

    .wc-block-components-checkout-place-order-button:active{
        transform:scale(.98);
    }

}
/* =========================================
   CHECKOUT MÓVIL - TOTAL
========================================= */

@media (max-width:768px){

    .wc-block-components-totals-footer-item{
        padding:18px 16px !important;

        border-top:1px solid #e5e5e5 !important;

        display:flex !important;
        align-items:center !important;
    }

    .wc-block-components-totals-footer-item
    .wc-block-components-totals-item__label{
        font-size:18px !important;
        font-weight:700 !important;

        color:#222 !important;
    }

    .wc-block-components-totals-footer-item
    .wc-block-components-totals-item__value{
        margin-left:auto !important;

        font-size:22px !important;
        font-weight:700 !important;

        color:#4F15E0 !important;

        white-space:nowrap !important;
    }

}
/* =========================================
   CHECKOUT MÓVIL - CAMPOS
========================================= */

@media (max-width:768px){

    .wc-block-components-form
    .wc-block-components-text-input
    input,
    .wc-block-components-form
    .wc-block-components-text-input
    select{

        border:1px solid #cfcfcf !important;

        border-radius:10px !important;

        min-height:54px !important;

        font-size:16px !important;

        padding-left:14px !important;
        padding-right:14px !important;

        box-sizing:border-box !important;

        transition:
            border-color .2s ease,
            box-shadow .2s ease !important;
    }

    .wc-block-components-form
    .wc-block-components-text-input
    input:focus{

        border-color:#4F15E0 !important;

        box-shadow:
            0 0 0 3px rgba(79,21,224,.12) !important;

        outline:none !important;
    }

}
/* =========================================
   CHECKOUT MÓVIL - TÍTULOS DE SECCIÓN
========================================= */

@media (max-width:768px){

    .wc-block-components-checkout-step__title{
        font-size:20px !important;
        font-weight:700 !important;

        color:#222 !important;

        margin:0 0 14px 0 !important;

        line-height:1.3 !important;
    }

} 
/* =========================================
   CHECKOUT MÓVIL - ESPACIO ENTRE CAMPOS
========================================= */

@media (max-width:768px){

    .wc-block-components-address-form
    .wc-block-components-text-input{

        margin-bottom:12px !important;
    }

    .wc-block-components-address-form
    .wc-block-components-country-input{

        margin-bottom:12px !important;
    }

}
/* =========================================
   CHECKOUT MÓVIL - SELECTORES
========================================= */

@media (max-width:768px){

    .wc-block-components-country-input{
        margin-bottom:12px !important;
    }

    .wc-block-components-country-input select{
        width:100% !important;

        min-height:54px !important;

        padding:12px 40px 12px 14px !important;

        border:1px solid #cfcfcf !important;

        border-radius:10px !important;

        background-color:#fff !important;

        color:#222 !important;

        font-size:16px !important;

        box-sizing:border-box !important;

        outline:none !important;

        transition:
            border-color .2s ease,
            box-shadow .2s ease !important;
    }

    .wc-block-components-country-input select:focus{
        border-color:#4F15E0 !important;

        box-shadow:
            0 0 0 3px rgba(79,21,224,.12) !important;
    }

}
/* =========================================
   CHECKOUT MÓVIL - RESUMEN SUPERIOR
========================================= */

@media (max-width:768px){

    .wc-block-components-checkout-order-summary__title{

        min-height:58px !important;

        padding:14px 0 !important;

        display:flex !important;

        align-items:center !important;

        justify-content:space-between !important;

        font-size:17px !important;

        font-weight:600 !important;

        color:#222 !important;

        cursor:pointer !important;

        box-sizing:border-box !important;
    }

    .wc-block-components-checkout-order-summary__title:hover{
        color:#4F15E0 !important;
    }

    .wc-block-components-checkout-order-summary__title:active{
        opacity:.75 !important;
    }

}
/* =========================================
   CHECKOUT MÓVIL - NOTA DEL PEDIDO
========================================= */

@media (max-width:768px){

    .wc-block-components-checkbox{
        margin:8px 0 18px 0 !important;
    }

    .wc-block-components-checkbox label{
        display:flex !important;

        align-items:center !important;

        gap:10px !important;

        min-height:44px !important;

        cursor:pointer !important;
    }

    .wc-block-components-checkbox__input{
        width:22px !important;
        height:22px !important;

        margin:0 !important;

        flex:0 0 22px !important;

        accent-color:#4F15E0 !important;

        cursor:pointer !important;
    }

    .wc-block-components-checkbox__label{
        font-size:15px !important;

        line-height:1.4 !important;

        color:#333 !important;
    }

}
/* =========================================
   CHECKOUT MÓVIL - TÉRMINOS Y CONDICIONES
========================================= */

@media (max-width:768px){

    .wc-block-checkout__terms{
        margin:4px 0 20px 0 !important;

        padding:0 !important;
    }

    .wc-block-checkout__terms
    .wc-block-components-checkbox__label{

        font-size:14px !important;

        line-height:1.5 !important;

        color:#555 !important;

        font-weight:400 !important;
    }

    .wc-block-checkout__terms
    .wc-block-components-checkbox__label a{

        color:#4F15E0 !important;

        font-weight:600 !important;

        text-decoration:none !important;
    }

    .wc-block-checkout__terms
    .wc-block-components-checkbox__label a:hover{

        text-decoration:underline !important;
    }

}
/* =========================================
   CHECKOUT MÓVIL - PRODUCTOS DEL RESUMEN
========================================= */

@media (max-width:768px){

    .wc-block-components-order-summary-item{
        padding:14px 12px !important;

        gap:12px !important;

        align-items:center !important;
    }

    .wc-block-components-product-name{
        font-size:15px !important;

        font-weight:600 !important;

        line-height:1.35 !important;

        color:#222 !important;

        margin:0 !important;
    }

}
/* =========================================
   CHECKOUT MÓVIL - PRECIO DE PRODUCTOS
========================================= */

@media (max-width:768px){

    .wc-block-components-order-summary-item__total-price{
        font-size:15px !important;

        font-weight:600 !important;

        color:#222 !important;

        white-space:nowrap !important;
    }

    .wc-block-components-product-metadata{
        font-size:13px !important;

        line-height:1.35 !important;

        color:#666 !important;

        margin-top:3px !important;
    }

}
/* =========================================
   CUPÓN - CHECKOUT MÓVIL
========================================= */

@media (max-width:768px){

    .wc-block-components-totals-coupon__form{
        display:flex !important;
        flex-wrap:nowrap !important;
        align-items:center !important;
        gap:8px !important;
        width:100% !important;
    }

    .wc-block-components-totals-coupon__form
    .wc-block-components-text-input{
        flex:1 1 auto !important;
        width:auto !important;
        min-width:0 !important;
    }

    .wc-block-components-totals-coupon__input{
        width:100% !important;
        height:50px !important;
        box-sizing:border-box !important;
        border-radius:10px !important;
        padding:0 12px !important;
    }

    .wc-block-components-totals-coupon__button{
    flex:0 0 105px !important;
    width:105px !important;
    min-width:105px !important;
    height:50px !important;
    margin:0 !important;
    padding:0 !important;
    border-radius:10px !important;

    background:linear-gradient(
        135deg,
        #4F15E0 0%,
        #1566E0 100%
    ) !important;

    color:#ffffff !important;

    font-size:14px !important;
    font-weight:600 !important;

    border:none !important;

    box-shadow:0 4px 10px rgba(79,21,224,.18) !important;
}

}
/* =========================================
   CHECKOUT MÓVIL - ENCABEZADO
========================================= */

@media (max-width:768px){

    header.wp-block-template-part{
        width:100% !important;
        box-sizing:border-box !important;
    }

    header.wp-block-template-part
    .wp-block-site-title{
        margin:0 !important;
        padding:0 !important;
    }

    header.wp-block-template-part
    .wp-block-site-title a{
        font-size:20px !important;
        font-weight:700 !important;
        line-height:1.2 !important;
        color:#111 !important;
        text-decoration:none !important;
        white-space:nowrap !important;
    }

    header.wp-block-template-part
    .wp-block-woocommerce-cart-link{
        margin:0 !important;
        display:flex !important;
        align-items:center !important;
    }

}
/* =========================================
   CARRITO - ENLACE AL PRODUCTO
========================================= */

.atk-cart-product-link{
    color:inherit;
    text-decoration:none;
    display:block;
}

.atk-cart-product-link:hover{
    color:inherit;
    text-decoration:none;
}

.atk-cart-title .atk-cart-product-link{
    font-weight:inherit;
}

.atk-cart-image-wrap .atk-cart-product-link{
    width:100%;
    height:100%;
}

/* Pulido del carrito lateral móvil. */
#atk-cart-drawer{width:min(92vw,420px);height:100dvh}
.atk-cart-header{flex:0 0 62px;background:#fff}
#atk-cart-content{overflow-anchor:none;overscroll-behavior:contain;scroll-behavior:smooth;padding:14px;background:#f6f7fb}
.atk-cart-item{align-items:flex-start;gap:12px;margin-bottom:11px;padding:11px;border:1px solid #e8ebf1;border-radius:13px;box-shadow:0 4px 15px rgba(16,24,40,.055)}
.atk-cart-image-wrap{width:78px}.atk-cart-image{display:block;aspect-ratio:1/1;object-fit:contain;background:#f8f9fc}
.atk-cart-title{margin-bottom:4px;font-size:14px;line-height:1.3}.atk-cart-price{margin-bottom:5px;font-size:17px}
.atk-cart-presale{display:flex;align-items:flex-start;flex-direction:column;gap:2px;margin-bottom:5px}.atk-cart-presale strong{display:inline-flex;padding:3px 7px;border-radius:999px;background:#5424ef;color:#fff;font-size:9px;letter-spacing:.04em}.atk-cart-presale span{color:#655a78;font-size:10px;line-height:1.25}
.atk-cart-stock{margin-bottom:8px;color:#16804c;font-size:10px;font-weight:750}
.atk-cart-quantity{gap:5px}.atk-cart-quantity button{width:31px;height:31px;border-radius:7px;font-size:17px}.atk-cart-quantity button:disabled{background:#d7dbe4;color:#7d8491;cursor:not-allowed;opacity:.75}.atk-cart-quantity span{font-size:15px}
.atk-cart-remove{width:31px;height:31px;border-radius:7px;font-size:13px}
.atk-cart-footer{margin:0 -14px -14px;padding:14px 16px calc(14px + env(safe-area-inset-bottom));box-shadow:0 -8px 20px rgba(16,24,40,.07)}
.atk-cart-total{margin-bottom:11px;font-size:17px}.atk-cart-total strong{color:#17233b;white-space:nowrap}.atk-cart-checkout{height:50px}
@media(max-width:370px){#atk-cart-drawer{width:96vw}.atk-cart-image-wrap{width:68px}.atk-cart-item{gap:9px}.atk-cart-footer{padding-inline:13px}}
/* =========================================
   ALDEBARAN - CART OVERLAY
   ========================================= */

#atk-cart-overlay {

    position: fixed;

    inset: 0;

    background: rgba(10, 8, 25, 0.45);

    z-index: 9999998;

    opacity: 0;

    visibility: hidden;

    pointer-events: none;

    transition:
        opacity 0.30s ease,
        visibility 0.30s ease;
}


/* Overlay activo */

#atk-cart-overlay.active {

    opacity: 1;

    visibility: visible;

    pointer-events: auto;
}
/* =========================================
   ALDEBARAN - ENVÍO GRATIS
   ========================================= */

.atk-free-shipping-message {

    margin-bottom: 18px;
    padding: 14px 15px;

    border-radius: 12px;

    background:
        linear-gradient(
            135deg,
            rgba(79, 21, 224, 0.07),
            rgba(21, 102, 224, 0.07)
        );

    border: 1px solid rgba(79, 21, 224, 0.15);
}


/* Título */

.atk-free-shipping-title {

    margin-bottom: 5px;

    font-size: 14px;
    font-weight: 700;

    color: #222222;
}


/* Texto */

.atk-free-shipping-text {

    margin-bottom: 10px;

    font-size: 12px;
    line-height: 1.4;

    color: #666666;
}

.atk-free-shipping-text strong {

    color: #4F15E0;
}


/* Barra */

.atk-free-shipping-progress {

    width: 100%;
    height: 8px;

    overflow: hidden;

    border-radius: 10px;

    background: #e7e7e7;
}


/* Progreso */

.atk-free-shipping-progress-bar {

    height: 100%;

    border-radius: 10px;

    background:
        linear-gradient(
            90deg,
            #4F15E0,
            #1566E0
        );

    transition: width 0.4s ease;
}


/* Valores */

.atk-free-shipping-progress-labels {

    display: flex;

    justify-content: space-between;

    margin-top: 5px;

    font-size: 10px;

    color: #999999;
}


/* =========================================
   ENVÍO GRATIS CONSEGUIDO
   ========================================= */

.atk-free-shipping-success {

    display: flex;

    align-items: center;

    gap: 9px;

    margin-bottom: 18px;

    padding: 12px 14px;

    border-radius: 12px;

    background:
        linear-gradient(
            135deg,
            rgba(79, 21, 224, 0.10),
            rgba(21, 102, 224, 0.10)
        );

    border: 1px solid rgba(79, 21, 224, 0.20);

    font-size: 13px;

    color: #333333;
}


.atk-free-shipping-success strong {

    color: #4F15E0;
}


.atk-free-shipping-icon {

    display: flex;

    align-items: center;
    justify-content: center;

    width: 25px;
    height: 25px;

    min-width: 25px;

    border-radius: 50%;

    background:
        linear-gradient(
            135deg,
            #4F15E0,
            #1566E0
        );

    color: #ffffff;

    font-size: 13px;
    font-weight: 700;
}
/* =========================================
   ALDEBARAN - CASHBACK
   ========================================= */

#atk-cart-cashback {
    width: 100%;
    margin: 0 0 18px;
}


/* Tarjeta principal */

.atk-cashback-member,
.atk-cashback-guest {
    width: 100%;
    box-sizing: border-box;

    padding: 18px 20px;

    border-radius: 16px;

    background:
        linear-gradient(
            135deg,
            rgba(79, 21, 224, 0.06) 0%,
            rgba(21, 102, 224, 0.08) 100%
        );

    border: 1px solid rgba(79, 21, 224, 0.18);

    box-shadow:
        0 6px 18px rgba(79, 21, 224, 0.08);
}


/* Título */

.atk-cashback-title {
    display: flex;
    align-items: center;

    margin-bottom: 8px;

    font-size: 14px;
    font-weight: 700;

    color: #222;
}


/* Texto */

.atk-cashback-text {
    margin-bottom: 6px;

    font-size: 14px;
    line-height: 1.4;

    color: #666;
}


/* =========================================
   CASHBACK - EQUIVALENCIA
   ========================================= */

.atk-cashback-equivalence {
    display: grid;

    grid-template-columns: 1fr auto 1fr;

    align-items: center;

    column-gap: 10px;

    margin-top: 8px;
}


/* Puntos */

.atk-cashback-points-value,
.atk-cashback-money-value {
    display: flex;

    flex-direction: column;

    line-height: 1.15;
}


.atk-cashback-points-value {
    text-align: left;
}


.atk-cashback-money-value {
    text-align: right;
}


/* Número de puntos */

.atk-cashback-points-value strong {
    font-size: 18px;

    font-weight: 700;

    color: #4F15E0;
}


.atk-cashback-points-value span {
    margin-top: 2px;

    font-size: 12px;

    color: #777;
}


/* Signo = */

.atk-cashback-equals {
    display: flex;

    align-items: center;
    justify-content: center;

    font-size: 18px;

    font-weight: 600;

    color: #999;
}


/* Dinero */

.atk-cashback-money-value strong {
    font-size: 18px;

    font-weight: 700;

    background:
        linear-gradient(
            135deg,
            #4F15E0 0%,
            #1566E0 100%
        );

    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}


.atk-cashback-money-value span {
    margin-top: 2px;

    font-size: 12px;

    color: #777;
}


/* =========================================
   VISITANTE
   ========================================= */

.atk-cashback-guest {
    text-align: center;
}


.atk-cashback-guest .atk-cashback-title {
    justify-content: center;
}


.atk-cashback-guest .atk-cashback-text {
    margin-bottom: 14px;
}


/* Botón crear cuenta */

.atk-cashback-register {
    display: flex;

    align-items: center;
    justify-content: center;

    width: 100%;
    min-height: 42px;

    box-sizing: border-box;

    padding: 10px 16px;

    border-radius: 10px;

    background:
        linear-gradient(
            135deg,
            #4F15E0 0%,
            #1566E0 100%
        );

    color: #ffffff !important;

    font-size: 15px;
    font-weight: 700;

    text-decoration: none !important;

    box-shadow:
        0 5px 12px rgba(79, 21, 224, 0.20);

    transition:
        transform 0.15s ease,
        box-shadow 0.15s ease;
}


.atk-cashback-register:hover {
    transform: translateY(-1px);

    box-shadow:
        0 7px 16px rgba(79, 21, 224, 0.25);
}


/* Login */

.atk-cashback-login {
    margin-top: 12px;

    font-size: 13px;

    color: #777;
}


.atk-cashback-login a {
    color: #4F15E0;

    font-weight: 600;

    text-decoration: none;
}


/* Estado de carga */

.atk-cashback-loading {
    padding: 14px;

    text-align: center;

    font-size: 14px;

    color: #777;
}
/* =========================================
   CASHBACK DISPONIBLE
   ========================================= */

.atk-cashback-available {
    display: flex;

    align-items: center;
    justify-content: space-between;

    margin: 8px 0 12px;
    padding: 8px 11px;

    border-radius: 10px;

    background: rgba(79, 21, 224, 0.06);

    font-size: 13px;

    color: #777;
}


.atk-cashback-available strong {
    font-size: 15px;

    font-weight: 700;

    color: #4F15E0;
}
/* Búsqueda enriquecida compartida entre móvil y escritorio. */
.atk-search-main{display:flex;align-items:center;gap:12px;min-width:0;flex:1;color:inherit;text-decoration:none}
.atk-search-badges,.atk-search-tags{display:flex;flex-wrap:wrap;gap:4px;margin:1px 0 5px}
.atk-search-badges span,.atk-search-tags span{padding:3px 6px;border-radius:999px;background:#f0edff;color:#4620d0;font-size:10px;font-weight:700;line-height:1.15}
.atk-search-badges span{background:#4c20e8;color:#fff;text-transform:uppercase}
.atk-search-item .atk-add-cart{align-self:center;min-width:72px;padding:8px 10px;border:0;border-radius:8px;background:linear-gradient(110deg,#4f15e0,#1566e0);color:#fff;font-size:12px;font-weight:700;cursor:pointer}
.atk-search-item .atk-add-cart:disabled{background:#d8dce5;color:#747b89;cursor:not-allowed}
.atk-search-view-all{display:block;padding:12px;border:1px solid #d9d3ff;border-radius:10px;background:#f4f2ff;color:#421ad1;font-size:13px;font-weight:750;text-align:center;text-decoration:none}
.atk-header-search{position:relative;overflow:visible!important}
.atk-desktop-search-results{position:absolute;top:calc(100% + 9px);left:0;right:0;z-index:10020;display:none;max-height:min(620px,72vh);padding:12px;overflow-y:auto;border:1px solid #dfe4ee;border-radius:14px;background:#fff;box-shadow:0 18px 45px rgba(16,35,63,.18)}
.atk-desktop-search-results.is-open{display:block}
.atk-desktop-search-results .atk-search-item{margin-bottom:8px;padding:8px;box-shadow:none}
.atk-desktop-search-results .atk-search-image{width:54px;height:54px}
.atk-desktop-search-results .atk-search-title{font-size:14px;margin-bottom:3px}
.atk-desktop-search-results .atk-search-price{font-size:15px;margin-bottom:1px}
.atk-desktop-search-results .atk-search-stock{font-size:10px!important;padding:2px 6px!important}
.atk-desktop-search-results .atk-search-item .atk-add-cart{min-width:68px}
@media(max-width:767px){
    .atk-desktop-search-results{display:none!important}
    #atk-search-modal{align-items:flex-start;padding-top:max(18px,env(safe-area-inset-top))}
    .atk-search-box{width:100%;max-height:calc(100dvh - 36px);padding:18px 14px 14px;overflow:hidden}
    #atk-search-results{max-height:calc(100dvh - 120px);margin-top:13px}
    .atk-search-item{gap:7px;padding:8px;margin-bottom:8px}
    .atk-search-main{gap:8px}
    .atk-search-image{width:54px;height:64px}
    .atk-search-title{font-size:13px;margin-bottom:3px}
    .atk-search-price{font-size:15px;margin-bottom:1px}
    .atk-search-stock{font-size:10px!important;padding:2px 6px!important}
    .atk-search-tags span{font-size:9px;padding:2px 5px}
    .atk-search-item .atk-add-cart{min-width:58px;padding:8px 6px;font-size:11px}
}

/* Ajuste definitivo de las tarjetas: evita reglas heredadas del carrito. */
#atk-search-results .atk-search-item,
.atk-desktop-search-results .atk-search-item{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center!important;
    gap:10px!important;
    min-height:0;
    padding:10px!important;
    overflow:hidden;
    border:1px solid #e3e7ef!important;
    border-radius:12px!important;
    background:#fff!important;
    transform:none!important;
}
#atk-search-results .atk-search-main,
.atk-desktop-search-results .atk-search-main{
    display:grid!important;
    grid-template-columns:64px minmax(0,1fr);
    align-items:center;
    gap:11px;
    min-width:0;
}
#atk-search-results .atk-search-image,
.atk-desktop-search-results .atk-search-image{
    display:block!important;
    width:64px!important;
    height:72px!important;
    box-sizing:border-box;
    padding:5px!important;
    object-fit:contain!important;
}
#atk-search-results .atk-search-info,
.atk-desktop-search-results .atk-search-info{
    display:flex!important;
    min-width:0;
    align-items:flex-start!important;
    justify-content:center;
    overflow:hidden;
}
#atk-search-results .atk-search-title,
.atk-desktop-search-results .atk-search-title{
    width:100%;
    margin:0 0 4px!important;
    color:#14233d!important;
    font-size:14px!important;
    font-weight:750!important;
    line-height:1.25!important;
    overflow-wrap:anywhere;
}
#atk-search-results .atk-search-price,
.atk-desktop-search-results .atk-search-price{
    margin:1px 0 3px!important;
    color:#4b20df!important;
    font-size:16px!important;
    font-weight:800!important;
    line-height:1.2;
    white-space:nowrap;
}
#atk-search-results .atk-search-stock,
.atk-desktop-search-results .atk-search-stock{
    align-self:flex-start!important;
    width:auto!important;
    max-width:100%;
    margin:1px 0 0!important;
    padding:3px 7px!important;
    line-height:1.2!important;
    white-space:nowrap;
}
#atk-search-results .atk-search-item .atk-add-cart,
.atk-desktop-search-results .atk-search-item .atk-add-cart{
    position:static!important;
    display:inline-flex!important;
    width:auto!important;
    min-width:78px!important;
    max-width:none!important;
    height:40px!important;
    min-height:40px!important;
    align-items:center;
    justify-content:center;
    align-self:center!important;
    padding:8px 11px!important;
    margin:0!important;
    border-radius:9px!important;
    font-size:12px!important;
    line-height:1!important;
}
#atk-search-results .atk-search-tags,
#atk-search-results .atk-search-badges,
.atk-desktop-search-results .atk-search-tags,
.atk-desktop-search-results .atk-search-badges{max-width:100%;margin:0 0 4px!important}

@media(max-width:767px){
    #atk-search-close{z-index:2}
    #atk-search-input{padding-right:48px}
    #atk-search-results .atk-search-item{
        grid-template-columns:1fr auto;
        gap:7px 10px!important;
        padding:9px!important;
    }
    #atk-search-results .atk-search-main{
        grid-column:1/-1;
        grid-template-columns:58px minmax(0,1fr);
        gap:9px;
    }
    #atk-search-results .atk-search-image{width:58px!important;height:68px!important}
    #atk-search-results .atk-search-item .atk-add-cart{
        grid-column:2;
        min-width:96px!important;
        height:36px!important;
        min-height:36px!important;
    }
    #atk-search-results .atk-search-stock{font-size:10px!important}
}
