
/* ===== CHECKOUT UI (LOCKED) ===== */
.cb-wrap{max-width:1100px;margin:auto;font-family:Arial}

.cb-header{
  background:var(--cl-header-bg);
  padding:14px;
  text-align:center;
  font-weight:700;
}


.cb-products{margin:20px 0}
.cb-products h3{margin-bottom:12px}
.cb-card{
  border:1px solid var(--cl-product-border);
  padding:12px;
  border-radius:10px;
  margin-bottom:10px;
  display:flex;
  align-items:center;
  gap:12px;
  justify-content:space-between;
}


.cb-pinfo{flex:1}
.cb-pinfo span{
  color: var(--cl-product-border);
  font-weight:600;
}


.cb-bottom{display:grid;grid-template-columns:2fr 1fr;gap:24px;margin-top:20px}
.cb-form label{font-weight:600;margin-top:10px;display:block}
.cb-form input,.cb-form textarea,.cb-form select{width:100%;padding:10px;border:1px solid #ccc;border-radius:6px;margin-top:6px}
.cb-order{
  border:1px solid #ddd;
  padding:16px;
  border-radius:10px;
  background:var(--cl-order-bg);
}

.cb-total{font-size:18px;font-weight:700;margin:12px 0}
.cb-btn{
  width:100%;
  padding:16px;
  background:var(--cl-button-bg);
  font-weight:700;
  border:none;
  border-radius:12px;
  cursor:pointer;
  box-shadow:0 6px 16px rgba(0,0,0,.18)
}

@media(max-width:768px){.cb-bottom{grid-template-columns:1fr}}

/* ===== SUCCESS PAGE (ISOLATED) ===== */
.cb-success-wrap{min-height:70vh;display:flex;align-items:center;justify-content:center;background:#f6f7fb}
.cb-success-box{background:#fff;padding:30px 26px;border-radius:14px;max-width:420px;width:100%;text-align:center;box-shadow:0 10px 30px rgba(0,0,0,.1)}
.cb-success-icon{width:64px;height:64px;border-radius:50%;background:#4CAF50;color:#fff;font-size:36px;display:flex;align-items:center;justify-content:center;margin:0 auto 16px}
.cb-success-info{background:#f5f5f5;padding:12px;border-radius:8px;margin:14px 0;text-align:left}
.cb-success-btn{display:inline-block;margin-top:16px;padding:12px 20px;background:#ff7a00;color:#fff;border-radius:10px;text-decoration:none;font-weight:700}
/* === Checkout Lens: Bigger Product Checkbox === */
.cb-check {
    transform: scale(1.8);   /* checkbox বড় */
    cursor: pointer;
}

.cb-card {
    cursor: pointer;
}
/* === Checkout Lens: Bigger Quantity Control === */

/* ===== MODERN ROUNDED QTY UI ===== */
/* ===== EXACT MOCKUP PILL QTY ===== */
.cb-qty{
  display:inline-flex;
  align-items:center;
  background:#f3f4f6;
  border:1px solid #e5e7eb;
  border-radius:999px;
  overflow:hidden;
  height:42px;
  padding:0 2px;   /* ⭐ important */
}


/* minus & plus */
.qty-btn{
  width:34px;
  height:42px;
  border:none;
  background:transparent;
  font-size:18px;
  cursor:pointer;
  color:#555;
}

.qty-btn:hover{
  background:#e5e7eb;
}

/* number */
.qty-input{
  width:36px;
  height:42px;
  border:none;
  background:transparent;
  text-align:center;
  font-size:16px;
  font-weight:600;
  outline:none;
  color:#333;
}

.cb-qty .qty-input{
  padding:0 !important;
  margin:0 !important;
  box-shadow:none !important;
  border:none !important;
  background:transparent !important;
}

/* remove spinner */
.qty-input::-webkit-inner-spin-button,
.qty-input::-webkit-outer-spin-button{
  -webkit-appearance:none;
  margin:0;
}
.qty-input{
  appearance:textfield;
  -moz-appearance:textfield;
}


/* === ORDER SUMMARY DESIGN === */

#cb-summary{
 display:flex;
 flex-direction:column;
 gap:14px;
}

.cb-order-item{
 display:flex;
 gap:12px;
 align-items:center;
 padding:12px;
 border:1px solid #e5e7eb;
 border-radius:14px;
 background:#fff;
}

.cb-order-img{
 width:56px;
 height:56px;
 object-fit:cover;
 border-radius:10px;
 border:1px solid #eee;
}

.cb-order-name{
 font-weight:700;
 font-size:16px;
}

.cb-order-qty{
 font-weight:600;
 color:#333;
 margin-top:4px;
}

.cb-order-ship{
 display:flex;
 justify-content:space-between;
 padding:12px;
 border-radius:14px;
 background:#f9fafb;
 font-weight:700;
}

/* ==== PAYMENT METHOD FINAL FIX ==== */

.cb-order{
  display:flex;
  flex-direction:column;
}

.cb-payment{
  margin-top:20px;
  padding:16px;
  border:1px solid #ddd;
  border-radius:12px;
  background:#f9fafb;
}

.cb-payment-title{
  font-weight:700;
  margin-bottom:12px;
  font-size:16px;
}

/* hide default radio */
.cb-payment input[type=radio]{
  appearance:none;
  -webkit-appearance:none;
  width:18px;
  height:18px;
  border:2px solid var(--cl-button-bg);
  border-radius:50%;
  position:relative;
  cursor:pointer;
}

/* checked dot */
.cb-payment input[type=radio]:checked::after{
  content:'';
  width:10px;
  height:10px;
  background: var(--cl-button-bg);
  border-radius:50%;
  position:absolute;
  top:3px;
  left:3px;
}

.cb-payment label{
  display:flex;
  align-items:center;
  gap:10px;
  padding:10px 12px;
  border:1px solid #ccc;
  border-radius:8px;
  background:#fff;
  cursor:pointer;
  font-weight:600;
}

.cb-payment label:hover{
  background:#f1f5f9;
}

.cb-total{
  margin-bottom:10px;
}

#cb-submit{
  margin-top:15px;
}

/* ================= TEXT & TYPOGRAPHY CONTROL ================= */

.cb-header{
  font-size: var(--cl-heading-size);
  color: var(--cl-heading-color);
}

/* ===== TITLE SYSTEM (DIV BASED - THEME SAFE) ===== */

.cb-products-title{
    font-size: var(--cl-products-size);
    color: var(--cl-products-color);
    font-weight: 700;
    margin: 0 0 12px 0;
    line-height: 1.4;
}

.cb-order-title{
    font-size: var(--cl-order-size);
    color: var(--cl-order-color);
    font-weight: 700;
    margin: 0 0 12px 0;
    line-height: 1.4;
}


.cb-form label{
  font-size: var(--cl-label-size);
  color: var(--cl-label-color);
}

.cb-btn{
  font-size: var(--cl-btn-text-size);
  color: var(--cl-btn-text-color);
}

.cb-wrap .cb-products-title{
    font-size: var(--cl-products-size) !important;
    color: var(--cl-products-color) !important;
}

.cb-wrap .cb-order-title{
    font-size: var(--cl-order-size) !important;
    color: var(--cl-order-color) !important;
}

body .cb-wrap .cb-products-title{
    font-size: var(--cl-products-size) !important;
    color: var(--cl-products-color) !important;
    font-weight: 700 !important;
}

body .cb-wrap .cb-order-title{
    font-size: var(--cl-order-size) !important;
    color: var(--cl-order-color) !important;
    font-weight: 700 !important;
}

html body .cb-wrap .cb-products-title{
    font-size: var(--cl-products-size) !important;
    color: var(--cl-products-color) !important;
}

html body .cb-wrap .cb-order-title{
    font-size: var(--cl-order-size) !important;
    color: var(--cl-order-color) !important;
}

/* ===============================
   Inline Order Lock Box (MLN)
================================= */

.mln-order-locked{
    opacity:0.6;
    cursor:not-allowed !important;
}

.mln-inline-order-lock-box{
    margin-top:14px;
    padding:14px 16px;
    border-radius:12px;
    background: linear-gradient(135deg,#ff3d3d,#b30000);
    color:#fff;
    font-weight:600;
    box-shadow:0 10px 25px rgba(0,0,0,0.18);
    animation: mlnFadeIn 0.3s ease;
}

@keyframes mlnFadeIn{
    from{opacity:0;transform:translateY(-4px);}
    to{opacity:1;transform:translateY(0);}
}

@media(max-width:768px){
    .mln-inline-order-lock-box{
        font-size:14px;
        padding:12px;
    }
}



/* ===== Cart Lens Header Tabs ===== */

.nav-tab-wrapper{
    border-bottom:none !important;
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:20px;
}

.nav-tab{
    border:1px solid #dcdcdc !important;
    border-radius:8px !important;
    background:#ffffff !important;
    padding:10px 18px !important;
    margin:0 !important;
    font-weight:500;
    transition:0.2s ease;
}

.nav-tab:hover{
    background:#f5f5f5 !important;
}

.nav-tab-active{
    background:#2271b1 !important;
    color:#fff !important;
    border-color:#2271b1 !important;
}

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

@media (max-width: 782px){

    .nav-tab-wrapper{
        gap:8px;
    }

    .nav-tab{
        flex:1 1 auto;
        text-align:center;
        padding:8px 12px !important;
        font-size:13px;
    }

}
