:root:has(.journal-reader){scroll-padding-top:0}
.journal-reader{--reader-size:18px;--reader-leading:1.85;--reader-font:"Segoe UI",Arial,sans-serif;--reader-top:165px}
.journal-reader .reading-byline{display:block}.journal-reader .reading-byline a[href^="editor.php"]{display:inline-block;margin-left:15px}
.journal-reader .reading-body{font-family:var(--reader-font);font-size:var(--reader-size);line-height:var(--reader-leading);color:var(--ink);min-width:0}
.journal-reader .article-subheading{font-family:var(--reader-font);font-size:1.45em;line-height:1.35;scroll-margin-top:calc(var(--reader-top) + 65px)}
.journal-reader .article-quote{font-size:1.1em;line-height:inherit}.journal-reader .article-list{line-height:inherit}
.journal-reader[data-reader-size=large]{--reader-size:21px}.journal-reader[data-reader-size=largest]{--reader-size:24px}
.journal-reader[data-reader-font=serif]{--reader-font:Georgia,"Times New Roman",serif}.journal-reader[data-reader-spacing=relaxed]{--reader-leading:2.15}
.reader-tools{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:18px 22px;margin:25px 0;color:var(--ink)}
.reader-tools [hidden],.reader-progress[hidden]{display:none!important}.reader-tools-top{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap}
.reader-time{font-size:13px;font-weight:650;white-space:nowrap}.reader-actions{display:flex;gap:8px;flex-wrap:wrap}
.reader-tools button,.reader-tools select{font:inherit;font-size:13px;background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:7px;min-height:42px;padding:9px 12px}
.reader-tools button{cursor:pointer}.reader-tools button:hover{background:var(--soft);border-color:var(--blue)}.reader-tools button[aria-pressed=true]{background:var(--ink);color:var(--card)}
.reader-tools :is(button,select,input,a,summary):focus-visible,.reader-progress a:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.reader-tools details{border-top:1px solid var(--line);margin-top:15px;padding-top:14px}.reader-tools summary{cursor:pointer;font-size:13px;font-weight:600;line-height:1.8}
.reader-settings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:12px;align-items:end;margin-top:16px}
.reader-settings label{display:grid;gap:8px;font-size:12px}.reader-settings select{width:100%;min-width:0}
.reader-settings p,.reader-copy-fallback p{font-size:12px;color:var(--text);line-height:1.8;margin:14px 0 0}.reader-settings a{text-decoration:underline}
.reader-contents summary span{font-weight:400;color:var(--text);margin-left:9px;font-size:12px}.reader-contents ol{padding-left:23px;margin:12px 0 0;max-height:320px;overflow:auto}
.reader-contents li{font-size:14px;padding:6px 0;overflow-wrap:anywhere}.reader-contents a{color:var(--blue);line-height:1.8}.reader-contents a:hover{text-decoration:underline}
.reader-contents button{font-size:11px;min-height:36px;padding:6px 8px;margin-left:12px}.reader-status{font-size:13px;margin:12px 0 0;line-height:1.7}.reader-status:empty{display:none}
.reader-copy-fallback{margin-top:16px}.reader-copy-fallback label{display:grid;gap:8px;font-size:12px}.reader-copy-fallback input{min-width:0;width:100%;padding:10px;background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:6px}
.reader-progress{position:sticky;top:var(--reader-top);z-index:20;display:flex;gap:12px;align-items:center;padding:9px 13px;background:var(--card);border:1px solid var(--line);border-radius:8px;font-size:11px;margin:20px 0}
.reader-progress progress{flex:1;width:0;height:5px;accent-color:var(--blue)}.reader-progress span{min-width:30px}.reader-progress a{white-space:nowrap;color:var(--blue)}
#reader-start{scroll-margin-top:calc(var(--reader-top) + 55px)}
.reader-related{margin:45px 0;padding-top:25px;border-top:1px solid var(--line)}.reader-related .section-heading p:not(.overline){font-size:13px;color:var(--text);line-height:1.8}
.reader-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.reader-related .portal-card{padding:22px}.reader-related .portal-card h2{font-size:19px}
body.reader-focus .site-header{position:relative}body.reader-focus .journal-reader{max-width:850px;--reader-top:8px!important}
body.reader-focus .journal-reader .reading-layout{grid-template-columns:minmax(0,1fr)}body.reader-focus .journal-reader .reading-aside{display:none}
body.reader-focus .reader-tools{position:relative}body.reader-focus .reader-progress{top:8px}
.reader-focus-exit{position:fixed;right:18px;bottom:22px;z-index:80;border:1px solid var(--line);background:var(--ink);color:var(--card);border-radius:30px;padding:13px 19px;font:600 13px "Segoe UI",Arial,sans-serif;box-shadow:0 3px 15px #0002;cursor:pointer}
body:not(.reader-focus) .reader-focus-exit{display:none}body.reader-focus .chat-dock{display:none}
@media(max-width:760px){.reader-settings-grid{grid-template-columns:1fr 1fr}.reader-related-grid{grid-template-columns:1fr}.reader-tools{padding:16px}.reader-tools-top{align-items:start}.reader-actions{width:100%}.reader-actions button{flex:1 0 auto}.reader-related .section-heading{align-items:start;flex-wrap:wrap}.reader-tools summary{font-size:14px}.journal-reader .reading-byline{flex-wrap:wrap}.reader-related{margin-top:32px}}
@media(max-width:380px){.reader-settings-grid{grid-template-columns:1fr}.reader-contents button{display:block;margin:3px 0}.reader-progress{gap:7px}}
@media(prefers-reduced-motion:reduce){.journal-reader *{scroll-behavior:auto!important}}
@media print{
 body{background:#fff!important;color:#000!important}.site-header,.utility-bar,.member-bar,.site-footer,.lottery-strip,.chat-dock,#toast,.reader-tools,.reader-progress,.reader-focus-exit,.reading-aside,.reader-after,.reader-related,.skip-link{display:none!important}
 .journal-reader{width:100%;max-width:none;padding:0;--reader-size:12pt;--reader-leading:1.65;--ink:#000;--text:#333;--line:#bbb;--card:#fff;--paper:#fff;--blue:#000}
 .journal-reader .reading-layout{display:block;margin-top:20px}.journal-reader .reading-header h1{font-size:26pt}.journal-reader .reading-header{margin-top:0}.journal-reader .reading-byline a[href^="editor"]{display:none}
 .journal-reader .reading-body{font-size:12pt!important;line-height:1.65!important}.journal-reader .reading-deck{font-size:13pt}.article-subheading{break-after:avoid}.article-inline-figure,.portal-figure{break-inside:avoid}.journal-reader img{max-height:18cm}.source-reference a{overflow-wrap:anywhere}
}
