.cart-hero{
padding:100px 0;
text-align:center;
background:#050505;
border-bottom:1px solid rgba(255,255,255,.08);
}

.cart-hero h1{
font-size:60px;
color:#ffffff;
margin-bottom:15px;
}

.cart-hero p{
color:#bbb;
}

.cart-section{
padding:80px 0;
background:#000;
}

.cart-layout{
display:grid;
grid-template-columns:minmax(0,1fr) 360px;
gap:28px;
align-items:start;
}

.cart-panel,
.cart-summary{
background:#0f0f0f;
border:1px solid rgba(255,255,255,.08);
border-radius:8px;
}

.cart-panel{
padding:24px;
}

.cart-panel-head{
display:flex;
align-items:center;
justify-content:space-between;
gap:18px;
margin-bottom:20px;
}

.cart-panel-head h2,
.cart-summary h2{
font-size:24px;
}

.checkout-form{
display:grid;
gap:8px;
margin-top:18px;
margin-bottom:18px;
}

.checkout-form input,
.checkout-form select,
.checkout-form textarea{
  box-sizing:border-box;
  width:100%;
  max-width:100%;
}

.checkout-form label{
color:#ddd;
font-size:13px;
font-weight:700;
}

.checkout-form input,
.checkout-form textarea{
width:100%;
border:1px solid rgba(255,255,255,.12);
border-radius:6px;
background:#070707;
color:#fff;
padding:12px;
outline:none;
}

.checkout-form input:focus,
.checkout-form textarea:focus{
border-color:#ffffff;
box-shadow:0 0 0 3px rgba(255,255,255,.12);
}

.clear-cart-btn{
border:1px solid rgba(255,255,255,.35);
background:rgba(255,255,255,.08);
color:#ffffff;
padding:10px 14px;
border-radius:6px;
font-weight:700;
cursor:pointer;
}

.cart-item{
display:grid;
grid-template-columns:110px minmax(0,1fr) 128px 140px 46px;
gap:18px;
align-items:center;
padding:18px;
background:#111;
border:1px solid rgba(255,255,255,.08);
border-radius:8px;
margin-bottom:14px;
}

.cart-item img{
width:110px;
height:120px;
object-fit:cover;
border-radius:6px;
background:#050505;
}

.cart-sku{
display:block;
color:#ffffff;
font-size:11px;
font-weight:800;
letter-spacing:1.4px;
margin-bottom:7px;
}

.cart-item-info h3{
font-size:18px;
margin-bottom:6px;
}

.cart-item-info p{
color:#aaa;
font-size:13px;
margin-bottom:8px;
}

.cart-item-info strong,
.item-total strong{
color:#ffffff;
}

.quantity-control{
display:flex;
align-items:center;
justify-content:center;
border:1px solid rgba(255,255,255,.12);
border-radius:6px;
overflow:hidden;
}

.quantity-control button{
width:38px;
height:38px;
border:0;
background:#191919;
color:#fff;
font-size:18px;
cursor:pointer;
}

.quantity-control span{
width:48px;
text-align:center;
font-weight:700;
}

.item-total span{
display:block;
color:#999;
font-size:12px;
margin-bottom:5px;
}

.remove-btn{
width:42px;
height:42px;
border:1px solid rgba(255,60,60,.35);
border-radius:6px;
background:rgba(255,60,60,.08);
color:#ff4d4d;
cursor:pointer;
}

.cart-summary{
padding:24px;
position:sticky;
top:100px;
}

.summary-row,
.summary-total{
display:flex;
align-items:center;
justify-content:space-between;
gap:15px;
padding:16px 0;
border-bottom:1px solid rgba(255,255,255,.08);
}

.summary-row span{
color:#aaa;
}

.summary-row strong{
text-align:right;
font-size:14px;
}

.summary-total{
border-bottom:0;
margin-top:8px;
}

.summary-total span,
.summary-total strong{
font-size:24px;
font-weight:800;
}

.summary-total strong{
color:#ffffff;
}

.checkout-btn{
width:100%;
display:flex;
align-items:center;
justify-content:center;
gap:10px;
padding:15px 20px;
margin-top:18px;
background:#ffffff;
border:none;
border-radius:6px;
color:#111;
font-weight:800;
cursor:pointer;
}

.checkout-btn:hover{
background:#e0e0e0;
}

.continue-shopping{
display:block;
text-align:center;
margin-top:16px;
color:#bbb;
font-weight:600;
}

.continue-shopping:hover{
color:#ffffff;
}

.empty-cart{
text-align:center;
padding:60px 20px;
color:#999;
background:#111;
border:1px dashed rgba(255,255,255,.28);
border-radius:8px;
}

.empty-cart i{
font-size:42px;
color:#ffffff;
margin-bottom:18px;
}

.empty-cart h3{
color:#fff;
font-size:24px;
margin-bottom:10px;
}

.empty-cart p{
margin-bottom:22px;
}

.empty-cart a{
display:inline-flex;
padding:12px 20px;
background:#ffffff;
color:#111;
border-radius:6px;
font-weight:800;
}

/* ===============================
   FLIPKART-STYLE ADDRESS CARDS
   =============================== */
#savedAddressList{display:flex;flex-direction:column;gap:10px;margin-bottom:14px;}
.addr-card{
  display:flex;align-items:flex-start;gap:12px;padding:14px;
  background:#0b0b0b;border:1.5px solid #222;border-radius:10px;
  cursor:pointer;transition:all .2s;position:relative;
}
.addr-card:hover{border-color:#444;}
.addr-card.addr-selected{border-color:#ffffff;background:#0f0a05;}
.addr-radio{width:20px;height:20px;min-width:20px;border-radius:50%;border:2px solid #555;display:flex;align-items:center;justify-content:center;margin-top:2px;transition:all .2s;}
.addr-selected .addr-radio{border-color:#ffffff;}
.addr-radio-dot{width:10px;height:10px;border-radius:50%;background:transparent;transition:all .2s;}
.addr-radio-dot.active{background:#ffffff;}
.addr-info{flex:1;min-width:0;}
.addr-label{display:flex;align-items:center;gap:8px;margin-bottom:4px;}
.addr-badge{font-size:10px;font-weight:700;color:#ffffff;text-transform:uppercase;letter-spacing:.5px;}
.addr-default-badge{font-size:9px;padding:1px 6px;border-radius:3px;background:#ffffff;color:#000;font-weight:700;}
.addr-detail{font-size:13px;color:#ccc;line-height:1.5;word-break:break-word;}
.addr-detail strong{color:#fff;font-size:14px;font-weight:500;}
.addr-del-btn{
  width:30px;height:30px;min-width:30px;border:none;border-radius:6px;
  background:rgba(255,60,60,.1);color:#ff4d4d;cursor:pointer;
  display:flex;align-items:center;justify-content:center;font-size:13px;
  opacity:0;transition:opacity .2s;
}
.addr-card:hover .addr-del-btn{opacity:1;}

@media(max-width:991px){
.cart-layout{
grid-template-columns:1fr;
}

.cart-summary{
position:static;
}

.cart-item{
grid-template-columns:90px minmax(0,1fr);
}

.quantity-control,
.item-total,
.remove-btn{
grid-column:2;
justify-self:start;
}
}

@media(max-width:560px){
.cart-hero h1{
font-size:42px;
}

.cart-panel{
padding:16px;
}

.cart-panel-head{
align-items:flex-start;
flex-direction:column;
}

.cart-item{
grid-template-columns:1fr;
text-align:center;
}

.cart-item img{
width:100%;
height:auto;
max-height:320px;
}

.quantity-control,
.item-total,
.remove-btn{
grid-column:auto;
justify-self:center;
}
}
