/* =========================================================
   轉動奇蹟 btn_lottery：同步 V3 互動特效
   僅套用主按鈕，不影響查詢序號／會員登入／會員登出與其他版面
   ========================================================= */
:root{
  --v3-gold:#ffd37a;
  --v3-gold-soft:rgba(255,211,122,.42);
  --v3-gold-faint:rgba(255,211,122,.16);
  --v3-bronze:#b66a2e;
  --v3-dark:#140B08;
  --v3-ease:cubic-bezier(.2,.8,.2,1);
}
.wrapper{isolation:isolate;}
.head::after{
  content:"";
  position:absolute;
  left:50%; top:45%;
  width:720px; height:720px;
  transform:translate(-50%,-50%) scale(.88);
  border-radius:50%;
  pointer-events:none;
  opacity:0;
  background:radial-gradient(circle, rgba(255,214,126,.26) 0%, rgba(255,180,72,.12) 34%, rgba(255,180,72,0) 68%);
  filter:blur(18px);
  transition:opacity .55s var(--v3-ease), transform .55s var(--v3-ease);
  z-index:0;
}
.wrapper.destiny-awake .head::after{
  opacity:.55;
  transform:translate(-50%,-50%) scale(1);
}
.btnbox{position:relative;z-index:2;}
.lottery{
  position:relative;
  display:block;
  flex:0 0 auto;
  transform:translateZ(0);
  transition:transform .28s var(--v3-ease), filter .28s var(--v3-ease);
  will-change:transform,filter;
  overflow:visible;
  animation:v3LotteryBreath 3.8s ease-in-out infinite;
}
.lottery::before,
.lottery::after{
  content:"";
  position:absolute;
  pointer-events:none;
  border-radius:50%;
  opacity:0;
}
.lottery .btnlight{
  display:block !important;
  opacity:.26 !important;
  animation:v3CorePulse 3.2s ease-in-out infinite !important;
  mix-blend-mode:screen;
  transition:opacity .28s var(--v3-ease), filter .28s var(--v3-ease);
}
.lottery::before{
  inset:24px;
  background:conic-gradient(from 225deg, transparent 0 58%, rgba(255,239,184,.72) 66%, rgba(255,183,69,.38) 72%, transparent 82% 100%);
  filter:blur(.2px);
  mix-blend-mode:screen;
  animation:v3LotteryShine 6s linear infinite;
  opacity:.34;
}
.lottery::after{
  inset:12px;
  box-shadow:0 0 26px rgba(255,181,73,.28), 0 0 56px rgba(255,181,73,.12), inset 0 0 32px rgba(255,213,122,.12);
  opacity:.48;
  animation:v3OuterGlow 3.8s ease-in-out infinite;
}
.lottery:hover{
  transform:translateY(-4px) scale(1.03);
  filter:brightness(1.16) drop-shadow(0 0 22px rgba(255,191,88,.36));
  animation:none;
}
.lottery:hover .btnlight{
  opacity:.72 !important;
  filter:brightness(1.35) drop-shadow(0 0 18px rgba(255,210,110,.5));
}
.lottery:hover::before{
  opacity:.78;
  animation:v3LotteryShineHover 1.05s linear infinite;
}
.lottery:hover::after{opacity:.95;}
.lottery:active{transform:translateY(2px) scale(.97);}
.lottery.is-clicked::after{animation:v3ClickPulse .62s var(--v3-ease) 1;}

@keyframes v3LotteryBreath{
  0%,100%{filter:brightness(1) drop-shadow(0 0 8px rgba(255,171,65,.12));}
  50%{filter:brightness(1.06) drop-shadow(0 0 16px rgba(255,181,73,.24));}
}
@keyframes v3CorePulse{
  0%,100%{opacity:.22;transform:scale(1);filter:brightness(1);}
  50%{opacity:.42;transform:scale(1.012);filter:brightness(1.18);}
}
@keyframes v3OuterGlow{
  0%,100%{opacity:.34;transform:scale(.992);}
  50%{opacity:.62;transform:scale(1.01);}
}
@keyframes v3LotteryShine{
  0%{transform:rotate(0deg);opacity:.2;}
  10%{opacity:.38;}
  30%{opacity:.22;}
  100%{transform:rotate(360deg);opacity:.2;}
}
@keyframes v3LotteryShineHover{to{transform:rotate(360deg);}}
@keyframes v3ClickPulse{
  0%{opacity:.95;transform:scale(.92);box-shadow:0 0 16px rgba(255,211,122,.35), inset 0 0 28px rgba(255,211,122,.18);}
  55%{opacity:1;transform:scale(1.08);box-shadow:0 0 40px rgba(255,211,122,.58),0 0 90px rgba(255,168,58,.22), inset 0 0 38px rgba(255,211,122,.28);}
  100%{opacity:.42;transform:scale(1);box-shadow:0 0 24px rgba(255,181,73,.24),0 0 52px rgba(255,181,73,.1), inset 0 0 30px rgba(255,213,122,.1);}
}
@media (prefers-reduced-motion: reduce){
  .lottery,.lottery::before,.lottery::after,.lottery .btnlight{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important;}
}
@media (max-width:1000px){.lottery:hover{transform:scale(1.01);}}
