/* Reader tools, discovery and browser-local library. */
html[data-r34-mode="light"] { --color-bg:#fff; --color-text:#111; --color-muted:#666; --color-meta:#777; --color-divider:#eaeaea; --color-soft:#f7f7f7; --color-panel:#fff; --color-control:#fff; color-scheme:light; }
html[data-r34-mode="dark"] { --color-bg:#101114; --color-text:#f4f4f5; --color-muted:#a8a8b0; --color-meta:#92929b; --color-divider:#292a2f; --color-soft:#191a1f; --color-panel:#15161a; --color-control:#202127; color-scheme:dark; }
html[data-r34-mode="dark"] body { --r34-accent-ink:color-mix(in srgb,var(--color-accent) 55%,#fff); }
html[data-r34-mode="light"] body { --r34-accent-ink:color-mix(in srgb,var(--color-accent) 62%,#6c1d09); }
.single-entry .entry-content { font-size:var(--r34-reader-size,var(--article-font-size)); }
.reader-global-tools { display:flex; align-items:center; justify-content:flex-end; flex-wrap:wrap; gap:12px; padding-block:14px; font-size:13px; }
.reader-global-label { margin-inline-end:auto; color:var(--r34-muted); }
.reader-appearance { display:flex; align-items:center; gap:8px; }
.reader-appearance select { width:auto; min-height:40px; padding:5px 28px 5px 10px; font:inherit; color:var(--r34-ink); border:1px solid var(--r34-line); border-radius:8px; background-color:var(--color-panel); }
.reader-toolbar { display:flex; align-items:center; flex-wrap:wrap; justify-content:space-between; gap:12px; padding:16px 0; margin:8px 0 20px; border-block:1px solid var(--r34-line); }
.reader-type-controls,.reader-actions { display:flex; flex-wrap:wrap; gap:6px; }
.reader-toolbar:has(.reader-actions:empty):not(:has(.reader-type-controls)) { display:none; }
.reader-status { font-size:13px; color:var(--r34-muted); }
.reader-status:empty { display:none; }
.reader-copy-fallback { display:block; margin-bottom:20px; font-size:14px; }
.reader-copy-fallback input { width:100%; margin-top:8px; }
.reader-resume { display:flex; flex-wrap:wrap; align-items:center; gap:12px; padding:20px; margin-bottom:24px; border:1px solid var(--r34-line); border-radius:14px; background:var(--color-soft); font-size:14px; }
.reader-resume>div { flex:1 1 220px; }
.reader-resume p { margin:4px 0 0; color:var(--r34-muted); }
.reader-library { width:min(620px,calc(100% - 32px)); max-height:85dvh; padding:28px; border:1px solid var(--r34-line); border-radius:20px; color:var(--r34-ink); background:var(--color-panel); font-family:var(--r34-ui); }
.reader-library::backdrop { background:rgb(10 12 24 / 60%); backdrop-filter:blur(4px); }
.reader-library-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.reader-library h2 { margin:6px 0; font-size:26px; line-height:1.2; letter-spacing:-.03em; }
.reader-library>p { font-size:14px; color:var(--r34-muted); }
.reader-library ul { list-style:none; padding:0; margin:20px 0 0; }
.reader-library li { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:16px 0; border-top:1px solid var(--r34-line); }
.reader-library li a { color:var(--r34-ink); text-decoration:none; font-size:16px; font-weight:600; overflow-wrap:anywhere; }
.reader-library li button { flex:none; }
.story-actions .reader-save { margin-inline-start:auto; }
.r34c8-list-divided .story-actions:has([data-r34-save]:not([hidden])) { display:flex; margin-top:8px; gap:12px; }
.r34c8-list-divided .story-actions .reader-save { margin-inline-start:0; }
.r34c8-list-divided .story-actions .story-cta { margin-inline-start:auto; }
@media(max-width:700px) {
	.reader-global-tools { gap:8px; }
	.reader-global-label { flex-basis:100%; }
	.reader-appearance { margin-inline-end:auto; }
	.reader-toolbar { gap:12px; }
	.reader-library { padding:20px; }
	.reader-library h2 { font-size:23px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
