body.ed{background:var(--bg);min-height:100vh}.ed-loading{min-height:70vh;color:var(--muted);place-items:center;gap:.75rem;display:grid}.ed-top{z-index:50;color:#efe6da;background:#2a211d;align-items:center;gap:1.5rem;padding:.6rem 1.25rem;display:flex;position:sticky;top:0}.ed-brand{color:#fff;flex-shrink:0;align-items:center;gap:.6rem;text-decoration:none;display:flex}.ed-brand span{flex-direction:column;line-height:1.1;display:flex}.ed-brand small{color:#efe6da99;font-size:.75rem}.ed-nav{flex-wrap:wrap;gap:.25rem;display:flex}.ed-nav a{color:#efe6dacc;border-radius:999px;padding:.45rem .85rem;font-size:.9375rem;font-weight:500;text-decoration:none}.ed-nav a:hover{color:#fff}.ed-nav a[aria-current=page]{color:var(--head);background:#fff}.ed-top-right{align-items:center;gap:1rem;margin-left:auto;font-size:.875rem;display:flex}.ed-top-right .btn-line{color:#fff}.ed-user{color:#efe6dab3}.ed-deploy:empty{display:none}.ed-deploy{background:#ffffff1a;border-radius:999px;padding:.25rem .7rem}.ed-deploy[data-state=busy]:before{content:"";vertical-align:-1px;border:2px solid #fff;border-right-color:#0000;border-radius:50%;width:.6rem;height:.6rem;margin-right:.45rem;animation:.8s linear infinite ed-spin;display:inline-block}.ed-deploy[data-state=ok]{background:#3f6b3a}.ed-deploy[data-state=err]{background:var(--accent)}@keyframes ed-spin{to{transform:rotate(360deg)}}.ed-layout{grid-template-columns:19rem minmax(0,1fr);min-height:calc(100vh - 3.5rem);display:grid}.ed-side{border-right:1px solid var(--line);background:var(--surface);height:calc(100vh - 3.5rem);padding:1rem;position:sticky;top:3.5rem;overflow-y:auto}.ed-side-head{gap:.6rem;margin-bottom:.75rem;display:grid}.ed-new{width:100%}.ed-search{width:100%;font:inherit;border:1.5px solid var(--line);background:var(--bg);border-radius:999px;padding:.55rem .8rem}.ed-list-h{font:700 .75rem var(--sans);color:var(--muted);margin:1rem 0 .4rem}.ed-item{border-radius:var(--radius);border-left:3px solid var(--t-accent);color:inherit;flex-direction:column;gap:.1rem;margin-bottom:.3rem;padding:.6rem .75rem .65rem;text-decoration:none;display:flex}.ed-item:hover{background:var(--bg)}.ed-item[aria-current=true]{background:var(--red-wash)}.ed-item-kind{color:var(--t-deep);font-size:.75rem;font-weight:700}.ed-item-title{font-family:var(--serif);color:var(--head);line-height:1.25}.ed-item-meta{color:var(--muted);flex-wrap:wrap;gap:.35rem;font-size:.8rem;display:flex}.ed-flag{color:#6b4a14;background:#f3e2c4;border-radius:3px;padding:0 .35rem;font-size:.72rem;font-weight:600}.ed-work{min-width:0;padding-bottom:4rem}.ed-empty{text-align:center;max-width:34rem;margin:12vh auto;padding:0 1.5rem}.ed-empty img{margin:0 auto 1rem}.ed-muted{color:var(--muted);font-size:.9rem}.ed-back{display:none}.ed-toolbar{z-index:30;border-bottom:1px solid var(--line);backdrop-filter:blur(6px);background:#f6f1e9f7;flex-wrap:wrap;align-items:flex-end;gap:.75rem 1.5rem;padding:.75rem 1.25rem;display:flex;position:sticky;top:3.5rem}.ed-tool-group{flex-direction:column;gap:.3rem;display:flex}.ed-tool-label{color:var(--muted);font-size:.75rem;font-weight:600}.ed-seg{background:var(--surface);border:1.5px solid var(--line);border-radius:999px;padding:3px;display:inline-flex}.ed-seg button{font:500 .875rem var(--sans);cursor:pointer;color:var(--ink);background:0 0;border:0;border-radius:999px;padding:.35rem .85rem}.ed-seg button[aria-pressed=true]{background:var(--head);color:#fff}.ed-themes{gap:.35rem;display:flex}.ed-theme{cursor:pointer;background:0 0;border:2px solid #0000;border-radius:50%;place-items:center;width:2rem;height:2rem;padding:0;display:grid}.ed-theme-dot{background:var(--t-band);background-image:var(--t-band-pattern);border-radius:50%;width:1.45rem;height:1.45rem;box-shadow:inset 0 0 0 1px #00000026}.ed-theme[aria-pressed=true]{border-color:var(--head)}.ed-actions{align-items:center;gap:.6rem;margin-left:auto;display:flex}.ed-link-danger{color:var(--accent);font:500 .9rem var(--sans);cursor:pointer;background:0 0;border:0;margin-right:.5rem;text-decoration:underline}.ed-status{flex-wrap:wrap;align-items:center;gap:.5rem 1rem;padding:.65rem 1.25rem;font-size:.875rem;display:flex}.ed-chip{border-radius:999px;padding:.2rem .65rem;font-size:.8rem;font-weight:600}.ed-chip-live{color:#2f5a29;background:#dfead8}.ed-chip-draft{color:#5b524b;background:#ece6dd}.ed-chip-warn{color:#6b4a14;background:#f3e2c4}.ed-chip-ok{color:#3f6b3a;background:#e6efe2}.ed-pin{align-items:center;gap:.35rem;font-size:.875rem;display:inline-flex}.ed-canvas .letter-scene{padding-bottom:2.5rem}.ed-canvas .letter-backdrop{height:260px}.ed-canvas .letter{animation:none!important}.ed-split{grid-template-columns:1fr 1fr;display:grid}.ed-split .letter-wrap{max-width:none;padding-inline:1rem}.ed-split .letter{padding:1.5rem 1.4rem 2rem}.ed-split .letter-lead,.ed-split .letter-columns{grid-template-columns:minmax(0,1fr)}.ed-split .letter-aside{position:static}.ed-split .letter-head{flex-direction:column-reverse}.ed-split .letter-postage{align-self:flex-end}.ed-split .backdrop-motif{display:none}.ed-lang-tag{background:var(--head);color:#fff;border-radius:999px;margin:0 0 .6rem;padding:.15rem .6rem;font-size:.8rem;font-weight:700;display:inline-block}[data-edit]{outline-offset:3px;cursor:text;border-radius:3px;outline:1px dashed #0000;transition:outline-color .15s,background-color .15s}[data-edit]:hover{outline-color:#9b233573}[data-edit]:focus{outline:2px solid var(--accent);outline-offset:4px;background:#fff9}[data-edit]:empty:before{content:attr(data-ph);color:#b3a497;pointer-events:none;font-style:italic}.letter-title[data-edit]:empty{min-width:10ch;display:block}.ed-input{font:inherit;border:1.5px solid var(--line);color:var(--ink);background:#fff;border-radius:6px;max-width:100%;padding:.35rem .55rem;font-size:.95rem}.ed-input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #9b233526}.ed-input-inline{font-family:var(--serif);padding:.1rem .35rem}.ed-row{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.fact dd .fact-main,.fact dd .fact-sub{min-height:1.4em;display:block}.ed-x{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0 .3rem;font-size:1.25rem;line-height:1}.ed-x:hover{color:var(--accent)}.ed-add{font:500 .875rem var(--sans);color:var(--accent);cursor:pointer;background:0 0;border:1.5px dashed #cdbfae;border-radius:6px;margin-top:.6rem;padding:.4rem .75rem}.ed-add:hover{border-color:var(--accent)}.admission [data-edit]{min-width:3ch;display:inline-block}.ed-attach li{align-items:baseline;gap:.4rem;margin-bottom:.3rem;display:flex}.ed-photo{position:relative}.ed-photo-tools{opacity:0;gap:.4rem;transition:opacity .2s;display:flex;position:absolute;top:1.1rem;right:1.1rem}.ed-photo:hover .ed-photo-tools,.ed-photo:focus-within .ed-photo-tools{opacity:1}.ed-photo-tools button,.ed-grid-tools button{color:#fff;font:500 .8125rem var(--sans);cursor:pointer;background:#2a211dd9;border:0;border-radius:999px;padding:.35rem .75rem}.ed-photo-tools button:hover,.ed-grid-tools button:hover{background:var(--accent)}.ed-alt{width:100%;margin-top:.5rem;font-size:.85rem}.ed-photo-empty{margin:0}.ed-drop{border-radius:var(--radius);width:100%;min-height:15rem;color:var(--muted);font:inherit;text-align:center;cursor:pointer;background:#ffffff80;border:2px dashed #cdbfae;flex-direction:column;justify-content:center;align-items:center;gap:.4rem;padding:1.5rem;display:flex}.ed-drop strong{color:var(--accent);font-size:1.05rem}.ed-drop:hover,.is-drag .ed-drop,.is-drag.ed-grid{border-color:var(--accent);background:var(--red-wash)}.letter-lead-noimg.letter-lead{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.ed-split .letter-lead-noimg.letter-lead{grid-template-columns:minmax(0,1fr)}.ed-canvas .letter-greeting{white-space:normal}.ed-split .wax-seal{width:6rem}.ed-layout.is-split{grid-template-columns:minmax(0,1fr)}.ed-layout.is-split .ed-side{display:none}.ed-layout.is-split .ed-back{align-self:center;font-weight:600;display:inline-block}.ed-rich-wrap{position:relative}.ed-rtb{z-index:5;border:1px solid var(--line);background:#fff;border-radius:8px;flex-wrap:wrap;gap:.2rem;margin-bottom:.75rem;padding:.25rem;display:inline-flex;position:sticky;top:8.5rem;box-shadow:0 2px 8px #3c1e1414}.ed-rtb button{font:500 .875rem var(--sans);cursor:pointer;color:var(--head);background:0 0;border:0;border-radius:5px;padding:.3rem .6rem}.ed-rtb button:hover{background:var(--red-wash);color:var(--accent)}.ed-rich{min-height:12rem;padding:.25rem}.ed-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin:1.5rem 1.25rem 0;padding:1.25rem 1.4rem 1.5rem}.ed-panel-h{margin:0 0 .35rem;font-size:1.3rem}.ed-page{max-width:1180px;margin:0 auto;padding:0 1.25rem 4rem}.ed-page .ed-toolbar{margin:0 -1.25rem 1.5rem}.ed-page .ed-panel{margin-inline:0}.ed-narrow{max-width:980px}.ed-page-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:2rem 0 1rem;display:flex}.ed-page-head h1{margin:0;font-size:clamp(2rem,4vw,2.8rem)}.ed-year{width:calc(4.4ch + 1rem);font-family:var(--serif);font-size:inherit;padding:0 .3rem}.ed-bilingual{grid-template-columns:1fr 1fr;gap:1rem 2rem;margin-bottom:1rem;display:grid}.ed-mt{margin-top:1.5rem}.ed-field{flex-direction:column;gap:.3rem;margin-bottom:.75rem;display:flex}.ed-field-label{color:var(--muted);font-size:.8rem;font-weight:600}.ed-field textarea{resize:vertical;width:100%}.ed-field .page-title{margin:0;font-size:clamp(1.8rem,3vw,2.4rem)}.ed-between{justify-content:space-between}.ed-album-grid{margin-top:1rem}.ed-grid{border-radius:var(--radius);border:2px dashed #0000;grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));gap:.6rem;margin:1rem 0 0;padding:.5rem;list-style:none;display:grid}.ed-grid li{aspect-ratio:4/3;background:#e6dccf;border-radius:4px;position:relative;overflow:hidden}.ed-grid li.is-cover{outline:3px solid var(--accent);outline-offset:2px}.ed-grid img{object-fit:cover;width:100%;height:100%}.ed-grid-tools{opacity:0;justify-content:flex-end;gap:.25rem;transition:opacity .2s;display:flex;position:absolute;bottom:.35rem;left:.35rem;right:.35rem}.ed-grid li:hover .ed-grid-tools,.ed-grid li:focus-within .ed-grid-tools,.ed-grid li.is-cover .ed-grid-tools{opacity:1}.ed-grid-tools button{padding:.25rem .5rem}.ed-grid-tools button:first-child{margin-right:auto}.ed-grid-tools button:disabled{opacity:.4}.ed-grid-add{background:0 0!important}.ed-grid-add button,.ed-grid-add-btn{width:100%;height:100%;min-height:8rem;color:var(--muted);font:inherit;cursor:pointer;background:#ffffff80;border:2px dashed #cdbfae;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:.2rem;display:flex}.ed-grid-add strong,.ed-grid-add-btn{color:var(--accent)}.ed-grid-add button:hover,.ed-grid-add-btn:hover{border-color:var(--accent)}.ed-sched{border-top:1px solid var(--line);margin:1rem 0;padding:0;list-style:none}.ed-sched-row{border-bottom:1px solid var(--line);border-left:3px solid var(--t-accent);grid-template-columns:3.5rem minmax(0,1fr) auto;align-items:start;gap:1rem;padding:.9rem .5rem;display:grid}.ed-sched-fields{grid-template-columns:1fr 1fr;gap:.45rem;display:grid}.ed-sched-fields .ed-row{grid-column:1/-1}.ed-sched-name{font-weight:600}.ed-board-member{gap:.35rem}.ed-board-photo{cursor:pointer;font:inherit;padding:0}.ed-board-change{color:#fff;opacity:0;z-index:1;background:#2a211db3;padding:.3rem 0;font-size:.75rem;transition:opacity .2s;position:absolute;inset:auto 0 0}.ed-board-photo:hover .ed-board-change,.ed-board-photo.is-drag .ed-board-change{opacity:1}.ed-center{text-align:center;width:100%}.ed-strong{font-weight:700}.ed-center-row{justify-content:center}.ed-icon{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:999px;width:1.9rem;height:1.9rem}.ed-icon:disabled{opacity:.35}.ed-table{border-collapse:collapse;width:100%;margin-top:.75rem}.ed-table th{text-align:left;color:var(--muted);padding:.3rem;font-size:.8rem;font-weight:600}.ed-table td{padding:.25rem}.ed-table .ed-input{width:100%}.ed-price{max-width:6rem}.ed-toasts{z-index:100;gap:.5rem;max-width:24rem;display:grid;position:fixed;bottom:1.25rem;right:1.25rem}.ed-toast{color:#fff;background:#2a211d;border-radius:8px;padding:.75rem 1rem;font-size:.9375rem;animation:.25s ease-out ed-in;box-shadow:0 8px 24px #00000040}.ed-toast-err{background:var(--accent)}.ed-toast-info{background:#3d5a80}@keyframes ed-in{0%{opacity:0;transform:translateY(8px)}}@media (width<=1100px){.ed-split{grid-template-columns:minmax(0,1fr)}}@media (width<=900px){.ed-top{flex-wrap:wrap;gap:.5rem 1rem}.ed-top-right{margin-left:0}.ed-user{display:none}.ed-layout{grid-template-columns:minmax(0,1fr)}.ed-side{border-right:0;height:auto;position:static}.ed-layout.has-open .ed-side{display:none}.ed-back{font-weight:600;display:inline-block}.ed-toolbar,.ed-rtb{position:static}.ed-bilingual,.ed-sched-fields{grid-template-columns:minmax(0,1fr)}.ed-actions{width:100%;margin-left:0}}.ed-img-pending{position:relative}.ed-img-pending:after{content:"Photo is being published…";text-align:center;color:var(--muted);background:#efe7dc;place-items:center;padding:.5rem;font-size:.8rem;display:grid;position:absolute;inset:0}.ed-signin{text-align:center;max-width:28rem;margin:8vh auto;padding:0 1.25rem}.ed-signin img{margin:0 auto .75rem}.ed-signin h1{margin-bottom:.25rem;font-size:2.2rem}.ed-signin-box{justify-content:center;margin-top:1.5rem;display:flex}.ed-signout{color:#efe6dacc;font:inherit;cursor:pointer;background:0 0;border:0;text-decoration:underline}.ed-signout:hover{color:#fff}.ed-check{cursor:pointer;align-items:flex-start;gap:.6rem;padding:.35rem 0;display:flex}.ed-check input{accent-color:var(--red);width:1.05rem;height:1.05rem;margin-top:.25rem}.ed-check small{color:var(--muted);font-size:.85rem;display:block}.ed-rsvp-opts{border-left:3px solid var(--red-soft);background:var(--bg);margin:.5rem 0 0 1.65rem;padding:.75rem 1rem}.ed-rsvp-opts .ed-muted{margin:0 0 .25rem}.ed-deadline{max-width:14rem;margin-top:.5rem}.ed-rsvp-answers{margin-top:1.25rem}.ed-rsvp-totals{flex-wrap:wrap;gap:.75rem;margin-bottom:1rem;display:flex}.ed-rsvp-totals div{background:var(--red-wash);border-radius:6px;min-width:7rem;padding:.6rem 1rem}.ed-rsvp-totals div.is-no{background:var(--surface-2)}.ed-rsvp-totals strong{font-family:var(--serif);color:var(--red-deep);font-size:1.7rem;line-height:1.1;display:block}.ed-rsvp-totals .is-no strong{color:var(--muted)}.ed-rsvp-totals span{color:var(--muted);font-size:.85rem}.ed-answers{margin-bottom:.75rem}.ed-answers tr.is-no td,.ed-people tr.is-off td{color:var(--muted)}.ed-email-btn{margin-left:auto}.ed-dialog{background:var(--surface);width:min(560px,100vw - 2rem);max-height:calc(100vh - 2rem);color:var(--ink);border:0;border-radius:10px;padding:0;box-shadow:0 30px 80px -20px #28140a80}.ed-dialog::backdrop{background:#2a211d8c}.ed-dialog:has(.ed-mail){width:min(1180px,100vw - 2rem);height:calc(100vh - 2rem)}.ed-dialog-head{border-bottom:1px solid var(--line);background:var(--surface);z-index:1;justify-content:space-between;align-items:center;padding:.85rem 1.25rem;display:flex;position:sticky;top:0}.ed-dialog-head h2{font-family:var(--serif);margin:0;font-size:1.25rem}.ed-member-form{gap:.85rem;padding:1.25rem;display:grid}.ed-member-form p{margin:0}.ed-mail{grid-template-columns:360px 1fr;height:calc(100% - 3.4rem);display:grid}.ed-mail-side{border-right:1px solid var(--line);align-content:start;gap:1rem;padding:1.1rem 1.25rem;display:grid;overflow:auto}.ed-mail-side .ed-muted{margin:0;font-size:.85rem}.ed-mail-side .ed-input{width:100%}.ed-mail-warn{background:#fff6e0;border:1px solid #ecd9a4;border-radius:6px;margin:0;padding:.7rem .9rem .7rem 1.9rem;font-size:.88rem}.ed-mail-warn li+li{margin-top:.35rem}.ed-audience .ed-check small{margin-left:.4rem;display:inline}.ed-mail-test{background:var(--bg);border-radius:6px;padding:.8rem}.ed-mail-test .ed-row{gap:.5rem;margin-top:.4rem}.ed-mail-test input[type=email]{flex:100%}.ed-sel{width:auto!important}.ed-mail-go .btn{width:100%;padding-block:.75rem;font-size:1.05rem}.ed-mail-go .btn:disabled{opacity:.45;cursor:not-allowed}.ed-mail-history h3{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 .4rem;font-size:.8rem}.ed-mail-history ul{margin:0;padding-left:1.1rem;font-size:.85rem}.ed-err{color:var(--red-deep)}.ed-mail-preview{background:#e9e2d6;flex-direction:column;gap:.6rem;min-height:0;padding:.9rem 1.1rem;display:flex}.ed-mail-frame{background:#f6f1e9;border:0;border-radius:6px;flex:1;width:100%;box-shadow:0 2px 10px #00000014}@media (width<=860px){.ed-mail{grid-template-columns:1fr;height:auto}.ed-mail-frame{min-height:70vh}}.ed-msearch{border-radius:999px;width:min(320px,100%);padding:.45rem .9rem}.ed-people{width:100%;margin-top:1rem}.ed-people td{vertical-align:middle}.ed-switch{cursor:pointer;align-items:center;gap:.4rem;font-size:.9rem;display:inline-flex}.ed-switch input{accent-color:var(--red);width:1rem;height:1rem}.ed-mail-subject{background:var(--surface);color:var(--ink);overflow-wrap:anywhere;border-radius:6px;margin:0;padding:.45rem .75rem;font-size:.88rem}.ed-seg.is-off{opacity:.4;pointer-events:none}.ed-as{max-width:300px}.ed-dialog:has(.ed-dry){width:min(820px,100vw - 2rem);height:calc(100vh - 2rem)}.ed-dry{box-sizing:border-box;flex-direction:column;gap:.75rem;height:calc(100% - 3.4rem);padding:1rem 1.25rem;display:flex}.ed-dry p{margin:0}.ed-dry .ed-mail-subject{background:var(--bg)}.ed-who summary{cursor:pointer;font-weight:600}.ed-who ul{max-height:40vh;margin:.4rem 0 .6rem;padding-left:1.2rem;font-size:.9rem;overflow:auto}.ed-who small{color:var(--red-deep)}.ed-dialog:has(.ed-member-extra){width:min(760px,100vw - 2rem)}.ed-member-extra{gap:1.25rem;padding:0 1.25rem 1.25rem;display:grid}.ed-member-extra section{border-top:1px solid var(--line);padding-top:1rem}.ed-member-extra h3{font-family:var(--serif);margin:0 0 .5rem;font-size:1.1rem}.ed-member-extra .ed-row{gap:.5rem}.ed-dues-line{margin:0 0 .5rem}.ed-payments{width:100%;font-size:.9rem}.ed-pay-row .ed-input{width:auto}.ed-pay-row .ed-price{width:5rem}.ed-pay-row input:not(.ed-year):not(.ed-price){flex:1;min-width:10rem}.ed-hh{gap:.4rem;display:grid}.ed-hh .ed-row .ed-input{flex:1}.ed-linkout{gap:.5rem;margin-top:.5rem;display:flex}.ed-linkout .ed-input{flex:1}.ed-pay-row .ed-input.ed-year{width:5.5rem}.ed-member-extra .ed-row>.ed-input:first-child:not(.ed-year){flex:1}.ed-member-extra .ed-row>.ed-input.ed-year{width:6rem;font-family:inherit}.ed-dev{color:#fff;letter-spacing:.08em;text-transform:uppercase;background:#1f3a7a;border-radius:4px;padding:.25rem .6rem;font-size:.75rem;font-weight:700}
