@font-face{font-family:Aquarelle;src:url(/assets/aquarelle-DuPoqjRx.woff2)format("woff2"),url(/assets/aquarelle-BnE2VUmT.woff)format("woff")}@font-face{font-family:Katty Diona;src:url(/assets/katty-diona-D1sSiU0c.woff2)format("woff2"),url(/assets/katty-diona-D90LQwmd.woff)format("woff")}@font-face{font-family:Madam Ghea;src:url(/assets/madam-ghea-Bvhl0dfq.woff2)format("woff2"),url(/assets/madam-ghea-vMuq0XHM.woff)format("woff")}@font-face{font-family:Carlytte;src:url(/assets/carlytte-CnfJAngt.woff2)format("woff2"),url(/assets/carlytte-CALOj2Tt.woff)format("woff")}@font-face{font-family:Belinda Avenue;src:url(/assets/belinda-avenue-CPUfLi1l.woff2)format("woff2"),url(/assets/belinda-avenue-kKy6FR0W.woff)format("woff")}@font-face{font-family:PlayfairDisplay;src:url(/assets/playfairdisplay-Be_VH2UZ.woff2)format("woff2"),url(/assets/playfairdisplay-BM0u_BKH.woff)format("woff")}@font-face{font-family:OpenSans;src:url(/assets/opensans-CkRAt4Qb.woff2)format("woff2"),url(/assets/opensans-CtnZHBPr.woff)format("woff")}@font-face{font-family:Mallong;src:url(/assets/mallong-DpcWH3sW.woff2)format("woff2"),url(/assets/mallong-BaYxKfLD.woff)format("woff")}@font-face{font-family:Signora;src:url(/assets/signora-DIl614m1.woff2)format("woff2"),url(/assets/signora-CWF87DcR.woff)format("woff")}@font-face{font-family:The Hamstter;src:url(/assets/the-hamstter-DPrSNhSm.woff2)format("woff2"),url(/assets/the-hamstter-CFUWiZ1m.woff)format("woff")}@font-face{font-family:Parfumerie Script Pro;src:url(/assets/ParfumerieScriptPro-CJuRG2RB.ttf)format("truetype");font-display:swap}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#e8e8e8;font-family:Arial,sans-serif}img{display:block}#root{min-height:100svh}:is(html:has(.led-shell),html:has(.led-checkin)){height:100dvh}:is(html:has(.led-shell),html:has(.led-checkin),body:has(.led-shell),body:has(.led-checkin)){overscroll-behavior:none;max-height:100%;overflow:hidden}:is(body:has(.led-shell),body:has(.led-checkin)){height:100%}:is(#root:has(.led-shell),#root:has(.led-checkin)){height:100%;max-height:100%;overflow:hidden}#root:has(.led-shell)>.led-shell{height:100%;min-height:100dvh;max-height:100%}#root:has(.led-checkin)>.led-fullscreen.led-checkin{height:100%;min-height:0;max-height:100%}.global-led-top-msg{z-index:99999;padding:.55rem 0;padding-top:calc(.55rem + env(safe-area-inset-top,0px));pointer-events:none;-webkit-backdrop-filter:blur(8px);background:#16120e99;border-bottom:1px solid #ffffff1f;position:fixed;top:0;left:0;right:0;box-shadow:0 6px 24px #00000059}.global-led-top-msg__clip{width:100%;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 2% 98%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 2% 98%,#0000 100%)}.global-led-top-msg__track{white-space:nowrap;letter-spacing:.04em;color:#fffef8;text-shadow:0 0 1px #000c,0 1px 3px #0000008c,0 0 12px #ffffff26;will-change:transform;padding-left:100%;font-size:clamp(.95rem,2.5vw,1.25rem);font-weight:800;animation-name:global-led-top-msg-scroll;animation-timing-function:linear;animation-iteration-count:1;animation-fill-mode:forwards;display:inline-block}.global-led-top-msg__track.global-led-top-msg__track--debug{animation-iteration-count:infinite}@keyframes global-led-top-msg-scroll{0%{transform:translate(0)}to{transform:translate(-100%)}}.typing-reveal{margin:0}.typing-reveal__sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.typing-reveal__visible{display:inline}.typing-reveal__caret{opacity:.72;vertical-align:-.1em;background:currentColor;width:.09em;min-width:2px;height:1em;margin-left:1px;animation:.95s step-end infinite typing-reveal-caret-blink;display:inline-block}@keyframes typing-reveal-caret-blink{0%,49%{opacity:.72}50%,to{opacity:0}}@media (prefers-reduced-motion:reduce){.typing-reveal__caret{opacity:.55;animation:none}}.guest-broadcast-overlay{z-index:10060;padding:max(20px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(20px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));box-sizing:border-box;pointer-events:auto;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.guest-broadcast-overlay__backdrop{cursor:pointer;-webkit-backdrop-filter:blur(12px);background:#120e0a94;border:none;margin:0;padding:0;position:absolute;inset:0}.guest-broadcast-overlay__panel{z-index:1;text-align:center;pointer-events:auto;background:#fffdf8f5;border:1px solid #ffffffa6;border-radius:20px;width:100%;max-width:min(26rem,100%);max-height:min(78dvh,520px);padding:1.35rem 1.25rem 1.15rem;position:relative;overflow-y:auto;box-shadow:0 20px 60px #00000047,inset 0 1px #ffffffe6}.guest-broadcast-overlay__body{color:#3d342c;text-align:center;margin:0 0 1.1rem;font-size:clamp(1.05rem,3.8vw,1.2rem);font-weight:600;line-height:1.55}.guest-broadcast-overlay__body .typing-reveal__visible{text-align:center}.guest-broadcast-overlay__close{color:#5c3b0c;cursor:pointer;background:linear-gradient(145deg,#fff8ebfa,#ffecd2f2);border:1px solid #b8956a73;border-radius:999px;justify-content:center;align-items:center;min-width:7rem;padding:.65rem 1.25rem;font-size:.95rem;font-weight:700;display:inline-flex;box-shadow:0 4px 14px #00000014}.guest-broadcast-overlay__close:hover{filter:brightness(1.03)}.guest-broadcast-overlay__close:focus-visible{outline-offset:2px;outline:2px solid #b8956a}.guest-lang-switch{top:max(10px, env(safe-area-inset-top));right:max(10px, env(safe-area-inset-right));z-index:10020;-webkit-backdrop-filter:blur(12px);background:#ffffff8c;border:1px solid #ffffff80;border-radius:999px;gap:0;padding:3px;display:flex;position:fixed;box-shadow:0 4px 20px #00000014}.guest-lang-switch__btn{letter-spacing:.02em;color:#4a4038;cursor:pointer;background:0 0;border:none;border-radius:999px;min-width:2.5rem;padding:.35rem .65rem;font-family:Quicksand,OpenSans,system-ui,sans-serif;font-size:.8rem;font-weight:600;transition:background .15s,color .15s}.guest-lang-switch__btn:hover{background:#ffffffa6}.guest-lang-switch__btn--active{color:#2c241c;background:#fffffff2;box-shadow:0 1px 4px #0000000f}.yarl__fullsize{width:100%;height:100%}.yarl__relative{position:relative}.yarl__portal{opacity:0;transition:opacity var(--yarl__fade_animation_duration,.25s) var(--yarl__fade_animation_timing_function,ease);z-index:var(--yarl__portal_zindex,9999);position:fixed;inset:0;overflow:hidden}.yarl__portal_open{opacity:1}.yarl__container{background-color:var(--yarl__container_background_color,var(--yarl__color_backdrop,#000));overscroll-behavior:var(--yarl__controller_overscroll_behavior,contain);touch-action:var(--yarl__controller_touch_action,none);-webkit-user-select:none;user-select:none;outline:none;position:absolute;inset:0;overflow:hidden}.yarl__carousel{height:100%;opacity:var(--yarl__pull_opacity,1);transform:translate(var(--yarl__swipe_offset,0),var(--yarl__pull_offset,0));width:calc(100% + (var(--yarl__carousel_slides_count) - 1)*(100% + var(--yarl__carousel_spacing_px,0)*1px + var(--yarl__carousel_spacing_percent,0)*1%));flex:none;place-content:center;align-items:stretch;display:flex}.yarl__carousel_with_slides{-moz-column-gap:calc(var(--yarl__carousel_spacing_px,0)*1px + 100/(var(--yarl__carousel_slides_count)*100 + (var(--yarl__carousel_slides_count) - 1)*var(--yarl__carousel_spacing_percent,0))*var(--yarl__carousel_spacing_percent,0)*1%);column-gap:calc(var(--yarl__carousel_spacing_px,0)*1px + 100/(var(--yarl__carousel_slides_count)*100 + (var(--yarl__carousel_slides_count) - 1)*var(--yarl__carousel_spacing_percent,0))*var(--yarl__carousel_spacing_percent,0)*1%)}.yarl__flex_center{place-content:center;align-items:center;display:flex}.yarl__slide{padding:calc(var(--yarl__carousel_padding_px,0)*1px + 100/(var(--yarl__carousel_slides_count)*100 + (var(--yarl__carousel_slides_count) - 1)*var(--yarl__carousel_spacing_percent,0))*var(--yarl__carousel_padding_percent,0)*1%);flex:1;position:relative;overflow:hidden}[dir=rtl] .yarl__slide{--yarl__direction:-1}.yarl__slide_image{-o-object-fit:contain;object-fit:contain;touch-action:var(--yarl__controller_touch_action,none);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;max-width:100%;max-height:100%}.yarl__slide_image_cover{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.yarl__slide_image_loading{opacity:0}@media screen and (width>=800px){.yarl__slide_wrapper:not(.yarl__slide_wrapper_interactive) .yarl__slide_image{-webkit-backface-visibility:hidden;-webkit-transform-style:preserve-3d;-webkit-transform:translateZ(0)}}.yarl__slide_placeholder{line-height:0;position:absolute;top:50%;left:50%;transform:translate(-50%)translateY(-50%)}.yarl__slide_loading{color:var(--yarl__slide_icon_loading_color,var(--yarl__color_button,#fffc));animation:1s linear yarl__delayed_fadein}.yarl__slide_loading line{animation:1s linear infinite yarl__stroke_opacity}.yarl__slide_loading line:first-of-type{animation-delay:-1.875s}.yarl__slide_loading line:nth-of-type(2){animation-delay:-1.75s}.yarl__slide_loading line:nth-of-type(3){animation-delay:-1.625s}.yarl__slide_loading line:nth-of-type(4){animation-delay:-1.5s}.yarl__slide_loading line:nth-of-type(5){animation-delay:-1.375s}.yarl__slide_loading line:nth-of-type(6){animation-delay:-1.25s}.yarl__slide_loading line:nth-of-type(7){animation-delay:-1.125s}.yarl__slide_loading line:nth-of-type(8){animation-delay:-1s}.yarl__slide_error{color:var(--yarl__slide_icon_error_color,red);height:var(--yarl__slide_icon_error_size,48px);width:var(--yarl__slide_icon_error_size,48px)}@media (prefers-reduced-motion){.yarl__portal,.yarl__slide{transition:unset}.yarl__slide_loading,.yarl__slide_loading line{animation:unset}}.yarl__toolbar{padding:var(--yarl__toolbar_padding,8px);justify-content:flex-end;display:flex;position:absolute;inset:0 0 auto auto}[dir=rtl] .yarl__toolbar{inset:0 auto auto 0}.yarl__icon{height:var(--yarl__icon_size,32px);width:var(--yarl__icon_size,32px)}.yarl__button{appearance:none;background-color:var(--yarl__button_background_color,transparent);border:var(--yarl__button_border,0);color:var(--yarl__color_button,#fffc);cursor:pointer;filter:var(--yarl__button_filter,drop-shadow(2px 2px 2px #000c));margin:var(--yarl__button_margin,0);padding:var(--yarl__button_padding,8px);-webkit-tap-highlight-color:transparent;outline:none;line-height:0}.yarl__button:focus{color:var(--yarl__color_button_active,#fff)}.yarl__button:focus:not(:focus-visible){color:var(--yarl__color_button,#fffc)}.yarl__button:focus-visible{color:var(--yarl__color_button_active,#fff)}@media (hover:hover){.yarl__button:focus-visible:hover,.yarl__button:focus:hover,.yarl__button:hover{color:var(--yarl__color_button_active,#fff)}}.yarl__button:disabled{color:var(--yarl__color_button_disabled,#fff6);cursor:default}.yarl__navigation_next,.yarl__navigation_prev{padding:var(--yarl__navigation_button_padding,24px 16px);position:absolute;top:50%;transform:translateY(-50%)}.yarl__navigation_prev{left:0}[dir=rtl] .yarl__navigation_prev{left:unset;right:0;transform:translateY(-50%)rotate(180deg)}.yarl__navigation_next{right:0}[dir=rtl] .yarl__navigation_next{left:0;right:unset;transform:translateY(-50%)rotate(180deg)}.yarl__no_scroll{overscroll-behavior:none;height:100%;overflow:hidden}@keyframes yarl__delayed_fadein{0%{opacity:0}80%{opacity:0}to{opacity:1}}@keyframes yarl__stroke_opacity{0%{stroke-opacity:1}to{stroke-opacity:.125}}.yarl__counter{bottom:var(--yarl__counter_bottom,unset);color:var(--yarl__counter_color,var(--yarl__color_button,#fffc));filter:var(--yarl__counter_filter,drop-shadow(2px 2px 2px #000c));left:var(--yarl__counter_left,0);line-height:var(--yarl__counter_line_height,var(--yarl__icon_size,32px));margin:var(--yarl__counter_margin,var(--yarl__toolbar_padding,8px));padding:var(--yarl__counter_padding,var(--yarl__button_padding,8px));position:var(--yarl__counter_position,absolute);right:var(--yarl__counter_right,unset);top:var(--yarl__counter_top,0);-webkit-user-select:var(--yarl__counter_user_select,none);-moz-user-select:var(--yarl__counter_user_select,none);user-select:var(--yarl__counter_user_select,none)}[dir=rtl] .yarl__counter{left:var(--yarl__counter_rtl_left,unset);right:var(--yarl__counter_rtl_right,0)}.yarl__thumbnails{height:100%;display:flex}.yarl__thumbnails_bottom,.yarl__thumbnails_end .yarl__thumbnails_track,.yarl__thumbnails_start .yarl__thumbnails_track,.yarl__thumbnails_top{flex-direction:column}.yarl__thumbnails_wrapper{flex:1;position:relative}.yarl__thumbnails_container{background-color:var(--yarl__thumbnails_container_background_color,var(--yarl__color_backdrop,#000));padding:var(--yarl__thumbnails_container_padding,16px);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;flex:none;position:relative;overflow:hidden}.yarl__thumbnails_vignette{pointer-events:none;--yarl__thumbnails_vignette_size:12%;position:absolute}@media (width>=1200px){.yarl__thumbnails_vignette{--yarl__thumbnails_vignette_size:8%}}@media (width>=2000px){.yarl__thumbnails_vignette{--yarl__thumbnails_vignette_size:5%}}.yarl__thumbnails_bottom .yarl__thumbnails_vignette,.yarl__thumbnails_top .yarl__thumbnails_vignette{background:linear-gradient(to right,var(--yarl__color_backdrop,#000) 0,transparent var(--yarl__thumbnails_vignette_size,12%) calc(100% - var(--yarl__thumbnails_vignette_size,12%)),var(--yarl__color_backdrop,#000) 100%);height:100%;left:0;right:0}.yarl__thumbnails_end .yarl__thumbnails_vignette,.yarl__thumbnails_start .yarl__thumbnails_vignette{background:linear-gradient(to bottom,var(--yarl__color_backdrop,#000) 0,transparent var(--yarl__thumbnails_vignette_size,12%) calc(100% - var(--yarl__thumbnails_vignette_size,12%)),var(--yarl__color_backdrop,#000) 100%);width:100%;top:0;bottom:0}.yarl__thumbnails_track{gap:var(--yarl__thumbnails_thumbnail_gap,16px);outline:none}.yarl__thumbnails_thumbnail{appearance:none;background:var(--yarl__thumbnails_thumbnail_background,#000);border-color:var(--yarl__thumbnails_thumbnail_border_color,var(--yarl__color_button,#fffc));border-radius:var(--yarl__thumbnails_thumbnail_border_radius,4px);border-style:var(--yarl__thumbnails_thumbnail_border_style,solid);border-width:var(--yarl__thumbnails_thumbnail_border,1px);cursor:pointer;-webkit-tap-highlight-color:transparent;box-sizing:content-box;height:var(--yarl__thumbnails_thumbnail_height,80px);padding:var(--yarl__thumbnails_thumbnail_padding,4px);width:var(--yarl__thumbnails_thumbnail_width,120px);outline:none;flex:none;position:relative;overflow:hidden}.yarl__thumbnails_thumbnail_active{border-color:var(--yarl__thumbnails_thumbnail_active_border_color,var(--yarl__color_button_active,#fff))}.yarl__thumbnails_thumbnail_fadein{animation:yarl__thumbnails_thumbnail_fadein var(--yarl__thumbnails_thumbnail_fadein_duration,.5s) ease-in-out var(--yarl__thumbnails_thumbnail_fadein_delay,0s) forwards;opacity:0}.yarl__thumbnails_thumbnail_fadeout{animation:yarl__thumbnails_thumbnail_fadeout var(--yarl__thumbnails_thumbnail_fadeout_duration,.5s) ease-in-out var(--yarl__thumbnails_thumbnail_fadeout_delay,0s) forwards;cursor:unset}.yarl__thumbnails_thumbnail_placeholder{cursor:unset;visibility:hidden}.yarl__thumbnails_thumbnail:focus{box-shadow:var(--yarl__thumbnails_thumbnail_focus_box_shadow,#000 0 0 0 2px,var(--yarl__color_button,#fffc) 0 0 0 4px)}.yarl__thumbnails_thumbnail:focus:not(:focus-visible){box-shadow:unset}.yarl__thumbnails_thumbnail:focus-visible{box-shadow:var(--yarl__thumbnails_thumbnail_focus_box_shadow,#000 0 0 0 2px,var(--yarl__color_button,#fffc) 0 0 0 4px)}.yarl__thumbnails_thumbnail_icon{color:var(--yarl__thumbnails_thumbnail_icon_color,var(--yarl__color_button,#fffc));filter:var(--yarl__thumbnails_thumbnail_icon_filter,drop-shadow(2px 2px 2px #000c));height:var(--yarl__thumbnails_thumbnail_icon_size,32px);width:var(--yarl__thumbnails_thumbnail_icon_size,32px);position:absolute;top:50%;left:50%;transform:translate(-50%)translateY(-50%)}@keyframes yarl__thumbnails_thumbnail_fadein{0%{opacity:0}to{opacity:1}}@keyframes yarl__thumbnails_thumbnail_fadeout{0%{opacity:1}to{opacity:0}}.app{background:#fff;position:relative}.music-toggle{top:max(16px, env(safe-area-inset-top));right:max(16px, env(safe-area-inset-right));cursor:pointer;z-index:10;background:#0006;border:none;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;padding:0;display:inline-flex;position:fixed;box-shadow:0 6px 20px #00000040}.music-toggle:focus-visible{outline-offset:2px;outline:2px solid #fff}.music-toggle__icon{width:34px;height:34px;animation:2.2s linear infinite paused music-spin;display:block}.music-toggle--playing .music-toggle__icon{animation-play-state:running}@keyframes music-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.app__shell{z-index:1;position:relative}.falling-decoration{pointer-events:none;z-index:2;position:fixed;inset:0;overflow:hidden}.falling-decoration__item{opacity:.9;color:#ff9d9d;text-shadow:0 0 1px #fff9;will-change:transform;font-size:30px;line-height:1;animation:linear infinite falling-decoration-fall;position:absolute;top:-8%}@keyframes falling-decoration-fall{0%{transform:translate3d(0, 0, 0) rotate(var(--fall-rot-start,-8deg)) scale(var(--fall-scale-start,1))}18%{transform:translate3d(var(--fall-sway-right,14px), 22vh, 0) rotate(calc(var(--fall-rot-start,-8deg) + 6deg)) scale(calc((var(--fall-scale-start,1) + var(--fall-scale-end,1)) / 2))}38%{transform:translate3d(var(--fall-sway-left,-14px), 50vh, 0) rotate(calc(var(--fall-rot-start,-8deg) - 4deg)) scale(var(--fall-scale-end,1))}62%{transform:translate3d(calc(var(--fall-drift,18px) / 2 + var(--fall-sway-right,14px)), 80vh, 0) rotate(calc(var(--fall-rot-end,18deg) - 8deg)) scale(calc((var(--fall-scale-start,1) + var(--fall-scale-end,1)) / 2))}82%{transform:translate3d(calc(var(--fall-drift,18px) + var(--fall-sway-left,-14px)), 102vh, 0) rotate(calc(var(--fall-rot-end,18deg) + 6deg)) scale(var(--fall-scale-end,1))}to{transform:translate3d(var(--fall-drift,18px), 118vh, 0) rotate(var(--fall-rot-end,18deg)) scale(var(--fall-scale-end,1))}}.gallery-clickable{cursor:zoom-in}.scene__side.gallery-clickable:focus-visible,.gallery-grid__item.gallery-clickable:focus-visible{outline-offset:2px;outline:2px solid #fff}.col-white{flex-direction:column;justify-content:center;align-items:center;width:100%;margin:0 auto;display:flex;overflow:hidden}.scene{background-color:#870212;align-items:stretch;width:100%;display:flex;position:relative;overflow:hidden}.scene__center:after,.scene__side:after{content:"";z-index:3;pointer-events:none;background:linear-gradient(#0000 0%,#870212 100%);width:100%;height:400px;position:absolute;bottom:0;left:0}.scene__side{filter:brightness(.68)saturate(.85);background-position:50%;background-size:cover;flex:1;min-width:0;transition:transform .9s,filter .9s;display:none;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(#000 60%,#0000);mask-image:linear-gradient(#000 60%,#0000)}.scene:hover .scene__side{filter:brightness(.75)saturate(.9)}.scene__side.gallery-clickable{object-fit:cover;-webkit-mask-image:linear-gradient(#000 60%,#0000 100%);mask-image:linear-gradient(#000 60%,#0000 100%)}.scene__center{z-index:2;flex:0 0 min(768px,100vw - 120px);width:min(768px,100vw - 120px);max-width:100%;position:relative;overflow:hidden}.gallery-grid{width:100%;display:flex;overflow:hidden}.gallery-grid__item{position:relative;overflow:hidden}.gallery-grid__item img{object-fit:cover;width:100%;height:100%}.gallery-grid__item--center{aspect-ratio:768/1077;flex:0 0 min(768px,100vw - 120px);width:min(768px,100vw - 120px);max-width:100%}.gallery-grid__item--side{filter:brightness(.78)saturate(.88);background-position:50%;background-size:cover;flex:1;transition:filter .9s;display:none}.gallery-grid:hover .gallery-grid__item--side{filter:brightness(.86)saturate(.95)}.hero{aspect-ratio:768/1155;width:100%;max-width:768px;height:auto;position:relative;overflow:hidden}.hero__save-date{color:#ffffffeb;z-index:3;white-space:nowrap;font-family:Katty Diona,serif;font-size:98px;font-weight:400;line-height:1;position:absolute;top:28px;left:16px}.hero__photo{object-fit:cover;width:100%;height:100%}.hero__name{color:#ffffffeb;z-index:4;z-index:3;white-space:nowrap;flex-direction:column;justify-content:center;align-items:center;font-family:Madam Ghea,serif;font-size:60px;font-weight:400;line-height:1;display:flex;position:absolute;top:24px;left:18px}.hero__amp{font-family:Katty Diona,serif;font-size:24px}.wedding-date-section{width:100%;margin-top:-2px}.wedding-date{width:768px;margin:0 auto;padding-top:18px;position:relative}.wedding-date__header{opacity:1;z-index:2;justify-content:space-between;align-items:flex-start;width:100%;padding:6px 23px 0;display:flex;position:absolute;top:-84px;right:0;transform:none}.wedding-day-text{color:#fff;font-family:Katty Diona,serif;font-size:80px;font-weight:500;line-height:1.15}.month-label{color:#fff;text-align:right;padding-top:6px;font-family:Madam Ghea,serif;font-size:54px}.calendar{padding:15px 0 0}.calendar__weekdays{text-align:center;color:#fff;letter-spacing:.02em;grid-template-columns:repeat(7,1fr);font-family:Arial,sans-serif;font-size:22px;font-weight:600;display:grid}.calendar__weekday{padding:8px 4px 12px;line-height:1}.calendar__days{text-align:center;color:#fff;grid-template-columns:repeat(7,1fr);font-family:Arial,sans-serif;font-size:25px;display:grid}.calendar__day{cursor:default;padding:34px 6px;line-height:1;position:relative}.calendar__day--empty{visibility:hidden}.calendar__day--selected{color:#fff;font-weight:700}.calendar__day--selected .heart-date{object-fit:contain;z-index:0;pointer-events:none;width:138px;height:138px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.calendar__day--selected .day-num{z-index:1;position:relative}.gradient-background{background:linear-gradient(#870212 0%,#ffffff4d 50%,#dfccc2 100%),url(/assets/miwpfurobs21mzu3-Bkq-NX2q.webp)}.couple-portraits{width:768px;padding:31px 0 15px}.portrait--bride{justify-content:flex-end;margin:auto 20px 32px auto;display:flex}.portrait-relative{position:relative}.portrait--bride .portrait__photo{object-fit:cover;object-position:bottom;border-radius:49px;width:527px;height:681px;box-shadow:0 10px 20px -5px #000}.portrait__labels{color:#fff;position:absolute;bottom:31px;left:49px}.label--role{font-family:Carlytte,serif;font-size:51px;font-weight:700;line-height:1.1}.label--name-bride{font-family:Madam Ghea,serif;font-size:48px;font-weight:700}.portrait--groom{justify-content:flex-start;margin:32px auto 32px 20px;display:flex;position:relative}.portrait--groom .portrait__photo{object-fit:cover;object-position:bottom;border-radius:49px;width:493px;height:671px;box-shadow:0 10px 20px -5px #000}.label--name-groom{color:#fff;letter-spacing:5px;font-family:Madam Ghea,serif;font-size:51px;font-weight:700}.love-story{aspect-ratio:768/756;width:100%;max-width:768px;height:auto;position:relative;overflow:hidden}.love-story__photo{object-fit:cover;width:100%;height:100%}.love-story__overlay{z-index:2;position:absolute;top:89px;left:177px;transform:rotate(8.97deg)}.love-story__title{color:#000;margin-bottom:12px;font-family:Belinda Avenue,cursive;font-size:40px;font-weight:500}.love-story__text{color:#000;width:455px;font-family:Belinda Avenue,cursive;font-size:23px;font-weight:500;line-height:1.6}.love-story__quote{z-index:2;position:absolute;bottom:146px;left:37px;transform:rotate(-3.07deg)}.love-story__quote-line{color:#000;font-family:Belinda Avenue,cursive;font-size:23px;font-weight:500;line-height:1.5}.invitation-card-section{width:768px;padding:20px;position:relative}.invitation-card-body{padding:60px 40px}.invitation-card{background:#fff;border:1px dotted #787878;border-radius:2px;font-family:Tinos,serif;overflow:hidden;box-shadow:0 5px 15px #787878}.invitation-border-top{z-index:2;border-top:1px solid;border-left:1px solid;width:150px;height:300px;position:absolute;top:60px;left:60px}.invitation-border-bottom{z-index:2;border-bottom:1px solid;border-right:1px solid;width:150px;height:300px;position:absolute;bottom:60px;right:60px}.invitation-card-body .parents-row{justify-content:space-between;gap:0;margin-bottom:0;padding-bottom:24px;display:flex}.invitation-card-body .parents-col{text-align:center;flex:1;padding:0;font-family:Tinos,serif;font-size:18px;font-weight:700;line-height:1}.invitation-card-body .parents-col:first-child{padding-right:32px}.invitation-card-body .parents__heading{letter-spacing:4px;text-transform:uppercase;color:#555;margin-bottom:12px;font-size:20px;font-weight:700}.invitation-card-body .parents__info{color:#555;font-size:22px;font-weight:400;line-height:1.65}.invitation-card-body .big-names{text-align:center;padding:30px 0;line-height:1}.invitation-card-body .big-name{color:#333;font-family:Katty Diona,serif;font-size:95px;display:block}.invitation-card-body .big-amp{color:#b0aba5;text-align:center;margin:-8px 0;font-family:The Hamstter,cursive;font-size:52px;font-weight:700;display:block}.invitation-card-body .invitation-text{letter-spacing:3px;text-transform:uppercase;text-align:center;color:#444;padding:12px 0 5px;font-family:Tinos,serif;font-size:19px;line-height:1.7}.invitation-card-body .p-40{padding-left:40px;padding-right:40px}.invitation-card-body .invitation-text-khach{letter-spacing:3px;text-transform:uppercase;text-align:center;color:#444;font-family:Madam Ghea,serif;font-size:30px;font-weight:700;line-height:1.7}.date-pipe-row{justify-content:center;align-items:center;gap:0;margin-bottom:8px;display:flex}.date-pipe-month,.date-pipe-year{letter-spacing:2px;color:#555;text-transform:uppercase;text-align:center;font-size:26px;font-weight:500}.date-pipe-sep{color:#d4d0cb;padding:0 18px;font-size:70px;font-weight:100;line-height:1}.date-pipe-num{color:#333;font-size:100px;font-weight:700;line-height:.88}.date-lunar{text-align:center;color:#555;letter-spacing:1px;text-transform:uppercase;padding:6px 0 18px;font-size:20px;font-weight:400}.venue-name{text-transform:uppercase;letter-spacing:3px;text-align:center;color:#444;padding:10px 0 6px;font-size:30px;font-weight:700;line-height:1.3}.venue-address{color:#666;text-align:center;letter-spacing:.5px;padding:0;font-size:22px;font-weight:400;line-height:1.5}.invitation-text-thanks{text-align:center;color:#555;padding:36px 0 24px;font-family:Dancing Script,cursive;font-size:20px;font-weight:400;line-height:1.7}.date-block-footer{justify-content:center;align-items:center;display:flex}.date-block-footer img{width:200px}.heart-icon{width:100px;height:100px}.map-section{width:768px;padding:9px 66px 46px}.map-frame{border:none;border-radius:6px;width:100%;height:384px}.timeline-section{width:100%}.timeline-section__col{text-align:center;width:768px;max-width:100%;margin:0 auto;padding:31px 16px 46px}.timeline__heading{color:#8b5b13;text-align:center;font-family:Quicksand,sans-serif;font-size:35px;font-weight:700}.timeline{max-width:720px;margin:0 auto}.timeline__items{flex-direction:row;justify-content:space-between;align-items:flex-start;padding-top:8px;display:flex;position:relative}.timeline-item__liner{z-index:0;background:#b8956a;width:100%;height:2px;margin-top:8px;margin-bottom:40px;top:40px;left:10%;right:10%}.timeline-item__liner2{z-index:1;background:#b8956a;width:2px;height:32px;position:absolute;top:-40px;left:49%}.timeline-item{text-align:center;z-index:1;flex-direction:column;flex:1;align-items:center;min-width:0;display:flex;position:relative}.timeline-item__icon-wrap{z-index:2;justify-content:center;align-items:center;width:72px;height:72px;display:flex;position:relative}.timeline-item__icon{object-fit:contain;width:56px;height:56px}.timeline-item__body{padding:0 4px;position:relative}.timeline-item__time{color:#8b6f47;margin-bottom:6px;font-family:Arial,Helvetica,sans-serif;font-size:clamp(18px,2.2vw,24px);font-weight:700;line-height:1.3}.timeline-item__event{color:#8b5b12;font-family:Arial,Helvetica,sans-serif;font-size:clamp(14px,1.8vw,18px);font-weight:400;line-height:1.35}.rsvp-section{background:#fff;width:768px;padding:15px 31px 31px}.rsvp-message{text-transform:uppercase;color:#000;text-align:center;padding:25px 0;font-family:Belinda Avenue,cursive;font-size:31px;font-weight:500;line-height:1.5}.rsvp-form-wrap{background:#fff;border:1px solid #e0e0e0;border-radius:8px;width:461px;margin:0 auto;padding:25px;box-shadow:0 2px 15px #0000001a}.rsvp-form__title{color:#333;text-align:center;margin-bottom:22px;font-family:Arial,sans-serif;font-size:25px;font-weight:700}.rsvp-form label{color:#333;margin-bottom:6px;font-family:Arial,sans-serif;font-size:22px;display:block}.rsvp-form input[type=text]{box-sizing:border-box;border:1px solid #e0e0e0;border-radius:6px;width:100%;margin-bottom:18px;padding:12px 15px;font-family:Arial,sans-serif;font-size:22px}.rsvp-form__attend-label{color:#333;margin-bottom:12px;font-family:Arial,sans-serif;font-size:22px}.rsvp-form__options{flex-direction:column;gap:12px;margin-bottom:25px;display:flex}.rsvp-form__option{color:#333;cursor:pointer;align-items:flex-start;gap:12px;font-family:Arial,sans-serif;font-size:20px;display:flex}.rsvp-form__option input[type=radio]{accent-color:#999;width:18px;height:18px;margin-top:3px}.rsvp-submit{color:#fff;cursor:pointer;background:#999;border:none;border-radius:6px;width:100%;padding:15px;font-family:Arial,sans-serif;font-size:22px}.rsvp-submit:hover{background:#888}.rsvp-confirmed{text-align:center;color:#666;padding:12px 0;font-family:Arial,sans-serif;font-size:22px}.gift-section{text-align:center;padding:46px 0 31px}.gift-section--standalone{box-sizing:border-box;width:768px;max-width:100%;margin:0 auto;padding:46px 31px 31px}.gift-section__qr{object-fit:contain;width:154px;height:154px;margin:0 auto 15px}.gift-section__title{color:#000;font-family:Signora,cursive;font-size:40px}.countdown-section{background-color:#dfccc2;flex-direction:row;align-items:stretch;width:100%;margin-top:-2px;display:flex;position:relative;overflow:hidden}.countdown__photo{flex:0 0 clamp(30%,35vw,40%);max-width:40%;min-height:0;position:relative;overflow:hidden}.countdown__photo .countdown__bg{object-fit:cover;object-position:center;width:100%;height:100%;display:block;-webkit-mask-image:linear-gradient(#0000,#000 30%),linear-gradient(270deg,#0000,#000 20%);mask-image:linear-gradient(#0000,#000 30%),linear-gradient(270deg,#0000,#000 20%);-webkit-mask-composite:source-in;mask-composite:intersect}.countdown__inner{z-index:2;flex-direction:column;flex:1;justify-content:center;align-items:center;width:auto;min-width:0;max-width:none;margin:0;padding:20px;display:flex;position:relative}.countdown__inner--overlay{pointer-events:none}.countdown__inner--overlay>*{pointer-events:auto}.countdown__heading{color:#8b5b12;text-align:center;margin-bottom:15px;font-family:Signora,cursive;font-size:88px}.countdown__timer{justify-content:center;gap:31px;padding:15px 0;display:flex}.countdown__unit{text-align:center}.countdown__number{color:#fff;font-family:Arial,sans-serif;font-size:60px;font-weight:700;display:block}.countdown__label{color:#fff;font-family:Arial,sans-serif;font-size:24px;display:block}.countdown__done{color:#fff;font-family:Arial,sans-serif;font-size:40px}.countdown__thankyou{color:#8b5b12;text-align:center;max-width:800px;margin-top:31px;padding:31px 32px;font-family:Belinda Avenue,cursive;font-size:26px;line-height:1.7}.galleries{flex-direction:row;justify-content:space-between;align-items:center;width:768px;margin:16px auto;padding:20px;display:flex}.gallery-item{width:28%;box-shadow:0 1px 5px #000}.gallery-item-center{width:38%;height:460px}.gallery-item img{object-fit:cover;width:100%;height:100%}.venue-link-block{width:100%;font:inherit;text-align:inherit;color:inherit;cursor:pointer;background:0 0;border:none;border-radius:10px;margin:0;padding:4px 8px 8px;transition:background .18s;display:block}.venue-link-block:hover,.venue-link-block:focus-visible{background:#8b6f4714}.venue-link-block:focus-visible{outline-offset:2px;outline:2px solid #b8956a}.floating-actions{right:max(16px, env(safe-area-inset-right));bottom:max(16px, env(safe-area-inset-bottom));z-index:10040;pointer-events:none;position:fixed}.floating-actions__list{pointer-events:auto;flex-direction:column;align-items:flex-end;gap:16px;margin:0;padding:0;list-style:none;display:flex}.floating-actions__btn{-webkit-backdrop-filter:blur(14px)saturate(150%);color:#8b5f13;cursor:pointer;background:#ffffffe0;border:1px solid #ffffff8c;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;padding:0;transition:transform .15s,box-shadow .15s;display:flex;box-shadow:0 4px 18px #0000001f,inset 0 1px #ffffffe6}.floating-actions__btn:hover{transform:scale(1.06);box-shadow:0 6px 22px #00000029}.floating-actions__btn:focus-visible{outline-offset:2px;outline:2px solid #b8956a}.floating-actions__item--match-slot:empty{display:none}.floating-actions__btn--match-chat{color:#9d174d;background:linear-gradient(145deg,#fce7f3,#fbcfe8);border:1px solid #f9a8d4e6;border-radius:46% 46% 46% 14%;width:52px;height:52px;position:relative;box-shadow:0 4px 18px #9d174d2e,inset 0 1px #ffffffe0}.floating-actions__btn--match-chat:hover{transform:scale(1.06);box-shadow:0 6px 22px #9d174d3d}.floating-actions__btn--match-chat:focus-visible{outline-offset:2px;outline:2px solid #db2777}.floating-actions__match-chat-emoji{font-size:1.4rem;line-height:1}.floating-actions__match-chat-badge{box-sizing:border-box;color:#fff;text-align:center;pointer-events:none;background:#dc2626;border-radius:999px;min-width:1.125rem;height:1.125rem;padding:0 5px;font-size:.62rem;font-weight:800;line-height:1.125rem;position:absolute;top:-3px;right:-3px;box-shadow:0 1px 4px #00000040}.floating-actions__icon{flex-shrink:0}.floating-actions__item--rsvp{flex-direction:row;justify-content:flex-end;align-items:center;gap:10px;max-width:min(100vw - 24px,340px);display:flex}.floating-actions__rsvp-hint{-webkit-backdrop-filter:blur(14px)saturate(150%);color:#5c3b0c;pointer-events:auto;background:#ffffffeb;border:1px solid #ffffff8c;border-radius:14px;flex:0 auto;max-width:min(240px,100vw - 100px);padding:10px 28px 10px 12px;position:relative;box-shadow:0 6px 22px #00000024,inset 0 1px #ffffffe6}.floating-actions__rsvp-hint-close{color:#8b5f13;cursor:pointer;background:0 0;border:none;padding:2px 4px;font-size:20px;line-height:1;position:absolute;top:4px;right:6px}.floating-actions__rsvp-hint-text{margin:0;font-size:12.5px;line-height:1.45}.floating-actions__rsvp-hint-close:focus-visible{outline-offset:2px;outline:2px solid #b8956a}@keyframes floating-actions-alarm{0%,to{transform:translate(0,0)rotate(0)}20%{transform:translate(-1px)rotate(-2.5deg)}40%{transform:translate(1px)rotate(2.5deg)}60%{transform:translate(-1px)rotate(-1.5deg)}80%{transform:translate(1px)rotate(1.5deg)}}.floating-actions__btn--shake{animation:.55s ease-in-out infinite floating-actions-alarm;box-shadow:0 4px 16px #b8783c61,0 0 0 1px #b8956a47,inset 0 1px #ffffffe6}@media (prefers-reduced-motion:reduce){.floating-actions__btn--shake{animation:none;box-shadow:0 4px 18px #0000001f,inset 0 1px #ffffffe6}}@media (width<=420px){.floating-actions__item--rsvp{flex-flow:row;justify-content:flex-end;align-items:center;gap:8px;max-width:min(100vw - 20px,100%)}.floating-actions__rsvp-hint{flex:auto;min-width:0;max-width:min(200px,100vw - 88px);padding:8px 26px 8px 10px}.floating-actions__rsvp-hint-text{font-size:11.5px;line-height:1.4}}.liquid-glass-modal{z-index:10050;padding:max(16px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));box-sizing:border-box;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.liquid-glass-modal__backdrop{cursor:pointer;-webkit-backdrop-filter:blur(12px);background:#16161c99;border:none;margin:0;padding:0;position:absolute;inset:0}.liquid-glass-modal__backdrop--static{cursor:default;pointer-events:auto}.liquid-glass-modal__panel{z-index:1;-webkit-backdrop-filter:blur(24px)saturate(165%);background:#ffffffb3;border:1px solid #ffffff73;border-radius:22px;width:min(100%,520px);max-height:min(90vh,720px);padding:18px 20px 22px;position:relative;overflow:auto;box-shadow:0 12px 48px #0000001f,inset 0 1px #ffffff8c}.liquid-glass-modal__panel--wide{width:min(100%,640px)}.liquid-glass-modal__header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;padding-bottom:4px;display:flex}.liquid-glass-modal__title{color:#3d3428;margin:0;font-family:Quicksand,OpenSans,sans-serif;font-size:1.25rem;font-weight:700}.liquid-glass-modal__close{cursor:pointer;color:#444;background:#ffffff73;border:1px solid #00000014;border-radius:50%;flex-shrink:0;width:36px;height:36px;font-size:1.35rem;line-height:1;transition:background .15s}.liquid-glass-modal__close:hover{background:#ffffffbf}.liquid-glass-modal__body{color:#333;font-family:OpenSans,Arial,sans-serif;line-height:1.6}.map-modal-content__frame-wrap{border:1px solid #0000000f;border-radius:14px;overflow:hidden;box-shadow:inset 0 1px #ffffff73}.map-modal-content__frame{vertical-align:top;border:none;width:100%;height:min(52vh,384px);display:block}.gift-bank-modal__thanks{color:#4a4036;text-align:center;margin:0 0 18px;font-size:.92rem;line-height:1.65}.gift-bank-modal__picker{border-bottom:1px solid #0000001f;gap:0;margin-bottom:0;display:flex}.gift-bank-modal__pick-btn{color:#4a4036;cursor:pointer;background:#ffffff5c;border:1px solid #0000001f;border-bottom:none;border-radius:12px 12px 0 0;flex:1;min-width:0;margin-bottom:-1px;padding:10px 12px;font-family:inherit;font-size:.85rem;font-weight:600;transition:background .15s,border-color .15s,color .15s}.gift-bank-modal__pick-btn:hover{border-color:#8b6f4773}.gift-bank-modal__pick-btn--active{color:#3d3428;background:#ffffffd1;border-color:#8b6f478c #8b6f478c #ffffffd1}.gift-bank-modal__pick-btn:focus-visible{outline-offset:1px;outline:2px solid #b8956a}.gift-bank-modal__card{text-align:center;background:#ffffff80;border:1px solid #0000001f;border-top:none;border-radius:0 0 14px 14px;margin:0;padding:16px 12px}.gift-bank-modal__qr-wrap{background:#fff;border-radius:12px;justify-content:center;align-items:center;padding:8px;display:flex;box-shadow:0 2px 12px #0000000f}.gift-bank-modal__qr{aspect-ratio:1;object-fit:contain;width:min(100%,440px);height:auto;display:block}.celebration-form{flex-direction:column;gap:8px;display:flex}.celebration-form__label{color:#4a4036;font-size:.88rem;font-weight:600}.celebration-form__input,.celebration-form__textarea{box-sizing:border-box;color:#222;background:#ffffffa6;border:1px solid #0000001f;border-radius:12px;width:100%;padding:10px 12px;font-family:inherit;font-size:.95rem}.celebration-form__textarea{resize:vertical;min-height:96px}.celebration-form__input:focus,.celebration-form__textarea:focus{outline-offset:1px;outline:2px solid #c9a068}.celebration-form__counter{color:#777;text-align:right;margin:0;font-size:.75rem}.celebration-form__error{color:#b33;margin:4px 0 0;font-size:.88rem}.celebration-form__hint{color:#555;margin:0;font-size:.9rem;line-height:1.5}.celebration-form__hint--warn{color:#6a4a2a}.celebration-form__code{background:#0000000f;border-radius:6px;padding:2px 6px;font-size:.82em}.celebration-form__submit{cursor:pointer;color:#fff;background:linear-gradient(165deg,#c9a068 0%,#8b6f47 100%);border:none;border-radius:999px;margin-top:10px;padding:12px 18px;font-size:.95rem;font-weight:600;transition:opacity .15s;box-shadow:0 4px 14px #8b6f4759}.celebration-form__submit:disabled{opacity:.65;cursor:not-allowed}.checkin-form{gap:14px}.checkin-form__req{color:#a44;font-weight:700}.checkin-form__opt{color:#777;font-size:.85em;font-weight:400}.checkin-form__field{flex-direction:column;gap:10px;display:flex}.checkin-form__chips{flex-wrap:wrap;gap:16px;margin:12px 0;display:flex}.checkin-form__chip{color:#3a3028;cursor:pointer;background:#ffffffb8;border:1px solid #4a403661;border-radius:999px;padding:8px 16px;font-family:inherit;font-size:.9rem;font-weight:600;transition:background .15s,color .15s,border-color .15s,box-shadow .15s,transform .15s}.checkin-form__chip:hover:not(:disabled){color:#2c241c;background:#ffffffeb;border-color:#8b6f4773}.checkin-form__chip--on{color:#fff;background:linear-gradient(165deg,#9a6b3a 0%,#6b4528 100%);border-color:#5c3d24;transform:translateY(-1px);box-shadow:0 4px 12px #3c281873,inset 0 1px #fff3}.checkin-form__chip--on:hover:not(:disabled){color:#fff;background:linear-gradient(165deg,#a67742 0%,#744e2e 100%);border-color:#5c3d24}.checkin-form__chip:disabled{opacity:.65;cursor:not-allowed}.checkin-form__upload-row{flex-direction:column;align-items:flex-start;gap:12px;display:flex}.checkin-form__file-label{cursor:pointer}.checkin-form__file-input{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.checkin-form__file-btn{color:#5c4f42;background:#ffffff73;border:1px dashed #0000002e;border-radius:999px;padding:10px 16px;font-size:.9rem;font-weight:600;transition:border-color .15s,background .15s;display:inline-block}.checkin-form__file-label:hover .checkin-form__file-btn{background:#ffffffbf;border-color:#c9a068}.checkin-form__hint{color:#888;margin:6px 0 0;font-size:.78rem;line-height:1.45}.checkin-form__preview-wrap{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.checkin-form__preview{object-fit:cover;border:1px solid #00000014;border-radius:12px;max-width:100%;max-height:200px}.checkin-form__remove-photo{cursor:pointer;color:#555;background:#fff9;border:1px solid #0000001a;border-radius:8px;padding:6px 12px;font-size:.85rem}.checkin-form__remove-photo:hover:not(:disabled){background:#ffffffe6}.rsvp-modal__intro{color:#555;margin:0 0 12px;font-size:.92rem;line-height:1.6}.rsvp-modal__greeting{flex-wrap:wrap;align-items:center;gap:12px 14px;margin-bottom:10px;display:flex}.rsvp-modal__greeting-text{color:#333;margin:0;font-size:1rem}.rsvp-modal__edit-name{color:#6a5540;cursor:pointer;background:#ffffff8c;border:1px solid #0000001f;border-radius:999px;padding:4px 10px;font-family:inherit;font-size:.82rem}.rsvp-modal__edit-name:hover:not(:disabled){border-color:#c9a068}.rsvp-modal-result{flex-direction:column;gap:16px;display:flex}.rsvp-modal-result__text{color:#333;margin:0;font-size:1rem;line-height:1.6}.rsvp-modal-result__text--soft{color:#555}.calendar-modal{flex-direction:column;gap:16px;display:flex}.calendar-modal__intro{color:#333;margin:0;font-size:1rem;line-height:1.55}.calendar-modal__actions{flex-direction:column;gap:10px;display:flex}.calendar-modal__secondary{color:#5c4030;cursor:pointer;background:0 0;border:1.5px solid #5c403059;border-radius:10px;padding:12px 16px;font-family:inherit;font-size:.95rem;font-weight:600}.calendar-modal__secondary:hover{background:#5c40300f;border-color:#5c40308c}.celebration-feed{left:max(12px, env(safe-area-inset-left));bottom:max(12px, env(safe-area-inset-bottom));z-index:10035;pointer-events:auto;-webkit-backdrop-filter:none;width:min(100vw - 24px,300px);max-height:min(70vh,700px);box-shadow:none;background:0 0;border:none;border-radius:0;flex-direction:column;padding:0;display:flex;position:fixed;overflow:hidden}.celebration-feed__header{color:#5c4030;border-bottom:1px solid #0000000f;flex-shrink:0;margin-bottom:4px;padding-bottom:8px;font-family:Quicksand,OpenSans,sans-serif;font-size:.95rem;font-weight:700}.celebration-feed__scroll{-webkit-overflow-scrolling:touch;flex:1;width:100%;min-height:0;overflow:hidden}.celebration-feed__list{flex-direction:column-reverse;gap:8px;margin:0;padding:0;list-style:none;display:flex}.celebration-feed__item{will-change:opacity;background:#ffffffb3;border:1px solid #0000000f;border-radius:14px;width:fit-content;padding:10px 10px 9px}.celebration-feed__name{color:#880213;margin-bottom:4px;font-size:.88rem;font-weight:700}.celebration-feed__text{color:#444;word-break:break-word;margin:0;font-size:1.2rem;line-height:1.45}.celebration-feed__time{color:#888;margin-top:6px;font-size:.72rem}.celebration-feed__empty{color:#666;margin:0;font-size:.85rem;line-height:1.4}@media (width<=480px){.celebration-feed{width:min(100vw - 16px,280px);max-height:50vh}}@media (width<=767px){.scene__center,.gallery-grid__item--center{flex:0 0 100%;width:100%}}@media (width<=768px){.col-white,.invitation-card-section{width:100%}.timeline{justify-content:center;align-items:center;margin:40px 0;display:flex}.timeline__items{flex-direction:column;align-items:stretch;gap:0;padding-top:0}.timeline-item__liner2{display:none}.timeline-item__liner{width:2px;height:100%;position:absolute;top:0;left:45%}.timeline-item__liner-inner{background:#b8956a;width:24px;height:2px;position:absolute;top:45px;left:0}.timeline__items:before{display:none}.timeline-item{text-align:left;flex-direction:row;align-items:flex-start;gap:16px;padding:28px;display:flex;position:relative}.timeline-item:after{display:none}.timeline-item__icon-wrap{z-index:1;border-radius:50%;flex-shrink:0;width:56px;height:56px;margin:0}.timeline-item__body{flex:1;min-width:0;margin-left:80px;padding:4px 0 0;position:relative}.countdown-section{min-height:0;display:block;position:relative}.countdown__photo{flex:none;width:100%;max-width:none;height:auto;min-height:0;position:relative}.countdown__photo .countdown__bg{width:100%;height:auto;max-height:none;display:block;position:relative}.countdown__inner{box-sizing:border-box;-webkit-overflow-scrolling:touch;background-color:linear-gradient(to top, #0000004d, transparent);justify-content:flex-end;width:100%;min-height:100%;padding:40px 16px 48px;position:absolute;inset:0;overflow-y:auto}.countdown__heading{font-size:clamp(52px,18vw,82px);color:#555!important}.countdown__timer{flex-wrap:wrap;gap:24px;padding:12px 0}.countdown__number{font-size:clamp(36px,14vw,48px)}.countdown__label{font-size:26px}.countdown__done{font-size:42px}.countdown__thankyou{max-width:500px;padding:20px 12px 0;font-size:30px;color:#555!important}.invitation-card-body{padding:60px 20px}.invitation-card-body .parents-col{font-size:20px}.invitation-card-body .parents__heading{font-size:22px}.invitation-card-body .parents__info{font-size:24px}.invitation-card-body .invitation-text{font-size:22px}.invitation-card-body .invitation-text-khach{font-size:34px}.invitation-card-body .big-name{font-size:99px}.invitation-card-body .big-amp{font-size:52px}.invitation-card-body .date-pipe-month,.invitation-card-body .date-pipe-year{font-size:29px}.invitation-card-body .date-pipe-num{font-size:104px}.invitation-card-body .date-lunar{font-size:22px}.invitation-card-body .venue-name{font-size:33px}.invitation-card-body .venue-address{font-size:24px}.invitation-card-body .invitation-text-thanks{font-size:22px}}@media (width>=768px){.scene__side{display:block}.scene__center{box-shadow:-20px 0 50px #00000073,20px 0 50px #00000073}.gallery-grid__item--side{display:block}.gallery-grid__item--center{aspect-ratio:unset;z-index:2;height:680px;box-shadow:-20px 0 50px #00000061,20px 0 50px #00000061}.gallery-grid__item{height:680px}}@media (width>=769px){.timeline-item:before{display:none!important}.timeline-item__body:before{display:none}.timeline-item:first-child .timeline-item__liner{margin-left:160px}.timeline-item:last-child .timeline-item__liner{margin-right:160px}.countdown__photo .countdown__bg{max-height:655px}}@media (prefers-reduced-motion:reduce){.falling-decoration{display:none}.floating-actions__btn:hover{transform:none}}.guest-checkin-form--page{max-width:26rem;margin:0 auto}.guest-checkin-resume{color:#5c4f42;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;min-height:6rem;padding:1rem 0;display:flex}.guest-checkin-resume .guest-checkin-done__spinner{width:2rem;height:2rem}.guest-checkin-resume__text{opacity:.88;margin:0;font-size:.92rem}.checkin-form__single-tonight{background:linear-gradient(135deg,#fff8eba6 0%,#ffecd673 100%);border:1px dashed #b8864a59;border-radius:16px;margin-top:.25rem;padding:.85rem .75rem .65rem}.checkin-form__single-tonight-head{align-items:flex-start;gap:.35rem;display:flex}.checkin-form__single-tonight-spark{flex-shrink:0;font-size:1.1rem;line-height:1.35;animation:2.2s ease-in-out infinite checkin-single-tonight-spark}.checkin-form__single-tonight-title{font-weight:650;line-height:1.35;display:block}.checkin-form__single-tonight-hint{color:#6b5c4e;opacity:.92;margin:.4rem 0 .5rem;padding-left:.1rem;font-size:.82rem;line-height:1.45}.checkin-form__chips--playful{margin-top:.35rem;margin-bottom:0;animation:3s ease-in-out infinite checkin-chips-nudge}@keyframes checkin-single-tonight-spark{0%,to{filter:brightness();transform:rotate(-6deg)scale(1)}50%{filter:brightness(1.15);transform:rotate(6deg)scale(1.08)}}@keyframes checkin-chips-nudge{0%,to{transform:translateY(0)}30%{transform:translateY(-2px)}60%{transform:translateY(1px)}}@media (prefers-reduced-motion:reduce){.checkin-form__single-tonight-spark,.checkin-form__chips--playful{animation:none}}.guest-checkin-done{text-align:center;padding:1rem 0;position:relative}.guest-checkin-done__hint{opacity:.85;margin:0 0 .35rem;font-size:.9rem;line-height:1.45}.guest-checkin-done__welcome{color:#3d342c;margin:0 0 .5rem;font-size:1.2rem;font-weight:600;line-height:1.35}.guest-checkin-done__photo-ok{color:#2d6a4f;margin:0 0 .75rem;font-size:.92rem}.guest-checkin-done__icons{justify-content:center;gap:1rem;margin:.25rem 0 .35rem;display:flex}.guest-checkin-done__icon-btn{box-sizing:border-box;color:#5c4f42;cursor:pointer;background:#fffefb;border:2px solid #c4b8a8;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:3.5rem;height:3.5rem;padding:0;transition:background .15s,border-color .15s,transform .1s;display:inline-flex}.guest-checkin-done__icon-btn:hover:not(:disabled){background:#fff8f0;border-color:#a89888}.guest-checkin-done__icon-btn:active:not(:disabled){transform:scale(.97)}.guest-checkin-done__icon-btn:disabled{opacity:.55;cursor:not-allowed}.guest-checkin-done__icon-svg{width:1.5rem;height:1.5rem;display:block}.guest-checkin-done__spinner{color:#5c4f42;width:1.5rem;height:1.5rem;animation:.75s linear infinite guest-checkin-spin;display:block}@keyframes guest-checkin-spin{to{transform:rotate(360deg)}}.guest-checkin-done__hidden-input{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.guest-checkin-done__photo-err{margin:.25rem 0 0;font-size:.88rem}.guest-checkin-done__preview-row{flex-wrap:wrap;justify-content:center;gap:.5rem;margin:.75rem 0 .65rem;padding:0;list-style:none;display:flex}.guest-checkin-done__preview-cell{background:#f5f0e8;border:1px solid #ddd5cb;border-radius:10px;width:5rem;height:5rem;position:relative;overflow:hidden}.guest-checkin-done__preview-img{object-fit:cover;width:100%;height:100%;display:block}.guest-checkin-done__preview-remove{color:#fff;cursor:pointer;background:#0000008c;border:none;border-radius:6px;justify-content:center;align-items:center;width:1.35rem;height:1.35rem;padding:0;font-size:1rem;line-height:1;display:flex;position:absolute;top:2px;right:2px}.guest-checkin-done__preview-remove:hover:not(:disabled){background:#000000bf}.guest-checkin-done__preview-remove:disabled{opacity:.5;cursor:not-allowed}.guest-checkin-done__link{opacity:.7;text-underline-offset:2px;cursor:pointer;color:inherit;background:0 0;border:none;margin:0;padding:0;font-family:inherit;font-size:.82rem;line-height:1.4;text-decoration:underline;display:inline-block}.guest-checkin-done__link:hover{opacity:.95}.checkin-embedded .guest-checkin-done{flex-direction:column;align-items:center;gap:1.15rem;padding:.35rem 0 .15rem;display:flex}.checkin-embedded .guest-checkin-done__welcome,.checkin-embedded .guest-checkin-done__photo-ok,.checkin-embedded .guest-checkin-done__icons,.checkin-embedded .guest-checkin-done__preview-row,.checkin-embedded .guest-checkin-done__photo-err,.checkin-embedded .guest-checkin-done__hint{margin:0}.checkin-embedded .guest-checkin-done__link{margin:.15rem 0 0}.checkin-embedded .celebration-form.checkin-form{flex-direction:column;gap:1.25rem;display:flex}.checkin-embedded .celebration-form__submit{margin-top:.5rem}.guest-checkin-done--photos-only{text-align:center;padding:.25rem 0 .5rem}.guest-checkin-done__photos-only-title{color:#3d342c;margin:0 0 .35rem;font-size:1.05rem;font-weight:650}.guest-checkin-done__photos-only-empty{color:#6b5c4e;margin:0 0 .65rem;font-size:.88rem;line-height:1.45}.guest-checkin-done__photos-placeholder{color:#8a7d6f;background:#fffefba6;border:2px dashed #d4ccc0;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:.35rem;max-width:16rem;min-height:5.5rem;margin:.35rem auto .65rem;padding:.75rem;display:flex}.guest-checkin-done__photos-placeholder .guest-checkin-done__icon-svg{opacity:.72;width:2rem;height:2rem}.guest-checkin-done__photos-placeholder-text{font-size:.85rem}.guest-checkin-done__preview-row--photos-modal{margin-top:.5rem;margin-bottom:.75rem}.guest-checkin-done__upload-primary{box-sizing:border-box;color:#3d342c;cursor:pointer;background:linear-gradient(#fffefb 0%,#faf6ef 100%);border:2px solid #c4b8a8;border-radius:14px;justify-content:center;align-items:center;gap:.5rem;width:100%;max-width:18rem;margin:0 auto;padding:.65rem 1rem;font-family:inherit;font-size:.95rem;font-weight:600;transition:background .15s,border-color .15s,transform 80ms;display:inline-flex}.guest-checkin-done__upload-primary:hover:not(:disabled){background:#fff8f0;border-color:#a89888}.guest-checkin-done__upload-primary:active:not(:disabled){transform:scale(.99)}.guest-checkin-done__upload-primary:disabled{opacity:.65;cursor:not-allowed}.guest-checkin-done__upload-primary-inner{justify-content:center;align-items:center;gap:.45rem;display:inline-flex}.guest-checkin-done__upload-primary-inner .guest-checkin-done__icon-svg{width:1.35rem;height:1.35rem}.guest-checkin-done__upload-primary-inner .guest-checkin-done__spinner{width:1.25rem;height:1.25rem}.checkin-screen{isolation:isolate;min-height:14rem;position:relative}.checkin-screen--modal{border-radius:0 0 16px 16px;min-height:min(52vh,420px);margin:-4px -4px 0;overflow:hidden}.checkin-screen__inner--modal{z-index:1;padding:2px 0 4px;position:relative}.checkin-screen--modal .checkin-screen__bg-scrim{background:linear-gradient(#120c0847 0%,#2016105c 50%,#0a06046b 100%)}.checkin-screen--page{min-height:100dvh;padding:max(1rem, env(safe-area-inset-top)) max(1.25rem, env(safe-area-inset-right)) max(1rem, env(safe-area-inset-bottom)) max(1.25rem, env(safe-area-inset-left));box-sizing:border-box;justify-content:center;align-items:center;display:flex}.checkin-screen__bg{position:absolute;inset:0;overflow:hidden}.checkin-screen__bg-img{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.checkin-screen__bg-scrim{background:linear-gradient(#120c086b 0%,#20161085 45%,#0a06049e 100%);position:absolute;inset:0}.checkin-screen__inner{z-index:1;width:100%;max-width:26rem;margin:0 auto;position:relative}.checkin-screen__panel{-webkit-backdrop-filter:blur(12px);background:#fffdf8f0;border:1px solid #ffffff8c;border-radius:20px;padding:1.2rem 1.3rem 1.45rem;box-shadow:0 10px 44px #00000024}.checkin-screen__title{text-align:center;color:#3d342c;margin:0 0 .85rem;font-size:1.35rem;font-weight:650}.checkin-embedded{box-sizing:border-box;width:100%;padding:.35rem 0 1.1rem}.checkin-screen__panel--embedded{max-width:26rem;margin-left:auto;margin-right:auto;padding:1.55rem 1.45rem 1.75rem}.checkin-screen__title--embedded{margin:0 0 1.05rem;font-size:1.2rem}.checkin-screen__title--sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.admin-shell{color:#2b2723;-webkit-tap-highlight-color:transparent;background:#f0ebe4;flex-direction:column;min-height:100dvh;font-family:system-ui,-apple-system,Segoe UI,sans-serif;display:flex}@media (width>=768px){.admin-shell{flex-direction:row}}.admin-sidebar{color:#f7f4f0;padding:max(20px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-left)) 20px max(16px, env(safe-area-inset-right));background:#2b2723;flex-direction:column;flex-shrink:0;gap:16px;display:flex}@media (width>=768px){.admin-sidebar{width:240px;min-height:100dvh;padding:24px 16px}}.admin-sidebar__body{flex-direction:column;flex:1;min-height:0;display:flex}.admin-sidebar__spacer{display:none}@media (width>=768px){.admin-sidebar__spacer{flex:1;min-height:24px;display:block}}.admin-sidebar__title{letter-spacing:-.02em;margin:0;font-size:1.35rem;font-weight:700}.admin-nav{flex-flow:wrap;gap:8px;display:flex}@media (width>=768px){.admin-nav{flex-flow:column}}.admin-nav__btn{text-align:left;min-height:46px;color:inherit;cursor:pointer;background:0 0;border:1px solid #fff3;border-radius:10px;padding:12px 14px;font-size:.95rem;font-weight:600;transition:background .15s,border-color .15s}.admin-nav__btn:hover{background:#ffffff14;border-color:#ffffff59}.admin-nav__btn--danger{color:#ffd4cc;border-color:#ffa08c73}.admin-nav__btn--danger:hover{background:#ff503c1f;border-color:#ffc8be8c}.admin-nav__btn--danger.admin-nav__btn--active{color:#7a221a;background:#fff0ed;border-color:#e8a090}.admin-nav__btn--active{color:#2b2723;background:#f7f4f0;border-color:#f7f4f0}.admin-nav__btn--active:hover{background:#fff;border-color:#fff}.admin-main{padding-top:20px;padding-left:max(16px, env(safe-area-inset-left));padding-right:max(16px, env(safe-area-inset-right));padding-bottom:max(32px, env(safe-area-inset-bottom));flex:1;overflow:auto}@media (width>=768px){.admin-main{padding:28px 32px 40px}}.admin-main__inner{flex-direction:column;gap:24px;max-width:720px;margin:0 auto;display:flex}@media (width>=768px){.admin-main__inner{gap:20px}}.admin-panel{background:#fff;border-radius:14px;flex-direction:column;gap:16px;padding:22px 18px;display:flex;box-shadow:0 1px 3px #2b27230f}@media (width>=768px){.admin-panel{border-radius:12px;gap:14px;padding:20px}}.admin-panel__title{margin:0;font-size:1.25rem;font-weight:700}.admin-panel__subtitle{color:#6b5d53;margin:0;font-size:.95rem;line-height:1.55}.admin-panel__section-label{text-transform:uppercase;letter-spacing:.07em;color:#8a7a6a;margin:0 0 10px;font-size:.78rem;font-weight:700;line-height:1.35}.admin-panel__section-label--tight{margin-bottom:8px}.admin-error{color:#b42318;margin:0;font-size:.95rem}.admin-input{box-sizing:border-box;border:1px solid #d8d0c8;border-radius:10px;width:100%;min-height:48px;padding:12px 14px;font-size:1rem}@media (width>=768px){.admin-input{border-radius:8px;min-height:44px;padding:10px 12px}}.admin-input--grow{flex:100%;min-width:0}@media (width>=480px){.admin-input--grow{flex:240px}}.admin-btn{cursor:pointer;border:0;border-radius:10px;min-height:48px;padding:12px 18px;font-size:.95rem;font-weight:600}@media (width>=768px){.admin-btn{border-radius:8px;min-height:44px;padding:10px 16px}}.admin-btn--primary{color:#fff;background:#2b2723}.admin-btn--ghost{color:#2b2723;background:#fff;border:1px solid #d8d0c8}.admin-btn--danger{color:#b42318;background:#fff6f6;border:1px solid #f0c6c6}.admin-group-card{border:1px solid #ece4db;border-radius:10px;flex-direction:column;gap:8px;padding:12px;display:flex}.admin-code-block{overflow-wrap:anywhere;background:#faf7f3;border-radius:6px;padding:6px 8px;font-size:12px}.admin-muted{color:#6b5d53;margin:0;font-size:.9rem}.admin-login{background:#fff;border-radius:12px;flex-direction:column;gap:12px;padding:20px;display:flex;box-shadow:0 1px 3px #2b27230f}.admin-mode-switch{flex-direction:column;gap:10px;display:flex}.admin-mode-switch--list{gap:12px}.admin-mode-row{flex-direction:column;gap:0;display:flex}.admin-mode-row__panel{background:#faf8f5;border:2px solid #2b2723;border-top:1px solid #2b272326;border-radius:0 0 12px 12px;padding:14px 14px 16px}.admin-mode-switch__btn{text-align:center;color:#2b2723;cursor:pointer;background:#fff;border:2px solid #d8cfc4;border-radius:12px;flex:auto;width:100%;min-height:48px;padding:12px 14px;font-size:.9rem;font-weight:600;transition:border-color .15s,background .15s}@media (width>=768px){.admin-mode-switch__btn{min-height:46px}}.admin-mode-switch__btn--with-panel{border-bottom:0;border-radius:12px 12px 0 0}.admin-mode-switch__btn:hover:not(:disabled){background:#faf7f3;border-color:#a89888}.admin-mode-switch__btn:disabled{opacity:.55;cursor:not-allowed}.admin-mode-switch__btn--active,.admin-mode-switch__btn--active:hover:not(:disabled){color:#f7f4f0;background:#2b2723;border-color:#2b2723}.admin-runtime-stack{border-top:1px solid #e5dcd0;flex-direction:column;gap:1.75rem;margin-top:.5rem;padding-top:1.25rem;display:flex}@media (width>=768px){.admin-runtime-stack{gap:1.5rem;padding-top:1rem}}.admin-runtime-block{flex-direction:column;gap:.875rem;display:flex}.admin-runtime-hint{margin:.25rem 0 0}.admin-msg-presets{background:#ffffff73;border:1px solid #2b27231a;border-radius:10px;margin-top:.5rem;padding:.75rem .65rem}.admin-msg-presets__toolbar{flex-wrap:wrap;align-items:center;gap:.5rem .75rem;margin-bottom:.35rem;display:flex}.admin-msg-presets__save{font-size:13px}.admin-msg-presets__hint{color:#9a3412;margin:0;font-size:12px}.admin-msg-presets__empty,.admin-msg-presets__lead{margin:.35rem 0 0;font-size:12px;line-height:1.45}.admin-msg-presets__list{flex-direction:column;gap:8px;max-height:220px;margin:.5rem 0 0;padding:0;list-style:none;display:flex;overflow-y:auto}.admin-msg-presets__item{background:#faf8f5f2;border:1px solid #2b272314;border-radius:8px;flex-direction:column;gap:6px;padding:8px 10px;display:flex}.admin-msg-presets__text{color:#3d342c;word-break:break-word;margin:0;font-size:13px;line-height:1.45}.admin-msg-presets__actions{flex-wrap:wrap;gap:8px;display:flex}.admin-msg-presets__btn{padding:.35rem .65rem;font-size:12px}.admin-msg-presets__btn--danger{color:#991b1b}.admin-runtime-common__guest-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.admin-runtime-common{flex-direction:column;gap:.875rem;display:flex}.admin-runtime-mode{flex-direction:column;gap:1rem;display:flex}.admin-mode-role-lines{margin:0 0 .25rem;font-size:13px;line-height:1.45}.admin-mode-role-lines .admin-muted{margin:0 0 .35rem}.admin-mode-role-lines .admin-muted:last-child{margin-bottom:0}.admin-event-control{border-top:1px solid #e5dcd0;margin-top:.5rem;padding-top:1rem}.admin-collapse{background:#faf8f5;border:1px solid #e5dcd0;border-radius:10px;margin-bottom:8px;overflow:hidden}.admin-collapse[open]{background:#fff;border-color:#d8cfc4}.admin-collapse__summary{cursor:pointer;color:#2b2723;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;gap:8px;padding:12px 14px;font-size:.95rem;font-weight:700;list-style:none;display:flex}.admin-collapse__summary::-webkit-details-marker{display:none}.admin-collapse__summary:after{content:"▸";opacity:.55;font-size:.75rem;transition:transform .15s}.admin-collapse[open] .admin-collapse__summary:after{transform:rotate(90deg)}.admin-collapse__body{flex-direction:column;gap:10px;padding:0 14px 14px;display:flex}.admin-collapse__body>.admin-panel__section-label:first-child{margin-top:0}.admin-collapse--active{border-color:#2b2723;box-shadow:0 0 0 1px #2b27231f}.admin-event-control__row{flex-flow:column;align-items:stretch;gap:12px;margin-bottom:0;display:flex}@media (width>=480px){.admin-event-control__row{flex-flow:wrap;align-items:center;gap:10px}.admin-event-control__row--stack{flex-direction:column;align-items:stretch}}.admin-lucky-winners{margin:.5rem 0 0;padding-left:1.25rem;font-size:.9rem;line-height:1.65}.admin-reaction-stats__list{margin:.35rem 0 0;padding-left:1.25rem;font-size:.9rem;line-height:1.65}.ops-moderate-split{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:1.25rem 1.5rem;margin-top:.25rem;display:grid}@media (width<=960px){.ops-moderate-split{grid-template-columns:1fr}}.ops-moderate-col{background:#fffcf7;border:1px solid #e8dfd2;border-radius:12px;min-width:0;padding:.75rem .85rem}.ops-moderate-col__heading{color:#3d342c;letter-spacing:.02em;margin:0 0 .65rem;font-size:.95rem;font-weight:700}.ops-moderate-summary{margin:-.35rem 0 .85rem;font-size:.82rem;line-height:1.45}.ops-moderate-summary__breakdown{opacity:.88;font-weight:400}.ops-photo-grid--in-split{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));margin-top:0}.ops-wish-list--in-split{max-height:min(70vh,520px);margin-top:0;padding-right:4px;overflow-y:auto}.ops-photo-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;margin-top:.75rem;display:grid}.ops-photo-card{background:#faf7f2;border:1px solid #e5dcd0;border-radius:10px;flex-direction:column;gap:6px;padding:8px;display:flex}.ops-photo-card__img-wrap{border-radius:6px;position:relative;overflow:hidden}.ops-photo-card__img{aspect-ratio:1;object-fit:cover;border-radius:6px;width:100%;display:block}.ops-photo-card__more{color:#fff;background:#0000008c;border-radius:4px;padding:2px 6px;font-size:.65rem;font-weight:700;position:absolute;bottom:4px;right:4px}.ops-photo-card__name{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.8rem;font-weight:600;overflow:hidden}.ops-photo-card__actions{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.ops-wish-list{flex-direction:column;gap:8px;margin-top:.75rem;display:flex}.ops-wish-row{background:#faf7f2;border:1px solid #e5dcd0;border-radius:8px;flex-direction:column;align-items:stretch;gap:10px;padding:10px 12px;display:flex}.ops-wish-row__content{flex-direction:column;gap:4px;width:100%;min-width:0;display:flex}.ops-wish-row__name{color:#5c4f42;font-size:.8rem;font-weight:700}.ops-wish-row__text{word-wrap:break-word;overflow-wrap:break-word;font-size:.88rem;line-height:1.5}.ops-wish-row__actions{border-top:1px solid #e8dfd2;flex-wrap:wrap;align-items:center;gap:6px;margin-top:2px;padding-top:8px;display:flex}.ops-badge{border-radius:999px;padding:2px 7px;font-size:.7rem;font-weight:700;display:inline-block}.ops-badge--approved{color:#1a6630;background:#d4f4dd}.ops-badge--rejected{color:#9b1c1c;background:#fde8e8}.ops-badge--pending{color:#7a5a00;background:#fff3d6}.ops-moderation-subtabs{flex-wrap:wrap;gap:.35rem;margin:0 0 1rem;display:flex}.ops-moderation-subtabs__btn{color:#5c4f42;cursor:pointer;background:#faf7f2;border:1px solid #c9b8a4;border-radius:6px;padding:.35rem .65rem;font-size:.78rem}.ops-moderation-subtabs__btn:hover{color:#2b2723;border-color:#a8947a}.ops-moderation-subtabs__btn--active{color:#2b2723;background:#f0e8dc;border-color:#8b6914;font-weight:700}.ops-upload-input-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.ops-upload-dropzone{text-align:center;background:#faf7f2;border:2px dashed #c9b8a4;border-radius:12px;margin-top:.75rem;padding:1.25rem 1rem;transition:border-color .15s,background .15s}.ops-upload-dropzone--active{background:#f0e8dc;border-color:#8b6914}.ops-upload-dropzone__text{color:#5c4f42;margin:0 0 .75rem;font-size:.95rem}.ops-upload-dropzone__progress{color:#6b5a48;font-weight:700}.ops-upload-dropzone__btn{margin:0 auto}.admin-manual-match__pair{grid-template-columns:1fr 1fr;align-items:stretch;gap:1rem;max-width:42rem;display:grid}@media (width<=640px){.admin-manual-match__pair{grid-template-columns:1fr}}.admin-manual-match__col{flex-direction:column;gap:.5rem;min-width:0;display:flex}.admin-manual-match__label{color:#3d3428;margin:0;font-size:.85rem;font-weight:700}.admin-manual-match__list{background:#fdfcfa;border:1px solid #d4c4b0;border-radius:10px;max-height:280px;margin:0;padding:0;list-style:none;overflow:auto}.admin-manual-match__pick{text-align:left;width:100%;font:inherit;color:#2b2723;cursor:pointer;background:0 0;border:none;border-bottom:1px solid #ebe4d9;padding:.5rem .65rem;font-size:.9rem;transition:background .12s;display:block}.admin-manual-match__list li:last-child .admin-manual-match__pick{border-bottom:none}.admin-manual-match__pick:hover{background:#f5efe6}.admin-manual-match__pick--selected{background:#f0e8dc;font-weight:700;box-shadow:inset 3px 0 #8b6914}.admin-manual-match__hint{color:#6b5a48;margin:0;font-size:.8rem}.admin-match-pair-lists__scroll{margin-bottom:.25rem;overflow-x:auto}.admin-match-pair-lists__table{border-collapse:collapse;color:#2b2723;width:100%;font-size:.9rem}.admin-match-pair-lists__table th{text-align:left;color:#3d3428;white-space:nowrap;border-bottom:2px solid #d4c4b0;padding:.45rem .5rem;font-weight:700}.admin-match-pair-lists__table td{vertical-align:top;border-bottom:1px solid #ebe4d9;padding:.5rem}.admin-match-pair-lists__names{font-weight:600}.admin-match-pair-lists__time{white-space:nowrap;color:#5c4f42;font-size:.85rem}.admin-match-status{border-radius:6px;padding:.15rem .45rem;font-size:.8rem;font-weight:600;display:inline-block}.admin-match-status--pending{color:#7a5a00;background:#fff8e6}.admin-match-status--mid{color:#2f4f8f;background:#eef3fb}.admin-match-status--ok{color:#1b5e20;background:#e8f5e9}.admin-match-status--bad{color:#8c1d18;background:#fce8e6}.admin-match-status--manual{color:#5c4f42;background:#f0ebe4}.admin-match-pair-lists__col-action{white-space:nowrap;width:1%}.admin-match-pair-lists__action{vertical-align:middle}.admin-match-pair-lists__btn{padding:4px 10px;font-size:.8rem}.admin-led-defaults__grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.admin-led-defaults__card{background:#fff;border:1px solid #2b27231f;border-radius:10px;flex-direction:column;gap:8px;padding:8px;display:flex}.admin-led-defaults__thumb{aspect-ratio:4/3;object-fit:cover;background:#e8e4de;border-radius:6px;width:100%}.admin-led-defaults__sources{background:#ffffffa6;border:1px solid #2b27231f;border-radius:10px;flex-direction:column;gap:10px;margin-bottom:20px;padding:14px 16px;display:flex}@media (width>=560px){.admin-led-defaults__sources{flex-flow:wrap;align-items:flex-start}}.admin-led-defaults__source{cursor:pointer;color:#2b2723;align-items:flex-start;gap:10px;font-size:.95rem;font-weight:600;display:flex}.admin-led-defaults__source input{flex-shrink:0;width:18px;height:18px;margin-top:3px}.admin-led-defaults__source-hint{color:#6b5f54;font-size:.85rem;font-weight:500}.runtime-boot{color:#4a4036;background:#faf7f2;justify-content:center;align-items:center;min-height:100dvh;display:flex}.runtime-boot__text{opacity:.75;margin:0;font-size:.95rem}.guest-party__badge{letter-spacing:.06em;color:#3d342c;background:#3d342c1a;border-radius:999px;margin:0 0 .5rem;padding:.25rem .6rem;font-size:.75rem;font-weight:700;display:inline-block}.guest-party__section{margin-top:1rem}.guest-party__h2{margin:0 0 .5rem;font-size:1.05rem;font-weight:650}.guest-led-reactions{margin-top:.75rem}.guest-led-reactions__row{flex-wrap:wrap;justify-content:center;align-items:center;gap:.65rem;display:flex}.guest-led-reactions__row--trio{flex-wrap:nowrap;justify-content:center;gap:.75rem;max-width:22rem;margin-left:auto;margin-right:auto}.guest-led-reactions__btn{box-sizing:border-box;cursor:pointer;background:#ffffffe0;border:2px solid #c4b8a8d9;border-radius:50%;justify-content:center;align-items:center;width:3.35rem;height:3.35rem;padding:0;transition:transform .12s,border-color .15s,background .15s;display:inline-flex}.guest-led-reactions__btn:hover:not(:disabled){background:#fffefb;border-color:#a89888;transform:scale(1.06)}.guest-led-reactions__btn:active:not(:disabled){transform:scale(.96)}.guest-led-reactions__btn:disabled,.guest-led-reactions__btn--busy{opacity:.55;cursor:wait}.guest-led-reactions--gold .guest-led-reactions__btn--gold{background:linear-gradient(145deg,#fff8ebf2,#ffecd2e6);border-width:2px;border-color:#b8864a8c;flex-shrink:0;width:3.65rem;height:3.65rem}.guest-led-reactions--gold .guest-led-reactions__btn--gold:hover:not(:disabled){background:linear-gradient(145deg,#fffcf5fa,#fff0daf2);border-color:#b8864abf}.guest-led-reactions--gold .guest-led-reactions__btn--heart .guest-led-reactions__symbol,.guest-led-reactions--gold .guest-led-reactions__btn--gold:not(.guest-led-reactions__btn--heart) .guest-led-reactions__symbol{color:#b8860b;font-size:1.75rem}.guest-led-reactions__symbol{font-size:1.55rem;line-height:1}.guest-led-reactions__err{text-align:center;margin-top:.5rem}.guest-warmup-quiz__counter{letter-spacing:.08em;text-transform:uppercase;color:#3d342c8c;margin:.75rem 0 .35rem;font-size:.78rem;font-weight:700}.guest-warmup-quiz__prompt{color:#2c241c;margin:0 0 .85rem;font-size:1.08rem;font-weight:700;line-height:1.35}.guest-warmup-quiz__options{flex-direction:column;gap:.55rem;display:flex}.guest-warmup-quiz__btn{color:#3d2e22;text-align:left;cursor:pointer;background:linear-gradient(145deg,#fffcf6fa,#fff2e0eb);border:2px solid #b8864a66;border-radius:14px;width:100%;padding:.75rem 1rem;font-size:.95rem;font-weight:650;transition:transform .1s,border-color .15s,box-shadow .15s}.guest-warmup-quiz__btn:hover:not(:disabled){border-color:#b8864abf;box-shadow:0 4px 14px #b8864a1f}.guest-warmup-quiz__btn:active:not(:disabled){transform:scale(.99)}.guest-warmup-quiz__btn:disabled{opacity:.65;cursor:wait}.guest-warmup-quiz__btn--sent{background:linear-gradient(145deg,#f5fff8f2,#e6f8ebe6);border-color:#5a8c5a8c}.guest-warmup-quiz__err{margin-top:.65rem}.guest-ceremony__btn{color:#ffe6c8;cursor:pointer;background:linear-gradient(135deg,#2a1810,#4a3020);border:none;border-radius:16px;width:100%;margin-top:1rem;padding:1rem;font-size:1rem;font-weight:700}.guest-ceremony__count{margin:.75rem 0 0;font-size:.95rem}.guest-chat{flex-direction:column;gap:.5rem;margin-top:.75rem;display:flex}.guest-chat__empty{opacity:.65;margin:0}.guest-chat__log{background:#ffffffb3;border:1px solid #e5dcd0;border-radius:10px;max-height:12rem;padding:.5rem .65rem;font-size:.88rem;line-height:1.4;overflow:auto}.guest-chat__row{margin-bottom:.35rem}.guest-chat__name{color:#5c4f42;font-weight:700}.guest-chat__form{flex-wrap:wrap;gap:8px;display:flex}.guest-chat__input{border:1px solid #d8cfc4;border-radius:8px;flex:160px;min-width:0;padding:.5rem .65rem}.guest-chat__send{color:#faf7f2;cursor:pointer;background:#3d342c;border:none;border-radius:8px;padding:.5rem 1rem;font-weight:600}.guest-lucky__banner{text-align:center;background:linear-gradient(135deg,#fff8e7,#ffe0b8);border:1px solid #e8c77b;border-radius:12px;padding:1rem}.guest-closing__text{margin:0;font-size:1.05rem;line-height:1.55}.guest-match-invite-overlay{z-index:10070;padding:max(16px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));box-sizing:border-box;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.guest-match-invite-overlay__backdrop{-webkit-backdrop-filter:blur(6px);background:#0f172a7a;position:absolute;inset:0}.guest-match-invite{text-align:center;background:linear-gradient(135deg,#fce7f3,#fdf2f8);border:2px solid #f9a8d4;border-radius:16px;margin-bottom:1rem;padding:1.25rem}.guest-match-invite--modal{z-index:1;width:100%;max-width:min(22rem,100%);max-height:min(100dvh - 2rem,100%);margin:0;position:relative;overflow:auto;box-shadow:0 24px 48px #0f172a33,inset 0 0 0 1px #ffffff0f}.guest-match-invite__title{color:#9d174d;margin:0 0 .75rem;font-size:1.05rem;font-weight:800}.guest-match-invite__card{flex-direction:column;align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex}.guest-match-invite__avatar-wrap{flex-shrink:0}.guest-match-invite__avatar{object-fit:cover;border:3px solid #fff;border-radius:50%;width:88px;height:88px;box-shadow:0 2px 12px #9d174d33}.guest-match-invite__avatar--placeholder{color:#831843;background:linear-gradient(145deg,#fbcfe8,#f9a8d4);justify-content:center;align-items:center;font-size:2rem;font-weight:800;display:inline-flex}.guest-match-invite__body{max-width:22rem;margin:0;font-size:.95rem;line-height:1.5}.guest-match-invite__note{color:#9d174d;opacity:.85;max-width:22rem;margin:0;font-size:.82rem;line-height:1.45}.guest-match-invite__waiting{opacity:.7;margin:0;font-size:.9rem;font-style:italic}.guest-match-invite__btns{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.guest-match-invite__decline{color:#374151;cursor:pointer;background:#f9fafb;border:1px solid #d1d5db;border-radius:8px;padding:.6rem 1.25rem;font-size:.9rem;font-weight:600}.guest-match-layer{box-sizing:border-box;width:100%;max-width:26rem;margin:0 auto;padding:0 1.5rem}.guest-match-chat-root{position:relative}.guest-match-chat__fab{z-index:10042;left:max(16px, env(safe-area-inset-left));bottom:max(16px, env(safe-area-inset-bottom));cursor:pointer;background:linear-gradient(145deg,#fce7f3,#fbcfe8);border:1px solid #f9a8d4d9;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;padding:0;transition:transform .15s,box-shadow .15s;display:flex;position:fixed;box-shadow:0 6px 22px #9d174d38,inset 0 1px #ffffffd9}.guest-match-chat__fab:hover{transform:scale(1.05);box-shadow:0 8px 26px #9d174d47}.guest-match-chat__fab:focus-visible{outline-offset:3px;outline:2px solid #db2777}.guest-match-chat__fab-icon{font-size:1.45rem;line-height:1}.guest-match-chat__backdrop{z-index:10043;-webkit-backdrop-filter:blur(2px);cursor:pointer;background:#1e181438;border:none;margin:0;padding:0;position:fixed;inset:0}.guest-match-chat.guest-match-chat--sheet{z-index:10044;width:min(22rem, calc(100vw - max(24px, env(safe-area-inset-left) + env(safe-area-inset-right))));background:#fffdfbf7;border:1px solid #f9a8d4;border-radius:16px;flex-direction:column;max-height:min(72dvh,520px);margin:0;padding:.85rem 1rem 1rem;display:flex;position:fixed;inset:50% auto auto 50%;transform:translate(-50%,-50%);box-shadow:0 24px 48px #00000029,inset 0 0 0 1px #ffffff80}.guest-match-chat__sheet-head{justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:.65rem;display:flex}.guest-match-chat__header--sheet{flex:1;min-width:0;margin:0}.guest-match-chat__sheet-close{color:#6b7280;cursor:pointer;background:0 0;border:none;border-radius:10px;flex-shrink:0;width:40px;height:40px;margin:-.25rem -.35rem 0 0;padding:0;font-size:1.65rem;line-height:1}.guest-match-chat__sheet-close:hover{color:#374151;background:#0000000d}.guest-match-chat--sheet .guest-chat__log{flex:auto;min-height:6rem;max-height:min(36dvh,280px)}.guest-match-chat{background:#fff9;border:1px solid #f9a8d4;border-radius:12px;margin-bottom:1rem;padding:1rem}.guest-match-chat__header{align-items:center;gap:.65rem;margin:0 0 .75rem;display:flex}.guest-match-chat__avatar{object-fit:cover;border-radius:50%;flex-shrink:0;width:40px;height:40px}.guest-match-chat__avatar--ph{color:#9d174d;background:#fce7f3;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:1rem;font-weight:800;display:inline-flex}.guest-match-chat__header-text{color:#9d174d;margin:0;font-size:.9rem;font-weight:700}.guest-chat__row--me .guest-chat__name{color:#1d4ed8}.guest-lucky__win-popup{text-align:center;background:linear-gradient(135deg,#fef9c3,#fef08a);border:2px solid #f59e0b;border-radius:16px;margin-bottom:1rem;padding:1.25rem}.guest-lucky__win-popup-emoji{margin:0 0 .5rem;font-size:2.5rem}.guest-lucky__win-popup-title{color:#92400e;margin:0 0 .25rem;font-size:1.1rem;font-weight:800}.guest-lucky__win-popup-hint{color:#78350f;margin:0;font-size:.9rem}.guest-lucky{position:relative;overflow:hidden}.guest-lucky__shake{color:#e0e7ff;text-align:center;background:linear-gradient(145deg,#1e1b4b,#312e81);border:1px solid #a5b4fc59;border-radius:16px;margin:.5rem 0 1rem;padding:1.25rem 1rem}.guest-lucky__shake-visual{justify-content:center;margin:.25rem 0 .75rem;display:flex}@keyframes guestLuckyShakePhone{0%,to{transform:translate(0)rotate(-8deg)}25%{transform:translate(-6px)rotate(8deg)}75%{transform:translate(6px)rotate(-6deg)}}.guest-lucky__shake-phone{filter:drop-shadow(0 4px 12px #00000059);font-size:clamp(3rem,14vw,4.5rem);line-height:1;animation:.45s ease-in-out infinite guestLuckyShakePhone;display:inline-block}.guest-lucky__shake-lead{margin:0 0 .5rem;font-size:1.15rem;font-weight:800}.guest-lucky__shake-hint{opacity:.75;margin:0;font-size:.82rem;line-height:1.45}.guest-lucky__banner--soft{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-color:#86efac}.guest-lucky__win-popup--hero{box-shadow:0 8px 32px #f59e0b59}.guest-lucky__win-popup--celebrate{animation:2s ease-in-out infinite guestLuckyWinGlow}@keyframes guestLuckyWinGlow{0%,to{filter:brightness();box-shadow:0 8px 28px #f59e0b6b}50%{filter:brightness(1.04);box-shadow:0 14px 44px #fbbf248c}}.guest-lucky__win-popup--celebrate .guest-lucky__win-popup-emoji{animation:1.05s ease-in-out infinite guestLuckyEmojiCelebrate;display:inline-block}@keyframes guestLuckyEmojiCelebrate{0%,to{transform:scale(1)rotate(0)}35%{transform:scale(1.18)rotate(-8deg)}70%{transform:scale(1.14)rotate(8deg)}}.guest-lucky__consolation{text-align:center;background:linear-gradient(135deg,#f8fafc,#e2e8f0);border:1px solid #cbd5e1;border-radius:16px;margin-top:1rem;padding:1.25rem 1rem}.guest-lucky__consolation-title{color:#334155;margin:0 0 .35rem;font-size:1.05rem;font-weight:800}.guest-lucky__consolation-body{color:#475569;margin:0;font-size:.95rem;line-height:1.5}.guest-lucky__confetti{pointer-events:none;z-index:3;position:absolute;inset:0;overflow:hidden}.guest-lucky__confetti-bit{width:9px;height:14px;top:-12%;left:calc(8% + var(--i) * 4.5%);background:hsl(calc(25 + var(--i) * 18), 90%, 58%);animation:4s ease-in forwards guestLuckyConfettiFall;animation-delay:calc(var(--i) * 40ms);border-radius:2px;position:absolute}.guest-lucky__confetti--ongoing .guest-lucky__confetti-bit{animation:2.75s linear infinite guestLuckyConfettiLoop;animation-delay:calc(var(--i) * 90ms);top:-10%}@keyframes guestLuckyConfettiFall{to{opacity:0;transform:translateY(110vh)rotate(520deg)}}@keyframes guestLuckyConfettiLoop{0%{opacity:1;transform:translateY(0)rotate(0)}92%{opacity:.95}to{opacity:0;transform:translateY(108vh)rotate(680deg)}}@media (prefers-reduced-motion:reduce){.guest-lucky__win-popup--celebrate,.guest-lucky__win-popup--celebrate .guest-lucky__win-popup-emoji{animation:none}.guest-lucky__confetti--ongoing .guest-lucky__confetti-bit{opacity:.25;animation:none}}.guest-glass-shell{position:relative}.guest-glass-overlay{z-index:10038;box-sizing:border-box;padding:max(12px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));-webkit-overflow-scrolling:touch;box-shadow:none;background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden auto}.guest-glass-overlay-inner{width:100%;max-width:28rem;margin:auto}.guest-glass-overlay .checkin-screen__panel--embedded{background:#fffdfae0;border:1px solid #ffffffa6;box-shadow:0 12px 48px #00000014}.duck-race__status{margin:.5rem 0;font-size:.95rem}.duck-race__status--done{color:#7c3aed;font-weight:700}.duck-race__tap{cursor:pointer;touch-action:manipulation;background:linear-gradient(145deg,#ffd54f,#ff8f00);border:1px solid #422e1240;border-radius:20px;justify-content:center;align-items:center;width:100%;min-height:85dvh;margin-top:1rem;display:flex;position:relative;overflow:hidden;box-shadow:0 10px 24px #0003}.duck-race__tap--in-glass{box-sizing:border-box;height:60dvh;min-height:60dvh;max-height:60dvh;margin-top:0}.duck-race__tap--disabled{opacity:.55}.duck-race__meter{color:#3d342c;margin-top:1rem;font-size:1rem;font-weight:600}.duck-race__tap-label{color:#2a1604e6;letter-spacing:.08em;text-shadow:0 3px 10px #ffffff40;-webkit-user-select:none;user-select:none;font-size:clamp(2.6rem,12vw,6.5rem);font-weight:900}.duck-race__hint{color:#2a1604cc;pointer-events:none;font-size:.74rem;font-weight:700;position:absolute;bottom:8px;right:14px}.duck-race__ripple{pointer-events:none;border:2px solid #ffffffe6;border-radius:999px;width:28px;height:28px;animation:.5s ease-out forwards tapRipple;position:absolute;transform:translate(-50%,-50%)scale(.1)}@keyframes tapRipple{0%{opacity:.9;transform:translate(-50%,-50%)scale(.1)}to{opacity:0;transform:translate(-50%,-50%)scale(6)}}.guest-app-shell{isolation:isolate;--guest-app-shell-overlay:#ffffff1a;--guest-app-shell-blur:5px;min-height:100dvh;position:relative}.guest-app-shell__image{z-index:0;background-color:#efe8df;background-position:50%;background-repeat:no-repeat;background-size:cover;position:fixed;inset:0}.guest-app-shell__veil{z-index:1;background:var(--guest-app-shell-overlay);-webkit-backdrop-filter:blur(var(--guest-app-shell-blur));pointer-events:none;position:fixed;inset:0}.guest-app-shell__main{z-index:2;min-height:100dvh;position:relative}.guest-app-shell__main--with-reaction-dock{padding-bottom:max(5.75rem, calc(env(safe-area-inset-bottom) + 4.5rem));box-sizing:border-box}.guest-app-shell__main--with-reaction-dock .floating-actions{bottom:calc(max(10px, env(safe-area-inset-bottom)) + 3.65rem + 12px)}.guest-led-reaction-dock{left:max(10px, env(safe-area-inset-left));right:max(10px, env(safe-area-inset-right));bottom:max(10px, env(safe-area-inset-bottom));z-index:10048;pointer-events:none;justify-content:center;align-items:flex-end;display:flex;position:fixed}.guest-led-reaction-dock .guest-led-reactions{pointer-events:auto;max-width:100%}.guest-phase{color:#3d342c;background:0 0;justify-content:center;align-items:center;min-height:100dvh;padding:1.5rem;display:flex}.guest-phase__panel{text-align:center;max-width:22rem}.guest-phase__title{margin:0 0 .75rem;font-size:1.35rem;font-weight:650}.guest-phase__body{opacity:.88;margin:0;font-size:.95rem;line-height:1.55}.guest-phase__panel--wide{text-align:left;width:100%;max-width:26rem}.guest-phase__intro{opacity:.9;margin:0 0 1rem;font-size:.95rem;line-height:1.5}.guest-game-invitation-bg{background:0 0;min-height:100dvh;position:relative}.guest-game-invitation-bg__foreground{z-index:10;pointer-events:auto;min-height:100dvh;position:relative}.led-fullscreen{color:#f5ebe0;background:#0d0806;flex-direction:column;min-height:100dvh;display:flex}.led-shell{box-sizing:border-box;color:#f5ebe0;isolation:isolate;background:0 0;grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(11rem,17vw) minmax(0,1fr) minmax(11rem,17vw);width:100%;height:100dvh;min-height:100dvh;max-height:100dvh;display:grid;position:relative;overflow:hidden}.led-shell--ceremony-fullwidth{grid-template-columns:1fr}.led-shell--ceremony-fullwidth .led-shell__rail{display:none}.led-shell__particles-bg{z-index:0;pointer-events:none;background:#020308;width:100%;height:100%;min-height:0;position:absolute;inset:0;transform:translate(0,0)}.led-shell__particles-bg .led-ceremony__on-particles{width:100%;height:100%;min-height:0}.led-shell__particles-bg .led-ceremony__on-particles canvas{display:block;width:100%!important;height:100%!important}.led-shell__ceremony-ambient{z-index:0;pointer-events:none;width:100%;height:100%;min-height:0;position:absolute;inset:0;transform:translate(0,0)}.led-shell__ceremony-ambient .led-ceremony__bg-stack{width:100%;height:100%;position:absolute;inset:0}.led-shell__falling-stars{z-index:2;pointer-events:none;position:absolute;inset:0;overflow:hidden;transform:translate(0,0)}.led-shell__burst-layer.led-ceremony__stars-layer{z-index:3}.led-shell__rail,.led-shell__main{z-index:1;position:relative}.led-shell__main.led-shell__main--duck-panel{background:radial-gradient(100% 70% at 50% 0,#122a4ef7 0%,#060e1cfc 50%,#040a14 100%);box-shadow:inset 0 0 0 1px #ffffff0d}.led-shell__rail{flex-direction:column;min-width:0;min-height:0;padding:.75rem .65rem;display:flex;overflow:hidden}.led-shell__qr-wrap{text-align:center;box-sizing:border-box;border-bottom:1px solid #ffffff14;flex-direction:column;flex-shrink:0;align-items:stretch;gap:.35rem;width:100%;margin-bottom:.5rem;padding-bottom:.75rem;display:flex}.led-shell__qr-img{aspect-ratio:1;object-fit:contain;border-radius:6px;width:100%;max-width:100%;height:auto;display:block}.led-shell__qr-hint{letter-spacing:.14em;opacity:.65;text-transform:uppercase;margin:0;font-size:.62rem}.led-shell__qr-spotlight{z-index:99995;pointer-events:none;box-sizing:border-box;justify-content:center;align-items:center;padding:min(4vmin,2rem);display:flex;position:absolute;inset:0}.led-shell__qr-spotlight__backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#020308e0;position:absolute;inset:0}.led-shell__qr-spotlight__card{background:#fff;border-radius:clamp(12px,1.5vmin,20px);flex-direction:column;align-items:center;gap:clamp(.75rem,2vmin,1.5rem);max-width:min(92vmin,92%);padding:clamp(1rem,3vmin,2rem);display:flex;position:relative;box-shadow:0 0 0 3px #ffffff1f,0 24px 80px #0000008c}.led-shell__qr-spotlight__img{aspect-ratio:1;object-fit:contain;border-radius:8px;width:min(72vmin,78vh);max-width:100%;height:auto;display:block}.led-shell__qr-spotlight__hint{letter-spacing:.06em;text-transform:uppercase;color:#1a1512;text-align:center;margin:0;font-size:clamp(1rem,2.8vmin,1.65rem);font-weight:600}.led-shell__qr-url{word-break:break-all;opacity:.75;text-align:center;margin:0;font-size:.58rem;line-height:1.25}.led-shell__wishes{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.led-shell__wish-viewport{flex:1;align-self:stretch;width:100%;min-height:0;overflow:hidden;-webkit-mask-image:linear-gradient(#0000 0%,#000 14% 86%,#0000 100%);mask-image:linear-gradient(#0000 0%,#000 14% 86%,#0000 100%)}.led-shell__wish-marquee{animation:ledWishMarqueeUp calc(var(--wish-marquee-sec,36) * 1s) linear infinite;will-change:transform;flex-direction:column;gap:.55rem;margin:0;padding:0;font-size:clamp(.88rem,1.65vw,1.15rem);line-height:1.4;list-style:none;display:flex}@keyframes ledWishMarqueeUp{0%{transform:translateY(0)}to{transform:translateY(-50%)}}@media (prefers-reduced-motion:reduce){.led-shell__wish-marquee{will-change:auto;animation:none}.led-ceremony__hero-on span,.led-ceremony__hero-names,.led-ceremony__hero-names-amp,.led-ceremony__hero-date{animation:none}}.led-shell__wish-empty{opacity:.45;margin:0;font-size:clamp(.65rem,1.1vw,.85rem);line-height:1.35}.led-shell__wish-item{background:#fff3;border-radius:6px;margin:.5rem 0;padding:.35rem .4rem}.led-shell__wish-text{color:#f5ebe0}.led-shell__wish-name{opacity:.75}.led-shell__right-stack{flex-direction:column;flex:auto;min-height:0;display:flex}.led-shell__duck-history-overlay{z-index:10;border-radius:8px;flex-direction:column;min-height:0;display:flex;position:absolute;inset:0;overflow:hidden;box-shadow:inset 0 0 0 1px #00000059}.led-duck-history{color:#e8dfd4;flex-direction:column;flex:auto;min-height:0;padding:.5rem .45rem .55rem;display:flex}.led-duck-history__title{letter-spacing:.16em;text-transform:uppercase;opacity:.7;flex-shrink:0;margin:0 0 .45rem;font-size:.62rem}.led-duck-history__scroll{flex-direction:column;flex:auto;gap:.65rem;min-height:0;padding-right:.15rem;display:flex;overflow-y:auto}.led-duck-history__empty{opacity:.55;margin:0;font-size:.72rem;line-height:1.4}.led-duck-history__round{background:#ffd8a80f;border-radius:6px;margin:0;padding:.4rem .35rem}.led-duck-history__round-title{color:#ffd8a8;margin:0 0 .35rem;font-size:.72rem;font-weight:700}.led-duck-history__list{flex-direction:column;gap:.25rem;margin:0;padding:0;font-size:clamp(.62rem,1vw,.78rem);list-style:none;display:flex}.led-duck-history__row{grid-template-columns:1.1rem 1.4rem minmax(0,1fr) auto;align-items:center;gap:.3rem .35rem;line-height:1.25;display:grid}.led-duck-history__animal{transform-origin:bottom;justify-content:center;align-items:center;font-size:clamp(.85rem,1.8vw,1rem);line-height:1;animation:.85s ease-in-out infinite alternate ledResultAnimalNudge;display:flex}.led-duck-history__row:first-child .led-duck-history__animal{animation-delay:0s}.led-duck-history__row:nth-child(2) .led-duck-history__animal{animation-delay:.1s}.led-duck-history__row:nth-child(3) .led-duck-history__animal{animation-delay:.2s}.led-duck-history__rank{font-variant-numeric:tabular-nums;opacity:.65}.led-duck-history__name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.led-duck-history__taps{font-variant-numeric:tabular-nums;opacity:.85;color:#a8e8c8}.led-shell__welcomes{flex-direction:column;flex:auto;min-height:0;display:flex;position:relative;overflow:hidden}.led-shell__welcome-list{flex-direction:column;gap:.55rem;margin:0;padding:20px;font-size:clamp(1.05rem,2.5vw,1.65rem);list-style:none;display:flex;overflow-y:auto}.led-shell__welcome-item{color:#fff0d4;letter-spacing:.03em;text-shadow:0 1px 3px #000000bf,0 0 24px #ffc87866;background:#ffd8a824;border-radius:8px;margin:0;padding:.55rem .5rem;font-weight:800;line-height:1.28;box-shadow:inset 0 0 0 1px #ffe6c838,0 4px 14px #00000040}.led-shell__counts{text-align:center;border-top:1px solid #ffffff14;flex-direction:column;flex-shrink:0;gap:.65rem;margin-top:auto;padding-top:.75rem;display:flex}.led-shell__counts .led-shell__count-block{border-top:none;margin-top:0;padding-top:0}.led-shell__counts .led-shell__count-block+.led-shell__count-block{border-top:1px solid #ffffff0f;padding-top:.65rem}.led-shell__count-block{text-align:center;border-top:1px solid #ffffff14;flex-shrink:0;margin-top:auto;padding-top:.75rem}.led-shell__count-label{letter-spacing:.12em;opacity:.55;text-transform:uppercase;margin:0;font-size:.65rem}.led-shell__count-num{color:#ffd8a8;font-variant-numeric:tabular-nums;margin:.2rem 0 0;font-size:clamp(1.4rem,3vw,2.2rem);font-weight:800}.led-shell__main{flex-direction:column;min-width:0;min-height:0;display:flex;position:relative;overflow:hidden}.led-shell__reaction-float-root{z-index:99990;pointer-events:none;isolation:isolate;width:100%;height:100%;min-height:0;position:absolute;inset:0}.led-shell__reaction-float-root .led-reaction-float-layer{position:absolute;inset:0;overflow:hidden}.led-shell__main>*{flex:auto;width:100%;min-height:0}.led-shell__main .led-warmup,.led-shell__main .led-closing,.led-shell__main .led-lucky,.led-shell__main .led-party-led,.led-shell__main .led-duck-led{min-height:100%}.led-shell__main .led-ceremony{flex:auto;align-self:stretch;min-height:100%}.led-shell__main .led-checkin{flex-direction:column;min-height:0;display:flex;overflow:hidden}.led-fullscreen.led-checkin{flex-direction:column;width:100%;max-width:100%;min-height:0;display:flex;overflow:hidden}.led-fullscreen--loading{justify-content:center;align-items:center;font-size:1.5rem}.led-checkin{z-index:0;background-color:#000;position:relative}.led-checkin--party-intro{flex-direction:column;flex:auto;min-height:0;display:flex}.led-checkin__party-intro{box-sizing:border-box;background:radial-gradient(120% 80% at 50% 20%,#2a1810f2 0%,#000 55%);flex:auto;justify-content:center;align-items:center;min-height:min(100dvh,100%);padding:clamp(1.25rem,4vw,3rem);display:flex}.led-checkin__party-intro-text{text-align:center;letter-spacing:.02em;color:#f5ebe0;text-wrap:balance;max-width:52rem;margin:0;font-size:clamp(1.15rem,2.8vw,2.35rem);font-weight:600;line-height:1.45}.led-checkin__top{background:linear-gradient(90deg,#1a100a,#2a1810);border-bottom:1px solid #ffffff14;flex-shrink:0;padding:1rem 1.5rem}.led-checkin__msg{text-align:center;color:#ffd8a8;margin:0;font-size:clamp(1rem,2.5vw,1.75rem);font-weight:700}@keyframes marquee{0%{transform:translate(110%)}to{transform:translate(-110%)}}.led-checkin__marquee{color:#ffd8a8;white-space:nowrap;margin:0;font-size:clamp(1rem,2.5vw,1.75rem);font-weight:700;animation:14s linear infinite marquee;display:inline-block}@keyframes welcomeFadeSlide{0%{opacity:0;transform:translateY(12px)scale(.96)}15%{opacity:1;transform:translateY(0)scale(1)}80%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-8px)scale(1.02)}}.led-checkin__welcome--anim{animation:3.5s forwards welcomeFadeSlide}.led-checkin__stage{background:0 0;flex:auto;min-height:0;position:relative;overflow:hidden}.led-checkin__media-wrap{background:0 0;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.led-checkin__gl-underlay{object-fit:contain;z-index:0;pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;inset:0}.led-checkin__gl-canvas{z-index:2;touch-action:none;width:100%;height:100%;display:block;position:absolute;inset:0}.led-checkin__gl-canvas--idle{visibility:hidden;pointer-events:none;opacity:0;z-index:0}.led-checkin__swiper{width:100%;height:100%;max-height:100%}.led-checkin__swiper.swiper{overflow:hidden}.led-checkin__swiper .swiper-wrapper{overflow:visible}.led-checkin__swiper .swiper-slide{background:#0d0806;justify-content:center;align-items:center;display:flex;overflow:hidden}.led-checkin__swiper--coverflow .swiper-slide{align-self:center;max-width:min(920px,88vw);height:auto;width:72%!important}.led-checkin__slide-media{z-index:1;object-fit:contain;width:100%;max-width:100%;height:100%;max-height:100%;display:block;position:relative}.led-checkin__slide-media--video{object-fit:cover;background:#000;width:100%;height:100%}.led-checkin__slide-placeholder{opacity:.5;justify-content:center;align-items:center;font-size:1.25rem;display:flex;position:absolute;inset:0}.led-checkin__qr-overlay{z-index:10;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0a0604b8;border:1px solid #ffffff1f;border-radius:10px;flex-direction:column;gap:4px;max-width:220px;padding:10px 14px;display:flex;position:absolute;top:calc(3.75rem + 16px);left:16px}.led-checkin__qr-count{color:#ffd8a8;margin:0;font-size:.85rem;font-weight:700}.led-checkin__qr-hint{letter-spacing:.12em;opacity:.6;text-transform:uppercase;margin:0;font-size:.7rem}.led-checkin__qr-url{word-break:break-all;opacity:.85;color:#f5ebe0;margin:0;font-size:.72rem}.led-checkin__toast{background:#00000073;flex-wrap:wrap;flex-shrink:0;justify-content:center;gap:1rem;padding:.75rem 1.5rem;display:flex}.led-checkin__welcome,.led-checkin__wish{margin:0;font-size:clamp(.9rem,2vw,1.2rem)}.led-party-led{color:#f5ebe0;background:0 0;min-height:100dvh;padding:2rem}.led-party-led__phase{letter-spacing:.2em;opacity:.7;margin-bottom:.5rem;font-size:.85rem}.led-party-led__title{margin:0 0 1rem;font-size:clamp(1.5rem,4vw,2.5rem)}.led-ceremony{isolation:isolate;background:0 0;width:100%;height:100%;min-height:100dvh;position:relative;overflow:hidden}.led-ceremony__bg-stack{z-index:0;pointer-events:none;contain:paint;isolation:isolate;width:100%;height:100%;min-height:100%;position:absolute;inset:0;overflow:hidden}.led-ceremony__starfield-gradient{opacity:.85;pointer-events:none;background:radial-gradient(120% 90% at 50% 20%,#281c1259 0%,#0000 55%),radial-gradient(80% 60% at 70% 85%,#19284838 0%,#0000 50%),radial-gradient(circle at 18% 72%,#fff8dc0f 0%,#0000 42%),radial-gradient(circle at 82% 28%,#ffecc80d 0%,#0000 38%);position:absolute;inset:-2%}.led-ceremony__dust{width:var(--dust-size,2px);height:var(--dust-size,2px);margin-left:calc(var(--dust-size,2px) * -.5);margin-top:calc(var(--dust-size,2px) * -.5);pointer-events:none;background:radial-gradient(circle at 35% 35%,#fff9ea,#ffd2a059);border-radius:50%;position:absolute;box-shadow:0 0 4px 1px #ffe6be40}.led-ceremony__dust--twinkle{animation:ledCeremonyTwinkle var(--tw-dur,4s) ease-in-out infinite;animation-delay:var(--tw-delay,0s)}@keyframes ledCeremonyTwinkle{0%,to{opacity:.28;transform:scale(.92);box-shadow:0 0 2px #ffe6c833}50%{opacity:.75;transform:scale(1.18);box-shadow:0 0 5px 1px #ffecd261}}.led-ceremony__hero-fx{z-index:1;pointer-events:none;position:absolute;inset:0;overflow:hidden}@keyframes ledCeremonyStarFallA{0%{opacity:0;transform:translateY(-6vh)rotate(-16deg)}14%{opacity:1}to{opacity:.4;transform:translate(22vw,118vh)rotate(12deg)}}@keyframes ledCeremonyStarFallB{0%{opacity:0;transform:translateY(-8vh)rotate(14deg)}14%{opacity:1}to{opacity:.4;transform:translate(-16vw,118vh)rotate(-10deg)}}@keyframes ledCeremonyStarFallC{0%{opacity:0;transform:translate(-8vw,-7vh)rotate(-4deg)}14%{opacity:1}to{opacity:.38;transform:translate(10vw,118vh)rotate(6deg)}}.led-ceremony__star-fall{color:#fff3c8;text-shadow:0 0 10px #fff0c8,0 0 24px #ffc864a6,0 0 40px #ffaa5059;pointer-events:none;filter:drop-shadow(0 0 6px #ffdca0e6);font-size:clamp(1.05rem,2.4vw,1.85rem);animation-timing-function:linear;animation-fill-mode:forwards;position:absolute}.led-ceremony__star-fall--a{animation-name:ledCeremonyStarFallA}.led-ceremony__star-fall--b{animation-name:ledCeremonyStarFallB}.led-ceremony__star-fall--c{animation-name:ledCeremonyStarFallC}.led-ceremony__stars-layer{z-index:2;pointer-events:none;contain:paint;isolation:isolate;position:absolute;inset:0;overflow:hidden;transform:translate(0,0)}@keyframes starBurst{0%{opacity:1;transform:translate(0,0)scale(.5)}60%{opacity:.9;transform:translateY(-40px)scale(1.8)}to{opacity:0;transform:translateY(-80px)scale(.2)}}.led-ceremony__star-burst{color:#ffe566;text-shadow:0 0 10px #ffe696f2;pointer-events:none;font-size:clamp(1.5rem,4vw,3rem);animation:1.8s forwards starBurst;position:absolute}.led-ceremony__hero{z-index:3;pointer-events:none;text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:min(6vw,3rem) 1.25rem;display:flex;position:absolute;inset:0}.led-ceremony__hero-glow{pointer-events:none;z-index:0;opacity:.58;filter:blur(32px);background:radial-gradient(72% 58% at 50% 42%,#fff8e66b 0%,#ffdcaf33 42%,#0000 68%),radial-gradient(100% 85% at 50% 48%,#fffaeb38 0%,#ffd2a01a 38%,#0000 62%);border-radius:50%;width:min(92vw,56rem);max-width:100%;height:min(58vh,36rem);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 100px 48px #ffe6be24,0 0 160px 72px #ffc88c12}.led-ceremony__hero>:not(.led-ceremony__hero-glow){z-index:2;position:relative}@keyframes ledCeremonyGoldShimmer{0%,to{filter:brightness()saturate(1.05);background-position:0%}33%{filter:brightness(1.14)saturate(1.12);background-position:88% 42%}66%{filter:brightness(1.08)saturate(1.08);background-position:12% 58%}}.led-ceremony__hero-on{letter-spacing:0;flex-direction:row;align-items:flex-end;gap:0;margin:0 0 .75rem;font-family:Arial,Helvetica,sans-serif;font-size:clamp(2.75rem,13vw,9rem);font-weight:500;line-height:.9;display:inline-flex}.led-ceremony__hero-on span{color:#0000;-webkit-text-fill-color:transparent;text-shadow:0 0 2px #fff5d2e6,0 0 12px #ffe6a0d9,0 0 28px #ffc8648c,0 0 48px #ffaa3c59,0 3px 16px #00000059;will-change:background-position, filter;background-image:linear-gradient(118deg,#8b6218 0%,#c9a02a 14%,#f0d060 28%,#fffef5 42%,#fff8e0 48%,#ffeaa0 54%,#e8c547 66%,#c49320 82%,#8a6516 100%);background-position:0%;background-size:280% 100%;-webkit-background-clip:text;background-clip:text;animation:4.2s ease-in-out infinite ledCeremonyGoldShimmer;display:inline-block}.led-ceremony__hero-o{transform:translateY(-.22em)}.led-ceremony__hero-n{animation-delay:.55s;display:inline-block}.led-ceremony__hero-names{letter-spacing:.06em;color:#0000;-webkit-text-fill-color:transparent;text-shadow:0 0 3px #fffadcf2,0 0 16px #ffe196e6,0 0 36px #ffc864a6,0 0 72px #ffa03266,0 2px 20px #0006;will-change:background-position, filter;background-image:linear-gradient(165deg,#7a5818 0%,#b88924 18%,#e8c85a 36%,#fffef8 46%,#fff8d8 50%,#f0d050 54%,#d4af37 68%,#a07820 86%,#6b4e14 100%);background-position:0%;background-size:260% 140%;-webkit-background-clip:text;background-clip:text;margin:0 0 .65rem;padding-bottom:.14em;font-family:Parfumerie Script Pro,cursive;font-size:clamp(6rem,4vw,20rem);font-weight:500;line-height:1.18;animation:5.5s ease-in-out .2s infinite ledCeremonyGoldShimmer;overflow:visible}.led-ceremony__hero-names-amp{vertical-align:.12em;font-size:.42em;font-weight:500}.led-ceremony__hero-date{letter-spacing:.18em;color:#0000;-webkit-text-fill-color:transparent;text-shadow:0 0 2px #fff8dcd9,0 0 14px #ffdc8cbf,0 0 32px #ffbe5073,0 2px 12px #00000061;will-change:background-position, filter;background-image:linear-gradient(90deg,#9a7828 0%,#d4b040 28%,#fffcef 48%,#fff8d0 52%,#e0b838 72%,#8a6a20 100%);background-position:0%;background-size:240% 100%;-webkit-background-clip:text;background-clip:text;margin:0;font-family:Arial,Helvetica,sans-serif;font-size:clamp(3rem,2.6vw,1.5rem);font-weight:500;animation:6.5s ease-in-out .45s infinite ledCeremonyGoldShimmer}.led-warmup{background:0 0;justify-content:center;align-items:center;min-height:100dvh;display:flex;position:relative;overflow:hidden}.led-warmup__label{color:#fff8ebeb;letter-spacing:.06em;text-align:center;-webkit-backdrop-filter:blur(10px);background:#08060ee0;border:1px solid #ffe6c838;border-radius:999px;max-width:min(96vw,52rem);padding:.55rem 1.25rem;font-size:clamp(.9rem,2vw,1.3rem);line-height:1.35;position:absolute;bottom:2rem;left:50%;transform:translate(-50%);box-shadow:0 4px 24px #0000008c,inset 0 1px #ffffff0f}.led-warmup__quiz{text-align:center;color:#faf6ef;-webkit-backdrop-filter:blur(14px);background:#0a0810e0;border:1px solid #ffdcb433;border-radius:clamp(16px,2vw,24px);width:min(96vw,1100px);padding:clamp(1.25rem,2.5vw,2rem) clamp(1.1rem,2.2vw,1.75rem) 5.75rem;box-shadow:0 8px 48px #000000a6,inset 0 0 0 1px #0006,inset 0 1px #ffffff0f}.led-warmup__quiz-badge{letter-spacing:.14em;text-transform:uppercase;color:#ffdcaae0;margin:0 0 .5rem;font-size:clamp(.75rem,1.6vw,1rem);font-weight:700}.led-warmup__quiz-index{color:#ffebd2e6;margin:0 0 1rem;font-size:clamp(.85rem,1.8vw,1.1rem);font-weight:650}.led-warmup__quiz-prompt{color:#fffaf3;text-align:center;text-shadow:0 2px 14px #000000a6;background:#0000006b;border:1px solid #ffd2a047;border-radius:clamp(12px,1.5vw,18px);margin:0 0 1.35rem;padding:clamp(.85rem,1.8vw,1.15rem) clamp(1rem,2vw,1.35rem);font-size:clamp(1.35rem,3.8vw,2.75rem);font-weight:800;line-height:1.28;box-shadow:inset 0 1px #ffffff0d,0 4px 20px #00000059}.led-warmup__quiz-options{text-align:left;flex-direction:column;gap:clamp(.55rem,1.2vw,.85rem);margin:0;padding:0;list-style:none;display:flex}.led-warmup__quiz-row{background:#00000061;border:1px solid #ffffff1a;border-radius:clamp(10px,1.2vw,14px);margin:0;padding:clamp(.6rem,1.2vw,.85rem) clamp(.75rem,1.5vw,1.05rem);box-shadow:inset 0 1px #ffffff0a}.led-warmup__quiz-row-head{justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:.4rem;font-size:clamp(.95rem,2.1vw,1.35rem);display:flex}.led-warmup__quiz-label{color:#fff8ee;text-shadow:0 1px 8px #00000080;font-weight:650;line-height:1.35}.led-warmup__quiz-num{font-variant-numeric:tabular-nums;color:#ffd796f2;text-shadow:0 1px 6px #00000073;flex-shrink:0;font-size:.92em;font-weight:700}.led-warmup__quiz-bar-track{background:#ffffff1f;border:1px solid #00000040;border-radius:999px;height:clamp(9px,1.2vw,13px);overflow:hidden;box-shadow:inset 0 2px 6px #00000073}.led-warmup__quiz-bar-fill{background:linear-gradient(90deg,#e8a84a,#ffe9a8);border-radius:999px;min-width:0;height:100%;transition:width .35s;box-shadow:0 0 14px #ffc8648c}@keyframes floatUp{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-65vh)scale(.3)}}.led-warmup__float{pointer-events:none;filter:drop-shadow(0 0 14px #ffe6a0f2)drop-shadow(0 0 28px #ffbe5a73);font-size:clamp(2rem,5vw,4rem);animation:2.8s forwards floatUp;position:absolute;bottom:15%}.led-reaction-float-layer{pointer-events:none;position:absolute;inset:0;overflow:hidden}.led-reaction-float-layer--warmup,.led-reaction-float-layer--ceremony{z-index:1}.led-ceremony__reaction-overlay{z-index:4}.led-reaction-float{pointer-events:none;font-size:clamp(2rem,5.5vw,4.25rem);line-height:1;animation:2.8s forwards floatUp;position:absolute;bottom:15%}.led-reaction-float--warmup,.led-reaction-float--ceremony{filter:drop-shadow(0 0 14px #ffe6a0f2)drop-shadow(0 0 28px #ffbe5a73)}.led-closing{color:#f5ebe0;text-align:center;background:0 0;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;min-height:100dvh;display:flex}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.led-closing__thanks{letter-spacing:.05em;margin:0;font-size:clamp(3rem,10vw,8rem);font-weight:800;animation:1.2s forwards fadeInUp}.led-closing__sub{opacity:.75;margin:0;font-size:clamp(1.5rem,5vw,4rem);animation:1.5s .3s both fadeInUp}.led-closing__msg{opacity:.6;margin:1.5rem 0 0;font-size:clamp(.9rem,2.5vw,1.75rem);animation:1.5s .6s both fadeInUp}.led-lucky{color:#f5ebe0;text-align:center;background:0 0;flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-height:100dvh;padding:2rem;display:flex}.led-lucky__msg{opacity:.6;margin:0;font-size:clamp(.9rem,2vw,1.4rem);position:absolute;top:1.5rem}.led-lucky__label{letter-spacing:.2em;opacity:.5;margin:0;font-size:clamp(1rem,2.5vw,1.75rem)}.led-lucky__stage{justify-content:center;align-items:center;min-height:12rem;display:flex}.led-lucky__stage--shake{min-height:clamp(14rem,38vh,22rem)}@keyframes spinEmoji{0%{opacity:.6;transform:scale(.8)rotate(0)}50%{opacity:1;transform:scale(1.3)rotate(180deg)}to{opacity:.8;transform:scale(1)rotate(360deg)}}.led-lucky__spin{margin:0;font-size:clamp(4rem,12vw,9rem);animation:.5s linear infinite spinEmoji}@keyframes winnerReveal{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}.led-lucky__winner{animation:.6s cubic-bezier(.34,1.56,.64,1) forwards winnerReveal}.led-lucky__winner-name{color:#fde68a;text-shadow:0 0 30px #fde68a80;margin:0;font-size:clamp(2.5rem,8vw,6rem);font-weight:900}.led-lucky__winner-num{opacity:.7;margin:.25rem 0 0;font-size:clamp(1rem,3vw,2rem)}.led-lucky__waiting{opacity:.5;margin:0;font-size:clamp(1rem,3vw,2rem)}.led-lucky__shake-head{flex-direction:column;align-items:center;gap:.35rem;max-width:min(52rem,94vw);margin-bottom:.25rem;display:flex}@keyframes ledLuckyCallPulse{0%,to{filter:drop-shadow(0 0 12px #c7d2fe59);transform:scale(1)}50%{filter:drop-shadow(0 0 28px #fbbf2473);transform:scale(1.02)}}.led-lucky__shake-call{letter-spacing:.04em;color:#eef2ff;text-shadow:0 0 40px #818cf88c,0 2px #0f172a66;margin:0;font-size:clamp(1.35rem,4.2vw,2.75rem);font-weight:900;line-height:1.2;animation:1.8s ease-in-out infinite ledLuckyCallPulse}.led-lucky__shake-sub{color:#a5b4fc;opacity:.85;margin:0;font-size:clamp(.8rem,1.9vw,1.15rem);font-weight:500;line-height:1.4}.led-lucky__shake-visual{aspect-ratio:1;justify-content:center;align-items:center;width:min(22rem,70vw);display:flex;position:relative}@keyframes ledShakeRipple{0%{opacity:.65;transform:translate(-50%,-50%)scale(.55)}to{opacity:0;transform:translate(-50%,-50%)scale(2.15)}}.led-lucky__shake-ripple{pointer-events:none;border:3px solid #a5b4fc8c;border-radius:50%;width:clamp(9rem,28vw,14rem);height:clamp(9rem,28vw,14rem);margin:0;animation:1.35s ease-out infinite ledShakeRipple;position:absolute;top:50%;left:50%;box-shadow:0 0 24px #818cf840}.led-lucky__shake-ripple--late{border-color:#fbbf2466;animation-delay:.45s}@keyframes ledPhoneShakeJitter{0%{transform:translate(0)rotate(0)}8%{transform:translate(-10px,6px)rotate(-5deg)}16%{transform:translate(12px,-5px)rotate(5deg)}24%{transform:translate(-8px,-8px)rotate(-4deg)}32%{transform:translate(10px,7px)rotate(4deg)}40%{transform:translate(-11px,3px)rotate(-5deg)}48%{transform:translate(9px,-6px)rotate(4deg)}56%{transform:translate(-6px,9px)rotate(-3deg)}64%{transform:translate(8px,4px)rotate(3deg)}72%{transform:translate(-9px,-5px)rotate(-4deg)}80%{transform:translate(7px,-7px)rotate(3deg)}88%{transform:translate(-5px,5px)rotate(-2deg)}96%{transform:translate(4px,2px)rotate(2deg)}to{transform:translate(0)rotate(0)}}@keyframes ledPhoneScreenShimmer{0%{background-position:0%}to{background-position:200%}}.led-lucky__shake-phone{z-index:1;aspect-ratio:9/18;box-sizing:border-box;background:linear-gradient(145deg,#1e1b4b 0%,#312e81 45%,#1e1b4b 100%);border:clamp(3px,.4vw,5px) solid #c7d2fed9;border-radius:2rem;flex-direction:column;align-items:center;width:clamp(7.5rem,20vw,11rem);padding:.55rem .65rem .75rem;animation:.42s linear infinite ledPhoneShakeJitter;display:flex;position:relative;box-shadow:inset 0 0 0 1px #ffffff1f,0 12px 40px #00000073,0 0 60px #818cf859}.led-lucky__shake-phone-notch{background:#0f172ad9;border-radius:999px;flex-shrink:0;width:28%;height:.45rem;margin-bottom:.45rem}.led-lucky__shake-phone-screen{background:linear-gradient(125deg,#312e81 0%,#6366f1 25%,#a78bfa 50%,#6366f1 75%,#312e81 100%) 0 0/220% 220%;border-radius:1.1rem;flex:1;width:100%;animation:2.8s ease-in-out infinite ledPhoneScreenShimmer;box-shadow:inset 0 0 20px #6366f173}.led-lucky__cheer{color:#fbbf24;text-shadow:0 0 24px #fbbf2473;margin:.75rem 0 0;font-size:clamp(1.25rem,4vw,2.5rem);font-weight:800;animation:.8s cubic-bezier(.34,1.56,.64,1) both winnerReveal}.led-lucky__done{color:#a7f3d0;opacity:.9;margin:1rem 0 0;font-size:clamp(.9rem,2.2vw,1.35rem);font-weight:600}.led-lucky__prev-winners{opacity:.5;flex-wrap:wrap;justify-content:center;gap:1rem;margin:0;padding:0;font-size:clamp(.8rem,1.5vw,1rem);list-style:none;display:flex}.led-duck-countdown{flex-direction:column;flex:1;justify-content:center;align-items:center;display:flex}.led-duck-countdown__label{opacity:.8;color:#e8f4ff;margin:0 0 1rem;font-size:clamp(1.5rem,5vw,3rem)}@keyframes countdownPop{0%{opacity:0;transform:scale(.5)}40%{opacity:1;transform:scale(1.15)}to{opacity:1;transform:scale(1)}}.led-duck-countdown__num{color:#7dd3fc;text-shadow:0 0 40px #7dd3fc99;font-size:clamp(6rem,20vw,14rem);font-weight:900;line-height:1;animation:.4s forwards countdownPop}.led-duck-countdown__row{flex-wrap:wrap;justify-content:center;align-items:baseline;gap:.5rem 1.25rem;margin:0;display:flex}.led-duck-countdown__sep{color:#e8f4ff59;font-size:clamp(3rem,10vw,6rem);font-weight:300;line-height:1}.led-duck-countdown__finish{color:#fde047f2;letter-spacing:.04em;text-shadow:0 2px 16px #00000059;font-size:clamp(1.35rem,4.5vw,2.75rem);font-weight:800}.led-duck-header{flex-wrap:wrap;align-items:baseline;gap:1.5rem;margin-bottom:1.5rem;display:flex}.led-duck-header__status{opacity:.7;margin:0;font-size:1rem}.led-duck-header__stress{color:#fbbf24;letter-spacing:.02em;flex:0 0 100%;margin:0;font-size:.88rem;font-weight:700}.led-duck-track{flex-direction:column;gap:.6rem;max-width:60rem;margin:0 auto;display:flex}.led-duck-track__lane{grid-template-columns:2rem 10rem 1fr 4rem;align-items:center;gap:.5rem;display:grid}.led-duck-track__rank{text-align:right;font-size:.9rem;font-weight:800}.led-duck-track__name{text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:600;overflow:hidden}.led-duck-track__bar-wrap{background:#ffffff14;border-radius:999px;height:1.6rem;overflow:hidden}.led-duck-track__bar{background:linear-gradient(90deg,#3b82f6,#7dd3fc);border-radius:999px;justify-content:flex-end;align-items:center;min-width:2rem;height:100%;transition:width .3s;display:flex}.led-duck-track__duck{margin-right:4px;font-size:1.1rem}.led-duck-track__taps{font-variant-numeric:tabular-nums;text-align:right;opacity:.8;font-size:.8rem}.led-race-track{--led-race-animal-size:clamp(2.55rem, 4.6vw, 3rem);background:repeating-linear-gradient(#ffffff26 0 36px,#ffffff12 36px 72px),linear-gradient(#0f2f50 0%,#1f4f75 100%);border:1px solid #ffffff24;border-radius:16px;flex-direction:column;flex:auto;width:100%;max-width:none;min-height:0;margin:0;padding:.55rem .35rem;display:flex;position:relative;overflow:visible}.led-race-track__line{z-index:1;width:18px;position:absolute;top:.45rem;bottom:.45rem}.led-race-track__line--start{left:var(--start-line-pct,7%);background:repeating-linear-gradient(#fff 0 10px,#18212f 10px 20px);transform:translate(-50%)}.led-race-track__line--finish{left:var(--finish-line-pct,93%);background:repeating-linear-gradient(#fff 0 10px,#18212f 10px 20px);transform:translate(-50%)}.led-race-track__label{z-index:3;letter-spacing:.08em;color:#e8f4ffeb;text-shadow:0 3px 10px #0006;pointer-events:none;font-size:clamp(1.15rem,2.4vw,2rem);font-weight:900;position:absolute;top:50%;transform:translateY(-50%)}.led-race-track__label--start{left:calc(var(--start-line-pct,7%) + 9px + .55rem);text-align:left}.led-race-track__label--finish{left:var(--finish-line-pct,93%);text-align:right;transform:translate(calc(-100% - .45rem),-50%)}.led-race-track__lanes{z-index:2;flex-direction:column;flex:auto;gap:.18rem;min-height:0;display:flex;position:relative;overflow:visible}.led-race-track__lanes--absolute{z-index:2;pointer-events:none;position:absolute;inset:0}.led-race-track__duck-stack{flex-direction:column;justify-content:center;align-items:center;gap:.02rem;width:max-content;max-width:10rem;margin:0 auto;display:flex}.led-race-track__duck-stack--by-rank{transform:scale(var(--duck-rank-scale,1));transform-origin:50%;transition:transform .48s cubic-bezier(.33,.86,.39,.99)}.led-race-track__empty{text-align:center;color:#e8f4ffbf;pointer-events:none;max-width:28rem;margin:0;font-size:clamp(.85rem,1.6vw,1.1rem);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.led-race-track__lane--at-lane{min-height:2.9rem;margin:0;position:absolute;left:0;right:0;overflow:visible;transform:translateY(-50%)}.led-race-track__lane{display:block}.led-race-track__runway{height:2.9rem;position:relative;overflow:visible}.led-race-track__racer{will-change:left, transform;width:max-content;max-width:10rem;transition:left .24s linear;position:absolute;top:-.52rem;transform:translate(-50%)}.led-race-track__animal{font-size:var(--led-race-animal-size,clamp(2.55rem, 4.6vw, 3rem));filter:drop-shadow(0 2px 3px #00000047);line-height:1;animation:.75s ease-in-out infinite alternate ledRaceAnimalBob;display:inline-block}.led-race-track__crowd{z-index:2;position:absolute;inset:0;overflow:hidden}.led-race-track__crowd-node{pointer-events:none;will-change:left, transform;z-index:1;flex-direction:column;justify-content:center;align-items:center;gap:.06rem;transition:left .16s linear;display:inline-flex;position:absolute}.led-race-track__crowd-node--real{z-index:6}.led-race-track__crowd-node--moving .led-race-track__crowd-animal{filter:drop-shadow(0 3px 5px #00000059)}.led-race-track__crowd-animal{filter:drop-shadow(0 2px 3px #00000047);font-size:1.45rem;line-height:1;animation:.75s ease-in-out infinite alternate ledRaceAnimalBob}.led-race-track__crowd-name{text-overflow:ellipsis;white-space:nowrap;color:#e8f4fff2;text-shadow:0 1px 3px #0000008c;text-align:center;max-width:4.2rem;font-size:.52rem;font-weight:700;line-height:1.1;overflow:hidden}.led-race-track__name{text-overflow:ellipsis;white-space:nowrap;color:#e8f4fff2;text-shadow:0 2px 6px #00000073;text-align:center;width:100%;max-width:100%;font-size:.72rem;font-weight:700;overflow:hidden}@keyframes ledRaceAnimalBob{0%{transform:translateY(-2px)rotate(-3deg)}to{transform:translateY(2px)rotate(3deg)}}@keyframes ledPodiumAnimalCelebrate{0%{transform:translateY(0)rotate(-4deg)}to{transform:translateY(-7px)rotate(4deg)}}@keyframes ledPodiumAnimalCelebrateGold{0%{filter:drop-shadow(0 4px 14px #0006)drop-shadow(0 0 14px #ffc85a59);transform:translateY(0)rotate(-5deg)scale(1)}to{filter:drop-shadow(0 8px 22px #00000073)drop-shadow(0 0 26px #ffdc828c);transform:translateY(-10px)rotate(5deg)scale(1.07)}}@keyframes ledResultAnimalNudge{0%{transform:translateY(0)rotate(-3deg)}to{transform:translateY(-4px)rotate(3deg)}}.led-duck-podium{flex-direction:column;flex:1;align-items:center;width:100%;padding-top:2rem;display:flex}.led-duck-podium__title{margin:0 0 2rem;font-size:clamp(1.5rem,4vw,2.5rem)}.led-duck-podium__podium-row{grid-template-columns:minmax(0,1fr) minmax(0,1.45fr) minmax(0,1fr);align-items:end;gap:clamp(.65rem,2vw,1.5rem);width:100%;max-width:min(56rem,100%);margin:0 auto;padding:0 .35rem;display:grid}.led-duck-podium__column{flex-direction:column;justify-content:flex-end;min-width:0;display:flex}.led-duck-podium__column--center{z-index:1}.led-duck-podium__place--podium{text-align:center;background:#ffffff12;border:1px solid #ffffff1f;border-radius:20px;flex-direction:column;align-items:center;gap:.45rem;width:100%;padding:1rem .85rem 1.15rem;display:flex}.led-duck-podium__place--lg{background:#ffd7001c;border:2px solid #ffd70061;padding:1.35rem 1.1rem 1.45rem;box-shadow:0 16px 48px #00000061}.led-duck-podium__place--md{background:#ffffff0d;padding:.85rem .65rem 1rem}.led-duck-podium__frame{aspect-ratio:1;background:linear-gradient(#0f2f508c 0%,#0a1628e0 100%);border:2px solid #e8f4ff38;border-radius:18px;justify-content:center;align-items:center;width:100%;max-width:100%;display:flex}.led-duck-podium__place--lg .led-duck-podium__frame{max-height:min(48vw,24rem)}.led-duck-podium__place--md .led-duck-podium__frame{max-height:min(30vw,14rem)}.led-duck-podium__animal{filter:drop-shadow(0 4px 14px #0006);transform-origin:bottom;will-change:transform;line-height:1;animation:1.05s ease-in-out infinite alternate ledPodiumAnimalCelebrate;display:block}.led-duck-podium__column:first-child .led-duck-podium__animal{animation-delay:0s}.led-duck-podium__column:nth-child(2) .led-duck-podium__animal{animation:.95s ease-in-out 80ms infinite alternate ledPodiumAnimalCelebrateGold}.led-duck-podium__column:nth-child(3) .led-duck-podium__animal{animation-delay:.16s}.led-duck-podium__place--lg .led-duck-podium__animal{font-size:clamp(4rem,min(17vw,15vh),10rem)}.led-duck-podium__place--md .led-duck-podium__animal{font-size:clamp(2.75rem,min(11vw,9vh),6rem)}.led-duck-podium__placeholder{width:100%;min-height:3rem}.led-duck-podium__medal{font-size:clamp(1.65rem,4.2vw,2.65rem)}.led-duck-podium__place--lg .led-duck-podium__medal{font-size:clamp(2rem,5vw,3.25rem)}.led-duck-podium__name{font-size:clamp(.95rem,2.8vw,1.65rem);font-weight:700}.led-duck-podium__place--lg .led-duck-podium__name{font-size:clamp(1.1rem,3.2vw,1.95rem)}.led-duck-podium__taps{opacity:.72;font-size:.82rem}.led-duck-led{color:#e8f4ff;flex-direction:column;min-height:100dvh;padding:.9rem;display:flex;overflow:hidden}.led-duck-led__title{margin:0 0 1rem;font-size:2rem}.led-duck-led__track{flex-direction:column;gap:.5rem;max-width:56rem;margin:0 auto;display:flex}.led-duck-led__row{background:#ffffff0f;border-radius:8px;justify-content:flex-start;align-items:center;gap:.4rem;padding:.5rem .75rem;display:flex}.led-duck-led__rank{flex-shrink:0;width:2rem;font-weight:800}.led-duck-led__mini-animal{transform-origin:bottom;flex-shrink:0;font-size:clamp(1rem,2.5vw,1.35rem);line-height:1;animation:.9s ease-in-out infinite alternate ledResultAnimalNudge}.led-duck-led__row:first-of-type .led-duck-led__mini-animal{animation-delay:0s}.led-duck-led__row:nth-of-type(2) .led-duck-led__mini-animal{animation-delay:.12s}.led-duck-led__row:nth-of-type(3) .led-duck-led__mini-animal{animation-delay:.24s}.led-duck-led__row:nth-of-type(n+4) .led-duck-led__mini-animal{animation-delay:80ms}.led-duck-led__name{flex:1;min-width:0;margin:0;font-weight:600}.led-duck-led__taps{font-variant-numeric:tabular-nums;flex-shrink:0;margin-left:auto}.led-surface{color:#f5ebe0;background:0 0;justify-content:center;align-items:center;min-height:100dvh;padding:2rem;display:flex}.led-shell__main .led-surface{min-height:100%}.led-surface__panel{text-align:center;max-width:46rem}.led-surface__kicker{letter-spacing:.38em;opacity:.65;margin:0 0 .5rem;font-size:.72rem}.led-surface__title{color:#ffd8a8;margin:0 0 1rem;font-size:clamp(1.5rem,4.5vw,2.75rem);font-weight:700;line-height:1.15}.led-surface__hint{opacity:.85;margin:0;font-size:clamp(1rem,2.2vw,1.2rem);line-height:1.55}.led-gate{color:#f5ebe0;background:radial-gradient(at 40% 0,#3d2418 0%,#120a08 50%,#060302 100%);justify-content:center;align-items:center;min-height:100dvh;padding:1.5rem;display:flex}.led-gate__panel{width:100%;max-width:22rem}.led-gate__title{margin:0 0 .35rem;font-size:1.5rem;font-weight:700}.led-gate__subtitle{opacity:.78;margin:0 0 1.25rem;font-size:.9rem;line-height:1.45}.led-gate__form{flex-direction:column;gap:.65rem;display:flex}.led-gate__label{opacity:.85;font-size:.82rem;font-weight:600}.led-gate__input{color:#fff;background:#00000059;border:1px solid #ffffff2e;border-radius:8px;padding:.65rem .75rem;font-size:1rem}.led-gate__input::placeholder{color:#ffffff59}.led-gate__submit{cursor:pointer;color:#1a1208;background:linear-gradient(135deg,#c9a227,#e8c547);border:none;border-radius:8px;margin-top:.25rem;padding:.65rem 1rem;font-weight:600}.led-gate__submit:hover{filter:brightness(1.05)}.led-gate__error{color:#ffb4a8;margin:.25rem 0 0;font-size:.88rem}
