.qr-cart-header-link {
  margin-left: auto;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 38px;
  padding: 7px 10px;
  border: 1px solid rgba(16,32,56,.12);
  border-radius: 10px;
  color: var(--c-primary);
  background: rgba(255,255,255,.72);
  text-decoration: none;
  font-weight: 700;
  white-space: nowrap;
}
.qr-cart-header-link:hover { background: rgba(16,32,56,.05); }
.qr-cart-header-count {
  min-width: 20px;
  height: 20px;
  padding: 0 6px;
  display: inline-grid;
  place-items: center;
  border-radius: 999px;
  background: var(--c-primary);
  color: #fff;
  font-size: 11px;
  line-height: 1;
}
.qr-add-cart-btn {
  width: 100%;
  margin-top: 10px;
  border: 1px solid rgba(16,32,56,.14);
  background: #fff;
  color: var(--c-primary);
}
.qr-add-cart-btn.is-loading { opacity: .7; cursor: progress; }
.qr-view-cart-after-add {
  margin-top: 10px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--c-primary);
  font-weight: 700;
  text-decoration: none;
}
.qr-cart-page { padding: clamp(20px, 3vw, 34px); }
.qr-cart-head { display:flex; justify-content:space-between; gap:20px; align-items:flex-start; margin-bottom:24px; }
.qr-cart-head h1 { margin:.2rem 0 .45rem; }
.qr-cart-head p { margin:0; color:var(--c-muted); max-width:720px; }
.qr-cart-eyebrow,.qr-cart-summary-eyebrow { font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.12em; color:var(--c-muted); }
.qr-cart-clear { border:0; background:transparent; color:var(--c-muted); display:inline-flex; gap:7px; align-items:center; cursor:pointer; padding:8px; }
.qr-cart-empty { text-align:center; padding:44px 18px 34px; }
.qr-cart-empty-icon { width:64px; height:64px; display:grid; place-items:center; margin:0 auto 16px; border-radius:50%; background:rgba(16,32,56,.06); font-size:22px; }
.qr-cart-empty p { color:var(--c-muted); max-width:480px; margin:0 auto 22px; }
.qr-cart-layout { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(290px,.75fr); gap:24px; align-items:start; }
.qr-cart-items { display:grid; gap:14px; }
.qr-cart-item { display:grid; grid-template-columns:150px minmax(0,1fr); gap:16px; padding:14px; border:1px solid rgba(16,32,56,.1); border-radius:16px; background:#fff; }
.qr-cart-item.has-error { border-color:rgba(170,54,54,.3); }
.qr-cart-item-image { display:block; min-height:130px; border-radius:12px; overflow:hidden; background:rgba(16,32,56,.04); }
.qr-cart-item-image img { width:100%; height:100%; object-fit:cover; display:block; }
.qr-cart-item-copy { min-width:0; }
.qr-cart-item-topline { display:flex; gap:14px; justify-content:space-between; }
.qr-cart-item h2 { margin:0; font-size:20px; }
.qr-cart-item h2 a { color:var(--c-text); text-decoration:none; }
.qr-cart-item-meta,.qr-cart-pax { display:flex; flex-wrap:wrap; gap:12px; margin-top:8px; color:var(--c-muted); font-size:13px; }
.qr-cart-item-meta span { display:inline-flex; gap:6px; align-items:center; }
.qr-cart-item-price { text-align:right; white-space:nowrap; display:grid; gap:2px; }
.qr-cart-item-price del { color:var(--c-muted); font-size:13px; }
.qr-cart-item-price strong { font-size:18px; }
.qr-cart-item-errors { margin-top:10px; padding:9px 11px; border-radius:10px; background:rgba(170,54,54,.07); color:#8d2f2f; font-size:13px; }
.qr-cart-item-errors p { margin:0; }
.qr-cart-item-actions { margin-top:14px; display:flex; flex-wrap:wrap; gap:14px; align-items:center; }
.qr-cart-item-actions a,.qr-cart-item-actions button { border:0; background:transparent; color:var(--c-primary); padding:0; font:inherit; font-size:13px; font-weight:700; text-decoration:none; cursor:pointer; display:inline-flex; gap:6px; align-items:center; }
.qr-cart-continue-shopping { min-height:48px; display:flex; align-items:center; justify-content:center; gap:8px; border:1px dashed rgba(16,32,56,.2); border-radius:14px; color:var(--c-primary); text-decoration:none; font-weight:700; }
.qr-cart-summary { position:sticky; top:16px; padding:20px; border:1px solid rgba(16,32,56,.1); border-radius:18px; background:rgba(255,255,255,.95); box-shadow:0 12px 34px rgba(16,32,56,.07); }
.qr-cart-summary h2 { margin:.25rem 0 1rem; font-size:22px; }
.qr-cart-warning,.qr-cart-promo-applied,.qr-cart-promo-pending { display:flex; gap:10px; align-items:flex-start; padding:12px; border-radius:12px; margin-bottom:14px; }
.qr-cart-warning { background:rgba(188,119,27,.09); }
.qr-cart-promo-applied { background:rgba(43,123,84,.09); }
.qr-cart-promo-pending { background:rgba(16,32,56,.06); }
.qr-cart-promo-applied p,.qr-cart-promo-pending p { margin:3px 0 0; color:var(--c-muted); font-size:13px; }
.qr-cart-summary-lines { display:grid; gap:10px; padding-top:6px; }
.qr-cart-summary-lines > div { display:flex; justify-content:space-between; gap:16px; }
.qr-cart-summary-lines .is-discount strong { color:#28734f; }
.qr-cart-summary-lines .is-total { margin-top:4px; padding-top:13px; border-top:1px solid rgba(16,32,56,.1); font-size:18px; }
.qr-cart-phase-note { margin-top:16px; display:flex; gap:8px; align-items:flex-start; color:var(--c-muted); font-size:12px; line-height:1.45; }
@media (max-width: 760px) {
  .qr-cart-header-text { display:none; }
  .qr-cart-header-link { margin-left:auto; padding:7px 9px; }
  .qr-cart-layout { grid-template-columns:1fr; }
  .qr-cart-summary { position:static; }
  .qr-cart-item { grid-template-columns:96px minmax(0,1fr); padding:11px; gap:12px; }
  .qr-cart-item-image { min-height:96px; }
  .qr-cart-item h2 { font-size:17px; }
  .qr-cart-item-topline { gap:8px; }
  .qr-cart-item-price strong { font-size:16px; }
  .qr-cart-head { align-items:center; }
  .qr-cart-clear span { display:none; }
}

/* Phase 4 multi-cart checkout / review */
.qr-cart-checkout-lines{display:grid;gap:18px}.qr-cart-checkout-line{border:1px solid var(--qr-border,#e7e2d8);border-radius:20px;padding:20px;background:rgba(255,255,255,.72)}.qr-cart-checkout-line-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:14px}.qr-cart-checkout-line-head>div{display:flex;gap:12px;align-items:flex-start}.qr-cart-checkout-line-head h3{margin:0 0 5px;font-size:1.18rem}.qr-cart-checkout-line-head p{margin:0;opacity:.72}.qr-cart-checkout-line-number{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:rgba(0,0,0,.055);font-size:.76rem;font-weight:600}.qr-cart-lead-only-note{display:flex;gap:8px;align-items:center;padding:12px 14px;border-radius:14px;background:rgba(0,0,0,.035)}.qr-cart-review-lines{display:grid;gap:10px}.qr-cart-review-line{display:flex;justify-content:space-between;gap:18px;padding:14px 0;border-bottom:1px solid rgba(0,0,0,.08)}.qr-cart-review-line:last-child{border-bottom:0}.qr-cart-review-line>div{display:grid;gap:4px}.qr-cart-review-line span{font-size:.88rem;opacity:.7}.qr-cart-checkout-cta{width:100%;margin-top:14px}.qr-confirmation-multi-references{display:grid;gap:8px;margin-top:10px}.qr-confirmation-multi-reference{display:flex;justify-content:space-between;gap:14px;padding:9px 0;border-top:1px solid rgba(0,0,0,.08)}.qr-confirmation-multi-reference:first-child{border-top:0}.qr-confirmation-multi-reference span{font-size:.85rem;opacity:.72}.qr-confirmation-multi-lines{display:grid;gap:10px}.qr-confirmation-multi-line{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 14px;padding:12px 0;border-bottom:1px solid rgba(0,0,0,.08)}.qr-confirmation-multi-line:last-child{border-bottom:0}.qr-confirmation-multi-line small{opacity:.7}.qr-confirmation-multi-line .qr-confirmation-status-pill{grid-column:2;grid-row:1/3;align-self:center}
@media(max-width:720px){.qr-cart-checkout-line{padding:15px}.qr-cart-checkout-line-head{align-items:flex-start}.qr-cart-review-line{align-items:flex-start}.qr-confirmation-multi-line{grid-template-columns:1fr}.qr-confirmation-multi-line .qr-confirmation-status-pill{grid-column:1;grid-row:auto;justify-self:start}}
