.star-backdrop[data-v-e5bb501d]{position:fixed;inset:0;overflow:hidden;pointer-events:none;isolation:isolate}.star-backdrop[data-v-e5bb501d]:after{content:"";position:absolute;inset:0;z-index:1;background:radial-gradient(ellipse at 50% 48%,#090710c9 0%,#09071099 22%,#09071026 48%,transparent 69%);opacity:0;transition:opacity 1.8s ease}.star-backdrop.is-quiet[data-v-e5bb501d]:after{opacity:1}.starfield-texture[data-v-e5bb501d]{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.58;-webkit-mask-image:radial-gradient(ellipse at 50% 45%,#0008,#000 75%);mask-image:radial-gradient(ellipse at 50% 45%,#0008,#000 75%)}.background-star[data-v-e5bb501d]{position:absolute;border-radius:50%;background:#eee7ff;box-shadow:0 0 3px #d4afff66;animation:twinkle-e5bb501d 6s ease-in-out infinite alternate}.background-star[data-v-e5bb501d]:nth-of-type(7n):before,.background-star[data-v-e5bb501d]:nth-of-type(7n):after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:linear-gradient(transparent,#e9dbffbb,transparent);width:1px;height:7px}.background-star[data-v-e5bb501d]:nth-of-type(7n):after{transform:translate(-50%,-50%) rotate(90deg);height:5px}.meteor[data-v-e5bb501d]{position:absolute;z-index:2;height:1.5px;background:linear-gradient(90deg,transparent,#c6b4ee38 20%,#e5d7ffbf 62%,#fff5ff 100%);opacity:0;transform-origin:right center;transform:rotate(35deg);filter:drop-shadow(0 0 3px #ccb2ff80);animation:shooting-e5bb501d 15s linear infinite}.meteor[data-v-e5bb501d]:after{content:"";position:absolute;right:-1px;top:-1px;width:3.5px;height:3.5px;border-radius:50%;background:#fffaff;box-shadow:0 0 5px #fff4ff,0 0 12px #d4b1ffbb}@keyframes twinkle-e5bb501d{0%{opacity:.12}to{opacity:.65}}@keyframes shooting-e5bb501d{0%{opacity:0;transform:translate(-60px,-42px) rotate(35deg)}2%{opacity:.95}15%{opacity:.95}23%,to{opacity:0;transform:translate(var(--meteor-x),var(--meteor-y)) rotate(35deg)}}@media(max-width:600px){.meteor[data-v-e5bb501d]:nth-of-type(3n){display:none}.starfield-texture[data-v-e5bb501d]{opacity:.48}}@media(prefers-reduced-motion:reduce){.star-backdrop[data-v-e5bb501d]:after{transition:none}.background-star[data-v-e5bb501d]{animation:none;opacity:.3}.meteor[data-v-e5bb501d]{display:none}}.fireworks-canvas[data-v-c2004d11]{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:5}.letter-reveal[data-v-91cc1306]{width:100%;max-width:680px;margin:0 auto}.envelope-scene[data-v-91cc1306]{position:relative;isolation:isolate;display:flex;flex-direction:column;align-items:center;padding:50px 0 25px}.envelope-halo[data-v-91cc1306]{position:absolute;inset:0 -18%;z-index:-1;background:radial-gradient(ellipse,#cb83a428,#6e4b8c10 40%,transparent 69%);pointer-events:none}.envelope-button[data-v-91cc1306]{display:block;position:relative;width:min(360px,86%);aspect-ratio:1.52;margin:0;padding:0;border:0;border-radius:5px;color:#654250;background:transparent;box-shadow:none;appearance:none;perspective:1000px;cursor:pointer;letter-spacing:normal;-webkit-tap-highlight-color:transparent}.envelope-button[data-v-91cc1306]:hover,.envelope-button[data-v-91cc1306]:active{background:transparent;transform:none}.envelope-button[data-v-91cc1306]:focus-visible{outline:2px solid #e8bbc9;outline-offset:16px}.envelope-inner[data-v-91cc1306]{position:absolute;inset:0;display:block;transform:rotate(-4deg) rotateX(7deg);transition:transform .65s cubic-bezier(.2,.7,.2,1);filter:drop-shadow(0 24px 27px #08061160)}.envelope-button:hover .envelope-inner[data-v-91cc1306]{transform:translateY(-9px) rotate(-1deg) rotateX(0)}.envelope-body[data-v-91cc1306]{position:absolute;inset:0;border:1px solid #d7a4ab;border-radius:5px;background:linear-gradient(140deg,#f4dfd8,#e7bfbd)}.envelope-note[data-v-91cc1306]{position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;top:-22px;left:7%;right:7%;height:86%;padding-top:10px;border:1px solid #f2e6d5;border-radius:3px;background:linear-gradient(120deg,#fffaf1,#f5ebdf);transform:rotate(1deg);transition:transform .65s ease}.envelope-button:hover .envelope-note[data-v-91cc1306]{transform:translateY(-13px) rotate(1deg)}.note-star[data-v-91cc1306]{font:23px Georgia,serif;color:#b38484;line-height:1}.note-label[data-v-91cc1306]{margin-top:7px;color:#826b69;font-size:10px;letter-spacing:3px}.envelope-fold[data-v-91cc1306]{position:absolute;inset:0;display:block;border-radius:4px}.envelope-fold-left[data-v-91cc1306]{clip-path:polygon(0 0,57% 63%,0 100%);background:linear-gradient(120deg,#f3d7cf,#e8c0bb)}.envelope-fold-right[data-v-91cc1306]{clip-path:polygon(100% 0,43% 63%,100% 100%);background:linear-gradient(240deg,#f7ddd2,#dfb5b3)}.envelope-fold-bottom[data-v-91cc1306]{clip-path:polygon(0 100%,0 96%,50% 43%,100% 96%,100% 100%);background:linear-gradient(0deg,#eecbc2,#f2d9cd)}.envelope-flap[data-v-91cc1306]{position:absolute;inset:0;clip-path:polygon(0 0,100% 0,52% 61%,48% 61%);background:linear-gradient(172deg,#f8e1d7,#e7bfba 72%);filter:drop-shadow(0 3px 2px #985e6d35)}.wax-seal[data-v-91cc1306]{position:absolute;left:50%;top:46%;display:grid;place-items:center;width:50px;aspect-ratio:1;border:1px solid #c48c89;border-radius:47% 53% 48% 52%/52% 47% 53% 48%;background:radial-gradient(ellipse at 35% 24%,#e5b3a1,#be827b 53%,#ac6e70);box-shadow:0 4px 7px #7f48583d,inset 0 0 0 4px #ddab9760,inset 0 0 0 5px #a46b702b;transform:translate(-50%)}.wax-seal svg[data-v-91cc1306]{width:31px;height:31px;stroke:#ffe0bf;stroke-width:1;opacity:.9}.seal-detail[data-v-91cc1306]{opacity:.4}.envelope-recipient[data-v-91cc1306]{position:absolute;bottom:12%;right:9%;max-width:70%;font:italic 15px Kaiti SC,STKaiti,KaiTi,Georgia,serif;color:#9b6b6d;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.envelope-hint[data-v-91cc1306]{margin:42px 0 0;color:#c4afc3;font-size:11px;letter-spacing:3px;line-height:1.8;text-align:center}.letter-paper[data-v-91cc1306]{position:relative;width:100%;padding:clamp(38px,6vw,62px) clamp(25px,7vw,66px) 30px;border:1px solid #e5ccb2;border-radius:3px 3px 6px 6px;color:#655159;background:radial-gradient(ellipse at 0 0,#f3ded84a,transparent 55%),radial-gradient(ellipse at 100% 100%,#e8d8c848,transparent 60%),linear-gradient(130deg,#fcf7ef,#f6eee3);box-shadow:0 30px 100px #04030b55,inset 0 0 60px #d6bd9d0d;text-align:left;overflow-wrap:anywhere;outline:none}.letter-paper[data-v-91cc1306]:before{content:"";position:absolute;inset:11px;border:1px solid #bd9b7f2b;pointer-events:none}.letter-heading[data-v-91cc1306]{display:flex;flex-direction:column;align-items:center;text-align:center;margin-bottom:36px}.letter-kicker[data-v-91cc1306]{font:8px/1.6 Georgia,serif;letter-spacing:3px;color:#ac8a7d}.letter-heading h2[data-v-91cc1306]{margin:16px 0 17px;color:#855d66;font:400 clamp(22px,4.2vw,30px)/1.6 "Kaiti SC",STKaiti,KaiTi,"Songti SC",serif;letter-spacing:3px}.letter-heading-line[data-v-91cc1306]{width:60px;height:1px;background:linear-gradient(90deg,transparent,#bf9e8b,transparent)}.letter-salutation[data-v-91cc1306]{margin:0 0 22px;color:#805b64;font:400 17px/1.9 Kaiti SC,STKaiti,KaiTi,Songti SC,serif;letter-spacing:1px}.letter-paragraphs p[data-v-91cc1306]{margin:0 0 19px;color:#716068;font:400 14px/2.15 Songti SC,SimSun,"Noto Serif SC",serif;letter-spacing:.7px;white-space:pre-line}.letter-closing[data-v-91cc1306]{margin:27px 0 32px;text-align:right}.closing-star[data-v-91cc1306]{color:#bd9a85;display:block;margin-bottom:13px;font-size:18px}.letter-signature[data-v-91cc1306]{margin:0;font:400 21px/1.8 Kaiti SC,STKaiti,KaiTi,Songti SC,serif;color:#895b66;letter-spacing:2px}.letter-date[data-v-91cc1306]{margin:7px 0 0;color:#aa948b;font-size:10px;letter-spacing:1.5px;line-height:1.7}.paper-footnote[data-v-91cc1306]{position:relative;display:flex;align-items:center;justify-content:center;gap:12px;color:#ad9589;font:9px/1.7 Songti SC,SimSun,serif;letter-spacing:1px;text-align:center}.paper-footnote span[data-v-91cc1306]{width:18px;height:1px;background:#b79b8845;flex-shrink:0}.paper-corner[data-v-91cc1306]{position:absolute;font:20px Georgia,serif;color:#b99a80;line-height:1}.paper-corner-top[data-v-91cc1306]{left:22px;top:21px}.paper-corner-bottom[data-v-91cc1306]{right:22px;bottom:21px}.letter-enter-active[data-v-91cc1306]{transition:opacity .55s ease,transform .7s cubic-bezier(.2,.7,.2,1)}.letter-leave-active[data-v-91cc1306]{transition:opacity .32s ease,transform .35s ease}.letter-enter-from[data-v-91cc1306]{opacity:0;transform:translateY(22px) rotateX(-3deg)}.letter-leave-to[data-v-91cc1306]{opacity:0;transform:translateY(-12px) scale(.98)}@media(max-width:500px){.envelope-scene[data-v-91cc1306]{padding-top:42px}.envelope-hint[data-v-91cc1306]{letter-spacing:2px;font-size:10px}.envelope-note[data-v-91cc1306]{top:-18px}.note-label[data-v-91cc1306]{font-size:8px;letter-spacing:2px}.wax-seal[data-v-91cc1306]{width:43px}.wax-seal svg[data-v-91cc1306]{width:27px;height:27px}.letter-heading[data-v-91cc1306]{margin-bottom:28px}.letter-heading h2[data-v-91cc1306]{letter-spacing:2px}.letter-paragraphs p[data-v-91cc1306]{font-size:13px;line-height:2.1}.letter-kicker[data-v-91cc1306]{font-size:7px;letter-spacing:2px}.paper-footnote[data-v-91cc1306]{gap:7px;font-size:8px;letter-spacing:.5px}.paper-footnote span[data-v-91cc1306]{width:12px}}@media(prefers-reduced-motion:reduce){.envelope-inner[data-v-91cc1306],.envelope-note[data-v-91cc1306],.letter-enter-active[data-v-91cc1306],.letter-leave-active[data-v-91cc1306]{transition:none}.letter-enter-from[data-v-91cc1306],.letter-leave-to[data-v-91cc1306],.envelope-button:hover .envelope-inner[data-v-91cc1306],.envelope-button:hover .envelope-note[data-v-91cc1306]{transform:none}}.letter-sakura[data-v-8c3f1449]{position:fixed;inset:0;z-index:3;overflow:hidden;pointer-events:none;opacity:0;transition:opacity .9s ease}.letter-sakura.is-visible[data-v-8c3f1449]{opacity:1}.still-petal[data-v-8c3f1449]{position:absolute;width:11px;height:17px;border-radius:68% 34% 60% 36%;background:linear-gradient(130deg,#f49ab8,#b85c89);opacity:.8}@media(prefers-reduced-motion:reduce){.letter-sakura[data-v-8c3f1449]{transition:none}}.blessing-galaxy[data-v-a3a2aa2a]{position:relative;width:100%;isolation:isolate;pointer-events:auto}.galaxy-sky[data-v-a3a2aa2a]{position:relative;padding:18px 30px 34px;isolation:isolate}.river-glow[data-v-a3a2aa2a]{position:absolute;z-index:-1;inset:-8% -3%;pointer-events:none;background:radial-gradient(ellipse at 22% 36%,#b864a414,transparent 34%),radial-gradient(ellipse at 71% 60%,#8160bc14,transparent 41%),radial-gradient(ellipse at 85% 31%,#c49b7120,transparent 24%)}.star-river[data-v-a3a2aa2a]{position:absolute;z-index:-1;left:-5%;top:-4%;width:110%;height:108%;overflow:visible;pointer-events:none}.star-river path[data-v-a3a2aa2a]{fill:none;vector-effect:non-scaling-stroke}.river-haze[data-v-a3a2aa2a]{stroke-width:13;opacity:.16;filter:blur(7px)}.river-thread[data-v-a3a2aa2a]{stroke-width:.9;opacity:.72}.river-thread-faint[data-v-a3a2aa2a]{stroke-width:.6;opacity:.35}.river-dust[data-v-a3a2aa2a]{stroke-width:1.8;stroke-linecap:round;stroke-dasharray:.1 12;opacity:.65}.river-star[data-v-a3a2aa2a]{fill:#e9c8e7;opacity:.64;filter:drop-shadow(0 0 4px #dba8e6)}.river-star.star-gold[data-v-a3a2aa2a]{fill:#f6d8af;opacity:.85}.river-spark[data-v-a3a2aa2a]{position:absolute;z-index:-1;color:#e7c5de;line-height:1;text-shadow:0 0 14px #e5a5d388;pointer-events:none}.spark-one[data-v-a3a2aa2a]{top:42%;left:0;font-size:25px;transform:rotate(12deg)}.spark-two[data-v-a3a2aa2a]{top:10%;right:2%;font-size:15px;color:#eed1ae}.spark-three[data-v-a3a2aa2a]{bottom:1%;left:49%;font-size:24px;color:#d5c4ef}.galaxy-cards[data-v-a3a2aa2a]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:36px;row-gap:34px;max-width:920px;padding:0;margin:0 auto;list-style:none}.galaxy-card-orbit[data-v-a3a2aa2a]{--card-angle:-1.5deg;--card-offset:5px;position:relative;min-width:0;transform:translateY(var(--card-offset)) rotate(var(--card-angle));animation:galaxy-drift-a3a2aa2a 7s ease-in-out infinite;animation-delay:var(--float-delay)}.galaxy-card-orbit[data-v-a3a2aa2a]:nth-child(2){--card-angle:1.5deg;--card-offset:21px}.galaxy-card-orbit[data-v-a3a2aa2a]:nth-child(3){--card-angle:-1deg;--card-offset:1px}.galaxy-card-orbit[data-v-a3a2aa2a]:nth-child(4){--card-angle:1.2deg;--card-offset:8px}.galaxy-card-orbit[data-v-a3a2aa2a]:nth-child(5){--card-angle:-1.2deg;--card-offset:22px}.galaxy-card-orbit[data-v-a3a2aa2a]:nth-child(6){--card-angle:1.5deg;--card-offset:2px}.galaxy-card-orbit[data-v-a3a2aa2a]:focus-within,.galaxy-card-orbit[data-v-a3a2aa2a]:hover{z-index:2;animation-play-state:paused}.galaxy-cards.single-card[data-v-a3a2aa2a]{max-width:286px;grid-template-columns:minmax(0,1fr)}.galaxy-card[data-v-a3a2aa2a]{position:relative;display:flex;flex-direction:column;isolation:isolate;width:100%;height:214px;min-width:0;margin:0;padding:19px 20px 17px;border:1px solid #e4bfd153;border-radius:8px;background:#302137;color:#fbecf3;text-align:left;overflow:hidden;box-shadow:0 13px 35px #03010849,0 2px 6px #00000024,inset 0 1px #ffffff12;transition:transform .3s,border-color .3s,box-shadow .3s;touch-action:manipulation}.galaxy-card[data-v-a3a2aa2a]:hover{transform:translateY(-4px);border-color:#f4d9e2aa;box-shadow:0 17px 42px #03010855,0 0 25px #d49db217}.galaxy-card[data-v-a3a2aa2a]:focus-visible{outline:2px solid #ffdeef;outline-offset:6px;transform:translateY(-3px)}.card-topline[data-v-a3a2aa2a]{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:19px;flex-shrink:0}.card-kind[data-v-a3a2aa2a]{display:flex;align-items:center;gap:5px;font-size:11px;line-height:1.5;letter-spacing:.6px;color:#e7d4e6}.card-kind>span[data-v-a3a2aa2a]{font-family:Georgia,serif;font-size:15px}.card-demo[data-v-a3a2aa2a]{padding:2px 6px;border:1px solid #ead8e336;border-radius:3px;background:#281a2b36;font-size:10px;line-height:1.35;color:#f6e5ec;letter-spacing:.5px}.card-person[data-v-a3a2aa2a]{position:relative;z-index:2;display:flex;flex-direction:column;gap:5px;margin-top:auto;padding-right:18px}.card-person strong[data-v-a3a2aa2a]{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font:400 16px/1.35 Songti SC,"Noto Serif SC",SimSun,serif;letter-spacing:.8px;overflow-wrap:anywhere}.card-person>span[data-v-a3a2aa2a]{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:11px;line-height:1.5;letter-spacing:.4px;color:#d4c5d7}.card-viewed[data-v-a3a2aa2a]{position:absolute;z-index:3;right:12px;bottom:12px;display:grid;place-items:center;width:20px;height:20px;color:#ffe4b5;font:15px Georgia,serif;text-shadow:0 0 9px #f6cc8399}.is-viewed[data-v-a3a2aa2a]{box-shadow:0 13px 35px #03010849,0 0 18px #dfba6f10}.galaxy-card.is-viewed .poster-open[data-v-a3a2aa2a],.galaxy-card.is-viewed .audio-open[data-v-a3a2aa2a],.galaxy-card.is-viewed .letter-seal[data-v-a3a2aa2a]{opacity:0}.kind-text[data-v-a3a2aa2a]{background:linear-gradient(122deg,#fbefdf,#f5e4df 53%,#eadde8);border-color:#fff1e6ad;color:#5b3b51;box-shadow:0 14px 38px #05010945,inset 0 1px #ffffffb3}.kind-text[data-v-a3a2aa2a]:before{content:"";position:absolute;inset:5px;border:1px solid #9c6b8824;border-radius:4px;pointer-events:none}.kind-text .card-kind[data-v-a3a2aa2a]{color:#956c83}.kind-text .card-demo[data-v-a3a2aa2a]{color:#936a7e;border-color:#a2768c30;background:#fff8ee4d}.letter-lines[data-v-a3a2aa2a]{position:absolute;z-index:-1;left:20px;right:20px;top:72px;height:73px;background:repeating-linear-gradient(transparent 0 23px,#a6758b13 23px 24px);pointer-events:none}.letter-quote[data-v-a3a2aa2a]{position:absolute;right:20px;top:41px;font:70px/1 Georgia,serif;color:#ab789220;pointer-events:none}.letter-message[data-v-a3a2aa2a]{position:relative;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;margin:13px 0 14px;font:14px/1.75 Kaiti SC,KaiTi,STKaiti,Songti SC,SimSun,serif;letter-spacing:.6px;color:#674657}.kind-text .card-person[data-v-a3a2aa2a]{border-top:1px solid #ae85952a;padding-top:10px}.kind-text .card-person strong[data-v-a3a2aa2a]{color:#634456}.kind-text .card-person>span[data-v-a3a2aa2a]{color:#967587}.letter-seal[data-v-a3a2aa2a]{position:absolute;right:19px;bottom:21px;display:grid;place-items:center;width:26px;height:26px;border:1px solid #b9879563;border-radius:50%;color:#ac788e;font-size:18px;transform:rotate(14deg)}.kind-text .card-viewed[data-v-a3a2aa2a]{color:#a87945;text-shadow:0 0 10px #d6af6566}.kind-image[data-v-a3a2aa2a],.kind-video[data-v-a3a2aa2a]{padding:15px 17px 17px;border-color:#efcfcb82}.poster-image[data-v-a3a2aa2a]{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s;pointer-events:none}.galaxy-card:hover .poster-image[data-v-a3a2aa2a]{transform:scale(1.035)}.poster-shade[data-v-a3a2aa2a]{position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,#1a102a55,transparent 30%,#110c1a0d 40%,#160d2470 62%,#160d24eb);pointer-events:none}.kind-image .card-kind[data-v-a3a2aa2a],.kind-video .card-kind[data-v-a3a2aa2a]{font-size:10px;text-shadow:0 1px 6px #140b2077}.kind-image .card-demo[data-v-a3a2aa2a],.kind-video .card-demo[data-v-a3a2aa2a]{background:#20112866;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.kind-image .card-person strong[data-v-a3a2aa2a],.kind-video .card-person strong[data-v-a3a2aa2a]{color:#fff2ed;text-shadow:0 1px 10px #0003}.kind-image .card-person>span[data-v-a3a2aa2a],.kind-video .card-person>span[data-v-a3a2aa2a]{color:#e9d6dd}.poster-open[data-v-a3a2aa2a]{position:absolute;right:16px;bottom:22px;font:20px Georgia,serif;color:#f5d9e2}.poster-fallback[data-v-a3a2aa2a]{position:absolute;z-index:-2;inset:0;display:grid;place-items:center;background:radial-gradient(ellipse at 25% 30%,color-mix(in srgb,var(--card-accent) 29%,transparent),transparent 65%),linear-gradient(140deg,#45324f,#211d3f)}.poster-fallback>span[data-v-a3a2aa2a]{margin-top:-25px;font:56px Georgia,serif;color:#e5cced99;text-shadow:0 0 34px #dfb0df66}.poster-fallback i[data-v-a3a2aa2a]{position:absolute;width:180px;height:180px;border:1px solid #ddc2e51c;border-radius:50%;transform:rotate(-32deg) scaleY(.5)}.poster-fallback i[data-v-a3a2aa2a]:last-child{width:255px;height:255px;transform:rotate(33deg) scaleY(.45)}.image-fallback-caption[data-v-a3a2aa2a]{position:relative;margin:auto 0 12px;font-size:12px;line-height:1.6;color:#dfc9e0;text-align:center}.video-play[data-v-a3a2aa2a]{position:absolute;left:50%;top:43%;display:grid;place-items:center;width:48px;height:48px;transform:translate(-50%,-50%);border:1px solid #fbe6ec7a;border-radius:50%;background:#2d203c54;box-shadow:0 0 22px #f0d4e413;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.video-play svg[data-v-a3a2aa2a]{width:24px;height:24px;fill:#fff1f6}.video-caption[data-v-a3a2aa2a]{position:absolute;left:16px;right:16px;top:59%;text-align:center;font-size:11px;color:#f4dfe9;letter-spacing:.5px}.kind-video:not(.has-cover) .poster-fallback>span[data-v-a3a2aa2a]{opacity:0}.kind-audio[data-v-a3a2aa2a]{background:radial-gradient(ellipse at 20% 10%,#c6b0ed22,transparent 80%),linear-gradient(125deg,#423253,#2d2442);border-color:#d8bae86b}.kind-audio[data-v-a3a2aa2a]:after{content:"";position:absolute;z-index:-1;width:180px;height:180px;right:-65px;bottom:-84px;border:1px solid #d3b9ea1a;border-radius:50%;box-shadow:0 0 0 18px #d3b9ea06,0 0 0 36px #d3b9ea04}.audio-waves[data-v-a3a2aa2a]{display:flex;align-items:center;justify-content:center;gap:4px;width:100%;height:66px;margin-top:8px}.audio-waves i[data-v-a3a2aa2a]{display:block;width:3px;max-height:90%;border-radius:6px;background:linear-gradient(#f1d7e7,#c5a7d9);opacity:.8;box-shadow:0 0 8px #d8abe521}.audio-waves i[data-v-a3a2aa2a]:nth-child(3n){opacity:.43}.media-caption[data-v-a3a2aa2a]{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:16px;color:#cdb5d9;font-size:11px;line-height:1.5}.media-caption>span[data-v-a3a2aa2a]:last-child:not(:first-child){white-space:nowrap}.kind-audio .card-person[data-v-a3a2aa2a]{padding-top:10px;border-top:1px solid #e4cce422}.audio-open[data-v-a3a2aa2a]{position:absolute;right:17px;bottom:20px;font:20px Georgia,serif;color:#e0c5eb}.galaxy-tools[data-v-a3a2aa2a]{position:relative;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;column-gap:54px;row-gap:20px;padding:22px 15px 0}.galaxy-actions[data-v-a3a2aa2a]{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:27px}.galaxy-discover[data-v-a3a2aa2a]{display:inline-flex;align-items:center;justify-content:center;gap:13px;min-height:46px;padding:11px 23px;border:1px solid #e8b9ce75;border-radius:30px;background:linear-gradient(115deg,#82576fa6,#554269a6);box-shadow:inset 0 1px #ffe5f324,0 8px 30px #bc759f12;color:#fae8f3;font-size:12px;letter-spacing:1px;transition:background .2s,transform .2s,border-color .2s}.galaxy-discover>span[data-v-a3a2aa2a]{font:19px Georgia,serif}.galaxy-discover>span[data-v-a3a2aa2a]:last-child{font-size:17px;margin-left:5px}.galaxy-discover[data-v-a3a2aa2a]:hover:not(:disabled){transform:translateY(-2px);background:linear-gradient(115deg,#96657dbf,#69537ebf);border-color:#f4cddfa6}.galaxy-wall[data-v-a3a2aa2a]{display:inline-flex;align-items:center;gap:11px;min-height:42px;padding:6px 0;border:0;border-bottom:1px solid #d2b1c63b;border-radius:0;background:transparent;color:#ceb3c8;font-size:12px;letter-spacing:.5px}.galaxy-wall>span[data-v-a3a2aa2a]{font:17px Georgia,serif}.galaxy-wall[data-v-a3a2aa2a]:hover:not(:disabled){color:#f9dfee;border-bottom-color:#edc6de88}.galaxy-discover[data-v-a3a2aa2a]:disabled,.galaxy-wall[data-v-a3a2aa2a]:disabled{opacity:.4}.galaxy-pagination[data-v-a3a2aa2a]{display:flex;align-items:center;gap:14px}.galaxy-page-button[data-v-a3a2aa2a]{display:grid;place-items:center;width:38px;height:38px;padding:0;border:1px solid #d0aaca3b;border-radius:50%;background:#291d326e;color:#dcbad1;font:19px Georgia,serif;transition:border-color .2s,background .2s}.galaxy-page-button[data-v-a3a2aa2a]:hover:not(:disabled){background:#4b31577d;border-color:#e4bed875}.galaxy-page-button[data-v-a3a2aa2a]:disabled{opacity:.3}.galaxy-page-label[data-v-a3a2aa2a]{min-width:40px;text-align:center;white-space:nowrap;color:#bb9db5;font:12px Georgia,serif;font-variant-numeric:tabular-nums;letter-spacing:1px}.page-separator[data-v-a3a2aa2a]{padding:0 8px;color:#745e76}.galaxy-empty[data-v-a3a2aa2a]{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;text-align:center;padding:30px}.galaxy-empty>span[data-v-a3a2aa2a]{font:60px Georgia,serif;color:#e8c9e4;text-shadow:0 0 35px #d0a6d855}.galaxy-empty p[data-v-a3a2aa2a]{margin:27px 0 0;font:15px/1.9 Songti SC,SimSun,serif;color:#c2a5bd;letter-spacing:1px}.galaxy-sr-only[data-v-a3a2aa2a]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes galaxy-drift-a3a2aa2a{0%,to{transform:translateY(var(--card-offset)) rotate(var(--card-angle))}50%{transform:translateY(calc(var(--card-offset) - 5px)) rotate(calc(var(--card-angle) + .35deg))}}@media(max-width:849px){.galaxy-sky[data-v-a3a2aa2a]{padding:16px 23px 31px}.galaxy-cards[data-v-a3a2aa2a]{grid-template-columns:repeat(2,minmax(0,1fr));max-width:610px;column-gap:28px;row-gap:31px}.galaxy-card-orbit[data-v-a3a2aa2a]:nth-child(odd){--card-offset:0px;--card-angle:-1.3deg}.galaxy-card-orbit[data-v-a3a2aa2a]:nth-child(2n){--card-offset:16px;--card-angle:1.3deg}.galaxy-card[data-v-a3a2aa2a]{height:210px}.galaxy-tools[data-v-a3a2aa2a]{column-gap:30px}.river-spark.spark-three[data-v-a3a2aa2a]{left:auto;right:1%;bottom:26%}.spark-one[data-v-a3a2aa2a]{top:28%}.spark-two[data-v-a3a2aa2a]{top:60%}}@media(max-width:600px){.galaxy-sky[data-v-a3a2aa2a]{padding:13px 15px 28px}.galaxy-cards[data-v-a3a2aa2a]{column-gap:19px;row-gap:25px}.galaxy-card[data-v-a3a2aa2a]{height:206px;border-radius:7px;padding:14px 12px}.card-kind[data-v-a3a2aa2a]{font-size:10px;letter-spacing:0;gap:3px}.card-demo[data-v-a3a2aa2a]{padding:2px 4px;font-size:10px}.card-topline[data-v-a3a2aa2a]{gap:4px}.card-person[data-v-a3a2aa2a]{padding-right:6px;gap:5px}.card-person strong[data-v-a3a2aa2a]{font-size:14px;line-height:1.45;letter-spacing:.1px}.card-person>span[data-v-a3a2aa2a]{font-size:11px;letter-spacing:0}.letter-message[data-v-a3a2aa2a]{font-size:12px;line-height:1.85;letter-spacing:.1px;-webkit-line-clamp:4;margin:11px 0 10px}.letter-lines[data-v-a3a2aa2a]{left:12px;right:12px;top:60px;height:86px;background-size:auto 22px}.letter-quote[data-v-a3a2aa2a]{right:13px;top:45px;font-size:56px}.kind-text .card-person[data-v-a3a2aa2a]{padding-top:8px;padding-right:8px}.letter-seal[data-v-a3a2aa2a]{right:9px;bottom:14px;width:20px;height:20px;font-size:15px;opacity:.6}.kind-text .card-person>span[data-v-a3a2aa2a]{padding-right:13px}.kind-image[data-v-a3a2aa2a],.kind-video[data-v-a3a2aa2a]{padding:12px}.kind-image .card-person[data-v-a3a2aa2a],.kind-video .card-person[data-v-a3a2aa2a]{padding-right:0}.poster-open[data-v-a3a2aa2a]{right:11px;bottom:14px;font-size:16px}.kind-image .card-person>span[data-v-a3a2aa2a],.kind-video .card-person>span[data-v-a3a2aa2a]{padding-right:16px}.video-play[data-v-a3a2aa2a]{width:42px;height:42px;top:41%}.video-caption[data-v-a3a2aa2a]{font-size:11px;top:55%;left:8px;right:8px}.image-fallback-caption[data-v-a3a2aa2a]{font-size:11px;line-height:1.6;margin-bottom:10px}.poster-fallback>span[data-v-a3a2aa2a]{font-size:46px}.audio-waves[data-v-a3a2aa2a]{gap:3px;height:61px;margin-top:8px}.audio-waves i[data-v-a3a2aa2a]{width:2px}.media-caption[data-v-a3a2aa2a]{font-size:11px;gap:4px;flex-wrap:wrap;margin-bottom:10px}.media-caption>span[data-v-a3a2aa2a]:first-child{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.audio-open[data-v-a3a2aa2a]{right:10px;bottom:16px;font-size:16px}.kind-audio .card-person[data-v-a3a2aa2a]{padding-top:8px}.card-viewed[data-v-a3a2aa2a]{width:17px;height:17px;right:8px;bottom:10px;font-size:13px}.galaxy-tools[data-v-a3a2aa2a]{padding:18px 8px 0;row-gap:20px}.galaxy-actions[data-v-a3a2aa2a]{gap:20px}.galaxy-discover[data-v-a3a2aa2a]{min-height:44px;padding:10px 15px;font-size:12px;gap:8px;letter-spacing:.3px}.galaxy-discover>span[data-v-a3a2aa2a]:last-child{margin-left:0}.galaxy-wall[data-v-a3a2aa2a]{font-size:12px;gap:7px}.galaxy-pagination[data-v-a3a2aa2a]{gap:17px}.galaxy-page-button[data-v-a3a2aa2a]{width:36px;height:36px}.spark-one[data-v-a3a2aa2a]{left:-2px;font-size:20px}.spark-two[data-v-a3a2aa2a]{right:0;font-size:12px}.spark-three[data-v-a3a2aa2a]{font-size:18px}.star-river[data-v-a3a2aa2a]{left:-1%;width:102%}.galaxy-empty[data-v-a3a2aa2a]{padding:25px 12px;min-height:280px}.galaxy-empty p[data-v-a3a2aa2a]{font-size:13px;letter-spacing:.3px}}@media(max-width:359px){.galaxy-sky[data-v-a3a2aa2a]{padding-left:11px;padding-right:11px}.galaxy-cards[data-v-a3a2aa2a]{column-gap:15px}.galaxy-card[data-v-a3a2aa2a]{height:211px;padding:13px 10px}.card-kind[data-v-a3a2aa2a]{font-size:10px}.card-kind>span[data-v-a3a2aa2a]{display:none}.card-person strong[data-v-a3a2aa2a]{font-size:14px}.letter-message[data-v-a3a2aa2a]{font-size:12px;line-height:1.8}.galaxy-actions[data-v-a3a2aa2a]{gap:14px}.galaxy-discover[data-v-a3a2aa2a]{padding-left:12px;padding-right:12px}.galaxy-discover>span[data-v-a3a2aa2a]:first-child{display:none}.galaxy-wall[data-v-a3a2aa2a]{font-size:11px}.audio-waves[data-v-a3a2aa2a]{gap:2px}.video-caption[data-v-a3a2aa2a]{font-size:10px}}@media(prefers-reduced-motion:reduce){.galaxy-card-orbit[data-v-a3a2aa2a]{animation:none}.galaxy-card[data-v-a3a2aa2a],.poster-image[data-v-a3a2aa2a],.galaxy-discover[data-v-a3a2aa2a],.galaxy-page-button[data-v-a3a2aa2a]{transition:none}.galaxy-card[data-v-a3a2aa2a]:hover,.galaxy-card[data-v-a3a2aa2a]:focus-visible,.galaxy-discover[data-v-a3a2aa2a]:hover:not(:disabled){transform:none}.galaxy-card:hover .poster-image[data-v-a3a2aa2a]{transform:none}}.blessing-focus[data-v-dc652cd7]{--focus-color: #e8b4d1;position:relative;min-width:0;overflow:hidden;color:#f3dfed;background:radial-gradient(ellipse at 85% 0,#bf6d9f12,transparent 46%),#171020;text-align:left}.focus-heading[data-v-dc652cd7]{padding:33px 38px 25px}.focus-kicker[data-v-dc652cd7]{display:flex;align-items:center;gap:10px;padding-right:30px;color:#cfb1c7;font-size:11px;letter-spacing:2px;line-height:1.7}.focus-kicker>span[data-v-dc652cd7]:first-child{color:var(--focus-color);font-size:22px;line-height:1}.focus-demo[data-v-dc652cd7]{margin-left:3px;padding:3px 8px;border:1px solid #d2a8c52a;border-radius:4px;color:#c4a6bb;font-size:10px;letter-spacing:1px}.focus-heading h2[data-v-dc652cd7]{margin:15px 0 7px;padding-right:20px;color:#f7e1ee;font:400 28px/1.5 Songti SC,SimSun,serif;letter-spacing:1.5px;overflow-wrap:anywhere;outline:none}.focus-relation[data-v-dc652cd7]{margin:0;color:#bea1b7;font-size:12px;line-height:1.8;letter-spacing:1px;overflow-wrap:anywhere}.focus-photo[data-v-dc652cd7]{margin:0 28px}.focus-photo>img[data-v-dc652cd7]{display:block;width:100%;max-height:360px;aspect-ratio:1.7;object-fit:cover;border:1px solid #e6c1d729;border-radius:6px;background:#2a1d31}.focus-photo figcaption[data-v-dc652cd7]{margin:11px 10px 0;color:#bfa4b7;font:12px/1.8 Songti SC,SimSun,serif;letter-spacing:.7px}.focus-photo-fallback[data-v-dc652cd7]{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:230px;padding:24px;border:1px solid #d4a6c327;border-radius:6px;background:radial-gradient(ellipse at 50% 28%,#b47aab21,transparent 72%),linear-gradient(140deg,#302035,#201727);text-align:center}.focus-photo-fallback svg[data-v-dc652cd7]{width:70px;height:56px;fill:none;stroke:#d6b7ce;stroke-width:1;opacity:.7}.focus-photo-fallback p[data-v-dc652cd7]{margin:18px 0 9px;color:#e4cbdd;font:16px/1.7 Songti SC,SimSun,serif;letter-spacing:1px}.focus-photo-fallback>span[data-v-dc652cd7]{color:#bfa4ba;font-size:12px;line-height:1.8}.focus-voice[data-v-dc652cd7]{position:relative;margin:0 28px;padding:27px 28px 25px;border:1px solid #d4a6cd2e;border-radius:9px;background:radial-gradient(ellipse at 24% 25%,#c478a72b,transparent 65%),radial-gradient(ellipse at 80% 65%,#8f75cb2b,transparent 65%),linear-gradient(130deg,#2b1d37,#261c33);text-align:center}.focus-voice-emblem[data-v-dc652cd7]{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 15px;border:1px solid #e2bed047;border-radius:50%;background:#e2abc20b;color:#f0cee3;box-shadow:0 0 32px #cb80b91f}.focus-voice-emblem svg[data-v-dc652cd7]{width:31px;height:31px;fill:none;stroke:currentColor;stroke-width:1.2;stroke-linecap:round}.focus-media-title[data-v-dc652cd7]{position:relative;margin:0;color:#f0d8e8;font:17px/1.8 Songti SC,SimSun,serif;letter-spacing:1px}.focus-wave[data-v-dc652cd7]{position:relative;display:flex;align-items:center;justify-content:center;gap:5px;height:73px;margin:12px 0 18px}.focus-wave i[data-v-dc652cd7]{display:block;width:3px;height:var(--wave-height);max-height:60px;border-radius:3px;background:linear-gradient(#efc7dc,#a98bc7);opacity:.48;transform:scaleY(.65)}.is-playing .focus-wave i[data-v-dc652cd7]{animation:focus-wave-breathe-dc652cd7 1.25s ease-in-out infinite alternate;animation-delay:var(--wave-delay);opacity:.85}.focus-voice audio[data-v-dc652cd7]{display:block;width:100%;height:44px;margin:0 auto;border-radius:24px;color-scheme:dark}.focus-media-note[data-v-dc652cd7]{position:relative;max-width:360px;margin:7px auto 0;color:#cfb6cc;font-size:12px;line-height:1.9;letter-spacing:.4px}.focus-film[data-v-dc652cd7]{margin:0 28px;overflow:hidden;border:1px solid #d4a6c327;border-radius:7px;background:#0b0810}.focus-film video[data-v-dc652cd7]{display:block;width:100%;max-height:46svh;min-height:150px;background:#08050c;color-scheme:dark}.focus-film-preview[data-v-dc652cd7]{position:relative;display:grid;place-items:center;min-height:252px;padding:28px;isolation:isolate;background:radial-gradient(ellipse at 70% 20%,#73598a45,transparent 70%),linear-gradient(140deg,#322136,#1b1427)}.focus-film-preview>img[data-v-dc652cd7]{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;opacity:.38}.focus-film-preview[data-v-dc652cd7]:after{position:absolute;inset:0;z-index:-1;background:linear-gradient(#1b102d42,#160e23d9);content:""}.focus-film-copy[data-v-dc652cd7]{text-align:center}.focus-film-copy>svg[data-v-dc652cd7]{width:48px;height:40px;margin-bottom:15px;fill:none;stroke:#e7cee3;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round;opacity:.85}.focus-film-copy .focus-media-note[data-v-dc652cd7]{margin-top:12px}.focus-letter[data-v-dc652cd7]{position:relative;padding:25px 38px 26px}.focus-letter-only[data-v-dc652cd7]{margin:0 28px;padding:12px 24px 25px;border:1px solid #d7aac521;border-radius:7px;background:radial-gradient(ellipse at 50% 0,#d895b00c,transparent 80%),linear-gradient(130deg,#241929,#1c1423)}.focus-letter-mark[data-v-dc652cd7]{display:flex;align-items:center;justify-content:center;gap:15px;margin:9px auto 19px;color:var(--focus-color);font-size:23px;opacity:.75}.focus-letter-mark span[data-v-dc652cd7]{width:56px;height:1px;background:linear-gradient(90deg,transparent,#d8b0cc4d)}.focus-letter-mark span[data-v-dc652cd7]:last-child{transform:rotate(180deg)}.focus-message[data-v-dc652cd7]{margin:0;color:#ebd4e3;font:16px/2.15 Songti SC,SimSun,serif;letter-spacing:.9px;white-space:pre-line;overflow-wrap:anywhere}.focus-signature[data-v-dc652cd7]{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:24px;color:#bfa0b7;font:11px/1.8 Songti SC,SimSun,serif;letter-spacing:1px}.focus-signature i[data-v-dc652cd7]{color:var(--focus-color);font-size:15px;font-style:normal}.focus-footer[data-v-dc652cd7]{padding:0 38px 29px}.focus-text .focus-footer[data-v-dc652cd7]{padding-top:24px}.focus-navigation[data-v-dc652cd7]{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;border-top:1px solid #c79eb928;border-bottom:1px solid #c79eb91c}.focus-neighbor[data-v-dc652cd7],.focus-return[data-v-dc652cd7],.focus-all[data-v-dc652cd7]{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:44px;padding:8px 0;border:0;border-radius:4px;background:transparent;color:#d9bcd0;box-shadow:none;font:inherit;font-size:12px;line-height:1.6;letter-spacing:.6px;cursor:pointer;touch-action:manipulation;transition:color .2s,background .2s,border-color .2s}.focus-neighbor[data-v-dc652cd7]{min-width:108px}.focus-neighbor span[data-v-dc652cd7]{font-size:17px}.focus-neighbor[data-v-dc652cd7]:disabled{color:#aa8ca048;cursor:default}.focus-neighbor[data-v-dc652cd7]:hover:not(:disabled),.focus-all[data-v-dc652cd7]:hover{color:#ffe6f5}.focus-navigation-star[data-v-dc652cd7]{color:#9d7997;font-size:19px}.focus-destinations[data-v-dc652cd7]{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:20px}.focus-return[data-v-dc652cd7]{padding:11px 17px;border:1px solid #dfb4cf40;background:#d6a5c110;color:#efd1e4}.focus-return[data-v-dc652cd7]:hover{border-color:#ecc8de75;background:#d6a5c11c}.focus-return span[data-v-dc652cd7]{color:#e6bbd2;font-size:17px;line-height:1}.focus-all[data-v-dc652cd7]{color:#bea0b6}.focus-all span[data-v-dc652cd7]{font-size:16px}.focus-neighbor[data-v-dc652cd7]:focus-visible,.focus-return[data-v-dc652cd7]:focus-visible,.focus-all[data-v-dc652cd7]:focus-visible,.focus-film video[data-v-dc652cd7]:focus-visible,.focus-voice audio[data-v-dc652cd7]:focus-visible{outline:2px solid #f0bedc;outline-offset:4px}@keyframes focus-wave-breathe-dc652cd7{0%{transform:scaleY(.38)}to{transform:scaleY(1)}}@media(max-width:600px){.focus-heading[data-v-dc652cd7]{padding:30px 24px 22px}.focus-kicker[data-v-dc652cd7]{gap:8px;font-size:10px;letter-spacing:1.5px}.focus-demo[data-v-dc652cd7]{padding:2px 6px;font-size:9px}.focus-heading h2[data-v-dc652cd7]{font-size:23px;letter-spacing:1px}.focus-relation[data-v-dc652cd7]{font-size:11px}.focus-photo[data-v-dc652cd7],.focus-voice[data-v-dc652cd7],.focus-film[data-v-dc652cd7]{margin-right:18px;margin-left:18px}.focus-photo>img[data-v-dc652cd7]{aspect-ratio:1.45}.focus-photo figcaption[data-v-dc652cd7]{margin-left:6px;margin-right:6px;font-size:11px}.focus-photo-fallback[data-v-dc652cd7]{min-height:200px;padding:22px 16px}.focus-photo-fallback p[data-v-dc652cd7]{font-size:15px}.focus-voice[data-v-dc652cd7]{padding:24px 18px 22px}.focus-media-title[data-v-dc652cd7]{font-size:15px}.focus-wave[data-v-dc652cd7]{gap:4px;margin:9px 0 14px}.focus-wave i[data-v-dc652cd7]{width:2px}.focus-media-note[data-v-dc652cd7]{font-size:11px;line-height:1.85}.focus-film-preview[data-v-dc652cd7]{min-height:225px;padding:24px 20px}.focus-letter[data-v-dc652cd7]{padding:23px 24px 24px}.focus-letter-only[data-v-dc652cd7]{margin:0 18px;padding:10px 19px 22px}.focus-message[data-v-dc652cd7]{font-size:15px;line-height:2.1;letter-spacing:.65px}.focus-signature[data-v-dc652cd7]{font-size:10px;letter-spacing:.6px;margin-top:21px}.focus-footer[data-v-dc652cd7]{padding:0 24px 23px}.focus-text .focus-footer[data-v-dc652cd7]{padding-top:20px}.focus-navigation[data-v-dc652cd7]{gap:8px;padding:8px 0}.focus-neighbor[data-v-dc652cd7]{min-width:0;font-size:11px;gap:9px}.focus-destinations[data-v-dc652cd7]{gap:10px;padding-top:17px}.focus-return[data-v-dc652cd7]{padding:10px 12px;gap:8px;font-size:11px}.focus-all[data-v-dc652cd7]{gap:7px;font-size:11px}}@media(max-width:350px){.focus-heading[data-v-dc652cd7],.focus-footer[data-v-dc652cd7]{padding-left:20px;padding-right:20px}.focus-destinations[data-v-dc652cd7]{flex-wrap:wrap}.focus-wave[data-v-dc652cd7]{gap:3px}}@media(prefers-reduced-motion:reduce){.is-playing .focus-wave i[data-v-dc652cd7]{animation:none}.focus-neighbor[data-v-dc652cd7],.focus-return[data-v-dc652cd7],.focus-all[data-v-dc652cd7]{transition:none}}.heart-portals[data-v-ed60bc86]{position:absolute;inset:0;z-index:2;pointer-events:none}.portal-strands[data-v-ed60bc86]{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;opacity:.55}.portal-strands path[data-v-ed60bc86]{fill:none;vector-effect:non-scaling-stroke}.strand-base[data-v-ed60bc86]{stroke-width:.65;opacity:.52;transition:opacity .65s ease}.strand-thread[data-v-ed60bc86]{stroke:#efc4e3;stroke-width:1;stroke-linecap:round;stroke-dasharray:.18 1;stroke-dashoffset:.18;opacity:0;filter:drop-shadow(0 0 3px #c78fcb)}.strand.is-highlighted .strand-base[data-v-ed60bc86]{opacity:1}.strand.is-returning .strand-thread[data-v-ed60bc86]{stroke:#f2d5ed;stroke-width:1.2;animation:strand-return-ed60bc86 1.9s cubic-bezier(.25,.5,.4,1) .4s both}.strand.is-opening .strand-thread[data-v-ed60bc86]{stroke-width:1.35;animation:strand-launch-ed60bc86 .5s cubic-bezier(.25,.45,.6,1) both}.strands-mobile[data-v-ed60bc86]{display:none}.heart-portal[data-v-ed60bc86]{--portal-color:#e7acd2;position:absolute;display:grid;place-items:center;width:58px;height:58px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--portal-color);transform:translate(-50%,-50%);pointer-events:auto;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;isolation:isolate;transition:opacity .45s ease}.portal-blessings[data-v-ed60bc86]{left:24%;top:26%}.portal-memories[data-v-ed60bc86]{left:76%;top:24%}.portal-wish[data-v-ed60bc86]{left:24%;top:74%}.portal-letter[data-v-ed60bc86]{left:76%;top:72%}.portal-glow[data-v-ed60bc86]{position:absolute;inset:-13px;z-index:-1;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--portal-color) 14%,transparent),transparent 68%);opacity:.45;transform:scale(.86);transition:opacity .7s ease,transform .9s cubic-bezier(.2,.65,.3,1);pointer-events:none}.portal-pulse[data-v-ed60bc86]{position:absolute;inset:2px;border:1px solid color-mix(in srgb,var(--portal-color) 36%,transparent);border-radius:50%;opacity:0;transform:scale(.75);pointer-events:none}.portal-spark[data-v-ed60bc86]{position:relative;display:block;width:42px;height:42px;overflow:visible;filter:drop-shadow(0 0 3px #e7acd252);animation:portal-float-ed60bc86 9.5s ease-in-out infinite;animation-delay:var(--portal-delay);transition:filter .65s ease;pointer-events:none}.portal-rays[data-v-ed60bc86]{transform:rotate(var(--spark-angle));transform-origin:32px 32px}.portal-crosslight[data-v-ed60bc86]{opacity:.3}.portal-dust[data-v-ed60bc86]{fill:#e8c6e2;animation:portal-glimmer-ed60bc86 8s ease-in-out infinite;animation-delay:var(--portal-delay)}.portal-core[data-v-ed60bc86]{fill:#fff1fb}.portal-wish .portal-spark[data-v-ed60bc86]{width:39px;height:45px}.portal-label[data-v-ed60bc86]{position:absolute;top:calc(100% - 3px);left:50%;transform:translate(-50%);color:#d0bfd0;font:11px/1.6 Songti SC,SimSun,serif;letter-spacing:1.6px;white-space:nowrap;text-shadow:0 2px 10px #080610,0 0 18px #080610;transition:color .5s ease;pointer-events:auto}.portal-description[data-v-ed60bc86]{position:absolute;left:50%;top:calc(100% + 29px);width:max-content;max-width:220px;transform:translate(-50%,5px);color:#c7adc5;font:10px/1.9 PingFang SC,Microsoft YaHei,sans-serif;letter-spacing:.7px;text-align:center;text-shadow:0 2px 9px #080610,0 0 16px #080610;opacity:0;transition:opacity .55s ease,transform .65s cubic-bezier(.2,.65,.3,1);pointer-events:none}.heart-portal.is-visited .portal-glow[data-v-ed60bc86]{opacity:.65;transform:scale(1)}.heart-portal.is-visited .portal-spark[data-v-ed60bc86]{filter:drop-shadow(0 0 4px #e7acd26b)}.heart-portal.is-returning .portal-glow[data-v-ed60bc86],.heart-portal.is-hinted .portal-glow[data-v-ed60bc86]{animation:portal-welcome-ed60bc86 2.6s ease-in-out .2s both}.heart-portal.is-returning .portal-label[data-v-ed60bc86],.heart-portal.is-hinted .portal-label[data-v-ed60bc86]{color:#edc8e3}.heart-portal.is-hinted .portal-description[data-v-ed60bc86]{opacity:.85;transform:translate(-50%)}.heart-portal.is-highlighted .portal-glow[data-v-ed60bc86]{opacity:1;transform:scale(1.14)}.heart-portal.is-highlighted .portal-spark[data-v-ed60bc86]{filter:drop-shadow(0 0 5px #f3c7e5a6) drop-shadow(0 0 12px #e7acd224)}.heart-portal.is-highlighted .portal-label[data-v-ed60bc86]{color:#f7d8ee}.heart-portal.is-highlighted .portal-description[data-v-ed60bc86]{opacity:1;transform:translate(-50%)}.heart-portal[data-v-ed60bc86]:focus-visible{outline:1px solid #e7b5d78c;outline-offset:7px}.heart-portal[data-v-ed60bc86]:disabled{pointer-events:none}.has-opening .heart-portal[data-v-ed60bc86]:not(.is-opening){opacity:.28}.heart-portal.is-opening .portal-pulse[data-v-ed60bc86]{animation:portal-open-ed60bc86 .52s ease-out both}.heart-portal.is-opening .portal-spark[data-v-ed60bc86]{animation-play-state:paused;filter:drop-shadow(0 0 5px #f6cfeab3) drop-shadow(0 0 24px #c18cdd73)}.heart-portal.is-opening .portal-description[data-v-ed60bc86]{opacity:0}.portals-enter-active[data-v-ed60bc86]{transition:opacity 1.2s ease}.portals-leave-active[data-v-ed60bc86]{transition:opacity .45s ease}.portals-enter-from[data-v-ed60bc86],.portals-leave-to[data-v-ed60bc86]{opacity:0}@keyframes portal-float-ed60bc86{0%,to{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-2px) rotate(1.5deg)}}@keyframes portal-glimmer-ed60bc86{0%,to{opacity:.45}50%{opacity:.9}}@keyframes portal-open-ed60bc86{0%{opacity:.38;transform:scale(.7)}to{opacity:0;transform:scale(1.75)}}@keyframes strand-return-ed60bc86{0%{stroke-dashoffset:.18;opacity:0}18%{opacity:.8}75%{opacity:.65}to{stroke-dashoffset:-1;opacity:0}}@keyframes portal-welcome-ed60bc86{0%,to{opacity:.5;transform:scale(.95)}38%{opacity:1;transform:scale(1.23)}72%{opacity:.8;transform:scale(1.1)}}@keyframes strand-launch-ed60bc86{0%{stroke-dashoffset:.18;opacity:0}12%{opacity:1}80%{opacity:.85}to{stroke-dashoffset:-1;opacity:0}}@media(max-width:600px){.strands-desktop[data-v-ed60bc86]{display:none}.strands-mobile[data-v-ed60bc86]{display:block}.heart-portal[data-v-ed60bc86]{width:50px;height:50px}.portal-blessings[data-v-ed60bc86]{left:15%;top:16%}.portal-memories[data-v-ed60bc86]{left:85%;top:15%}.portal-wish[data-v-ed60bc86]{left:15%;top:74%}.portal-letter[data-v-ed60bc86]{left:85%;top:72%}.portal-spark[data-v-ed60bc86]{width:40px;height:40px}.portal-wish .portal-spark[data-v-ed60bc86]{width:37px;height:43px}.portal-label[data-v-ed60bc86]{font-size:10px;letter-spacing:1px;top:calc(100% - 1px)}.portal-blessings .portal-label[data-v-ed60bc86],.portal-memories .portal-label[data-v-ed60bc86]{top:auto;bottom:calc(100% - 1px)}.portal-description[data-v-ed60bc86]{display:none}.portal-glow[data-v-ed60bc86]{inset:-10px}.portal-strands[data-v-ed60bc86]{opacity:.5}}@media(max-width:350px){.portal-label[data-v-ed60bc86]{font-size:9px;letter-spacing:.7px}}@media(prefers-reduced-motion:reduce){.portal-spark[data-v-ed60bc86],.portal-dust[data-v-ed60bc86],.portal-pulse[data-v-ed60bc86],.heart-portal.is-opening .portal-pulse[data-v-ed60bc86],.strand.is-returning .strand-thread[data-v-ed60bc86],.strand.is-opening .strand-thread[data-v-ed60bc86],.heart-portal.is-returning .portal-glow[data-v-ed60bc86],.heart-portal.is-hinted .portal-glow[data-v-ed60bc86]{animation:none}.portal-glow[data-v-ed60bc86],.portal-spark[data-v-ed60bc86],.portal-label[data-v-ed60bc86],.portal-description[data-v-ed60bc86],.heart-portal[data-v-ed60bc86],.strand-base[data-v-ed60bc86],.portals-enter-active[data-v-ed60bc86],.portals-leave-active[data-v-ed60bc86]{transition:none}.heart-portal.is-returning .portal-glow[data-v-ed60bc86],.heart-portal.is-hinted .portal-glow[data-v-ed60bc86]{opacity:.85;transform:none}.portal-description[data-v-ed60bc86],.heart-portal.is-highlighted .portal-description[data-v-ed60bc86]{transform:translate(-50%)}}.hub-chapter .hub-birthday{text-wrap:balance}.hub-chapter .hub-birthday .rose-text{display:inline-block}.hub-chapter .hub-birthday{animation:birthday-arrives 1.2s ease both}@keyframes birthday-arrives{0%{opacity:.25}to{opacity:1}}@media(prefers-reduced-motion:reduce){.hub-chapter .hub-birthday{animation:none}}.experience.phase-blessings .story{height:auto;min-height:calc(100svh - 172px)}.chapter.blessings-chapter.galaxy-chapter{position:relative;inset:auto;min-height:0;padding:0 30px 36px;pointer-events:auto}.galaxy-chapter .chapter-heading{padding-top:8px}.galaxy-chapter .chapter-heading h1{font-size:clamp(30px,3.2vw,45px)}.galaxy-chapter .subtitle{max-width:660px;margin-left:auto;margin-right:auto}.galaxy-stage{position:relative;max-width:1100px;margin:32px auto 0}.galaxy-return{display:flex;flex-direction:column;align-items:center;gap:16px;margin-top:24px;text-align:center}.galaxy-return .text-button{font-size:11px}.blessing-dialog.galaxy-dialog{width:min(700px,calc(100vw - 36px));border-color:#dfb6d448;border-radius:16px;background:#1b1323}.blessing-dialog.galaxy-dialog.wall-dialog{width:min(1040px,calc(100vw - 32px))}.blessing-dialog.galaxy-dialog[open]{animation:blessing-approach .44s cubic-bezier(.18,.78,.22,1) both}.blessing-dialog.galaxy-dialog::backdrop{background:#090510c9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.galaxy-dialog .wall-message{font-size:12px}.galaxy-dialog .wall-card strong{font-size:16px}.galaxy-dialog .wall-relation{font-size:10px}.galaxy-dialog .wall-card>small{font-size:10px}.galaxy-dialog .wall-card{min-height:210px}@keyframes blessing-approach{0%{opacity:0;transform:translate(var(--blessing-from-x, 0px),var(--blessing-from-y, 24px)) scale(.87)}to{opacity:1;transform:translate(0) scale(1)}}@media(max-width:600px){.experience.phase-blessings .story{min-height:calc(100svh - 158px)}.chapter.blessings-chapter.galaxy-chapter{padding:0 16px 28px}.galaxy-chapter .chapter-heading{padding:22px 0 0}.galaxy-chapter .chapter-heading h1{font-size:27px;line-height:1.65}.galaxy-chapter .chapter-heading .rose-text{display:inline-block}.galaxy-stage{margin-top:20px}.galaxy-return{gap:12px;margin-top:20px}.blessing-dialog.galaxy-dialog{width:calc(100vw - 24px);max-height:calc(100svh - 24px);border-radius:12px}.galaxy-dialog .wall-message{font-size:11px}.galaxy-dialog .wall-card strong{font-size:14px}}@media(prefers-reduced-motion:reduce){.blessing-dialog.galaxy-dialog[open]{animation:none}}:root{font-family:Inter,PingFang SC,Microsoft YaHei,sans-serif;color:#f6eaf5;background:#090710;font-synthesis:none;text-rendering:optimizeLegibility;color-scheme:dark}*{box-sizing:border-box}body{margin:0;min-width:320px}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:disabled{cursor:default}button,a{-webkit-user-select:none;user-select:none}button:focus-visible,a:focus-visible{outline:2px solid #efc6dc;outline-offset:7px}h1:focus{outline:none}button{touch-action:manipulation}a{color:inherit}::selection{background:#b16a9a66}.experience{position:relative;isolation:isolate;min-height:100svh;overflow:hidden;background:radial-gradient(ellipse at 50% 43%,#4b204e29,transparent 57%),#090710}.ambient-nebula{position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse at 50% 48%,#5720441a,transparent 45%);transition:opacity 2s}.site-header{height:88px;position:relative;z-index:10;padding:0 4.5vw;display:flex;justify-content:space-between;align-items:center;gap:24px}.brand{display:flex;align-items:center;gap:9px;font:25px Georgia,serif;text-decoration:none;letter-spacing:.4px;white-space:nowrap}.brand-star{color:#e7c6df;font:31px Georgia,serif}.brand-divider{height:17px;width:1px;background:#dbc2df2e;margin:0 5px 0 10px}.brand small{font:10px Microsoft YaHei,sans-serif;letter-spacing:2px;color:#ba9eb6}.header-tools{display:flex;align-items:center;gap:30px}.private-dedication{font-size:9px;letter-spacing:2px;color:#b49daf}.music-toggle{display:flex;align-items:center;gap:10px;min-height:37px;padding:0 16px;border:1px solid #d6b2d72a;border-radius:30px;background:#1c1527a6;color:#c9b6ca;font-size:10px;letter-spacing:1px}.music-toggle:hover{border-color:#e9c9e56e}.sound-bars{display:flex;gap:2px;align-items:center;height:14px}.sound-bars i{height:4px;width:2px;background:#dab3cf;border-radius:2px}.sound-bars i:nth-child(2){height:10px}.sound-bars i:nth-child(3){height:7px}.sound-bars i:nth-child(4){height:12px}.playing .sound-bars i{animation:sound-wave .9s ease-in-out infinite alternate}.playing .sound-bars i:nth-child(2){animation-delay:-.4s}.playing .sound-bars i:nth-child(3){animation-delay:-.6s}.playing .sound-bars i:nth-child(4){animation-delay:-.2s}.story{position:relative;max-width:1440px;margin:0 auto;min-height:650px;height:calc(100svh - 172px);z-index:2}.heart-stage{position:absolute;top:108px;left:50%;transform:translate(-50%);width:min(92vw,960px);height:calc(100% - 210px);transition:opacity 1s,transform 1.3s;z-index:1}.heart-stage-hidden{opacity:0;pointer-events:none}.heart-canvas{position:absolute;inset:0;touch-action:pan-y;cursor:grab}.heart-canvas:active{cursor:grabbing}.heart-canvas canvas{display:block;width:100%;height:100%}.gather-zone,.gather-zone .heart-canvas{touch-action:none;cursor:crosshair}.fallback-heart{position:absolute;inset:0;display:grid;place-items:center;font:clamp(190px,33vw,400px) Georgia,serif;color:#f0b1d6;text-shadow:0 0 25px #d581bc88,0 0 90px #9d58c966}.chapter{position:absolute;inset:0;z-index:2;pointer-events:none;min-height:inherit}.chapter button,.chapter a{pointer-events:auto}.chapter-heading{position:relative;z-index:3;text-align:center;padding:24px 20px 0}.eyebrow{display:flex;align-items:center;justify-content:center;gap:16px;font:9px/1.6 Georgia,serif;letter-spacing:3px;color:#cda9c3;margin:0}.eyebrow>span{width:24px;height:1px;background:linear-gradient(90deg,transparent,#cda9c380)}.eyebrow>span:last-child{transform:rotate(180deg)}h1{font-family:Songti SC,"Noto Serif SC",SimSun,serif;font-size:clamp(29px,3.5vw,46px);font-weight:400;line-height:1.5;letter-spacing:3px;margin:16px 0 10px}.rose-text{color:#e9bdd8}.subtitle{font-size:12px;letter-spacing:2px;line-height:1.9;color:#b9a4bb;margin:0}.chapter-actions{position:absolute;bottom:8px;left:20px;right:20px;text-align:center;min-height:111px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px}.primary-button{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:24px;border:1px solid #e1aac266;border-radius:99px;padding:16px 29px;min-height:51px;background:linear-gradient(115deg,#85516b9c,#52365eae);box-shadow:inset 0 1px #fbdbe715,0 8px 35px #9c47751b;color:#f8e8f2;font-size:12px;letter-spacing:1.8px;transition:transform .25s,border-color .25s,background .25s}.primary-button:hover:not(:disabled){transform:translateY(-3px);border-color:#efc5dbb0;background:linear-gradient(115deg,#98667dbb,#664572cc)}.primary-button:disabled{opacity:.52}.primary-button>span,.text-button>span{font:16px Georgia,serif}.text-button{display:inline-flex;align-items:center;justify-content:center;gap:15px;min-height:36px;border:0;border-bottom:1px solid #d8b8d332;border-radius:0;padding:5px 2px;background:none;color:#c8aec5;letter-spacing:1.5px;font-size:11px;box-shadow:none;transition:color .2s,border-color .2s}.text-button:hover{color:#ffe5f6;border-color:#e0b3d58c}.text-button:disabled{opacity:.45}.interaction-hint{font-size:10px;color:#b6a0b7;letter-spacing:1.3px;line-height:1.7;margin:0}.wish-prompt{max-width:600px;font-size:13px;color:#e1cada;letter-spacing:1.6px;line-height:1.9;margin:0}.tiny-star{font-size:17px;color:#e2bad1;margin-right:7px}.collected-count{display:inline-block;margin-left:19px;color:#b39bb2;font-size:9px;letter-spacing:1px}.invitation-chapter{overflow:visible}.invitation-heading{padding-top:clamp(22px,5svh,55px)}.invitation-heading h1{font-size:clamp(37px,4.3vw,61px);line-height:1.5;letter-spacing:5px;margin:23px 0 18px}.invitation-heading .subtitle{font-size:12px;letter-spacing:3px}.invitation-star{position:absolute;left:50%;top:52%;transform:translate(-50%,-50%);width:130px;height:130px;border:0;border-radius:50%;background:transparent;color:#fff0f8;padding:0;box-shadow:none;display:grid;place-items:center}.star-cross{position:relative;font-size:72px;line-height:1;text-shadow:0 0 15px #fbd9ee,0 0 45px #dd99cd,0 0 90px #b56bc077;transition:transform .5s}.invitation-star:hover .star-cross{transform:scale(1.15) rotate(12deg)}.star-halo{position:absolute;inset:-50px;border-radius:50%;background:radial-gradient(circle,#f8ceeb1c,transparent 62%);animation:breathe 4s ease-in-out infinite}.star-orbit{position:absolute;inset:-15px;border:1px solid #e1b7d527;border-radius:50%;transform:rotateX(64deg) rotate(-27deg);box-shadow:0 0 28px #cc88b30c}.invitation-star:disabled{opacity:.4}.invitation-actions{bottom:18px;gap:11px}.recipient-line{font:9px Georgia,serif;letter-spacing:4px;color:#a88d9f;margin:0 0 8px}.recipient-line span{margin-left:12px;font:12px Songti SC,serif;color:#dfc2d6;letter-spacing:4px}.invitation-prompt{font-size:11px;color:#c0a6b9;letter-spacing:3px;margin:0}.skip-button{font-size:9px;letter-spacing:1px;color:#9a8398;margin-top:7px;border-bottom-color:transparent}.invitation-orbits{position:absolute;left:50%;top:48%;width:min(78vw,650px);aspect-ratio:1;transform:translate(-50%,-50%);pointer-events:none}.invitation-orbits i{position:absolute;inset:0;border:1px solid #c798c516;border-radius:50%}.invitation-orbits i:nth-child(2){inset:10%;border-style:dashed;opacity:.5;transform:rotate(15deg)}.invitation-orbits i:nth-child(3){inset:20%;border-color:#d2a7d01a}.vertical-note{position:absolute;top:41%;left:5%;writing-mode:vertical-rl;font:8px Georgia,serif;letter-spacing:4px;color:#90758c80}.gather-meter{height:2px;width:180px;background:#dac1df22;overflow:hidden}.gather-meter span{display:block;height:100%;background:linear-gradient(90deg,#9272bb,#f3c8e5);box-shadow:0 0 12px #dfacd5}.memory-stars{position:absolute;top:108px;left:50%;width:min(92vw,960px);height:calc(100% - 210px);transform:translate(-50%);pointer-events:none}.memory-star{position:absolute;transform:translate(-50%,-50%);display:flex;align-items:center;gap:11px;min-height:54px;border:0;background:transparent;padding:9px;color:#f5d4e8;white-space:nowrap;text-align:left}.memory-spark{font-size:26px;text-shadow:0 0 12px #efb7d7,0 0 26px #cf82be;animation:star-float 4.5s ease-in-out infinite;animation-delay:var(--delay);transition:color .3s}.memory-label{padding:8px 12px;background:#130e1b99;border:1px solid #c99db429;border-radius:5px;font-family:Songti SC,SimSun,serif;font-size:13px;letter-spacing:2px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:border-color .3s}.memory-label small{display:block;margin-top:6px;font:8px sans-serif;letter-spacing:1px;color:#b69bb1}.memory-star:hover .memory-label{border-color:#dcb0cc80}.memory-star:hover .memory-spark{color:#fff5df}.memory-star.collected .memory-spark{color:#f5d5a4;text-shadow:0 0 14px #eec691}.memory-star.collected .memory-label small{color:#d9b995}.wish-zone{position:absolute;inset:0;z-index:3;display:grid;place-items:center;border:0;background:transparent;padding:0;border-radius:50%;touch-action:none;-webkit-touch-callout:none}.wish-core{position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;width:98px;height:98px;border-radius:50%;background:radial-gradient(circle,#311b3e8c,#0e0a178c);box-shadow:0 0 35px #a25ca414;transition:box-shadow .5s}.wish-core svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}.wish-core circle{fill:none;stroke-width:1}.charge-track{stroke:#e0badc2b}.charge-progress{stroke:#f9d6e9;stroke-width:1.5!important;stroke-dasharray:276.46;filter:drop-shadow(0 0 4px #f4c8e7)}.core-star{color:#efd2e7;font-size:24px;text-shadow:0 0 14px #eeb3da}.wish-core small{font-size:9px;letter-spacing:1.5px;color:#cbaac3;margin-top:6px}.wish-core.charging{box-shadow:0 0 50px #e0a3c93d}.charge-aura{position:absolute;inset:5%;background:radial-gradient(ellipse,#e3a3d229,transparent 67%);pointer-events:none;transition:opacity .1s}.is-holding .ambient-nebula{opacity:1;background:radial-gradient(ellipse at 50% 48%,#b7519436,transparent 52%)}.birthday-heading{font-size:clamp(29px,4vw,54px)}.celebration-chapter .chapter-actions{gap:15px}.celebration-chapter .wish-prompt{font-size:12px}.wish-beam{position:absolute;z-index:0;left:50%;top:20%;width:2px;height:36%;background:linear-gradient(transparent,#f9e1eb,transparent);box-shadow:0 0 25px 7px #da9ad459;opacity:0;animation:wish-rise 2.6s ease-out .2s both;pointer-events:none}.story-letter{height:auto;min-height:calc(100svh - 172px)}.letter-chapter{position:relative;inset:auto;min-height:inherit;pointer-events:auto;padding:0 22px 38px}.letter-chapter .chapter-heading{padding-bottom:40px}.phase-letter .heart-stage{opacity:.12;top:75px;height:430px;pointer-events:none;transform:translate(-50%) scale(.8)}.phase-letter .heart-canvas{pointer-events:none}.letter-actions{display:flex;flex-direction:column;align-items:center;gap:20px;text-align:center;margin:34px auto 0}.closing-links{display:flex;align-items:center;gap:22px;color:#7b627d}.closing-links .text-button{font-size:10px;border-bottom-color:transparent}.closing-wish{color:#967e97;font-size:10px;letter-spacing:2px;margin:2px 0 0}.site-footer{position:relative;z-index:8;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:84px;padding:14px 4.5vw 22px}.footer-note,.footer-ending{font:8px Georgia,serif;letter-spacing:1.6px;color:#826e83;white-space:nowrap}.chapter-nav{display:flex;align-items:center;gap:12px;align-self:flex-start;padding-top:4px}.chapter-nav button{position:relative;display:flex;flex-direction:column;align-items:center;gap:9px;padding:0;min-width:24px;background:transparent;border:0;color:#8e758e}.nav-dot{display:grid;place-items:center;width:6px;height:6px;border:1px solid #a084a367;border-radius:50%;font-size:10px;line-height:1;color:#b995b4}.active .nav-dot{background:#e8bfdc;border-color:#e8bfdc;box-shadow:0 0 12px #dda6d58c}.completed .nav-dot{border:0}.nav-label{position:absolute;top:16px;white-space:nowrap;font-size:8px;letter-spacing:1px;opacity:0;transition:opacity .3s}.active .nav-label,.chapter-nav button:hover:not(:disabled) .nav-label{opacity:1}.nav-line{width:30px;height:1px;background:#ac86ad29;margin-top:3px}.nav-line.completed{background:#c49aba66}.chapter-nav button:disabled{opacity:.4}.memory-dialog{padding:0;width:min(600px,calc(100vw - 38px));max-height:calc(100svh - 40px);border:1px solid #d8b0c645;border-radius:8px;background:#171020;color:#f3deed;box-shadow:0 35px 150px #000a;overflow:auto;scrollbar-width:thin;scrollbar-color:#715571 #171020}.memory-dialog::backdrop{background:#05030cbe;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.memory-card{position:relative}.dialog-close{position:absolute;top:14px;right:14px;z-index:2;display:grid;place-items:center;border:1px solid #f7e6ed77;background:#1a112a66;color:#fff3f9;border-radius:50%;width:33px;height:33px;font:24px Georgia,serif;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.memory-photo{position:relative;overflow:hidden}.memory-photo img{display:block;width:100%;height:auto;aspect-ratio:1.7;object-fit:cover}.memory-photo:after{content:"";position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#171020)}.memory-photo>span{position:absolute;z-index:1;bottom:18px;left:34px;font-size:10px;letter-spacing:3px;color:#fff1e6}.memory-copy{padding:18px 35px 30px;text-align:left}.memory-copy .eyebrow{justify-content:flex-start;font-size:8px;color:#b190aa;letter-spacing:2px}.memory-copy h2{font:400 clamp(20px,3vw,28px)/1.6 "Songti SC",SimSun,serif;letter-spacing:2px;margin:16px 0;color:#f2d9e8}.memory-caption{color:#bba3b8;font-size:12px;line-height:2;letter-spacing:1px;margin:0 0 22px}.memory-collect{display:flex;justify-content:space-between;align-items:center;width:100%;padding:13px 0 3px;border:0;border-top:1px solid #ad86aa33;background:none;color:#e3bcd6;font-size:11px;letter-spacing:2px}.memory-collect span{font-size:24px}.notification{position:fixed;z-index:30;left:50%;bottom:30px;transform:translate(-50%);max-width:calc(100vw - 32px);margin:0;padding:14px 22px;background:#24172ff0;border:1px solid #e4bbd23d;border-radius:5px;font-size:11px;line-height:1.8;letter-spacing:1px;color:#e9d0e1;text-align:center;box-shadow:0 10px 45px #0005}.chapter-enter-active,.chapter-leave-active{transition:opacity .65s,transform .65s}.chapter-enter-from{opacity:0;transform:translateY(12px)}.chapter-leave-to{opacity:0;transform:translateY(-8px)}.toast-enter-active,.toast-leave-active{transition:opacity .3s}.toast-enter-from,.toast-leave-to{opacity:0}@keyframes breathe{0%,to{opacity:.5;transform:scale(.9)}50%{opacity:1;transform:scale(1.15)}}@keyframes star-float{0%,to{transform:translateY(-4px)}50%{transform:translateY(4px)}}@keyframes sound-wave{0%{transform:scaleY(.35)}to{transform:scaleY(1)}}@keyframes wish-rise{0%{opacity:0;transform:translateY(75%) scaleY(.2)}30%{opacity:1}to{opacity:0;transform:translateY(-120%) scaleY(1.5)}}@media(min-width:1400px){.story{height:calc(100svh - 188px);min-height:680px}.site-header{height:96px}.site-footer{min-height:92px}.heart-stage,.memory-stars{top:120px;height:calc(100% - 215px)}.chapter-heading{padding-top:28px}}@media(max-width:900px){.footer-ending{display:none}.footer-note{font-size:7px;letter-spacing:1px}.private-dedication{display:none}.site-footer{gap:28px}.chapter-nav{margin-right:25px}.header-tools{gap:10px}}@media(max-width:600px){.site-header{height:76px;padding:0 22px}.brand{font-size:22px;gap:6px}.brand-star{font-size:28px}.brand-divider,.brand small{display:none}.music-toggle{padding:0 12px;min-height:33px;font-size:9px;gap:7px}.story{height:calc(100svh - 158px);min-height:610px}.chapter-heading{padding:25px 16px 0}.eyebrow{font-size:8px;letter-spacing:2px;gap:10px}h1{font-size:28px;letter-spacing:1.7px;margin:18px 0 11px}.subtitle{font-size:10px;letter-spacing:1px;padding:0 14px;line-height:2}.heart-stage,.memory-stars{top:136px;width:calc(100vw + 12px);height:calc(100% - 270px)}.chapter-actions{left:22px;right:22px;bottom:10px;gap:15px;min-height:117px}.interaction-hint{font-size:9px;letter-spacing:.6px}.collected-count{margin-left:8px;font-size:8px}.tiny-star{margin-right:3px}.primary-button{font-size:11px;padding:15px 24px;min-height:48px;gap:17px}.text-button{font-size:10px}.wish-prompt{font-size:11px;line-height:2;letter-spacing:1px}.invitation-heading{padding-top:42px}.invitation-heading h1{font-size:36px;line-height:1.65;letter-spacing:3px;margin:25px 0 18px}.invitation-heading .subtitle{font-size:10px;letter-spacing:1.8px}.invitation-star{top:53%;width:110px;height:110px}.star-cross{font-size:64px}.invitation-actions{bottom:26px;gap:12px}.invitation-orbits{width:360px;top:51%}.vertical-note{display:none}.recipient-line{font-size:8px;letter-spacing:3px}.recipient-line span{font-size:11px}.invitation-prompt{font-size:10px;letter-spacing:2px}.memory-star{flex-direction:column;gap:4px;padding:4px;min-height:75px}.memory-spark{font-size:23px}.memory-label{font-size:10px;letter-spacing:1px;padding:6px 9px;text-align:center}.memory-label small{font-size:7px;margin-top:5px}.memory-star:nth-child(1){left:14%!important;top:23%!important}.memory-star:nth-child(2){left:84%!important;top:34%!important}.memory-star:nth-child(3){left:79%!important;top:82%!important}.wish-core{width:82px;height:82px}.core-star{font-size:21px}.wish-core small{font-size:8px}.birthday-heading{font-size:28px}.birthday-heading .rose-text{display:block}.celebration-chapter .wish-prompt{font-size:10px}.site-footer{flex-direction:column-reverse;align-items:center;justify-content:center;gap:27px;padding:5px 22px 24px;min-height:82px}.chapter-nav{margin:0;gap:16px;padding:0}.nav-line{width:26px}.nav-label{font-size:7px}.footer-note{font-size:6px;letter-spacing:1.9px}.story-letter{height:auto;min-height:calc(100svh - 158px)}.letter-chapter{padding:0 18px 35px}.letter-chapter .chapter-heading{padding-bottom:35px}.letter-chapter h1{font-size:26px}.letter-actions{gap:16px}.closing-links{gap:15px}.closing-wish{font-size:9px;letter-spacing:1px}.memory-copy{padding:14px 24px 25px}.memory-photo>span{left:24px}.memory-copy h2{font-size:21px;letter-spacing:1px}.memory-caption{font-size:11px}.notification{bottom:18px;font-size:10px;width:max-content}.phase-letter .heart-stage{width:100vw;height:340px;top:60px}}@media(max-width:370px){h1{font-size:25px}.invitation-heading h1{font-size:32px}.chapter-nav{gap:11px}.nav-line{width:22px}.memory-label{font-size:9px}.interaction-hint{font-size:8px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.chapter-enter-from,.chapter-leave-to{transform:none}}@media(min-width:601px)and (max-height:790px){.site-header{height:72px}.story{height:calc(100svh - 138px);min-height:530px}.heart-stage,.memory-stars{top:105px;height:calc(100% - 205px)}.chapter-heading{padding-top:13px}.chapter-heading h1{font-size:35px;margin-top:12px;margin-bottom:7px}.invitation-heading{padding-top:20px}.invitation-heading h1{font-size:43px;margin-top:18px;line-height:1.5}.invitation-star{top:53%}.site-footer{min-height:66px;padding-top:8px;padding-bottom:19px}.story-letter{height:auto;min-height:calc(100svh - 138px)}}.phase-blessings .story{min-height:720px}.planet-stage{position:absolute;left:50%;top:160px;bottom:145px;transform:translate(-50%);width:min(100%,1100px);height:auto;pointer-events:auto}.blessings-chapter .planet-stage .planet-space{top:36px;bottom:84px}.blessing-actions{gap:12px;min-height:106px}.demo-caption{margin:0;color:#a88fa8;font-size:9px;letter-spacing:1px;line-height:1.8}.story-memories{height:auto;min-height:calc(100svh - 172px)}.memories-chapter{position:relative;inset:auto;pointer-events:auto;min-height:inherit;padding:0 22px 35px}.memories-chapter .chapter-heading{padding-bottom:24px}.journey-links{display:flex;justify-content:center;align-items:center;gap:20px;color:#8b708c;margin:20px auto 0}.journey-links .text-button{font-size:10px;border-bottom-color:transparent}.chapter-nav{gap:clamp(7px,1vw,12px)}.nav-line{width:clamp(16px,2vw,26px)}.closing-links{flex-wrap:wrap;justify-content:center}.blessing-dialog{position:fixed;width:min(620px,calc(100vw - 36px));max-height:calc(100svh - 40px);padding:0;border:1px solid #dcb5d143;border-radius:9px;background:#171020;color:#f4dfed;box-shadow:0 30px 130px #000a;overflow:auto;scrollbar-width:thin;scrollbar-color:#745874 #171020}.blessing-dialog::backdrop{background:#06030cbe;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.blessing-dialog .dialog-close{position:sticky;float:right;top:14px;right:14px;margin:14px 14px -47px 0;z-index:6}.blessing-detail{overflow:hidden}.blessing-cover{position:relative;min-height:130px;background:#21172c}.blessing-cover img{display:block;width:100%;max-height:330px;object-fit:cover;aspect-ratio:1.8}.blessing-cover:after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#171020)}.blessing-cover>span{position:absolute;left:32px;bottom:15px;z-index:1;color:#fff0e4;font-size:10px;letter-spacing:3px}.blessing-video{padding:44px 18px 0;background:#0b0711}.blessing-video video{display:block;width:100%;max-height:52svh;background:#050309;border-radius:4px;outline:none}.blessing-letter-top{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:22px;height:170px;background:radial-gradient(ellipse at 50% 65%,color-mix(in srgb,var(--wish-color) 18%,transparent),transparent 70%)}.blessing-letter-top>span{font-size:55px;color:var(--wish-color);text-shadow:0 0 30px color-mix(in srgb,var(--wish-color) 50%,transparent)}.blessing-letter-top>small{font:8px Georgia,serif;letter-spacing:4px;color:#bea1b7}.blessing-copy{padding:22px 34px 30px}.blessing-copy>.eyebrow{justify-content:flex-start;font-size:8px;letter-spacing:2px}.blessing-copy h2,.blessing-wall h2{font:400 25px/1.6 Songti SC,SimSun,serif;letter-spacing:2px;color:#f0d7e7;margin:14px 0 9px;outline:none}.blessing-message{font:15px/2.2 Songti SC,SimSun,serif;color:#e1c5d9;letter-spacing:1.2px;margin:22px 0 30px;white-space:pre-line;overflow-wrap:anywhere}.blessing-detail-actions{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #bd90b92b;padding-top:20px}.blessing-detail-actions .primary-button{font-size:10px;padding:13px 21px;min-height:43px;gap:14px}.blessing-detail-actions .text-button{font-size:10px;border-bottom:0}.media-note{font-size:10px;line-height:1.8;color:#bda5bb}.wall-dialog{width:min(920px,calc(100vw - 32px))}.blessing-wall{padding:42px 32px 28px;text-align:center}.blessing-wall>.eyebrow{font-size:8px;letter-spacing:2.7px}.blessing-wall h2{font-size:29px;margin-top:17px}.wall-description{font-size:11px;line-height:1.9;letter-spacing:1px;color:#b99db3;margin:0 0 7px}.wall-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:27px;text-align:left}.wall-card{display:flex;flex-direction:column;position:relative;overflow:hidden;min-width:0;text-align:left;border:1px solid #d1a6cb28;border-radius:6px;background:linear-gradient(135deg,#26182d,#191120);padding:0 17px 17px;color:#e6cada;transition:border-color .25s,transform .25s}.wall-card:hover{transform:translateY(-3px);border-color:#dfb1d26b}.wall-cover{position:relative;margin:0 -17px 16px;background:#23132d;height:115px;overflow:hidden}.wall-cover img{display:block;width:100%;height:100%;object-fit:cover;opacity:.88;transition:transform .5s}.wall-card:hover img{transform:scale(1.05)}.video-cover-icon{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:31px;height:31px;border:1px solid #ffffff88;border-radius:50%;color:#fff;background:#11081a55;font-size:11px}.wall-letter-icon{display:block;align-self:center;color:var(--wish-color);font-size:37px;line-height:1;text-shadow:0 0 23px color-mix(in srgb,var(--wish-color) 35%,transparent);margin:25px 0 27px}.wall-relation{font-size:8px;letter-spacing:1px;color:#ae8fa7;margin-bottom:8px}.wall-card strong{font:13px/1.6 Songti SC,serif;color:#edcee2;margin-bottom:9px;overflow-wrap:anywhere}.wall-message{font-size:10px;line-height:1.9;color:#bda3b7;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:17px}.wall-card>small{font-size:8px;letter-spacing:1px;color:var(--wish-color);margin-top:auto}@media(min-width:1400px){.planet-stage{top:190px}}@media(min-width:601px)and (max-height:790px){.phase-blessings .story{min-height:640px}.planet-stage{top:165px;bottom:128px}.blessings-chapter .planet-stage .planet-space{bottom:90px}.story-memories{height:auto;min-height:calc(100svh - 138px)}}@media(max-width:600px){.phase-blessings .story{min-height:680px}.planet-stage{top:165px;bottom:150px;width:100%}.blessings-chapter .planet-stage .planet-space{top:24px;bottom:76px}.blessings-chapter .subtitle{max-width:330px;margin:auto}.blessing-actions{gap:14px;bottom:12px}.demo-caption{font-size:8px;letter-spacing:.4px}.blessing-actions .primary-button{font-size:10px;gap:12px;padding:15px 22px}.story-memories{height:auto;min-height:calc(100svh - 158px)}.memories-chapter{padding:0 12px 24px}.memories-chapter .chapter-heading{padding-bottom:18px}.memories-chapter h1{font-size:26px}.journey-links{gap:16px;margin-top:12px}.chapter-nav{gap:9px}.chapter-nav button{min-width:20px}.nav-line{width:18px}.nav-label{font-size:7px;letter-spacing:.4px}.blessing-copy{padding:17px 24px 25px}.blessing-copy h2{font-size:21px;letter-spacing:1px}.blessing-message{font-size:13px;letter-spacing:.8px;line-height:2.15;margin-bottom:23px}.blessing-cover>span{left:24px}.blessing-video{padding:43px 10px 0}.blessing-detail-actions{gap:12px;flex-wrap:wrap}.blessing-detail-actions .primary-button{padding:12px 16px;gap:10px}.blessing-detail-actions .text-button{font-size:9px}.blessing-letter-top{height:145px;gap:18px}.blessing-wall{padding:45px 16px 22px}.blessing-wall h2{font-size:23px;letter-spacing:1px}.wall-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-top:22px}.wall-card{padding:0 12px 13px}.wall-cover{margin:0 -12px 13px;height:90px}.wall-card strong{font-size:11px}.wall-relation{font-size:7px}.wall-message{font-size:9px;line-height:1.8}.wall-letter-icon{margin:20px 0 25px;font-size:33px}}@media(max-width:370px){.blessings-chapter h1{font-size:24px;letter-spacing:1px}}@media(prefers-reduced-motion:reduce){.wall-card,.wall-cover img{transition:none}.wall-card:hover{transform:none}}.star-backdrop{transition:opacity 1.4s ease}.phase-hub .star-backdrop{opacity:.86}.phase-hub .ambient-nebula{background:radial-gradient(ellipse at 15% 65%,#4325521c,transparent 40%),radial-gradient(ellipse at 85% 28%,#30284e19,transparent 42%)}.hub-chapter .chapter-heading,.hub-actions{transition:opacity .5s ease,transform .6s cubic-bezier(.22,1,.36,1)}.hub-chapter .eyebrow{color:#bca4b4;letter-spacing:3.4px}.hub-chapter h1{color:#f2e4ed;text-shadow:0 0 35px #d8acc10c}.hub-chapter .rose-text{color:#e4c2d7}.hub-chapter .subtitle{color:#b7a5b7}.is-portal-opening .hub-chapter .chapter-heading{opacity:.48;transform:translateY(-3px)}.is-portal-opening .hub-actions{opacity:.3;transform:translateY(3px)}.experience .chapter-enter-active{transition:opacity .75s ease,transform .9s cubic-bezier(.16,1,.3,1)}.experience .chapter-leave-active{transition:opacity .28s ease,transform .35s ease}.experience .chapter-enter-from{transform:translateY(9px)}.experience .chapter-leave-to{transform:translateY(-4px)}.home-link{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:37px;padding:0 4px;border:0;background:transparent;color:#cfb4ca;font-size:10px;letter-spacing:1px;white-space:nowrap}.home-link>span:first-child{font:19px Georgia,serif;color:#e4c3db}.home-link:hover{color:#fff0fa}.hub-actions{min-height:90px;gap:13px;bottom:8px}.hub-wish{margin:0;color:#d1b5cc;font:13px/1.9 Songti SC,SimSun,serif;letter-spacing:2px}.hub-actions .interaction-hint{color:#a58ba5;font-size:10px;letter-spacing:1px}.footer-center{font-size:9px;letter-spacing:1.8px;line-height:1.8;color:#967c95;text-align:center}.phase-hub .heart-stage{top:110px;height:calc(100% - 220px)}.phase-hub .heart-canvas{cursor:grab}.phase-hub .heart-canvas:active{cursor:grabbing}.phase-hub .gather-zone .heart-canvas{touch-action:none;cursor:crosshair}.gather-actions{gap:10px}.gather-actions .gather-meter{margin:0}.gather-help{padding:3px 8px;color:#ae96ac;font-size:10px;letter-spacing:1px}@media(prefers-reduced-motion:reduce){.star-backdrop,.hub-chapter .chapter-heading,.hub-actions,.experience .chapter-enter-active,.experience .chapter-leave-active{transition:none}.is-portal-opening .hub-chapter .chapter-heading,.is-portal-opening .hub-actions,.experience .chapter-enter-from,.experience .chapter-leave-to{transform:none}}@media(min-width:1400px){.phase-hub .heart-stage{top:120px;height:calc(100% - 220px)}}@media(min-width:601px)and (max-height:790px){.phase-hub .heart-stage{top:112px;height:calc(100% - 212px)}.hub-actions{bottom:2px;min-height:85px}.hub-actions .interaction-hint{font-size:9px}}@media(max-width:900px){.header-tools{gap:17px}}@media(max-width:600px){.header-tools{gap:12px}.home-link{font-size:9px;gap:6px;padding:0;min-height:35px}.home-link>span:first-child{font-size:17px}.phase-hub .heart-stage{top:137px;height:calc(100% - 257px)}.hub-actions{gap:12px;bottom:12px;min-height:90px}.hub-wish{font-size:11px;letter-spacing:1.3px}.hub-actions .interaction-hint{font-size:9px;letter-spacing:.5px}.footer-center{font-size:8px;letter-spacing:1px}.site-footer{gap:16px;min-height:82px;padding-top:8px}.hub-chapter .chapter-heading h1{font-size:28px}}@media(max-width:370px){.home-label{display:none}.home-link{width:30px;min-height:35px}.home-link>span:first-child{font-size:21px}.header-tools{gap:8px}.hub-chapter .chapter-heading h1{font-size:25px}}
