/* ============================================
   QUICK BUY PAGE - CLEAN DARK BLUE FINAL
============================================ */

html{
    scroll-behavior:smooth;
}

body{
    background:#f4f7fb;
    overflow-x:hidden;
}



/* ============================================
   MAIN WRAPPER
============================================ */

.quickbuy-wrapper{

    width:100%;

    padding:20px 16px 140px;

    box-sizing:border-box;

    overflow:visible !important;
}



/* ============================================
   STICKY FILTER
============================================ */

.quickbuy-filter-wrapper{

    position:relative;

    width:100%;

    background:#ffffff;

    padding:12px 10px;

    margin-bottom:20px;

    text-align:center;

    border-bottom:1px solid #e5e7eb;

    box-shadow:
        0 4px 14px rgba(18,0,91,0.06);

    transition:
        top .25s ease,
        transform .25s ease;
}



/* AFTER SCROLL */

.quickbuy-filter-wrapper.fixed-filter{

    position:fixed;

    top:0;

    left:0;

    width:100%;

    z-index:99999;
}



/* FILTER LABEL */

.quickbuy-filter-label{

    display:block;

    font-size:14px;

    font-weight:700;

    color:#12005b;

    margin-bottom:8px;

    text-align:left;

    max-width:320px;

    margin-left:auto;

    margin-right:auto;
}



/* FILTER DROPDOWN */

.quickbuy-filter-wrapper select{

    width:100%;

    max-width:320px;

    height:48px;

    border:1px solid #dbe3ee;

    border-radius:12px;

    padding:0 14px;

    font-size:15px;

    font-weight:700;

    background:#f8fafc;

    color:red;

    outline:none;

    cursor:pointer;

    transition:
        all .25s ease;
}

.quickbuy-filter-wrapper select:focus{

    border-color:#12005b;

    box-shadow:
        0 0 0 4px rgba(18,0,91,0.10);
}



/* ACTIVE CATEGORY */

.quickbuy-filter-wrapper select.active-category{

    border-color:#12005b;

    color:red;

    background:#eef2ff;

    box-shadow:
        0 0 0 4px rgba(18,0,91,0.10);
}



/* ============================================
   CATEGORY
============================================ */

.quickbuy-category-section{

    margin-bottom:26px;

    scroll-margin-top:100px;
}

.quickbuy-category-line{

    width:100%;

    text-align:center;

    margin-bottom:20px;
}

.quickbuy-category-box{

    display:inline-block;

    background:#12005b;

    color:#fff;

    font-size:16px;

    font-weight:700;

    text-transform:uppercase;

    letter-spacing:.4px;

    padding:10px 22px;

    border-radius:10px;

    box-shadow:
        0 6px 18px rgba(18,0,91,0.20);
}



/* ============================================
   PRODUCT GRID
============================================ */

.quickbuy-products-grid{

    display:flex;

    flex-wrap:wrap;

    gap:22px;
}



/* ============================================
   PRODUCT CARD
============================================ */

.quickbuy-card{

    background:#ffffff;

    border:1px solid #e2e8f0;

    border-radius:16px;

    padding:18px;

    box-shadow:
        0 4px 16px rgba(18,0,91,0.05);

    display:flex;

    align-items:flex-start;

    gap:16px;

    transition:
        transform .25s ease,
        box-shadow .25s ease;

    box-sizing:border-box;
}

.quickbuy-card:hover{

    transform:translateY(-2px);

    box-shadow:
        0 12px 28px rgba(18,0,91,0.10);
}



/* ============================================
   DESKTOP - 3 CARDS
============================================ */

@media(min-width:1024px){

    .quickbuy-card{

        width:calc(33.333% - 15px);
    }
}



/* ============================================
   TABLET - 2 CARDS
============================================ */

@media(min-width:640px) and (max-width:1023px){

    .quickbuy-card{

        width:calc(50% - 11px);
    }
}



/* ============================================
   MOBILE - 1 CARD
============================================ */

@media(max-width:639px){

    .quickbuy-card{

        width:100%;
    }
}



/* ============================================
   PRODUCT IMAGE
============================================ */

.quickbuy-thumbnail{

    width:90px;

    height:90px;

    min-width:90px;

    display:flex;

    justify-content:center;

    align-items:center;

    overflow:hidden;

    cursor:pointer;

    flex-shrink:0;
}

.quickbuy-thumbnail img{

    width:100%;

    height:100%;

    object-fit:contain;

    border-radius:10px;

    transition:transform .25s ease;
}

.quickbuy-thumbnail img:hover{

    transform:scale(1.04);
}



/* ============================================
   PRODUCT DETAILS
============================================ */

.quickbuy-details{

    flex:1;

    min-width:0;
}



/* ============================================
   PRODUCT NAME
============================================ */

.quickbuy-product-name{

    font-size:17px;

    font-weight:700;

    line-height:1.5;

    color:#111827;

    margin-bottom:14px;

    word-break:break-word;
}



/* ============================================
   META ROW
============================================ */

.quickbuy-meta-row{

    display:flex;

    justify-content:space-between;

    align-items:center;

    gap:12px;

    padding:12px 0;

    border-top:1px dashed #dbe2ea;
}



/* ============================================
   LABEL
============================================ */

.quickbuy-label{

    font-size:14px;

    font-weight:600;

    color:#64748b;

    min-width:82px;
}



/* ============================================
   PRICE
============================================ */

.quickbuy-price{

    flex:1;

    text-align:right;

    font-size:15px;
}

.regular-price{

    text-decoration:line-through;

    color:#94a3b8;

    margin-right:8px;

    font-size:13px;
}

.sale-price{

    color:#12005b;

    font-weight:700;

    font-size:16px;
}



/* ============================================
   QUANTITY
============================================ */

.quickbuy-quantity{

    flex:1;

    display:flex;

    justify-content:flex-end;
}

.quantity-wrapper{

    display:flex;

    align-items:center;

    gap:8px;
}



/* ============================================
   BUTTONS
============================================ */

.qty-btn{

    width:34px;

    height:34px;

    border:none;

    border-radius:8px;

    background:#12005b;

    color:#fff;

    font-size:18px;

    font-weight:700;

    display:flex;

    justify-content:center;

    align-items:center;

    cursor:pointer;

    transition:all .25s ease;
}

.qty-btn:hover{

    background:#1e0a78;

    transform:translateY(-1px);
}



/* ============================================
   INPUT
============================================ */

.qty{

    width:56px;

    height:34px;

    border:1px solid #dbe3ee;

    border-radius:8px;

    text-align:center;

    font-size:14px;

    outline:none;

    background:#fff;
}

.qty:focus{

    border-color:#12005b;
}



/* ============================================
   SUBTOTAL
============================================ */

.quickbuy-subtotal{

    flex:1;

    text-align:right;

    font-size:17px;

    font-weight:700;

    color:red;

    transition:all .25s ease;
}

.subtotal-zero{

    color:red !important;
}

.subtotal-added{

    color:green !important;
}


/* ============================================
   SCROLL TO TOP FIX
============================================ */

#scroll-to-top{

    z-index:999999 !important;
}



/* ============================================
   MODERN FLOATING CART BAR
============================================ */

.quickbuy-cart-bar{

    position:fixed;

    left:50%;

    bottom:12px;

    transform:translateX(-50%);

    width:calc(100% - 20px);

    max-width:520px;

    background:#ffffff;

    border-radius:18px;

    padding:14px;

    z-index:9999;

    border:1px solid #e2e8f0;

    box-shadow:
        0 14px 34px rgba(18,0,91,0.10);
}



/* TOP ROW */

.quickbuy-cart-top{

    display:flex;

    justify-content:space-between;

    align-items:center;

    gap:12px;

    margin-bottom:12px;
}



/* STAT BOX */

.quickbuy-cart-stat{

    display:flex;

    align-items:center;

    gap:8px;

    background:#f8fafc;

    padding:10px 14px;

    border-radius:12px;

    font-size:15px;

    font-weight:700;

    color:red;
}



/* TOTAL */

.quickbuy-cart-stat.total-price{

    background:#eef2ff;

    color:red;
}



/* ICONS */

.cart-icon,
.rupee-icon{

    color:#12005b;

    font-size:18px;
}



/* ============================================
   CHECKOUT BUTTON
============================================ */

.quickbuy-checkout-btn{

    width:100%;

    height:50px;

    border:none;

    border-radius:12px;

    background:#12005b;

    color:#fff;

    font-size:15px;

    font-weight:700;

    cursor:pointer;

    transition:all .25s ease;

    box-shadow:
        0 10px 20px rgba(18,0,91,0.18);
}

.quickbuy-checkout-btn:hover{

    background:#1e0a78;

    box-shadow:
        0 14px 26px rgba(18,0,91,0.24);

    transform:translateY(-1px);
}



/* ============================================
   IMAGE MODAL
============================================ */

.quickbuy-modal{

    display:none;

    position:fixed;

    inset:0;

    background:
        rgba(15,23,42,0.82);

    z-index:10000;

    padding:20px;

    box-sizing:border-box;
}



/* IMAGE BOX */

.quickbuy-modal-box{

    position:absolute;

    left:50%;

    top:50%;

    transform:
        translate(-50%,-50%);

    width:90vw;

    max-width:420px;

    height:420px;

    background:#fff;

    border-radius:18px;

    padding:16px;

    box-sizing:border-box;

    display:flex;

    justify-content:center;

    align-items:center;

    box-shadow:
        0 10px 32px rgba(0,0,0,0.35);
}



/* IMAGE */

.quickbuy-modal-content{

    width:100%;

    height:100%;

    object-fit:contain;

    border-radius:12px;
}



/* CLOSE BUTTON */

.quickbuy-close{

    position:absolute;

    top:12px;

    right:12px;

    width:36px;

    height:36px;

    background:#12005b;

    color:#fff;

    border-radius:10px;

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:22px;

    font-weight:700;

    cursor:pointer;

    z-index:10002;

    box-shadow:
        0 4px 12px rgba(18,0,91,0.22);
}



/* MOBILE */

@media(max-width:639px){

    .quickbuy-modal-box{

        width:92vw;

        height:320px;

        padding:14px;
    }

    .quickbuy-close{

        width:34px;

        height:34px;

        font-size:20px;

        top:10px;

        right:10px;
    }
}

/* ============================================
   MOBILE FINAL
============================================ */

@media(max-width:639px){

    body{
        padding-bottom:160px;
    }

    .quickbuy-wrapper{

        padding:20px 10px 160px;
    }

    .quickbuy-filter-wrapper{

        padding:10px;
    }

    .quickbuy-filter-label{

        max-width:100%;

        font-size:13px;

        margin-bottom:6px;
    }

    .quickbuy-filter-wrapper select{

        width:100%;

        max-width:100%;

        height:46px;

        font-size:14px;
    }

    .quickbuy-products-grid{
        gap:16px;
    }

    .quickbuy-card{

        width:100%;

        padding:14px;

        gap:12px;

        align-items:flex-start;
    }

    .quickbuy-thumbnail{

        width:72px;

        height:72px;

        min-width:72px;
    }

    .quickbuy-details{

        flex:1;

        min-width:0;
    }

    .quickbuy-product-name{

        font-size:15px;

        line-height:1.45;

        margin-bottom:12px;

        word-break:break-word;

        overflow-wrap:break-word;
    }

    .quickbuy-meta-row{

        gap:8px;

        padding:10px 0;
    }

    .quickbuy-label{

        min-width:72px;

        font-size:13px;
    }

    .quickbuy-price,
    .quickbuy-subtotal{

        font-size:14px;
    }

    .quickbuy-subtotal{

        font-size:15px;
    }

    .quantity-wrapper{
        gap:6px;
    }

    .qty-btn{

        width:32px;

        height:32px;

        font-size:16px;
    }

    .qty{

        width:48px;

        height:32px;
    }

    .quickbuy-category-box{

        font-size:13px;

        padding:8px 16px;
    }

    .quickbuy-cart-bar{

        width:calc(100% - 16px);

        bottom:8px;

        padding:12px;
    }

    .quickbuy-cart-top{

        gap:8px;
    }

    .quickbuy-cart-stat{

        flex:1;

        justify-content:center;

        font-size:14px;

        padding:10px;
    }

    .quickbuy-checkout-btn{

        height:48px;

        font-size:14px;
    }

    .quickbuy-close{

        width:38px;

        height:38px;

        font-size:24px;

        top:-10px;

        right:-10px;
    }

    .quickbuy-category-section{

        scroll-margin-top:120px;
    }

    #scroll-to-top{

        bottom:170px !important;

        right:14px !important;
    }
}