body.ff-cart-page #ff-cart-incentive {
    position: relative; width: 100%; max-width: 100%;
    margin: 1.5rem 0 3rem; padding: 2rem; box-sizing: border-box;
    border: 1px solid var(--ff-border-soft, #e5e7eb); border-radius: 24px;
    background: #fff; box-shadow: 0 12px 30px rgba(15,23,42,.06); overflow: hidden;
}
body.ff-cart-page #ff-cart-incentive[hidden] { display:none!important; }
#ff-cart-incentive .ff-incentive-progress { position:absolute; inset:0 0 auto; height:5px; background:#fff0cc; }
#ff-cart-incentive .ff-incentive-progress span { display:block; height:100%; width:0; background:#ffb511; transition:width .7s ease; }
#ff-cart-incentive .ff-incentive-message { margin:0 -2rem 1.5rem; text-align:center; color:#172b45; }
#ff-cart-incentive .ff-incentive-message strong { display:block; padding:.25rem 2rem 1.15rem; font-size:clamp(1rem,2vw,1.25rem); line-height:1.5; }
#ff-cart-incentive .ff-incentive-message p { width:100%; margin:0; padding:.8rem 2rem; box-sizing:border-box; border-radius:24px 24px 0 0; background:#c90008; color:#fff; font-size:.95rem; font-weight:700; line-height:1.4; white-space:pre-line; }
#ff-cart-incentive .ff-incentive-message p span,
#ff-cart-incentive .ff-incentive-message p small { display:block; color:inherit; font:inherit; }
#ff-cart-incentive .ff-incentive-message p small { margin-top:.08rem; }
#ff-cart-incentive .ff-product-suggestions-carousel { margin:0; }
#ff-cart-incentive .woocommerce ul.products li.product { display:flex!important; flex-direction:column; }
#ff-cart-incentive .woocommerce ul.products li.product > a { height:auto; min-height:0; flex:1; padding-bottom:.4rem; }
#ff-cart-incentive .ff-product-image-wrap { display:block; aspect-ratio:4/3; overflow:hidden; border-radius:14px; }
#ff-cart-incentive .ff-product-image-wrap img { width:100%; height:100%; object-fit:contain; margin:0!important; }
#ff-cart-incentive .ff-incentive-card-footer { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:.7rem; padding:.5rem .85rem 1rem; }
#ff-cart-incentive .ff-incentive-card-footer .price { color:#c90008!important; font-size:1rem!important; font-weight:700!important; margin:0!important; }
#ff-cart-incentive .ff-incentive-add { border:0; border-radius:99px; padding:.7rem 1rem; min-height:44px; background:#ffb511; color:#fff!important; -webkit-text-fill-color:#fff; font:700 .85rem/1.2 Inter,sans-serif; cursor:pointer; transition:background .2s,transform .2s; }
#ff-cart-incentive .ff-incentive-add:hover,
#ff-cart-incentive .ff-incentive-add:focus-visible,
#ff-cart-incentive .ff-incentive-add:active,
#ff-cart-incentive .ff-incentive-add.is-pending { background:#c90008; color:#fff!important; -webkit-text-fill-color:#fff; transform:translateY(-1px); }
#ff-cart-incentive button:focus-visible { outline:3px solid #c90008; outline-offset:3px; }
#ff-cart-incentive .ff-incentive-add:disabled { opacity:.65; cursor:wait; }
#ff-cart-incentive .ff-product-suggestions-controls { margin-top:1.25rem; }
#ff-cart-incentive .ff-product-suggestions-arrow svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:2.5; stroke-linecap:round; stroke-linejoin:round; }
#ff-cart-incentive .ff-incentive-feedback { text-align:center; color:#172b45; font-size:.9rem; padding:0; margin:.75rem 0 0; }
#ff-cart-incentive .ff-incentive-feedback:empty { display:none; }
body.ff-cart-page--has-items .cart_totals table tr.cart-subtotal,
body.ff-cart-page--has-items .cart_totals table tr.fee,
body.ff-cart-page--has-items .cart_totals table tr.order-total { display:flex!important; align-items:center; justify-content:space-between; gap:1rem; width:100%; margin:0; }
body.ff-cart-page--has-items .cart_totals table tr.cart-subtotal th,
body.ff-cart-page--has-items .cart_totals table tr.cart-subtotal td,
body.ff-cart-page--has-items .cart_totals table tr.fee th,
body.ff-cart-page--has-items .cart_totals table tr.fee td { display:block; margin:0; padding:.6rem 0!important; border:0!important; background:transparent!important; color:#172b45!important; font-size:.95rem; font-weight:700; line-height:1.25; vertical-align:middle; }
body.ff-cart-page--has-items .cart_totals table tr.cart-subtotal td,
body.ff-cart-page--has-items .cart_totals table tr.fee td { margin-left:auto; text-align:right; white-space:nowrap; }
body.ff-cart-page--has-items .cart_totals table tr.order-total { margin-top:.2rem; padding-top:.75rem; border-top:1px solid var(--ff-border-soft,#e5e7eb); }
.ff-incentive-ball { position:fixed; z-index:2147483647; pointer-events:none; width:18px; height:18px; border-radius:50%; background:#ffb511; box-shadow:0 0 16px #ffb51180; }
@media(max-width:767px) {
    body.ff-cart-page #ff-cart-incentive { width:100%; max-width:100%; padding:1.5rem 1rem; border-radius:16px; margin:1rem 0 2.5rem; }
    #ff-cart-incentive .ff-incentive-message { margin-left:-1rem; margin-right:-1rem; }
    #ff-cart-incentive .ff-incentive-message strong { padding-left:1rem; padding-right:1rem; }
    #ff-cart-incentive .ff-incentive-message p { padding-left:1rem; padding-right:1rem; }
    #ff-cart-incentive .ff-incentive-message p { border-radius:16px 16px 0 0; }
    #ff-cart-incentive .ff-incentive-message p { font-size:.88rem; }
}
@media(prefers-reduced-motion:reduce) { #ff-cart-incentive * { transition:none!important; } }
