.festival.svelte-2iji5b{--night:#2a0505;--crimson:#a3141b;--lacquer:#c8202a;--gold:#f7c948;--amber:#e9a23b;--paper:#fbeedd;--silk:#f3d9c4;color:var(--paper);background:radial-gradient(1100px 600px at 50% -10%, #8f1a1a 0%, transparent 60%), radial-gradient(800px 500px at 100% 50%, #5c0a0a 0%, transparent 60%), linear-gradient(180deg, #5c0a0a 0%, var(--night) 60%, #170202 100%);padding:0 16px 120px;font-family:Crimson Pro,Georgia,Times New Roman,serif;position:relative;overflow:hidden}.sky.svelte-2iji5b{pointer-events:none;height:600px;position:absolute;inset:0 0 auto}.lantern.svelte-2iji5b{transform-origin:top;flex-direction:column;align-items:center;animation:4s ease-in-out infinite alternate svelte-2iji5b-sway;display:flex;position:absolute;top:0}.lantern-0.svelte-2iji5b{left:5%}.lantern-1.svelte-2iji5b{animation-delay:-1.5s;left:18%}.lantern-1.svelte-2iji5b .cord:where(.svelte-2iji5b){height:90px}.lantern-2.svelte-2iji5b{animation-delay:-.8s;right:18%}.lantern-2.svelte-2iji5b .cord:where(.svelte-2iji5b){height:70px}.lantern-3.svelte-2iji5b{animation-delay:-2.2s;right:5%}.cord.svelte-2iji5b{background:var(--gold);width:2px;height:40px}.body.svelte-2iji5b{background:repeating-linear-gradient(90deg, transparent 0 10px, #0000001f 10px 11px), radial-gradient(circle at 50% 40%, #ff5a4a, var(--lacquer) 60%, #7a0d12);border-top:5px solid var(--gold);border-bottom:5px solid var(--gold);border-radius:50%;place-items:center;width:64px;height:52px;display:grid;position:relative;box-shadow:0 0 30px #ff5a3c8c}.fu.svelte-2iji5b{color:var(--gold);font-family:Ma Shan Zheng,serif;font-size:1.4rem}.tassel.svelte-2iji5b{background:linear-gradient(180deg, var(--gold), transparent);border-radius:0 0 3px 3px;width:6px;height:26px}@keyframes svelte-2iji5b-sway{0%{transform:rotate(-4deg)}to{transform:rotate(4deg)}}.burst.svelte-2iji5b{background:repeating-conic-gradient(#f7c948b3 0 2deg, transparent 2deg 15deg);opacity:0;border-radius:50%;width:160px;height:160px;animation:4.5s ease-out infinite svelte-2iji5b-burst;position:absolute;-webkit-mask:radial-gradient(circle,#0000 20%,#000 22% 48%,#0000 50%);mask:radial-gradient(circle,#0000 20%,#000 22% 48%,#0000 50%)}.burst-0.svelte-2iji5b{top:150px;left:30%}.burst-1.svelte-2iji5b{width:120px;height:120px;animation-delay:-2.2s;top:70px;right:30%}@keyframes svelte-2iji5b-burst{0%{opacity:0;transform:scale(.2)}10%{opacity:1}60%{opacity:0;transform:scale(1.1)}to{opacity:0}}.hero.svelte-2iji5b{text-align:center;max-width:780px;margin:0 auto;padding:110px 0 40px;position:relative}.greeting.svelte-2iji5b{color:var(--gold);letter-spacing:.12em;text-shadow:0 0 18px #f7c94873;margin:0 0 8px;font-family:Ma Shan Zheng,serif;font-size:clamp(2.2rem,7vw,3.4rem)}.kicker.svelte-2iji5b{letter-spacing:.22em;text-transform:uppercase;color:var(--silk);font-size:.85rem}h1.svelte-2iji5b{color:var(--gold);text-shadow:0 3px #5c0a0a,0 0 22px #f7c94859;margin:10px 0 14px;font-family:Playfair Display,Georgia,serif;font-size:clamp(2.4rem,8vw,4.6rem);font-weight:700;line-height:1.08}.badge.svelte-2iji5b{border:1px solid var(--gold);color:var(--gold);text-transform:none;border-radius:999px;margin:0 0 18px;padding:4px 16px;font-size:1.15rem;font-style:italic;display:inline-block}.lede.svelte-2iji5b{max-width:640px;margin:0 auto;font-size:1.3rem;line-height:1.55}.toc.svelte-2iji5b{flex-wrap:wrap;justify-content:center;gap:8px 18px;margin-top:28px;display:flex}.toc.svelte-2iji5b a:where(.svelte-2iji5b){color:var(--gold);border-bottom:1px dashed #f7c94880;font-size:1.15rem;font-style:italic}.toc.svelte-2iji5b a:where(.svelte-2iji5b):hover{color:#fff;text-decoration:none}.envelope-btn.svelte-2iji5b{color:#4a0707;font:inherit;cursor:pointer;background:linear-gradient(#ffd766,#e9a23b);border:1px solid #ffe08a;border-radius:999px;align-items:center;gap:10px;margin-top:30px;padding:12px 22px;font-size:1.15rem;font-weight:600;transition:transform .15s,box-shadow .15s;display:inline-flex;box-shadow:0 0 24px #f7c94859}.envelope-btn.svelte-2iji5b:hover{transform:translateY(-2px);box-shadow:0 0 36px #f7c9488c}.envelope-btn.svelte-2iji5b:focus-visible{outline-offset:3px;outline:2px solid #fff}.envelope-btn.svelte-2iji5b svg:where(.svelte-2iji5b){color:#4a0707;width:24px;height:24px}.envelope-btn.svelte-2iji5b svg:where(.svelte-2iji5b) rect:where(.svelte-2iji5b){fill:var(--paper)}.section.svelte-2iji5b{max-width:1080px;margin:0 auto;padding-top:64px;scroll-margin-top:16px;position:relative}h2.svelte-2iji5b{color:var(--gold);text-align:center;margin:0;font-family:Playfair Display,Georgia,serif;font-size:clamp(1.9rem,5.5vw,2.7rem);font-weight:700}.section-intro.svelte-2iji5b{text-align:center;color:var(--silk);margin:8px 0 28px;font-size:1.2rem;font-style:italic}.cards.svelte-2iji5b{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px;margin:0;padding:0;list-style:none;display:grid}.card.svelte-2iji5b{background:linear-gradient(#781014cc,#2e0606f0);border:1px solid #f7c94840;border-radius:12px;scroll-margin:80px;transition:transform .2s,border-color .2s,box-shadow .2s;position:relative;box-shadow:0 10px 30px #00000073,inset 0 0 0 4px #f7c9480d}.card.svelte-2iji5b:hover,.card.svelte-2iji5b:focus-within{border-color:#f7c948bf;transform:translateY(-4px);box-shadow:0 14px 36px #0000008c,0 0 26px #f7c94833}.card-link.svelte-2iji5b{height:100%;color:inherit;flex-direction:column;padding:20px 20px 18px;display:flex}.card-link.svelte-2iji5b:hover{text-decoration:none}.when.svelte-2iji5b{letter-spacing:.14em;text-transform:uppercase;color:var(--silk);font-size:.8rem}.card.svelte-2iji5b .word:where(.svelte-2iji5b){color:var(--gold);margin-top:4px;font-family:Playfair Display,Georgia,serif;font-size:1.8rem;line-height:1.15}.from.svelte-2iji5b{color:var(--amber);margin-top:2px;font-size:1.08rem;font-style:italic}.card.svelte-2iji5b .text:where(.svelte-2iji5b){flex:1;margin-top:12px;font-size:1.15rem;line-height:1.5}.more.svelte-2iji5b{color:#ffb4a8;margin-top:14px;font-size:1rem}.card-link.svelte-2iji5b:hover .more:where(.svelte-2iji5b){text-decoration:underline}.picked.svelte-2iji5b{animation:1.2s ease-in-out 3 svelte-2iji5b-lucky;border-color:var(--gold)!important}@keyframes svelte-2iji5b-lucky{0%,to{box-shadow:0 0 #f7c94800}50%{box-shadow:0 0 46px #f7c948cc}}.envelopes.svelte-2iji5b{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:22px;margin:0;padding:0;list-style:none;display:grid}.hongbao.svelte-2iji5b{text-align:center;background:radial-gradient(circle at 50% 0,#ffffff1f,#0000 55%),linear-gradient(#d42a30,#9e1218);border:2px solid #f7c9488c;border-radius:10px;scroll-margin:80px;transition:transform .2s;position:relative;box-shadow:0 12px 26px #00000080}.hongbao.svelte-2iji5b:before{content:"";background:#00000014;border-bottom:1px solid #f7c94880;border-radius:0 0 50% 50%;height:46px;position:absolute;top:0;left:0;right:0}.hongbao.svelte-2iji5b:hover,.hongbao.svelte-2iji5b:focus-within{transform:translateY(-4px)}.hongbao.current.svelte-2iji5b{border-color:var(--gold);box-shadow:0 0 0 4px #f7c94840,0 0 40px #f7c94873}.hongbao.svelte-2iji5b a:where(.svelte-2iji5b){color:inherit;flex-direction:column;align-items:center;padding:12px 18px 22px;display:flex;position:relative}.hongbao.svelte-2iji5b a:where(.svelte-2iji5b):hover{text-decoration:none}.year.svelte-2iji5b{letter-spacing:.16em;text-transform:uppercase;color:var(--silk);font-size:.75rem}.current.svelte-2iji5b .year:where(.svelte-2iji5b){color:var(--gold);font-weight:600}.zi.svelte-2iji5b{background:radial-gradient(circle at 40% 35%, #ffe08a, var(--gold) 60%, #c8901f);color:#8a0f14;border-radius:50%;place-items:center;width:64px;height:64px;margin-top:14px;font-family:Ma Shan Zheng,serif;font-size:2.3rem;line-height:1;display:grid;box-shadow:0 2px 6px #00000059}.hongbao.svelte-2iji5b .word:where(.svelte-2iji5b){color:var(--gold);text-transform:capitalize;margin-top:8px;font-family:Playfair Display,Georgia,serif;font-size:1.6rem}.hongbao.svelte-2iji5b .text:where(.svelte-2iji5b){color:var(--paper);margin-top:6px;font-size:1.06rem;line-height:1.45}.hongbao.svelte-2iji5b a:where(.svelte-2iji5b):hover .word:where(.svelte-2iji5b){text-decoration:underline}.outro.svelte-2iji5b{z-index:1;text-align:center;max-width:680px;color:var(--silk);margin:80px auto 0;font-size:1.15rem;line-height:1.6;position:relative}.outro.svelte-2iji5b a:where(.svelte-2iji5b){color:var(--gold)}.sign-off.svelte-2iji5b{color:var(--gold);margin-top:18px;font-family:Playfair Display,Georgia,serif;font-size:2.2rem}@media (width<=640px){.lantern-1.svelte-2iji5b,.lantern-2.svelte-2iji5b{display:none}.body.svelte-2iji5b{width:48px;height:40px}.fu.svelte-2iji5b{font-size:1.1rem}.lede.svelte-2iji5b{font-size:1.15rem}}@media (prefers-reduced-motion:reduce){.lantern.svelte-2iji5b,.burst.svelte-2iji5b,.picked.svelte-2iji5b{animation:none}.burst.svelte-2iji5b{display:none}.card.svelte-2iji5b,.hongbao.svelte-2iji5b,.envelope-btn.svelte-2iji5b{transition:none}}
