/* DIABET12 Side Cart v1.0.0: isolated styles, no oCheckout overrides. */
.js-mini-cart > .dropdown-cart-menu { display: none !important; }
body.dw-sidecart-open { overflow: hidden !important; }
#dw-sidecart-backdrop {
  position: fixed; inset: 0; z-index: 99989; background: rgba(12, 22, 39, .52);
  opacity: 0; visibility: hidden; pointer-events: none;
  transition: opacity .25s ease, visibility .25s ease;
}
#dw-sidecart-panel {
  --dw-blue: #1561bf; --dw-ink: #13263a; --dw-gray: #667587;
  position: fixed; top: 0; right: 0; bottom: 0; z-index: 99990;
  width: min(480px, 100vw); max-width: 100%;
  display: flex; flex-direction: column; background: #fff; color: var(--dw-ink);
  box-shadow: -12px 0 40px rgba(0, 0, 0, .11);
  transform: translate3d(102%, 0, 0); visibility: hidden;
  transition: transform .3s ease, visibility .3s ease;
  font: 400 15px/1.45 system-ui, -apple-system, 'Segoe UI', Arial, sans-serif;
  border-radius: 18px 0 0 18px;
  text-align: left;
}
body.dw-sidecart-open #dw-sidecart-backdrop {opacity: 1; visibility: visible; pointer-events: auto;}
body.dw-sidecart-open #dw-sidecart-panel {transform: translate3d(0, 0, 0); visibility: visible;}
#dw-sidecart-panel *, #dw-sidecart-panel *::before, #dw-sidecart-panel *::after {box-sizing: border-box;}
#dw-sidecart-panel a {color: inherit; text-decoration: none;}
#dw-sidecart-panel button {font: inherit; cursor: pointer; color: inherit;}
#dw-sidecart-panel button:disabled {opacity: .45; cursor: not-allowed;}
#dw-sidecart-panel .dw-sidecart-header {
  display: flex; flex: none; align-items: center; gap: 13px;
  padding: 24px 26px 19px; border-bottom: 1px solid #edf1f5;
}
#dw-sidecart-panel .dw-sidecart-icon {
  width: 46px; height: 46px; flex: 0 0 46px; border-radius: 50%;
  color: var(--dw-blue); display: grid; place-items: center; background: #f0f5fd;
}
#dw-sidecart-panel .dw-sidecart-heading {min-width: 0; flex: 1;}
#dw-sidecart-panel .dw-sidecart-heading strong {display: block; font-size: 21px; line-height: 1.15; font-weight: 700;}
#dw-sidecart-panel .dw-sidecart-heading small {display: block; color: var(--dw-gray); margin-top: 4px; font-size: 12px;}
#dw-sidecart-panel .dw-sidecart-close {border: 0; background: transparent; font-size: 30px; line-height: 1; padding: 4px; width: 35px; height: 35px;}
#dw-sidecart-panel .dw-sidecart-close:hover {color: var(--dw-blue);}
#dw-sidecart-panel #dw-sidecart-status:empty {display: none;}
#dw-sidecart-panel #dw-sidecart-status {padding: 11px 24px; font-size: 13px; background: #f1f6fd; color: #254c74;}
#dw-sidecart-panel #dw-sidecart-status.dw-sidecart-error {background: #fff0ee; color: #a72d25;}
#dw-sidecart-panel .dw-sidecart-body {flex: 1 1 auto; min-height: 0; overflow-y: auto; overscroll-behavior: contain; padding: 8px 26px 20px;}
#dw-sidecart-panel .dw-sidecart-item {display: flex; align-items: flex-start; gap: 16px; padding: 23px 0; border-bottom: 1px solid #edf1f5;}
#dw-sidecart-panel .dw-sidecart-product-image {display: grid; place-items: center; flex: 0 0 95px; width: 95px; height: 102px; border-radius: 11px; background: #f7f9fc; overflow: hidden;}
#dw-sidecart-panel .dw-sidecart-product-image img {width: 100%; height: 100%; object-fit: contain;}
#dw-sidecart-panel .dw-sidecart-product-info {flex: 1 1 auto; min-width: 0;}
#dw-sidecart-panel .dw-sidecart-product-name {display: block; color: var(--dw-ink); font-size: 14px; line-height: 1.45; font-weight: 650; overflow-wrap: anywhere;}
#dw-sidecart-panel a.dw-sidecart-product-name:hover {color: var(--dw-blue);}
#dw-sidecart-panel .dw-sidecart-price {font-weight: 700; font-size: 16px; color: var(--dw-blue); margin: 8px 0 11px;}
#dw-sidecart-panel .dw-sidecart-tools {display: flex; align-items: center; gap: 12px;}
#dw-sidecart-panel .dw-sidecart-qty {border: 1px solid #dfe5ee; height: 36px; border-radius: 8px; display: inline-flex; align-items: center; overflow: hidden;}
#dw-sidecart-panel .dw-sidecart-qty button {min-width: 31px; height: 34px; padding: 0; border: none; background: #fff; font-size: 19px;}
#dw-sidecart-panel .dw-sidecart-qty button:not(:disabled):hover {background: #eef5ff;}
#dw-sidecart-panel .dw-sidecart-qty input {width: 38px; min-width: 0; height: 34px; border: 0; padding: 0; text-align: center; font-size: 13px; background: transparent; color: var(--dw-ink); outline: none; appearance: textfield; -moz-appearance: textfield;}
#dw-sidecart-panel .dw-sidecart-qty input::-webkit-inner-spin-button, #dw-sidecart-panel .dw-sidecart-qty input::-webkit-outer-spin-button {appearance: none; -webkit-appearance: none; margin: 0;}
#dw-sidecart-panel .dw-sidecart-remove, #dw-sidecart-panel .dw-sidecart-remove-voucher {border: 0; background: transparent; font-size: 22px; line-height: 1; color: #8b98aa; padding: 5px;}
#dw-sidecart-panel .dw-sidecart-remove:hover, #dw-sidecart-panel .dw-sidecart-remove-voucher:hover {color: #d13f37;}
#dw-sidecart-panel #dw-sidecart-empty {padding: 48px 8px; color: var(--dw-gray); font-size: 15px; text-align: center;}
#dw-sidecart-panel .dw-sidecart-voucher {align-items: center;}
#dw-sidecart-panel .dw-sidecart-footer {flex: none; border-top: 1px solid #edf1f5; padding: 20px 26px 25px; background: #fff;}
#dw-sidecart-panel .dw-sidecart-total {display: flex; justify-content: space-between; align-items: baseline; gap: 12px; margin-bottom: 16px; font-size: 17px; font-weight: 700;}
#dw-sidecart-panel #dw-sidecart-total-value {font-size: 20px; color: var(--dw-blue); white-space: nowrap;}
#dw-sidecart-panel .dw-sidecart-checkout, #dw-sidecart-panel .dw-sidecart-continue {
  display: block; width: 100%; padding: 12px 16px; min-height: 45px; border-radius: 9px;
  text-align: center; font-size: 14px; font-weight: 650; transition: background .15s ease;
}
#dw-sidecart-panel a.dw-sidecart-checkout {color: #fff; background: var(--dw-blue); border: 1px solid var(--dw-blue);}
#dw-sidecart-panel a.dw-sidecart-checkout:hover {background: #0d4d9f;}
#dw-sidecart-panel .dw-sidecart-continue {margin-top: 9px; color: var(--dw-ink); border: 1px solid #d0d7e0; background: #fff;}
#dw-sidecart-panel .dw-sidecart-continue:hover {background: #f6f9fd;}
#dw-sidecart-panel a.dw-sidecart-view {display: block; margin-top: 13px; text-align: center; font-size: 12px; text-decoration: underline; color: var(--dw-gray);}
#dw-sidecart-panel.dw-sidecart-loading .dw-sidecart-body {opacity: .68;}
@media (max-width: 767px) {
  #dw-sidecart-panel {
    width: 100vw; height: 90vh; height: 90dvh; top: auto; bottom: 0; right: 0;
    border-radius: 20px 20px 0 0; transform: translate3d(0, 105%, 0);
  }
  #dw-sidecart-panel .dw-sidecart-header {padding: 18px 18px 16px;}
  #dw-sidecart-panel .dw-sidecart-body {padding: 6px 18px 15px;}
  #dw-sidecart-panel .dw-sidecart-item {gap: 12px; padding: 18px 0;}
  #dw-sidecart-panel .dw-sidecart-product-image {flex-basis: 80px; width: 80px; height: 88px;}
  #dw-sidecart-panel .dw-sidecart-footer {padding: 15px 18px max(20px, env(safe-area-inset-bottom));}
  #dw-sidecart-panel .dw-sidecart-heading strong {font-size: 19px;}
}
@media (prefers-reduced-motion: reduce) {
  #dw-sidecart-backdrop, #dw-sidecart-panel {transition: none;}
}
