@font-face {
  font-family: 'NotoSansThai';
  src: url('../FONTS/NotoSansThai-ExtraBold.ttf') format('truetype');
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

.daily-popup-overlay {
  position: fixed;
  inset: 0;
  z-index: 10120;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 12px;
}

.daily-popup-overlay.is-hidden {
  display: none !important;
}

.daily-popup-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.72);
}

.daily-popup-dialog {
  position: relative;
  z-index: 1;
  width: min(1181px, calc(100vw - 24px), calc((100dvh - 24px) * (1181 / 960)));
  aspect-ratio: 1181 / 960;
  max-height: calc(100dvh - 24px);
  --dr-scale: 1;
  font-family: 'NotoSansThai', 'Kanit', system-ui, sans-serif;
}

.daily-popup-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
  z-index: 1;
}

.daily-popup-close {
  position: absolute;
  top: calc(85px * var(--dr-scale));
  right: calc(75px * var(--dr-scale));
  width: calc(78px * var(--dr-scale));
  height: calc(78px * var(--dr-scale));
  border: none;
  background: #fff;
  opacity: 0;
  color: transparent;
  font-size: 0;
  cursor: pointer;
  z-index: 6;
}

.daily-popup-content {
  position: absolute;
  inset: calc(122px * var(--dr-scale)) calc(62px * var(--dr-scale)) calc(80px * var(--dr-scale));
  display: flex;
  flex-direction: column;
  align-items: center;
  z-index: 5;
}

body.lobby-page .daily-popup-reset,
.daily-popup-reset {
  margin: calc(50px * var(--dr-scale)) 0 calc(25px * var(--dr-scale));
  text-align: center;
  color: #d9e5ff;
  /* ทับ body.lobby-page * ที่บังคับ NotoSansThai-ExtraBold */
  font-family: 'NotoSansThai', 'Kanit', sans-serif !important;
  font-size: calc(30px * var(--dr-scale));
  font-weight: 500 !important;
  -webkit-font-smoothing: antialiased;
}

.daily-popup-grid {
  --daily-popup-grid-gap-x: calc(-10px * var(--dr-scale));
  --daily-popup-grid-gap-y: calc(-10px * var(--dr-scale));
  margin: calc(var(--daily-popup-grid-gap-y) / -2) calc(var(--daily-popup-grid-gap-x) / -2) 0;
  width: calc(1052px * var(--dr-scale));
  max-width: 100%;
  list-style: none;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: center;
}

.daily-popup-card {
  position: relative;
  width: calc(254px * var(--dr-scale));
  height: calc(311px * var(--dr-scale));
  isolation: isolate;
  flex: 0 0 auto;
  margin: calc(var(--daily-popup-grid-gap-y) / 2) calc(var(--daily-popup-grid-gap-x) / 2);
}

.daily-popup-card.day-7 {
  width: calc(505px * var(--dr-scale));
  height: calc(319px * var(--dr-scale));
}

.daily-popup-card-frame {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  z-index: 0;
}

.daily-popup-received-top-overlay {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  z-index: 4;
  pointer-events: none;
}

.daily-popup-card-inner {
  --daily-day-offset-y: calc(20px  * var(--dr-scale));
  --daily-claim-offset-y: calc(-11px * var(--dr-scale));
  position: absolute;
  inset: calc(12px * var(--dr-scale)) calc(10px * var(--dr-scale)) calc(14px * var(--dr-scale));
  display: flex;
  flex-direction: column;
  align-items: center;
}

.daily-popup-day-img {
  width: calc(101px * var(--dr-scale));
  aspect-ratio: 101 / 41;
  height: auto;
  object-fit: contain;
  margin-top: var(--daily-day-offset-y);
}

.daily-popup-icon-wrap {
  position: relative;
  margin-top: calc(-10px * var(--dr-scale));
  width: calc(161px * var(--dr-scale));
  aspect-ratio: 1 / 1;
  height: auto;
}

.daily-popup-icon-bg,
.daily-popup-reward,
.daily-popup-icon-frame,
.daily-popup-icon-lock-overlay,
.daily-popup-redeemed {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.daily-popup-reward {
  width: calc(151px * 1 * var(--dr-scale));
  aspect-ratio: 151 / 101;
  height: auto;
  left: 50%;
  top: 50%;
  transform: translate(4%, 27%);
  inset: auto;
  object-fit: contain;
}

.daily-popup-redeemed {
  width: calc(89px * var(--dr-scale));
  aspect-ratio: 89 / 77;
  height: auto;
  left: 50%;
  top: 50%;
  transform: translate(50%, 50%);
  inset: auto;
  z-index: 5;
}

.daily-popup-redeemed.is-claim-animate {
  animation: dailyRedeemedPopIn 360ms cubic-bezier(0.2, 0.9, 1, 1) both;
}

@keyframes dailyRedeemedPopIn {
  0% {
    transform: translate(50%, 50%) scale(1.55);
    opacity: 0;
  }
  100% {
    transform: translate(50%, 50%) scale(1);
    opacity: 1;
  }
}

.daily-popup-status-img {
  margin-top: calc(5px * var(--dr-scale));
  width: calc(151px * var(--dr-scale));
  aspect-ratio: 151 / 41;
  height: auto;
  object-fit: contain;
}

.daily-popup-claim-btn {
  margin-top: var(--daily-claim-offset-y);
  width: calc(208px * 1 * var(--dr-scale));
  aspect-ratio: 208 / 76;
  margin-left: calc(6px * var(--dr-scale));
  border: none;
  background: transparent;
  padding: 0;
  cursor: pointer;
}

.daily-popup-claim-btn-img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
}

.daily-popup-preload {
  position: absolute;
  width: 0;
  height: 0;
  opacity: 0;
  pointer-events: none;
  overflow: hidden;
}
