@font-face{font-family:Literata;src:url('./Literata-Roman.ttf') format('truetype');font-style:normal;font-weight:200 900;font-display:swap}
@font-face{font-family:Literata;src:url('./Literata-Italic.ttf') format('truetype');font-style:italic;font-weight:200 900;font-display:swap}
:root{--paper:#f1eee5;--ink:#272e29;--muted:#596259;--line:#c9ccbf;--accent:#50644c;--wash:#e4e7dc;--mark:#d5dfb7;--serif:Literata,Georgia,serif;--mast-height:72px;--share-card-paper:#f1eee5;--share-card-ink:#272e29;--share-card-accent:#50644c;--share-card-font:Literata}
:root[data-theme=dusk]{--paper:#202923;--ink:#e8eadf;--muted:#b9c2b6;--line:#4b5b4e;--accent:#bfce9e;--wash:#303e32;--mark:#4d6340}
:root[data-theme=ink]{--paper:#fffefa;--ink:#242b26;--muted:#536058;--line:#c9cfc8;--accent:#466047;--wash:#edf1e8;--mark:#d6e3bd}
body{font-size:15px}h1,h2,h3{font-weight:400;font-optical-sizing:auto}button,a{touch-action:manipulation}button{min-width:44px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.masthead{display:flex;align-items:center;min-height:72px;padding:6px 5vw;margin:0;gap:24px;border-bottom:1px solid var(--line);background:var(--paper);max-width:none}
.masthead .wordmark{font:500 27px/1 var(--serif);letter-spacing:-.07em;flex:none;text-decoration:none;min-height:44px;display:flex;align-items:center}
.wordmark-and{font-style:italic;font-size:.72em;margin:0 .1em;font-weight:400}
.masthead nav{display:flex;align-items:center;justify-content:center;gap:32px;flex:1;margin:0;flex-wrap:wrap}
.masthead nav a{font-size:13px;min-height:44px;display:flex;align-items:center;letter-spacing:0;text-transform:none;padding:0 3px}
.type-button{border:0;padding:10px;min-width:44px;font:21px var(--serif);margin:0}
.book-entrance{max-width:1320px;margin:auto;min-height:calc(100svh - var(--mast-height) - 98px);padding:52px 7vw 0;display:grid;grid-template-columns:1fr minmax(250px,410px);column-gap:6vw;align-items:center}
.entrance-type{padding-block:22px}.entrance-type .eyebrow{font-size:12px;letter-spacing:.18em;margin:0 0 24px}
.entrance-type h1{font-size:clamp(4.5rem,7.7vw,7.8rem);line-height:1.04;letter-spacing:-.068em;margin:0 0 30px;font-weight:400}
.ampersand{font-style:italic;font-size:.52em;letter-spacing:-.045em;vertical-align:14%;margin-right:.08em}
.translation{font-size:13px;line-height:1.6;margin:0 0 24px;color:var(--muted)}
.primary{background:var(--ink);color:var(--paper);font-size:13px;letter-spacing:.01em;padding:14px 22px;min-height:48px}
.primary:hover{background:var(--accent);color:var(--paper)}
.begin-reading{display:inline-flex;align-items:center;gap:30px}.resume-location{font-size:11px;margin-top:14px;max-width:320px;color:var(--muted)}
.entrance-portrait{margin:0;justify-self:end;width:100%;max-width:380px}.entrance-portrait>button{padding:0;display:block;min-height:0;width:100%;border:0}
.entrance-portrait img{width:100%;height:auto;max-height:62svh;object-fit:contain;display:block;box-shadow:0 0 0 1px #282b2912}
.entrance-portrait figcaption{font-size:10px;line-height:1.5;color:var(--muted);padding-top:14px}
.entrance-bottom{grid-column:1/-1;display:flex;align-items:center;gap:25px;border-top:1px solid var(--line);margin-top:38px;padding:12px 0 16px}.entrance-bottom button{padding-left:0;font-size:12px}.entrance-bottom>.small{font-size:11px;margin-left:auto;max-width:250px}
.reading{padding:0 7vw 60px;max-width:1200px}.reader-tools{position:sticky;top:var(--mast-height);margin:0 0 54px;padding:6px 0;min-height:56px;border-bottom:1px solid var(--line);gap:12px;flex-wrap:wrap}
.reader-tools .tool-group{gap:12px}.reader-tools button{padding:9px 12px;font-size:12px;min-width:44px}.reader-tools .tool-group button:first-child{padding-left:0}
.reader-tools .progress-label{font-size:11px;display:block}.reader-heading{margin:0 auto 42px;max-width:var(--measure)}
.reader-heading .eyebrow{font-size:10px;letter-spacing:.14em;margin-bottom:16px;color:var(--muted)}
.reader-heading h1{font-size:clamp(1.85rem,3.5vw,2.6rem);line-height:1.2;letter-spacing:.035em;margin:0;font-weight:400}
.reading-surface{font-optical-sizing:auto;font-weight:400;letter-spacing:.001em;hyphens:none;font-feature-settings:'kern' 1,'liga' 1;font-variant-numeric:oldstyle-nums}
.reading-surface .text-block.note{font-size:.86em;color:var(--muted);line-height:1.5}
.reading-surface .fixed-lines{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9em;font-variant-numeric:tabular-nums;max-width:100%;line-height:1.7;outline-offset:5px;scrollbar-width:thin}
.text-block{scroll-margin-top:calc(var(--mast-height) + 90px)}
.chapter-end{padding-top:20px;margin-top:42px}.chapter-links{margin:0;gap:24px}.chapter-links a{font:19px/1.4 var(--serif);text-decoration:none;padding-block:8px;min-width:44px}.chapter-links .small{margin:0 0 6px}.chapter-links .nav-title+.small{margin:8px 0 0;font-size:9px;letter-spacing:.02em}.chapter-picture{border-bottom:1px solid var(--line);padding:0 0 18px;margin-bottom:22px;display:flex;align-items:center;gap:18px;flex-wrap:wrap}.chapter-picture button{padding-left:0;font-size:13px}
.reader-hint{font-size:11px;margin-top:34px}.site-footer{font-size:11px;margin:0 5vw;padding:14px 0;gap:16px}.site-footer button{font-size:11px;padding:8px 0}.site-footer .maker-credit{font-size:11px}
.focus .reader-heading .eyebrow{display:block}.focus .reader-heading{margin:0 auto 32px}.focus .reading{padding-top:38px}.focus .chapter-picture{display:none}
.page{max-width:1080px;padding:54px 7vw 80px}.page-head{margin-bottom:32px}.page-head h1{font-size:clamp(2.5rem,5vw,4.5rem);line-height:1.15;letter-spacing:-.05em;margin:10px 0 20px}.page-head .eyebrow{font-size:10px}.page-head p{font-size:14px}
.pictures-page{max-width:1160px}.picture-boundary{display:flex;justify-content:space-between;align-items:center;gap:20px;border-block:1px solid var(--line);padding:9px 0}.picture-boundary p{margin:0;max-width:550px;font-size:11px}.picture-boundary button{font-size:12px;padding-right:0}.return-reading{font-size:12px;padding-left:0;margin-block:15px}
.album-head{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:20px}.album-head h1{font-size:2.6rem;margin:4px 0 0}.album-head .eyebrow{margin:0}.album-head .return-reading{margin:0;padding:8px 0}.picture-boundary+.plate-list{margin-top:22px}
.plate-list{display:grid;grid-template-columns:1fr 1fr;column-gap:50px;row-gap:44px;margin-top:24px}.plate-list figure{margin:0;min-width:0}.plate-list figure>button{padding:0;width:100%;display:block;background:var(--wash)}.plate-list img{width:100%;height:auto;display:block;aspect-ratio:1.37;object-fit:contain;max-height:420px}
.plate-list:has(>figure:only-child){grid-template-columns:1fr;max-width:760px;margin-inline:auto}.plate-list:has(>figure:only-child) img{max-height:none;aspect-ratio:2586/1887}
.plate-list figcaption{padding-top:18px}.plate-list figcaption .eyebrow{font-size:9px;letter-spacing:.08em}.plate-list h2{font-size:25px;line-height:1.3;margin:8px 0}.plate-list figcaption p{font-size:12px;color:var(--muted);margin:8px 0}.gallery-source{border-top:1px solid var(--line);padding-top:24px;margin-top:40px;font-size:11px}.gallery-source button{font-size:11px}
.unopened-album{display:flex;gap:50px;align-items:center;padding:24px 0 40px}.unopened-album>p{font:26px/1.5 var(--serif);max-width:500px}.portrait-small{padding:0;max-width:180px;flex:0 0 28%}.portrait-small img{width:100%;height:auto;display:block}
.book-contents details{border-bottom:1px solid var(--line)}.book-contents summary{padding:16px 0;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:15px;min-height:56px;font-size:12px}.book-contents .contents-toggle{width:12px;height:12px}.book-contents details[open] .contents-toggle{transform:rotate(90deg)}.book-contents summary .small{font-size:10px;margin-left:auto;flex:none}.book-contents ol{display:grid;grid-template-columns:repeat(4,1fr);list-style:none;margin:0;padding:0 0 18px;gap:4px 16px}.book-contents li{min-width:0}.book-contents a{font-size:10px;display:flex;align-items:center;min-height:44px;text-decoration:none;padding:6px}.book-contents [aria-current]{background:var(--wash);color:var(--accent)}
dialog{width:min(730px,calc(100vw - 28px));max-height:calc(100dvh - 28px);box-shadow:0 15px 90px #17201720}.dialog-inner{padding:16px 28px 28px}.dialog-header{top:-1px;margin-bottom:18px;gap:20px;min-height:62px}.dialog-header h2{font:400 25px/1.2 var(--serif);letter-spacing:-.03em}.close-dialog{font-size:12px;padding:8px 0 8px 16px}.dialog-inner p.small{font-size:12px;line-height:1.6}.dialog-quote{font:var(--size)/var(--leading) var(--serif)}
.picture-dialog{width:min(1200px,calc(100vw - 24px))}.picture-dialog .dialog-inner{padding:8px 22px 28px}.picture-dialog .dialog-header{margin-bottom:0}.picture-toolbar{display:flex;gap:20px;align-items:center;padding-block:8px;flex-wrap:wrap}.picture-toolbar button{font-size:12px;padding:8px 0}.picture-toolbar .small{font-size:10px;color:var(--muted)}
.picture-toolbar [aria-pressed=true]{text-decoration:underline;text-underline-offset:5px}.picture-back{flex:none;font-size:11px;padding:8px 0}.dialog-header:has(.picture-back){gap:14px}.dialog-header:has(.picture-back) h2{font-size:18px;flex:1;min-width:0}.dialog-header:has(.picture-back) .close-dialog{padding-left:0}
.picture-viewport{max-width:100%;height:min(65svh,740px);overflow:auto;background:var(--wash);display:flex;align-items:center;justify-content:center;overscroll-behavior:contain;scrollbar-width:thin}
.picture-viewport img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;flex:none}.picture-viewport.enlarged{display:block}.picture-viewport.enlarged img{max-width:none;max-height:none;width:auto;height:auto}
.picture-caption{max-width:680px;margin:30px auto 0}.picture-caption h3{font-size:clamp(1.7rem,3vw,2.4rem);line-height:1.25;letter-spacing:-.04em;margin:10px 0 22px}.picture-caption .eyebrow{font-size:10px;letter-spacing:.1em}.companion-reading{font-family:var(--serif);font-size:var(--size);line-height:var(--leading);white-space:normal}.historical-note{border-top:1px solid var(--line);margin-block:24px;padding-block:8px}.historical-note summary,.edition-about summary,.at-hand summary{min-height:44px;cursor:pointer;font-size:13px;padding:12px 0}.picture-source{display:block;padding-left:0;margin-block:14px;font-size:13px}.source-notices{white-space:pre-wrap;font:12px/1.6 var(--sans);overflow-wrap:anywhere}.source-cover{display:block;max-width:100%;height:auto;max-height:600px}.edition-about details{border-top:1px solid var(--line);padding-block:8px}.edition-about .context-item:first-child{border:0;padding-top:0;margin-top:0}.edition-about h3{font-size:24px}.at-hand details{border-bottom:1px solid var(--line);padding-block:8px}.names-list{margin:0 0 18px}.names-list>div{padding-block:15px;border-bottom:1px solid var(--line)}.names-list>div:last-child{border:0}.names-list dt{font:20px/1.4 var(--serif);margin-bottom:7px}.names-list dd{margin:0;font-size:13px;line-height:1.6;color:var(--muted)}
.settings-presets button{font:17px var(--serif)}.settings-group h3{font-size:23px}.passage-meta .eyebrow{font-size:10px}.passage blockquote{font:var(--size)/var(--leading) var(--serif)}
@media(prefers-reduced-motion:no-preference){.entrance-type{animation:entrance 350ms ease-out}.entrance-portrait{animation:entrance 550ms ease-out}.plate-list img{transition:opacity 150ms ease}.plate-list button:hover img{opacity:.86}}
@keyframes entrance{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(min-width:1500px){.masthead{padding-inline:max(5vw,calc((100vw - 1200px)/2))}.book-entrance{padding-inline:80px;column-gap:100px}}
@media(max-width:760px){.masthead{margin:0;min-height:64px;padding:6px 5vw;gap:15px}.masthead .wordmark{font-size:25px}.masthead nav{gap:15px}.masthead nav a{font-size:12px}.type-button{padding:8px;min-width:44px}.book-entrance{padding:36px 7vw 0;grid-template-columns:1fr minmax(180px,35%);column-gap:35px;min-height:calc(100svh - 170px)}.entrance-type h1{font-size:clamp(3.6rem,9vw,5.5rem)}.entrance-portrait figcaption{font-size:9px}.reading{padding:0 6vw 50px}.reader-tools{top:var(--mast-height);margin-bottom:40px;padding-block:4px;min-height:52px}.reader-tools .tool-group{gap:12px}.reader-heading{margin-bottom:34px}.reader-heading h1{font-size:1.9rem}.reader-heading .eyebrow{font-size:10px}.page{padding:35px 6vw 60px}.plate-list{gap:34px 28px}.dialog-inner{padding:10px 22px 24px}.picture-viewport{height:min(59svh,600px)}}
@media(max-width:540px){.masthead{display:flex;gap:10px;min-height:64px;padding:5px 5vw;margin:0;grid-template-columns:none}.masthead .wordmark{font-size:24px}.masthead nav{display:flex;justify-content:center;gap:12px;flex:1}.masthead nav a{font-size:11px;padding:0 1px}.type-button{min-width:44px;padding:8px}.book-entrance{padding:25px 7vw 0;grid-template-columns:1fr minmax(110px,35%);gap:20px;align-items:center;min-height:0}.entrance-type{padding:12px 0}.entrance-type .eyebrow{font-size:10px;letter-spacing:.12em;margin-bottom:17px}.entrance-type h1{font-size:clamp(3.25rem,11.2vw,5rem);line-height:1.08;margin-bottom:20px}.entrance-type .translation{font-size:10px;margin-bottom:20px}.begin-reading{font-size:11px;padding:12px 14px;gap:14px}.resume-location{font-size:9px;line-height:1.6;margin-top:10px}.entrance-portrait{align-self:start;margin-top:48px;max-width:180px}.entrance-portrait img{max-height:none}.entrance-portrait figcaption{font-size:8px;line-height:1.5;padding-top:9px}.entrance-bottom{margin-top:12px;gap:15px;flex-wrap:wrap;padding-block:8px}.entrance-bottom button{font-size:11px}.entrance-bottom>.small{margin:0;flex-basis:100%;max-width:none;font-size:10px}.reader-tools{top:var(--mast-height);margin-bottom:32px;gap:10px}.reader-tools button{font-size:11px;padding:9px 8px}.reader-tools .tool-group{gap:14px}.reader-tools .progress-label{font-size:9px}.reader-heading h1{font-size:1.8rem}.reader-heading .eyebrow{font-size:9px;letter-spacing:.1em}.reading-surface{font-size:var(--size)}.picture-boundary{display:block;padding-block:12px}.picture-boundary button{padding:6px 0;margin-top:4px}.unopened-album{gap:24px;align-items:start}.unopened-album>p{font-size:22px;margin-top:8px}.portrait-small{max-width:95px}.plate-list{grid-template-columns:1fr;gap:36px}.plate-list img{max-height:420px;aspect-ratio:auto}.plate-list h2{font-size:24px}.book-contents ol{grid-template-columns:repeat(3,1fr);gap:4px 8px}.book-contents a{font-size:9px}.book-contents summary{font-size:11px;gap:10px}.book-contents summary .small{font-size:9px}.dialog-inner{padding:8px 18px 22px}.dialog-header h2{font-size:22px}.picture-dialog .dialog-inner{padding:5px 14px 24px}.picture-toolbar{gap:22px}.picture-toolbar .small{font-size:10px;flex-basis:100%;margin-top:-10px}.picture-caption{margin-top:23px}.picture-caption h3{font-size:1.65rem}.site-footer{padding-block:8px;gap:5px 18px}.site-footer button,.site-footer .maker-credit{font-size:10px}.chapter-links a{font-size:17px}.focus .reading{padding-top:28px}}
@media(max-width:350px){.masthead nav{gap:7px}.masthead{gap:7px}.masthead nav a{font-size:10px}.book-entrance{column-gap:14px;padding-inline:6vw}.entrance-type h1{font-size:3.2rem}.entrance-portrait{min-width:96px}.begin-reading{padding-inline:12px;gap:10px}}
@media(max-width:540px){.pictures-page{padding-top:24px}.album-head{margin-bottom:16px;gap:12px}.album-head h1{font-size:2rem;line-height:1.2}.album-head .return-reading{font-size:11px}.picture-boundary{display:flex;gap:14px;padding-block:6px}.picture-boundary p{flex:1;font-size:10px}.picture-boundary button{font-size:11px;flex:none;margin:0;padding:8px 0}.picture-boundary+.plate-list{margin-top:18px}.picture-boundary .small{line-height:1.5}}
.dialog-inner select{appearance:none;-webkit-appearance:none;display:block;width:100%;min-height:48px;padding:12px 36px 12px 12px;border:1px solid var(--line);border-radius:0;background:var(--paper) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23596259' stroke-width='1.5'%3E%3Cpath d='m4 6 4 4 4-4'/%3E%3C/svg%3E") no-repeat right 12px center/16px 16px;color:var(--ink);font:inherit;line-height:1.4}
select:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
select:disabled{opacity:.55}
@media(max-width:540px){#boundaries-form .form-row{display:block}#boundaries-form select{font-size:14px}}
@media(max-width:540px){.dialog-inner:has(>#boundaries-form)>.dialog-header{flex-wrap:wrap;row-gap:8px}.dialog-inner:has(>#boundaries-form)>.dialog-header h2{display:block;flex:1 1 auto;max-width:100%;overflow:visible;overflow-wrap:normal;word-break:normal;-webkit-line-clamp:unset}.dialog-inner:has(>#boundaries-form)>.dialog-header .close-dialog{margin-left:auto}}
@media(max-width:540px){.plate-list img{aspect-ratio:2586/1887}}
@media(max-height:500px){.masthead{position:relative}.reader-tools{top:0;margin-bottom:22px}.reader-heading{margin-bottom:26px}.picture-viewport{height:60svh}.book-entrance{min-height:0}.entrance-portrait img{max-height:85svh}.entrance-bottom{margin-top:20px}.focus .reading{padding-top:24px}}
.first-source-notice{max-width:68ch;margin:24px auto 30px;padding:0 6vw 20px;border-bottom:1px solid var(--line);font:13px/1.6 var(--sans)}.first-source-notice .eyebrow{font-size:10px}.source-notice-actions{display:flex;flex-wrap:wrap;gap:4px 24px}.source-notice-actions button{min-height:44px;font-size:12px;padding:8px 0}.source-notice-memory{max-width:68ch;margin:16px auto;padding-inline:6vw}.focus .first-source-notice{margin-top:28px}
