/* The room begins with one real reading position, then the rest of the shelf. */
.library-page{--library-sidebar:212px;--cover-alice:#4c6657;--cover-meditations:#706c54;--cover-walden:#dcd8c4;--cover-private:#58665b}
.library-page #main{margin-left:var(--library-sidebar);transition:margin-left .2s ease}
.library-page #library-view{max-width:1150px;margin:0 auto;padding:44px 54px 64px}
.library-page .site-footer{display:none}
.room-heading{display:flex;align-items:baseline;gap:14px;margin-bottom:34px}
.room-heading h1{font:30px/1.5 var(--serif);letter-spacing:.02em;margin:0}
#room-count{font-size:13px;color:var(--muted)}
.library-page .status:empty{display:none}
.library-page #library-status:not(:empty){margin:0 0 20px;font-size:13px}
.library-page #library-retry{margin:0 0 20px;font-size:13px}
.library-page .library-workspace{display:block}
.library-page .library-main{min-width:0}
.library-page #reading-dashboard[hidden]{display:none}
.library-page #reading-dashboard{margin:0 0 36px}
.library-page .dashboard-loading{min-height:140px;padding-top:20px;font-size:14px;color:var(--muted)}
.library-page .today-panel{display:grid;grid-template-columns:137px minmax(0,1fr);align-items:start;gap:35px;padding:0;border:0;background:transparent;border-radius:0}
.library-page .today-copy{padding:0;min-width:0}
.library-page .today-label{font-size:12px;color:var(--muted);margin:0 0 9px;letter-spacing:0}
.library-page .today-copy h2{font:clamp(27px,2.7vw,35px)/1.5 var(--serif);margin:0 0 6px;overflow-wrap:anywhere;text-wrap:balance}
.library-page .today-author{font-size:13px;color:var(--muted);margin:0}
.library-page .today-description{font-size:13px;color:var(--muted);margin:19px 0 0;line-height:1.8}
.library-page .today-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:23px}
.library-page .today-actions .primary{width:auto;min-height:44px;padding:11px 20px;font-size:13px;gap:24px;transform:none}
.library-page .continue-cover{position:relative;display:flex;align-items:center;justify-content:center;width:137px;min-height:198px;padding:24px 15px 24px 22px;border-radius:1px 5px 5px 1px;background:var(--cover-private);color:#f2efe3;font:24px/1.7 var(--serif);text-align:center;box-shadow:2px 6px 12px #25311c12,inset 5px 0 3px #14201720;overflow-wrap:anywhere;text-wrap:balance;white-space:pre-line}
.library-page .continue-cover:before{content:'';position:absolute;inset:0 auto 0 7px;border-left:1px solid #f1f1e51c}
.library-page .continue-cover[data-cover=alice]{background:var(--cover-alice)}
.library-page .continue-cover[data-cover=meditations]{background:var(--cover-meditations)}
.library-page .continue-cover[data-cover=walden]{background:var(--cover-walden);color:#424d3d}
.library-page .room-excerpt{margin:22px 0 0;padding:0;max-width:520px}
.library-page .room-excerpt-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px;flex-wrap:wrap}
.library-page .room-excerpt-label{font:12px/1.6 var(--sans);color:var(--muted)}
.library-page .room-excerpt-toggle{font-size:12px;min-height:32px;padding:0;color:var(--accent)}
.library-page .room-excerpt-text{font:21px/1.9 var(--serif);text-wrap:pretty;white-space:pre-line;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:5;overflow:hidden;overflow-wrap:anywhere}
.library-page .room-excerpt[lang=en] .room-excerpt-text{font-family:Georgia,'Times New Roman',serif;line-height:1.7}
.library-page .room-excerpt-error{font-size:13px;color:var(--muted)}
.library-page .room-excerpt-retry{font-size:12px;min-height:36px;color:var(--accent)}
.library-page .book-reading-options{font-size:13px;min-width:0;max-width:100%}
.library-page .book-reading-options>summary{color:var(--muted);cursor:pointer;min-height:44px;padding:11px 0;list-style:none}
.library-page .book-reading-options>summary:after{content:'⌄';margin-left:7px}
.library-page .book-reading-options[open]{flex-basis:100%;border-top:1px solid var(--line);padding-top:5px}
.library-page .book-reading-options[open]>summary:after{content:'⌃'}
.library-page .book-reading-options-body{display:grid;gap:12px;padding:9px 0 5px}
.library-page .today-book-choice{width:100%;max-width:360px;font-size:14px;min-height:44px;background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:5px;padding:8px 12px}
.library-page .today-progress{font-size:13px;margin:0;color:var(--muted)}
.library-page .reading-goal{font-size:13px;display:flex;align-items:center;gap:10px}
.library-page .reading-goal select{font-size:14px;min-height:44px;background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:5px;padding:5px 10px}
.library-page .book-reading-options-body>.text-link{justify-self:start;font-size:13px}
.library-page .reading-write-status{font-size:13px}
.library-page .reading-write-status:empty{display:none}
.library-page .library-shelf.with-current{border-top:1px solid var(--line);padding-top:26px}
.library-page #shelf-title{font:22px/1.5 var(--serif);margin:0 0 24px}
.library-page .library-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,176px));gap:40px 37px;align-items:start}
.library-page .library-grid .book-card{display:flex;flex-direction:column;align-items:flex-start;min-width:0;gap:0;max-width:none}
.library-page .library-grid .book-art{display:block;height:auto;width:100%;aspect-ratio:.69;margin:0;background:transparent;border:0;border-radius:2px;overflow:visible;perspective:none}
.library-page .library-grid .book-art:after{display:none}
.library-page .library-grid .book-cover{position:relative;inset:auto;width:100%;height:100%;transform:none;border-radius:1px 5px 5px 1px;background:var(--cover-private);color:#f2efe3;box-shadow:2px 6px 12px #25311c12,inset 5px 0 3px #14201720;transition:transform .18s ease,box-shadow .18s ease}
.library-page .library-grid .book-art.alice .book-cover{background:var(--cover-alice)}
.library-page .library-grid .book-art.meditations .book-cover{background:var(--cover-meditations)}
.library-page .library-grid .book-art.walden .book-cover{background:var(--cover-walden);color:#424d3d}
.library-page .library-grid .book-art:hover .book-cover{transform:translateY(-3px);box-shadow:2px 9px 16px #25311c20}
.library-page .library-grid .book-cover:before{inset:0 auto 0 7px;border:0;border-left:1px solid currentColor;opacity:.15}
.library-page .library-grid .cover-inner{inset:20px 13px 18px 21px;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;text-align:left}
.library-page .library-grid .cover-inner strong{font:28px/1.5 var(--serif);color:inherit;overflow-wrap:anywhere;white-space:pre-line;text-wrap:balance}
.library-page .library-grid .cover-inner small{font:9px/1.6 Georgia,serif;letter-spacing:.03em;color:inherit;overflow-wrap:anywhere}
.library-page .library-grid .cover-inner small:last-child{font-size:11px;font-style:italic;letter-spacing:0}
.library-page .library-grid .cover-ornament{display:none}
.library-page .library-grid .book-meta{padding:18px 0 0;display:flex;flex-direction:column;width:100%;gap:0;min-width:0}
.library-page .library-grid .book-meta h3{font:21px/1.55 var(--serif);margin:0 0 6px;overflow-wrap:anywhere;text-wrap:balance}
.library-page .library-grid .book-author{font-size:12px;line-height:1.75;margin:0;color:var(--muted);overflow-wrap:anywhere;min-height:42px}
.library-page .library-grid .book-label{margin:13px 0 0;font-size:12px;line-height:1.9;color:var(--muted);letter-spacing:0}
.library-page .library-grid .book-resume{margin:7px 0 0;font-size:12px;line-height:1.7;color:var(--accent)}
.library-page .library-grid .book-bottom{display:flex;margin-top:15px;gap:15px;flex-wrap:wrap;font-size:13px;min-height:38px;align-items:center;justify-content:space-between}
.library-page .library-grid .book-read{font-size:13px;min-height:40px;display:flex;align-items:center}
.library-page .book-details{position:relative;font-size:12px;color:var(--muted)}
.library-page .book-details>summary{display:flex;align-items:center;min-height:40px;cursor:pointer;list-style:none}
.library-page .book-details>summary::-webkit-details-marker{display:none}
.library-page .book-details[open]>summary{color:var(--accent)}
.library-page .book-details-body{position:absolute;z-index:3;right:0;top:100%;width:240px;max-width:calc(100vw - 55px);padding:17px;background:var(--paper);border:1px solid var(--line);border-radius:7px;box-shadow:0 8px 28px #1b291b12;font-size:12px;line-height:1.9;overflow-wrap:anywhere}
.library-page .book-details-body a{display:block;min-height:40px;padding:8px 0;color:var(--accent)}
.library-page .library-shelf.with-current .library-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}
.library-page .library-shelf.with-current .book-card{display:grid;grid-template-columns:80px minmax(0,1fr);gap:20px;align-items:start}
.library-page .library-shelf.with-current .book-art{width:80px}
.library-page .library-shelf.with-current .cover-inner{inset:15px 8px 13px 13px;justify-content:center}
.library-page .library-shelf.with-current .cover-inner strong{font-size:15px;line-height:1.8}
.library-page .library-shelf.with-current .cover-inner small{display:none}
.library-page .library-shelf.with-current .book-meta{padding:0}
.library-page .library-shelf.with-current .book-meta h3{font-size:20px}
.library-page .library-shelf.with-current .book-author{min-height:0;font-size:12px}
.library-page .library-shelf.with-current .book-label{margin-top:8px;font-size:12px}
.library-page .library-shelf.with-current .book-bottom{margin-top:7px;gap:8px}
.library-page .empty-shelf{padding:48px 0;background:transparent;border:0;min-height:230px;max-width:550px}
.library-page .empty-shelf h2{font:26px/1.5 var(--serif)}
.library-page .empty-shelf p{font-size:14px;color:var(--muted);margin:12px 0 23px}
.library-page .empty-shelf button{font-size:14px;min-height:44px}
.reading-history-dialog{width:min(980px,calc(100% - 40px));max-width:none;max-height:calc(100dvh - 40px);padding:35px 32px;overflow:auto;border-radius:9px}
.reading-history-dialog .reading-calendar{margin:0}
.reading-history-dialog .calendar-heading{padding-right:22px}
.reading-history-dialog .calendar-heading h2{font-size:28px}
.reading-history-dialog .calendar-heading .muted{font-size:13px}
.reading-history-dialog .calendar-detail{max-height:none;overflow:visible}
.reading-history-dialog .calendar-meaning{font-size:12px}
.library-mobile-bar{display:none}
@media(min-width:1600px){.library-page #library-view{padding-top:54px}}
@media(max-width:1100px){.library-page{--library-sidebar:200px}.library-page #library-view{padding:35px 35px 50px}.library-page .library-grid{grid-template-columns:repeat(auto-fill,minmax(145px,166px));gap:35px 27px}}
@media(max-width:900px) and (min-width:761px){.library-page #library-view{padding:30px 26px 40px}.library-page .today-panel{grid-template-columns:110px minmax(0,1fr);gap:25px}.library-page .continue-cover{width:110px;min-height:160px;font-size:21px}.library-page .library-shelf.with-current .library-grid{grid-template-columns:1fr}}
@media(max-width:980px){
 .library-page #main{margin:0!important}.library-page #library-view{padding:22px 25px 40px}.library-mobile-bar{display:flex;align-items:center;justify-content:space-between;margin:0 0 30px}.library-mobile-bar .brand-mark{width:25px;height:31px}.library-mobile-bar .brand-name{font-size:22px}.library-mobile-bar .brand-name small{display:none}.room-heading{margin-bottom:28px}.room-heading h1{font-size:27px}.library-page .today-panel{grid-template-columns:101px minmax(0,1fr);gap:23px}.library-page .continue-cover{width:101px;min-height:148px;font-size:19px;padding:19px 10px 19px 16px}.library-page .today-copy h2{font-size:25px}.library-page .today-description{margin-top:15px;font-size:12px}.library-page .today-author{font-size:12px}.library-page .room-excerpt{margin-top:26px}.library-page .today-actions{gap:17px;margin-top:22px}.library-page .room-excerpt-text{font-size:21px;line-height:1.9;-webkit-line-clamp:5}.library-page .book-reading-options-body{padding-top:10px}.library-page .today-book-choice,.library-page .reading-goal select{font-size:16px}.library-page .library-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:33px 25px}.library-page .library-grid .book-meta h3{font-size:20px}.library-page .library-shelf.with-current .library-grid{grid-template-columns:1fr}.library-page .library-shelf.with-current .book-art{width:80px}.library-page .library-shelf.with-current .book-card{gap:23px}.reading-history-dialog{width:calc(100% - 24px);max-height:calc(100dvh - 24px);padding:32px 18px 24px}.reading-history-dialog .calendar-heading{padding-right:15px}.reading-history-dialog .calendar-heading h2{font-size:25px}.reading-history-dialog .calendar-main{padding:16px 5px}.reading-history-dialog .calendar-detail{padding:23px 16px}.reading-history-dialog .calendar-day{height:44px}
 .library-page .today-panel .today-actions{min-width:0}
}
@media(max-width:380px){.library-page #library-view{padding-left:19px;padding-right:19px}.library-page .library-grid{gap:30px 19px;grid-template-columns:repeat(2,minmax(0,1fr))}.library-page .library-grid .cover-inner strong{font-size:22px}.library-page .library-grid .cover-inner small{font-size:8px}.library-page .library-grid .cover-inner small:last-child{font-size:9px}.library-page .library-grid .book-meta h3{font-size:17px}.library-page .library-grid .book-author{min-height:63px}.library-page .today-panel{grid-template-columns:84px minmax(0,1fr);column-gap:19px}.library-page .continue-cover{width:84px;min-height:128px;font-size:16px;padding:15px 8px 15px 14px}.library-page .today-copy h2{font-size:23px}.library-page .room-excerpt-text{font-size:20px}.library-page .library-shelf.with-current .book-meta h3{font-size:20px}.library-page .library-shelf.with-current .book-author{min-height:0}}
@media(prefers-reduced-motion:reduce){.library-page #main,.library-page .library-grid .book-cover{transition:none}.library-page .library-grid .book-art:hover .book-cover{transform:none}}
@media(pointer:coarse){.library-page .library-grid .book-meta a,.library-page .book-details>summary{min-height:44px}}
/* The cover and heading stay together; the page excerpt gets the full mobile width. */
.library-page .today-copy{display:contents}.library-page .today-heading{grid-column:2;min-width:0}.library-page .today-panel{row-gap:21px}.library-page .continue-cover{grid-column:1;grid-row:1/4}.library-page .room-excerpt{grid-column:2;margin-top:0}.library-page .today-actions{grid-column:2;margin-top:0}
@media(max-width:980px){.library-page .today-heading{grid-column:2}.library-page .today-label{margin:0 0 8px}.library-page .today-copy h2{margin:0 0 6px}.library-page .today-author{margin:0}.library-page .today-description{margin:15px 0 0}.library-page .continue-cover{grid-row:1}.library-page .room-excerpt,.library-page .today-actions{grid-column:1/-1;margin:0}}

.library-page .library-grid .cover-inner strong{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}
