/* =========================================
   ALDEBARAN TOOLKIT
   WOOCOMMERCE
========================================= */


/* =========================================
   PRODUCTO
   BOTÓN AGREGAR AL CARRITO
========================================= */

.woocommerce div.product form.cart .single_add_to_cart_button {

    background: linear-gradient(
        135deg,
        #4F15E0,
        #1566E0
    ) !important;

    color: #ffffff !important;

    border: none !important;

    border-radius: 10px !important;

    min-height: 52px;

    padding: 0 28px !important;

    font-size: 16px !important;

    font-weight: 600 !important;

    box-shadow:
        0 8px 20px rgba(79, 21, 224, 0.20);

    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease,
        opacity 0.2s ease;

}


/* Hover */

.woocommerce div.product form.cart .single_add_to_cart_button:hover {

    transform: translateY(-1px);

    box-shadow:
        0 10px 24px rgba(79, 21, 224, 0.30);

}


/* Estado deshabilitado */

.woocommerce div.product form.cart .single_add_to_cart_button:disabled {

    opacity: 0.6;

    cursor: not-allowed;

    transform: none;

}
/* =========================================
   ALDEBARAN - SELECTOR DE CANTIDAD
   ========================================= */

.woocommerce div.product form.cart .quantity {
    display: flex;
    align-items: center;
    gap: 6px;
    margin: 0 10px 0 0;
    float: none;
}

/* Botones + y - */

.woocommerce div.product form.cart .quantity .atk-qty-minus,
.woocommerce div.product form.cart .quantity .atk-qty-plus {
    width: 42px;
    height: 42px;
    min-width: 42px;
    padding: 0;
    margin: 0;
    border: none;
    border-radius: 10px;

    background: linear-gradient(
        135deg,
        #4F15E0 0%,
        #1566E0 100%
    );

    color: #ffffff;
    font-size: 22px;
    font-weight: 700;
    line-height: 42px;
    text-align: center;

    cursor: pointer;

    box-shadow: 0 5px 12px rgba(79, 21, 224, 0.22);

    transition:
        transform 0.15s ease,
        box-shadow 0.15s ease,
        opacity 0.15s ease;
}

/* Hover */

.woocommerce div.product form.cart .quantity .atk-qty-minus:hover,
.woocommerce div.product form.cart .quantity .atk-qty-plus:hover {
    transform: translateY(-1px);
    box-shadow: 0 7px 16px rgba(79, 21, 224, 0.30);
}

/* Click */

.woocommerce div.product form.cart .quantity .atk-qty-minus:active,
.woocommerce div.product form.cart .quantity .atk-qty-plus:active {
    transform: translateY(1px);
}

/* Input */

.woocommerce div.product form.cart .quantity input.qty {
    width: 72px;
    height: 42px;
    min-width: 72px;

    padding: 0 8px;
    margin: 0;

    border: 1px solid #d5d5d5;
    border-radius: 10px;

    background: #ffffff;
    color: #222222;

    font-size: 17px;
    font-weight: 500;

    text-align: center;

    box-sizing: border-box;
}

/* Quitar flechas nativas del input */

.woocommerce div.product form.cart .quantity input.qty::-webkit-inner-spin-button,
.woocommerce div.product form.cart .quantity input.qty::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.woocommerce div.product form.cart .quantity input.qty {
    -moz-appearance: textfield;
}

/* =========================================
   ALINEAR CANTIDAD + AÑADIR AL CARRITO
   ========================================= */

.woocommerce div.product form.cart {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0;
}

/* Evitar estilos de WooCommerce que desplacen el quantity */

.woocommerce div.product form.cart .quantity {
    float: none !important;
}

/* =========================================
   RESPONSIVE
   ========================================= */

@media (max-width: 768px) {

    .woocommerce div.product form.cart {
        width: 100%;
    }

    .woocommerce div.product form.cart .quantity {
        margin-right: 8px;
    }

    .woocommerce div.product form.cart .quantity .atk-qty-minus,
    .woocommerce div.product form.cart .quantity .atk-qty-plus {
        width: 40px;
        height: 40px;
        min-width: 40px;
        line-height: 40px;
    }

    .woocommerce div.product form.cart .quantity input.qty {
        width: 60px;
        min-width: 60px;
        height: 40px;
    }

}
/* =========================================
   ALDEBARAN - PRODUCTO AÑADIDO
   ========================================= */

.woocommerce div.product form.cart .single_add_to_cart_button.atk-added-to-cart {
    background: linear-gradient(
        135deg,
        #4F15E0 0%,
        #1566E0 100%
    );

    color: #ffffff;
    cursor: default;
    pointer-events: none;
    opacity: 1;
    transform: none;
    box-shadow: 0 5px 14px rgba(79, 21, 224, 0.25);
}
/* =========================================
   ALDEBARAN - AVISO DE PRODUCTO AÑADIDO
   ========================================= */

.woocommerce-message {
    position: relative;

    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;

    margin: 0 0 30px 0;
    padding: 16px 20px;

    border: 1px solid rgba(79, 21, 224, 0.20);
    border-radius: 14px;

    background: linear-gradient(
        135deg,
        rgba(79, 21, 224, 0.07) 0%,
        rgba(21, 102, 224, 0.07) 100%
    );

    color: #222222;

    box-shadow: 0 6px 18px rgba(79, 21, 224, 0.08);

    font-size: 15px;
}


/*
 * Icono de WooCommerce
 */

.woocommerce-message::before {
    color: #4F15E0 !important;
}


/*
 * Enlace "Ver carrito"
 */

.woocommerce-message a.button,
.woocommerce-message a.wc-forward {
    flex-shrink: 0;

    margin: 0 !important;
    padding: 10px 18px !important;

    border: none !important;
    border-radius: 9px !important;

    background: linear-gradient(
        135deg,
        #4F15E0 0%,
        #1566E0 100%
    ) !important;

    color: #ffffff !important;

    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;

    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;
}


/*
 * Hover
 */

.woocommerce-message a.button:hover,
.woocommerce-message a.wc-forward:hover {
    transform: translateY(-1px);

    box-shadow:
        0 7px 16px rgba(79, 21, 224, 0.28);
}


/*
 * =========================================
 * MOBILE
 * =========================================
 */

@media (max-width: 768px) {

    .woocommerce-message {
        align-items: flex-start;
        flex-direction: column;
        gap: 12px;

        padding: 15px 16px;

        margin-bottom: 22px;

        font-size: 14px;
    }

    /* =========================================
   ALDEBARAN - BOTÓN VER CARRITO
   ========================================= */

.woocommerce-message a.button,
.woocommerce-message a.wc-forward {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;

    flex-shrink: 0;

    margin: 0 !important;
    padding: 10px 20px !important;

    border: none !important;
    border-radius: 9px !important;

    background: linear-gradient(
        135deg,
        #4F15E0 0%,
        #1566E0 100%
    ) !important;

    color: #ffffff !important;

    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;

    text-decoration: none !important;

    box-shadow: 0 5px 12px rgba(79, 21, 224, 0.20) !important;

    transition:
        transform 0.15s ease,
        box-shadow 0.15s ease !important;
}

.woocommerce-message a.button:hover,
.woocommerce-message a.wc-forward:hover {
    background: linear-gradient(
        135deg,
        #4F15E0 0%,
        #1566E0 100%
    ) !important;

    color: #ffffff !important;

    text-decoration: none !important;

    transform: translateY(-1px);

    box-shadow:
        0 7px 16px rgba(79, 21, 224, 0.30) !important;
}

.woocommerce-message::before {
    color: #ffffff !important;

    display: flex !important;
    align-items: center;
    justify-content: center;

    width: 34px;
    height: 34px;

    min-width: 34px;

    margin-right: 8px !important;

    border-radius: 50%;

    background: linear-gradient(
        135deg,
        #4F15E0 0%,
        #1566E0 100%
    );

    box-sizing: border-box;
}
/* =========================================
   ALDEBARAN - AVISO WOOCOMMERCE BLOCKS
   ========================================= */

.wc-block-components-notice-banner.is-success {
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;

    margin: 0 0 30px 0 !important;
    padding: 14px 18px !important;

    border: 1px solid rgba(79, 21, 224, 0.22) !important;
    border-radius: 14px !important;

    background: linear-gradient(
        135deg,
        rgba(79, 21, 224, 0.06) 0%,
        rgba(21, 102, 224, 0.06) 100%
    ) !important;

    color: #222222 !important;

    box-shadow: 0 6px 18px rgba(79, 21, 224, 0.08) !important;

    font-size: 15px !important;
}


/* =========================================
   ICONO
   ========================================= */

.wc-block-components-notice-banner.is-success > svg,
.wc-block-components-notice-banner.is-success .wc-block-components-notice-banner__content::before {
    color: #ffffff !important;
}


/* =========================================
   CONTENIDO
   ========================================= */

.wc-block-components-notice-banner.is-success
.wc-block-components-notice-banner__content {
    color: #222222 !important;
}


/* =========================================
   TEXTO DEL AVISO
   ========================================= */

.wc-block-components-notice-banner.is-success
.wc-block-components-notice-banner__content a {
    color: #4F15E0 !important;
}


/* =========================================
   BOTÓN "VER CARRITO"
   ========================================= */

.wc-block-components-notice-banner.is-success
.wc-forward,
.wc-block-components-notice-banner.is-success
a.wc-block-components-notice-banner__link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    margin-left: auto !important;
    padding: 9px 18px !important;

    border: none !important;
    border-radius: 9px !important;

    background: linear-gradient(
        135deg,
        #4F15E0 0%,
        #1566E0 100%
    ) !important;

    color: #ffffff !important;

    font-size: 14px !important;
    font-weight: 600 !important;

    text-decoration: none !important;

    box-shadow:
        0 5px 12px rgba(79, 21, 224, 0.22) !important;

    transition:
        transform 0.15s ease,
        box-shadow 0.15s ease !important;
}


/* Hover */

.wc-block-components-notice-banner.is-success
.wc-forward:hover,
.wc-block-components-notice-banner.is-success
a.wc-block-components-notice-banner__link:hover {

    background: linear-gradient(
        135deg,
        #4F15E0 0%,
        #1566E0 100%
    ) !important;

    color: #ffffff !important;

    text-decoration: none !important;

    transform: translateY(-1px);

    box-shadow:
        0 7px 16px rgba(79, 21, 224, 0.30) !important;
}


/* =========================================
   MOBILE
   ========================================= */

@media (max-width: 768px) {

    .wc-block-components-notice-banner.is-success {
        align-items: flex-start !important;
        flex-direction: column !important;
        gap: 12px !important;

        padding: 14px 16px !important;
    }

    .wc-block-components-notice-banner.is-success
    .wc-forward,
    .wc-block-components-notice-banner.is-success
    a.wc-block-components-notice-banner__link {
        width: 100% !important;
        margin-left: 0 !important;

        box-sizing: border-box !important;

        text-align: center !important;
    }

}
/* =========================================
   ALDEBARAN - CORRECCIÓN TEXTO VER CARRITO
   ========================================= */

.wc-block-components-notice-banner.is-success a,
.wc-block-components-notice-banner.is-success a.wc-forward,
.wc-block-components-notice-banner.is-success
.wc-block-components-notice-banner__link {
    color: #ffffff !important;
    text-decoration: none !important;
}

.wc-block-components-notice-banner.is-success a:hover,
.wc-block-components-notice-banner.is-success a.wc-forward:hover,
.wc-block-components-notice-banner.is-success
.wc-block-components-notice-banner__link:hover {
    color: #ffffff !important;
    text-decoration: none !important;
}

/* =========================================
   ALDEBARAN - ICONO DE CONFIRMACIÓN
   ========================================= */

.wc-block-components-notice-banner.is-success > svg {
    color: #ffffff !important;
    fill: #ffffff !important;

    background: linear-gradient(
        135deg,
        #4F15E0 0%,
        #1566E0 100%
    ) !important;

    border-radius: 50%;

    padding: 7px;

    box-sizing: border-box;

    width: 38px !important;
    height: 38px !important;
}

/* =========================================
   ALDEBARAN - AVISO COMPACTO
   ========================================= */

.wc-block-components-notice-banner.is-success {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;

    width: fit-content !important;
    max-width: 100% !important;

    margin-left: auto !important;
    margin-right: auto !important;

    padding: 10px 14px !important;

    gap: 10px !important;
}


/* Icono */

.wc-block-components-notice-banner.is-success > svg {
    flex: 0 0 38px !important;

    width: 38px !important;
    height: 38px !important;

    margin: 0 !important;
}


/* Contenido */

.wc-block-components-notice-banner.is-success
.wc-block-components-notice-banner__content {

    display: flex !important;
    align-items: center !important;

    gap: 12px !important;

    margin: 0 !important;

    white-space: nowrap !important;
}


/* Botón Ver carrito */

.wc-block-components-notice-banner.is-success
.wc-block-components-notice-banner__content
a {

    margin-left: 4px !important;

    padding: 8px 16px !important;

    white-space: nowrap !important;
}


/* =========================================
   MÓVIL
   ========================================= */

@media (max-width: 768px) {

    .wc-block-components-notice-banner.is-success {

        width: 100% !important;
        box-sizing: border-box !important;

        padding: 10px 12px !important;
    }

    .wc-block-components-notice-banner.is-success
    .wc-block-components-notice-banner__content {

        white-space: normal !important;

        flex-wrap: wrap !important;
    }

}

}
/* =========================================
   ALDEBARAN - SIMPLE POINTS & REWARDS
   CHECKOUT
   ========================================= */

@media (max-width: 781px) {

    /* Contenedor completo de Rewards */
    .spar-redeem-compact--totals {
        margin-top: 0 !important;
        padding: 14px 16px !important;

        background: linear-gradient(
            135deg,
            #f7f5ff 0%,
            #f1f5ff 100%
        ) !important;

        border-top: 1px solid #e5ddff !important;
        border-bottom: 1px solid #e5ddff !important;
    }


    /* Fila superior */
    .spar-redeem-compact--totals
    .spar-compact-row {
        align-items: center !important;
        gap: 10px !important;
    }


    /* Texto de puntos disponibles */
    .spar-redeem-compact--totals
    .spar-compact-left {
        font-size: 14px !important;
        font-weight: 600 !important;
        color: #111827 !important;
        line-height: 1.4 !important;
    }


    /* Botón Redeem */
    .spar-redeem-compact--totals
    .spar-compact-toggle-btn {
        padding: 5px 0 !important;

        background: transparent !important;
        border: 0 !important;

        color: #4F15E0 !important;

        font-size: 13px !important;
        font-weight: 700 !important;
    }


    /* Panel de redención */
    .spar-redeem-compact--totals
    .spar-redeem-panel {
        margin-top: 12px !important;
    }


    /* Fila de controles */
    .spar-redeem-compact--totals
    .spar-panel-row {
        gap: 10px !important;
        align-items: center !important;
    }


    /* Slider */
    .spar-redeem-compact--totals
    input[type="range"] {
        height: 5px !important;

        accent-color: #4F15E0 !important;

        cursor: pointer;
    }


    /* Campo de cantidad */
    .spar-redeem-compact--totals
    input[type="number"],
    .spar-redeem-compact--totals
    input[type="text"] {
        height: 40px !important;

        border: 1px solid #ddd6fe !important;
        border-radius: 10px !important;

        background: #ffffff !important;

        font-size: 14px !important;
        text-align: center !important;

        box-shadow: none !important;
    }


    /* Zona inferior */
    .spar-redeem-compact--totals
    .spar-redeem-actions {
        display: flex !important;
        gap: 10px !important;

        margin-top: 10px !important;
    }


    /* Caja Discount Value */
    .spar-redeem-compact--totals
    .spar-discount-box {
        flex: 1 !important;

        min-height: 40px !important;

        display: flex !important;
        align-items: center !important;
        justify-content: center !important;

        padding: 8px 10px !important;

        border: 1px solid #b7f0d7 !important;
        border-radius: 10px !important;

        background: #f0fff8 !important;

        font-size: 13px !important;
        color: #087443 !important;
    }


    /* Botón aplicar */
    .spar-redeem-compact--totals
    .spar-redeem-apply-btn {
        flex: 1 !important;

        min-height: 40px !important;

        padding: 8px 12px !important;

        border: 0 !important;
        border-radius: 10px !important;

        background:
            linear-gradient(
                135deg,
                #4F15E0 0%,
                #1566E0 100%
            ) !important;

        color: #ffffff !important;

        font-size: 13px !important;
        font-weight: 700 !important;

        box-shadow:
            0 5px 12px
            rgba(79, 21, 224, 0.20) !important;

        cursor: pointer !important;
    }


    /* Hover */
    .spar-redeem-compact--totals
    .spar-redeem-apply-btn:hover {
        background:
            linear-gradient(
                135deg,
                #4F15E0 0%,
                #1566E0 100%
            ) !important;

        color: #ffffff !important;
    }


    /* Botón deshabilitado */
    .spar-redeem-compact--totals
    .spar-redeem-apply-btn:disabled {
        opacity: 0.55 !important;
        cursor: not-allowed !important;
        box-shadow: none !important;
    }

}
/* =========================================
   ALDEBARAN - AJUSTE DE ALINEACIÓN
   SIMPLE POINTS & REWARDS
   ========================================= */

@media (max-width: 781px) {

    /* Contenedor interno completo */
    .spar-redeem-compact--totals
    .spar-redeem-panel {
        width: 100% !important;
        box-sizing: border-box !important;
    }


    /* Fila de puntos + Redeem */
    .spar-redeem-compact--totals
    .spar-compact-row {
        width: 100% !important;

        display: flex !important;

        justify-content: space-between !important;
        align-items: center !important;

        box-sizing: border-box !important;
    }


    /* Zona del slider + cantidad */
    .spar-redeem-compact--totals
    .spar-panel-row {
        width: 100% !important;

        display: flex !important;

        align-items: center !important;

        gap: 12px !important;

        box-sizing: border-box !important;
    }


    /* Slider */
    .spar-redeem-compact--totals
    .spar-panel-row input[type="range"] {
        flex: 1 1 auto !important;

        width: auto !important;

        min-width: 0 !important;
    }


    /* Campo de puntos */
    .spar-redeem-compact--totals
    .spar-panel-row input[type="number"],
    .spar-redeem-compact--totals
    .spar-panel-row input[type="text"] {
        flex: 0 0 94px !important;

        width: 94px !important;

        box-sizing: border-box !important;
    }


    /* Fila Discount + botón */
    .spar-redeem-compact--totals
    .spar-redeem-actions {
        width: 100% !important;

        display: grid !important;

        grid-template-columns:
            minmax(0, 1fr)
            minmax(0, 1.35fr) !important;

        gap: 10px !important;

        margin-top: 14px !important;

        box-sizing: border-box !important;
    }


    /* Discount Value */
    .spar-redeem-compact--totals
    .spar-discount-box {
        width: 100% !important;

        min-width: 0 !important;

        box-sizing: border-box !important;

        margin: 0 !important;
    }


    /* Botón */
    .spar-redeem-compact--totals
    .spar-redeem-apply-btn {
        width: 100% !important;

        min-width: 0 !important;

        box-sizing: border-box !important;

        margin: 0 !important;
    }

}
/* =========================================
   ALDEBARAN - FIX DEFINITIVO REDEEM
   ========================================= */

@media (max-width: 781px) {

    /* =====================================
       FILA DEL SLIDER + CANTIDAD
       ===================================== */

    .spar-redeem-compact--totals
    .spar-panel-row {
        display: grid !important;

        grid-template-columns:
            minmax(0, 1fr)
            100px !important;

        width: 100% !important;

        max-width: 100% !important;

        gap: 12px !important;

        margin: 0 !important;

        padding: 0 !important;

        box-sizing: border-box !important;

        flex: 0 0 100% !important;
    }


    /* Slider */
    .spar-redeem-compact--totals
    .spar-panel-row
    input[type="range"] {

        display: block !important;

        width: 100% !important;

        min-width: 0 !important;

        max-width: none !important;

        margin: 0 !important;

        box-sizing: border-box !important;
    }


    /* Campo de puntos */
    .spar-redeem-compact--totals
    .spar-panel-row
    input[type="number"],
    .spar-redeem-compact--totals
    .spar-panel-row
    input[type="text"] {

        display: block !important;

        width: 100% !important;

        min-width: 0 !important;

        max-width: none !important;

        margin: 0 !important;

        box-sizing: border-box !important;

        height: 48px !important;

        border-radius: 11px !important;
    }


    /* =====================================
       FILA DESCUENTO + BOTÓN
       ===================================== */

    .spar-redeem-compact--totals
    .spar-redeem-actions {

        display: grid !important;

        grid-template-columns:
            minmax(0, 1fr)
            minmax(0, 1.35fr) !important;

        width: 100% !important;

        max-width: 100% !important;

        flex: 0 0 100% !important;

        gap: 10px !important;

        margin: 14px 0 0 !important;

        padding: 0 !important;

        box-sizing: border-box !important;
    }


    /* Caja de descuento */
    .spar-redeem-compact--totals
    .spar-discount-box {

        width: 100% !important;

        min-width: 0 !important;

        max-width: none !important;

        margin: 0 !important;

        padding: 8px 10px !important;

        box-sizing: border-box !important;

        white-space: normal !important;

        overflow: hidden !important;

        text-align: center !important;

        line-height: 1.25 !important;
    }


    /* Botón aplicar */
    .spar-redeem-compact--totals
    .spar-redeem-apply-btn {

        width: 100% !important;

        min-width: 0 !important;

        max-width: none !important;

        margin: 0 !important;

        box-sizing: border-box !important;

        min-height: 48px !important;

        padding: 8px 10px !important;

        white-space: normal !important;

        line-height: 1.2 !important;
    }


    /* =====================================
       EVITAR QUE EL PLUGIN VUELVA A
       REDUCIR LAS FILAS AL 50%
       ===================================== */

    .spar-redeem-compact--totals
    .spar-panel-row,
    .spar-redeem-compact--totals
    .spar-redeem-actions {

        float: none !important;

        clear: both !important;
    }

}
/* =========================================
   FIX - SLIDER DE REDEEM
   ========================================= */

@media (max-width: 781px) {

    /* Restaurar la fila del slider */
    .spar-redeem-compact--totals
    .spar-panel-row {
        display: flex !important;

        width: 100% !important;
        max-width: 100% !important;

        gap: 12px !important;

        align-items: center !important;

        margin: 0 !important;
        padding: 0 !important;

        box-sizing: border-box !important;
    }


    /* El contenedor del slider debe ocupar el espacio disponible */
    .spar-redeem-compact--totals
    .spar-panel-row > *:first-child {
        flex: 1 1 auto !important;

        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;

        box-sizing: border-box !important;
    }


    /* Slider propiamente dicho */
    .spar-redeem-compact--totals
    .spar-panel-row input[type="range"] {
        display: block !important;

        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;

        flex: 1 1 auto !important;

        margin: 0 !important;

        box-sizing: border-box !important;

        appearance: auto !important;
        -webkit-appearance: auto !important;
    }


    /* Campo numérico */
    .spar-redeem-compact--totals
    .spar-panel-row input[type="number"],
    .spar-redeem-compact--totals
    .spar-panel-row input[type="text"] {

        flex: 0 0 100px !important;

        width: 100px !important;
        min-width: 100px !important;
        max-width: 100px !important;

        box-sizing: border-box !important;

        height: 48px !important;
    }

}
/* =========================================
   ALDEBARAN - SLIDER REDEEM
   SELECTOR EXACTO DEL PLUGIN
   ========================================= */

@media (max-width: 781px) {

    /* Fila completa */
    .spar-redeem-compact--totals
    .spar-panel-row {

        display: flex !important;

        width: 100% !important;
        max-width: 100% !important;

        flex-direction: row !important;

        align-items: center !important;

        justify-content: flex-start !important;

        gap: 12px !important;

        box-sizing: border-box !important;

        flex: 0 0 100% !important;
    }


    /* =====================================
       SLIDER REAL
       ===================================== */

    .spar-redeem-compact--totals
    .spar-panel-row
    > input.spar-redeem-slider {

        display: block !important;

        flex: 1 1 0% !important;

        width: 100% !important;

        min-width: 0 !important;

        max-width: none !important;

        height: 20px !important;

        margin: 0 !important;

        padding: 0 !important;

        box-sizing: border-box !important;

        cursor: pointer !important;

        appearance: auto !important;

        -webkit-appearance: auto !important;
    }


    /* =====================================
       CONTENEDOR DEL CAMPO DE CANTIDAD
       ===================================== */

    .spar-redeem-compact--totals
    .spar-panel-row
    > .spar-panel-right {

        flex: 0 0 100px !important;

        width: 100px !important;

        min-width: 100px !important;

        max-width: 100px !important;

        box-sizing: border-box !important;
    }


    /* Campo dentro del panel derecho */
    .spar-redeem-compact--totals
    .spar-panel-right
    input {

        width: 100% !important;

        min-width: 0 !important;

        max-width: 100% !important;

        box-sizing: border-box !important;
    }

}
@media (max-width: 781px) {

    .spar-redeem-compact--totals
    .spar-panel-row
    > input.spar-redeem-slider {

        display: block !important;

        flex: 1 1 180px !important;

        width: 180px !important;

        min-width: 180px !important;

        max-width: none !important;

        height: 20px !important;

        margin: 0 !important;

        padding: 0 !important;

        box-sizing: border-box !important;

        visibility: visible !important;

        opacity: 1 !important;

        cursor: pointer !important;
    }


    .spar-redeem-compact--totals
    .spar-panel-row
    > .spar-panel-right {

        flex: 0 0 100px !important;

        width: 100px !important;

        min-width: 100px !important;

        max-width: 100px !important;

        box-sizing: border-box !important;
    }

}
@media (max-width: 781px) {

    /* =====================================
       FILA DEL REDEEM
       ===================================== */

    .spar-redeem-compact--totals
    .spar-panel-row {

        display: flex !important;

        flex-direction: row !important;

        align-items: center !important;

        justify-content: flex-start !important;

        width: 100% !important;

        gap: 12px !important;

        box-sizing: border-box !important;

        overflow: visible !important;
    }


    /* Slider: mantenemos el ancho que sabemos
       que funciona */
    .spar-redeem-compact--totals
    .spar-panel-row
    > input.spar-redeem-slider {

        flex: 0 0 180px !important;

        width: 180px !important;

        min-width: 180px !important;

        max-width: 180px !important;
    }


    /* Campo de puntos */
    .spar-redeem-compact--totals
    .spar-panel-row
    > .spar-panel-right {

        flex: 0 0 100px !important;

        width: 100px !important;

        min-width: 100px !important;

        max-width: 100px !important;

        box-sizing: border-box !important;
    }

}
/* =========================================
   ALDEBARAN - SEPARAR REDEEM EN DOS FILAS
   ========================================= */

@media (max-width: 781px) {

    /* El panel completo debe comportarse
       como una columna */
    .spar-redeem-compact--totals
    .spar-redeem-panel {

        display: block !important;

        width: 100% !important;

        max-width: 100% !important;

        box-sizing: border-box !important;

        overflow: visible !important;
    }


    /* =====================================
       FILA 1
       SLIDER + CANTIDAD
       ===================================== */

    .spar-redeem-compact--totals
    .spar-panel-row {

        display: flex !important;

        width: 100% !important;

        max-width: 100% !important;

        flex: none !important;

        clear: both !important;

        float: none !important;

        box-sizing: border-box !important;
    }


    /* =====================================
       FILA 2
       DESCUENTO + BOTÓN
       ===================================== */

    .spar-redeem-compact--totals
    .spar-redeem-actions {

        display: grid !important;

        grid-template-columns:
            minmax(0, 1fr)
            minmax(0, 1.35fr) !important;

        width: 100% !important;

        max-width: 100% !important;

        clear: both !important;

        float: none !important;

        flex: none !important;

        margin-top: 14px !important;

        padding: 0 !important;

        gap: 10px !important;

        box-sizing: border-box !important;
    }


    /* Caja de descuento */
    .spar-redeem-compact--totals
    .spar-discount-box {

        width: 100% !important;

        min-width: 0 !important;

        max-width: none !important;

        margin: 0 !important;

        box-sizing: border-box !important;

        text-align: center !important;

        overflow: hidden !important;
    }


    /* Botón */
    .spar-redeem-compact--totals
    .spar-redeem-apply-btn {

        width: 100% !important;

        min-width: 0 !important;

        max-width: none !important;

        margin: 0 !important;

        box-sizing: border-box !important;

        min-height: 44px !important;

        padding: 8px 10px !important;

        white-space: normal !important;

        line-height: 1.2 !important;
    }

}
/* =========================================
   ALDEBARAN - AJUSTE FINAL REDEEM
   SLIDER + CAMPO DE PUNTOS
   ========================================= */

@media (max-width: 781px) {

    /* Slider */
    .spar-redeem-compact--totals
    .spar-panel-row
    > input.spar-redeem-slider {

        flex: 1 1 auto !important;

        width: auto !important;

        min-width: 180px !important;

        max-width: none !important;

        height: 20px !important;

        margin: 0 !important;
    }


    /* Campo de puntos */
    .spar-redeem-compact--totals
    .spar-panel-row
    > .spar-panel-right {

        flex: 0 0 90px !important;

        width: 90px !important;

        min-width: 90px !important;

        max-width: 90px !important;

        box-sizing: border-box !important;
    }


    .spar-redeem-compact--totals
    .spar-panel-right input {

        width: 100% !important;

        min-width: 0 !important;

        max-width: 100% !important;

        height: 44px !important;

        box-sizing: border-box !important;

        text-align: center !important;
    }

}
/* =========================================
   ALDEBARAN - REWARD POINTS PRODUCT
   ========================================= */

@media (max-width: 781px) {

    .spar-product-points {

        background:
            linear-gradient(
                135deg,
                #f7f5ff 0%,
                #f1f5ff 100%
            ) !important;

        border: 1px solid #ddd6fe !important;

        border-radius: 10px !important;

        padding: 10px 14px !important;

        margin: 12px 0 !important;

        font-size: 13px !important;

        line-height: 1.4 !important;

        color: #495057 !important;

        box-sizing: border-box !important;

        box-shadow:
            0 3px 10px
            rgba(79, 21, 224, 0.05) !important;
    }


    /* Enlace que genera el plugin */
    .spar-product-points a {

        color: #4F15E0 !important;

        font-weight: 600 !important;

        text-decoration: underline !important;
    }


    .spar-product-points a:hover {

        color: #1566E0 !important;
    }

}
/* =========================================
   ALDEBARAN - DESCRIPCIÓN DEL PRODUCTO
   ========================================= */

@media (max-width: 781px) {

    /* Contenedor de la descripción */
    .wp-block-post-excerpt {

        margin-top: 18px !important;
        margin-bottom: 18px !important;

        font-size: 17px !important;

        line-height: 1.55 !important;

        color: #222 !important;
    }


    /* Texto interno */
    .wp-block-post-excerpt p,
    .wp-block-post-excerpt__excerpt {

        font-size: 17px !important;

        line-height: 1.55 !important;

        margin: 0 !important;

        color: #222 !important;
    }

}
/* =========================================
   ALDEBARAN - CATEGORÍA Y ETIQUETAS
   ========================================= */

@media (max-width: 781px) {

    .wp-block-woocommerce-product-meta {

        margin-top: 18px !important;

        padding-top: 14px !important;

        border-top: 1px solid #eeeeee !important;

        font-size: 13px !important;

        line-height: 1.6 !important;

        color: #666 !important;
    }


    .wp-block-woocommerce-product-meta a {

        color: #4F15E0 !important;

        font-weight: 500 !important;

        text-decoration: none !important;
    }


    .wp-block-woocommerce-product-meta a:hover {

        color: #1566E0 !important;

        text-decoration: underline !important;
    }

}