/* Bridartis V4.9.51 — isolated ps_shoppingcart modal (układ makiety, skala 0.82) */
#blockcart-modal.bc49-cart-modal {
  --bc49-panel: #f8f6f1;
  --bc49-card: #ffffff;
  --bc49-line: #ebe7dd;
  --bc49-line-soft: #e8e4d8;
  --bc49-band: #f1efe7;
  --bc49-ink: #2f3327;
  --bc49-text: #3d4234;
  --bc49-accent: #636d3e;
  --bc49-gold: #b39868;
  --bc49-gold-soft: #dcc8a2;
  --bc49-icon: #b0a992;
  --bc49-btn: #5c6043;
  --bc49-btn-hover: #4f5439;
  --bc49-btn-line: #ccc8bb;
  --bc49-btn-text: #454a34;
  --bc49-sum-pad: 28px;
  padding: 0 !important;
  background: transparent !important;
  overflow-y: auto !important;
}

/* przygaszone tło strony pod okienkiem */
#blockcart-modal.bc49-cart-modal::before {
  content: '' !important;
  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  z-index: 0 !important;
  background: rgba(22, 20, 15, .42) !important;
  pointer-events: none !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__dialog {
  position: relative !important;
  z-index: 1 !important;
  width: 1040px !important;
  max-width: calc(100vw - 48px) !important;
  min-height: calc(100vh - 48px) !important;
  margin: 24px auto !important;
  display: flex !important;
  align-items: center !important;
  transform: none !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__shell {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__panel {
  position: relative !important;
  width: 100% !important;
  box-sizing: border-box !important;
  padding: 33px 38px 34px !important;
  border: 1px solid #ede9e0 !important;
  border-radius: 18px !important;
  background: var(--bc49-panel) !important;
  box-shadow: 0 28px 64px rgba(28, 25, 18, .22) !important;
  color: var(--bc49-text) !important;
  overflow: hidden !important;
}

/* żadnych dekoracyjnych kół w narożnikach */
#blockcart-modal.bc49-cart-modal .bc49-cart-modal__panel::before,
#blockcart-modal.bc49-cart-modal .bc49-cart-modal__panel::after {
  content: none !important;
  display: none !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__close {
  position: absolute !important;
  z-index: 5 !important;
  top: 24px !important;
  right: 24px !important;
  width: 38px !important;
  height: 38px !important;
  margin: 0 !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: transparent !important;
  color: #575d3e !important;
  opacity: 1 !important;
  box-shadow: none !important;
  text-shadow: none !important;
  transition: color .18s ease, background-color .18s ease !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__close:hover,
#blockcart-modal.bc49-cart-modal .bc49-cart-modal__close:focus {
  background: #f1efe6 !important;
  color: var(--bc49-ink) !important;
  opacity: 1 !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__close svg {
  width: 28px !important;
  height: 28px !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 1.6 !important;
  stroke-linecap: round !important;
}

/* ---------- nagłówek ---------- */
#blockcart-modal.bc49-cart-modal .bc49-cart-modal__header {
  position: relative !important;
  z-index: 2 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 22px !important;
  min-height: 86px !important;
  margin: 0 0 28px !important;
  padding: 0 44px 0 0 !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__success {
  width: 68px !important;
  height: 68px !important;
  flex: 0 0 68px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid #ece8de !important;
  border-radius: 50% !important;
  background: #f9f7f2 !important;
  color: #4a5136 !important;
  box-shadow: none !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__success svg {
  width: 43px !important;
  height: 43px !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 2.2 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__header-copy {
  text-align: center !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__header h1 {
  margin: 0 !important;
  padding: 0 !important;
  font-family: "Cormorant Garamond", Georgia, "Times New Roman", serif !important;
  font-size: 43px !important;
  line-height: 1.05 !important;
  font-weight: 500 !important;
  letter-spacing: normal !important;
  color: var(--bc49-ink) !important;
  text-transform: none !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__ornament {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 13px !important;
  margin-top: 10px !important;
  color: var(--bc49-gold) !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__ornament span {
  display: block !important;
  width: 72px !important;
  height: 1px !important;
  background: var(--bc49-gold-soft) !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__ornament svg {
  width: 18px !important;
  height: 18px !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 1.5 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

/* ---------- korpus ---------- */
#blockcart-modal.bc49-cart-modal .bc49-cart-modal__body {
  position: relative !important;
  z-index: 2 !important;
  width: 100% !important;
  display: grid !important;
  grid-template-columns: 516px 1px 401px !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 0 !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__product {
  display: grid !important;
  grid-template-columns: 240px 240px !important;
  column-gap: 36px !important;
  align-items: center !important;
  min-width: 0 !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__photo {
  width: 240px !important;
  height: 282px !important;
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 15px !important;
  border: 1px solid var(--bc49-line) !important;
  border-radius: 15px !important;
  background: var(--bc49-card) !important;
  box-shadow: none !important;
  overflow: hidden !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__photo img {
  display: block !important;
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  margin: 0 auto !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__product-copy {
  min-width: 0 !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__product-copy h2 {
  margin: 0 0 21px !important;
  padding: 0 0 21px !important;
  border-bottom: 1px solid var(--bc49-line-soft) !important;
  font-family: "Cormorant Garamond", Georgia, "Times New Roman", serif !important;
  font-size: 30px !important;
  line-height: 1.3 !important;
  font-weight: 500 !important;
  letter-spacing: normal !important;
  color: var(--bc49-ink) !important;
  text-transform: none !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
  hyphens: none !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__facts {
  display: grid !important;
  gap: 24px !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__fact {
  display: flex !important;
  align-items: center !important;
  gap: 0 !important;
  min-height: 26px !important;
  font-family: "Manrope", Arial, sans-serif !important;
  font-size: 17px !important;
  line-height: 1.3 !important;
  font-weight: 500 !important;
  color: var(--bc49-text) !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__fact strong {
  margin: 0 !important;
  font-size: 19px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  color: var(--bc49-ink) !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__fact-label {
  margin-right: 7px !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__fact-icon {
  width: 25px !important;
  height: 25px !important;
  flex: 0 0 25px !important;
  margin-right: 15px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--bc49-icon) !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__fact-icon svg {
  width: 25px !important;
  height: 25px !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 1.5 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__sr {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__separator {
  width: 1px !important;
  height: 272px !important;
  background: var(--bc49-line-soft) !important;
}

/* ---------- podsumowanie ---------- */
#blockcart-modal.bc49-cart-modal .bc49-cart-modal__summary {
  width: 401px !important;
  min-height: 272px !important;
  box-sizing: border-box !important;
  display: flex !important;
  flex-direction: column !important;
  padding: 33px var(--bc49-sum-pad) 0 !important;
  border: 1px solid var(--bc49-line) !important;
  border-radius: 15px !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: hidden !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__count {
  margin: 0 !important;
  padding: 0 !important;
  font-family: "Manrope", Arial, sans-serif !important;
  font-size: 15px !important;
  line-height: 1.5 !important;
  font-weight: 500 !important;
  color: var(--bc49-text) !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__count strong {
  font-size: 17px !important;
  line-height: 1 !important;
  font-weight: 600 !important;
  color: var(--bc49-accent) !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__summary-line {
  height: 1px !important;
  margin: 26px 0 23px !important;
  background: var(--bc49-line) !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__summary dl {
  margin: 0 !important;
  padding: 0 !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__summary dl > div {
  display: flex !important;
  align-items: baseline !important;
  justify-content: space-between !important;
  gap: 14px !important;
  padding: 12px 0 !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__summary dt,
#blockcart-modal.bc49-cart-modal .bc49-cart-modal__summary dd {
  margin: 0 !important;
  padding: 0 !important;
  font-family: "Manrope", Arial, sans-serif !important;
  font-size: 16px !important;
  line-height: 1.4 !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__summary dt {
  font-weight: 500 !important;
  color: var(--bc49-text) !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__summary dd {
  font-weight: 600 !important;
  color: var(--bc49-ink) !important;
  text-align: right !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__summary dd.bc49-cart-modal__free {
  color: var(--bc49-accent) !important;
}

/* pasek RAZEM — pełna szerokość karty, zaokrąglony tylko na dole */
#blockcart-modal.bc49-cart-modal .bc49-cart-modal__total {
  margin: auto calc(var(--bc49-sum-pad) * -1) 0 !important;
  min-height: 74px !important;
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  padding: 16px var(--bc49-sum-pad) !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: var(--bc49-band) !important;
  color: #383d2e !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__total span {
  white-space: nowrap !important;
  font-family: "Manrope", Arial, sans-serif !important;
  font-size: 16px !important;
  line-height: 1.2 !important;
  font-weight: 600 !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__total strong {
  white-space: nowrap !important;
  font-family: "Manrope", Arial, sans-serif !important;
  font-size: 21px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  color: var(--bc49-accent) !important;
}

/* ---------- stopka ---------- */
#blockcart-modal.bc49-cart-modal .bc49-cart-modal__footer {
  position: relative !important;
  z-index: 2 !important;
  display: grid !important;
  grid-template-columns: 351px 458px !important;
  justify-content: center !important;
  gap: 27px !important;
  margin: 34px 0 0 !important;
  padding: 24px 0 0 !important;
  border-top: 1px solid var(--bc49-line) !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__button {
  min-height: 64px !important;
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 16px !important;
  margin: 0 !important;
  padding: 12px 18px !important;
  border-radius: 10px !important;
  font-family: "Manrope", Arial, sans-serif !important;
  font-size: 18px !important;
  line-height: 1.25 !important;
  font-weight: 600 !important;
  letter-spacing: normal !important;
  text-align: center !important;
  text-decoration: none !important;
  cursor: pointer !important;
  transition: background-color .18s ease, color .18s ease !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__button--secondary {
  border: 1px solid var(--bc49-btn-line) !important;
  background: transparent !important;
  color: var(--bc49-btn-text) !important;
  box-shadow: none !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__button--secondary:hover,
#blockcart-modal.bc49-cart-modal .bc49-cart-modal__button--secondary:focus {
  background: #f2efe7 !important;
  color: var(--bc49-ink) !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__button--primary {
  border: 0 !important;
  background: var(--bc49-btn) !important;
  color: #fff !important;
  box-shadow: none !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__button--primary:hover,
#blockcart-modal.bc49-cart-modal .bc49-cart-modal__button--primary:focus {
  background: var(--bc49-btn-hover) !important;
  color: #fff !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__button svg {
  width: 28px !important;
  height: 28px !important;
  flex: 0 0 28px !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 1.4 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

#blockcart-modal.bc49-cart-modal .bc49-cart-modal__native-hooks {
  display: none !important;
}

/* ---------- laptopy ---------- */
@media (max-width: 1100px) {
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__dialog {
    width: calc(100vw - 32px) !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__panel {
    padding-left: 26px !important;
    padding-right: 26px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__body {
    grid-template-columns: minmax(0, 1fr) 1px 340px !important;
    column-gap: 22px !important;
    justify-content: stretch !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__product {
    grid-template-columns: 210px minmax(0, 1fr) !important;
    column-gap: 26px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__photo {
    width: 210px !important;
    height: 247px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__product-copy h2 {
    font-size: 27px !important;
    margin-bottom: 18px !important;
    padding-bottom: 18px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__facts {
    gap: 20px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__separator {
    height: 247px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__summary {
    --bc49-sum-pad: 22px;
    width: 340px !important;
    min-height: 247px !important;
    padding-top: 26px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__summary-line {
    margin: 20px 0 18px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__count,
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__summary dt,
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__summary dd {
    font-size: 15px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__summary dl > div {
    padding: 10px 0 !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__total {
    min-height: 64px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__total span {
    font-size: 15px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__total strong {
    font-size: 19px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__footer {
    grid-template-columns: minmax(220px, 1fr) minmax(300px, 1.3fr) !important;
    gap: 18px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__button {
    min-height: 56px !important;
    font-size: 16px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__button svg {
    width: 24px !important;
    height: 24px !important;
    flex-basis: 24px !important;
  }
}

/* ---------- tablety i telefony ---------- */
@media (max-width: 991.98px) {
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__dialog {
    width: calc(100vw - 20px) !important;
    min-height: calc(100vh - 20px) !important;
    margin: 10px auto !important;
    align-items: flex-start !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__panel {
    padding: 24px 18px 22px !important;
    border-radius: 16px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__close {
    top: 14px !important;
    right: 12px !important;
    width: 36px !important;
    height: 36px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__close svg {
    width: 26px !important;
    height: 26px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__header {
    flex-direction: column !important;
    gap: 12px !important;
    min-height: 0 !important;
    padding: 0 32px 0 0 !important;
    margin-bottom: 20px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__success {
    width: 58px !important;
    height: 58px !important;
    flex-basis: 58px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__success svg {
    width: 36px !important;
    height: 36px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__header h1 {
    font-size: clamp(28px, 7.6vw, 38px) !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__ornament span {
    width: 60px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__body {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 20px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__separator {
    display: none !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__product {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__photo,
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__summary {
    width: 100% !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__photo {
    height: 260px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__product-copy h2 {
    font-size: 26px !important;
    margin-bottom: 16px !important;
    padding-bottom: 16px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__facts {
    gap: 18px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__fact {
    font-size: 16px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__fact strong {
    font-size: 18px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__fact-icon,
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__fact-icon svg {
    width: 24px !important;
    height: 24px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__fact-icon {
    flex-basis: 24px !important;
    margin-right: 12px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__summary {
    --bc49-sum-pad: 18px;
    min-height: 0 !important;
    padding-top: 22px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__summary-line {
    margin: 18px 0 14px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__count,
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__summary dt,
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__summary dd {
    font-size: 15px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__count strong {
    font-size: 17px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__total {
    margin-top: 16px !important;
    min-height: 62px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__total span {
    font-size: 15px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__total strong {
    font-size: 19px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__footer {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    margin-top: 22px !important;
    padding-top: 18px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__button {
    min-height: 56px !important;
    font-size: 17px !important;
    gap: 12px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__button svg {
    width: 24px !important;
    height: 24px !important;
    flex-basis: 24px !important;
  }
}

@media (max-width: 560px) {
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__panel {
    padding: 20px 14px 18px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__header h1 {
    font-size: clamp(25px, 8vw, 32px) !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__product-copy h2 {
    font-size: 23px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__photo {
    height: 230px !important;
    padding: 12px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__fact {
    font-size: 15px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__fact strong {
    font-size: 17px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__fact-icon,
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__fact-icon svg {
    width: 22px !important;
    height: 22px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__fact-icon {
    flex-basis: 22px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__summary {
    --bc49-sum-pad: 15px;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__count,
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__summary dt,
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__summary dd {
    font-size: 14px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__count strong {
    font-size: 16px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__total {
    min-height: 56px !important;
    padding-top: 14px !important;
    padding-bottom: 14px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__total span {
    font-size: 14px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__total strong {
    font-size: 17px !important;
  }
  #blockcart-modal.bc49-cart-modal .bc49-cart-modal__button {
    min-height: 52px !important;
    font-size: 16px !important;
  }
}

/* ---------------------------------------------------------------
   Stan „dodawanie do koszyka” — natychmiastowa reakcja przycisku
   zanim wróci odpowiedź AJAX i otworzy się popup.
   --------------------------------------------------------------- */
[data-button-action="add-to-cart"].bc49-adding {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  pointer-events: none !important;
  cursor: progress !important;
  opacity: .92 !important;
}

[data-button-action="add-to-cart"].bc49-adding > svg {
  display: none !important;
}

[data-button-action="add-to-cart"].bc49-adding::before {
  content: '' !important;
  width: 20px !important;
  height: 20px !important;
  flex: 0 0 20px !important;
  display: block !important;
  border-radius: 50% !important;
  border: 2px solid currentColor !important;
  border-top-color: transparent !important;
  animation: bc49Spin .7s linear infinite !important;
}

@keyframes bc49Spin {
  to { transform: rotate(360deg); }
}

@media (prefers-reduced-motion: reduce) {
  [data-button-action="add-to-cart"].bc49-adding::before {
    animation-duration: 2s !important;
  }
}
