/* ===== Wrapper ===== */

#cbv-wrapper{
    margin:30px 0;
    border:1px solid #e5e5e5;
    border-radius:10px;
    overflow:hidden;
    background:#fff;
}

/* ===== Table ===== */

.cbv-table{
    width:100%;
    border-collapse:collapse;
}

.cbv-table th{
    background:#f8f8f8;
    font-size:15px;
    font-weight:600;
    padding:14px;
    text-align:center;
    border-bottom:1px solid #ececec;
}

.cbv-table td{
    padding:12px;
    text-align:center;
    border-bottom:1px solid #f1f1f1;
    vertical-align:middle;
}

/* ===== Qty ===== */

.cbv-qty-box{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid #ddd;
    border-radius:8px;
    overflow:hidden;
    background:#fff;
}

.cbv-minus,
.cbv-plus{

    width:38px;
    height:38px;

    border:none;
    background:#f5f5f5;

    cursor:pointer;

    font-size:20px;
    font-weight:700;

    transition:.25s;
}

.cbv-minus:hover,
.cbv-plus:hover{

    background:#222;
    color:#fff;

}

.cbv-qty{

    width:55px !important;
    height:38px !important;

    border:none !important;
    box-shadow:none !important;

    text-align:center;

    font-size:15px;
    font-weight:600;

    padding:0 !important;

    margin:0 !important;

}

.cbv-qty:focus{

    outline:none;

}

/* Remove arrows */

.cbv-qty::-webkit-outer-spin-button,
.cbv-qty::-webkit-inner-spin-button{

    -webkit-appearance:none;
    margin:0;

}

.cbv-qty{
    appearance:textfield;
    -moz-appearance:textfield;
}

/* ===== Footer ===== */

.cbv-footer{

    display:flex;
    justify-content:space-between;
    align-items:center;

    gap:20px;

    padding:20px;

    background:#fafafa;

}

.cbv-footer-left{

    display:flex;
    gap:30px;

    font-size:16px;
    font-weight:600;

}

.cbv-footer-right{

    display:flex;
    align-items:center;

}

#cbv-add-all{

    border:none;

    background:#3bb77e;
    color:#fff;

    padding:14px 28px;

    border-radius:8px;

    cursor:pointer;

    font-size:15px;
    font-weight:600;

    transition:.3s;

}

#cbv-add-all:hover{

    background:#3bb77e;

}

/* ===== Responsive ===== */

@media(max-width:991px){

.cbv-table{

    display:block;
    overflow-x:auto;

}

.cbv-footer{

    flex-direction:column;
    align-items:flex-start;

}

.cbv-footer-left{

    width:100%;
    justify-content:space-between;

}

#cbv-add-all{

    width:100%;

}

}

@media(max-width:576px){

.cbv-table th,
.cbv-table td{

    padding:10px;
    font-size:13px;

}

.cbv-minus,
.cbv-plus{

    width:34px;
    height:34px;

}

.cbv-qty{

    width:44px !important;
    height:34px !important;

}

}