/* =====================================================
   GO MyPets — Extra UI Polish & Animations
===================================================== */

/* ─── SMOOTH SCROLL OFFSET FOR FIXED HEADER ─────── */
[id] { scroll-margin-top: 80px; }

/* ─── LOADING SCREEN ─────────────────────────────── */
.page-loader {
  position: fixed;
  inset: 0;
  background: linear-gradient(135deg, #0D5FA3 0%, #1D8FD4 50%, #29B6F6 100%);
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 20px;
  transition: opacity 0.5s ease, visibility 0.5s ease;
}
.page-loader.hidden {
  opacity: 0;
  visibility: hidden;
}
.loader-logo {
  display: flex;
  align-items: center;
  justify-content: center;
}
.loader-logo img {
  height: 64px;
  width: auto;
  filter: brightness(0) invert(1);  /* white logo on blue bg */
  animation: loader-logo-fade 0.5s ease forwards;
}
@keyframes loader-logo-fade {
  from { opacity: 0; transform: scale(0.88); }
  to   { opacity: 1; transform: scale(1); }
}
.loader-bar {
  width: 160px;
  height: 4px;
  background: rgba(255,255,255,0.25);
  border-radius: 4px;
  overflow: hidden;
}
.loader-bar-fill {
  height: 100%;
  background: #fff;
  border-radius: 4px;
  animation: loader-fill 1.2s ease-out forwards;
}
@keyframes loader-fill {
  from { width: 0; }
  to   { width: 100%; }
}

/* ─── SMOOTH COUNTER ─────────────────────────────── */
.counter-num { display: inline-block; }

/* ─── STICKY ADD TO CART (mobile) ────────────────── */
.sticky-cta {
  position: fixed;
  bottom: 0; left: 0; right: 0;
  z-index: 900;
  background: #fff;
  border-top: 1px solid var(--border);
  padding: 12px 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  transform: translateY(100%);
  transition: transform 0.4s ease;
  box-shadow: 0 -4px 20px rgba(29,143,212,0.1);
}
.sticky-cta.show { transform: translateY(0); }
.sticky-cta-info strong { display: block; font-size: 0.92rem; font-weight: 800; color: var(--dark); }
.sticky-cta-info span   { font-size: 0.78rem; color: var(--muted); }
.sticky-cta-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--blue-grad);
  color: #fff;
  font-size: 0.9rem;
  font-weight: 700;
  padding: 12px 24px;
  border-radius: 100px;
  white-space: nowrap;
  box-shadow: 0 4px 16px rgba(29,143,212,0.3);
  text-decoration: none;
  transition: var(--transition);
}
.sticky-cta-btn:hover {
  background: var(--blue-grad-h);
  transform: translateY(-1px);
}

/* ─── PROGRESS BAR ───────────────────────────────── */
.scroll-progress {
  position: fixed;
  top: 0; left: 0;
  height: 3px;
  width: 0%;
  background: linear-gradient(90deg, #1D8FD4, #29B6F6);
  z-index: 1001;
  transition: width 0.1s linear;
}
