@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.00az9qtie3ho1.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.3j-a226dh71aj.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.2gwoz23eiro2t.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.0i3h3th1vs4m7.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.0zr6hhvz-h9nw.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.T19VSG_className{font-family:Geist,Geist Fallback;font-style:normal}.T19VSG_variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.27spqqad3wyeo.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.3f4zuumv8svu0.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6306c77e7c8268e4-s.34r5yzckw0h2s.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7d817b4c03b0c5f1-s.2jyz_zw3a8jit.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.30bdpjkrtcces.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.1v5bejj26fx9h.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}._8Li5zG_className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}._8Li5zG_variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:400;font-display:swap;src:url(../media/d8cddd76dbfeaef0-s.2dbc-et3k6kfe.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:400;font-display:swap;src:url(../media/591574edbe85c69b-s.0slbgzy4000md.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:400;font-display:swap;src:url(../media/acf349172f10b359-s.0d4lnz92g9ol4.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:400;font-display:swap;src:url(../media/0926c12c4384550f-s.253cfg7mpxmwg.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:400;font-display:swap;src:url(../media/8bd76523131fa0fc-s.p.273-hd1b-0-z9.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:500;font-display:swap;src:url(../media/d8cddd76dbfeaef0-s.2dbc-et3k6kfe.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:500;font-display:swap;src:url(../media/591574edbe85c69b-s.0slbgzy4000md.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:500;font-display:swap;src:url(../media/acf349172f10b359-s.0d4lnz92g9ol4.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:500;font-display:swap;src:url(../media/0926c12c4384550f-s.253cfg7mpxmwg.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:500;font-display:swap;src:url(../media/8bd76523131fa0fc-s.p.273-hd1b-0-z9.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:600;font-display:swap;src:url(../media/d8cddd76dbfeaef0-s.2dbc-et3k6kfe.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:600;font-display:swap;src:url(../media/591574edbe85c69b-s.0slbgzy4000md.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:600;font-display:swap;src:url(../media/acf349172f10b359-s.0d4lnz92g9ol4.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:600;font-display:swap;src:url(../media/0926c12c4384550f-s.253cfg7mpxmwg.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:600;font-display:swap;src:url(../media/8bd76523131fa0fc-s.p.273-hd1b-0-z9.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:700;font-display:swap;src:url(../media/d8cddd76dbfeaef0-s.2dbc-et3k6kfe.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:700;font-display:swap;src:url(../media/591574edbe85c69b-s.0slbgzy4000md.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:700;font-display:swap;src:url(../media/acf349172f10b359-s.0d4lnz92g9ol4.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:700;font-display:swap;src:url(../media/0926c12c4384550f-s.253cfg7mpxmwg.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:700;font-display:swap;src:url(../media/8bd76523131fa0fc-s.p.273-hd1b-0-z9.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(../media/9cc5c0547f229dea-s.26a4qkxezf9-r.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(../media/b0947914c9718a1e-s.1hzlq6xrrxf6u.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(../media/d0b60be57f16ee32-s.33on4mq75bz97.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(../media/1f9e983605289f29-s.2xsoqmjk136f4.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(../media/01e4147cff8141ee-s.p.0v7knm2wof07y.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(../media/9cc5c0547f229dea-s.26a4qkxezf9-r.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(../media/b0947914c9718a1e-s.1hzlq6xrrxf6u.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(../media/d0b60be57f16ee32-s.33on4mq75bz97.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(../media/1f9e983605289f29-s.2xsoqmjk136f4.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(../media/01e4147cff8141ee-s.p.0v7knm2wof07y.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(../media/9cc5c0547f229dea-s.26a4qkxezf9-r.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(../media/b0947914c9718a1e-s.1hzlq6xrrxf6u.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(../media/d0b60be57f16ee32-s.33on4mq75bz97.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1f9e983605289f29-s.2xsoqmjk136f4.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(../media/01e4147cff8141ee-s.p.0v7knm2wof07y.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(../media/9cc5c0547f229dea-s.26a4qkxezf9-r.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(../media/b0947914c9718a1e-s.1hzlq6xrrxf6u.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(../media/d0b60be57f16ee32-s.33on4mq75bz97.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(../media/1f9e983605289f29-s.2xsoqmjk136f4.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(../media/01e4147cff8141ee-s.p.0v7knm2wof07y.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond Fallback;src:local(Times New Roman);ascent-override:95.27%;descent-override:29.59%;line-gap-override:0.0%;size-adjust:96.98%}.RtsoOa_className{font-family:Cormorant Garamond,Cormorant Garamond Fallback}.RtsoOa_variable{--font-cormorant:"Cormorant Garamond", "Cormorant Garamond Fallback"}
:root{--cream:#fff6ea;--cream-2:#fbefdf;--cream-3:#f4e6d2;--sage:#809684;--sage-2:#6b8270;--sage-soft:#e3ebe2;--mauve:#9d7a90;--mauve-2:#8a6680;--mauve-soft:#efe3ea;--plum:#54234f;--plum-2:#6c3466;--plum-3:#3c1638;--plum-soft:#ecdfea;--gold:#c9a961;--gold-soft:#f5ead0;--danger:#b4505f;--danger-soft:#f8e1e4;--warning:#c08a3e;--warning-soft:#f8ead3;--text:#3a1d37;--text-2:#6f5a6c;--text-3:#a090a0;--line:#54234f1a;--line-2:#54234f2e;--glass:#ffffff9e;--glass-strong:#ffffffd1;--radius-sm:10px;--radius:16px;--radius-lg:24px;--radius-xl:32px;--shadow-sm:0 1px 2px #54234f0f, 0 2px 8px #54234f0a;--shadow:0 4px 24px #54234f14, 0 1px 3px #54234f0d;--shadow-lg:0 24px 60px #3c16382e, 0 4px 16px #3c163814;--font-display:var(--font-cormorant), "Cormorant Garamond", Georgia, serif;--font-ui:var(--font-geist-sans), "Geist", system-ui, sans-serif;--sidebar-w:264px;--ease:cubic-bezier(.22, 1, .36, 1);--safe-bottom:env(safe-area-inset-bottom,0px)}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{font-family:var(--font-ui);color:var(--text);background:var(--cream);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100dvh;font-size:15px;line-height:1.5}body:before{content:"";z-index:-1;background:radial-gradient(900px 600px at 100% -10%, #9d7a902e, transparent 60%), radial-gradient(700px 500px at -10% 110%, #80968433, transparent 60%), radial-gradient(600px 400px at 50% 50%, #c9a9610f, transparent 70%), var(--cream);position:fixed;inset:0}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none}input,select,textarea{font:inherit;color:inherit}img{max-width:100%;display:block}::selection{background:var(--mauve-soft);color:var(--plum)}h1,h2,h3{font-family:var(--font-display);color:var(--plum);letter-spacing:-.01em;font-weight:600;line-height:1.1}.app-shell{min-height:100dvh}.sidebar{width:var(--sidebar-w);background:radial-gradient(400px 300px at 0% 0%, #9d7a9059, transparent 70%), radial-gradient(300px 300px at 100% 100%, #80968440, transparent 70%), linear-gradient(180deg, var(--plum) 0%, var(--plum-3) 100%);color:var(--cream);z-index:30;flex-direction:column;gap:6px;padding:28px 18px;display:flex;position:fixed;inset:0 auto 0 0;overflow-y:auto}.brand{border-bottom:1px solid #fff6ea1f;align-items:center;gap:10px;margin-bottom:10px;padding:0 4px 22px;display:flex}.brand img{border-radius:14px;width:44px;height:44px;box-shadow:0 6px 18px #00000040}.brand-title{font-family:var(--font-display);color:var(--cream);white-space:nowrap;font-size:1.32rem;font-weight:600;line-height:1}.brand>span:last-child{flex-direction:column;min-width:0;display:flex}.brand-sub{letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-top:4px;font-size:.72rem}.nav-section{letter-spacing:.16em;text-transform:uppercase;color:#fff6ea73;padding:14px 12px 6px;font-size:.68rem}.nav-link{color:#fff6eac7;transition:background .25s var(--ease), color .25s var(--ease), transform .25s var(--ease);border-radius:12px;align-items:center;gap:12px;padding:10px 12px;font-size:.93rem;display:flex;position:relative}.nav-link svg{opacity:.85;flex-shrink:0;width:19px;height:19px}.nav-link:hover{color:var(--cream);background:#fff6ea14;transform:translate(2px)}.nav-link.active{color:#fff;background:linear-gradient(90deg,#fff6ea29,#fff6ea0f);font-weight:500}.nav-link.active:before{content:"";background:var(--gold);border-radius:0 4px 4px 0;width:4px;position:absolute;top:8px;bottom:8px;left:-18px}.nav-badge{background:var(--gold);min-width:22px;height:22px;color:var(--plum-3);border-radius:99px;place-items:center;margin-left:auto;padding:0 7px;font-size:.72rem;font-weight:600;display:grid}.sidebar-footer{border-top:1px solid #fff6ea1f;align-items:center;gap:10px;margin-top:auto;padding-top:18px;display:flex}.sidebar-countdown{text-align:center;background:#fff6ea14;border:1px solid #fff6ea1f;border-radius:16px;margin:14px 4px 4px;padding:14px 16px}.sidebar-countdown strong{font-family:var(--font-display);color:var(--gold);font-size:2.2rem;line-height:1;display:block}.sidebar-countdown span{color:#fff6eab3;font-size:.75rem}.main{margin-left:var(--sidebar-w);min-height:100dvh}.page{max-width:1240px;animation:page-in .5s var(--ease);margin:0 auto;padding:36px 40px 64px}@keyframes page-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:28px;display:flex}.page-eyebrow{letter-spacing:.2em;text-transform:uppercase;color:var(--mauve);margin-bottom:6px;font-size:.74rem;font-weight:500}.page-title{font-size:clamp(2rem,4vw,2.8rem)}.page-subtitle{color:var(--text-2);max-width:60ch;margin-top:6px}.page-actions{flex-wrap:wrap;gap:10px;display:flex}.mobile-top,.bottom-nav{display:none}@media (max-width:960px){.sidebar{display:none}.main{padding-bottom:calc(84px + var(--safe-bottom));margin-left:0}.page{padding:20px 16px 40px}.mobile-top{padding:calc(12px + env(safe-area-inset-top,0px)) 16px 12px;z-index:20;-webkit-backdrop-filter:blur(16px)saturate(1.4);border-bottom:1px solid var(--line);background:#fff6ead1;justify-content:space-between;align-items:center;gap:12px;display:flex;position:sticky;top:0}.mobile-top .brand-title{color:var(--plum);font-size:1.35rem}.mobile-days{color:var(--plum);background:var(--gold-soft);border-radius:99px;padding:5px 12px;font-size:.8rem;font-weight:500}.bottom-nav{left:10px;right:10px;bottom:calc(10px + var(--safe-bottom));z-index:30;-webkit-backdrop-filter:blur(18px);box-shadow:var(--shadow-lg);background:#3c1638eb;border-radius:22px;grid-template-columns:repeat(5,1fr);padding:6px;display:grid;position:fixed}.bottom-nav a,.bottom-nav button{color:#fff6eaa6;transition:all .2s var(--ease);border-radius:16px;flex-direction:column;align-items:center;gap:3px;padding:8px 4px;font-size:.68rem;display:flex}.bottom-nav svg{width:21px;height:21px}.bottom-nav .active{color:#fff;background:#fff6ea1f}.bottom-nav .active svg{color:var(--gold)}.page-header{margin-bottom:20px}}.more-sheet{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.more-sheet a{border-radius:var(--radius);background:var(--cream);border:1px solid var(--line);text-align:center;color:var(--plum);flex-direction:column;align-items:center;gap:8px;padding:16px 8px;font-size:.82rem;display:flex}.more-sheet a svg{width:24px;height:24px;color:var(--mauve)}.card{background:var(--glass);-webkit-backdrop-filter:blur(14px)saturate(1.3);border-radius:var(--radius-lg);box-shadow:var(--shadow);border:1px solid #ffffffb3;padding:22px;position:relative}.card-flat{box-shadow:none;background:#ffffff80}.card-hover{transition:transform .3s var(--ease), box-shadow .3s var(--ease)}.card-hover:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}.card-title{font-family:var(--font-display);color:var(--plum);justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px;font-size:1.4rem;font-weight:600;display:flex}.card-title small{font-family:var(--font-ui);color:var(--text-2);font-size:.8rem;font-weight:400}.grid{gap:18px;display:grid}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-auto{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.span-2{grid-column:span 2}@media (max-width:1100px){.grid-4,.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){.grid-2,.grid-3{grid-template-columns:minmax(0,1fr)}.grid-4{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.span-2{grid-column:auto}.card{border-radius:20px;padding:18px}}.stack{flex-direction:column;gap:12px;display:flex}.row{align-items:center;gap:10px;display:flex}.row-between{justify-content:space-between;align-items:center;gap:10px;display:flex}.wrap{flex-wrap:wrap}.grow{flex:1;min-width:0}.muted{color:var(--text-2)}.faint{color:var(--text-3)}.small{font-size:.84rem}.tiny{font-size:.74rem}.strong{font-weight:600}.serif{font-family:var(--font-display)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mt-1{margin-top:8px}.mt-2{margin-top:16px}.mt-3{margin-top:24px}.mb-2{margin-bottom:16px}.divider{background:var(--line);height:1px;margin:16px 0}.stat{flex-direction:column;gap:6px;display:flex;overflow:hidden}.stat-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-2);align-items:center;gap:8px;font-size:.78rem;display:flex}.stat-value{font-family:var(--font-display);color:var(--plum);word-break:break-word;font-size:clamp(1.6rem,3vw,2.2rem);font-weight:600;line-height:1.05}.stat-hint{color:var(--text-2);font-size:.8rem}.stat-icon{background:var(--plum-soft);width:40px;height:40px;color:var(--plum);border-radius:12px;place-items:center;display:grid;position:absolute;top:18px;right:18px}.stat-icon svg{width:20px;height:20px}.stat-icon.sage{background:var(--sage-soft);color:var(--sage-2)}.stat-icon.mauve{background:var(--mauve-soft);color:var(--mauve-2)}.stat-icon.gold{background:var(--gold-soft);color:#9a7a2f}@media (max-width:720px){.stat-icon{width:32px;height:32px;top:14px;right:14px}.stat-icon svg{width:16px;height:16px}.stat-label{padding-right:36px;font-size:.68rem}}.btn{white-space:nowrap;border:1px solid var(--line-2);height:42px;color:var(--plum);transition:transform .2s var(--ease), box-shadow .2s var(--ease), background .2s var(--ease), border-color .2s var(--ease), opacity .2s;-webkit-user-select:none;user-select:none;background:#ffffffb3;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-size:.9rem;font-weight:500;display:inline-flex}.btn svg{width:18px;height:18px}.btn:hover{border-color:var(--mauve);box-shadow:var(--shadow-sm);background:#fff;transform:translateY(-1px)}.btn:active{transform:translateY(0)scale(.98)}.btn:disabled{opacity:.55;pointer-events:none}.btn-primary{color:var(--cream);background:linear-gradient(135deg, var(--plum-2) 0%, var(--plum) 55%, var(--plum-3) 100%);border:none;box-shadow:0 6px 18px #54234f47}.btn-primary:hover{background:linear-gradient(135deg, #7a3e73 0%, var(--plum-2) 55%, var(--plum) 100%);box-shadow:0 10px 26px #54234f59}.btn-sage{color:#fff;background:linear-gradient(135deg, #8fa592, var(--sage) 50%, var(--sage-2));border:none;box-shadow:0 6px 18px #6b82704d}.btn-sage:hover{background:linear-gradient(135deg, #9db3a0, #8aa08e 50%, var(--sage))}.btn-ghost{background:0 0;border-color:#0000}.btn-ghost:hover{background:var(--plum-soft);box-shadow:none;border-color:#0000}.btn-danger{color:var(--danger);border-color:#b4505f4d}.btn-danger:hover{background:var(--danger-soft);border-color:var(--danger)}.btn-sm{border-radius:10px;height:34px;padding:0 12px;font-size:.82rem}.btn-sm svg{width:15px;height:15px}.btn-icon{border-radius:11px;width:38px;height:38px;padding:0}.btn-icon.btn-sm{width:32px;height:32px}.btn-block{width:100%}.btn-lg{border-radius:14px;height:52px;padding:0 26px;font-size:1rem}.fab{display:none}@media (max-width:960px){.fab{right:18px;bottom:calc(96px + var(--safe-bottom));width:56px;height:56px;color:var(--cream);background:linear-gradient(135deg, var(--plum-2), var(--plum-3));z-index:25;transition:transform .2s var(--ease);border-radius:18px;place-items:center;display:grid;position:fixed;box-shadow:0 12px 30px #3c163866}.fab:active{transform:scale(.94)}.fab svg{width:24px;height:24px}.hide-mobile{display:none!important}}@media (min-width:961px){.show-mobile{display:none!important}}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.label{color:var(--text-2);font-size:.8rem;font-weight:500}.input,.select,.textarea{border:1px solid var(--line-2);background:#ffffffd9;border-radius:12px;outline:none;width:100%;height:44px;padding:0 14px;font-size:.95rem;transition:border-color .2s,box-shadow .2s,background .2s}.textarea{resize:vertical;height:auto;min-height:90px;padding:12px 14px}.select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2354234F' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;padding-right:36px}.input:focus,.select:focus,.textarea:focus{border-color:var(--mauve);background-color:#fff;box-shadow:0 0 0 4px #9d7a9029}.input::placeholder,.textarea::placeholder{color:var(--text-3)}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.form-grid .full{grid-column:1/-1}@media (max-width:560px){.form-grid{grid-template-columns:minmax(0,1fr)}}.input-icon{position:relative}.input-icon svg{width:18px;height:18px;color:var(--text-3);pointer-events:none;position:absolute;top:50%;left:13px;transform:translateY(-50%)}.input-icon .input{padding-left:40px}.check{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;font-size:.92rem;display:inline-flex}.check input{width:20px;height:20px;accent-color:var(--plum)}.switch{flex-shrink:0;width:46px;height:26px;position:relative}.switch input{opacity:0;width:0;height:0}.switch span{background:var(--cream-3);border:1px solid var(--line-2);transition:.25s var(--ease);cursor:pointer;border-radius:99px;position:absolute;inset:0}.switch span:after{content:"";width:18px;height:18px;box-shadow:var(--shadow-sm);transition:.25s var(--ease);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px}.switch input:checked+span{background:var(--sage);border-color:var(--sage)}.switch input:checked+span:after{transform:translate(20px)}.segmented{scrollbar-width:none;background:#54234f0f;border-radius:14px;gap:2px;max-width:100%;padding:4px;display:inline-flex;overflow-x:auto}.segmented::-webkit-scrollbar{display:none}.segmented button{color:var(--text-2);white-space:nowrap;transition:all .2s var(--ease);border-radius:10px;align-items:center;gap:6px;padding:8px 14px;font-size:.85rem;display:inline-flex}.segmented button:hover{color:var(--plum)}.segmented button.active{color:var(--plum);box-shadow:var(--shadow-sm);background:#fff;font-weight:500}.segmented .count{background:var(--plum-soft);color:var(--plum);border-radius:99px;padding:1px 7px;font-size:.72rem}.choices{flex-wrap:wrap;gap:8px;display:flex}.choice{border:1px solid var(--line-2);transition:all .2s var(--ease);background:#ffffffb3;border-radius:12px;align-items:center;gap:6px;padding:9px 14px;font-size:.88rem;display:inline-flex}.choice:hover{border-color:var(--mauve)}.choice.active{border-color:var(--plum);background:var(--plum);color:var(--cream)}.choice.active.sage{border-color:var(--sage);background:var(--sage)}.choice.active.danger{border-color:var(--danger);background:var(--danger)}.badge{white-space:nowrap;background:var(--plum-soft);color:var(--plum);border-radius:99px;align-items:center;gap:5px;padding:3px 10px;font-size:.74rem;font-weight:500;display:inline-flex}.badge-sage{background:var(--sage-soft);color:#4d6352}.badge-mauve{background:var(--mauve-soft);color:var(--mauve-2)}.badge-gold{background:var(--gold-soft);color:#87692a}.badge-danger{background:var(--danger-soft);color:var(--danger)}.badge-warning{background:var(--warning-soft);color:#8d6224}.badge-muted{color:var(--text-2);background:#54234f0f}.dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;display:inline-block}.live-dot{background:#4caf6a;border-radius:50%;width:9px;height:9px;animation:1.8s infinite pulse;box-shadow:0 0 #4caf6a99}@keyframes pulse{0%{box-shadow:0 0 #4caf6a8c}70%{box-shadow:0 0 0 10px #4caf6a00}to{box-shadow:0 0 #4caf6a00}}.avatar{background:var(--mauve-soft);width:38px;height:38px;color:var(--plum);border-radius:50%;flex-shrink:0;place-items:center;font-size:.82rem;font-weight:600;display:grid}.avatar.novio{background:linear-gradient(135deg, #a7b8a9, var(--sage));color:#fff}.avatar.novia{background:linear-gradient(135deg, #c3a5b8, var(--mauve));color:#fff}.avatar.comun{background:linear-gradient(135deg, #e3cf9f, var(--gold));color:#fff}.avatar.sm{width:30px;height:30px;font-size:.7rem}.cat-icon{border-radius:13px;flex-shrink:0;place-items:center;width:42px;height:42px;font-size:1.2rem;display:grid}.progress{background:#54234f14;border-radius:99px;height:8px;overflow:hidden}.progress>span{border-radius:inherit;background:linear-gradient(90deg, var(--sage), var(--mauve));height:100%;transition:width .8s var(--ease);display:block}.progress.over>span{background:linear-gradient(90deg, var(--warning), var(--danger))}.progress.thin{height:5px}.progress.thick{height:12px}.donut-wrap{flex-wrap:wrap;align-items:center;gap:24px;display:flex}.donut{flex-shrink:0;position:relative}.donut svg circle{transition:stroke-dasharray .8s var(--ease)}.donut-center{text-align:center;place-items:center;display:grid;position:absolute;inset:0}.donut-center strong{font-family:var(--font-display);color:var(--plum);font-size:1.5rem;line-height:1;display:block}.legend{flex-direction:column;flex:1;gap:8px;min-width:180px;display:flex}.legend-item{align-items:center;gap:10px;font-size:.86rem;display:flex}.legend-item .grow{color:var(--text-2)}.bars{flex-direction:column;gap:14px;display:flex}.bar-row{grid-template-columns:140px 1fr auto;align-items:center;gap:12px;font-size:.85rem;display:grid}@media (max-width:560px){.bar-row{grid-template-columns:1fr auto}.bar-row .bar-track{order:3;grid-column:1/-1}}.bar-track{background:#54234f12;border-radius:99px;height:14px;position:relative;overflow:hidden}.bar-track .bar-budget{border-radius:inherit;background:#80968447;position:absolute;inset:0 auto 0 0}.bar-track .bar-fill{border-radius:inherit;transition:width .8s var(--ease);position:absolute;inset:0 auto 0 0}.list{flex-direction:column;display:flex}.list-item{border-bottom:1px solid var(--line);align-items:center;gap:14px;padding:14px 4px;transition:background .2s;display:flex}.list-item:last-child{border-bottom:none}.category-budget-row{grid-template-columns:42px minmax(0,1fr) minmax(180px,260px);gap:12px;display:grid}.category-budget-row strong{overflow-wrap:anywhere}.category-budget-row .input{min-width:0}@media (max-width:560px){.category-budget-row{grid-template-columns:36px minmax(0,1fr) minmax(96px,132px);gap:8px}}.list-item.clickable{cursor:pointer;border-radius:12px;margin:0 -10px;padding-left:10px;padding-right:10px}.list-item.clickable:hover{background:#ffffffb3}.table-wrap{margin:0 -22px;padding:0 22px;overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:.88rem}.table th{text-align:left;letter-spacing:.06em;text-transform:uppercase;color:var(--text-2);border-bottom:1px solid var(--line-2);white-space:nowrap;padding:10px 12px;font-size:.74rem;font-weight:500}.table td{border-bottom:1px solid var(--line);vertical-align:middle;padding:12px}.table tr:last-child td{border-bottom:none}.table tbody tr{transition:background .15s}.table tbody tr:hover{background:#fff9}.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:18px;display:flex}.toolbar .input-icon{flex:1;min-width:200px}.empty{text-align:center;color:var(--text-2);padding:44px 20px}.empty-icon{background:var(--plum-soft);width:64px;height:64px;color:var(--plum);border-radius:20px;place-items:center;margin:0 auto 14px;display:grid}.empty-icon svg{width:28px;height:28px}.empty h3{margin-bottom:6px;font-size:1.4rem}.empty p{max-width:42ch;margin:0 auto 16px;font-size:.9rem}.skeleton{background:linear-gradient(90deg,#54234f0d 25%,#54234f1a 50%,#54234f0d 75%) 0 0/200% 100%;border-radius:12px;animation:1.4s infinite shimmer}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(6px);background:#280e256b;place-items:center;padding:20px;animation:.2s fade-in;display:grid;position:fixed;inset:0}.modal{border-radius:var(--radius-xl);background:linear-gradient(180deg, #fffaf3, var(--cream));width:100%;max-width:560px;max-height:calc(100dvh - 40px);box-shadow:var(--shadow-lg);animation:modal-in .35s var(--ease);flex-direction:column;display:flex;overflow:hidden}.modal.wide{max-width:780px}.modal-head{justify-content:space-between;align-items:center;gap:10px;padding:22px 24px 10px;display:flex}.modal-head h2{font-size:1.7rem}.modal-body{padding:10px 24px 20px;overflow-y:auto}.modal-foot{padding:14px 24px calc(18px + var(--safe-bottom));border-top:1px solid var(--line);background:#ffffff80;justify-content:flex-end;gap:10px;display:flex}.modal-foot .spacer{flex:1}@media (max-width:640px){.modal-backdrop{place-items:end stretch;padding:0}.modal,.modal.wide{max-width:none;max-height:92dvh;animation:sheet-in .35s var(--ease);border-radius:28px 28px 0 0}.modal-head{padding-top:26px;position:relative}.modal-head:before{content:"";background:var(--line-2);border-radius:4px;width:40px;height:4px;margin-left:-20px;position:absolute;top:10px;left:50%}}@keyframes fade-in{0%{opacity:0}}@keyframes modal-in{0%{opacity:0;transform:translateY(16px)scale(.97)}}@keyframes sheet-in{0%{transform:translateY(100%)}}.toasts{z-index:200;pointer-events:none;flex-direction:column;gap:10px;display:flex;position:fixed;top:18px;right:18px}.toast{pointer-events:auto;min-width:260px;max-width:360px;color:var(--cream);box-shadow:var(--shadow-lg);animation:toast-in .4s var(--ease);background:#3c1638f2;border-radius:16px;align-items:flex-start;gap:12px;padding:14px 16px;font-size:.9rem;display:flex}.toast svg{width:20px;height:20px;color:var(--gold);flex-shrink:0;margin-top:1px}.toast.error svg{color:#f3a3ae}.toast strong{font-weight:600;display:block}@keyframes toast-in{0%{opacity:0;transform:translate(30px)}}@media (max-width:640px){.toasts{left:12px;right:12px;top:calc(12px + env(safe-area-inset-top,0px))}.toast{max-width:none}}.hero{border-radius:var(--radius-xl);min-height:280px;color:var(--cream);background:radial-gradient(500px 300px at 90% 10%, #9d7a9080, transparent 70%), radial-gradient(400px 300px at 0% 100%, #80968473, transparent 70%), linear-gradient(135deg, var(--plum-2) 0%, var(--plum) 45%, var(--plum-3) 100%);box-shadow:var(--shadow-lg);isolation:isolate;padding:40px 44px;position:relative;overflow:hidden}.hero:after{content:"";mix-blend-mode:multiply;opacity:.22;z-index:-1;filter:saturate(1.2);background:url(/img/floral-corner.jpg) 50%/cover;border-radius:50%;width:420px;height:420px;position:absolute;top:-40px;right:-60px;transform:scaleX(-1);-webkit-mask-image:radial-gradient(circle,#000 40%,#0000 70%);mask-image:radial-gradient(circle,#000 40%,#0000 70%)}.hero-eyebrow{letter-spacing:.24em;text-transform:uppercase;color:var(--gold);font-size:.78rem}.hero h1{color:var(--cream);margin:8px 0 4px;font-size:clamp(2.4rem,5vw,3.8rem);font-weight:500}.hero h2{color:var(--cream);margin:8px 0 10px;font-size:clamp(2rem,3vw,3rem);font-weight:500}.hero h1 em{color:var(--gold);font-style:italic}.hero-meta{color:#fff6eacc;flex-wrap:wrap;gap:18px;font-size:.92rem;display:flex}.hero-meta span{align-items:center;gap:6px;display:inline-flex}.hero-meta svg{width:16px;height:16px;color:var(--gold)}.countdown{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.countdown-unit{text-align:center;-webkit-backdrop-filter:blur(8px);background:#fff6ea1a;border:1px solid #fff6ea29;border-radius:18px;min-width:92px;padding:14px 12px 10px}.countdown-unit strong{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:2.8rem;font-weight:500;line-height:1;display:block}.countdown-unit.featured strong{color:var(--gold)}.countdown-unit span{letter-spacing:.16em;text-transform:uppercase;color:#fff6eab3;font-size:.7rem}@media (max-width:640px){.hero{border-radius:26px;padding:28px 22px}.countdown{gap:8px}.countdown-unit{border-radius:14px;flex:1;min-width:0;padding:10px 4px 8px}.countdown-unit strong{font-size:1.9rem}.countdown-unit span{letter-spacing:.1em;font-size:.6rem}}.kanban{grid-template-columns:repeat(3,minmax(260px,1fr));gap:16px;padding-bottom:8px;display:grid;overflow-x:auto}.kanban-col{border:1px dashed var(--line-2);border-radius:var(--radius-lg);background:#fff6;min-height:240px;padding:14px;transition:background .2s,border-color .2s}.kanban-col.drag-over{background:var(--plum-soft);border-color:var(--mauve)}.kanban-col h3{font-family:var(--font-ui);letter-spacing:.04em;text-transform:uppercase;color:var(--text-2);align-items:center;gap:8px;margin:2px 4px 12px;font-size:.85rem;font-weight:600;display:flex}.task-card{background:var(--glass-strong);box-shadow:var(--shadow-sm);cursor:grab;transition:transform .2s var(--ease), box-shadow .2s var(--ease);border:1px solid #fffc;border-radius:16px;margin-bottom:10px;padding:14px}.task-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.task-check{border:2px solid var(--line-2);width:24px;height:24px;transition:all .25s var(--ease);color:#0000;background:#fff;border-radius:8px;flex-shrink:0;place-items:center;display:grid}.task-check:hover{border-color:var(--sage)}.task-check.done{background:var(--sage);border-color:var(--sage);color:#fff;animation:pop .35s var(--ease)}.task-check svg{width:14px;height:14px}@keyframes pop{50%{transform:scale(1.2)}}.done-text{color:var(--text-3);text-decoration:line-through}.seat-table{width:200px;height:200px;margin:8px auto 4px;position:relative}.seat-table .table-top{text-align:center;background:radial-gradient(circle at 30% 30%, #fff, var(--cream-2));border:2px solid var(--line-2);box-shadow:inset 0 2px 10px #54234f0f, var(--shadow-sm);transition:all .25s var(--ease);border-radius:50%;place-items:center;display:grid;position:absolute;inset:42px}.seat-table.rect .table-top{border-radius:18px;inset:54px 30px}.seat-table.target .table-top{border-color:var(--plum);background:radial-gradient(circle at 30% 30%, #fff, var(--plum-soft));cursor:pointer;transform:scale(1.04)}.seat{border:2px dashed var(--line-2);color:#fff;width:26px;height:26px;transition:all .3s var(--ease);background:#54234f14;border-radius:50%;place-items:center;margin:-13px 0 0 -13px;font-size:.6rem;font-weight:600;display:grid;position:absolute}.seat.filled{box-shadow:var(--shadow-sm);border-style:solid;border-color:#fff}.seat.filled.novio{background:var(--sage)}.seat.filled.novia{background:var(--mauve)}.seat.filled.comun{background:var(--gold)}.guest-chip{border:1px solid var(--line);transition:all .2s var(--ease);cursor:pointer;-webkit-user-select:none;user-select:none;background:#fffc;border-radius:99px;align-items:center;gap:6px;padding:5px 6px 5px 10px;font-size:.8rem;display:inline-flex}.guest-chip:hover{border-color:var(--mauve)}.guest-chip.selected{background:var(--plum);color:var(--cream);border-color:var(--plum)}.guest-chip .x{width:18px;height:18px;color:var(--text-3);border-radius:50%;place-items:center;display:grid}.guest-chip .x:hover{background:var(--danger-soft);color:var(--danger)}.guest-chip .x svg{width:12px;height:12px}.timeline{padding-left:30px;position:relative}.timeline:before{content:"";background:linear-gradient(180deg, var(--mauve), var(--sage));border-radius:2px;width:2px;position:absolute;top:8px;bottom:8px;left:9px}.timeline-item{padding-bottom:18px;position:relative}.timeline-item:before{content:"";background:var(--cream);border:3px solid var(--plum);width:14px;height:14px;box-shadow:0 0 0 4px var(--cream);border-radius:50%;position:absolute;top:20px;left:-27px}.timeline-time{font-family:var(--font-display);color:var(--plum);font-size:1.5rem;font-weight:600;line-height:1}.auth-page{grid-template-columns:1.1fr 1fr;min-height:100dvh;display:grid}.auth-art{background:var(--cream);position:relative;overflow:hidden}.auth-art img{object-fit:cover;object-position:top left;width:100%;height:100%;position:absolute;inset:0}.auth-art-text{text-align:right;max-width:420px;position:absolute;bottom:12%;right:8%}.auth-art-text h1{font-size:clamp(3rem,6vw,5rem);font-style:italic;font-weight:500}.auth-art-text p{color:var(--mauve-2);letter-spacing:.24em;text-transform:uppercase;margin-top:10px;font-size:.82rem}.auth-panel{background:radial-gradient(500px 400px at 100% 0%, #9d7a9080, transparent 70%), radial-gradient(400px 400px at 0% 100%, #80968459, transparent 70%), linear-gradient(160deg, var(--plum) 0%, var(--plum-3) 100%);place-items:center;padding:40px 24px;display:grid}.auth-card{border-radius:var(--radius-xl);width:100%;max-width:400px;box-shadow:var(--shadow-lg);animation:modal-in .6s var(--ease);background:#fff6eaf5;padding:36px 32px}.auth-card h2{text-align:center;font-size:2.2rem}@media (max-width:860px){.auth-page{grid-template-columns:1fr}.auth-art{min-height:34dvh}.auth-art-text{bottom:20px;right:20px}.auth-art-text h1{font-size:2.8rem}.auth-panel{background:var(--cream);margin-top:-60px;padding:0 16px 40px;position:relative}}.error-box{background:var(--danger-soft);color:var(--danger);border-radius:12px;padding:12px 14px;font-size:.86rem}.info-box{background:var(--sage-soft);color:#4d6352;border-radius:12px;padding:12px 14px;font-size:.86rem}.rsvp-page{min-height:100dvh;position:relative;overflow-x:hidden}.rsvp-floral{pointer-events:none;mix-blend-mode:multiply;z-index:0;opacity:.95;width:min(520px,80vw);height:auto;position:fixed;top:0;left:0}.rsvp-floral.right{opacity:.6;inset:auto 0 0 auto;transform:rotate(180deg)}.rsvp-container{z-index:1;max-width:640px;margin:0 auto;padding:120px 20px 60px;position:relative}.rsvp-header{text-align:center;margin-bottom:30px}.rsvp-header .eyebrow{letter-spacing:.3em;text-transform:uppercase;color:var(--sage-2);font-size:.78rem}.rsvp-header h1{margin:10px 0;font-size:clamp(3rem,10vw,4.6rem);font-style:italic;font-weight:500}.rsvp-header .date{font-family:var(--font-display);color:var(--mauve-2);font-size:1.4rem}.ornament{color:var(--gold);justify-content:center;align-items:center;gap:14px;max-width:260px;margin:16px auto;display:flex}.ornament:before,.ornament:after{content:"";background:linear-gradient(90deg, transparent, var(--gold), transparent);flex:1;height:1px}.search-results{flex-direction:column;gap:6px;margin-top:8px;display:flex}.search-result{border:1px solid var(--line);text-align:left;transition:all .2s var(--ease);background:#ffffffd9;border-radius:14px;align-items:center;gap:12px;width:100%;padding:12px 14px;display:flex}.search-result:hover{border-color:var(--mauve);transform:translate(3px)}.search-result.selected{border-color:var(--plum);background:var(--plum-soft)}.person-form{border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);animation:modal-in .4s var(--ease);background:#ffffffbf;border:1px solid #ffffffe6;padding:20px}.person-form+.person-form{margin-top:14px}.success-burst{background:linear-gradient(135deg, var(--sage), var(--sage-2));color:#fff;width:96px;height:96px;animation:pop .6s var(--ease);border-radius:50%;place-items:center;margin:0 auto 20px;display:grid;box-shadow:0 0 0 12px #80968426,0 0 0 24px #80968414}.success-burst svg{width:44px;height:44px}.qr-box{border-radius:var(--radius-lg);border:1px solid var(--line);background:#fff;place-items:center;padding:20px;display:grid}.qr-box img{width:220px;height:220px;image-rendering:pixelated}.code{word-break:break-all;background:#54234f0f;border-radius:6px;padding:3px 8px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82rem}.stars{color:var(--gold);gap:2px;display:inline-flex}.stars button{color:var(--line-2);font-size:1.15rem;line-height:1}.stars button.on{color:var(--gold)}@media print{.sidebar,.bottom-nav,.mobile-top,.fab,.page-actions,.toolbar,.no-print{display:none!important}.main{margin:0;padding:0}body:before{display:none}.card{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;break-inside:avoid;border:1px solid #ddd}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
