/* Keep the reward in the flower stage and make the full card visible without user scrolling. */
.seed-focus-v5 .seed-play{display:block!important}
.seed-focus-v5 .seed-stage{
  position:relative;
  min-height:370px;
  padding:26px 22px 58px;
  overflow:hidden;
  transition:min-height .55s cubic-bezier(.2,.85,.25,1),box-shadow .4s ease
}
.seed-focus-v5 .seed-play:not(.has-result) .seed-stage{width:min(100%,620px);margin-inline:auto}
.seed-focus-v5 .seed-play.has-result .seed-stage{min-height:455px}
.seed-focus-v5 .seed-grow{scale:.90;transform-origin:center;transition:opacity .35s ease,transform .35s ease,filter .35s ease}
.seed-focus-v5 .seed-hint{
  position:absolute;
  z-index:45;
  left:18px;
  right:18px;
  bottom:12px;
  margin:0;
  min-height:36px;
  display:flex;
  align-items:center;
  justify-content:center
}
.seed-focus-v5 .seed-empty{margin-top:12px}

/* The original seed disappears once germination starts and cannot return during bloom/result. */
.seed-focus-v5 .seed-grow.seed-consumed .seed-core,
.seed-focus-v5 .seed-play.is-sprouting .seed-core,
.seed-focus-v5 .seed-play.is-blooming .seed-core,
.seed-focus-v5 .seed-play.is-revealing .seed-core,
.seed-focus-v5 .seed-play.has-result .seed-core{
  opacity:0;
  visibility:hidden!important;
  transform:translateX(-50%) rotate(10deg) scale(.05)!important;
  pointer-events:none!important;
  transition:opacity .18s ease,transform .28s ease,visibility 0s linear .18s!important
}

.seed-focus-v5 .reward-burst{
  position:absolute;
  left:var(--burst-x,50%);
  top:var(--burst-y,50%);
  z-index:55;
  width:1px;
  height:1px;
  pointer-events:none
}
.seed-focus-v5 .reward-burst:before,
.seed-focus-v5 .reward-burst:after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  border-radius:50%;
  transform:translate(-50%,-50%) scale(.04);
  opacity:0
}
.seed-focus-v5 .reward-burst:before{
  width:72px;
  height:72px;
  background:radial-gradient(circle,#fff 0 12%,#fff7ba 24%,#ffe170aa 47%,transparent 72%);
  filter:blur(1px)
}
.seed-focus-v5 .reward-burst:after{
  width:154px;
  height:154px;
  border:4px solid #fff3aab8;
  box-shadow:0 0 34px #fff2a8e6,inset 0 0 30px #75e3d5b0
}
.seed-focus-v5 .burst-particle{
  --a:0deg;
  --d:88px;
  --delay:0ms;
  position:absolute;
  left:0;
  top:0;
  width:10px;
  height:10px;
  border-radius:50%;
  opacity:0;
  transform:rotate(var(--a)) translateX(0) rotate(calc(var(--a) * -1)) scale(.12);
  background:radial-gradient(circle at 34% 28%,#fff 0 18%,#ffe56b 38%,#f3aa21 100%);
  filter:drop-shadow(0 0 7px #fff4ae)
}
.seed-focus-v5 .burst-particle.star{
  width:15px;
  height:15px;
  border-radius:0;
  clip-path:polygon(50% 0,61% 34%,98% 35%,68% 56%,79% 94%,50% 72%,21% 94%,32% 56%,2% 35%,39% 34%);
  background:linear-gradient(145deg,#fffef0,#ffe55d 48%,#f1a71d)
}
.seed-focus-v5 .seed-play.is-revealing .reward-burst:before{animation:focusCoreFlash .82s ease-out both}
.seed-focus-v5 .seed-play.is-revealing .reward-burst:after{animation:focusRingBurst 1s ease-out .04s both}
.seed-focus-v5 .seed-play.is-revealing .burst-particle{animation:focusParticleBurst 1.02s cubic-bezier(.13,.78,.25,1) var(--delay) both}
.seed-focus-v5 .seed-play.is-revealing .flower-center{animation:focusCenterPulse .88s ease-out both}

.seed-focus-v5 .seed-result-overlay{
  --from-x:0px;
  --from-y:0px;
  position:absolute!important;
  z-index:40;
  left:50%;
  top:50%;
  width:min(560px,calc(100% - 34px));
  min-height:0!important;
  margin:0!important;
  box-sizing:border-box;
  transform:translate(calc(-50% + var(--from-x)),calc(-50% + var(--from-y))) scale(.035) rotate(-5deg);
  transform-origin:center;
  clip-path:circle(0 at 50% 50%);
  opacity:0;
  visibility:hidden;
  filter:brightness(1.5) saturate(1.15) blur(2px);
  pointer-events:none;
  transition:none!important
}
.seed-focus-v5 .seed-result-overlay.is-show{
  visibility:visible;
  pointer-events:auto;
  animation:focusRecommendation .94s cubic-bezier(.13,1.12,.24,1) .18s both
}
.seed-focus-v5 .seed-result-overlay.is-show .seed-badge{animation:focusContentRise .46s ease-out .31s both}
.seed-focus-v5 .seed-result-overlay.is-show .seed-card{animation:focusContentRise .52s ease-out .36s both}
.seed-focus-v5 .seed-result-overlay.is-show .seed-actions{animation:focusContentRise .54s ease-out .43s both}
.seed-focus-v5 .seed-result-overlay .seed-card{grid-template-columns:126px 1fr;gap:16px;margin:14px 0}
.seed-focus-v5 .seed-result-overlay .seed-card img{width:126px;height:126px}
.seed-focus-v5 .seed-result-overlay .seed-actions{grid-template-columns:1fr auto}
.seed-focus-v5 .seed-play.has-result .seed-grow{
  opacity:.2;
  transform:scale(.94);
  filter:blur(1.5px) saturate(.85)
}
.seed-focus-v5 .seed-play.has-result .seed-flower{opacity:.9}

@keyframes focusCoreFlash{
  0%{transform:translate(-50%,-50%) scale(.04);opacity:0}
  20%{transform:translate(-50%,-50%) scale(1.25);opacity:1}
  100%{transform:translate(-50%,-50%) scale(2.35);opacity:0}
}
@keyframes focusRingBurst{
  0%{transform:translate(-50%,-50%) scale(.06);opacity:0}
  18%{opacity:1}
  100%{transform:translate(-50%,-50%) scale(1.8);opacity:0}
}
@keyframes focusParticleBurst{
  0%{transform:rotate(var(--a)) translateX(0) rotate(calc(var(--a) * -1)) scale(.1);opacity:0}
  14%{opacity:1}
  72%{opacity:1}
  100%{transform:rotate(var(--a)) translateX(var(--d)) rotate(calc(var(--a) * -1)) scale(1.12);opacity:0}
}
@keyframes focusCenterPulse{
  0%,100%{filter:brightness(1);transform:translate(-50%,-50%) scale(1)}
  32%{filter:brightness(1.75) saturate(1.35);transform:translate(-50%,-50%) scale(1.28)}
  67%{transform:translate(-50%,-50%) scale(.95)}
}
@keyframes focusRecommendation{
  0%{transform:translate(calc(-50% + var(--from-x)),calc(-50% + var(--from-y))) scale(.035) rotate(-5deg);clip-path:circle(0 at 50% 50%);opacity:0;filter:brightness(1.55) saturate(1.2) blur(2px)}
  26%{opacity:1}
  62%{transform:translate(-50%,-50%) scale(1.055) rotate(.7deg);clip-path:circle(170% at 50% 50%);opacity:1;filter:none}
  82%{transform:translate(-50%,-50%) scale(.985) rotate(-.2deg);clip-path:circle(170% at 50% 50%);opacity:1;filter:none}
  100%{transform:translate(-50%,-50%) scale(1);clip-path:circle(170% at 50% 50%);opacity:1;filter:none}
}
@keyframes focusContentRise{
  0%{transform:translateY(18px) scale(.94);opacity:0}
  100%{transform:none;opacity:1}
}

@media(max-width:720px){
  .seed-focus-v5 .seed-stage{min-height:370px;padding:22px 14px 58px}
  .seed-focus-v5 .seed-play.has-result .seed-stage{min-height:455px}
  .seed-focus-v5 .seed-grow{scale:.88}
  .seed-focus-v5 .seed-result-overlay{width:calc(100% - 24px);padding:17px 15px}
  .seed-focus-v5 .seed-result-overlay .seed-card{grid-template-columns:88px 1fr;gap:11px;margin:12px 0}
  .seed-focus-v5 .seed-result-overlay .seed-card img{width:88px;height:88px;border-radius:16px}
  .seed-focus-v5 .seed-result-overlay .seed-card h3{font-size:18px}
  .seed-focus-v5 .seed-result-overlay .seed-actions{grid-template-columns:1fr;gap:8px}
  .seed-focus-v5 .seed-result-overlay .seed-actions a,
  .seed-focus-v5 .seed-result-overlay .seed-actions button{min-height:43px}
  .seed-focus-v5 .burst-particle{--d:66px}
  .seed-focus-v5 .reward-burst:after{width:122px;height:122px}
}
@media(max-width:390px){
  .seed-focus-v5 .seed-result-overlay .seed-card{grid-template-columns:76px 1fr}
  .seed-focus-v5 .seed-result-overlay .seed-card img{width:76px;height:76px}
  .seed-focus-v5 .seed-result-overlay .seed-card p{font-size:11px;line-height:1.55}
}
@media(prefers-reduced-motion:reduce){
  .seed-focus-v5 .seed-result-overlay,
  .seed-focus-v5 .seed-result-overlay.is-show{
    transform:translate(-50%,-50%)!important;
    clip-path:none!important;
    opacity:1!important;
    visibility:visible!important;
    filter:none!important;
    animation:none!important
  }
  .seed-focus-v5 .reward-burst{display:none!important}
}
