.cart-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;border-bottom:1px solid #ead8ce;padding:12px 0}.cart-row strong{flex:1;min-width:170px}#checkout-form{max-width:620px;margin-top:22px}#checkout-form label{display:grid;gap:6px;font-weight:600}#checkout-form input,#checkout-form select{width:100%;border:1px solid #ddccc2;border-radius:10px;padding:12px;background:#fff}#cart-section[hidden],#delivery-address-field[hidden]{display:none!important}
/* Carrito visible en panel: no desplaza el catálogo al pie de página. */
body.cart-open{overflow:hidden}
#cart-section.cart-overlay{position:fixed;inset:0;z-index:100;max-width:none;padding:22px;display:flex;justify-content:center;align-items:center;background:rgba(40,22,17,.55);overflow:auto}
#cart-section .cart-panel{background:#fffaf5;color:#43291f;border:1px solid #ead8ce;box-shadow:0 24px 90px #27151040;border-radius:20px;padding:clamp(18px,3vw,30px);width:min(100%,720px);max-height:calc(100dvh - 44px);overflow-y:auto}
#cart-section .cart-head{display:flex;align-items:center;justify-content:space-between;gap:15px}
#cart-section .cart-head h2{margin:0 0 12px}
#cart-section #checkout-form{max-width:none}
.cart-toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:150;background:#59382e;color:white;border-radius:14px;padding:13px 19px;box-shadow:0 12px 35px #2510074d;font-size:14px;max-width:min(92vw,580px);text-align:center}
.cart-toast[hidden]{display:none}
.btn.added{background:#2d7151}
@media(max-width:650px){#cart-section.cart-overlay{padding:0;align-items:stretch}#cart-section .cart-panel{max-height:100dvh;height:100dvh;width:100%;border-radius:0}#cart-section .cart-head{position:sticky;top:-18px;background:#fffaf5;z-index:1;padding:10px 0}.cart-toast{bottom:12px;width:calc(100% - 24px)}}

/* Un pedido bloqueado debe verse bloqueado, no como acción primaria. */
#checkout-form button[type="submit"]:disabled{
  background:#b8aea7;
  color:#fff;
  box-shadow:none;
  cursor:not-allowed;
  opacity:1;
}
#checkout-form button[type="submit"]:disabled:hover{background:#b8aea7}
#delivery-policy.delivery-warning{
  color:#8c3340;
  background:#fff0ed;
  border:1px solid #e8b4ae;
  border-radius:10px;
  padding:12px;
  font-weight:650;
}

#delivery-commune-field[hidden]{display:none!important}
.checkout-totals{background:#fff5ed;border:1px solid #ecd6ca;border-radius:12px;padding:13px;display:grid;gap:8px}
.checkout-totals>div{display:flex;justify-content:space-between;gap:12px;font-size:14px}
.checkout-totals .checkout-grand-total{border-top:1px solid #e5c8b9;padding-top:10px;font-weight:800;font-size:17px}
