@import "https://fonts.googleapis.com/css2?family=Nunito+Sans:wght@400;500;600;700;800;900&family=Pacifico&display=swap";@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap";:root{--cream:#fcf8f0;--ink:#3f5148;--sage:#718779;--muted:#7c7e71;--line:#e8e3d8;--rose:#c99e98}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{background:var(--cream);color:var(--ink);margin:0;font-family:DM Sans,sans-serif;font-size:15px;line-height:1.7}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.6;cursor:wait}a:focus-visible,button:focus-visible,input:focus-visible{outline-offset:4px;outline:3px solid #bb9368}header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;max-width:1240px;margin:auto;padding:28px 44px;display:flex}.brand{font-family:Playfair Display,Georgia,serif;font-size:34px;font-style:italic;line-height:1}.brand span{letter-spacing:3.4px;text-align:center;margin-top:10px;font-family:DM Sans,sans-serif;font-size:8px;font-style:normal;display:block}nav{align-items:center;gap:35px;font-size:12px;display:flex}nav a:hover{color:#ac7c73}.navcta{border:1px solid #9ba79a;border-radius:30px;align-items:center;gap:12px;padding:10px 19px;display:flex}.hero{grid-template-columns:1fr 1fr;align-items:center;max-width:1240px;min-height:730px;margin:auto;padding:65px 44px 100px;display:grid;position:relative}.eyebrow{letter-spacing:2.5px;color:#7a866f;font-size:10px;font-weight:600;display:block}.hero .eyebrow{align-items:center;gap:10px;display:flex}.dot{background:var(--rose);border-radius:50%;width:6px;height:6px}h1,h2,h3{margin:22px 0;font-family:Playfair Display,Georgia,serif;font-weight:400;line-height:1.15}h1{letter-spacing:-2.4px;font-size:clamp(53px,5.4vw,77px)}h1 em,h2 em{color:#87967f;font-weight:400}p{color:var(--muted)}.herotext>p{margin-bottom:29px;font-size:14px;line-height:1.9}.button{background:var(--sage);color:#fff;border:0;border-radius:5px;justify-content:center;align-items:center;gap:20px;min-height:48px;padding:15px 23px;font-size:12px;font-weight:500;transition:background .2s,transform .2s;display:inline-flex}.button:hover{background:#5b7263;transform:translateY(-1px)}.tiny{color:#8e8f82;align-items:center;gap:7px;margin-top:14px;font-size:10px;display:flex}.art{text-align:center;background:#f1ede2;border-radius:48% 48% 8px 8px;flex-direction:column;justify-self:end;align-items:center;width:100%;max-width:480px;height:535px;padding-top:36px;display:flex;position:relative;transform:rotate(2deg);box-shadow:14px 17px #eee9df55}.art:before{content:"";pointer-events:none;border:1px solid #e1d9c7;border-radius:48% 48% 5px 5px;position:absolute;inset:13px}.artlabel{letter-spacing:2px;color:#9b8f75;margin-top:16px;font-size:8px}.rainbow{width:100%;height:340px;margin-top:-5px}.artname{z-index:1;color:#758772;margin-top:-47px;font-family:Playfair Display,Georgia,serif;font-size:69px;font-style:italic;line-height:1}.artname span{letter-spacing:1px;color:#aa8e76;margin-top:13px;font-size:16px;display:block}.artnote{letter-spacing:1px;color:#978c7d;margin-top:29px;font-size:9px}.scroll{letter-spacing:2px;color:#8f907f;align-items:center;gap:12px;font-size:8px;display:flex;position:absolute;bottom:24px;left:44px}.intro{text-align:center;max-width:1000px;margin:0 auto;padding:85px 35px 90px}.intro h2,.access h2{font-size:40px}.intro>p{max-width:620px;margin:24px auto 45px;font-size:14px}.eventstrip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr 1.2fr;padding:27px 0;display:grid}.eventstrip>div{border-right:1px solid var(--line);text-align:left;justify-content:center;align-items:center;gap:16px;display:flex}.eventstrip>div:last-child{border:0}.eventstrip svg{color:#ab9580;width:22px}.eventstrip span{letter-spacing:1.5px;color:#969181;font-size:9px}.eventstrip strong{letter-spacing:0;color:var(--ink);margin-top:3px;font-size:12px;font-weight:500;display:block}.rsvp{background:#f0f0e7;grid-template-columns:1fr 1fr;gap:90px;padding:85px max(35px,50vw - 550px);display:grid}.rsvpintro{padding-top:38px}.rsvp h2{font-size:46px}.rsvpintro>p{max-width:390px;font-size:14px}.rules{border-top:1px solid #dedfd2;gap:17px;margin-top:35px;padding-top:23px;display:flex}.rules svg{color:#a59173;flex-shrink:0;margin-top:13px}.rules p{font-size:12px}.unlocknote{color:#868c7a;align-items:flex-start;gap:12px;max-width:360px;margin-top:28px;font-size:11px;display:flex}.unlocknote svg{flex-shrink:0;margin-top:3px}.formcard{background:#fffdf8;border-radius:9px;align-self:start;padding:36px;box-shadow:0 10px 40px #5d69540b}.step{letter-spacing:2px;color:#a38b75;font-size:9px}.formcard h3{margin:13px 0 9px;font-size:29px}.formhint{margin:0 0 25px;font-size:12px}.person{border-bottom:1px solid var(--line);padding:17px 0 21px}.person h4{margin:0 0 12px;font-size:11px;font-weight:600}.fieldrow{gap:12px;display:flex}label{flex:1;font-size:10px;font-weight:500;display:block}label span{color:#99968c;font-weight:400}input:not([type=checkbox]):not([type=file]){width:100%;color:var(--ink);background:#fcfaf5;border:1px solid #dedfd4;border-radius:4px;margin-top:6px;padding:11px 10px;font-size:12px;display:block}input::placeholder{color:#b1b1a5}.add{color:#78856d;background:0 0;border:1px dashed #cdd2c1;border-radius:4px;justify-content:center;align-items:center;gap:8px;width:100%;margin-top:14px;padding:11px;font-size:11px;display:flex}.relative{position:relative}.remove{color:#a48078;background:0 0;border:0;padding:8px;position:absolute;top:7px;right:-8px}.small{color:#99978b;margin-top:20px;font-size:10px;line-height:1.8}.consent{color:#767e6c;align-items:flex-start;gap:9px;margin:18px 0;font-size:10px;font-weight:400;display:flex}.consent input{accent-color:#718779;flex-shrink:0;margin-top:4px}.full{width:100%}.error{color:#a34737;background:#fbeee7;border-radius:4px;padding:12px;font-size:12px}.success{text-align:center}.checkcircle{background:#edf0e4;border-radius:50%;justify-content:center;align-items:center;width:55px;height:55px;margin:0 auto 25px;display:flex}.success>p{font-size:12px}.success ul{padding:10px 0;list-style:none}.success li{text-align:left;border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:13px 0;font-size:12px;display:flex}.success li span{flex:1}.success li small{color:#9b9a8b}.textbtn{color:#7d8c73;background:0 0;border:0;margin:18px auto 0;font-size:11px;text-decoration:underline;display:block}.access{text-align:center;max-width:1150px;margin:auto;padding:90px 35px}.access>p{max-width:600px;margin:0 auto;font-size:13px}.lockedgrid,.detailgrid{grid-template-columns:repeat(3,1fr);gap:23px;margin-top:38px;display:grid}.locked{border:1px solid var(--line);background:#f9f6ee;border-radius:7px;padding:34px 15px}.locked>svg{color:#a68d76}.locked span{color:#a09989;justify-content:center;align-items:center;gap:7px;font-size:10px;display:flex}.detailgrid{text-align:left}.detailgrid article{border:1px solid var(--line);background:#fffdf8;border-radius:8px;align-self:start;padding:26px}.detailgrid h3{font-size:25px}.detailgrid p{font-size:12px}.detailgrid ul{padding-left:18px;font-size:12px}.pending{border-top:1px solid var(--line);padding-top:15px}.upload{cursor:pointer;text-align:center;background:#e9eee2;border-radius:4px;padding:12px 16px;font-size:12px}.upload input{width:100%;margin-top:8px;font-size:10px;display:block}.photocard canvas{border-radius:7px;width:100%;margin:16px 0}.closing{text-align:center;background:#f3ede3;padding:60px 25px 80px}.closing h2{font-size:33px;line-height:1.4}.closing p{font-size:12px}footer{color:#939080;justify-content:space-between;align-items:center;max-width:1240px;margin:auto;padding:35px 44px;font-size:10px;display:flex}footer .brand{color:var(--ink);font-size:26px}footer .brand span{font-size:6px}footer>a:last-child{color:#75836e}@media (width>=1500px){.hero{min-height:800px}}@media (width<=800px){header{padding:23px}nav{gap:17px}nav>a:not(.navcta){display:none}.hero{grid-template-columns:1fr;gap:35px;padding:42px 26px 74px}.hero h1{font-size:58px}.herotext{text-align:center}.hero .eyebrow,.tiny{justify-content:center}.art{justify-self:center;max-width:400px;height:465px}.rainbow{height:300px}.artname{margin-top:-38px;font-size:61px}.artnote{margin-top:26px}.scroll{justify-content:center;font-size:7px;left:0;right:0}.intro{padding:60px 24px}.intro h2,.access h2{font-size:32px}.eventstrip{grid-template-columns:1fr;padding:0}.eventstrip>div{border-right:0;border-bottom:1px solid var(--line);justify-content:flex-start;padding:18px 20px}.rsvp{grid-template-columns:1fr;gap:32px;padding:45px 22px}.rsvpintro{padding:0}.rsvp h2{font-size:38px}.rsvpintro>p{max-width:none}.rules{margin-top:25px}.unlocknote{max-width:none}.formcard{padding:26px 21px}.access{padding:55px 22px}.lockedgrid,.detailgrid{grid-template-columns:1fr;gap:13px}.locked{padding:24px 18px}.locked h3{margin:10px 0 13px}.closing h2{font-size:28px}footer{flex-wrap:wrap;gap:20px;padding:28px 22px}footer>span{text-align:center;order:3;width:100%;font-size:9px}.desktop{display:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}.adminlogin{background:radial-gradient(at 100% 0,#e8e6d6,#0000 60%),#fcf8f0;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:30px;display:flex}.loginbox{text-align:center;width:100%;max-width:430px}.loginbox>svg{color:#9aab94;margin-bottom:22px}.loginbox h1{letter-spacing:-1px;font-size:43px}.loginbox p{font-size:13px}.loginbox form{text-align:left;margin-top:32px}.loginbox form .button{margin-top:18px}.adminmain{max-width:1100px;margin:auto;padding:45px 30px}.admintitle{justify-content:space-between;align-items:center;display:flex}.admintitle h1{letter-spacing:-1px;font-size:40px}.admintitle>svg{color:#bd978c}.admintitle p{font-size:13px}.iconbtn{color:var(--sage);cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:9px;font-size:11px;display:inline-flex}.sharebox{background:#e9eee2;border:1px solid #dce3d3;border-radius:8px;justify-content:space-between;align-items:center;gap:20px;margin:25px 0;padding:24px;display:flex}.sharebox strong{font-size:13px}.sharebox p{margin:5px 0;font-size:11px}.shareactions{flex-direction:column;align-items:center;display:flex}.shareactions .button{white-space:nowrap;font-size:11px}.stats{grid-template-columns:repeat(4,1fr);gap:15px;margin:25px 0;display:grid}.stats article{border:1px solid var(--line);background:#fffdf8;border-radius:7px;padding:20px}.stats article svg{color:#b49980;float:right;width:18px}.stats strong{font-family:Playfair Display,Georgia,serif;font-size:38px;line-height:1.2;display:block}.stats span{color:#8d907d;font-size:10px}.admintabs{border-bottom:1px solid var(--line);gap:5px;margin:30px 0 22px;display:flex}.admintabs button{color:#9a9b8b;background:0 0;border:0;border-bottom:2px solid #0000;gap:9px;padding:15px 19px;font-size:12px;display:flex}.admintabs button.active{color:var(--ink);border-color:var(--sage)}.adminpanel{border:1px solid var(--line);background:#fffdf8;border-radius:8px;padding:30px}.adminpanel h2{margin:0 0 17px;font-size:28px}.adminpanel>p{font-size:12px}.paneltitle{justify-content:space-between;align-items:center;gap:20px;margin-bottom:15px;display:flex}.paneltitle h2{margin:0;font-size:25px}.empty{text-align:center;color:#8f9e83;padding:65px 20px}.empty h3{font-size:25px}.empty p{font-size:12px}.familyrow{border:1px solid var(--line);border-radius:6px;margin-top:17px;padding:18px}.familyhead{justify-content:space-between;gap:12px;font-size:13px;display:flex}.familyhead>span{color:#a29b87;font-size:10px}.familyrow ul{margin-bottom:0;padding:0;list-style:none}.familyrow li{border-top:1px solid #efeee6;justify-content:space-between;padding:10px 0;font-size:12px;display:flex}.familyrow small{color:#999c8b;font-size:9px;display:block}.adminfields{grid-template-columns:1fr 1fr;gap:20px;margin-top:30px;display:grid}.adminfields label:nth-last-child(-n+2){grid-column:1/-1}.admininfo{background:#f1f0e6;border-radius:7px;gap:20px;margin-top:25px;padding:20px;display:flex}.admininfo>svg{flex-shrink:0;margin-top:7px}.admininfo h3{margin:0;font-size:20px}.admininfo p{margin-bottom:0;font-size:11px}.savebtn{margin-top:27px}.giftedit{border-bottom:1px solid var(--line);align-items:center;gap:15px;padding:20px 0;display:flex}.notice{color:#60744d;background:#ebefdf;border-radius:5px;align-items:center;gap:10px;padding:12px 18px;font-size:12px;display:flex}.adminapp footer{border-top:1px solid var(--line)}@media (width<=700px){.adminmain{padding:30px 18px}.admintitle h1{font-size:32px}.admintitle>svg{display:none}.sharebox{flex-direction:column;align-items:stretch;padding:20px}.shareactions{flex-flow:wrap;justify-content:space-between;gap:10px}.stats{grid-template-columns:1fr 1fr;gap:10px}.stats article{padding:16px}.admintabs{justify-content:space-between;gap:0}.admintabs button{gap:6px;padding:12px 9px;font-size:10px}.adminpanel{padding:20px 16px}.paneltitle{display:block}.paneltitle>div{margin-top:10px}.adminfields{grid-template-columns:1fr}.giftedit{flex-wrap:wrap;gap:10px}.giftedit label{flex:100%}.giftedit .iconbtn{margin-left:auto}.adminapp header{padding:23px}.loginbox h1{font-size:37px}}:root{--cream:#fffaf3;--ink:#352d35;--sage:#ce0870;--muted:#837782;--line:#eee6ea;--rose:#ce0870;--pink:#ce0870;--blue:#1587b7;--yellow:#ffcf33;--green:#83b53f}body{color:var(--ink);background:#fffbf6;font-family:Nunito Sans,DM Sans,sans-serif}.brand{color:var(--pink);font-family:Pacifico,Playfair Display,cursive;font-size:33px;font-style:normal}.brand span{color:#92838d;letter-spacing:2.2px;font-family:Nunito Sans,sans-serif;font-size:8px;font-weight:800}.button{background:var(--pink);border-radius:13px;gap:11px;min-height:50px;font-size:13px;font-weight:800;box-shadow:0 6px 15px #ce087017}.button:hover{background:#ae075e}h1,h2,h3{letter-spacing:-.7px;font-family:Nunito Sans,DM Sans,sans-serif;font-weight:800}h1 em,h2 em{color:var(--pink);font-style:normal}.eyebrow{color:#a18a98;letter-spacing:1.9px;font-size:9px;font-weight:800}.small{color:#93838c}.iconbtn{color:#846e7e;border-radius:9px;min-height:40px;font-size:11px;font-weight:700}.iconbtn:hover{background:#f9edf3}.textbtn{color:var(--pink);font-weight:800;text-decoration:none}.notice{color:#4c7428;background:#edf7e5;border:1px solid #e0eed0}.error{color:#a72751;background:#fff0f4;border:1px solid #fad5df}.add{color:var(--pink);background:#fff9fc;border-color:#f1c0d8;border-radius:10px;min-height:45px;font-weight:800}.remove{color:var(--pink)}input:not([type=checkbox]):not([type=file]){background:#fff;border:1px solid #e7dfe5;border-radius:11px;min-height:48px;margin-top:8px;padding:13px;font-size:13px}input:focus{border-color:#db5a9d}.person h4{color:#5e4759;font-size:12px}.person label{color:#80707c;font-size:10px}.age{max-width:88px}.checkcircle{color:#6c9c2d;background:#eaf6e3}.consent input{accent-color:var(--pink)}body>header{background:#fffbf6}.navcta{color:var(--pink);border-color:#eab1cd;border-radius:12px}.hero{gap:20px;min-height:760px;padding-top:50px;padding-bottom:100px}.herotext{text-align:left}.hero .eyebrow{color:var(--blue)}.guestbadge{letter-spacing:2px;color:#968190;margin-top:25px;font-size:10px;font-weight:800}.hero h1{letter-spacing:-2px;margin:12px 0 10px;font-size:66px;line-height:1.08}.hero h1 em{color:#363039}.guestname{color:var(--pink);margin:10px 0 18px;font-family:Pacifico,cursive;font-size:68px;line-height:1.3;transform:rotate(-3deg)}.guestname span{margin-left:8px;font-family:Nunito Sans,sans-serif;font-size:23px;font-weight:900;display:inline-block;transform:rotate(3deg)}.herotext>p{max-width:410px}.art{box-shadow:none;background:radial-gradient(#ffedc3 0%,#fff8e8 48%,#0000 72%);border-radius:0;justify-content:center;height:600px;padding:0;transform:none}.art:before{display:none}.painter-art{object-fit:contain;filter:drop-shadow(0 12px 16px #6f541319);width:100%;height:510px}.themebrush{color:#4c3a31;background:#ffcf33;border-radius:40% 12% 24% 9%;margin-top:-15px;padding:6px 19px;font-size:20px;font-weight:900;transform:rotate(-4deg)}.artnote{color:#8a6f7d;margin-top:15px}.intro h2,.access h2{font-size:37px;font-weight:800}.intro h2 em{color:var(--blue)}.eventstrip{background:#fff;border:1px solid #f1e5dc;border-radius:18px;padding:25px 0}.eventstrip svg{color:var(--pink)}.eventstrip>div:nth-child(2) svg{color:var(--blue)}.eventstrip strong{font-size:12px;font-weight:800}.rsvp{background:#fff1f7 radial-gradient(at 0 100%,#ffe7f3 0,#0000 45%)}.rsvpintro h2{font-size:42px}.rsvpintro h2 em{color:var(--pink)}.rules{border-color:#f2d5e4}.rules svg{color:var(--blue)}.unlocknote{color:#96768a}.formcard{background:#fff;border:1px solid #f3e5ed;border-radius:22px;padding:32px;box-shadow:0 15px 45px #af17660a}.step{color:var(--pink);font-weight:800}.formcard h3{font-size:29px}.locked{background:#fff;border:1px solid #eee6e9;border-radius:18px;padding:35px 20px}.locked>svg{color:var(--pink);box-sizing:content-box;background:#fff0f6;border-radius:13px;padding:13px}.locked:nth-child(2)>svg{color:var(--blue);background:#edf8fd}.locked:nth-child(3)>svg{color:#ad7c00;background:#fff8df}.locked h3{font-size:19px}.locked:hover{background:#fff7fb}.detailgrid article{background:#fff;border-radius:18px;padding:25px}.detailgrid article>svg{color:var(--pink)}.upload{color:var(--blue);background:#edf8fd;border-radius:11px}.closing{background:#fff1dd}.closing h2{font-size:30px}.closing>svg{color:var(--pink)}.closing p{color:#957381}.newlogin{background:radial-gradient(at 10% 10%,#e9f8ff,#0000 42%),radial-gradient(at 90% 90%,#ffebf5,#0000 42%),#fffcf7;justify-content:center;align-items:center;gap:80px;min-height:100dvh;padding:50px;display:flex}.loginart{text-align:center;width:44%;max-width:450px;position:relative}.brand.large{font-size:60px;display:block}.brand.large span{margin-top:20px;font-size:10px}.themelabel{color:#6e4c29;background:#ffda45;border-radius:15px 5px 17px 4px;margin-top:28px;padding:5px 17px;font-size:13px;font-weight:900;display:inline-block;transform:rotate(-3deg)}.loginart img{object-fit:contain;filter:drop-shadow(0 9px 13px #a2692120);width:100%;max-height:460px;margin-top:10px;display:block}.loginart p{color:#aa8b9a;margin-top:5px;font-size:11px}.newloginbox{background:#fff;border:1px solid #f0e6eb;border-radius:28px;width:420px;padding:40px;box-shadow:0 22px 70px #721b4909}.lockbadge{width:48px;height:48px;color:var(--pink);background:#fff0f7;border-radius:15px;justify-content:center;align-items:center;margin-bottom:24px;display:flex}.newloginbox h1{letter-spacing:-1px;margin:14px 0;font-size:34px;line-height:1.18}.newloginbox>p{font-size:12px;line-height:1.8}.newloginbox form{margin-top:28px}.newloginbox label{color:#6c5363;font-size:11px;font-weight:800}.newloginbox form .button{margin-top:20px}.loginpreview{color:var(--blue);justify-content:center;align-items:center;gap:8px;margin-top:24px;font-size:11px;font-weight:800;display:flex}.loginsecure{color:#b0a2aa;border-top:1px solid #f4edf0;justify-content:center;align-items:center;gap:6px;margin-top:24px;padding-top:20px;font-size:9px;display:flex}.loadingdots{gap:7px;display:flex}.loadingdots i{background:#ce0870;border-radius:50%;width:9px;height:9px}.loadingdots i:nth-child(2){background:#ffcf33}.loadingdots i:nth-child(3){background:#40a9d1}.proapp{background:#faf8fa;min-height:100vh;display:flex}.sidebar{z-index:30;background:#fff;border-right:1px solid #efe8ee;flex-direction:column;width:228px;padding:35px 21px 22px;display:flex;position:fixed;top:0;bottom:0;left:0}.sidebar .brand{align-self:center;margin:0 0 37px;font-size:38px}.sidebar-label{letter-spacing:2px;color:#baabb5;margin:0 12px 15px;font-size:8px;font-weight:900}.sidebar nav{flex-direction:column;align-items:stretch;gap:6px;display:flex}.sidebar nav button{color:#95828e;text-align:left;background:0 0;border:0;border-radius:12px;align-items:center;gap:12px;min-height:48px;padding:14px;font-size:12px;font-weight:700;display:flex}.sidebar nav button.active{color:var(--pink);background:#fff0f7}.sidebar nav button small{color:#fff;background:#ce0870;border-radius:5px;margin-left:auto;padding:0 6px;font-size:9px}.sidebarart{text-align:center;margin-top:auto;padding-top:25px}.sidebarart img{object-fit:contain;width:130px;height:150px}.sidebarart p{color:#b199a8;font-size:10px;line-height:1.6}.sidebarart strong{color:#8f7586;font-weight:800}.sidebar>.iconbtn{border-top:1px solid #f1ebef;border-radius:0;justify-content:center;margin-top:15px;padding-top:18px}.appworkspace{flex:1;min-width:0;margin-left:228px}.apptopbar{background:#fff;border-bottom:1px solid #efe8ee;justify-content:space-between;max-width:none;height:78px;padding:0 38px;display:flex}.topbreadcrumb{color:#a28b9c;font-size:11px;font-weight:700}.topbreadcrumb span{color:#d7c9d3;margin:0 11px}.topright{align-items:center;gap:22px;display:flex}.onlinepill{color:#94a983;align-items:center;gap:6px;font-size:10px;font-weight:700;display:flex}.onlinepill i{background:#8cba52;border-radius:50%;width:5px;height:5px}.profilebadge{width:41px;height:41px;color:var(--pink);background:#fff1f7;border:0;border-radius:13px;font-size:15px;font-weight:900;position:relative}.profilebadge svg{position:absolute;bottom:3px;right:2px}.mobilebrand{display:none}.proapp .adminmain{max-width:1180px;margin:auto;padding:35px 38px 45px}.pageintro{justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px;display:flex}.pageintro h1{letter-spacing:-.7px;margin:7px 0 5px;font-size:25px}.pageintro p{color:#a48f9e;margin:0;font-size:11px}.syncbtn{white-space:nowrap;background:#fff;border:1px solid #ece3ea;border-radius:11px;padding:10px 14px;font-size:10px}.dashboardhero{isolation:isolate;background:#fff1d6;border:1px solid #faeacb;border-radius:23px;align-items:center;min-height:320px;padding:30px 32px;display:flex;position:relative;overflow:hidden}.dashboardhero:after{content:"";z-index:-1;background:#fff7e9;border-radius:50%;width:310px;height:310px;position:absolute;top:20px;right:6%}.dashboardcopy{z-index:2;width:65%;position:relative}.celebrationpill{color:#9f711e;background:#ffe5a5;border:1px solid #f5d386;border-radius:30px;align-items:center;gap:6px;padding:4px 10px;font-size:9px;font-weight:800;display:inline-flex}.dashboardcopy h2{color:var(--pink);letter-spacing:0;margin:15px 0 8px;font-family:Pacifico,cursive;font-size:54px;font-weight:400;line-height:1.35}.dashboardcopy h2 span{color:#ab5578;margin-left:8px;font-family:Nunito Sans,sans-serif;font-size:17px;font-weight:900}.dashboardcopy>p{color:#a1836c;margin:0 0 15px;font-size:11px;line-height:1.8}.herochips{flex-wrap:wrap;gap:8px 16px;margin-bottom:20px;display:flex}.herochips span{color:#9d755a;align-items:center;gap:6px;font-size:10px;font-weight:800;display:flex}.herochips svg{color:#c78a4a}.dashboardcopy .button{border-radius:11px;min-height:43px;padding:11px 15px;font-size:11px}.dashboardart{object-fit:contain;object-position:bottom;width:36%;height:310px;position:absolute;bottom:-2px;right:9px}.paintdot{z-index:1;border-radius:60% 10% 60% 30%;width:12px;height:18px;position:absolute}.d1{background:#28b4dc;top:70px;left:54%;transform:rotate(40deg)}.d2{background:#e52184;width:15px;height:9px;top:91px;left:58%;transform:rotate(70deg)}.d3{background:#f4cf29;top:35px;right:2%;transform:rotate(30deg)}.proapp .stats{gap:14px;margin:22px 0}.proapp .stats article{background:#fff;border:1px solid #eee5ec;border-radius:17px;padding:18px 19px;position:relative}.stat-icon{border-radius:11px;justify-content:center;align-items:center;width:35px;height:35px;display:flex;position:absolute;top:17px;right:16px}.pink{color:#ce0870;background:#fff0f7}.blue{color:#1b96bd;background:#edf8fd}.yellow{color:#c99713;background:#fff8df}.green{color:#88ad48;background:#f0f8e8}.proapp .stats article .stat-icon svg{float:none;color:inherit;width:18px}.proapp .stats strong{color:#4f3446;margin:0 0 10px;font-family:Nunito Sans,sans-serif;font-size:29px;font-weight:900}.proapp .stats span{color:#a18c9b;font-size:9px;font-weight:700}.quickactions{grid-template-columns:1fr 1fr;gap:15px;margin-bottom:24px;display:grid}.quickactions>button{text-align:left;background:#fff;border:1px solid #eee5ec;border-radius:16px;align-items:center;gap:13px;padding:18px;display:flex}.quickicon{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:41px;height:41px;display:flex}.quickicon svg{width:21px}.quickactions strong{color:#64475b;font-size:11px;display:block}.quickactions div span{color:#b39aa9;margin-top:3px;font-size:9px;display:block}.quickactions>button>svg{color:#c9b7c3;flex-shrink:0;margin-left:auto}.proapp .adminpanel{background:#fff;border:1px solid #eee5ec;border-radius:18px;padding:25px}.proapp .paneltitle{margin-bottom:22px}.proapp .paneltitle h2{margin:6px 0 0;font-size:19px}.proapp .paneltitle .eyebrow{font-size:8px}.proapp .paneltitle>.textbtn{align-items:center;gap:4px;margin:0;font-size:10px;display:flex}.empty.compact{padding:25px 10px 30px}.emptyicon{color:#d27ba7;background:#fdf1f7;border-radius:22px;justify-content:center;align-items:center;width:65px;height:65px;margin:auto;display:flex}.empty.compact h3{color:#8c6f82;margin:20px 0 8px;font-size:17px}.empty.compact p{color:#b29aaa;font-size:11px}.empty.compact .button{color:#ce0870;min-height:41px;box-shadow:none;background:#fff1f7;margin-top:12px;padding:10px 17px;font-size:10px}.privacynote{color:#b7a0af;justify-content:center;align-items:center;gap:7px;margin-top:25px;font-size:9px;display:flex}.recentfamily{text-align:left;background:#fff;border:0;border-top:1px solid #f4edf2;align-items:center;gap:13px;width:100%;padding:16px 0;display:flex}.familyavatar{color:#c34c8a;background:#fff0f7;border-radius:13px;flex-shrink:0;justify-content:center;align-items:center;width:39px;height:39px;font-size:14px;font-weight:900;display:flex}.recentfamily>div{flex:1;min-width:0}.recentfamily strong{color:#6a4e61;text-overflow:ellipsis;font-size:11px;display:block;overflow:hidden}.recentfamily>div>span{color:#baa3b2;margin-top:2px;font-size:9px;display:block}.confirmedpill{color:#7e9f55;background:#f1f8e9;border-radius:6px;align-items:center;gap:4px;padding:4px 6px;font-size:8px;display:flex}.proapp .adminpanel>h2{font-size:23px}.proapp .familyrow{background:#fffdfd;border-color:#f1e6ec;border-radius:14px}.proapp .familyhead strong{color:#725167;font-size:12px}.proapp .familyrow li{font-size:12px}.proapp .adminfields{gap:22px}.proapp .adminfields label,.proapp .giftedit label{color:#8c7083;font-size:11px;font-weight:800}.proapp .admininfo{color:#2588ac;background:#edf8fd;border:1px solid #dceff8;border-radius:14px}.proapp .admininfo h3{color:#398da9;font-size:16px}.proapp .admininfo p{color:#7694a0}.proapp .appfooter{color:#c2acb9;border:0;max-width:none;padding:0 38px 28px;font-size:9px}.bottomnav{display:none}@media (width<=1100px){.sidebar{width:200px;padding-left:14px;padding-right:14px}.appworkspace{margin-left:200px}.proapp .adminmain{padding:28px 25px}.apptopbar{padding:0 25px}.dashboardcopy h2{font-size:46px}.dashboardart{width:38%;height:290px}.proapp .stats article{padding:16px 12px}.stat-icon{width:29px;height:29px;right:10px}.proapp .stats span{font-size:8px}.hero h1{font-size:56px}}@media (width<=800px){.newlogin{flex-direction:column;justify-content:flex-start;gap:22px;min-height:100dvh;padding:25px}.loginart{width:100%;max-width:340px}.loginart .brand.large{font-size:45px}.loginart .brand.large span{margin-top:12px;font-size:8px}.loginart .themelabel{margin-top:20px;font-size:10px}.loginart img{height:230px;margin-top:5px}.loginart p{display:none}.newloginbox{border-radius:24px;width:100%;max-width:420px;padding:28px}.newloginbox .lockbadge{display:none}.newloginbox h1{margin-top:10px;font-size:28px}.newloginbox>p{font-size:11px}.newloginbox form{margin-top:20px}.loginsecure{margin-top:18px;padding-top:15px}.hero{gap:15px;min-height:0;padding:35px 24px 65px}.herotext{text-align:center}.hero .eyebrow{justify-content:center}.guestbadge{margin-top:20px;font-size:8px}.hero h1{letter-spacing:-1.6px;margin-top:10px;font-size:44px}.guestname{margin:4px 0 20px;font-size:57px}.guestname span{font-size:19px}.herotext>p{max-width:340px;margin:0 auto 22px;font-size:12px}.herotext>.button{width:100%;max-width:330px}.art{justify-self:center;width:100%;max-width:400px;height:410px}.painter-art{height:360px}.themebrush{margin-top:-3px;font-size:16px}.artnote{margin-top:10px;font-size:8px}.intro h2,.access h2{font-size:29px}.intro{padding-top:45px}.intro>p{font-size:12px}.eventstrip{padding:0}.eventstrip>div{padding:18px 22px}.rsvp{gap:25px;padding:45px 22px}.rsvpintro h2{font-size:33px}.rsvpintro>p{font-size:12px}.formcard{padding:26px 22px}.lockedgrid{gap:12px}.locked{padding:22px 18px}.locked h3{font-size:18px}.closing h2{font-size:26px}.sidebar{display:none}.appworkspace{margin-left:0;padding-bottom:84px}.apptopbar{z-index:20;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#ffffffef;height:77px;padding:0 22px;position:sticky;top:0}.mobilebrand{font-size:30px;display:block}.mobilebrand span{letter-spacing:2px;margin-top:9px;font-size:6px}.topbreadcrumb{display:none}.topright{gap:13px}.onlinepill{font-size:9px}.profilebadge{border-radius:12px;width:36px;height:36px}.proapp .adminmain{padding:25px 18px}.pageintro{gap:8px;margin-bottom:20px}.pageintro h1{max-width:260px;margin:7px 0;font-size:22px;line-height:1.25}.pageintro .eyebrow{letter-spacing:1.5px;font-size:8px}.pageintro p{max-width:240px;font-size:10px}.syncbtn{border-radius:11px;align-self:flex-start;gap:0;min-width:37px;min-height:37px;margin-top:19px;padding:10px;font-size:0}.dashboardhero{border-radius:20px;align-items:flex-start;min-height:300px;padding:23px 19px}.dashboardcopy{width:70%}.celebrationpill{gap:4px;padding:4px 7px;font-size:7px}.celebrationpill svg{width:11px}.dashboardcopy h2{margin:14px 0 9px;font-size:43px}.dashboardcopy h2 span{margin-top:4px;margin-left:3px;font-size:13px;display:block}.dashboardcopy>p{max-width:160px;margin-bottom:11px;font-size:9px}.herochips{flex-direction:column;gap:5px;margin-bottom:17px}.herochips span{gap:5px;font-size:8px}.herochips svg{width:12px;height:12px}.dashboardcopy .button{gap:6px;min-height:40px;padding:10px 11px;font-size:9px}.dashboardcopy .button svg{width:13px}.dashboardart{width:47%;height:250px;bottom:8px;right:-7px}.dashboardhero:after{width:210px;height:210px;top:40px;right:-50px}.d1{width:8px;height:11px;top:30px;left:65%}.d2{top:51px;left:68%}.d3{width:7px;height:10px;top:20px;right:8%}.proapp .stats{grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}.proapp .stats article{border-radius:16px;padding:18px 16px}.proapp .stats strong{margin-bottom:9px;font-size:30px}.proapp .stats span{font-size:9px}.stat-icon{width:33px;height:33px;top:17px;right:16px}.quickactions{gap:12px;margin-bottom:20px}.quickactions>button{border-radius:16px;flex-wrap:wrap;gap:9px;padding:15px 12px;position:relative}.quickicon{border-radius:10px;width:34px;height:34px}.quickicon svg{width:18px}.quickactions>button>div{width:100%}.quickactions strong{font-size:10px}.quickactions div span{font-size:8px}.quickactions>button>svg{width:14px;position:absolute;top:25px;right:12px}.proapp .adminpanel{border-radius:18px;padding:22px 17px}.proapp .paneltitle{align-items:center;gap:8px;display:flex}.proapp .paneltitle h2{margin-top:7px;font-size:17px}.proapp .paneltitle .eyebrow{letter-spacing:1.3px;font-size:7px}.proapp .paneltitle>.textbtn{white-space:nowrap;font-size:9px}.proapp .paneltitle>div{margin-top:0}.proapp .paneltitle:has(>div>.iconbtn){flex-wrap:wrap}.empty.compact{padding:20px 0}.empty.compact h3{font-size:16px}.empty.compact p{max-width:240px;margin-left:auto;margin-right:auto;font-size:10px}.proapp .appfooter{justify-content:center;gap:8px;padding:0 22px 18px}.proapp .appfooter>span{order:0;width:auto;font-size:8px}.bottomnav{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:40;padding:10px 10px max(10px,env(safe-area-inset-bottom));background:#fffffff7;border-top:1px solid #f0e4ed;justify-content:space-around;align-items:center;gap:0;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -5px 22px #521a3e04}.bottomnav button{color:#b6a1b0;background:0 0;border:0;flex-direction:column;align-items:center;gap:4px;min-width:65px;min-height:52px;padding:0 5px;font-size:9px;font-weight:800;display:flex}.bottomnav button>span{border-radius:11px;justify-content:center;align-items:center;width:48px;height:29px;display:flex}.bottomnav button.active{color:var(--pink)}.bottomnav button.active>span{background:#fff0f7}.confirmedpill{padding:4px;font-size:7px}.recentfamily{gap:9px}.recentfamily strong{font-size:10px}.recentfamily>div>span{font-size:8px}.familyavatar{width:34px;height:34px}.proapp .adminfields{gap:18px}.proapp .admininfo{gap:12px;padding:17px}.proapp .admininfo h3{font-size:15px}.proapp .admininfo p{font-size:10px}.proapp .familyhead{align-items:center}.proapp .familyhead strong{max-width:62%;font-size:11px}.proapp .familyhead>span{font-size:8px}.privacynote{margin-top:20px;font-size:8px}}@media (prefers-reduced-motion:no-preference){.loadingdots i{animation:1s ease-in-out infinite alternate pulse}.loadingdots i:nth-child(2){animation-delay:.2s}.loadingdots i:nth-child(3){animation-delay:.4s}@keyframes pulse{to{opacity:.2;transform:translateY(-5px)}}}@media (width<=800px){.dashboardhero{min-height:330px}.dashboardcopy>p{max-width:165px;font-size:11px}.herochips span{font-size:9px}.dashboardcopy .button{font-size:10px}.dashboardart{height:260px}.proapp .stats span{font-size:11px}.quickactions strong{font-size:12px}.quickactions div span{font-size:10px}.pageintro p{font-size:12px}.bottomnav button{font-size:10px}.empty.compact p,.recentfamily strong{font-size:12px}.recentfamily>div>span{font-size:10px}.newloginbox>p,.proapp .adminpanel>p{font-size:13px}.proapp .adminfields label,.proapp .giftedit label,.proapp .admininfo p{font-size:12px}.proapp .familyrow li,.proapp .familyhead strong{font-size:13px}.confirmedpill{font-size:9px}.familyrow small,.guestbadge{font-size:10px}.herotext>p,.intro>p,.rsvpintro>p{font-size:14px}}.kidsquick{grid-column:1/-1}.kidsbanner{background:#fff1f7;border:1px solid #f4d5e5;border-radius:18px;align-items:center;gap:18px;margin-bottom:20px;padding:22px;display:flex}.kidsbanner>.quickicon{background:#fff;flex-shrink:0;width:49px;height:49px}.kidsbanner strong{color:#a5326d;font-size:17px}.kidsbanner p{color:#a36a88;max-width:620px;margin:6px 0 0;font-size:12px}.proapp .agepanel{margin-bottom:20px}.agecards{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:12px;display:grid}.agecard{color:#816478;text-align:center;background:#fffcfe;border:1px solid #eee4eb;border-radius:14px;min-height:118px;padding:17px 12px}.agecard span{font-size:11px;font-weight:800;display:block}.agecard strong{color:#ce0870;margin:7px 0;font-size:30px;line-height:1.3;display:block}.agecard small{color:#a48d9c;font-size:10px}.agecard.selected{background:#fff0f7;border-color:#ce0870;box-shadow:0 0 0 1px #ce0870}.kidsfilters{grid-template-columns:1.5fr 1fr;gap:18px;margin:20px 0;display:grid}.kidsfilters label{color:#8c7083;font-size:11px;font-weight:800}.kidsfilters select{font:inherit;color:#7b5a70;background:#fff;border:1px solid #e7dfe5;border-radius:11px;width:100%;min-height:48px;margin-top:8px;padding:12px;font-size:12px;display:block}.kidsrows{margin:0;padding:0;list-style:none}.kidsrows li{border-bottom:1px solid #f3eaf0;align-items:center;gap:12px;padding:18px 0;display:flex}.kidavatar{color:#3595b7;background:#eef8fd;border-radius:13px;flex-shrink:0;justify-content:center;align-items:center;width:39px;height:39px;display:flex}.kidsrows li>div{flex:1;min-width:0}.kidsrows strong{color:#755166;overflow-wrap:anywhere;font-size:13px;display:block}.kidsrows li>div>span{color:#a38a9b;margin-top:3px;font-size:11px;display:block}.kidage{color:#bf397d;text-align:center;background:#fff1f7;border-radius:8px;flex-shrink:0;padding:5px 9px;font-size:11px;font-weight:800}.kidsresult{color:#a38a9b;font-size:11px;font-weight:800}@media (width<=800px){.kidsbanner{gap:12px;padding:17px}.kidsbanner strong{font-size:15px}.kidsbanner p{font-size:11px}.kidsfilters{grid-template-columns:1fr;gap:15px}.agecards{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.agecard{padding:13px 8px}.agecard span{font-size:10px}.agecard strong{font-size:26px}.bottomnav button{flex:1;min-width:0;padding:0;font-size:9px}.bottomnav button>span{width:42px}.kidsrows li{gap:9px}.kidsrows strong{font-size:12px}.kidsrows li>div>span{font-size:10px}.kidage{padding:5px 7px;font-size:10px}.kidavatar{width:32px;height:32px}.kidsquick{gap:10px!important}.kidsquick>div{flex:1;width:auto!important}.kidsquick>svg{position:static!important}.kidslist .paneltitle{flex-wrap:wrap}}
