.reading-heading, .reading-section-heading { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-bottom: 24px; }
.reading-shared { margin-block: 2rem; padding-top: 1.5rem; border-top: 1px solid var(--line); }
.reading-heading h1 { margin: 8px 0; }
.reading-heading p, .reading-section-heading p { color: var(--muted); margin: 6px 0 0; }
.reading-eyebrow { display: flex; align-items: center; gap: 8px; color: var(--green); font-size: var(--text-small); font-family: var(--font-ui); font-weight: 650; letter-spacing: .035em; }
.reading-heading .reading-eyebrow { text-transform: uppercase; }
.reading-dashboard { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; margin: 24px 0; }
.reading-goal, .reading-streak { padding: 20px; background: var(--surface); border: 1px solid var(--line); border-radius: 16px; min-width: 0; }
.reading-goal--year { background: var(--sage); border-color: color-mix(in srgb,var(--green) 20%,var(--line)); }
.reading-goal--month { background: color-mix(in srgb,var(--peach) 30%,var(--surface)); }
.reading-goal .reading-eyebrow > span { margin-left: auto; font-size: var(--text-small); color: var(--muted); font-weight: 400; }
.reading-score { font-size: var(--text-title); line-height: 1; font-weight: bold; margin: 16px 0 12px; font-variant-numeric: tabular-nums; }
.reading-score > span { font-size: var(--text-base); font-weight: normal; color: var(--muted); }
.reading-goal > p:not(.reading-score), .reading-streak > p:not(.reading-score) { margin: 10px 0; font-size: var(--text-base); line-height: 1.5; }
.reading-goal > a { font-size: var(--text-base); display: inline-flex; align-items: center; gap: 12px; color: var(--green); margin-top: 5px; text-decoration: underline; text-underline-offset: 4px; }
.reading-hub progress { display: block; appearance: none; border: 0; width: 100%; height: 7px; border-radius: 7px; overflow: hidden; background: var(--track); accent-color: var(--green); }
.reading-hub progress::-webkit-progress-bar { background: var(--track); border-radius: 7px; }
.reading-hub progress::-webkit-progress-value { background: var(--green); border-radius: 7px; }
.reading-hub progress::-moz-progress-bar { background: var(--green); border-radius: 7px; }
.reading-weeks { display: flex; gap: 7px; }
.reading-weeks > span { display: grid; place-items: center; flex: 1; max-width: 32px; aspect-ratio: 1; border-radius: 50%; background: var(--surface-soft); color: var(--muted); font-size: var(--text-small); }
.reading-weeks > .is-active { background: var(--green); color: var(--green-ink); }
.reading-weeks > .is-current { outline: 1px solid var(--green); outline-offset: 3px; }
.reading-streak small { font-size: var(--text-small); color: var(--muted); }
.reading-navigation { display: flex; flex-wrap: wrap; gap: 6px; border-bottom: 1px solid var(--line); padding: 0 0 12px; margin: 32px 0 28px; }
.reading-navigation a { display: inline-flex; align-items: center; gap: 9px; padding: 12px 15px; border-radius: 9px; color: var(--muted); font-size: var(--text-base); }
.reading-navigation a:hover, .reading-navigation .is-active { color: var(--green); background: var(--sage); }
.reading-navigation .is-active { font-weight: bold; }
.reading-filters { display: grid; grid-template-columns: minmax(180px,1fr) 160px 180px auto; gap: 10px; align-items: start; }
.reading-filters label { margin: 0; font-weight: normal; min-width: 0; }
.reading-filters input, .reading-filters select { font-size: var(--text-base); min-width: 0; }
.reading-search { position: relative; }
.reading-search > i { position: absolute; top: 50%; transform: translateY(-50%); left: 14px; color: var(--muted); font-size: .9rem; }
.reading-search input { padding-left: 38px; }
.reading-view-row { display: flex; justify-content: space-between; align-items: center; gap: 16px; margin: 18px 0 26px; font-size: var(--text-base); }
.reading-view-row > a { display: inline-flex; gap: 10px; align-items: center; }
.reading-books { display: grid; grid-template-columns: repeat(auto-fill,minmax(210px,1fr)); gap: 30px 24px; }
.reading-book { min-width: 0; }
.reading-book-cover { display: block; position: relative; aspect-ratio: 264/350; border-radius: 4px 10px 10px 4px; perspective: 1000px; background: repeating-linear-gradient(to bottom,var(--surface) 0 2px,var(--line) 2px 3px); box-shadow: 4px 6px 14px var(--shadow); margin: 0 5px 16px 0; }
.reading-book-cover .book-cover { width: calc(100% - 5px); height: 100%; transform-origin: left center; border-radius: 4px 8px 8px 4px; transition: transform 240ms ease, box-shadow 240ms ease; }
.reading-book-cover:hover .book-cover, .reading-book-cover:focus-visible .book-cover { transform: rotateY(-12deg); box-shadow: 10px 6px 15px var(--shadow); }
.reading-book-cover .book-cover--text { background: var(--green); color: var(--spine-light); border: 0; padding: 50px 22px 30px; box-shadow: inset 4px 0 0 var(--shadow-strong), inset 0 0 0 10px var(--green), inset 0 0 0 11px color-mix(in srgb,var(--spine-light) 35%,var(--green)); }
.reading-book-cover .book-cover--text small { color: var(--spine-light); opacity: .85; }
.reading-book:nth-child(3n+2) .book-cover--text { background: var(--primary-hover); box-shadow: inset 4px 0 0 var(--shadow-strong), inset 0 0 0 10px var(--primary-hover), inset 0 0 0 11px var(--line-strong); }
.reading-book:nth-child(3n) .book-cover--text { background: var(--ink); box-shadow: inset 4px 0 0 var(--shadow-strong), inset 0 0 0 10px var(--ink), inset 0 0 0 11px var(--muted); }
.reading-book-status, .reading-book-favorite { position: absolute; top: 10px; right: 14px; padding: 5px 9px; background: var(--surface); color: var(--ink); border-radius: 20px; font: 500 var(--text-small)/1.3 var(--font-ui); box-shadow: 0 2px 8px var(--shadow); }
.reading-book-status--reading { background: var(--peach); }
.reading-book-status--read { background: var(--sage); color: var(--green); }
.reading-book-favorite { right: auto; left: 10px; color: var(--green); border-radius: 50%; width: 29px; height: 29px; display: grid; place-items: center; padding: 0; }
.reading-book h3 { font-size: var(--text-card); line-height: 1.3; margin: 0 0 6px; overflow-wrap: anywhere; }
.reading-book-author, .reading-book-time { color: var(--muted); font-size: var(--text-small); margin: 6px 0; line-height: 1.4; }
.reading-book-time { font-size: var(--text-small); min-height: 1.4em; }
.reading-book-time i { margin-right: 4px; }
.reading-book-actions { display: flex; flex-wrap: wrap; gap: 9px 16px; padding-top: 10px; margin-top: 12px; border-top: 1px solid var(--line); }
.reading-book-actions a, .reading-book-actions button { display: inline-flex; align-items: center; gap: 6px; color: var(--green); font-size: var(--text-base); border: 0; padding: 4px 0; background: transparent; text-decoration: none; }
.reading-book-actions button:hover, .reading-book-actions a:hover { text-decoration: underline; }
.reading-book-rating { color: var(--warning); font-size: .75rem; letter-spacing: 3px; margin: 9px 0; }
.reading-books--list { display: block; }
.reading-books--list .reading-book { display: flex; align-items: center; gap: 22px; padding: 22px 0; border-bottom: 1px solid var(--line); }
.reading-books--list .reading-book-cover { flex: 0 0 130px; margin: 0; }
.reading-books--list .reading-book-body { flex: 1; }
.reading-collections { display: grid; grid-template-columns: repeat(auto-fill,minmax(230px,1fr)); gap: 20px; }
.reading-collection { position: relative; background: var(--surface); border: 1px solid var(--line); border-radius: 16px; overflow: hidden; }
.reading-collection > a:first-child { display: block; padding: 26px; }
.reading-collection-emblem { display: grid; place-items: center; width: 64px; height: 64px; border-radius: 18px; border: 2px solid var(--collection-color); background: color-mix(in srgb,var(--collection-color) 17%,var(--surface)); color: var(--ink); font-size: 1.6rem; margin-bottom: 22px; }
.reading-collection h3 { margin: 0 0 6px; font-size: var(--text-card); overflow-wrap: anywhere; }
.reading-collection p { margin: 0; color: var(--muted); font-size: var(--text-base); }
.reading-collection-edit { position: absolute; top: 14px; right: 16px; padding: 10px; color: var(--muted); }
.reading-empty { padding: 42px 24px; border: 1px dashed var(--line-strong); border-radius: 16px; text-align: center; grid-column: 1/-1; }
.reading-empty > i { font-size: 2rem; color: var(--green); }
.reading-empty h3 { margin: 16px 0 10px; }
.reading-empty p { max-width: 500px; margin: 0 auto 20px; color: var(--muted); }
.reading-decor, .reading-method { margin: 28px 0; padding: 20px; background: var(--surface); border: 1px solid var(--line); border-radius: 12px; font-size: var(--text-base); }
.reading-method p { max-width: 900px; line-height: 1.7; }
.reading-year { display: flex; gap: 10px; align-items: center; }
.reading-year label { margin: 0; }
.reading-year input { width: 110px; }
.reading-stat-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 16px; margin: 24px 0; }
.reading-stat-grid article { padding: 24px 16px; border-left: 2px solid var(--line); }
.reading-stat-grid strong { display: block; font-size: var(--text-title); margin-bottom: 7px; }
.reading-stat-grid span { display: block; font-size: var(--text-small); }
.reading-stat-grid small { display: block; color: var(--muted); font-size: var(--text-small); margin-top: 6px; }
.reading-stat-panels { display: grid; grid-template-columns: minmax(0,1.5fr) minmax(0,1fr); gap: 20px; }
.reading-chart-panel { border: 1px solid var(--line); border-radius: 16px; padding: 24px; background: var(--surface); min-width: 0; }
.reading-chart-panel h2 { font-size: var(--text-section); margin: 0 0 12px; }
.reading-chart-panel p { font-size: var(--text-base); }
.reading-months { display: grid; grid-template-columns: repeat(12,minmax(0,1fr)); gap: 8px; margin-top: 30px; }
.reading-month { display: flex; flex-direction: column; align-items: center; gap: 10px; font-size: var(--text-small); }
.reading-month strong { font-family: var(--font-ui); font-size: var(--text-small); }
.reading-month-track { width: 100%; max-width: 28px; height: 160px; display: flex; align-items: end; background: var(--surface-soft); border-radius: 6px; overflow: hidden; }
.reading-month-track span { width: 100%; height: var(--month-height); background: var(--green); border-radius: 6px; min-height: 2px; }
.reading-genres > div { display: grid; grid-template-columns: 1fr auto; gap: 8px; margin: 20px 0; font-size: var(--text-base); }
.reading-genres progress { grid-column: 1/-1; }
body.reading-dialog-open { overflow: hidden; }
.reading-dialog { width: min(620px,calc(100vw - 32px)); max-height: min(90dvh,900px); border: 1px solid var(--line); border-radius: 20px; padding: 0; color: var(--ink); background: var(--surface); box-shadow: 0 24px 70px var(--shadow-strong); overflow-y: auto; scrollbar-width: thin; scrollbar-color: var(--line) transparent; }
.reading-dialog::backdrop { background: color-mix(in srgb,var(--ink) 38%,transparent); backdrop-filter: blur(4px); }
.reading-dialog-close { position: sticky; top: 12px; left: calc(100% - 54px); float: right; margin: 12px 12px 0 0; z-index: 2; border-radius: 50%; background: var(--surface); }
.reading-editor { padding: 34px; max-width: 660px; margin: 0 auto; }
.reading-editor h1 { font-size: var(--text-title); line-height: 1.25; margin: 12px 0; padding-right: 16px; }
.reading-editor > p { font-size: var(--text-base); }
.reading-editor form { margin-top: 24px; }
.reading-editor form > div { margin-bottom: 18px; }
.reading-editor label { font-size: var(--text-base); }
.reading-editor input, .reading-editor select, .reading-editor textarea { font-size: var(--text-base); }
.reading-form-pair { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; align-items: start; }
.reading-form-pair > div { margin: 0; min-width: 0; }
.reading-form-pair > [hidden] { display: none; }
.reading-checks { display: flex; flex-direction:column; gap:12px; }
.reading-editor .reading-checks > div { margin: 0; }
.reading-editor div:has(> input[type=checkbox]) { display: flex; align-items: center; gap: 9px; }
.reading-editor div:has(> input[type=checkbox]) > label { order: 2; margin: 0; }
.reading-editor input[type=checkbox] { margin: 0; flex: 0 0 18px; width: 18px; min-height: 18px; }
.reading-collection-choices > div { display: flex; flex-wrap: wrap; gap: 10px; }
.reading-collection-choices > div > label { display: inline-flex; align-items: center; gap: 8px; margin: 0 12px 8px 0; }
.reading-editor input[type=color] { width: 100%; height: 48px; padding: 6px; cursor: pointer; }
.reading-editor .form-help, .reading-editor .help-text { color: var(--muted); font-size: var(--text-small); line-height: 1.5; margin-top: 6px; }
.book-add-create { display: grid; gap: 12px; }
.book-add-create > .button { justify-self: start; }
.reading-editor-actions { display: flex; justify-content: space-between; align-items: center; gap: 12px; border-top: 1px solid var(--line); padding-top: 20px; margin-top: 24px; }
.library-organization h1 { font-size: var(--text-section); }
.library-organization [data-library-organization-target="priority"][hidden] { display: none; }
.library-organization .library-remove { padding-top: 16px; border-top: 1px solid var(--line); }
.reading-remove { border-top: 1px solid var(--line); padding-top: 18px; margin-top: 24px; color: var(--muted); font-size: var(--text-small); }
.reading-loading { padding: 70px 30px; text-align: center; color: var(--muted); }
.reading-notice { position: fixed; left: 50%; bottom: 25px; transform: translateX(-50%); max-width: min(92vw,560px); width: max-content; padding: 16px 24px; border: 1px solid var(--line); border-radius: 12px; background: var(--green); color: var(--green-ink); box-shadow: 0 8px 30px var(--shadow-strong); z-index: 150; font-size: var(--text-base); }
.reading-notice[hidden] { display: none; }
@media(max-width:1100px) {
    .reading-goal, .reading-streak { padding: 18px; }
    .reading-filters { grid-template-columns: 1fr 1fr; }
    .reading-dashboard { gap: 12px; }
    .reading-books { grid-template-columns: repeat(auto-fill,minmax(190px,1fr)); }
}
@media(max-width:700px) {
    .reading-heading { align-items: start; flex-direction: column; gap: 16px; }
    .reading-dashboard { grid-template-columns: 1fr 1fr; }
    .reading-streak { grid-column: 1/-1; }
    .reading-eyebrow { flex-wrap: wrap; font-size: var(--text-small); }
    .reading-score { font-size: var(--text-title); }
    .reading-navigation { gap: 4px; margin: 22px 0; }
    .reading-navigation a { padding: 10px; font-size: var(--text-base); }
    .reading-view-row { flex-wrap: wrap; }
    .reading-view-row > a { display: none; }
    .reading-books { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 26px 16px; }
    .reading-book-cover .book-cover--text { font-size: .84rem; padding: 40px 16px 16px; }
    .reading-book h3 { font-size: var(--text-card); }
    .reading-section-heading { flex-wrap: wrap; gap: 12px; }
    .reading-stat-grid { grid-template-columns: 1fr 1fr; }
    .reading-stat-panels { grid-template-columns: 1fr; }
    .reading-months { gap: 5px; }
    .reading-month { font-size: var(--text-small); }
    .reading-chart-panel { padding: 18px; }
    .reading-editor { padding: 24px; }
    .reading-dialog { max-height: 92dvh; }
}
@media(max-width:380px) {
    .reading-dashboard { grid-template-columns: 1fr; }
    .reading-books { grid-template-columns: 1fr; }
    .reading-form-pair { grid-template-columns: 1fr; }
}
@media(prefers-reduced-motion:reduce) {
    .reading-book-cover .book-cover { transition: none; transform: none !important; }
}
.reading-inline-error { margin: 18px 24px; padding: 14px; border: 1px solid var(--error); border-radius: 9px; background: var(--error-bg); color: var(--error); font-size: var(--text-small); }

.reading-collection-title-icon { color: var(--collection-color, var(--green)); }

.reading-session-actions { display: flex; flex-wrap: wrap; gap: .5rem; margin: .5rem 0; }
.reading-session-actions form { margin: 0; }
.reading-home-heading { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: 1rem; }
.reading-home-heading h1, .reading-home-heading h2 { margin: 0; }
.reading-home-streak { display: flex; align-items: center; flex-wrap: wrap; gap: .5rem; color: var(--green); font-size: var(--text-base); }
.reading-home-streak span { color: var(--muted); }
.reading-search { display: flex; gap: .5rem; margin: 1.4rem 0; }
.reading-search input { flex: 1; min-width: 0; }
.reading-current-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 1fr)); gap: 1.25rem; }
.reading-current-card { display: flex; flex-direction: column; min-width: 0; border: 1px solid var(--line); border-radius: 18px; background: var(--surface); box-shadow: 0 5px 18px var(--shadow); }
.reading-current-book { display: flex; align-items: flex-start; flex: 1; gap: 1rem; min-width: 0; padding: 1.25rem; border-radius: 17px 17px 0 0; background: linear-gradient(120deg, var(--surface-soft), var(--surface) 80%); }
.reading-current-cover { flex: 0 0 auto; padding-block: .25rem; }
.reading-current-cover .book-mockup { --book-height: 144px; }
.reading-current-cover .book-cover--text { gap: .65rem; padding: 8px; font-family: var(--font-display); font-size: .68rem; line-height: 1.25; }
.reading-current-cover .book-cover--text small { font: .6rem/1.25 var(--font-body); }
.reading-current-cover .book-cover--text > span { overflow-wrap:normal; hyphens:auto; text-wrap:balance; }
.reading-current-details { min-width: 0; }
.reading-current-status { display: inline-block; padding: .2rem .6rem; border-radius: var(--radius-pill); background: var(--surface-soft); color: var(--muted); font-size: var(--text-small); line-height: 1.4; }
.reading-current-status--caught_up, .reading-current-status--read { background: var(--sage); color: var(--green); }
.reading-current-book h3 { margin: .6rem 0 .35rem; font-size: 1.4rem; line-height: 1.2; overflow-wrap: anywhere; }
.reading-current-author { margin: 0; color: var(--muted); font-size: var(--text-small); overflow-wrap: anywhere; }
.reading-current-bookmark { display: flex; align-items: baseline; gap: .45rem; margin: .8rem 0 0; color: var(--green); font-size: var(--text-small); }
.reading-current-footer { padding: 1rem 1.25rem 1.25rem; }
.reading-current-progress { display: flex; flex-direction: column; gap: .5rem; margin-top: 1rem; color: var(--muted); font-size: var(--text-small); }
.reading-current-progress-label { display: flex; align-items: baseline; justify-content: space-between; gap: .5rem; }
.reading-current-progress-label strong { color: var(--green); }
.reading-current-progress progress { display: block; width: 100%; height: 5px; overflow: hidden; appearance: none; border: 0; border-radius: var(--radius-pill); background: var(--track); color: var(--green); }
.reading-current-progress progress::-webkit-progress-bar { background: var(--track); border-radius: var(--radius-pill); }
.reading-current-progress progress::-webkit-progress-value { background: var(--green); border-radius: var(--radius-pill); }
.reading-current-progress progress::-moz-progress-bar { background: var(--green); border-radius: var(--radius-pill); }
.reading-current-actions { display: flex; align-items: center; flex-wrap: wrap; gap: .75rem; }
.reading-current-actions > a { min-width: 0; min-height: 44px; }
.reading-current-resume.button { flex: 1 1 7rem; gap: .5rem; }
.reading-current-sheet { display: inline-flex; align-items: center; justify-content: center; gap: .5rem; padding: .6rem; border-radius: 10px; background: var(--surface-soft); color: var(--green); font-size: var(--text-small); font-weight: 600; }
.reading-current-sheet:hover { background: var(--sage); }
@media(max-width: 700px) { .reading-current-cards { grid-template-columns: 1fr; } }
@media(max-width: 360px) {
    .reading-current-book { gap: .75rem; padding: 1rem; }
    .reading-current-cover .book-mockup { --book-height: 128px; }
    .reading-current-cover .book-cover--text { font-size: .625rem; }
    .reading-current-book h3 { font-size: var(--text-card); }
    .reading-current-footer { padding: .85rem 1rem 1.1rem; }
    .reading-current-actions { gap: .5rem; }
}
@media(max-width: 600px) { .reading-home-heading { align-items: flex-start; } }
.reading-home-rhythm,.reading-home-help { margin:16px 0 0; }
.reading-home-search { margin:0 0 20px; }
.reading-home :is(.reading-home-rhythm,.reading-home-search,.reading-home-help) > summary { display:flex; align-items:center; gap:8px; min-height:44px; color:var(--green); font-size:var(--text-small); cursor:pointer; }
.reading-home :is(.reading-home-rhythm,.reading-home-search,.reading-home-help) > summary:focus-visible { outline:3px solid var(--green); outline-offset:2px; }
.reading-rhythm-week { margin-left:auto; }
.reading-home-search > summary span { margin-left:auto; font-size:.75rem; }
.reading-home-rhythm .reading-home-streak { margin:8px 0; font-size:var(--text-small); }
.reading-home-search .reading-search { margin:8px 0 0; }
@media(min-width:701px) { .reading-home-search > summary { display:none!important; } }
@media(max-width:700px) {
 .reading-current-book { padding:16px; gap:12px; }
 .reading-current-cover .book-mockup { --book-height:112px; }
 .reading-current-book h3 { font-size:1.25rem; margin-top:8px; }
 .reading-current-footer { padding:12px 16px 16px; }
 .reading-current-bookmark { line-height:1.4; }
}
.reading-week-trail { display: flex; gap: .4rem; margin: .7rem 0; }
.reading-week-trail span { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; color: var(--muted); background: var(--surface-soft); }
.reading-week-trail .is-active { background: var(--brand-soft); color: var(--green); }
.reading-home-links { display: flex; align-items: center; gap: 1rem; font-size: var(--text-base); }
@media(max-width: 600px) { .reading-home-heading { flex-wrap: wrap; } .reading-home-links { width: 100%; justify-content: space-between; } }
.reading-rhythm { margin: 1.5rem 0; }
.rhythm-totals { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .75rem; margin: 1rem 0; }
.rhythm-totals article { padding: 1rem; border-radius: 12px; background: var(--sage); color: var(--green); }
.rhythm-totals strong { display: block; font-size: var(--text-section); }
.rhythm-totals span { font-size: var(--text-small); }
.rhythm-charts { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem; }
.rhythm-chart { border: 1px solid var(--line); border-radius: 14px; padding: 1rem; background: var(--surface); min-width: 0; }
.rhythm-chart h3 { font-size: var(--text-card); margin: 0 0 .5rem; }
.rhythm-chart svg { display: block; width: 100%; }
.rhythm-chart text { font: var(--text-small) var(--font-body); fill: var(--muted); }
.rhythm-chart .rhythm-value { fill: var(--ink); font-weight: 600; }
.rhythm-bar { fill: var(--green); }.rhythm-bar--chapters { fill: var(--primary); }
.rhythm-chart p { font-size: var(--text-base); color: var(--muted); margin: .25rem 0 0; }
.rhythm-weekdays > div { display: flex; align-items: center; gap: .7rem; font-size: var(--text-small); margin: .55rem 0; }
.rhythm-weekdays span { width: 2rem; }.rhythm-weekdays progress { flex: 1; min-width: 0; accent-color: var(--green); height: 8px; }.rhythm-weekdays strong { width: 2rem; text-align: right; }
@media(max-width: 700px) { .rhythm-charts { grid-template-columns: 1fr; }.rhythm-totals { grid-template-columns: repeat(2,minmax(0,1fr)); }.reading-home-links { flex-wrap: wrap; } }
.reading-recap h1 { font-size: var(--text-title); }
.reading-recap-actions { display: flex; justify-content: flex-end; flex-wrap: wrap; gap: .7rem; margin: 1rem 0; }
.reading-recap-closed { margin-top: 1.5rem; padding: 2rem; text-align: center; background: var(--sage); border-radius: 18px; }
.reading-recap-closed > i { font-size: 2rem; color: var(--green); }
@media(max-width: 480px) { .reading-recap-actions .button { width: 100%; } }

.reading-home-heading { gap: 1.25rem; flex-wrap: wrap; }
.reading-home-links { flex-wrap: wrap; gap: .75rem; }
.reading-editor { --button-face: var(--green); --button-hover: color-mix(in srgb, var(--green) 85%, var(--ink)); }

@media (max-width: 600px) {
    .reading-home-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .reading-home-links > .button:last-child { grid-column: 1 / -1; }
}

.reading-editor input[type="color"] { width: 72px; height: 48px; padding: 5px; cursor: pointer; }

.first-pages-discovery { --button-face: var(--green); --button-hover: color-mix(in srgb, var(--green) 85%, var(--ink)); }
.first-pages-filters { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: .8rem 1rem; padding: 1.25rem; border: 1px solid var(--line); border-radius: 14px; background: var(--surface); margin-block: 1.5rem; }
.first-pages-filters > label:first-child, .first-pages-filters > select { grid-column: 1 / -1; }
.first-pages-preferences { display: flex; align-items: flex-start; gap: .65rem; margin: 0; }
.first-pages-preferences input { flex: 0 0 auto; margin: .2rem 0 0; }
.first-pages-discovery .empty-state { grid-column: 1 / -1; }
@media (max-width: 600px) { .first-pages-filters { grid-template-columns: 1fr; } }
.reading-year-options > summary { display:flex; align-items:center; min-height:44px; padding:.5rem; cursor:pointer; color:var(--green); font-weight:600; }
.reading-year-options .reading-year { margin-top:.5rem; flex-wrap:wrap; }
.reading-method > summary { min-height:44px; padding-block:.75rem; }
.reading-year-options > summary:focus-visible { outline:2px solid var(--green); outline-offset:2px; }
