.gift-stage{--gift-accent:#ffcf3f;--gift-accent-2:#ff5b9b;--gift-bg-1:#1d1022;--gift-bg-2:#3a1433;--gift-ink:#2b1c22;--gift-paper:#fff8ec;color:#fff7ef;background:radial-gradient(120% 70% at 50% -10%,color-mix(in srgb,var(--gift-accent-2) 34%,transparent),transparent 62%),radial-gradient(90% 60% at 85% 105%,color-mix(in srgb,var(--gift-accent) 20%,transparent),transparent 60%),linear-gradient(160deg,var(--gift-bg-1) 0,var(--gift-bg-2) 55%,var(--gift-bg-1) 100%)}.gift-bokeh{position:absolute;inset:0;overflow:hidden;pointer-events:none}.gift-bokeh span{position:absolute;bottom:-12%;border-radius:9999px;background:radial-gradient(circle,color-mix(in srgb,var(--gift-accent) 70%,white) 0,transparent 68%);opacity:0;animation:gift-drift linear infinite}@keyframes gift-drift{0%{transform:translateZ(0) scale(.8);opacity:0}12%{opacity:.5}to{transform:translate3d(var(--gift-sway,20px),-118vh,0) scale(1.15);opacity:0}}.gift-envelope{position:relative;width:min(78vw,320px);aspect-ratio:3/2;perspective:900px;filter:drop-shadow(0 26px 38px rgba(0,0,0,.45))}.gift-envelope-back,.gift-envelope-front{position:absolute;inset:0;border-radius:14px}.gift-envelope-back{background:linear-gradient(180deg,#f3e3cb,#e9d3b3)}.gift-envelope-card{position:absolute;left:7%;right:7%;top:8%;bottom:10%;border-radius:10px;overflow:hidden;background:#1b1118;box-shadow:0 6px 18px rgba(0,0,0,.25);transform:translateY(0);transition:transform .9s cubic-bezier(.2,.8,.2,1) .38s}.gift-envelope-front{background:linear-gradient(135deg,transparent 49.6%,rgba(120,84,54,.16) 50%,transparent 50.6%) 0 /50% 100% no-repeat,linear-gradient(225deg,transparent 49.6%,rgba(120,84,54,.16) 50%,transparent 50.6%) 100% /50% 100% no-repeat,linear-gradient(180deg,#fff6e6,#f4e3c8);clip-path:polygon(0 0,50% 46%,100% 0,100% 100%,0 100%)}.gift-envelope-flap{position:absolute;left:0;right:0;top:0;height:56%;transform-origin:top center;transform:rotateX(0deg);transition:transform .62s cubic-bezier(.4,0,.2,1);background:linear-gradient(180deg,#fbeed8,#ecd7b6);clip-path:polygon(0 0,100% 0,50% 100%);filter:drop-shadow(0 3px 3px rgba(80,50,30,.2));z-index:3}.gift-envelope-seal{position:absolute;left:50%;top:50%;z-index:4;width:31%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:9999px;transition:transform .42s cubic-bezier(.3,0,.2,1),opacity .42s ease}.gift-envelope.is-open .gift-envelope-flap{transform:rotateX(178deg);z-index:0}.gift-envelope.is-open .gift-envelope-seal{transform:translate(-50%,-50%) scale(.2) rotate(-25deg);opacity:0}.gift-envelope.is-open .gift-envelope-card{transform:translateY(-64%)}.gift-seal-ring{background:conic-gradient(from 210deg,#f9e3a1,#c9912f,#fff1c4,#b97f25,#f9e3a1);padding:4px;border-radius:9999px;box-shadow:0 8px 20px rgba(0,0,0,.35)}.gift-float{animation:gift-float 5.5s ease-in-out infinite}@keyframes gift-float{0%,to{transform:translateY(0) rotate(-1.2deg)}50%{transform:translateY(-9px) rotate(1.2deg)}}.gift-shine{position:relative;overflow:hidden}.gift-shine:after{content:"";position:absolute;inset:0;transform:translateX(-120%);background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.45) 50%,transparent 65%);animation:gift-shine 3.4s ease-in-out infinite}@keyframes gift-shine{0%,55%{transform:translateX(-120%)}to{transform:translateX(120%)}}.gift-rise{opacity:0;transform:translateY(14px);animation:gift-rise .72s cubic-bezier(.2,.8,.2,1) forwards}@keyframes gift-rise{to{opacity:1;transform:translateY(0)}}.gift-fade-out{animation:gift-fade-out .48s ease 1.22s forwards}@keyframes gift-fade-out{to{opacity:0}}.gift-pill-in{animation:gift-pill-in .56s cubic-bezier(.2,.9,.2,1.1) both}@keyframes gift-pill-in{0%{opacity:0;transform:translate(-50%,-140%)}to{opacity:1;transform:translate(-50%)}}.keepsake-paper{color:var(--gift-ink);background:repeating-linear-gradient(0deg,rgba(120,90,60,.035) 0 1px,transparent 1px 3px),radial-gradient(120% 90% at 20% 0,#fffdf6 0,var(--gift-paper) 55%,#f6e9d2 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 24px 50px rgba(0,0,0,.35)}.keepsake-polaroid{background:#fffdf8;box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 18px 40px rgba(0,0,0,.38);transition:transform .26s ease}.keepsake-polaroid:active{transform:scale(.985) rotate(0deg)!important}.keepsake-reveal{opacity:0;transform:translateY(26px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.8,.2,1)}.keepsake-reveal.is-visible{opacity:1;transform:none}.keepsake-rule{height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--gift-accent) 70%,transparent),transparent)}.keepsake-audio{width:100%;height:40px;border-radius:9999px}@media (prefers-reduced-motion:reduce){.gift-bokeh span,.gift-float,.gift-shine:after{animation:none}.gift-pill-in,.gift-rise{animation-duration:1ms}.keepsake-reveal{transition-duration:1ms}.gift-envelope-card,.gift-envelope-flap,.gift-envelope-seal{transition-duration:1ms;transition-delay:0s}}