@import url("https://fonts.googleapis.com/css2?family=Caveat:wght@400;500;600;700&family=Great+Vibes&family=Playfair+Display:ital,wght@0,400;0,500;0,600;0,700;1,400&family=Poppins:wght@300;400;500;600;700&display=swap");:root{color-scheme:light;--font-playfair:"Playfair Display","Times New Roman",serif;--font-poppins:"Poppins",system-ui,sans-serif;--font-handwritten:"Caveat",cursive;--font-memento:"Great Vibes",cursive;--bg-start:#fbe7f4;--bg-mid:#fdeff5;--bg-end:#f6f0ff;--card:hsla(0,0%,100%,.45);--card-border:hsla(0,0%,100%,.35);--text-dark:#321928;--text-mid:#6b3d5c;--accent:#f08bbf;--accent-dark:#d968a8;--shadow:0 20px 60px rgba(111,61,92,.12);--shadow-soft:0 8px 32px rgba(111,61,92,.08);--radius:26px;--radius-sm:18px;--blur:20px;--section-gap:48px;--section-padding-y:36px;--section-padding-y-mobile:24px;--container-max:980px;--container-padding-x:20px;--container-padding-x-desktop:40px;--prose-max:58ch;--prose-max-width:680px;--card-padding:28px;--touch-min:44px;--safe-top:env(safe-area-inset-top,0);--safe-bottom:env(safe-area-inset-bottom,0);--safe-left:env(safe-area-inset-left,0);--safe-right:env(safe-area-inset-right,0)}.emoji-img{display:inline-block;vertical-align:middle;object-fit:contain}.emoji-sm{width:1em;height:1em;min-width:1em;min-height:1em}.emoji-md{width:1.2em;height:1.2em;min-width:1.2em;min-height:1.2em}.emoji-lg{width:1.5em;height:1.5em;min-width:1.5em;min-height:1.5em}.emoji-fallback{display:inline}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;overflow-x:hidden}body{font-family:var(--font-poppins),system-ui,sans-serif;color:var(--text-dark);background:var(--bg-mid);min-height:100vh;padding-bottom:var(--safe-bottom)}.maintenance-screen{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:32px 24px;background:var(--bg-mid);text-align:center}.maintenance-center{flex:1 1;display:flex;flex-direction:column;align-items:center;justify-content:center}.maintenance-logo{display:block;margin-bottom:1.5rem;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:default}.maintenance-screen .memento-brand-text{font-size:2rem}.maintenance-screen .memento-curve-item{font-size:1rem}.maintenance-text{font-family:var(--font-playfair),serif;font-size:clamp(1.2rem,4vw,1.5rem);font-weight:600;color:var(--text-dark);margin:0;white-space:nowrap}.maintenance-subtext{font-family:var(--font-poppins),system-ui,sans-serif;font-size:clamp(.9rem,2.5vw,1rem);font-weight:400;color:var(--text-mid);margin:8px 0 0;max-width:28ch;text-align:center;line-height:1.5}.maintenance-screen .memento-footer{margin-top:auto;width:100%}.create-back,.cta-primary-saas,.cta-secondary-saas,.cta-submit-saas,.hero-music-btn,.landing-nav-cta,.unlock-btn-heartbeat,a.cta,button,input[type=submit]{min-height:var(--touch-min);-webkit-tap-highlight-color:rgba(217,104,168,.15)}.animated-gradient{position:fixed;inset:0;z-index:0;background:linear-gradient(135deg,rgba(251,231,244,.88),rgba(253,239,245,.88) 25%,rgba(246,232,248,.88) 50%,rgba(253,239,245,.88) 75%,rgba(246,240,255,.88));background-size:400% 400%;animation:gradient-shift 18s ease infinite;pointer-events:none}@keyframes gradient-shift{0%,to{background-position:0 50%}50%{background-position:100% 50%}}.background-floating-icons{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}.background-floating-icon{position:absolute;width:32px;height:32px;opacity:.06;animation:background-icon-float 8s ease-in-out infinite}.romantic-page-wrap .background-floating-icon{opacity:.1}.background-floating-icon img{width:100%;height:100%;object-fit:contain}@keyframes background-icon-float{0%,to{transform:translate(0)}25%{transform:translate(4px,-6px)}50%{transform:translate(-3px,4px)}75%{transform:translate(5px,3px)}}.floating-emojis{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}.romantic-page-floating-emojis{position:relative;z-index:1;pointer-events:none}.romantic-page-floating-emojis .floating-emojis{z-index:0}.floating-emoji-item{position:absolute;display:flex;align-items:center;justify-content:center;transform:translate(-50%,-50%);animation:floating-emoji-drift ease-in-out infinite alternate}.floating-emoji-item img{width:100%;height:100%;object-fit:contain;-webkit-user-select:none;-moz-user-select:none;user-select:none}@keyframes floating-emoji-drift{0%{transform:translate(-50%,-50%) translate(0) rotate(0deg)}to{transform:translate(-50%,-50%) translate(var(--float-dx,30px),var(--float-dy,-50px)) rotate(var(--float-rot,4deg))}}.heart-particles{position:fixed;inset:0;z-index:1;pointer-events:none}.romantic-page-wrap{min-height:100vh;max-width:100vw;box-sizing:border-box}.romantic-page-content,.romantic-page-wrap{position:relative;width:100%;overflow-x:hidden}.romantic-page-content{z-index:2;transition:opacity .8s ease;max-width:100%;min-width:0}.romantic-page-content.content-hidden{opacity:0;pointer-events:none}.romantic-page-content.content-visible{opacity:1;animation:content-fade-in .8s ease}@keyframes content-fade-in{0%{opacity:0}to{opacity:1}}.loading-screen{position:fixed;inset:0;z-index:10;display:flex;align-items:center;justify-content:center;background:rgba(251,231,244,.92);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:opacity .6s ease}.loading-screen.fadeout{opacity:0;pointer-events:none}.loading-text{font-family:var(--font-playfair),serif;font-size:clamp(1.2rem,2.5vw,1.6rem);color:var(--text-mid);letter-spacing:.02em;animation:loading-pulse 1.5s ease-in-out infinite}@keyframes loading-pulse{0%,to{opacity:.85}50%{opacity:1}}h1,h2,h3,h4{font-family:var(--font-playfair),"Times New Roman",serif;font-weight:600;color:var(--text-dark)}h1{font-size:clamp(1.5rem,4vw,2.75rem)}h2{font-size:clamp(1.35rem,3vw,2.25rem)}h3{font-size:clamp(1.2rem,2.5vw,1.75rem)}h4{font-size:clamp(1.1rem,2vw,1.4rem)}a{text-decoration:none;color:inherit}img{display:block}button,input,textarea{font-family:inherit}main{width:100%}.landing{padding:32px 6vw 80px}.landing-saas{min-height:100vh;display:flex;flex-direction:column;max-width:720px;margin:0 auto}.landing-header{display:flex;align-items:center;justify-content:space-between;padding:12px 0 48px}.brand-saas{font-family:var(--font-playfair),serif;font-size:1.35rem;color:var(--text-dark);letter-spacing:.02em}.brand-saas,.landing-nav-cta{font-weight:600;text-decoration:none}.landing-nav-cta{font-size:.9rem;color:var(--accent-dark);padding:8px 16px;border-radius:999px;border:1px solid rgba(217,104,168,.35);background:hsla(0,0%,100%,.6);transition:background .2s,border-color .2s}.landing-nav-cta:hover{background:hsla(0,0%,100%,.9);border-color:var(--accent-dark)}.landing-hero-saas{flex:1 1;padding:24px 0 48px}.landing-badge{display:inline-block;font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-mid);margin-bottom:16px}.landing-headline{font-family:var(--font-playfair),serif;font-size:clamp(2rem,4vw,2.75rem);font-weight:600;line-height:1.2;color:var(--text-dark);margin:0 0 16px;letter-spacing:-.02em}.landing-lead{font-size:1rem;line-height:1.65;color:var(--text-mid);margin:0 0 28px;max-width:42ch}.landing-cta-block{display:flex;flex-direction:column;gap:12px;align-items:flex-start}.cta-primary-saas{display:inline-block;padding:14px 28px;font-size:.95rem;font-weight:600;border-radius:12px;text-decoration:none;background:linear-gradient(135deg,var(--accent),var(--accent-dark));color:#fff;border:none;box-shadow:0 4px 20px rgba(217,104,168,.3);transition:transform .2s,box-shadow .2s}.cta-primary-saas:hover{transform:translateY(-2px);box-shadow:0 8px 28px rgba(217,104,168,.35)}.landing-cta-hint{font-size:.8rem;color:var(--text-mid);opacity:.85}.landing-features-saas{display:flex;flex-wrap:wrap;gap:10px;padding:32px 0;border-top:1px solid hsla(0,0%,100%,.5)}.feature-pill{display:inline-flex;align-items:center;gap:8px;font-size:.85rem;color:var(--text-mid);padding:8px 14px;background:hsla(0,0%,100%,.5);border:1px solid rgba(217,104,168,.2);border-radius:999px}.feature-pill-icon{font-size:1rem;opacity:.9}.feature-pill-with-desc{flex-direction:column;align-items:flex-start;gap:6px;padding:14px 16px}.feature-pill-title{display:flex;align-items:center;gap:8px}.landing-how-it-works{padding:40px 0 32px;border-top:1px solid hsla(0,0%,100%,.5)}.landing-how-title{font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-mid);margin-bottom:20px}.landing-steps{display:grid;grid-gap:20px;gap:20px;max-width:42ch}.landing-step{display:flex;gap:14px;align-items:flex-start}.landing-step-num{flex-shrink:0;width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent-dark));color:#fff;font-size:.85rem;font-weight:600;display:flex;align-items:center;justify-content:center}.landing-step-text{font-size:.95rem;line-height:1.6}.landing-step-text,.landing-step-text strong{color:var(--text-dark)}.landing-value-line{font-size:.9rem;color:var(--text-mid);font-style:italic;padding:24px 0 16px;border-top:1px solid hsla(0,0%,100%,.4);max-width:44ch}.landing-feature-desc{font-size:.8rem;color:var(--text-mid);opacity:.9;margin-top:4px;line-height:1.45}.landing-footer-saas{padding-top:24px}.cta-secondary-saas{display:inline-block;padding:10px 20px;font-size:.9rem;font-weight:600;border-radius:10px;text-decoration:none;background:transparent;color:var(--accent-dark);border:1px solid rgba(217,104,168,.4);transition:background .2s,color .2s}.cta-secondary-saas:hover{background:rgba(217,104,168,.08)}.memento-container,.memento-page-container{width:100%;max-width:var(--container-max);margin-left:auto;margin-right:auto;padding-left:max(var(--container-padding-x),var(--safe-left));padding-right:max(var(--container-padding-x),var(--safe-right))}@media (min-width:769px){.memento-container,.memento-page-container{padding-left:var(--container-padding-x-desktop);padding-right:var(--container-padding-x-desktop)}}.memento-section-spacing{padding-top:var(--section-padding-y-mobile);padding-bottom:var(--section-padding-y-mobile)}@media (min-width:769px){.memento-section-spacing{padding-top:var(--section-padding-y);padding-bottom:var(--section-padding-y)}}.memento-prose{max-width:var(--prose-max-width);margin-left:auto;margin-right:auto}.memento-landing .memento-container{max-width:var(--container-max)}@media (max-width:768px){.memento-landing .memento-container{padding-inline:max(20px,var(--safe-left)) max(20px,var(--safe-right))}}.memento-landing{position:relative;min-height:100vh;padding:40px 0;background:linear-gradient(180deg,rgba(251,231,244,.68),rgba(253,239,245,.68) 40%,rgba(246,240,255,.68));overflow-x:hidden}.memento-landing-content{position:relative;z-index:1}.memento-header{display:flex;align-items:center;justify-content:space-between;padding:12px 0 36px}.memento-brand{display:inline-flex;flex-direction:column;align-items:center;text-decoration:none;color:var(--text-dark);transition:color .2s ease,opacity .2s ease}.memento-brand-text{font-family:var(--font-memento),cursive;font-size:1.6rem;font-weight:400;line-height:1.2;letter-spacing:.02em}.memento-brand:hover,.memento-brand:hover .memento-brand-text{color:var(--accent-dark)}.memento-brand-underline{display:flex;align-items:center;justify-content:center;gap:2px;margin-top:-2px;line-height:1}.memento-curve-item{display:inline-block;font-size:.85rem;opacity:.9;transition:transform .2s ease,opacity .2s ease}.memento-brand:hover .memento-curve-item{opacity:1}.memento-create-page .memento-brand-text,.memento-landing .memento-brand-text{font-size:2.1rem}.memento-create-page .memento-curve-item,.memento-landing .memento-curve-item{font-size:1rem}.memento-nav-cta{font-size:.9rem;font-weight:600;color:#fff;text-decoration:none;padding:10px 20px;border-radius:12px;background:linear-gradient(135deg,var(--accent),var(--accent-dark));box-shadow:0 4px 20px rgba(217,104,168,.3);transition:transform .2s,box-shadow .2s}.memento-nav-cta:hover{transform:translateY(-2px);box-shadow:0 8px 28px rgba(217,104,168,.35)}.memento-landing .memento-container>section{padding-top:var(--section-padding-y-mobile);padding-bottom:var(--section-padding-y-mobile)}@media (min-width:769px){.memento-landing .memento-container>section{padding-top:var(--section-padding-y);padding-bottom:var(--section-padding-y)}}.memento-landing .memento-container>section+section:before{display:block;height:10px;margin-bottom:10px;background-image:linear-gradient(90deg,transparent,rgba(107,61,92,.12) 20%,rgba(217,104,168,.2) 50%,rgba(107,61,92,.12) 80%,transparent);background-size:100% 2px;background-position:center 50%;background-repeat:no-repeat;content:"♥";font-size:.65rem;color:rgba(217,104,168,.45);text-align:center;line-height:10px;letter-spacing:.1em}.memento-topline{font-size:.8rem;opacity:.9;margin:4px 0}.memento-brand-line,.memento-topline{text-align:center;color:var(--text-mid)}.memento-brand-line{font-family:var(--font-playfair),serif;font-size:clamp(.95rem,2vw,1.1rem);opacity:.95;margin:0 0 16px;font-style:italic}.memento-hero{padding-top:20px;padding-bottom:32px;text-align:center}@media (min-width:769px){.memento-hero{padding-top:24px;padding-bottom:40px}}.memento-hero-badge{display:inline-block;font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-mid);margin-bottom:20px}.memento-hero-headline{font-family:var(--font-playfair),serif;font-size:clamp(1.65rem,5vw,3.2rem);font-weight:600;line-height:1.2;color:var(--text-dark);letter-spacing:-.02em;max-width:20ch;margin:0 auto 20px}.memento-hero-lead{font-size:1.05rem;line-height:1.7;color:var(--text-mid);max-width:44ch;margin:0 auto 28px}.memento-hero-cta{display:flex;flex-direction:column;gap:10px;align-items:center;overflow:visible}.memento-cta-primary-wrap{position:relative;display:inline-block;overflow:visible}.memento-cta-ribbon{position:absolute;top:-6px;right:-6px;display:flex;align-items:center;justify-content:center;line-height:1;pointer-events:none;z-index:2;min-width:1.5em;min-height:1.5em}.memento-cta-ribbon .emoji-fallback,.memento-cta-ribbon .emoji-img,.memento-cta-ribbon .emoji-sm{width:1.4em;height:1.4em;min-width:1.4em;min-height:1.4em;display:inline-block;text-align:center;font-size:1em;line-height:1.4em}.memento-cta-primary{display:inline-block;padding:16px 32px;font-size:1rem;font-weight:600;border-radius:14px;text-decoration:none;background:linear-gradient(to right,var(--accent-dark),var(--accent));color:#fff;border:none;box-shadow:0 6px 24px rgba(217,104,168,.35);transition:transform .2s,box-shadow .2s}.memento-cta-primary:hover{transform:translateY(-2px);box-shadow:0 10px 32px rgba(217,104,168,.4)}.memento-price-was{text-decoration:line-through;font-weight:500;opacity:.85;margin-right:.35em}.memento-cta-primary.memento-cta-red{background:linear-gradient(90deg,#c62828,#e53935);box-shadow:0 6px 24px rgba(198,40,40,.35)}.memento-cta-primary.memento-cta-red:hover{box-shadow:0 10px 32px rgba(198,40,40,.4)}.memento-hero-hint{font-size:.85rem;color:var(--text-mid);opacity:.9}.memento-hero-trust{display:block;font-size:.78rem;color:var(--text-mid);opacity:.85;margin-top:8px}.memento-hero-urgency{display:block;font-size:.8rem;color:var(--text-mid);opacity:.9;margin-top:6px;font-style:italic}.memento-hero-reassure-boys{display:block;font-size:.85rem;color:var(--text-mid);opacity:.9;margin-top:8px;max-width:32ch;text-align:center;margin-left:auto;margin-right:auto}.memento-final-trust{margin-top:10px}.memento-what{margin-top:clamp(1.25rem,3vw,1.75rem)}.memento-demo-cta{margin-top:clamp(1.5rem,4vw,2.25rem);text-align:center}.memento-demo-cta-inner{display:flex;justify-content:center;margin-top:16px}.memento-who{margin-top:clamp(1.5rem,4vw,2.25rem)}.memento-who-grid{margin-top:1.5rem}.memento-imagine{text-align:center;border-top:1px solid hsla(0,0%,100%,.4)}.memento-imagine-title{font-family:var(--font-playfair),serif;font-size:1.2rem;font-weight:600;color:var(--text-dark);margin:0 0 10px}.memento-imagine-reassure,.memento-imagine-text{font-size:.95rem;line-height:1.6;color:var(--text-mid);margin-left:auto;margin-right:auto;text-align:center}.memento-imagine-reassure,.memento-imagine-text{margin-bottom:0;max-width:42ch}.memento-imagine-reassure{margin-top:10px}.memento-how-reassure{font-size:.9rem;color:var(--text-mid);text-align:center;max-width:40ch;margin:0 auto 8px}.memento-section-title{font-family:var(--font-playfair),serif;font-size:1.5rem;font-weight:600;color:var(--text-dark);margin:0 0 12px;text-align:center}.memento-steps-grid{display:grid;grid-template-columns:1fr;grid-gap:20px;gap:20px;max-width:var(--container-max);margin:0 auto}@media (min-width:700px){.memento-steps-grid{grid-template-columns:repeat(3,1fr);gap:24px}}.memento-step-card{background:hsla(0,0%,100%,.5);border:1px solid hsla(0,0%,100%,.5);backdrop-filter:blur(var(--blur));-webkit-backdrop-filter:blur(var(--blur));border-radius:var(--radius-sm);padding:28px 24px;box-shadow:var(--shadow-soft);text-align:center;transition:transform .2s,box-shadow .2s}.memento-step-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.memento-step-icon{display:block;font-size:2.5rem;margin-bottom:12px;opacity:.95}.memento-step-title{font-family:var(--font-playfair),serif;font-size:1.15rem;font-weight:600;color:var(--text-dark);margin:0 0 10px}.memento-step-text{font-size:.9rem;line-height:1.6;color:var(--text-mid);margin:0}.memento-demo{text-align:center}.memento-demo-keepsake{font-size:1rem;line-height:1.5;color:var(--text-dark);text-align:center;max-width:36ch;margin:-4px auto 8px;font-weight:500}.memento-demo-sub{font-size:.9rem;line-height:1.5;color:var(--text-mid);max-width:38ch;margin:0 auto 24px;text-align:center}.memento-demo-one-line{white-space:nowrap}.memento-demo-preview{max-width:380px;margin:0 auto;text-align:center}.memento-demo-mock{background:hsla(0,0%,100%,.75);border:1px solid hsla(0,0%,100%,.7);-webkit-backdrop-filter:blur(var(--blur));backdrop-filter:blur(var(--blur));border-radius:var(--radius);padding:0;box-shadow:var(--shadow-soft),0 0 0 1px rgba(217,104,168,.08);overflow:hidden}.memento-demo-mock-bar{height:6px;background:linear-gradient(90deg,rgba(217,104,168,.25),rgba(240,139,191,.2));border-radius:0;margin-bottom:0}.memento-demo-mock-hero-wrap{padding:16px 20px 14px}.memento-demo-mock-hero-img{width:100%;aspect-ratio:16/10;border-radius:12px;overflow:hidden;margin-bottom:12px;box-shadow:0 4px 12px rgba(107,61,92,.12)}.memento-demo-mock-hero-img img{width:100%;height:100%;object-fit:cover;display:block}.memento-demo-mock-hero-text{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:center;gap:6px}.memento-demo-mock-label{font-size:.8rem;color:var(--text-mid);font-weight:400}.memento-demo-mock-name{font-family:var(--font-playfair),serif;font-size:1.25rem;font-weight:600;color:var(--text-dark)}.memento-demo-mock-sections{list-style:none;margin:0;padding:10px 20px 14px;border-top:1px solid rgba(217,104,168,.1);display:flex;flex-wrap:wrap;justify-content:center;gap:10px 16px;font-size:.8rem;color:var(--text-mid)}.memento-demo-mock-sections li{display:flex;align-items:center;gap:4px}.memento-demo-mock-gallery{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:6px;gap:6px;padding:0 20px 16px}.memento-demo-mock-gallery img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:8px;display:block;box-shadow:0 2px 8px rgba(107,61,92,.08)}.memento-demo-caption{font-size:.85rem;color:var(--text-mid);margin:0;padding:14px 20px 18px;text-align:center;border-top:1px solid rgba(217,104,168,.08);font-weight:500}.share-modal-card.memento-demo-modal-card{max-width:800px}.memento-demo-modal-sub{margin:0 0 14px;font-size:.95rem;color:var(--text-mid)}.memento-demo-modal-preview{margin-top:4px}.memento-demo-viewer-wrap{max-width:800px}.memento-demo-viewer{position:relative;margin-top:8px;border-radius:var(--radius-md);overflow:hidden;min-height:420px;display:flex;align-items:center;justify-content:center}.memento-demo-viewer-dark-fade{background:#1a1a1a}.memento-demo-viewer-slide{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:12px}.memento-demo-viewer-img{max-width:100%;max-height:78vh;width:auto;height:auto;object-fit:contain;border-radius:var(--radius-sm)}.memento-demo-preview .memento-cta-primary-wrap{display:inline-block;margin-top:20px;text-align:center}.memento-demo-trust{display:block;margin-top:12px}.memento-countdown{border-top:1px solid hsla(0,0%,100%,.4);text-align:center}.memento-countdown-sub{font-size:.9rem;color:var(--text-mid);margin:-8px 0 24px}.memento-countdown-urgency{font-size:.88rem;color:var(--text-mid);margin:20px 0 0;font-style:italic;opacity:.9}.valentine-timer{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px 8px;max-width:520px;margin:0 auto}.valentine-unit{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:56px;padding:12px 10px;background:hsla(0,0%,100%,.5);border:1px solid hsla(0,0%,100%,.5);backdrop-filter:blur(var(--blur));-webkit-backdrop-filter:blur(var(--blur));border-radius:var(--radius-sm);box-shadow:var(--shadow-soft);transition:transform .2s,box-shadow .2s}@media (min-width:520px){.valentine-unit{min-width:64px;padding:16px 14px}}.valentine-unit:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.valentine-num{font-family:var(--font-playfair),serif;font-size:1.75rem;font-weight:700;color:var(--text-dark);line-height:1.2;min-height:1.4em}.valentine-num-animate{animation:valentine-tick .4s ease}@keyframes valentine-tick{0%{transform:scale(1.08);opacity:.9}50%{transform:scale(.98)}to{transform:scale(1);opacity:1}}.valentine-label{font-size:.7rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-mid);opacity:.9}.valentine-sep{font-size:1.5rem;font-weight:700;color:var(--accent-dark);opacity:.8;margin-bottom:20px}.valentine-timer-done{padding:24px}.valentine-done-text{font-family:var(--font-playfair),serif;font-size:1.5rem;font-weight:600;color:var(--text-dark);margin:0}@media (max-width:520px){.valentine-unit{min-width:56px;padding:12px 10px}.valentine-num{font-size:1.4rem}.valentine-sep{font-size:1.2rem;margin-bottom:16px}}.memento-emotional{text-align:center}.memento-emotional-text{font-size:1.05rem;line-height:1.75;color:var(--text-mid);max-width:var(--prose-max-width);margin:0 auto}.memento-comparison{margin-top:clamp(1.5rem,4vw,2.25rem);padding-top:clamp(.5rem,2vw,.75rem)}.memento-comparison-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-gap:20px;gap:20px;margin-top:1.25rem;max-width:640px;margin-left:auto;margin-right:auto}.memento-comparison-card{border-radius:20px;padding:22px 24px;border:1px solid transparent;transition:transform .2s ease,box-shadow .2s ease}.memento-comparison-card-normal{background:linear-gradient(155deg,rgba(255,250,252,.9),rgba(253,242,248,.85));border-color:rgba(217,104,168,.12);box-shadow:0 4px 16px rgba(217,104,168,.06)}.memento-comparison-title-normal{font-family:var(--font-poppins),system-ui,sans-serif;font-size:.95rem;font-weight:500;color:var(--text-mid);text-transform:lowercase;letter-spacing:.02em;margin:0 0 12px;opacity:.9;text-align:center}.memento-comparison-title-normal:first-letter{text-transform:uppercase}.memento-comparison-card-normal .memento-comparison-list{color:var(--text-mid);opacity:.95}.memento-comparison-card-highlight{background:linear-gradient(155deg,rgba(255,248,252,.98),rgba(253,235,245,.96));border:2px solid rgba(217,104,168,.4);box-shadow:0 16px 48px rgba(217,104,168,.2),inset 0 0 0 1px hsla(0,0%,100%,.75);padding:26px 28px}.memento-comparison-title-highlight{font-family:var(--font-poppins),system-ui,sans-serif;font-size:.95rem;font-weight:500;color:var(--text-mid);text-transform:lowercase;letter-spacing:.02em;margin:0 0 12px;text-align:center}.memento-comparison-title-highlight:first-letter{text-transform:uppercase}.memento-comparison-card-highlight .memento-comparison-list{color:var(--text-dark);font-weight:500}.memento-comparison-title{font-family:var(--font-playfair),serif;font-size:1.05rem;font-weight:600;color:var(--text-dark);margin:0 0 8px}.memento-comparison-list{margin:0;padding-left:20px;font-size:.95rem;line-height:1.65;color:var(--text-mid)}.memento-nowrap{white-space:nowrap}.memento-testimonials-cred{font-size:.85rem;color:var(--text-mid);text-align:center;margin:-4px 0 16px;opacity:.9}.memento-testimonials-grid{display:grid;grid-template-columns:1fr;grid-gap:16px;gap:16px;max-width:var(--container-max);margin:0 auto}.memento-price-justify{margin:clamp(.75rem,2vw,1.25rem) auto 0;text-align:center}.memento-price-justify-text{font-family:var(--font-playfair),serif;font-size:clamp(1rem,2.1vw,1.15rem);color:var(--text-mid);line-height:1.7;margin:0 0 6px}.memento-price-justify .memento-brand-line{margin:0}@media (min-width:700px){.memento-testimonials-grid{grid-template-columns:repeat(3,1fr);gap:20px}}.memento-testimonial-card{background:hsla(0,0%,100%,.5);border:1px solid hsla(0,0%,100%,.5);-webkit-backdrop-filter:blur(var(--blur));backdrop-filter:blur(var(--blur));border-radius:var(--radius-sm);padding:24px 20px;box-shadow:var(--shadow-soft);text-align:center;transition:transform .2s,box-shadow .2s}.memento-testimonial-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.memento-testimonial-quote{font-size:.95rem;line-height:1.6;color:var(--text-dark);margin:0 0 12px;font-style:italic}.memento-testimonial-dot{font-size:1.2rem;opacity:.9}.memento-faq .memento-section-title{margin-bottom:20px}.memento-faq-list{list-style:none;padding:0;max-width:560px;margin:0 auto}.memento-faq-item{margin-bottom:10px;border-radius:var(--radius-sm);overflow:hidden;background:hsla(0,0%,100%,.45);border:1px solid hsla(0,0%,100%,.5);box-shadow:0 2px 12px rgba(217,104,168,.05)}.memento-faq-item:last-child{margin-bottom:0}.memento-faq-q{display:block;width:100%;font-size:.95rem;font-weight:600;color:var(--text-dark);margin:0;text-align:left;cursor:pointer;background:none;border:none;font-family:inherit;position:relative;padding:16px 40px 16px 20px;list-style:none}.memento-faq-q::-webkit-details-marker{display:none}.memento-faq-q:after{content:"+";position:absolute;right:20px;top:50%;transform:translateY(-50%);font-size:1.2rem;font-weight:400;color:var(--text-mid);transition:transform .2s ease}.memento-faq-item[open] .memento-faq-q:after{transform:translateY(-50%) rotate(45deg)}.memento-faq-a{padding:0 20px 16px;margin:0 0 4px;font-size:.9rem;line-height:1.6;color:var(--text-mid)}.memento-final-cta{text-align:center}.memento-final-headline{font-family:var(--font-playfair),serif;font-size:clamp(1.75rem,4vw,2.5rem);font-weight:600;color:var(--text-dark);margin:0 0 12px}.memento-final-lead{font-size:1rem;color:var(--text-mid);margin:0 0 24px}.memento-final-cta .memento-cta-primary{margin-bottom:4px}.memento-final-hint{display:block;font-size:.85rem;color:var(--text-mid);opacity:.9;margin:0}.memento-final-psych{display:block;font-size:.9rem;font-weight:600;color:var(--text-dark);margin:8px 0 0;opacity:.95}.memento-cta-large{padding:18px 36px;font-size:1.05rem}.memento-footer{padding:0 0 20px;margin-top:20px;text-align:center}.memento-footer-separator{position:relative;width:100%;margin-bottom:20px;color:#8b2d5e}.memento-footer-wave{width:100%;height:32px;display:block}.memento-footer-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px 20px;font-size:.85rem;color:var(--text-mid)}.memento-footer-brand{font-family:var(--font-playfair),serif;font-weight:600;color:var(--text-dark);letter-spacing:.02em}.memento-footer-copy{margin:0;opacity:.9}.memento-footer-ig{display:inline-flex;align-items:center;gap:6px;color:var(--accent-dark);text-decoration:none;font-weight:500;transition:opacity .2s}.memento-footer-ig:hover{opacity:.85;text-decoration:underline;text-underline-offset:3px}.memento-footer-ig-icon{display:inline-flex;flex-shrink:0}.memento-footer-email{font-size:.85rem;color:var(--text-mid);margin:10px 0 0}.memento-footer-email a{display:inline-flex;align-items:center;gap:6px;color:inherit;text-decoration:none;opacity:.9}.memento-footer-email-icon{display:inline-flex;flex-shrink:0;width:18px;height:18px}.memento-footer-email a:hover{text-decoration:underline;opacity:1}.memento-footer-made{font-size:.8rem;color:var(--text-mid);opacity:.85;margin:10px 0 0;padding-top:12px;border-top:1px solid hsla(0,0%,100%,.35)}.memento-cta-secondary{display:inline-block;padding:12px 24px;font-size:.95rem;font-weight:600;border-radius:12px;text-decoration:none;background:transparent;color:var(--accent-dark);border:1px solid rgba(217,104,168,.4);transition:background .2s,color .2s,transform .2s}.memento-cta-secondary:hover{background:rgba(217,104,168,.08);transform:translateY(-1px)}.memento-create-page{position:relative;min-height:100vh;padding:48px 0;background:linear-gradient(180deg,rgba(251,231,244,.68),rgba(253,239,245,.68) 50%,rgba(246,240,255,.68));overflow-x:hidden}.memento-create-content{position:relative;z-index:1}@media (max-width:768px){.memento-create-page .memento-container{padding-inline:max(20px,var(--safe-left)) max(20px,var(--safe-right))}}.memento-create-header{display:flex;align-items:center;justify-content:space-between;padding:8px 0 32px}.memento-create-back{font-size:.9rem;color:var(--text-mid);text-decoration:none;transition:color .2s}.memento-create-back:hover{color:var(--accent-dark)}.memento-create-card-wrap{width:100%;max-width:min(var(--container-max),640px);margin-left:auto;margin-right:auto;box-sizing:border-box}.memento-create-card{background:hsla(0,0%,100%,.6);border:1px solid hsla(0,0%,100%,.55);backdrop-filter:blur(var(--blur));-webkit-backdrop-filter:blur(var(--blur));border-radius:var(--radius);padding:36px 32px;box-shadow:0 8px 40px rgba(217,104,168,.08),0 2px 12px rgba(0,0,0,.04);width:100%;min-width:0;box-sizing:border-box;overflow-x:hidden}.memento-create-head{margin-bottom:28px;padding-bottom:20px;border-bottom:1px solid rgba(217,104,168,.15);text-align:center}.memento-create-head h1{font-family:var(--font-playfair),serif;font-size:clamp(1.35rem,3.5vw,1.75rem);font-weight:600;color:var(--text-dark);margin:0 0 10px}.memento-create-subtext{font-size:.95rem;color:var(--text-mid);line-height:1.55;max-width:44ch;margin:0 auto}.memento-create-note{font-size:.85rem;color:var(--text-mid);opacity:.9;margin:8px 0 0}.memento-create-sub-row{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:20px;flex-wrap:wrap}.memento-create-cartoon-wrap{flex-shrink:0;max-width:180px;max-height:160px;border-radius:12px}.memento-create-cartoon{width:100%;height:auto;max-height:160px;object-fit:contain;object-position:center;display:block}@media (max-width:600px){.memento-create-sub-row{flex-direction:column;align-items:flex-start}.memento-create-cartoon-wrap{max-width:140px;max-height:130px}.memento-create-cartoon{max-height:130px}}.memento-form{display:flex;flex-direction:column;gap:40px;overflow-x:hidden}.memento-form,.memento-form-card{width:100%;max-width:100%;min-width:0;box-sizing:border-box}.memento-form-card{padding:24px 20px;margin:0;background:hsla(0,0%,100%,.5);border-radius:var(--radius-sm);border:3px dotted var(--accent-dark);box-shadow:0 4px 20px rgba(217,104,168,.06),inset 0 0 0 1px rgba(240,139,191,.25)}.memento-create-page fieldset.memento-form-card{min-width:0;display:block}.memento-create-page .memento-form-card-title{box-sizing:border-box;max-width:100%}@media (min-width:600px){.memento-form-card{padding:28px 26px}}.memento-form-card-title{font-family:var(--font-playfair),serif;font-size:1.05rem;font-weight:600;color:var(--text-dark);margin:0 0 18px;padding:0;display:block}.memento-form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}@media (max-width:600px){.memento-form-row{grid-template-columns:1fr}}.memento-label{display:flex;flex-direction:column;gap:6px;font-size:.88rem;font-weight:500;color:var(--text-dark);min-width:0}.memento-input{width:100%;max-width:100%;padding:12px 14px;font-size:.95rem;border:1px solid rgba(108,60,90,.2);border-radius:10px;background:hsla(0,0%,100%,.9);transition:border-color .2s,box-shadow .2s;box-sizing:border-box}.memento-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(240,139,191,.2)}.memento-input::placeholder{color:var(--text-mid);opacity:.6}.memento-select{cursor:pointer;-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.memento-label-line{display:inline-block;max-width:100%;white-space:normal}.memento-required-star{color:#c41e5a;font-weight:600;margin-left:2px}.memento-textarea{resize:vertical;min-height:80px}.memento-label-file{cursor:pointer}.memento-file{font-size:.85rem;color:var(--text-mid)}.memento-file-hint{font-size:.8rem;color:var(--text-mid);opacity:.8;margin-top:4px}.memento-microtext,.memento-voice-selected{display:block;margin-top:6px}.memento-microtext{font-size:.78rem;color:var(--text-mid);opacity:.85;line-height:1.4}.memento-form-reassure{margin-bottom:8px;margin-top:0}.memento-form-privacy{margin-bottom:12px;margin-top:0}.memento-form-error{font-size:.9rem;color:#9a1f55;background:rgba(255,236,246,.9);padding:12px 14px;border-radius:10px;border:1px solid rgba(217,104,168,.25)}.memento-pay-block{padding:20px 0 0;display:flex;flex-direction:column;gap:12px}.memento-pay-reassure{font-size:.9rem;color:var(--text-mid);line-height:1.5;margin:0}.memento-pay-fill-first{color:var(--text-dark);font-weight:500}.memento-pay-note{font-size:.8rem;color:var(--text-mid);opacity:.85;margin:12px 0 0;text-align:center}.memento-pay-note-sub{font-size:.75rem;color:var(--text-mid);opacity:.8;margin:6px 0 0;text-align:center}.memento-cta-pay{width:100%;min-height:var(--touch-min);padding:12px 20px;font-size:.95rem;font-weight:600;border-radius:6px;border:1px solid rgba(0,112,186,.5);background:rgba(0,112,186,.06);color:#0070ba;box-shadow:none;cursor:pointer;transition:background .2s,border-color .2s,opacity .2s;display:inline-flex;align-items:center;justify-content:center;gap:10px}.memento-cta-pay:hover:not(:disabled){background:rgba(0,112,186,.12);border-color:rgba(0,112,186,.7)}.memento-razorpay-logo{flex-shrink:0;height:22px;width:auto;vertical-align:middle;object-fit:contain}.memento-cta-pay:disabled{opacity:.8;cursor:not-allowed}.memento-pay-placeholder{width:100%;padding:14px 16px;background:hsla(0,0%,100%,.6);border:1px dashed rgba(107,61,92,.35);border-radius:6px;min-height:var(--touch-min);display:flex;flex-direction:column;justify-content:center;gap:4px}.memento-pay-placeholder.memento-pay-placeholder-disabled{opacity:.7;pointer-events:none}.memento-pay-placeholder-title{font-size:.95rem;font-weight:600;color:var(--text-dark);margin:0}.memento-pay-placeholder-note{font-size:.8rem;color:var(--text-mid);line-height:1.45;margin:0}.memento-paid-badge{font-size:.9rem;font-weight:600;color:var(--accent-dark);margin:0 0 8px}.memento-cta-submit{width:100%;min-height:var(--touch-min);padding:16px 24px;font-size:1rem;font-weight:600;border-radius:12px;border:none;background:linear-gradient(135deg,var(--accent),var(--accent-dark));color:#fff;box-shadow:0 4px 20px rgba(217,104,168,.3);cursor:pointer;transition:transform .2s,box-shadow .2s,opacity .2s}.memento-cta-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 24px rgba(217,104,168,.35)}.memento-cta-submit:disabled{opacity:.8;cursor:not-allowed}.memento-success-screen{padding:48px 24px;text-align:center}.memento-success-text{font-family:var(--font-playfair),serif;font-size:1.25rem;color:var(--text-mid);line-height:1.5;margin:0}.memento-success-link-wrap{margin:16px 0 0}.memento-success-link{font-size:.9rem;color:var(--accent-pink,#d968a8);word-break:break-all;text-decoration:underline}.memento-success-link:hover{text-decoration:none}.memento-share-memory,.memento-share-qr{margin-bottom:4px}.memento-copy-link{display:block;margin:8px auto 0;padding:6px 12px;font-size:.9rem;color:var(--text-mid);background:none;border:none;cursor:pointer;text-decoration:underline}.memento-copy-link:hover{color:var(--text-dark)}.memento-success-continue{margin-top:24px}.memento-pay-heading{font-family:var(--font-playfair),serif;font-size:1.05rem;font-weight:600;color:var(--text-dark);margin:0 0 4px}.memento-pay-buttons{display:flex;flex-direction:column;align-items:stretch;gap:14px;width:100%;max-width:320px;margin:0 auto}@media (max-width:480px){.memento-pay-buttons{max-width:min(320px,100%)}.memento-paypal-container{max-width:100%}}.memento-paypal-wrap{display:flex;flex-direction:column;gap:8px}.memento-pay-or{font-size:.85rem;color:var(--text-mid);text-align:center;margin:4px 0 0}.memento-paypal-container{min-height:44px;min-width:200px;width:100%}.memento-paypal-placeholder{padding:14px 16px;background:hsla(0,0%,100%,.6);border:1px dashed rgba(107,61,92,.35);border-radius:12px;min-height:44px}.memento-paypal-placeholder.memento-paypal-disabled{opacity:.7;pointer-events:none}.memento-paypal-placeholder-title{font-size:.95rem;font-weight:600;color:var(--text-dark);margin:0 0 6px}.memento-paypal-placeholder-note{font-size:.8rem;color:var(--text-mid);line-height:1.45;margin:0}.memento-paypal-placeholder-note code{font-size:.75em;background:rgba(107,61,92,.1);padding:2px 6px;border-radius:4px;color:var(--text-dark)}.memento-memories-box{padding:18px 16px;border-radius:var(--radius-sm);background:hsla(0,0%,100%,.35);max-width:100%;box-sizing:border-box}@media (min-width:600px){.memento-memories-box{padding:20px 18px}}.memento-file-wrap{display:block;padding:10px 12px;margin-top:4px}.memento-create-page .memento-file,.memento-create-page .memento-input,.memento-file-wrap{max-width:100%;box-sizing:border-box}.memento-create-page input.memento-input[type=date]{min-width:0;width:100%;max-width:100%}.memento-photo-slot-wrap{margin-bottom:1.25rem;padding:18px 16px;background:hsla(0,0%,100%,.5);border:1px solid hsla(0,0%,100%,.55);border-radius:var(--radius-sm);box-shadow:0 2px 12px rgba(217,104,168,.06)}.memento-memories-box .memento-photo-slot-wrap{margin-bottom:1rem;padding:0;background:transparent;border:none;border-radius:0;box-shadow:none}.memento-memories-box .memento-photo-slot-wrap:last-of-type,.memento-photo-slot-wrap:last-of-type{margin-bottom:0}.memento-photo-slot{margin-bottom:8px}.memento-photo-memory{min-height:4rem}@media (min-width:600px){.memento-photo-slot-wrap{padding:20px 18px}}.memento-microtext-above{margin-bottom:12px}@media (max-width:600px){.memento-create-card{padding:24px 20px}}.memento-create-page .memento-form-card{margin-left:0;margin-right:0}.nav{display:flex;align-items:center;justify-content:space-between;padding:8px 0 40px}.brand{font-size:20px;letter-spacing:1px;text-transform:uppercase}.nav-link{color:var(--accent-dark);font-weight:600}.landing-hero{display:grid;grid-gap:32px;gap:32px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-items:center}.landing-content h1{font-size:clamp(2.4rem,3vw,3.4rem);margin:14px 0 18px}.tag{text-transform:uppercase;letter-spacing:3px;font-size:12px}.subtext,.tag{color:var(--text-mid)}.subtext{line-height:1.7;font-size:1rem}.cta-row{margin-top:24px;display:flex;align-items:center;gap:16px;flex-wrap:wrap}.cta{background:linear-gradient(135deg,var(--accent),var(--accent-dark));color:#fff;border:none;border-radius:999px;padding:14px 28px;font-weight:600;box-shadow:var(--shadow);transition:transform .2s ease}.cta.secondary{background:#fff;color:var(--accent-dark);border:1px solid var(--card-border);box-shadow:none}.cta:hover{transform:translateY(-2px)}.cta-note{font-size:.9rem;color:var(--text-mid)}.landing-card{display:grid;grid-gap:16px;gap:16px}.card-glass,.card-highlight,.coupon-card,.create-card,.gallery-item,.letter-card,.section-card,.voice-card{background:var(--card);border:1px solid var(--card-border);backdrop-filter:blur(var(--blur));-webkit-backdrop-filter:blur(var(--blur));border-radius:var(--radius);padding:24px;box-shadow:var(--shadow-soft),0 0 40px rgba(240,139,191,.08);transition:box-shadow .3s ease,transform .3s ease}.card-glass ul{padding-left:18px;margin-top:12px;color:var(--text-mid);line-height:1.7}.card-highlight{background:linear-gradient(140deg,hsla(0,0%,100%,.8),rgba(248,220,240,.65))}.landing-strip{margin-top:70px;padding:24px;border-radius:var(--radius);background:hsla(0,0%,100%,.55);display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}.create-page{padding:60px 6vw 80px;display:flex;justify-content:center}.create-page-saas{min-height:100vh;flex-direction:column;align-items:center;padding:24px 6vw 60px}.create-header-saas{width:100%;max-width:520px;display:flex;align-items:center;justify-content:space-between;padding:8px 0 32px}.create-back{font-size:.9rem;color:var(--text-mid);text-decoration:none;transition:color .2s}.create-back:hover{color:var(--accent-dark)}.create-brand{font-family:var(--font-playfair),serif;font-size:1.2rem;font-weight:600;color:var(--text-dark)}.create-container-saas{width:100%;max-width:520px}.create-card-saas{background:hsla(0,0%,100%,.55);border:1px solid hsla(0,0%,100%,.4);backdrop-filter:blur(var(--blur));-webkit-backdrop-filter:blur(var(--blur));border-radius:var(--radius);padding:32px 28px;box-shadow:var(--shadow-soft)}.create-card-head{margin-bottom:28px;padding-bottom:20px;border-bottom:1px solid rgba(217,104,168,.15)}.create-card-head h1{font-family:var(--font-playfair),serif;font-size:1.6rem;font-weight:600;color:var(--text-dark);margin:0 0 6px}.create-card-head p{font-size:.9rem;color:var(--text-mid);margin:0}.create-form-saas{display:flex;flex-direction:column;gap:24px}.form-group-saas{border:none;padding:0;margin:0}.form-group-legend{font-size:.75rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-mid);margin-bottom:14px;padding:0}.form-group-optional .form-group-legend{margin-top:8px}.create-card-sub{font-size:.9rem;color:var(--text-mid);line-height:1.5;margin-top:8px;max-width:42ch}.form-field-hint{font-size:.78rem;color:var(--text-mid);opacity:.85;margin-top:4px;line-height:1.4}.form-row-saas{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}.form-label-saas{display:flex;flex-direction:column;gap:6px;font-size:.85rem;font-weight:500;color:var(--text-dark)}.form-input-saas{width:100%;padding:10px 14px;font-size:.95rem;border:1px solid rgba(108,60,90,.2);border-radius:10px;background:hsla(0,0%,100%,.9);transition:border-color .2s,box-shadow .2s}.form-input-saas:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(240,139,191,.2)}.form-input-saas::placeholder{color:var(--text-mid);opacity:.6}.form-textarea-saas{resize:vertical;min-height:72px}.form-label-file{cursor:pointer}.form-file-saas{font-size:.85rem;color:var(--text-mid)}.form-file-hint{font-size:.8rem;color:var(--text-mid);opacity:.8;margin-top:4px}.form-error-saas{font-size:.9rem;color:#9a1f55;background:rgba(255,236,246,.9);padding:12px 14px;border-radius:10px;border:1px solid rgba(217,104,168,.25)}.cta-submit-saas{width:100%;min-height:var(--touch-min);padding:14px 24px;font-size:.95rem;font-weight:600;border-radius:12px;border:none;background:linear-gradient(135deg,var(--accent),var(--accent-dark));color:#fff;box-shadow:0 4px 20px rgba(217,104,168,.3);cursor:pointer;transition:transform .2s,box-shadow .2s,opacity .2s}.cta-submit-saas:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 24px rgba(217,104,168,.35)}.cta-submit-saas:disabled{opacity:.8;cursor:not-allowed}.create-card{max-width:720px;width:100%}.create-form{display:grid;grid-gap:18px;gap:18px;margin-top:20px}.form-row{display:grid;grid-gap:16px;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}label{display:grid;grid-gap:8px;gap:8px;font-weight:500;color:var(--text-mid)}input,textarea{border-radius:14px;border:1px solid rgba(108,60,90,.2);padding:12px 14px;background:hsla(0,0%,100%,.8);font-size:.95rem}input:focus,textarea:focus{outline:2px solid rgba(240,139,191,.4);border-color:rgba(240,139,191,.6)}.helper{font-size:.85rem;color:var(--text-mid)}.error{color:#9a1f55;background:rgba(255,236,246,.9);border-radius:12px;padding:12px 14px}.romantic-page{width:100%;max-width:var(--container-max);margin:0 auto;padding-inline:max(24px,var(--safe-left)) max(24px,var(--safe-right));padding-top:0;padding-bottom:clamp(40px,8vw,64px);display:grid;grid-gap:0;gap:0;box-sizing:border-box;min-width:0;overflow-x:hidden}.romantic-page>*{min-width:0}@media (min-width:769px){.romantic-page{padding-left:var(--container-padding-x-desktop);padding-right:var(--container-padding-x-desktop)}}.valentine-badge-wrap{display:flex;justify-content:center;padding:clamp(16px,4vw,24px) 0 clamp(8px,2vw,12px);position:relative;z-index:1}.valentine-badge{display:inline-block;padding:8px 18px;font-size:.9rem;font-weight:600;letter-spacing:.02em;color:#fff;background:linear-gradient(145deg,rgba(232,120,168,.92),rgba(217,104,168,.9));border-radius:999px;box-shadow:0 4px 16px rgba(217,104,168,.35),inset 0 0 0 1px hsla(0,0%,100%,.25);white-space:nowrap}.romantic-page .section{margin-top:clamp(16px,3vw,28px);margin-bottom:clamp(16px,3vw,28px)}@media (min-width:769px){.romantic-page .section{margin-top:clamp(20px,3vw,32px);margin-bottom:clamp(20px,3vw,32px)}}.romantic-page .section:first-child{margin-top:0}.romantic-page-ending-fade{height:24px;margin-top:0;margin-bottom:0;background:linear-gradient(180deg,transparent 0,var(--bg-mid) 70%,var(--bg-end) 100%);pointer-events:none}.romantic-page .card-glass,.romantic-page .section-card{max-width:var(--prose-max-width);width:100%;min-width:0;margin-left:auto;margin-right:auto;background:rgba(255,250,253,.58);border-color:rgba(255,240,248,.6);border-radius:var(--radius);isolation:isolate;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:var(--shadow-soft),0 8px 32px rgba(240,139,191,.06);transition:transform .3s ease,box-shadow .3s ease}.romantic-page .card-glass:hover,.romantic-page .section-card:hover{transform:translateY(-2px);box-shadow:var(--shadow),0 12px 40px rgba(240,139,191,.1)}.romantic-page .section-with-butterfly .section-card{position:relative;background:rgba(255,252,254,.42);border-color:rgba(252,235,245,.5);box-shadow:0 6px 24px rgba(240,139,191,.04)}.romantic-page .section-with-butterfly .section-card:hover{box-shadow:0 8px 28px rgba(240,139,191,.07)}.card-butterfly{position:absolute;top:12px;right:12px;line-height:1;pointer-events:none}.card-butterfly .emoji-fallback,.card-butterfly .emoji-img{width:1.95em;height:1.95em;min-width:1.95em}.romantic-page .section img:not(.emoji-img){border-radius:16px;box-shadow:var(--shadow-soft);object-fit:cover}.romantic-page .flip-card,.romantic-page .letter-flip,.romantic-page .reason-stagger-wrap{isolation:isolate}.romantic-page .coupon-card-redeem .coupon-card-back,.romantic-page .coupon-card-redeem .coupon-card-front,.romantic-page .flip-card-back,.romantic-page .flip-card-front{background:rgba(255,250,253,.6);border-color:rgba(255,240,248,.6);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 8px 32px rgba(240,139,191,.06)}.romantic-page .coupon-card-redeem.redeemed .coupon-card-back{background:linear-gradient(145deg,rgba(253,238,248,.75),rgba(255,248,252,.7));border-color:rgba(217,104,168,.35)}.romantic-page .report-card{background:linear-gradient(160deg,rgba(255,250,253,.65),rgba(252,242,248,.6));border-color:rgba(217,104,168,.3)}.romantic-page .report-card,.romantic-page .weather-card{isolation:isolate;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 8px 32px rgba(240,139,191,.06)}.romantic-page .weather-card{background:linear-gradient(160deg,rgba(255,250,253,.62),rgba(252,242,248,.58));border-color:rgba(217,104,168,.28)}.romantic-page .fake-chat-bubble.them{background:rgba(255,250,253,.7);border-color:rgba(240,139,191,.25);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.hero{min-height:80vh;padding-top:max(80px,8vh)}.hero,.hero-grid{display:grid;align-items:center;min-width:0;max-width:100%}.hero-grid{grid-gap:28px;gap:28px;grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr))}.hero-photo{width:100%;aspect-ratio:4/5;border-radius:40px;object-fit:cover;box-shadow:var(--shadow);border:1px solid hsla(0,0%,100%,.7)}.hero-photo-clickable{display:block;cursor:pointer;width:100%}.hero-photo-clickable .hero-photo{display:block;pointer-events:none}.hero-photo.placeholder{display:flex;align-items:center;justify-content:center;text-align:center;color:var(--text-mid);font-size:.95rem}.hero h1{font-size:clamp(2.6rem,4vw,4rem);line-height:1.1}.hero-heart-line{margin:12px 0 0;font-size:1rem;color:var(--text-mid);font-weight:500}.hero-meta{margin-top:18px;color:var(--text-mid);min-height:1.6em}.hero-name-char,.hero-names-fade{display:inline-block}.hero-name-char{opacity:0;transform:translateY(8px);animation:hero-char-fade .5s ease forwards}@keyframes hero-char-fade{to{opacity:1;transform:translateY(0)}}.hero-sparkles{position:absolute;inset:0;pointer-events:none;overflow:hidden}.hero-sparkle{position:absolute;width:6px;height:6px;border-radius:50%;background:hsla(0,0%,100%,.9);box-shadow:0 0 10px rgba(240,139,191,.5);animation:sparkle-float 4s ease-in-out infinite}@keyframes sparkle-float{0%,to{opacity:.4;transform:scale(1) translateY(0)}50%{opacity:1;transform:scale(1.2) translateY(-6px)}}.hero-typewriter{font-size:.98rem}.typewriter-caret{opacity:1;animation:caret-blink .8s step-end infinite;margin-left:2px}@keyframes caret-blink{50%{opacity:0}}.hero-photo-wrap{transition:transform .1s ease-out;will-change:transform;min-width:0;max-width:100%}.romantic-page-wrap .memento-brand{position:fixed;top:max(20px,var(--safe-top));left:max(20px,var(--safe-left));z-index:50;display:inline-flex;flex-direction:column;align-items:center;text-decoration:none;color:var(--text-dark);transition:color .2s ease,opacity .2s ease}.romantic-page-wrap .memento-brand-text{font-family:var(--font-memento),cursive;font-size:2.1rem;font-weight:400;line-height:1.2;letter-spacing:.02em}.romantic-page-wrap .memento-brand:hover,.romantic-page-wrap .memento-brand:hover .memento-brand-text{color:var(--accent-dark)}.romantic-page-wrap .memento-brand-underline{display:flex;align-items:center;justify-content:center;gap:2px;margin-top:-2px;line-height:1}.romantic-page-wrap .memento-curve-item{display:inline-block;font-size:1rem;opacity:.9;transition:transform .2s ease,opacity .2s ease}.romantic-page-wrap .memento-brand:hover .memento-curve-item{opacity:1}.hero-music-float{position:fixed;top:max(20px,var(--safe-top));right:max(20px,var(--safe-right));z-index:50}.hero-music-pill{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:999px;border:1px solid var(--card-border);background:var(--card);backdrop-filter:blur(var(--blur));-webkit-backdrop-filter:blur(var(--blur));box-shadow:var(--shadow-soft),0 0 24px rgba(240,139,191,.06);color:var(--accent-dark);font-size:.9rem;font-weight:500;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.hero-music-pill:hover{transform:scale(1.04);box-shadow:var(--shadow)}.hero-music-pill .hero-music-icon{font-size:1.1rem}.hero-music-btn{width:48px;height:48px;border-radius:50%;border:1px solid var(--card-border);background:var(--card);backdrop-filter:blur(var(--blur));-webkit-backdrop-filter:blur(var(--blur));box-shadow:var(--shadow-soft);color:var(--accent-dark);font-size:1.4rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s ease,box-shadow .2s ease}.hero-music-btn:hover{transform:scale(1.06);box-shadow:var(--shadow)}.hero-music-icon.muted{opacity:.7}.section{display:grid;grid-gap:24px;gap:24px}.section-title{font-size:clamp(1.5rem,2.8vw,2.9rem);line-height:1.2}.section-card{padding:var(--card-padding)}.section-card-narrow{max-width:var(--prose-max);margin:0 auto}.section-card-narrow p{line-height:1.85}.section-cute{font-size:.95rem;color:var(--text-mid);margin-top:-8px;margin-bottom:8px}.section-cute-teddy{font-size:1.8rem;margin:-4px 0 8px;opacity:.9}.hero-cute{display:block;font-size:1.6rem;margin:4px 0 0;opacity:.85}.section-card{line-height:1.8;color:var(--text-mid)}.section-card p+p{margin-top:14px}.story-intro-line{margin:-4px 0 16px;font-size:1rem;color:var(--text-mid);font-style:italic}.story-card-wrap{max-width:680px;margin:0 auto;padding:30px;background:rgba(255,252,254,.88);border-radius:var(--radius);box-shadow:0 12px 40px rgba(111,61,92,.1),0 4px 16px rgba(0,0,0,.04);border:1px solid hsla(0,0%,100%,.65)}.story-timeline-card{position:relative;padding-bottom:8px}.story-timeline{position:relative;max-width:min(var(--prose-max-width),640px);margin:0 auto;padding:0 12px}.story-timeline-track{position:absolute;left:50%;top:0;bottom:0;width:56px;margin-left:-28px;pointer-events:none}.story-timeline-curve{width:100%;height:100%;display:block}.story-timeline-point{position:relative;display:flex;justify-content:center;align-items:center;margin-bottom:28px;opacity:.6;transform:translateY(12px);transition:opacity .5s ease,transform .5s ease}.story-timeline-point:last-child{margin-bottom:0}.story-timeline-point.story-timeline-right{justify-content:center}.story-timeline-point.story-timeline-right .story-timeline-card-inner{margin-left:auto;margin-right:auto}.story-timeline-point.story-timeline-visible{opacity:1;transform:translateY(0)}.story-timeline-card-inner{max-width:85%;padding:18px 22px;background:hsla(0,0%,100%,.6);border:1px solid hsla(0,0%,100%,.5);border-radius:var(--radius-sm);box-shadow:var(--shadow-soft);margin-left:auto;margin-right:auto;font-size:1rem;line-height:1.6;color:var(--text-mid)}.story-timeline-point[data-point="1"] .story-timeline-card-inner{font-weight:600;color:var(--text-dark)}.story-timeline-text{display:inline}.story-long-content{display:grid;grid-gap:1rem;gap:1rem}.story-paragraph{margin:0;font-size:1.05rem;line-height:1.75;color:var(--text-mid);white-space:pre-line}.reassurance-card p+p{margin-top:16px}.message-templates-list{display:grid;grid-gap:12px;gap:12px;max-width:520px;margin:0 auto}.message-template-bubble{display:block;width:100%;text-align:left;padding:16px 20px;background:rgba(255,250,253,.7);border:1px solid rgba(217,104,168,.25);border-radius:18px;color:var(--text-mid);font-size:.95rem;line-height:1.5;cursor:pointer;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease}.message-template-bubble:hover{background:rgba(255,250,253,.9);border-color:rgba(217,104,168,.4);box-shadow:0 4px 20px rgba(240,139,191,.15)}.message-template-bubble.copied{border-color:rgba(107,180,120,.5);background:rgba(230,248,235,.6)}.message-template-text{display:block;margin-bottom:6px}.message-template-hint{font-size:.8rem;color:var(--text-mid);opacity:.85}.message-template-bubble.copied .message-template-hint{color:var(--accent-dark);font-weight:500}.unlock-heart-burst{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;gap:20px;background:rgba(251,231,244,.7);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:opacity .4s ease}.unlock-heart-burst.fade{opacity:0;pointer-events:none}.unlock-heart-burst-emoji{font-size:3rem;animation:burst-pop .6s ease both}.unlock-heart-burst-emoji.delay-1{animation-delay:.1s}.unlock-heart-burst-emoji.delay-2{animation-delay:.2s}@keyframes burst-pop{0%{transform:scale(0);opacity:0}70%{transform:scale(1.2);opacity:1}to{transform:scale(1);opacity:1}}.chapter-markers{position:fixed;right:10px;top:50%;transform:translateY(-50%);z-index:35;display:flex;flex-direction:column;gap:4px;pointer-events:none;align-items:flex-end}.chapter-markers-33 .chapter-marker-heart{font-size:.55rem}.chapter-markers-33 .chapter-marker-item.active .chapter-marker-heart{transform:scale(1.25)}.chapter-marker-item{display:flex;align-items:center;justify-content:flex-end}.chapter-marker-heart{display:inline-block;font-size:.75rem;line-height:1;color:rgba(217,104,168,.5);transition:color .2s ease,transform .2s ease}.chapter-marker-item.active .chapter-marker-heart{color:#c41e3a;transform:scale(1.2)}.section-micro{gap:12px}.micro-card{max-width:520px;margin:0 auto;text-align:center;padding:24px 20px}.micro-emoji{font-size:1.6rem;margin-bottom:8px;opacity:.9}.micro-title{font-size:1.1rem;margin-bottom:10px;color:var(--text-dark)}.micro-text{font-size:.98rem;line-height:1.75;color:var(--text-mid);margin:0}.emotional-card{background:linear-gradient(145deg,hsla(0,0%,100%,.5),rgba(248,220,240,.4));border-color:rgba(217,104,168,.25)}.poetic-card p{font-style:italic;line-height:1.9}.screenshot-prompt{text-align:center;padding:20px 6vw}.screenshot-prompt-text{font-size:.95rem;color:var(--text-mid);font-style:italic;margin:0}.fake-chat{max-width:360px;margin:0 auto;display:grid;grid-gap:12px;gap:12px}.fake-chat-bubble{padding:12px 16px;border-radius:18px;max-width:85%;font-size:.95rem;line-height:1.5}.fake-chat-bubble.me{justify-self:end;background:linear-gradient(135deg,var(--accent),var(--accent-dark));color:#fff;border-bottom-right-radius:4px}.fake-chat-bubble.them{justify-self:start;background:hsla(0,0%,100%,.7);border:1px solid rgba(240,139,191,.25);color:var(--text-dark);border-bottom-left-radius:4px}.fake-chat-bubble{opacity:0;transition:opacity .45s ease,transform .45s ease;pointer-events:none}.fake-chat-bubble.me{transform:translateX(24px) translateY(6px) scale(.96)}.fake-chat-bubble.them{transform:translateX(-24px) translateY(6px) scale(.96)}.fake-chat-bubble.fake-chat-bubble-visible{opacity:1;transform:translateX(0) translateY(0) scale(1);pointer-events:auto}.section-start-divider.our-vibe-start-divider{display:block;width:100%;max-width:min(var(--prose-max-width),640px);margin:0 auto 16px;height:16px;background-image:linear-gradient(90deg,transparent,rgba(107,61,92,.12) 20%,rgba(217,104,168,.2) 50%,rgba(107,61,92,.12) 80%,transparent);background-size:100% 2px;background-position:center 50%;background-repeat:no-repeat;text-align:center;line-height:16px;font-size:.65rem;color:rgba(217,104,168,.45)}.section-start-divider.our-vibe-start-divider:before{content:"♥"}.our-vibe-section{margin-bottom:clamp(12px,2.5vw,20px)}.inside-jokes-list{list-style:none;padding:0;margin:0}.inside-jokes-list li{padding:10px 0;border-bottom:1px dashed rgba(240,139,191,.2);color:var(--text-mid);font-size:.98rem;line-height:1.5}.inside-jokes-list li:last-child{border-bottom:none}.weather-card{max-width:280px;margin:0 auto;padding:24px 20px;background:linear-gradient(160deg,hsla(0,0%,100%,.65),rgba(248,220,240,.45));border:1px solid rgba(217,104,168,.25);border-radius:var(--radius-sm);box-shadow:var(--shadow-soft)}.weather-card-title{font-family:var(--font-playfair),serif;font-size:1rem;font-weight:600;color:var(--text-dark);margin-bottom:16px;text-align:center}.weather-card-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;font-size:.95rem;color:var(--text-mid)}.weather-value{font-weight:600;color:var(--accent-dark);display:flex;align-items:center;gap:6px}.weather-emoji{display:inline-block;animation:weather-float 3s ease-in-out infinite}.weather-emoji:first-child{animation-delay:0s}.weather-emoji:nth-child(2){animation-delay:.4s}.weather-emoji:nth-child(3){animation-delay:.8s}@keyframes weather-float{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-4px) scale(1.05)}}.weather-card-footer{margin-top:14px;text-align:center;font-size:.9rem;font-style:italic;color:var(--text-mid)}.romantic-prelude{text-align:center;padding:0 6vw 16px}.romantic-prelude .footer-note,.romantic-prelude .footer-note-secondary,.romantic-prelude .footer-pride,.romantic-prelude .footer-return-value{margin:0 0 6px}.footer-return-value{font-style:italic;opacity:.9}.romantic-prelude .footer-pride{margin-bottom:0}.romantic-footer{padding:0 6vw 24px;margin-top:0;margin-bottom:0;text-align:center}.romantic-footer-separator{position:relative;width:100%;margin-bottom:28px;color:rgba(139,45,94,.5)}.romantic-footer-wave{width:100%;height:32px;display:block}.romantic-footer-inner{display:flex;flex-direction:column;align-items:center;gap:4px;font-size:.9rem;color:var(--text-mid);margin-bottom:0}.romantic-footer-inner .footer-memory-id{margin:0}.romantic-footer-inner .footer-timestamp{margin:4px 0 0}.footer-note{font-family:var(--font-playfair),serif;font-size:1.1rem;color:var(--text-mid);margin:0 0 8px}.footer-note-secondary{font-size:.9rem;color:var(--text-mid);opacity:.85;margin:0 0 4px}.footer-pride{font-size:.85rem;font-style:italic;color:var(--text-mid);opacity:.8;margin:0}.footer-memory-id{font-family:var(--font-poppins),system-ui,sans-serif;letter-spacing:.06em;opacity:.7;margin:12px 0 0}.footer-memory-id,.footer-timestamp{font-size:.8rem;color:var(--text-mid)}.footer-timestamp{opacity:.75;margin:8px 0 0}.footer-final{font-size:.9rem;font-style:italic;color:var(--text-mid);margin:20px 0 0;padding:16px 0 0;border-top:1px solid rgba(240,139,191,.25)}.footer-made-memento{font-size:.85rem;color:var(--text-mid);opacity:.9;margin:12px 0 0}.not-found-page{min-height:60vh;padding:48px 20px}.memento-not-found-hero{max-width:36ch;margin:0 auto}.admin-page{padding:32px 0 48px}.admin-title{font-family:var(--font-playfair),serif;font-size:1.35rem;font-weight:600;color:var(--text-dark);margin:0}.admin-table-wrap{overflow-x:auto;margin-top:24px}.admin-table{width:100%;border-collapse:collapse;font-size:.9rem;color:var(--text-dark)}.admin-table td,.admin-table th{padding:10px 14px;text-align:left;border-bottom:1px solid rgba(240,139,191,.2)}.admin-table th{font-weight:600;color:var(--text-mid)}.admin-link{color:var(--accent-dark);text-decoration:none}.admin-link:hover{text-decoration:underline}.admin-empty{color:var(--text-mid);font-style:italic;text-align:center;padding:24px}.handwritten-line{font-family:var(--font-handwritten),cursive;font-size:1.35rem;font-weight:500;color:var(--text-mid);opacity:.9;margin:0 0 8px;line-height:1.4}.handwritten-intro,.handwritten-meant{margin-bottom:4px}.handwritten-large{font-size:1.6rem}.heading-heartbeat{animation:heading-heartbeat 3s ease-in-out infinite}@keyframes heading-heartbeat{0%,to{opacity:1}14%{opacity:.92}28%{opacity:1}42%{opacity:.92}70%{opacity:1}}.after-final-line,.before-final-line{text-align:center;padding:16px 6vw}.after-final-line .handwritten-line{font-size:1.5rem}.slow-floating-hearts{position:fixed;inset:0;z-index:1;pointer-events:none;overflow:hidden}.slow-heart{position:absolute;bottom:-30px;opacity:.18;animation:slow-float-up 40s linear infinite}@keyframes slow-float-up{0%{transform:translateY(0) rotate(0deg);opacity:.12}10%{opacity:.22}90%{opacity:.18}to{transform:translateY(-100vh) rotate(15deg);opacity:.08}}.toast-after-20s{position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(20px);z-index:55;padding:14px 24px;background:hsla(0,0%,100%,.92);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(217,104,168,.3);border-radius:999px;box-shadow:var(--shadow-soft);opacity:0;transition:opacity .4s ease,transform .4s ease;pointer-events:none}.toast-after-20s.visible{opacity:1;transform:translateX(-50%) translateY(0)}.toast-after-20s p{margin:0;font-size:.95rem;color:var(--text-dark);font-weight:500}.gallery-moment-outer{position:relative;overflow:visible}.gallery-moment-outer .gallery-emoji-overlay{position:absolute;top:-6px;right:12px;font-size:2.19rem;line-height:1;z-index:3;pointer-events:none}.gallery-hero-wrap .gallery-moment-outer{max-width:480px;width:100%}.gallery-hero-wrap{margin-bottom:24px;display:flex;justify-content:center}.gallery-hero-item{max-width:480px;width:100%;border-radius:24px;overflow:hidden;box-shadow:var(--shadow);border:1px solid hsla(0,0%,100%,.6);cursor:pointer;transition:transform .3s ease,box-shadow .3s ease;display:flex;flex-direction:column}.gallery-hero-item:hover{transform:scale(1.02);box-shadow:0 24px 64px rgba(111,61,92,.18)}.gallery-hero-item img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.gallery-hero-item .gallery-item-caption{padding:14px 16px 16px;margin:0;font-size:.95rem;line-height:1.45;color:var(--text-dark);text-align:center;background:rgba(255,252,254,.95);border-top:1px solid rgba(240,139,191,.2)}.gallery-hero-item .gallery-item-caption .emoji-img,.gallery-item-caption .emoji-img{width:1em!important;height:1em!important;max-width:1em!important;max-height:1em!important;min-width:1em;min-height:1em;vertical-align:middle;object-fit:contain}.gallery-hero-item .gallery-item-caption .emoji-fallback,.gallery-item-caption .emoji-fallback{font-size:1em;vertical-align:middle}.gallery-grid{display:grid;grid-gap:20px;gap:20px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-auto-rows:minmax(180px,auto)}.gallery-item img{width:100%;height:200px;object-fit:cover;border-radius:20px}.coupon-grid,.cute-grid,.deep-grid,.letter-grid,.promise-grid,.reason-grid{display:grid;grid-gap:16px;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.promise-grid{grid-template-columns:repeat(3,1fr)}.section-date-ideas .section-title{text-align:center}.date-ideas-grid{display:grid;grid-gap:clamp(1rem,3vw,1.25rem);gap:clamp(1rem,3vw,1.25rem);grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));max-width:900px;margin:0 auto}.date-idea-card{background:linear-gradient(145deg,rgba(255,248,252,.95),rgba(253,238,248,.9));border-radius:20px;padding:clamp(1.25rem,4vw,1.5rem);box-shadow:0 6px 20px rgba(240,139,191,.12),0 0 0 1px rgba(240,139,191,.08);transition:transform .3s ease,box-shadow .3s ease;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.5rem}.date-idea-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(240,139,191,.18),0 0 0 1px rgba(240,139,191,.1)}.date-idea-emoji{display:block;font-size:1.75rem;line-height:1}.date-idea-text{margin:0;font-size:clamp(.95rem,2.2vw,1.05rem);color:var(--text-dark);line-height:1.4;font-weight:500}.ribbon-box{position:relative}.ribbon-emoji{position:absolute;top:-4px;font-size:1.1rem;line-height:1;z-index:2;pointer-events:none}.ribbon-box.ribbon-left .ribbon-emoji{left:10px}.ribbon-box.ribbon-right .ribbon-emoji{right:10px;left:auto}.ribbon-box.ribbon-center .ribbon-emoji{left:50%;transform:translateX(-50%)}.chip-outer,.notice-chip-outer{position:relative;overflow:visible}.chip-ribbon-overlay,.notice-ribbon-overlay{position:absolute;top:-6px;font-size:1.1rem;line-height:1;z-index:3;pointer-events:none}.chip-outer.ribbon-left .chip-ribbon-overlay,.notice-chip-outer.ribbon-left .notice-ribbon-overlay{left:12px;right:auto}.chip-outer.ribbon-right .chip-ribbon-overlay,.notice-chip-outer.ribbon-right .notice-ribbon-overlay{right:12px;left:auto}.chip-outer.ribbon-center .chip-ribbon-overlay,.notice-chip-outer.ribbon-center .notice-ribbon-overlay{left:50%;right:auto;transform:translateX(-50%)}.promise-chip-outer{position:relative;overflow:visible}.promise-ribbon-overlay{position:absolute;top:-6px;font-size:1.1rem;line-height:1;z-index:3;pointer-events:none}.promise-chip-outer.ribbon-left .promise-ribbon-overlay{left:12px;right:auto}.promise-chip-outer.ribbon-right .promise-ribbon-overlay{right:12px;left:auto}.promise-chip-outer.ribbon-center .promise-ribbon-overlay{left:50%;right:auto;transform:translateX(-50%)}.promise-chip-last .chip{font-size:clamp(.78rem,2vw,.88rem)}.promise-chip{min-height:80px;padding:20px;background:var(--card);border:1px solid var(--card-border);border-radius:var(--radius-sm);backdrop-filter:blur(var(--blur));-webkit-backdrop-filter:blur(var(--blur));box-shadow:var(--shadow-soft),0 0 32px rgba(240,139,191,.08);color:var(--text-mid);font-size:1rem;line-height:1.7;font-family:var(--font-poppins),system-ui,sans-serif}.teddy-box{position:relative}.teddy-emoji{position:absolute;top:-4px;right:12px;font-size:2.19rem;line-height:1;z-index:2;pointer-events:none}.chip{display:flex;align-items:center;justify-content:center;text-align:center;min-height:56px;background:hsla(0,0%,100%,.7);border-radius:16px;padding:12px 14px;border:1px solid rgba(240,139,191,.25)}.playlist-frame{width:100%;border-radius:20px;border:none;height:380px;box-shadow:var(--shadow)}.music-player-section .section-title{margin-bottom:4px}.music-player-embed-wrap{position:relative;border-radius:20px;overflow:hidden;box-shadow:var(--shadow-soft);transition:opacity .4s ease}.music-player-embed-wrap.music-player-fade-in{opacity:1;transition:opacity 2s ease}.music-player-embed-container{min-height:380px;width:100%}.music-player-placeholder{width:100%;height:380px;border-radius:20px;background:rgba(255,250,253,.5);border:1px solid var(--card-border);display:flex;align-items:center;justify-content:center}.music-player-placeholder-text{font-size:.9rem;color:var(--text-mid);opacity:.8}.music-player-pill-wrap{position:fixed;bottom:max(24px,var(--safe-bottom));right:max(24px,var(--safe-right));z-index:60;pointer-events:auto}.music-player-pill{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:999px;border:1px solid var(--card-border);background:var(--card);backdrop-filter:blur(var(--blur));-webkit-backdrop-filter:blur(var(--blur));box-shadow:var(--shadow-soft);font-size:.95rem;color:var(--text-mid);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;-webkit-tap-highlight-color:rgba(217,104,168,.15)}.music-player-pill:hover{transform:scale(1.04);box-shadow:var(--shadow)}.music-player-pill .music-player-pill-icon{font-size:1.1rem}.youtube-section-card{padding:var(--card-padding);background:rgba(255,250,253,.58);border:1px solid var(--card-border);border-radius:24px;box-shadow:var(--shadow-soft);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);isolation:isolate}.youtube-section .section-title{margin-bottom:4px}.youtube-embed-wrap{border-radius:16px;overflow:hidden;box-shadow:0 8px 24px rgba(180,100,140,.12);margin-top:12px}.youtube-embed-frame{width:100%;aspect-ratio:16/9;border:none;display:block}.time-counter{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:16px;gap:16px;max-width:min(560px,100%);width:100%;margin:0 auto;min-width:0}@media (max-width:640px){.time-counter{grid-template-columns:repeat(2,minmax(0,1fr))}}.time-box{text-align:center;padding:24px 16px;min-width:0;overflow:hidden;background:rgba(255,250,253,.75);border-radius:24px;border:1px solid rgba(240,139,191,.2);box-shadow:0 4px 20px rgba(217,104,168,.08);opacity:0;transform:translateY(12px);transition:transform .5s ease-out,opacity .5s ease-out,box-shadow .3s ease}.time-counter-visible .time-box{opacity:1;transform:translateY(0)}.time-counter-visible .time-box:first-child{transition-delay:.05s}.time-counter-visible .time-box:nth-child(2){transition-delay:.15s}.time-counter-visible .time-box:nth-child(3){transition-delay:.25s}.time-counter-visible .time-box:nth-child(4){transition-delay:.35s}.time-box:hover{box-shadow:0 8px 28px rgba(217,104,168,.12)}.time-number{display:block;margin-bottom:4px}.time-number-value{font-family:var(--font-playfair),"Times New Roman",serif;font-size:2.25rem;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:.02em;color:var(--text-dark);line-height:1.2}.time-label{display:block;font-size:.85rem;font-weight:500;text-transform:lowercase;letter-spacing:.06em;color:var(--text-mid)}.time-counter-tagline{margin:20px 0 0;text-align:center;font-size:.95rem;font-style:italic;color:var(--text-mid);line-height:1.5}.unlock{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:40px 6vw;position:relative}.unlock-floating-heart{position:absolute;left:50%;top:22%;transform:translate(-50%,-50%);font-size:3rem;opacity:.12;pointer-events:none;animation:unlock-heart-float 5s ease-in-out infinite}@keyframes unlock-heart-float{0%,to{transform:translate(-50%,-50%) translateY(0) scale(1);opacity:.1}50%{transform:translate(-50%,-50%) translateY(-12px) scale(1.08);opacity:.18}}.unlock-card{max-width:520px;width:100%;display:grid;grid-gap:18px;gap:18px;position:relative;z-index:1}.unlock-card,.unlock-card input{text-align:center}.unlock-blur-bg{background:rgba(251,231,244,.4);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}.unlock-fade-in{animation:unlock-fade-in 1.2s ease both}@keyframes unlock-fade-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.unlock-elegant .unlock-subtext{margin-top:8px}.unlock-soft-line{margin-top:6px;font-style:italic;opacity:.9}.unlock-micro-line{margin-top:4px;margin-bottom:4px;font-size:.9rem;opacity:.88}.unlock-note-below{margin-top:12px;font-size:.88rem;font-style:italic;opacity:.8}.unlock-input-wrap{margin:16px 0 8px}.unlock-input-animated{width:100%;transition:box-shadow .4s ease,transform .2s ease,border-color .3s ease}.unlock-input-animated:focus{transform:scale(1.01);box-shadow:0 0 0 3px rgba(240,139,191,.2)}.unlock-btn-heartbeat{animation:heartbeat 1.5s ease-in-out infinite}@keyframes heartbeat{0%,to{transform:translateY(-2px) scale(1)}14%{transform:translateY(-2px) scale(1.04)}28%{transform:translateY(-2px) scale(1)}42%{transform:translateY(-2px) scale(1.04)}70%{transform:translateY(-2px) scale(1)}}.valentine-gate{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:var(--safe-top) var(--safe-right) var(--safe-bottom) var(--safe-left);padding-left:max(var(--safe-left),20px);padding-right:max(var(--safe-right),20px);min-height:100vh;min-height:100dvh;box-sizing:border-box}.valentine-gate-screen{background:rgba(251,231,244,.5);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}.valentine-gate-floating-emojis{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}.valentine-gate-floating-emojis .floating-emojis{position:fixed;inset:0;z-index:0}.valentine-gate-icon{position:absolute;width:clamp(20px,5vw,44px);height:clamp(20px,5vw,44px);transform:translate(-50%,-50%);animation:valentine-icon-float ease-in-out infinite}@media (max-width:480px){.valentine-gate-icon{width:18px;height:18px}}.valentine-gate-icon img{width:100%;height:100%;object-fit:contain}@keyframes valentine-icon-float{0%,to{transform:translate(-50%,-50%) translateY(0) rotate(0deg)}50%{transform:translate(-50%,-50%) translateY(-8px) rotate(2deg)}}.valentine-gate-card{position:relative;z-index:2;max-width:min(520px,92vw);width:100%;text-align:center;display:flex;flex-direction:column;align-items:center;gap:clamp(.75rem,2.5vw,1.25rem);padding:clamp(1.5rem,5vw,2.5rem)}.valentine-gate-tag{font-size:clamp(.85rem,2.2vw,.95rem);color:var(--text-mid);margin:0;letter-spacing:.02em}.valentine-gate-heading{font-family:var(--font-playfair),serif;font-size:clamp(1.5rem,4vw,2rem);color:var(--text-dark);margin:0;font-weight:600}.valentine-gate-question{font-size:clamp(1.15rem,3vw,1.35rem);color:var(--text-mid);margin:0;font-style:italic;line-height:1.4}.valentine-gate-question-intro{display:block;white-space:nowrap;font-size:clamp(.8rem,2.2vw,1rem)}.valentine-gate-buttons-wrap{position:relative;margin-top:.5rem}.valentine-gate-buttons{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:clamp(.75rem,3vw,1.25rem)}.valentine-gate-btn{min-height:var(--touch-min);padding:.6rem 1.4rem;border-radius:var(--radius-sm);font-size:clamp(.95rem,2.5vw,1.1rem);font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;-webkit-tap-highlight-color:transparent;border:none}.valentine-gate-btn-yes{background:linear-gradient(145deg,#e53935,#c62828);color:#fff;box-shadow:0 4px 20px rgba(198,40,40,.4);border-radius:var(--radius-sm);padding:.6rem 1.4rem;white-space:nowrap;animation:valentine-yes-pulse 2s ease-in-out infinite}.valentine-gate-btn-yes:hover{transform:scale(1.05);box-shadow:0 6px 28px rgba(198,40,40,.5)}.valentine-gate-btn-no{background:#d4a5a5;color:#5c3a3a;border:none;border-radius:var(--radius-sm);box-shadow:0 2px 0 0 #c49494,0 4px 8px rgba(92,58,58,.2);position:relative;padding:.6rem 1.4rem;white-space:nowrap}.valentine-gate-btn-no:hover{background:#c99494;box-shadow:0 2px 0 0 #b88484,0 4px 12px rgba(92,58,58,.25)}@keyframes valentine-yes-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}.valentine-gate-no-wrap{position:relative;display:inline-block}.valentine-gate-tease{position:absolute;left:50%;transform:translateX(-50%);pointer-events:none;z-index:3}.valentine-gate-tease-below{top:calc(100% + .5rem);animation:valentine-tease-slide-up .35s ease both}@keyframes valentine-tease-slide-up{0%{opacity:0;transform:translateX(-50%) translateY(-8px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.valentine-gate-tease-bubble{position:relative;display:inline-block;font-size:clamp(.82rem,2vw,.92rem);color:var(--text-mid);white-space:nowrap;animation:valentine-tease-bubble-in .35s ease both}.valentine-gate-tease-bubble:after{display:none}@keyframes valentine-tease-bubble-in{0%{opacity:0;transform:translateY(6px) scale(.92)}to{opacity:1;transform:translateY(0) scale(1)}}.valentine-celebration{background:rgba(251,231,244,.5);pointer-events:none}.valentine-celebration .valentine-gate-floating-emojis{z-index:0}.valentine-celebration-lottie{position:absolute;inset:0;z-index:1;width:100%;height:100%;pointer-events:none}.valentine-celebration-gif-wrap{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;z-index:2;pointer-events:none}.valentine-celebration-gif{max-width:240px;width:100%;object-fit:contain}.valentine-celebration-text{margin:0;font-family:var(--font-memento),cursive;font-size:2.5rem;font-weight:500;color:var(--text-dark);text-align:center;display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;text-shadow:0 2px 4px hsla(0,0%,100%,.9);letter-spacing:.02em}.valentine-celebration-text .emoji-fallback,.valentine-celebration-text .emoji-img,.valentine-celebration-text .emoji-sm{width:1.125em;height:1.125em;min-width:27px;min-height:27px;vertical-align:middle}.valentine-celebration-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:1.25rem;z-index:2;pointer-events:none}.valentine-celebration-loading .emoji-fallback,.valentine-celebration-loading .emoji-img{width:4.5em!important;height:4.5em!important;min-width:48px;min-height:48px}.valentine-celebration-loading-emoji{display:inline-flex;align-items:center;justify-content:center;animation:valentine-loading-blink .5s ease-in-out infinite}.valentine-celebration-loading-heart{animation-delay:.17s}.valentine-celebration-loading-bouquet{animation-delay:.34s}@keyframes valentine-loading-blink{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.92)}}.valentine-gate .valentine-passcode-card{animation:valentine-passcode-in .4s ease both;position:relative;overflow:hidden;background:linear-gradient(165deg,rgba(255,248,252,.92),rgba(255,238,248,.88) 35%,rgba(252,228,240,.9) 70%,rgba(255,245,250,.9));border:1px solid rgba(255,220,240,.65);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.7),inset 0 -1px 0 rgba(240,180,210,.15),0 8px 32px rgba(180,80,120,.12),0 0 0 1px rgba(240,139,191,.08);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.valentine-gate .valentine-passcode-card:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");border-radius:inherit}.valentine-gate .valentine-passcode-card .valentine-passcode-error,.valentine-gate .valentine-passcode-card .valentine-passcode-heading,.valentine-gate .valentine-passcode-card .valentine-passcode-subtext,.valentine-gate .valentine-passcode-card .valentine-passcode-topline,.valentine-gate .valentine-passcode-card .valentine-passcode-wrap{position:relative;z-index:1}@keyframes valentine-passcode-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.valentine-passcode-heading{font-size:clamp(1.2rem,3.5vw,1.5rem);line-height:1.35;margin-bottom:.25rem}.valentine-passcode-wrap{position:relative;display:flex;flex-direction:column;align-items:center;gap:1rem;width:100%;max-width:260px;margin:0 auto}@media (max-width:480px){.valentine-passcode-wrap{max-width:220px}}.valentine-passcode-dots{display:flex;align-items:center;justify-content:center;gap:.75rem}.valentine-passcode-dot{width:14px;height:14px;border-radius:50%;border:2px solid rgba(240,139,191,.5);background:transparent;transition:background .2s ease,border-color .2s ease,transform .2s ease}.valentine-passcode-dot-filled{background:linear-gradient(145deg,var(--accent),var(--accent-dark));border-color:var(--accent);box-shadow:inset 0 0 0 1px hsla(0,0%,100%,.3)}.valentine-passcode-dots.valentine-passcode-shake{animation:valentine-passcode-shake .5s ease}.valentine-passcode-input-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;opacity:0;pointer-events:none}.valentine-numpad{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:.6rem;gap:.6rem;width:100%;max-width:220px;font-family:Times New Roman,Times,Georgia,serif}.valentine-numpad-key{aspect-ratio:1;min-height:52px;max-height:64px;display:flex;align-items:center;justify-content:center;font-size:1.6rem;font-weight:400;font-family:inherit;color:rgba(80,45,65,.95);background:hsla(0,0%,100%,.38);border:1px solid hsla(0,0%,100%,.55);border-radius:50%;cursor:pointer;transition:transform .2s ease,background .2s ease,box-shadow .2s ease,border-color .2s ease;-webkit-tap-highlight-color:transparent;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.5),0 2px 12px rgba(140,70,100,.12);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.valentine-numpad-key:hover:not(:disabled){background:rgba(255,250,253,.62);border-color:hsla(0,0%,100%,.85);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.8),0 6px 24px rgba(240,139,191,.25),0 0 0 1px rgba(240,139,191,.2);transform:scale(1.08)}.valentine-numpad-key:active:not(:disabled){transform:scale(.95);background:rgba(248,220,238,.5);box-shadow:inset 0 2px 8px rgba(180,90,130,.15)}.valentine-numpad-key:disabled{opacity:.5;cursor:not-allowed}.valentine-numpad-key-empty{pointer-events:none;background:transparent!important;box-shadow:none!important}.valentine-numpad-key-back{color:var(--text-mid);font-size:0}.valentine-numpad-key-back svg{display:block;width:22px;height:22px}.valentine-passcode-input{width:100%;min-height:var(--touch-min);padding:.75rem 1rem;font-size:1.5rem;font-family:Times New Roman,Times,Georgia,serif;letter-spacing:.4em;text-align:center;border-radius:var(--radius-sm);border:2px solid rgba(240,139,191,.35);background:hsla(0,0%,100%,.9);color:var(--text-dark);transition:border-color .2s ease,box-shadow .2s ease;-webkit-tap-highlight-color:transparent}.valentine-passcode-input::placeholder{letter-spacing:.2em;color:var(--text-mid)}.valentine-passcode-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(240,139,191,.2)}.valentine-passcode-input.valentine-passcode-shake{animation:valentine-passcode-shake .5s ease;border-color:rgba(220,100,120,.6)}@keyframes valentine-passcode-shake{0%,to{transform:translateX(0)}15%{transform:translateX(-8px)}30%{transform:translateX(8px)}45%{transform:translateX(-6px)}60%{transform:translateX(6px)}75%{transform:translateX(-3px)}}.valentine-passcode-unlock{width:100%;min-width:140px}.valentine-passcode-error{margin:0;font-size:clamp(.9rem,2.2vw,1rem);color:var(--text-mid);animation:valentine-tease-bubble-in .3s ease both}.valentine-gate-reveal{animation:valentine-reveal-in .8s ease both}@keyframes valentine-reveal-in{0%{opacity:0}to{opacity:1}}@media (max-width:480px){.valentine-gate-card{padding:1.25rem 1rem}.valentine-gate-buttons{flex-direction:column}.valentine-passcode-input{letter-spacing:.3em;font-size:1.35rem}}.section-seven-days .section-title{text-align:center;margin-bottom:clamp(.75rem,2.5vw,1.25rem)}.section-seven-days .seven-days-subtitle{text-align:center;margin:0 auto clamp(1.5rem,5vw,2.5rem);white-space:nowrap}.seven-days-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:clamp(.75rem,3vw,1.25rem);gap:clamp(.75rem,3vw,1.25rem);max-width:900px;margin:0 auto}.seven-days-grid .seven-days-card:last-child{grid-column:2}.seven-days-card{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;text-align:center;padding:clamp(1rem,3vw,1.5rem);min-height:clamp(80px,18vw,100px);border-radius:18px;border:2px solid transparent;background:radial-gradient(circle at 0 0,rgba(255,214,235,.9),rgba(255,250,253,.95) 45%,rgba(253,239,245,.95) 100%) padding-box,linear-gradient(135deg,rgba(255,171,211,.85),rgba(214,153,255,.85),rgba(255,194,222,.9)) border-box;box-shadow:0 4px 20px rgba(111,61,92,.1),0 0 0 1px rgba(240,139,191,.15),inset 0 1px 0 hsla(0,0%,100%,.6);transition:transform .25s ease,box-shadow .25s ease;-webkit-tap-highlight-color:transparent}.seven-days-card,.seven-days-card-inner{display:flex;align-items:center;justify-content:center}.seven-days-card-inner{flex-direction:column;gap:.35rem;width:100%}.seven-days-card-emoji{display:block;line-height:1}.seven-days-card:hover{transform:translateY(-4px) scale(1.02);box-shadow:0 12px 32px rgba(111,61,92,.15),0 0 0 1px rgba(240,139,191,.2),inset 0 1px 0 hsla(0,0%,100%,.7)}.seven-days-card-title{font-family:var(--font-playfair),serif;font-size:clamp(.9rem,2.2vw,1.05rem);font-weight:700;color:var(--text-dark);line-height:1.3}.seven-days-card-subtitle{font-size:clamp(.75rem,1.8vw,.85rem);line-height:1.35;color:var(--text-dark);opacity:.9;margin-top:.5rem}.seven-days-letter-overlay{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:clamp(1rem,4vw,2rem);box-sizing:border-box;animation:seven-days-overlay-in .25s ease both}.seven-days-letter-backdrop{position:absolute;inset:0;background:rgba(50,25,40,.5);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);cursor:pointer}.seven-days-letter-paper{position:relative;z-index:2;width:100%;max-width:min(520px,100%);max-height:90vh;max-height:90dvh;border-radius:var(--radius);overflow:hidden;box-shadow:0 24px 60px rgba(50,25,40,.25),0 0 0 1px hsla(0,0%,100%,.2);background-color:rgba(253,238,248,.98);background-image:var(--letter-bg,none);background-size:cover;background-position:50%;background-repeat:no-repeat;display:flex;flex-direction:column;animation:seven-days-unfold .5s cubic-bezier(.22,1,.36,1) both}.seven-days-letter-close{position:absolute;top:clamp(.5rem,2vw,.75rem);right:clamp(.5rem,2vw,.75rem);z-index:4;width:clamp(36px,8vw,44px);height:clamp(36px,8vw,44px);border:none;border-radius:50%;background:hsla(0,0%,100%,.9);color:var(--text-mid);font-size:1.1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease,transform .2s ease;-webkit-tap-highlight-color:transparent}.seven-days-letter-close:hover{background:#fff;transform:scale(1.08)}.seven-days-letter-inner{flex:1 1;min-height:0;overflow-y:auto;padding:clamp(2.5rem,8vw,3rem) clamp(2rem,6vw,2.5rem) clamp(2rem,6vw,2.5rem);-webkit-overflow-scrolling:touch}.seven-days-letter-gif-wrap{display:flex;justify-content:center;margin-bottom:clamp(1rem,3vw,1.25rem)}.seven-days-letter-gif{max-width:min(200px,100%);width:100%;object-fit:contain;border-radius:var(--radius-sm);box-shadow:var(--shadow-soft)}.seven-days-letter-day-title{font-family:var(--font-playfair),serif;font-size:clamp(1.25rem,3.5vw,1.5rem);font-weight:600;color:var(--text-dark);text-align:center;margin:0 0 clamp(1rem,3vw,1.25rem)}.seven-days-letter-body{font-family:var(--font-playfair),serif;font-size:clamp(.95rem,2.5vw,1.05rem);line-height:1.85;color:var(--text-mid);white-space:pre-line;max-width:var(--prose-max);margin:0 auto}@keyframes seven-days-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes seven-days-unfold{0%{opacity:0;transform:scale(.92) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}@media (max-width:480px){.seven-days-letter-paper{max-height:88vh;max-height:88dvh}}.section-quiz-center .reveal-fade-up{display:flex;flex-direction:column;align-items:center}.section-quiz-center .section-title{text-align:center}.quiz-card{max-width:560px;margin-left:auto;margin-right:auto}.quiz-box-ghost{position:relative}.quiz-ghost-emoji{position:absolute;right:12px;top:-4px;font-size:2.625rem;line-height:1;z-index:2;pointer-events:none;opacity:.85}.quiz-intro{margin-bottom:16px;text-align:center}.quiz-form{display:grid;grid-gap:24px;gap:24px}.quiz-question{display:grid;grid-gap:12px;gap:12px}.quiz-q{font-weight:600;color:var(--text-dark);font-size:1rem}.quiz-options{display:flex;flex-wrap:wrap;gap:10px}.quiz-option{display:inline-flex;align-items:center;gap:8px;cursor:pointer;padding:10px 14px;background:hsla(0,0%,100%,.6);border-radius:14px;border:1px solid rgba(240,139,191,.25);transition:background .2s,border-color .2s}.quiz-option input{margin:0;accent-color:var(--accent-dark)}.quiz-option:focus-within,.quiz-option:hover{background:hsla(0,0%,100%,.9);border-color:rgba(240,139,191,.5)}.quiz-option:active span{transform:scale(.98)}.quiz-option span{transition:transform .15s ease}.quiz-submit{margin-top:8px;font-size:1.15rem;font-weight:500;transition:transform .2s ease,box-shadow .2s ease}.quiz-submit:active:not(:disabled){transform:scale(.97)}.quiz-submit:disabled{opacity:.7;cursor:not-allowed}.quiz-submit.quiz-submit-best{font-size:1.25rem;font-weight:600}.quiz-result{margin-top:16px;font-style:italic}.quiz-result-popup-overlay{position:fixed;inset:0;z-index:95;background:rgba(50,25,40,.4);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:24px;animation:popup-fade .3s ease}.quiz-result-popup{background:linear-gradient(145deg,hsla(0,0%,100%,.95),rgba(248,220,240,.8));border:2px solid rgba(217,104,168,.35);border-radius:var(--radius);padding:32px 40px;text-align:center;box-shadow:var(--shadow),0 0 60px rgba(240,139,191,.2);animation:popup-scale .4s ease}.quiz-result-popup p{font-size:1.25rem;color:var(--text-dark);margin:0;font-weight:500}@keyframes popup-fade{0%{opacity:0}to{opacity:1}}@keyframes popup-scale{0%{opacity:0;transform:scale(.9) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.romantic-page .section:has(+.report-weather-wrap){margin-bottom:0}.report-weather-wrap{margin-top:0;margin-bottom:clamp(16px,3vw,28px)}.report-weather-divider{display:block;width:100%;max-width:min(var(--prose-max-width),640px);margin:0 auto 12px;height:16px;background-image:linear-gradient(90deg,transparent,rgba(107,61,92,.12) 20%,rgba(217,104,168,.2) 50%,rgba(107,61,92,.12) 80%,transparent);background-size:100% 2px;background-position:center 50%;background-repeat:no-repeat;text-align:center;line-height:16px;font-size:.65rem;color:rgba(217,104,168,.45)}.report-weather-divider:before{content:"♥"}.report-weather-row .section+.section:before{display:none}.report-weather-row .section:first-child .section-title{white-space:nowrap;margin-top:0;margin-bottom:12px;font-size:clamp(1.2rem,2.2vw,1.75rem)}@media (max-width:380px){.report-weather-row .section:first-child .section-title{white-space:normal;font-size:1.1rem}}.report-weather-row{display:flex;flex-wrap:wrap;gap:24px;align-items:stretch;justify-content:center;margin-top:0;margin-bottom:0}.report-weather-row .section{flex:1 1 280px;max-width:420px;margin-top:0;margin-bottom:0}.report-weather-row .report-card{max-width:100%}.report-weather-row .weather-card{max-width:100%;margin-left:0;margin-right:0}.report-card{max-width:400px;padding:28px 24px;background:linear-gradient(160deg,hsla(0,0%,100%,.7),rgba(248,220,240,.5));border:2px solid rgba(217,104,168,.3);border-radius:var(--radius);box-shadow:var(--shadow-soft)}.report-card-header{display:flex;flex-direction:column;gap:2px;margin-bottom:20px;padding-bottom:12px;border-bottom:2px dashed rgba(217,104,168,.35)}.report-card-title{font-family:var(--font-playfair),serif;font-size:1.4rem;font-weight:700;color:var(--text-dark)}.report-card-subtitle{font-size:.8rem;color:var(--text-mid);font-style:italic}.report-card-grades{display:grid;grid-gap:12px;gap:12px}.report-grade-row{display:grid;grid-template-columns:1fr auto;align-items:center;grid-gap:12px;gap:12px;padding:12px 14px;background:hsla(0,0%,100%,.6);border-radius:12px;border:1px solid rgba(240,139,191,.2);overflow:hidden}.report-grade-bar-wrap{grid-column:1/-1;height:8px;background:rgba(240,139,191,.15);border-radius:999px;overflow:hidden;margin-top:4px}.report-grade-bar{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--accent),var(--accent-dark));width:0;transition:width 1.2s cubic-bezier(.22,1,.36,1)}.report-grade-row.animated .report-grade-bar{width:var(--grade-pct,100%)}.report-label{font-size:.95rem;color:var(--text-mid)}.report-grade{font-family:var(--font-playfair),serif;font-weight:700;font-size:1.2rem;color:var(--accent-dark)}.report-card-footer{margin-top:16px;text-align:center;font-style:italic}.notice-grid{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.notice-chip{display:flex;align-items:center;justify-content:center;text-align:center;min-height:80px;padding:20px;background:var(--card);border:1px solid var(--card-border);border-radius:var(--radius-sm);backdrop-filter:blur(var(--blur));-webkit-backdrop-filter:blur(var(--blur));box-shadow:var(--shadow-soft),0 0 32px rgba(240,139,191,.08);color:var(--text-mid);font-size:1rem;line-height:1.7;font-family:var(--font-poppins),system-ui,sans-serif}.section-never-say-center .reveal-fade-up{display:flex;flex-direction:column;align-items:center}.section-never-say-center .section-title{text-align:center}.never-say-outer{position:relative;overflow:visible;width:100%;max-width:640px;margin:0 auto}.never-say-outer .bouquet-emoji{position:absolute;top:-6px;right:12px;font-size:2.25rem;line-height:1;z-index:3;pointer-events:none}.section-you-changed-center .reveal-fade-up{display:flex;flex-direction:column;align-items:center}.section-you-changed-center .section-title{text-align:center}.you-changed-outer{position:relative;overflow:visible;width:100%;max-width:var(--prose-max);margin:0 auto}.you-changed-outer .bouquet-emoji{position:absolute;top:-6px;right:12px;font-size:2.25rem;line-height:1;z-index:3;pointer-events:none}.section-what-i-feel-center .reveal-fade-up{display:flex;flex-direction:column;align-items:center}.what-i-feel-outer{position:relative;overflow:visible;width:100%;max-width:var(--prose-max);margin:0 auto}.what-i-feel-outer .bouquet-emoji{position:absolute;top:-6px;right:12px;font-size:2.25rem;line-height:1;z-index:3;pointer-events:none}.section-read-when-low-center .reveal-fade-up{display:flex;flex-direction:column;align-items:center}.read-when-low-outer{position:relative;overflow:visible;width:100%;max-width:420px;margin:0 auto}.read-when-low-outer .bouquet-emoji{position:absolute;top:-6px;right:12px;font-size:2.25rem;line-height:1;z-index:3;pointer-events:none}.never-say-card{max-width:640px;font-size:1.02rem;line-height:1.85}.read-when-low{max-width:420px;margin:0 auto;cursor:pointer;border-radius:var(--radius);overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.read-when-low:not(.opened):hover{transform:scale(1.02);box-shadow:var(--shadow)}.read-when-low-seal{padding:32px 24px;background:linear-gradient(145deg,rgba(246,232,248,.9),rgba(253,239,245,.9));border:2px dashed rgba(217,104,168,.4);border-radius:var(--radius);text-align:center}.read-when-low-label{font-family:var(--font-playfair),serif;font-size:1.1rem;color:var(--text-mid);font-style:italic}.read-when-low.opened .read-when-low-seal{display:none}.read-when-low-content{padding:28px 24px;background:var(--card);border:1px solid var(--card-border);-webkit-backdrop-filter:blur(var(--blur));backdrop-filter:blur(var(--blur));border-radius:var(--radius);box-shadow:var(--shadow-soft)}.read-when-low-content p{color:var(--text-mid);line-height:1.8;margin:0}.section-before-sleep{background:linear-gradient(180deg,rgba(253,242,250,.5),rgba(248,232,245,.6));padding:48px 0;border-radius:var(--radius)}.before-sleep-card{background:rgba(255,252,254,.42);border-color:rgba(252,235,245,.5);color:var(--text-dark);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 6px 24px rgba(240,139,191,.04)}.before-sleep-card p{color:var(--text-mid)}.before-sleep-signoff{margin-top:16px;font-style:italic;opacity:.95}.before-sleep-signoff,.section-before-sleep .section-title{color:var(--text-dark)}.map-placeholder{padding:48px 24px;background:hsla(0,0%,100%,.35);border:2px dashed rgba(217,104,168,.35);border-radius:var(--radius)}.map-placeholder-inner{display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center}.map-placeholder-icon{font-size:2.5rem;opacity:.8}.map-placeholder-caption{max-width:320px;font-style:italic;color:var(--text-mid)}.quote-separator{padding:32px 6vw;text-align:center}.quote-separator-text{font-family:var(--font-playfair),serif;font-size:clamp(.95rem,1.8vw,1.15rem);font-style:italic;color:var(--text-mid);opacity:.9;max-width:560px;margin:0 auto;line-height:1.6}.scroll-progress{position:fixed;top:0;left:0;right:0;height:4px;z-index:60;background:hsla(0,0%,100%,.2);pointer-events:none}@media (max-width:768px){.romantic-page-wrap .scroll-progress{display:none}}.scroll-progress-bar{position:relative;height:100%;background:linear-gradient(90deg,#f5a0a0,#e87878);border-radius:0 2px 2px 0;transition:width .08s ease-out}.scroll-progress-sparkle{position:absolute;top:50%;right:0;width:6px;height:6px;transform:translate(50%,-50%);background:#ff3b30;border-radius:50%;box-shadow:0 0 4px 1px rgba(255,80,60,.95),0 0 10px 3px rgba(255,60,50,.8),0 0 16px 4px rgba(220,40,40,.6),-2px 0 3px 1px rgba(255,100,70,.9),-4px 0 4px 1px rgba(255,60,50,.6),0 -2px 3px 1px rgba(255,90,60,.7),0 2px 3px 1px rgba(255,90,60,.7),2px 0 3px 1px rgba(255,70,50,.5);animation:scroll-progress-sparkle 1s ease-in-out infinite;pointer-events:none}@keyframes scroll-progress-sparkle{0%,to{opacity:1;transform:translate(50%,-50%) scale(1);box-shadow:0 0 4px 1px rgba(255,80,60,.95),0 0 10px 3px rgba(255,60,50,.8),0 0 16px 4px rgba(220,40,40,.6),-2px 0 3px 1px rgba(255,100,70,.9),-4px 0 4px 1px rgba(255,60,50,.6),0 -2px 3px 1px rgba(255,90,60,.7),0 2px 3px 1px rgba(255,90,60,.7),2px 0 3px 1px rgba(255,70,50,.5)}50%{opacity:.9;transform:translate(50%,-50%) scale(1.2);box-shadow:0 0 6px 2px #ff5a46,0 0 14px 5px rgba(255,70,55,.9),0 0 22px 6px rgba(230,50,45,.7),-3px 0 4px 2px rgba(255,110,80,.95),-6px 0 6px 2px rgba(255,70,55,.7),0 -3px 4px 2px rgba(255,100,70,.8),0 3px 4px 2px rgba(255,100,70,.8),3px 0 4px 2px rgba(255,80,60,.6)}}.made-with-love-badge{position:fixed;bottom:16px;right:16px;z-index:40;padding:8px 14px;background:hsla(0,0%,100%,.5);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid hsla(0,0%,100%,.4);border-radius:999px;font-size:.8rem;color:var(--text-mid);letter-spacing:.03em;box-shadow:var(--shadow-soft);display:flex;align-items:center;gap:10px}.made-with-love-badge:not(:has(.made-with-love-share)){pointer-events:none}.made-with-love-share{padding:6px 14px;font-size:.8rem;font-weight:600;color:var(--accent-dark);background:hsla(0,0%,100%,.85);border:1px solid rgba(217,104,168,.3);border-radius:999px;cursor:pointer;transition:background .2s,color .2s,box-shadow .2s;min-height:var(--touch-min);-webkit-tap-highlight-color:transparent;display:inline-flex;align-items:center;gap:.3rem}.made-with-love-share:hover{background:hsla(0,0%,100%,.95);color:var(--text-dark);box-shadow:0 4px 16px rgba(240,139,191,.2)}.made-with-love-share-memory{padding:8px 18px;font-size:.85rem}.heart-confetti-canvas{position:fixed;inset:0;z-index:90;pointer-events:none}.coupon-card-redeem{position:relative;min-height:120px;display:block;cursor:pointer;transition:transform .3s ease,box-shadow .3s ease;perspective:800px}.coupon-card-redeem:not(.redeemed):hover{transform:scale(1.03);box-shadow:var(--shadow)}.coupon-redeem-hint{margin-top:8px;font-size:.9rem}.coupon-card-inner{position:absolute;inset:0;min-height:120px;transition:transform .6s ease;transform-style:preserve-3d}.coupon-card-redeem.redeemed .coupon-card-inner{transform:rotateY(180deg)}.coupon-card-back,.coupon-card-front{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;border-radius:var(--radius);background:var(--card);border:1px solid var(--card-border);box-shadow:var(--shadow-soft),0 0 32px rgba(240,139,191,.06);pointer-events:none}.coupon-card-back{transform:rotateY(180deg);background:linear-gradient(145deg,rgba(248,220,240,.85),hsla(0,0%,100%,.75));border-color:rgba(217,104,168,.35)}.coupon-card-redeem.redeemed{cursor:default}.coupon-redeemed-content{animation:redeemed-pop .5s ease}@keyframes redeemed-pop{0%{transform:scale(.9);opacity:.7}60%{transform:scale(1.05);opacity:1}to{transform:scale(1);opacity:1}}.coupon-redeemed-text{display:block;font-family:var(--font-playfair),serif;font-size:1.2rem;font-weight:600;color:var(--accent-dark);margin-bottom:8px}.coupon-redeemed-detail{margin:0;font-size:.9rem}.love-coupons-section .coupon-ticket-grid{display:grid;grid-gap:20px;gap:20px;grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr));max-width:900px;margin:0 auto}.love-coupons-section .coupon-ticket-outer{position:relative;min-height:100px;aspect-ratio:3/1;max-height:140px;cursor:pointer;transition:transform .25s ease;perspective:900px;border:none;border-radius:12px;background:transparent;box-shadow:none;overflow:hidden}.love-coupons-section .coupon-ticket-outer:not(.redeemed):hover{transform:scale(1.02)}.love-coupons-section .coupon-ticket-outer.redeemed{cursor:default}.love-coupons-section .coupon-ticket{position:absolute;inset:0;border-radius:12px;overflow:hidden;perspective:1200px}.love-coupons-section .coupon-ticket-outer .coupon-ticket-perf{display:none}.love-coupons-section .coupon-ticket-inner{position:absolute;inset:0;border-radius:12px;transition:transform .6s cubic-bezier(.34,1.2,.64,1);transform-style:preserve-3d;z-index:1}.love-coupons-section .coupon-ticket-outer.redeemed .coupon-ticket-inner{transform:rotateY(180deg)}.love-coupons-section .coupon-ticket-outer.redeemed .coupon-ticket-front{visibility:hidden;opacity:0;pointer-events:none}.love-coupons-section .coupon-ticket-back,.love-coupons-section .coupon-ticket-front{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:16px 20px;border-radius:10px;pointer-events:none;border-radius:12px}.love-coupons-section .coupon-ticket-front{background-image:url(/assets/ticket.png);background-size:cover;background-position:50%;background-repeat:no-repeat;box-shadow:none}.love-coupons-section .coupon-ticket-front:before{content:"";position:absolute;inset:0;border-radius:12px;background:rgba(255,252,254,.28);pointer-events:none;z-index:0}.love-coupons-section .coupon-ticket-front .coupon-redeem-hint,.love-coupons-section .coupon-ticket-front h3{position:relative;z-index:1}.love-coupons-section .coupon-ticket-front h3{margin:0;font-family:var(--font-playfair),serif;font-size:clamp(1rem,2.2vw,1.2rem);font-weight:600;color:#1a0d14;text-shadow:0 1px 2px hsla(0,0%,100%,.4)}.love-coupons-section .coupon-redeem-hint{margin-top:6px;font-size:.85rem;color:#2d1528;text-shadow:0 1px 1px hsla(0,0%,100%,.35)}.love-coupons-section .coupon-ticket-back{transform:rotateY(180deg);background-image:url(/assets/ticket.png);background-size:cover;background-position:50%;background-repeat:no-repeat;box-shadow:none}.love-coupons-section .coupon-ticket-back:before{content:"";position:absolute;inset:0;border-radius:12px;background:rgba(255,252,254,.35);pointer-events:none;z-index:0}.love-coupons-section .coupon-ticket-back .coupon-redeemed-content{position:relative;z-index:1;animation:coupon-redeemed-in .5s ease .15s both}@keyframes coupon-redeemed-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.love-coupons-section .coupon-redeemed-text{display:block;font-family:var(--font-playfair),serif;font-size:1.15rem;font-weight:600;color:#1a0d14;margin-bottom:6px;text-shadow:0 1px 2px hsla(0,0%,100%,.4)}.love-coupons-section .coupon-redeemed-detail{margin:0;font-size:.88rem;color:#2d1528;text-shadow:0 1px 1px hsla(0,0%,100%,.35)}@media (max-width:640px){.love-coupons-section .coupon-ticket-grid{grid-template-columns:1fr;gap:16px}.love-coupons-section .coupon-ticket-outer{aspect-ratio:3/1;max-height:120px}}.little-love-game-section{min-width:0;overflow:hidden}.little-love-game-section .section-title{margin-bottom:8px}.little-love-game-subtext{font-size:.95rem;color:var(--text-mid);text-align:center;white-space:normal;margin:0 auto 24px;max-width:100%}.little-love-game-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px;gap:12px;width:100%;max-width:min(420px,100%);min-width:0;margin:0 auto 24px;box-sizing:border-box}.little-love-game-tile{position:relative;aspect-ratio:1;min-width:0;border:none;border-radius:16px;padding:0;cursor:pointer;background:transparent;transition:transform .2s ease;-webkit-tap-highlight-color:transparent}.little-love-game-tile:hover:not(.matched):not(:disabled){transform:scale(1.02)}.little-love-game-tile:disabled:not(.flipped){cursor:default}.little-love-game-tile-inner{position:relative;width:100%;height:100%;border-radius:14px;transition:transform .5s ease;transform-style:preserve-3d;box-shadow:0 4px 16px rgba(240,139,191,.15),inset 0 0 0 1px hsla(0,0%,100%,.4);background:linear-gradient(145deg,rgba(255,252,254,.95),rgba(253,242,250,.9))}.little-love-game-tile.flipped .little-love-game-tile-inner{transform:rotateY(180deg)}.little-love-game-tile-back,.little-love-game-tile-front{position:absolute;inset:0;border-radius:14px;backface-visibility:hidden;-webkit-backface-visibility:hidden;display:flex;align-items:center;justify-content:center;padding:10px}.little-love-game-tile-back{background:linear-gradient(145deg,rgba(255,250,253,.98),rgba(253,238,248,.95))}.little-love-game-tile-front{background:linear-gradient(145deg,rgba(255,248,252,.98),rgba(252,235,245,.95));transform:rotateY(180deg)}.little-love-game-emoji{font-size:clamp(1.6rem,4vw,2.2rem);line-height:1}.little-love-game-emoji-hidden{font-family:var(--font-playfair),serif;font-size:clamp(1.4rem,3.5vw,1.9rem);font-weight:600;color:var(--text-mid);opacity:.85}.little-love-game-revealed-list{max-width:min(420px,100%);width:100%;margin:0 auto 20px;padding:16px 12px;text-align:left;box-sizing:border-box}.little-love-game-typing-line{margin:0 0 10px;font-size:.9rem;line-height:1.45;color:var(--text-dark);min-height:1.45em}.little-love-game-typing-line:last-child{margin-bottom:0}.little-love-game-typing-cursor{display:inline-block;animation:little-love-game-cursor-blink .7s ease-in-out infinite;color:var(--accent);margin-left:1px}@keyframes little-love-game-cursor-blink{0%,to{opacity:1}50%{opacity:.2}}.little-love-game-reveal{font-size:clamp(.7rem,1.8vw,.82rem);line-height:1.35;color:var(--text-dark);text-align:center;font-weight:500}.little-love-game-tile.matched .little-love-game-tile-inner{box-shadow:0 4px 20px rgba(217,104,168,.2),inset 0 0 0 1px hsla(0,0%,100%,.5)}.little-love-game-done{text-align:center;padding:20px 16px;animation:little-love-game-done-in .8s ease forwards}@keyframes little-love-game-done-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.little-love-game-done-line{margin:0 0 6px;font-size:1rem;color:var(--text-mid);line-height:1.5}.little-love-game-done-line:last-child{margin-bottom:0}@media (max-width:480px){.little-love-game-grid{gap:8px;max-width:100%}.little-love-game-reveal{font-size:.7rem}}.little-things-section{position:relative;margin-bottom:0}.little-things-subtitle{text-align:left;font-size:.95rem;color:var(--text-mid);margin:0 0 20px}.little-things-open-when{margin-bottom:0}.section-end-divider{display:block;height:16px;margin-top:0;margin-bottom:0;background-image:linear-gradient(90deg,transparent,rgba(107,61,92,.12) 20%,rgba(217,104,168,.2) 50%,rgba(107,61,92,.12) 80%,transparent);background-size:100% 2px;background-position:center 50%;background-repeat:no-repeat;font-size:.65rem;color:rgba(217,104,168,.45);text-align:center;line-height:16px;letter-spacing:.1em}.section-end-divider:before{content:"♥"}.romantic-page .little-things-section+.cute-memories-section,.romantic-page .little-things-section+.section{margin-top:0}.romantic-page .little-things-section+.section:before{display:none}.little-things-cards-grid{display:grid;grid-gap:20px;gap:20px;grid-template-columns:repeat(3,1fr);max-width:720px;margin:0 auto}.little-things-card{position:relative;aspect-ratio:3/4;border:none;outline:none;border-radius:20px;background-color:transparent;background-size:cover;background-position:50%;background-repeat:no-repeat;box-shadow:none;cursor:pointer;overflow:hidden;transition:transform .35s ease;-webkit-appearance:none;-moz-appearance:none;appearance:none}.little-things-card:focus{outline:none}.little-things-card:hover{transform:scale(1.04)}.little-things-card-title{position:absolute;bottom:0;left:0;right:0;padding:20px 14px 16px;font-family:var(--font-playfair),serif;font-size:.95rem;font-weight:600;color:var(--accent-dark);text-align:center;text-shadow:0 1px 2px hsla(0,0%,100%,.4);line-height:1.3}.little-things-overlay{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:20px;animation:little-things-overlay-in .3s ease}@keyframes little-things-overlay-in{0%{opacity:0}to{opacity:1}}.little-things-overlay-backdrop{position:absolute;inset:0;background:rgba(50,25,40,.5);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);cursor:pointer}.little-things-overlay-paper{position:relative;z-index:2;width:100%;max-width:420px;max-height:90vh;overflow-y:auto;background:hsla(0,0%,100%,.96);border-radius:24px;box-shadow:0 24px 64px rgba(0,0,0,.25),0 8px 32px rgba(240,139,191,.15);border:1px solid hsla(0,0%,100%,.6);padding:24px 24px 28px;animation:little-things-paper-in .4s ease}@keyframes little-things-paper-in{0%{opacity:0;transform:scale(.92) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}.little-things-overlay-close{position:absolute;top:12px;right:12px;width:36px;height:36px;border:none;border-radius:50%;background:hsla(0,0%,100%,.9);box-shadow:0 2px 12px rgba(0,0,0,.1);color:var(--text-dark);font-size:1.5rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease,transform .2s ease}.little-things-overlay-close:hover{background:#fff;transform:scale(1.08)}.little-things-overlay-gif{width:100%;border-radius:16px;overflow:hidden;margin-bottom:20px;box-shadow:0 8px 24px rgba(111,61,92,.12)}.little-things-overlay-gif img{display:block;width:100%;height:auto;vertical-align:middle}.little-things-overlay-title{font-family:var(--font-playfair),serif;font-size:1.2rem;font-weight:600;color:var(--text-dark);margin:0 0 14px;text-align:center}.little-things-overlay-body{font-size:1rem;line-height:1.6;color:var(--text-mid)}.little-things-coupons{margin-top:0}.little-things-coupon-grid{display:grid;grid-gap:16px;gap:16px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));max-width:560px;margin:0 auto}.little-things-coupon-card{position:relative;min-height:100px;border:none;border-radius:20px;overflow:hidden;cursor:pointer;background:transparent;box-shadow:0 8px 28px rgba(111,61,92,.12),0 2px 10px rgba(0,0,0,.06);transition:transform .3s ease,box-shadow .3s ease;perspective:700px}.little-things-coupon-card:not(.redeemed):hover{transform:scale(1.03);box-shadow:0 12px 36px rgba(111,61,92,.16),0 4px 14px rgba(0,0,0,.08)}.little-things-coupon-card.redeemed{cursor:default}.little-things-coupon-inner{position:absolute;inset:0;min-height:100px;transition:transform .6s ease;transform-style:preserve-3d}.little-things-coupon-card.redeemed .little-things-coupon-inner{transform:rotateY(180deg)}.little-things-coupon-back,.little-things-coupon-front{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:18px 14px;border-radius:20px;background:hsla(0,0%,100%,.7);border:1px solid hsla(0,0%,100%,.5);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.8)}.little-things-coupon-back{transform:rotateY(180deg);background:linear-gradient(145deg,rgba(253,238,248,.9),rgba(255,248,252,.85));border-color:rgba(217,104,168,.3)}.little-things-coupon-title{font-family:var(--font-playfair),serif;font-size:1rem;font-weight:600;color:var(--text-dark);margin-bottom:6px}.little-things-coupon-hint{font-size:.8rem;color:var(--text-mid)}.little-things-coupon-redeemed{font-family:var(--font-playfair),serif;font-size:1.05rem;font-weight:600;color:var(--accent-dark)}.romantic-page .cute-memories-section{margin-top:clamp(16px,3vw,24px)}.cute-memories-section{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center}.cute-memories-subtitle{text-align:center;font-size:.95rem;color:var(--text-mid);margin:20px 0 0;max-width:var(--prose-max-width);line-height:1.5}.cute-memories-booth{margin-bottom:24px;display:flex;flex-direction:column;align-items:center;width:100%}.cute-memories-booth-subtext{margin:0 0 16px;font-size:1rem;color:var(--text-mid);text-align:center}.cute-memories-booth-btn{display:inline-flex;align-items:center;gap:8px;padding:16px 28px;font-family:var(--font-playfair),serif;font-size:1.15rem;font-weight:600;color:#fff;background:linear-gradient(135deg,var(--accent),var(--accent-dark));border:none;border-radius:24px;box-shadow:0 12px 36px rgba(240,139,191,.4),0 4px 14px rgba(0,0,0,.1);cursor:pointer;transition:transform .25s ease,box-shadow .25s ease}.cute-memories-booth-btn:hover{transform:scale(1.04);box-shadow:0 16px 44px rgba(240,139,191,.45),0 6px 18px rgba(0,0,0,.12)}.cute-memories-camera{width:100%;max-width:420px;display:flex;flex-direction:column;align-items:center;gap:16px}.cute-memories-video-wrap{width:100%;border-radius:20px;overflow:hidden;box-shadow:0 12px 40px rgba(111,61,92,.2);border:2px solid hsla(0,0%,100%,.6);background:#000}.cute-memories-video{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;vertical-align:middle}.cute-memories-capture-hint{margin:0;font-size:1rem;color:var(--text-dark);font-weight:500}.cute-memories-capture-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.cute-memories-capture-btn{padding:12px 24px;font-size:.95rem;font-weight:600;color:#fff;background:linear-gradient(135deg,var(--accent),var(--accent-dark));border:none;border-radius:18px;box-shadow:0 6px 20px rgba(240,139,191,.35);cursor:pointer;transition:transform .2s ease,opacity .2s ease}.cute-memories-capture-btn:hover:not(:disabled){transform:scale(1.05)}.cute-memories-capture-btn:disabled{opacity:.6;cursor:default}.cute-memories-cancel-btn{padding:12px 20px;font-size:.95rem;color:var(--text-mid);background:hsla(0,0%,100%,.8);border:1px solid rgba(217,104,168,.3);border-radius:18px;cursor:pointer;transition:background .2s ease,transform .2s ease}.cute-memories-cancel-btn:hover{background:#fff;transform:scale(1.02)}.cute-memories-error{margin:12px 0 0;font-size:.9rem;color:var(--accent-dark);text-align:center;max-width:320px}.cute-memories-strip-wrap{width:100%;max-width:300px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:16px}.cute-memories-strip-frame{position:relative;width:100%;max-width:300px;aspect-ratio:3/4;max-height:400px;margin:0 auto;background:#1a1a1a;border-radius:12px;overflow:hidden;box-shadow:0 16px 48px rgba(0,0,0,.25),0 8px 24px rgba(111,61,92,.15)}.cute-memories-strip-slots{position:absolute;inset:0;display:flex;flex-direction:column;width:100%;height:100%}.cute-memories-strip-slot{flex:1 1;position:relative;overflow:hidden;min-height:0;min-width:0}.cute-memories-strip-slot img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 25%;display:block}.cute-memories-strip-overlay{position:absolute;inset:0;background:url(/assets/photostrip.png) 50%/contain no-repeat;pointer-events:none;z-index:2}.cute-memories-strip-retake{padding:10px 20px;font-size:.9rem;color:var(--text-mid);background:hsla(0,0%,100%,.8);border:1px solid rgba(217,104,168,.3);border-radius:16px;cursor:pointer;transition:background .2s ease,transform .2s ease}.cute-memories-strip-retake:hover{background:#fff;transform:scale(1.03)}.cute-memories-heart-wrap{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%}.cute-memories-heart{width:100%;max-width:320px;aspect-ratio:1;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;overflow:hidden;border-radius:50%;box-shadow:0 20px 56px rgba(111,61,92,.2),0 8px 24px rgba(0,0,0,.1),0 4px 12px rgba(0,0,0,.08);background:var(--bg-mid);margin:0 auto}.cute-memories-heart-grid{width:100%;height:100%;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);grid-gap:2px;gap:2px}.cute-memories-heart-cell{position:relative;overflow:hidden;min-width:0;min-height:0;opacity:.2;transform:translate(var(--cell-tx,0),var(--cell-ty,0));transition:transform .9s cubic-bezier(.34,1.15,.64,1),opacity .7s ease;transition-delay:var(--cell-delay,0s)}.cute-memories-heart-cell.heart-cell-visible{opacity:1;transform:translate(0)}.cute-memories-heart-cell img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}.final-magical-section{position:relative}.final-magical-ring{text-align:center;margin-bottom:48px}.final-magical-ring-above{margin:0 0 8px;font-size:.95rem;color:var(--text-mid);font-style:italic}.final-magical-ring-prompt{margin:0 0 20px;font-size:1.15rem;font-weight:600;color:var(--text-dark)}.final-magical-ring-btn{position:relative;display:inline-flex;flex-direction:column;align-items:center;gap:16px;border:none;background:none;cursor:pointer;padding:0}.final-magical-ring-box,.romantic-page .final-magical-section .final-magical-ring-box{display:block;width:100%;max-width:240px;height:auto;transition:transform .25s ease;border-radius:0!important;box-shadow:none!important;border:none!important;outline:none}.final-magical-ring-btn:not(.final-magical-ring-opened):hover .final-magical-ring-box{transform:scale(1.03)}.final-magical-ring-btn.final-magical-ring-opened{cursor:default;pointer-events:none}.final-magical-ring-box-open{animation:final-magical-ring-open .4s ease-out forwards}.final-magical-ring-inline-text-wrap{margin-top:20px}.final-magical-ring-text{margin:0;font-family:var(--font-playfair),serif;font-size:1.1rem;font-weight:600;color:var(--text-dark);padding:0;background:none;border-radius:0;box-shadow:none}.final-magical-ring-text.inline{display:inline-block;opacity:0;transform:translateY(10px) scale(.97);filter:brightness(.96);transition:opacity .35s ease,transform .35s ease,filter .35s ease}.final-magical-ring-text.inline.visible{opacity:1;transform:translateY(0) scale(1);filter:brightness(1)}.final-magical-ring-hint{font-size:.85rem;color:var(--text-mid);opacity:.9}@keyframes final-magical-glow{0%,to{box-shadow:0 8px 32px rgba(240,139,191,.2)}50%{box-shadow:0 8px 40px rgba(240,139,191,.4),0 0 24px rgba(240,139,191,.15)}}.final-magical-ring-overlay{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:24px;animation:final-magical-ring-overlay-in .5s ease}@keyframes final-magical-ring-overlay-in{0%{opacity:0}to{opacity:1}}.final-magical-ring-backdrop{position:absolute;inset:0;z-index:0;background:rgba(111,61,92,.42);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.final-magical-ring-sparkles{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}.final-magical-sparkle{position:absolute;width:8px;height:8px;border-radius:50%;background:rgba(255,220,240,.9);box-shadow:0 0 16px rgba(240,139,191,.8);animation:final-magical-sparkle-pulse 2s ease-in-out infinite}.final-magical-sparkle-1{top:18%;left:15%;animation-delay:0s}.final-magical-sparkle-2{top:22%;right:20%;animation-delay:.3s}.final-magical-sparkle-3{top:50%;left:8%;animation-delay:.6s}.final-magical-sparkle-4{top:55%;right:12%;animation-delay:.2s}.final-magical-sparkle-5{bottom:25%;left:22%;animation-delay:.5s}.final-magical-sparkle-6{bottom:20%;right:18%;animation-delay:.4s}@keyframes final-magical-sparkle-pulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.3)}}.final-magical-ring-center{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:24px;max-width:320px}.final-magical-ring-box-overlay{display:block;width:100%;max-width:200px;height:auto;animation:final-magical-ring-pop .6s ease}.final-magical-ring-text-overlay{margin:0;text-align:center;animation:final-magical-ring-text-in .8s ease .5s both}@keyframes final-magical-ring-pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}@keyframes final-magical-ring-open{0%{opacity:0;transform:scale(.88)}to{opacity:1;transform:scale(1)}}@keyframes final-magical-ring-text-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.final-magical-soundtrack{margin-bottom:20px}.final-magical-soundtrack .section-title{margin-bottom:12px}.final-magical-soundtrack .section-cute{margin-bottom:24px}.final-magical-songs-grid{display:grid;grid-gap:20px;gap:20px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));max-width:560px;margin:0 auto}.final-magical-songs-grid-7{grid-template-columns:repeat(2,1fr);max-width:520px;margin-left:auto;margin-right:auto}.final-magical-songs-grid-7 .final-magical-song-card-last{grid-column:1/-1;justify-self:center;max-width:240px}.final-magical-songs-grid-1{justify-items:center;max-width:280px}.final-magical-soundtrack-hint{font-size:.9rem;color:rgba(80,50,70,.75);text-align:center;max-width:420px;margin:0 auto;line-height:1.5}.final-magical-soundtrack-hint code{font-size:.85em;background:hsla(0,0%,100%,.5);padding:2px 6px;border-radius:6px}.final-magical-song-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:28px 20px;background:rgba(255,252,254,.9);border:1px solid hsla(0,0%,100%,.6);border-radius:20px;box-shadow:0 10px 32px rgba(111,61,92,.1),0 4px 12px rgba(0,0,0,.05);cursor:pointer;transition:transform .6s cubic-bezier(.34,1.1,.64,1),opacity .55s ease,box-shadow .25s ease;text-align:center}.final-magical-song-card:not(.song-card-visible){opacity:0;transform:translateY(28px);pointer-events:none}.final-magical-song-card.song-card-visible{opacity:1;transform:translateY(0)}.final-magical-song-card.song-card-visible:hover{transform:scale(1.04);box-shadow:0 12px 36px rgba(111,61,92,.18),0 4px 14px rgba(0,0,0,.08)}.final-magical-song-card.final-magical-song-card-selected{background:rgba(255,240,245,.98);border-color:rgba(196,30,58,.35);box-shadow:0 10px 32px rgba(111,61,92,.15),0 0 0 2px rgba(196,30,58,.2)}.final-magical-players-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:20px;gap:20px;max-width:700px;margin-left:auto;margin-right:auto}.final-magical-player-wrap{min-width:0;border-radius:12px;overflow:hidden;box-shadow:0 8px 24px rgba(0,0,0,.08)}.final-magical-player-wrap .final-magical-embed-iframe{display:block;width:100%;border-radius:12px}.final-magical-player-wrap-last{grid-column:1/-1;justify-self:center;max-width:352px}.final-magical-players-grid-1{max-width:352px;justify-items:center}.final-magical-song-label{font-family:var(--font-playfair),serif;font-size:1rem;font-weight:600;color:var(--text-dark)}.final-magical-song-hint{font-size:.8rem;color:var(--text-mid)}.final-magical-embed-overlay{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:20px;animation:final-magical-overlay-in .25s ease}@keyframes final-magical-overlay-in{0%{opacity:0}to{opacity:1}}.final-magical-embed-backdrop{position:absolute;inset:0;background:rgba(50,25,40,.6);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);cursor:pointer}.final-magical-embed-paper{position:relative;z-index:2;width:100%;max-width:400px;background:hsla(0,0%,100%,.96);border-radius:24px;box-shadow:0 24px 64px rgba(0,0,0,.2);padding:20px;overflow:hidden}.final-magical-embed-close{position:absolute;top:12px;right:12px;width:36px;height:36px;border:none;border-radius:50%;background:hsla(0,0%,100%,.95);box-shadow:0 2px 12px rgba(0,0,0,.1);color:var(--text-dark);font-size:1.5rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:3;transition:background .2s ease,transform .2s ease}.final-magical-embed-close:hover{background:#fff;transform:scale(1.08)}.final-magical-embed-iframe{display:block;width:100%;border-radius:12px}.share-trigger-wrap{text-align:center;padding:24px 20px 16px}.share-trigger-btn{display:inline-flex;align-items:center;gap:.35rem;padding:14px 28px;font-size:1rem;font-weight:600;color:var(--text-dark);background:linear-gradient(145deg,rgba(255,252,254,.95),rgba(253,240,248,.9));border:2px solid rgba(240,139,191,.35);border-radius:999px;box-shadow:0 6px 24px rgba(240,139,191,.15);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;-webkit-tap-highlight-color:transparent}.share-trigger-btn:hover{transform:translateY(-2px);box-shadow:0 10px 32px rgba(240,139,191,.22)}.share-modal-overlay{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(50,25,40,.5);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);animation:share-modal-backdrop-in .3s ease}@keyframes share-modal-backdrop-in{0%{opacity:0}to{opacity:1}}.share-modal-card{position:relative;width:100%;max-width:340px;padding:28px 24px;background:linear-gradient(160deg,rgba(255,252,254,.98),rgba(253,242,248,.95));border:1px solid hsla(0,0%,100%,.6);border-radius:24px;box-shadow:0 20px 56px rgba(111,61,92,.2),0 0 0 1px rgba(240,139,191,.08);animation:share-modal-card-in .35s cubic-bezier(.34,1.2,.64,1)}@keyframes share-modal-card-in{0%{opacity:0;transform:scale(.92) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}.share-modal-close{position:absolute;top:12px;right:12px;width:36px;height:36px;border-radius:50%;background:hsla(0,0%,100%,.9);box-shadow:0 2px 10px rgba(0,0,0,.08);color:var(--text-dark);display:flex;align-items:center;justify-content:center;transition:background .2s ease,transform .2s ease}.share-modal-close:hover{background:#fff;transform:scale(1.06)}.share-modal-title{margin:0 0 calc(48px - .5cm);text-align:center}.share-modal-qr-row{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:24px}.share-modal-qr-side-emoji .emoji-fallback,.share-modal-qr-side-emoji .emoji-img{width:2.1em!important;height:2.1em!important;min-width:2.1em!important;min-height:2.1em!important}.share-modal-qr-side-emoji{align-items:center}.share-modal-qr-side-emoji,.share-modal-qr-wrap{display:flex;justify-content:center;flex-shrink:0}.share-modal-qr{display:block;width:200px;height:200px;border-radius:12px;box-shadow:0 4px 20px rgba(111,61,92,.12)}.share-modal-actions{gap:14px}.share-modal-whatsapp-icon{margin-right:0}.share-modal-btn,.share-modal-whatsapp-icon{display:inline-flex;align-items:center;justify-content:center}.share-modal-btn{gap:120px;min-height:48px;padding:0 20px;font-size:1rem;border-radius:14px;transition:transform .2s ease,box-shadow .2s ease}.share-modal-copy .emoji-fallback,.share-modal-copy .emoji-img,.share-modal-save-qr .emoji-fallback,.share-modal-save-qr .emoji-img{width:22px!important;height:22px!important;min-width:22px!important;min-height:22px!important;flex-shrink:0}.share-modal-copy{background:linear-gradient(145deg,hsla(0,0%,100%,.95),rgba(253,245,250,.9));color:var(--text-dark);border:2px solid rgba(240,139,191,.3);box-shadow:0 4px 16px rgba(240,139,191,.1)}.share-modal-save-qr{background:linear-gradient(145deg,rgba(255,252,254,.95),rgba(248,240,252,.9));color:var(--text-dark);border:2px solid rgba(180,140,200,.35);box-shadow:0 4px 16px rgba(111,61,92,.1)}.share-modal-save-qr:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(111,61,92,.15)}.share-modal-copy:hover{box-shadow:0 6px 20px rgba(240,139,191,.15)}.share-modal-whatsapp{background:linear-gradient(145deg,#25d366,#128c7e);border:2px solid hsla(0,0%,100%,.25);box-shadow:0 4px 16px rgba(37,211,102,.25)}.final-magical-qr{text-align:center;padding:24px 0}.final-magical-qr-text{margin:0 0 8px;font-size:1.05rem;font-weight:500;color:var(--text-dark)}.final-magical-qr-subtext{margin:0 0 16px;font-size:.95rem;color:var(--text-mid)}.final-letter-above{margin:0 0 8px;font-size:.95rem;color:var(--text-mid);font-style:italic}.final-magical-qr-wrap{display:inline-flex;padding:16px;background:#fff;border-radius:20px;box-shadow:0 8px 32px rgba(111,61,92,.12)}.final-magical-qr-img{display:block;width:200px;height:200px;border-radius:8px}@media (max-width:480px){.final-magical-ring-box{max-width:200px}.final-magical-ring-text{font-size:1rem;padding:12px 16px}.final-magical-songs-grid{grid-template-columns:repeat(2,1fr);gap:12px}.final-magical-qr-img{width:160px;height:160px}}.gallery-item{border-radius:20px;box-shadow:0 8px 28px rgba(111,61,92,.1),0 2px 8px rgba(0,0,0,.06);transition:box-shadow .3s ease}.gallery-item:hover{box-shadow:0 12px 40px rgba(111,61,92,.14),0 4px 12px rgba(0,0,0,.08)}.gallery-item-polaroid .gallery-item-inner{background:#fff;padding:12px 12px 36px;border-radius:4px;box-shadow:0 8px 32px rgba(111,61,92,.12),0 4px 16px rgba(0,0,0,.08);transform:rotate(var(--polaroid-rotate,0deg));transition:transform .3s ease,box-shadow .3s ease}.gallery-item-polaroid:hover .gallery-item-inner{transform:rotate(var(--polaroid-rotate,0deg)) scale(1.02);box-shadow:0 12px 40px rgba(111,61,92,.15),0 6px 20px rgba(0,0,0,.1)}.gallery-item-polaroid .gallery-item-inner img{border-radius:2px;display:block;width:100%;height:200px;object-fit:cover}.polaroid-caption{display:block;height:20px;margin-top:8px}.gallery-item-inner{overflow:hidden}.gallery-item-caption{padding:12px 14px 14px;margin:0;font-size:.9rem;line-height:1.45;color:var(--text-dark);text-align:center;background:rgba(255,252,254,.95);border-top:1px solid rgba(240,139,191,.15);font-style:italic}.gallery-item-caption .emoji-fallback,.gallery-item-caption .emoji-img{width:1em!important;height:1em!important;max-width:1em!important;max-height:1em!important;min-width:1em;min-height:1em;display:inline-block;vertical-align:middle;object-fit:contain}.gallery-item-caption .emoji-fallback{font-size:1em}.gallery-item-polaroid .gallery-item-caption{background:hsla(0,0%,100%,.98);border-radius:0 0 4px 4px}.gallery-item:not(.gallery-item-polaroid) .gallery-item-inner img{width:100%;height:200px;object-fit:cover;border-radius:20px}.not-found-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:40px 6vw;background:radial-gradient(circle at top,var(--bg-start),var(--bg-mid),var(--bg-end))}.not-found-card{max-width:520px;width:100%;text-align:center;padding:48px 32px;background:var(--card);border:1px solid var(--card-border);backdrop-filter:blur(var(--blur));-webkit-backdrop-filter:blur(var(--blur));border-radius:var(--radius);box-shadow:var(--shadow-soft)}.not-found-card h1{font-size:clamp(1.8rem,3vw,2.4rem);margin:12px 0 16px}.not-found-card .cta{margin-top:24px;display:inline-block}.share-modal-backdrop{position:fixed;inset:0;z-index:100;background:rgba(50,25,40,.4);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:24px;animation:share-modal-in .25s ease}@keyframes share-modal-in{0%{opacity:0}to{opacity:1}}.share-modal{width:100%;max-width:380px;background:hsla(0,0%,100%,.95);backdrop-filter:blur(var(--blur));-webkit-backdrop-filter:blur(var(--blur));border:1px solid hsla(0,0%,100%,.5);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow);animation:share-modal-slide .3s ease}@keyframes share-modal-slide{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.share-modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.share-modal-title{font-family:var(--font-playfair),serif;font-size:1.25rem;font-weight:600;color:var(--text-dark);margin:0}.share-modal-close{width:32px;height:32px;border:none;background:transparent;color:var(--text-mid);font-size:1.5rem;line-height:1;cursor:pointer;border-radius:8px;transition:background .2s,color .2s;-webkit-tap-highlight-color:transparent}.share-modal-close:hover{background:rgba(217,104,168,.1);color:var(--text-dark)}.share-modal-sub{font-size:.9rem;color:var(--text-mid);margin:0 0 20px;line-height:1.5}.share-modal-actions{display:flex;flex-direction:column;gap:10px}.share-modal-btn{display:block;width:100%;padding:12px 20px;font-size:.9rem;font-weight:600;border-radius:12px;text-align:center;text-decoration:none;cursor:pointer;transition:transform .2s,box-shadow .2s;border:none;min-height:var(--touch-min);-webkit-tap-highlight-color:transparent}.share-modal-copy{background:linear-gradient(135deg,var(--accent),var(--accent-dark));color:#fff;box-shadow:0 4px 16px rgba(217,104,168,.25)}.share-modal-copy:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(217,104,168,.3)}.share-modal-whatsapp{background:#25d366;color:#fff;box-shadow:0 4px 16px rgba(37,211,102,.3)}.share-modal-whatsapp:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(37,211,102,.35)}.floating-hearts-burst{position:fixed;inset:0;z-index:60;pointer-events:none;overflow:hidden}.floating-heart-emoji{position:absolute;left:var(--origin-x,50%);top:var(--origin-y,50%);transform:translate(-50%,-50%) translateX(var(--tx,0));font-size:var(--size,20px);opacity:0;animation:float-heart-out var(--duration,1.5s) ease-out var(--delay,0s) forwards}@keyframes float-heart-out{0%{opacity:0;transform:translate(-50%,-50%) translateX(var(--tx,0)) scale(.3)}20%{opacity:1}to{opacity:0;transform:translate(-50%,-50%) translateX(var(--tx,0)) translateY(-120px) scale(1)}}.teddy-easter-egg{display:inline-block;background:none;border:none;padding:0;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .2s ease}.teddy-easter-egg:hover{transform:scale(1.08)}.teddy-easter-egg:active{transform:scale(.98)}.emotional-guide-wrap{margin:-8px 0}.emotional-guide-heading{font-family:var(--font-handwritten),cursive;font-size:1.4rem;font-weight:500;color:var(--text-mid);opacity:.88;text-align:center;margin:0;line-height:1.4}.why-he-made-this-wrap{margin:-24px 0 8px}.why-he-made-this{text-align:center;padding:0 6vw}.why-he-made-this-trigger{font-size:.8rem;color:var(--text-mid);opacity:.75;background:none;border:none;cursor:pointer;text-decoration:underline;text-underline-offset:3px;padding:8px 0;transition:color .2s,opacity .2s;-webkit-tap-highlight-color:transparent}.why-he-made-this-trigger:hover{color:var(--accent-dark);opacity:1}.why-he-made-this-note{max-width:42ch;margin:6px auto 0;padding:10px 16px 12px;background:hsla(0,0%,100%,.4);border:1px solid hsla(0,0%,100%,.5);border-radius:var(--radius-sm);box-shadow:var(--shadow-soft)}.why-he-made-this-note p{font-size:.9rem;line-height:1.65;color:var(--text-mid);margin:0}.romantic-page .section+.section:before{display:block;height:16px;margin-bottom:16px;background-image:linear-gradient(90deg,transparent,rgba(107,61,92,.12) 20%,rgba(217,104,168,.2) 50%,rgba(107,61,92,.12) 80%,transparent);background-size:100% 2px;background-position:center 50%;background-repeat:no-repeat;content:"♥";font-size:.65rem;color:rgba(217,104,168,.45);text-align:center;line-height:16px;letter-spacing:.1em}.section-screenshot-safe{padding-top:8px;padding-bottom:8px}.reveal{opacity:0;transform:translateY(20px);transition:opacity 1s ease-out,transform 1s ease-out}.reveal:not(.visible){pointer-events:none}.reveal.visible{opacity:1;transform:translateY(0)}.reveal.reveal-fade-up{transform:translateY(28px)}.reveal.reveal-fade-up.visible{transform:translateY(0)}.reveal.reveal-fade-in{transform:none}.reveal.reveal-slide-in{transform:translateX(-24px)}.reveal.reveal-slide-in.visible{transform:translateX(0)}.section-divider{width:100%;height:60px;color:hsla(0,0%,100%,.6);margin:-1px 0;flex-shrink:0;position:relative;display:flex;align-items:center;justify-content:center}.section-divider-emoji{position:absolute;font-size:1.2rem;opacity:.7;z-index:1;pointer-events:none}.section-divider svg{width:100%;height:100%;display:block;position:absolute;inset:0}.section-divider.flip svg{transform:scaleY(-1)}.flip-card{perspective:1000px;min-height:120px;cursor:pointer;transition:transform .4s ease,box-shadow .4s ease}.reason-grid .reason-stagger-wrap:nth-child(3n+1) .flip-card{transform:rotate(-1.2deg)}.reason-grid .reason-stagger-wrap:nth-child(3n+2) .flip-card{transform:rotate(.7deg)}.reason-grid .reason-stagger-wrap:nth-child(3n) .flip-card{transform:rotate(1deg)}.reason-grid .reason-stagger-wrap:nth-child(3n+1) .flip-card:hover{transform:rotate(-1.2deg) translateY(-8px);box-shadow:0 20px 50px rgba(111,61,92,.18)}.reason-grid .reason-stagger-wrap:nth-child(3n+2) .flip-card:hover{transform:rotate(.7deg) translateY(-8px);box-shadow:0 20px 50px rgba(111,61,92,.18)}.reason-grid .reason-stagger-wrap:nth-child(3n) .flip-card:hover{transform:rotate(1deg) translateY(-8px);box-shadow:0 20px 50px rgba(111,61,92,.18)}.flip-card-inner{position:relative;width:100%;height:100%;min-height:120px;transition:transform .6s cubic-bezier(.34,1.1,.64,1);transform-style:preserve-3d}.flip-card:focus-within .flip-card-inner,.flip-card:hover .flip-card-inner{transform:rotateY(180deg)}.flip-card-back,.flip-card-front{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:var(--radius-sm);padding:20px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:var(--card);border:1px solid var(--card-border);backdrop-filter:blur(var(--blur));-webkit-backdrop-filter:blur(var(--blur));box-shadow:var(--shadow-soft),0 4px 20px rgba(0,0,0,.06);pointer-events:none}.flip-card-back{transform:rotateY(180deg)}.flip-hint{font-size:.85rem;opacity:.85;margin-top:4px}.flip-preview{font-size:.9rem;margin-top:6px}.reason-flip .flip-card-inner{min-height:100px}.reason-stagger-wrap{opacity:0;transform:translateY(20px);animation:reason-stagger-in .55s ease forwards}@keyframes reason-stagger-in{to{opacity:1;transform:translateY(0)}}.reason-flip .flip-card-back,.reason-flip .flip-card-front{box-shadow:var(--shadow-soft),0 0 32px rgba(240,139,191,.08)}.letter-flip .flip-card-back,.letter-flip .flip-card-front{box-shadow:var(--shadow-soft),0 0 40px rgba(240,139,191,.12)}.letter-flip:focus-within .flip-card-back,.letter-flip:focus-within .flip-card-front,.letter-flip:hover .flip-card-back,.letter-flip:hover .flip-card-front{box-shadow:var(--shadow),0 0 48px rgba(240,139,191,.15)}.final-letter-wrap{position:relative;padding:48px 24px;border-radius:var(--radius)}.final-letter-wrap:before{content:"";position:absolute;inset:-20px;background:radial-gradient(ellipse 80% 60% at 50% 40%,rgba(240,139,191,.12) 0,rgba(246,232,248,.06) 45%,transparent 70%);pointer-events:none;border-radius:inherit}.final-letter-wrap .section-card{position:relative;z-index:1;animation:final-letter-fade 2.5s ease both}.final-letter-wrap .section-card.final-letter-card,.romantic-page .final-letter-card{max-width:640px;margin-left:auto;margin-right:auto;padding:40px;background:linear-gradient(180deg,#fefcfd,#fdf9fc);box-shadow:0 16px 48px rgba(111,61,92,.12),0 4px 16px rgba(0,0,0,.05),0 0 0 1px rgba(240,139,191,.08);border-radius:var(--radius);border:1px solid rgba(255,250,253,.9)}.final-letter-card{display:flex;flex-direction:column;gap:1rem}.final-letter-paragraph{margin:0;font-size:1.02rem;line-height:1.75;color:var(--text-mid);white-space:pre-line}.final-letter-paragraph:last-child{margin-top:.25rem;font-style:italic;color:var(--text-dark)}@keyframes final-letter-fade{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.section:has(.final-letter-wrap) .reveal{opacity:1;transform:none;pointer-events:auto}.section:has(.final-letter-wrap) .final-letter-wrap .section-card{animation:none;opacity:1;transform:none}}.gallery-item{overflow:hidden;cursor:pointer;border-radius:24px;box-shadow:var(--shadow-soft),0 0 32px rgba(240,139,191,.06);transition:transform .4s ease,box-shadow .4s ease;display:flex;flex-direction:column}.gallery-item:hover{transform:rotate(-1.5deg) scale(1.02);box-shadow:var(--shadow),0 0 48px rgba(240,139,191,.1)}.gallery-item:nth-child(2n):hover{transform:rotate(1.5deg) scale(1.02)}.gallery-item img{transition:transform .5s ease}.gallery-item:hover img{transform:scale(1.08)}.gallery-item.gallery-item-in-view img{animation:gallery-zoom-in 1s ease both}@keyframes gallery-zoom-in{0%{opacity:.85;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.lightbox-overlay{position:fixed;inset:0;z-index:100;background:rgba(50,25,40,.9);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:20px;cursor:pointer;animation:lightbox-fade .25s ease}@keyframes lightbox-fade{0%{opacity:0}to{opacity:1}}.lightbox-overlay img{max-width:100%;max-height:90vh;object-fit:contain;border-radius:12px;box-shadow:0 24px 80px rgba(0,0,0,.4);cursor:default;pointer-events:none}.gallery-memory-overlay{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:20px;cursor:pointer;animation:gallery-memory-overlay-in .35s ease}@keyframes gallery-memory-overlay-in{0%{opacity:0}to{opacity:1}}.gallery-memory-backdrop{position:absolute;inset:0;overflow:hidden;pointer-events:none}.gallery-memory-backdrop:after{content:"";position:absolute;inset:0;background:rgba(28,14,24,.78);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}.gallery-memory-backdrop img{position:absolute;inset:-10%;width:120%;height:120%;object-fit:cover;transform:scale(1.05);filter:blur(12px);opacity:.4}.gallery-memory-content{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:20px;max-width:min(420px,92vw);cursor:default;pointer-events:auto;animation:gallery-memory-content-in .4s ease}@keyframes gallery-memory-content-in{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}.gallery-memory-photo-wrap{width:100%;border-radius:20px;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.35),0 8px 24px rgba(111,61,92,.2);border:2px solid hsla(0,0%,100%,.4)}.gallery-memory-photo{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;vertical-align:middle}.gallery-memory-card{width:100%;padding:20px 24px;background:rgba(255,252,254,.96);border:1px solid hsla(0,0%,100%,.7);border-radius:20px;box-shadow:0 8px 32px rgba(240,139,191,.15),0 0 0 1px rgba(240,139,191,.06);text-align:center}.gallery-memory-line{margin:0;font-size:1.08rem;line-height:1.55;color:var(--text-dark);font-weight:500;letter-spacing:.01em;font-style:italic}.gallery-memory-line .emoji-fallback,.gallery-memory-line .emoji-img{width:1em!important;height:1em!important;max-width:1em!important;max-height:1em!important;min-width:1em;min-height:1em;display:inline-block;vertical-align:middle;object-fit:contain}.gallery-memory-line .emoji-fallback{font-size:1em}.gallery-memory-close{position:absolute;top:-12px;right:-12px;width:40px;height:40px;border:none;border-radius:50%;background:hsla(0,0%,100%,.95);box-shadow:0 4px 20px rgba(0,0,0,.15);color:var(--text-dark);font-size:1.6rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease,transform .2s ease}.gallery-memory-close:hover{background:#fff;transform:scale(1.08)}@media (max-width:480px){.gallery-memory-content{gap:16px;max-width:96vw}.gallery-memory-photo-wrap{border-radius:16px}.gallery-memory-card{padding:14px 18px}.gallery-memory-line{font-size:.98rem}.gallery-memory-close{top:4px;right:4px;width:36px;height:36px;font-size:1.4rem}}.section-future{position:relative;overflow:hidden;background:transparent}.section-future:before{content:"";position:absolute;inset:0;background-image:radial-gradient(1.5px 1.5px at 20px 30px,hsla(0,0%,100%,.5),transparent),radial-gradient(1px 1px at 80px 70px,rgba(253,242,250,.35),transparent),radial-gradient(1.5px 1.5px at 150px 120px,hsla(0,0%,100%,.4),transparent),radial-gradient(1px 1px at 220px 40px,rgba(252,235,245,.3),transparent),radial-gradient(1px 1px at 40px 160px,hsla(0,0%,100%,.35),transparent),radial-gradient(1.5px 1.5px at 180px 20px,rgba(253,242,250,.25),transparent),radial-gradient(1px 1px at 260px 90px,hsla(0,0%,100%,.4),transparent),radial-gradient(1px 1px at 100px 180px,rgba(252,235,245,.25),transparent);background-size:280px 220px;pointer-events:none;opacity:.85}.section-future .section-card,.section-future .section-title{position:relative;z-index:1}.section-future .section-title{margin-bottom:10px}.section-future .section-card{margin-top:4px}.section-title{font-size:clamp(1.9rem,2.6vw,2.8rem);letter-spacing:.02em;margin-bottom:4px}.hero h1{font-size:clamp(2.8rem,4.5vw,4.2rem);line-height:1.12;letter-spacing:.01em}.flip-card-back h3,.flip-card-front h3,.section-card h3{font-size:clamp(1rem,2.2vw,1.15rem);margin-bottom:8px}.signature{text-align:center;font-style:italic;color:var(--text-mid);font-size:1.1rem}@media (max-width:480px){.landing,.landing-saas{padding:20px 5vw 48px}.landing-header{padding:8px 0 32px}.landing-hero-saas{padding:16px 0 36px}.landing-headline{font-size:1.75rem}.landing-lead{font-size:.95rem;margin-bottom:24px}.landing-features-saas{padding:24px 0;gap:8px}.feature-pill{font-size:.8rem;padding:10px 12px}.create-page-saas{padding:16px 5vw 40px}.create-header-saas{padding:8px 0 24px}.create-card-saas{padding:20px 16px}.create-card-head h1{font-size:1.4rem}.create-card-sub{font-size:.85rem;margin-top:6px}.form-input-saas,.form-textarea-saas{padding:12px 14px;font-size:16px}.romantic-page{padding-inline:max(24px,var(--safe-left)) max(24px,var(--safe-right));padding-top:0;padding-bottom:24px}.romantic-page .section{margin-top:20px;margin-bottom:20px}.romantic-page .section:first-child{margin-top:0}.romantic-page .section+.section:before{margin-bottom:12px;height:12px;line-height:12px}.romantic-page-ending-fade{height:24px}.music-player-pill-wrap{bottom:max(16px,var(--safe-bottom));right:max(16px,var(--safe-right))}.hero{min-height:70vh;padding-top:max(64px,6vh)}.hero h1{font-size:2rem}.hero-grid{gap:20px}.unlock{padding:24px 5vw}.unlock-card{padding:24px 18px}.section-title{font-size:1.65rem}.section-card{padding:20px 18px}.romantic-page-wrap .memento-brand{top:max(12px,var(--safe-top));left:max(12px,var(--safe-left))}.romantic-page-wrap .memento-brand-text{font-size:1.75rem}.romantic-page-wrap .memento-curve-item{font-size:.85rem}.hero-music-float{top:max(12px,var(--safe-top));right:max(12px,var(--safe-right))}.hero-music-btn{width:44px;height:44px}.landing-how-it-works{padding:28px 0 24px}.landing-steps{gap:16px}.landing-step-text{font-size:.9rem}.landing-value-line{font-size:.85rem;padding:20px 0 12px}.feature-pill-with-desc{padding:12px 14px}.landing-feature-desc{font-size:.75rem}}@media (max-width:700px){.landing{padding:24px 6vw 60px}.form-row-saas{grid-template-columns:1fr}.create-card-saas{padding:24px 20px}.hero{min-height:auto}.romantic-page{gap:40px}.chapter-markers{display:none}.made-with-love-badge{bottom:12px;right:12px;font-size:.75rem;padding:6px 12px}.unlock-card{padding:28px 20px}.quiz-options{flex-direction:column}.report-card{max-width:100%}.quote-separator{padding:24px 6vw}.scroll-progress{height:3px}.romantic-page .section{margin-top:24px;margin-bottom:24px}.romantic-page .section+.section:before{margin-bottom:16px;height:16px;line-height:16px}.romantic-page-ending-fade{height:24px}.story-timeline{padding:0 8px}.story-timeline-point .story-timeline-card-inner,.story-timeline-point.story-timeline-right .story-timeline-card-inner{max-width:calc(100% - 24px)}.gallery-hero-item{max-width:100%}.little-things-cards-grid{grid-template-columns:repeat(3,1fr);gap:14px}.little-things-card-title{font-size:.85rem;padding:16px 10px 12px}.little-things-coupon-grid{grid-template-columns:repeat(2,1fr);gap:12px}.little-things-overlay-paper{padding:20px 18px 24px}.little-things-overlay-title{font-size:1.1rem}.cute-memories-strip-frame{max-height:360px}.cute-memories-heart{max-width:280px}.gallery-grid{gap:14px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.gallery-item-polaroid .gallery-item-inner img,.gallery-item:not(.gallery-item-polaroid) .gallery-item-inner img{height:160px}.landing-how-it-works{padding:32px 0 28px}}@media (min-width:701px){.landing-saas{padding:40px 8vw 100px}.landing-hero-saas{padding:32px 0 56px}.landing-features-saas{padding:40px 0;gap:12px}.create-page-saas{padding:32px 8vw 80px}.create-container-saas{max-width:560px}.create-card-saas{padding:40px 36px}.romantic-page{padding-inline:max(24px,var(--safe-left)) max(24px,var(--safe-right));padding-top:0;padding-bottom:24px;gap:56px;max-width:1100px;margin:0 auto}.section-card{padding:32px 28px}.unlock-card{padding:36px 32px;gap:22px}.landing-how-it-works{padding:48px 0 40px}.landing-steps{gap:24px}}@media (min-width:1024px){.landing-saas{max-width:780px;padding:48px 10vw 120px}.landing-headline{font-size:3rem}.landing-lead{font-size:1.05rem;max-width:48ch}.create-container-saas{max-width:600px}.romantic-page{max-width:1100px;gap:64px;padding-inline:max(24px,var(--safe-left)) max(24px,var(--safe-right));padding-top:0;padding-bottom:24px}.hero{min-height:85vh}.hero h1{font-size:3.5rem}.section-title{font-size:2.9rem}.gallery-grid{gap:20px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.gallery-item-polaroid .gallery-item-inner img,.gallery-item:not(.gallery-item-polaroid) .gallery-item-inner img{height:200px}}.memento-compress-overlay{position:fixed;inset:0;background:rgba(0,0,0,.28);display:flex;align-items:center;justify-content:center;z-index:80}.memento-compress-modal{background:radial-gradient(circle at top left,#ffe6f3 0,#fff 40%,#fdf3ff 100%);border-radius:18px;padding:18px 18px 16px;max-width:360px;width:calc(100% - 40px);box-shadow:0 18px 60px rgba(107,61,92,.28);border:1px solid hsla(0,0%,100%,.8)}.memento-compress-header{margin-bottom:10px}.memento-compress-title{font-size:1rem;font-weight:700;letter-spacing:.01em;color:var(--text-dark);margin:0}.memento-compress-body{display:flex;align-items:center;gap:12px;margin-bottom:14px}.memento-compress-spinner{width:28px;height:28px;border-radius:999px;border:3px solid rgba(230,186,214,.7);border-top-color:#e768a6;animation:memento-spin .9s linear infinite;flex-shrink:0}.memento-compress-visual{display:flex;flex-direction:column;align-items:center;gap:6px;margin-left:auto}.memento-compress-gif{width:70px;height:70px;object-fit:cover}.memento-compress-message{font-size:.9rem;color:var(--text-mid);margin:0;line-height:1.5}.memento-compress-close{width:100%;justify-content:center;margin-top:4px}.memento-compress-actions{display:flex;flex-direction:column;gap:8px;margin-top:4px}.memento-compress-confirm{width:100%;justify-content:center}@keyframes memento-spin{to{transform:rotate(1turn)}}