/* =============================================================
   1. GLOBAL · Títulos redundantes + Notificaciones
============================================================= */

/* Ocultar hero y títulos redundantes en páginas WooCommerce */
.woocommerce-cart .entry-hero,
.woocommerce-checkout .entry-hero,
.woocommerce-account .entry-hero,
body.is-wishlist .entry-hero {
    display: none;
}

/* Ocultar h2 genéricos de WooCommerce */
.woocommerce h2,
.woocommerce-ResetPassword p:first-child {
    display: none;
}

/* Notificaciones con borde izquierdo de color */
.woocommerce-error,
.woocommerce-message,
.woocommerce-info {
    border: none !important;
    border-left: 4px solid var(--flor-info) !important;
    background-color: var(--flor-base-lightest) !important;
    color: var(--flor-contrast-dark) !important;
    border-radius: 8px !important;
    padding: 15px 20px !important;
    font-size: 14px !important;
    list-style: none !important;
    margin-bottom: var(--space-md) !important;
}

.woocommerce-message {
    border-left-color: var(--flor-success) !important;
}

.woocommerce-error {
    border-left-color: var(--flor-error) !important;
}

.woocommerce-info {
    border-left-color: var(--flor-info) !important;
}

.woocommerce-notices-wrapper {
    max-width: var(--max-width);
    margin: 0 auto;
}


/* =============================================================
   2. LOGIN & RECOVERY
============================================================= */

/* Contenedor común */
.woocommerce-form-login,
.woocommerce-ResetPassword.lost_reset_password {
    max-width: 650px;
    margin: 60px auto;
    padding: 40px;
}

.woocommerce form .form-row {
    padding: 0;
    margin: 0 0 .8em;
    width: 100%;
}

/* Inputs y etiquetas */
.woocommerce-form-row label {
    font-size: 13px;
    font-weight: 600;
    color: var(--color-heading);
    margin-bottom: 10px;
    display: block;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.woocommerce-Input.input-text {
    width: 100% !important;
    padding: 14px 16px !important;
    border: 1.5px solid var(--flor-base-light) !important;
    border-radius: 8px !important;
    background-color: var(--flor-base-lightest) !important;
    font-size: 15px !important;
    transition: var(--transition-smooth) !important;
    box-sizing: border-box;
}

.woocommerce-Input.input-text:focus {
    outline: none !important;
    border-color: var(--color-heading) !important;
    background-color: var(--color-white) !important;
    box-shadow: 0 0 0 4px rgba(107, 150, 113, 0.1) !important;
}

/* Botones (Login y Reset) */
.woocommerce-form-login__submit,
.woocommerce-ResetPassword .button {
    width: 100% !important;
    padding: 16px !important;
    background-color: var(--flor-contrast-darkest) !important;
    color: var(--color-white) !important;
    border: none !important;
    border-radius: 8px !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    cursor: pointer;
    transition: var(--transition-smooth) !important;
    margin-top: 15px !important;
    display: block !important;
}

.woocommerce-form-login__submit:hover,
.woocommerce-ResetPassword .button:hover {
    background-color: #2a2a2a !important;
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.12) !important;
}

/* Links adicionales */
.woocommerce-LostPassword {
    text-align: center;
    margin-top: 25px;
}

.woocommerce-LostPassword a {
    color: var(--color-muted);
    font-size: 13px;
    text-decoration: none;
    border-bottom: 1px solid transparent;
    transition: var(--transition-fast);
}

.woocommerce-LostPassword a:hover {
    color: var(--flor-contrast-darkest);
    border-bottom: 1px solid var(--flor-contrast-darkest);
}

/* Checkbox recuérdame */
.woocommerce-form__label-for-checkbox {
    margin-top: 10px;
    display: flex;
    align-items: center;
    font-size: 14px;
    color: var(--color-muted);
}

.woocommerce-form__input-checkbox {
    margin-right: 10px !important;
    width: 16px;
    height: 16px;
    accent-color: var(--color-heading);
}

/* Responsive Login */
@media (max-width: 480px) {
    .woocommerce-form-login,
    .woocommerce-ResetPassword.lost_reset_password {
        padding: 30px 20px;
        margin: 20px;
    }
}


/* =============================================================
   3. CART (NUEVO)
============================================================= */

/* Wrapper */
.woocommerce-cart .woocommerce {
    max-width: var(--max-width);
    margin: 0 auto;
    padding: var(--section-padding-y) var(--section-padding-x);
}

/* Tabla del carrito */
.woocommerce-cart table.shop_table {
    border: none !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    background: var(--color-white);
    border-radius: var(--radius-md) !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
    overflow: hidden;
}

.woocommerce-cart table.shop_table thead th {
    background-color: var(--color-bg) !important;
    color: var(--color-heading) !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    font-size: 12px;
    letter-spacing: 1px;
    padding: 16px 20px !important;
    border: none !important;
}

.woocommerce-cart table.shop_table tbody td {
    border: none !important;
    border-bottom: 1px solid var(--color-separator) !important;
    padding: 20px !important;
    vertical-align: middle !important;
    color: var(--flor-contrast-dark);
    font-size: 14px;
}

.woocommerce-cart table.shop_table tbody tr:last-child td {
    border-bottom: none !important;
}

/* Thumbnails */
.woocommerce-cart .product-thumbnail img {
    width: 80px !important;
    height: 80px !important;
    object-fit: cover;
    border-radius: 8px;
}

/* Nombre del producto */
.woocommerce-cart td.product-name a {
    color: var(--flor-contrast-darkest);
    text-decoration: none;
    font-weight: 600;
    transition: var(--transition-fast);
}

.woocommerce-cart td.product-name a:hover {
    color: var(--color-heading);
}

/* Botón eliminar */
.woocommerce-cart a.remove {
    color: var(--flor-base-light) !important;
    font-size: 22px !important;
    transition: var(--transition-fast);
}

.woocommerce-cart a.remove:hover {
    color: var(--flor-error) !important;
    background: transparent !important;
}

/* Quantity inputs */
.woocommerce-cart .quantity .qty {
    width: 60px !important;
    padding: 10px 8px !important;
    border: 1.5px solid var(--flor-base-light) !important;
    border-radius: 8px !important;
    text-align: center;
    font-size: 14px;
    transition: var(--transition-smooth);
    -moz-appearance: textfield;
}

.woocommerce-cart .quantity .qty:focus {
    outline: none;
    border-color: var(--color-heading) !important;
    box-shadow: 0 0 0 4px rgba(107, 150, 113, 0.1);
}

.woocommerce-cart .quantity .qty::-webkit-inner-spin-button,
.woocommerce-cart .quantity .qty::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Cupón */
.woocommerce-cart .coupon {
    display: flex !important;
    flex-direction: row;
    align-items: center;
    gap: 10px;
}

.woocommerce-cart .coupon .input-text {
    flex: 1;
    padding: 12px 16px !important;
    border: 1.5px solid var(--flor-base-light) !important;
    border-radius: 8px !important;
    font-size: 14px;
    transition: var(--transition-smooth);
    min-width: 0;
}

.woocommerce-cart .coupon .input-text:focus {
    outline: none;
    border-color: var(--color-heading) !important;
    box-shadow: 0 0 0 4px rgba(107, 150, 113, 0.1);
}

.woocommerce-cart .coupon .button {
    padding: 12px 24px !important;
    background-color: var(--flor-contrast-darkest) !important;
    color: var(--color-white) !important;
    border: none !important;
    border-radius: 8px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    cursor: pointer;
    transition: var(--transition-smooth);
    white-space: nowrap;
}

.woocommerce-cart .coupon .button:hover {
    background-color: #2a2a2a !important;
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.12);
}

/* Botón actualizar carrito */
.woocommerce-cart button[name="update_cart"] {
    padding: 12px 24px !important;
    background-color: var(--flor-base-lightest) !important;
    color: var(--flor-contrast-dark) !important;
    border: 1.5px solid var(--flor-base-light) !important;
    border-radius: 8px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    cursor: pointer;
    transition: var(--transition-smooth);
}

.woocommerce-cart button[name="update_cart"]:hover {
    background-color: var(--color-bg) !important;
    border-color: #555 !important;
}

.woocommerce-cart button[name="update_cart"]:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

/* Cart totals */
.woocommerce-cart .cart_totals {
    background: var(--color-white);
    border-radius: var(--radius-md);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
    padding: 30px;
    margin-top: var(--space-lg);
}

.woocommerce-cart .cart_totals h2 {
    display: block !important;
    font-size: 16px !important;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: var(--color-heading) !important;
    margin-bottom: var(--space-md) !important;
    padding-bottom: var(--space-sm);
    border-bottom: 1px solid var(--color-separator);
}

.woocommerce-cart .cart_totals table {
    border: none !important;
}

.woocommerce-cart .cart_totals table th,
.woocommerce-cart .cart_totals table td {
    border: none !important;
    padding: 12px 0 !important;
    font-size: 14px;
    color: var(--flor-contrast-dark);
}

.woocommerce-cart .cart_totals table th {
    font-weight: 600;
    color: var(--flor-contrast-medium);
    text-transform: uppercase;
    font-size: 12px;
    letter-spacing: 0.5px;
}

.woocommerce-cart .cart_totals .order-total th,
.woocommerce-cart .cart_totals .order-total td {
    border-top: 2px solid var(--color-separator) !important;
    padding-top: 16px !important;
    font-size: 18px !important;
    font-weight: 700;
    color: var(--flor-contrast-darkest);
}

/* CTA Checkout */
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
    display: block !important;
    width: 100% !important;
    padding: 18px !important;
    background-color: var(--flor-contrast-darkest) !important;
    color: var(--color-white) !important;
    border: none !important;
    border-radius: 8px !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    transition: var(--transition-smooth);
    margin-top: var(--space-md);
    box-sizing: border-box;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover {
    background-color: #2a2a2a !important;
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.12) !important;
}

/* Carrito vacío */
.woocommerce-cart .cart-empty {
    text-align: center;
    padding: 60px 20px;
    color: var(--flor-contrast-medium);
    font-size: 16px;
}

.woocommerce-cart .return-to-shop a.button {
    display: inline-block !important;
    padding: 16px 40px !important;
    background-color: var(--flor-contrast-darkest) !important;
    color: var(--color-white) !important;
    border: none !important;
    border-radius: 8px !important;
    font-weight: 600 !important;
    text-transform: uppercase;
    letter-spacing: 1px;
    text-decoration: none;
    transition: var(--transition-smooth);
    margin-top: var(--space-md);
}

.woocommerce-cart .return-to-shop a.button:hover {
    background-color: #2a2a2a !important;
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.12);
}

/* Responsive Cart */
@media (max-width: 768px) {
    .woocommerce-cart table.shop_table thead {
        display: none;
    }

    .woocommerce-cart table.shop_table tbody tr {
        display: block;
        margin-bottom: var(--space-md);
        padding: 20px;
        background: var(--color-white);
        border-radius: var(--radius-md);
        box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
        position: relative;
    }

    .woocommerce-cart table.shop_table tbody td {
        display: block !important;
        text-align: left !important;
        padding: 8px 0 !important;
        border-bottom: none !important;
    }

    .woocommerce-cart table.shop_table tbody td::before {
        content: attr(data-title) ": ";
        font-weight: 700;
        font-size: 11px;
        text-transform: uppercase;
        letter-spacing: 0.5px;
        color: var(--color-heading);
        display: block;
        margin-bottom: 4px;
    }

    .woocommerce-cart table.shop_table tbody td.product-remove::before,
    .woocommerce-cart table.shop_table tbody td.product-thumbnail::before {
        display: none;
    }

    .woocommerce-cart table.shop_table tbody td.product-remove {
        position: absolute;
        top: 12px;
        right: 12px;
        padding: 0 !important;
    }

    .woocommerce-cart .product-thumbnail img {
        width: 100px !important;
        height: 100px !important;
    }

    .woocommerce-cart .coupon {
        flex-direction: column !important;
    }

    .woocommerce-cart .coupon .input-text,
    .woocommerce-cart .coupon .button {
        width: 100% !important;
    }

    .woocommerce-cart .actions {
        display: flex;
        flex-direction: column;
        gap: 10px;
    }

    .woocommerce-cart button[name="update_cart"] {
        width: 100% !important;
    }
}


/* =============================================================
   4. CHECKOUT (NUEVO)
============================================================= */

/* Wrapper */
.woocommerce-checkout .woocommerce {
    max-width: var(--max-width);
    margin: 0 auto;
    padding: var(--section-padding-y) var(--section-padding-x);
}

/* Layout: formulario izquierda, order review derecha */
.woocommerce-checkout form.woocommerce-checkout {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-xl);
}

.woocommerce-checkout #customer_details {
    flex: 1 1 55%;
    min-width: 0;
}

.woocommerce-checkout #order_review_heading,
.woocommerce-checkout #order_review {
    flex: 1 1 38%;
    min-width: 300px;
}

/* Heading de Order Review */
.woocommerce-checkout #order_review_heading {
    display: block !important;
    font-size: 16px !important;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: var(--color-heading) !important;
    margin-bottom: 0;
    padding-bottom: var(--space-sm);
    border-bottom: 1px solid var(--color-separator);
}

/* Order review sticky */
.woocommerce-checkout #order_review {
    position: sticky;
    top: 120px;
    align-self: flex-start;
    background: var(--color-white);
    border-radius: var(--radius-md);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
    padding: 30px;
}

/* Section headings */
.woocommerce-checkout h3,
.woocommerce-checkout .woocommerce-billing-fields h3,
.woocommerce-checkout .woocommerce-shipping-fields h3,
.woocommerce-checkout .woocommerce-additional-fields h3 {
    display: block !important;
    font-size: 16px !important;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: var(--color-heading) !important;
    margin-bottom: var(--space-md) !important;
    padding-bottom: var(--space-sm);
    border-bottom: 1px solid var(--color-separator);
}

/* Inputs del checkout */
.woocommerce-checkout .form-row input.input-text,
.woocommerce-checkout .form-row textarea {
    width: 100% !important;
    padding: 14px 16px !important;
    border: 1.5px solid var(--flor-base-light) !important;
    border-radius: 8px !important;
    background-color: var(--flor-base-lightest) !important;
    font-size: 15px !important;
    transition: var(--transition-smooth) !important;
    box-sizing: border-box;
}

.woocommerce-checkout .form-row input.input-text:focus,
.woocommerce-checkout .form-row textarea:focus {
    outline: none !important;
    border-color: var(--color-heading) !important;
    background-color: var(--color-white) !important;
    box-shadow: 0 0 0 4px rgba(107, 150, 113, 0.1) !important;
}

/* Labels del checkout */
.woocommerce-checkout .form-row label {
    font-size: 13px;
    font-weight: 600;
    color: var(--color-heading);
    margin-bottom: 8px;
    display: block;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.woocommerce-checkout .form-row label .required {
    color: var(--flor-error);
}

/* Select nativo */
.woocommerce-checkout .form-row select {
    width: 100% !important;
    padding: 14px 16px !important;
    border: 1.5px solid var(--flor-base-light) !important;
    border-radius: 8px !important;
    background-color: var(--flor-base-lightest) !important;
    font-size: 15px !important;
    transition: var(--transition-smooth) !important;
    appearance: auto;
}

.woocommerce-checkout .form-row select:focus {
    outline: none !important;
    border-color: var(--color-heading) !important;
    background-color: var(--color-white) !important;
    box-shadow: 0 0 0 4px rgba(107, 150, 113, 0.1) !important;
}

/* Select2 overrides */
.woocommerce-checkout .select2-container--default .select2-selection--single {
    height: auto !important;
    padding: 14px 16px !important;
    border: 1.5px solid var(--flor-base-light) !important;
    border-radius: 8px !important;
    background-color: var(--flor-base-lightest) !important;
    transition: var(--transition-smooth);
}

.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered {
    line-height: 1.4 !important;
    padding: 0 !important;
    color: var(--flor-contrast-dark) !important;
    font-size: 15px;
}

.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 100% !important;
    right: 12px !important;
}

.woocommerce-checkout .select2-container--default.select2-container--open .select2-selection--single {
    border-color: var(--color-heading) !important;
    box-shadow: 0 0 0 4px rgba(107, 150, 113, 0.1);
}

.select2-dropdown {
    border: 1.5px solid var(--flor-base-light) !important;
    border-radius: 8px !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08) !important;
    overflow: hidden;
}

.select2-results__option--highlighted[aria-selected] {
    background-color: var(--color-bg) !important;
    color: var(--flor-contrast-darkest) !important;
}

.select2-results__option[aria-selected="true"] {
    background-color: var(--flor-base-lightest) !important;
}

/* Order review table */
.woocommerce-checkout #order_review table.shop_table {
    border: none !important;
    margin: 0;
}

.woocommerce-checkout #order_review table.shop_table thead th {
    background: transparent !important;
    color: var(--color-heading) !important;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 12px;
    letter-spacing: 1px;
    padding: 12px 0 !important;
    border: none !important;
    border-bottom: 1px solid var(--color-separator) !important;
}

.woocommerce-checkout #order_review table.shop_table td,
.woocommerce-checkout #order_review table.shop_table th {
    border: none !important;
    padding: 12px 0 !important;
    font-size: 14px;
    color: var(--flor-contrast-dark);
}

.woocommerce-checkout #order_review table.shop_table tfoot tr:last-child th,
.woocommerce-checkout #order_review table.shop_table tfoot tr:last-child td {
    border-top: 2px solid var(--color-separator) !important;
    padding-top: 16px !important;
    font-size: 18px !important;
    font-weight: 700;
    color: var(--flor-contrast-darkest);
}

/* Payment methods */
.woocommerce-checkout #payment {
    background: transparent !important;
    border-radius: 0 !important;
}

.woocommerce-checkout #payment ul.payment_methods {
    padding: 0 !important;
    border: none !important;
    list-style: none;
    margin-bottom: var(--space-md);
}

.woocommerce-checkout #payment ul.payment_methods li {
    background: var(--color-white);
    border: 1.5px solid var(--flor-base-light);
    border-radius: 8px;
    margin-bottom: 10px;
    padding: 16px 20px;
    transition: var(--transition-fast);
}

.woocommerce-checkout #payment ul.payment_methods li:hover {
    border-color: var(--color-heading);
}

.woocommerce-checkout #payment ul.payment_methods li label {
    font-size: 14px !important;
    font-weight: 600;
    color: var(--flor-contrast-darkest);
    cursor: pointer;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

.woocommerce-checkout #payment ul.payment_methods li input[type="radio"] {
    accent-color: var(--color-heading);
    margin-right: 10px;
}

.woocommerce-checkout #payment div.payment_box {
    background: var(--flor-base-lightest) !important;
    border-radius: 6px;
    margin-top: 12px;
    padding: 16px !important;
    color: var(--flor-contrast-medium);
    font-size: 13px;
    line-height: 1.6;
}

.woocommerce-checkout #payment div.payment_box::before {
    display: none;
}

/* Place order button */
.woocommerce-checkout #place_order {
    display: block !important;
    width: 100% !important;
    padding: 18px !important;
    background-color: var(--flor-contrast-darkest) !important;
    color: var(--color-white) !important;
    border: none !important;
    border-radius: 8px !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    cursor: pointer;
    transition: var(--transition-smooth);
    margin-top: var(--space-md);
}

.woocommerce-checkout #place_order:hover {
    background-color: #2a2a2a !important;
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.12) !important;
}

/* Términos y condiciones */
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
    margin-top: var(--space-md);
}

.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper .form-row label {
    text-transform: none !important;
    font-weight: 500;
    font-size: 13px;
    color: var(--flor-contrast-medium);
}

/* Responsive Checkout */
@media (max-width: 768px) {
    .woocommerce-checkout form.woocommerce-checkout {
        flex-direction: column;
    }

    .woocommerce-checkout #customer_details,
    .woocommerce-checkout #order_review_heading,
    .woocommerce-checkout #order_review {
        flex: 1 1 100%;
        min-width: 0;
    }

    .woocommerce-checkout #order_review {
        position: static;
    }

    .woocommerce-checkout .form-row-first,
    .woocommerce-checkout .form-row-last {
        width: 100% !important;
        float: none !important;
    }
}


/* =============================================================
   5. MI CUENTA (REFINAMIENTO)
============================================================= */

/* Contenedor principal */
.account-navigation-wrap {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    width: 100%;
    padding: 2.5%;
}

.woocommerce-account .account-navigation-wrap {
    border-left: 0;
}

/* 1. Nombre de usuario */
.kadence-account-avatar {
    order: 1;
    width: 50%;
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

.kadence-customer-name {
    font-size: 16px;
    font-weight: 600;
    color: var(--flor-contrast-darkest);
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.woocommerce-account .account-navigation-wrap .kadence-account-avatar .kadence-customer-name {
    padding-left: 0;
}

.kadence-customer-name::after {
    content: "\f464";
    font-family: dashicons;
    font-size: 16px;
    opacity: 0.6;
    transition: var(--transition-fast);
}

.kadence-customer-name:hover::after {
    opacity: 1;
    transform: translateX(2px);
}

.kadence-customer-image {
    display: none;
}

/* 2. Iconos de acción */
.myaccount-header-actions {
    order: 2;
    width: 50%;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 8px;
}

.myaccount-header-actions a {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: var(--flor-base-lightest);
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: var(--transition-fast);
}

.myaccount-header-actions a:hover {
    transform: scale(1.1);
    background: var(--color-separator);
}

.action-rewards {
    color: var(--flor-info);
}

.action-logout {
    color: var(--flor-contrast-darkest);
}

/* 3. Navegación */
.woocommerce-MyAccount-navigation {
    order: 3;
    width: 100%;
    margin-top: 20px;
}

.woocommerce-MyAccount-navigation ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.woocommerce-MyAccount-navigation li {
    margin-bottom: 6px;
}

.woocommerce-MyAccount-navigation li a {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    border-radius: 8px;
    text-decoration: none;
    font-size: 14px;
    font-weight: 500;
    color: var(--flor-contrast-dark);
    transition: var(--transition-fast);
    border-left: 3px solid transparent;
}

.woocommerce-MyAccount-navigation li a:hover {
    background: var(--flor-base-lightest);
}

/* Active state mejorado */
.woocommerce-MyAccount-navigation li.is-active a {
    font-weight: 600;
    color: var(--flor-contrast-darkest);
    background: var(--flor-base-lightest);
    border-left: 3px solid var(--color-heading);
}

/* Ocultar opciones innecesarias */
.woocommerce-MyAccount-navigation-link--dashboard,
.woocommerce-MyAccount-navigation-link--customer-logout,
.woocommerce-MyAccount-navigation-link--downloads,
.woocommerce-MyAccount-navigation-link--wordfence-2fa {
    display: none !important;
}

.woocommerce-MyAccount-navigation-link--edit-account,
.woocommerce-MyAccount-navigation-link--points-and-rewards {
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    visibility: hidden !important;
    line-height: 0 !important;
    list-style: none !important;
}

/* Contenido */
.woocommerce-MyAccount-content {
    width: 100%;
    padding: 2.5%;
}

.woocommerce-MyAccount-content h2,
.woocommerce-MyAccount-content h3 {
    display: block !important;
    color: var(--color-heading);
    margin-bottom: 16px;
}

.woocommerce-MyAccount-content p {
    color: var(--flor-contrast-dark);
    line-height: 1.6;
}

/* Tabla de pedidos */
.woocommerce-MyAccount-content table.woocommerce-orders-table {
    border: none !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    background: var(--color-white);
    border-radius: var(--radius-md) !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
    overflow: hidden;
    width: 100%;
}

.woocommerce-MyAccount-content table.woocommerce-orders-table thead th {
    background-color: var(--color-bg) !important;
    color: var(--color-heading) !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    font-size: 12px;
    letter-spacing: 1px;
    padding: 16px 20px !important;
    border: none !important;
}

.woocommerce-MyAccount-content table.woocommerce-orders-table tbody td {
    border: none !important;
    border-bottom: 1px solid var(--color-separator) !important;
    padding: 16px 20px !important;
    vertical-align: middle !important;
    color: var(--flor-contrast-dark);
    font-size: 14px;
}

.woocommerce-MyAccount-content table.woocommerce-orders-table tbody tr:last-child td {
    border-bottom: none !important;
}

/* Botón "Ver pedido" */
.woocommerce-MyAccount-content table.woocommerce-orders-table .woocommerce-button.button.view {
    padding: 8px 16px !important;
    background-color: var(--flor-contrast-darkest) !important;
    color: var(--color-white) !important;
    border: none !important;
    border-radius: 6px !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    text-decoration: none;
    transition: var(--transition-smooth);
    display: inline-block;
}

.woocommerce-MyAccount-content table.woocommerce-orders-table .woocommerce-button.button.view:hover {
    background-color: #2a2a2a !important;
    transform: translateY(-1px);
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.12);
}

/* Direcciones: Grid 2 columnas */
.woocommerce-MyAccount-content .woocommerce-Addresses {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--space-lg);
}

.woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address {
    background: var(--color-white);
    border-radius: var(--radius-md);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
    padding: 24px;
}

.woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address header h3 {
    font-size: 14px !important;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: var(--color-heading) !important;
    margin-bottom: var(--space-sm) !important;
}

.woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address header a {
    font-size: 12px;
    color: var(--flor-contrast-medium);
    text-decoration: none;
    transition: var(--transition-fast);
}

.woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address header a:hover {
    color: var(--color-heading);
}

.woocommerce-MyAccount-content .woocommerce-Addresses address {
    font-style: normal;
    color: var(--flor-contrast-dark);
    line-height: 1.7;
    font-size: 14px;
}

/* Formulario editar cuenta */
.woocommerce-MyAccount-content .woocommerce-EditAccountForm .form-row input.woocommerce-Input,
.woocommerce-MyAccount-content .woocommerce-EditAccountForm .form-row input[type="text"],
.woocommerce-MyAccount-content .woocommerce-EditAccountForm .form-row input[type="email"],
.woocommerce-MyAccount-content .woocommerce-EditAccountForm .form-row input[type="password"] {
    width: 100% !important;
    padding: 14px 16px !important;
    border: 1.5px solid var(--flor-base-light) !important;
    border-radius: 8px !important;
    background-color: var(--flor-base-lightest) !important;
    font-size: 15px !important;
    transition: var(--transition-smooth) !important;
    box-sizing: border-box;
}

.woocommerce-MyAccount-content .woocommerce-EditAccountForm .form-row input:focus {
    outline: none !important;
    border-color: var(--color-heading) !important;
    background-color: var(--color-white) !important;
    box-shadow: 0 0 0 4px rgba(107, 150, 113, 0.1) !important;
}

/* Fieldset de contraseña */
.woocommerce-MyAccount-content fieldset {
    border: 1.5px solid var(--flor-base-light);
    border-radius: var(--radius-md);
    padding: 24px;
    margin: var(--space-lg) 0;
}

.woocommerce-MyAccount-content fieldset legend {
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: var(--color-heading);
    padding: 0 10px;
}

/* Botón guardar cuenta */
.woocommerce-MyAccount-content .woocommerce-EditAccountForm button[type="submit"],
.woocommerce-MyAccount-content .woocommerce-EditAccountForm .woocommerce-Button {
    width: 100% !important;
    padding: 16px !important;
    background-color: var(--flor-contrast-darkest) !important;
    color: var(--color-white) !important;
    border: none !important;
    border-radius: 8px !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    cursor: pointer;
    transition: var(--transition-smooth);
    margin-top: var(--space-md);
}

.woocommerce-MyAccount-content .woocommerce-EditAccountForm button[type="submit"]:hover,
.woocommerce-MyAccount-content .woocommerce-EditAccountForm .woocommerce-Button:hover {
    background-color: #2a2a2a !important;
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.12) !important;
}

/* Responsive Mi Cuenta */
@media (max-width: 768px) {
    .account-navigation-wrap {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
    }

    .kadence-account-avatar,
    .myaccount-header-actions {
        width: 100%;
        justify-content: space-between;
    }

    .woocommerce-MyAccount-navigation ul {
        display: flex;
        gap: 10px;
        overflow-x: auto;
    }

    .woocommerce-MyAccount-navigation li {
        flex-shrink: 0;
    }

    .woocommerce-MyAccount-navigation li a {
        white-space: nowrap;
        font-size: 13px;
        border-left: none;
        border-bottom: 3px solid transparent;
        border-radius: 0;
        padding: 8px 12px;
    }

    .woocommerce-MyAccount-navigation li.is-active a {
        border-left: none;
        border-bottom: 3px solid var(--color-heading);
        border-radius: 0;
    }

    /* Tabla de pedidos stacked */
    .woocommerce-MyAccount-content table.woocommerce-orders-table thead {
        display: none;
    }

    .woocommerce-MyAccount-content table.woocommerce-orders-table tbody tr {
        display: block;
        margin-bottom: var(--space-md);
        padding: 20px;
        background: var(--color-white);
        border-radius: var(--radius-md);
        box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
    }

    .woocommerce-MyAccount-content table.woocommerce-orders-table tbody td {
        display: block !important;
        text-align: left !important;
        padding: 8px 0 !important;
        border-bottom: none !important;
    }

    .woocommerce-MyAccount-content table.woocommerce-orders-table tbody td::before {
        content: attr(data-title) ": ";
        font-weight: 700;
        font-size: 11px;
        text-transform: uppercase;
        letter-spacing: 0.5px;
        color: var(--color-heading);
        display: block;
        margin-bottom: 4px;
    }

    /* Direcciones 1 columna */
    .woocommerce-MyAccount-content .woocommerce-Addresses {
        grid-template-columns: 1fr;
    }
}


/* =============================================================
   6. WISHLIST (REFINAMIENTO)
============================================================= */

/* Tabla de productos */
.wishlist_table {
    border: none !important;
    background: var(--color-white);
    border-radius: var(--radius-md);
    overflow: hidden;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
}

.wishlist_table thead {
    background-color: var(--color-bg) !important;
}

.wishlist_table thead th {
    border: none !important;
    padding: 16px 20px !important;
    color: var(--color-heading) !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    font-size: 12px;
    letter-spacing: 1px;
}

.wishlist_table tbody td {
    border-bottom: 1px solid var(--color-separator) !important;
    padding: 20px !important;
    vertical-align: middle !important;
}

.wishlist_table tbody tr:last-child td {
    border-bottom: none !important;
}

/* Thumbnails wishlist */
.wishlist_table .product-thumbnail img {
    width: 80px;
    height: 80px;
    object-fit: cover;
    border-radius: 8px;
}

/* Nombre del producto */
.wishlist_table td.product-name a {
    color: var(--flor-contrast-darkest);
    text-decoration: none;
    font-weight: 600;
    transition: var(--transition-fast);
}

.wishlist_table td.product-name a:hover {
    color: var(--color-heading);
}

/* Botón añadir al carrito */
.wishlist_table .add_to_cart {
    background-color: var(--flor-contrast-darkest) !important;
    color: var(--color-white) !important;
    padding: 10px 20px !important;
    border-radius: 8px !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    font-size: 11px !important;
    transition: var(--transition-smooth);
    border: none !important;
    cursor: pointer;
}

.wishlist_table .add_to_cart:hover {
    background-color: #2a2a2a !important;
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.12);
}

/* Botón eliminar */
.wishlist_table .remove_from_wishlist {
    color: var(--flor-base-light) !important;
    font-size: 20px !important;
    transition: var(--transition-fast);
}

.wishlist_table .remove_from_wishlist:hover {
    color: var(--flor-error) !important;
}

/* TI WooCommerce Wishlist overrides */
.tinv-wishlist .tinvwl-table-manage-list {
    border: none !important;
    background: var(--color-white);
    border-radius: var(--radius-md);
    overflow: hidden;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
}

.tinv-wishlist .tinvwl-table-manage-list thead th {
    background-color: var(--color-bg) !important;
    color: var(--color-heading) !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    font-size: 12px;
    letter-spacing: 1px;
    padding: 16px 20px !important;
    border: none !important;
}

.tinv-wishlist .tinvwl-table-manage-list tbody td {
    border: none !important;
    border-bottom: 1px solid var(--color-separator) !important;
    padding: 16px 20px !important;
    vertical-align: middle !important;
}

.tinv-wishlist .tinvwl-table-manage-list tbody tr:last-child td {
    border-bottom: none !important;
}

.tinv-wishlist .tinvwl-table-manage-list .button {
    background-color: var(--flor-contrast-darkest) !important;
    color: var(--color-white) !important;
    padding: 10px 20px !important;
    border-radius: 8px !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    font-size: 11px !important;
    border: none !important;
    transition: var(--transition-smooth);
    cursor: pointer;
}

.tinv-wishlist .tinvwl-table-manage-list .button:hover {
    background-color: #2a2a2a !important;
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.12);
}

/* Lista vacía */
.wishlist-empty {
    text-align: center;
    padding: 60px 20px;
    background: var(--color-white);
    border-radius: var(--radius-md);
}

.wishlist-empty + a,
.yith-wcwl-wishlist-empty-view a.button,
.return-to-shop a.button {
    display: inline-block !important;
    margin-top: 20px !important;
    background-color: var(--flor-contrast-darkest) !important;
    color: var(--color-white) !important;
    padding: 15px 40px !important;
    border-radius: 8px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    text-transform: uppercase;
    font-size: 14px;
    transition: var(--transition-smooth);
    margin-bottom: 90px;
    border: none !important;
}

.wishlist-empty + a:hover,
.yith-wcwl-wishlist-empty-view a.button:hover,
.return-to-shop a.button:hover {
    background-color: #2a2a2a !important;
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.12);
}

/* Responsive Wishlist */
@media (max-width: 768px) {
    .wishlist_table thead {
        display: none;
    }

    .wishlist_table tbody tr {
        display: block;
        margin-bottom: var(--space-md);
        padding: 20px;
        background: var(--color-white);
        border-radius: var(--radius-md);
        box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
        position: relative;
    }

    .wishlist_table td {
        display: block;
        text-align: center;
        border: none !important;
        padding: 8px 0 !important;
    }

    .wishlist_table .product-remove {
        position: absolute;
        top: 12px;
        right: 12px;
    }

    .wishlist_table .product-thumbnail img {
        width: 120px;
        height: 120px;
        margin: 0 auto;
    }

    /* TI Wishlist responsive */
    .tinv-wishlist .tinvwl-table-manage-list thead {
        display: none;
    }

    .tinv-wishlist .tinvwl-table-manage-list tbody tr {
        display: block;
        margin-bottom: var(--space-md);
        padding: 20px;
        border-radius: var(--radius-md);
        box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
        position: relative;
    }

    .tinv-wishlist .tinvwl-table-manage-list tbody td {
        display: block;
        text-align: center;
        border-bottom: none !important;
        padding: 8px 0 !important;
    }
}
