:root{--paper:#f5f0e5;--surface:#fffaf0;--ink:#213b38;--muted:#69756c;--line:#d7d8c8;--accent:#9e642e;--green:#173e3c;--size:20px;--measure:690px;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Georgia,'Times New Roman',serif;transition:background .2s,color .2s}body:has(.drawer:not([hidden])){overflow:hidden}[hidden]{display:none!important}a{color:inherit;text-underline-offset:5px}button,input,select{font:inherit}button{cursor:pointer;background:transparent;color:inherit;border:1px solid var(--line);padding:.75rem 1rem;border-radius:3px}button:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:4px}button:disabled{opacity:.35;cursor:default}.primary{background:var(--green);border-color:var(--green);color:#fff7e5}.primary:hover{background:#285853;color:white}.skip{position:fixed;left:12px;top:-100px;z-index:20;padding:15px;background:var(--surface)}.skip:focus{top:12px}.masthead{height:87px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:0 clamp(20px,4vw,70px);gap:16px;font-family:Arial,sans-serif;font-size:11px;letter-spacing:.08em}.wordmark{font-size:12px;letter-spacing:.17em;text-decoration:none;font-weight:600;white-space:nowrap}.mark{font-size:23px;margin-right:10px;color:var(--accent);vertical-align:middle}.masthead nav{display:flex;align-items:center;gap:24px}.masthead button{border:0;padding:10px 0;font-size:11px}.masthead nav a{text-decoration:none}.masthead nav span{padding-left:8px}.cover{max-width:1500px;margin:auto;display:grid;grid-template-columns:1.05fr 1fr;padding:75px clamp(24px,6vw,100px) 0;gap:40px 70px;min-height:calc(100vh - 87px)}.eyebrow{font-family:Arial,sans-serif;font-size:10px;letter-spacing:.24em;margin:0 0 32px;color:var(--accent);line-height:1.8}.cover h1{font-weight:400;font-size:clamp(60px,7.5vw,112px);line-height:.99;letter-spacing:-.045em;margin:0 0 28px}.cover h1 em{font-weight:400}.cover-line{font-size:21px;line-height:1.5;margin:0 0 24px}.blurb{max-width:440px;font-size:15px;line-height:1.85;color:var(--muted);margin-bottom:30px}.cover-actions{display:flex;flex-wrap:wrap;gap:12px}.cover-actions button{font-size:13px;padding:15px 22px}.cover-actions .primary span{margin-left:22px}.book-details{font-family:Arial,sans-serif;font-size:10px;color:var(--muted);letter-spacing:.055em;margin-top:24px;line-height:1.8}.cover-art{align-self:center;position:relative;padding:8px;border:1px solid #b7bcab;max-width:510px;width:100%;justify-self:center}.cover-art img{width:100%;display:block}.art-caption{display:block;text-align:center;font-family:Arial,sans-serif;letter-spacing:.27em;font-size:8px;padding:17px 5px 10px;color:var(--muted)}.cover-bottom{grid-column:1/-1;align-self:end;display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:24px 0;font-size:11px;color:var(--muted)}.cover-bottom a{font-family:Arial,sans-serif;font-size:10px}.reader{max-width:calc(var(--measure) + 88px);margin:0 auto;padding:34px 44px 70px}.reader-top{display:flex;justify-content:space-between;align-items:center;gap:15px;font:10px/1.7 Arial,sans-serif;letter-spacing:.08em;color:var(--muted);padding-bottom:45px}.reader-top button{border:0;font:11px Arial,sans-serif;letter-spacing:0}.chapter-head{padding-bottom:34px;text-align:center}.chapter-kicker{font:10px Arial,sans-serif;letter-spacing:.23em;text-transform:uppercase;color:var(--accent);margin:10px 0 22px}.chapter-head h1{font-weight:400;letter-spacing:-.025em;font-size:clamp(32px,4.5vw,51px);line-height:1.16;margin:0}.chapter-ornament{margin:30px 0 0;color:var(--accent);font-size:17px;letter-spacing:15px}.prose{font-size:var(--size);line-height:1.88;overflow-wrap:break-word}.prose p{margin:0 0 .7em}.prose p+p{text-indent:1.5em}.prose p.first-paragraph{text-indent:0}.prose .first-paragraph:first-letter{font-size:3.4em;float:left;line-height:.86;padding:.08em .1em 0 0;color:var(--accent)}.scene-break{text-align:center;font-size:16px;letter-spacing:.5em;color:var(--accent);padding:24px 0 30px}.scene-break+p{text-indent:0!important}.plate{margin:60px -24px 45px;padding:30px;border:1px solid var(--line);background:var(--surface);break-inside:avoid}.plate-eyebrow{font:9px Arial,sans-serif;letter-spacing:.23em;text-transform:uppercase;color:var(--accent);margin-bottom:13px}.plate h2{font-size:27px;line-height:1.25;font-weight:400;margin:0 0 12px}.plate p{font-size:13px;line-height:1.8;color:var(--muted);margin:12px 0 0}.plate svg{display:block;width:100%;height:auto;margin:23px 0 15px;color:var(--ink)}.plate svg text{font-family:Georgia,serif;fill:currentColor}.plate details{margin-top:16px;font-size:12px;color:var(--muted)}.plate summary{cursor:pointer}.plate.no-plates{display:none}.chapter-nav{display:flex;justify-content:space-between;gap:15px;border-top:1px solid var(--line);padding-top:28px;margin-top:45px;font-size:12px}.reader-footer{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px;color:var(--muted);font:10px/1.7 Arial,sans-serif;margin-top:45px}.reader-footer button{border:0;padding:0;font-size:10px}#endTools{padding:28px 0;line-height:1.7;font-size:14px}#endTools a{margin-left:18px;font-size:12px}.drawer{position:fixed;top:0;right:0;height:100dvh;width:min(460px,100vw);background:var(--surface);z-index:12;padding:30px;overflow-y:auto;box-shadow:-20px 0 80px #0002}.drawer-head{display:flex;align-items:center;justify-content:space-between;gap:15px}.drawer-head h2{font-weight:400;font-size:28px;margin:0;line-height:1.2}.close{font:28px Arial,sans-serif;border:0;padding:6px 12px}.drawer-intro{color:var(--muted);font-size:14px}.search-label{display:block;font:10px Arial,sans-serif;color:var(--muted);margin:25px 0 8px;letter-spacing:.05em}input[type=search]{width:100%;border:1px solid var(--line);background:var(--paper);color:var(--ink);font-size:14px;padding:12px}#contentsList h3{font:10px/1.6 Arial,sans-serif;letter-spacing:.13em;color:var(--accent);margin:28px 0 10px;text-transform:uppercase}.toc-link{display:flex;width:100%;text-align:left;align-items:baseline;gap:14px;border:0;border-bottom:1px solid var(--line);padding:12px 6px;font-size:14px;border-radius:0}.toc-link small{font:10px Arial,sans-serif;color:var(--muted);width:20px;flex-shrink:0}.toc-link[aria-current]{background:var(--paper);border-left:2px solid var(--accent)}.drawer-downloads{display:grid;gap:18px;margin:35px 0;font:12px Arial,sans-serif}.scrim{position:fixed;inset:0;background:#10292575;z-index:11;border:0;border-radius:0}.scrim:hover{background:#10292575}.settings fieldset{border:0;border-bottom:1px solid var(--line);margin:30px 0;padding:0 0 25px}.settings legend{font-size:13px;margin-bottom:15px}.theme-options,.size-control{display:flex;gap:10px;align-items:center}.theme-options button{font-size:12px}.theme-options button[aria-pressed=true]{border-color:var(--accent);background:var(--paper)}.size-control output{font:12px Arial,sans-serif;padding:0 15px}.size-control button{min-width:55px}.settings select{width:100%;padding:12px;background:var(--paper);color:var(--ink);border:1px solid var(--line);font-size:14px}.check{display:flex;align-items:center;gap:10px;font-size:14px}.check input{accent-color:var(--accent)}.setting-note{font-size:13px;line-height:1.9;color:var(--muted);margin:22px 0}.settings>button{display:block;margin:12px 0;font-size:12px}#saveStatus{font-size:12px;line-height:1.6}.reading-progress{position:fixed;bottom:0;left:0;width:100%;height:3px;background:var(--line);z-index:8}#progressBar{display:block;background:var(--accent);height:100%;width:0}.toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%);background:var(--green);color:#fff7e5;padding:12px 20px;border-radius:3px;z-index:15;font:12px Arial,sans-serif;opacity:0;pointer-events:none;transition:opacity .2s}.toast.visible{opacity:1}#searchResults .result{display:block;width:100%;text-align:left;font-size:13px;margin:12px 0;padding:14px;line-height:1.65}#searchResults .result small{display:block;color:var(--muted);font-size:11px;margin-top:7px}.nojs{padding:30px}.editorial{max-width:1000px;margin:60px auto;padding:0 30px 80px}.editorial h1{font-weight:400;font-size:48px;letter-spacing:-.03em}.editorial h2{font-size:26px;font-weight:400;margin-top:45px}.editorial h3{font-size:18px}.editorial p,.editorial li{font-size:15px;line-height:1.85}.editorial .notice{border-left:3px solid var(--accent);padding:15px 24px;background:var(--surface)}.table-wrap{overflow:auto}.editorial table{border-collapse:collapse;width:100%;font-size:12px;line-height:1.65}.editorial td,.editorial th{padding:13px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.editorial th{font:10px Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase}.editorial code{font-size:11px;overflow-wrap:anywhere}.notes-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.notes-grid>div{background:var(--surface);border:1px solid var(--line);padding:20px}.spoiler-warning{color:var(--accent);font:12px/1.7 Arial,sans-serif}html[data-theme=dusk]{--paper:#e7d9c4;--surface:#f0e4d0;--ink:#3d392e;--muted:#71634f;--line:#cbbba0;--accent:#86552d}html[data-theme=night]{color-scheme:dark;--paper:#132c2b;--surface:#193533;--ink:#e7e5d6;--muted:#a9bbb0;--line:#38524b;--accent:#d5ad71;--green:#2e5953}html[data-theme=night] .cover-art{border-color:#52695d}html[data-theme=night] .primary{background:#dbc391;color:#183432;border-color:#dbc391}html[data-theme=night] .primary:hover{background:#ecdbb8}body.wide{--measure:810px}body.hide-plates .plate{display:none}@media(min-width:1500px){.cover{padding-top:100px}}@media(max-width:900px){.cover{gap:35px;padding-top:55px;grid-template-columns:1fr .8fr}.cover h1{font-size:74px}.cover-line{font-size:18px}.masthead nav{gap:15px}.masthead nav a{font-size:0}.masthead nav a span{font-size:14px}.cover-art{align-self:start;margin-top:40px}.reader{padding-left:30px;padding-right:30px}.plate{margin-left:0;margin-right:0;padding:24px}}@media(max-width:650px){.masthead{height:70px;padding:0 18px}.wordmark{font-size:10px;letter-spacing:.1em}.mark{margin-right:5px;font-size:20px}.masthead nav{gap:10px}.masthead nav button{font-size:0}.masthead nav button span{font-size:16px}.cover{display:flex;flex-direction:column;padding:35px 25px 0;gap:30px}.cover h1{font-size:73px}.eyebrow{margin-bottom:25px;font-size:9px}.cover-art{max-width:380px;align-self:center;margin-top:0}.cover-line{font-size:19px}.cover .blurb{font-size:14px}.cover-bottom{font-size:10px;gap:20px}.cover-bottom span{max-width:100px}.cover-bottom a{font-size:9px;text-align:right}.book-details{font-size:9px}.reader{padding:25px 22px 60px}.reader-top{padding-bottom:25px;font-size:9px}.reader-top button{font-size:10px;padding-right:0}.prose{line-height:1.8}.chapter-head{padding-bottom:28px}.chapter-kicker{margin-bottom:18px}.plate{padding:20px;margin-top:42px}.plate h2{font-size:24px}.chapter-nav button{font-size:11px;padding:12px}.drawer{padding:25px}.notes-grid{grid-template-columns:1fr}.editorial{padding:0 22px}.editorial h1{font-size:37px}#endTools a{display:block;margin:18px 0 0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}@media print{.masthead,.drawer,.scrim,.reading-progress,.reader-top,.chapter-nav,.reader-footer,.cover,#endTools,.toast{display:none!important}body{background:white!important;color:black!important}.reader{display:block!important;max-width:none;padding:0}.prose{font-size:11pt;line-height:1.55}.chapter-head h1{font-size:25pt}.plate{background:white;border-color:#ccc;margin:25px 0;color:black}.plate p{color:#444}article{break-after:page}}
.prose p.verse{white-space:pre-line;text-indent:0;margin:1.5em 1.2em;font-style:italic;line-height:1.9}
html[data-audience=reader] [data-editor-only]{display:none!important}
/* The reading edition: a painted title page, then a quiet book. */
:root{--paper:#f6f3ec;--surface:#fcfaf5;--ink:#263136;--muted:#717570;--line:#d7d5cd;--accent:#8a623d;--green:#183d46;--measure:675px}
html[data-audience=reader] [data-editor-only]{display:none!important}
body{font-family:Georgia,'Times New Roman',serif}
.masthead{height:72px;padding:0 clamp(22px,4vw,72px);border-bottom:1px solid var(--line);font-size:12px;letter-spacing:0;position:relative;z-index:5}
.wordmark{font:italic 20px Georgia,serif;letter-spacing:-.035em;font-weight:400}
.masthead nav{gap:32px}.masthead nav button{font:12px Arial,sans-serif;letter-spacing:.02em;padding:14px 0}
.masthead #settingsBtn{font:20px Georgia,serif;min-width:28px}
.at-cover .masthead{background:#0d252d;color:#eee8d8;border-color:#ffffff20}
.title-page{position:relative;isolation:isolate;min-height:calc(100svh - 72px);background:#0d252d;color:#f6efdf;overflow:hidden;display:flex;align-items:center}
.title-painting{position:absolute;right:0;top:0;height:100%;width:69%;object-fit:cover;object-position:50% 46%;z-index:-3;opacity:.96}
.title-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#0d252d 0%,#0d252df5 20%,#0d252d99 42%,#0d252d00 72%),linear-gradient(0deg,#0d252d99,transparent 32%)}
.title-copy{padding:65px clamp(28px,7.5vw,140px) 120px;max-width:1200px;width:100%}
.edition-line{font:11px/1.5 Arial,sans-serif;letter-spacing:.19em;margin:0 0 44px;color:#e7ddc8}
.title-copy h1{font-weight:400;font-size:clamp(82px,10.8vw,176px);line-height:.9;letter-spacing:-.065em;margin:0 0 38px;text-shadow:0 2px 30px #071b2230}
.title-copy h1 span{display:block;font-size:.45em;font-style:italic;letter-spacing:-.05em;margin-bottom:16px;margin-left:7px}
.title-deck{font-size:clamp(18px,1.8vw,25px);line-height:1.6;margin:0 0 32px;max-width:350px;color:#e7e1d3}
.cover-actions{gap:14px;align-items:center}.cover-actions button{font:12px Arial,sans-serif;border-radius:0;padding:17px 24px}
.at-cover .cover-actions .primary{background:#eee5d0;color:#19333a;border-color:#eee5d0}.at-cover .cover-actions .primary:hover{background:white}
.cover-actions #resumeBtn{border-color:#eee5d04d;background:#0c293b7d;color:#eee5d0}
.book-details{font:11px/1.7 Arial,sans-serif;letter-spacing:.02em;color:#c6c8bc;margin-top:22px}
.painting-caption{position:absolute;right:35px;bottom:28px;font:italic 13px Georgia,serif;color:#fff2d9;text-shadow:0 1px 8px #0009}
.turn-page{position:absolute;bottom:32px;left:clamp(28px,7.5vw,140px);font:11px Arial,sans-serif;text-decoration:none;color:#e1d9c7;letter-spacing:.03em}.turn-page span{padding-left:24px;font-size:18px}
.opening-leaf{padding:95px 30px 90px;max-width:960px;margin:auto}.leaf-label{font:10px Arial,sans-serif;letter-spacing:.22em;text-align:center;color:var(--accent);margin:0 0 38px}
.opening-leaf blockquote{font-size:clamp(28px,4vw,45px);line-height:1.4;letter-spacing:-.025em;text-align:center;margin:0 auto 45px;max-width:800px;font-style:italic}
.leaf-notes{display:grid;grid-template-columns:1fr 1fr;gap:40px;max-width:760px;margin:auto}.leaf-notes p{font-size:16px;line-height:1.9;margin:0}
.edition-links{display:flex;gap:24px;justify-content:center;align-items:center;margin-top:43px;flex-wrap:wrap;font:11px Arial,sans-serif}.edition-links button{border:0;border-bottom:1px solid var(--accent);border-radius:0;padding:8px 0;font-size:11px}
.cover-footer{border-top:1px solid var(--line);margin:0 4vw;padding:24px 0;display:flex;justify-content:space-between;gap:24px;font:10px Arial,sans-serif;color:var(--muted)}
.reader{padding-top:32px}.reader-top{padding-bottom:60px;letter-spacing:.06em}.reader-top button{font-size:10px}.chapter-head{padding-bottom:40px}.chapter-kicker{font-size:10px;letter-spacing:.16em;color:var(--muted)}
.chapter-head h1{font-size:clamp(34px,4vw,52px);line-height:1.22;letter-spacing:-.035em}.chapter-ornament{font-size:14px;letter-spacing:0;margin:30px 0 0}.chapter-ornament:after{content:'';display:block;width:32px;height:1px;background:var(--line);margin:auto}
.prose{line-height:1.82}.prose .first-paragraph:first-letter{color:var(--ink);font-size:3.15em;line-height:.88}
.plate{margin:65px -20px 45px;background:transparent;border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:30px 0;max-width:100%}.plate-eyebrow{font-size:9px;letter-spacing:.13em;color:var(--muted)}.plate h2{font-size:25px}.plate p{line-height:1.75}.plate svg{margin:25px 0}
.story-art{margin:65px -55px;break-inside:avoid;text-align:center}.story-art button{border:0;padding:0;display:block;width:100%;background:transparent}.story-art img{width:100%;display:block;max-height:850px;object-fit:contain}.story-art figcaption{font:italic 13px/1.7 Georgia,serif;color:var(--muted);margin-top:16px}.hide-plates .story-art{display:none}
.atlas-invitation{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:25px 0;margin:45px 0;text-align:center}.atlas-invitation p{font:italic 16px/1.7 Georgia,serif}.atlas-invitation button{font:11px Arial,sans-serif;border-radius:0}
.drawer{padding:35px;background:var(--surface);box-shadow:-20px 0 70px #0002}.drawer-head h2{font-size:30px}.drawer-intro{font-size:13px}.drawer .close{font-size:28px}.toc-link{font-size:15px;line-height:1.5;padding:13px 0}.drawer-downloads{padding-top:25px;border-top:1px solid var(--line);font-size:11px}
.art-dialog{padding:0;border:0;background:var(--paper);color:var(--ink);max-width:1000px;width:calc(100vw - 40px);max-height:94dvh;overflow:auto;overscroll-behavior:contain}.art-dialog::backdrop{background:#071b24d9;backdrop-filter:blur(5px)}.art-dialog form{position:sticky;top:0;display:flex;justify-content:flex-end;z-index:2;pointer-events:none;height:50px}.art-dialog .close{background:var(--paper);margin:5px;pointer-events:auto;box-shadow:0 0 10px #0001}.art-dialog figure{margin:0 24px 30px;text-align:center}.art-dialog img{display:block;width:100%;max-height:78dvh;object-fit:contain}.art-dialog figcaption{font:italic 14px/1.7 Georgia,serif;margin:18px auto 0;max-width:670px}.art-dialog .atlas-image{max-height:none}.atlas-intro{text-align:center;padding:0 25px 10px}.atlas-intro h2{font-weight:400;font-size:35px;margin:0 0 10px}.atlas-intro p{font-size:14px;line-height:1.8;margin:0 auto;max-width:540px}.atlas-note{font:12px/1.7 Arial,sans-serif;text-align:center;padding:0 20px 20px;color:var(--muted)}
.editorial .masthead{position:static}.editorial h1{line-height:1.2}.editorial .notes-grid>div{border:0;border-top:1px solid var(--line);background:transparent;padding:15px 0}
html[data-theme=night]{--paper:#14282e;--surface:#1a3035;--ink:#e6e1d7;--muted:#acb7b6;--line:#3d5155;--accent:#d0b185;--green:#2e5159}html[data-theme=night] .primary{background:#d6c6a8;color:#18313a;border-color:#d6c6a8}
@media(min-width:1700px){.title-painting{width:65%;object-position:50% 43%}.title-copy{max-width:1450px;margin:auto}.title-shade{background:linear-gradient(90deg,#0d252d 0%,#0d252df0 25%,#0d252d55 55%,transparent 78%)}}
@media(max-width:900px){.masthead nav a{font-size:12px}.title-copy h1{font-size:110px}.title-copy{padding-left:6vw}.title-painting{width:80%;object-position:50% 50%}.title-shade{background:linear-gradient(90deg,#0d252d 0%,#0d252dc9 32%,#0d252d15 95%),linear-gradient(0deg,#0d252d,transparent 70%)}.story-art{margin-left:-15px;margin-right:-15px}}
@media(max-width:650px){.masthead{height:64px;padding:0 22px}.masthead nav{gap:22px}.masthead nav button{font-size:11px}.wordmark{font-size:19px}.title-page{min-height:calc(100svh - 64px);align-items:flex-end}.title-painting{width:100%;height:100%;object-position:54% 30%;opacity:.88}.title-shade{background:linear-gradient(0deg,#0d252d 0%,#0d252df2 12%,#0d252d90 42%,#0d252d00 85%)}.title-copy{padding:230px 26px 100px}.edition-line{font-size:9px;letter-spacing:.14em;margin-bottom:25px}.title-copy h1{font-size:clamp(69px,16.7vw,105px);margin-bottom:24px}.title-copy h1 span{margin-left:3px;margin-bottom:10px}.title-deck{font-size:18px;line-height:1.5;margin-bottom:24px}.cover-actions{gap:10px}.cover-actions button{padding:14px 17px;font-size:11px}.book-details{font-size:10px;margin-top:16px}.painting-caption{display:none}.turn-page{left:28px;bottom:30px;font-size:10px}.opening-leaf{padding:65px 28px}.opening-leaf blockquote{font-size:29px;margin-bottom:30px}.leaf-notes{grid-template-columns:1fr;gap:20px}.leaf-notes p{font-size:15px}.edition-links{justify-content:flex-start;gap:20px;margin-top:30px}.cover-footer{margin:0 25px;line-height:1.8;font-size:9px}.cover-footer span{max-width:150px}.reader{padding:25px 25px 60px}.reader-top{padding-bottom:40px;gap:12px}.chapter-head{padding-bottom:30px}.chapter-head h1{font-size:35px}.prose{line-height:1.78}.plate{margin:45px 0;padding:25px 0}.story-art{margin:45px -10px}.story-art figcaption{font-size:12px;padding:0 12px}.art-dialog{width:calc(100vw - 16px);max-height:96dvh}.art-dialog figure{margin:0 10px 24px}.art-dialog .atlas-image{min-width:550px}.art-dialog:has(.atlas-image) figure{overflow:auto}.drawer{padding:28px}.chapter-nav button{padding:12px 10px;font-size:10px}}
@media print{.story-art{margin:25px 0}.story-art img{max-height:700px}.story-art button{display:block}.art-dialog,.atlas-invitation{display:none!important}.plate{max-width:none}.chapter-ornament:after{background:#999}}

.title-painting{mask-image:linear-gradient(90deg,transparent,#000 18%)}@media(max-width:650px){.title-painting{mask-image:none}}
.story-art img,.art-dialog img{height:auto}

/* Narrative scene plates, Revision07. Full composition retained at every width. */
.story-art button{cursor:zoom-in}.story-art button:hover{background:transparent}.story-art.landscape img{max-height:none;object-fit:contain}.art-dialog{max-width:1440px}.art-dialog img{height:auto}.story-art figcaption{font-size:13px}
body:has(.art-dialog[open]){overflow:hidden}.art-dialog:not(:has(.atlas-image)) form{position:absolute;right:0;top:0;height:auto}.art-dialog:not(:has(.atlas-image)) figure{margin:24px 24px 20px}.art-dialog:not(:has(.atlas-image)) img{max-height:calc(94dvh - 110px)}.art-dialog:not(:has(.atlas-image)) figcaption{margin-top:12px}@media(max-width:600px){.art-dialog:not(:has(.atlas-image)) figure{margin:16px 12px}.story-art.landscape{margin-left:-10px;margin-right:-10px}}

/* listen-aloud — sticky player bar */
.listening-line{background:rgba(184,140,74,.18);box-shadow:inset 0 0 0 1px rgba(184,140,74,.28);border-radius:4px;transition:background .2s}
body.listen-picking #chapter .prose p{cursor:pointer}
body.listen-picking #chapter .prose p:hover{background:rgba(184,140,74,.14);border-radius:4px}

.listen-bar{
  position:fixed;top:0;left:0;right:0;z-index:14;
  pointer-events:none;
}
/* The bar used to paint over the settings sheet and hide its close button. */
body:has(.drawer:not([hidden])) .listen-bar{z-index:10}
.listen-bar[hidden]{display:none!important}
.listen-bar-shell{
  pointer-events:auto;
  margin:calc(env(safe-area-inset-top,0px) + 8px) auto 0;
  width:min(720px, calc(100vw - 20px));
  background:color-mix(in srgb, var(--surface) 92%, #0d252d 8%);
  border:1px solid color-mix(in srgb, var(--line) 70%, var(--accent) 30%);
  border-radius:18px;
  box-shadow:0 10px 36px #0d252d33, 0 1px 0 #ffffff80 inset;
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  overflow:hidden;
}
html[data-theme=night] .listen-bar-shell{
  background:color-mix(in srgb, var(--surface) 88%, #000 12%);
  box-shadow:0 12px 40px #0008, 0 1px 0 #ffffff10 inset;
}
.listen-bar-row{
  display:flex;align-items:center;gap:4px;
  padding:8px 10px 8px 8px;
  min-height:56px;
}
.listen-icon-btn{
  flex:0 0 auto;
  width:42px;height:42px;padding:0;margin:0;
  border:0;border-radius:999px;
  display:inline-flex;align-items:center;justify-content:center;
  color:var(--ink);background:transparent;
}
.listen-icon-btn svg{width:22px;height:22px;fill:currentColor;display:block}
.listen-icon-btn:hover{background:color-mix(in srgb, var(--accent) 14%, transparent);border-color:transparent}
.listen-icon-btn:disabled{opacity:.28;cursor:default}
.listen-icon-btn:disabled:hover{background:transparent}
.listen-play-btn{
  width:48px;height:48px;
  background:var(--green);color:#fff7e5;
  box-shadow:0 4px 14px #173e3c44;
}
.listen-play-btn:hover{background:#285853;color:#fff;border-color:transparent}
.listen-play-btn.is-live{background:var(--accent);box-shadow:0 4px 14px #9e642e55}
.listen-play-btn.is-picking{background:#8a3b2e;box-shadow:0 4px 14px #8a3b2e55}
.listen-play-btn svg{width:24px;height:24px}
.listen-bar-meta{
  flex:1 1 auto;min-width:0;padding:0 8px;
  display:flex;flex-direction:column;gap:2px;justify-content:center;
}
.listen-status{
  margin:0;font:12px/1.35 Arial,sans-serif;color:var(--muted);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.listen-sleep-count{
  font:600 11px/1 Arial,sans-serif;color:var(--accent);letter-spacing:.04em;
}
.listen-sleep-chip{
  position:relative;display:flex;align-items:center;gap:4px;
  height:36px;padding:0 10px 0 8px;border-radius:999px;
  border:1px solid var(--line);background:var(--paper);cursor:pointer;
}
.listen-sleep-chip:hover{border-color:var(--accent)}
body.listen-sleep-armed .listen-sleep-chip{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, var(--paper))}
.listen-sleep-icon{display:inline-flex;color:var(--accent)}
.listen-sleep-icon svg{width:16px;height:16px;fill:currentColor}
.listen-sleep-chip select{
  appearance:none;-webkit-appearance:none;border:0;background:transparent;
  color:var(--ink);font:11px/1 Arial,sans-serif;padding:0 12px 0 0;margin:0;
  max-width:72px;cursor:pointer;
}
.listen-icon-btn.is-active{background:color-mix(in srgb, var(--accent) 18%, transparent);color:var(--accent)}
.listen-panel{
  border-top:1px solid var(--line);
  padding:12px 14px 14px;
  display:grid;gap:8px;
  background:color-mix(in srgb, var(--paper) 70%, var(--surface));
}
.listen-panel[hidden]{display:none!important}
.listen-field{font:11px/1.3 Arial,sans-serif;color:var(--muted);margin:4px 0 0}
.listen-panel select,.listen-panel input[type=range]{width:100%}
.listen-panel select{
  border:1px solid var(--line);background:var(--surface);color:var(--ink);
  padding:10px 12px;border-radius:10px;font:13px/1.3 Arial,sans-serif;
}
.listen-check{display:flex;align-items:center;gap:8px;font:13px/1.3 Arial,sans-serif;margin-top:4px}
.listen-check input{accent-color:var(--accent)}
.listen-preview-btn{
  margin-top:4px;border-radius:999px;padding:10px 14px;font:12px Arial,sans-serif;
  border:1px solid var(--line);background:var(--surface);
}
body.listen-bar-on{padding-top:76px}
body.listen-bar-on .masthead{top:0}
@media(max-width:650px){
  .listen-bar-shell{width:calc(100vw - 12px);margin-top:calc(env(safe-area-inset-top,0px) + 6px);border-radius:16px}
  .listen-bar-row{gap:2px;padding:6px 8px;min-height:52px}
  .listen-icon-btn{width:38px;height:38px}
  .listen-play-btn{width:44px;height:44px}
  .listen-sleep-chip select{max-width:64px}
  .listen-status{font-size:11px}
  body.listen-bar-on{padding-top:70px}
}
@media print{.listen-bar{display:none!important}body.listen-bar-on{padding-top:0}}

.reader-top{flex-wrap:wrap}.reader-top #topNextBtn{margin-left:auto}@media(max-width:650px){.reader-top #partLabel{flex-basis:100%}}

.listen-connection-note{margin:0;font:11px/1.6 Arial,sans-serif;color:var(--muted)}

/* A painted exchange replaces its repeated printed lines; text mode restores them. */
.dialogue-original{display:none}.dialogue-entire{display:none}.dialogue-remainder{display:inline}
.hide-plates .dialogue-original,.dialogue-fallback .dialogue-original{display:inline}
.hide-plates .dialogue-entire,.dialogue-entire.dialogue-fallback{display:block}
.hide-plates .dialogue-remainder,.dialogue-fallback .dialogue-remainder{display:none}
.story-art.listening-line{outline:2px solid var(--accent);outline-offset:8px}
.art-unavailable{display:none}
.story-art.dialogue-panel{margin-top:20px;margin-bottom:20px}.story-art.dialogue-panel img{max-height:none}

/* Front and back book jacket. The home page ends at the cover. */
.at-cover #homeLink{display:none}
.at-cover .masthead nav{width:100%;justify-content:flex-end}
.epub-downloads{position:relative;margin-right:auto;font:12px Arial,sans-serif;letter-spacing:.02em}
body:not(.at-cover) .epub-downloads{margin-right:0}
.epub-downloads summary{display:flex;align-items:center;gap:7px;list-style:none;cursor:pointer;padding:14px 0;color:inherit;white-space:nowrap}
.epub-downloads summary::-webkit-details-marker{display:none}
.epub-downloads summary svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.3;transition:transform .2s}
.epub-downloads[open] summary svg{transform:rotate(180deg)}
.epub-options{position:absolute;left:-18px;top:calc(100% + 10px);width:280px;padding:8px;background:var(--surface);color:var(--ink);border:1px solid var(--line);box-shadow:0 16px 45px #0003;z-index:30}
.epub-options a{display:block;padding:15px 13px;text-decoration:none;line-height:1.5}
.epub-options a+a{border-top:1px solid var(--line)}
.epub-options a:hover,.epub-options a:focus-visible{background:color-mix(in srgb,var(--accent) 10%,transparent)}
.epub-options span{display:block;font:16px/1.6 Georgia,serif}
.epub-options small{display:block;font:11px/1.6 Arial,sans-serif;color:var(--muted);margin-top:3px}
.at-cover .epub-options{background:#163038;color:#f0e9da;border-color:#eee5d02b}
.at-cover .epub-options small{color:#b9c6c4}
.at-cover .epub-options a+a{border-color:#eee5d020}
.at-cover .epub-options a:hover,.at-cover .epub-options a:focus-visible{background:#eee5d00d}
#cover{background:#0d252d}
.book-jacket{height:calc(100svh - 72px);min-height:480px;perspective:1800px;overflow:hidden;background:#0d252d}
.jacket-turner{height:100%;width:100%;position:relative;transform-style:preserve-3d;transition:transform .85s cubic-bezier(.22,.7,.2,1)}
.book-jacket.is-back .jacket-turner{transform:rotateY(-180deg)}
.jacket-front,.jacket-back{position:absolute;inset:0;width:100%;height:100%;backface-visibility:hidden;-webkit-backface-visibility:hidden}
.jacket-front.title-page{min-height:0;isolation:auto;overflow:hidden}
.cover-art-flip{position:absolute;inset:0;width:100%;height:100%;border:0;padding:0;border-radius:0;background:#0d252d;cursor:pointer;z-index:0}
.cover-art-flip:hover{background:#0d252d}
.cover-art-flip .title-painting{z-index:0;pointer-events:none}
.jacket-front .title-shade{z-index:1;pointer-events:none}
.jacket-front .title-copy{position:relative;z-index:2;padding:70px clamp(28px,7.5vw,140px) 100px;max-width:1400px;pointer-events:none}
.jacket-front .title-copy h1{margin-bottom:48px}
.jacket-front .cover-actions{pointer-events:auto;display:flex;flex-wrap:wrap}



.jacket-back{transform:rotateY(180deg);background:#102b32;color:#eee5d0;display:flex;align-items:center;justify-content:center;overflow-y:auto;overscroll-behavior:contain;box-shadow:inset 12px 0 30px #06171d44}
.back-cover-art{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;border-radius:0;background:#102b32;cursor:pointer;overflow:hidden}
.back-cover-art:hover{background:#102b32}
.back-cover-art img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 55%;pointer-events:none}
.back-cover-art::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#071c24f5 0%,#071c24e8 32%,#071c24b8 54%,#071c2440 80%,#071c2426),linear-gradient(0deg,#071c2466,transparent 35%);pointer-events:none}
.back-cover-art:focus-visible{outline:2px solid #eee5d0;outline-offset:-10px}
.back-cover-copy{position:relative;width:min(670px,100%);padding:40px 32px;margin-right:auto;margin-left:clamp(0px,5vw,108px);pointer-events:none}

.back-cover-copy h2{font-size:clamp(29px,3vw,43px);font-weight:400;line-height:1.3;letter-spacing:-.035em;margin:0 0 28px;color:#f5eddd}
.back-cover-blurb{max-width:570px}
.back-cover-blurb p{font:17px/1.85 Georgia,serif;margin:0 0 17px;color:#d7dfd9}





.cover-art-flip:focus-visible{outline:2px solid #eee5d0;outline-offset:-10px}
.at-cover .reading-progress{display:none}
@media(max-width:900px){.back-cover-copy{width:min(640px,100%)}.back-cover-copy h2{font-size:36px}}
@media(max-width:650px){
 .download-word{display:none}.epub-downloads{font-size:11px}.masthead nav{gap:18px}
 .book-jacket{height:calc(100svh - 64px);min-height:440px}
 .jacket-front .title-copy{padding:220px 26px 105px;align-self:flex-end}
 .jacket-front .title-copy h1{margin-bottom:30px;font-size:clamp(69px,16.7vw,105px)}

 .back-cover-art img{object-position:65% center}
 .back-cover-art::after{background:linear-gradient(90deg,#071c24e8,#071c24bd),linear-gradient(0deg,#071c2466,transparent)}
 .back-cover-copy{padding:32px 28px;margin:auto 0}
 .back-cover-copy h2{font-size:30px;line-height:1.32;margin-bottom:24px}
 .back-cover-blurb p{font-size:15px;line-height:1.8;margin-bottom:16px}


 .epub-options{left:-10px;top:calc(100% + 5px);width:min(280px,calc(100vw - 36px))}
}
@media(max-width:420px){.masthead{padding:0 16px;gap:12px}.masthead nav{gap:12px}.wordmark{font-size:16px}}
@media(max-height:650px) and (min-width:651px){.jacket-front .title-copy{padding-top:35px;padding-bottom:75px}.jacket-front .title-copy h1{font-size:110px;margin-bottom:30px}.back-cover-copy{padding-top:25px;padding-bottom:25px}.back-cover-copy h2{font-size:34px;margin-bottom:18px}.back-cover-blurb p{font-size:16px;line-height:1.7;margin-bottom:14px}}
@media(prefers-reduced-motion:reduce){.jacket-turner{transition:none}.epub-downloads summary svg{transition:none}}

.back-cover-copy h2,.back-cover-blurb{pointer-events:auto}
