/* Lucky Treasure activity: 3D motion lives inside the existing home-page card. */
.ongoing-section .featured-treasure-card{
  --treasure-tilt-x:0deg;
  --treasure-tilt-y:0deg;
  --treasure-lift:0px;
  position:relative;
  isolation:isolate;
  overflow:visible;
  border:0!important;
  background:transparent!important;
  perspective:1100px;
  box-shadow:none!important;
  -webkit-tap-highlight-color:transparent;
}

.ongoing-section .featured-treasure-card::before{
  content:"";
  position:absolute;
  z-index:-1;
  top:auto;
  left:5%;
  right:5%;
  bottom:-13px;
  height:28px;
  padding:0;
  border:0;
  border-radius:50%;
  background:rgba(0,0,0,.78);
  -webkit-mask:none;
  mask:none;
  filter:blur(12px);
  opacity:.72;
  transform:translateY(calc(var(--treasure-lift) * -.2));
  transition:opacity .3s ease,transform .3s ease;
}

.ongoing-section .featured-treasure-card .featured-image{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  border:1px solid rgba(236,176,59,.82)!important;
  border-radius:17px!important;
  transform-style:preserve-3d;
  transform:translateY(var(--treasure-lift)) rotateX(var(--treasure-tilt-x)) rotateY(var(--treasure-tilt-y));
  transform-origin:center 58%;
  will-change:transform;
  transition:transform .18s ease-out,filter .3s ease,box-shadow .3s ease;
  background-size:104% auto!important;
  box-shadow:
    0 24px 34px rgba(0,0,0,.48),
    0 11px 18px rgba(0,0,0,.46),
    0 0 25px rgba(212,126,23,.13),
    inset 0 0 0 1px rgba(255,235,167,.09)!important;
}

.ongoing-section .featured-treasure-card .featured-image::before{
  content:"";
  position:absolute;
  z-index:1;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(ellipse at 58% 67%,rgba(255,208,90,.2),transparent 29%),
    linear-gradient(90deg,rgba(3,1,0,.48),transparent 40%,transparent 78%,rgba(3,1,0,.27)),
    linear-gradient(180deg,rgba(0,0,0,.05),transparent 50%,rgba(0,0,0,.28));
  animation:treasureGlowBreath 3.1s ease-in-out infinite;
}

.ongoing-section .featured-treasure-card .featured-image::after{
  content:none;
  display:none;
}

.treasure-3d-scene{
  position:absolute;
  z-index:2;
  inset:0;
  overflow:hidden;
  pointer-events:none;
  transform-style:preserve-3d;
}

.treasure-chest-aura{
  position:absolute;
  left:31%;
  right:17%;
  bottom:4%;
  height:56%;
  border-radius:50%;
  background:radial-gradient(ellipse,rgba(255,225,122,.42),rgba(244,142,26,.13) 43%,transparent 72%);
  filter:blur(12px);
  mix-blend-mode:screen;
  opacity:.72;
  transform:translateZ(44px) scale(.86);
  animation:treasureAuraPulse 2.35s ease-in-out infinite;
}

.treasure-depth-floor{
  position:absolute;
  z-index:2;
  left:18%;
  right:12%;
  bottom:-16%;
  height:31%;
  border-radius:50%;
  background:radial-gradient(ellipse,rgba(238,157,34,.24),rgba(0,0,0,.7) 58%,transparent 72%);
  filter:blur(8px);
  transform:translateZ(18px) rotateX(67deg);
  animation:treasureFloorPulse 3s ease-in-out infinite;
}

.treasure-coin-layer,.treasure-spark-layer{position:absolute;inset:0;transform-style:preserve-3d}
.treasure-home-coin{
  position:absolute;
  left:var(--x);
  top:var(--y);
  width:var(--size);
  aspect-ratio:1;
  border:1px solid #ffe58d;
  border-radius:50%;
  opacity:.92;
  background:radial-gradient(circle at 34% 29%,#fff4b5 0 9%,#eeb13a 24%,#9d4f06 65%,#f2c456 75%,#612a03 100%);
  box-shadow:0 0 9px rgba(255,181,47,.48),inset 0 0 0 2px rgba(124,63,5,.35);
  transform:translateZ(var(--depth)) rotateX(68deg) rotateZ(var(--spin));
  animation:treasureCoinFloat var(--duration) ease-in-out var(--delay) infinite;
}
.treasure-home-coin::after{
  content:"¥";
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  color:#754006;
  font-size:calc(var(--size) * .44);
  font-style:normal;
  font-weight:900;
}

.treasure-home-spark{
  position:absolute;
  left:var(--x);
  bottom:-8%;
  width:var(--size);
  height:var(--size);
  border-radius:50%;
  opacity:0;
  background:#ffe8a0;
  box-shadow:0 0 7px #f3a525,0 0 14px rgba(255,168,37,.55);
  animation:treasureSparkRise var(--duration) linear var(--delay) infinite;
}

.ongoing-section .featured-treasure-copy{
  z-index:9;
  left:6.4%;
  bottom:9%;
  transform:translateZ(74px);
  text-shadow:0 4px 15px #000,0 0 12px rgba(0,0,0,.72);
}
.ongoing-section .featured-treasure-copy b{
  color:#ffdc78;
  filter:drop-shadow(0 2px 2px rgba(66,24,0,.7));
}
.ongoing-section .featured-treasure-copy small{color:#fff7df;font-weight:700}

.treasure-live-chip{
  position:absolute;
  z-index:9;
  right:4.5%;
  bottom:5.5%;
  display:flex;
  align-items:center;
  gap:7px;
  padding:8px 12px;
  border:1px solid rgba(255,218,112,.52);
  border-radius:999px;
  color:#ffe59a;
  background:rgba(10,5,3,.7);
  backdrop-filter:blur(7px);
  -webkit-backdrop-filter:blur(7px);
  box-shadow:0 7px 18px rgba(0,0,0,.35);
  font-size:11px;
  font-weight:800;
  letter-spacing:.4px;
  transform:translateZ(62px);
}
.treasure-live-chip::before{
  content:"";
  width:7px;
  height:7px;
  border-radius:50%;
  background:#ffd157;
  box-shadow:0 0 9px #ffad1c;
  animation:treasureLivePulse 1.45s ease-in-out infinite;
}

.featured-treasure-card:focus-visible{outline:0}
.featured-treasure-card:focus-visible .featured-image{
  border-color:#ffe498!important;
  box-shadow:0 0 0 3px rgba(242,190,73,.3),0 25px 38px rgba(0,0,0,.54),0 0 34px rgba(225,151,35,.25)!important;
}

@media(hover:hover) and (pointer:fine){
  .ongoing-section .featured-treasure-card:hover{--treasure-lift:-5px}
  .ongoing-section .featured-treasure-card:hover::before{opacity:.92}
  .ongoing-section .featured-treasure-card:hover .featured-image{
    filter:saturate(1.08) brightness(1.035);
    box-shadow:0 31px 42px rgba(0,0,0,.57),0 14px 22px rgba(0,0,0,.47),0 0 37px rgba(225,142,28,.22),inset 0 0 0 1px rgba(255,238,178,.11)!important;
  }
}

@media(max-width:600px){
  .ongoing-section .featured-treasure-card .featured-image{border-radius:12px!important;background-size:cover!important}
  .treasure-live-chip{right:3.5%;bottom:4.5%;padding:6px 9px;font-size:8px;gap:5px}
  .treasure-live-chip::before{width:5px;height:5px}
  .ongoing-section .featured-treasure-copy{left:5.5%;bottom:8%}
  .treasure-home-coin{display:none}
  .treasure-home-coin:nth-child(-n+6){display:block}
}

@media(prefers-reduced-motion:reduce){
  .ongoing-section .featured-treasure-card,.ongoing-section .featured-treasure-card *,
  .ongoing-section .featured-treasure-card *::before,.ongoing-section .featured-treasure-card *::after{
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
  }
  .ongoing-section .featured-treasure-card .featured-image{transform:none!important;transition:none!important}
}

@keyframes treasureGlowBreath{0%,100%{opacity:.72}50%{opacity:1}}
@keyframes treasureAuraPulse{0%,100%{opacity:.58;transform:translateZ(44px) scale(.84)}50%{opacity:1;transform:translateZ(44px) scale(1.15)}}
@keyframes treasureFloorPulse{0%,100%{opacity:.55;scale:.92}50%{opacity:.86;scale:1.08}}
@keyframes treasureCoinFloat{0%,100%{margin-top:0;rotate:0deg}50%{margin-top:-15px;rotate:16deg}}
@keyframes treasureSparkRise{0%{opacity:0;transform:translateY(0) scale(.55)}16%{opacity:.95}72%{opacity:.44}100%{opacity:0;transform:translateY(-330px) translateX(18px) scale(1.1)}}
@keyframes treasureLivePulse{0%,100%{opacity:.5;transform:scale(.8)}50%{opacity:1;transform:scale(1.23)}}
