/* My Shelf: quiet chronology lets the kept objects carry the colour. */
.member-shelf .shelf-head{margin-bottom:30px}
.member-shelf .shelf-head h1{font-size:clamp(44px,6vw,72px);line-height:1.02;max-width:15ch;margin-bottom:20px}
.member-shelf .shelf-intro{max-width:46ch;font-size:18px;line-height:1.6}
.member-shelf .shelf-count{font-size:16px;color:#46515d;margin-top:18px}
.member-shelf .shelf-shortcuts{display:flex;gap:10px 26px;flex-wrap:wrap;padding:18px 0;border-block:1px solid #d4c8b5;margin:0 0 22px}
.member-shelf .shelf-shortcuts a{display:inline-flex;align-items:center;min-height:44px;color:#764c1c;font-size:16px;text-decoration:underline;text-underline-offset:5px}
.member-shelf .shelf-state-copy,.member-shelf .shelf-dates-copy{font-size:15px;line-height:1.6;color:#46515d}
.member-shelf .shelf-state-copy:empty{display:none}
.member-shelf .shelf-controls{gap:16px;margin:28px 0 10px;align-items:end}
.member-shelf .shelf-search{flex-basis:280px}
.member-shelf .shelf-select{display:flex;flex-direction:column;gap:6px;font-size:14px;color:#46515d}
.member-shelf .shelf-select select{min-height:46px;border:1px solid #c9bba4;border-radius:6px;padding:8px 32px 8px 12px;background:#fbf8f1;color:#1c2733;font:400 16px/1.4 var(--font-body,system-ui)}
.member-shelf .shelf-dates-copy{margin:12px 0 20px;max-width:65ch}
.member-shelf .shelf-empty{max-width:640px;margin:64px auto 72px;text-align:center}
.member-shelf .shelf-empty .eyebrow{color:#764c1c;font-size:12px;letter-spacing:.12em;margin-bottom:22px}
.member-shelf .shelf-empty h2{font-size:clamp(34px,4.6vw,52px);line-height:1.1;letter-spacing:-.035em;margin-bottom:24px}
.member-shelf .shelf-empty p{font-size:17px;line-height:1.65;max-width:42ch;margin-bottom:18px;color:#46515d}
.member-shelf .shelf-empty-actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px 24px;margin-top:28px}
.member-shelf .shelf-empty-actions a{min-height:44px;font-size:16px}
.member-shelf .shelf-undo{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:20px 0;padding:12px 18px;border:1px solid #c9bba4;border-radius:6px;font-size:16px;background:#fbf8f1}
.member-shelf .shelf-undo button{min-height:44px;font-size:16px}
.member-shelf .shelf-private-notes{margin-top:64px;scroll-margin-top:24px}
.member-shelf .shelf-private-notes:empty{display:none}
.member-shelf .shelf-card-details p,.member-shelf .shelf-card-details .small-button{font-size:14px}
.member-shelf #shelf-revisit{font-size:16px;min-height:46px}
.member-shelf a:focus-visible,.member-shelf button:focus-visible,.member-shelf summary:focus-visible,.member-shelf select:focus-visible{outline:2px solid #764c1c;outline-offset:4px}
.member-shelf #drafts,.member-shelf #received-cards{scroll-margin-top:24px}
.ks-entry>.ks-cover{align-self:center}
@media(max-width:560px){.member-shelf .shelf-head h1{font-size:48px}.member-shelf .shelf-shortcuts{gap:4px 20px}.member-shelf .shelf-empty{margin:44px auto 48px}.member-shelf .shelf-select{flex:1}.member-shelf .shelf-select select{width:100%}.member-shelf .shelf-controls{gap:12px}.member-shelf .shelf-intro{font-size:17px}}

.member-shelf.has-keepsakes .shelf-head h1{font-size:clamp(42px,5vw,60px);max-width:none;margin-bottom:12px}
.member-shelf.has-keepsakes .shelf-intro{max-width:57ch}
@media(max-width:560px){.member-shelf .shelf-search{flex:1 1 100%;max-width:none}.member-shelf .shelf-select{flex:1 1 130px;min-width:0}.member-shelf .shelf-select select{padding:8px 24px 8px 8px}.member-shelf #shelf-revisit{flex:0 0 100%;text-align:left}.member-shelf.has-keepsakes .shelf-head h1{font-size:44px}.member-shelf.has-keepsakes .shelf-head{margin-bottom:22px}}
@media(max-width:360px){.member-shelf .shelf-select{flex-basis:100%}}
.member-shelf .shelf-source-pages{display:grid;gap:10px;margin:24px 0 0}
.member-shelf .shelf-source-page{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 20px;padding:14px 0;border-bottom:1px solid #d4c8b5}
.member-shelf .shelf-source-page p{font-size:15px;line-height:1.5;color:#46515d;margin:0}
.member-shelf .shelf-source-page button{font-size:15px;min-height:44px;text-align:left}
.member-shelf .shelf-draft{display:grid;grid-template-columns:112px minmax(0,1fr);gap:24px;padding:24px 0;border-top:1px solid #d4c8b5}
.member-shelf .shelf-draft-cover{appearance:none;border:0;background:transparent;padding:0;cursor:pointer;align-self:start;max-width:112px;width:100%;text-align:center}
.member-shelf .shelf-draft-cover .ks-paper{box-shadow:1px 2px 5px #1c273325}
.member-shelf .shelf-draft-placeholder,.ks-draft-placeholder{display:flex;align-items:center;justify-content:center;aspect-ratio:5/7;padding:12px;background:#fbf8f1;border:1px dashed #b9a88d;font:400 17px/1.4 var(--font-display,Georgia,serif);color:#764c1c}
.member-shelf .shelf-draft-description{min-width:0}
.member-shelf .shelf-draft-description h3{font:400 25px/1.25 var(--font-display,Georgia,serif);margin:0 0 10px;overflow-wrap:anywhere}
.member-shelf .shelf-draft-description p{font-size:16px;line-height:1.5;margin:5px 0;color:#46515d;overflow-wrap:anywhere}
.member-shelf .shelf-draft-description .shelf-draft-saved{font-size:14px}
.member-shelf .shelf-draft-actions{display:flex;gap:12px 20px;align-items:center;flex-wrap:wrap;margin-top:12px}
@media(max-width:560px){.member-shelf .shelf-draft{grid-template-columns:84px minmax(0,1fr);gap:16px}.member-shelf .shelf-draft-description h3{font-size:22px}.member-shelf .shelf-draft-actions .secondary-button{font-size:14px;padding:9px 14px}.member-shelf .shelf-draft-description p{font-size:15px}}
.member-shelf .shelf-date-help{font-size:14px;color:#46515d;margin:0 0 24px}
.member-shelf .shelf-date-help summary{cursor:pointer;min-height:44px;padding-block:10px;color:#764c1c;max-width:fit-content}
.member-shelf .shelf-date-help p{max-width:68ch;font-size:15px;line-height:1.6;margin:0 0 8px}
