:root{color-scheme:light;--paper:#f4efe4;--ink:#302d27;--muted:#70685d;--line:#d4cabb;--accent:#7c4b2e;--panel:#fbf7ee;--size:21px;--spacing:1.85;--width:42rem;--reading-font:Georgia,'FreeSerif','Times New Roman',serif}
:root[data-theme=dark]{color-scheme:dark;--paper:#1d211f;--ink:#e7dfd0;--muted:#b0aa9c;--line:#44483e;--accent:#e0ad7c;--panel:#282d28}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:6rem}body{margin:0;background:var(--paper);color:var(--ink);font-family:Georgia,'FreeSerif','Times New Roman',serif}a{color:inherit;text-underline-offset:5px}button,select,input{font:inherit}button,select{border:1px solid var(--line);background:var(--panel);color:var(--ink);padding:.6rem .8rem;border-radius:3px}button,a,select,input{touch-action:manipulation}button{cursor:pointer}a:hover,button:hover{color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:5px}[hidden]{display:none!important}.small,.eyebrow,.masthead,.edition,.chapter-meta,.chapter-number,.index-note,.chapter-index small,.site-footer,.chapter-nav,.settings,.primary,.resume-banner,.notice,.progress-label{font-family:Arial,'FreeSans',sans-serif}.eyebrow{text-transform:uppercase;font-size:.68rem;letter-spacing:.18em;line-height:1.7;color:var(--accent)}.masthead{max-width:1380px;margin:auto;padding:1.7rem 5%;display:flex;justify-content:space-between;align-items:center;gap:1rem;border-bottom:1px solid var(--line);font-size:.8rem}.brand{display:flex;align-items:center;gap:.9rem;text-decoration:none;letter-spacing:.02em}.brand-mark{font:italic 1.05rem Georgia,serif;border:1px solid var(--line);padding:.5rem}.masthead nav{display:flex;align-items:center;gap:1.4rem}.masthead nav>a{text-decoration:none}.settings-toggle{font-size:.76rem;background:transparent}.hero{max-width:1200px;min-height:690px;margin:auto;position:relative;display:grid;grid-template-columns:1fr 33%;align-items:center;padding:5rem 8% 5rem 12%}.hero-side{position:absolute;left:3%;top:49%;writing-mode:vertical-rl;transform:rotate(180deg);font: .58rem Arial,'FreeSans',sans-serif;letter-spacing:.27em;color:var(--muted)}.hero h1{font-size:clamp(4.2rem,7.7vw,7rem);font-weight:400;line-height:.99;letter-spacing:-.055em;margin:1.5rem 0 2rem}.hero h1 em{font-weight:400;color:var(--accent)}.title-period{color:var(--accent)}.hero-rule{height:1px;width:64px;background:var(--accent);margin:2rem 0}.hero-description{font-size:1.16rem;line-height:1.6;color:var(--muted)}.primary{display:inline-flex;justify-content:space-between;gap:2rem;background:var(--ink);color:var(--paper);padding:1rem 1.2rem;text-decoration:none;font-size:.8rem;margin:1rem 0 .4rem}.primary:hover{background:var(--accent);color:var(--paper)}.edition{font-size:.64rem;letter-spacing:.04em;color:var(--muted)}.road{height:420px;position:relative;overflow:hidden;align-self:center;opacity:.7}.road:before,.road:after{content:'';position:absolute;left:32%;width:230px;height:600px;top:-70px;border-left:1px solid var(--line);border-radius:50%;transform:rotate(20deg)}.road:after{left:48%;transform:rotate(20deg)}.road span{position:absolute;top:48%;left:49%;font-size:1rem;color:var(--accent)}.chapter-index{max-width:960px;margin:0 auto;padding:3.5rem 2rem;border-top:1px solid var(--line)}.index-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem}.index-heading h2{font-weight:400;font-size:2.5rem;margin:.4rem 0 1.8rem}.small{font-size:.75rem;line-height:1.7;color:var(--muted)}.index-heading>.small{margin-bottom:2rem}.chapter-index ol{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.chapter-index li{border-bottom:1px solid var(--line)}.chapter-index li a{display:flex;gap:2rem;align-items:center;padding:1.6rem .3rem;text-decoration:none}.chapter-number{font-size:.75rem;color:var(--accent)}.chapter-index strong{font-size:1.3rem;font-weight:400}.chapter-index small{display:block;font-size:.67rem;color:var(--muted);margin-top:.5rem}.row-arrow{margin-left:auto;color:var(--accent)}.index-note{font-size:.75rem;line-height:1.8;color:var(--muted);margin-top:1.3rem}.reading-note{max-width:550px;text-align:center;margin:3rem auto 6rem;padding:0 1.5rem}.reading-note h2{font-size:1.5rem;font-weight:400}.reading-note p{font-size:1rem;line-height:1.8;color:var(--muted)}.ornament{display:block;color:var(--accent);font-size:1rem;margin:2rem 0}.site-footer{max-width:1250px;margin:auto;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:1rem;padding:2rem 5%;font-size:.65rem;color:var(--muted)}.settings{position:fixed;z-index:10;right:3%;top:6rem;width:min(390px,94vw);padding:1.5rem;background:var(--panel);border:1px solid var(--line);box-shadow:0 12px 45px #0002;max-height:calc(100dvh - 7rem);overflow:auto;font-size:.8rem}.settings-head{display:flex;justify-content:space-between;align-items:start;gap:1rem}.settings h2{font:1.4rem Georgia,serif;font-weight:400;margin:0 0 1.5rem}.settings label{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:1rem 0}.settings select{max-width:60%}.settings input{max-width:130px;vertical-align:middle;accent-color:var(--accent)}.settings output{display:inline-block;min-width:2.6rem}.chapter{max-width:calc(var(--width) + 3rem);margin:auto;padding:0 1.5rem}.chapter-header{text-align:center;padding:5rem 0 2rem}.chapter-header h1{font-size:clamp(2.8rem,6vw,4.4rem);line-height:1.1;letter-spacing:-.035em;font-weight:400;margin:1.4rem 0}.chapter-header .eyebrow{text-decoration:none}.chapter-meta{font-size:.7rem;line-height:1.8;color:var(--muted)}.prose{font-family:var(--reading-font);font-size:var(--size);line-height:var(--spacing);overflow-wrap:break-word}.prose>p{margin:0 0 1.3em;white-space:pre-line}.prose>p:first-child:first-letter{float:left;font-size:3.7em;line-height:.86;margin:.1em .12em 0 0;color:var(--accent)}.awaiting{border-block:1px solid var(--line);padding:1.5rem 0;margin-bottom:2rem}.awaiting h2{font-size:1.45rem;font-weight:400}.awaiting p{font-size:1.08rem;line-height:1.8;color:var(--muted)}.poem{margin:5rem auto 2rem;border-top:1px solid var(--line);padding-top:3rem;max-width:36rem}.poem h2{font-size:1.7em;line-height:1.3;font-weight:400;letter-spacing:-.03em;margin:1rem 0 2rem}.stanza{margin:0 0 1.6em;font-style:italic;line-height:var(--spacing)}.chapter-end{text-align:center;margin:4rem 0 2rem}.chapter-nav{max-width:800px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;border-block:1px solid var(--line);font-size:.72rem}.chapter-nav>a,.chapter-nav>span{padding:1.6rem 1.5rem;text-decoration:none}.chapter-nav>:last-child{text-align:right;border-left:1px solid var(--line)}.chapter-nav span span,.chapter-nav a span{display:block;font:1rem Georgia,serif;margin-top:.8rem;line-height:1.5}.chapter-nav>[aria-disabled]{color:var(--muted)}.index-return{text-align:center;font-size:.85rem;margin:2rem 0 5rem}.reading-strip{position:sticky;top:0;display:flex;align-items:center;background:var(--paper);z-index:3;border-bottom:1px solid var(--line);padding:.4rem 5%;gap:1rem;font: .65rem Arial,'FreeSans',sans-serif;color:var(--muted)}progress{width:100%;height:3px;accent-color:var(--accent);border:0}progress::-webkit-progress-bar{background:var(--line)}progress::-webkit-progress-value{background:var(--accent)}.resume-banner{max-width:800px;margin:1.5rem auto 0;padding:1rem;display:flex;align-items:center;justify-content:center;gap:1rem;font-size:.75rem;border:1px solid var(--line);flex-wrap:wrap}.notice{position:fixed;bottom:1rem;left:50%;transform:translateX(-50%);background:var(--ink);color:var(--paper);font-size:.75rem;max-width:90vw;padding:0;z-index:12}.notice:not(:empty){padding:.9rem 1.2rem}.skip{position:absolute;top:-100px;left:1rem;background:var(--panel);padding:1rem;z-index:20}.skip:focus{top:1rem}[data-passage]{scroll-margin-top:4rem}
@media(max-width:700px){.masthead{padding:1rem 5%;align-items:start}.brand{font-size:.73rem;gap:.5rem}.brand-mark{display:none}.masthead nav{gap:.7rem;font-size:.7rem}.settings-toggle{font-size:.65rem;padding:.5rem}.hero{min-height:590px;padding:4rem 8% 3rem 10%;grid-template-columns:1fr 15%}.hero-side{display:none}.hero h1{font-size:clamp(3.5rem,14vw,6rem)}.road{height:340px}.road:before{left:0}.road:after{left:45%}.road span{display:none}.hero .eyebrow{font-size:.58rem}.hero-description{font-size:1.05rem}.chapter-index{margin:0 6%;padding:2rem 0}.chapter-index li a{gap:1.2rem}.chapter-index strong{font-size:1.15rem}.reading-note{margin-bottom:4rem}.site-footer{flex-wrap:wrap;font-size:.6rem}.site-footer>span:nth-child(2){display:none}.chapter-header{padding-top:3rem}.chapter{padding:0 1.25rem}.chapter-nav{margin:0 1.25rem}.chapter-nav>a,.chapter-nav>span{padding:1.25rem .8rem}.chapter-nav span span{font-size:.85rem}.settings{top:4.5rem}.poem h2{font-size:1.45em}.resume-banner{margin:1rem 1.25rem}.prose{font-size:var(--size)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{.masthead,.site-footer,.settings,.reading-strip,.resume-banner,.chapter-nav,.index-return,.notice{display:none!important}body{background:white;color:black}.chapter{max-width:100%;padding:0}.chapter-header{padding:1rem 0}.prose{font-size:12pt}.poem{break-before:page}.stanza{break-inside:avoid}}
.scene-break{border:0;text-align:center;margin:3rem auto;color:var(--accent);height:1.5rem}.scene-break:after{content:'*  *  *';letter-spacing:.25em;font-size:.8rem}.poem .stanza{margin:0 0 .4em}.poem .stanza em{font-style:italic}
/* Reading revision: retain the original palette, type, rules and road motif. */
:root{--spacing:1.65}
.hero{min-height:0;padding:2.5rem 8% 2.5rem 12%;grid-template-columns:1fr 25%}
.hero h1{font-size:clamp(3rem,6vw,5.2rem);line-height:1.08;max-width:9ch;margin:.5rem 0 1rem}
.road{height:250px}.hero-rule{margin:1.25rem 0}.primary{font-size:.95rem}
.chapter-index{padding-block:2rem}.site-footer{font-size:.8rem}
.chapter-header{padding:2.5rem 0 1rem}.chapter-header h1{margin:1rem 0}.chapter-header .ornament{margin:1.5rem 0}
.prose>p{margin:0;text-indent:1.2em;white-space:normal}
.prose>p:first-child,.prose>.scene-break+p{text-indent:0}
/* One speaker per paragraph; consecutive dialogue reads as a compact exchange. */
.prose>p.dialogue{margin:0;text-indent:1.2em}
.scene-break{border:0;height:auto;text-align:center;margin:1.5em 0;color:var(--accent)}
.scene-break::after{content:'✦';font-size:.8em}
.poem{margin:2.5rem auto 1rem;padding-top:1.5rem;max-width:32rem}
.poem h2{font-size:1.5em;margin:.5rem 0 1.5rem}
.stanza{margin:0 0 1.25em;line-height:1.6}
.verse{display:block;padding-left:1em;text-indent:-1em;overflow-wrap:anywhere}
.chapter-end{margin:2rem 0}.chapter-nav:empty{display:none}
.chapter-nav>a{min-height:48px}.chapter-nav>a:last-child{border-left:0}.chapter-nav>a+a{border-left:1px solid var(--line)}
.reading-strip{gap:.7rem;min-height:54px;font-size:.85rem;padding:.3rem max(1rem,5%)}
.reading-strip progress{flex:1;min-width:20px}.reading-strip a{white-space:nowrap;display:inline-flex;align-items:center;min-height:44px}
.progress-label,#progress-label{min-width:3ch}.reading-strip .settings-toggle{font-size:.85rem;min-height:44px}
.masthead a,.masthead button{min-height:44px;display:inline-flex;align-items:center}.masthead nav{gap:.8rem}.masthead{font-size:.9rem}.settings-toggle{font-size:.85rem}
.settings{inset:0;margin:auto;width:min(420px,calc(100% - 2rem));max-height:calc(100dvh - 2rem);font-size:1rem;color:var(--ink);border-radius:3px}
.settings::backdrop{background:#0006}.settings h2{font-size:1.5rem}.settings label{flex-wrap:wrap;gap:.4rem}
.settings button,.settings select{min-height:44px}.settings input{min-height:44px;max-width:135px}.settings select{font-size:1rem}.settings .small{font-size:.85rem}
body:has(dialog[open]){overflow:hidden}.index-return{margin-bottom:3rem}.resume-banner{font-size:.9rem}.resume-banner button{min-height:44px}
@media(max-width:700px){
 .hero{padding:2rem 7%;grid-template-columns:1fr 18%}.hero h1{font-size:clamp(3rem,12vw,4.5rem)}.road{height:220px}
 .masthead{flex-wrap:wrap;padding:.6rem 5%;gap:.1rem .75rem}.brand{font-size:.9rem}.masthead nav{font-size:.85rem;flex-wrap:wrap}.settings-toggle{font-size:.85rem;padding:.5rem .65rem}
 .chapter{padding-inline:1rem}.chapter-header{padding-top:1.75rem}.chapter-header h1{font-size:2.6rem}
 .chapter-header .eyebrow{font-size:.75rem}.chapter-index li a{gap:1rem;min-height:64px}.chapter-index strong{font-size:1.15rem}
 .poem h2{font-size:1.4em}.prose{font-size:var(--size)}.site-footer{font-size:.8rem}.reading-strip{padding-inline:1rem;gap:.55rem}
 .settings{padding:1rem}.settings label{margin:.8rem 0}.settings select{max-width:65%}.settings-head{align-items:center}
}
@media print{.prose>p{margin:0}.scene-break{margin:1em 0}.chapter-end button{display:none}}
