/* =========================================================
   NEXXO · Mini carrito premium v5
   ========================================================= */

.navbar-mini-cart .cart-items-count,
.site-header-cart .count,
.site-header-cart .cart-contents .count,
.widget_shopping_cart .count {
    box-shadow: 0 8px 20px rgba(19, 204, 213, 0.30) !important;
}


/* =========================================================
   NEXXO · Área clickeable real del carrito del encabezado
   ---------------------------------------------------------
   El icono mantiene su tamaño visual. Solo se achica el
   contenedor invisible que Electro deja extendido hacia la
   derecha. Se aplica en escritorio; en móvil conservamos un
   área táctil amplia.
   ========================================================= */
@media (min-width: 768px) {
    header .nexxo-cart-trigger-shell,
    #masthead .nexxo-cart-trigger-shell,
    .site-header .nexxo-cart-trigger-shell,
    .electro-header .nexxo-cart-trigger-shell,
    .header-wrap .nexxo-cart-trigger-shell,
    .header-wrapper .nexxo-cart-trigger-shell {
        flex: 0 0 auto !important;
        width: max-content !important;
        min-width: 0 !important;
        max-width: max-content !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        box-sizing: border-box !important;
    }

    header .nexxo-cart-trigger-hitbox,
    #masthead .nexxo-cart-trigger-hitbox,
    .site-header .nexxo-cart-trigger-hitbox,
    .electro-header .nexxo-cart-trigger-hitbox,
    .header-wrap .nexxo-cart-trigger-hitbox,
    .header-wrapper .nexxo-cart-trigger-hitbox {
        display: inline-flex !important;
        flex: 0 0 auto !important;
        align-items: center !important;
        justify-content: center !important;
        width: max-content !important;
        min-width: 0 !important;
        max-width: max-content !important;
        padding: 6px !important;
        box-sizing: border-box !important;
        line-height: 1 !important;
    }

    /* En NEXXO no se muestra el importe junto al icono. Si Electro lo deja
       oculto visualmente pero ocupando ancho, lo quitamos también del layout. */
    .nexxo-cart-trigger-hitbox .cart-items-total-price,
    .nexxo-cart-trigger-hitbox .total-price,
    .nexxo-cart-trigger-hitbox > .woocommerce-Price-amount,
    .nexxo-cart-trigger-hitbox > .amount {
        display: none !important;
    }
}

.dropdown-menu-mini-cart,
.nexxo-mini-cart-panel,
.navbar-mini-cart .dropdown-menu {
    width: 420px !important;
    max-width: calc(100vw - 28px) !important;
    padding: 0 !important;
    border: 1px solid rgba(19, 204, 213, 0.22) !important;
    border-radius: 24px !important;
    background: linear-gradient(180deg, rgba(15,17,21,0.98) 0%, rgba(24,26,31,0.98) 100%) !important;
    box-shadow: 0 26px 70px rgba(0,0,0,0.35), 0 10px 28px rgba(19,204,213,0.10) !important;
    overflow: hidden !important;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

.dropdown-menu-mini-cart > li,
.nexxo-mini-cart-panel > li,
.navbar-mini-cart .dropdown-menu > li {
    list-style: none !important;
    margin: 0 !important;
}

.widget_shopping_cart_content,
.nexxo-mini-cart-content {
    position: relative;
    padding: 14px !important;
    background: transparent !important;
    color: #f4f7fb;
}

.widget_shopping_cart_content::before {
    content: "";
    position: absolute;
    top: 0;
    left: 16px;
    right: 16px;
    height: 1px;
    background: linear-gradient(90deg, rgba(19,204,213,0) 0%, rgba(19,204,213,0.45) 50%, rgba(19,204,213,0) 100%);
}

.nexxo-mini-cart-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 8px 4px 14px;
    margin: 0 0 8px;
}

.nexxo-mini-cart-heading-main { min-width: 0; }

.nexxo-mini-cart-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 5px;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.16em;
    color: #13ccd5;
    text-transform: uppercase;
}

.nexxo-mini-cart-kicker::after {
    content: "";
    width: 28px;
    height: 1px;
    background: rgba(19,204,213,0.45);
    border-radius: 999px;
}

.nexxo-mini-cart-heading strong {
    display: block;
    font-size: 20px;
    line-height: 1.08;
    letter-spacing: -0.02em;
    color: #ffffff;
    font-weight: 800;
}

.nexxo-mini-cart-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 38px;
    height: 38px;
    padding: 0 12px;
    border-radius: 999px;
    background: rgba(19,204,213,0.12);
    border: 1px solid rgba(19,204,213,0.22);
    color: #9ef7fb;
    font-size: 14px;
    font-weight: 900;
}

.nexxo-mini-cart-list,
.widget_shopping_cart_content .product_list_widget,
.widget_shopping_cart_content .woocommerce-mini-cart {
    margin: 0 !important;
    padding: 0 !important;
    max-height: 292px;
    overflow: auto;
}

.nexxo-mini-cart-list::-webkit-scrollbar,
.widget_shopping_cart_content .product_list_widget::-webkit-scrollbar,
.widget_shopping_cart_content .woocommerce-mini-cart::-webkit-scrollbar { width: 7px; }
.nexxo-mini-cart-list::-webkit-scrollbar-thumb,
.widget_shopping_cart_content .product_list_widget::-webkit-scrollbar-thumb,
.widget_shopping_cart_content .woocommerce-mini-cart::-webkit-scrollbar-thumb {
    background: rgba(255,255,255,0.14);
    border-radius: 999px;
}

.widget_shopping_cart_content .mini_cart_item,
.widget_shopping_cart_content .woocommerce-mini-cart-item,
.nexxo-mini-cart-item {
    position: relative;
    display: grid !important;
    grid-template-columns: 64px minmax(0, 1fr);
    gap: 12px;
    align-items: start;
    margin: 0 0 10px !important;
    padding: 12px 40px 12px 12px !important;
    border-radius: 18px !important;
    background: rgba(255,255,255,0.045) !important;
    border: 1px solid rgba(255,255,255,0.06) !important;
    list-style: none !important;
}

.widget_shopping_cart_content .mini_cart_item:last-child,
.widget_shopping_cart_content .woocommerce-mini-cart-item:last-child,
.nexxo-mini-cart-item:last-child { margin-bottom: 0 !important; }

.widget_shopping_cart_content .mini_cart_item > a:not(.remove),
.widget_shopping_cart_content .woocommerce-mini-cart-item > a:not(.remove) {
    display: contents;
    text-decoration: none !important;
}

.widget_shopping_cart_content .mini_cart_item img,
.widget_shopping_cart_content .woocommerce-mini-cart-item img {
    grid-column: 1;
    width: 64px !important;
    height: 64px !important;
    object-fit: cover !important;
    border-radius: 16px !important;
    padding: 4px;
    background: #ffffff;
    border: 1px solid rgba(255,255,255,0.12);
    box-shadow: 0 8px 20px rgba(0,0,0,0.16);
    margin: 0 !important;
}

.widget_shopping_cart_content .mini_cart_item,
.widget_shopping_cart_content .woocommerce-mini-cart-item,
.widget_shopping_cart_content .mini_cart_item a,
.widget_shopping_cart_content .woocommerce-mini-cart-item a {
    color: #f7fbff !important;
    font-weight: 700;
    line-height: 1.22;
}

.widget_shopping_cart_content .mini_cart_item a:not(.remove),
.widget_shopping_cart_content .woocommerce-mini-cart-item a:not(.remove) { font-size: 15px !important; }

.widget_shopping_cart_content .mini_cart_item .quantity,
.widget_shopping_cart_content .woocommerce-mini-cart-item .quantity {
    grid-column: 2;
    display: inline-flex !important;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    margin-top: 8px;
    color: rgba(255,255,255,0.72);
    font-size: 13px;
}

.widget_shopping_cart_content .mini_cart_item .quantity .woocommerce-Price-amount,
.widget_shopping_cart_content .woocommerce-mini-cart-item .quantity .woocommerce-Price-amount {
    color: #ffffff;
    font-weight: 900;
    font-size: 20px;
    line-height: 1;
}

.widget_shopping_cart_content .mini_cart_item .remove,
.widget_shopping_cart_content .woocommerce-mini-cart-item .remove,
.widget_shopping_cart_content a.remove_from_cart_button,
.widget_shopping_cart_content a.remove {
    position: absolute !important;
    top: 11px;
    right: 11px;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 26px !important;
    height: 26px !important;
    min-width: 26px !important;
    border-radius: 999px !important;
    background: rgba(255,255,255,0.08) !important;
    color: rgba(255,255,255,0.72) !important;
    font-size: 16px !important;
    line-height: 1 !important;
    text-decoration: none !important;
    transition: all .18s ease;
}

.widget_shopping_cart_content .mini_cart_item .remove:hover,
.widget_shopping_cart_content .woocommerce-mini-cart-item .remove:hover,
.widget_shopping_cart_content a.remove_from_cart_button:hover,
.widget_shopping_cart_content a.remove:hover {
    background: rgba(19,204,213,0.16) !important;
    color: #9ef7fb !important;
    transform: scale(1.04);
}

.nexxo-mini-cart-total,
.widget_shopping_cart_content .woocommerce-mini-cart__total,
.widget_shopping_cart_content p.total {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin: 12px 0 10px !important;
    padding: 14px 16px !important;
    background: rgba(255,255,255,0.055) !important;
    border: 1px solid rgba(19,204,213,0.12) !important;
    border-radius: 18px !important;
    color: rgba(255,255,255,0.75);
    font-size: 13px;
    font-weight: 700;
}

.nexxo-mini-cart-total strong,
.widget_shopping_cart_content .woocommerce-mini-cart__total strong,
.widget_shopping_cart_content p.total strong {
    color: #9ef7fb;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.10em;
}

.nexxo-mini-cart-total .woocommerce-Price-amount,
.widget_shopping_cart_content .woocommerce-mini-cart__total .woocommerce-Price-amount,
.widget_shopping_cart_content p.total .woocommerce-Price-amount {
    color: #ffffff;
    font-size: 24px;
    font-weight: 900;
}

.nexxo-mini-cart-footer-note {
    margin: 8px 4px 12px;
    text-align: center;
    color: rgba(255,255,255,0.55);
    font-size: 12px;
    letter-spacing: 0.02em;
}

.nexxo-mini-cart-buttons,
.widget_shopping_cart_content .woocommerce-mini-cart__buttons,
.widget_shopping_cart_content p.buttons {
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin: 0 !important;
    padding: 0 !important;
}

.widget_shopping_cart_content .woocommerce-mini-cart__buttons .button,
.widget_shopping_cart_content .woocommerce-mini-cart__buttons .wc-forward,
.widget_shopping_cart_content p.buttons .button,
.widget_shopping_cart_content p.buttons .wc-forward {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-height: 50px;
    border-radius: 16px !important;
    padding: 0 18px !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    text-decoration: none !important;
    box-shadow: none !important;
    transition: all .18s ease;
    margin: 0 !important;
}

.widget_shopping_cart_content .woocommerce-mini-cart__buttons .button:not(.checkout),
.widget_shopping_cart_content .woocommerce-mini-cart__buttons .wc-forward:not(.checkout),
.widget_shopping_cart_content p.buttons .button:not(.checkout),
.widget_shopping_cart_content p.buttons .wc-forward:not(.checkout) {
    color: #dffeff !important;
    background: transparent !important;
    border: 1px solid rgba(19,204,213,0.32) !important;
}

.widget_shopping_cart_content .woocommerce-mini-cart__buttons .button.checkout,
.widget_shopping_cart_content .woocommerce-mini-cart__buttons .wc-forward.checkout,
.widget_shopping_cart_content p.buttons .button.checkout,
.widget_shopping_cart_content p.buttons .wc-forward.checkout {
    color: #081013 !important;
    background: linear-gradient(180deg, #3fe9ef 0%, #13ccd5 100%) !important;
    border: 1px solid #13ccd5 !important;
    box-shadow: 0 18px 28px rgba(19,204,213,0.22) !important;
}

.widget_shopping_cart_content .woocommerce-mini-cart__buttons .button:hover,
.widget_shopping_cart_content .woocommerce-mini-cart__buttons .wc-forward:hover,
.widget_shopping_cart_content p.buttons .button:hover,
.widget_shopping_cart_content p.buttons .wc-forward:hover { transform: translateY(-1px); }

.widget_shopping_cart_content .woocommerce-mini-cart__buttons .button:not(.checkout):hover,
.widget_shopping_cart_content .woocommerce-mini-cart__buttons .wc-forward:not(.checkout):hover,
.widget_shopping_cart_content p.buttons .button:not(.checkout):hover,
.widget_shopping_cart_content p.buttons .wc-forward:not(.checkout):hover {
    background: rgba(19,204,213,0.10) !important;
}

.widget_shopping_cart_content .woocommerce-mini-cart__buttons .button.checkout:hover,
.widget_shopping_cart_content .woocommerce-mini-cart__buttons .wc-forward.checkout:hover,
.widget_shopping_cart_content p.buttons .button.checkout:hover,
.widget_shopping_cart_content p.buttons .wc-forward.checkout:hover {
    box-shadow: 0 20px 34px rgba(19,204,213,0.30) !important;
}

.widget_shopping_cart_content .woocommerce-mini-cart__empty-message,
.widget_shopping_cart_content .cart_list .empty,
.widget_shopping_cart_content p.empty {
    margin: 0 !important;
    padding: 24px 6px 6px !important;
    color: rgba(255,255,255,0.72);
    text-align: center;
}

.woocommerce-notices-wrapper { margin-bottom: 18px; }

.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
    position: relative;
    border: 1px solid rgba(19,204,213,0.12) !important;
    border-radius: 20px !important;
    background: linear-gradient(180deg, #effbfd 0%, #f6feff 100%) !important;
    color: #121212 !important;
    box-shadow: 0 12px 28px rgba(0,0,0,0.04) !important;
    padding: 18px 18px 18px 56px !important;
}

.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-error::before {
    content: "";
    position: absolute;
    left: 18px;
    top: 50%;
    width: 24px;
    height: 24px;
    border-radius: 999px;
    transform: translateY(-50%);
    background: linear-gradient(180deg, #3fe9ef 0%, #13ccd5 100%);
    box-shadow: 0 0 0 6px rgba(19,204,213,0.10);
}

.woocommerce-message a,
.woocommerce-info a,
.woocommerce-error a {
    color: #111111 !important;
    font-weight: 800 !important;
    text-decoration: underline;
}

/* =========================================================
   NEXXO · Mi cuenta (versión segura)
   Sólo cambia el look, sin rehacer la estructura del dropdown.
   ========================================================= */
header .nexxo-account-panel-lite,
#masthead .nexxo-account-panel-lite,
.site-header .nexxo-account-panel-lite,
.electro-header .nexxo-account-panel-lite,
.header-wrap .nexxo-account-panel-lite,
.header-wrapper .nexxo-account-panel-lite,
.handheld-header .nexxo-account-panel-lite,
.handheld-header-v2 .nexxo-account-panel-lite {
    min-width: 310px !important;
    max-width: calc(100vw - 28px) !important;
    padding: 10px !important;
    border: 1px solid rgba(19,204,213,0.18) !important;
    border-radius: 22px !important;
    background: rgba(16,18,22,0.97) !important;
    box-shadow: 0 22px 60px rgba(0,0,0,0.30) !important;
    overflow: hidden !important;
    list-style: none !important;
}

header .nexxo-account-panel-lite > li,
header .nexxo-account-panel-lite > .menu-item,
#masthead .nexxo-account-panel-lite > li,
#masthead .nexxo-account-panel-lite > .menu-item,
.site-header .nexxo-account-panel-lite > li,
.site-header .nexxo-account-panel-lite > .menu-item,
.electro-header .nexxo-account-panel-lite > li,
.electro-header .nexxo-account-panel-lite > .menu-item,
.header-wrap .nexxo-account-panel-lite > li,
.header-wrap .nexxo-account-panel-lite > .menu-item,
.header-wrapper .nexxo-account-panel-lite > li,
.header-wrapper .nexxo-account-panel-lite > .menu-item,
.handheld-header .nexxo-account-panel-lite > li,
.handheld-header .nexxo-account-panel-lite > .menu-item,
.handheld-header-v2 .nexxo-account-panel-lite > li,
.handheld-header-v2 .nexxo-account-panel-lite > .menu-item {
    list-style: none !important;
    margin: 0 !important;
}

header .nexxo-account-panel-lite > li > a,
header .nexxo-account-panel-lite > .menu-item > a,
#masthead .nexxo-account-panel-lite > li > a,
#masthead .nexxo-account-panel-lite > .menu-item > a,
.site-header .nexxo-account-panel-lite > li > a,
.site-header .nexxo-account-panel-lite > .menu-item > a,
.electro-header .nexxo-account-panel-lite > li > a,
.electro-header .nexxo-account-panel-lite > .menu-item > a,
.header-wrap .nexxo-account-panel-lite > li > a,
.header-wrap .nexxo-account-panel-lite > .menu-item > a,
.header-wrapper .nexxo-account-panel-lite > li > a,
.header-wrapper .nexxo-account-panel-lite > .menu-item > a,
.handheld-header .nexxo-account-panel-lite > li > a,
.handheld-header .nexxo-account-panel-lite > .menu-item > a,
.handheld-header-v2 .nexxo-account-panel-lite > li > a,
.handheld-header-v2 .nexxo-account-panel-lite > .menu-item > a {
    display: block !important;
    margin: 0 0 8px !important;
    padding: 13px 16px !important;
    border-radius: 14px !important;
    background: rgba(255,255,255,0.045) !important;
    border: 1px solid rgba(255,255,255,0.06) !important;
    color: #f4f7fb !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-decoration: none !important;
    transition: background .18s ease, border-color .18s ease, color .18s ease, transform .18s ease;
}

header .nexxo-account-panel-lite > li:last-child > a,
header .nexxo-account-panel-lite > .menu-item:last-child > a,
#masthead .nexxo-account-panel-lite > li:last-child > a,
#masthead .nexxo-account-panel-lite > .menu-item:last-child > a,
.site-header .nexxo-account-panel-lite > li:last-child > a,
.site-header .nexxo-account-panel-lite > .menu-item:last-child > a,
.electro-header .nexxo-account-panel-lite > li:last-child > a,
.electro-header .nexxo-account-panel-lite > .menu-item:last-child > a,
.header-wrap .nexxo-account-panel-lite > li:last-child > a,
.header-wrap .nexxo-account-panel-lite > .menu-item:last-child > a,
.header-wrapper .nexxo-account-panel-lite > li:last-child > a,
.header-wrapper .nexxo-account-panel-lite > .menu-item:last-child > a,
.handheld-header .nexxo-account-panel-lite > li:last-child > a,
.handheld-header .nexxo-account-panel-lite > .menu-item:last-child > a,
.handheld-header-v2 .nexxo-account-panel-lite > li:last-child > a,
.handheld-header-v2 .nexxo-account-panel-lite > .menu-item:last-child > a {
    margin-bottom: 0 !important;
}

header .nexxo-account-panel-lite > li > a:hover,
header .nexxo-account-panel-lite > .menu-item > a:hover,
#masthead .nexxo-account-panel-lite > li > a:hover,
#masthead .nexxo-account-panel-lite > .menu-item > a:hover,
.site-header .nexxo-account-panel-lite > li > a:hover,
.site-header .nexxo-account-panel-lite > .menu-item > a:hover,
.electro-header .nexxo-account-panel-lite > li > a:hover,
.electro-header .nexxo-account-panel-lite > .menu-item > a:hover,
.header-wrap .nexxo-account-panel-lite > li > a:hover,
.header-wrap .nexxo-account-panel-lite > .menu-item > a:hover,
.header-wrapper .nexxo-account-panel-lite > li > a:hover,
.header-wrapper .nexxo-account-panel-lite > .menu-item > a:hover,
.handheld-header .nexxo-account-panel-lite > li > a:hover,
.handheld-header .nexxo-account-panel-lite > .menu-item > a:hover,
.handheld-header-v2 .nexxo-account-panel-lite > li > a:hover,
.handheld-header-v2 .nexxo-account-panel-lite > .menu-item > a:hover {
    background: rgba(19,204,213,0.12) !important;
    border-color: rgba(19,204,213,0.22) !important;
    color: #ffffff !important;
    transform: translateY(-1px);
}

@media (max-width: 767px) {
    .dropdown-menu-mini-cart,
    .nexxo-mini-cart-panel,
    .navbar-mini-cart .dropdown-menu,
    header .nexxo-account-panel-lite,
    #masthead .nexxo-account-panel-lite,
    .site-header .nexxo-account-panel-lite,
    .electro-header .nexxo-account-panel-lite,
    .header-wrap .nexxo-account-panel-lite,
    .header-wrapper .nexxo-account-panel-lite,
    .handheld-header .nexxo-account-panel-lite,
    .handheld-header-v2 .nexxo-account-panel-lite {
        width: calc(100vw - 18px) !important;
        max-width: calc(100vw - 18px) !important;
        right: 9px !important;
        left: auto !important;
        border-radius: 20px !important;
    }

    .widget_shopping_cart_content,
    .nexxo-mini-cart-content { padding: 12px !important; }
    .nexxo-mini-cart-heading strong { font-size: 18px; }

    .widget_shopping_cart_content .mini_cart_item,
    .widget_shopping_cart_content .woocommerce-mini-cart-item,
    .nexxo-mini-cart-item {
        grid-template-columns: 56px minmax(0, 1fr);
        gap: 10px;
        padding: 10px 36px 10px 10px !important;
        border-radius: 16px !important;
    }

    .widget_shopping_cart_content .mini_cart_item img,
    .widget_shopping_cart_content .woocommerce-mini-cart-item img {
        width: 56px !important;
        height: 56px !important;
        border-radius: 14px !important;
    }

    .widget_shopping_cart_content .mini_cart_item .quantity .woocommerce-Price-amount,
    .widget_shopping_cart_content .woocommerce-mini-cart-item .quantity .woocommerce-Price-amount { font-size: 18px; }

    .nexxo-mini-cart-buttons,
    .widget_shopping_cart_content .woocommerce-mini-cart__buttons,
    .widget_shopping_cart_content p.buttons { grid-template-columns: 1fr; }

    header .nexxo-account-panel-lite > li > a,
    header .nexxo-account-panel-lite > .menu-item > a,
    #masthead .nexxo-account-panel-lite > li > a,
    #masthead .nexxo-account-panel-lite > .menu-item > a,
    .site-header .nexxo-account-panel-lite > li > a,
    .site-header .nexxo-account-panel-lite > .menu-item > a,
    .electro-header .nexxo-account-panel-lite > li > a,
    .electro-header .nexxo-account-panel-lite > .menu-item > a,
    .header-wrap .nexxo-account-panel-lite > li > a,
    .header-wrap .nexxo-account-panel-lite > .menu-item > a,
    .header-wrapper .nexxo-account-panel-lite > li > a,
    .header-wrapper .nexxo-account-panel-lite > .menu-item > a,
    .handheld-header .nexxo-account-panel-lite > li > a,
    .handheld-header .nexxo-account-panel-lite > .menu-item > a,
    .handheld-header-v2 .nexxo-account-panel-lite > li > a,
    .handheld-header-v2 .nexxo-account-panel-lite > .menu-item > a {
        font-size: 14px !important;
        padding: 12px 14px !important;
    }

    .woocommerce-message,
    .woocommerce-info,
    .woocommerce-error {
        padding: 16px 16px 16px 48px !important;
        border-radius: 16px !important;
    }

    .woocommerce-message::before,
    .woocommerce-info::before,
    .woocommerce-error::before {
        left: 14px;
        width: 22px;
        height: 22px;
    }
}


/* =========================================================
   NEXXO · Ajuste v1.3.1
   - Cambia el título a "Tu carrito"
   - Mejora la barra de scroll del mini carrito
   ========================================================= */
.nexxo-mini-cart-heading {
    padding: 8px 4px 12px;
    margin: 0 0 10px;
    border-bottom: 1px solid rgba(255,255,255,0.06);
}

.nexxo-mini-cart-heading strong {
    font-size: 24px;
    line-height: 1.05;
    letter-spacing: -0.025em;
}

.nexxo-mini-cart-list,
.widget_shopping_cart_content .product_list_widget,
.widget_shopping_cart_content .woocommerce-mini-cart {
    scrollbar-width: thin;
    scrollbar-color: rgba(63,233,239,0.65) rgba(255,255,255,0.06);
}

.nexxo-mini-cart-list::-webkit-scrollbar,
.widget_shopping_cart_content .product_list_widget::-webkit-scrollbar,
.widget_shopping_cart_content .woocommerce-mini-cart::-webkit-scrollbar {
    width: 10px;
}

.nexxo-mini-cart-list::-webkit-scrollbar-track,
.widget_shopping_cart_content .product_list_widget::-webkit-scrollbar-track,
.widget_shopping_cart_content .woocommerce-mini-cart::-webkit-scrollbar-track {
    background: rgba(255,255,255,0.05);
    border-radius: 999px;
    border: 1px solid rgba(255,255,255,0.05);
}

.nexxo-mini-cart-list::-webkit-scrollbar-thumb,
.widget_shopping_cart_content .product_list_widget::-webkit-scrollbar-thumb,
.widget_shopping_cart_content .woocommerce-mini-cart::-webkit-scrollbar-thumb {
    background: linear-gradient(180deg, rgba(63,233,239,0.92) 0%, rgba(19,204,213,0.72) 100%);
    border-radius: 999px;
    border: 2px solid rgba(11,16,20,0.68);
    box-shadow: inset 0 0 0 1px rgba(255,255,255,0.08), 0 0 12px rgba(19,204,213,0.18);
}

.nexxo-mini-cart-list::-webkit-scrollbar-thumb:hover,
.widget_shopping_cart_content .product_list_widget::-webkit-scrollbar-thumb:hover,
.widget_shopping_cart_content .woocommerce-mini-cart::-webkit-scrollbar-thumb:hover {
    background: linear-gradient(180deg, rgba(106,245,250,0.96) 0%, rgba(31,223,232,0.82) 100%);
}

@media (max-width: 767px) {
    .nexxo-mini-cart-heading strong {
        font-size: 21px;
    }
    .nexxo-mini-cart-list::-webkit-scrollbar,
    .widget_shopping_cart_content .product_list_widget::-webkit-scrollbar,
    .widget_shopping_cart_content .woocommerce-mini-cart::-webkit-scrollbar {
        width: 8px;
    }
}


/* =========================================================
   NEXXO · Ajuste área clickeable del icono carrito
   ========================================================= */
header .site-header-cart,
#masthead .site-header-cart,
.site-header .site-header-cart,
.electro-header .site-header-cart,
.header-wrap .site-header-cart,
.header-wrapper .site-header-cart,
header .navbar-mini-cart,
#masthead .navbar-mini-cart,
.site-header .navbar-mini-cart {
    display: inline-flex !important;
    align-items: center !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: max-content !important;
    flex: 0 0 auto !important;
}

header .site-header-cart > a,
#masthead .site-header-cart > a,
.site-header .site-header-cart > a,
.electro-header .site-header-cart > a,
.header-wrap .site-header-cart > a,
.header-wrapper .site-header-cart > a,
header .site-header-cart .cart-contents,
#masthead .site-header-cart .cart-contents,
.site-header .site-header-cart .cart-contents,
.electro-header .site-header-cart .cart-contents,
.header-wrap .site-header-cart .cart-contents,
.header-wrapper .site-header-cart .cart-contents,
header .navbar-mini-cart > a,
#masthead .navbar-mini-cart > a,
.site-header .navbar-mini-cart > a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: max-content !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin: 0 !important;
    white-space: nowrap !important;
}

header .site-header-cart .cart-contents::after,
#masthead .site-header-cart .cart-contents::after,
.site-header .site-header-cart .cart-contents::after {
    right: auto !important;
}


/* =========================================================
   NEXXO · Página Carrito Premium v1.7.0
   Responsive reconstruido desde cero.
   - escritorio: tabla compacta
   - tablet: una sola columna, tabla conservada
   - móvil: cada producto se convierte en una tarjeta real
   - sin depender del responsive nativo del theme
   ========================================================= */

body.nexxo-cart-page-enabled {
    background:#fff !important;
}

body.nexxo-cart-page-enabled .site-content,
body.nexxo-cart-page-enabled .content-area,
body.nexxo-cart-page-enabled .entry-content,
body.nexxo-cart-page-enabled .site-main {
    overflow:visible !important;
}

body.nexxo-cart-page-enabled .woocommerce {
    width:min(1240px,calc(100% - 36px));
    margin:0 auto 44px;
    padding:0 !important;
    box-sizing:border-box;
}

.nexxo-cart-page-heading {
    width:min(1240px,calc(100% - 36px));
    margin:34px auto 24px;
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:24px;
    box-sizing:border-box;
}

.nexxo-cart-page-heading-copy { min-width:0; }
.nexxo-cart-kicker,
.nexxo-cart-products-kicker,
.nexxo-wholesale-kicker {
    display:inline-flex;
    align-items:center;
    gap:8px;
    color:#00a8b5;
    font-size:10px;
    font-weight:900;
    letter-spacing:.16em;
    text-transform:uppercase;
}
.nexxo-cart-kicker::before {
    content:"";
    width:6px;
    height:6px;
    border-radius:50%;
    background:#13ccd5;
}
.nexxo-cart-page-heading h1 {
    margin:7px 0 4px !important;
    color:#101418 !important;
    font-size:clamp(31px,3.6vw,46px) !important;
    line-height:1.03 !important;
    letter-spacing:-.04em;
    font-weight:900 !important;
}
.nexxo-cart-page-heading p {
    margin:0 !important;
    color:#6f7b84;
    font-size:15px;
}

/* progreso mayorista */
.nexxo-wholesale-progress-card {
    width:100%;
    display:grid;
    grid-template-columns:minmax(0,1.15fr) minmax(330px,.85fr);
    align-items:center;
    gap:30px;
    margin:0 0 22px;
    padding:22px 24px;
    border:1px solid rgba(19,204,213,.25);
    border-radius:22px;
    background:linear-gradient(125deg,#f8feff 0%,#fff 46%,#f1fcfd 100%);
    box-shadow:0 14px 34px rgba(11,51,56,.055);
    box-sizing:border-box;
}
.nexxo-wholesale-progress-main { display:flex;align-items:center;gap:17px;min-width:0; }
.nexxo-wholesale-progress-icon { display:inline-flex;align-items:center;justify-content:center;width:58px;height:58px;border-radius:18px;color:#071216;background:#13ccd5;font-size:28px;font-weight:900;box-shadow:0 0 0 10px rgba(19,204,213,.09); }
.nexxo-wholesale-progress-copy strong { display:block;margin-top:5px;color:#101418;font-size:21px;line-height:1.2;font-weight:900;letter-spacing:-.025em; }
.nexxo-wholesale-progress-copy p { margin:7px 0 0;color:#5f6d75;font-size:14px; }
.nexxo-wholesale-progress-copy p b { color:#101418; }
.nexxo-wholesale-progress-values { display:flex;align-items:baseline;color:#708089;font-size:12px; }
.nexxo-wholesale-progress-values b { color:#111820;font-size:14px; }
.nexxo-wholesale-progress-values em { margin-left:auto;color:#26333b;font-style:normal;font-size:13px;font-weight:900; }
.nexxo-wholesale-progress-track { height:10px;margin:9px 0 7px;overflow:hidden;border-radius:999px;background:#e8eef0; }
.nexxo-wholesale-progress-track span { display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#08b9c4,#25d7df);box-shadow:0 4px 12px rgba(19,204,213,.22); }
.nexxo-wholesale-progress-side small { color:#839098;font-size:11px; }
body.nexxo-cart-page-enabled .woocommerce > .nexxo-wholesale-progress,
body.nexxo-cart-page-enabled .woocommerce .nexxo-wholesale-progress:not(.nexxo-wholesale-progress-card),
body.nexxo-cart-page-enabled .nexxo-cart-mode-badge { display:none !important; }

/* columnas principales */
body.nexxo-cart-page-enabled .woocommerce-cart-form,
body.nexxo-cart-page-enabled .cart-collaterals { box-sizing:border-box; }

body.nexxo-cart-page-enabled .woocommerce-cart-form {
    width:66% !important;
    float:left !important;
    margin:0 !important;
    padding:24px !important;
    border:1px solid #e1e8eb !important;
    border-radius:24px !important;
    background:#fff !important;
    box-shadow:0 20px 48px rgba(18,31,38,.065) !important;
    overflow:visible !important;
}
body.nexxo-cart-page-enabled .cart-collaterals {
    width:31.5% !important;
    float:right !important;
    margin:0 !important;
}

/* cabecera productos */
.nexxo-cart-products-head {
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:18px;
    margin-bottom:18px;
    padding-bottom:15px;
    border-bottom:1px solid #edf1f3;
}
.nexxo-cart-products-head h2 { margin:4px 0 0 !important;color:#101418 !important;font-size:22px !important;font-weight:900 !important;letter-spacing:-.025em; }
.nexxo-cart-products-head h2 b { font-weight:700;color:#6f7c84; }
.nexxo-cart-continue-shopping { color:#44515a !important;font-size:12px;font-weight:800;text-decoration:none !important;white-space:nowrap; }
.nexxo-cart-continue-shopping:hover { color:#00a6b3 !important; }

/* tabla escritorio/tablet */
body.nexxo-cart-page-enabled .woocommerce-cart-form table.shop_table.cart {
    width:100% !important;
    margin:0 !important;
    border:0 !important;
    border-collapse:separate !important;
    border-spacing:0 10px !important;
    background:transparent !important;
    table-layout:auto !important;
}
body.nexxo-cart-page-enabled .woocommerce-cart-form table.shop_table.cart thead th {
    padding:12px 10px !important;
    border:0 !important;
    background:#f7f9fa !important;
    color:#75828a !important;
    font-size:10px !important;
    font-weight:900 !important;
    letter-spacing:.075em;
    text-transform:uppercase;
    white-space:nowrap;
}
body.nexxo-cart-page-enabled .woocommerce-cart-form table.shop_table.cart thead th:first-child { border-radius:13px 0 0 13px; }
body.nexxo-cart-page-enabled .woocommerce-cart-form table.shop_table.cart thead th:last-child { border-radius:0 13px 13px 0; }
body.nexxo-cart-page-enabled .woocommerce-cart-form tr.cart_item td {
    padding:16px 10px !important;
    border-top:1px solid #e7edef !important;
    border-bottom:1px solid #e7edef !important;
    background:#fff !important;
    vertical-align:middle !important;
}
body.nexxo-cart-page-enabled .woocommerce-cart-form tr.cart_item td:first-child { border-left:1px solid #e7edef !important;border-radius:17px 0 0 17px; }
body.nexxo-cart-page-enabled .woocommerce-cart-form tr.cart_item td:last-child { border-right:1px solid #e7edef !important;border-radius:0 17px 17px 0; }
body.nexxo-cart-page-enabled .woocommerce-cart-form .product-thumbnail img { width:76px !important;height:76px !important;max-width:76px !important;object-fit:cover !important;padding:5px;border:1px solid #e3e9ec;border-radius:16px !important;background:#fff;box-shadow:0 8px 18px rgba(0,0,0,.04);box-sizing:border-box; }
body.nexxo-cart-page-enabled .woocommerce-cart-form .product-name,
body.nexxo-cart-page-enabled .woocommerce-cart-form .product-name a { color:#152027 !important;font-size:13px !important;line-height:1.35 !important;font-weight:850 !important;text-decoration:none !important; }
body.nexxo-cart-page-enabled .woocommerce-cart-form .product-price,
body.nexxo-cart-page-enabled .woocommerce-cart-form .product-subtotal { color:#101418 !important;font-size:14px !important;font-weight:900 !important;white-space:nowrap; }
body.nexxo-cart-page-enabled .woocommerce-cart-form .quantity { display:inline-flex !important;align-items:center;justify-content:center;min-height:40px;border:1px solid #dfe6e9;border-radius:12px;background:#f8fafb;overflow:hidden; }
body.nexxo-cart-page-enabled .woocommerce-cart-form .quantity input.qty { width:44px !important;min-height:40px !important;padding:0 !important;border:0 !important;background:transparent !important;color:#162027 !important;text-align:center !important;box-shadow:none !important; }
body.nexxo-cart-page-enabled .woocommerce-cart-form .quantity button,
body.nexxo-cart-page-enabled .woocommerce-cart-form .quantity .plus,
body.nexxo-cart-page-enabled .woocommerce-cart-form .quantity .minus { min-width:36px !important;min-height:40px !important;padding:0 !important;border:0 !important;background:#fff !important;color:#3d4b54 !important;box-shadow:none !important; }
body.nexxo-cart-page-enabled .woocommerce-cart-form .product-remove a.remove { display:inline-flex !important;align-items:center !important;justify-content:center !important;width:36px !important;height:36px !important;border:1px solid #dfe6e9 !important;border-radius:11px !important;background:#f8fafb !important;color:#617079 !important;font-size:19px !important;line-height:1 !important;text-decoration:none !important; }
body.nexxo-cart-page-enabled .woocommerce-cart-form .product-remove a.remove:hover { border-color:rgba(19,204,213,.48) !important;background:#f1feff !important;color:#009aa7 !important; }

/* acciones */
body.nexxo-cart-page-enabled .woocommerce-cart-form tr:not(.cart_item) td.actions {
    padding:16px 0 0 !important;
    border:0 !important;
    background:transparent !important;
    white-space:normal !important;
    text-align:left !important;
}
body.nexxo-cart-page-enabled .woocommerce-cart-form button[name="update_cart"],
body.nexxo-cart-page-enabled .woocommerce-cart-form input[name="update_cart"] { display:none !important; }
body.nexxo-cart-page-enabled .nexxo-cart-checkout-hidden,
body.nexxo-cart-page-enabled .woocommerce-cart-form td.actions .checkout-button:not(.nexxo-cart-inline-checkout),
body.nexxo-cart-page-enabled .nexxo-cart-secure-note { display:none !important; }

/* contenedor real creado por NEXXO Mi Cuenta */
body.nexxo-cart-page-enabled .woocommerce-cart-form td.actions .nexxo-save-draft {
    float:none !important;
    display:grid !important;
    grid-template-columns:minmax(220px,1fr) auto auto !important;
    align-items:stretch !important;
    gap:10px !important;
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    margin:0 !important;
    box-sizing:border-box !important;
}
body.nexxo-cart-page-enabled .woocommerce-cart-form td.actions .nexxo-save-draft > input[type="text"] {
    width:100% !important;
    min-width:0 !important;
    height:48px !important;
    margin:0 !important;
    padding:0 15px !important;
    border:1px solid #dce5e8 !important;
    border-radius:13px !important;
    background:#fff !important;
    color:#162027 !important;
    box-shadow:none !important;
    box-sizing:border-box !important;
}
body.nexxo-cart-page-enabled .woocommerce-cart-form td.actions .nexxo-save-draft > button.button[name="nexxo_save_cart"] {
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-width:150px !important;
    height:48px !important;
    margin:0 !important;
    padding:0 20px !important;
    border:1px solid #dce5e8 !important;
    border-radius:13px !important;
    background:#fff !important;
    color:#111820 !important;
    font-weight:850 !important;
    box-shadow:none !important;
}
body.nexxo-cart-page-enabled .woocommerce-cart-form td.actions .nexxo-cart-inline-checkout {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:auto !important;
    min-width:190px !important;
    height:48px !important;
    margin:0 !important;
    padding:0 22px !important;
    float:none !important;
    border:1px solid #13ccd5 !important;
    border-radius:13px !important;
    background:linear-gradient(90deg,#10bec9 0%,#23d7df 100%) !important;
    color:#061114 !important;
    font-size:14px !important;
    line-height:1 !important;
    font-weight:900 !important;
    text-align:center !important;
    text-decoration:none !important;
    box-shadow:0 12px 26px rgba(19,204,213,.18) !important;
    box-sizing:border-box !important;
}
body.nexxo-cart-page-enabled .woocommerce-cart-form td.actions .nexxo-cart-inline-checkout::before,
body.nexxo-cart-page-enabled .woocommerce-cart-form td.actions .nexxo-cart-inline-checkout::after { content:none !important;display:none !important; }

/* checkout cuando el cliente no inició sesión: no existe .nexxo-save-draft */
body.nexxo-cart-page-enabled .woocommerce-cart-form td.actions > .nexxo-cart-inline-checkout {
    min-width:190px !important;
}

/* resumen */
body.nexxo-cart-page-enabled .cart_totals {
    width:100% !important;
    float:none !important;
    margin:0 !important;
    padding:0 20px 20px !important;
    overflow:hidden;
    border:1px solid #dfe7ea !important;
    border-radius:24px !important;
    background:#fff !important;
    box-shadow:0 20px 48px rgba(18,31,38,.075) !important;
}
body.nexxo-cart-page-enabled .cart_totals h2 {
    position:relative;
    margin:0 -20px !important;
    padding:22px 20px 4px 20px !important;
    color:#111820 !important;
    font-size:20px !important;
    font-weight:900 !important;
    background:#fff !important;
}
.nexxo-cart-summary-intro { margin:0 -20px 15px;padding:0 20px 18px;color:#7a878f;font-size:11px;border-bottom:1px solid #edf1f3; }
body.nexxo-cart-page-enabled .cart_totals table.shop_table { width:100% !important;margin:0 !important;border:0 !important;border-collapse:collapse !important;background:#fff !important; }
body.nexxo-cart-page-enabled .cart_totals table.shop_table tr { background:transparent !important; }
body.nexxo-cart-page-enabled .cart_totals table.shop_table th,
body.nexxo-cart-page-enabled .cart_totals table.shop_table td { padding:16px 0 !important;border:0 !important;border-bottom:1px solid #edf1f3 !important;background:#fff !important;border-radius:0 !important; }
body.nexxo-cart-page-enabled .cart_totals table.shop_table tr:last-child th,
body.nexxo-cart-page-enabled .cart_totals table.shop_table tr:last-child td { border-bottom:0 !important; }
body.nexxo-cart-page-enabled .cart_totals table.shop_table th { color:#172027 !important;font-size:14px !important;font-weight:700 !important;text-align:left !important; }
body.nexxo-cart-page-enabled .cart_totals table.shop_table td { color:#111820 !important;font-size:15px !important;font-weight:800 !important;text-align:right !important; }
body.nexxo-cart-page-enabled .cart_totals .order-total td,
body.nexxo-cart-page-enabled .cart_totals .order-total td strong,
body.nexxo-cart-page-enabled .cart_totals .order-total .amount { color:#0b1115 !important;font-size:24px !important;font-weight:950 !important;line-height:1.1 !important; }

body.nexxo-cart-page-enabled .wc-proceed-to-checkout { padding:12px 0 0 !important; }
body.nexxo-cart-page-enabled .wc-proceed-to-checkout a.checkout-button,
body.nexxo-cart-page-enabled .wc-proceed-to-checkout .button { width:100% !important;min-height:54px !important;display:flex !important;align-items:center !important;justify-content:center !important;margin:0 !important;padding:0 20px !important;border:1px solid #13ccd5 !important;border-radius:14px !important;background:linear-gradient(90deg,#10bec9 0%,#23d7df 100%) !important;color:#061114 !important;font-size:15px !important;font-weight:900 !important;text-align:center !important;box-shadow:0 13px 28px rgba(19,204,213,.20) !important; }

body.nexxo-cart-page-enabled .woocommerce-notices-wrapper { width:min(1240px,calc(100% - 36px));margin-left:auto;margin-right:auto; }
body.nexxo-cart-page-enabled .nexxo-original-wholesale-notice { display:none !important; }

/* =========================================================
   TABLET / VENTANA INTERMEDIA
   Se conserva la tabla, pero carrito y resumen pasan a una columna.
   ========================================================= */
@media (max-width:980px) {
    body.woocommerce-cart.nexxo-cart-page-enabled #content.site-content,
    body.woocommerce-cart.nexxo-cart-page-enabled .site-content,
    body.woocommerce-cart.nexxo-cart-page-enabled .content-area,
    body.woocommerce-cart.nexxo-cart-page-enabled .site-main,
    body.woocommerce-cart.nexxo-cart-page-enabled .entry-content {
        padding-top:0 !important;
        margin-top:0 !important;
    }
    .nexxo-cart-page-heading {
        margin-top:24px !important;
        align-items:flex-start;
        flex-direction:column;
    }
    .nexxo-wholesale-progress-card { grid-template-columns:1fr;gap:18px; }
    body.nexxo-cart-page-enabled .woocommerce-cart-form,
    body.nexxo-cart-page-enabled .cart-collaterals { width:100% !important;float:none !important; }
    body.nexxo-cart-page-enabled .cart-collaterals { margin-top:18px !important; }

    body.nexxo-cart-page-enabled .woocommerce-cart-form td.actions .nexxo-save-draft {
        grid-template-columns:minmax(0,1fr) minmax(150px,auto) minmax(190px,auto) !important;
    }
}

/* =========================================================
   TABLET ANGOSTA
   La tabla sigue siendo tabla, pero deja de pedir un ancho mínimo
   mayor que la tarjeta. Esto evita el salto/overflow antes del móvil.
   ========================================================= */
@media (min-width:641px) and (max-width:820px) {
    body.nexxo-cart-page-enabled .woocommerce-cart-form table.shop_table.cart {
        table-layout:fixed !important;
    }
    body.nexxo-cart-page-enabled .woocommerce-cart-form table.shop_table.cart thead th,
    body.nexxo-cart-page-enabled .woocommerce-cart-form tr.cart_item td {
        padding-left:6px !important;
        padding-right:6px !important;
    }
    body.nexxo-cart-page-enabled .woocommerce-cart-form .product-remove { width:42px !important; }
    body.nexxo-cart-page-enabled .woocommerce-cart-form .product-thumbnail { width:70px !important; }
    body.nexxo-cart-page-enabled .woocommerce-cart-form .product-price { width:88px !important; }
    body.nexxo-cart-page-enabled .woocommerce-cart-form .product-quantity { width:92px !important; }
    body.nexxo-cart-page-enabled .woocommerce-cart-form .product-subtotal { width:98px !important; }
    body.nexxo-cart-page-enabled .woocommerce-cart-form .product-thumbnail img {
        width:60px !important;
        height:60px !important;
        max-width:60px !important;
        border-radius:13px !important;
    }
    body.nexxo-cart-page-enabled .woocommerce-cart-form .product-name,
    body.nexxo-cart-page-enabled .woocommerce-cart-form .product-name a {
        font-size:12px !important;
        line-height:1.28 !important;
        overflow-wrap:anywhere;
    }
    body.nexxo-cart-page-enabled .woocommerce-cart-form .product-price,
    body.nexxo-cart-page-enabled .woocommerce-cart-form .product-subtotal {
        font-size:13px !important;
    }
    body.nexxo-cart-page-enabled .woocommerce-cart-form .quantity input.qty {
        width:40px !important;
    }
    body.nexxo-cart-page-enabled .woocommerce-cart-form td.actions .nexxo-save-draft {
        grid-template-columns:minmax(0,1fr) 140px 170px !important;
    }
}

/* =========================================================
   MÓVIL REAL
   A partir de 640px la tabla deja de intentar comprimirse y cada
   producto pasa a una tarjeta con layout propio.
   ========================================================= */
@media (max-width:640px) {
    .nexxo-cart-page-heading,
    body.nexxo-cart-page-enabled .woocommerce,
    body.nexxo-cart-page-enabled .woocommerce-notices-wrapper {
        width:calc(100% - 20px) !important;
    }
    .nexxo-cart-page-heading { margin:18px auto 16px !important; }
    .nexxo-cart-page-heading h1 { font-size:36px !important; }
    .nexxo-cart-page-heading p { font-size:13px; }

    .nexxo-wholesale-progress-card { padding:16px;border-radius:18px; }
    .nexxo-wholesale-progress-main { align-items:flex-start; }
    .nexxo-wholesale-progress-icon { width:44px;height:44px;border-radius:13px;box-shadow:none;font-size:22px; }
    .nexxo-wholesale-progress-copy strong { font-size:17px; }

    body.nexxo-cart-page-enabled .woocommerce-cart-form {
        padding:14px !important;
        border-radius:20px !important;
        overflow:hidden !important;
    }
    .nexxo-cart-products-head {
        align-items:flex-start;
        flex-direction:column;
        gap:12px;
        margin-bottom:14px;
        padding-bottom:14px;
    }
    .nexxo-cart-products-head h2 { font-size:21px !important;line-height:1.12 !important; }
    .nexxo-cart-continue-shopping { font-size:12px; }

    /* anulamos completamente el responsive nativo de Woo/Electro */
    body.nexxo-cart-page-enabled .woocommerce-cart-form table.shop_table.cart,
    body.nexxo-cart-page-enabled .woocommerce-cart-form table.shop_table.cart tbody {
        display:block !important;
        width:100% !important;
        margin:0 !important;
        padding:0 !important;
        border:0 !important;
        border-spacing:0 !important;
        background:transparent !important;
    }
    body.nexxo-cart-page-enabled .woocommerce-cart-form table.shop_table.cart thead { display:none !important; }

    body.nexxo-cart-page-enabled .woocommerce-cart-form tr.cart_item {
        display:grid !important;
        grid-template-columns:82px minmax(0,1fr) 38px !important;
        grid-template-areas:
            "thumb name remove"
            "thumb price remove"
            "qty qty qty"
            "subtotal subtotal subtotal" !important;
        column-gap:12px !important;
        row-gap:5px !important;
        width:100% !important;
        margin:0 0 12px !important;
        padding:13px !important;
        border:1px solid #e3eaed !important;
        border-radius:18px !important;
        background:#fff !important;
        box-sizing:border-box !important;
        overflow:hidden !important;
    }
    body.nexxo-cart-page-enabled .woocommerce-cart-form tr.cart_item td {
        display:block !important;
        width:auto !important;
        max-width:none !important;
        min-width:0 !important;
        height:auto !important;
        margin:0 !important;
        padding:0 !important;
        border:0 !important;
        border-radius:0 !important;
        background:transparent !important;
        text-align:left !important;
        float:none !important;
        box-sizing:border-box !important;
    }

    /* eliminamos etiquetas automáticas del theme; ponemos solo las nuestras */
    body.nexxo-cart-page-enabled .woocommerce-cart-form tr.cart_item td::before {
        content:none !important;
        display:none !important;
    }

    body.nexxo-cart-page-enabled .woocommerce-cart-form tr.cart_item td.product-remove {
        grid-area:remove !important;
        position:static !important;
        align-self:start !important;
        justify-self:end !important;
        z-index:auto !important;
    }
    body.nexxo-cart-page-enabled .woocommerce-cart-form tr.cart_item td.product-remove a.remove {
        width:36px !important;
        height:36px !important;
        margin:0 !important;
    }

    body.nexxo-cart-page-enabled .woocommerce-cart-form tr.cart_item td.product-thumbnail {
        grid-area:thumb !important;
        display:block !important;
        width:82px !important;
    }
    body.nexxo-cart-page-enabled .woocommerce-cart-form tr.cart_item td.product-thumbnail a { display:block !important;width:82px !important;height:82px !important; }
    body.nexxo-cart-page-enabled .woocommerce-cart-form tr.cart_item td.product-thumbnail img {
        display:block !important;
        width:82px !important;
        height:82px !important;
        max-width:82px !important;
        margin:0 !important;
        padding:5px !important;
        object-fit:cover !important;
        border-radius:15px !important;
    }

    body.nexxo-cart-page-enabled .woocommerce-cart-form tr.cart_item td.product-name {
        grid-area:name !important;
        align-self:end !important;
        padding-right:2px !important;
        color:#152027 !important;
        font-size:15px !important;
        line-height:1.28 !important;
        font-weight:850 !important;
    }
    body.nexxo-cart-page-enabled .woocommerce-cart-form tr.cart_item td.product-name a {
        color:#152027 !important;
        font-size:15px !important;
        line-height:1.28 !important;
        font-weight:850 !important;
        overflow-wrap:anywhere;
    }

    body.nexxo-cart-page-enabled .woocommerce-cart-form tr.cart_item td.product-price {
        grid-area:price !important;
        align-self:start !important;
        display:flex !important;
        align-items:baseline !important;
        gap:6px !important;
        color:#111820 !important;
        font-size:15px !important;
        font-weight:900 !important;
        white-space:normal !important;
    }
    body.nexxo-cart-page-enabled .woocommerce-cart-form tr.cart_item td.product-price::before {
        content:"Precio" !important;
        display:inline !important;
        color:#7b8790 !important;
        font-size:11px !important;
        font-weight:800 !important;
        text-transform:uppercase;
        letter-spacing:.05em;
    }

    body.nexxo-cart-page-enabled .woocommerce-cart-form tr.cart_item td.product-quantity {
        grid-area:qty !important;
        display:flex !important;
        align-items:center !important;
        justify-content:space-between !important;
        gap:12px !important;
        margin-top:8px !important;
        padding-top:12px !important;
        border-top:1px solid #edf1f3 !important;
    }
    body.nexxo-cart-page-enabled .woocommerce-cart-form tr.cart_item td.product-quantity::before {
        content:"Cantidad" !important;
        display:block !important;
        color:#4e5c64 !important;
        font-size:13px !important;
        font-weight:800 !important;
    }
    body.nexxo-cart-page-enabled .woocommerce-cart-form tr.cart_item td.product-quantity .quantity {
        flex:0 0 auto !important;
        width:auto !important;
        max-width:132px !important;
        min-width:94px !important;
        margin:0 !important;
    }
    body.nexxo-cart-page-enabled .woocommerce-cart-form tr.cart_item td.product-quantity .quantity input.qty {
        width:52px !important;
        min-width:52px !important;
    }

    body.nexxo-cart-page-enabled .woocommerce-cart-form tr.cart_item td.product-subtotal {
        grid-area:subtotal !important;
        display:flex !important;
        align-items:center !important;
        justify-content:space-between !important;
        gap:12px !important;
        padding-top:11px !important;
        border-top:1px solid #edf1f3 !important;
        color:#101418 !important;
        font-size:16px !important;
        font-weight:950 !important;
        white-space:normal !important;
    }
    body.nexxo-cart-page-enabled .woocommerce-cart-form tr.cart_item td.product-subtotal::before {
        content:"Subtotal" !important;
        display:block !important;
        color:#4e5c64 !important;
        font-size:13px !important;
        font-weight:800 !important;
    }

    /* fila de acciones */
    body.nexxo-cart-page-enabled .woocommerce-cart-form table.shop_table.cart tbody > tr:not(.cart_item) {
        display:block !important;
        width:100% !important;
        margin:0 !important;
        padding:0 !important;
        border:0 !important;
    }
    body.nexxo-cart-page-enabled .woocommerce-cart-form td.actions {
        display:block !important;
        width:100% !important;
        padding:4px 0 0 !important;
        box-sizing:border-box !important;
    }
    body.nexxo-cart-page-enabled .woocommerce-cart-form td.actions .nexxo-save-draft {
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:9px !important;
        width:100% !important;
        max-width:none !important;
        margin:0 !important;
    }
    body.nexxo-cart-page-enabled .woocommerce-cart-form td.actions .nexxo-save-draft > input[type="text"],
    body.nexxo-cart-page-enabled .woocommerce-cart-form td.actions .nexxo-save-draft > button.button[name="nexxo_save_cart"],
    body.nexxo-cart-page-enabled .woocommerce-cart-form td.actions .nexxo-save-draft > .nexxo-cart-inline-checkout,
    body.nexxo-cart-page-enabled .woocommerce-cart-form td.actions > .nexxo-cart-inline-checkout {
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
        margin:0 !important;
    }
    body.nexxo-cart-page-enabled .woocommerce-cart-form td.actions > .nexxo-cart-inline-checkout {
        display:flex !important;
        min-height:52px !important;
    }

    body.nexxo-cart-page-enabled .cart_totals { padding:0 14px 14px !important;border-radius:20px !important; }
    body.nexxo-cart-page-enabled .cart_totals h2 { margin:0 -14px !important;padding:18px 14px 4px !important;font-size:19px !important; }
    .nexxo-cart-summary-intro { margin:0 -14px 12px;padding:0 14px 14px; }
}

/* =========================================================
   CELULAR ANGOSTO
   Solo compacta; no vuelve a cambiar de paradigma.
   ========================================================= */
@media (max-width:420px) {
    .nexxo-cart-page-heading,
    body.nexxo-cart-page-enabled .woocommerce,
    body.nexxo-cart-page-enabled .woocommerce-notices-wrapper { width:calc(100% - 14px) !important; }
    .nexxo-cart-page-heading h1 { font-size:32px !important; }
    body.nexxo-cart-page-enabled .woocommerce-cart-form { padding:10px !important;border-radius:18px !important; }
    .nexxo-cart-products-head h2 { font-size:19px !important; }
    body.nexxo-cart-page-enabled .woocommerce-cart-form tr.cart_item {
        grid-template-columns:70px minmax(0,1fr) 34px !important;
        column-gap:10px !important;
        padding:11px !important;
        border-radius:16px !important;
    }
    body.nexxo-cart-page-enabled .woocommerce-cart-form tr.cart_item td.product-thumbnail,
    body.nexxo-cart-page-enabled .woocommerce-cart-form tr.cart_item td.product-thumbnail a { width:70px !important;height:70px !important; }
    body.nexxo-cart-page-enabled .woocommerce-cart-form tr.cart_item td.product-thumbnail img { width:70px !important;height:70px !important;max-width:70px !important; }
    body.nexxo-cart-page-enabled .woocommerce-cart-form tr.cart_item td.product-name,
    body.nexxo-cart-page-enabled .woocommerce-cart-form tr.cart_item td.product-name a { font-size:14px !important; }
    body.nexxo-cart-page-enabled .woocommerce-cart-form tr.cart_item td.product-price { font-size:14px !important; }
    body.nexxo-cart-page-enabled .woocommerce-cart-form tr.cart_item td.product-remove a.remove { width:32px !important;height:32px !important;font-size:17px !important; }
}

body.nexxo-cart-page-server .woocommerce { position:relative; }
body.nexxo-cart-page-server .woocommerce-error,
body.nexxo-cart-page-server .woocommerce-info,
body.nexxo-cart-page-server .woocommerce-message { border-radius:16px !important; }
