:root{font-family:Arial,sans-serif;color:#283b35;background:#f6f4ed;--green:#284b3f;--muted:#6d776e}*{box-sizing:border-box}body{margin:0}header,footer{display:flex;justify-content:space-between;align-items:center;padding:30px 6vw;border-bottom:1px solid #d9ddd2}a{color:inherit;text-decoration:none}.brand{font-weight:800;letter-spacing:3px}.brand span{font-weight:400;letter-spacing:0;color:var(--muted);font-size:13px}main{min-height:76vh;max-width:1400px;margin:auto;padding:65px 6vw;display:flex;gap:9%;align-items:center}h1{font-family:Georgia,serif;font-size:clamp(40px,5vw,74px);line-height:1.09;font-weight:400;margin:25px 0}h1 em{color:#648066}p{line-height:1.7;color:var(--muted);max-width:540px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:3px;color:#768267}.entry{flex:1}.entry p{max-width:450px}.cover{background:#294b3f;color:#f2edcf;aspect-ratio:3/4;width:34%;max-width:360px;padding:38px;box-shadow:18px 22px 0 #e3e5d9;display:flex;flex-direction:column;justify-content:space-between;transform:rotate(3deg);border-left:9px solid #203c32}.cover div{font:clamp(28px,4vw,53px)/1.15 Georgia,serif}.cover span{font-size:10px;letter-spacing:2px}.cover i{color:#b5c49c}label{display:block;font-size:13px;margin:18px 0 8px}input,select{display:block;width:100%;padding:15px;border:1px solid #ccd2c5;background:#fffef9;border-radius:5px;font:inherit;color:inherit;margin:8px 0}button,.button{display:inline-block;background:var(--green);color:white;border:0;border-radius:5px;padding:16px 22px;font:inherit;cursor:pointer}button:disabled{opacity:.4;cursor:default}.secondary{background:#e5e8de;color:var(--green);padding:11px 16px}.inline{display:flex;gap:10px;align-items:center}.inline input{min-width:0}.inline button{white-space:nowrap}small{display:block;color:var(--muted);font-size:12px;line-height:1.6;margin-top:12px}.entry>small{margin-top:22px}.panel{padding:28px;background:#fffef9;border:1px solid #dee1d5;border-radius:10px}.narrow{max-width:620px;width:100%;margin:0 auto}.narrow h1{font-size:44px}.dashboard,.reader{width:100%}.dashboard h1{font-size:50px}.columns{display:grid;grid-template-columns:1fr 1fr;gap:25px}article{padding:18px 0;border-bottom:1px solid #e2e5db}.invitations article{display:flex;align-items:center;gap:20px}.invitations article>div{flex:1}.status{font-size:12px}.invitations{margin-bottom:30px}.reader-heading{display:flex;justify-content:space-between;gap:15px}.reader h2{font-family:Georgia,serif;font-size:28px;font-weight:400}nav{display:flex;justify-content:center;gap:24px;align-items:center;margin:25px 0}nav label{display:flex;align-items:center;gap:10px;margin:0}nav input{width:85px}#page-image{display:block;max-width:100%;margin:auto;box-shadow:0 3px 20px #0002}.reader-note{text-align:center;max-width:none}footer{font-size:10px;letter-spacing:2px;border-top:1px solid #d9ddd2;border-bottom:0;color:var(--muted)}@media(max-width:700px){main{padding:40px 6vw}.cover{display:none}.inline{display:block}.columns{grid-template-columns:1fr}.invitations article{flex-wrap:wrap}header{padding:22px 6vw}.brand span,footer span{display:none}nav{gap:8px}nav button{padding:12px;font-size:12px}.reader-heading{display:block}}@media print{body{display:none}}

/* Keep page transitions stable and the reading controls within reach. */
#page-image{height:auto}
#reader-status{min-height:1.7em;margin:8px 0}
.reading>header{padding-top:14px;padding-bottom:14px}
.reading main{padding-top:24px;align-items:flex-start}
.reading .reader h2{font-size:22px;margin:8px 0}
.reading .reader-heading small{margin-top:4px}
.reading nav{position:sticky;top:0;z-index:2;background:#f6f4ed;margin:16px 0 0;padding:8px 0;border-bottom:1px solid #d9ddd2}
.reading nav input{margin:0;padding:10px}
@media(max-width:700px){.reading main{padding-top:16px}.reading .reader-heading{display:flex;align-items:center}.reading .reader-heading .eyebrow{font-size:9px;letter-spacing:1px}.reading .reader h2{font-size:18px}.reading nav{gap:8px}}

.invitation-search{max-width:700px}
.invitation-copy{flex:0 1 260px!important;min-width:100px}
.invitation-copy .copy-feedback{margin-top:4px}
.copy-link-value[hidden]{display:none}
.copy-link-value{font-size:12px}
.invitation-pagination{flex-wrap:wrap;margin-bottom:30px}
@media(max-width:700px){.invitation-copy{flex-basis:100%!important}.invitation-search .inline{display:flex;flex-wrap:wrap}}
