/* ==========================================================================
   252. WISHLIST: ESTILOS DE JET-WISHLIST (.jet-wishlist)
   ========================================================================== */
.jet-wishlist .jet-woo-products__item .jet-woo-builder-product .elementor-element-d1e0d0a {
    min-height: 255px;
    background-color: #F3EDE7;
    background-size: contain !important;
}

@media screen and (max-width: 767px) {
    .jet-wishlist .jet-woo-products__item .jet-woo-builder-product .elementor-element-d1e0d0a {
        min-height: 185px;
    }
}

/* Botón de eliminar en Wishlist */
.jet-wishlist .jet-woo-products__item .jet-cw-remove-button {
    position: absolute;
    top: 20px;
    right: 18px;
    z-index: 2;
    opacity: 0; /* Oculto por defecto, se suele activar en hover del padre */
    transition: opacity var(--transition-fast);
}

/* ==========================================================================
   253. PUNTOS: TABLA DE HISTORIAL (#historial-puntos)
   ========================================================================== */
#historial-puntos {
    overflow-x: auto; /* Permite scroll horizontal en tablas anchas */
}

#historial-puntos > .elementor-widget-container {
    min-width: 650px;
    padding: 1rem;
}

/* ==========================================================================
   259. DASHBOARD: SECCIÓN DE CUPONES (.user-coupons)
   ========================================================================== */
.user-coupons {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}

.user-coupons .coupon-box {
    width: calc(50% - 1rem);
    padding: 1rem;
    background-color: var(--pure-white);
    border-radius: 8px;
    box-shadow: var(--shadow-sm);
}

/* Ajuste para cupones en móvil */
@media screen and (max-width: 767px) {
    /* ==========================================================================
       261. GENERAL Y MODALES (#orderDetailModal)
       ========================================================================= */

    #orderDetailModal .modal-content {
        display: flex;
        flex-direction: column;
        width: 100% !important;
    }

    #orderDetailModal .modal-content .modal-left {
        width: 100% !important;
        padding-bottom: 50px;
    }

    #orderDetailModal .modal-content .modal-right {
        width: 100% !important;
    }
}

/* ==========================================================================
   288. MI CUENTA: SISTEMA DE CUPONES (#section-coupon)
   ========================================================================== */
#section-coupon .user-coupons {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 100%;
}

#section-coupon .user-coupons .coupon-box {
    width: 48%;
    padding: 16px;
    background: var(--pure-white);
    border-radius: 8px;
}

#section-coupon .user-coupons .coupon-box h3 {
    color: var(--primary-dark-green); /* #3E4827 */
    font-size: 24px;
    margin: 0;
    font-weight: 600;
}

#section-coupon .user-coupons .coupon-box .description {
    padding-bottom: 10px;
    font-size: 16px;
    color: var(--secondary-green); /* #586043 */
}

#section-coupon .user-coupons .coupon-box .coupon-copy {
    color: var(--primary-dark-green);
    font-size: 16px;
    font-weight: 700;
    text-transform: uppercase;
}

#section-coupon .user-coupons .coupon-box .not-date-expiry,
#section-coupon .user-coupons .coupon-box .date-expiry {
    margin-bottom: 10px;
    font-size: 14px;
    color: var(--secondary-green);
}

#section-coupon .user-coupons .coupon-box .term-cond {
    color: var(--primary-green); /* #79D97C */
    text-decoration: underline !important;
}


/* ==========================================================================
   260. MI CUENTA: AJUSTES DE NOTIFICACIONES
   ========================================================================== */
.woocommerce-account.usuario-logueado .woocommerce-MyAccount-content .woocommerce-notices-wrapper {
    position: absolute;
    top: 150px;
    z-index: 1;
}

.woocommerce-account.usuario-logueado .woocommerce-MyAccount-content .woocommerce-notices-wrapper:nth-child(2) {
    top: 203.4px;
}

@media screen and (max-width: 767px) {
    .woocommerce-account.usuario-logueado .woocommerce-MyAccount-content .woocommerce-notices-wrapper:nth-child(2) {
        top: 213.4px;
    }
}

/* ==========================================================================
   289. FIDELIZACIÓN: LINK DE REFERENCIA (#link-reference)
   ========================================================================== */
#link-reference #referral-link {
    width: 350px;
    border: none;
    color: var(--primary-dark-green);
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
}

#link-reference .copy-btn {
    background: transparent;
    border: none;
}

/* ==========================================================================
   291. MI CUENTA: HISTORIAL DE PUNTOS (#historial-puntos)
   ========================================================================== */
#historial-puntos {
    overflow-x: auto;
}

#historial-puntos > .elementor-widget-container {
    padding: 1rem;
    min-width: 650px;
}

#historial-puntos thead {
    display: flex;
    width: 100%;
    padding-top: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--primary-dark-green);
}

#historial-puntos thead tr {
    display: flex;
    width: 100%;
}

#historial-puntos thead tr #time { width: 15%; }
#historial-puntos thead tr #creds { width: 15%; text-align: center; }
#historial-puntos thead tr #entry { width: 55%; }

#historial-puntos #the-list {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    font-weight: 400;
}

#historial-puntos #the-list tr {
    display: flex;
    width: 100%;
    padding: 10px 0;
}

#historial-puntos #the-list tr .column-time {
    width: 15%;
}

#historial-puntos #the-list tr .column-creds {
    width: 15%;
    color: var(--primary-green); /* #79D97C */
    font-weight: 600;
    text-align: center;
}

#historial-puntos #the-list tr .column-entry {
    width: 55%;
    padding-right: 10px;
}

#orderDetailModal {
    display: none;
    position: fixed;
    z-index: 1000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    overflow: auto;
    padding-top: 60px;
    align-items: center;

    .modal-content {
        background-color: #fff;
        margin: auto;
        padding: 20px;
        border-radius: 10px;
        width: 80%;
        display: flex;
        justify-content: space-between;
        box-shadow: 0px 4px 15px rgba(0, 0, 0, 0.2);

        .modal-left {
            width: calc(100% - 368px);

            h1 {
                color: var(--primary-dark-green);
                font-size: 32px;
                font-weight: 800;
            }

            #delivery-date-container,
            #delivery-data-container,
            #delivery-points-container,
            #delivery-ref-envio-container,
            #pickup-data-container,
            #methods-container,
            #delivery-recycled-container {
                h3 {
                    color: var(--primary-dark-green);
                    font-size: 16px;
                    font-weight: 600;
                    padding-top: 16px;
                    margin: 0;
                }

                p {
                    color: #586043;
                    font-size: 14px;
                    font-weight: 400;
                    margin-top: 5px;
                }
            }

            .order-progress {
                display: flex;
                justify-content: space-between;
                margin-bottom: 20px;

                .order-step {
                    display: flex;
                    flex-direction: column;
                    align-items: center;

                    .content-img {
                        width: 48px;
                        background: #79D97C;
                        height: 48px;
                        border-radius: 30px;
                        display: flex;
                        align-items: center;
                        justify-content: center;

                        img {
                            width: 20px;
                            height: 20px;
                        }
                    }

                    #order-status-text {
                        color: var(--primary-dark-green);
                        font-size: 16px;
                        font-weight: 700;
                    }

                    #order-status-date {
                        color: #586043;
                        font-size: 14px;
                        font-weight: 400;
                    }
                }
            }
        }

        .modal-right {
            width: 368px;
            background: #FCF6EF;
            border-radius: 8px;
            padding: 24px;

            h2 {
                color: var(--primary-dark-green);
                font-family: 'PPRader';
                font-size: 20px;
                font-weight: 700;
                border-bottom: 1px solid #E8DFD0;
                margin: 0px;
                padding-bottom: 17px;
            }

            #order-items {
                padding-top: 15px;
                padding-bottom: 16px;
                border-bottom: 1px solid #E8DFD0;

                .details-content-ordes {
                    display: flex;
                    align-items: center;

                    img.details-content-ordes_image {
                        width: 40px;
                        height: 40px;

                    }

                    h3.details-content-ordes_title {
                        color: var(--primary-dark-green);
                        font-size: 14px;
                        width: calc(100% - 125px);
                        padding-left: 16px;
                        margin: 0;
                    }

                    span.details-content-ordes_pricing {
                        color: var(--primary-dark-green);
                        font-size: 16px;
                        font-weight: 600;
                        width: 85px;
                        text-align: right;
                    }
                }
            }

            .order-subtotals {
                padding-top: 16px;
                padding-bottom: 16px;
                border-bottom: 1px solid #E8DFD0;
                display: flex;
                flex-direction: column;

                p {
                    display: flex;
                    justify-content: space-between;
                    align-items: center;
                    color: var(--primary-dark-green);
                    font-size: 16px;
                    font-weight: 600;
                    line-height: 24px;
                }
            }

            .order-total {
                display: flex;
                flex-direction: column;

                p {
                    display: flex;
                    justify-content: space-between;
                    align-items: center;
                    color: var(--primary-dark-green);
                    font-size: 20px;
                    font-weight: 600;
                    line-height: 24px;
                }
            }
        }
    }

    .order-items {
        margin-top: 20px;
    }

    .order-items img {
        width: 50px;
        height: 50px;
        margin-right: 10px;
    }

    .order-items p {
        margin: 0;
        display: flex;
        justify-content: space-between;
    }

    .close {
        position: absolute;
        right: 20px;
        top: 20px;
        color: var(--primary-dark-green);
        font-size: 28px;
        font-weight: bold;
        cursor: pointer;
    }

    .close:hover {
        color: #000;
    }
}

/* ==========================================================================
   294. MYCRED: TABLA GENERAL DE HISTORIAL (.mycred-history-wrapper)
   ========================================================================== */
.mycred-history-wrapper form.form-inline .mycred-table {
    width: 100%;
}

.mycred-history-wrapper form.form-inline .mycred-table thead tr th {
    text-align: start;
}

/* OTROS ESTILOS */
.woocommerce {
    input, textarea {
        background: transparent;
        border: none;
        border-bottom: 1px solid var(--primary-dark-green);
    }
}

@media only screen and (max-width: 767px) {
    .woocommerce .col2-set .col-1, .woocommerce .col2-set .col-2, .woocommerce-page .col2-set .col-1, .woocommerce-page .col2-set .col-2 {
        float: none;
        width: 100%;
    }

    #section-coupon .user-coupons {
        gap: 25px;
    }
    
    #section-coupon .user-coupons .coupon-box {
        width: 100%;
    }
}

/* ==========================================================================
   NEW. USUARIO: AJUSTE DE FORMULARIO DE RECUPERACIÓN DE CONTRASEÑA
   ========================================================================== */
.user-registration-ur-lost-password .woocommerce .woocommerce-ResetPassword,
.user-registration-ur-lost-password .woocommerce {
    max-width: 600px;
    margin: 3rem auto;
    padding: 0 1rem;
}

.user-registration-ur-lost-password .woocommerce .woocommerce-ResetPassword .woocommerce-form-row {
    width: 100%;
}

.user-registration-ur-lost-password .woocommerce .woocommerce-ResetPassword .woocommerce-form-row label {
    font-weight: 700;
}

.user-registration-ur-lost-password .woocommerce .woocommerce-ResetPassword {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.woocommerce .woocommerce-ResetPassword .woocommerce-form-row .woocommerce-Button {
    background-color: var(--e-global-color-2ed775f);
    color: var(--e-global-color-text);
    font-family: "PPMori", Sans-serif;
    font-size: 16px;
    font-weight: 600;
    line-height: 24px;
    padding: 8px;
    border-radius: 25px 25px 25px 25px;
    width: 430px;
    max-width: 100%;
}

.woocommerce .woocommerce-ResetPassword .woocommerce-form-row .woocommerce-Button:hover {
    background-color: var(--e-global-color-f087f2e);
}