:root{--color-paper:#fff6f7;--color-surface:#fff;--color-ink:#241b3a;--color-ink-soft:#5e5470;--color-line:#f0dce3;--color-accent:#c81d6b;--color-on-accent:#fff;--color-accent-soft:#fce4ee;--color-pop:#f29e38;--color-on-pop:#2a1a05;--color-highlight:#ffd3e2;--color-danger:#b42318;--avatar-0:var(--color-accent);--on-avatar-0:#fff;--avatar-1:var(--color-pop);--on-avatar-1:#241b3a;--avatar-2:var(--color-highlight);--on-avatar-2:#241b3a;--avatar-3:var(--color-ink);--on-avatar-3:#fff;--avatar-4:var(--color-accent-soft);--on-avatar-4:#241b3a;--avatar-5:#6e3d9e;--on-avatar-5:#fff;--avatar-6:#16716b;--on-avatar-6:#fff;--avatar-7:#c9dcb8;--on-avatar-7:#241b3a;--font-display:"Fraunces", Georgia, "Times New Roman", serif;--font-body:"Figtree", system-ui, -apple-system, "Segoe UI", sans-serif;--font-stamp:"DM Mono", ui-monospace, Menlo, monospace;--font-display-weight:650;--font-display-tracking:-.01em;--radius-card:20px;--radius-field:12px;--radius-pill:999px;--gutter:18px;--tab-bar-space:calc(4.5rem + env(safe-area-inset-bottom));--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--color-paper:#1a1426;--color-surface:#251c35;--color-ink:#f8eef4;--color-ink-soft:#bcaec6;--color-line:#3a2e4d;--color-accent:#ff6fa8;--color-on-accent:#2a0a1b;--color-accent-soft:#3d1e38;--color-pop:#f5b354;--color-on-pop:#2a1a05;--color-highlight:#5c2347;--color-danger:#ff8a80;--on-avatar-0:#241b3a;--on-avatar-2:#fff;--on-avatar-3:#241b3a;--on-avatar-4:#fff;--avatar-5:#c3a0ee;--on-avatar-5:#241b3a;--avatar-6:#5ccabd;--on-avatar-6:#241b3a}}*,:before,:after{box-sizing:border-box}body{background:var(--color-paper);color:var(--color-ink);font-family:var(--font-body);-webkit-text-size-adjust:100%;margin:0;font-size:1rem;line-height:1.5}.page{max-width:40rem;padding:0 max(var(--gutter), env(safe-area-inset-right)) calc(2.5rem + max(var(--tab-bar-space), env(safe-area-inset-bottom))) max(var(--gutter), env(safe-area-inset-left));margin:0 auto}.page:has(>.landing,>.suggestions-page,>.members-page,>.read-page){max-width:72rem}img{max-width:100%;height:auto}h1,h2,h3{font-family:var(--font-display);font-weight:var(--font-display-weight);letter-spacing:var(--font-display-tracking);text-wrap:balance;margin:0 0 .5rem;line-height:1.12}h1{margin-top:1.5rem;font-size:1.85rem}h2{font-size:1.3rem}h3{font-size:1.1rem}p{margin:0 0 .75rem}a{color:var(--color-accent);text-underline-offset:.2em;font-weight:600;text-decoration-thickness:1.5px}strong{font-weight:700}mark{background:linear-gradient(transparent 58%, var(--color-highlight) 58%, var(--color-highlight) 94%, transparent 94%);color:inherit;padding:0 .08em}[role=alert]{color:var(--color-danger);font-weight:600}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.site-header{z-index:10;background:var(--color-paper);border-bottom:1px solid var(--color-line);padding-top:env(safe-area-inset-top);position:sticky;top:0}.site-header-inner{max-width:72rem;padding:.6rem max(var(--gutter), env(safe-area-inset-right)) .6rem max(var(--gutter), env(safe-area-inset-left));align-items:center;gap:.75rem;margin:0 auto;display:flex}.logo-link{color:var(--color-ink);min-width:0;text-decoration:none}.logo{align-items:center;gap:.5rem;display:inline-flex}.logo-mark{flex:none;width:2.1rem;height:2.1rem}.logo-mark-left{fill:var(--color-accent)}.logo-mark-right{fill:var(--color-pop)}.logo-mark-ribbon{fill:var(--color-ink)}.logo-word{font-family:var(--font-display);font-weight:var(--font-display-weight);letter-spacing:var(--font-display-tracking);max-width:7.5em;font-size:1.05rem;line-height:1.05}.logo-word em{color:var(--color-accent);font-weight:450}.main-nav{z-index:20;padding:.35rem max(var(--gutter), env(safe-area-inset-right)) calc(.35rem + env(safe-area-inset-bottom)) max(var(--gutter), env(safe-area-inset-left));background:var(--color-paper);border-top:1px solid var(--color-line);grid-template-columns:repeat(4,minmax(0,1fr));display:grid;position:fixed;bottom:0;left:0;right:0}.main-nav a{border-radius:var(--radius-field);color:var(--color-ink-soft);justify-items:center;gap:.2rem;padding:.3rem .25rem;font-size:.75rem;font-weight:600;text-decoration:none;display:grid}.main-nav a[aria-current=page]{color:var(--color-accent)}.tab-icon{border-radius:var(--radius-pill);fill:none;stroke:currentColor;stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round;width:3.4rem;height:1.9rem;padding:.2rem 0}.main-nav a[aria-current=page] .tab-icon{background:var(--color-accent-soft)}.site-header .account-menu{margin-left:auto}@media (width>=40rem){:root{--tab-bar-space:0px}.logo-word{max-width:none;font-size:1.15rem}.main-nav{background:0 0;border:0;gap:.25rem;margin-left:auto;padding:0;display:flex;position:static}.main-nav a{border-radius:var(--radius-pill);color:var(--color-ink);padding:.45rem .7rem;font-size:.925rem;font-weight:400;display:block}.main-nav a[aria-current=page]{background:var(--color-accent-soft)}.main-nav .tab-icon,.main-nav .nav-home{display:none}.site-header .account-menu{margin-left:0}}.account-menu{flex:none;position:relative}.account-menu summary{cursor:pointer;border-radius:50%;list-style:none}.account-menu summary::-webkit-details-marker{display:none}.account-menu ul{z-index:20;background:var(--color-surface);border:1px solid var(--color-line);border-radius:16px;min-width:12rem;margin:0;padding:.4rem;list-style:none;position:absolute;top:calc(100% + .5rem);right:0;box-shadow:0 18px 40px -18px #241b3a59}.account-menu a,.account-menu button{width:100%;min-height:2.75rem;color:var(--color-ink);text-align:left;background:0 0;border:0;border-radius:10px;padding:.65rem .8rem;font-size:.95rem;font-weight:500;text-decoration:none;display:block}.account-menu a:hover,.account-menu button:hover{background:var(--color-accent-soft)}.eyebrow{font-family:var(--font-body);letter-spacing:.13em;text-transform:uppercase;color:var(--color-ink-soft);margin:0 0 .5rem;font-size:.72rem;font-weight:700}.muted{color:var(--color-ink-soft);font-size:.9rem}.byline{color:var(--color-ink-soft);margin:.15rem 0 .6rem;font-style:italic}.face{border:2px solid var(--color-surface);object-fit:cover;border-radius:50%;place-items:center;width:1.85rem;height:1.85rem;font-size:.7rem;font-weight:700;display:inline-grid}.face-me{border:0;width:2.25rem;height:2.25rem;font-size:.8rem}.button-link{border-radius:var(--radius-pill);background:var(--color-accent);min-height:2.75rem;color:var(--color-on-accent);justify-content:center;align-items:center;padding:0 1.25rem;text-decoration:none;display:inline-flex}.button-quiet{color:var(--color-accent);border:1.5px solid var(--color-line);background:0 0}.squiggle{width:5.75rem;height:.65rem;margin-top:.5rem;display:block}.squiggle path{fill:none;stroke:var(--color-accent);stroke-width:2px;stroke-linecap:round}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}ul:has(>li>:is(h2,h3)){gap:.75rem;margin:1rem 0;padding:0;list-style:none;display:grid}li:has(>:is(h2,h3)){background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-card);padding:1rem}li:has(>:is(h2,h3))>:last-child{margin-bottom:0}.card{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-card);padding:1rem;position:relative}.card>:last-child{margin-bottom:0}.stretched-link:after{content:"";border-radius:var(--radius-card);position:absolute;inset:0}.stretched-link:focus-visible{outline:none}.stretched-link:focus-visible:after{outline:2px solid var(--color-accent);outline-offset:2px}.card:has(.stretched-link:hover){border-color:var(--color-accent)}.above-link{z-index:1;position:relative}.card-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-top:1rem;display:flex}.book-cover{aspect-ratio:2/3;object-fit:cover;border-radius:3px 8px 8px 3px;width:100%;display:block;box-shadow:inset 4px 0 #0000002e,0 6px 14px -6px #00000059}.book-cover-plain{background:var(--color-accent);color:var(--color-on-accent);flex-direction:column;justify-content:space-between;padding:.6rem .5rem .5rem .75rem;display:flex;overflow:hidden}.book-cover-plain b{font-family:var(--font-display);font-weight:var(--font-display-weight);font-size:.75rem;line-height:1.1}.book-cover-plain small{letter-spacing:.08em;text-transform:uppercase;opacity:.85;font-size:.55rem}.books-tabs{border:1px solid var(--color-line);border-radius:var(--radius-pill);background:var(--color-surface);gap:.2rem;margin-top:1.25rem;padding:.2rem;display:inline-flex}.books-tabs a{border-radius:var(--radius-pill);color:var(--color-ink-soft);padding:.35rem .9rem;font-size:.875rem;font-weight:600;text-decoration:none}.books-tabs a[aria-current=page]{background:var(--color-accent-soft);color:var(--color-accent)}.timeline{--rail-x:.5rem;--rail-gap:1.9rem;padding-left:var(--rail-gap);gap:1.75rem;display:grid;position:relative}.timeline:before{content:"";left:calc(var(--rail-x) - 1px);background:var(--color-line);border-radius:1px;width:2px;position:absolute;top:.6rem;bottom:.5rem}.timeline ol{gap:.35rem;margin:0;padding:0;list-style:none;display:grid}.timeline-upcoming,.timeline-year{gap:.75rem;display:grid}.timeline-upcoming>p{margin:0}.timeline-label{align-items:baseline;gap:.6rem;margin:0;font-size:1.5rem;display:flex;position:relative}.timeline-label span{font-family:var(--font-body);letter-spacing:0;color:var(--color-ink-soft);font-size:.85rem;font-weight:400}.timeline-label:before{content:"";left:calc(var(--rail-x) - var(--rail-gap) - .45rem);border:2px solid var(--color-ink-soft);background:var(--color-paper);border-radius:50%;width:.9rem;height:.9rem;margin-top:-.45rem;position:absolute;top:50%}.timeline-cards{gap:.75rem}.timeline-edit{margin:.4rem 0 0 .25rem;font-size:.9rem;display:inline-block}.timeline-today{border-radius:var(--radius-pill);background:var(--color-accent-soft);color:var(--color-accent);font:500 .75rem/1 var(--font-stamp);letter-spacing:.1em;text-transform:uppercase;justify-self:start;align-items:center;gap:.5rem;margin:0;padding:.35rem .8rem;display:flex;position:relative}.timeline-today span{color:var(--color-ink);letter-spacing:.04em}.timeline-today:before{content:"";left:calc(var(--rail-x) - var(--rail-gap) - .5rem);background:var(--color-accent);width:1rem;height:1rem;box-shadow:0 0 0 4px var(--color-paper);border-radius:50%;margin-top:-.5rem;position:absolute;top:50%}.timeline-entry{border-radius:14px;grid-template-columns:2.6rem 2.6rem minmax(0,1fr);align-items:center;gap:.85rem;padding:.55rem .6rem;display:grid;position:relative}.timeline-entry:not(:has(.timeline-cover)){grid-template-columns:2.6rem minmax(0,1fr)}.timeline-entry:hover,.timeline-entry:focus-within{background:var(--color-surface)}.timeline-entry:focus-within{outline:2px solid var(--color-accent);outline-offset:2px}.timeline-entry:before{content:"";left:calc(var(--rail-x) - var(--rail-gap) - .3rem);background:var(--color-ink-soft);width:.6rem;height:.6rem;box-shadow:0 0 0 3px var(--color-paper);border-radius:50%;margin-top:-.3rem;position:absolute;top:50%}.timeline-entry .stretched-link:after{border-radius:14px}.date-stamp{justify-items:center;line-height:1;display:grid}.date-stamp span{font:500 .68rem/1 var(--font-stamp);letter-spacing:.1em;text-transform:uppercase;color:var(--color-accent)}.date-stamp b{font-family:var(--font-display);font-weight:var(--font-display-weight);margin-top:.2rem;font-size:1.45rem}.timeline-cover .book-cover-plain{padding:.3rem}.timeline-cover .book-cover-plain b{font-size:.45rem}.timeline-cover .book-cover-plain small{display:none}.timeline-text h4{font-family:var(--font-display);font-weight:var(--font-display-weight);letter-spacing:var(--font-display-tracking);margin:0;font-size:1.05rem;line-height:1.25}.timeline-text h4 a{color:var(--color-ink);text-decoration:none}.timeline-text p{margin:.1rem 0 0;font-size:.85rem}.meeting-card{gap:1rem;display:grid}.meeting-card-top{grid-template-columns:5.5rem minmax(0,1fr);align-items:start;gap:.9rem;display:grid}.meeting-card-top:not(:has(.book-cover)){grid-template-columns:minmax(0,1fr)}.meeting-card h2{margin:0;font-size:1.25rem}.meeting-card h2 a{color:inherit;text-decoration:none}.facts{gap:.25rem;margin:0;font-size:.9rem;display:grid}.facts>div{gap:.5rem;display:flex}.facts dt{width:2.75rem;color:var(--color-ink-soft);flex:none}.facts dd{min-width:0;margin:0}.rsvp-buttons{grid-template-columns:1.25fr 1fr 1fr;gap:.5rem;display:grid}.rsvp-buttons button{padding:0 .5rem}.rsvp-buttons button[aria-pressed=true]{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-accent)}.rsvp [role=alert]{margin:.5rem 0 0}.going{color:var(--color-ink-soft);align-items:center;gap:.6rem;font-size:.875rem;display:flex}.faces{display:flex}.faces .face+.face{margin-left:-.5rem}.rsvp-groups{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:1rem;display:grid}.meeting-page .card{gap:1rem;display:grid}.meeting-page .card h2,.meeting-page .card p{margin:0}.rsvp-groups h3{margin-bottom:.35rem;font-size:1rem}.rsvp-groups ul{gap:.2rem;margin:0;padding:0;font-size:.95rem;list-style:none;display:grid}.poll-card h2{margin-bottom:.75rem;font-size:1.2rem}.ballot{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.ballot li{border:1.5px solid var(--color-line);border-radius:14px;flex-wrap:wrap;align-items:baseline;column-gap:.5rem;padding:.65rem .85rem;display:flex}.ballot li.ballot-mine{border-color:var(--color-accent);background:var(--color-accent-soft)}.ballot-title{font-weight:600}.ballot-author{color:var(--color-ink-soft);font-size:.875rem}.ballot-tag{color:var(--color-accent);margin-left:auto;font-size:.75rem;font-weight:700}.genre-picker>p{margin:0}.genre-chips{flex-wrap:wrap;gap:.45rem;display:flex}.genre-chips .chip:disabled{opacity:.45;cursor:not-allowed}.back-link{margin:1.25rem 0 0;font-size:.9rem}.suggest-search{gap:.4rem;margin-bottom:1.25rem;display:grid}.suggest-hint{color:var(--color-ink-soft);margin:0;font-size:.85rem}.suggest-hint.is-error{color:var(--color-danger)}.candidate-list{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.candidate{grid-template-columns:3.5rem minmax(0,1fr) auto;align-items:center;gap:.85rem;display:grid}.candidate h2{margin:0;font-size:1.05rem;line-height:1.2}.candidate .byline{margin:.1rem 0 .15rem}.candidate-meta,.candidate-note{color:var(--color-ink-soft);font-variant-numeric:tabular-nums;margin:0;font-size:.82rem}.candidate-note{color:var(--color-accent);margin-top:.3rem;font-weight:600}.candidate-pick{min-height:2.25rem;padding:0 1rem;font-size:.88rem}.suggest-manual{text-align:center;color:var(--color-ink-soft);margin:1.25rem 0 0;font-size:.92rem}.text-button{min-height:0;color:var(--color-accent);font-size:inherit;text-underline-offset:.15em;background:0 0;border:0;padding:0;text-decoration:underline}.manual-book{margin-top:0}.manual-book-head h2{margin:0;font-size:1.2rem}.manual-book-head p{margin:.25rem 0 0}.manual-book-pair{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.manual-book-pair>div{gap:.35rem;display:grid}.manual-book-actions{flex-wrap:wrap;gap:.6rem;display:flex}.manual-book-actions button{flex:auto}.suggest-done{grid-template-columns:5rem minmax(0,1fr);align-items:start;gap:1.1rem;margin-top:1.5rem;display:grid}.suggest-done h1{margin:0 0 .4rem;font-size:1.6rem}.suggest-done-actions{flex-wrap:wrap;gap:.6rem;margin-top:1rem;display:flex}.meeting-admin{flex-wrap:wrap;gap:.5rem;margin:.25rem 0 1.25rem;display:flex}.meeting-admin .button-link,.meeting-admin>button{min-height:2.4rem;font-size:.9rem}.meeting-admin [role=alert]{flex-basis:100%;margin:0}.meeting-admin-confirm{gap:.75rem;margin:.25rem 0 1.25rem;display:grid}.meeting-admin-confirm p{margin:0}.meeting-admin-buttons{flex-wrap:wrap;gap:.5rem;display:flex}.meeting-cancelled{border-color:var(--color-danger);color:var(--color-danger);font-weight:600}.badge-cancelled{background:var(--color-danger);color:var(--color-paper);margin:0 0 .4rem;display:inline-block}.meeting-card.is-cancelled .meeting-card-top,.timeline-entry.is-cancelled .timeline-cover,.timeline-entry.is-cancelled .timeline-text h4{opacity:.55}.timeline-entry.is-cancelled .timeline-text h4{text-decoration:line-through}.add-to-calendar{flex-wrap:wrap;align-items:center;gap:.5rem;margin:0 0 1.5rem;display:flex}.add-to-calendar-label{margin-right:.25rem;font-size:.9rem;font-weight:600}.add-to-calendar .button-link,.add-to-calendar button{min-height:2.4rem;padding:0 1rem;font-size:.88rem}.poll-intro{margin:0 0 1rem}.poll-books{gap:.85rem;margin:0;padding:0;list-style:none;display:grid}.poll-book,.poll-result{grid-template-columns:4.5rem minmax(0,1fr);align-items:start;gap:.9rem;transition:border-color .15s,box-shadow .15s;display:grid}.poll-book.is-picked{border-color:var(--color-accent);box-shadow:0 0 0 1px var(--color-accent)}.poll-book h2,.poll-result h2{margin:0;font-size:1.15rem;line-height:1.2}.poll-book h2{padding-right:5.5rem}.poll-book .byline,.poll-result .byline{margin:.15rem 0 .25rem}.poll-book-meta{color:var(--color-ink-soft);font-variant-numeric:tabular-nums;margin:0 0 .6rem;font-size:.85rem}.poll-synopsis p{margin:0 0 .6rem;font-size:.92rem;line-height:1.5}.poll-synopsis.is-clamped{-webkit-line-clamp:1;line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.poll-synopsis.is-clamped p{margin:0;display:inline}.poll-synopsis.is-clamped p+p:before{content:" "}.poll-more{min-height:0;color:var(--color-accent);background:0 0;border:0;padding:0;font-size:.85rem;font-weight:600}.poll-book-links{flex-wrap:wrap;align-items:baseline;gap:.35rem 1rem;margin-top:.3rem;font-size:.85rem;display:flex}.poll-vote{border:1.5px solid var(--color-line);border-radius:var(--radius-pill);color:var(--color-accent);cursor:pointer;align-items:center;gap:.4rem;padding:.35rem .75rem .35rem .55rem;font-size:.82rem;font-weight:700;display:inline-flex;position:absolute;top:.85rem;right:.85rem}.poll-vote input{accent-color:var(--color-accent);margin:0}.poll-book.is-picked .poll-vote{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-accent)}.poll-vote:has(input:disabled){opacity:.5;cursor:not-allowed}.poll-vote:has(input:focus-visible){outline:2px solid var(--color-accent);outline-offset:2px}.poll-submit{bottom:calc(.75rem + max(var(--tab-bar-space), env(safe-area-inset-bottom)));z-index:5;justify-items:end;gap:.5rem;margin-top:1rem;display:grid;position:sticky}.poll-submit .pick-bar{margin:0;position:static}.poll-submit-note{background:var(--color-surface);border:1px solid var(--color-danger);color:var(--color-danger);border-radius:12px;margin:0;padding:.5rem .85rem;font-size:.875rem}.poll-result.is-top{border-color:var(--color-pop);box-shadow:0 0 0 1px var(--color-pop)}.poll-result-tag{letter-spacing:.1em;text-transform:uppercase;color:var(--color-ink-soft);margin:0 0 .25rem;font-size:.72rem;font-weight:700}.poll-result-bar{border-radius:var(--radius-pill);background:var(--color-accent-soft);height:.5rem;margin:.5rem 0 .4rem;overflow:hidden}.poll-result-bar span{border-radius:inherit;background:var(--color-accent);height:100%;display:block}.poll-result.is-top .poll-result-bar span{background:var(--color-pop)}.poll-result-count{font-variant-numeric:tabular-nums;align-items:center;gap:.5rem;margin:0;font-size:.9rem;font-weight:600;display:flex}@media (width>=40rem){.poll-book,.poll-result{grid-template-columns:6rem minmax(0,1fr);gap:1.25rem;padding:1.25rem}}.poll-admin{flex-wrap:wrap;gap:.5rem;margin:0 0 1.25rem;display:flex}.poll-admin .button-link,.poll-admin>button{min-height:2.4rem;font-size:.9rem}.poll-admin-confirm{gap:.75rem;width:100%;display:grid}.poll-admin-confirm p{margin:0}.poll-admin-buttons{flex-wrap:wrap;gap:.5rem;display:flex}.poll-assigned{margin:.6rem 0 0;font-size:.88rem}.assign-book{flex-wrap:wrap;gap:.5rem;margin:.75rem 0 0;display:flex}.assign-book select{flex:12rem;width:auto;min-height:2.4rem;font-size:.9rem}.assign-book button{min-height:2.4rem}.assign-book [role=alert]{flex-basis:100%;margin:0}.poll-edit-books{gap:.4rem;margin:0;padding:0;list-style:none;display:grid}.poll-edit-add{align-items:center;gap:.6rem;font-size:.95rem;font-weight:400;display:flex}.landing-hello{margin:1.5rem 0 1.25rem}.landing-hello h1{margin:0;font-size:2rem}.landing-grid,.landing-column{align-content:start;gap:1.75rem;display:grid}.landing-column{grid-template-columns:minmax(0,1fr);min-width:0}.section-head{justify-content:space-between;align-items:baseline;gap:.75rem;margin-bottom:.6rem;display:flex}.section-head h2{margin:0}.section-head a{font-size:.9rem;text-decoration:none}.suggestion-list{gap:.5rem;margin:0 0 .85rem;padding:0;list-style:none;display:grid}.suggestion-list li{background:var(--color-surface);border:1px solid var(--color-line);border-radius:16px;gap:.1rem;padding:.8rem 1rem;display:grid}.suggestion-title{font-family:var(--font-display);font-weight:var(--font-display-weight);font-size:1.05rem;line-height:1.25}.shelf{border-bottom:6px solid var(--color-ink);border-radius:0 0 3px 3px;align-items:flex-end;gap:.25rem;margin:0;padding:0 .4rem;list-style:none;display:flex;overflow:hidden}.spine{writing-mode:vertical-rl;font-family:var(--font-display);font-weight:var(--font-display-weight);border-radius:2px 2px 0 0;flex:none;align-items:center;padding:.5rem 0;font-size:.7rem;line-height:1;display:flex;overflow:hidden;transform:rotate(180deg)}.spine span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.spine-0{background:var(--color-accent);color:var(--color-on-accent)}.spine-1{background:var(--color-highlight);color:var(--color-ink)}.spine-2{background:var(--color-ink);color:var(--color-paper)}.spine-3{background:var(--color-pop);color:var(--color-on-pop)}.spine-4{background:var(--color-accent-soft);color:var(--color-ink)}.spine-5{background:var(--color-surface);color:var(--color-ink);border:1px solid var(--color-line)}.shelf-caption{margin:.5rem 0 0}.welcome{justify-items:start;gap:.5rem;padding-top:3rem;display:grid}.welcome .logo-mark{width:3.5rem;height:3.5rem}.welcome .logo-word{display:none}.welcome h1{margin:.5rem 0 0;font-size:2.4rem}.meeting-page{gap:1.5rem;padding-top:1rem;display:grid}.meeting-page>p{margin:0}.meeting-header{grid-template-columns:7rem minmax(0,1fr);align-items:end;gap:1rem;display:grid}.meeting-header:not(:has(.book-cover)){grid-template-columns:minmax(0,1fr)}.meeting-header h1{margin:0}.facts-large{gap:.6rem;font-size:1rem}.facts-large dt{width:3.5rem}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:.75rem 1rem;margin:1.5rem 0 1rem;display:flex}.page-head h1{margin:0}.page-head p{margin:.25rem 0 0}.notice{background:var(--color-accent-soft);border-radius:14px;padding:.75rem 1rem}.catalog{gap:1rem;display:grid}.catalog-filters{gap:.75rem;min-width:0;display:grid}.search{display:block;position:relative}.search input[type=search]{border-radius:var(--radius-pill);padding-left:2.5rem}.search-icon{fill:none;width:1.05rem;height:1.05rem;stroke:var(--color-ink-soft);stroke-width:2px;stroke-linecap:round;pointer-events:none;position:absolute;top:50%;left:.9rem;transform:translateY(-50%)}.filter-groups{scrollbar-width:none;margin:0 calc(-1 * var(--gutter));padding:.1rem var(--gutter);gap:.4rem;display:flex;position:relative;overflow-x:auto}.filter-groups>div{flex:none;gap:.4rem;display:flex}.filter-groups .filter-label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.filter-label{letter-spacing:.13em;text-transform:uppercase;color:var(--color-ink-soft);font-size:.72rem;font-weight:700}.chip{border-radius:var(--radius-pill);white-space:nowrap;flex:none;min-height:2.25rem;padding:0 .9rem;font-size:.85rem}.chip[aria-pressed=true]{background:var(--color-ink);border-color:var(--color-ink);color:var(--color-paper)}.sort{align-items:center;gap:.6rem;display:flex}.sort label{flex:none}.sort-controls{flex:1;gap:.5rem;min-width:0;display:flex}.sort-controls select{border-radius:var(--radius-pill);flex:1;min-width:0;font-size:.9rem;font-weight:600}.sort-order{flex:none;width:2.75rem;padding:0;font-size:1.05rem}.catalog-results{min-width:0}.catalog-list{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.catalog-card{background:var(--color-surface);border:1px solid var(--color-line);border-radius:18px;grid-template-columns:4.5rem minmax(0,1fr);align-items:start;gap:.9rem;padding:.9rem;display:grid;position:relative}.catalog-card-picked{border-color:var(--color-accent);box-shadow:0 0 0 1px var(--color-accent)}.catalog-card-text{min-width:0}.catalog-card h2{margin:0;font-size:1.1rem;line-height:1.2}.catalog-card:has(.catalog-card-check) h2{padding-right:2rem}.catalog-card .byline{margin:.15rem 0 .3rem}.catalog-card-meta{color:var(--color-ink-soft);font-variant-numeric:tabular-nums;margin:0 0 .5rem;font-size:.85rem}.catalog-card-foot{color:var(--color-ink-soft);flex-wrap:wrap;align-items:center;gap:.35rem .5rem;font-size:.82rem;display:flex}.catalog-card .face{width:1.5rem;height:1.5rem;font-size:.6rem}.catalog-card-check{position:absolute;top:.9rem;right:.9rem}.catalog-card-actions{flex-wrap:wrap;align-items:center;gap:.35rem 1rem;margin-top:.5rem;display:flex}.catalog-card-edit{font-size:.82rem;font-weight:600;display:inline-block}.catalog-card-withdraw{min-height:0;color:var(--color-accent);text-underline-offset:.15em;background:0 0;border:0;padding:0;font-size:.82rem;text-decoration:underline}.catalog-card-confirm{flex-basis:100%;gap:.5rem;font-size:.88rem;display:grid}.catalog-card-confirm p{margin:0}.catalog-card-confirm-buttons{flex-wrap:wrap;gap:.5rem;display:flex}.catalog-card-confirm-buttons button{min-height:2.25rem;padding:0 .9rem;font-size:.85rem}.badges{flex-wrap:wrap;gap:.35rem;margin:.5rem 0 0;display:flex}.badge{border-radius:var(--radius-pill);align-items:center;padding:.1rem .55rem;font-size:.72rem;font-weight:700;display:inline-flex}.badge-ballot{background:var(--color-pop);color:var(--color-on-pop)}.badge-mine{background:var(--color-accent-soft);color:var(--color-accent)}.catalog-empty{justify-items:start;gap:.75rem;display:grid}.pick-bar{bottom:calc(.75rem + max(var(--tab-bar-space), env(safe-area-inset-bottom)));z-index:5;background:var(--color-ink);width:fit-content;max-width:100%;color:var(--color-paper);border-radius:var(--radius-pill);align-items:center;gap:.4rem;margin:1rem 0 0 auto;padding:.3rem .3rem .3rem .9rem;display:flex;position:sticky;box-shadow:0 12px 28px -12px #241b3a99}.pick-bar p{white-space:nowrap;margin:0 .25rem 0 0;font-size:.85rem}.pick-bar button{min-height:2.25rem;padding:0 .9rem;font-size:.85rem}.pick-bar .pick-bar-clear{color:inherit;border-color:#0000}.email-settings{margin-top:1.5rem}.email-settings h2{margin:0 0 .75rem;font-size:1.15rem}.email-settings ul{gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.email-settings label{align-items:center;gap:.6rem;font-size:.95rem;font-weight:400;display:flex}.email-settings>p:last-child{margin:.75rem 0 0}.unsubscribe-page{justify-items:start;gap:.25rem;max-width:32rem;margin-top:1.5rem;display:grid}.page-head-actions{flex-wrap:wrap;gap:.5rem;display:flex}.manage-page section{margin-top:1.75rem}.manage-section-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.manage-section-head h2{margin:0}.manage-list{gap:.5rem;margin:.75rem 0 0;padding:0;list-style:none;display:grid}.manage-row{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-card);flex-wrap:wrap;align-items:center;gap:.75rem;padding:.75rem .9rem;display:flex}.manage-row-text{flex:10rem;justify-items:start;gap:.1rem;min-width:0;display:grid}.manage-row-text .muted{overflow-wrap:anywhere;font-size:.85rem}.manage-row-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.manage-row-actions>button{min-height:2.25rem;padding:0 .9rem;font-size:.85rem}.manage-row-actions [role=alert]{flex-basis:100%;margin:0}.manage-confirm{gap:.5rem;font-size:.88rem;display:grid}.manage-confirm p{margin:0}.manage-confirm-buttons{flex-wrap:wrap;gap:.5rem;display:flex}.manage-confirm-buttons button{min-height:2.25rem;padding:0 .9rem;font-size:.85rem}.manage-row:has(.manage-confirm) .manage-row-actions{flex-basis:100%}.member-list{grid-template-columns:minmax(0,1fr);gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.member-list>li{display:grid}.member-card{text-align:center;align-content:start;justify-items:center;gap:.75rem;padding:1.25rem .75rem 1rem;display:grid}.member-card .avatar{aspect-ratio:1;width:min(7.5rem,80%);height:auto;font-size:2.1rem}.member-card-text{min-width:0}.member-card h2{margin:0;font-size:1.1rem}.member-card h2 button{all:unset;cursor:pointer}.member-card .muted{margin:.2rem 0 0;font-size:.82rem}.member-card .social-links{justify-content:center;margin:.25rem 0 0}.you-badge{border-radius:var(--radius-pill);background:var(--color-accent-soft);color:var(--color-accent);font-family:var(--font-body);letter-spacing:0;vertical-align:.2em;margin-left:.4rem;padding:.05rem .5rem;font-size:.7rem;font-weight:700;display:inline-block}.social-links{flex-wrap:wrap;gap:.1rem;margin:.35rem 0 0 -.5rem;padding:0;list-style:none;display:flex}.social-links a{width:2.5rem;height:2.5rem;color:var(--color-ink-soft);border-radius:50%;place-items:center;display:grid}.social-links a:hover{background:var(--color-accent-soft);color:var(--color-accent)}.social-icon{fill:currentColor;flex:none;width:1.15rem;height:1.15rem}.avatar{object-fit:cover;border-radius:50%;place-items:center;width:3.5rem;height:3.5rem;font-size:1.1rem;font-weight:700;display:grid}.avatar-large{width:7.5rem;height:7.5rem;font-size:2.25rem}.avatar-color-0{background:var(--avatar-0);color:var(--on-avatar-0)}.avatar-color-1{background:var(--avatar-1);color:var(--on-avatar-1)}.avatar-color-2{background:var(--avatar-2);color:var(--on-avatar-2)}.avatar-color-3{background:var(--avatar-3);color:var(--on-avatar-3)}.avatar-color-4{background:var(--avatar-4);color:var(--on-avatar-4)}.avatar-color-5{background:var(--avatar-5);color:var(--on-avatar-5)}.avatar-color-6{background:var(--avatar-6);color:var(--on-avatar-6)}.avatar-color-7{background:var(--avatar-7);color:var(--on-avatar-7)}.scrim{z-index:30;background:#140c1e80;position:fixed;inset:0}.member-details{z-index:31;overscroll-behavior:contain;max-height:88dvh;padding:1.5rem max(var(--gutter), env(safe-area-inset-right)) calc(1.5rem + env(safe-area-inset-bottom)) max(var(--gutter), env(safe-area-inset-left));background:var(--color-surface);border-radius:24px 24px 0 0;gap:1.1rem;display:grid;position:fixed;bottom:0;left:0;right:0;overflow-y:auto;box-shadow:0 -20px 50px -30px #00000080}.close-button{background:var(--color-paper);border:0;width:2.5rem;min-height:2.5rem;padding:0;font-size:1.4rem;line-height:1;position:absolute;top:.9rem;right:.9rem}.member-details-head{justify-items:start;gap:.5rem;display:grid}.member-details-head h2{margin:0;padding-right:3rem;font-size:1.6rem}.member-details-head p{margin:-.25rem 0 0}.member-details section h3{margin:0 0 .4rem}.quick-actions{gap:.5rem;display:flex}.quick-actions a{border:1.5px solid var(--color-line);background:var(--color-paper);min-height:3rem;color:var(--color-ink);border-radius:14px;flex:1;place-items:center;text-decoration:none;display:grid}.venmo-button{gap:.5rem}.detail-rows{border:1px solid var(--color-line);border-radius:16px;margin:0;padding:0;list-style:none;overflow:hidden}.detail-rows li{border-top:1px solid var(--color-line);align-items:center;gap:.75rem;min-height:3.25rem;padding:.6rem .85rem;display:flex}.detail-rows li:first-child{border-top:0}.detail-rows .social-icon{color:var(--color-ink-soft)}.detail-text{overflow-wrap:anywhere;min-width:0;color:var(--color-ink);flex:1;font-weight:500;text-decoration:none;display:grid}.detail-text small{color:var(--color-ink-soft);font-size:.72rem;font-weight:600}.copy-button{background:var(--color-paper);flex:none;min-height:2rem;padding:0 .8rem;font-size:.8rem}.member-details>.button-link{justify-self:start}@media (prefers-reduced-motion:no-preference){.member-details{animation:.22s ease-out sheet-up}@keyframes sheet-up{0%{opacity:.5;transform:translateY(2.5rem)}}}form{gap:1rem;margin:1rem 0;display:grid}form>div{gap:.35rem;display:grid}label,legend{font-size:.9rem;font-weight:600}fieldset{border:1px solid var(--color-line);border-radius:var(--radius-card);gap:.75rem;margin:0;padding:1rem;display:grid}legend{padding:0 .35rem}input:not([type=checkbox],[type=radio]),select,textarea{width:100%;min-height:2.75rem;font:inherit;color:var(--color-ink);background:var(--color-surface);border:1.5px solid var(--color-line);border-radius:var(--radius-field);padding-block:.6rem;padding-inline:.8rem;font-size:1rem}textarea{resize:vertical;min-height:6rem}select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--color-ink-soft) 50%), linear-gradient(135deg, var(--color-ink-soft) 50%, transparent 50%);cursor:pointer;background-position:calc(100% - 1.15rem),calc(100% - .8rem);background-repeat:no-repeat;background-size:.35rem .35rem;padding-right:2.25rem}input:focus-visible,select:focus-visible,textarea:focus-visible{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-soft);outline:none}input[type=checkbox],input[type=radio]{accent-color:var(--color-accent);width:1.15rem;height:1.15rem}button{font:inherit;border-radius:var(--radius-pill);border:1.5px solid var(--color-line);background:var(--color-surface);min-height:2.75rem;color:var(--color-ink);cursor:pointer;padding:0 1.25rem;font-weight:600}button[type=submit]{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-accent)}form>button[type=submit]{justify-self:stretch}.button-primary{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-accent)}button:disabled{opacity:.6;cursor:progress}@media (width>=40rem){h1{font-size:2.25rem}form>button[type=submit]{justify-self:start}.landing-hello h1{font-size:2.6rem}.meeting-card-top{grid-template-columns:7rem minmax(0,1fr)}.meeting-card h2{font-size:1.45rem}.meeting-header{grid-template-columns:9rem minmax(0,1fr)}.card{padding:1.25rem}.catalog-list{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-card{grid-template-columns:5rem minmax(0,1fr)}.member-list{grid-template-columns:repeat(3,minmax(0,1fr))}.member-details{border-radius:24px;width:min(30rem,100vw - 2rem);max-height:86dvh;padding:1.75rem;animation:none;inset:50% auto auto 50%;transform:translate(-50%,-50%)}}@media (width>=56rem){.landing-grid{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:2.5rem}.catalog{grid-template-columns:15rem minmax(0,1fr);align-items:start;gap:2rem}.catalog-filters{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-card);gap:1.1rem;padding:1rem;position:sticky;top:5rem}.filter-groups{flex-direction:column;gap:1.1rem;margin:0;padding:0;overflow:visible}.filter-groups>div{flex-wrap:wrap;flex:initial}.filter-groups .filter-label{clip-path:none;flex-basis:100%;width:auto;height:auto;position:static}.sort{flex-direction:column;align-items:stretch;gap:.4rem}.chip{white-space:normal;text-align:left}.member-list{grid-template-columns:repeat(4,minmax(0,1fr))}}.button-outline{color:var(--color-ink);border:1px solid var(--color-line);background:0 0}.up-next{border-radius:var(--radius-card);background:var(--color-ink);color:var(--color-paper);flex-wrap:wrap;align-items:center;gap:1.5rem;margin:1.5rem 0 2.5rem;padding:1.5rem;display:flex}.up-next-cover{flex:none;width:6rem}.up-next-text{flex:18rem;min-width:0}.up-next-text h2{margin:.75rem 0 .25rem;font-size:2.2rem}.up-next-text p{opacity:.85;margin:0}.up-next .up-next-tag{border-radius:var(--radius-pill);background:var(--color-pop);color:var(--color-on-pop);font-family:var(--font-stamp);letter-spacing:.06em;text-transform:uppercase;opacity:1;padding:.25rem .75rem;font-size:.75rem;display:inline-block}.up-next-link{background:var(--color-paper);color:var(--color-ink);flex:none;font-weight:700}.shelf-layout{flex-wrap:wrap;align-items:flex-start;gap:2rem;display:flex}.shelves{flex:999 36rem;min-width:0}.read-shelf{margin-bottom:2.75rem}.shelf-head{flex-wrap:wrap;align-items:baseline;gap:.25rem .9rem;padding:0 .4rem;display:flex}.shelf-head h2{color:var(--color-accent);margin:0;font-size:2rem}.shelf-head p{margin:0}.shelf-scroll{overflow-x:auto}.shelf-row{align-items:flex-end;gap:3px;min-width:max-content;padding:3.5rem 1.75rem 0;display:flex}.shelf-plank{background:#7a5068;border-bottom:7px solid #4e3445;border-radius:4px;height:1rem}.bookend{flex:none;margin-left:.75rem}.book-spine{font:inherit;cursor:pointer;transform-origin:50% 100%;border:0;border-radius:3px 3px 2px 2px;flex-direction:column;flex:none;align-items:center;gap:6px;padding:10px 0 8px;display:flex;position:relative;box-shadow:inset -4px 0 #00000029,inset 2px 0 #ffffff24}.book-spine:focus-visible{outline:3px solid var(--color-accent);outline-offset:3px}.book-spine.is-picked{z-index:1;transform:translateY(-46px)rotate(-7deg)scale(1.06);box-shadow:inset -4px 0 #00000029,inset 2px 0 #ffffff24,10px 22px 22px -10px #241b3a73}@media (prefers-reduced-motion:no-preference){.book-spine{transition:transform .5s cubic-bezier(.34,1.7,.5,1),box-shadow .5s}.book-spine:not(.is-picked):hover{transform:translateY(-8px)}}.book-spine-band{opacity:.55;border-top:2px solid;width:70%}.book-spine-title{writing-mode:vertical-rl;white-space:nowrap;text-overflow:ellipsis;min-height:0;font-family:var(--font-display);font-weight:var(--font-display-weight);flex:auto;font-size:13px;line-height:1;overflow:hidden}.book-spine-month{font-family:var(--font-stamp);letter-spacing:.04em;text-transform:uppercase;font-size:9px}.book-spine-flag{border-radius:var(--radius-pill);background:var(--color-pop);color:var(--color-on-pop);font-family:var(--font-stamp);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;padding:.2rem .55rem;font-size:.62rem;position:absolute;top:-2rem;left:50%;transform:translate(-50%)}.shelf-aside{flex:18rem;min-width:0;position:sticky;top:5.25rem}.book-details h2{margin:.35rem 0 0;font-size:1.6rem}.book-details h3{font-family:var(--font-body);letter-spacing:0;margin:1.25rem 0 .25rem;font-size:.95rem}.book-details-head{align-items:flex-start;gap:1.1rem;display:flex}.book-details-cover{flex:none;width:5.25rem}.book-details-when{font-family:var(--font-stamp);letter-spacing:.06em;text-transform:uppercase;color:var(--color-accent);margin:0;font-size:.75rem}.book-details-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:1.25rem 0 0;display:grid}.book-details-facts div{border-radius:var(--radius-field);background:var(--color-paper);padding:.6rem .75rem}.book-details-facts dt{color:var(--color-ink-soft);font-size:.75rem}.book-details-facts dd{margin:.15rem 0 0;font-size:1.1rem;font-weight:700}.rating-stars{gap:.4rem;margin-top:.6rem;display:flex}.rating-star{border:1px solid var(--color-line);border-radius:var(--radius-field);background:var(--color-surface);width:2.75rem;height:2.75rem;color:var(--color-pop);padding:0;font-size:1.25rem}.book-details-links{flex-wrap:wrap;gap:.6rem;margin-top:1.4rem;display:flex}.page-error{justify-items:start;gap:.5rem;margin-top:1.5rem;display:grid}.page-error h1{margin:0;font-size:1.5rem}.sheet-backdrop{z-index:60;background:#241b3a73;align-items:flex-end;animation:.2s ease-out sheet-fade;display:flex;position:fixed;inset:0}.sheet{overscroll-behavior:contain;width:100%;max-height:85vh;padding:.5rem 1.25rem calc(1.25rem + env(safe-area-inset-bottom));background:var(--color-surface);border-radius:22px 22px 0 0;transition:transform .2s ease-out;animation:.25s ease-out sheet-up;position:relative;overflow-y:auto;box-shadow:0 -12px 30px -12px #241b3a66}.sheet:focus{outline:none}.sheet-handle{touch-action:none;background:linear-gradient(var(--color-line), var(--color-line)) center / 2.75rem .3rem no-repeat;border-radius:999px;width:100%;height:1.5rem;margin-bottom:.25rem}.sheet-close{border-color:#0000;width:2.25rem;min-height:2.25rem;padding:0;font-size:1rem;position:absolute;top:.6rem;right:.75rem}.sheet .book-details{background:0 0;border:0;padding:0}@keyframes sheet-up{0%{transform:translateY(100%)}}@keyframes sheet-fade{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.sheet,.sheet-backdrop{animation:none}}@media (width<=45rem){.shelf-aside{position:static}}.profile-photo{flex-wrap:wrap;align-items:center;gap:1rem 1.25rem;margin:1rem 0 1.5rem;display:flex}.profile-photo-controls{flex:14rem;justify-items:start;gap:.4rem;min-width:0;display:grid}.profile-photo-controls p{margin:0}.profile-photo-controls .muted{font-size:.85rem}
