.new-year-gift-overlay{position:fixed;inset:0;z-index:2147483002;overflow:hidden;background:transparent;touch-action:manipulation;isolation:isolate}.new-year-gift-overlay.with-backdrop{background:#fff}.new-year-gift-overlay canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;background:transparent}.new-year-gift-card{border:1px solid #bc8b36;background:linear-gradient(140deg,#fcf2dc,#f7e7ed 60%,#eee5f7)}.new-year-rarity{font-size:11px;color:#8b5b20;letter-spacing:.13em}.new-year-gift-card>p{font-size:12px;line-height:1.8}.new-year-gift-card>small{display:block;line-height:1.7}.new-year-gift-card>button{width:100%}.new-year-mystery{font:100px Georgia,serif;color:#8b7d6e;width:160px;height:180px;margin:auto;display:flex;align-items:center;justify-content:center;border-radius:45% 45% 20% 20%;background:linear-gradient(140deg,#ddd8cf,#f3f0e9);text-shadow:0 2px 0 #fff}.new-year-mystery.small{height:100px;width:90px;font-size:70px}.new-year-history{text-align:left;font-size:11px;width:100%;margin-top:10px}.new-year-history>p{border-top:1px solid #c8bda655;padding-top:7px}.new-year-home-shortcut{background:linear-gradient(110deg,#fff6dc,#f7e6ec);border-color:#c6a35d}.new-year-home-shortcut img{width:145px;height:65px;object-fit:contain}#new-year-appreciate-form>label{display:block;margin:15px 0}#new-year-minute-form input{display:block;width:100%;padding:12px;margin-top:8px}.new-year-gift-card.locked{filter:none}.new-year-gift-card.locked .new-year-mystery{filter:grayscale(1)}
.new-year-gift-card{grid-column:span 2;gap:8px;padding:24px}.new-year-gift-card .gift-picture{width:100%;max-width:380px;height:165px;object-fit:contain}.new-year-gift-card>strong{font-size:24px;color:#80521f}.new-year-gift-card>p{margin:8px 0}.new-year-gift-card>small{font-size:11px}.new-year-gift-card .new-year-mystery{height:165px}@media(max-width:600px){.new-year-gift-card{padding:20px 16px}.new-year-gift-card .gift-picture{height:140px}}
.new-year-gift-card{position:relative}
.new-year-gift-card>.new-year-tree-entry{position:absolute;top:10px;right:10px;z-index:1;display:grid;place-items:center;width:34px;height:34px;padding:0;border:1px solid #d6aa53;border-radius:50%;color:#7d4d10;background:#fff6d8;box-shadow:0 2px 6px #8a55132b;cursor:pointer}
.new-year-gift-card>.new-year-tree-entry:hover{background:#ffe7a6}
#new-year-tree-draw{text-align:center}
.new-year-tree-scene{position:relative;width:min(100%,360px);margin:auto;overflow:hidden;isolation:isolate;border:1px solid #d8aa57;border-radius:20px;background:radial-gradient(ellipse at 50% 45%,#8f501b,#482015 56%,#2b130e);box-shadow:inset 0 0 0 4px #d8aa572e,0 10px 22px #65381824}
.new-year-tree-scene::before{content:"";position:absolute;inset:5%;border-radius:50%;background:radial-gradient(ellipse,#fff2a67d,transparent 70%);opacity:0;pointer-events:none}
.new-year-tree-scene img{
  position:relative;
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:6 / 5;
  object-fit:contain;
  box-sizing:border-box;
  padding:8px;
  transform-origin:50% 88%;
  filter:drop-shadow(0 7px 10px #1d0b0a99);
}
.new-year-tree-result{min-height:1.4em;margin:.65em 0 .25em;font-size:1.2rem;font-weight:700;color:#8b4d10}
.new-year-tree-balance{color:#634d36}
.new-year-tree-coin{
  position:absolute;
  top:29%;
  width:clamp(15px,7%,26px);
  aspect-ratio:1;
  display:grid;
  place-items:center;
  border:2px solid transparent;
  border-radius:50%;
  background:linear-gradient(150deg,#fff6cf,#d79a22 52%,#934b0b 55%,#ffdb70 90%) padding-box,
    conic-gradient(from 30deg,#fff3b7,#aa6314,#ffeb8d,#bc7214,#fff3b7) border-box;
  box-shadow:inset 0 0 0 1px #73390e,0 0 8px #ffd36b9c;
  opacity:0;
  pointer-events:none;
}
.new-year-tree-coin::after{content:"";width:26%;aspect-ratio:1;background:#a5641a;border:1px solid #ffed9b;transform:rotate(12deg)}
.new-year-tree-coin:nth-of-type(4n+1){left:23%;--drift:-52px;--spin:160deg}
.new-year-tree-coin:nth-of-type(4n+2){left:39%;top:24%;--drift:-22px;--spin:-95deg}
.new-year-tree-coin:nth-of-type(4n+3){left:57%;top:25%;--drift:20px;--spin:115deg}
.new-year-tree-coin:nth-of-type(4n){left:72%;--drift:49px;--spin:-138deg}
.new-year-tree-coin:nth-of-type(n+5){--delay:.92s}
.new-year-tree-coin:nth-of-type(n+9){--delay:1.48s}
.new-year-tree-coin:nth-of-type(even){--offset:.14s}
.new-year-tree-scene.shaking::before{animation:new-year-tree-glow 3s ease-in-out}
.new-year-tree-scene.shaking img{animation:new-year-tree-shake 3s ease-in-out}
.new-year-tree-scene.shaking .new-year-tree-coin{animation:new-year-tree-coin-fall 1.35s calc(var(--delay,.33s) + var(--offset,0s)) ease-in both}
@keyframes new-year-tree-shake{0%,100%{transform:rotate(0)}12%,32%{transform:rotate(-7deg)}22%,42%{transform:rotate(7deg)}54%,72%{transform:rotate(-4deg)}63%,82%{transform:rotate(4deg)}92%{transform:rotate(-1deg)}}
@keyframes new-year-tree-glow{0%,100%{opacity:0}20%,56%{opacity:1;transform:scale(1.35)}36%,76%{opacity:.53;transform:scale(1.12)}}
@keyframes new-year-tree-coin-fall{
  0%{opacity:0;transform:translate(0,0) rotate(-22deg) rotateY(15deg) scale(.68)}
  17%{opacity:1;transform:translate(calc(var(--drift) * .35),-32px) rotate(12deg) rotateY(135deg)}
  76%{opacity:1}
  100%{opacity:0;transform:translate(var(--drift),clamp(90px,23vw,165px)) rotate(var(--spin)) rotateY(740deg) scale(.75)}
}
@media(prefers-reduced-motion:reduce){.new-year-tree-scene.shaking img,.new-year-tree-scene.shaking::before,.new-year-tree-scene.shaking .new-year-tree-coin{animation:none}}
.new-year-gift-overlay,.new-year-gift-overlay canvas{
  top:0;
  right:0;
  bottom:0;
  left:0;
}
.new-year-compatible-button{
  display:none;
  position:absolute;
  top:12px;
  right:12px;
  z-index:2;
  padding:7px 12px;
  border:1px solid #c8a25b;
  border-radius:18px;
  color:#684013;
  background:#fff9e9;
  font-size:12px;
}
@media (max-width:700px),(pointer:coarse){
  .new-year-compatible-button:not([hidden]){display:block}
}
.new-year-compatible-stage{
  position:absolute;
  top:50%;
  left:50%;
  width:90%;
  max-width:900px;
  text-align:center;
  pointer-events:none;
  transform:translate(-50%,-50%);
}
.new-year-compatible-stage img{
  display:block;
  width:100%;
  max-height:62vh;
  margin:auto;
  object-fit:contain;
  animation:new-year-compatible-float 4s ease-in-out infinite alternate;
}
.new-year-compatible-stage span{
  display:inline-block;
  padding:6px 15px;
  border:1px solid #dfb65c;
  border-radius:18px;
  color:#ffe7a7;
  background:#7b2431;
}
@keyframes new-year-compatible-float{
  from{transform:translateY(5px) scale(.97)}
  to{transform:translateY(-5px) scale(1)}
}
@media (prefers-reduced-motion:reduce){
  .new-year-compatible-stage img{animation:none}
}
.new-year-gift-overlay[data-phase="game"]{top:0;right:0;bottom:0;left:0;display:block}
.new-year-gift-overlay [hidden]{display:none!important}
.new-year-game-error{position:absolute;z-index:20;top:50%;left:50%;width:88%;max-width:460px;box-sizing:border-box;transform:translate(-50%,-50%);padding:24px;border:1px solid #d6ad62;border-radius:18px;background:#fff8e8;color:#472b30;text-align:center;font:15px/1.8 sans-serif}
.new-year-game-error h2{font-size:20px;color:#472b30}
.new-year-game-error button{padding:12px 20px;border:1px solid #ceab64;border-radius:9px;background:#633044;color:#fff4d5;font:15px sans-serif}
