/* Real shop link, visible only beside the existing native mobile floating bubble. */
#bbe-floating-shop.bbe-floating-shop {
  display: none;
  position: fixed;
  right: max(20px, env(safe-area-inset-right));
  bottom: max(112px, calc(88px + env(safe-area-inset-bottom)));
  z-index: 9999998;
  box-sizing: border-box;
  width: 60px;
  height: 60px;
  padding: 5px 3px;
  border: 1px solid #b68b33;
  border-radius: 50%;
  background: #fffaf0;
  color: #a47925;
  box-shadow: 0 3px 12px rgba(65, 45, 13, .18);
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1px;
  text-decoration: none;
  -webkit-tap-highlight-color: rgba(182, 139, 51, .16);
}
@supports selector(body:has(.qlwapp)) {
  @media (min-width: 240px) and (min-height: 240px) {
    body:has(.qlwapp:not(.qlwapp--shortcode):not(.qlwapp--woocommerce) > .qlwapp__container--bottom-right:not(.qlwapp__container--open):not(.qlwapp__container--opening):not(.qlwapp__container--closing) > a.qlwapp__button--bubble:not(.qlwapp__button--disabled)) #bbe-floating-shop.bbe-floating-shop {
      display: flex;
    }
  }
  /* Keep the initial and reopened consent choice unobstructed. */
  body:has(#cookie-notice.cookie-notice-visible) #bbe-floating-shop.bbe-floating-shop {
    display: none !important;
  }
}
#bbe-floating-shop .bbe-floating-shop__bag {
  display: block;
  flex: 0 0 42px;
  width: 40px;
  height: 42px;
  overflow: visible;
  transform-origin: 50% 25%;
  pointer-events: none;
}
#bbe-floating-shop .bbe-floating-shop__label {
  display: none;
  max-width: 52px;
  font: 600 8px/11px Arial, sans-serif;
  letter-spacing: .25px;
  white-space: nowrap;
  text-transform: uppercase;
  pointer-events: none;
}
#bbe-floating-shop.bbe-floating-shop:focus-visible {
  outline: 2px solid #76510c;
  outline-offset: 4px;
}
/* The button stays fixed; only its decorative artwork performs the product reveal. */
#bbe-floating-shop .bbe-floating-shop__scene { transform-origin: 20px 36px; }
#bbe-floating-shop .bbe-floating-shop__handle { transform-origin: 20px 16px; }
#bbe-floating-shop .bbe-floating-shop__opening { opacity: 0; transform-origin: 20px 14.5px; }
#bbe-floating-shop .bbe-floating-shop__tray,
#bbe-floating-shop .bbe-floating-shop__shimmer { opacity: 0; }
#bbe-floating-shop:active .bbe-floating-shop__bag { transform: scale(.95); }
@media (prefers-reduced-motion: no-preference) {
  #bbe-floating-shop .bbe-floating-shop__scene { animation: bbe-bag-close 7s ease-in-out infinite; }
  #bbe-floating-shop .bbe-floating-shop__handle { animation: bbe-bag-handle 7s ease-in-out infinite; }
  #bbe-floating-shop .bbe-floating-shop__opening { animation: bbe-bag-open 7s ease-in-out infinite; }
  #bbe-floating-shop .bbe-floating-shop__tray { animation: bbe-bag-tray 7s ease-in-out infinite; }
  #bbe-floating-shop .bbe-floating-shop__shimmer { animation: bbe-bag-shimmer 7s ease-in-out infinite; }
  #bbe-floating-shop:focus-visible .bbe-floating-shop__bag * { animation-play-state: paused; }
}
@media (hover: hover) and (pointer: fine) {
  #bbe-floating-shop:hover .bbe-floating-shop__bag * { animation-play-state: paused; }
}
@media (prefers-reduced-motion: reduce) {
  #bbe-floating-shop .bbe-floating-shop__bag,
  #bbe-floating-shop .bbe-floating-shop__bag * { animation: none; }
  #bbe-floating-shop .bbe-floating-shop__tray,
  #bbe-floating-shop .bbe-floating-shop__opening,
  #bbe-floating-shop .bbe-floating-shop__shimmer { opacity: 0; }
}
@keyframes bbe-bag-handle {
  0%, 4%, 75%, 100% { transform: translate(0, 0) rotate(0deg); }
  14%, 61% { transform: translate(-1px, -1px) rotate(-13deg); }
}
@keyframes bbe-bag-open {
  0%, 4%, 75%, 100% { opacity: 0; transform: scaleY(.3); }
  14%, 61% { opacity: 1; transform: scaleY(1); }
}
@keyframes bbe-bag-tray {
  0%, 15%, 72%, 100% { opacity: 0; transform: translateY(0); }
  20% { opacity: 1; transform: translateY(-3px); }
  34%, 48% { opacity: 1; transform: translateY(-14px); }
  54% { opacity: 1; transform: translateY(-15px); }
  66% { opacity: 1; transform: translateY(-3px); }
}
@keyframes bbe-bag-close {
  0%, 73%, 89%, 100% { transform: translateY(0) scale(1); }
  77% { transform: translateY(1px) scale(1.02, .96); }
  82% { transform: translateY(-1px) scale(.99, 1.02); }
}
@keyframes bbe-bag-shimmer {
  0%, 76% { opacity: 0; transform: translateX(0) skewX(-12deg); }
  80% { opacity: .85; transform: translateX(8px) skewX(-12deg); }
  91% { opacity: .85; transform: translateX(57px) skewX(-12deg); }
  95%, 100% { opacity: 0; transform: translateX(62px) skewX(-12deg); }
}
