/* Peptico side cart, tier 6 — the drawer restyled. Prefix pp9-.
   Layers over the markup the "header cart" Code Snippets render (they are not edited).
   Those snippets style with !important at up to five classes of specificity, so every
   rule here nests under a six-class prefix and carries !important too. Native CSS nesting:
   browsers without it keep the snippet's own styling, which still works. */

.pp-cart-v6 .peptico-sidecart.peptico-sidecart.peptico-sidecart.peptico-sidecart.peptico-sidecart {
  --ink: #111111; --muted: #5f5f58; --faint: #8a8a83;
  --paper: #f7f6f2; --white: #ffffff; --line: rgba(17, 17, 17, 0.08); --line-strong: rgba(17, 17, 17, 0.14);
  --green: #004f42; --ok: #2f8f5b; --mint: #e6f0ed; --mint-2: #b3d6d0; --sage: #dfe7d9;
  --font: "Jost", system-ui, -apple-system, "Segoe UI", sans-serif;
  --ease: cubic-bezier(0.2, 0.7, 0.2, 1);
  --spring: cubic-bezier(0.2, 0.9, 0.25, 1);
  --sheet: rgba(247, 246, 242, 0.86);
  --pp9-bottle: url("https://peptico.com/wp-content/uploads/2026/05/peptico-tb-500-10mg-transparent.png");

  /* ---- Scrim ------------------------------------------------------------------------- */
  background: rgba(17, 17, 17, 0.32) !important;
  -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px);
  font-family: var(--font);

  /* ---- Sheet ------------------------------------------------------------------------- */
  & .elementor-menu-cart__main {
    padding: 0 !important;
    background: var(--sheet) !important;
    -webkit-backdrop-filter: blur(28px) saturate(160%); backdrop-filter: blur(28px) saturate(160%);
    border-left: 1px solid rgba(255, 255, 255, 0.75) !important;
    border-radius: 28px 0 0 28px !important;
    box-shadow: -24px 0 60px rgba(17, 17, 17, 0.16), inset 1px 0 0 rgba(255, 255, 255, 0.85) !important;
    transition: transform 520ms var(--spring) !important;
    color: var(--ink) !important;
    font-family: var(--font) !important;
    overflow: hidden !important;
  }
  & .elementor-menu-cart__main * { font-family: var(--font) !important; }

  /* ---- Close ------------------------------------------------------------------------- */
  & .elementor-menu-cart__close-button {
    position: absolute !important; top: 16px !important; right: 16px !important; z-index: 3 !important;
    width: 40px !important; height: 40px !important; margin: 0 !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.72) !important;
    border: 1px solid var(--line) !important;
    box-shadow: inset 0 1px 0 #fff, 0 4px 14px rgba(17, 17, 17, 0.06) !important;
    transition: transform 140ms var(--ease), background-color 140ms var(--ease) !important;
  }
  & .elementor-menu-cart__close-button::before, & .elementor-menu-cart__close-button::after {
    content: "" !important; display: block !important; position: absolute !important; top: 50% !important; left: 50% !important;
    width: 16px !important; height: 1.6px !important; margin: 0 !important; padding: 0 !important; border: 0 !important;
    font-size: 0 !important; line-height: 0 !important; color: transparent !important;
    background: var(--ink) !important; border-radius: 2px !important;
    transform: translate(-50%, -50%) rotate(45deg) !important;
  }
  & .elementor-menu-cart__close-button::after { transform: translate(-50%, -50%) rotate(-45deg) !important; }
  & .elementor-menu-cart__close-button:hover { background: #fff !important; }
  & .elementor-menu-cart__close-button.is-pressed { transform: scale(0.92) !important; }

  /* ---- Header ------------------------------------------------------------------------ */
  & .peptico-sidecart-title {
    position: relative !important;
    padding: 26px 72px 12px 28px !important; margin: 0 !important;
    border: 0 !important;
    font-size: 22px !important; font-weight: 600 !important; letter-spacing: -0.02em !important; line-height: 1.1 !important;
    text-transform: none !important; color: var(--ink) !important;
    display: flex !important; align-items: center !important; gap: 10px !important; flex-wrap: wrap !important;
    touch-action: none;
  }
  & .peptico-sidecart-title::before {
    content: ""; display: none; position: absolute; top: 10px; left: 50%; width: 36px; height: 4px; margin-left: -18px;
    border-radius: 999px; background: rgba(17, 17, 17, 0.18);
  }
  & .pp9-count {
    display: inline-flex !important; align-items: center !important;
    padding: 3px 10px !important; border-radius: 999px !important;
    background: var(--mint) !important; color: var(--green) !important;
    font-size: 12px !important; font-weight: 600 !important; letter-spacing: 0.02em !important; line-height: 1.4 !important;
  }

  /* Free-shipping progress */
  & .pp9-ship { padding: 10px 28px 16px !important; margin: 0 !important; border-bottom: 1px solid var(--line) !important; background: rgba(247, 246, 242, 0.92) !important; }
  & .peptico-sidecart-title { background: rgba(247, 246, 242, 0.92) !important; }
  & .pp9-ship[hidden] { display: none !important; }
  & .pp9-ship__text { display: block !important; font-size: 13px !important; color: var(--muted) !important; margin: 0 0 8px !important; line-height: 1.3 !important; }
  & .pp9-ship__text strong { font-weight: 600 !important; color: var(--ink) !important; }
  & .pp9-ship.is-done .pp9-ship__text { color: var(--green) !important; }
  & .pp9-ship__bar { display: block !important; height: 6px !important; border-radius: 999px !important; background: rgba(17, 17, 17, 0.08) !important; overflow: hidden !important; }
  & .pp9-ship__fill {
    display: block !important; height: 100% !important; width: var(--pp9-ship, 0%) !important; border-radius: 999px !important;
    background: linear-gradient(90deg, var(--mint-2), var(--green)) !important;
    transition: width 600ms var(--ease) !important;
  }

  /* ---- Scroll region ----------------------------------------------------------------- */
  & .widget_shopping_cart_content {
    padding: 0 28px !important; margin: 0 !important;
    display: flex !important; flex-direction: column !important;
    overflow-y: auto !important; overscroll-behavior: contain !important;
    scrollbar-width: thin !important;
  }
  & .elementor-menu-cart__products { flex: 0 0 auto !important; padding: 0 !important; margin: 0 !important; overflow: visible !important; max-height: none !important; height: auto !important; }

  /* ---- Line items -------------------------------------------------------------------- */
  & .elementor-menu-cart__product {
    display: grid !important;
    grid-template-columns: 84px minmax(0, 1fr) !important;
    grid-template-areas: none !important;
    column-gap: 16px !important; row-gap: 6px !important;
    padding: 18px 0 !important; margin: 0 !important;
    border: 0 !important; border-bottom: 1px solid var(--line) !important;
    align-items: start !important;
  }
  & .elementor-menu-cart__product > * { grid-area: auto !important; grid-column: 2 !important; }
  & .elementor-menu-cart__product-image {
    grid-column: 1 !important; grid-row: 1 / span 4 !important;
    width: 84px !important; height: 84px !important; max-width: 84px !important;
    border-radius: 18px !important; overflow: hidden !important;
    background: var(--white) !important; border: 1px solid var(--line) !important;
  }
  & .elementor-menu-cart__product-image a { display: block !important; width: 100% !important; height: 100% !important; }
  & .elementor-menu-cart__product-image img {
    width: 100% !important; height: 100% !important; max-width: none !important; object-fit: cover !important; border-radius: 0 !important; display: block !important;
  }
  & .elementor-menu-cart__product-name { order: 1 !important; font-size: 15px !important; font-weight: 600 !important; line-height: 1.25 !important; color: var(--ink) !important; text-transform: none !important; margin: 0 !important; padding: 0 !important; }
  & .elementor-menu-cart__product-name a { color: var(--ink) !important; font-size: 15px !important; font-weight: 600 !important; text-decoration: none !important; text-transform: none !important; }
  & .elementor-menu-cart__product-name a:hover { color: var(--green) !important; }
  & .peptico-cart-name-size { color: var(--muted) !important; font-weight: 400 !important; text-transform: none !important; }
  & .elementor-menu-cart__product-name dl.variation { margin: 4px 0 0 !important; font-size: 12px !important; color: var(--muted) !important; }

  & .elementor-menu-cart__product-price {
    order: 2 !important;
    display: flex !important; grid-template-columns: none !important;
    justify-content: space-between !important; align-items: center !important; gap: 12px !important; flex-wrap: wrap !important;
    margin: 0 !important; padding: 0 !important; font-size: 15px !important; font-weight: 600 !important; color: var(--ink) !important;
  }

  /* Stepper: one glass pill */
  & .elementor-menu-cart__product-price > .quantity,
  & .elementor-menu-cart__product-price > .quantity.buttons_added {
    display: inline-flex !important; grid-template-columns: none !important; align-items: center !important;
    width: auto !important; min-width: 0 !important; height: 36px !important; padding: 0 4px !important; margin: 0 !important;
    border-radius: 999px !important; background: rgba(255, 255, 255, 0.78) !important;
    border: 1px solid var(--line-strong) !important;
    box-shadow: inset 0 1px 0 #fff !important;
  }
  & .quantity .minus, & .quantity .plus, & .quantity a.minus, & .quantity a.plus, & .quantity button.plus, & .quantity button.minus {
    display: grid !important; place-items: center !important;
    width: 28px !important; height: 28px !important; min-width: 0 !important; padding: 0 !important; margin: 0 !important;
    border: 0 !important; border-radius: 999px !important; background: transparent !important;
    color: var(--ink) !important; font-size: 17px !important; font-weight: 500 !important; line-height: 1 !important; text-decoration: none !important;
    cursor: pointer !important; box-shadow: none !important;
    transition: transform 140ms var(--ease), background-color 140ms var(--ease) !important;
  }
  & .quantity .minus:hover, & .quantity .plus:hover { background: var(--mint) !important; color: var(--green) !important; }
  & .quantity .minus.is-pressed, & .quantity .plus.is-pressed { transform: scale(0.88) !important; }
  & .quantity input.qty, & .quantity .qty {
    width: 34px !important; height: 28px !important; min-width: 0 !important; padding: 0 !important; margin: 0 !important;
    border: 0 !important; background: transparent !important; box-shadow: none !important;
    text-align: center !important; font-size: 14px !important; font-weight: 600 !important; color: var(--ink) !important;
    -moz-appearance: textfield !important; appearance: textfield !important;
  }
  & .quantity input.qty::-webkit-outer-spin-button, & .quantity input.qty::-webkit-inner-spin-button { -webkit-appearance: none !important; margin: 0 !important; }

  & .ast-mini-cart-price-wrap { margin-left: auto !important; text-align: right !important; font-size: 15px !important; font-weight: 600 !important; }
  & .ast-mini-cart-price-wrap bdi, & bdi { padding: 0 !important; font-weight: inherit !important; }

  /* Multi-vial pricing from the snippet: Original / Now / Saved */
  & .peptico-sidecart-discount-price { display: flex !important; flex-direction: column !important; align-items: flex-end !important; gap: 2px !important; }
  & .peptico-sidecart-discount-prices { display: flex !important; flex-direction: column !important; align-items: flex-end !important; gap: 0 !important; }
  & .peptico-price-label, & .peptico-saved-icon { display: none !important; }
  & .peptico-sidecart-discount-price del, & .peptico-sidecart-original del { font-size: 12px !important; font-weight: 500 !important; color: var(--faint) !important; text-decoration: line-through !important; }
  & .peptico-sidecart-discount-price ins, & .peptico-sidecart-current ins { font-size: 15px !important; font-weight: 600 !important; color: var(--ink) !important; text-decoration: none !important; background: none !important; }
  & .peptico-sidecart-discount-note { font-size: 12px !important; font-weight: 600 !important; color: var(--ok) !important; }
  /* The snippet says the multi-vial saving three times per row (a variation box, a "5% off applied"
     note, and the price pair). The price pair stays; the nudge chip carries the rest. */
  & .elementor-menu-cart__product-name dl.variation dt[class*="Multi"], & .elementor-menu-cart__product-name dl.variation dd[class*="Multi"] { display: none !important; }
  & .elementor-menu-cart__product-name dl.variation:not(:has(dt:not([class*="Multi"]))) { display: none !important; }
  & .peptico-sidecart-discount-line-total .peptico-sidecart-discount-note, & .peptico-sidecart-discount-price .peptico-sidecart-discount-note { display: none !important; }

  & .pp9-nudge {
    order: 3 !important; justify-self: start !important;
    display: inline-flex !important; align-items: center !important; gap: 6px !important; width: max-content !important; max-width: 100% !important;
    padding: 4px 10px !important; border-radius: 999px !important;
    background: var(--mint) !important; color: var(--green) !important;
    font-size: 12px !important; font-weight: 600 !important; line-height: 1.4 !important;
  }
  & .pp9-nudge.is-applied { background: var(--sage) !important; }

  & .elementor-menu-cart__product-remove { display: none !important; }
  & .peptico-custom-remove {
    order: 4 !important; justify-self: start !important; width: max-content !important;
    font-size: 12px !important; font-weight: 500 !important; color: var(--muted) !important;
    text-decoration: underline !important; text-underline-offset: 3px !important; text-decoration-color: rgba(17, 17, 17, 0.25) !important;
    margin: 0 !important; padding: 0 !important; background: none !important; border: 0 !important;
  }
  & .peptico-custom-remove:hover { color: var(--ink) !important; }
  /* After a refresh the snippet does not rebuild its Remove link; WooCommerce's own link is still in the
     row, hidden. Show it in the same place, in the same style, whenever the custom one is missing. */
  & .elementor-menu-cart__product:not(:has(.peptico-custom-remove)) .elementor-menu-cart__product-remove {
    display: block !important; order: 4 !important; justify-self: start !important; width: max-content !important; height: auto !important; margin: 0 !important; padding: 0 !important;
  }
  & .elementor-menu-cart__product:not(:has(.peptico-custom-remove)) a.elementor_remove_from_cart_button { display: none !important; }
  & .elementor-menu-cart__product:not(:has(.peptico-custom-remove)) a.remove_from_cart_button {
    display: inline-block !important; position: static !important; width: auto !important; height: auto !important; min-width: 0 !important; min-height: 0 !important;
    margin: 0 !important; padding: 0 !important; border: 0 !important; background: none !important; box-shadow: none !important; opacity: 1 !important;
    font-size: 12px !important; font-weight: 500 !important; line-height: 1.2 !important; color: var(--muted) !important;
    text-decoration: underline !important; text-underline-offset: 3px !important; text-decoration-color: rgba(17, 17, 17, 0.25) !important;
  }
  & .elementor-menu-cart__product:not(:has(.peptico-custom-remove)) a.remove_from_cart_button:hover { color: var(--ink) !important; }
  & .elementor-menu-cart__product:not(:has(.peptico-custom-remove)) a.remove_from_cart_button::before {
    content: "Remove" !important; display: inline !important; position: static !important; width: auto !important; height: auto !important; margin: 0 !important; padding: 0 !important;
    font-size: 12px !important; font-weight: 500 !important; line-height: 1.2 !important; color: inherit !important; background: none !important; border: 0 !important; transform: none !important;
  }
  & .elementor-menu-cart__product:not(:has(.peptico-custom-remove)) a.remove_from_cart_button::after { content: none !important; display: none !important; }

  /* ---- Promo, coupons, Pepti-Water --------------------------------------------------- */
  & .peptico-sidecart-extra-wrap { display: flex !important; flex-direction: column !important; gap: 10px !important; margin: 16px 0 0 !important; padding: 0 !important; border: 0 !important; }
  & .peptico-sidecart-extra {
    display: flex !important; justify-content: space-between !important; align-items: center !important; gap: 12px !important;
    width: 100% !important; min-height: 48px !important; margin: 0 !important; padding: 0 18px !important;
    border-radius: 16px !important; background: rgba(255, 255, 255, 0.62) !important;
    border: 1px solid var(--line) !important; box-shadow: inset 0 1px 0 #fff !important;
    color: var(--ink) !important; font-size: 13px !important; font-weight: 600 !important; letter-spacing: 0 !important; text-transform: none !important; text-align: left !important;
    cursor: pointer !important; transition: transform 140ms var(--ease), background-color 140ms var(--ease) !important;
  }
  & .peptico-sidecart-extra:hover { background: rgba(255, 255, 255, 0.9) !important; }
  & .peptico-sidecart-extra.is-pressed { transform: scale(0.985) !important; }
  & .peptico-sidecart-extra strong { font-weight: 600 !important; font-size: 13px !important; letter-spacing: 0 !important; text-transform: none !important; color: var(--ink) !important; }
  & .peptico-sidecart-extra > span:not([class*="pp9"]) { color: var(--muted) !important; font-size: 16px !important; line-height: 1 !important; }

  & .peptico-sidecart-coupon-form { display: none !important; gap: 8px !important; margin: 0 !important; padding: 0 !important; }
  & .peptico-sidecart-coupon-form.is-open { display: flex !important; }
  & .peptico-sidecart-coupon-input {
    flex: 1 1 auto !important; min-width: 0 !important; height: 44px !important; padding: 0 16px !important; margin: 0 !important;
    border-radius: 999px !important; border: 1px solid var(--line-strong) !important; background: var(--white) !important;
    font-size: 14px !important; color: var(--ink) !important; box-shadow: none !important;
  }
  & .peptico-sidecart-coupon-input:focus { outline: 2px solid var(--green) !important; outline-offset: 2px !important; }
  & .peptico-sidecart-coupon-submit {
    flex: none !important; height: 44px !important; padding: 0 18px !important; margin: 0 !important;
    border-radius: 999px !important; border: 0 !important; background: var(--ink) !important; color: #fff !important;
    font-size: 13px !important; font-weight: 600 !important; cursor: pointer !important;
    transition: transform 140ms var(--ease) !important;
  }
  & .peptico-sidecart-coupon-submit.is-pressed { transform: scale(0.96) !important; }
  & .peptico-sidecart-applied-coupons:empty { display: none !important; }
  & .peptico-sidecart-applied-coupon {
    display: inline-flex !important; align-items: center !important; gap: 8px !important; width: max-content !important;
    padding: 5px 12px !important; border-radius: 999px !important; background: var(--mint) !important; color: var(--green) !important;
    font-size: 12px !important; font-weight: 600 !important;
  }
  & .peptico-sidecart-message { font-size: 13px !important; color: var(--green) !important; margin: 0 !important; padding: 0 !important; }
  & .peptico-sidecart-message:empty { display: none !important; }

  & .peptico-sidecart-water-add.pp9-water {
    display: grid !important; grid-template-columns: 56px minmax(0, 1fr) auto !important; align-items: center !important; gap: 14px !important;
    min-height: 76px !important; padding: 10px 12px 10px 10px !important;
    border-radius: 20px !important; background: var(--mint) !important; border: 1px solid rgba(0, 79, 66, 0.08) !important; box-shadow: none !important;
  }
  & .peptico-sidecart-water-add.pp9-water:hover { background: #dcebe6 !important; }
  & .peptico-sidecart-water-add[hidden] { display: none !important; }
  & .pp9-water__img { width: 56px !important; height: 56px !important; max-width: none !important; border-radius: 14px !important; object-fit: cover !important; background: var(--white) !important; display: block !important; }
  & .pp9-water__text { display: flex !important; flex-direction: column !important; gap: 2px !important; min-width: 0 !important; color: var(--ink) !important; font-size: 13px !important; }
  & .pp9-water__text strong { font-size: 14px !important; }
  & .pp9-water__text small { font-size: 12px !important; color: var(--muted) !important; font-weight: 400 !important; }
  & .peptico-sidecart-extra .pp9-water__pill, & .pp9-water__pill {
    display: inline-flex !important; align-items: center !important; justify-content: center !important;
    min-height: 34px !important; padding: 0 14px !important; border-radius: 999px !important;
    background: var(--white) !important; color: var(--green) !important; border: 1px solid rgba(0, 79, 66, 0.18) !important; box-shadow: 0 1px 2px rgba(17, 17, 17, 0.06) !important; font-size: 13px !important; font-weight: 600 !important; line-height: 1 !important;
  }

  /* ---- Order summary as a ledger ----------------------------------------------------- */
  & .elementor-menu-cart__subtotal { display: none !important; }
  & .peptico-sidecart-order-summary { display: none !important; }
  & .pp9-summary {
    position: relative !important; margin: 16px 0 0 !important; padding: 20px 22px !important;
    border-radius: 20px !important;
    background: rgba(255, 255, 255, 0.66) !important;
    -webkit-backdrop-filter: blur(18px) saturate(160%); backdrop-filter: blur(18px) saturate(160%);
    border: 1px solid rgba(255, 255, 255, 0.85) !important;
    box-shadow: inset 0 1px 0 #fff, 0 10px 30px rgba(17, 17, 17, 0.06) !important;
    color: var(--ink) !important;
  }
  & .pp9-ledger { display: block !important; }
  & .pp9-ledger__title { font-size: 12px !important; font-weight: 600 !important; letter-spacing: 0.12em !important; text-transform: uppercase !important; color: var(--green) !important; margin: 0 0 10px !important; }
  & .pp9-ledger__row { display: flex !important; justify-content: space-between !important; align-items: baseline !important; gap: 16px !important; padding: 5px 0 !important; font-size: 14px !important; color: var(--ink) !important; }
  & .pp9-ledger__row span { font-size: 14px !important; font-weight: 500 !important; color: inherit !important; }
  & .pp9-ledger__row.is-saving { color: var(--ok) !important; }
  & .pp9-ledger__row.is-credit { color: var(--green) !important; }
  & .pp9-ledger__row.is-credit span { font-weight: 600 !important; }
  & .pp9-ledger__row.is-saving span { font-weight: 600 !important; }
  & .pp9-ledger__row.is-muted { color: var(--muted) !important; }
  & .pp9-ledger__total {
    display: flex !important; justify-content: space-between !important; align-items: baseline !important; gap: 16px !important;
    margin-top: 8px !important; padding-top: 12px !important; border-top: 1px solid rgba(17, 17, 17, 0.1) !important;
  }
  & .pp9-ledger__total span:first-child { font-size: 16px !important; font-weight: 600 !important; color: var(--ink) !important; }
  & .pp9-ledger__total span:last-child { font-size: 22px !important; font-weight: 600 !important; letter-spacing: -0.02em !important; color: var(--ink) !important; }
  & .pp9-ledger__chip {
    display: inline-flex !important; align-items: center !important; gap: 6px !important; margin-top: 10px !important;
    padding: 4px 10px !important; border-radius: 999px !important; background: var(--mint) !important; color: var(--green) !important;
    font-size: 12px !important; font-weight: 600 !important;
  }
  & .pp9-ledger__note { margin: 10px 0 0 !important; font-size: 12px !important; color: var(--faint) !important; line-height: 1.4 !important; }

  /* ---- Checkout, pinned --------------------------------------------------------------- */
  & .elementor-menu-cart__footer-buttons {
    position: sticky !important; bottom: 0 !important; z-index: 2 !important;
    display: flex !important; flex-direction: column !important; align-items: stretch !important; gap: 8px !important;
    margin: auto 0 0 !important; padding: 26px 0 18px !important;
    background: linear-gradient(to top, rgba(247, 246, 242, 0.96) 72%, rgba(247, 246, 242, 0)) !important;
  }
  & .elementor-button--view-cart { display: none !important; }
  & .elementor-button--checkout {
    display: flex !important; justify-content: center !important; align-items: center !important;
    width: 100% !important; min-height: 54px !important; height: auto !important; margin: 0 !important; padding: 0 22px !important;
    border-radius: 999px !important; background: var(--ink) !important; color: #fff !important; border: 0 !important;
    font-size: 15px !important; font-weight: 600 !important; letter-spacing: 0.01em !important; text-transform: none !important;
    box-shadow: 0 10px 24px rgba(17, 17, 17, 0.16) !important;
    transition: transform 160ms var(--ease), background-color 160ms var(--ease) !important;
  }
  & .elementor-button--checkout:hover { background: #000 !important; color: #fff !important; }
  & .elementor-button--checkout.is-pressed { transform: scale(0.98) !important; }
  & .elementor-button--checkout .elementor-button-text { font-size: 15px !important; font-weight: 600 !important; text-transform: none !important; letter-spacing: 0.01em !important; }
  & .pp9-micro { margin: 0 !important; padding: 0 !important; text-align: center !important; font-size: 12px !important; color: var(--muted) !important; line-height: 1.3 !important; }

  /* ---- Empty ------------------------------------------------------------------------- */
  & .woocommerce-mini-cart__empty-message {
    display: flex !important; flex-direction: column !important; align-items: center !important; gap: 14px !important;
    margin: 0 !important; padding: 40px 20px 32px !important; text-align: center !important;
    font-size: 17px !important; font-weight: 600 !important; color: var(--ink) !important;
  }
  & .woocommerce-mini-cart__empty-message::before {
    content: ""; display: block; width: 110px; height: 150px; margin-bottom: 6px;
    background: var(--pp9-bottle) center / contain no-repeat;
  }
  & .pp9-empty__link {
    display: inline-flex !important; align-items: center !important; justify-content: center !important;
    min-height: 46px !important; padding: 0 20px !important; border-radius: 999px !important;
    background: var(--ink) !important; color: #fff !important; font-size: 14px !important; font-weight: 600 !important; text-decoration: none !important;
    transition: transform 160ms var(--ease) !important;
  }
  & .pp9-empty__link.is-pressed { transform: scale(0.97) !important; }

  /* ---- Widths -------------------------------------------------------------------------- */
  @media (max-width: 1100px) {
    & .elementor-menu-cart__main { width: min(60vw, 520px) !important; min-width: 440px !important; max-width: 520px !important; }
  }
  @media (max-width: 767px) {
    & .elementor-menu-cart__main { width: 100vw !important; min-width: 0 !important; max-width: 100vw !important; border-radius: 0 !important; border-left: 0 !important; }
    & .peptico-sidecart-title { padding: 30px 68px 10px 20px !important; font-size: 20px !important; }
    & .peptico-sidecart-title::before { display: block; }
    & .pp9-ship { padding: 8px 20px 14px !important; }
    & .widget_shopping_cart_content { padding: 0 18px !important; }
    & .elementor-menu-cart__product { grid-template-columns: 72px minmax(0, 1fr) !important; column-gap: 12px !important; padding: 16px 0 !important; }
    & .elementor-menu-cart__product-image { width: 72px !important; height: 72px !important; max-width: 72px !important; border-radius: 16px !important; }
    & .pp9-summary { padding: 18px !important; border-radius: 18px !important; }
    & .elementor-menu-cart__footer-buttons { padding-bottom: max(18px, env(safe-area-inset-bottom)) !important; }
  }
  @media (max-width: 380px) {
    & .elementor-menu-cart__product-price { gap: 8px !important; }
    & .elementor-menu-cart__product-price > .quantity, & .elementor-menu-cart__product-price > .quantity.buttons_added { height: 34px !important; }
    & .quantity input.qty, & .quantity .qty { width: 28px !important; }
  }

  /* ---- Preferences --------------------------------------------------------------------- */
  @media (prefers-reduced-motion: reduce) {
    & .elementor-menu-cart__main { transition: transform 200ms ease-out !important; }
    & .pp9-ship__fill { transition: none !important; }
    & .elementor-button--checkout, & .peptico-sidecart-extra, & .quantity .minus, & .quantity .plus, & .elementor-menu-cart__close-button { transition: none !important; }
  }
  @media (prefers-reduced-transparency: reduce) {
    background: rgba(17, 17, 17, 0.45) !important;
    -webkit-backdrop-filter: none; backdrop-filter: none;
    & .elementor-menu-cart__main { background: var(--paper) !important; -webkit-backdrop-filter: none; backdrop-filter: none; }
    & .pp9-summary { background: var(--white) !important; -webkit-backdrop-filter: none; backdrop-filter: none; }
    & .elementor-menu-cart__footer-buttons { background: linear-gradient(to top, var(--paper) 72%, rgba(247, 246, 242, 0)) !important; }
  }
  @media (prefers-contrast: more) {
    & .elementor-menu-cart__product { border-bottom-color: rgba(17, 17, 17, 0.3) !important; }
    & .pp9-summary, & .peptico-sidecart-extra, & .elementor-menu-cart__product-price > .quantity { border-color: rgba(17, 17, 17, 0.4) !important; }
  }
}

/* The header's own icons sat above the open sheet on phones: the widget's parent container
   traps the drawer in its stacking context. Lift that chain while the drawer is shown. */
.pp-cart-v6 .elementor-widget-woocommerce-menu-cart.elementor-menu-cart--shown,
.pp-cart-v6 .e-con:has(> .e-con-inner > .elementor-menu-cart--shown),
.pp-cart-v6 .e-con:has(> .elementor-menu-cart--shown) { position: relative; z-index: 100000 !important; }
