.admin-shell{color:#17211d;background:#f3f4f1;grid-template-columns:270px 1fr;min-height:100vh;display:grid}.admin-sidebar{color:#fff;background:#0b1f35;flex-direction:column;height:100vh;padding:34px 24px 25px;display:flex;position:sticky;top:0}.admin-brand{color:#fff;border-bottom:1px solid #ffffff24;gap:4px;padding:0 10px 30px;text-decoration:none;display:grid}.admin-brand span{font-family:var(--font-serif), serif;font-size:2.1rem}.admin-brand em{color:#c4a46e;font-weight:400}.admin-brand small{color:#ffffff85;text-transform:uppercase;letter-spacing:.12em;font-size:.54rem}.admin-sidebar nav{gap:5px;margin-top:30px;display:grid}.admin-sidebar nav a{color:#ffffffb8;border-radius:4px;align-items:center;gap:12px;min-height:46px;padding:0 12px;font-size:.76rem;font-weight:700;text-decoration:none;display:flex}.admin-sidebar nav a:hover{color:#fff;background:#ffffff14}.admin-sidebar nav svg{width:17px}.admin-account{border-top:1px solid #ffffff24;gap:5px;margin-top:auto;padding:20px 10px 0;display:grid}.admin-account span{color:#ffffff7a;text-transform:uppercase;letter-spacing:.12em;font-size:.56rem}.admin-account strong{overflow-wrap:anywhere;font-size:.67rem}.admin-account button{color:#ffffff9e;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;margin-top:12px;padding:0;font-size:.67rem;display:flex}.admin-account button svg{width:15px}.admin-main{min-width:0;padding:52px clamp(28px,5vw,76px) 100px}.admin-header{justify-content:space-between;align-items:flex-end;margin:0 0 38px;display:flex}.admin-header h1{color:#0b1f35;font-family:var(--font-serif), serif;margin:5px 0 12px;font-size:clamp(3rem,5vw,4.8rem);font-weight:600;line-height:.95}.admin-header p:last-child{color:#69736c;margin:0;font-size:.82rem}.admin-kicker{color:#52705c;text-transform:uppercase;letter-spacing:.17em;margin:0;font-size:.57rem;font-weight:800}.stat-grid{grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:24px;display:grid}.stat-grid article{background:#fff;border:1px solid #dce0dc;flex-direction:column;align-items:flex-start;min-height:185px;padding:25px;display:flex}.stat-grid svg{color:#b7925b;stroke-width:1.5px;width:22px;margin-bottom:22px}.stat-grid span{color:#69736c;text-transform:uppercase;letter-spacing:.1em;font-size:.64rem;font-weight:800}.stat-grid strong{color:#0b1f35;font-family:var(--font-serif), serif;margin:8px 0;font-size:3.1rem;line-height:1}.stat-grid small{color:#879089;font-size:.63rem}.admin-panel{background:#fff;border:1px solid #dce0dc;margin-bottom:22px;padding:30px}.compact-panel{padding-bottom:26px}.panel-heading{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;display:flex}.panel-heading h2{font-family:var(--font-serif), serif;color:#0b1f35;margin:7px 0 0;font-size:2.2rem;font-weight:600;line-height:1}.panel-heading a{color:#173d2b;text-transform:uppercase;letter-spacing:.08em;font-size:.67rem;font-weight:800}.response-list{display:grid}.response-list>div{border-top:1px solid #e7e9e6;justify-content:space-between;align-items:center;min-height:55px;font-size:.77rem;display:flex}.admin-empty{color:#7a847d;text-align:center;padding:32px;font-size:.78rem}.status{font-size:.52rem;font-family:var(--font-sans), sans-serif;text-transform:uppercase;letter-spacing:.08em;border-radius:99px;align-items:center;padding:6px 10px;display:inline-flex}.status--attending{color:#1e6241;background:#e2f2e8}.status--declined{color:#8a3a31;background:#f8e7e3}.status--pending{color:#7a6840;background:#f3ecd9}.admin-actions{justify-content:flex-end;margin:-12px 0 18px;display:flex}.admin-primary,.admin-secondary{cursor:pointer;text-transform:uppercase;letter-spacing:.1em;border:0;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 18px;font-size:.62rem;font-weight:800;text-decoration:none;display:inline-flex}.admin-primary{color:#fff;background:#173d2b}.admin-secondary{color:#0b1f35;background:0 0;border:1px solid #0b1f35}.admin-primary svg,.admin-secondary svg{width:15px}.inline-form{grid-template-columns:1fr auto;align-items:end;gap:16px;display:grid}.admin-panel label,.login-panel label{color:#0b1f35;text-transform:uppercase;letter-spacing:.1em;gap:7px;font-size:.58rem;font-weight:800;display:grid}.admin-panel label small{color:#89918c;text-transform:none;letter-spacing:0;font-size:.5rem;font-weight:500}.admin-panel input,.admin-panel select,.admin-panel textarea,.login-panel input{color:#17211d;text-transform:none;letter-spacing:0;background:#fff;border:1px solid #ced5d0;width:100%;min-height:43px;padding:10px 12px;font-size:.76rem;font-weight:500}.admin-panel textarea{resize:vertical;min-height:90px}.admin-panel input:focus,.admin-panel select:focus,.admin-panel textarea:focus,.login-panel input:focus{border-color:#173d2b;outline:2px solid #173d2b33}.household-list{gap:22px;display:grid}.household{padding:0}.household-heading{background:#eef0eb;justify-content:space-between;align-items:center;gap:20px;min-height:82px;padding:18px 25px;display:flex}.household-heading>div{align-items:center;gap:20px;display:flex}.household-heading>div>span{color:#69736c;text-transform:uppercase;letter-spacing:.08em;font-size:.62rem}.rename-form{align-items:center;gap:8px;min-width:280px;display:flex}.rename-form input{font-family:var(--font-serif), serif;color:#0b1f35;background:0 0;border:0;border-bottom:1px solid #b8c1ba;padding:6px 2px;font-size:1.65rem}.rename-form button{color:#173d2b;cursor:pointer;text-transform:uppercase;background:0 0;border:0;font-size:.56rem;font-weight:800}.danger-link{color:#8a3a31;cursor:pointer;text-transform:uppercase;background:0 0;border:0;align-items:center;gap:6px;font-size:.58rem;font-weight:800;display:inline-flex}.danger-link svg{width:14px}.add-guest{border-bottom:1px solid #e5e8e4;padding:18px 25px}.add-guest summary{color:#173d2b;cursor:pointer;text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:8px;font-size:.66rem;font-weight:800;display:inline-flex}.add-guest summary svg{width:15px}.guest-editor,.registry-editor{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:17px;margin-top:22px;display:grid}.guest-editor .wide,.registry-editor .wide{grid-column:1/-1}.admin-check{border:1px solid #d7dcd8;grid-template-columns:auto 1fr;align-items:center;min-height:43px;padding:10px 12px;gap:9px!important;display:flex!important}.admin-check input{width:16px;min-height:16px}.guest-list{padding:0 25px 25px}.guest-row,.registry-admin-row{border-bottom:1px solid #e5e8e4}.guest-row summary,.registry-admin-row summary{cursor:pointer;justify-content:space-between;align-items:center;gap:20px;min-height:65px;list-style:none;display:flex}.guest-row summary::-webkit-details-marker{display:none}.registry-admin-row summary::-webkit-details-marker{display:none}.guest-row summary>span:first-child,.registry-admin-row summary>span:first-child{align-items:center;gap:10px;display:flex}.guest-row summary strong,.registry-admin-row summary strong{color:#0b1f35;font-size:.76rem}.guest-summary,.registry-admin-row summary small{color:#818a84;font-size:.61rem}.guest-note{color:#68716b;margin:0;font-size:.7rem;line-height:1.5}.editor-actions{align-items:center;gap:15px;display:flex}.delete-guest{padding:14px 0 22px}.registry-admin-list{display:grid}.registry-admin-row summary{padding:0 4px}.registry-admin-row summary>span:first-child{flex-direction:column;align-items:flex-start;gap:4px}.registry-admin-row .registry-editor{padding:0 4px 16px}.settings-panel{max-width:820px}.settings-panel form>label:not(.admin-check){margin-bottom:22px}.settings-note{color:#69736c;max-width:650px;font-size:.73rem;line-height:1.7}.settings-panel hr{border:0;border-top:1px solid #e0e4e0;margin:32px 0}.settings-panel h3{color:#0b1f35;font-family:var(--font-serif), serif;margin:7px 0 14px;font-size:1.8rem}.disabled-check{opacity:.55;max-width:520px}.admin-error,.admin-success{margin:0 0 20px;padding:13px 16px;font-size:.72rem}.admin-error{color:#7b2f25;background:#f8e7e3}.admin-success{color:#185837;background:#e2f2e8}.login-page{background:#f7f3eb;grid-template-columns:1.05fr .95fr;min-height:100svh;display:grid}.login-art{color:#fff;background:linear-gradient(#081a2c5c,#081a2cb3),url(/images/rory-sara-candid.jpg) 50%/cover;place-items:center;display:grid}.login-art div{text-align:center}.login-art p{font-family:var(--font-serif), serif;margin:0;font-size:clamp(5rem,9vw,9rem);line-height:1}.login-art em{color:#d2b785;font-weight:400}.login-art span{text-transform:uppercase;letter-spacing:.24em;font-size:.66rem}.login-panel{place-items:center;padding:40px;display:grid}.login-panel form{width:min(430px,100%)}.login-panel h1{color:#0b1f35;font-family:var(--font-serif), serif;margin:10px 0 14px;font-size:4rem;line-height:1}.login-copy{color:#69736c;margin-bottom:30px;font-size:.78rem;line-height:1.7}.login-panel label{margin-bottom:17px}.login-panel .admin-primary{width:100%;margin-top:8px}@media (max-width:1080px){.stat-grid{grid-template-columns:1fr 1fr}}@media (max-width:780px){.admin-shell{grid-template-columns:1fr}.admin-sidebar{height:auto;padding:18px;position:static}.admin-brand{padding:0 0 14px}.admin-brand small,.admin-account{display:none}.admin-sidebar nav{margin-top:12px;display:flex;overflow-x:auto}.admin-sidebar nav a{white-space:nowrap}.admin-main{padding:35px 18px 80px}.household-heading{flex-direction:column;align-items:flex-start}.rename-form{width:100%;min-width:0}.guest-editor,.registry-editor{grid-template-columns:1fr}.guest-editor .wide,.registry-editor .wide{grid-column:auto}.login-page{grid-template-columns:1fr}.login-art{min-height:32svh}.login-panel{padding:48px 24px}}@media (max-width:520px){.stat-grid,.inline-form{grid-template-columns:1fr}.panel-heading{flex-direction:column}.guest-summary{display:none}.household-heading>div{justify-content:space-between;width:100%}}
