{"version":3,"file":"css/sticky-add-to-cart-styles.css","mappings":"AAAA,mBACE,eACA,OACA,QACA,aACA,uCACA,uCACA,yEACA,UACA,oBAEA,2BACE,SACA,2BACA,8CACA,0CAGF,wBACE,MACA,4BACA,yCAGF,4BACE,wBACA,UACA,oBAIF,iCACE,UACA,WACA,uCACA,4BACA,cACA,mBACA,oCAEA,2DACE,YAGF,wDACE,SAGF,4DACE,qBAKJ,kCACE,gBAEA,4DACE,uCAGF,yDACE,0CAGF,6DACE,kBAIF,4DACE,2CAMF,+DACE,cACA,kBAGF,yDACE,cACA,kBAKF,gEACE,iBACA,eAGF,0DACE,iBACA,eAIJ,0BACE,aACA,mBACA,SACA,cACA,kBAGF,0BACE,cACA,WACA,YACA,mBACA,gBAEA,8BACE,WACA,YACA,iBACA,cAIJ,yBACE,OACA,YACA,aACA,sBACA,QAGF,0BACE,eACA,gBACA,gBACA,mBACA,gBACA,uBAGF,0BACE,eACA,gBACA,gBACA,yCAEA,8BACE,YACA,gBACA,iBAGF,8BACE,qBAIJ,4BACE,aACA,mBACA,SACA,cAGF,wBACE,aACA,mBACA,oCACA,qBACA,gBAGF,4BACE,WACA,YACA,YACA,yBACA,cACA,eACA,cACA,eACA,gCACA,UAEA,kCACE,8BAIJ,8BACE,WACA,YACA,YACA,yBACA,cACA,kBACA,eACA,gBACA,0BACA,qBACA,UAEA,kHAEE,wBACA,SAGF,oCACE,aACA,gBAIJ,2BACE,kBACA,YACA,eACA,8CACA,2CACA,eACA,gBACA,cACA,kBACA,+CAEA,iCACE,wBAGF,kCACE,sBAIA,qEACE,kBAGF,uEACE,oBAKN,mCACE,aACA,kBACA,QACA,mBACA,uBACA,QAIF,yBACE,iCACE,cAIJ,yBACE,gCACE,aAGF,iCACE,SACA,UACA,4BAEA,2DACE,WAGF,wDACE,QAIJ,0BACE,SACA,iBAGF,0BACE,WACA,YAGF,wBACE,aAGF,2BACE,mBAMN,mCACE,SAEA,mEACE,SAGF,yBAPF,mCAQI,SAEA,mEACE,U","sources":["webpack://revoty/./resources/sass/modules/sticky-add-to-cart.scss"],"sourcesContent":[".revoty-sticky-atc {\n  position: fixed;\n  left: 0;\n  right: 0;\n  z-index: 9990;\n  background: var(--revoty-satc-bg, #fff);\n  color: var(--revoty-satc-text, #1a2a33);\n  transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.25s ease;\n  opacity: 0;\n  pointer-events: none;\n\n  &--bottom {\n    bottom: 0;\n    transform: translateY(110%);\n    padding-bottom: env(safe-area-inset-bottom, 0);\n    box-shadow: 0 -4px 24px rgba(15, 30, 40, 0.12);\n  }\n\n  &--top {\n    top: 0;\n    transform: translateY(-110%);\n    box-shadow: 0 4px 24px rgba(15, 30, 40, 0.12);\n  }\n\n  &--visible {\n    transform: translateY(0);\n    opacity: 1;\n    pointer-events: auto;\n  }\n\n  // Modern: floating rounded card with a gap from the viewport edge\n  &--style-modern {\n    left: 16px;\n    right: 16px;\n    width: var(--revoty-satc-width, 1080px);\n    max-width: calc(100% - 32px);\n    margin: 0 auto;\n    border-radius: 14px;\n    border: 1px solid rgba(15, 30, 40, 0.06);\n\n    &.revoty-sticky-atc--bottom {\n      bottom: 16px;\n    }\n\n    &.revoty-sticky-atc--top {\n      top: 16px;\n    }\n\n    .revoty-sticky-atc__button {\n      border-radius: 9999px;\n    }\n  }\n\n  // Classic: flat edge-to-edge bar\n  &--style-classic {\n    border-radius: 0;\n\n    &.revoty-sticky-atc--bottom {\n      border-top: 1px solid rgba(15, 30, 40, 0.1);\n    }\n\n    &.revoty-sticky-atc--top {\n      border-bottom: 1px solid rgba(15, 30, 40, 0.1);\n    }\n\n    .revoty-sticky-atc__button {\n      border-radius: 6px;\n    }\n\n    // Classic spans edge to edge, the width setting constrains the content\n    .revoty-sticky-atc__inner {\n      max-width: var(--revoty-satc-width, 1080px);\n    }\n  }\n\n  // Horizontal alignment: modern moves the bar itself, classic moves the content\n  &--align-left {\n    &.revoty-sticky-atc--style-modern {\n      margin-left: 0;\n      margin-right: auto;\n    }\n\n    .revoty-sticky-atc__inner {\n      margin-left: 0;\n      margin-right: auto;\n    }\n  }\n\n  &--align-right {\n    &.revoty-sticky-atc--style-modern {\n      margin-left: auto;\n      margin-right: 0;\n    }\n\n    .revoty-sticky-atc__inner {\n      margin-left: auto;\n      margin-right: 0;\n    }\n  }\n\n  &__inner {\n    display: flex;\n    align-items: center;\n    gap: 14px;\n    margin: 0 auto;\n    padding: 10px 16px;\n  }\n\n  &__image {\n    flex-shrink: 0;\n    width: 48px;\n    height: 48px;\n    border-radius: 10px;\n    overflow: hidden;\n\n    img {\n      width: 100%;\n      height: 100%;\n      object-fit: cover;\n      display: block;\n    }\n  }\n\n  &__info {\n    flex: 1;\n    min-width: 0;\n    display: flex;\n    flex-direction: column;\n    gap: 2px;\n  }\n\n  &__title {\n    font-size: 14px;\n    font-weight: 600;\n    line-height: 1.3;\n    white-space: nowrap;\n    overflow: hidden;\n    text-overflow: ellipsis;\n  }\n\n  &__price {\n    font-size: 13px;\n    font-weight: 600;\n    line-height: 1.2;\n    color: var(--revoty-satc-button, #28aa85);\n\n    del {\n      opacity: 0.55;\n      font-weight: 400;\n      margin-right: 6px;\n    }\n\n    ins {\n      text-decoration: none;\n    }\n  }\n\n  &__actions {\n    display: flex;\n    align-items: center;\n    gap: 10px;\n    flex-shrink: 0;\n  }\n\n  &__qty {\n    display: flex;\n    align-items: center;\n    border: 1px solid rgba(15, 30, 40, 0.15);\n    border-radius: 9999px;\n    overflow: hidden;\n  }\n\n  &__qty-btn {\n    width: 32px;\n    height: 36px;\n    border: none;\n    background: transparent;\n    color: inherit;\n    font-size: 16px;\n    line-height: 1;\n    cursor: pointer;\n    transition: background 0.15s ease;\n    padding: 0;\n\n    &:hover {\n      background: rgba(15, 30, 40, 0.06);\n    }\n  }\n\n  &__qty-input {\n    width: 40px;\n    height: 36px;\n    border: none;\n    background: transparent;\n    color: inherit;\n    text-align: center;\n    font-size: 14px;\n    font-weight: 600;\n    -moz-appearance: textfield;\n    appearance: textfield;\n    padding: 0;\n\n    &::-webkit-outer-spin-button,\n    &::-webkit-inner-spin-button {\n      -webkit-appearance: none;\n      margin: 0;\n    }\n\n    &:focus {\n      outline: none;\n      box-shadow: none;\n    }\n  }\n\n  &__button {\n    position: relative;\n    border: none;\n    cursor: pointer;\n    background: var(--revoty-satc-button, #28aa85);\n    color: var(--revoty-satc-button-text, #fff);\n    font-size: 14px;\n    font-weight: 600;\n    line-height: 1;\n    padding: 12px 24px;\n    transition: filter 0.15s ease, transform 0.1s ease;\n\n    &:hover {\n      filter: brightness(1.08);\n    }\n\n    &:active {\n      transform: scale(0.97);\n    }\n\n    &--success {\n      .revoty-sticky-atc__button-label {\n        visibility: hidden;\n      }\n\n      .revoty-sticky-atc__button-success {\n        display: inline-flex;\n      }\n    }\n  }\n\n  &__button-success {\n    display: none;\n    position: absolute;\n    inset: 0;\n    align-items: center;\n    justify-content: center;\n    gap: 6px;\n  }\n\n  // Device visibility\n  @media (min-width: 769px) {\n    &--hide-desktop {\n      display: none;\n    }\n  }\n\n  @media (max-width: 768px) {\n    &--hide-mobile {\n      display: none;\n    }\n\n    &--style-modern {\n      left: 8px;\n      right: 8px;\n      max-width: calc(100% - 16px);\n\n      &.revoty-sticky-atc--bottom {\n        bottom: 8px;\n      }\n\n      &.revoty-sticky-atc--top {\n        top: 8px;\n      }\n    }\n\n    &__inner {\n      gap: 10px;\n      padding: 8px 12px;\n    }\n\n    &__image {\n      width: 40px;\n      height: 40px;\n    }\n\n    &__qty {\n      display: none;\n    }\n\n    &__button {\n      padding: 12px 18px;\n    }\n  }\n}\n\n// Keep the bar clear of the WordPress admin bar when pinned to the top\n.admin-bar .revoty-sticky-atc--top {\n  top: 32px;\n\n  &.revoty-sticky-atc--style-modern {\n    top: 48px;\n  }\n\n  @media (max-width: 782px) {\n    top: 46px;\n\n    &.revoty-sticky-atc--style-modern {\n      top: 54px;\n    }\n  }\n}\n"],"names":[],"sourceRoot":""}