*{box-sizing:border-box;margin:0;padding:0}html,body{background:#f4d9dc}.app-root{--hint-ink: #9A5566;--ui-dock-a: #FEF8F7;--ui-dock-b: #F8E8E8;--ui-line: rgba(201, 140, 152, .4);--ui-line-faint: rgba(201, 140, 152, .14);--ui-mark: #C98C98;--ui-mark-glow: rgba(201, 140, 152, .55);--ui-ink: #5E3440;--ui-ink-soft: #B07A86;--ui-shadow: rgba(94, 52, 64, .18);--ui-backdrop: rgba(60, 30, 40, .38);--ui-sheet: #FCF4F3;--ui-sheet-glow: rgba(227, 181, 189, .3);--ui-handle: rgba(201, 140, 152, .45);--ui-close-bg: rgba(252, 244, 243, .9);--ui-close-ink: #9A5566;--ui-close-hover-bg: #5E3440;--ui-close-hover-ink: #FCF4F3;--ui-inset: #ffffff;--card-bg: #f6f6f5;--card-info-bg: #fefbe8;--card-splash-bg: #EEE6DF;--card-accent: #C98C98;--card-accent-light: #5E3440;--card-accent-soft: #E3B5BD;--card-accent-info: #fefdf9;background-color:#f4d9dc;background-image:url(/assets/bg-DzKfX9eh.webp);background-repeat:repeat-y;background-position:top center;background-size:100% auto;width:100%;min-height:100vh;font-family:EB Garamond,serif}.wrapper{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;cursor:pointer;background:var(--card-splash-bg);display:flex;align-items:center;justify-content:center;overflow:hidden;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.wrapper.opening{animation:cardSlideUp .9s cubic-bezier(.4,0,.2,1) forwards}@keyframes cardSlideUp{0%{transform:translateY(0) scale(1);opacity:1}25%{transform:translateY(-18px) scale(1.02);opacity:1}to{transform:translateY(-110vh);opacity:0}}.splash-stage{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.splash-sheet{position:relative;width:min(max(100vw,100vh * .4705),560px);aspect-ratio:860 / 1828;container-type:inline-size;padding:0;border:none;background:none;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .25s ease}.splash-sheet:active{transform:scale(.995)}.splash-sheet-img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.splash-heading{position:absolute;left:28%;right:28%;top:29%;bottom:35%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3.4cqw;text-align:center}.splash-kicker{font-family:EB Garamond,serif;font-size:clamp(7px,2.5cqw,12px);letter-spacing:.2em;text-transform:uppercase;color:#7c6643;line-height:1.6}.splash-names{display:flex;flex-direction:column;align-items:center;gap:1cqw;width:100%}.splash-name{font-family:Pinyon Script,serif;font-size:clamp(30px,12.5cqw,60px);font-weight:400;line-height:1.12;color:#5e3440;overflow-wrap:anywhere}.splash-amp{font-family:EB Garamond,serif;font-style:italic;font-size:clamp(15px,5.2cqw,26px);line-height:1;color:#7c6643}.splash-date{font-family:EB Garamond,serif;font-size:clamp(9px,2.9cqw,14px);letter-spacing:.18em;color:#7c6643;line-height:1.4}.splash-tap{font-family:EB Garamond,serif;font-style:italic;font-size:clamp(8px,2.6cqw,12px);letter-spacing:.05em;color:#5e3440;margin-top:1.4cqw;animation:splashTapPulse 2.4s ease-in-out infinite}@keyframes splashTapPulse{0%,to{opacity:.75}50%{opacity:1}}.card{max-width:420px;margin:0 auto;background-color:#f4d9dc;background-image:url(/assets/bg-DzKfX9eh.webp);background-repeat:repeat-y;background-position:top center;background-size:100% auto;position:relative;overflow:hidden;box-shadow:0 10px 20px #00000030,0 6px 6px #0000003b;padding-bottom:calc(90px + env(safe-area-inset-bottom,0px))}.reveal{opacity:0}.reveal.active{opacity:1}.reveal.active.from-below{animation:revealUp 1.8s cubic-bezier(.22,.9,.3,1) backwards}.reveal.active.from-above{animation:revealDown 1.8s cubic-bezier(.22,.9,.3,1) backwards}@keyframes revealUp{0%{opacity:0;transform:translate3d(0,100px,0) scale(.6)}to{opacity:1;transform:translateZ(0) scale(1)}}@keyframes revealDown{0%{opacity:0;transform:translate3d(0,-100px,0) scale(.6)}to{opacity:1;transform:translateZ(0) scale(1)}}.no-text-anim .reveal{opacity:1;animation:none!important}@media (prefers-reduced-motion: reduce){.reveal.active.from-below,.reveal.active.from-above{animation:revealFade .4s ease both}@keyframes revealFade{0%{opacity:0}to{opacity:1}}}.fade-in-1{animation:growIn .5s ease-in-out both}.fade-in-2{animation:growIn .8s ease-in-out both}.fade-in-3{animation:growIn 1s ease-in-out both}.fade-in-4{animation:growIn 1.2s ease-in-out both}@keyframes growIn{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.intro{position:relative;z-index:1;container-type:inline-size}.intro-bg{display:block;width:100%;height:auto;position:relative;z-index:0}.intro-content{position:absolute;top:29%;right:27%;bottom:33%;left:27%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:0;z-index:1;overflow:hidden}.intro-content img{width:50%;margin-bottom:16px}.walimatul{font-size:clamp(10px,3.2cqw,16px);letter-spacing:2px;color:#7c6643;margin-bottom:5cqw}.intro-content h2{font-family:Pinyon Script,serif;font-size:clamp(34px,15cqw,72px);font-weight:500;color:#5e3440;line-height:1.1;margin:1cqw 0;overflow-wrap:anywhere}.intro-content h3{font-family:EB Garamond,serif;font-size:clamp(16px,5.6cqw,28px);font-weight:500;color:#7c6643;line-height:1.2}.intro-when{display:flex;flex-direction:column;align-items:center;margin-top:5cqw;width:100%;max-width:82%;color:#7c6643;letter-spacing:2px;line-height:1.35}.intro-day{font-size:calc(clamp(10px,3.2cqw,16px)*.7);text-transform:uppercase;margin-bottom:.25em}.intro-date{font-size:clamp(10px,3.2cqw,16px)}.intro-hashtag{margin-top:.45em;font-size:clamp(10px,3.2cqw,16px);text-align:center;overflow-wrap:anywhere}.info{display:flex;flex-direction:column;align-items:center;padding:50px 0;position:relative;z-index:1}.lace-section{position:relative;width:100%;margin:8px auto -9%;aspect-ratio:860 / 1829;container-type:inline-size}.lace-frame-img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none}.lace-content{position:absolute;top:32%;right:31%;bottom:35%;left:31%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:1cqw;overflow:hidden}.lace-item{display:flex;flex-direction:column;align-items:center}.lace-content .reveal.active.from-below,.lace-content .reveal.active.from-above{animation:laceRevealFade 1.2s ease backwards}@keyframes laceRevealFade{0%{opacity:0}to{opacity:1}}.lace-label{font-family:Pinyon Script,serif;font-size:clamp(13px,4.6cqw,23px);color:#7c6643;line-height:1;margin-bottom:1cqw;margin-top:1cqw}.lace-item p{font-size:clamp(8px,2.6cqw,13px);color:#9a5566;line-height:1.5;font-weight:400}.lace-divider{width:50%;height:0;border-top:1px solid #E3B5BD;margin:1cqw 0;align-self:center}.event-info{width:100%;text-align:center;position:relative;container-type:inline-size;padding:24px 0}.event-frame-inner{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0 13%}.event-flower{display:block;width:62%;max-width:240px;min-width:140px;height:auto;margin:0 auto 3cqw}.event-part{margin-bottom:.6cqw}.event-part p{font-family:EB Garamond,serif;font-style:italic;font-size:clamp(13px,4cqw,20px);color:#9a5566;font-weight:400;letter-spacing:.3px;line-height:1.5}.event-part.one{display:flex;flex-direction:column;align-items:center;gap:.4cqw}.parent-names{display:flex;flex-direction:column;align-items:center;margin:3cqw 0;gap:.8cqw}.parent-names p{font-size:clamp(15px,4.8cqw,24px);font-weight:600;color:#5e3440}.event-part.two{display:flex;flex-direction:column;align-items:center;margin:3cqw 0;gap:.8cqw}.event-part.two p{font-family:Pinyon Script,serif;letter-spacing:0;font-size:clamp(24px,8cqw,42px);font-weight:400;color:#5e3440;line-height:1.2;overflow-wrap:anywhere}.countdown{text-align:center;padding:24px 0 0}.countdown-title{font-size:13px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:#7c6643;margin-bottom:20px}.count-boxes{display:flex;align-items:center;justify-content:center}.count-divider{width:1px;height:48px;background:#e3b5bd;opacity:.55;margin:0 16px}.count-box{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:56px}.count-box h1{font-family:EB Garamond,serif;font-size:30px;font-weight:700;color:#5e3440;line-height:1;margin-bottom:6px}.count-box span{font-size:9px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:#b07a86;opacity:.9}.countdown-row{display:flex;flex-direction:column;align-items:center;gap:20px}.mini-cal{width:100%;display:flex;flex-direction:column;align-items:center;padding:24px 8px 8px}.mini-cal-title{font-family:EB Garamond,serif;font-size:11px;font-weight:400;letter-spacing:6px;text-transform:uppercase;color:#7c6643;margin-bottom:18px;text-align:center}.mini-cal-row{display:flex;width:100%}.mini-cal-cell{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px}.mini-cal-dow{font-family:EB Garamond,serif;font-size:11px;color:#b07a86;font-weight:400;text-align:center}.mini-cal-day{font-family:EB Garamond,serif;font-size:17px;color:#9a5566;font-weight:400;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%}.mini-cal-cell--active .mini-cal-day{border:1.5px dashed #C98C98}.mini-cal-stem{display:block;width:0;height:40px;border-left:1.5px dashed #C98C98}.mini-cal-script{font-family:Pinyon Script,serif;font-size:44px;color:#7c6643;line-height:1.1;margin-top:2px;text-align:center}.lace-section .aturcara-row{font-size:clamp(7px,2.4cqw,12px);color:#9a5566;font-weight:400;letter-spacing:.2px;line-height:1.6}.aturcara-dot{color:#9a5566;opacity:.7;margin:0 2px}.aturcara-time{color:#9a5566;font-style:italic}.rsvp-tray{position:relative;width:100%;margin:0 auto 4px;container-type:inline-size}.rsvp-tray-img{display:block;width:100%;height:auto}.rsvp-tray-inner{position:absolute;top:20%;right:24%;bottom:20%;left:39%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1cqw;text-align:center}.rsvp-tray-title{font-family:Pinyon Script,serif;font-size:clamp(20px,7.6cqw,40px);line-height:1;color:#fff8f1;text-shadow:0 1px 2px rgba(124,102,67,.55),0 0 10px rgba(255,226,170,.55)}.rsvp-tray-rule{position:relative;width:38%;height:1px;margin:.6cqw 0 .8cqw;background:linear-gradient(90deg,transparent,#D9B46A 25%,#F3DDA0 50%,#D9B46A 75%,transparent)}.rsvp-tray-rule:after{content:"";position:absolute;left:50%;top:50%;width:1.4cqw;height:1.4cqw;min-width:5px;min-height:5px;transform:translate(-50%,-50%) rotate(45deg);background:linear-gradient(135deg,#f7e3ae,#c89a4b);box-shadow:0 0 4px #ffe2aacc}.rsvp-tray-text{font-family:EB Garamond,serif;font-style:italic;font-size:clamp(10px,3.1cqw,17px);line-height:1.45;color:#4a2830;text-shadow:0 1px 0 rgba(255,240,236,.45)}.rsvp-btn{margin-top:1.4cqw;padding:clamp(5px,1.5cqw,9px) clamp(14px,4.6cqw,24px);border:1px solid #C89A4B;border-radius:999px;background:linear-gradient(180deg,#fffbf6,#fbede4);box-shadow:0 0 0 2px #fff8f18c,0 3px 10px #6e344338;color:#7c6643;font-family:EB Garamond,serif;font-size:clamp(9px,2.8cqw,14px);font-weight:700;letter-spacing:2px;text-transform:uppercase;white-space:nowrap;cursor:pointer;transition:background .25s,color .25s,transform .2s,box-shadow .25s}.rsvp-btn:hover{background:linear-gradient(180deg,#e4c27a,#c89a4b);color:#fffbf6;transform:translateY(-1px);box-shadow:0 0 0 2px #fff8f199,0 6px 14px #6e344347}.ucapan-khas{position:relative;align-self:stretch;margin:6px 0 4px;display:flex;flex-direction:column;align-items:center}.ucapan-heart{position:relative;width:118%;aspect-ratio:1448 / 1086;container-type:inline-size}.ucapan-heart-img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none}.ucapan-khas-content{position:absolute;top:39%;right:33%;bottom:19%;left:33%;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.4cqw;text-align:center;overflow:hidden}.ucapan-khas-title{font-family:Pinyon Script,serif;font-size:clamp(17px,5.6cqw,34px);color:#7c6643;line-height:1;margin-bottom:.4cqw}.ucapan-khas-msg{font-family:EB Garamond,serif;font-style:italic;font-size:clamp(10px,2.9cqw,17px);color:#9a5566;line-height:1.5}.ucapan-khas-name{font-family:Pinyon Script,serif;font-size:clamp(13px,4.2cqw,24px);color:#b07a86;line-height:1.2}.ucapan-khas-empty{font-family:EB Garamond,serif;font-size:clamp(10px,2.8cqw,16px);color:#b07a86;font-style:italic;line-height:1.5}.ucapan-khas-controls{display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:4px}.ucapan-khas-nav{display:flex;align-items:center;gap:16px}.ucapan-khas-nav button{background:none;border:none;font-size:26px;color:#9a5566;cursor:pointer;line-height:1;padding:0 4px;opacity:.85}.ucapan-khas-nav span{font-family:EB Garamond,serif;font-size:13px;color:#b07a86}.ucapan-khas-btn{display:flex;align-items:center;gap:6px;padding:10px 26px;border:1px solid #9A5566;background:#fff9;color:#5e3440;font-family:EB Garamond,serif;font-size:15px;font-style:italic;cursor:pointer;border-radius:2px;transition:background .25s,color .25s}.ucapan-khas-btn:hover{background:#9a5566;color:#fff}.footer{position:fixed;left:50%;transform:translate(-50%);bottom:calc(10px + env(safe-area-inset-bottom,0px));width:100%;max-width:420px;padding:0 12px;z-index:1000;pointer-events:none}.footer .menu{--pad: 5px;pointer-events:auto;list-style:none;position:relative;height:62px;padding:0 var(--pad);display:flex;align-items:center;justify-content:space-around;background:linear-gradient(180deg,var(--ui-dock-a),var(--ui-dock-b));border:1px solid var(--ui-line);border-radius:24px;box-shadow:0 12px 30px var(--ui-shadow),0 2px 6px var(--ui-shadow),inset 0 1px 0 var(--ui-inset)}.footer .menu:before{content:"";position:absolute;top:3px;right:3px;bottom:3px;left:3px;border-radius:21px;border:1px solid var(--ui-line-faint);pointer-events:none}.footer .menu:after{--slot: calc((100% - 2 * var(--pad)) / var(--count, 6));content:"";position:absolute;z-index:2;top:-1px;height:2px;width:26px;left:calc(var(--pad) + var(--slot) * var(--active, 0) + var(--slot) / 2 - 13px);border-radius:0 0 2px 2px;background:linear-gradient(90deg,transparent,var(--ui-mark) 20%,var(--ui-mark) 80%,transparent);box-shadow:0 1px 6px var(--ui-mark-glow);opacity:0;transform:scaleX(.3);transition:left .5s cubic-bezier(.34,1.3,.64,1),opacity .25s ease,transform .35s ease;pointer-events:none}.footer .menu.has-active:after{opacity:1;transform:scaleX(1)}.footer .menu li{position:relative;z-index:1;flex:1 1 0;min-width:0;height:100%;padding:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;cursor:pointer;-webkit-user-select:none;user-select:none;outline:none;-webkit-tap-highlight-color:transparent}.footer .menu li .bx{position:relative;color:var(--ui-ink-soft);font-size:21px;line-height:1;transition:color .3s ease,transform .3s ease}.footer .menu li span{font-family:EB Garamond,serif;font-size:10.5px;line-height:1;letter-spacing:.06em;color:var(--ui-ink-soft);white-space:nowrap;transition:color .3s ease}.footer .menu li:active .bx{transform:scale(.88)}.footer .menu li.active .bx{color:var(--ui-ink);animation:menuIconPop .45s cubic-bezier(.34,1.56,.64,1)}.footer .menu li.active span{color:var(--ui-ink);font-weight:600}@keyframes menuIconPop{0%{transform:scale(.8)}60%{transform:scale(1.12)}to{transform:scale(1)}}.footer .menu li:focus-visible:before{content:"";position:absolute;top:6px;bottom:6px;left:2px;right:2px;border-radius:18px;box-shadow:0 0 0 2px var(--ui-mark)}@media (hover: hover){.footer .menu li:not(.active):hover .bx{color:var(--ui-ink);transform:translateY(-2px)}.footer .menu li:not(.active):hover span{color:var(--ui-ink)}}.footer .menu li .bx.is-playing{color:var(--ui-ink)}.footer .menu li .bx.is-playing:after{content:"";position:absolute;top:-2px;right:-5px;width:6px;height:6px;border-radius:50%;background:var(--ui-mark);animation:footerPlayingDot 1.8s ease-out infinite}@keyframes footerPlayingDot{0%{box-shadow:0 0 0 0 var(--ui-mark-glow)}to{box-shadow:0 0 0 7px transparent}}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:900;background:var(--ui-backdrop);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);opacity:0;visibility:hidden;transition:opacity .35s ease,visibility 0s linear .35s}.sheet-backdrop.show{opacity:1;visibility:visible;transition:opacity .35s ease,visibility 0s}.toggle-menu{position:fixed;left:50%;z-index:2000;bottom:calc(86px + env(safe-area-inset-bottom,0px));width:calc(100% - 24px);max-width:396px;max-height:calc(100dvh - 108px - env(safe-area-inset-bottom,0px));overflow-y:auto;overscroll-behavior:contain;padding:30px 22px 24px;background:radial-gradient(120% 60% at 50% 0%,var(--ui-sheet-glow),transparent 70%),var(--ui-sheet);border:1px solid var(--ui-line);border-radius:26px;box-shadow:0 24px 60px var(--ui-shadow),0 4px 12px var(--ui-shadow);transform:translate(-50%,calc(100% + 120px)) scale(.96);opacity:0;visibility:hidden;transition:transform .5s cubic-bezier(.32,1.25,.5,1),opacity .25s ease,visibility 0s linear .5s}.toggle-menu.open{transform:translate(-50%) scale(1);opacity:1;visibility:visible;transition:transform .5s cubic-bezier(.32,1.25,.5,1),opacity .25s ease,visibility 0s}.toggle-menu:before{content:"";position:absolute;top:10px;left:50%;transform:translate(-50%);width:38px;height:4px;border-radius:4px;background:var(--ui-handle)}.sheet-close{position:absolute;top:12px;right:12px;z-index:1;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:1px solid var(--ui-line);background:var(--ui-close-bg);color:var(--ui-close-ink);font-size:20px;cursor:pointer;transition:background .2s ease,color .2s ease,transform .2s ease}.sheet-close:hover{background:var(--ui-close-hover-bg);color:var(--ui-close-hover-ink);transform:rotate(90deg)}.sheet-close:focus-visible{outline:2px solid var(--ui-mark);outline-offset:2px}.toggle-menu.open .modal-inner>*,.toggle-menu.open .rsvp-form-inner>*{animation:sheetItemIn .5s cubic-bezier(.22,1,.36,1) both}.toggle-menu.open .modal-inner>:nth-child(1),.toggle-menu.open .rsvp-form-inner>:nth-child(1){animation-delay:.08s}.toggle-menu.open .modal-inner>:nth-child(2),.toggle-menu.open .rsvp-form-inner>:nth-child(2){animation-delay:.14s}.toggle-menu.open .modal-inner>:nth-child(3),.toggle-menu.open .rsvp-form-inner>:nth-child(3){animation-delay:.2s}.toggle-menu.open .modal-inner>:nth-child(4),.toggle-menu.open .rsvp-form-inner>:nth-child(4){animation-delay:.26s}.toggle-menu.open .modal-inner>:nth-child(n+5),.toggle-menu.open .rsvp-form-inner>:nth-child(n+5){animation-delay:.32s}@keyframes sheetItemIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){.footer .menu li .bx,.footer .menu li span,.footer .menu:after{transition:none}.footer .menu li.active .bx,.footer .menu li .bx.is-playing:after{animation:none}.toggle-menu,.toggle-menu.open{transition:opacity .2s ease,visibility 0s;transform:translate(-50%)}.toggle-menu.open .modal-inner>*,.toggle-menu.open .rsvp-form-inner>*{animation:none}}.modal-inner{display:flex;flex-direction:column;align-items:center;gap:10px}.modal-inner h1{font-family:EB Garamond,serif;font-size:20px;font-weight:400;color:var(--card-accent-light);text-transform:uppercase;letter-spacing:1px;text-align:center;text-indent:1px;margin-bottom:8px}.modal-inner h1:after{content:"✦";display:block;width:150px;margin:9px auto 0;text-indent:0;font-size:9px;line-height:1;color:#e3b5bd;background:linear-gradient(#c3ae8d,#c3ae8d) left center / 58px 1px no-repeat,linear-gradient(#c3ae8d,#c3ae8d) right center / 58px 1px no-repeat}.modal-buttons{display:flex;gap:10px;margin-top:10px}.modal-buttons.col{flex-direction:column;width:100%}.modal-buttons.row{flex-direction:row;justify-content:center}.modal-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 24px;border:1px solid #F5E2E3;border-radius:8px;background:#fff;cursor:pointer;font-size:14px;font-family:EB Garamond,serif;font-weight:600;transition:opacity .2s;min-width:140px}.modal-btn:hover{opacity:.85}.modal-btn .bx{font-size:18px}.google-icon{background:linear-gradient(to bottom left,transparent 49%,#fbbc05 50%) 0 25%/48% 40%,linear-gradient(to top left,transparent 49%,#fbbc05 50%) 0 75%/48% 40%,linear-gradient(-40deg,transparent 53%,#ea4335 54%),linear-gradient(45deg,transparent 46%,#4285f4 48%),#34a853;background-repeat:no-repeat;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.modal-inner.rsvp-form{width:100%;padding:0;align-items:stretch;max-height:70vh;overflow-y:auto}.rsvp-form-inner{display:flex;flex-direction:column;gap:14px;padding:20px 20px 8px}.rsvp-field{display:flex;flex-direction:column;gap:6px}.rsvp-field label{text-align:center;font-family:EB Garamond,serif;font-size:15px;font-weight:600;color:#9a5566;letter-spacing:.5px}.rsvp-hint{font-size:11px;font-weight:400;color:#cc97a1}.rsvp-field input,.rsvp-field textarea{width:100%;padding:10px 14px;border:1px solid #ddd;border-radius:8px;font-family:EB Garamond,serif;font-size:14px;color:#6e3b48;background:#fafafa;outline:none;transition:border .2s}.rsvp-field input:focus,.rsvp-field textarea:focus{border-color:var(--card-accent)}.rsvp-field input[type=number]{text-align:center}.rsvp-field textarea{resize:none}.rsvp-attend-row{display:flex;justify-content:center;gap:32px}.rsvp-radio-label{display:flex;flex-direction:row;align-items:center;gap:8px;font-family:EB Garamond,serif;font-size:15px;color:#9a5566;cursor:pointer}.rsvp-radio-label input[type=radio]{width:17px;height:17px;accent-color:var(--card-accent);cursor:pointer}.rsvp-radio-label.selected{color:var(--card-accent);font-weight:700}.rsvp-submit{width:100%;padding:12px;border:none;border-radius:24px;background:#9a5566;color:#fffffe;font-family:EB Garamond,serif;font-size:15px;font-weight:700;letter-spacing:1px;cursor:pointer;margin-top:4px;transition:background .2s}.rsvp-submit:hover{background:var(--card-accent-soft)}.modal-inner.wishlist{gap:0;padding:2px 0 6px}.modal-inner.wishlist h1{margin-bottom:4px}.wishlist-note{max-width:270px;font-family:EB Garamond,serif;font-style:italic;font-size:13.5px;line-height:1.65;color:#b07a86;text-align:center;margin:0 0 14px}.wishlist-qr-frame{--tick: #c3ae8d;display:flex;flex-direction:column;align-items:center;gap:8px;padding:14px 14px 10px;border-radius:3px;background:linear-gradient(var(--tick),var(--tick)) 0 0 / 15px 1px no-repeat,linear-gradient(var(--tick),var(--tick)) 0 0 / 1px 15px no-repeat,linear-gradient(var(--tick),var(--tick)) 100% 0 / 15px 1px no-repeat,linear-gradient(var(--tick),var(--tick)) 100% 0 / 1px 15px no-repeat,linear-gradient(var(--tick),var(--tick)) 0 100% / 15px 1px no-repeat,linear-gradient(var(--tick),var(--tick)) 0 100% / 1px 15px no-repeat,linear-gradient(var(--tick),var(--tick)) 100% 100% / 15px 1px no-repeat,linear-gradient(var(--tick),var(--tick)) 100% 100% / 1px 15px no-repeat,linear-gradient(168deg,#fffefb,#fbf5ea);box-shadow:0 4px 14px #35241f1a}.wishlist-qr{width:158px;height:158px;object-fit:contain;border:1px solid rgba(227,181,189,.4);border-radius:2px;background:#fff;margin:0}.wishlist-qr-cap{font-family:EB Garamond,serif;font-style:italic;font-size:12px;letter-spacing:.5px;color:#b07a86}.wishlist-acc{display:flex;flex-direction:column;align-items:center;gap:3px;margin:18px 0 2px;padding:0 22px;width:100%;max-width:290px}.wishlist-bank{font-family:EB Garamond,serif;font-size:12px;letter-spacing:2px;text-transform:uppercase;color:#b07a86}.wishlist-accnum{font-family:EB Garamond,serif;font-size:23px;font-weight:600;letter-spacing:2px;color:#5e3440;font-variant-numeric:tabular-nums;line-height:1.25}.wishlist-name{font-family:Pinyon Script,serif;font-size:20px;color:#b07a86;line-height:1.3}.wishlist-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:16px}.wishlist-btn{display:inline-flex;align-items:center;gap:6px;padding:9px 16px;border:1px solid #9A5566;border-radius:2px;background:#fefdf98c;color:#9a5566;font-family:EB Garamond,serif;font-size:14px;letter-spacing:.3px;cursor:pointer;transition:background .25s,color .25s,border-color .25s}.wishlist-btn:hover,.wishlist-btn.primary{background:#9a5566;color:#fefdf9}.wishlist-btn.primary:hover{background:#4a2830;border-color:#4a2830}.wishlist-btn.primary.is-copied{background:#5e3440;border-color:#5e3440}.wishlist-btn .bx{font-size:16px;font-style:normal}.modal-inner.calendar p{display:flex;gap:10px;margin-bottom:4px}.modal-inner.calendar p span{font-family:EB Garamond,serif;font-size:15px;color:#000}.modal-inner.location p{font-family:EB Garamond,serif;font-size:15px;color:#000;font-weight:300;line-height:1.5;text-align:center;text-wrap:balance;max-width:320px;margin:0 auto}.modal-inner.music p{font-family:EB Garamond,serif;font-size:15px;color:#5e3440;text-align:center}.music-credit{font-size:13px!important;opacity:.7}.music-visualizer{display:flex;align-items:flex-end;justify-content:center;gap:7px;height:40px;margin:12px 0;width:100%}.vis-bar{display:block;width:8px;border-radius:3px;background:var(--card-accent-soft);opacity:.2;height:6px}.music-visualizer.playing .vis-bar{opacity:.65;animation:visBar 1s ease-in-out infinite alternate}.music-visualizer.playing .vis-bar:nth-child(1){animation-duration:.7s;animation-delay:0s}.music-visualizer.playing .vis-bar:nth-child(2){animation-duration:.9s;animation-delay:.1s}.music-visualizer.playing .vis-bar:nth-child(3){animation-duration:.6s;animation-delay:.2s}.music-visualizer.playing .vis-bar:nth-child(4){animation-duration:1.1s;animation-delay:.05s}.music-visualizer.playing .vis-bar:nth-child(5){animation-duration:.8s;animation-delay:.3s}.music-visualizer.playing .vis-bar:nth-child(6){animation-duration:1s;animation-delay:.15s}.music-visualizer.playing .vis-bar:nth-child(7){animation-duration:.65s;animation-delay:.25s}.music-visualizer.playing .vis-bar:nth-child(8){animation-duration:.85s;animation-delay:.08s}.music-visualizer.playing .vis-bar:nth-child(9){animation-duration:.75s;animation-delay:.18s}@keyframes visBar{0%{height:4px}to{height:34px}}.music-controls{margin-top:12px}.play-btn{display:flex;align-items:center;gap:8px;padding:10px 28px;background:#fff;border:1px solid #F5E2E3;border-radius:100px;cursor:pointer;font-size:15px;font-family:EB Garamond,serif;font-weight:600;transition:opacity .2s}.play-btn .bx{font-size:20px;color:var(--card-accent)}.play-btn:hover{opacity:.85}.contact-list{width:100%;display:flex;flex-direction:column;gap:14px;margin-top:4px}.contact-person{display:flex;align-items:center;justify-content:space-between;width:100%;padding-bottom:12px;border-bottom:1px solid rgba(227,181,189,.35)}.contact-person:last-child{padding-bottom:0;border-bottom:none}.contact-left{display:flex;align-items:center;gap:8px}.contact-info{display:flex;flex-direction:column}.contact-name{font-family:EB Garamond,serif;font-size:16px;color:#000}.contact-relation{font-family:EB Garamond,serif;font-style:italic;font-size:12.5px;letter-spacing:.4px;color:#b07a86;margin-top:1px}.contact-right{display:flex;gap:10px}.contact-right button{background:transparent;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center}.contact-right .bx{font-size:28px;color:#000;transition:opacity .2s}.contact-right button:hover .bx{opacity:.7}.modal-inner.success{flex-direction:row;gap:16px;padding:8px 0;align-items:center;justify-content:flex-start;width:100%}.modal-inner.success .bx{font-size:56px;color:#adff2f}.modal-inner.success p{font-family:EB Garamond,serif;font-size:16px;color:#5e3440;font-weight:300;line-height:1.6}.loading-screen{width:100%;min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--card-bg)}.loading-block{display:flex;flex-direction:column;align-items:center;gap:14px}.loading-heart{font-size:22px;color:var(--card-accent-soft);animation:loadingHeartPulse 1.3s ease-in-out infinite}.loading-script{font-family:Pinyon Script,serif;font-size:34px;color:var(--card-accent-light);margin:0}.loading-bar-track{width:180px;height:6px;border-radius:100px;background:var(--card-info-bg);border:1px solid var(--card-accent);overflow:hidden}.loading-bar-fill{height:100%;border-radius:100px;background:var(--card-accent-light);transition:width .2s ease-out}.loading-percent{font-family:EB Garamond,serif;font-size:13px;letter-spacing:1px;color:var(--card-accent-info);margin:0}@keyframes loadingHeartPulse{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}@media (prefers-reduced-motion: reduce){.splash-tap{animation:none;opacity:.9}.loading-heart{animation:none}.loading-bar-fill{transition:none}}@media (max-width: 600px){.card,.footer,.toggle-menu{max-width:100%}}.made-by{display:flex;flex-direction:column;align-items:center;gap:2px;padding:12px 0 22px}.made-by__label{font-family:EB Garamond,serif;font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:#b07a86}.made-by__logo{width:92px;height:auto;opacity:.92;-webkit-user-select:none;user-select:none}.event-intro{white-space:pre-line}.event-part .bismillah{font-family:Amiri,serif;font-size:min(6.5cqw,28px);line-height:1.6;font-style:normal;letter-spacing:0;white-space:nowrap;color:#5e3440;margin:0 0 2.4cqw;direction:rtl}.parent-names .parent-amp{font-family:Pinyon Script,serif;font-style:normal;font-weight:400;color:#5e3440}.event-part .event-connector{opacity:.8}.petals{position:fixed;top:0;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:420px;z-index:800;pointer-events:none;overflow:hidden}.petal{position:absolute;top:0;left:var(--pt-x);width:var(--pt-size);aspect-ratio:24 / 32;color:var(--pt-color);opacity:0;animation:ptFall var(--pt-dur) linear var(--pt-delay) infinite;will-change:top,transform,opacity}.petal svg{display:block;overflow:visible}.petal .pt-fill{fill:currentColor}.petal .pt-vein{fill:none;stroke:#fff9;stroke-width:.8;stroke-linecap:round}.pt-tumble{display:block;width:100%;height:100%;animation:ptTumble var(--pt-tumble) ease-in-out infinite;filter:drop-shadow(0 2px 2px rgba(94,52,64,.12))}.petal.p1{--pt-x: 10%;--pt-size: 13px;--pt-color: #E3B5BD;--pt-dur: 16s;--pt-delay: -6s;--pt-tumble: 3.2s}.petal.p2{--pt-x: 64%;--pt-size: 11px;--pt-color: #F6E0E2;--pt-dur: 19s;--pt-delay: -13s;--pt-tumble: 4s}.petal.p3{--pt-x: 38%;--pt-size: 12px;--pt-color: #C98C98;--pt-dur: 17s;--pt-delay: -2s;--pt-tumble: 2.8s}.petal.p4{--pt-x: 86%;--pt-size: 10px;--pt-color: #E3B5BD;--pt-dur: 21s;--pt-delay: -9s;--pt-tumble: 3.6s}.petal.p5{--pt-x: 24%;--pt-size: 9px;--pt-color: #F6E0E2;--pt-dur: 18s;--pt-delay: 3s;--pt-tumble: 3s}.petal.p6{--pt-x: 52%;--pt-size: 12px;--pt-color: #E3B5BD;--pt-dur: 23s;--pt-delay: 7s;--pt-tumble: 4.4s}.petal.p7{--pt-x: 76%;--pt-size: 11px;--pt-color: #C98C98;--pt-dur: 20s;--pt-delay: 11s;--pt-tumble: 3.4s}.petal.p8{--pt-x: 4%;--pt-size: 10px;--pt-color: #F6E0E2;--pt-dur: 22s;--pt-delay: 15s;--pt-tumble: 3.8s}.petal.p2 .pt-tumble,.petal.p5 .pt-tumble,.petal.p7 .pt-tumble{animation-direction:reverse}@keyframes ptFall{0%{top:-5%;transform:translate(0);opacity:0}6%{opacity:.9}25%{transform:translate(30px)}50%{transform:translate(-20px)}75%{transform:translate(26px)}94%{opacity:.9}to{top:104%;transform:translate(-8px);opacity:0}}@keyframes ptTumble{0%{transform:rotate(0) rotateX(0) rotateY(0)}25%{transform:rotate(60deg) rotateX(60deg) rotateY(20deg)}50%{transform:rotate(140deg) rotateX(0) rotateY(70deg)}75%{transform:rotate(220deg) rotateX(-50deg) rotateY(20deg)}to{transform:rotate(360deg) rotateX(0) rotateY(0)}}@media (prefers-reduced-motion: reduce){.petals{display:none}}.scroll-hint{position:fixed;z-index:950;right:max(10px,calc(50% - 200px));bottom:calc(90px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;align-items:center;gap:8px;padding:0;border:0;background:none;color:var(--hint-ink, #8a7565);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:opacity .3s ease,visibility 0s}.scroll-hint.is-up{flex-direction:column-reverse}.scroll-hint.is-hidden{opacity:0;visibility:hidden;transition:opacity .2s ease,visibility 0s linear .2s}.scroll-hint-line{position:relative;width:1px;height:34px;overflow:hidden;background:color-mix(in srgb,var(--hint-ink, #8a7565) 28%,transparent)}.scroll-hint-line i{position:absolute;left:-1.5px;top:0;width:4px;height:4px;border-radius:50%;background:var(--hint-ink, #8a7565);animation:hintDotDown 1.8s cubic-bezier(.45,0,.55,1) infinite}.scroll-hint.is-up .scroll-hint-line i{animation-name:hintDotUp}.scroll-hint-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;border:1px solid color-mix(in srgb,var(--hint-ink, #8a7565) 35%,transparent);background:#ffffffc7;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 4px 12px #0000001a;transition:background .25s ease,color .25s ease,transform .25s ease}.scroll-hint-btn .bx{font-size:20px;line-height:1}@media (hover: hover){.scroll-hint:hover .scroll-hint-btn{background:var(--hint-ink, #8a7565);color:#fff;transform:translateY(2px)}.scroll-hint.is-up:hover .scroll-hint-btn{transform:translateY(-2px)}}.scroll-hint:active .scroll-hint-btn{transform:scale(.92)}.scroll-hint:focus-visible{outline:none}.scroll-hint:focus-visible .scroll-hint-btn{outline:2px solid var(--hint-ink, #8a7565);outline-offset:2px}@keyframes hintDotDown{0%{transform:translateY(-6px);opacity:0}20%{opacity:1}80%{opacity:1}to{transform:translateY(36px);opacity:0}}@keyframes hintDotUp{0%{transform:translateY(36px);opacity:0}20%{opacity:1}80%{opacity:1}to{transform:translateY(-6px);opacity:0}}@media (prefers-reduced-motion: reduce){.scroll-hint-line i{animation:none;top:50%;opacity:1}}.intro-couples.two{display:flex;flex-direction:column;align-items:center;zoom:var(--two-scale, .72);width:100%}.intro-pair{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:center;column-gap:.4em}.intro-pair h2{margin:0!important}.intro-pair-amp,.intro-pair h3{margin:0 .1em!important}.intro-serta,.splash-serta{display:flex;align-items:center;justify-content:center;gap:.7em;font-family:EB Garamond,serif;font-style:italic;line-height:1;opacity:.85}.intro-serta{font-size:30px;margin:.45em 0}.intro-serta:before,.intro-serta:after,.splash-serta:before,.splash-serta:after{content:"";width:3.2em;height:1px;background:currentColor;opacity:.55}.splash-names.two{zoom:var(--two-scale-splash, .95)}.splash-names.two .splash-pair{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:center;column-gap:.3em}.splash-serta{font-size:.42em;margin:.35em 0}.splash-names.two .splash-serta{font-size:clamp(13px,4.2cqw,18px)}.intro-couples.two{--two-scale: .6}.intro-content:has(.intro-couples.two) .walimatul{margin-bottom:4cqw}.splash-names.two{--two-scale-splash: .82}.splash-names.two .splash-pair{column-gap:.45em}.splash-pair .splash-name,.intro-pair h2{overflow-wrap:normal;white-space:nowrap}.event-connector.event-serta{display:flex;align-items:center;justify-content:center;gap:.7em}.event-connector.event-serta:before,.event-connector.event-serta:after{content:"";width:3.2em;height:1px;background:currentColor;opacity:.55}.intro-couples.two .intro-pair,.splash-names.two .splash-pair{display:grid;grid-template-columns:auto auto;justify-content:center;align-items:baseline;column-gap:.12em;row-gap:0}.intro-couples.two .intro-pair>:first-child,.splash-names.two .splash-pair>:first-child{grid-column:1 / 3;grid-row:1;justify-self:start;margin:0 0 0 -.9em!important}.intro-couples.two .intro-pair>:nth-child(2),.splash-names.two .splash-pair>:nth-child(2){grid-column:1;grid-row:2;justify-self:end;margin:0!important}.intro-couples.two .intro-pair>:nth-child(3),.splash-names.two .splash-pair>:nth-child(3){grid-column:2;grid-row:2;margin:-.3em 0 0!important}.splash-names.two .splash-pair{display:grid}.intro-couples.two .intro-pair,.splash-names.two .splash-pair{grid-template-columns:1fr auto auto 1fr;width:100%;--stagger: .55em}.intro-couples.two .intro-pair>:first-child,.splash-names.two .splash-pair>:first-child{grid-column:1 / 5;justify-self:center;margin:0!important;transform:translate(calc(var(--stagger) * -1))}.intro-couples.two .intro-pair>:nth-child(2),.splash-names.two .splash-pair>:nth-child(2){grid-column:2;transform:translate(var(--stagger))}.intro-couples.two .intro-pair>:nth-child(3),.splash-names.two .splash-pair>:nth-child(3){grid-column:3;transform:translate(var(--stagger))}.intro-serta{color:#4a6076;opacity:1}.event-part.two p{-webkit-text-stroke:.4px currentColor}.splash-serta{color:#4a6076;opacity:1}.hide-rsvp .rsvp-tray,.hide-rsvp .ucapan-khas-btn,.hide-music .music-disc,.menu-empty .footer{display:none!important}.event-part p.event-connector{color:#9a5566}.event-part.two p{font-family:Tangerine,cursive;font-weight:700;-webkit-text-stroke:0;font-size-adjust:.31}.name-font-pinyon .event-part.two p{font-family:Pinyon Script,cursive;font-weight:400;font-size-adjust:none}.name-font-montecarlo .event-part.two p{font-family:MonteCarlo,cursive;font-weight:400;font-size-adjust:none;-webkit-text-stroke:0}.name-font-tangerine .event-part.two p{font-family:Tangerine,cursive;font-weight:700;font-size-adjust:.31;-webkit-text-stroke:0}.name-font-satisfy .event-part.two p{font-family:Satisfy,cursive;font-weight:400;font-size-adjust:none;letter-spacing:0;-webkit-text-stroke:0}.name-scaled .event-part.two p{zoom:var(--name-scale, 1)}.name-weight-bold .event-part.two p{-webkit-text-stroke:.55px currentColor}
