@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.3p2_lha1f2xer.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.1qq4vpdcun5oj.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.390ncx5urfkfu.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.21jp631_3pja2.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-20C0,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.0wgildi0cnwt9.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%}.geist_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Fraunces;font-style:italic;font-weight:400;font-display:swap;src:url(../media/50a3f1070da3c6cc-s.2xm1k7t3a0pcd.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:Fraunces;font-style:italic;font-weight:400;font-display:swap;src:url(../media/b887d91685b8c137-s.330vchwb4izzb.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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:italic;font-weight:400;font-display:swap;src:url(../media/3c7c6164b2587822-s.p.16u3vygyjnhr0.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:Fraunces;font-style:italic;font-weight:500;font-display:swap;src:url(../media/50a3f1070da3c6cc-s.2xm1k7t3a0pcd.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:Fraunces;font-style:italic;font-weight:500;font-display:swap;src:url(../media/b887d91685b8c137-s.330vchwb4izzb.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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:italic;font-weight:500;font-display:swap;src:url(../media/3c7c6164b2587822-s.p.16u3vygyjnhr0.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:Fraunces;font-style:italic;font-weight:600;font-display:swap;src:url(../media/50a3f1070da3c6cc-s.2xm1k7t3a0pcd.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:Fraunces;font-style:italic;font-weight:600;font-display:swap;src:url(../media/b887d91685b8c137-s.330vchwb4izzb.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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:italic;font-weight:600;font-display:swap;src:url(../media/3c7c6164b2587822-s.p.16u3vygyjnhr0.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:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(../media/1e219c03c996efbd-s.2qo5md4hn_gum.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:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(../media/b35b0dbffda7f2c4-s.1d9rlgtqyj_-l.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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(../media/03bda585a99c6450-s.p.32sris142tqlb.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:Fraunces;font-style:normal;font-weight:500;font-display:swap;src:url(../media/1e219c03c996efbd-s.2qo5md4hn_gum.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:Fraunces;font-style:normal;font-weight:500;font-display:swap;src:url(../media/b35b0dbffda7f2c4-s.1d9rlgtqyj_-l.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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:500;font-display:swap;src:url(../media/03bda585a99c6450-s.p.32sris142tqlb.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:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1e219c03c996efbd-s.2qo5md4hn_gum.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:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(../media/b35b0dbffda7f2c4-s.1d9rlgtqyj_-l.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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(../media/03bda585a99c6450-s.p.32sris142tqlb.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:Fraunces Fallback;src:local(Times New Roman);ascent-override:84.71%;descent-override:22.09%;line-gap-override:0.0%;size-adjust:115.45%}.fraunces_faf1b0cf-module__ESYo6G__className{font-family:Fraunces,Fraunces Fallback}.fraunces_faf1b0cf-module__ESYo6G__variable{--font-fraunces:"Fraunces", "Fraunces Fallback"}
:root{--bg:#faf6ee;--bg-elevated:#fff;--bg-muted:#f1e9da;--fg:#2b241d;--fg-muted:#6c6153;--border:#e2d6bf;--accent:#b1502c;--accent-strong:#8a3c1f;--accent-contrast:#fff8f0;--accent-soft:#f3ddc4;--green:#445940;--shadow:#2b1f0f14;--font-sans:var(--font-geist-sans), ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-display:var(--font-fraunces), Georgia, "Times New Roman", serif}@media (prefers-color-scheme:dark){:root{--bg:#17130f;--bg-elevated:#201a14;--bg-muted:#241d16;--fg:#f1e7d8;--fg-muted:#b8a993;--border:#3a2f22;--accent:#e08a52;--accent-strong:#f2a771;--accent-contrast:#201005;--accent-soft:#3a2618;--green:#8ba382;--shadow:#00000073}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html,body{max-width:100vw;overflow-x:hidden}html{height:100%}body{min-height:100%;color:var(--fg);background:var(--bg);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;margin:0;padding:0;line-height:1.5;display:flex}h1,h2,h3{font-family:var(--font-display);margin:0;font-weight:500;line-height:1.15}p{color:var(--fg-muted);margin:.6rem 0 0}a{color:inherit;text-decoration:none}ul,ol{margin:0;padding:0}button,input{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.site-header{border-bottom:1px solid var(--border);background:var(--bg-elevated);z-index:10;position:sticky;top:0}.site-header-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1rem;max-width:46rem;margin:0 auto;padding:.85rem 1.25rem;display:flex}.site-brand{font-family:var(--font-display);color:var(--fg);font-size:1.2rem}.site-nav ul{flex-wrap:wrap;gap:.15rem;list-style:none;display:flex}.nav-link{color:var(--fg-muted);border-radius:999px;padding:.4rem .7rem;font-size:.92rem;font-weight:500;display:inline-block}.nav-link:hover{color:var(--fg);background:var(--bg-muted)}.nav-link.active{color:var(--accent-contrast);background:var(--accent)}.site-main{flex:1}.freeze-banner{background:var(--accent-soft);color:var(--fg);border-bottom:1px solid var(--border);text-align:center;padding:.65rem 1.25rem;font-size:.9rem;font-weight:600}.site-footer{text-align:center;max-width:46rem;margin:0 auto;padding:2.5rem 1.25rem 3rem}.site-footer p{color:var(--fg-muted);font-size:.85rem}.invite-gate{text-align:center;max-width:30rem;margin:0 auto;padding:4.5rem 1.25rem}.invite-gate h1{font-size:2rem}.hero{text-align:center;max-width:46rem;margin:0 auto;padding:3rem 1.25rem 2.5rem}.eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--accent-strong);margin-bottom:.75rem;font-size:.78rem;font-weight:600}.hero h1{font-size:clamp(2.3rem,7vw,3.4rem)}.hero-venue{color:var(--fg);margin-top:.85rem;font-size:1.15rem;font-weight:600}.hero-sub{color:var(--fg-muted);margin-top:.15rem}.hero-intro{max-width:34rem;margin:1.25rem auto 0}.hero-greeting{color:var(--fg);margin-top:1.25rem;font-size:1.05rem}.hero-actions{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:1.75rem;display:flex}.btn{cursor:pointer;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;padding:.7rem 1.5rem;font-size:.95rem;font-weight:600;transition:background .15s,border-color .15s;display:inline-flex}.btn-primary{background:var(--accent);color:var(--accent-contrast)}.btn-primary:hover{background:var(--accent-strong)}.btn-ghost{border-color:var(--border);color:var(--fg);background:0 0}.btn-ghost:hover{background:var(--bg-muted)}.section{max-width:46rem;margin:0 auto;padding:2.25rem 1.25rem}.section+.section{border-top:1px solid var(--border)}.section h2{margin-bottom:1rem;font-size:1.5rem}.section-lede{max-width:36rem}.callout{border-left:4px solid var(--accent);background:var(--accent-soft);border-radius:.5rem;padding:1rem 1.25rem}.callout-title{color:var(--fg);margin:0 0 .25rem;font-weight:700}.callout p{color:var(--fg)}.schedule{flex-direction:column;gap:.9rem;list-style:none;display:flex}.schedule-item{background:var(--bg-elevated);border:1px solid var(--border);box-shadow:0 1px 2px var(--shadow);border-radius:.75rem;padding:.9rem 1.1rem}.schedule-date{text-transform:uppercase;letter-spacing:.08em;color:var(--accent-strong);font-size:.76rem;font-weight:700;display:block}.schedule-name{font-family:var(--font-display);color:var(--fg);margin-top:.15rem;font-size:1.15rem;display:block}.schedule-time{color:var(--fg-muted);margin-top:.1rem;font-size:.9rem;display:block}.link-cards{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.75rem;display:grid}.link-card{text-align:center;border:1px solid var(--border);background:var(--bg-elevated);color:var(--fg);border-radius:.75rem;padding:1.1rem 1rem;font-weight:600;display:block}.link-card:hover{border-color:var(--accent);color:var(--accent-strong)}.assignment-banner{border:2px solid var(--accent);background:var(--accent-soft);border-radius:.85rem;padding:1.25rem 1.4rem}.assignment-banner h2{color:var(--fg);font-size:1.25rem}.assignment-banner p{color:var(--fg)}.lodging-tier{margin-top:1.75rem}.lodging-tier:first-child{margin-top:0}.lodging-tier h3{color:var(--fg);font-size:1.15rem}.lodging-tier-meta{color:var(--accent-strong);margin-top:.15rem;font-size:.85rem;font-weight:600}.lodging-tier-intro{margin-top:.35rem}.place-cards{flex-direction:column;gap:.75rem;margin-top:1rem;display:flex}.place-card{border:1px solid var(--border);background:var(--bg-elevated);border-radius:.75rem;padding:1rem 1.1rem}.place-type{color:var(--accent-strong);text-transform:uppercase;letter-spacing:.06em;font-size:.76rem;font-weight:700;display:block}.place-name{font-family:var(--font-display);color:var(--fg);margin-top:.15rem;font-size:1.05rem;display:block}.place-notes{color:var(--fg-muted);font-size:.92rem}.place-link{color:var(--accent-strong);margin-top:.5rem;font-weight:600;text-decoration:underline;display:inline-block}.timeline{flex-direction:column;gap:.6rem;list-style:none;display:flex}.timeline li{border-bottom:1px solid var(--border);gap:.75rem;padding:.75rem 0;display:flex}.timeline li:last-child{border-bottom:none}.timeline-when{color:var(--fg);flex:0 0 9.5rem;font-size:.9rem;font-weight:700}.timeline-action{color:var(--fg-muted);font-size:.92rem}.corrections{flex-direction:column;gap:.85rem;display:flex}.corrections li{list-style:none}.corrections strong{color:var(--fg);display:block}.prose{max-width:36rem}.prose p,.prose li{color:var(--fg-muted);margin-top:.75rem}.prose p:first-child{margin-top:0}.prose strong{color:var(--fg)}.rsvp-header{max-width:46rem;margin:0 auto;padding:2.5rem 1.25rem 0}.rsvp-header h1{font-size:1.9rem}.rsvp-form{max-width:46rem;margin:0 auto;padding:1.5rem 1.25rem 3rem}.rsvp-guest{margin-top:2rem}.rsvp-guest:first-child{margin-top:1rem}.rsvp-guest h2{font-size:1.25rem}.rsvp-event{border:1px solid var(--border);background:var(--bg-elevated);border-radius:.75rem;margin-top:1rem;padding:1rem 1.1rem}.rsvp-event legend{color:var(--fg);padding:0 .3rem;font-weight:700}.rsvp-event:disabled{opacity:.6}.rsvp-meta{color:var(--fg-muted);margin:.15rem 0 .75rem;font-size:.88rem}.rsvp-choices{flex-wrap:wrap;gap:1.25rem;display:flex}.rsvp-choice{color:var(--fg);align-items:center;gap:.4rem;font-size:.95rem;display:inline-flex}.rsvp-fields{flex-direction:column;gap:.65rem;margin-top:.85rem;display:flex}.rsvp-fields label{color:var(--fg-muted);font-size:.85rem;font-weight:600;display:block}.rsvp-fields input[type=text]{border:1px solid var(--border);background:var(--bg-elevated);width:100%;color:var(--fg);border-radius:.5rem;margin-top:.3rem;padding:.55rem .7rem;font-size:.95rem;display:block}.rsvp-submit-row{margin-top:2rem}.admin-header{border-bottom:1px solid var(--border);background:var(--bg-elevated);z-index:10;position:sticky;top:0}.admin-header-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1rem;max-width:60rem;margin:0 auto;padding:.85rem 1.25rem;display:flex}.admin-brand{font-family:var(--font-display);color:var(--fg);font-size:1.15rem;font-weight:600}.admin-nav{gap:.25rem;display:flex}.admin-nav-link{color:var(--fg-muted);border-radius:999px;padding:.4rem .7rem;font-size:.9rem;font-weight:500;display:inline-block}.admin-nav-link:hover{color:var(--fg);background:var(--bg-muted)}.admin-nav-link.active{color:var(--accent-contrast);background:var(--accent)}.admin-logout{padding:.4rem .9rem;font-size:.85rem}.admin-main{flex:1;width:100%;max-width:60rem;margin:0 auto;padding:0 1.25rem 3rem}.admin-section{padding:2rem 0}.admin-section+.admin-section{border-top:1px solid var(--border)}.admin-section h2{margin-bottom:1rem;font-size:1.35rem}.admin-card{border:1px solid var(--border);background:var(--bg-elevated);border-radius:.75rem;margin-top:1rem;padding:1.1rem 1.25rem}.admin-card:first-of-type{margin-top:0}.admin-card h3{font-size:1.05rem}.admin-card form{margin-top:.75rem}.admin-meta{color:var(--fg-muted);margin-top:.15rem;font-size:.85rem}.admin-meta-inline{color:var(--fg-muted);font-size:.88rem}.admin-stat-row{gap:1.25rem;margin-top:.75rem;display:flex}.admin-stat{color:var(--fg-muted);font-size:.92rem}.admin-stat strong{color:var(--fg);font-size:1.1rem}.admin-subhead{text-transform:uppercase;letter-spacing:.06em;color:var(--accent-strong);margin-top:.9rem;font-size:.82rem;font-weight:700}.admin-pending-list{flex-direction:column;gap:.3rem;margin-top:.5rem;list-style:none;display:flex}.admin-pending-list li{color:var(--fg);font-size:.92rem}.admin-table-wrap{overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;margin-top:.5rem;font-size:.92rem}.admin-table th,.admin-table td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:.55rem .75rem}.admin-table th{color:var(--fg-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.78rem;font-weight:700}.admin-assignment{color:var(--fg);display:block}.admin-assignment+.admin-assignment{margin-top:.2rem}.admin-login{text-align:center;max-width:24rem;margin:5rem auto 0;padding:0 1.25rem}.admin-login h1{font-size:1.6rem;font-family:var(--font-display)}.admin-login-form{text-align:left;flex-direction:column;gap:.75rem;margin-top:1.5rem;display:flex}.admin-login-form label{color:var(--fg-muted);font-size:.85rem;font-weight:600}.admin-login-form input[type=password]{border:1px solid var(--border);background:var(--bg-elevated);width:100%;color:var(--fg);border-radius:.5rem;margin-top:.3rem;padding:.6rem .75rem;font-size:1rem;display:block}.admin-login-form .btn{margin-top:.25rem}.admin-error{color:var(--accent-strong);margin:0;font-size:.88rem}.admin-success{color:var(--green);font-size:.9rem;font-weight:600}.admin-event-forms{flex-direction:column;gap:1.25rem;margin-top:1rem;display:flex}.admin-event-form{border:1px solid var(--border);background:var(--bg-elevated);border-radius:.75rem;flex-direction:column;gap:.75rem;padding:1.25rem;display:flex}.admin-event-form h3{font-size:1.1rem}.admin-event-form label{color:var(--fg-muted);font-size:.85rem;font-weight:600;display:block}.admin-event-form input[type=text],.admin-event-form input[type=datetime-local]{border:1px solid var(--border);background:var(--bg-elevated);width:100%;color:var(--fg);border-radius:.5rem;margin-top:.3rem;padding:.55rem .7rem;font-size:.95rem;display:block}.admin-event-form .btn{align-self:flex-start}.admin-section-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.admin-section-header h2{margin-bottom:0}.btn-small{padding:.4rem .9rem;font-size:.85rem}.btn-danger{color:var(--accent-strong);border-color:var(--accent-soft)}.btn-danger:hover{background:var(--accent-soft)}.admin-empty-state{border:1px dashed var(--border);text-align:center;border-radius:.75rem;flex-direction:column;align-items:center;gap:.75rem;padding:2.5rem 1.5rem;display:flex}.admin-export-grid{grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:1rem;margin-top:1rem;display:grid}.admin-export-grid .admin-card{flex-direction:column;align-items:flex-start;gap:.25rem;margin-top:0;display:flex}.admin-export-grid .btn{margin-top:.6rem}.admin-guest-toolbar{flex-wrap:wrap;gap:.6rem;margin-bottom:1.25rem;display:flex}.admin-guest-search{border:1px solid var(--border);background:var(--bg-elevated);color:var(--fg);border-radius:.5rem;flex:14rem;padding:.55rem .8rem;font-size:.92rem}.admin-guest-toolbar select{border:1px solid var(--border);background:var(--bg-elevated);color:var(--fg);border-radius:.5rem;padding:.55rem .7rem;font-size:.9rem}.admin-guest-list{flex-direction:column;gap:.75rem;display:flex}.admin-guest-row{border:1px solid var(--border);background:var(--bg-elevated);border-radius:.75rem;overflow:hidden}.admin-guest-summary{grid-template-columns:auto minmax(9rem,1.6fr) auto auto minmax(9rem,1.6fr) auto minmax(8rem,1.2fr) auto;align-items:center;gap:.5rem 1rem;padding:.9rem 1.1rem;display:grid}.admin-guest-toggle{cursor:pointer;text-align:left;color:var(--fg);font:inherit;background:0 0;border:none;align-items:center;gap:.5rem;padding:0;display:inline-flex}.admin-guest-chevron{color:var(--accent-strong);font-size:.8rem}.admin-guest-name{font-family:var(--font-display);font-size:1.05rem}.admin-guest-cell{color:var(--fg-muted);font-size:.88rem}.admin-chip-row{flex-wrap:wrap;gap:.3rem;display:flex}.admin-chip{background:var(--bg-muted);color:var(--fg);border-radius:999px;padding:.15rem .55rem;font-size:.76rem;font-weight:600;display:inline-block}.admin-guest-actions{flex-wrap:wrap;justify-content:flex-end;gap:.4rem;display:flex}.admin-guest-detail{border-top:1px solid var(--border);background:var(--bg-muted);padding:1rem 1.1rem 1.1rem}@media (max-width:780px){.admin-guest-summary{grid-template-columns:1fr;align-items:stretch}.admin-guest-cell:before{content:attr(data-label);text-transform:uppercase;letter-spacing:.05em;color:var(--accent-strong);margin-bottom:.1rem;font-size:.72rem;font-weight:700;display:block}.admin-guest-actions{justify-content:flex-start}}.admin-household-form{flex-direction:column;gap:1.75rem;max-width:42rem;display:flex}.admin-form-section{flex-direction:column;gap:.85rem;display:flex}.admin-form-section h3{font-size:1.05rem}.admin-form-section label{color:var(--fg-muted);font-size:.85rem;font-weight:600;display:block}.admin-form-grid{grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:.75rem;display:grid}.admin-form-section input[type=text],.admin-form-section input[type=email],.admin-form-section select,.admin-form-section textarea{border:1px solid var(--border);background:var(--bg-elevated);width:100%;color:var(--fg);border-radius:.5rem;margin-top:.3rem;padding:.55rem .7rem;font-family:inherit;font-size:.95rem;display:block}.admin-guest-row-fields{border:1px solid var(--border);border-radius:.75rem;flex-direction:column;gap:.75rem;padding:1rem;display:flex}.admin-guest-row-fields legend{color:var(--fg);padding:0 .3rem;font-size:.85rem;font-weight:700}.admin-guest-row-flags{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.admin-inline-check{align-items:center;gap:.4rem;font-weight:500;display:inline-flex}.admin-checkbox-group{flex-wrap:wrap;gap:.75rem 1.25rem;display:flex}.admin-form-actions{gap:.75rem;display:flex}.admin-guest-select{align-items:center;display:flex}.admin-guest-select input[type=checkbox]{width:1.05rem;height:1.05rem;accent-color:var(--accent)}.admin-guest-name-group{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.admin-select-all{color:var(--fg-muted);white-space:nowrap;margin-left:auto;font-size:.85rem}.admin-select-all input[type=checkbox]{accent-color:var(--accent)}.admin-inline-edit-panel{border-top:1px solid var(--border);background:var(--bg-muted);flex-direction:column;gap:.75rem;padding:1rem 1.1rem;display:flex}.admin-inline-edit-panel label{color:var(--fg-muted);font-size:.85rem;font-weight:600;display:block}.admin-inline-edit-panel input[type=text],.admin-inline-edit-panel textarea{border:1px solid var(--border);background:var(--bg-elevated);width:100%;max-width:28rem;color:var(--fg);border-radius:.5rem;margin-top:.3rem;padding:.5rem .65rem;font-family:inherit;font-size:.92rem;display:block}.admin-inline-edit-actions{gap:.5rem;display:flex}.admin-guest-row-actions{white-space:nowrap;flex-wrap:wrap;gap:.4rem;display:flex}.admin-inline-input{border:1px solid var(--border);background:var(--bg-elevated);width:100%;min-width:7rem;color:var(--fg);border-radius:.4rem;margin-bottom:.3rem;padding:.3rem .5rem;font-size:.88rem;display:block}.admin-inline-input:last-child{margin-bottom:0}.admin-guest-add-row{flex-wrap:wrap;align-items:center;gap:.5rem;padding:.5rem 0;display:flex}.admin-guest-add-row input,.admin-guest-add-row select{border:1px solid var(--border);background:var(--bg-elevated);color:var(--fg);border-radius:.4rem;padding:.4rem .6rem;font-size:.88rem}.admin-bulk-toolbar{z-index:20;border:1px solid var(--border);background:var(--bg-elevated);box-shadow:0 -4px 16px var(--shadow);border-radius:.75rem;flex-wrap:wrap;align-items:center;gap:.85rem;margin-top:1.25rem;padding:.85rem 1.1rem;display:flex;position:sticky;bottom:.75rem}.admin-bulk-count{font-weight:700;font-family:var(--font-display)}.admin-bulk-action{align-items:center;gap:.4rem;display:flex;position:relative}.admin-bulk-action select{border:1px solid var(--border);background:var(--bg-elevated);color:var(--fg);border-radius:.5rem;padding:.45rem .6rem;font-size:.88rem}.admin-bulk-panel{z-index:21;border:1px solid var(--border);background:var(--bg-elevated);width:max-content;max-width:min(22rem,80vw);box-shadow:0 4px 16px var(--shadow);border-radius:.75rem;flex-direction:column;gap:.6rem;padding:.9rem;display:flex;position:absolute;bottom:calc(100% + .5rem);left:0}.admin-bulk-error{flex-basis:100%}@media (max-width:780px){.admin-bulk-toolbar{border-radius:.75rem .75rem 0 0;justify-content:center;bottom:0}.admin-select-all{margin-left:0}}.admin-rsvp-counts{flex-wrap:wrap;gap:1rem;margin:.25rem 0 1rem;display:flex}.admin-rsvp-list{flex-direction:column;gap:.6rem;display:flex}.admin-rsvp-row{border:1px solid var(--border);background:var(--bg-elevated);border-radius:.75rem;grid-template-columns:minmax(9rem,1.3fr) 6.5rem minmax(7rem,1fr) minmax(7rem,1fr) 6rem auto;align-items:end;gap:.5rem .75rem;padding:.75rem 1rem;display:grid}.admin-rsvp-cell{flex-direction:column;gap:.2rem;min-width:0;display:flex}.admin-rsvp-cell label{text-transform:uppercase;letter-spacing:.04em;color:var(--fg-muted);font-size:.7rem;font-weight:700}.admin-rsvp-cell input[type=text],.admin-rsvp-cell select{border:1px solid var(--border);background:var(--bg-elevated);color:var(--fg);border-radius:.4rem;width:100%;padding:.4rem .5rem;font-family:inherit;font-size:.88rem}.admin-rsvp-guest{font-family:var(--font-display);font-size:1rem}.admin-rsvp-household{color:var(--fg-muted);font-size:.8rem}@media (max-width:900px){.admin-rsvp-row{grid-template-columns:1fr 1fr}}@media (max-width:480px){.admin-rsvp-row{grid-template-columns:1fr}}.admin-nonresponder-list{flex-direction:column;gap:.5rem;display:flex}.admin-nonresponder-item{border:1px solid var(--border);background:var(--bg-elevated);border-radius:.6rem;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;padding:.6rem .9rem;display:flex}.admin-dietary-list{flex-direction:column;gap:.35rem;display:flex}.admin-lodging-hero{font-size:1.5rem;font-family:var(--font-display);margin:.25rem 0 0}.admin-lodging-hero strong{color:var(--accent-strong)}.admin-lodging-unassigned-list{flex-direction:column;gap:.5rem;margin-top:.75rem;display:flex}.admin-lodging-unassigned-item{border:1px solid var(--border);background:var(--bg-elevated);border-radius:.6rem;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.6rem .9rem;display:flex}.admin-lodging-unassigned-name{font-weight:600}.admin-lodging-board{align-items:flex-start;gap:1rem;padding:1.5rem 0;display:flex;overflow-x:auto}.admin-lodging-column{flex-direction:column;flex:14rem;gap:.75rem;min-width:14rem;display:flex}.admin-lodging-column-header{border-bottom:2px solid var(--accent-soft);justify-content:space-between;align-items:baseline;gap:.5rem;padding-bottom:.4rem;display:flex}.admin-lodging-column-header h3{margin:0;font-size:1rem}.admin-lodging-room-card{border:1px solid var(--border);background:var(--bg-elevated);border-radius:.75rem;flex-direction:column;gap:.35rem;padding:.85rem 1rem;display:flex}.admin-lodging-room-header{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.admin-lodging-room-label{font-weight:700}.admin-lodging-empty{color:var(--fg-muted);margin:0;font-size:.88rem}.admin-lodging-empty a{color:var(--accent-strong)}.admin-lodging-occupant{border-top:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:.5rem;margin-top:.15rem;padding-top:.5rem;display:flex}.admin-lodging-occupant-name{font-family:var(--font-display);font-size:1rem}.admin-lodging-warning{margin:.2rem 0 0;font-size:.8rem}.admin-lodging-assign-form{flex-direction:column;gap:1rem;max-width:42rem;display:flex}.admin-lodging-assign-form label{color:var(--fg-muted);font-size:.85rem;font-weight:600;display:block}.admin-lodging-assign-form select,.admin-lodging-assign-form input[type=date],.admin-lodging-assign-form textarea{border:1px solid var(--border);background:var(--bg-elevated);width:100%;color:var(--fg);border-radius:.5rem;margin-top:.3rem;padding:.55rem .7rem;font-family:inherit;font-size:.95rem;display:block}@media (max-width:900px){.admin-lodging-board{flex-direction:column;overflow-x:visible}.admin-lodging-column{min-width:0}}.admin-dnd-wrap{flex-direction:column;gap:.6rem;margin:0 0 1.5rem;display:flex}.admin-dnd-hint{margin:0}.admin-dnd-toast{z-index:5;background:var(--accent-soft);color:var(--accent-strong);border:1px solid var(--accent);border-radius:.6rem;padding:.6rem .9rem;font-size:.9rem;position:sticky;top:.5rem}.admin-dnd-layout{align-items:flex-start;gap:1.25rem;display:flex}.admin-dnd-rail{border:1px dashed var(--border);background:var(--bg-muted);border-radius:.75rem;flex-direction:column;flex:0 0 16rem;gap:.6rem;min-width:14rem;padding:.85rem;display:flex}.admin-dnd-rail h3{margin:0;font-size:1rem}.admin-dnd-board{flex:auto;padding-top:0}.admin-dnd-household-card,.admin-dnd-occupant-card{cursor:grab;border:1px solid var(--border);background:var(--bg-elevated);touch-action:none;-webkit-user-select:none;user-select:none;border-radius:.6rem;padding:.6rem .8rem}.admin-dnd-occupant-card{flex-direction:column;align-items:stretch;gap:.35rem;display:flex}.admin-dnd-household-card:focus-visible,.admin-dnd-occupant-card:focus-visible,.admin-dnd-room-card:focus-visible,.admin-dnd-rail:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.admin-dnd-household-name{font-weight:600}.admin-dnd-notes{margin:.15rem 0 0}.admin-dnd-selected{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.admin-dnd-dragging{opacity:.5}.admin-dnd-room-card{cursor:pointer;transition:background-color .12s,border-color .12s}.admin-dnd-over{border-color:var(--accent);background:var(--accent-soft)}.admin-dnd-popover{border:1px solid var(--border);background:var(--bg-muted);cursor:default;border-radius:.5rem;flex-direction:column;gap:.5rem;margin-top:.4rem;padding:.6rem;display:flex}.admin-dnd-popover label{color:var(--fg-muted);font-size:.8rem;font-weight:600;display:block}.admin-dnd-popover input[type=date]{border:1px solid var(--border);background:var(--bg-elevated);width:100%;color:var(--fg);border-radius:.4rem;margin-top:.25rem;padding:.4rem .5rem;font-family:inherit;display:block}.admin-dnd-popover-actions{justify-content:flex-end;gap:.5rem;display:flex}.admin-dnd-drag-preview{border:1px solid var(--accent);background:var(--bg-elevated);box-shadow:0 4px 14px var(--shadow);border-radius:.6rem;padding:.5rem .8rem;font-weight:600}.admin-lodging-fallback{opacity:.92}.admin-lodging-fallback summary{cursor:pointer;font-weight:600;font-family:var(--font-display)}.admin-lodging-fallback[open] summary{margin-bottom:.75rem}@media (max-width:900px){.admin-dnd-layout{flex-direction:column}.admin-dnd-rail{flex:none;width:100%}}.admin-groups-create{margin-bottom:1.25rem}.admin-groups-create-form{flex-wrap:wrap;align-items:flex-end;gap:.75rem;display:flex}.admin-groups-create-form label{color:var(--fg-muted);font-size:.85rem;font-weight:600;display:block}.admin-groups-create-form input[type=text]{border:1px solid var(--border);background:var(--bg-elevated);color:var(--fg);border-radius:.5rem;margin-top:.3rem;padding:.55rem .7rem;font-family:inherit;font-size:.95rem;display:block}.admin-groups-board{flex-wrap:wrap;align-items:flex-start;gap:1rem;padding:1rem 0;display:flex}.admin-groups-column{flex:17rem;min-width:15rem;max-width:22rem}.admin-groups-header-actions{flex-wrap:wrap;gap:.4rem;margin:.3rem 0 .5rem;display:flex}.admin-groups-rename-form{flex-wrap:wrap;flex:auto;align-items:center;gap:.4rem;display:flex}.admin-groups-rename-form input[type=text]{border:1px solid var(--border);background:var(--bg-elevated);min-width:8rem;color:var(--fg);border-radius:.4rem;flex:auto;padding:.35rem .5rem;font-family:inherit;font-size:.95rem}@media (max-width:900px){.admin-groups-column{flex:100%;max-width:none}}
