/* ==========================================
   OFFCANVAS QUOTATION CART
========================================== */

.quotation-cart-btn{

position:fixed;

bottom:30px;

right:30px;

width:70px;

height:70px;

border:none;

border-radius:50%;

background:#ff9800;

color:#fff;

font-size:28px;

cursor:pointer;

box-shadow:0 10px 30px rgba(0,0,0,.25);

z-index:9998;

transition:.3s;

}

.quotation-cart-btn:hover{

transform:scale(1.08);

background:#e68900;

}

#cartBadge{

position:absolute;

top:-6px;

right:-6px;

background:#dc3545;

color:#fff;

width:28px;

height:28px;

border-radius:50%;

display:flex;

align-items:center;

justify-content:center;

font-size:13px;

font-weight:bold;

}

/* Sidebar */

.quotation-sidebar{

    position: fixed;

    top: 0;

    right: -420px;

    width: 420px;

    max-width: 100%;

    height: 100vh;

    background: #fff;

    transition: .3s;

    z-index: 9999;

    overflow-y: auto;

    -webkit-overflow-scrolling: touch;

}



.sidebar-items{

flex:1;

overflow-y:auto;

padding:20px;

}

.sidebar-footer{

padding:20px;

background:#fff;

border-top:1px solid #eee;

}

@media(max-width:768px){

.quotation-sidebar{

width:100%;

max-width:100%;

}

.sidebar-footer{

padding:15px;

}

.sidebar-footer .btn{

height:50px;

font-size:18px;

font-weight:600;

border-radius:12px;

}

}

.quotation-sidebar.active{

right:0;

}

/* Header */

.sidebar-header{

background:#0B4EA2;

color:#fff;

padding:20px;

display:flex;

justify-content:space-between;

align-items:center;

}

.sidebar-header h3{

margin:0;

font-size:22px;

}

.close-sidebar{

border:none;

background:none;

font-size:34px;

color:#fff;

cursor:pointer;

}

/* Items */

.sidebar-items{

flex:1;

overflow-y:auto;

padding:20px;

}

/* Footer */

.sidebar-footer{

padding:20px;

border-top:1px solid #ddd;

background:#fafafa;

}

.sidebar-footer h4{

margin-bottom:8px;

}

.sidebar-footer h3{

color:#0B4EA2;

font-weight:bold;

margin-bottom:20px;

}

/* Overlay */

.sidebar-overlay{

position:fixed;

top:0;

left:0;

width:100%;

height:100%;

background:rgba(0,0,0,.45);

display:none;

z-index:9999;

}

.sidebar-overlay.active{

display:block;

}

/* Mobile */

@media(max-width:768px){

.quotation-sidebar{

width:100%;

}

}