.library-extras{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:30px 0}.feature-card{padding:23px;border:1px solid #ecdccd;border-radius:18px;background:#fffdf9;box-shadow:0 10px 24px #60351d14}.feature-card h2{font:26px "DM Serif Display";margin:4px 0 7px}.feature-card p{font-size:13px;color:#80695d;line-height:1.5}.mini-books,.shelf-chips{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.mini-books button,.shelf-chips button,.journal-save,.feature-link{border:1px solid #d9b99d;background:#fff8f2;color:#8f4128;border-radius:10px;padding:9px 11px;font:600 12px "DM Sans";cursor:pointer}.mini-books button{display:flex;align-items:center;gap:8px;text-align:left}.mini-books img{width:27px;height:40px;object-fit:cover;border-radius:3px}.shelf-chips button{background:#f9eadc}.shelf-chips .new-shelf{border-style:dashed}.journal-list{display:grid;gap:8px;margin-top:14px}.journal-entry{padding:10px 12px;border-radius:10px;background:#fdf4e9;font-size:12px}.journal-entry b{display:block;color:#70402d}.journal-entry span{color:#80695d}.journal-form label{display:block;font-size:12px;font-weight:700;margin:10px 0}.journal-form input,.journal-form textarea,.journal-form select{width:100%;border:1px solid #ddbea4;border-radius:9px;padding:10px;font:13px "DM Sans";background:#fffdf9}.journal-form textarea{min-height:90px;resize:vertical}@media(max-width:800px){.library-extras{grid-template-columns:1fr}}
.reading-extra{grid-column:1/-1;display:flex;gap:9px;flex-wrap:wrap;padding-top:3px}.reading-extra span{font-size:10px;color:#765545;background:#f8e8d9;border-radius:999px;padding:6px 9px}.progress-dialog,.finish-dialog{width:min(430px,calc(100% - 30px));border:0;border-radius:22px;padding:28px;background:#fffaf5;color:#291914}.progress-dialog h2,.finish-dialog h2{font:29px "DM Serif Display";margin:5px 0}.progress-dialog p,.finish-dialog p{font-size:13px;line-height:1.5;color:#80695d}.finish-dialog{text-align:center}.finish-mark{display:grid;place-items:center;width:62px;height:62px;border-radius:50%;margin:auto;background:#f0bf73;color:#fff;font-size:30px;box-shadow:0 7px 0 #b85b34}.finish-dialog .journal-form{text-align:left;margin-top:18px}.log-button:disabled{opacity:.72;cursor:default}
.reading-now{display:grid!important;grid-template-columns:84px minmax(0,1fr) auto;column-gap:20px;row-gap:12px;align-items:center}.now-cover{width:84px!important;height:126px!important;min-width:84px!important;aspect-ratio:2/3;align-self:stretch}.now-cover img{width:100%;height:100%;object-fit:cover}.now-copy{min-width:0}.reading-progress{max-width:100%}.reading-extra{grid-column:2/-1!important;align-self:start;margin-top:-4px}.log-button{align-self:center;white-space:nowrap}@media(max-width:600px){.reading-now{grid-template-columns:76px minmax(0,1fr);gap:12px}.now-cover{width:76px!important;min-width:76px!important;height:114px!important}.reading-extra{grid-column:1/-1!important;margin:0}.log-button{display:inline-flex!important;grid-column:2;justify-self:start;padding:9px 11px;font-size:12px}}
.progress-mode{display:flex;align-items:center;gap:6px;margin:8px 0 2px}.progress-mode span{font-size:11px;font-weight:700;color:#80695d;margin-right:3px}.progress-mode button{border:1px solid #ddbea4;border-radius:8px;padding:6px 9px;background:#fffdf9;color:#7d4734;font:700 11px "DM Sans";cursor:pointer}.progress-mode button.active{background:#a94c2e;color:#fff;border-color:#a94c2e}.percent-field[hidden]{display:none!important}
.progress-dialog .journal-form label[hidden]{display:none!important}
.reading-extra button{border:0;background:#f8e8d9;color:#765545;border-radius:999px;padding:6px 9px;font:600 10px "DM Sans";cursor:pointer}.reading-extra .edit-reading{background:transparent;color:#a74829;text-decoration:underline}.reading-details-dialog{width:min(400px,calc(100% - 30px));border:0;border-radius:22px;padding:28px;background:#fffaf5;color:#291914}.reading-details-dialog h2{font:29px "DM Serif Display";margin:5px 0}.reading-details-dialog p{font-size:13px;color:#80695d}
.journal-form{position:relative}.date-calendar{display:none;margin-top:7px;border:1px solid #e4c5a9;border-radius:14px;padding:11px;background:#fffdf9;box-shadow:0 12px 24px #5a301c20}.date-calendar.open{display:block}.calendar-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px}.calendar-head b{font:15px "DM Serif Display"}.calendar-head button{width:28px;height:28px;border:0;border-radius:8px;background:#f8eadf;color:#a74829;font-size:22px;line-height:1;cursor:pointer}.calendar-week,.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;text-align:center}.calendar-week{margin-bottom:4px}.calendar-week span{font-size:9px;font-weight:700;color:#9a765f}.calendar-days i,.calendar-days button{height:29px;border:0;background:transparent;border-radius:8px;font:600 11px "DM Sans"}.calendar-days button{color:#5d392b;cursor:pointer}.calendar-days button:hover{background:#f6e4d5}.calendar-days button.selected{background:#a94c2e;color:#fff;box-shadow:0 3px 7px #9f45252e}
.shelf-dialog{width:min(510px,calc(100% - 32px));padding:28px;background:#fffaf5;color:var(--ink)}.shelf-dialog h2{font:30px "DM Serif Display";margin:4px 0}.shelf-dialog>p:not(.detail-label){margin:0;color:var(--muted);font-size:13px}.shelf-book-list{display:grid;gap:8px;margin-top:18px}.shelf-book-list button{display:flex;align-items:center;gap:11px;width:100%;padding:8px;border:1px solid #ead6c6;border-radius:10px;background:#fffdf9;color:var(--ink);text-align:left;cursor:pointer}.shelf-book-list img{width:34px;height:51px;object-fit:cover;border-radius:4px}.shelf-book-list b,.shelf-book-list small{display:block}.shelf-book-list small{margin-top:2px;color:var(--muted);font-size:11px}.shelf-empty{padding:13px;border:1px dashed #dfc4b0;border-radius:10px;color:var(--muted);font-size:12px}
.new-shelf-dialog{width:min(410px,calc(100% - 32px));padding:28px;background:#fffaf5;color:var(--ink)}.new-shelf-dialog h2{font:29px "DM Serif Display";margin:4px 0}.new-shelf-dialog>p:not(.detail-label){color:var(--muted);font-size:13px}.new-shelf-dialog form{display:grid;gap:14px;margin-top:18px}.new-shelf-dialog label{display:grid;gap:7px;font-size:12px;font-weight:700}.new-shelf-dialog input{border:1px solid #ddbea4;border-radius:9px;padding:10px;font:13px "DM Sans";background:#fffdf9}
