:root {
  --hp-pdp-dock-height: 64px;
  --hp-pdp-dock-z: 100100;
}

@media (max-width: 767px) {
  body.single-product.hipopo-redesign-product .hp-pdp-sticky-dock {
    position: fixed;
    inset-inline: 0;
    bottom: 0;
    z-index: var(--hp-pdp-dock-z);
    display: block;
    width: 100%;
    min-height: 0;
    height: auto;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    transform: none;
  }

  body.single-product.hipopo-redesign-product .hp-pdp-sticky-dock[hidden] {
    display: none !important;
  }

  body.single-product.hipopo-redesign-product .hp-pdp-sticky-dock .hp-float-cart__fab {
    display: none !important;
  }

  body.single-product.hipopo-redesign-product .hp-pdp-sticky-dock__bar {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(120px, 1.4fr) 44px;
    align-items: center;
    gap: 10px;
    min-height: var(--hp-pdp-dock-height);
    padding: 8px 12px calc(8px + env(safe-area-inset-bottom, 0px));
    background: rgba(255, 255, 255, 0.97);
    border-top: 1px solid rgba(5, 142, 232, 0.16);
    box-shadow: 0 -10px 28px rgba(6, 28, 69, 0.12);
    backdrop-filter: blur(10px);
  }

  body.hipopo-thursday-live.single-product .hp-pdp-sticky-dock__bar {
    background: rgba(11, 21, 38, 0.96);
    border-top-color: rgba(255, 255, 255, 0.1);
    box-shadow: 0 -10px 28px rgba(0, 0, 0, 0.28);
  }

  body.single-product.hipopo-redesign-product.hp-pdp-sticky-active {
    padding-bottom: calc(var(--hp-pdp-dock-height) + env(safe-area-inset-bottom, 0px));
  }

  body.single-product.hipopo-redesign-product.hp-pdp-sticky-active .hp-mobile-bottom-bar {
    display: none !important;
  }

  body.single-product.hipopo-redesign-product:has(.cky-consent-container:not(.cky-hide)) .hp-pdp-sticky-dock {
    bottom: calc(env(safe-area-inset-bottom, 0px) + 12px);
  }

  .hp-pdp-sticky-dock__price .price {
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    font-size: 16px !important;
    font-weight: 800;
    line-height: 1.2;
  }

  .hp-pdp-sticky-dock__atc {
    min-width: 44px;
    min-height: 44px;
    border: 0;
    border-radius: 999px;
    background: linear-gradient(180deg, #9ef57b, #28a900);
    color: #fff;
    font-size: 14px;
    font-weight: 900;
    line-height: 1.1;
    padding: 10px 14px;
    box-shadow: 0 10px 20px rgba(40, 169, 0, 0.22);
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
  }

  .hp-pdp-sticky-dock__atc:disabled,
  .hp-pdp-sticky-dock__atc[aria-disabled='true'] {
    background: #b8c5d4;
    color: #fff;
    box-shadow: none;
    cursor: not-allowed;
  }

  .hp-pdp-sticky-dock__atc:focus-visible,
  .hp-pdp-sticky-dock__cart:focus-visible {
    outline: 3px solid #06d2e6;
    outline-offset: 2px;
  }

  .hp-pdp-sticky-dock__cart {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    min-width: 44px;
    height: 44px;
    min-height: 44px;
    padding: 0;
    border: 0;
    border-radius: 999px;
    background: linear-gradient(180deg, #058ee8, #015a92);
    color: #fff;
    box-shadow: 0 8px 18px rgba(1, 90, 146, 0.28);
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
  }

  .hp-pdp-sticky-dock__cart-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
  }

  .hp-pdp-sticky-dock__cart .hp-float-cart__badge {
    top: -3px;
    inset-inline-end: -3px;
  }
}

@media (min-width: 768px) {
  body.single-product .hp-pdp-sticky-dock__bar {
    display: none !important;
  }

  body.single-product .hp-pdp-sticky-dock .hp-float-cart__fab {
    display: inline-flex;
  }
}

@media (prefers-reduced-motion: reduce) {
  .hp-pdp-sticky-dock__atc,
  .hp-pdp-sticky-dock__cart {
    transition: none !important;
  }
}
