.checkout-result { position:fixed; z-index:1000; inset:16px 16px auto; max-width:650px; margin:auto; padding:24px; background:#f7f3ec; color:#3b342e; box-shadow:0 6px 30px #0002; border:1px solid #d6cec3; text-align:center; }
.checkout-result p { margin-bottom:12px; }
#checkout-error { color:#8c352d; }
.button:disabled { opacity:.65; cursor:wait; }
.announcement-rotating { position:relative; padding-inline:34px; }
.announcement-message { display:inline-block; animation:announcement-fade .35s ease-out; }
.announcement-pause { position:absolute; right:12px; top:50%; transform:translateY(-50%); border:0; background:transparent; color:inherit; cursor:pointer; font-size:11px; padding:6px; line-height:1; }
.announcement-pause:focus-visible { outline:1px solid currentColor; outline-offset:1px; }
@keyframes announcement-fade { from { opacity:0; } to { opacity:1; } }
@media (prefers-reduced-motion:reduce) { .announcement-message { animation:none; } }

/* Let the whole bag scroll naturally; never clip products in a nested panel. */
.cart-sheet[data-slot="sheet-content"] {
  display:block;
  overflow-y:auto;
  overscroll-behavior:contain;
}
.cart-sheet .cart-items {
  flex:none;
  max-height:none;
  margin-top:24px;
  padding-right:0;
  overflow:visible;
}
.cart-sheet .cart-item {
  grid-template-columns:92px minmax(0,1fr);
  gap:18px;
  padding:22px 0;
}
.cart-sheet .cart-item > img {
  width:100%;
  height:128px;
  object-fit:contain;
}
.cart-sheet .cart-item h3 { font-size:1.25rem; line-height:1.25; }
.cart-sheet .cart-item p { line-height:1.65; overflow-wrap:anywhere; }
.cart-sheet .cart-item-bottom { flex-wrap:wrap; row-gap:12px; }
.cart-sheet .cart-bottom { margin-top:0; padding-top:22px; }

.checkout-dialog .review-item {
  display:grid;
  grid-template-columns:76px minmax(0,1fr) auto;
  align-items:start;
  gap:18px;
  padding:20px 0;
}
.checkout-dialog .review-item > img {
  width:76px;
  height:100px;
  background:#eee8df;
  object-fit:contain;
}
.checkout-dialog .review-item h3 { line-height:1.35; }
.checkout-dialog .review-item p { overflow-wrap:anywhere; line-height:1.65; }
.checkout-dialog .review-item > .price { white-space:nowrap; }
@media (max-width:480px) {
  .checkout-dialog .review-item { grid-template-columns:56px minmax(0,1fr) auto; gap:12px; }
  .checkout-dialog .review-item > img { width:56px; height:76px; }
}
