/* Library reading view, footnote pop-ups and 'Continue reading'. Hand-written; see reader.js. */

/* ---------- always available ---------- */
.rd-enter{margin-top:14px;min-height:40px;padding:6px 16px;font-size:14px}
html.lib-reading .rd-enter{display:none}
.lib-continue{background:var(--tint);border-left:3px solid var(--gold);padding:14px 18px;margin:0 0 26px;max-width:860px}
.lib-continue .eyebrow{margin-bottom:6px}
.lib-continue ul{list-style:none;margin:0;padding:0}
.lib-continue li{margin:4px 0;display:flex;flex-wrap:wrap;gap:2px 12px;align-items:baseline}
.lib-continue-link{font:400 1.15rem/1.35 var(--serif);color:var(--ink)}
.lib-continue-link strong{font:700 12px/1 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin-right:6px}
.lib-continue-work{font-size:13px;color:var(--muted)}

.rd-pop{position:fixed;z-index:80;left:50%;bottom:18px;transform:translateX(-50%);width:min(34rem,calc(100% - 28px));max-height:min(60vh,26rem);overflow:auto;
  background:var(--rd-bg,#fff);color:var(--rd-fg,#1f2f3c);border:1px solid var(--rd-line,#d9e0e5);border-top:3px solid var(--rd-accent,#9c5a24);
  box-shadow:0 12px 40px rgba(0,0,0,.22);padding:12px 18px 14px;font-size:15px;line-height:1.55}
.rd-pop:focus{outline:none}
.rd-pop:focus-visible{outline:3px solid var(--rd-accent,#9c5a24);outline-offset:2px}
.rd-pop-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px}
.rd-pop-label{font:700 11px/1.4 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--rd-accent,#9c5a24)}
.rd-pop-text p{margin:0 0 8px}
.rd-pop-go{font-size:13px;color:var(--rd-link,#8b4818)}

.rd-icon{display:inline-grid;place-items:center;width:40px;height:40px;flex:0 0 40px;border:0;border-radius:6px;background:transparent;color:inherit;cursor:pointer;padding:0}
.rd-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.rd-icon:hover{background:var(--rd-surface,#f1f5f7)}
.rd-icon:focus-visible,.rd-drawer button:focus-visible,.rd-drawer a:focus-visible,.rd-drawer input:focus-visible,.rd-bar a:focus-visible{outline:3px solid var(--rd-accent,#9c5a24);outline-offset:2px}

/* ---------- the reading view ---------- */
html.lib-reading{--rd-bg:#fff;--rd-fg:#1f2f3c;--rd-muted:#5a6872;--rd-link:#8b4818;--rd-line:#dfe5e9;--rd-accent:#9c5a24;--rd-surface:#f2f5f7;--rd-fs:18px;
  scroll-padding-top:64px}
html.lib-reading[data-rd-theme="sepia"]{--rd-bg:#f6eedc;--rd-fg:#3a2e22;--rd-muted:#6e5d49;--rd-link:#874411;--rd-line:#e3d6ba;--rd-accent:#93531f;--rd-surface:#eee3c9}
html.lib-reading[data-rd-theme="dark"]{--rd-bg:#0f1c28;--rd-fg:#e3dccd;--rd-muted:#a5b1ba;--rd-link:#f0c27e;--rd-line:#26394a;--rd-accent:#e9bd76;--rd-surface:#172a3b;color-scheme:dark}
html.lib-reading[data-rd-size="1"]{--rd-fs:16px}
html.lib-reading[data-rd-size="3"]{--rd-fs:20.5px}
html.lib-reading[data-rd-size="4"]{--rd-fs:23.5px}
html.lib-reading.rd-locked{overflow:hidden}
html.lib-reading body{background:var(--rd-bg);color:var(--rd-fg)}
html.lib-reading .masthead,html.lib-reading footer,html.lib-reading .invitation,html.lib-reading .page-top,html.lib-reading .draft-marker{display:none!important}
html.lib-reading main{padding-top:52px;background:var(--rd-bg)}

.rd-bar,.rd-scrim,.rd-drawer,.rd-head,.rd-panel-head{display:none}
html.lib-reading .rd-bar{display:flex;align-items:center;gap:4px;position:fixed;z-index:50;top:0;left:0;right:0;height:52px;padding:0 8px;
  background:var(--rd-bg);color:var(--rd-fg);border-bottom:1px solid var(--rd-line)}
.rd-titles{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;line-height:1.2;padding:0 6px}
.rd-work{font:700 10.5px/1.3 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--rd-accent);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rd-chap{font:400 15px/1.3 var(--serif);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rd-progress{position:absolute;left:0;right:0;bottom:-1px;height:3px;background:transparent}
.rd-progress span{display:block;height:100%;width:0;background:var(--rd-accent)}

html.lib-reading .rd-head{display:block;margin:6px 0 26px}
.rd-head-work{display:block;font:700 11px/1.4 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--rd-accent);margin-bottom:8px}
.rd-head-title{display:block;font:400 clamp(1.7rem,4.6vw,2.5rem)/1.15 var(--serif);color:var(--rd-fg);letter-spacing:-.02em}

html.lib-reading .lib-layout{display:block;width:auto;max-width:46rem;margin:0 auto;padding:28px 24px 90px}
html.lib-reading .lib-text{max-width:none;color:var(--rd-fg)}
html.lib-reading .lib-text p,html.lib-reading .lib-text li,html.lib-reading .lib-text blockquote,html.lib-reading .lib-text td,html.lib-reading .lib-text th{color:var(--rd-fg)}
html.lib-reading .lib-text p[id^="para-"],html.lib-reading .lib-text blockquote{font-size:var(--rd-fs);line-height:1.72}
html.lib-reading .lib-text p.lib-lead{font-size:calc(var(--rd-fs) * .86);line-height:1.6}
html.lib-reading .lib-text h2,html.lib-reading .lib-text h3,html.lib-reading .lib-text h4{color:var(--rd-fg)}
html.lib-reading .lib-text a{color:var(--rd-link)}
html.lib-reading .lib-text a.bref,html.lib-reading .lib-notes a.bref,.rd-pop a.bref{color:inherit;text-decoration:underline dotted;text-decoration-thickness:1px;text-underline-offset:3px}
html.lib-reading .lib-text .lib-motto,html.lib-reading .lib-text .lib-reporter,html.lib-reading .lib-text .lib-sign,html.lib-reading .lib-text .lib-lead,
html.lib-reading .lib-text .lib-footnote,html.lib-reading .lib-notes li,html.lib-reading .lib-m,html.lib-reading .lib-small{color:var(--rd-muted)}
html.lib-reading .lib-text .lib-printed-head,html.lib-reading .lib-pg{color:var(--rd-accent)}
html.lib-reading .lib-pg{border-color:var(--rd-accent)}
html.lib-reading .lib-notes,html.lib-reading .lib-table,html.lib-reading .lib-table td,html.lib-reading .lib-table th{border-color:var(--rd-line)}
html.lib-reading .lib-pg:target,html.lib-reading .lib-notes li:target{background:var(--rd-surface)}
html.lib-reading .lib-text p[id^="para-"]:target{background:var(--rd-surface)}
html.lib-reading .study-pager a{color:var(--rd-fg);border-top-color:var(--rd-fg)}
html.lib-reading .study-pager a span{color:var(--rd-accent)}
html.lib-reading .lib-sections a{color:var(--rd-link)}
html.lib-reading .lib-panel{display:block;max-width:none;padding:0;margin-top:46px;color:var(--rd-fg);position:static}
html.lib-reading .lib-panel section{border-color:var(--rd-line)}
html.lib-reading .lib-panel h2{color:var(--rd-accent)}
html.lib-reading .lib-panel p,html.lib-reading .lib-panel li{color:var(--rd-fg)}
html.lib-reading .lib-panel a{color:var(--rd-link)}
html.lib-reading .lib-panel .lib-chips a{background:transparent;color:var(--rd-fg);border-color:var(--rd-line)}
html.lib-reading .rd-panel-head{display:block;font:400 1.5rem/1.2 var(--serif);color:var(--rd-fg);margin:0 0 12px;padding-top:20px;border-top:2px solid var(--rd-fg)}

/* drawers */
html.lib-reading .rd-scrim:not([hidden]){display:block;position:fixed;inset:0;z-index:55;background:rgba(10,16,22,.42)}
html.lib-reading .rd-drawer:not([hidden]){display:flex;flex-direction:column;position:fixed;z-index:60;top:0;bottom:0;width:min(380px,90vw);
  background:var(--rd-bg);color:var(--rd-fg);box-shadow:0 0 40px rgba(0,0,0,.28)}
.rd-left{left:0;border-right:1px solid var(--rd-line)}
.rd-right{right:0;border-left:1px solid var(--rd-line)}
.rd-drawer-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 8px 8px 20px;border-bottom:1px solid var(--rd-line)}
.rd-drawer-head h2{font:700 12px/1.4 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--rd-accent);margin:0}
.rd-drawer-body{overflow:auto;padding:14px 20px 28px;flex:1;overscroll-behavior:contain}
.rd-goto{display:grid;grid-template-columns:1fr auto;gap:6px 8px;margin:0 0 16px;padding-bottom:16px;border-bottom:1px solid var(--rd-line)}
.rd-goto label{grid-column:1/-1;font-size:13px;color:var(--rd-muted)}
.rd-goto input{min-width:0;font:inherit;font-size:16px;padding:8px 10px;border:1px solid var(--rd-line);border-radius:4px;background:var(--rd-bg);color:var(--rd-fg)}
.rd-goto-btn{font:600 14px var(--sans);padding:0 16px;border:1px solid var(--rd-fg);border-radius:4px;background:var(--rd-fg);color:var(--rd-bg);cursor:pointer}
.rd-goto-msg{grid-column:1/-1;margin:0;font-size:13px;color:var(--rd-accent);min-height:0}
.rd-goto-msg:empty{display:none}
.rd-list{list-style:none;margin:0;padding:0;font-size:15px;line-height:1.35}
.rd-list li{margin:0;border-bottom:1px solid var(--rd-line)}
.rd-list li.rd-group,.rd-list li.rd-part,.rd-list li.rd-loading{border-bottom:0}
.rd-list a{display:block;padding:8px 0;color:var(--rd-fg);text-decoration:none}
.rd-list a:hover{color:var(--rd-link)}
.rd-list a[aria-current]{font-weight:700;color:var(--rd-link);box-shadow:inset 3px 0 0 var(--rd-accent);padding-left:10px}
.rd-list .rd-d1 a{padding-left:16px;font-size:14px}
.rd-list .rd-d2 a{padding-left:28px;font-size:13.5px;color:var(--rd-muted)}
.rd-list .rd-d1 a[aria-current],.rd-list .rd-d2 a[aria-current]{padding-left:22px}
.rd-sub{display:block;font-size:12px;color:var(--rd-muted);margin:-5px 0 0;padding-bottom:7px}
.rd-list .rd-d0 .rd-sub{padding-left:0}
.rd-list .rd-d1 .rd-sub{padding-left:16px}
.rd-list .rd-d2 .rd-sub{padding-left:28px}
.rd-list .rd-group{font:400 1.2rem/1.3 var(--serif);padding:18px 0 4px;color:var(--rd-fg)}
.rd-list .rd-part{font:700 11px/1.4 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--rd-accent);padding:16px 0 4px}
.rd-loading{color:var(--rd-muted);padding:8px 0}
.rd-set-label{font:700 11px/1.4 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--rd-accent);margin:10px 0 8px}
.rd-seg{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:6px;margin-bottom:12px}
.rd-seg button{min-height:46px;border:1px solid var(--rd-line);border-radius:6px;background:var(--rd-bg);color:var(--rd-fg);font:500 14px var(--sans);cursor:pointer}
.rd-seg button[aria-pressed="true"]{border:2px solid var(--rd-accent);font-weight:700}
.rd-size{font-family:var(--serif)!important}
.rd-size-1{font-size:14px!important}.rd-size-2{font-size:17px!important}.rd-size-3{font-size:20px!important}.rd-size-4{font-size:24px!important}
.rd-theme-light{background:#fff!important;color:#1f2f3c!important}
.rd-theme-sepia{background:#f6eedc!important;color:#3a2e22!important}
.rd-theme-dark{background:#0f1c28!important;color:#e3dccd!important}
.rd-theme-auto{background:linear-gradient(135deg,#fff 0 50%,#0f1c28 50% 100%)!important;color:#1f2f3c!important;text-shadow:0 0 2px #fff,0 0 4px #fff,0 0 6px #fff}
.rd-leave{margin-top:16px;width:100%;min-height:44px;border:1px solid var(--rd-fg);border-radius:6px;background:transparent;color:var(--rd-fg);font:600 14px var(--sans);cursor:pointer}
.rd-hint{font-size:13px;color:var(--rd-muted);margin-top:14px}

@media (max-width:760px){
  html.lib-reading .lib-layout{padding:20px 18px 80px}
  html.lib-reading[data-rd-size="1"]{--rd-fs:15.5px}
  html.lib-reading{--rd-fs:17.5px}
  html.lib-reading[data-rd-size="3"]{--rd-fs:19.5px}
  html.lib-reading[data-rd-size="4"]{--rd-fs:22px}
  .rd-pop{bottom:10px}
}
@media (prefers-reduced-motion:no-preference){
  .rd-progress span{transition:width .12s linear}
}
@media print{.rd-bar,.rd-drawer,.rd-scrim,.rd-pop,.rd-enter,.lib-continue{display:none!important}}
.lib-continue-wrap .lib-continue{margin:28px 0 0}
