/* ========================================
   Cart Page
   Enterprise cart-specific layer
======================================== */
.ec-cart-shell{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px;align-items:start}
.ec-cart-card,.ec-summary-card{background:#f8f6f2;border:1px solid #ddd5cd;border-radius:5px}
.ec-cart-card{padding:14px}
.ec-cart-list{display:flex;flex-direction:column;gap:0}
.ec-cart-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;padding:18px 14px;border-radius:5px;background:transparent}
.ec-cart-item + .ec-cart-item{border-top:1px solid #e5ddd5}
.ec-cart-main{display:grid;grid-template-columns:120px minmax(0,1fr);gap:18px;align-items:start;min-width:0}
.ec-cart-thumb{width:120px;height:120px;flex:0 0 120px;border-radius:5px;border:1px solid #ede6de;background:#fff;display:grid;place-items:center;overflow:hidden;align-self:start}
.ec-cart-thumb img{width:100%;height:100%;object-fit:contain;display:block}
.ec-cart-info{min-width:0;padding-top:2px}
.ec-cart-name{display:block;font-size:clamp(18px,1.5vw,28px);font-weight:800;line-height:1.12;letter-spacing:-.02em;color:#111827;text-transform:uppercase;word-break:break-word;overflow-wrap:anywhere;max-width:100%}
.ec-cart-submeta{display:flex;flex-direction:column;gap:4px;margin-top:8px;font-size:13px;line-height:1.4;color:#6b7280}
.ec-cart-submeta span strong{font-weight:600;color:#4b5563}
.ec-cart-price{margin-top:12px;font-size:18px;font-weight:800;color:#111827}
.ec-cart-actions{display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between;align-self:stretch;gap:20px;min-width:102px}
.ec-remove-btn{width:28px;height:28px;border:0;background:transparent;color:#ff3b30;border-radius:5px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;flex:0 0 auto}
.ec-remove-btn svg{width:18px;height:18px;display:block}
.ec-remove-btn:hover{background:rgba(255,59,48,.08)}
.ec-qty-stepper{display:inline-flex;align-items:center;gap:14px;height:38px;padding:0 12px;background:#fff;border:1px solid #efe8e0;border-radius:5px;box-shadow:0 1px 0 rgba(17,24,39,.02);flex:0 0 auto}
.ec-step-btn{width:18px;height:18px;border:0;background:transparent;color:#111827;font-size:24px;line-height:1;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0}
.ec-step-btn:hover{color:#000}
.ec-step-value{min-width:12px;text-align:center;font-size:14px;font-weight:700;color:#111827}
.ec-summary-card{padding:18px;background:#f8f6f2;position:sticky;top:18px}
.ec-summary-title{margin:0 0 18px;font-size:18px;font-weight:800;color:#111827}
.ec-summary-row{display:flex;justify-content:space-between;gap:12px;font-size:14px;line-height:1.5}
.ec-summary-row + .ec-summary-row{margin-top:10px}
.ec-summary-row.total{font-size:16px;font-weight:800}
.ec-summary-row.discount{color:#ef4444}
.ec-summary-row.discount strong{color:#ef4444}
.ec-summary-divider{height:1px;background:#e5ddd5;margin:12px 0}
.ec-promo{display:grid;grid-template-columns:minmax(0,1fr) 92px;gap:10px;margin:16px 0 14px}
.ec-promo-field{position:relative}
.ec-promo-field svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;color:#b7aea4}
.ec-promo input{width:100%;height:40px;border:1px solid #efe8e0;border-radius:5px;background:#fff;padding:0 14px 0 36px;color:#111827}
.ec-promo input::placeholder{color:#b8aea4}
.ec-promo button{height:40px;border-radius:5px;border:0;background:#000;color:#fff;font-weight:700;cursor:pointer}
.ec-checkout-btn{width:100%;height:52px;border-radius:5px;background:#000;color:#fff;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:800}
.ec-checkout-btn svg{width:18px;height:18px}
.ec-cart-fallback{display:none}
.ec-cart-top{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:16px}
.ec-cart-top .ec-helper{color:#7c746a;font-size:14px}

@media (max-width: 1100px){
  .ec-cart-shell{grid-template-columns:minmax(0,1fr) 300px}
  .ec-cart-main{grid-template-columns:104px minmax(0,1fr);gap:16px}
  .ec-cart-thumb{width:104px;height:104px;flex-basis:104px}
  .ec-cart-name{font-size:22px}
}

@media (max-width: 980px){
  .ec-cart-shell{grid-template-columns:1fr}
  .ec-summary-card{position:static}
}

@media (max-width: 720px){
  .ec-cart-card{padding:10px}
  .ec-cart-item{grid-template-columns:1fr;gap:14px;padding:16px 12px}
  .ec-cart-main{grid-template-columns:92px minmax(0,1fr);gap:14px}
  .ec-cart-thumb{width:92px;height:92px;flex-basis:92px}
  .ec-cart-name{font-size:16px;line-height:1.2}
  .ec-cart-submeta{margin-top:6px;font-size:12px}
  .ec-cart-price{margin-top:10px;font-size:16px}
  .ec-cart-actions{flex-direction:row;align-items:center;justify-content:space-between;gap:12px;min-width:0;width:100%;padding-left:106px}
  .ec-cart-top{flex-direction:column;align-items:flex-start}
  .ec-promo{grid-template-columns:1fr}
}

@media (max-width: 520px){
  .ec-cart-shell{gap:14px}
  .ec-cart-item{padding:14px 10px}
  .ec-cart-main{grid-template-columns:84px minmax(0,1fr);gap:12px}
  .ec-cart-thumb{width:84px;height:84px;flex-basis:84px}
  .ec-cart-actions{padding-left:0}
  .ec-remove-btn{order:2;margin-left:auto}
  .ec-qty-stepper{order:1}
  .ec-summary-card{padding:16px}
  .ec-cart-card,.ec-summary-card,.ec-cart-item,.ec-cart-thumb,.ec-remove-btn,.ec-qty-stepper,.ec-promo input,.ec-promo button,.ec-checkout-btn{border-radius:5px}
}

/* Cart Page Enhancements */
.ec-cart-title {
    font-size: 30px;
    font-weight: 500;
}

.ec-cart-name {
    font-size: 18px;
    font-weight: 500;
}

.ec-btn {
    border-radius: 5px !important;
}

/* Ensure images don't break layout */
.ec-cart-thumb {
    width: 120px;
    height: 120px;
    object-fit: cover;
}

.ec-cart-item {
    display: flex;
    align-items: center;
    gap: 15px;
}

.ec-cart-details {
    flex: 1;
    min-width: 0;
}
.ec-title h1 {
 
    font-size: 40px !important;
    font-weight: 400 !important;
}
