/**
 * Popup Management Styles
 * Handles popup overlay, timer overlay, and modal animations
 */

/* Popup Overlay State Management */
#popupOverlay.active {
  opacity: 1 !important;
  visibility: visible !important;
}

#popupModal.show {
  opacity: 1 !important;
  transform: scale(1) !important;
}

#timerOverlay.active {
  opacity: 1 !important;
  visibility: visible !important;
}

.timer-progress {
  transition: stroke-dashoffset 1s linear;
}

/* Popup Button Animations */
#downloadBtn, #closePopupBtn {
  position: relative;
  overflow: hidden;
}

#downloadBtn::before, #closePopupBtn::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0;
  height: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.3);
  transform: translate(-50%, -50%);
  transition: width 0.6s, height 0.6s;
}

#downloadBtn:hover::before, #closePopupBtn:hover::before {
  width: 300px;
  height: 300px;
}

/* Modal Entrance Animation */
@keyframes modalSlideIn {
  from {
    opacity: 0;
    transform: translateY(-50px) scale(0.95);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

#popupModal.show {
  animation: modalSlideIn 0.4s ease-out;
}
