.enfoca-vwe-variations{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:8px;
    margin-bottom:8px;
}
.enfoca-vwe-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(0,0,0,.1);
    background:#f7f7f7;
    color:#222;
    padding:.5em .8em;
    border-radius:6px;
    cursor:pointer;
    transition:transform .08s ease, box-shadow .2s ease, background .2s ease, color .2s ease, border-color .2s ease;
    white-space:nowrap;
}
.enfoca-vwe-button:hover{
    background:#fff;
    box-shadow:0 1px 4px rgba(0,0,0,.08);
}
.enfoca-vwe-button.is-selected{
    outline:2px solid rgba(0,0,0,.15);
}
.enfoca-vwe-button.enfoca-vwe-loading{
    opacity:.6;
    pointer-events:none;
}

.enfoca-vwe-selection{
    display:flex;
    align-items:center;
    gap:12px;
    flex-wrap:wrap;
}
.enfoca-vwe--cta-below .enfoca-vwe-selection{
    flex-direction:column;
    align-items:flex-start;
}
.enfoca-vwe--cta-full .enfoca-vwe-add-btn{
    width:100%;
}

.enfoca-vwe-selected-price{
    font-weight:600;
}
.enfoca-vwe-add-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(0,0,0,.2);
    background:#222;
    color:#fff;
    padding:.55em .9em;
    border-radius:6px;
    cursor:pointer;
    transition:background .2s ease, color .2s ease, border-color .2s ease, opacity .2s ease;
}
.enfoca-vwe-add-btn:hover{
    opacity:.9;
}
.enfoca-vwe-add-btn.enfoca-vwe-loading{
    opacity:.6;
    pointer-events:none;
}

.enfoca-vwe-qty{
    width:80px;
    max-width:100%;
    padding:.5em .6em;
    border:1px solid rgba(0,0,0,.2);
    border-radius:6px;
    outline:0;
    background:#fff;
    color:#222;
}

.enfoca-vwe-notice{
    font-size:.9em;
    opacity:.8;
}

/* Toast */
#enfoca-vwe-toast{
    position:fixed;
    left:50%;
    bottom:24px;
    transform:translateX(-50%) translateY(20px);
    background:#222;
    color:#fff;
    padding:.7em 1em;
    border-radius:8px;
    box-shadow:0 6px 20px rgba(0,0,0,.2);
    opacity:0;
    pointer-events:none;
    transition:opacity .2s ease, transform .2s ease;
    z-index:999999;
    font-size:16px;
    line-height:1.2;
}
#enfoca-vwe-toast.is-visible{
    opacity:1;
    transform:translateX(-50%) translateY(0);
}
