:root{--paper:#f6f5ef;--white:#fffefa;--green:#234e40;--ink:#24372e;--muted:#768078;--line:#dfe2d7;--rust:#a45a3b;--soft:#eaf0e6}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:calc(14px * var(--text-scale,1));line-height:1.55}button,input,a{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--rust);outline-offset:4px}.skip{position:fixed;left:16px;top:-60px;z-index:10;background:white;padding:8px}.skip:focus{top:8px}.topbar{height:68px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 max(28px,calc((100vw - 1312px)/2));background:var(--white)}.brand{display:flex;gap:10px;align-items:center;font-size:calc(13px * var(--text-scale,1));letter-spacing:1.2px;font-weight:bold;white-space:nowrap}.brand-icon{font-size:calc(34px * var(--text-scale,1));line-height:1;color:var(--green)}.brand-light{font-weight:normal;color:var(--muted);font-size:calc(12px * var(--text-scale,1));letter-spacing:.4px}.topbar nav{display:flex;gap:26px;font-size:calc(12px * var(--text-scale,1));margin-left:auto}.topbar nav button{border:0;background:none;padding:0}.languages{display:flex;gap:2px;margin-left:20px;border:1px solid var(--line);padding:3px;border-radius:5px}.languages button{border:0;background:none;border-radius:3px;font-size:calc(11px * var(--text-scale,1));padding:5px 9px}.languages button[aria-pressed=true]{background:var(--green);color:white}.intro{max-width:1312px;margin:auto;display:flex;justify-content:space-between;padding:30px 28px 28px;gap:20px}.eyebrow{font-size:calc(10px * var(--text-scale,1));letter-spacing:1.6px;font-weight:bold;color:var(--rust);margin:0 0 9px}h1{font-family:Georgia,'Times New Roman',serif;font-size:calc(46px * var(--text-scale,1));line-height:1.08;font-weight:normal;letter-spacing:-1.4px;margin:0 0 12px}h1 em{color:var(--green);font-weight:normal}.intro-copy>p:not(.eyebrow){font-size:calc(13px * var(--text-scale,1));color:#667367;margin:0 0 16px}.book-meta{display:flex;flex-wrap:wrap;gap:20px;font-size:calc(10px * var(--text-scale,1));color:var(--muted)}.book-meta span+span:before{content:'·';margin-right:16px}.intro-aside{display:flex;align-items:center;gap:55px;margin-right:36px}.edition-label{font-size:calc(9px * var(--text-scale,1));letter-spacing:2px;writing-mode:vertical-rl;transform:rotate(180deg);color:var(--muted)}.book-art{perspective:700px}.book-cover{width:149px;height:194px;background:var(--green);color:#f4efd6;padding:17px 16px;box-shadow:7px 6px 0 #e1ddca,9px 6px 0 #b8b6a4,15px 14px 24px #24372e25;transform:rotate(-7deg) rotateY(-12deg);border-left:6px solid #183e31;display:flex;flex-direction:column;justify-content:space-between}.book-cover>span{font-size:calc(7px * var(--text-scale,1));letter-spacing:1px;line-height:1.5}.book-cover strong{font:calc(18px * var(--text-scale,1))/1.15 Georgia,serif}.book-cover i{font-weight:normal;color:#e7cc98}.book-flower{font-size:calc(48px * var(--text-scale,1));line-height:1;color:#c9d1a0;align-self:center}.book-cover small{font-size:calc(6px * var(--text-scale,1));letter-spacing:.6px}.workspace{display:grid;grid-template-columns:245px minmax(0,1fr);max-width:1256px;margin:0 auto 28px;border:1px solid var(--line);border-radius:8px;background:var(--white);overflow:hidden}.sidebar{border-right:1px solid var(--line);padding:22px 16px 12px;background:#f0f2e9}.sidebar-title{font-size:calc(10px * var(--text-scale,1));letter-spacing:1.6px;display:flex;justify-content:space-between;color:#69796b;font-weight:bold;margin:0 8px 16px}.categories{display:grid;gap:4px}.category{display:flex;align-items:center;gap:10px;padding:10px;border:0;border-radius:4px;background:none;text-align:left;width:100%;font-size:calc(12px * var(--text-scale,1))}.category .cat-icon{font-size:calc(16px * var(--text-scale,1));width:20px}.category .count{font-size:calc(10px * var(--text-scale,1));margin-left:auto;opacity:.65}.category.active{background:var(--green);color:#fff}.category:hover:not(.active){background:#e3e9dc}.side-heading{display:flex;justify-content:space-between;font-size:calc(9px * var(--text-scale,1));letter-spacing:1px;color:var(--muted);margin:24px 8px 10px}.section-list{max-height:445px;overflow:auto;scrollbar-width:thin;scrollbar-color:#c1ccb9 transparent}.section-link{display:block;text-align:left;background:none;border:0;width:100%;padding:7px 9px;font-size:calc(11px * var(--text-scale,1));line-height:1.5;border-radius:3px;color:#556454}.section-link:hover,.section-link.selected{background:#e0e8d9;color:var(--green)}.sidebar-bottom{border-top:1px solid var(--line);padding:14px 8px 0;margin-top:18px;font-size:calc(8px * var(--text-scale,1));color:var(--muted);display:grid;gap:3px}main{padding:22px 26px;min-width:0}.searchbar{display:flex;align-items:center;gap:10px;background:var(--paper);border:1px solid var(--line);border-radius:5px;height:42px;padding:0 13px;margin-bottom:23px}.searchbar>span{font-size:calc(26px * var(--text-scale,1));line-height:1;color:var(--muted)}.searchbar input{width:100%;border:0;background:none;font-size:calc(12px * var(--text-scale,1));outline:none;color:var(--ink);min-width:0}.searchbar kbd{border:1px solid #d6dbce;border-radius:3px;color:#8a9389;font-size:calc(11px * var(--text-scale,1));padding:0 5px}.view-heading{display:flex;align-items:end;justify-content:space-between;gap:14px;margin-bottom:16px}.view-heading h2{font:calc(27px * var(--text-scale,1))/1.2 Georgia,serif;margin:0}.view-heading p{font-size:calc(11px * var(--text-scale,1));color:var(--muted);margin:6px 0 0}.section-number{font:italic calc(36px * var(--text-scale,1)) Georgia,serif;color:#b7c6ad}.overview-intro{padding:18px 20px;background:var(--soft);border-left:3px solid #9caf84;margin-bottom:20px}.overview-intro h3{font:calc(20px * var(--text-scale,1)) Georgia,serif;margin:0 0 6px}.overview-intro p{font-size:calc(12px * var(--text-scale,1));color:#64735e;margin:0;max-width:620px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 22px}.topic{border:0;border-bottom:1px solid var(--line);background:none;padding:12px 1px;display:flex;align-items:center;text-align:left;gap:12px;min-width:0}.topic-num{font-size:calc(10px * var(--text-scale,1));color:#9ca58f;width:21px;flex-shrink:0}.topic-title{font-size:calc(12px * var(--text-scale,1));line-height:1.45;display:block}.topic-sub{display:block;font-size:calc(10px * var(--text-scale,1));color:var(--muted);margin-top:4px}.topic-arrow{margin-left:auto;color:#8b9d7f;flex-shrink:0}.topic:hover .topic-title{color:var(--rust)}.result-excerpt{font-size:calc(11px * var(--text-scale,1));color:var(--muted);margin-top:5px}.result-list .topic{width:100%}mark{background:#f2e4b1;color:inherit;border-radius:2px}.reader-toolbar{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:18px;font-size:calc(11px * var(--text-scale,1))}.plain-button{border:1px solid var(--line);background:var(--white);padding:5px 9px;border-radius:4px;font-size:calc(11px * var(--text-scale,1))}.plain-button:hover{background:var(--soft)}.reader-actions{display:flex;gap:5px}.reader h2{font:calc(31px * var(--text-scale,1))/1.25 Georgia,serif;margin:0 0 18px;max-width:750px}.reader-body{max-width:760px;font-size:calc(15px * var(--text-scale,1));line-height:1.8}.reader-body h3{font:calc(22px * var(--text-scale,1))/1.35 Georgia,serif;margin:25px 0 10px;color:var(--green)}.reader-body p{margin:0 0 13px}.reader-body ul{padding-left:22px;margin:8px 0 14px}.reader-body li{margin:4px 0}.reader-nav{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding-top:16px;margin-top:24px}.empty{padding:30px 0;color:var(--muted)}.files{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:26px;padding-top:20px;border-top:1px solid var(--line)}.files .eyebrow{font-size:calc(8px * var(--text-scale,1));margin-bottom:4px}.files h2{font:calc(17px * var(--text-scale,1))/1.4 Georgia,serif;margin:0}.file-links{display:grid;gap:5px;flex-shrink:0}.file-row{display:flex;align-items:center;gap:8px;font-size:calc(10px * var(--text-scale,1))}.file-row>span{color:var(--muted);width:58px}.file-row a{border:1px solid var(--line);border-radius:3px;padding:3px 8px;font-size:calc(9px * var(--text-scale,1))}.file-row a:hover{background:var(--green);color:white}.editorial-note{font-size:calc(10px * var(--text-scale,1));color:#858c80;margin:18px 0 0;line-height:1.6}footer{max-width:1256px;margin:0 auto 22px;display:flex;justify-content:space-between;color:#8a9385;font-size:calc(9px * var(--text-scale,1));letter-spacing:.5px;padding:0 2px}footer>span:first-child{color:var(--green);letter-spacing:1.5px}#main:focus{outline:none}@media(min-width:1500px){.intro{padding-top:40px;padding-bottom:36px}}@media(max-width:900px){.workspace{margin:0 18px 24px;grid-template-columns:210px minmax(0,1fr)}.intro{padding:25px 22px}.intro-aside{margin-right:10px;gap:25px}.grid{grid-template-columns:1fr}.files{align-items:start;flex-direction:column}main{padding:20px}footer{padding:0 20px}}@media(max-width:620px){.topbar{height:58px;padding:0 16px;gap:8px}.brand{font-size:calc(11px * var(--text-scale,1));gap:6px}.brand-light{font-size:calc(10px * var(--text-scale,1))}.brand-icon{font-size:calc(27px * var(--text-scale,1))}.topbar nav{display:none}.languages{margin-left:auto}.intro{padding:24px 18px;gap:8px}.intro-copy .eyebrow{font-size:calc(8px * var(--text-scale,1));letter-spacing:1px;max-width:250px}h1{font-size:calc(35px * var(--text-scale,1))}.intro-copy>p:not(.eyebrow){font-size:calc(11px * var(--text-scale,1));max-width:220px}.book-meta{gap:6px;font-size:calc(8px * var(--text-scale,1))}.book-meta span+span:before{margin-right:6px}.intro-aside{margin:0 8px 0 0}.edition-label{display:none}.book-cover{width:85px;height:124px;padding:10px 7px;border-left-width:4px}.book-cover>span{font-size:calc(4px * var(--text-scale,1))}.book-cover strong{font-size:calc(12px * var(--text-scale,1))}.book-cover small{font-size:calc(4px * var(--text-scale,1))}.book-flower{font-size:calc(30px * var(--text-scale,1))}.workspace{display:block;margin:0 10px 20px}.sidebar{padding:12px;border-right:0;border-bottom:1px solid var(--line)}.sidebar-title,.side-heading,.section-list,.sidebar-bottom{display:none}.categories{display:flex;overflow-x:auto;gap:5px}.category{white-space:nowrap;padding:8px;font-size:calc(10px * var(--text-scale,1));gap:5px;width:auto;flex-shrink:0}.category .cat-icon{font-size:calc(12px * var(--text-scale,1));width:auto}.category .count{font-size:calc(8px * var(--text-scale,1))}.category:first-child{display:none}main{padding:16px}.searchbar{margin-bottom:20px}.searchbar input{font-size:calc(11px * var(--text-scale,1))}.view-heading h2{font-size:calc(24px * var(--text-scale,1))}.overview-intro{padding:14px}.overview-intro h3{font-size:calc(18px * var(--text-scale,1))}.reader h2{font-size:calc(27px * var(--text-scale,1))}.reader-body{font-size:calc(15px * var(--text-scale,1))}.reader-actions{flex-wrap:wrap;justify-content:end}.reader-toolbar{align-items:start}.files h2{font-size:calc(16px * var(--text-scale,1))}footer{font-size:calc(8px * var(--text-scale,1));gap:14px}footer>span:nth-child(2){display:none}}@media print{.topbar,.intro,.sidebar,.searchbar,.reader-toolbar,.files,.editorial-note,footer,.reader-nav{display:none}.workspace{display:block;border:0;margin:0}main{padding:0}.reader-body{max-width:none}.reader h2{font-size:calc(24px * var(--text-scale,1))}body{background:white;color:black}}

.section-number{white-space:nowrap}@media(max-width:620px){.section-number{font-size:calc(24px * var(--text-scale,1))}}

/* Text controls remain available in the catalogue and the reader. */
.reading-tools{display:flex;gap:10px;align-items:center;margin-bottom:23px;flex-wrap:wrap}
.reading-tools .searchbar{flex:1;min-width:180px;margin-bottom:0}
.text-controls{display:flex;gap:4px;align-items:center}
.text-controls .plain-button{min-height:36px;min-width:36px;padding:5px 8px}
.text-controls button:disabled{opacity:.4;cursor:default}
#text-reset{min-width:52px;font-variant-numeric:tabular-nums}
.intro{align-items:center;padding-top:22px;padding-bottom:22px}
.intro-copy{min-width:0}
#book-title{white-space:nowrap;font-size:clamp(22px,4.1vw,46px);letter-spacing:-1px}
.book-cover{width:105px;height:138px;padding:12px 10px}
.book-cover strong{font-size:16px}.book-cover>span{font-size:5px}.book-cover small{font-size:4px}.book-flower{font-size:32px}
@media(max-width:900px){.intro-aside{display:none}#book-title{font-size:clamp(16px,5.5vw,46px)}}
@media(max-width:620px){.intro{padding:18px}.intro-copy{width:100%}.intro-copy>p:not(.eyebrow){max-width:none}.intro-copy .eyebrow{max-width:none}.topbar{min-height:58px;height:auto;flex-wrap:wrap;padding-top:8px;padding-bottom:8px}.reader-toolbar{flex-wrap:wrap}.reader-actions{margin-left:auto}.grid,.view-heading{overflow-wrap:anywhere}.files h2{overflow-wrap:anywhere}.reading-tools{gap:8px}.text-controls{margin-left:auto}}
@media print{.reading-tools{display:none}}

.glossary-term{text-transform:uppercase;font-weight:700}

.reader-body{overflow-wrap:anywhere;hyphens:manual}

#eyebrow{font-size:calc((10px + 4pt) * var(--text-scale,1))}@media(max-width:620px){#eyebrow{font-size:calc((8px + 4pt) * var(--text-scale,1))}}

#book-title{font-size:calc(clamp(22px,4.1vw,46px) - 4pt)}@media(max-width:900px){#book-title{font-size:calc(clamp(16px,5.5vw,46px) - 4pt)}}
