/* Cart presentation, isolated from payment controls and the global design. */
.k1-cart-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:28px; }
.k1-cart-heading .section-title { margin:0; }
.k1-cart-clear { display:inline-flex; align-items:center; gap:7px; border:1px solid #dbe6ef; background:#fff9; color:#63778b; border-radius:11px; padding:8px 11px; font:inherit; font-size:12px; line-height:1.4; white-space:nowrap; cursor:pointer; transform:translateY(3px); }
.k1-cart-clear:hover { border-color:#c78686; color:#a64040; background:#fff7f7; }
.k1-cart-clear[hidden] { display:none; }
.k1-cart-clear-confirm { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; margin:-8px 0 22px; padding:14px 16px; border:1px solid #e6dcd4; border-radius:14px; background:#fff9f4; color:#5b4b41; font-size:13px; }
.k1-cart-clear-confirm[hidden] { display:none; }
.k1-cart-clear-confirm > div { display:flex; flex-wrap:wrap; gap:8px; }
.k1-cart-clear-confirm button { padding:8px 11px; border:1px solid #dfd8d2; border-radius:9px; background:#fff; font:inherit; color:#645749; cursor:pointer; }
.k1-cart-clear-confirm #cartPageClearYes { border-color:#f0cccc; color:#a34545; background:#fff4f3; }
.k1-cart-clear svg { width:17px; height:17px; flex:none; }
.k1-cart-clear:focus-visible,.k1-cart-confirmation button:focus-visible,.k1-cart-confirm-link:focus-visible { outline:2px solid #0078d4; outline-offset:3px; }
.cart-item-promo-suggest { display:block; }
.k1-promo-heading { display:block; font-weight:600; color:#415f75; margin-bottom:10px; }
.k1-promo-options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.k1-promo-options .cart-promo-add { display:flex; flex-direction:column; align-items:flex-start; gap:4px; padding:10px 12px; border:1px solid #d2e5f3; background:#fff; color:#264a67; border-radius:11px; text-align:left; white-space:normal; font:inherit; line-height:1.4; cursor:pointer; min-width:0; }
.k1-promo-options .cart-promo-add:hover { border-color:#68a9d9; background:#f1f8ff; }
.k1-promo-options .cart-promo-add:disabled { opacity:.55; cursor:wait; }
.k1-promo-action { color:#0073ba; font-size:11px; font-weight:600; }
#cartPanel.k1-cart-confirmation { width:390px; max-width:calc(100vw - 24px); padding:18px; border-radius:21px; max-height:calc(100dvh - 112px); overflow:auto; overscroll-behavior:contain; box-sizing:border-box; background:#fffffffa; }
.k1-cart-confirm-head { display:flex; align-items:center; justify-content:space-between; gap:12px; color:#37816f; font-weight:600; font-size:13px; margin-bottom:14px; }
.k1-cart-confirmation .cart-panel-close { width:30px; height:30px; }
.k1-cart-confirm-products { display:grid; gap:10px; }
.k1-cart-confirm-product { display:flex; gap:12px; align-items:center; min-width:0; }
.k1-cart-confirm-product img { display:block; width:76px; height:48px; border-radius:9px; object-fit:cover; flex:none; }
.k1-cart-confirm-product strong { display:block; color:#203a50; font-size:14px; line-height:1.45; overflow-wrap:anywhere; }
.k1-cart-confirm-product span { display:block; color:#7a8b9a; font-size:12px; margin-top:3px; }
.k1-cart-confirm-offers .cart-item-promo-note { margin:14px 0 0; padding:12px; border-radius:12px; background:#f1f7fb; font-size:12px; line-height:1.45; }
.k1-cart-confirm-offers .cart-item-promo-applied { color:#37816f; background:#edf8f3; }
.k1-cart-confirm-offers .k1-promo-options { grid-template-columns:1fr; }
.k1-cart-confirm-offers .cart-promo-add { flex-direction:row; justify-content:space-between; align-items:center; gap:12px; }
.k1-cart-confirm-offers .k1-promo-action { flex-shrink:0; font-size:10px; }
.k1-cart-confirm-link { margin-top:16px; padding-top:14px; border-top:1px solid #e5edf3; display:flex; align-items:center; justify-content:space-between; gap:12px; color:#0874be; font-size:14px; font-weight:650; text-decoration:none; }
@media(max-width:640px) {
  .k1-cart-heading { align-items:center; flex-wrap:wrap; gap:14px; margin-bottom:22px; }
  .k1-cart-clear { padding:8px 10px; font-size:12px; transform:translateY(2px); }
  .k1-promo-options { grid-template-columns:1fr; }
  #cartPanel.k1-cart-confirmation { left:auto; right:12px; padding:16px; }
  .k1-cart-confirm-product img { width:68px; height:43px; }
  .k1-cart-confirm-offers .cart-promo-add { flex-direction:column; align-items:flex-start; gap:3px; }
}
