@import"https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,700;1,400&family=Inter:wght@300;400;500;600&family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap";@import"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200";:root{--color-bg: #0d0710;--color-surface: #1a0f1e;--color-surface-alt: #231428;--color-border: rgba(255, 107, 157, .15);--color-primary: #ff6b9d;--color-primary-glow: rgba(255, 107, 157, .35);--color-primary-dark: #e0547e;--color-accent: #b96bf5;--color-accent-glow: rgba(185, 107, 245, .35);--color-text: #f5e8f0;--color-text-muted: rgba(245, 232, 240, .55);--font-display: "Playfair Display", Georgia, serif;--font-body: "Inter", system-ui, sans-serif;--radius-sm: 8px;--radius-md: 14px;--radius-lg: 22px;--radius-full: 9999px;--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--ease-smooth: cubic-bezier(.4, 0, .2, 1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);background-color:var(--color-bg);color:var(--color-text);min-height:100dvh;-webkit-font-smoothing:antialiased}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--color-surface)}::-webkit-scrollbar-thumb{background:var(--color-primary);border-radius:var(--radius-full)}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.gradient-text{background:linear-gradient(135deg,var(--color-primary),var(--color-accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.glass{background:#ffffff0a;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--color-border)}.home-root{min-height:100dvh;display:flex;flex-direction:column;background:linear-gradient(180deg,#fdf7f8,#fff0f3 40%,#f8f6f6);color:#1b0d10;font-family:Plus Jakarta Sans,sans-serif;overflow-x:hidden}.home-nav{position:sticky;top:0;z-index:50;padding:14px 24px;width:100%;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#ffffffb3;border-bottom:1px solid rgba(255,255,255,.2)}.home-nav-inner{display:flex;align-items:center;justify-content:space-between;max-width:1200px;margin:0 auto;width:100%}.home-nav-brand{display:flex;align-items:center;gap:8px}.home-nav-logo{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:#ee2b4b;color:#fff;box-shadow:0 2px 8px #ee2b4b4d}.home-nav-logo .material-symbols-outlined{font-size:18px}.home-nav-title{font-size:18px;font-weight:800;letter-spacing:-.02em;color:#ee2b4be6}.home-nav-menu{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#f2ecee;border:none;cursor:pointer;transition:background .2s;color:#1b0d10;padding:0}.home-nav-menu:hover{background:#e8dfe2}.home-nav-menu .material-symbols-outlined{font-size:20px}.home-desktop-hero{display:none}.home-main{flex:1;display:flex;flex-direction:column;width:100%;max-width:448px;margin:0 auto;padding:24px 24px 16px;gap:28px}.home-preview-section{position:relative;z-index:10;width:100%}.home-preview-card{width:100%;aspect-ratio:4 / 3;border-radius:2rem;overflow:hidden;box-shadow:0 20px 60px #0000001f,0 4px 16px #0000000f;border:1px solid rgba(255,255,255,.6);background:#fff}.home-preview-inner{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#f9f6f7;position:relative;padding:24px}.home-preview-handle{position:absolute;top:16px;left:50%;transform:translate(-50%);width:64px;height:6px;border-radius:999px;background:#d1c4c8;opacity:.5}.home-preview-text{text-align:center;margin-bottom:24px}.home-preview-title{font-size:20px;font-weight:700;color:#1b0d10;margin-bottom:4px}.home-preview-subtitle{font-size:12px;color:#9c8589}.home-preview-buttons{display:flex;flex-direction:column;gap:12px;width:100%;max-width:200px;position:relative;height:112px;align-items:center}.home-btn-yes{width:100%;background:#ee2b4b;color:#fff;font-family:Plus Jakarta Sans,sans-serif;font-weight:700;font-size:14px;padding:12px 20px;border-radius:14px;border:none;cursor:pointer;box-shadow:0 4px 16px #ee2b4b59;transition:transform .15s,box-shadow .15s;z-index:10;position:relative}.home-btn-yes:active{transform:scale(.95)}.home-btn-no-wrapper{position:absolute;top:52px;width:100%;animation:run-away 3s ease-in-out infinite}.home-btn-no{width:100%;background:#fff;color:#b0a0a5;font-family:Plus Jakarta Sans,sans-serif;font-weight:700;font-size:14px;padding:12px 20px;border-radius:14px;border:1px solid #f0e8ea;cursor:default;pointer-events:none;box-shadow:0 2px 8px #0000000d}.home-preview-badge{position:absolute;bottom:16px;left:50%;transform:translate(-50%);background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#ffffffe6;font-size:10px;padding:6px 12px;border-radius:999px;font-weight:500;letter-spacing:.05em;display:flex;align-items:center;gap:4px;white-space:nowrap}.home-preview-badge-icon{font-size:12px;animation:pulse-icon 2s ease-in-out infinite}.home-cta-group{display:flex;flex-direction:column;align-items:flex-start;gap:16px;width:100%}.home-cta-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:12px;background:#ee2b4b;color:#fff;font-family:Plus Jakarta Sans,sans-serif;font-weight:700;font-size:18px;padding:18px 32px;border-radius:999px;border:none;cursor:pointer;animation:pulse-glow 3s infinite ease-in-out;transition:background .2s,transform .15s}.home-cta-btn:hover{background:#d61b3b}.home-cta-btn:active{transform:scale(.97)}.home-cta-icon{font-size:22px;transition:transform .2s}.home-cta-btn:hover .home-cta-icon{transform:translate(3px)}.home-cta-meta{display:flex;flex-direction:column;align-items:center;gap:4px;opacity:.7;width:100%;text-align:center}.home-cta-badges{display:flex;align-items:center;gap:8px;font-size:9px;color:#b0a0a5;font-weight:300;letter-spacing:.1em;text-transform:uppercase}.home-cta-badge{display:flex;align-items:center;gap:4px}.home-cta-badge-icon{font-size:10px}.home-cta-dot{color:#d0c0c4}.home-cta-disclaimer{font-size:9px;color:#ccc0c2;font-weight:300}.home-headline{text-align:center;padding:0 8px}.home-headline-title{font-size:clamp(28px,8vw,38px);font-weight:900;line-height:1.1;letter-spacing:-.02em;color:#111014;margin-bottom:16px}.home-headline-accent{color:#ee2b4b;position:relative;display:inline-block}.home-headline-underline{position:absolute;bottom:-4px;left:0;width:100%;height:3px;color:#ee2b4b4d}.home-headline-emoji{display:inline-block;color:#ee2b4b}.home-headline-sub{font-size:18px;color:#b0a4a8;font-weight:400;line-height:1.6;max-width:90%;margin:0 auto}.home-steps{padding:32px 24px 40px;max-width:448px;width:100%;margin:0 auto;box-sizing:border-box}.home-steps-title{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#6b2e3a;margin-bottom:20px;text-align:center}.home-steps-grid{display:flex;flex-direction:column;gap:16px}.home-step{display:flex;flex-direction:row;align-items:center;gap:16px;text-align:left;background:#fff9;border:1px solid rgba(238,43,75,.08);border-radius:16px;padding:16px;transition:box-shadow .2s,transform .2s}.home-step:hover{box-shadow:0 4px 20px #ee2b4b1a;transform:translateY(-1px)}.home-step-ring{background:linear-gradient(45deg,#ee2b4b,#ff4d6d,#ff8fa3);padding:2px;border-radius:50%;transition:transform .3s;box-shadow:0 4px 14px #ee2b4b33;flex-shrink:0}.home-step:hover .home-step-ring{transform:scale(1.05)}.home-step-icon-wrap{width:52px;height:52px;border-radius:50%;background:#fff;border:2px solid white;display:flex;align-items:center;justify-content:center;overflow:hidden}.home-step-icon{font-size:24px;color:#ee2b4b}.home-step-heart{width:28px;height:28px}.home-step-text{display:flex;flex-direction:column;gap:3px;flex:1}.home-step-label{font-size:13px;font-weight:700;color:#2a1519;letter-spacing:.01em;line-height:1.3}.home-step-desc{font-size:12px;color:#a08088;font-weight:400;line-height:1.5}.home-footer{text-align:center;padding:12px 24px 28px;border-top:1px solid rgba(238,43,75,.08);display:flex;flex-direction:column;align-items:center;gap:8px}.home-footer-links{display:flex;align-items:center;gap:10px;font-size:13px;color:#b0a0a5}.home-footer-link{color:#b0a0a5;text-decoration:none;font-weight:500;transition:color .2s}.home-footer-link:hover{color:#ee2b4b}.home-footer-dot{color:#d8cdd0;font-size:10px}.home-footer-copy{font-size:12px;color:#ccc0c2}@keyframes fadeInUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.home-nav{animation:fadeIn .3s ease both}.home-preview-section{animation:fadeInUp .4s ease both;animation-delay:.05s}.home-main>.home-cta-group{animation:fadeInUp .4s ease both;animation-delay:.18s}.home-headline{animation:fadeInUp .4s ease both;animation-delay:.28s}.home-desktop-left{animation:fadeInUp .45s ease both;animation-delay:.08s}.home-desktop-right{animation:fadeInUp .45s ease both;animation-delay:.2s}.home-steps-title{animation:fadeInUp .4s ease both;animation-delay:.3s}.home-step:nth-child(1){animation:fadeInUp .4s ease both;animation-delay:.38s}.home-step:nth-child(2){animation:fadeInUp .4s ease both;animation-delay:.48s}.home-step:nth-child(3){animation:fadeInUp .4s ease both;animation-delay:.58s}.home-footer{animation:fadeInUp .4s ease both;animation-delay:.64s}@keyframes run-away{0%,to{transform:translate(0)}25%{transform:translate(-40px,-20px)}50%{transform:translate(30px,40px)}75%{transform:translate(-20px,30px)}}@keyframes pulse-glow{0%,to{box-shadow:0 0 10px 2px #ee2b4b4d}50%{box-shadow:0 0 24px 10px #ee2b4b80}}@keyframes pulse-icon{0%,to{opacity:1}50%{opacity:.6}}.material-symbols-outlined{font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24}@media(min-width:900px){.home-main{display:none}.home-desktop-hero{display:flex;flex-direction:row;align-items:center;gap:64px;flex:1;max-width:1200px;width:100%;margin:0 auto;padding:60px 64px;box-sizing:border-box}.home-desktop-left{flex:1;display:flex;flex-direction:column;align-items:flex-start;gap:32px}.home-desktop-left .home-headline-title{font-size:clamp(40px,5vw,64px);text-align:left;margin-bottom:0}.home-desktop-left .home-headline-sub{font-size:18px;text-align:left;margin:0;max-width:420px}.home-desktop-left .home-cta-group{align-items:flex-start;width:auto}.home-desktop-left .home-cta-btn{width:auto;padding:18px 40px;font-size:18px}.home-desktop-left .home-cta-meta{align-items:flex-start}.home-desktop-right{flex:1;display:flex;align-items:center;justify-content:center;max-width:520px}.home-desktop-right .home-preview-card{width:100%;max-width:520px;aspect-ratio:4 / 3;border-radius:2.5rem}.home-desktop-right .home-preview-title{font-size:26px}.home-desktop-right .home-preview-subtitle{font-size:14px}.home-desktop-right .home-preview-buttons{max-width:260px;height:130px}.home-desktop-right .home-btn-yes,.home-desktop-right .home-btn-no{font-size:16px;padding:14px 24px;border-radius:16px}.home-desktop-right .home-btn-no-wrapper{top:60px}.home-steps{max-width:1200px;padding:0 64px 24px}.home-steps-title{text-align:left}.home-steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.home-step{flex-direction:column;align-items:flex-start;text-align:left;gap:14px;padding:20px;border-radius:20px}.home-step-icon-wrap{width:60px;height:60px}.home-step-icon{font-size:28px}.home-step-heart{width:32px;height:32px}.home-step-label{font-size:15px}.home-step-desc{font-size:13px}.home-footer{max-width:100%}}.builder-page{min-height:100dvh;background:linear-gradient(180deg,#fff5f5,#fff0f2);color:#1b0d10;display:flex;flex-direction:column;font-family:var(--font-body);position:relative;overflow-x:hidden}.builder-topbar{display:flex;align-items:center;gap:12px;padding:16px 20px 8px;position:sticky;top:0;z-index:10;background:#fff5f5d9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.builder-back-btn{background:#fff;border:none;color:#1b0d10;font-size:1.1rem;cursor:pointer;width:40px;height:40px;border-radius:50%;transition:all .2s;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #0000000f;flex-shrink:0}.builder-back-btn:hover{background:#f3e7e9;box-shadow:0 4px 12px #0000001a;transform:scale(1.05)}.builder-back-btn:active{transform:scale(.95)}.builder-back-btn:disabled{opacity:.35;cursor:not-allowed;box-shadow:none}.builder-progress-wrapper{flex:1;display:flex;align-items:center;gap:8px}.builder-progress-bar{flex:1;height:6px;background:#e7cfd3;border-radius:99px;overflow:hidden;position:relative}.builder-progress-fill{height:100%;background:#ee2b4b;border-radius:99px;transition:width .4s cubic-bezier(.34,1.56,.64,1);box-shadow:0 0 8px #ee2b4b4d}.builder-progress-text{font-size:.75rem;font-weight:600;color:#ee2b4b;min-width:36px;text-align:right}.builder-step-dots{display:flex;gap:6px;justify-content:center;padding:4px 0 12px}.builder-dot{width:10px;height:10px;border-radius:50%;background:#ee2b4b33;transition:all .3s ease;cursor:pointer;border:none;padding:0}.builder-dot.active{background:#ee2b4b;width:24px;border-radius:99px;box-shadow:0 0 6px #ee2b4b4d}.builder-dot.completed{background:#ee2b4b}.builder-dot.skipped{background:#ee2b4b40}.builder-content{flex:1;display:flex;flex-direction:column;padding:0 20px 100px;overflow-y:auto;animation:builderFadeIn .25s ease both}.itinerary-preview-basic,.gif-message-preview{width:100%;display:flex;flex-direction:column;align-items:center;gap:8px;padding:4px}.itinerary-preview-items{width:100%;display:flex;flex-direction:column;gap:6px}.itinerary-preview-item{display:flex;justify-content:space-between;align-items:center;padding:6px 12px;background:#fff;border:1px solid rgba(0,0,0,.05);border-radius:10px;font-size:.8rem}.itinerary-preview-item span{font-weight:600;color:#1b0d10}.itinerary-preview-item small{color:#ee2b4b;font-weight:700}.itinerary-preview-more{font-size:.7rem;color:#1b0d1066;font-style:italic;text-align:center;margin-top:2px}.gif-message-preview .preview-gif{border-radius:12px;box-shadow:0 4px 12px #00000014}.builder-step{display:flex;flex-direction:column;gap:20px;align-items:center;max-width:480px;width:100%;margin:0 auto}@keyframes builderFadeIn{0%{opacity:0}to{opacity:1}}@keyframes builderFadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes builderFadeInScale{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes builderSlideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.builder-topbar{animation:builderFadeIn .3s ease both}.builder-step-dots{animation:builderFadeIn .35s ease both;animation-delay:.05s}.builder-step-title{animation:builderFadeInUp .4s ease both;animation-delay:.1s}.builder-step-subtitle{animation:builderFadeInUp .4s ease both;animation-delay:.18s}.invite-preview-mini,.gif-step-simulation{animation:builderFadeInScale .45s cubic-bezier(.34,1.56,.64,1) both;animation-delay:.22s}.builder-input-group{animation:builderFadeInUp .4s ease both;animation-delay:.32s}.theme-step-grid,.gif-grid,.post-yes-cards-container,.theme-step-options,.itinerary-editor{animation:builderFadeInUp .4s ease both;animation-delay:.35s}.review-step{animation:builderFadeInUp .45s ease both;animation-delay:.15s}.builder-bottom-nav{animation:builderSlideUp .4s ease both;animation-delay:.38s}.builder-step-title{font-family:var(--font-display);font-size:1.6rem;font-weight:700;color:#1b0d10;text-align:center;margin-bottom:4px;letter-spacing:-.02em}.builder-step-subtitle{font-size:.9rem;color:#1b0d1080;text-align:center;margin-top:-12px}.builder-bottom-nav{position:fixed;bottom:0;left:0;right:0;display:flex;gap:12px;padding:20px 24px;padding-bottom:max(20px,env(safe-area-inset-bottom));background:transparent;z-index:10}.builder-bottom-nav-inner{width:100%;display:flex;align-items:center;gap:12px}.builder-btn-skip{flex:0 0 auto;padding:8px 12px;border:none;background:transparent;color:#000;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s;text-decoration:underline;text-underline-offset:3px;text-decoration-color:#1b0d101a;text-shadow:0 1px 3px rgba(255,255,255,.9),0 0 10px rgba(255,255,255,.5);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:#ffffff4d;border-radius:12px}.builder-btn-skip:hover{color:#ee2b4b;text-decoration-color:#ee2b4b4d}.builder-btn-skip:active{transform:scale(.95);opacity:.7}.builder-btn-next{flex:1;padding:18px 28px;border:none;border-radius:99px;background:#ee2b4b;color:#fff;font-size:1rem;font-weight:700;letter-spacing:.02em;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 8px 24px #ee2b4b66;position:relative;overflow:hidden}.builder-btn-next:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);opacity:0;transition:opacity .3s}.builder-btn-next:hover:before{opacity:1}.builder-btn-next:hover{transform:translateY(-1px);box-shadow:0 10px 28px #ee2b4b80}.builder-btn-next:active{transform:scale(.98)}.invite-preview-mini{width:100%;max-width:360px;background:#fff;border-radius:24px;padding:32px 24px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px;box-shadow:0 4px 24px #0000000a;position:relative;border:1px solid rgba(0,0,0,.04)}.preview-highlight{position:relative;border:2px dashed #ee2b4b;border-radius:12px;padding:8px 12px;animation:highlightPulse 2s ease-in-out infinite}@keyframes highlightPulse{0%,to{border-color:#ee2b4b}50%{border-color:#e7cfd3}}.preview-highlight-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:#ee2b4b;color:#fff;font-size:.7rem;font-weight:600;padding:3px 12px;border-radius:99px;white-space:nowrap;letter-spacing:.02em;z-index:30}.preview-edit-icon{position:absolute;top:-8px;right:-8px;width:28px;height:28px;background:#ee2b4b;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;box-shadow:0 2px 8px #ee2b4b4d;z-index:30}.preview-dimmed{opacity:.35;filter:blur(1px);pointer-events:none;transition:all .3s}.preview-name{font-family:var(--font-display);font-size:1.5rem;font-weight:700;color:#1b0d10}.preview-gif{width:120px;height:120px;border-radius:16px;object-fit:cover;background:#0000000a}.preview-question{font-family:var(--font-display);font-size:1.15rem;color:#ee2b4b;font-weight:600}.preview-optional-msg{font-size:.85rem;color:#2d1f3d99;font-style:italic}.preview-yes-btn{background:#ee2b4b;color:#fff;border:none;padding:12px 40px;border-radius:99px;font-size:1rem;font-weight:700;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 4px 16px #ee2b4b26;cursor:default}.preview-no-btn{background:transparent;color:#e7cfd3;border:none;padding:10px 28px;border-radius:99px;font-size:.9rem;cursor:default}.builder-input-group{width:100%;display:flex;flex-direction:column;gap:6px}.builder-input-label{font-size:.82rem;font-weight:600;color:#1b0d10;text-transform:uppercase;letter-spacing:.05em;padding-left:8px}.builder-input{width:100%;padding:18px 24px;border:none;border-radius:99px;background:#fff;font-size:1rem;color:#1b0d10;outline:none;transition:box-shadow .2s,transform .2s;font-family:var(--font-body);box-shadow:0 1px 4px #0000000a,inset 0 0 0 1px #0000000d}.builder-input:focus{box-shadow:0 0 0 2px #ee2b4b40;transform:scale(1.02)}.builder-input::placeholder{color:#1b0d1040}.builder-textarea{resize:vertical;min-height:80px;border-radius:16px}.gif-step-simulation{width:100%;max-width:360px;background:#fff;border-radius:20px;padding:24px 20px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px;box-shadow:0 4px 24px #0000000a;border:1px solid rgba(0,0,0,.04)}.gif-step-simulation .sim-gif{width:100px;height:100px;border-radius:14px;object-fit:cover;background:#0000000a;border:2px solid rgba(255,107,157,.2)}.gif-step-simulation .sim-question{font-family:var(--font-display);font-size:1rem;color:#2d1f3d;font-weight:600}.gif-step-simulation .sim-yes-btn{background:#ee2b4b;color:#fff;box-shadow:0 4px 12px #ee2b4b4d;border:none;padding:10px 32px;border-radius:99px;font-size:.9rem;font-weight:700;transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.gif-step-simulation .sim-no-btn{background:#0000000f;color:#888;border:none;padding:8px 24px;border-radius:99px;font-size:.85rem;cursor:pointer;transition:all .2s}.gif-step-simulation .sim-no-btn:hover{background:#0000001a;border-color:transparent}.gif-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;width:100%}.gif-slot{background:#fff;border:1.5px solid rgba(0,0,0,.06);border-radius:16px;padding:12px;display:flex;flex-direction:column;align-items:center;gap:8px;position:relative;cursor:pointer;transition:all .2s;box-shadow:0 2px 8px #00000008}.gif-slot:hover{border-color:#ee2b4b;background:#ee2b4b08}.gif-slot-label{font-size:.65rem;font-weight:700;text-transform:uppercase;color:#ee2b4b;letter-spacing:.06em}.gif-slot img{width:100%;aspect-ratio:1;border-radius:10px;object-fit:cover;background:#0000000a}.gif-slot-caption{font-size:.7rem;color:#2d1f3d80;font-weight:500}.gif-slot-edit{position:absolute;top:8px;right:8px;width:24px;height:24px;background:#00000080;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.65rem;border:none;cursor:pointer}.gif-url-input{width:100%;padding:10px 12px;border:1.5px solid rgba(238,43,75,.2);border-radius:10px;background:#fff;font-size:.8rem;color:#1b0d10;outline:none}.gif-url-input:focus{border-color:#ee2b4b;box-shadow:0 0 0 2px #ee2b4b1a}.gif-edit-modal-overlay{position:fixed;inset:0;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;display:flex;align-items:center;justify-content:center;padding:20px}.gif-edit-modal{background:#fff;border-radius:24px;width:100%;max-width:400px;padding:24px;box-shadow:0 10px 40px #0000001a;display:flex;flex-direction:column;gap:16px;animation:builderFadeInScale .3s cubic-bezier(.34,1.56,.64,1) both}.gif-modal-header{display:flex;flex-direction:column;gap:4px}.gif-modal-title{font-family:var(--font-display);font-size:1.25rem;font-weight:700;color:#1b0d10}.gif-modal-desc{font-size:.85rem;color:#1b0d1099}.gif-modal-section{display:flex;flex-direction:column;gap:8px}.gif-modal-label{font-size:.75rem;font-weight:700;text-transform:uppercase;color:#ee2b4b;letter-spacing:.05em}.gif-modal-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.gif-modal-chip{background:#ee2b4b14;color:#ee2b4b;border:1px solid rgba(238,43,75,.15);padding:4px 10px;border-radius:99px;font-size:.75rem;cursor:pointer;transition:all .2s}.gif-modal-chip:hover{background:#ee2b4b26}.gif-modal-preview{display:flex;flex-direction:column;align-items:center;gap:12px;padding:16px;background:#00000005;border-radius:16px;border:1px dashed rgba(0,0,0,.1)}.gif-modal-preview img{width:100px;height:100px;border-radius:12px;object-fit:cover}.gif-modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:8px}.gif-modal-btn{padding:10px 20px;border-radius:99px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s}.gif-modal-btn-cancel{background:transparent;color:#1b0d10;border:1px solid rgba(0,0,0,.1)}.gif-modal-btn-save{background:#ee2b4b;color:#fff;border:none;box-shadow:0 4px 12px #ee2b4b4d}.theme-step-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:10px;width:100%}.theme-step-card{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 8px;border:1.5px solid rgba(0,0,0,.06);border-radius:14px;background:#fff;color:#1b0d10;cursor:pointer;font-size:.8rem;transition:all .2s;box-shadow:0 2px 8px #00000008}.theme-step-card:hover{border-color:#ee2b4b;transform:translateY(-2px)}.theme-step-card.selected{border-color:#ee2b4b;box-shadow:0 0 0 2px #ee2b4b33;background:#ee2b4b0a}.theme-step-preview{width:40px;height:40px;border-radius:50%;background:var(--preview)}.theme-step-options{width:100%;display:flex;flex-direction:column;gap:12px}.theme-step-toggle{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;background:#fff;border:1.5px solid rgba(0,0,0,.06);border-radius:99px;font-size:.95rem;color:#1b0d10;box-shadow:0 2px 8px #00000008}.theme-step-toggle input[type=checkbox]{width:20px;height:20px;accent-color:#ee2b4b;cursor:pointer}.review-step{width:100%;max-width:480px}.review-completion{text-align:center;padding:20px;background:#fff;border-radius:20px;box-shadow:0 4px 20px #0000000a;margin-bottom:20px}.review-percent{font-size:2.5rem;font-weight:800;color:#ee2b4b;line-height:1}.review-percent-label{font-size:.85rem;color:#1b0d1080;margin-top:4px}.review-sections{display:flex;flex-direction:column;gap:8px}.review-section-item{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;background:#fff;border:1.5px solid rgba(0,0,0,.04);border-radius:16px;cursor:pointer;transition:all .2s;box-shadow:0 2px 8px #00000008}.review-section-item:hover{border-color:#ee2b4b;background:#ee2b4b08}.review-section-left{display:flex;align-items:center;gap:10px}.review-section-status{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem}.review-section-status.done{background:#e8f5e9;color:#4caf50}.review-section-status.skipped{background:#fff3e0;color:#ff9800}.review-section-name{font-size:.9rem;font-weight:500;color:#1b0d10}.review-section-arrow{color:#1b0d104d;font-size:1rem}.post-yes-cards-container{display:flex;flex-direction:column;gap:20px;width:100%;margin-top:10px}.post-yes-format-card{position:relative;background:#fff;border-radius:20px;padding:24px;border:none;text-align:left;cursor:pointer;box-shadow:0 4px 20px #0000000d;transition:all .25s cubic-bezier(.34,1.56,.64,1);display:flex;flex-direction:column;gap:16px;width:100%}.post-yes-format-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #00000014}.post-yes-format-card:active{transform:scale(.98)}.post-yes-format-card.selected{transform:scale(1.02);background:#fff8f9;box-shadow:0 8px 32px #ee2b4b1a}.format-card-check{position:absolute;top:16px;right:16px;color:#ee2b4b;display:flex;align-items:center;justify-content:center;animation:builderFadeInScale .2s ease both}.format-card-check .material-symbols-outlined{font-size:1.5rem;font-weight:600}.format-card-header{display:flex;flex-direction:column;gap:4px}.format-card-header h3{margin:0;font-family:var(--font-display);font-size:1.25rem;color:#1b0d10;font-weight:700}.format-card-header p{margin:0;font-size:.85rem;color:#1b0d1099}.format-card-preview-wrapper{background:#fdfafb;border-radius:16px;padding:16px;border:1px solid rgba(0,0,0,.03);display:flex;flex-direction:column;align-items:center;gap:12px}.format-card-preview-label{background:#fff;padding:4px 12px;border-radius:99px;font-size:.75rem;font-weight:600;color:#ee2b4b;box-shadow:0 2px 8px #0000000a}.change-format-btn{background:#fff;border:1px solid rgba(0,0,0,.08);color:#1b0d10;font-size:.85rem;font-weight:600;cursor:pointer;padding:8px 16px;border-radius:99px;transition:all .2s cubic-bezier(.34,1.56,.64,1);display:flex;align-items:center;gap:6px;box-shadow:0 2px 8px #0000000a}.change-format-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000000f;background:#fff8f9;border-color:#ee2b4b26}.change-format-btn:active{transform:scale(.97)}.itinerary-editor{width:100%;display:flex;flex-direction:column;padding-left:20px}.itinerary-item{position:relative;padding-bottom:24px;padding-left:16px}.itinerary-item:before{content:"";position:absolute;left:0;top:24px;bottom:-4px;width:2px;background:#f0e6e8;z-index:1}.itinerary-item:last-of-type:before{display:none}.itinerary-timeline-dot{position:absolute;left:-4px;top:14px;width:10px;height:10px;background:#fff;border:2px solid #ee2b4b;border-radius:50%;z-index:2;transition:all .2s}.itinerary-item:hover .itinerary-timeline-dot,.itinerary-item.expanded .itinerary-timeline-dot{background:#ee2b4b;transform:scale(1.2)}.timeline-card{background:#fff;border-radius:16px;box-shadow:0 2px 12px #00000008;border:1px solid rgba(0,0,0,.02);cursor:pointer;transition:all .3s cubic-bezier(.34,1.56,.64,1);overflow:hidden;display:flex;flex-direction:column}.itinerary-item:not(.expanded) .timeline-card:hover{transform:translateY(-1px);box-shadow:0 4px 16px #0000000d}.timeline-card-collapsed{display:flex;flex-direction:row;align-items:center;text-align:left;gap:16px;padding:16px}.timeline-emoji{font-size:1.4rem;background:#00000005;border-radius:12px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.timeline-summary{flex:1;display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:4px}.timeline-header{display:flex;align-items:center;gap:8px}.timeline-time{font-size:.75rem;font-weight:700;color:#ee2b4b;letter-spacing:.02em}.timeline-title{font-family:var(--font-display);font-weight:600;font-size:.95rem;color:#1b0d10}.timeline-desc{font-size:.8rem;color:#1b0d1080;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.itinerary-item.expanded{z-index:10}.itinerary-item.expanded .timeline-card{transform:scale(1.02);box-shadow:0 12px 32px #ee2b4b1f;border-color:#ee2b4b4d}.timeline-card-expanded{display:flex;flex-direction:column;gap:12px;padding:16px;background:snow;border:1px solid rgba(238,43,75,.1);border-radius:16px}.timeline-edit-header{display:flex;justify-content:space-between;align-items:center}.timeline-emoji-btn{font-size:1.4rem;background:#fff;border:1px solid rgba(0,0,0,.06);border-radius:12px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;box-shadow:0 2px 4px #00000005}.timeline-emoji-btn:hover{border-color:#ee2b4b4d;transform:scale(1.05)}.timeline-delete-btn{background:none;border:none;color:#1b0d104d;font-size:1.2rem;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;border-radius:50%;width:32px;height:32px}.timeline-delete-btn:hover{background:#ee2b4b0d;color:#ee2b4b}.timeline-input-group{display:flex;flex-direction:column;gap:8px}.timeline-input-row{display:flex;gap:8px}.timeline-input-time{flex:0 0 100px}.timeline-input{width:100%;padding:10px 12px;border:1px solid rgba(0,0,0,.06);border-radius:10px;font-size:.9rem;color:#1b0d10;background:#fff;outline:none;transition:all .2s}.timeline-input:focus{border-color:#ee2b4b;box-shadow:0 0 0 3px #ee2b4b14}.timeline-input::placeholder{color:#1b0d104d}.timeline-textarea{resize:none;height:52px}.timeline-char-counter{text-align:right;font-size:.7rem;color:#1b0d1066;margin-top:2px;padding-right:4px}.itinerary-add-btn{display:flex;align-items:center;gap:8px;padding:12px 16px;margin-left:16px;margin-top:8px;border:1.5px dashed rgba(238,43,75,.2);border-radius:99px;background:#ee2b4b0d;color:#ee2b4b;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s;width:fit-content;box-shadow:0 2px 8px #ee2b4b0d}.itinerary-add-btn:hover{border-color:#ee2b4b;background:#ee2b4b0a;transform:translateY(-1px)}.itinerary-add-btn:active{transform:scale(.97)}.builder-music-toggle{position:fixed;bottom:90px;right:20px;width:44px;height:44px;border-radius:50%;background:#fff;border:1.5px solid rgba(0,0,0,.08);display:flex;align-items:center;justify-content:center;font-size:1.2rem;cursor:pointer;box-shadow:0 4px 12px #00000014;z-index:11;transition:all .2s}.builder-music-toggle:hover{transform:scale(1.05);box-shadow:0 6px 16px #0000001f}.preset-chips{width:100%;display:flex;flex-direction:column;gap:4px;align-items:center;animation:builderFadeInUp .4s ease both;animation-delay:.28s}.preset-chips-row{width:100vw;margin-left:-20px;margin-right:-20px;display:flex;overflow-x:auto;gap:8px;padding:4px 12px;scroll-padding-inline:12px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.preset-chips-row:after{content:"";padding-right:1px}.preset-chips-row::-webkit-scrollbar{display:none}.preset-chips-row>*{scroll-snap-align:start;flex-shrink:0}.preset-chips-label{width:100%;font-size:.78rem;font-weight:600;color:#1b0d1073;text-transform:uppercase;letter-spacing:.06em;text-align:center;margin-bottom:-2px}.preset-chip{display:inline-flex;align-items:center;gap:4px;padding:10px 18px;border-radius:99px;background:#fff;border:1.5px solid rgba(0,0,0,.06);color:#1b0d10;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s;box-shadow:0 1px 4px #00000008;white-space:nowrap;font-family:var(--font-body);line-height:1.3}.preset-chip:hover{border-color:#ee2b4b4d;background:#ee2b4b08;transform:translateY(-1px);box-shadow:0 3px 10px #0000000f}.preset-chip:active{transform:scale(.97)}.preset-chip.selected{background:#ee2b4b;color:#fff;border-color:#ee2b4b;box-shadow:0 4px 14px #ee2b4b4d;font-weight:600}.preset-chip.selected:hover{background:#d61b3b;border-color:#d61b3b}.builder-input-wrapper{width:100%;position:relative}.builder-char-counter{font-size:.72rem;font-weight:500;color:#1b0d1059;text-align:right;margin-top:4px;padding-right:8px;transition:color .2s}.builder-char-counter.near-limit{color:#e67e22}.builder-char-counter.at-limit{color:#ee2b4b;font-weight:600}.preset-or-label{width:100%;display:flex;align-items:center;gap:12px;font-size:.75rem;font-weight:500;color:#1b0d104d;text-transform:uppercase;letter-spacing:.08em}.preset-or-label:before,.preset-or-label:after{content:"";flex:1;height:1px;background:#1b0d1014}@media(min-width:768px){.builder-content{padding:0 40px}.builder-bottom-nav{max-width:520px;left:50%;transform:translate(-50%);border-radius:20px 20px 0 0}}.theme-view-toggle{display:flex;background:#0000000d;padding:4px;border-radius:99px;margin-bottom:8px}.toggle-btn{padding:8px 20px;border-radius:99px;border:none;background:transparent;font-size:.85rem;font-weight:600;color:#00000080;cursor:pointer;transition:all .2s}.toggle-btn.active{background:#fff;color:#1b0d10;box-shadow:0 2px 8px #0000000d}.theme-live-preview{width:100%;max-width:360px;border-radius:24px;padding:32px 24px;box-shadow:0 8px 32px #00000014;transition:background .3s ease;display:flex;flex-direction:column;align-items:center;position:relative;margin-bottom:80px}.bg-particle-dynamic{position:absolute;bottom:-20px;pointer-events:none;animation:particle-pop .6s ease-out forwards,particle-drift var(--duration) linear forwards .6s;will-change:transform,opacity}@keyframes particle-pop{0%{transform:scale(0) rotate(0);opacity:0}50%{transform:scale(1.2) rotate(10deg);opacity:.8}to{transform:scale(1) rotate(-5deg);opacity:.6}}@keyframes particle-drift{to{transform:translateY(-80vh) translate(var(--drift-x)) rotate(var(--drift-rotation));opacity:0}}.theme-live-preview>*{z-index:1}.theme-dock-container{position:fixed;bottom:calc(100px + env(safe-area-inset-bottom));left:50%;transform:translate(-50%);z-index:20;display:flex;flex-direction:column;align-items:center}.theme-dock{display:flex;gap:12px;background:#ffffffd9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:10px 16px;border-radius:99px;box-shadow:0 8px 32px #0000001a;border:1px solid rgba(255,255,255,.4)}.dock-btn{display:flex;flex-direction:column;align-items:center;gap:4px;background:transparent;border:none;padding:8px 12px;border-radius:16px;cursor:pointer;transition:all .2s;min-width:72px}.dock-btn:hover{background:#0000000a}.dock-btn.open{background:#ee2b4b;color:#fff}.dock-btn.open .dock-label{color:#fff}.dock-btn.has-value .dock-icon:after{content:"";position:absolute;top:-2px;right:-2px;width:6px;height:6px;background:#ee2b4b;border-radius:50%}.dock-btn.open.has-value .dock-icon:after{background:#fff}.dock-icon{font-size:1.5rem;position:relative;line-height:1}.dock-label{font-size:.65rem;font-weight:600;color:#1b0d1099;text-transform:uppercase;letter-spacing:.02em}.theme-popup{position:absolute;bottom:calc(100% + 16px);background:#fff;border-radius:20px;padding:16px;box-shadow:0 12px 40px #00000026;border:1px solid rgba(0,0,0,.05);width:max-content;min-width:280px;max-width:90vw}.popup-animate{animation:popupEnter .25s cubic-bezier(.34,1.56,.64,1) both;transform-origin:bottom center}@keyframes popupEnter{0%{opacity:0;transform:translateY(12px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.popup-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.popup-item{display:flex;flex-direction:column;align-items:center;gap:6px;background:transparent;border:none;padding:8px 4px;border-radius:12px;cursor:pointer;transition:all .2s}.popup-item:hover{background:#00000008}.popup-item.selected{background:#ee2b4b14}.popup-item-preview{width:32px;height:32px;border-radius:50%;box-shadow:0 2px 8px #0000001a}.popup-item.selected .popup-item-preview{box-shadow:0 0 0 2px #fff,0 0 0 4px #ee2b4b}.popup-item-label{font-size:.7rem;font-weight:500;color:#1b0d10}.popup-list{display:flex;flex-direction:column;gap:4px}.popup-list-item{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:transparent;border:none;border-radius:12px;font-size:.9rem;font-weight:500;color:#1b0d10;cursor:pointer;transition:all .2s;text-align:left}.popup-list-item:hover{background:#00000008}.popup-list-item.selected{background:#ee2b4b0f;color:#ee2b4b;font-weight:600}.check-icon{font-size:.9rem;font-weight:700}.music-track-info{flex:1;display:flex;align-items:center}.music-actions{display:flex;align-items:center;gap:12px}.play-preview-btn{font-size:1.1rem;padding:4px;border-radius:50%;transition:transform .2s;display:flex;align-items:center;justify-content:center}.play-preview-btn:hover{transform:scale(1.1);background:#0000000d}.create-page{min-height:100dvh;display:flex;align-items:flex-start;justify-content:center;padding:60px 24px 80px}.create-inner{width:100%;max-width:600px;display:flex;flex-direction:column;gap:32px}.create-header{text-align:center}.create-title{font-family:var(--font-display);font-size:clamp(1.8rem,4vw,2.6rem);margin-bottom:8px}.create-subtitle{color:var(--color-text-muted);font-size:1rem}.create-form-wrapper{padding:40px 36px;border-radius:var(--radius-lg)}@media(max-width:480px){.create-form-wrapper{padding:28px 20px}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 32px;border:none;border-radius:var(--theme-shape-button-radius, var(--radius-full));font-family:var(--theme-font-button, var(--font-body));text-transform:var(--theme-text-transform-button, none);letter-spacing:var(--theme-letter-spacing-button, normal);font-size:1rem;font-weight:var(--theme-font-weight-button, 600);cursor:pointer;transition:transform .2s var(--ease-spring),box-shadow .2s var(--ease-smooth),opacity .2s;-webkit-user-select:none;user-select:none;white-space:nowrap}.btn--primary{background:linear-gradient(135deg,var(--color-primary),var(--color-accent));color:#fff;box-shadow:0 4px 24px var(--color-primary-glow)}.btn--primary:hover{box-shadow:0 8px 32px var(--color-primary-glow);transform:translateY(-2px) scale(1.02)}.btn--yes{background:linear-gradient(135deg,var(--theme-color-accent-gradient-start, #ff6b9d),var(--theme-color-accent-gradient-end, #e0547e));color:#fff;font-size:clamp(1.4rem,4.5vw,2rem);padding:2.5dvh 8vw;min-width:55vw;max-width:320px;border-radius:9999px!important;box-shadow:0 6px 32px var(--theme-color-shadow-color, rgba(255, 107, 157, .5));transition:transform .4s var(--ease-spring),box-shadow .2s;animation:btn-subtle-glow 2.5s infinite ease-in-out}@keyframes btn-subtle-glow{0%{box-shadow:0 4px 20px var(--theme-color-shadow-color, rgba(255, 107, 157, .3))}50%{box-shadow:0 6px 36px var(--theme-color-shadow-color, rgba(255, 107, 157, .7))}to{box-shadow:0 4px 20px var(--theme-color-shadow-color, rgba(255, 107, 157, .3))}}.btn--yes:hover{box-shadow:0 12px 48px var(--theme-color-shadow-color, rgba(255, 107, 157, .8));transform:scale(1.03)!important}.btn--no{background:#d1d5dbcc;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#374151;border:none;font-size:1.1rem;padding:16px 36px;border-radius:9999px;box-shadow:0 4px 6px -1px #0000001a;transition:color .2s,background .2s,border-color .2s,transform .15s;position:relative;font-weight:700}.btn--no:active{animation:btn-shake .3s cubic-bezier(.36,.07,.19,.97) both}@keyframes btn-shake{10%,90%{transform:translate3d(-1px,0,0)}20%,80%{transform:translate3d(2px,0,0)}30%,50%,70%{transform:translate3d(-3px,0,0)}40%,60%{transform:translate3d(3px,0,0)}}.btn--no:hover{background:#d1d5db;color:#1f2937}.btn--ghost{background:#ffffff0f;color:var(--color-text);border:1px solid var(--color-border)}.btn--ghost:hover{background:#ffffff1a}.btn--danger{background:#dc354526;color:#ff6b6b;border:1px solid rgba(220,53,69,.3)}.btn--danger:hover{background:#dc354540}.btn:disabled{opacity:.45;pointer-events:none}.input-wrapper{display:flex;flex-direction:column;gap:8px}.input-label{font-size:.85rem;font-weight:500;color:var(--color-text-muted);letter-spacing:.04em;text-transform:uppercase}.input-field{width:100%;padding:14px 18px;background:#ffffff0d;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);font-family:var(--font-body);font-size:1rem;outline:none;transition:border-color .2s,box-shadow .2s}.input-field::placeholder{color:var(--color-text-muted)}.input-field:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-glow)}.input-field--error{border-color:#ff6b6b;box-shadow:0 0 0 3px #ff6b6b33}.input-field--textarea{resize:vertical;min-height:120px;line-height:1.6}.input-hint{font-size:.8rem;color:var(--color-text-muted)}.input-error{font-size:.8rem;color:#ff6b6b}.celebration{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 24px;background:var(--theme-color-background-tint, linear-gradient(160deg, #fff5f8 0%, #ffe8ef 50%, #ffeaf5 100%));overflow-y:auto;-webkit-overflow-scrolling:touch}.celebration-card-light{max-width:440px;width:100%;padding:40px 32px;border-radius:var(--theme-shape-card-radius, 28px);text-align:center;display:flex;flex-direction:column;align-items:center;gap:16px;background:var(--theme-color-card-background, white);box-shadow:var(--theme-shape-shadow-softness, 0 12px 40px rgba(255, 51, 102, .1));border:var(--theme-shape-border-style, 1px solid rgba(255, 107, 157, .12));margin:auto 0;flex-shrink:0;overflow:hidden}.celebration-header{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:4px;width:100%}.celebration-emoji{font-size:3rem}.celebration-title{font-family:var(--theme-font-headline, var(--font-display));font-size:clamp(1.8rem,5vw,2.4rem);color:var(--theme-color-headline-accent, #ff3366);line-height:1.2;margin:0;transform:rotate(-3deg);-webkit-transform:rotate(-3deg)}.celebration-header-gif{width:80px;height:80px;border-radius:14px;object-fit:cover;transform:rotate(5deg);-webkit-transform:rotate(5deg);box-shadow:0 8px 16px #0000001a;border:3px solid #fff}.celebration-title-simple{font-family:var(--theme-font-headline, var(--font-display));font-size:clamp(1.8rem,5vw,2.4rem);color:var(--theme-color-headline-accent, #ff3366);line-height:1.2;margin-bottom:8px}.celebration-sub{font-size:1rem;color:var(--theme-color-text-primary, rgba(45, 31, 61, .7))}.celebration-sub strong{color:var(--theme-color-headline-accent, #ff3366)}.celebration-hint{font-family:var(--theme-font-headline, var(--font-display));font-size:1rem;color:var(--theme-color-accent-primary, #ff6b9d);font-style:italic;margin-top:8px;margin-bottom:0}.celebration-gif-message{display:flex;flex-direction:column;align-items:center;gap:12px;width:100%}.celebration-gif{width:200px;height:200px;border-radius:16px;object-fit:cover}.celebration-custom-msg{font-size:1rem;color:var(--theme-color-text-primary, #2d1f3d);text-align:center;line-height:var(--theme-line-height-body, 1.6)}.celebration-itinerary{width:100%;text-align:left}.celebration-itinerary-title-glow{font-family:"Playfair Display","Cormorant Garamond","Great Vibes",var(--theme-font-headline, var(--font-display)),cursive;font-size:1.8rem;text-align:center;margin-bottom:20px;letter-spacing:.5px;background:linear-gradient(135deg,#ff0f47,#ff4d85);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 4px 10px rgba(255,15,71,.3));color:#ff0f47;transform:rotate(2deg);-webkit-transform:rotate(2deg)}.celebration-itinerary-title-glow .sparkle-yellow{display:inline-block;-webkit-text-fill-color:initial;background:none;-webkit-background-clip:initial;background-clip:initial;color:#fc0;filter:drop-shadow(0 0 8px rgba(255,204,0,.6));margin-left:2px}.celebration-timeline{display:flex;flex-direction:column;gap:4px;padding-left:8px;border-left:3px solid var(--theme-color-accent-soft, rgba(255, 107, 157, .2))}.celebration-timeline-item{display:flex;gap:12px;padding:12px 0;position:relative}.celebration-timeline-dot{width:32px;height:32px;border-radius:50%;background:var(--theme-color-accent-soft, rgba(255, 107, 157, .1));display:flex;align-items:center;justify-content:center;font-size:.9rem;flex-shrink:0;margin-left:-24px;border:3px solid var(--theme-color-card-background, #fff)}.celebration-timeline-content{display:flex;flex-direction:column;gap:2px;padding:4px 0}.celebration-timeline-time{font-size:.75rem;font-weight:600;color:var(--theme-color-accent-primary, #ff3366);text-transform:uppercase;letter-spacing:.02em}.celebration-timeline-title{font-size:.95rem;color:var(--theme-color-text-primary, #2d1f3d)}.celebration-timeline-desc{font-size:.82rem;color:var(--theme-color-text-secondary, rgba(45, 31, 61, .55));line-height:1.5}.preview-device-mockup .celebration-card-light{padding:32px 24px;gap:12px}.preview-device-mockup .celebration-title{font-size:1.6rem}.preview-device-mockup .celebration-header-gif{width:60px;height:60px}.preview-device-mockup .celebration-itinerary-title-glow{font-size:1.5rem;margin-bottom:12px}.preview-device-mockup .celebration-timeline-item{padding:8px 0}.preview-device-mockup .celebration-timeline-dot{width:28px;height:28px;font-size:.8rem}.preview-device-mockup .celebration-timeline-time{font-size:.65rem}.preview-device-mockup .celebration-timeline-title{font-size:.85rem}.preview-device-mockup .celebration-timeline-desc{font-size:.75rem}.preview-device-mockup .celebration-hint{font-size:.9rem;margin-top:4px}.invite-view{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:16px;position:relative;overflow:hidden}.invite-hearts{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1;overflow:hidden}.invite-heart-particle{position:absolute;bottom:-40px;pointer-events:none;will-change:transform,opacity}.invite-card{position:relative;z-index:1;max-width:480px;width:100%;padding:48px 40px;border-radius:28px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:20px}.invite-card-dynamic{position:relative;z-index:10;max-width:640px;width:100%;min-height:85dvh;padding:4dvh 20px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:space-evenly;gap:32px;background:transparent!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;border:none!important;box-shadow:none!important}.invite-from{font-size:.85rem;color:var(--color-text-muted);letter-spacing:.08em;text-transform:uppercase}.invite-recipient{font-family:var(--font-display);font-size:clamp(2.25rem,6vw,3.5rem);line-height:1.1;text-shadow:0 4px 12px rgba(0,0,0,.1),0 0 6px rgba(255,255,255,.6)}.invite-message{font-size:1.05rem;color:var(--color-text-muted);line-height:1.7;padding:0 4px}.invite-gif-wrapper{width:100%;display:flex;justify-content:center}.invite-gif{width:65vw;max-width:280px;aspect-ratio:1;height:auto;border-radius:28px;object-fit:cover;box-shadow:0 20px 48px #ff6b9d4d;border:6px solid rgba(255,255,255,.95)}.invite-question p{font-family:var(--theme-font-headline);font-size:clamp(1.75rem,5vw,2.75rem);font-weight:800;line-height:1.2;text-shadow:0 4px 12px rgba(255,107,157,.2),2px 2px 4px rgba(255,255,255,.4);letter-spacing:-.02em}.invite-optional-message{font-size:.95rem;line-height:1.6;font-style:italic;padding:0 8px}.invite-buttons{display:flex;flex-direction:column;align-items:center;gap:16px;margin-top:8px}.invite-music-toggle{position:fixed;bottom:24px;right:24px;width:44px;height:44px;border-radius:50%;background:#fffc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;font-size:1.2rem;cursor:pointer;box-shadow:0 4px 12px #00000014;border:1px solid rgba(0,0,0,.06);z-index:10}@media(max-width:480px){.invite-card,.invite-card-dynamic{padding:4dvh 16px}.invite-gif{width:70vw;max-width:256px}}.invite-start-overlay{position:fixed;inset:0;background-color:#fff1f2;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:9999}.preview-page{position:relative;min-height:100dvh;background:var(--theme-color-background-tint)!important}.preview-bar{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:14px 28px;border-bottom:1px solid var(--color-border);border-radius:0}.preview-back-btn{background:var(--color-surface);border:none;color:var(--color-text);width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 8px #0000000d;transition:all .2s ease}.preview-back-btn:hover{transform:scale(1.05);box-shadow:0 4px 12px #0000001a}.preview-badge{position:absolute;left:50%;transform:translate(-50%);font-size:.75rem;color:var(--color-primary);background:#ffffff80;font-weight:600;padding:6px 14px;border-radius:99px;letter-spacing:.04em;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 2px 8px #0000000a}.preview-view-wrapper{width:100%;height:100dvh;display:flex;align-items:center;justify-content:center;padding:100px 20px 130px;box-sizing:border-box}.preview-device-mockup{width:100%;max-width:400px;height:100%;max-height:810px;background:var(--theme-color-background-tint);border-radius:36px;box-shadow:0 20px 40px #00000014,0 1px 3px #0000000d,inset 0 0 0 8px #ffffff80,inset 0 0 0 9px #0000000d;overflow:hidden;position:relative;border:1px solid rgba(255,255,255,.8);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);display:flex;align-items:center;justify-content:center}.preview-device-mockup:has(.celebration){overflow-y:auto;align-items:flex-start;scrollbar-width:none}.preview-device-mockup:has(.celebration)::-webkit-scrollbar{display:none}.preview-device-mockup>.invite-view{width:115%;height:115%;transform:scale(.87);flex-shrink:0;transform-origin:center center;display:flex;align-items:center;justify-content:center}.preview-device-mockup:has(.celebration)>.invite-view{height:auto;min-height:115%!important;transform-origin:top center;padding:40px 0;align-items:flex-start}.preview-device-mockup .celebration{min-height:100%!important;height:auto;width:100%;justify-content:flex-start;padding-top:0}.preview-bottom-nav{position:fixed;bottom:20px;left:50%;transform:translate(-50%)!important;width:calc(100% - 40px);max-width:400px;padding:16px;background:#ffffffe6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:28px;box-shadow:0 8px 32px #0000001f;z-index:100;border:1px solid rgba(255,255,255,.4)}.preview-bottom-actions{display:flex;align-items:center;gap:12px}.preview-changes-btn{width:64px;height:64px;border-radius:50%;background:#f8f6f6;border:1px solid rgba(0,0,0,.05);font-size:1.6rem;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 12px #00000014;flex-shrink:0}#preview-publish-btn{height:64px;border-radius:9999px;background:#ee2b4b;color:#fff;font-size:1.1rem;font-weight:700;box-shadow:0 10px 15px -3px #ee2b4b66;border:none;transition:all .2s}#preview-publish-btn:hover{box-shadow:0 20px 25px -5px #ee2b4b80}.preview-publish-wrapper{flex:1;display:flex;flex-direction:column;gap:4px}.preview-microcopy{font-size:.75rem;color:var(--color-text-muted);text-align:center;font-weight:500}.make-changes-overlay{position:fixed;inset:0;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000}.make-changes-card{position:fixed;bottom:0;left:0;right:0;background:var(--color-surface);border-radius:24px 24px 0 0;padding:24px;z-index:1001;box-shadow:0 -8px 32px #0003;max-height:80vh;overflow-y:auto}.make-changes-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.make-changes-header h3{margin:0;font-size:1.5rem;color:var(--color-text)}.make-changes-header .close-btn{background:none;border:none;font-size:1.5rem;color:var(--color-text-muted);cursor:pointer;padding:4px}.changes-list{display:flex;flex-direction:column;gap:8px}.changes-list button{display:flex;align-items:center;gap:12px;padding:16px;background:#00000008;border:1px solid rgba(0,0,0,.05);border-radius:12px;text-align:left;cursor:pointer;transition:all .2s ease;font-size:1.1rem}.changes-list button:hover{background:#0000000f;transform:translateY(-2px)}.changes-list .step-num{font-weight:700;color:var(--color-primary);min-width:30px}.changes-list .step-desc{color:var(--color-text);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.seal-modal-overlay{position:fixed;inset:0;background:#1e0f1473;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:2000}.seal-modal-container{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;padding:20px;z-index:2001;pointer-events:none}.seal-modal-card{background:#fffaf9;border-radius:28px;width:100%;max-width:360px;overflow:hidden;box-shadow:0 32px 64px #b43c502e,0 8px 24px #0000001f;pointer-events:auto;display:flex;flex-direction:column}.modal-accent{height:4px;background:linear-gradient(90deg,#f43f5e,#fb7185,#fda4af);width:100%}.seal-modal-body{padding:28px 24px 24px;display:flex;flex-direction:column;align-items:center}.icon-wrap{width:56px;height:56px;background:linear-gradient(135deg,#fff0f3,#ffe4e8);border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:26px;margin-bottom:20px;border:1.5px solid #fecdd3}.seal-modal-title{font-family:Playfair Display,serif;font-size:22px;font-weight:700;color:#1a0a10;text-align:center;margin-bottom:6px}.seal-modal-subtitle{font-size:14px;color:#8b6570;text-align:center;line-height:1.5;margin-bottom:24px}.price-card{background:linear-gradient(135deg,#fff5f7,#fff0f3);border:1.5px solid #fecdd3;border-radius:16px;padding:16px 20px;display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;width:100%;text-align:left}.price-label{font-size:13px;color:#8b6570;font-weight:500;margin-bottom:2px}.price-amount{font-family:Playfair Display,serif;font-size:26px;font-weight:700;color:#1a0a10}.price-badge{background:#dcfce7;color:#15803d;font-size:11px;font-weight:600;padding:4px 10px;border-radius:20px;border:1px solid #bbf7d0;letter-spacing:.02em}.trust-pills{display:flex;gap:8px;margin-bottom:24px;width:100%}.trust-pill{flex:1;background:#fff8f9;border:1px solid #fce4e8;border-radius:12px;padding:10px 4px;display:flex;align-items:center;justify-content:center;gap:6px;color:#6b4550;font-family:DM Sans,sans-serif}.trust-pill .icon{font-size:16px;flex-shrink:0;line-height:1}.trust-pill-text{text-align:left;line-height:1.2;font-size:10px;font-weight:600;color:#4a2030}.edit-note{display:flex;align-items:center;justify-content:center;gap:8px;background:#fffbeb;border:1px solid #fde68a;border-radius:10px;padding:10px 14px;margin-bottom:24px;font-size:12.5px;color:#92400e;font-weight:500;width:100%}.btn-pay{width:100%;padding:16px;background:linear-gradient(135deg,#f43f5e,#e11d48);color:#fff;border:none;border-radius:16px;font-size:16px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 4px 16px #f43f5e59;transition:transform .15s,box-shadow .15s;margin-bottom:12px;letter-spacing:.01em}.btn-pay:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 20px #f43f5e73}.btn-pay:active:not(:disabled){transform:translateY(0)}.btn-pay:disabled{opacity:.7;cursor:not-allowed}.btn-back-link{width:100%;padding:8px;background:transparent;color:#9c7580;border:none;font-size:14px;font-weight:500;cursor:pointer;transition:color .15s}.btn-back-link:hover{color:#4a2030}.razorpay-note{display:flex;align-items:center;justify-content:center;gap:5px;font-size:11px;color:#b89aa0;margin-top:10px}.razorpay-note strong{color:#4a2030;font-weight:600}.invite-start-overlay{position:fixed;inset:0;background-color:#fff1f2;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:100}.invite-start-content{text-align:center;padding:0 1rem}.invite-start-heart{width:4rem;height:4rem;color:#fb7185;fill:#fb7185;margin:0 auto 1rem;display:block}@media(min-width:768px){.invite-start-heart{width:5rem;height:5rem}}.invite-start-title{font-family:Playfair Display,serif;font-size:1.25rem;color:#881337;letter-spacing:.1em;text-transform:uppercase;margin:0}@media(min-width:768px){.invite-start-title{font-size:1.5rem}}.invite-start-subtitle{font-family:Inter,sans-serif;font-size:.875rem;color:#fb7185;margin-top:.5rem}.invite-page-loading,.invite-page-error{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;color:var(--color-text-muted);font-size:1.1rem}.invite-page-spinner{font-size:3rem;animation:pulse-heart 1.2s ease-in-out infinite}@keyframes pulse-heart{0%,to{transform:scale(1)}50%{transform:scale(1.3)}}.invite-page-error span{font-size:3rem}.invite-page-root{position:relative;min-height:100dvh;background:var(--theme-color-background-tint)!important}.share-page-refined{min-height:100vh;min-height:100dvh;background:linear-gradient(to bottom,#fff9f5,#fff);display:flex;flex-direction:column;align-items:center;position:relative;overflow-x:hidden;color:#1b0d10;font-family:var(--font-display)}.share-bg-dots{position:fixed;inset:0;pointer-events:none;z-index:0;background-image:radial-gradient(rgba(244,63,94,.15) 2px,transparent 2px);background-size:40px 40px;opacity:.5}.share-topbar{width:100%;max-width:480px;display:flex;align-items:center;justify-content:space-between;padding:24px;z-index:10}.share-back-btn{width:48px;height:48px;border-radius:50%;background:#fff;border:none;box-shadow:0 2px 8px #0000000d;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#1b0d10;transition:all .2s}.share-back-btn:hover{box-shadow:0 4px 12px #0000001a}.share-step-indicator-wrapper{position:absolute;left:50%;transform:translate(-50%)}.share-step-indicator{font-size:10px;font-weight:800;color:#ee2b4b;letter-spacing:.2em;text-transform:uppercase}.share-main{flex:1;width:100%;max-width:440px;padding:0 24px 40px;display:flex;flex-direction:column;align-items:center;z-index:1}.share-header-text{text-align:center;margin-bottom:32px}.share-header-text h1{font-size:3rem;font-weight:900;font-style:italic;color:#1b0d10;margin:0 0 12px;letter-spacing:-.04em;line-height:1.1;display:flex;align-items:center;justify-content:center;gap:8px}.heart-gif{vertical-align:middle}.share-header-text p{font-size:1.25rem;color:#64748b;font-weight:500;margin:0}.share-preview-card{width:100%;max-width:300px;background:#fff;border-radius:2rem;overflow:hidden;box-shadow:0 15px 40px #ee2b4b14;border:1px solid rgba(238,43,75,.03);margin-bottom:32px}.preview-media-container{width:100%;height:160px;background:#fff;position:relative;border-bottom:1px solid #f1f5f9;padding:12px}.preview-card-envelope{width:100%;height:100%;object-fit:contain}.preview-card-placeholder{width:100%;height:100%;background:#f8fafc}.preview-card-content{padding:24px;text-align:center}.preview-card-content h2{font-size:1.5rem;font-weight:700;color:#0f172a;margin:0 0 4px}.preview-card-content p{font-size:1.125rem;color:#64748b;margin:0}.share-controls{width:100%;max-width:360px;display:flex;flex-direction:column;gap:32px}.share-link-input-wrapper{display:flex;align-items:center;background:#fff;border-radius:1rem;padding:8px;box-shadow:0 1px 3px #0000000d;border:1px solid #f1f5f9}.share-link-input{flex:1;background:transparent;border:none;padding:0 16px;font-size:1rem;font-weight:500;color:#475569;font-family:inherit;outline:none;min-width:0;text-overflow:ellipsis}.share-copy-inline-btn{background:#ee2b4b;color:#fff;border:none;padding:12px 24px;border-radius:.75rem;font-weight:700;font-size:.875rem;display:flex;align-items:center;gap:8px;cursor:pointer;transition:all .2s;flex-shrink:0;box-shadow:0 4px 12px #ee2b4b33}.share-copy-inline-btn:hover{background:#e11d48;box-shadow:0 6px 16px #ee2b4b4d}.share-copy-inline-btn.copied{background:#10b981}.share-copy-inline-btn:active{transform:scale(.95)}.share-social-row{display:flex;flex-direction:column;align-items:center;gap:24px}.share-social-label{font-size:10px;font-weight:800;color:#94a3b8;letter-spacing:.2em;text-transform:uppercase}.share-social-grid{display:flex;justify-content:center;gap:32px}.social-icon-btn{width:64px;height:64px;border-radius:50%;border:none;display:flex;align-items:center;justify-content:center;color:#fff;cursor:pointer;transition:transform .2s}.btn-wa{background:#25d366;box-shadow:0 10px 20px #25d36633}.btn-ig{background:linear-gradient(45deg,#f9ce34,#ee2a7b,#6228d7);box-shadow:0 10px 20px #ee2a7b33}.btn-share-native{background:#ee2b4b;box-shadow:0 10px 20px #ee2b4b33}.btn-share-native:hover{background:#e11d48}.share-footer-action{width:100%;max-width:360px;margin-top:32px;display:flex;justify-content:center}.share-create-text-link{display:flex;align-items:center;gap:8px;color:#ee2b4b;font-size:1.125rem;font-weight:700;cursor:pointer;transition:all .3s ease;text-shadow:0 0 10px rgba(238,43,75,.2)}.create-link-text{text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:2px}.share-create-text-link:hover{text-shadow:0 0 15px rgba(238,43,75,.5);color:#f43f5e}.share-create-text-link span{font-size:1.25rem;transition:transform .2s}.share-create-text-link:hover span{transform:translate(4px)}
