body::after {
  content: "";
  display: none;
  background-image:
    url("https://web-files-cdn.masangsoft.com/_Asda/event/global/202604/btn_detail1.webp"),
    url("https://web-files-cdn.masangsoft.com/_Asda/event/global/202604/btn_detail2.webp"),
    url("https://web-files-cdn.masangsoft.com/_Asda/event/global/202604/close_normal.webp"),
    url("https://web-files-cdn.masangsoft.com/_Asda/event/global/202604/home_normal.webp"),
    url("https://web-files-cdn.masangsoft.com/_Asda/event/global/202604/light.webp"),
    url("https://web-files-cdn.masangsoft.com/_Asda/event/global/202604/tit.webp");
}

img {
  -webkit-user-drag: none;    
  -webkit-touch-callout: none; 
  user-select: none;           
}

/*LAYOUT*/
#container {
  position: relative;
  min-width: 1596px;
  margin: 0 auto;
  height: 3586px;
  background: url("https://web-files-cdn.masangsoft.com/_Asda/event/global/202604/bg.webp")
    no-repeat top center;
  background-color: #000;
  overflow: hidden;
}

h1,
p,
.text {
  visibility: hidden;
}

main,
section {
  height: 1080px;
}

#main .top_btn_container {
  position: absolute;
  top: 34px;
  right: 70px;
  display: flex;
  gap: 10px; /* 버튼 사이 간격 */
}

#main .top_btn_container .btn_home {
  width: 41px;
  height: 41px;
  text-indent: -9999em;
  background: url("https://web-files-cdn.masangsoft.com/_Asda/event/global/202604/home_normal.webp")
    no-repeat center;
  transition: filter 0.5s ease;
}
#main .top_btn_container .btn_home:hover {
  filter: brightness(1.4);
}

#main .top_btn_container .btn_close {
  width: 41px;
  height: 41px;
  text-indent: -9999em;
  background: url("https://web-files-cdn.masangsoft.com/_Asda/event/global/202604/close_normal.webp")
    no-repeat center;
  transition: filter 0.5s ease;
}
#main .top_btn_container .btn_close:hover {
  filter: brightness(1.4);
}
#main .event_detail_link {
  display: block;
  background: url("https://web-files-cdn.masangsoft.com/_Asda/event/global/202604/btn_detail1.webp")
    no-repeat center;
  text-indent: -9999em;
  right: 0;
  left: 0;
  top: 900px;
  margin: auto;
  width: 259px;
  height: 55px;
  position: absolute;
  transition: filter 0.5s ease;
}

#main .logo {
  display: block;
  text-indent: -9999em;
  right: 0;
  left: 0;
  top: 290px;
  margin: auto;
  width: 701px;
  height: 480px;
  position: absolute;
}

#main .logo .logo_img_wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  background: url("https://web-files-cdn.masangsoft.com/_Asda/event/global/202604/tit.webp") no-repeat center / 100% 100%;
  -webkit-mask: url("https://web-files-cdn.masangsoft.com/_Asda/event/global/202604/tit.webp") no-repeat center / 100% 100%;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  line-height: 0;
  overflow: hidden;
}

#main .logo .logo_img_wrapper::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 150%; /* 사선을 위해 충분히 넓게 */
  height: 150%;

  /* 사선 그라디언트 (빛 줄기) */
  background: linear-gradient(
    135deg,
    rgba(255, 255, 255, 0) 0%,
    rgba(255, 255, 255, 0) 40%,
    rgba(255, 255, 255, 0.6) 50%,
    /* 빛의 중심 */ rgba(255, 255, 255, 0) 60%,
    rgba(255, 255, 255, 0) 100%
  );
  /* 초기 위치: 우하단 밖 */
  transform: translate(50%, 50%);
  animation: shine-diagonal 2.8s infinite ease-in-out;
  pointer-events: none; /* 클릭 방해 금지 */
}

@keyframes shine-diagonal {
  0% {
    transform: translate(100%, 100%);
  }
  80% {
    transform: translate(-100%, -100%);
  }
  100% {
    /* 나머지 시간은 대기 */
    transform: translate(-100%, -100%);
  }
}

/* iOS 사파리 환경을 감지하여 문제가 되는 마스크와 반짝이 효과를 제거합니다. */
@supports (-webkit-touch-callout: none) {
  #main .logo .logo_img_wrapper {
    -webkit-mask: none !important;
    mask: none !important;  
    background: url("https://web-files-cdn.masangsoft.com/_Asda/event/global/202604/tit.webp") no-repeat center / 100% 100% !important;
  }

  #main .logo .logo_img_wrapper::after {
    display: none !important;
    animation: none !important;
  }
}
#lg_carnival_avatar .event_detail_link {
  display: block;
  background: url("https://web-files-cdn.masangsoft.com/_Asda/event/global/202604/btn_detail2.webp")
    no-repeat center;
  text-indent: -9999em;
  right: 0;
  left: 0;
  bottom: 174px;
  margin: auto;
  width: 373px;
  height: 100px;
  position: absolute;
  transition: filter 0.5s ease;
}

.event_detail_link:hover {
  filter: brightness(1.4);
}

footer {
  display: none;
}

.light_container {
  position: absolute;
  left: 50%; /* 중앙 정렬 기준 */
  transform: translateX(-50%); /* 중앙 정렬 */
  width: 1920px; /* 배경 이미지 원본 너비로 고정 */
  height: 1080px;
  overflow: hidden; /* 화면 밖으로 삐져나온 별 방지 */
  pointer-events: none;
  transition: opacity 0.5s ease-in-out; /* 부드러운 전환 효과 */
}

.bg-loaded .light_container {
  opacity: 1; /* 배경 로드 후 보이게 함 */
}

.light_container .light {
  animation: twinkle 4.2s infinite ease-in-out;
  transform-origin: center center;
  will-change: transform, opacity;
  display: block;
  position: absolute;
  opacity: 0.35;
  transform: scale(0.8);
  animation-fill-mode: both;
}

@keyframes twinkle {
  0%,
  100% {
    opacity: 0.35; /* 완전히 사라지지 않도록 */
    transform: scale(0.8); /* 약간 작게 */
  }
  50% {
    opacity: 1; /* 과도한 번쩍임 방지 */
    transform: scale(1); /* 원래 크기 */
  }
}
