/* MS FullData - Global Checkout CSS */
#shipping_method input[type="radio"], .ms-shipping-box input[type="radio"] { 
    position: absolute !important; opacity: 0 !important; width: 0 !important; height: 0 !important; pointer-events: none !important; margin: 0 !important; padding: 0 !important;
}
.ms-shipping-box label::before, .ms-shipping-box label::after, .ms-shipping-box .radio-custom label::before, .ms-shipping-box .radio-custom label::after {
    display: none !important; content: none !important;
}
#payment input[type="radio"] { 
    position: absolute !important; opacity: 0 !important; width: 0 !important; height: 0 !important; pointer-events: none !important;
}
#payment label::after, #payment .radio-custom label::after, #payment .porto-radio label::after {
    display: none !important; content: none !important;
}
.ms-hide-shipping-force, .ms-hide-shipping-force * {
    display: none !important; visibility: hidden !important; height: 0 !important; opacity: 0 !important; overflow: hidden !important; margin: 0 !important; padding: 0 !important;
}

/* ANTI-FOUC GLOBAL ABSOLUTO PARA AVISOS NATIVOS DE CUPÓN/REFERIDO */
div.woocommerce-info:not(.ms-safe-info), .woocommerce-checkout div.woocommerce-info:not(.ms-safe-info),
.woocommerce-checkout .woocommerce-form-coupon-toggle, .woocommerce-checkout .woocommerce-form-coupon,
.woocommerce-checkout .show-referral-form, .woocommerce-checkout form.checkout_coupon,
.woocommerce-checkout form.checkout_referral, .woocommerce-checkout .wc-block-checkout__add-referral {
    display: none !important; visibility: hidden !important; opacity: 0 !important; height: 0 !important; margin: 0 !important; padding: 0 !important; overflow: hidden !important; position: absolute !important; z-index: -9999 !important; pointer-events: none !important;
}

.cr-customer-consent { display: none !important; }

/* ========================================================= */
/* NUEVO: ESTILOS DEL MODAL (POPUP) DESGLOSE DE GANANCIAS    */
/* ========================================================= */
#ms-open-savings-modal:hover { transform: scale(1.15); }

.ms-savings-modal-overlay {
    position: fixed; top: 0; left: 0; width: 100%; height: 100%;
    background: rgba(0,0,0,0.5); backdrop-filter: blur(4px);
    z-index: 999999; display: none; align-items: center; justify-content: center;
}

.ms-savings-modal-box {
    background: #ffffff; width: 95%; max-width: 520px; border-radius: 16px;
    box-shadow: 0 15px 50px rgba(0,0,0,0.2); overflow: hidden;
    transform: translateY(20px); transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    margin: auto; max-height: 90vh; display: flex; flex-direction: column;
}

.ms-savings-modal-header {
    padding: 22px 25px; border-bottom: 1px solid #f0f0f0; display: flex;
    justify-content: space-between; align-items: center; background: #fafafa;
}

.ms-savings-modal-header h4 { margin: 0; font-size: 1.25em; font-weight: 800; color: #111; letter-spacing: -0.5px;}

.ms-savings-modal-close {
    font-size: 1.8em; line-height: 1; cursor: pointer; color: #a0aec0; transition: color 0.2s; font-weight: 300;
}
.ms-savings-modal-close:hover { color: #e2401c; }

.ms-savings-modal-body {
    padding: 25px; overflow-y: auto; flex: 1; background: #ffffff;
}

.ms-savings-item {
    display: flex; align-items: center; gap: 18px; margin-bottom: 22px;
    padding-bottom: 22px; border-bottom: 1px dashed #eaeaea;
}
.ms-savings-item:last-child { margin-bottom: 0; padding-bottom: 0; border-bottom: none; }

.ms-savings-item img {
    width: 70px; height: 70px; object-fit: cover; border-radius: 10px; border: 1px solid #eee; background: #fff;
}

.ms-savings-item-info { flex: 1; }
.ms-savings-item-info h5 { margin: 0 0 8px 0; font-size: 1.05em; color: #222; line-height: 1.3; font-weight: 600; }
.ms-badge-qty { display:inline-block; background:#f1f1f1; color:#555; padding:2px 6px; border-radius:4px; font-size:0.85em; font-weight:700; margin-left:6px; }

.ms-savings-prices { font-size: 0.95em; display: flex; align-items: center; gap: 8px; }
.ms-reg-price del { color: #a0aec0; }
.ms-sale-price { font-weight: 700; color: #111; }

.ms-savings-item-total {
    text-align: right; background: #f0fdf4; padding: 12px 18px; border-radius: 10px;
    border: 1px solid #dcfce7; display: flex; flex-direction: column; align-items: center; justify-content: center; min-width: 90px;
}
.ms-savings-label { font-size: 0.75em; text-transform: uppercase; color: #166534; font-weight: 800; margin-bottom: 4px; letter-spacing: 0.5px; }
.ms-savings-amount { color: #008a20; font-weight: 800; font-size: 1.15em; }

@media (max-width: 480px) {
    .ms-savings-item { flex-direction: column; align-items: flex-start; gap: 15px; }
    .ms-savings-item img { width: 100%; height: auto; max-height: 200px; }
    .ms-savings-item-total { width: 100%; flex-direction: row; justify-content: space-between; box-sizing: border-box; }
    .ms-savings-label { margin-bottom: 0; }
}