.spwax-install-button{
  appearance:none;
  border:0;
  border-radius:8px;
  padding:.75rem 1rem;
  font:inherit;
  cursor:pointer;
  background:#222;
  color:#fff;
}
.spwax-install-button[hidden]{display:none!important}


.spwax-cta{
  position:fixed;
  right:14px;
  bottom:18px;
  z-index:99998;
}
.spwax-cta[hidden]{display:none!important}

.spwax-install-mobile{
  display:flex;
  align-items:center;
  gap:9px;
  min-height:48px;
  padding:10px 15px 10px 12px;
  border-radius:999px;
  box-shadow:0 6px 22px rgba(0,0,0,.25);
  font-weight:600;
  white-space:nowrap;
}
.spwax-phone-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:26px;
  height:26px;
  flex:0 0 26px;
}
.spwax-phone-icon svg{
  width:26px;
  height:26px;
  fill:currentColor;
}
.spwax-install-mobile-text{
  display:inline-block;
}
.spwax-cta--in{
  animation:spwaxSlideIn .25s ease-out both;
}
.spwax-cta--out{
  animation:spwaxSlideOut .28s ease-in both;
}
@keyframes spwaxSlideIn{
  from{opacity:0;transform:translateY(14px)}
  to{opacity:1;transform:translateY(0)}
}
@keyframes spwaxSlideOut{
  from{opacity:1;transform:translateY(0)}
  to{opacity:0;transform:translateY(14px)}
}
@media (min-width:768px){
  .spwax-cta{display:none!important}
}



.spwax-bottom-nav{
  display:none;
}
@media (max-width:767px){
  .spwax-bottom-nav{
    position:fixed;
    left:0;
    right:0;
    bottom:0;
    z-index:99997;
    display:flex;
    justify-content:space-around;
    gap:4px;
    padding:8px max(8px, env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-left));
    background:var(--spwax-nav-bg, #ffffff);
    color:var(--spwax-nav-fg, #111111);
    box-shadow:0 -4px 20px rgba(0,0,0,.12);
  }
  .spwax-bottom-nav a{
    flex:1;
    text-align:center;
    text-decoration:none;
    padding:8px 4px;
    font-size:13px;
    color:var(--spwax-nav-fg, #111111);
  }
  .spwax-cta--above-nav{
    bottom:76px;
  }
}

.spwax-preloader{
  position:fixed;
  inset:0;
  z-index:100000;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:14px;
  background:#fff;
  transition:opacity .35s ease;
}
.spwax-preloader img{
  max-width:140px;
  max-height:140px;
  width:auto;
  height:auto;
}
.spwax-preloader--hide{opacity:0;pointer-events:none}

.spwax-qr{
  max-width:100%;
  height:auto;
  display:block;
}


@media (max-width:767px){
  body.spwax-has-bottom-nav{
    padding-bottom:calc(72px + env(safe-area-inset-bottom)) !important;
  }
}
