/* ================================================================
   PREMIUM OVERRIDES — Midnight Library
   Minimal layer — all base styles live in business-theme.css.
   Only micro-tweaks and additions here.
   ================================================================ */

/* Calm initial page-load — suppress animations until scroll observer processes elements.
   Elements in .scroll-hidden state are invisible; elements without scroll classes
   should also not animate (they haven't been observed yet). */
.hero:not(.scroll-visible),
.section:not(.scroll-visible),
.book-card:not(.scroll-visible),
.mini-book:not(.scroll-visible),
.wishlist-card:not(.scroll-visible),
.order-card:not(.scroll-visible),
.review-card:not(.scroll-visible),
.drawer-item:not(.scroll-visible),
.contact-card:not(.scroll-visible),
.panel:not(.scroll-visible),
.glass-card:not(.scroll-visible) {
  animation: none !important;
}

.hero-title,
.section-title,
.section-copy {
  animation: none !important;
}

.auth-modal-backdrop,
.auth-modal-panel,
.auth-modal-panel * {
  animation: none !important;
}

/* Add to Cart ripple */
.add-to-cart-btn {
  position: relative;
  overflow: hidden;
}

.add-to-cart-btn::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 120%;
  height: 0;
  padding-bottom: 120%;
  background: rgba(255, 255, 255, 0.12);
  border-radius: 50%;
  transform: translate(-50%, -50%) scale(0);
  opacity: 0;
  transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.5s;
}

.add-to-cart-btn:active::after {
  transform: translate(-50%, -50%) scale(1);
  opacity: 1;
  transition: 0s;
}
