/* Styli-style mobile bottom bar — phones only */

@keyframes zs-bn-rotate {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

@keyframes zs-bn-slide {
  from { transform: translateY(100%); }
  to { transform: translateY(0); }
}

.zs-bn {
  display: none;
}

@media (max-width: 1023px) {
  nav.mobile-bottom-nav,
  nav.sm\:hidden.fixed.bottom-0 {
    display: none !important;
  }

  body.zs-bn-on {
    padding-bottom: calc(64px + env(safe-area-inset-bottom, 0px));
  }

  .zs-bn {
    display: flex;
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 60;
    align-items: flex-end;
    justify-content: space-between;
    background: #fff;
    border-top: 1px solid #ececec;
    height: 64px;
    padding: 0 0 env(safe-area-inset-bottom, 0px);
    animation: zs-bn-slide 0.22s ease-out;
    font-family: Inter, "Segoe UI", sans-serif;
  }

  .zs-bn-item {
    flex: 1 1 20%;
    width: 20%;
    margin: 0;
    font-size: inherit;
    font-weight: inherit;
  }

  .zs-bn-link {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: relative;
    height: 60px;
    text-decoration: none;
    color: #80827e;
    text-align: center;
  }

  .zs-bn-link svg {
    display: block;
    width: 24px;
    height: 24px;
  }

  .zs-bn-label {
    font-size: 11px;
    line-height: 16px;
    font-weight: 500;
    letter-spacing: 0.04em;
    padding-top: 3px;
    color: #80827e;
  }

  .zs-bn-item.is-on .zs-bn-label,
  .zs-bn-item.is-on .zs-bn-link {
    color: #000;
  }

  .zs-bn-promo {
    position: relative;
    flex: 1 1 20%;
    width: 20%;
    height: 64px;
  }

  .zs-bn-promo a {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 5px;
    margin: auto;
    width: 75px;
    height: 79px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
  }

  .zs-bn-promo-spin {
    position: absolute;
    inset: 0;
    border-radius: 50%;
    background:
      conic-gradient(
        from 0deg,
        #ff4d6d,
        #ffd166,
        #06d6a0,
        #118ab2,
        #9b5de5,
        #ff4d6d
      );
    animation: zs-bn-rotate 1800ms linear infinite;
  }

  .zs-bn-promo-spin::after {
    content: "";
    position: absolute;
    inset: 6px;
    border-radius: 50%;
    background: #fff;
  }

  .zs-bn-promo-text {
    position: relative;
    z-index: 1;
    width: 68%;
    text-align: center;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.08em;
    line-height: 1.15;
    color: #111;
    pointer-events: none;
  }

  .zs-bn-badge {
    position: absolute;
    top: 8px;
    margin-left: 18px;
    min-width: 15px;
    height: 15px;
    padding: 0 3px;
    border-radius: 50%;
    background: #e85a71;
    color: #fff;
    font-size: 10px;
    font-weight: 600;
    line-height: 15px;
    text-align: center;
  }

  .zs-bn-badge.is-empty {
    display: none;
  }
}

@media (min-width: 1024px) {
  .zs-bn {
    display: none !important;
  }
}
