/* Overlay */
.cart-modal-overlay{
  position: fixed; inset: 0; background: rgba(0,0,0,.45);
  display: grid; place-items: center; z-index: 9999;
}

/* Caixa */
.cart-modal{
  width: min(640px, 92vw);
  background:#fff; border-radius: 16px; padding: 18px;
  box-shadow: 0 12px 32px rgba(0,0,0,.18);
  animation: pop .18s ease-out;
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
}
@keyframes pop{ from{ transform: translateY(4px) scale(.98); opacity:.8 } to{ transform:none; opacity:1 } }

.cart-modal .close{
  position:absolute; margin:-8px 0 0 -8px; right:18px; top:18px;
  width:32px; height:32px; border-radius:999px; border:1px solid #eee; background:#fff; cursor:pointer;
}

.cart-modal .row{ display:flex; gap:14px; align-items:center; }
.cart-modal img{ width:84px; height:84px; object-fit:cover; border-radius:12px; border:1px solid #eee; }
.cart-modal h3{ margin:0 0 6px; font-size:18px; }
.cart-modal .name{ color:#444; margin:0 0 4px; font-weight:600 }
.cart-modal .price{ color:#16a34a; font-weight:800 }

.cart-modal .actions{ margin-top:14px; display:flex; gap:10px; justify-content:flex-end }
.cart-modal .btn{ padding:10px 14px; border-radius:12px; border:1px solid #ddd; cursor:pointer; font-weight:700 }
.cart-modal .btn.primary{ background:#5b21b6; color:#fff; border-color:#5b21b6 }
.cart-modal .btn.outline{ background:#fff; color:#5b21b6; border-color:#ddd }
