.confettipop-tpl{--cpop-paper:#fffaf0;--cpop-coral:#c5462f;--cpop-gold:#fbd97f;--cpop-pink:#f49aa8;--cpop-deep:#3a1a14;--cpop-ink:#2a1810;color:var(--cpop-ink);background:radial-gradient(90% 70% at 50% 100%,#fde2c0 0%,#fff5e0 30%,#fffaf0 60%,#fff 100%);font-family:Fraunces,Noto Serif Georgian,Georgia,serif}.cpop-hero{justify-content:center;align-items:center;min-height:100svh;display:flex;position:relative;overflow:hidden}.cpop-sparkles{pointer-events:none;z-index:1;position:absolute;inset:0}.cpop-sparkle{will-change:opacity, transform;background:radial-gradient(circle,#fff7d0 0%,#fbd97f99 50%,#0000 70%);border-radius:50%;animation:ease-in-out infinite cpop-sparkle-twinkle;position:absolute}@keyframes cpop-sparkle-twinkle{0%,to{opacity:0;transform:scale(.4)rotate(0)}50%{opacity:1;transform:scale(1.4)rotate(180deg)}}.cpop-balloons{pointer-events:none;z-index:2;position:absolute;inset:0;overflow:hidden}.cpop-balloon-wrap{will-change:transform;filter:drop-shadow(0 4px 12px #00000026);animation:linear infinite cpop-balloon-rise;position:absolute;bottom:-50px}.cpop-balloon-svg{display:block}@keyframes cpop-balloon-rise{0%{transform:translate(0,0)}50%{transform:translate3d(var(--sway), -60svh, 0)}to{transform:translateY(-120svh)}}.cpop-rain{pointer-events:none;z-index:3;position:absolute;inset:0;overflow:hidden}.cpop-piece-rain{transform:rotate(var(--rotate-start));will-change:transform, opacity;animation:linear infinite cpop-rain-fall;position:absolute;top:-20px}@keyframes cpop-rain-fall{0%{transform:translate3d(0, 0, 0) rotate(var(--rotate-start));opacity:0}8%{opacity:1}92%{opacity:1}to{transform:translate3d(var(--sway), 110svh, 0) rotate(calc(var(--rotate-start) + 720deg));opacity:0}}.cpop-burst{z-index:4;pointer-events:none;width:0;height:0;position:absolute;top:50%;left:50%}.cpop-piece-burst{opacity:0;will-change:transform, opacity;animation:cubic-bezier(.15,.7,.3,1) forwards cpop-burst-fly;position:absolute;top:0;left:0;transform:translate(-50%,-50%)}@keyframes cpop-burst-fly{0%{opacity:0;transform:translate(-50%,-50%)scale(.3)rotate(0)}10%{opacity:1}60%{opacity:1}to{transform:translate(calc(-50% + var(--tx)), calc(-50% + var(--ty) + 200px)) scale(1) rotate(var(--rot));opacity:0}}.cpop-content{z-index:6;text-align:center;padding:0 1.5rem;animation:1.4s cubic-bezier(.2,.7,.3,1) .3s both cpop-content-in;position:relative}@keyframes cpop-content-in{0%{opacity:0;transform:translateY(30px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.cpop-cake{filter:drop-shadow(0 8px 24px #9b3c2f40);justify-content:center;margin-bottom:1.6rem;display:flex}.cpop-cake-svg{will-change:transform;width:clamp(140px,26vw,220px);height:auto;animation:3.5s ease-in-out infinite cpop-cake-bob}@keyframes cpop-cake-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.cpop-flame-a,.cpop-flame-b{transform-origin:bottom;will-change:transform, opacity;animation:ease-in-out infinite cpop-flame-flicker}.cpop-flame-a{transform-origin:57.5px 16px;animation-duration:.42s}.cpop-flame-b{transform-origin:63.5px 12px;animation-duration:.36s;animation-delay:.14s}@keyframes cpop-flame-flicker{0%,to{opacity:.95;transform:scaleY(1)scaleX(1)rotate(-1deg)}30%{opacity:1;transform:scaleY(1.12)scaleX(.92)rotate(2deg)}60%{opacity:.88;transform:scaleY(.92)scaleX(1.08)rotate(-2deg)}}.cpop-eyebrow{font-family:var(--font-mono,monospace);letter-spacing:.45em;text-transform:uppercase;color:var(--cpop-coral);margin-bottom:1rem;font-size:clamp(.7rem,1.2vw,.84rem)}.cpop-names{font-family:var(--ttl-font,"Fraunces", "Noto Serif Georgian", Georgia, serif);font-variation-settings:"opsz" 144;color:var(--cpop-deep);letter-spacing:-.01em;margin:0;font-size:clamp(2.5rem,8vw,5.5rem);font-style:italic;font-weight:500;line-height:1.02}.cpop-ornament{justify-content:center;align-items:center;gap:1rem;margin:1.4rem 0 1rem;display:flex}.cpop-ornament .ln{background:linear-gradient(90deg, transparent, var(--cpop-coral), transparent);width:clamp(40px,8vw,80px);height:1px;display:block}.cpop-orn-star{color:var(--cpop-gold);text-shadow:0 0 8px #fbd97f99;font-size:1.2rem;animation:4s linear infinite cpop-star-spin;display:inline-block}@keyframes cpop-star-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.cpop-date{font-family:var(--font-mono,monospace);letter-spacing:.32em;text-transform:uppercase;color:var(--cpop-ink);opacity:.85;margin:0;font-size:clamp(.8rem,1.4vw,.95rem)}.cpop-date-roman{color:var(--cpop-coral);letter-spacing:.05em;margin-top:.4rem;font-family:Fraunces,Noto Serif Georgian,Georgia,serif;font-size:clamp(.95rem,1.6vw,1.1rem);font-style:italic}
