:root{--green:#263a32;--green-light:#315f52;--cream:#f3eee4;--paper:#fffdf6;--ink:#25251f;--border:#c7bca9}
*{box-sizing:border-box}html{scroll-behavior:auto}body{margin:0;background:var(--cream);color:var(--ink);font-family:Georgia,'Times New Roman',serif}
button,select{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid #ad8541;outline-offset:2px}
.bar{position:sticky;display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:9px clamp(14px,3vw,48px);background:#f9f5ed;border-bottom:1px solid var(--border);box-shadow:0 3px 9px #25352b1a;font:13px/1.2 Arial,sans-serif}
.bar button,.bar select{min-height:38px;border:1px solid #c9beab;border-radius:4px;background:white;color:var(--green);padding:7px 10px}.bar button:hover,.bar select:hover{border-color:var(--green-light)}.bar #contents,.bar [data-mode].on{background:var(--green-light);color:white;border-color:var(--green-light)}
.bar #sel{max-width:155px}.bar #status{white-space:nowrap;color:#514d44}.mode-buttons{display:flex;gap:5px;flex-wrap:wrap}.bar #orthography[aria-pressed="true"]{background:var(--green-light);color:white}
main{max-width:1320px;margin:auto;padding:26px 68px 130px;display:flex;gap:22px;align-items:flex-start;justify-content:center}.book{min-width:0;width:min(100%,760px)}.leaf{margin:0 auto 30px;scroll-margin-top:calc(var(--reader-header-height,142px) + var(--reader-bar-height,56px) + 18px)}.leaf-paper{width:100%;min-height:calc(100vw * .95);padding:55px 52px 60px;background:var(--paper);border:1px solid #e0d8c9;box-shadow:0 7px 24px #342f231d}.flow{max-width:100%;font-size:18px;line-height:1.52;overflow-wrap:break-word}.flow p{margin:0 0 .72em;text-indent:1.55em}.flow p.footnote{margin-top:1.4em;padding-top:.4em;border-top:1px solid #80796e;font-size:.86em;text-indent:0}.flow h2,.flow h3,.flow h4,.flow h5{margin:1.1em 0 .55em;text-align:center;line-height:1.25;text-indent:0}.flow h2{font-size:1.25em}.flow h3{font-size:1.13em}.flow h4,.flow h5{font-size:1em}.leaf-label{text-align:right;padding:7px 3px 0;color:#5b5b52;font:12px Arial,sans-serif}.scan{display:none;min-width:0;position:sticky;top:calc(var(--reader-header-height,142px) + var(--reader-bar-height,56px) + 16px);width:min(100%,610px);max-height:calc(100vh - var(--reader-header-height,142px) - var(--reader-bar-height,56px) - 32px);overflow:auto}.scan img{display:block;width:100%;height:auto;background:white;box-shadow:0 5px 20px #342f2330}
body[data-mode="continuous"] .leaf-paper{min-height:0;padding-bottom:25px}.leaf.title-leaf .leaf-paper,.leaf.permission-leaf .leaf-paper,.leaf.chapter-leaf .leaf-paper{min-height:850px}.title-composition{min-height:730px;display:flex;flex-direction:column;align-items:center;text-align:center;justify-content:space-between;padding:8px 0 0}.title-composition h2,.title-composition h3{margin:0}.title-composition h2{font-size:1.7em}.title-composition h3{font-size:1.25em}.title-composition p{margin:0;text-indent:0}.title-author{font-size:1.4em}.title-part{font-size:1.25em}.title-subtitle{max-width:550px;font-size:.95em}.title-imprint{margin-top:auto!important;padding-top:80px;font-size:.9em}
.contents-leaf .toc{display:grid;gap:7px}.toc-row{display:grid;grid-template-columns:minmax(0,auto) 1fr auto;gap:8px;align-items:end;color:var(--ink);text-decoration:none;font-size:.95em}.toc-row.level-1{padding-left:1.2em}.toc-row i{border-bottom:1px dotted #7b776d;transform:translateY(-.28em)}.toc-row b{font-weight:400}.toc-row:hover span{text-decoration:underline}.contents-leaf .flow h2{font-size:1.5em;margin:0 0 1.2em}
body[data-mode="book"] .leaf:not(.active),body[data-mode="compare"] .leaf:not(.active){display:none}body[data-mode="book"] main,body[data-mode="compare"] main{max-width:1420px}body[data-mode="book"] .book{width:min(100%,760px)}body[data-mode="scan"] .book{display:none}body[data-mode="scan"] main{max-width:900px}body[data-mode="scan"] .scan{display:block;position:static;width:min(100%,760px);max-height:none}body[data-mode="compare"] .scan{display:block}body[data-mode="compare"] .book{width:min(50%,650px)}body[data-mode="compare"] .scan{width:min(50%,650px)}
.contents-panel{position:fixed;z-index:200;inset:0 auto 0 0;width:min(470px,100vw);overflow:auto;background:#fcf8ef;border-right:1px solid var(--border);box-shadow:12px 0 34px #1c2b2580;padding:20px 24px 36px;font:15px/1.45 Arial,sans-serif}.contents-panel[hidden]{display:none}.contents-panel h2{font:25px Georgia,serif;color:var(--green)}.contents-panel a{display:block;margin:0;padding:12px 0;border-bottom:1px solid #e1d8c8;color:#263a32;text-decoration:none}.contents-panel a:hover{text-decoration:underline}.contents-panel a span{display:block;margin-top:3px;color:#796f61;font-size:12px}.contents-panel button{padding:8px 14px;border:1px solid var(--green-light);background:var(--green-light);color:white;border-radius:4px}
#return-contents,.jump-pair{position:fixed;z-index:110;bottom:calc(18px + env(safe-area-inset-bottom,0px))}#return-contents{left:18px;padding:11px 14px;border:1px solid #26483e;border-radius:6px;background:var(--green-light);color:white;box-shadow:0 3px 12px #13251c44;font:600 13px Arial,sans-serif}#return-contents[hidden]{display:none}.jump-pair{right:18px;display:flex;flex-direction:column;gap:8px}.jump-pair button{width:44px;height:44px;border:1px solid #b8a98f;border-radius:6px;background:#fffdf8;color:var(--green);box-shadow:0 3px 12px #13251c35;font:26px/1 Arial,sans-serif}
@media(max-width:880px){main{padding:18px 60px 130px}body[data-mode="compare"] main{display:block}body[data-mode="compare"] .book,body[data-mode="compare"] .scan{width:min(100%,680px);margin:auto}body[data-mode="compare"] .scan{position:static;margin-top:18px;max-height:none}}
@media(max-width:600px){.bar{gap:6px;padding:8px 12px}.bar button,.bar select{min-height:36px;padding:6px}.bar #status{font-size:12px}.mode-buttons{order:2;width:100%}.mode-buttons button{flex:1;white-space:nowrap}.bar #orthography{order:3}main{padding:16px 18px 150px}.leaf-paper{padding:28px 22px 35px;min-height:0}.flow{font-size:16px;line-height:1.48}.title-composition{min-height:630px}.leaf.title-leaf .leaf-paper,.leaf.permission-leaf .leaf-paper,.leaf.chapter-leaf .leaf-paper{min-height:690px}.toc-row{font-size:.85em}.toc-row.level-1{padding-left:.5em}#return-contents{left:10px;bottom:calc(10px + env(safe-area-inset-bottom,0px));max-width:calc(100vw - 82px)}.jump-pair{right:10px;bottom:calc(10px + env(safe-area-inset-bottom,0px))}}
.sinaysky-reader .contents-leaf .toc{gap:5px}
.sinaysky-reader .contents-leaf .toc-row{font-size:.79em;line-height:1.25}
.sinaysky-reader .source-table{display:grid;gap:4px}
.sinaysky-reader .toc-line{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end}
.sinaysky-reader .toc-line b{font-weight:400}
.sinaysky-reader .index-leaf .flow{font-size:14px;line-height:1.28}
.sinaysky-reader .index-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;border-bottom:1px solid #eee7da;padding:3px 0;overflow-wrap:anywhere}
.sinaysky-reader .index-row>div{min-width:0}
.sinaysky-reader .flow .printed-folio{text-align:center;margin-bottom:.8em;font-size:.85em}
.sinaysky-reader .preface-leaf .flow p{text-indent:1.5em;font-style:italic}
@media(max-width:600px){.sinaysky-reader .index-row{gap:8px}.sinaysky-reader .index-leaf .flow{font-size:11px}.sinaysky-reader .contents-leaf .toc-row{font-size:.68em}}




/* Sinaysky 1917/1915: title composition follows each scanned title page. */
.sinaysky-reader .prose-leaf .flow p:not(.footnote){text-align:justify;text-justify:inter-word;hyphens:auto}
.sinaysky-reader .title-leaf .leaf-paper{position:relative;aspect-ratio:1250/1810;min-height:0;padding:0;container-type:inline-size}
.sinaysky-reader .title-leaf .flow{position:absolute;inset:0;max-width:none}
.sinaysky-reader .title-composition{position:relative;width:100%;height:100%;min-height:0;padding:0;text-align:center;color:#151515;font-family:'Times New Roman',Georgia,serif;line-height:1.1}
.sinaysky-reader .title-composition>div{position:absolute;left:4%;width:92%;margin:0;text-indent:0}
.sinaysky-reader .title-author{top:7%;font-size:clamp(13px,3.3cqw,30px);white-space:nowrap}
.sinaysky-reader .title-author::after{content:'';display:block;width:65%;margin:.2em auto 0;border-top:2px solid currentColor;border-bottom:1px solid currentColor;height:4px}
.sinaysky-reader .title-main{top:25%}
.sinaysky-reader .title-russian{font-size:clamp(20px,5.1cqw,48px);letter-spacing:.19em;line-height:1.2}
.sinaysky-reader .title-main h2{font-family:'Times New Roman',Georgia,serif;font-size:clamp(23px,6.15cqw,57px);font-weight:700;letter-spacing:.06em;line-height:1.35;white-space:nowrap;margin:.9em 0 0}
.sinaysky-reader .title-rule{top:50%;height:1px;width:36%!important;left:32%!important;border-top:1px solid currentColor}
.sinaysky-reader .title-rule span{position:relative;top:-.68em;background:var(--paper);padding:0 .8em;font-size:clamp(10px,1.5cqw,15px)}
.sinaysky-reader .title-part{top:56%;font-size:clamp(14px,3.2cqw,30px);letter-spacing:.05em}
.sinaysky-reader .title-subtitle{top:63%;font-size:clamp(14px,3.4cqw,30px);line-height:1.45;letter-spacing:.035em}
.sinaysky-reader .title-edition{top:75%;font-size:clamp(11px,2.5cqw,22px);font-weight:700}
.sinaysky-reader .title-flourish{top:84%;width:43%!important;left:28.5%!important;border-top:1px solid currentColor}
.sinaysky-reader .title-flourish span{position:relative;top:-.66em;background:var(--paper);padding:0 .65em;font-size:clamp(16px,3cqw,28px)}
.sinaysky-reader .title-imprint{bottom:3%;display:flex;flex-direction:column;align-items:center;gap:.2em;font-size:clamp(10px,2.1cqw,19px);line-height:1.1}
.sinaysky-reader .title-imprint strong{font-size:1.12em;letter-spacing:.13em}
.sinaysky-reader .title-imprint small{font-size:.78em}
.sinaysky-reader .title-imprint b{font-size:1em}
.sinaysky-reader .title-issue-2 .title-author{top:9%}
.sinaysky-reader .title-issue-2 .title-author::after{border-bottom:0;border-top:2px solid currentColor;height:1px}
.sinaysky-reader .title-issue-2 .title-main{top:27%}
.sinaysky-reader .title-issue-2 .title-rule{top:51%}
.sinaysky-reader .title-issue-2 .title-part{top:56%}
.sinaysky-reader .title-issue-2 .title-subtitle{top:63%;font-size:clamp(12px,2.9cqw,27px);letter-spacing:.055em;line-height:1.38}
.sinaysky-reader .title-and{font-size:.9em;letter-spacing:0}
.sinaysky-reader .title-price{left:1%!important;top:72%;width:auto!important;writing-mode:vertical-rl;transform:rotate(180deg);font-size:clamp(9px,1.9cqw,18px)}
.sinaysky-reader .title-issue-2 .title-flourish{top:80%}
.sinaysky-reader .title-issue-2 .title-imprint{bottom:3%}

/* Sinaysky: semantic page regions, one footnote rule, stable page proportions. */
.sinaysky-reader .leaf{container-type:inline-size}
.sinaysky-reader .leaf:not(.title-leaf) .leaf-paper{min-height:calc(100cqw * var(--leaf-ratio));padding:5.5% 6.5% 4.5%}
.sinaysky-reader .leaf:not(.title-leaf) .flow{font-family:'Times New Roman',serif;font-size:2.54cqw;line-height:1.2}
.sinaysky-reader[data-issue="1"] .prose-leaf .flow{font-size:2.12cqw;line-height:1.15}
.sinaysky-reader[data-issue="2"] .prose-leaf .flow{font-size:3.1cqw;line-height:1.2}
.sinaysky-reader[data-issue="1"] .prose-leaf.dense-leaf .flow{font-size:2cqw;line-height:1.12}
.sinaysky-reader[data-issue="2"] .prose-leaf.dense-leaf .flow{font-size:2.85cqw}
.sinaysky-reader .leaf:not(.title-leaf) .flow p{margin:0 0 .3em;text-align:justify;text-justify:inter-word;hyphens:auto;text-indent:1.4em;overflow-wrap:break-word}
.sinaysky-reader .leaf:not(.title-leaf) .flow h2,
.sinaysky-reader .leaf:not(.title-leaf) .flow h3,
.sinaysky-reader .leaf:not(.title-leaf) .flow h4,
.sinaysky-reader .leaf:not(.title-leaf) .flow h5{font-size:1.06em;line-height:1.15;margin:.75em 0 .5em}
.sinaysky-reader .flow .printed-folio{text-align:center;font-size:.88em;margin:0 0 .85em;line-height:1.15}
.sinaysky-reader .flow .footnotes{font-size:.78em;line-height:1.16;margin-top:.75em;padding-top:.45em;position:relative;font-style:normal}
.sinaysky-reader[data-issue="1"] .prose-leaf .footnotes{font-size:.82em}
.sinaysky-reader .flow .footnotes::before{content:'';position:absolute;top:0;left:0;width:29%;border-top:1px solid #80796e}
.sinaysky-reader .flow .footnotes p.footnote{font-size:1em;line-height:inherit;border:0;padding:0;margin:0 0 .25em;text-indent:1.4em;font-style:normal;text-align:justify;hyphens:auto}
.sinaysky-reader .flow .printer-signature{font-size:.72em;margin-top:.4em;text-align:left}
.sinaysky-reader .preface-leaf .flow{font-size:2.38cqw!important;line-height:1.2!important}
.sinaysky-reader .preface-leaf .flow .author-signature{text-align:right!important;margin:.15em 4% .4em!important}
.sinaysky-reader .preface-leaf .flow .footnotes{font-size:.75em}
.sinaysky-reader .leaf.contents-leaf .flow{font-size:2.6cqw}
.sinaysky-reader .leaf.index-leaf .flow{font-size:2.1cqw;line-height:1.18}
.sinaysky-reader .leaf.index-leaf .source-table{gap:0}
.sinaysky-reader .leaf.index-leaf .index-row{padding:0;border:0}
.sinaysky-reader .leaf.index-leaf .source-index-list{display:block;column-count:2;column-gap:2em}
.sinaysky-reader .leaf.index-leaf .index-plain-row{break-inside:avoid;padding:0;border:0}
.sinaysky-reader[data-issue="1"] .contents-leaf .toc{gap:1.5px}
.sinaysky-reader .historical-table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:.68em;line-height:1.16;margin:.8em 0;text-align:center;hyphens:auto;overflow-wrap:anywhere}
.sinaysky-reader .historical-table td{border:1px solid #80796e;padding:.55em .3em;vertical-align:middle}
.sinaysky-reader[data-mode="continuous"] .leaf:not(.title-leaf) .leaf-paper{min-height:0;padding-bottom:4.5%}
.sinaysky-reader[data-mode="compare"] .scan{position:static;max-height:none;overflow:visible}
.sinaysky-reader:not([data-mode="continuous"]) .leaf:not(.title-leaf) .flow{display:flex;flex-direction:column;min-height:calc(100cqw * var(--leaf-ratio) - 10cqw - 2px)}
.sinaysky-reader:not([data-mode="continuous"]) .flow .footnotes{margin-top:auto;padding-top:.65em}
.sinaysky-reader:not([data-mode="continuous"]) .jump-pair{display:none}
.sinaysky-reader[data-mode="continuous"] .prose-leaf .flow,.sinaysky-reader[data-issue][data-mode="continuous"] .prose-leaf.dense-leaf .flow{font-size:18px;line-height:1.35}
.sinaysky-reader[data-mode="continuous"] .prose-leaf .footnotes{font-size:14px}
@media(max-width:600px){
  .sinaysky-reader .leaf:not(.title-leaf) .flow,.sinaysky-reader[data-issue] .prose-leaf .flow,.sinaysky-reader[data-issue] .prose-leaf.dense-leaf .flow{font-size:16px;line-height:1.32}
  .sinaysky-reader[data-issue][data-mode="continuous"] .prose-leaf.dense-leaf .flow{font-size:16px;line-height:1.32}
  .sinaysky-reader .preface-leaf .flow{font-size:16px!important;line-height:1.32!important}
  .sinaysky-reader .flow .footnotes,.sinaysky-reader[data-issue] .prose-leaf .footnotes{font-size:13px;line-height:1.28}
  .sinaysky-reader .preface-leaf .flow .footnotes{font-size:13px}
  .sinaysky-reader .leaf.contents-leaf .flow{font-size:16px}
  .sinaysky-reader .leaf.index-leaf .flow{font-size:13px}
}

/* Full source sheets, including the intentionally blank area of short leaves.
   The median scan proportions give every leaf in the volume the same canvas;
   a genuine text overflow may grow the sheet, never clip or shrink the text. */
html:root:root:root:root body.sinaysky-reader { --sinaysky-paper-ratio:1.436185; }
html:root:root:root:root body.sinaysky-reader[data-issue="2"] { --sinaysky-paper-ratio:1.61859; }
html:root:root:root:root body.sinaysky-reader .leaf .leaf-paper {
  min-height:calc(100cqw * var(--sinaysky-paper-ratio)) !important;
  overflow:visible !important; display:flex; flex-direction:column;
}
html:root:root:root:root body.sinaysky-reader .leaf:not(.title-leaf) .flow {
  display:flex; flex-direction:column; flex:1 0 auto; min-height:0 !important;
}
html:root:root:root:root body.sinaysky-reader .leaf:not(.title-leaf) .flow > * { flex-shrink:0; }
html:root:root:root:root body.sinaysky-reader .flow .footnotes { margin-top:auto !important; padding-top:.65em; }
html:root:root:root:root body.sinaysky-reader .title-leaf .leaf-paper {
  height:calc(100cqw * var(--sinaysky-paper-ratio)) !important;
  padding:0 !important; aspect-ratio:auto !important;
}
html:root:root:root:root body.sinaysky-reader .title-leaf .flow {
  position:absolute !important; inset:0 !important; height:auto !important;
}
html:root:root:root:root body.sinaysky-reader .title-composition {
  position:absolute !important; inset:0 !important; height:auto !important; min-height:0 !important;
}
