.letter-bday-cake.svelte-gqzoun{position:relative;display:inline-block;overflow:visible;contain:layout}.lbc-stage.svelte-gqzoun{position:absolute;left:var(--cake-left);top:var(--cake-top);width:250px;height:200px;transform:scale(var(--cake-scale));transform-origin:top left}.cake.svelte-gqzoun{position:absolute;width:250px;height:200px;top:50%;left:50%;margin-top:-70px;margin-left:-125px}.cake.svelte-gqzoun>:where(.svelte-gqzoun){position:absolute}.plate.svelte-gqzoun{width:270px;height:110px;bottom:-10px;left:-10px;border-radius:50%;background-color:#ccc;box-shadow:0 2px #b3b3b3,0 4px #b3b3b3,0 5px 40px #00000080}.layer.svelte-gqzoun{display:block;width:250px;height:100px;border-radius:50%;background-color:#553c13;box-shadow:0 2px #5c4115,0 4px #4a3210,0 6px #49310f,0 8px #47300e,0 10px #462f0d,0 12px #452e0c,0 14px #432d0b,0 16px #422c0a,0 18px #412b09,0 20px #3f2a08,0 22px #3e2907,0 24px #3d2806,0 26px #3b2705,0 28px #3a2604,0 30px #392503}.layer-top.svelte-gqzoun{top:0}.layer-middle.svelte-gqzoun{top:33px}.layer-bottom.svelte-gqzoun{top:66px}.icing.svelte-gqzoun{top:2px;left:5px;width:240px;height:90px;border-radius:50%;background-color:#f0e4d0}.icing.svelte-gqzoun:before{content:"";position:absolute;inset:4px 5px 6px;z-index:1;border-radius:50%;background-color:#f4e9d9;box-shadow:0 0 4px #f7ede0,0 0 4px #f7ede0,0 0 4px #f7ede0}.drip.svelte-gqzoun{display:block;width:50px;height:60px;border-bottom-right-radius:25px;border-bottom-left-radius:25px;background-color:#f0e4d0}.drip1.svelte-gqzoun{top:53px;left:5px;width:40px;height:48px;transform:skewY(15deg)}.drip2.svelte-gqzoun{top:69px;left:181px;transform:skewY(-15deg)}.drip3.svelte-gqzoun{top:54px;left:90px;width:80px;border-bottom-right-radius:40px;border-bottom-left-radius:40px}.candle.svelte-gqzoun{top:-20px;left:50%;z-index:10;width:16px;height:50px;margin-left:-8px;border-radius:8px/4px;background-color:#7b020b}.candle.svelte-gqzoun:before{content:"";position:absolute;top:0;left:0;width:16px;height:8px;border-radius:50%;background-color:#9d1a23}.flame.svelte-gqzoun{position:absolute;top:-34px;left:50%;z-index:10;width:15px;height:35px;margin-left:-7.5px;border-radius:10px/25px 25px 10px 10px;background-color:orange;box-shadow:0 0 10px #ffa50080,0 0 20px #ffa50080,0 0 60px #ffa50080,0 0 80px #ffa50080;transform-origin:50% 90%;animation:svelte-gqzoun-lbc-flicker 1s ease-in-out alternate infinite}@keyframes svelte-gqzoun-lbc-flicker{0%{transform:skew(5deg);opacity:.72}25%{transform:skew(-5deg);opacity:1}50%{transform:skew(10deg);opacity:.84}75%{transform:skew(-10deg);opacity:.92}to{transform:skew(5deg);opacity:1}}@media(prefers-reduced-motion:reduce){.flame.svelte-gqzoun{animation:none}}.birthday-confetti.svelte-1htklaj{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.birthday-confetti-cone.svelte-r3oufy{width:100%;height:100%;pointer-events:none}.cone-mirror.svelte-r3oufy,.cone-motion.svelte-r3oufy,svg.svelte-r3oufy{width:100%;height:100%}.birthday-confetti-cone.is-flipped.svelte-r3oufy .cone-mirror:where(.svelte-r3oufy){transform:scaleX(-1)}.cone-motion.svelte-r3oufy{opacity:0;transform:scale(.5) rotate(-60deg);transform-origin:0% 90%;transition:opacity .35s ease,transform .9s cubic-bezier(.22,.68,.31,1)}.cone-motion.is-entered.svelte-r3oufy,.cone-motion.is-live.svelte-r3oufy{opacity:1;transform:scale(1) rotate(0)}svg.svelte-r3oufy{display:block;overflow:visible}.bd-fill-0.svelte-r3oufy{fill:#fc6394}.bd-fill-1.svelte-r3oufy{fill:#ef3c8a}.bd-fill-2.svelte-r3oufy{fill:#5adaea}.bd-fill-3.svelte-r3oufy{fill:#974cbe}.bd-fill-4.svelte-r3oufy{fill:#3cbecd}.bd-fill-5.svelte-r3oufy{fill:#813bbe}.bd-fill-6.svelte-r3oufy{fill:#f9b732}.bd-streamer.svelte-r3oufy{fill:none;stroke:#f9b732;stroke-width:9;stroke-linecap:round;stroke-miterlimit:10;opacity:0}.bd-anim-a.svelte-r3oufy,.bd-anim-b.svelte-r3oufy,.bd-anim-c.svelte-r3oufy,.bd-anim-d.svelte-r3oufy{opacity:0}@keyframes svelte-r3oufy-bd-cone{0%{transform:translate(40px,95px) rotate(45deg) scale(1)}15%{transform:translate(10px,145px) rotate(45deg) scale(1.1,.85)}to{transform:translate(40px,105px) rotate(45deg) scale(1)}}.bd-anim-cone.svelte-r3oufy{transform:translate(40px,95px) rotate(45deg)}.cone-motion.is-live.svelte-r3oufy .bd-anim-cone:where(.svelte-r3oufy){animation:svelte-r3oufy-bd-cone 1.2s ease infinite}@keyframes svelte-r3oufy-bd-strip{0%,2%{stroke-dasharray:1000;stroke-dashoffset:500;transform:translate(-30px,30px);opacity:0}35%{stroke-dasharray:1000;stroke-dashoffset:900;transform:translate(-2px);opacity:1}85%{stroke-dasharray:1000;stroke-dashoffset:1000;transform:translate(1px,-5px);opacity:1}90%,to{stroke-dashoffset:1000;transform:translate(2px,-8px);opacity:0}}.cone-motion.is-live.svelte-r3oufy .bd-streamer:where(.svelte-r3oufy){animation:svelte-r3oufy-bd-strip 1.2s ease infinite}@keyframes svelte-r3oufy-bd-a{0%{opacity:0;transform:translate(-30px,20px) rotate(0)}15%{opacity:1;transform:translate(25px,-10px) rotate(60deg)}80%{opacity:1;transform:translate(33px,-18px) rotate(180deg)}to{opacity:0;transform:translate(37px,-23px) scale(.5) rotate(230deg)}}.cone-motion.is-live.svelte-r3oufy .bd-anim-a:where(.svelte-r3oufy){animation:svelte-r3oufy-bd-a 1.2s ease-out infinite}@keyframes svelte-r3oufy-bd-b{0%{opacity:0;transform:translate(-30px,20px) rotate(0)}12%{opacity:1;transform:translate(25px,-10px) rotate(60deg)}76%{opacity:1;transform:translate(33px,-18px) rotate(180deg)}to{opacity:0;transform:translate(37px,-23px) scale(.5) rotate(240deg)}}.cone-motion.is-live.svelte-r3oufy .bd-anim-b:where(.svelte-r3oufy){animation:svelte-r3oufy-bd-b 1.2s ease-out infinite}@keyframes svelte-r3oufy-bd-c{0%{opacity:.7;transform:translate(-30px,20px) rotate(0)}18%{opacity:1;transform:translate(5px,-10px) rotate(60deg)}76%{opacity:1;transform:translate(13px,-18px) rotate(180deg)}to{opacity:0;transform:translate(17px,-23px) scale(.5) rotate(230deg)}}.cone-motion.is-live.svelte-r3oufy .bd-anim-c:where(.svelte-r3oufy){animation:svelte-r3oufy-bd-c 1.2s ease-out infinite}@keyframes svelte-r3oufy-bd-d{0%{opacity:.7;transform:translate(-20px,20px) rotate(0)}18%{opacity:1;transform:translate(-5px,-10px) rotate(60deg)}76%{opacity:1;transform:translate(-8px,-18px) rotate(180deg)}to{opacity:0;transform:translate(-10px,-23px) scale(.5) rotate(230deg)}}.cone-motion.is-live.svelte-r3oufy .bd-anim-d:where(.svelte-r3oufy){animation:svelte-r3oufy-bd-d 1.2s ease-out infinite}@media(prefers-reduced-motion:reduce){.cone-motion.svelte-r3oufy{opacity:1;transform:none;transition:none}.bd-anim-cone.svelte-r3oufy,.bd-streamer.svelte-r3oufy,.bd-anim-a.svelte-r3oufy,.bd-anim-b.svelte-r3oufy,.bd-anim-c.svelte-r3oufy,.bd-anim-d.svelte-r3oufy{animation:none!important;opacity:1}}.letter-to-cards-prompt__header.svelte-ll0r9m{display:flex;align-items:center;gap:12px}.letter-to-cards-prompt__header.svelte-ll0r9m>span:where(.svelte-ll0r9m){display:grid;width:42px;height:42px;flex:0 0 auto;place-items:center;border-radius:16px;color:hsl(var(--primary));background:linear-gradient(135deg,hsl(var(--primary) / .16),hsl(var(--accent) / .18))}.letter-to-cards-prompt__header.svelte-ll0r9m p:where(.svelte-ll0r9m){margin:0 0 3px;color:hsl(var(--primary));font-size:.7rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.letter-to-cards-prompt__header.svelte-ll0r9m h2:where(.svelte-ll0r9m){margin:0;color:hsl(var(--foreground));font-family:var(--font-serif);font-size:clamp(1.45rem,4vw,2rem);line-height:1.08}.letter-to-cards-prompt.svelte-ll0r9m{display:grid;gap:18px}.letter-to-cards-prompt__description.svelte-ll0r9m{margin:0;color:hsl(var(--muted-foreground));line-height:1.65}.letter-to-cards-prompt__field.svelte-ll0r9m,.letter-to-cards-prompt__location-card.svelte-ll0r9m{display:grid;gap:9px}.letter-to-cards-prompt__field.svelte-ll0r9m span:where(.svelte-ll0r9m),.letter-to-cards-prompt__location-card.svelte-ll0r9m span:where(.svelte-ll0r9m){display:inline-flex;align-items:center;gap:7px;color:hsl(var(--muted-foreground));font-size:.74rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.letter-to-cards-prompt__field.svelte-ll0r9m input:where(.svelte-ll0r9m){width:100%;min-height:48px;border:1px solid hsl(var(--border) / .82);border-radius:16px;padding:0 14px;color:hsl(var(--foreground));background:hsl(var(--background) / .58);font:inherit;outline:none}.letter-to-cards-prompt__field.svelte-ll0r9m input:where(.svelte-ll0r9m):focus{border-color:hsl(var(--primary) / .75);box-shadow:0 0 0 3px hsl(var(--primary) / .12)}.letter-to-cards-prompt__field.svelte-ll0r9m small:where(.svelte-ll0r9m),.letter-to-cards-prompt__location-card.svelte-ll0r9m small:where(.svelte-ll0r9m){color:hsl(var(--muted-foreground));font-size:.74rem;font-weight:700;line-height:1.35}.letter-to-cards-prompt__location-card.svelte-ll0r9m{gap:8px}.letter-to-cards-prompt__location-card.svelte-ll0r9m button:where(.svelte-ll0r9m){width:fit-content;max-width:100%;border:1px solid hsl(var(--border) / .78);border-radius:999px;padding:10px 14px;color:hsl(var(--foreground));background:hsl(var(--card) / .75);font:inherit;font-size:.86rem;font-weight:850;cursor:pointer}.letter-to-cards-prompt__location-card.svelte-ll0r9m button:where(.svelte-ll0r9m):hover,.letter-to-cards-prompt__location-card.svelte-ll0r9m button:where(.svelte-ll0r9m):focus-visible{border-color:hsl(var(--primary) / .68);outline:none;box-shadow:0 0 0 3px hsl(var(--primary) / .12)}.letter-to-cards-prompt__submit.svelte-ll0r9m{display:inline-flex;min-height:52px;align-items:center;justify-content:center;gap:9px;border:0;border-radius:999px;color:hsl(var(--primary-foreground));background:hsl(var(--primary));font:inherit;font-weight:900;cursor:pointer}.letter-to-cards-prompt__submit.svelte-ll0r9m:disabled{cursor:not-allowed;opacity:.56}.letter-to-cards-prompt__spinner.svelte-ll0r9m{display:inline-flex;animation:svelte-ll0r9m-letter-to-cards-spin .9s linear infinite}@keyframes svelte-ll0r9m-letter-to-cards-spin{to{transform:rotate(360deg)}}.page-typing-reveal.svelte-wwi233{position:relative;display:grid;grid-template-rows:minmax(0,1fr) 68px;width:100%;height:100%;max-width:100%;min-width:0;min-height:0;overflow:hidden;touch-action:pan-y;-webkit-user-select:none;user-select:none}.page-typing-reveal.is-typing.svelte-wwi233{cursor:pointer}.page-typing-reveal.svelte-wwi233:focus{outline:none}.page-typing-reveal.svelte-wwi233:focus-visible{outline:none}.page-typing-reveal__viewport.svelte-wwi233{display:flex;min-width:0;min-height:0;align-items:stretch;justify-content:flex-start;overflow:hidden}.page-typing-reveal__page.svelte-wwi233{display:flex;min-width:0;width:100%;max-width:100%;height:100%;min-height:0;align-content:flex-start;align-items:flex-start;justify-content:flex-start;border:0;padding:0;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;overflow-wrap:anywhere;color:inherit;background:transparent;font:inherit;text-align:start;cursor:pointer;animation:svelte-wwi233-page-typing-page-in .42s cubic-bezier(.22,1,.36,1) both}.page-typing-reveal.svelte-wwi233 p:where(.svelte-wwi233){margin:0;max-width:100%;overflow-wrap:anywhere;white-space:pre-wrap;color:var(--page-typing-text-color, hsl(var(--foreground) / .78))}.page-typing-reveal__cursor.svelte-wwi233{position:relative;top:2px;display:inline-block;width:10px;height:1em;margin-inline-start:.125rem;border-radius:3px;background:linear-gradient(to bottom,hsl(var(--primary) / .72),hsl(var(--accent) / .72));animation:svelte-wwi233-page-typing-cursor .9s ease-in-out infinite;vertical-align:baseline}.page-typing-reveal__controls.svelte-wwi233{display:flex;width:fit-content;align-items:center;gap:7px;margin:0 auto;padding:4px;border:1px solid hsl(var(--border) / .28);border-radius:999px;background:hsl(var(--background) / .34);box-shadow:0 8px 24px hsl(var(--foreground) / .06);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.page-typing-reveal__controls.svelte-wwi233>button:where(.svelte-wwi233){display:grid;width:24px;height:24px;place-items:center;border:0;border-radius:999px;padding:0;color:hsl(var(--foreground) / .62);background:transparent;cursor:pointer;transition:color .18s ease,background .18s ease,transform .18s ease}.page-typing-reveal__controls.svelte-wwi233>button:where(.svelte-wwi233):hover:not(:disabled),.page-typing-reveal__controls.svelte-wwi233>button:where(.svelte-wwi233):focus-visible{color:hsl(var(--foreground));background:hsl(var(--primary) / .12);transform:scale(1.08)}.page-typing-reveal__controls.svelte-wwi233>button:where(.svelte-wwi233):disabled{opacity:.3;cursor:default}[dir=rtl] .page-typing-reveal__controls.svelte-wwi233 svg{transform:scaleX(-1)}.page-typing-reveal__dots.svelte-wwi233{display:flex;align-items:center;gap:4px}.page-typing-reveal__dots.svelte-wwi233 button:where(.svelte-wwi233){width:6px;height:6px;border:0;border-radius:999px;padding:0;background:hsl(var(--primary) / .25);cursor:pointer;transition:width .22s ease,background .22s ease}.page-typing-reveal__dots.svelte-wwi233 button.active:where(.svelte-wwi233){width:16px;background:hsl(var(--primary))}.page-typing-reveal__dots.svelte-wwi233 button.visited:where(.svelte-wwi233):not(.active){background:hsl(var(--primary) / .58)}.page-typing-reveal__hint.svelte-wwi233{margin:6px auto 0;text-align:center;color:var(--page-typing-hint-color, hsl(var(--foreground) / .44));font-size:10px;font-style:italic}.page-typing-reveal__navigation.svelte-wwi233{display:flex;min-width:0;min-height:68px;flex-direction:column;align-items:center;justify-content:flex-start;padding-top:8px;overflow:hidden}@keyframes svelte-wwi233-page-typing-page-in{0%{opacity:0;filter:blur(3px);transform:translate3d(var(--page-offset),4px,0) scale(.985)}to{opacity:1;filter:blur(0);transform:translateZ(0) scale(1)}}@keyframes svelte-wwi233-page-typing-cursor{0%,to{opacity:.45}50%{opacity:1}}@media(prefers-reduced-motion:reduce){.page-typing-reveal__page.svelte-wwi233,.page-typing-reveal__cursor.svelte-wwi233,.page-typing-reveal__controls.svelte-wwi233 button:where(.svelte-wwi233),.page-typing-reveal__dots.svelte-wwi233 button:where(.svelte-wwi233){animation:none;transition:none}}.letter-delete__header.svelte-1k09zc5{display:flex;align-items:center;gap:14px}.letter-delete__dev-tools.svelte-1k09zc5{position:relative;z-index:7;display:inline-grid;justify-items:end;margin-inline-start:auto}.letter-delete__header-action.svelte-1k09zc5{display:inline-flex;width:36px;height:36px;flex:0 0 auto;align-items:center;justify-content:center;border:1px solid hsl(var(--border) / .62);border-radius:999px;color:hsl(var(--foreground));background:hsl(var(--background) / .82);cursor:pointer;transition:background .16s ease,color .16s ease,border-color .16s ease}.letter-delete__header-action.svelte-1k09zc5:hover,.letter-delete__dev-tools.is-open.svelte-1k09zc5 .letter-delete__header-action:where(.svelte-1k09zc5){border-color:hsl(var(--primary) / .54);color:hsl(var(--primary));background:hsl(var(--primary) / .12)}.letter-delete__dev-panel.svelte-1k09zc5{position:absolute;top:calc(100% + 8px);inset-inline-end:0;display:grid;min-width:150px;gap:6px;border:1px solid hsl(var(--border) / .78);border-radius:16px;padding:10px;background:hsl(var(--background) / .94);box-shadow:0 18px 46px hsl(var(--foreground) / .2);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.letter-delete__dev-panel.svelte-1k09zc5 p:where(.svelte-1k09zc5){margin:0 0 2px;color:hsl(var(--muted-foreground));font-size:.68rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.letter-delete__dev-panel.svelte-1k09zc5 button:where(.svelte-1k09zc5){border:0;border-radius:10px;padding:8px 10px;color:hsl(var(--foreground));background:transparent;font:inherit;font-size:.78rem;font-weight:800;text-align:start;cursor:pointer}.letter-delete__dev-panel.svelte-1k09zc5 button:where(.svelte-1k09zc5):hover,.letter-delete__dev-panel.svelte-1k09zc5 button.is-active:where(.svelte-1k09zc5){color:hsl(var(--primary));background:hsl(var(--primary) / .1)}.letter-delete__icon.svelte-1k09zc5{display:inline-grid;width:44px;height:44px;place-items:center;border-radius:18px;background:hsl(var(--destructive) / .12);color:hsl(var(--destructive))}.letter-delete__header.svelte-1k09zc5 p:where(.svelte-1k09zc5),.letter-delete__header.svelte-1k09zc5 h2:where(.svelte-1k09zc5){margin:0}.letter-delete__header.svelte-1k09zc5 p:where(.svelte-1k09zc5){color:hsl(var(--muted-foreground));font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.letter-delete.svelte-1k09zc5{display:grid;gap:18px}.letter-delete__lead.svelte-1k09zc5{margin:0;color:hsl(var(--muted-foreground));line-height:1.6}.letter-delete__loading.svelte-1k09zc5,.letter-delete__error.svelte-1k09zc5,.letter-delete__privacy.svelte-1k09zc5,.letter-delete__tracking.svelte-1k09zc5,.letter-delete__confirm.svelte-1k09zc5,.letter-delete__password.svelte-1k09zc5{border:1px solid hsl(var(--border));border-radius:18px;padding:14px;background:hsl(var(--card) / .72)}.letter-delete__error.svelte-1k09zc5{display:flex;gap:10px;color:hsl(var(--destructive));background:hsl(var(--destructive) / .08)}.letter-delete__section.svelte-1k09zc5{display:grid;gap:10px}.letter-delete__section.svelte-1k09zc5 h3:where(.svelte-1k09zc5){margin:0;font-size:.95rem}.letter-delete__grid.svelte-1k09zc5{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.letter-delete__row.svelte-1k09zc5{display:flex;justify-content:space-between;gap:12px;border:1px solid hsl(var(--border));border-radius:14px;padding:10px 12px;background:hsl(var(--background) / .64)}.letter-delete__row.svelte-1k09zc5 span:where(.svelte-1k09zc5){color:hsl(var(--muted-foreground))}.letter-delete__tracking.svelte-1k09zc5{display:flex;align-items:flex-start;gap:12px;cursor:pointer}.letter-delete__tracking.svelte-1k09zc5 input:where(.svelte-1k09zc5){margin-top:3px;width:18px;height:18px}.letter-delete__tracking.svelte-1k09zc5 span:where(.svelte-1k09zc5),.letter-delete__confirm.svelte-1k09zc5,.letter-delete__password.svelte-1k09zc5{display:grid;gap:6px}.letter-delete__tracking.svelte-1k09zc5 small:where(.svelte-1k09zc5),.letter-delete__privacy.svelte-1k09zc5{color:hsl(var(--muted-foreground));line-height:1.5}.letter-delete__privacy.svelte-1k09zc5{display:flex;gap:10px}.letter-delete__privacy.svelte-1k09zc5 a:where(.svelte-1k09zc5){color:hsl(var(--primary));font-weight:800}.letter-delete__password.svelte-1k09zc5 small:where(.svelte-1k09zc5),.letter-delete__password-error.svelte-1k09zc5{color:hsl(var(--muted-foreground))}.letter-delete__password-error.svelte-1k09zc5{color:hsl(var(--destructive))}.letter-delete__confirm.svelte-1k09zc5 input:where(.svelte-1k09zc5),.letter-delete__password.svelte-1k09zc5 input:where(.svelte-1k09zc5){width:100%;border:1px solid hsl(var(--border));border-radius:14px;padding:12px;background:hsl(var(--background));color:hsl(var(--foreground));font:inherit}.letter-delete__actions.svelte-1k09zc5{display:flex;justify-content:flex-end;gap:10px}.letter-delete__secondary.svelte-1k09zc5,.letter-delete__danger.svelte-1k09zc5{border:0;border-radius:999px;padding:12px 18px;font-weight:900;cursor:pointer}.letter-delete__secondary.svelte-1k09zc5{background:hsl(var(--muted));color:hsl(var(--foreground))}.letter-delete__danger.svelte-1k09zc5{background:hsl(var(--destructive));color:hsl(var(--destructive-foreground))}.letter-delete__danger.svelte-1k09zc5:disabled,.letter-delete__secondary.svelte-1k09zc5:disabled{cursor:not-allowed;opacity:.55}.letter-delete__shred.svelte-1k09zc5,.letter-delete__redirect.svelte-1k09zc5{display:grid;gap:16px;animation:svelte-1k09zc5-letter-delete-slide-in .24s ease-out}.letter-delete__shred-copy.svelte-1k09zc5 h3:where(.svelte-1k09zc5),.letter-delete__redirect.svelte-1k09zc5 h3:where(.svelte-1k09zc5),.letter-delete__shred-copy.svelte-1k09zc5 p:where(.svelte-1k09zc5),.letter-delete__redirect.svelte-1k09zc5 p:where(.svelte-1k09zc5){margin:0}.letter-delete__shred-copy.svelte-1k09zc5 p:where(.svelte-1k09zc5),.letter-delete__redirect.svelte-1k09zc5 p:where(.svelte-1k09zc5),.letter-delete__active-item.svelte-1k09zc5 small:where(.svelte-1k09zc5){color:hsl(var(--muted-foreground));line-height:1.5}.letter-delete__shred-stage.svelte-1k09zc5{display:grid;gap:12px}.letter-delete__trash-scene.svelte-1k09zc5{--trash-size: clamp(160px, 44vw, 240px);--trash-card-size: clamp(68px, 18vw, 104px);position:relative;min-height:clamp(182px,48vw,250px);overflow:hidden;border:1px solid hsl(var(--border) / .7);border-radius:28px;background:radial-gradient(circle at 50% 6%,hsl(var(--destructive) / .14),transparent 28%),linear-gradient(180deg,hsl(var(--background) / .98),hsl(var(--muted) / .42));box-shadow:inset 0 1px hsl(var(--background) / .78),0 26px 66px -52px hsl(var(--foreground) / .65)}.letter-delete__trash-shadow.svelte-1k09zc5{position:absolute;left:50%;bottom:calc(var(--trash-size) * .05);width:calc(var(--trash-size) * .92);height:calc(var(--trash-size) * .28);border-radius:999px;background:#3d4e662b;filter:blur(16px);transform:translate(-50%);animation:svelte-1k09zc5-letter-delete-trash-enter .36s ease-out both}.letter-delete__trash-can.svelte-1k09zc5{position:absolute;left:50%;bottom:calc(var(--trash-size) * -.4);width:min(var(--trash-size),84%);height:auto;transform:translate(-50%);transform-origin:center bottom;animation:svelte-1k09zc5-letter-delete-trash-enter .36s ease-out both}.letter-delete__trash-can--back.svelte-1k09zc5{z-index:1;filter:drop-shadow(0 24px 34px hsl(var(--foreground) / .12))}.letter-delete__trash-can--front.svelte-1k09zc5{z-index:4;bottom:calc(var(--trash-size) * -.38)}.letter-delete__trash-cards.svelte-1k09zc5{position:absolute;inset:0;z-index:3;pointer-events:none}.letter-delete__trash-card.svelte-1k09zc5{position:absolute;left:calc(50% - (var(--trash-card-size) / 2));top:calc(var(--trash-size) * .1);display:grid;width:var(--trash-card-size);min-height:calc(var(--trash-card-size) * 1.31);align-content:start;gap:7px;overflow:hidden;border:1px solid hsl(var(--border) / .86);border-radius:22px;padding:8px;color:hsl(var(--foreground));background:hsl(var(--card));box-shadow:0 18px 40px hsl(var(--foreground) / .16);transform-origin:center bottom;animation:svelte-1k09zc5-letter-delete-card-drop .52s cubic-bezier(.22,1,.36,1) both}.letter-delete__trash-card-photo.svelte-1k09zc5{display:grid;height:calc(var(--trash-card-size) * .67);place-items:center;border-radius:16px;color:hsl(var(--destructive));background:radial-gradient(circle at 28% 22%,hsl(var(--primary) / .2),transparent 24%),linear-gradient(135deg,hsl(var(--destructive) / .2),hsl(var(--primary) / .14))}.letter-delete__trash-card-toggle.svelte-1k09zc5{position:absolute;top:15px;right:15px;display:grid;width:24px;height:24px;place-items:center;border:2px solid hsl(var(--background));border-radius:999px;color:hsl(var(--primary-foreground));background:hsl(var(--primary));box-shadow:0 6px 14px hsl(var(--foreground) / .16)}.letter-delete__trash-card.svelte-1k09zc5 strong:where(.svelte-1k09zc5),.letter-delete__trash-card.svelte-1k09zc5 small:where(.svelte-1k09zc5){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.letter-delete__trash-card.svelte-1k09zc5 strong:where(.svelte-1k09zc5){font-size:.75rem}.letter-delete__trash-card.svelte-1k09zc5 small:where(.svelte-1k09zc5){color:hsl(var(--muted-foreground));font-size:.7rem}.letter-delete__active-item.svelte-1k09zc5{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;border:1px solid hsl(var(--border) / .72);border-radius:18px;padding:12px 14px;background:hsl(var(--background) / .76)}.letter-delete__active-item.svelte-1k09zc5 span:where(.svelte-1k09zc5):not(.letter-delete__active-icon){display:grid;min-width:0}.letter-delete__active-item.svelte-1k09zc5 b:where(.svelte-1k09zc5){color:hsl(var(--muted-foreground));font-size:.86rem}.letter-delete__active-icon.svelte-1k09zc5,.letter-delete__redirect-icon.svelte-1k09zc5{display:inline-grid;place-items:center;border-radius:14px;background:hsl(var(--destructive) / .11);color:hsl(var(--destructive));font-weight:900}.letter-delete__active-icon.svelte-1k09zc5{width:42px;height:42px}.letter-delete__shred-progress.svelte-1k09zc5{display:flex;flex-wrap:wrap;gap:8px}.letter-delete__shred-progress.svelte-1k09zc5 span:where(.svelte-1k09zc5){display:inline-grid;width:30px;height:30px;place-items:center;border:1px solid hsl(var(--border));border-radius:999px;color:hsl(var(--muted-foreground));background:hsl(var(--background) / .72)}.letter-delete__shred-progress.svelte-1k09zc5 span.letter-delete__progress-dot--active:where(.svelte-1k09zc5){border-color:hsl(var(--destructive) / .6);color:hsl(var(--destructive));background:hsl(var(--destructive) / .1)}.letter-delete__shred-progress.svelte-1k09zc5 span.letter-delete__progress-dot--done:where(.svelte-1k09zc5){border-color:hsl(var(--primary) / .42);color:hsl(var(--primary));background:hsl(var(--primary) / .1)}.letter-delete__shred-meter.svelte-1k09zc5{height:8px;overflow:hidden;border-radius:999px;background:hsl(var(--muted))}.letter-delete__shred-meter.svelte-1k09zc5 span:where(.svelte-1k09zc5){display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,hsl(var(--destructive)),hsl(var(--primary)));transition:width .46s ease}.letter-delete__redirect.svelte-1k09zc5{justify-items:center;text-align:center;border:1px solid hsl(var(--border));border-radius:24px;padding:24px 18px;background:radial-gradient(circle at top,hsl(var(--primary) / .12),hsl(var(--card) / .7) 58%)}.letter-delete__redirect-icon.svelte-1k09zc5{width:62px;height:62px;color:hsl(var(--primary));background:hsl(var(--primary) / .12)}.letter-delete__redirect-bar.svelte-1k09zc5{width:min(320px,100%);height:8px;overflow:hidden;border-radius:999px;background:hsl(var(--muted))}.letter-delete__redirect-bar.svelte-1k09zc5 span:where(.svelte-1k09zc5){display:block;height:100%;border-radius:inherit;background:hsl(var(--primary));transition:width 1s linear}@keyframes svelte-1k09zc5-letter-delete-slide-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes svelte-1k09zc5-letter-delete-trash-enter{0%{opacity:0;transform:translate(-50%) scale(1.18);filter:blur(8px)}to{opacity:1;transform:translate(-50%) scale(1);filter:blur(0)}}@keyframes svelte-1k09zc5-letter-delete-card-drop{0%{opacity:0;transform:translateY(-62px) scale(.94)}22%{opacity:1;transform:translateY(-18px) scale(.9)}72%{opacity:1;transform:translateY(calc(var(--trash-size) * .33)) scale(.66)}to{opacity:0;transform:translateY(calc(var(--trash-size) * .46)) scale(.5)}}@media(prefers-reduced-motion:reduce){.letter-delete__shred.svelte-1k09zc5,.letter-delete__redirect.svelte-1k09zc5,.letter-delete__trash-can.svelte-1k09zc5,.letter-delete__trash-shadow.svelte-1k09zc5,.letter-delete__trash-card.svelte-1k09zc5{animation:none}}@media(max-width:680px){.letter-delete__trash-scene.svelte-1k09zc5{--trash-size: clamp(138px, 42vw, 168px);--trash-card-size: clamp(56px, 17vw, 70px);min-height:clamp(156px,46vw,184px)}.letter-delete__trash-card.svelte-1k09zc5{border-radius:16px;gap:4px;padding:6px}.letter-delete__trash-card-photo.svelte-1k09zc5{border-radius:12px}.letter-delete__trash-card-toggle.svelte-1k09zc5{top:10px;right:10px;width:18px;height:18px;border-width:1px}.letter-delete__trash-card-toggle.svelte-1k09zc5 svg{width:10px;height:10px}.letter-delete__trash-card.svelte-1k09zc5 strong:where(.svelte-1k09zc5),.letter-delete__trash-card.svelte-1k09zc5 small:where(.svelte-1k09zc5){font-size:.58rem}.letter-delete__grid.svelte-1k09zc5{grid-template-columns:1fr}.letter-delete__actions.svelte-1k09zc5{flex-direction:column-reverse}.letter-delete__secondary.svelte-1k09zc5,.letter-delete__danger.svelte-1k09zc5{width:100%}}.letter-content.svelte-1n2apdd{--letter-italic-ink: hsl(var(--foreground) / .66);--letter-italic-ink-strong: hsl(var(--foreground) / .7);--letter-italic-ink-muted: hsl(var(--foreground) / .46);--letter-italic-accent: hsl(var(--primary) / .74);--letter-birthday-name-gradient: linear-gradient(90deg, #ec4899 0%, #fbbf24 48%, #d946ef 100%);--letter-emotive-glass-base: hsl(var(--background) / .54);--letter-emotive-glass-layer: linear-gradient(180deg, hsl(var(--card) / .72), hsl(var(--card) / .34) 46%, hsl(var(--background) / .58));--letter-emotive-glass-border: hsl(var(--foreground) / .13);--letter-emotive-glass-shadow: 0 28px 80px hsl(var(--foreground) / .18), inset 0 1px 0 hsl(var(--background) / .5);--letter-emotive-glow-primary: hsl(var(--primary) / .2);--letter-emotive-glow-accent: hsl(var(--accent) / .18);position:fixed;inset:0;min-height:100vh;min-height:100svh;overflow:hidden;color:hsl(var(--foreground));background:hsl(var(--background));isolation:isolate}.letter-owner-password__header.svelte-1n2apdd{display:flex;align-items:center;gap:12px}.letter-owner-password__header.svelte-1n2apdd>span:where(.svelte-1n2apdd){display:grid;width:42px;height:42px;flex:0 0 auto;place-items:center;border-radius:16px;color:hsl(var(--primary));background:linear-gradient(135deg,hsl(var(--primary) / .16),hsl(var(--accent) / .18))}.letter-owner-password__header.svelte-1n2apdd>div:where(.svelte-1n2apdd){min-width:0;flex:1}.letter-owner-password__header.svelte-1n2apdd p:where(.svelte-1n2apdd),.letter-owner-password__header.svelte-1n2apdd h2:where(.svelte-1n2apdd){margin:0}.letter-owner-password__header.svelte-1n2apdd p:where(.svelte-1n2apdd){margin-bottom:3px;color:hsl(var(--primary));font-size:.7rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.letter-owner-password__header.svelte-1n2apdd h2:where(.svelte-1n2apdd){color:hsl(var(--foreground));font-family:var(--font-serif);font-size:clamp(1.4rem,4vw,1.85rem);line-height:1.08}.letter-owner-password__header.svelte-1n2apdd button:where(.svelte-1n2apdd){display:grid;width:38px;height:38px;flex:0 0 auto;place-items:center;border:1px solid hsl(var(--border) / .78);border-radius:999px;color:hsl(var(--muted-foreground));background:hsl(var(--card) / .72);cursor:pointer}.letter-owner-password.svelte-1n2apdd{display:grid;gap:18px}.letter-owner-password.svelte-1n2apdd>p:where(.svelte-1n2apdd):not(.letter-owner-password__error){margin:0;color:hsl(var(--muted-foreground));line-height:1.6}.letter-owner-password.svelte-1n2apdd label:where(.svelte-1n2apdd){display:grid;gap:9px}.letter-owner-password.svelte-1n2apdd label:where(.svelte-1n2apdd)>span:where(.svelte-1n2apdd){color:hsl(var(--muted-foreground));font-size:.74rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.letter-owner-password.svelte-1n2apdd input:where(.svelte-1n2apdd){width:100%;min-height:50px;border:1px solid hsl(var(--border) / .82);border-radius:16px;padding:0 15px;color:hsl(var(--foreground));background:hsl(var(--background) / .58);font:inherit;outline:none}.letter-owner-password.svelte-1n2apdd input:where(.svelte-1n2apdd):focus{border-color:hsl(var(--primary) / .75);box-shadow:0 0 0 3px hsl(var(--primary) / .12)}.letter-owner-password.svelte-1n2apdd input[aria-invalid=true]:where(.svelte-1n2apdd){border-color:hsl(var(--destructive) / .72)}.letter-owner-password__error.svelte-1n2apdd{margin:-6px 0 0;color:hsl(var(--destructive));font-size:.84rem;font-weight:750}.letter-owner-password__submit.svelte-1n2apdd{display:inline-flex;min-height:48px;align-items:center;justify-content:center;gap:8px;border:0;border-radius:16px;padding:0 18px;color:hsl(var(--primary-foreground));background:linear-gradient(135deg,hsl(var(--primary)),hsl(var(--accent)));box-shadow:0 14px 32px hsl(var(--primary) / .24);font:inherit;font-weight:900;cursor:pointer}.letter-owner-password__submit.svelte-1n2apdd:disabled,.letter-owner-password__header.svelte-1n2apdd button:where(.svelte-1n2apdd):disabled{cursor:not-allowed;opacity:.55}.letter-owner-password__spinner.svelte-1n2apdd{animation:svelte-1n2apdd-letter-owner-password-spin .8s linear infinite}@keyframes svelte-1n2apdd-letter-owner-password-spin{to{transform:rotate(360deg)}}html.letter-content-browser-guard,html.letter-content-browser-guard body{overscroll-behavior-x:none}.dark .letter-content.svelte-1n2apdd{--letter-emotive-glass-base: hsl(var(--background) / .42);--letter-emotive-glass-layer: linear-gradient(180deg, rgba(0, 0, 0, .48), rgba(0, 0, 0, .2) 46%, rgba(0, 0, 0, .5));--letter-emotive-glass-border: hsl(var(--foreground) / .1);--letter-emotive-glass-shadow: 0 28px 80px rgba(0, 0, 0, .52), inset 0 1px 0 hsl(var(--foreground) / .06);--letter-emotive-glow-primary: hsl(var(--primary) / .2);--letter-emotive-glow-accent: hsl(var(--accent) / .18)}.letter-content--lightweight-motion.svelte-1n2apdd{--letter-emotive-glass-base: hsl(var(--background) / .74);--letter-emotive-glass-layer: linear-gradient(180deg, hsl(var(--card) / .82), hsl(var(--background) / .72));--letter-emotive-glass-shadow: 0 18px 44px hsl(var(--foreground) / .13), inset 0 1px 0 hsl(var(--background) / .42)}.dark .letter-content--lightweight-motion.svelte-1n2apdd{--letter-emotive-glass-base: rgba(12, 10, 14, .76);--letter-emotive-glass-layer: linear-gradient(180deg, rgba(16, 14, 20, .86), rgba(8, 6, 10, .78));--letter-emotive-glass-shadow: 0 18px 44px rgba(0, 0, 0, .38), inset 0 1px 0 hsl(var(--foreground) / .05)}.letter-content--lightweight-motion.svelte-1n2apdd .letter-hero-action:where(.svelte-1n2apdd),.letter-content--lightweight-motion.svelte-1n2apdd .letter-secondary-icon-button:where(.svelte-1n2apdd),.letter-content--lightweight-motion.svelte-1n2apdd .letter-icon-button:where(.svelte-1n2apdd),.letter-content--lightweight-motion.svelte-1n2apdd .letter-emotive-card:where(.svelte-1n2apdd),.letter-content--lightweight-motion.svelte-1n2apdd .letter-photo-header:where(.svelte-1n2apdd),.letter-content--lightweight-motion.svelte-1n2apdd .letter-open-more:where(.svelte-1n2apdd),.letter-content--lightweight-motion.svelte-1n2apdd .letter-gallery-dots:where(.svelte-1n2apdd),.letter-content--lightweight-motion.svelte-1n2apdd .letter-gallery-nav:where(.svelte-1n2apdd),.letter-content--lightweight-motion.svelte-1n2apdd .letter-gallery-caption:where(.svelte-1n2apdd),.letter-content--lightweight-motion.svelte-1n2apdd .letter-arrows:where(.svelte-1n2apdd) button:where(.svelte-1n2apdd),.letter-content--lightweight-motion.svelte-1n2apdd .letter-floating-cards:where(.svelte-1n2apdd),.letter-content--lightweight-motion.svelte-1n2apdd .letter-lightbox:where(.svelte-1n2apdd),.letter-content--lightweight-motion.svelte-1n2apdd .letter-lightbox__button:where(.svelte-1n2apdd),.letter-content--lightweight-motion.svelte-1n2apdd .letter-lightbox__controls:where(.svelte-1n2apdd),.letter-content--lightweight-motion.svelte-1n2apdd .letter-fullscreen-text:where(.svelte-1n2apdd),.letter-content--lightweight-motion.svelte-1n2apdd .letter-feedback:where(.svelte-1n2apdd) textarea:where(.svelte-1n2apdd){-webkit-backdrop-filter:none;backdrop-filter:none}.letter-content--lightweight-motion.svelte-1n2apdd .letter-primary-button:where(.svelte-1n2apdd),.letter-content--lightweight-motion.svelte-1n2apdd .letter-dots:where(.svelte-1n2apdd) button.active:where(.svelte-1n2apdd):after,.letter-content--lightweight-motion.letter-content--christmas.svelte-1n2apdd .letter-content__theme:where(.svelte-1n2apdd){animation:none}.letter-content--stage-transitioning.svelte-1n2apdd .letter-primary-button:where(.svelte-1n2apdd),.letter-content--stage-transitioning.svelte-1n2apdd .letter-mobile-dots:where(.svelte-1n2apdd),.letter-content--stage-transitioning.svelte-1n2apdd .page-typing-reveal__cursor{animation-play-state:paused}.letter-content--embedded.svelte-1n2apdd{position:absolute;inset:0;width:100%;height:100%;min-height:100%;overflow:hidden;border-radius:inherit;container-type:size;contain:layout paint}.letter-content--embedded.svelte-1n2apdd .letter-lightbox:where(.svelte-1n2apdd),.letter-content--embedded.svelte-1n2apdd .letter-fullscreen-text:where(.svelte-1n2apdd),.letter-content--embedded.svelte-1n2apdd .letter-dots:where(.svelte-1n2apdd),.letter-content--embedded.svelte-1n2apdd .letter-mobile-dots:where(.svelte-1n2apdd){position:absolute}.letter-content--preview-mobile.svelte-1n2apdd .letter-stage:where(.svelte-1n2apdd){padding:76px 18px 128px}.letter-content--preview-desktop.svelte-1n2apdd .letter-stage:where(.svelte-1n2apdd){padding:72px clamp(18px,5cqw,72px) 136px}.letter-content--preview.svelte-1n2apdd .letter-hero__copy:where(.svelte-1n2apdd){gap:clamp(8px,1cqw,12px)}.letter-content--preview.letter-content--birthday.svelte-1n2apdd .letter-hero__copy:where(.svelte-1n2apdd){gap:clamp(10px,1.5cqw,18px)}.letter-content--preview.svelte-1n2apdd .letter-hero:where(.svelte-1n2apdd) h1:where(.svelte-1n2apdd){max-width:min(92cqw,58rem);font-size:clamp(2rem,4.2cqw,3.75rem)}.letter-content--preview.letter-content--birthday.svelte-1n2apdd .letter-hero:where(.svelte-1n2apdd) h1:where(.svelte-1n2apdd){max-width:min(92cqw,58rem);font-size:clamp(3.1rem,12cqw,7.4rem)}.letter-content--preview.svelte-1n2apdd .letter-hero__cone:where(.svelte-1n2apdd){width:clamp(52px,11cqw,128px);height:clamp(52px,11cqw,128px)}.letter-content--preview.svelte-1n2apdd .letter-hero__cone--left:where(.svelte-1n2apdd){right:calc(100% + clamp(4px,1.8cqw,24px))}.letter-content--preview.svelte-1n2apdd .letter-hero__cone--right:where(.svelte-1n2apdd){left:calc(100% + clamp(4px,1.8cqw,24px))}.letter-content--preview.svelte-1n2apdd .letter-hero__recipient:where(.svelte-1n2apdd),.letter-content--preview.svelte-1n2apdd .letter-hero__nickname:where(.svelte-1n2apdd){font-size:clamp(1rem,2.5cqw,1.5rem)}.letter-content--preview.svelte-1n2apdd .letter-hero__recipient:where(.svelte-1n2apdd){font-size:clamp(2rem,7cqw,3.6rem)}.letter-content--preview.svelte-1n2apdd .letter-hero__meta:where(.svelte-1n2apdd){max-width:min(92cqw,58rem);font-size:clamp(.95rem,1.35cqw,1.15rem)}.letter-content--preview.svelte-1n2apdd .letter-hero__meta:where(.svelte-1n2apdd) bdi:where(.svelte-1n2apdd){max-width:min(74cqw,42rem);font-size:clamp(1.45rem,1.85cqw,2.25rem)}.letter-content--preview.svelte-1n2apdd .letter-message__icon{margin-bottom:clamp(30px,4cqh,40px)}.letter-content--preview.svelte-1n2apdd .letter-message__text-window:where(.svelte-1n2apdd){height:clamp(190px,34cqh,350px)}.letter-content--preview.svelte-1n2apdd .letter-message__signature:where(.svelte-1n2apdd){margin-top:clamp(34px,4.6cqh,44px);font-size:clamp(1rem,2cqw,1.12rem)}.letter-content--preview.svelte-1n2apdd .letter-message__cake:where(.svelte-1n2apdd){height:clamp(128px,18cqh,156px);margin-bottom:clamp(18px,3cqh,28px)}.letter-content--preview.svelte-1n2apdd .letter-message__text{font-size:clamp(1.45rem,2cqw,1.95rem)!important}.letter-content--preview.svelte-1n2apdd .letter-emotive-card:where(.svelte-1n2apdd){max-height:calc(100cqh - 232px);padding:clamp(28px,5cqw,56px)}.letter-content--preview.svelte-1n2apdd .letter-emotive-card--lg:where(.svelte-1n2apdd){height:clamp(330px,44cqh,460px)}.letter-content--preview.svelte-1n2apdd .letter-emotive-card:where(.svelte-1n2apdd) h2:where(.svelte-1n2apdd){font-size:clamp(1.6rem,5cqw,2.6rem)}.letter-content--preview.svelte-1n2apdd .letter-emotive-card__text{font-size:clamp(1rem,2cqw,1.25rem)!important}.letter-content--preview.svelte-1n2apdd .letter-photo-header:where(.svelte-1n2apdd) h2:where(.svelte-1n2apdd),.letter-content--preview.svelte-1n2apdd .letter-gallery-caption:where(.svelte-1n2apdd) p:where(.svelte-1n2apdd),.letter-content--preview.svelte-1n2apdd .letter-detail-list:where(.svelte-1n2apdd) dd:where(.svelte-1n2apdd),.letter-content--preview.svelte-1n2apdd .letter-feedback:where(.svelte-1n2apdd) h2:where(.svelte-1n2apdd){font-size:clamp(1.1rem,4cqw,1.8rem)}.letter-content--preview.svelte-1n2apdd .letter-photo-card:where(.svelte-1n2apdd){height:clamp(320px,62cqh,640px)}.letter-content--preview.svelte-1n2apdd .letter-polaroid-stage:where(.svelte-1n2apdd){height:clamp(220px,48cqh,560px)}.letter-content--preview.svelte-1n2apdd .letter-single-photo:where(.svelte-1n2apdd){width:min(78cqw,340px);height:clamp(280px,42cqh,420px)}.letter-content--preview.svelte-1n2apdd .letter-floating-cards:where(.svelte-1n2apdd){min-width:min(320px,calc(100cqw - 48px))}.letter-content--preview-mobile.svelte-1n2apdd .letter-arrows:where(.svelte-1n2apdd),.letter-content--preview-mobile.svelte-1n2apdd .letter-dots:where(.svelte-1n2apdd){display:none}.letter-content--preview-mobile.svelte-1n2apdd .letter-mobile-dots:where(.svelte-1n2apdd){display:flex}.letter-content--preview.svelte-1n2apdd .letter-lightbox:where(.svelte-1n2apdd){padding:clamp(14px,3cqw,22px) clamp(12px,3cqw,20px) max(env(safe-area-inset-bottom),78px)}.letter-content--preview.svelte-1n2apdd .letter-lightbox__polaroid:where(.svelte-1n2apdd){width:min(76cqw,calc((100cqh - 150px)*.74),440px)}.letter-content--preview-mobile.svelte-1n2apdd .letter-lightbox__polaroid:where(.svelte-1n2apdd){width:min(80cqw,330px)}.letter-content--preview-mobile.svelte-1n2apdd .letter-hero__copy:where(.svelte-1n2apdd){width:min(100%,360px);gap:10px}.letter-content--preview-mobile.svelte-1n2apdd .letter-hero:where(.svelte-1n2apdd) h1:where(.svelte-1n2apdd){max-width:min(86cqw,280px);font-size:clamp(2rem,11cqw,3.35rem)}.letter-content--preview-mobile.letter-content--birthday.svelte-1n2apdd .letter-hero:where(.svelte-1n2apdd) h1:where(.svelte-1n2apdd){max-width:min(86cqw,360px);font-size:clamp(2.85rem,15cqw,4.8rem)}.letter-content--preview-mobile.svelte-1n2apdd .letter-hero__cone:where(.svelte-1n2apdd){width:clamp(44px,17cqw,72px);height:clamp(44px,17cqw,72px);opacity:.92}.letter-content--preview-mobile.svelte-1n2apdd .letter-hero__cone--left:where(.svelte-1n2apdd){right:calc(100% - 14px)}.letter-content--preview-mobile.svelte-1n2apdd .letter-hero__cone--right:where(.svelte-1n2apdd){left:calc(100% - 14px)}.letter-content--preview-mobile.svelte-1n2apdd .letter-hero__meta:where(.svelte-1n2apdd) bdi:where(.svelte-1n2apdd){max-width:min(88cqw,340px);font-size:clamp(1.85rem,9cqw,3rem);line-height:1.62;overflow-wrap:anywhere;white-space:normal;transform:none}.letter-content--preview-mobile.svelte-1n2apdd .letter-photo-grid:where(.svelte-1n2apdd){grid-template-columns:1fr;width:min(78cqw,310px);gap:clamp(9px,1.8cqh,14px)}.letter-content--preview-mobile.svelte-1n2apdd .letter-photo-card:where(.svelte-1n2apdd){height:clamp(160px,27cqh,230px)}.letter-content--preview-mobile.svelte-1n2apdd .letter-message__tools:where(.svelte-1n2apdd),.letter-content--preview-mobile.svelte-1n2apdd .letter-message__text-window:where(.svelte-1n2apdd){width:min(100%,300px)}.letter-content--preview-mobile.svelte-1n2apdd .letter-message__text-window:where(.svelte-1n2apdd){height:clamp(180px,42cqh,340px)}.letter-content--preview-mobile.svelte-1n2apdd .letter-message__text{font-size:clamp(1.12rem,5.6cqw,1.5rem)!important;line-height:1.28!important}.letter-content--preview-mobile.svelte-1n2apdd .letter-message__cake:where(.svelte-1n2apdd){height:122px;margin-bottom:12px;transform:scale(.86)}.letter-content--preview-mobile.svelte-1n2apdd .letter-emotive-card:where(.svelte-1n2apdd){width:min(100%,360px);max-height:calc(100cqh - 220px)}.letter-content--preview-mobile.svelte-1n2apdd .letter-emotive-card--lg:where(.svelte-1n2apdd){grid-template-rows:auto auto;height:auto;min-height:0;padding:22px}.letter-content--preview-mobile.svelte-1n2apdd .letter-emotive-card__scroll:where(.svelte-1n2apdd){min-height:clamp(132px,23cqh,184px)}.letter-content--preview-mobile.svelte-1n2apdd .letter-floating-cards:where(.svelte-1n2apdd){bottom:24px;min-width:min(330px,calc(100cqw - 40px));max-width:calc(100cqw - 40px);min-height:56px;padding-inline:24px}.letter-content.svelte-1n2apdd:before{content:"";position:absolute;inset:0;z-index:-3;pointer-events:none;background:var(--letter-theme-overlay),radial-gradient(circle at 12% 88%,color-mix(in srgb,var(--letter-theme-accent) 16%,transparent),transparent 24rem),hsl(var(--background))}.letter-polaroid-backdrop.svelte-1n2apdd{position:absolute;inset:0;z-index:-2;pointer-events:none;overflow:hidden}.letter-polaroid-backdrop__slides.svelte-1n2apdd{position:absolute;inset:0}.letter-polaroid-backdrop__blur{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;filter:blur(2px);transform:scale(1.05);transition:opacity 1.3s ease-in-out;will-change:opacity}.letter-polaroid-backdrop__blur.is-active{opacity:.45}.letter-polaroid-backdrop__wash.svelte-1n2apdd{position:absolute;inset:0;background:linear-gradient(to bottom,hsl(var(--background) / .3),hsl(var(--background) / .72),hsl(var(--background)))}.letter-polaroid-backdrop__scatter.svelte-1n2apdd{position:absolute;inset:0;transform:translateZ(0) scale(1);transform-origin:center}.letter-scatter-polaroid.svelte-1n2apdd{--x0: 18%;--y0: 16%;--rot0: -7deg;--x1: 78%;--y1: 20%;--rot1: 6deg;--x2: 12%;--y2: 74%;--rot2: 9deg;--x3: 84%;--y3: 70%;--rot3: -10deg;position:absolute;left:var(--x0);top:var(--y0);opacity:.18;filter:blur(.8px);transform:translate(-50%,-50%) rotate(var(--rot0)) scale(.82);transition:opacity .9s ease,filter .9s ease,transform .9s ease;will-change:transform,opacity,filter}.letter-scatter-polaroid.svelte-1n2apdd:nth-child(2){left:var(--x1);top:var(--y1);transform:translate(-50%,-50%) rotate(var(--rot1)) scale(.86)}.letter-scatter-polaroid.svelte-1n2apdd:nth-child(3){left:var(--x2);top:var(--y2);transform:translate(-50%,-50%) rotate(var(--rot2)) scale(.8)}.letter-scatter-polaroid.svelte-1n2apdd:nth-child(4){left:var(--x3);top:var(--y3);transform:translate(-50%,-50%) rotate(var(--rot3)) scale(.84)}.letter-content--preview-mobile.svelte-1n2apdd .letter-scatter-polaroid:where(.svelte-1n2apdd){--y2: 84%;--y3: 82%;opacity:.28;filter:none;will-change:auto}.letter-scatter-polaroid.active.svelte-1n2apdd{z-index:5;opacity:1;filter:drop-shadow(0 8px 20px rgba(0,0,0,.28));transform:translate(-50%,-50%) rotate(var(--rot0)) scale(1.02)}.letter-scatter-polaroid:nth-child(2).active.svelte-1n2apdd{transform:translate(-50%,-50%) rotate(var(--rot1)) scale(1.02)}.letter-scatter-polaroid:nth-child(3).active.svelte-1n2apdd{transform:translate(-50%,-50%) rotate(var(--rot2)) scale(1.02)}.letter-scatter-polaroid:nth-child(4).active.svelte-1n2apdd{transform:translate(-50%,-50%) rotate(var(--rot3)) scale(1.02)}.letter-content--preview-mobile.svelte-1n2apdd .letter-scatter-polaroid.active:where(.svelte-1n2apdd){opacity:.48;filter:none}.letter-scatter-polaroid.svelte-1n2apdd>div:where(.svelte-1n2apdd){position:relative;width:150px;height:190px;border:1px solid rgba(0,0,0,.1);border-radius:2px;padding:12px 12px 30px;background:#fff;box-shadow:0 20px 44px #0000001a}.letter-scatter-polaroid.svelte-1n2apdd .letter-scatter-polaroid__image{width:100%;height:100%;object-fit:cover;border-radius:2px;-webkit-user-select:none;user-select:none}.letter-scatter-polaroid.svelte-1n2apdd span:where(.svelte-1n2apdd){position:absolute;inset-inline:10px;bottom:7px;overflow:hidden;color:#3f3540;font-size:11px;font-weight:650;letter-spacing:.02em;text-align:center;text-overflow:ellipsis;white-space:nowrap}.letter-scatter-polaroid.svelte-1n2apdd i:where(.svelte-1n2apdd),.letter-photo-card.svelte-1n2apdd i:where(.svelte-1n2apdd){position:absolute;left:50%;top:-8px;width:64px;height:20px;border-radius:3px;background:#fde68ac7;box-shadow:0 3px 12px #0000001f;transform:translate(-50%) rotate(2deg)}.letter-content__theme.svelte-1n2apdd{position:absolute;inset:0;z-index:12;pointer-events:none;overflow:hidden}.letter-content--christmas.svelte-1n2apdd .letter-content__theme:where(.svelte-1n2apdd){background-image:radial-gradient(circle,rgba(255,255,255,.9) 0 2px,transparent 3px),radial-gradient(circle,rgba(255,255,255,.6) 0 1px,transparent 2px);background-size:120px 120px,80px 80px;animation:svelte-1n2apdd-letter-snow 18s linear infinite}.letter-birthday-confetti{z-index:8;opacity:.34;mix-blend-mode:normal}.letter-content--birthday.svelte-1n2apdd .letter-stage-wrap:where(.svelte-1n2apdd){z-index:20}.letter-stage-wrap.svelte-1n2apdd,.letter-stage-motion.svelte-1n2apdd,.letter-stage-frame.svelte-1n2apdd{position:absolute;inset:0}.letter-content--stage-transitioning.svelte-1n2apdd .letter-stage-motion:where(.svelte-1n2apdd){backface-visibility:hidden;transform-style:preserve-3d;will-change:opacity,transform}.letter-stage-wrap.is-locked.svelte-1n2apdd .letter-stage-frame:where(.svelte-1n2apdd){filter:blur(6px);opacity:.7;transition:filter .3s ease,opacity .3s ease}.letter-stage.svelte-1n2apdd{position:absolute;inset:0;display:grid;align-items:center;justify-items:center;padding:max(env(safe-area-inset-top),72px) clamp(18px,5vw,72px) max(env(safe-area-inset-bottom),136px)}.letter-hero.svelte-1n2apdd{text-align:center}.letter-hero__copy.svelte-1n2apdd{position:relative;display:grid;justify-items:center;gap:clamp(8px,1vw,12px);width:min(100%,58rem)}.letter-hero__copy.svelte-1n2apdd:before{content:"";position:absolute;inset:-16px -20px;z-index:-1;border-radius:999px;background:radial-gradient(ellipse at center,hsl(var(--primary) / .14),hsl(var(--accent) / .08) 42%,transparent 72%);filter:blur(22px);opacity:.36}.letter-content--birthday.svelte-1n2apdd .letter-hero__copy:where(.svelte-1n2apdd){gap:clamp(10px,1.5vw,18px)}.letter-content--birthday.svelte-1n2apdd .letter-hero__copy:where(.svelte-1n2apdd):before{inset:-28px -38px;background:radial-gradient(ellipse at center,rgba(244,114,182,.24),rgba(251,191,36,.13) 44%,transparent 72%);opacity:.58}.letter-hero__birthday-headline.svelte-1n2apdd{position:relative;display:grid;justify-items:center;gap:clamp(8px,1.3vw,18px);isolation:isolate;overflow:visible}.letter-hero__birthday-headline.svelte-1n2apdd:before{content:"";position:absolute;left:50%;top:58%;z-index:-1;width:min(78vw,32rem);height:clamp(8rem,18vw,15rem);border-radius:999px;pointer-events:none;background:radial-gradient(ellipse at center,rgba(236,72,153,.34) 0%,rgba(244,114,182,.18) 38%,rgba(251,191,36,.08) 58%,transparent 76%);transform:translate(-50%,-50%)}.letter-hero__cone.svelte-1n2apdd{position:absolute;top:50%;width:clamp(52px,11vw,128px);height:clamp(52px,11vw,128px);pointer-events:none;transform:translateY(-50%)}.letter-hero__cone--left.svelte-1n2apdd{right:calc(100% + clamp(4px,1.8vw,24px))}.letter-hero__cone--right.svelte-1n2apdd{left:calc(100% + clamp(4px,1.8vw,24px))}.letter-hero.svelte-1n2apdd h1:where(.svelte-1n2apdd){max-width:min(92vw,58rem);margin:0;overflow-wrap:anywhere;color:hsl(var(--primary));font-family:var(--font-handwriting),var(--font-serif);font-size:clamp(2rem,4.2vw,3.75rem);font-weight:850;line-height:.95;letter-spacing:0;text-wrap:balance;filter:drop-shadow(0 8px 16px hsl(var(--primary) / .11))}.letter-content--birthday.svelte-1n2apdd .letter-hero:where(.svelte-1n2apdd) h1:where(.svelte-1n2apdd){display:inline-block;max-width:min(92vw,58rem);margin:-.32em -.58em -.82em;padding:.32em .58em .82em;background:var(--letter-birthday-name-gradient);-webkit-background-clip:text;background-clip:text;color:transparent;font-size:clamp(3.1rem,12vw,7.4rem);font-weight:900;line-height:1.22;overflow:visible;filter:none;text-shadow:none}.letter-hero__birthday.svelte-1n2apdd{margin:0 0 10px;color:#ec4899;font-size:.86rem;font-weight:800;letter-spacing:.2em;text-shadow:0 8px 20px rgba(236,72,153,.16);text-transform:uppercase}.letter-hero__age.svelte-1n2apdd{margin:0;color:hsl(var(--foreground) / .82);font-size:clamp(1rem,2.5vw,1.65rem);font-weight:650;text-shadow:0 8px 18px hsl(var(--primary) / .12)}.letter-birthday-age-number.svelte-1n2apdd{display:inline-block;font-family:var(--font-serif),var(--font-sans),serif;font-style:normal;font-variant-numeric:lining-nums tabular-nums;font-feature-settings:"lnum" 1,"tnum" 1;font-weight:800;letter-spacing:-.04em}.letter-hero__recipient.svelte-1n2apdd,.letter-hero__nickname.svelte-1n2apdd{margin:0;color:var(--letter-italic-ink);font-size:clamp(1rem,2.5vw,1.5rem);font-style:italic}.letter-hero__recipient.svelte-1n2apdd{color:var(--letter-italic-accent);font-family:var(--font-handwriting),var(--font-serif);font-size:clamp(2rem,7vw,3.6rem);line-height:1}.letter-hero__meta.svelte-1n2apdd{pointer-events:none;display:grid;gap:10px;max-width:min(92vw,58rem);overflow:visible;color:hsl(var(--foreground) / .68);font-size:clamp(.95rem,1.35vw,1.15rem)}.letter-hero__meta.svelte-1n2apdd p:where(.svelte-1n2apdd),.letter-hero__meta.svelte-1n2apdd time:where(.svelte-1n2apdd){margin:0;overflow:visible}.letter-hero__meta.svelte-1n2apdd bdi:where(.svelte-1n2apdd){display:inline-block;box-sizing:content-box;max-width:min(74vw,42rem);margin:-.55em -.95em -1.18em;padding:.55em .95em 1.18em;overflow-wrap:normal;overflow:visible;color:hsl(var(--primary));font-family:var(--font-handwriting),var(--font-serif);font-size:clamp(1.45rem,1.85vw,2.25rem);font-weight:650;line-height:1.55;white-space:nowrap;filter:drop-shadow(0 7px 14px hsl(var(--primary) / .1));transform:scaleX(.92);transform-origin:center}.letter-content--birthday.svelte-1n2apdd .letter-hero__meta:where(.svelte-1n2apdd) bdi:where(.svelte-1n2apdd){background:var(--letter-birthday-name-gradient);-webkit-background-clip:text;background-clip:text;color:transparent;filter:none;text-shadow:none}.letter-hero__actions.svelte-1n2apdd,.letter-feedback__actions.svelte-1n2apdd{position:relative;z-index:5;display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:4px}.letter-hero__actions--locked.svelte-1n2apdd{max-width:min(100%,30rem);margin-top:clamp(10px,2.4vh,22px)}.letter-hero__actions--locked.svelte-1n2apdd .letter-primary-button:where(.svelte-1n2apdd){flex:1 0 100%}.letter-hero-action.svelte-1n2apdd,.letter-primary-button.svelte-1n2apdd,.letter-secondary-icon-button.svelte-1n2apdd,.letter-floating-cards.svelte-1n2apdd,.letter-open-more.svelte-1n2apdd,.letter-ghost-button.svelte-1n2apdd{font:inherit;cursor:pointer}.letter-hero-action.svelte-1n2apdd{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid hsl(var(--border) / .46);border-radius:999px;padding:0 14px;color:hsl(var(--foreground) / .84);background:hsl(var(--background) / .48);box-shadow:0 12px 30px #00000029;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);transition:border-color .18s ease,background .18s ease,color .18s ease,transform .18s ease}.letter-hero-action.svelte-1n2apdd span:where(.svelte-1n2apdd){white-space:nowrap}.letter-hero-action.svelte-1n2apdd:hover{color:hsl(var(--foreground));border-color:hsl(var(--primary) / .42);background:hsl(var(--background) / .72);transform:translateY(-1px)}.letter-hero-action--icon.svelte-1n2apdd{width:40px;padding:0}.letter-hero-action--danger.svelte-1n2apdd{color:hsl(var(--foreground) / .72)}.letter-hero-action--danger.svelte-1n2apdd:hover{color:hsl(var(--destructive, 0 84.2% 60.2%) / .92);border-color:hsl(var(--destructive, 0 84.2% 60.2%) / .34)}.letter-primary-button.svelte-1n2apdd,.letter-floating-cards.svelte-1n2apdd,.letter-open-more.svelte-1n2apdd,.letter-ghost-button.svelte-1n2apdd{min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;padding:0 18px;font-weight:850}.letter-primary-button.svelte-1n2apdd{border:0;color:#fff;background:linear-gradient(120deg,hsl(var(--primary)),hsl(var(--accent)),hsl(var(--primary)));background-size:220% 100%;box-shadow:0 18px 42px hsl(var(--primary) / .25);animation:svelte-1n2apdd-letter-cta-gradient 2.6s ease-in-out infinite}.letter-secondary-icon-button.svelte-1n2apdd,.letter-icon-button.svelte-1n2apdd{width:48px;height:48px;display:inline-grid;place-items:center;border:1px solid hsl(var(--border) / .54);border-radius:999px;color:hsl(var(--foreground) / .8);background:hsl(var(--background) / .7);box-shadow:0 8px 28px #00000014;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);cursor:pointer;transition:transform .18s ease,background .18s ease,color .18s ease}.letter-secondary-icon-button.svelte-1n2apdd:hover,.letter-icon-button.svelte-1n2apdd:hover{color:hsl(var(--foreground));background:hsl(var(--background) / .92);transform:scale(1.05)}.letter-message__inner.svelte-1n2apdd{position:relative;display:grid;justify-items:center;width:min(100%,780px);min-width:0;transform:none;text-align:center}.letter-message__icon{margin:0 auto clamp(30px,4vh,40px);color:#b16f8a;opacity:1;filter:drop-shadow(0 1px 0 rgba(41,25,35,.65)) drop-shadow(0 0 8px rgba(177,111,138,.18));stroke-width:1.85}.letter-message__cake.svelte-1n2apdd{display:flex;height:clamp(128px,18vh,156px);align-items:center;justify-content:center;margin:0 auto clamp(18px,3vh,28px);overflow:visible}.letter-message__inner.svelte-1n2apdd time:where(.svelte-1n2apdd){display:block;margin-bottom:24px;color:var(--letter-italic-ink-muted);font-size:.95rem;font-style:italic}.letter-message__tools.svelte-1n2apdd{display:flex;justify-content:flex-end;width:min(100%,720px);margin-bottom:12px}.letter-message__fullscreen.svelte-1n2apdd{position:static;width:36px;height:36px;color:hsl(var(--foreground) / .62);background:hsl(var(--background) / .32);box-shadow:inset 0 0 0 1px hsl(var(--border) / .32)}.letter-message__text-window.svelte-1n2apdd{width:min(100%,720px);height:clamp(190px,34vh,350px);height:clamp(190px,34dvh,350px);min-width:0;overflow:hidden}.letter-message__text{--page-typing-text-color: var(--letter-italic-ink-strong);width:100%;min-width:0;max-width:100%;overflow:hidden;text-align:start;overflow-wrap:anywhere}.letter-message__text p{color:var(--letter-italic-ink-strong);text-shadow:0 1px 8px rgba(0,0,0,.12)}.letter-message__text .page-typing-reveal__dots{justify-content:flex-start}.letter-message__signature.svelte-1n2apdd{margin:clamp(34px,4.6vh,44px) 0 0;color:var(--letter-italic-ink-muted);font-family:var(--font-serif);font-size:clamp(1rem,2vw,1.12rem);font-style:italic;opacity:0;transform:translateY(12px);transition:opacity .55s ease,transform .55s ease}.letter-message__signature.is-visible.svelte-1n2apdd{opacity:1;transform:translateY(0)}.letter-emotive-card.svelte-1n2apdd{position:relative;width:min(100%,760px);min-width:0;max-height:calc(100vh - 232px);max-height:calc(100svh - 232px);overflow:hidden;border:1px solid var(--letter-emotive-glass-border);border-radius:32px;padding:clamp(28px,5vw,56px);background:var(--letter-emotive-glass-layer),radial-gradient(circle at 25% 35%,var(--letter-emotive-glow-primary),transparent 65%),radial-gradient(circle at 80% 70%,var(--letter-emotive-glow-accent),transparent 70%),var(--letter-emotive-glass-base);box-shadow:var(--letter-emotive-glass-shadow);backdrop-filter:blur(18px) saturate(1.5);-webkit-backdrop-filter:blur(18px) saturate(1.5);isolation:isolate}.letter-emotive-card--lg.svelte-1n2apdd{display:grid;grid-template-rows:auto minmax(0,1fr);height:clamp(330px,44vh,460px);height:clamp(330px,44dvh,460px)}.letter-emotive-card.svelte-1n2apdd:before,.letter-emotive-card.svelte-1n2apdd:after{display:none}.letter-emotive-card--md.svelte-1n2apdd{width:min(100%,640px)}.letter-emotive-card__fullscreen.svelte-1n2apdd{position:absolute;inset-block-start:12px;inset-inline-end:12px;z-index:2;width:36px;height:36px}.letter-emotive-card__header.svelte-1n2apdd{display:flex;align-items:center;gap:14px;margin-bottom:28px}.letter-emotive-card__icon.svelte-1n2apdd{display:inline-grid;width:56px;height:56px;flex-shrink:0;place-items:center;border-radius:18px;color:hsl(var(--primary));background:linear-gradient(135deg,hsl(var(--primary) / .2),hsl(var(--accent) / .2));box-shadow:inset 0 0 0 1px hsl(var(--border) / .4)}.letter-emotive-card.svelte-1n2apdd h2:where(.svelte-1n2apdd){margin:0;color:hsl(var(--foreground));font-size:clamp(1.6rem,5vw,2.6rem);line-height:1.05;letter-spacing:0}.letter-emotive-card__scroll.svelte-1n2apdd{height:100%;max-height:none;min-width:0;min-height:0;max-width:100%;overflow:hidden;overscroll-behavior:contain}.letter-emotive-card__text{--page-typing-text-color: var(--letter-italic-ink);min-width:0;max-width:100%;overflow:hidden;color:var(--letter-italic-ink);text-align:start;overflow-wrap:anywhere}.letter-emotive-card__text p{color:var(--letter-italic-ink)}.letter-photo-header.svelte-1n2apdd{display:inline-flex;align-items:center;gap:10px;border:1px solid hsl(var(--border) / .5);border-radius:999px;padding:10px 18px;background:hsl(var(--background) / .8);box-shadow:0 14px 28px #0000001a;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.letter-photo-header.svelte-1n2apdd span:where(.svelte-1n2apdd){display:inline-grid;width:40px;height:40px;place-items:center;border-radius:14px;color:hsl(var(--primary));background:linear-gradient(135deg,hsl(var(--primary) / .15),hsl(var(--accent) / .2));box-shadow:inset 0 0 0 1px hsl(var(--border) / .4)}.letter-photo-header.svelte-1n2apdd h2:where(.svelte-1n2apdd){margin:0;color:hsl(var(--foreground));font-size:clamp(1.15rem,3vw,1.55rem);line-height:1}.letter-photo-header.svelte-1n2apdd b:where(.svelte-1n2apdd){border:1px solid hsl(var(--primary) / .2);border-radius:999px;padding:3px 9px;color:hsl(var(--primary) / .82);background:hsl(var(--primary) / .1);font-size:.72rem}.letter-photos.svelte-1n2apdd{align-content:center;gap:clamp(18px,4vw,28px)}.letter-single-photo.svelte-1n2apdd,.letter-photo-card.svelte-1n2apdd{position:relative;border:0;padding:0;background:transparent;cursor:pointer}.letter-single-photo.svelte-1n2apdd{width:min(100%,480px);height:clamp(320px,62vh,640px);height:clamp(320px,62dvh,640px);overflow:hidden;border:1px solid hsl(var(--foreground) / .18);border-radius:14px;background:hsl(var(--background) / .64);box-shadow:0 20px 54px #0000002e,inset 0 0 0 1px hsl(var(--background) / .34)}.letter-single-photo.svelte-1n2apdd .letter-photo-surface__image,.letter-photo-card.svelte-1n2apdd .letter-photo-surface__image{display:block;width:100%;height:100%;object-fit:cover}.letter-photo-surface__motion.svelte-1n2apdd{position:absolute;inset:0;display:block;pointer-events:none;transform:translateZ(0) scale(1);transform-origin:center;will-change:transform}.letter-single-photo.svelte-1n2apdd .letter-photo-surface__caption:where(.svelte-1n2apdd),.letter-photo-card.svelte-1n2apdd .letter-photo-surface__caption:where(.svelte-1n2apdd){position:absolute;inset-inline:0;bottom:0;padding:18px 12px 10px;color:#fff;background:linear-gradient(to top,rgba(0,0,0,.62),rgba(0,0,0,.28),transparent);font-size:.8rem;font-weight:650;line-height:1.35;text-align:center}.letter-photo-grid.svelte-1n2apdd{display:grid;width:min(100%,980px);grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(10px,2.4vw,22px)}.letter-photo-card.svelte-1n2apdd{height:clamp(220px,48vh,560px);height:clamp(220px,48dvh,560px);overflow:hidden;border:1px solid hsl(var(--foreground) / .18);border-radius:14px;background:hsl(var(--background) / .64);box-shadow:0 18px 44px #00000029,inset 0 0 0 1px hsl(var(--background) / .34)}.letter-open-more.svelte-1n2apdd{border:1px solid hsl(var(--primary) / .25);color:hsl(var(--foreground));background:hsl(var(--background) / .86);box-shadow:0 14px 28px #0000001a;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.letter-open-more.svelte-1n2apdd svg{color:hsl(var(--primary))}.letter-gallery-carousel.svelte-1n2apdd{position:relative;display:grid;justify-items:center;width:min(100%,1000px);gap:clamp(12px,2.6vh,20px);gap:clamp(12px,2.6dvh,20px);-webkit-user-select:none;user-select:none}.letter-gallery-date.svelte-1n2apdd{margin-top:-4px;color:hsl(var(--muted-foreground));font-size:.78rem}.letter-gallery-dots.svelte-1n2apdd{display:flex;max-width:min(70vw,260px);align-items:center;justify-content:center;gap:9px;border:1px solid hsl(var(--border) / .38);border-radius:999px;padding:8px 11px;background:hsl(var(--background) / .58);box-shadow:0 10px 24px #00000014;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);overflow-x:auto;scrollbar-width:none}.letter-gallery-dots.svelte-1n2apdd::-webkit-scrollbar{display:none}.letter-gallery-dots.svelte-1n2apdd button:where(.svelte-1n2apdd){position:relative;width:11px;height:11px;border:0;border-radius:999px;padding:0;background:hsl(var(--primary) / .18);cursor:pointer;transition:width .2s ease,background .2s ease,box-shadow .2s ease,transform .2s ease}.letter-gallery-dots.svelte-1n2apdd button.active:where(.svelte-1n2apdd){width:25px;background:linear-gradient(135deg,hsl(var(--primary)),hsl(var(--accent)));box-shadow:0 0 0 4px hsl(var(--primary) / .16)}.letter-polaroid-stage.svelte-1n2apdd{position:relative;width:min(78vw,340px);height:clamp(270px,40vh,400px);height:clamp(270px,40dvh,400px);margin-top:clamp(4px,1vh,12px);margin-top:clamp(4px,1dvh,12px)}.letter-polaroid-motion.svelte-1n2apdd{position:absolute;inset:0;display:grid;place-items:center;will-change:transform,opacity,filter}.letter-polaroid-stack.svelte-1n2apdd{position:relative;width:100%;height:100%;border:0;background:transparent;cursor:pointer;font:inherit}.letter-polaroid-stack.svelte-1n2apdd span:where(.svelte-1n2apdd){position:absolute;left:50%;top:50%;width:min(58vw,220px);aspect-ratio:3 / 4;border:1px solid rgba(0,0,0,.1);border-radius:8px 8px 5px 5px;padding:12px 12px 28px;background:#fff;box-shadow:0 24px 50px #00000038,inset 0 0 0 1px #0000000a;transition:transform .55s ease,opacity .55s ease}.letter-polaroid-stack.svelte-1n2apdd .layer-0:where(.svelte-1n2apdd){z-index:10;transform:translate(-80%,-70%) rotate(-7deg) scale(.94)}.letter-polaroid-stack.svelte-1n2apdd .layer-1:where(.svelte-1n2apdd){z-index:20;transform:translate(-66%,-66%) rotate(5deg) scale(.98)}.letter-polaroid-stack.svelte-1n2apdd .layer-2:where(.svelte-1n2apdd),.letter-polaroid-stack.svelte-1n2apdd span:where(.svelte-1n2apdd):first-child:last-child{z-index:30;transform:translate(-50%,-58%) rotate(0) scale(1)}.letter-polaroid-stack.svelte-1n2apdd .letter-polaroid-stack__image{width:100%;height:100%;object-fit:cover;border-radius:3px}.letter-gallery-nav.svelte-1n2apdd{position:absolute;top:50%;display:inline-grid;width:42px;height:42px;place-items:center;border:1px solid hsl(var(--border) / .4);border-radius:999px;color:hsl(var(--foreground));background:hsl(var(--background) / .72);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:pointer;transform:translateY(-50%)}.letter-gallery-nav--prev.svelte-1n2apdd{inset-inline-start:10px}.letter-gallery-nav--next.svelte-1n2apdd{inset-inline-end:10px}.letter-gallery-caption.svelte-1n2apdd{width:min(100%,580px);border:1px solid hsl(var(--border) / .5);border-radius:22px;padding:18px 22px 20px;background:hsl(var(--background) / .85);box-shadow:0 16px 34px #0000001a;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);text-align:center}.letter-gallery-caption.svelte-1n2apdd small:where(.svelte-1n2apdd){display:block;color:hsl(var(--primary) / .82);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.letter-gallery-caption.svelte-1n2apdd p:where(.svelte-1n2apdd){margin:0;color:hsl(var(--foreground) / .95);font-size:clamp(1rem,2.2vw,1.25rem);font-weight:650;line-height:1.55}.letter-places-map.svelte-1n2apdd{align-items:stretch;justify-items:stretch;padding:0}.letter-content--preview-mobile.svelte-1n2apdd .letter-places-map:where(.svelte-1n2apdd),.letter-content--preview-desktop.svelte-1n2apdd .letter-places-map:where(.svelte-1n2apdd){padding:0}.letter-places-map__preview.svelte-1n2apdd{width:100%;height:100%;min-height:0;overflow:hidden;border:0;border-radius:0;background:transparent;box-shadow:none}.letter-places-map__preview.svelte-1n2apdd .interactive-card-stage{width:100%;height:100%;min-height:0;border-radius:0;box-shadow:none}.letter-places-map__preview.svelte-1n2apdd .places-card{width:100%;height:100%;min-height:100%}.letter-detail-list.svelte-1n2apdd{display:grid;margin:0}.letter-detail-list.svelte-1n2apdd div:where(.svelte-1n2apdd){display:grid;grid-template-columns:44px minmax(0,1fr);gap:4px 14px;align-items:center;padding:14px 0}.letter-detail-list.svelte-1n2apdd div:where(.svelte-1n2apdd)+div:where(.svelte-1n2apdd){border-top:1px solid hsl(var(--border) / .4)}.letter-detail-list.svelte-1n2apdd svg{grid-row:span 3;display:inline-grid;width:44px;height:44px;padding:11px;border-radius:14px;color:hsl(var(--primary));background:linear-gradient(135deg,hsl(var(--primary) / .2),hsl(var(--accent) / .2))}.letter-detail-list.svelte-1n2apdd dt:where(.svelte-1n2apdd){color:hsl(var(--muted-foreground));font-size:.76rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.letter-detail-list.svelte-1n2apdd dd:where(.svelte-1n2apdd){min-width:0;margin:0;overflow-wrap:anywhere;color:hsl(var(--foreground));font-size:clamp(1.1rem,4vw,1.8rem);font-weight:750}.letter-detail-list.svelte-1n2apdd small:where(.svelte-1n2apdd){color:hsl(var(--primary));font-weight:650}.letter-music-frame.svelte-1n2apdd{width:100%;overflow:hidden;border-radius:16px;box-shadow:inset 0 0 0 1px hsl(var(--border) / .4);line-height:0}.letter-music-frame.svelte-1n2apdd iframe:where(.svelte-1n2apdd){display:block;width:100%;height:170px;border:0}.letter-music-frame--spotify-track.svelte-1n2apdd iframe:where(.svelte-1n2apdd){height:152px}.letter-music-frame--spotify-playlist.svelte-1n2apdd iframe:where(.svelte-1n2apdd){height:352px}.letter-music-frame--video.svelte-1n2apdd iframe:where(.svelte-1n2apdd){aspect-ratio:16 / 9;height:auto}.letter-music-frame--apple.svelte-1n2apdd iframe:where(.svelte-1n2apdd){height:450px}.letter-music-frame--apple-song.svelte-1n2apdd iframe:where(.svelte-1n2apdd){height:175px}.letter-music-frame--deezer.svelte-1n2apdd iframe:where(.svelte-1n2apdd){height:300px}.letter-music-frame--amazon.svelte-1n2apdd iframe:where(.svelte-1n2apdd){height:352px}.letter-stage-wrap[data-stage-id=music].svelte-1n2apdd .letter-emotive-card:where(.svelte-1n2apdd){height:auto;max-height:none}.letter-stage-wrap[data-stage-id=music].svelte-1n2apdd .letter-emotive-card__header:where(.svelte-1n2apdd){margin-bottom:clamp(16px,2.5vh,24px);margin-bottom:clamp(16px,2.5dvh,24px)}.letter-content--preview-mobile.svelte-1n2apdd .letter-stage-wrap[data-stage-id=music]:where(.svelte-1n2apdd) .letter-emotive-card:where(.svelte-1n2apdd){width:min(100%,350px);padding:clamp(20px,5cqw,28px)}.letter-music-consent.svelte-1n2apdd{display:grid;min-height:170px;place-items:center;gap:12px;padding:22px;background:hsl(var(--card) / .72);color:hsl(var(--muted-foreground));text-align:center}.letter-music-consent.svelte-1n2apdd p:where(.svelte-1n2apdd){max-width:360px;margin:0;font-size:.92rem;line-height:1.5}.letter-music-consent.svelte-1n2apdd button:where(.svelte-1n2apdd){display:inline-flex;min-height:40px;align-items:center;justify-content:center;border:1px solid hsl(var(--primary));border-radius:999px;padding:0 16px;background:hsl(var(--primary));color:hsl(var(--primary-foreground));font:inherit;font-weight:800;cursor:pointer}.letter-feedback__form.svelte-1n2apdd{position:relative;display:grid;justify-items:center;width:min(100%,448px);text-align:center}.letter-eyebrow.svelte-1n2apdd{margin:0;color:hsl(var(--primary));font-size:.72rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.letter-feedback.svelte-1n2apdd h2:where(.svelte-1n2apdd){margin:12px 0 0;color:hsl(var(--foreground));font-size:clamp(1.7rem,7vw,2.5rem);line-height:1.1}.letter-feedback.svelte-1n2apdd p:where(.svelte-1n2apdd){margin:12px 0 0;max-width:380px;color:hsl(var(--muted-foreground));line-height:1.55}.letter-feedback.svelte-1n2apdd fieldset:where(.svelte-1n2apdd){border:0;margin:24px 0 0;padding:0}.letter-feedback.svelte-1n2apdd legend:where(.svelte-1n2apdd),.letter-rating__label.svelte-1n2apdd span:where(.svelte-1n2apdd){position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px)}.letter-rating.svelte-1n2apdd{--letter-rating-yellow: hsl(38 90% 55%);--letter-rating-muted: hsl(var(--muted-foreground) / .32);position:relative;display:flex;justify-content:center;padding-bottom:1.45rem}.letter-rating__input.svelte-1n2apdd{position:absolute;width:1px;height:1px;opacity:0;appearance:none}.letter-rating__label.svelte-1n2apdd{display:block;padding:.14rem;color:var(--letter-rating-yellow);cursor:pointer}.letter-rating__star.svelte-1n2apdd{display:block;width:2.15rem;height:2.15rem;overflow:visible;pointer-events:none}.letter-rating__star-ring.svelte-1n2apdd,.letter-rating__star-fill.svelte-1n2apdd,.letter-rating__star-line.svelte-1n2apdd,.letter-rating__star-stroke.svelte-1n2apdd{animation-duration:1s;animation-fill-mode:forwards;animation-timing-function:ease-in-out}.letter-rating__star-ring.svelte-1n2apdd,.letter-rating__star-fill.svelte-1n2apdd,.letter-rating__star-line.svelte-1n2apdd{stroke:var(--letter-rating-yellow)}.letter-rating__star-fill.svelte-1n2apdd{fill:var(--letter-rating-yellow);transform:scale(0);transition:fill .3s ease,transform .3s ease}.letter-rating__star-line.svelte-1n2apdd{stroke-dasharray:12 13;stroke-dashoffset:-13}.letter-rating__star-stroke.svelte-1n2apdd{stroke:var(--letter-rating-muted);transition:stroke .3s ease}.letter-rating__display.svelte-1n2apdd{position:absolute;left:0;top:calc(100% + .16rem);display:none;width:100%;min-height:1.25em;margin:0;color:hsl(var(--muted-foreground));font-size:.875rem;font-weight:650;text-align:center}.letter-rating__input-1.svelte-1n2apdd:checked~[data-rating="1"]:where(.svelte-1n2apdd),.letter-rating__input-2.svelte-1n2apdd:checked~[data-rating="2"]:where(.svelte-1n2apdd),.letter-rating__input-3.svelte-1n2apdd:checked~[data-rating="3"]:where(.svelte-1n2apdd),.letter-rating__input-4.svelte-1n2apdd:checked~[data-rating="4"]:where(.svelte-1n2apdd),.letter-rating__input-5.svelte-1n2apdd:checked~[data-rating="5"]:where(.svelte-1n2apdd){display:block}.letter-rating__input-1.svelte-1n2apdd:checked~.letter-rating__label:where(.svelte-1n2apdd):first-of-type .letter-rating__star-ring:where(.svelte-1n2apdd),.letter-rating__input-2.svelte-1n2apdd:checked~.letter-rating__label:where(.svelte-1n2apdd):nth-of-type(-n+2) .letter-rating__star-ring:where(.svelte-1n2apdd),.letter-rating__input-3.svelte-1n2apdd:checked~.letter-rating__label:where(.svelte-1n2apdd):nth-of-type(-n+3) .letter-rating__star-ring:where(.svelte-1n2apdd),.letter-rating__input-4.svelte-1n2apdd:checked~.letter-rating__label:where(.svelte-1n2apdd):nth-of-type(-n+4) .letter-rating__star-ring:where(.svelte-1n2apdd),.letter-rating__input-5.svelte-1n2apdd:checked~.letter-rating__label:where(.svelte-1n2apdd):nth-of-type(-n+5) .letter-rating__star-ring:where(.svelte-1n2apdd){animation-name:svelte-1n2apdd-letterRatingStarRing}.letter-rating__input-1.svelte-1n2apdd:checked~.letter-rating__label:where(.svelte-1n2apdd):first-of-type .letter-rating__star-stroke:where(.svelte-1n2apdd),.letter-rating__input-2.svelte-1n2apdd:checked~.letter-rating__label:where(.svelte-1n2apdd):nth-of-type(-n+2) .letter-rating__star-stroke:where(.svelte-1n2apdd),.letter-rating__input-3.svelte-1n2apdd:checked~.letter-rating__label:where(.svelte-1n2apdd):nth-of-type(-n+3) .letter-rating__star-stroke:where(.svelte-1n2apdd),.letter-rating__input-4.svelte-1n2apdd:checked~.letter-rating__label:where(.svelte-1n2apdd):nth-of-type(-n+4) .letter-rating__star-stroke:where(.svelte-1n2apdd),.letter-rating__input-5.svelte-1n2apdd:checked~.letter-rating__label:where(.svelte-1n2apdd):nth-of-type(-n+5) .letter-rating__star-stroke:where(.svelte-1n2apdd){animation-name:svelte-1n2apdd-letterRatingStarStroke}.letter-rating__input-1.svelte-1n2apdd:checked~.letter-rating__label:where(.svelte-1n2apdd):first-of-type .letter-rating__star-line:where(.svelte-1n2apdd),.letter-rating__input-2.svelte-1n2apdd:checked~.letter-rating__label:where(.svelte-1n2apdd):nth-of-type(-n+2) .letter-rating__star-line:where(.svelte-1n2apdd),.letter-rating__input-3.svelte-1n2apdd:checked~.letter-rating__label:where(.svelte-1n2apdd):nth-of-type(-n+3) .letter-rating__star-line:where(.svelte-1n2apdd),.letter-rating__input-4.svelte-1n2apdd:checked~.letter-rating__label:where(.svelte-1n2apdd):nth-of-type(-n+4) .letter-rating__star-line:where(.svelte-1n2apdd),.letter-rating__input-5.svelte-1n2apdd:checked~.letter-rating__label:where(.svelte-1n2apdd):nth-of-type(-n+5) .letter-rating__star-line:where(.svelte-1n2apdd){animation-name:svelte-1n2apdd-letterRatingStarLine}.letter-rating__input-1.svelte-1n2apdd:checked~.letter-rating__label:where(.svelte-1n2apdd):first-of-type .letter-rating__star-fill:where(.svelte-1n2apdd),.letter-rating__input-2.svelte-1n2apdd:checked~.letter-rating__label:where(.svelte-1n2apdd):nth-of-type(-n+2) .letter-rating__star-fill:where(.svelte-1n2apdd),.letter-rating__input-3.svelte-1n2apdd:checked~.letter-rating__label:where(.svelte-1n2apdd):nth-of-type(-n+3) .letter-rating__star-fill:where(.svelte-1n2apdd),.letter-rating__input-4.svelte-1n2apdd:checked~.letter-rating__label:where(.svelte-1n2apdd):nth-of-type(-n+4) .letter-rating__star-fill:where(.svelte-1n2apdd),.letter-rating__input-5.svelte-1n2apdd:checked~.letter-rating__label:where(.svelte-1n2apdd):nth-of-type(-n+5) .letter-rating__star-fill:where(.svelte-1n2apdd){animation-name:svelte-1n2apdd-letterRatingStarFill}.letter-feedback__message.svelte-1n2apdd{display:grid;gap:8px;width:100%;margin-top:20px;color:hsl(var(--foreground));font-size:.88rem;font-weight:750;text-align:start}.letter-feedback.svelte-1n2apdd textarea:where(.svelte-1n2apdd){width:100%;min-height:112px;border:1px solid hsl(var(--border) / .62);border-radius:18px;padding:14px;background:hsl(var(--background) / .76);color:hsl(var(--foreground));font:inherit;line-height:1.5;outline:none;resize:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.letter-feedback.svelte-1n2apdd textarea:where(.svelte-1n2apdd):focus{border-color:hsl(var(--primary) / .62);box-shadow:0 0 0 3px hsl(var(--primary) / .12)}.letter-feedback__meta.svelte-1n2apdd{display:flex;width:100%;justify-content:space-between;gap:16px;margin-top:8px;color:hsl(var(--muted-foreground));font-size:.78rem}.letter-feedback__meta.svelte-1n2apdd .error:where(.svelte-1n2apdd),.letter-inline-error.svelte-1n2apdd{color:#d42160}.letter-ghost-button.svelte-1n2apdd{border:0;min-height:36px;color:hsl(var(--muted-foreground));background:transparent;font-size:.88rem}.spin.svelte-1n2apdd{animation:svelte-1n2apdd-letter-spin .85s linear infinite}.letter-lock.svelte-1n2apdd{position:absolute;inset:0;z-index:30;display:grid;place-content:center;justify-items:center;gap:14px;border:0;padding:24px;color:hsl(var(--foreground));background:hsl(var(--background) / .46);text-align:center;cursor:pointer}.letter-lock.svelte-1n2apdd:disabled{cursor:wait}.letter-lock.svelte-1n2apdd svg{color:hsl(var(--primary))}.letter-lock.svelte-1n2apdd span:where(.svelte-1n2apdd){max-width:320px;font-weight:700;line-height:1.55}.letter-dots.svelte-1n2apdd{position:fixed;inset-inline:0;top:24px;z-index:40;display:flex;align-items:center;justify-content:center;gap:12px;padding-inline:16px}.letter-dots.svelte-1n2apdd button:where(.svelte-1n2apdd){position:relative;display:grid;width:20px;height:20px;place-items:center;border:0;border-radius:999px;padding:0;background:linear-gradient(135deg,hsl(var(--background) / .7),hsl(var(--background) / .4));cursor:pointer;transition:transform .3s ease,box-shadow .3s ease,background .3s ease}.letter-dots.svelte-1n2apdd button:where(.svelte-1n2apdd):before{content:"";position:absolute;inset:0;border:2px solid hsl(var(--primary) / .35);border-radius:inherit;transition:border-color .3s ease}.letter-dots.svelte-1n2apdd button.active:where(.svelte-1n2apdd){background:linear-gradient(135deg,hsl(var(--primary)),hsl(var(--accent)));box-shadow:0 0 0 3px #ec48998c,0 0 10px #ec48998c;transform:scale(1.1)}.letter-dots.svelte-1n2apdd button.active:where(.svelte-1n2apdd):before{border-color:#f9a8d4}.letter-dots.svelte-1n2apdd button.active:where(.svelte-1n2apdd):after{content:"";position:absolute;inset:0;border-radius:inherit;background:hsl(var(--primary) / .25);animation:svelte-1n2apdd-letter-ping 1.2s cubic-bezier(0,0,.2,1) infinite}.letter-dots.svelte-1n2apdd span:where(.svelte-1n2apdd){position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.letter-mobile-dots.svelte-1n2apdd{position:fixed;top:50%;inset-inline-start:8px;z-index:40;display:none;flex-direction:column;align-items:center;gap:12px;transform:translateY(-50%);transition:opacity .24s ease,filter .24s ease,transform .28s ease;will-change:opacity,transform}.letter-mobile-dots.is-retracted.svelte-1n2apdd{opacity:.42;filter:saturate(.82);pointer-events:none;transform:translate(-22px,-50%)}[dir=rtl].svelte-1n2apdd .letter-mobile-dots:where(.svelte-1n2apdd){inset-inline-start:auto;inset-inline-end:8px}[dir=rtl].svelte-1n2apdd .letter-mobile-dots.is-retracted:where(.svelte-1n2apdd){transform:translate(22px,-50%)}.letter-mobile-dots.svelte-1n2apdd:before{content:"";position:absolute;top:0;bottom:0;left:50%;z-index:-1;width:1px;background:linear-gradient(to bottom,transparent,hsl(var(--primary) / .35),transparent);transform:translate(-50%)}.letter-mobile-dots.svelte-1n2apdd button:where(.svelte-1n2apdd){width:16px;height:16px;border:2px solid hsl(var(--primary) / .35);border-radius:999px;padding:0;background:hsl(var(--background) / .75);transition:box-shadow .2s ease,opacity .2s ease,transform .2s ease,background .2s ease}.letter-mobile-dots.svelte-1n2apdd button.active:where(.svelte-1n2apdd){background:linear-gradient(135deg,hsl(var(--primary)),hsl(var(--accent)));box-shadow:0 0 0 2px #ec48996b,0 0 8px #ec48995c;transform:scale(1.1)}.letter-arrows.svelte-1n2apdd{position:absolute;inset-inline:clamp(16px,3vw,38px);top:50%;z-index:24;display:flex;justify-content:space-between;pointer-events:none;transform:translateY(-50%)}.letter-arrows.svelte-1n2apdd button:where(.svelte-1n2apdd){width:48px;height:48px;display:inline-flex;align-items:center;justify-content:center;border:1px solid hsl(var(--border) / .4);border-radius:999px;color:hsl(var(--foreground));background:hsl(var(--background) / .7);box-shadow:0 14px 34px #0000001a;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);pointer-events:auto;cursor:pointer;transition:opacity .18s ease,transform .18s ease,background .18s ease}.letter-arrows.svelte-1n2apdd button:where(.svelte-1n2apdd):hover{background:hsl(var(--background) / .9);transform:scale(1.05)}.letter-arrows.svelte-1n2apdd button:where(.svelte-1n2apdd):disabled{opacity:0;pointer-events:none}.letter-floating-cards.svelte-1n2apdd{position:absolute;left:50%;bottom:max(env(safe-area-inset-bottom),40px);z-index:28;min-width:min(320px,calc(100vw - 48px));border:1px solid hsl(var(--primary) / .34);border-radius:16px;min-height:58px;padding:0 32px;color:#fff;font-size:1.05rem;background:linear-gradient(135deg,hsl(var(--primary)),hsl(var(--accent)));box-shadow:0 4px 12px -2px hsl(var(--primary) / .55),0 8px 28px -4px hsl(var(--accent) / .45),0 0 0 1px hsl(var(--primary) / .25),inset 0 1px #ffffff40,inset 0 -1px 4px #00000026;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);white-space:nowrap;transform:translate(-50%);transition:transform .18s ease,box-shadow .18s ease,opacity .18s ease}.letter-floating-cards.svelte-1n2apdd:hover{box-shadow:0 8px 18px -4px hsl(var(--primary) / .62),0 14px 34px -6px hsl(var(--accent) / .52),0 0 0 1px hsl(var(--primary) / .3),inset 0 1px #ffffff47,inset 0 -1px 4px #00000029;transform:translate(-50%) translateY(-2px)}.letter-floating-cards.svelte-1n2apdd:disabled{cursor:wait;opacity:.76}.letter-lightbox.svelte-1n2apdd{position:fixed;inset:0;z-index:80;display:grid;place-items:center;overflow:hidden;padding:clamp(20px,4vw,36px) clamp(18px,4vw,40px) max(env(safe-area-inset-bottom),84px);color:#fff;background:linear-gradient(135deg,#08060aeb,#1f101ce6 46%,#0a070cf0),#08060aeb;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);isolation:isolate;touch-action:none}.letter-lightbox.svelte-1n2apdd:before{content:"";position:absolute;inset:-20%;z-index:-1;background:repeating-linear-gradient(90deg,rgba(255,255,255,.035) 0 1px,transparent 1px 18px),repeating-linear-gradient(0deg,rgba(255,255,255,.025) 0 1px,transparent 1px 22px);opacity:.38;transform:rotate(-3deg);pointer-events:none}.letter-lightbox__stage.svelte-1n2apdd{position:relative;z-index:2;display:grid;width:100%;height:100%;min-height:0;place-items:center;pointer-events:none}.letter-lightbox__motion.svelte-1n2apdd{grid-area:1 / 1;display:grid;place-items:center;pointer-events:auto;will-change:transform,opacity,filter}.letter-lightbox__polaroid.svelte-1n2apdd{position:relative;z-index:2;width:min(82vw,calc((100vh - 180px)*.74),520px);width:min(82vw,calc((100svh - 180px)*.74),520px);margin:0;border:0;border-radius:12px 12px 7px 7px;padding:clamp(10px,2vw,16px) clamp(10px,2vw,16px) clamp(52px,7vh,74px);padding:clamp(10px,2vw,16px) clamp(10px,2vw,16px) clamp(52px,7svh,74px);color:#241d20;background:linear-gradient(145deg,#fffffff5,#fff8effa),#fffaf3;box-shadow:0 32px 80px #0000009e,0 12px 28px #0000005c,inset 0 0 0 1px #2c182014,inset 0 1px #fffc;transform:rotate(var(--lightbox-tilt))}.letter-lightbox__polaroid.landscape.svelte-1n2apdd{width:min(88vw,760px);padding-bottom:clamp(48px,6vh,64px);padding-bottom:clamp(48px,6svh,64px)}.letter-lightbox__polaroid.square.svelte-1n2apdd{width:min(84vw,calc((100vh - 180px)*.92),560px);width:min(84vw,calc((100svh - 180px)*.92),560px)}.letter-lightbox__polaroid.portrait.svelte-1n2apdd{width:min(82vw,calc((100vh - 180px)*.7),500px);width:min(82vw,calc((100svh - 180px)*.7),500px)}.letter-lightbox.is-zoomed.svelte-1n2apdd{padding:0;background:#050406f5}.letter-lightbox.is-zoomed.svelte-1n2apdd:before{opacity:0}.letter-lightbox.is-zoomed.svelte-1n2apdd .letter-lightbox__stage:where(.svelte-1n2apdd){position:absolute;inset:0;width:100vw;height:100vh;height:100svh}.letter-lightbox.is-zoomed.svelte-1n2apdd .letter-lightbox__motion:where(.svelte-1n2apdd){width:100%;height:100%}.letter-lightbox.is-zoomed.svelte-1n2apdd .letter-lightbox__polaroid:where(.svelte-1n2apdd){display:grid;width:100vw;height:100vh;height:100svh;place-items:center;border-radius:0;padding:0;background:transparent;box-shadow:none;transform:none;animation:none}.letter-lightbox.is-zoomed.svelte-1n2apdd .letter-lightbox__tape:where(.svelte-1n2apdd),.letter-lightbox.is-zoomed.svelte-1n2apdd figcaption:where(.svelte-1n2apdd){display:none}.letter-lightbox.is-zoomed.svelte-1n2apdd .letter-lightbox__photo-window:where(.svelte-1n2apdd){width:100vw;height:100vh;height:100svh;aspect-ratio:auto;border:0;border-radius:0;background:transparent;transform:none}.letter-lightbox__tape.svelte-1n2apdd{position:absolute;z-index:4;display:block;border-radius:3px;background:linear-gradient(90deg,rgba(255,255,255,.38),transparent 34%,rgba(255,255,255,.26)),#fde68ac2;box-shadow:0 4px 12px #0000002e;pointer-events:none}.letter-lightbox__tape--top.svelte-1n2apdd{top:-12px;left:50%;width:clamp(72px,16vw,112px);height:26px;transform:translate(-50%) rotate(-4deg)}.letter-lightbox__tape--corner.svelte-1n2apdd{right:clamp(8px,2vw,18px);bottom:clamp(34px,5vh,48px);bottom:clamp(34px,5svh,48px);width:clamp(56px,11vw,82px);height:22px;transform:rotate(8deg);opacity:.76}.letter-lightbox__photo-window.svelte-1n2apdd{position:relative;display:grid;aspect-ratio:var(--lightbox-image-ratio);place-items:center;overflow:hidden;border:1px solid rgba(44,24,32,.1);border-radius:6px;padding:0;background:linear-gradient(135deg,rgba(255,255,255,.08),transparent 38%),#151014;color:inherit;cursor:zoom-in;font:inherit;touch-action:none}.letter-lightbox__photo-window.is-zoomed.svelte-1n2apdd{cursor:grab}.letter-lightbox__photo-window.is-dragging.svelte-1n2apdd{cursor:grabbing}.letter-lightbox__photo-window.svelte-1n2apdd .letter-lightbox__image{width:100%;height:100%;object-fit:cover;transform:translate3d(var(--lightbox-x),var(--lightbox-y),0) scale(var(--lightbox-zoom));transform-origin:center;-webkit-user-select:none;user-select:none;transition:transform .18s ease;will-change:transform}.letter-lightbox__photo-window.is-dragging.svelte-1n2apdd .letter-lightbox__image{transition:none}.letter-lightbox.is-zoomed.svelte-1n2apdd .letter-lightbox__photo-window:where(.svelte-1n2apdd) .letter-lightbox__image{width:var(--lightbox-fit-width);height:var(--lightbox-fit-height);max-width:none;max-height:none;object-fit:contain}.letter-lightbox.is-slideshow.svelte-1n2apdd .letter-lightbox__photo-window:where(.svelte-1n2apdd){cursor:default;pointer-events:none}.letter-lightbox.svelte-1n2apdd figcaption:where(.svelte-1n2apdd){position:absolute;right:clamp(14px,2vw,18px);bottom:clamp(12px,2.3vh,18px);bottom:clamp(12px,2.3svh,18px);left:clamp(14px,2vw,18px);display:flex;min-height:30px;align-items:center;justify-content:center;gap:10px;color:#6e6267;font-family:Comic Sans MS,Segoe Print,Bradley Hand,cursive;font-size:clamp(.84rem,2.4vw,1rem);line-height:1.2;text-align:center}.letter-lightbox.svelte-1n2apdd figcaption.has-caption:where(.svelte-1n2apdd){justify-content:space-between;text-align:start}.letter-lightbox__caption-text.svelte-1n2apdd{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.letter-lightbox__counter.svelte-1n2apdd{flex:0 0 auto;color:#46373e9e;font-family:var(--font-sans);font-size:.74rem;font-weight:800}.letter-lightbox__button.svelte-1n2apdd{display:inline-grid;width:44px;height:44px;place-items:center;border:1px solid rgba(255,255,255,.2);border-radius:999px;color:#fff;background:#ffffff21;box-shadow:0 14px 30px #0000003d;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);cursor:pointer;transition:background .18s ease,opacity .18s ease,border-color .18s ease,box-shadow .18s ease}.letter-lightbox__button.svelte-1n2apdd:hover:not(:disabled){border-color:#ffffff57;background:#ffffff38;box-shadow:0 16px 34px #00000047}.letter-lightbox__button.svelte-1n2apdd:disabled{cursor:default;opacity:.38}.letter-lightbox__button.svelte-1n2apdd:focus-visible{outline:2px solid rgba(255,255,255,.8);outline-offset:3px}.letter-lightbox__close.svelte-1n2apdd{position:absolute;top:max(env(safe-area-inset-top),18px);inset-inline-end:max(env(safe-area-inset-right),18px);z-index:5}.letter-lightbox__nav.svelte-1n2apdd{position:absolute;top:50%;z-index:4;transform:translateY(-50%)}.letter-lightbox__nav--prev.svelte-1n2apdd{inset-inline-start:max(env(safe-area-inset-left),18px)}.letter-lightbox__nav--next.svelte-1n2apdd{inset-inline-end:max(env(safe-area-inset-right),18px)}.letter-lightbox__controls.svelte-1n2apdd{position:absolute;right:50%;bottom:max(env(safe-area-inset-bottom),20px);z-index:5;display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(255,255,255,.14);border-radius:999px;padding:6px;background:#0b080c6b;box-shadow:0 20px 44px #00000047;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);transform:translate(50%)}.letter-lightbox__controls.is-slideshow.svelte-1n2apdd{display:grid;width:64px;height:64px;place-items:center;padding:0;background:#0b080c4d}.letter-lightbox__button.letter-lightbox__pause-button.svelte-1n2apdd{position:relative;width:48px;height:48px;overflow:visible;padding:0;border-color:#ffffff52;background:#fff3}.letter-lightbox__pause-icon.svelte-1n2apdd{position:relative;z-index:1;display:grid;width:22px;height:22px;place-items:center;line-height:0}.letter-lightbox__pause-icon.svelte-1n2apdd svg{display:block}.letter-lightbox__progress.svelte-1n2apdd{position:absolute;left:50%;top:50%;width:62px;height:62px;overflow:visible;pointer-events:none;transform:translate(-50%,-50%) rotate(-90deg);transform-origin:center}.letter-lightbox__progress-track.svelte-1n2apdd,.letter-lightbox__progress-value.svelte-1n2apdd{fill:none;stroke-width:3}.letter-lightbox__progress-track.svelte-1n2apdd{stroke:#ffffff2e}.letter-lightbox__progress-value.svelte-1n2apdd{stroke:#fffffff2;stroke-dasharray:132;stroke-dashoffset:132;stroke-linecap:round;animation:svelte-1n2apdd-letter-lightbox-progress var(--lightbox-slide-duration) linear forwards}.letter-lightbox__sr.svelte-1n2apdd{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.letter-fullscreen-text.svelte-1n2apdd{position:fixed;inset:0;z-index:999;display:flex;flex-direction:column;overflow:hidden;padding:0;color:hsl(var(--foreground));background:hsl(var(--background) / .95);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.letter-fullscreen-text.svelte-1n2apdd button:where(.svelte-1n2apdd){display:inline-grid;width:44px;height:44px;place-items:center;border:1px solid rgba(255,255,255,.18);border-radius:999px;color:hsl(var(--foreground));background:hsl(var(--background) / .4);cursor:pointer}.letter-fullscreen-text.svelte-1n2apdd header:where(.svelte-1n2apdd){display:flex;width:100%;align-items:center;justify-content:space-between;border-bottom:1px solid hsl(var(--border) / .4);padding:12px clamp(16px,4vw,32px)}.letter-fullscreen-text.svelte-1n2apdd h2:where(.svelte-1n2apdd){margin:0;color:hsl(var(--foreground) / .8);font-size:.95rem;font-weight:600}.letter-fullscreen-text.svelte-1n2apdd article:where(.svelte-1n2apdd){width:100%;flex:1;overflow-y:auto;padding:clamp(28px,6vw,48px) clamp(18px,6vw,40px)}.letter-fullscreen-text.svelte-1n2apdd article:where(.svelte-1n2apdd) p:where(.svelte-1n2apdd){width:min(100%,760px);margin:0 auto;white-space:pre-wrap;color:var(--letter-italic-ink-strong);font-family:var(--font-serif);font-size:clamp(1.1rem,3vw,1.65rem);line-height:1.7}@keyframes svelte-1n2apdd-letter-lightbox-progress{to{stroke-dashoffset:0}}@keyframes svelte-1n2apdd-letter-snow{0%{background-position:0 -120px,20px -80px}to{background-position:0 100vh,20px 100vh}}@keyframes svelte-1n2apdd-letter-cta-gradient{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes svelte-1n2apdd-letter-ping{75%,to{opacity:0;transform:scale(2)}}@keyframes svelte-1n2apdd-letter-spin{to{transform:rotate(360deg)}}@keyframes svelte-1n2apdd-letterRatingStarRing{0%,20%{opacity:1;r:8px;stroke-width:16px;transform:scale(0)}35%{opacity:.5;r:8px;stroke-width:16px;transform:scale(1)}50%,to{opacity:0;r:16px;stroke-width:0;transform:scale(1)}}@keyframes svelte-1n2apdd-letterRatingStarFill{0%,40%{transform:scale(0)}60%{transform:scale(1.2)}80%{transform:scale(.9)}to{transform:scale(1)}}@keyframes svelte-1n2apdd-letterRatingStarStroke{0%{transform:scale(1)}20%,to{transform:scale(0)}}@keyframes svelte-1n2apdd-letterRatingStarLine{0%,40%{stroke-dasharray:1 23;stroke-dashoffset:1}60%,to{stroke-dasharray:12 13;stroke-dashoffset:-13}}@media(max-width:760px){.letter-stage.svelte-1n2apdd{padding-inline:18px;padding-top:max(env(safe-area-inset-top),76px);padding-bottom:max(env(safe-area-inset-bottom),128px)}.letter-emotive-card.svelte-1n2apdd{width:min(100%,360px);max-height:calc(100vh - 220px);max-height:calc(100svh - 220px)}.letter-emotive-card--lg.svelte-1n2apdd{grid-template-rows:auto auto;height:auto;min-height:0;padding:22px}.letter-emotive-card__header.svelte-1n2apdd{gap:12px;margin-bottom:20px}.letter-emotive-card__icon.svelte-1n2apdd{width:48px;height:48px;border-radius:16px}.letter-emotive-card.svelte-1n2apdd h2:where(.svelte-1n2apdd){font-size:clamp(1.28rem,6.2vw,1.75rem);line-height:1.02}.letter-emotive-card__scroll.svelte-1n2apdd{height:auto;min-height:clamp(132px,23vh,184px);min-height:clamp(132px,23dvh,184px);max-height:none}.letter-emotive-card__text{font-size:clamp(.98rem,4.4vw,1.08rem)!important;line-height:1.58!important}.letter-hero__copy.svelte-1n2apdd{width:min(100%,360px);gap:10px}.letter-hero.svelte-1n2apdd h1:where(.svelte-1n2apdd){max-width:min(86vw,280px);font-size:clamp(2rem,11vw,3.35rem)}.letter-content--birthday.svelte-1n2apdd .letter-hero:where(.svelte-1n2apdd) h1:where(.svelte-1n2apdd){max-width:min(86vw,360px);font-size:clamp(2.7rem,14vw,4.35rem)}.letter-hero__cone.svelte-1n2apdd{width:clamp(44px,17vw,72px);height:clamp(44px,17vw,72px);opacity:.92}.letter-hero__cone--left.svelte-1n2apdd{right:calc(100% - 14px)}.letter-hero__cone--right.svelte-1n2apdd{left:calc(100% - 14px)}.letter-message__cake.svelte-1n2apdd{height:122px;margin-bottom:12px;transform:scale(.86)}.letter-hero__meta.svelte-1n2apdd bdi:where(.svelte-1n2apdd){max-width:min(88vw,340px);font-size:clamp(1.85rem,9vw,3rem);line-height:1.28;overflow-wrap:anywhere;white-space:normal;transform:none}.letter-hero-action.svelte-1n2apdd{min-height:38px;padding-inline:12px}.letter-photos.svelte-1n2apdd{gap:clamp(10px,2vh,16px);gap:clamp(10px,2dvh,16px);padding-top:max(env(safe-area-inset-top),58px);padding-bottom:max(env(safe-area-inset-bottom),72px)}.letter-photos.svelte-1n2apdd .letter-photo-header:where(.svelte-1n2apdd){max-width:min(92vw,340px);gap:8px;padding:8px 12px}.letter-photos.svelte-1n2apdd .letter-photo-header:where(.svelte-1n2apdd) span:where(.svelte-1n2apdd){width:34px;height:34px;border-radius:12px}.letter-photos.svelte-1n2apdd .letter-photo-header:where(.svelte-1n2apdd) h2:where(.svelte-1n2apdd){font-size:clamp(1.02rem,5vw,1.28rem);white-space:nowrap}.letter-photos.svelte-1n2apdd .letter-photo-header:where(.svelte-1n2apdd) b:where(.svelte-1n2apdd){padding:3px 8px;font-size:.68rem;white-space:nowrap}.letter-photo-grid.svelte-1n2apdd{grid-template-columns:1fr;width:min(78vw,310px);gap:clamp(9px,1.8vh,14px);gap:clamp(9px,1.8dvh,14px)}.letter-photo-card.svelte-1n2apdd{height:clamp(160px,27vh,230px);height:clamp(160px,27dvh,230px);border-radius:12px}.letter-open-more.svelte-1n2apdd{min-height:42px;padding-inline:16px;font-size:.95rem}.letter-gallery-carousel.svelte-1n2apdd{gap:10px}.letter-stage-wrap[data-stage-id=gallery].svelte-1n2apdd .letter-stage:where(.svelte-1n2apdd){padding-top:max(env(safe-area-inset-top),52px);padding-bottom:max(env(safe-area-inset-bottom),78px)}.letter-stage-wrap[data-stage-id=gallery].svelte-1n2apdd .letter-gallery-carousel:where(.svelte-1n2apdd){width:min(100%,320px);gap:clamp(8px,1.7vh,12px);gap:clamp(8px,1.7dvh,12px);align-content:center}.letter-stage-wrap[data-stage-id=gallery].svelte-1n2apdd .letter-photo-header:where(.svelte-1n2apdd){gap:8px;padding:8px 13px}.letter-stage-wrap[data-stage-id=gallery].svelte-1n2apdd .letter-photo-header:where(.svelte-1n2apdd) span:where(.svelte-1n2apdd){width:34px;height:34px;border-radius:12px}.letter-stage-wrap[data-stage-id=gallery].svelte-1n2apdd .letter-photo-header:where(.svelte-1n2apdd) h2:where(.svelte-1n2apdd){font-size:clamp(1rem,5vw,1.22rem);white-space:nowrap}.letter-stage-wrap[data-stage-id=gallery].svelte-1n2apdd .letter-photo-header:where(.svelte-1n2apdd) b:where(.svelte-1n2apdd){padding:2px 7px;font-size:.66rem;white-space:nowrap}.letter-stage-wrap[data-stage-id=gallery].svelte-1n2apdd .letter-gallery-date:where(.svelte-1n2apdd){display:none}.letter-gallery-dots.svelte-1n2apdd{display:none}.letter-polaroid-stage.svelte-1n2apdd{height:clamp(232px,35vh,304px);height:clamp(232px,35dvh,304px);margin-top:clamp(10px,2vh,18px);margin-top:clamp(10px,2dvh,18px)}.letter-stage-wrap[data-stage-id=gallery].svelte-1n2apdd .letter-polaroid-stage:where(.svelte-1n2apdd){width:min(68vw,252px);height:clamp(218px,34vh,254px);height:clamp(218px,34dvh,254px);margin-top:0}.letter-polaroid-stack.svelte-1n2apdd span:where(.svelte-1n2apdd){width:min(50vw,196px);padding:10px 10px 26px}.letter-stage-wrap[data-stage-id=gallery].svelte-1n2apdd .letter-polaroid-stack:where(.svelte-1n2apdd) span:where(.svelte-1n2apdd){box-sizing:border-box;width:min(41vw,156px);padding:9px 9px 23px;border-radius:7px 7px 5px 5px;box-shadow:0 18px 38px #00000038,inset 0 0 0 1px #0000000a}.letter-polaroid-stack.svelte-1n2apdd .layer-0:where(.svelte-1n2apdd){transform:translate(-80%,-58%) rotate(-7deg) scale(.94)}.letter-stage-wrap[data-stage-id=gallery].svelte-1n2apdd .letter-polaroid-stack:where(.svelte-1n2apdd) .layer-0:where(.svelte-1n2apdd){transform:translate(-74%,-43%) rotate(-7deg) scale(.9)}.letter-polaroid-stack.svelte-1n2apdd .layer-1:where(.svelte-1n2apdd){transform:translate(-66%,-55%) rotate(5deg) scale(.98)}.letter-stage-wrap[data-stage-id=gallery].svelte-1n2apdd .letter-polaroid-stack:where(.svelte-1n2apdd) .layer-1:where(.svelte-1n2apdd){transform:translate(-60%,-47%) rotate(5deg) scale(.94)}.letter-polaroid-stack.svelte-1n2apdd .layer-2:where(.svelte-1n2apdd),.letter-polaroid-stack.svelte-1n2apdd span:where(.svelte-1n2apdd):first-child:last-child{transform:translate(-50%,-48%) rotate(0) scale(1)}.letter-stage-wrap[data-stage-id=gallery].svelte-1n2apdd .letter-polaroid-stack:where(.svelte-1n2apdd) .layer-2:where(.svelte-1n2apdd),.letter-stage-wrap[data-stage-id=gallery].svelte-1n2apdd .letter-polaroid-stack:where(.svelte-1n2apdd) span:where(.svelte-1n2apdd):first-child:last-child{transform:translate(-50%,-52%) rotate(0) scale(.98)}.letter-stage-wrap[data-stage-id=gallery].svelte-1n2apdd .letter-gallery-nav:where(.svelte-1n2apdd){width:36px;height:36px;top:52%}.letter-gallery-caption.svelte-1n2apdd{width:min(86vw,340px);margin-top:clamp(8px,1.8vh,16px);margin-top:clamp(8px,1.8dvh,16px);border-radius:18px;padding:14px 18px 16px}.letter-stage-wrap[data-stage-id=gallery].svelte-1n2apdd .letter-gallery-caption:where(.svelte-1n2apdd){width:min(78vw,292px);margin-top:clamp(16px,3vh,24px);margin-top:clamp(16px,3dvh,24px);border-radius:16px;padding:10px 14px 11px}.letter-stage-wrap[data-stage-id=gallery].svelte-1n2apdd .letter-gallery-caption:where(.svelte-1n2apdd) small:where(.svelte-1n2apdd){font-size:.68rem;letter-spacing:.075em}.letter-gallery-caption.svelte-1n2apdd p:where(.svelte-1n2apdd){font-size:.95rem;line-height:1.35}.letter-stage-wrap[data-stage-id=gallery].svelte-1n2apdd .letter-gallery-caption:where(.svelte-1n2apdd) p:where(.svelte-1n2apdd){font-size:.88rem;line-height:1.28}.letter-places-map.svelte-1n2apdd{padding:0}.letter-places-map__preview.svelte-1n2apdd{width:100%;height:100%;border-radius:0}.letter-places-map__preview.svelte-1n2apdd .interactive-card-stage{height:100%;border-radius:0}.letter-arrows.svelte-1n2apdd,.letter-dots.svelte-1n2apdd{display:none}.letter-mobile-dots.svelte-1n2apdd{display:flex}.letter-floating-cards.svelte-1n2apdd{bottom:max(env(safe-area-inset-bottom),24px);min-width:min(330px,calc(100vw - 40px));max-width:calc(100vw - 40px);min-height:56px;padding-inline:24px}.letter-message__inner.svelte-1n2apdd{transform:none}.letter-stage-wrap[data-stage-id=message].svelte-1n2apdd .letter-message__inner:where(.svelte-1n2apdd){width:min(100%,300px)}.letter-message__icon{margin-bottom:28px}.letter-message__tools.svelte-1n2apdd,.letter-message__text-window.svelte-1n2apdd{width:min(100%,300px)}.letter-message__text-window.svelte-1n2apdd{height:clamp(180px,42vh,340px);height:clamp(180px,42dvh,340px)}.letter-message__text{font-size:clamp(1.12rem,5.6vw,1.5rem)!important;line-height:1.28!important}.letter-message__signature.svelte-1n2apdd{margin-top:32px}.letter-lightbox.svelte-1n2apdd{padding:max(env(safe-area-inset-top),58px) 14px max(env(safe-area-inset-bottom),132px)}.letter-lightbox__polaroid.svelte-1n2apdd{width:min(78vw,340px);padding:10px 10px 58px;transform:rotate(var(--lightbox-tilt))}.letter-lightbox__polaroid.landscape.svelte-1n2apdd{width:min(90vw,360px);padding-bottom:48px}.letter-lightbox__polaroid.square.svelte-1n2apdd{width:min(82vw,330px)}.letter-lightbox__polaroid.portrait.svelte-1n2apdd{width:min(78vw,330px)}.letter-lightbox.is-zoomed.svelte-1n2apdd .letter-lightbox__polaroid:where(.svelte-1n2apdd),.letter-lightbox.is-zoomed.svelte-1n2apdd .letter-lightbox__photo-window:where(.svelte-1n2apdd){width:100vw;height:100vh;height:100svh}.letter-lightbox__tape--corner.svelte-1n2apdd{display:none}.letter-lightbox.svelte-1n2apdd figcaption:where(.svelte-1n2apdd){right:12px;left:12px;flex-direction:column;gap:2px;min-height:38px;text-align:center}.letter-lightbox__caption-text.svelte-1n2apdd{max-width:100%}.letter-lightbox__nav.svelte-1n2apdd{top:auto;bottom:max(env(safe-area-inset-bottom),76px);transform:none}.letter-lightbox__nav--prev.svelte-1n2apdd{inset-inline-start:calc(50% - 88px)}.letter-lightbox__nav--next.svelte-1n2apdd{inset-inline-end:calc(50% - 88px)}.letter-lightbox__controls.svelte-1n2apdd{bottom:max(env(safe-area-inset-bottom),18px);gap:6px;padding:5px}.letter-lightbox__button.svelte-1n2apdd{width:42px;height:42px}.letter-scatter-polaroid.svelte-1n2apdd>div:where(.svelte-1n2apdd){width:118px;height:154px}}@media(prefers-reduced-motion:reduce){.letter-content--christmas.svelte-1n2apdd .letter-content__theme:where(.svelte-1n2apdd),.letter-polaroid-backdrop__blur,.letter-primary-button.svelte-1n2apdd,.letter-rating__star-ring.svelte-1n2apdd,.letter-rating__star-fill.svelte-1n2apdd,.letter-rating__star-line.svelte-1n2apdd,.letter-rating__star-stroke.svelte-1n2apdd{animation:none}.letter-scatter-polaroid.svelte-1n2apdd,.letter-polaroid-motion.svelte-1n2apdd,.letter-polaroid-stack.svelte-1n2apdd span:where(.svelte-1n2apdd),.letter-lightbox__motion.svelte-1n2apdd,.letter-lightbox__polaroid.svelte-1n2apdd,.letter-lightbox__button.svelte-1n2apdd,.letter-photo-card.svelte-1n2apdd .letter-photo-surface__image,.letter-single-photo.svelte-1n2apdd .letter-photo-surface__image{transition:none;animation:none}.letter-lightbox__photo-window.svelte-1n2apdd .letter-lightbox__image{transition:none}.letter-lightbox__progress-value.svelte-1n2apdd{animation:none;stroke-dashoffset:0}}@media(max-width:420px)and (max-height:760px){.letter-photos.svelte-1n2apdd{gap:8px;padding-top:max(env(safe-area-inset-top),46px);padding-bottom:max(env(safe-area-inset-bottom),54px)}.letter-photo-grid.svelte-1n2apdd{width:min(80vw,292px);gap:8px}.letter-photo-card.svelte-1n2apdd{height:clamp(138px,24vh,180px);height:clamp(138px,24dvh,180px);border-radius:10px}.letter-photos.svelte-1n2apdd .letter-photo-header:where(.svelte-1n2apdd){padding:7px 10px}.letter-photos.svelte-1n2apdd .letter-photo-header:where(.svelte-1n2apdd) span:where(.svelte-1n2apdd){width:30px;height:30px;border-radius:10px}.letter-photos.svelte-1n2apdd .letter-photo-header:where(.svelte-1n2apdd) h2:where(.svelte-1n2apdd){font-size:clamp(.98rem,4.6vw,1.14rem)}.letter-open-more.svelte-1n2apdd{min-height:38px;padding-inline:14px;font-size:.9rem}}
