
<style scoped>
/* 오버레이 스타일 */
.overlaypopup {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  z-index: 1000;
}

/* 팝업 레이어 스타일 
.popup {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1001;
}
*/

/* 팝업 전체 레이어 */
.popup {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  
  width: 100%; height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem;               /* 모바일 패딩 확보 */
  background: rgba(0,0,0,0.4); /* 반투명 백그라운드 */
  box-sizing: border-box;
  overflow: auto;              /* 높이 초과 시 스크롤 */
  z-index: 1001;
}

/* 팝업 컨텐츠 박스 */
.popup-content {
  background: #fff;
  border-radius: 0.5rem;
  width: 100%;
  max-width: 600px;    /* 데스크탑 최대 너비 */
  max-height: 70vh;    /* 화면 높이 70% 이내 */
  overflow-y: auto;    /* 내용 길면 내부 스크롤 */
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
  padding: 1.5rem;
}

/* 모바일에서는 좌우 마진 없애고 꽉 채우기 */
@media (max-width: 576px) {
  .popup-content {
    max-width: 100%;
    padding: 1rem;
    border-radius: 0.25rem;
}



.close-btn {
  position: absolute;
  top: 8px;
  right: 8px;
  background: none;
  border: none;
  font-size: 20px;
  cursor: pointer;
}

/* fade transition 설정 */
.fade-enter-active,
.fade-leave-active {
  transition: opacity 0.3s ease;
}
.fade-enter-from,
.fade-leave-to {
  opacity: 0;
}
</style>