/* Cart button */

.scb-cart-button{
    position:relative;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
}

/* Icon */

.scb-cart-icon{
    display:flex;
    align-items:center;
    justify-content:center;
    transform-origin:center;
}

.scb-cart-icon svg,
.scb-cart-icon i{
    width:24px;
    height:24px;
    font-size:24px;
}

/* Badge */

.scb-cart-count{
    position:absolute;
    top:-6px;
    right:-6px;
    background:#ff3a3a;
    color:#fff;
    font-size:11px;
    width:18px;
    height:18px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:600;
}

/* Menu injection */

.scb-menu-cart{
    display:flex;
    align-items:center;
}

/* Wrapper */

.scb-cart-wrapper{
    position:relative;
    display:inline-block;
    overflow:visible !important;
}

/* Mini cart */

.scb-mini-cart{
    position:absolute;
    top:40px;
    right:0;
    width:320px;
    background:#111;
    border:1px solid #333;
    padding:15px;
    border-radius:6px;
    z-index:9999;

    opacity:0;
    visibility:hidden;
    transform:translateY(8px);
    transition:all .25s ease;
}

/* Open state (controlled by JS) */

.scb-cart-wrapper.scb-open .scb-mini-cart{
    opacity:1;
    visibility:visible;
    transform:translateY(0);
}

/* Cart list */

.scb-mini-cart ul{
    margin:0;
    padding:0;
    list-style:none;
}

/* Buttons */

.scb-mini-cart .woocommerce-mini-cart__buttons{
    display:flex;
    flex-direction:column;
    gap:10px;
    margin-top:12px;
}

.scb-mini-cart .woocommerce-mini-cart__buttons .button{
    width:100%;
    text-align:center;
    padding:10px;
    border-radius:4px;
}

/* Button colors */

.scb-mini-cart .checkout{
    background:#b400ff;
    color:#fff;
}

.scb-mini-cart .wc-forward{
    background:#333;
    color:#fff;
}

.scb-cart-icon{
    transform-origin:center;
    display:flex;
}

.scb-cart-wrapper .scb-mini-cart{
    display:none !important;
}

.scb-cart-wrapper.scb-open .scb-mini-cart{
    display:block !important;
}

/* Badge bounce */

.scb-bounce{
    animation:scbBounce .4s cubic-bezier(.34,1.56,.64,1);
}

@keyframes scbBounce{
    0%{transform:scale(1)}
    50%{transform:scale(1.25)}
    100%{transform:scale(1)}
}

/* Cart wiggle attention */

.scb-wiggle{
    animation:scbWiggle .7s ease;
}

@keyframes scbWiggle{
    0%{transform:rotate(0deg) scale(1)}
    20%{transform:rotate(-15deg) scale(1.1)}
    40%{transform:rotate(12deg) scale(1.1)}
    60%{transform:rotate(-8deg) scale(1.05)}
    80%{transform:rotate(6deg) scale(1.05)}
    100%{transform:rotate(0deg) scale(1)}
}