:root{--paper:#f5f1e8;--paper-2:#fbf9f4;--ink:#192c3a;--muted:#74818a;--line:#ded9cd;--blue:#315c76;--blue-2:#dbe6ea;--accent:#ad5d3e;--sidebar:#e9e4d8;--serif:'Source Serif 4',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;--reading-size:1.18rem;color-scheme:light}
[hidden]{display:none!important}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}.app-shell{min-height:100vh}.skip-link{position:fixed;top:-60px;left:16px;z-index:100;background:var(--ink);color:white;padding:12px 16px;border-radius:4px}.skip-link:focus{top:12px}.sidebar{position:fixed;inset:0 auto 0 0;width:284px;background:var(--sidebar);border-right:1px solid var(--line);display:flex;flex-direction:column;z-index:20;overflow-y:auto}.sidebar-top{padding:30px 27px 22px;border-bottom:1px solid rgba(25,44,58,.11)}.brand{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none}.brand-mark{width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--blue);color:var(--blue);font-family:var(--serif);font-size:27px;line-height:1}.brand-kicker,.brand-name{display:block}.brand-kicker{font-size:.56rem;letter-spacing:.17em;color:var(--muted);font-weight:700}.brand-name{font-family:var(--serif);font-size:1.56rem;line-height:1.1;margin-top:3px}.brand-subtitle{font-family:var(--serif);font-style:italic;font-size:1rem;line-height:1.4;color:#64717a;margin:16px 0 0 50px}.side-tools{padding:19px 18px 9px}.search-wrap{display:flex;align-items:center;gap:9px;height:41px;background:rgba(255,255,255,.6);border:1px solid rgba(25,44,58,.12);padding:0 10px;color:#71808b}.search-wrap svg,.icon-button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}.search-wrap input{border:0;outline:0;background:transparent;color:var(--ink);min-width:0;width:100%;font:500 .77rem var(--sans)}.search-wrap input::placeholder{color:#78858b}.search-wrap kbd{font:500 .65rem var(--sans);border:1px solid #c9c7be;background:#f7f5ee;border-radius:3px;padding:2px 5px}.search-results{max-height:38vh;overflow:auto;border:1px solid var(--line);background:var(--paper-2);margin-top:7px}.search-result{display:block;width:100%;text-align:left;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);padding:10px 11px;font:500 .77rem var(--sans);cursor:pointer}.search-result:hover,.search-result:focus{background:var(--blue-2)}.search-result small{display:block;font-size:.64rem;color:var(--muted);margin-top:4px}.search-empty{font-size:.75rem;color:var(--muted);padding:12px}.archive-nav{padding:16px 18px 20px;flex:1}.nav-heading{font-size:.58rem;letter-spacing:.17em;color:#778087;font-weight:700;padding:0 9px;margin:0 0 10px}.nav-home,.section-trigger,.page-link{width:100%;display:flex;align-items:center;text-align:left;gap:11px;padding:10px;border:0;background:transparent;color:#41535e;font:500 .85rem var(--sans);cursor:pointer;border-radius:4px;text-decoration:none}.nav-home:hover,.section-trigger:hover,.page-link:hover{background:rgba(255,255,255,.52);color:var(--ink)}.nav-home.is-active,.section-trigger.is-active,.page-link.is-active{color:#854a34;background:rgba(173,93,62,.11)}.nav-glyph{font-size:1.06rem;color:#788893;width:17px;text-align:center}.section-item{margin:2px 0}.section-trigger{justify-content:space-between}.section-trigger-main{display:flex;align-items:center;gap:11px}.section-num{width:17px;text-align:center;font-size:.64rem;letter-spacing:.04em;color:#8a918e}.chevron{font-size:.95rem;color:#8e989a;transition:transform .2s}.section-trigger[aria-expanded=true] .chevron{transform:rotate(90deg)}.page-list{padding:1px 0 5px 28px}.page-link{font-size:.76rem;padding:7px 9px 7px 11px;line-height:1.3;border-left:1px solid #cbc8bd;border-radius:0 4px 4px 0}.page-link.is-active{border-left:2px solid var(--accent);font-weight:600}.sidebar-bottom{display:flex;align-items:center;gap:8px;padding:15px 23px;border-top:1px solid rgba(25,44,58,.11);font-size:.64rem;color:#74818a;line-height:1.4}.sidebar-bottom a{color:#516777;text-decoration:underline;text-underline-offset:2px}.source-dot{width:7px;height:7px;border-radius:50%;background:#80947d;flex:none}.reader{margin-left:284px;min-height:100vh}.topbar{height:61px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 4.5vw;background:rgba(245,241,232,.96);position:sticky;top:0;z-index:10}.breadcrumbs{font-size:.61rem;letter-spacing:.16em;color:#7f898e;font-weight:700;display:flex;gap:10px;align-items:center}.crumb-slash{color:#b3a994}.reading-tools{display:flex;gap:7px;align-items:center}.tools-label{font-size:.57rem;letter-spacing:.12em;color:#848d90;font-weight:700;margin-right:4px}.type-button,.icon-button{height:31px;min-width:32px;display:grid;place-items:center;border:1px solid transparent;border-radius:4px;background:transparent;color:#576873;font:600 .77rem var(--sans);cursor:pointer}.type-button:hover,.icon-button:hover{background:var(--blue-2);border-color:#cfdbdf}.tool-divider{height:19px;width:1px;background:var(--line);margin:0 4px}.home-view{position:relative;min-height:calc(100vh - 119px);display:grid;grid-template-columns:minmax(340px,1fr) minmax(270px,.79fr);grid-template-rows:1fr auto;overflow:hidden;padding:7.5vh 7.6vw 0 8vw}.home-copy{position:relative;z-index:2;max-width:610px;padding-top:3.3vh}.eyebrow{display:flex;align-items:center;gap:10px;font-size:.61rem;font-weight:700;letter-spacing:.18em;color:#758189;margin:0 0 24px}.rule{width:28px;height:1px;background:var(--accent)}.home-copy h1{font:400 clamp(2.65rem,4.8vw,4.8rem)/1.09 var(--serif);letter-spacing:-.045em;margin:0;color:#1f3442}.home-copy h1 em{font-weight:400;color:var(--blue)}.home-deck{font:400 1.03rem/1.7 var(--serif);max-width:430px;color:#5f6d73;margin:24px 0 19px}.home-meta{display:flex;gap:9px;align-items:center;font-size:.7rem;color:#7c8586}.home-meta span:first-child{font-weight:700;color:#485a63}.meta-separator{color:var(--accent)}.start-reading{display:flex;align-items:center;justify-content:space-between;gap:30px;border:0;border-bottom:1px solid var(--accent);background:transparent;color:#8b4d36;padding:12px 0 9px;margin-top:33px;font:600 .78rem var(--sans);cursor:pointer;min-width:155px}.start-reading span{font-size:1.2rem;transition:transform .2s}.start-reading:hover span{transform:translateX(4px)}.home-art{position:relative;align-self:stretch;min-height:380px;margin:1vh 0 0 3vw;overflow:hidden;background:#dfe7e4;isolation:isolate}.home-art:before{content:"";position:absolute;inset:0;background:linear-gradient(150deg,rgba(245,241,232,.05),rgba(30,60,74,.13));z-index:4;pointer-events:none}.art-sun{position:absolute;width:clamp(90px,12vw,155px);height:clamp(90px,12vw,155px);border-radius:50%;background:#d9b989;top:14%;right:23%;opacity:.85}.art-ridge{position:absolute;left:-8%;width:118%;bottom:0}.ridge-back{height:70%;background:#a6b9ae;clip-path:polygon(0 85%,13% 53%,23% 67%,39% 27%,51% 55%,63% 17%,78% 53%,90% 35%,100% 60%,100% 100%,0 100%)}.ridge-front{height:53%;background:#617d79;clip-path:polygon(0 46%,17% 60%,33% 22%,50% 60%,68% 27%,84% 48%,100% 20%,100% 100%,0 100%)}.art-village{position:absolute;bottom:17%;left:29%;display:flex;align-items:end;gap:3px;z-index:2}.art-village i{display:block;width:16px;height:45px;background:#e9d8bc;border:1px solid rgba(55,67,66,.22);position:relative}.art-village i:nth-child(2n){height:56px;width:19px;background:#eee2cc}.art-village i:nth-child(3n){height:36px;width:23px}.art-village i:before{content:"";position:absolute;top:-8px;left:-2px;width:calc(100% + 4px);height:9px;background:#a85d42;clip-path:polygon(0 100%,50% 0,100% 100%)}.art-village i:after{content:"";position:absolute;bottom:8px;left:5px;width:4px;height:7px;background:#8b725d}.art-cross{position:absolute;z-index:5;left:61%;bottom:56%;height:55px;width:28px}.art-cross:before,.art-cross:after{content:"";position:absolute;background:#eee9db;box-shadow:0 1px 1px rgba(0,0,0,.2)}.art-cross:before{width:4px;height:37px;left:12px;top:0}.art-cross:after{width:25px;height:4px;left:2px;top:9px}.art-cross i{position:absolute;left:13px;top:35px;width:2px;height:20px;background:#8b735b}.art-label{position:absolute;z-index:5;left:23px;bottom:23px;color:#f4efe5;font-size:.59rem;font-weight:700;letter-spacing:.17em}.art-label span{display:block;margin-top:7px;font-weight:400;letter-spacing:.1em;font-size:.53rem;opacity:.78}.art-index{position:absolute;z-index:5;right:17px;top:18px;text-align:right;color:rgba(255,255,255,.84);font-size:.53rem;letter-spacing:.12em;line-height:1.5}.art-index b{font-size:.8rem;letter-spacing:.2em}.home-bottom{grid-column:1/-1;display:flex;align-items:center;gap:35px;border-top:1px solid var(--line);padding:22px 0 20px;margin-top:7vh}.home-stat{display:flex;align-items:center;gap:9px}.home-stat strong{font:500 1.75rem var(--serif);color:var(--blue)}.home-stat span{max-width:77px;color:#727e81;font-size:.62rem;line-height:1.3}.home-bottom p{border-left:1px solid var(--line);padding-left:27px;color:#808a8c;font:italic .77rem/1.5 var(--serif);margin:0}.reading-view{position:relative;flex:1;display:flex;justify-content:center;padding:64px 10vw 58px;gap:70px}.reading-column{width:min(100%,760px);min-width:0}.page-kicker{color:#a35c40;font-size:.61rem;letter-spacing:.19em;font-weight:700;margin-bottom:17px}.reading-column h1{font:400 clamp(2.1rem,4.2vw,3.7rem)/1.11 var(--serif);letter-spacing:-.035em;margin:0 0 26px;max-width:800px}.page-progress-wrap{max-width:340px;margin:0 0 33px}.page-progress-wrap span{font-size:.62rem;letter-spacing:.06em;color:#89918f}.progress-track{height:2px;background:#dedbd1;margin-top:9px}.progress-track span{height:100%;width:0;display:block;background:var(--accent);transition:width .25s}.page-layout{display:grid;grid-template-columns:140px minmax(0,1fr);gap:31px}.page-layout.no-toc{grid-template-columns:minmax(0,1fr)}.local-toc{border-left:1px solid var(--line);padding-left:14px;align-self:start;position:sticky;top:95px;max-height:70vh;overflow:auto}.local-toc p{font-size:.55rem;letter-spacing:.13em;font-weight:700;color:#9a9b93;margin:0 0 12px}.local-toc a{display:block;color:#728087;text-decoration:none;font-size:.66rem;line-height:1.4;padding:4px 0}.local-toc a:hover{color:var(--accent)}.page-content{font:400 var(--reading-size)/1.83 var(--serif);color:#354750;min-width:0;overflow-wrap:anywhere}.page-content p{margin:0 0 1.55em}.page-content p:first-child:first-letter{float:left;font:500 3.5em/.8 var(--serif);color:var(--accent);padding:.11em .13em 0 0}.page-content h2,.page-content h3,.page-content h4{font-family:var(--serif);font-weight:500;color:var(--ink);line-height:1.25;margin:1.75em 0 .75em}.page-content h2{font-size:1.55em}.page-content h3{font-size:1.28em}.page-content h4{font-size:1.1em}.page-content table{width:100%;border-collapse:collapse;font:.82em var(--sans);margin:22px 0 28px}.page-content caption{text-align:left;font:italic .95em var(--serif);color:#6f7775;padding:8px 0}.page-content th,.page-content td{text-align:left;padding:9px 10px;border-bottom:1px solid var(--line)}.page-content th{color:#4b5d63;background:rgba(49,92,118,.07);font-weight:600}.page-content figure{margin:26px 0 30px}.page-content figure img{display:block;width:100%;height:auto;max-height:72vh;object-fit:contain;background:#ede9df;border:1px solid rgba(25,44,58,.08)}.page-content figcaption{margin-top:9px;font:.7rem/1.5 var(--sans);color:#828985}.page-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:16px;margin-top:34px}.back-top{border:0;background:transparent;cursor:pointer}.page-pagination{display:flex;justify-content:space-between;gap:17px;border-top:1px solid var(--line);margin-top:35px;padding-top:17px}.page-pagination button{flex:1;display:flex;flex-direction:column;gap:7px;max-width:48%;border:0;background:transparent;padding:8px 0;text-align:left;color:#65747a;cursor:pointer}.page-pagination button:last-child{text-align:right;align-items:flex-end}.page-pagination button:disabled{opacity:.35;cursor:default}.page-pagination button span{font-size:.56rem;letter-spacing:.12em;color:#a35c40;font-weight:700}.page-pagination button strong{font:500 .95rem var(--serif);color:var(--ink)}.page-rail{align-self:flex-start;position:sticky;top:115px;display:flex;flex-direction:column;align-items:center;gap:8px;width:58px;padding-top:65px;color:#9b9b92}.rail-label{font-size:.51rem;letter-spacing:.12em}.page-rail strong{font:500 1.6rem var(--serif);color:var(--accent)}.rail-line{width:1px;height:52px;background:var(--line)}.rail-section{writing-mode:vertical-rl;transform:rotate(180deg);font-size:.54rem;letter-spacing:.12em;color:#78868b;max-height:130px;text-align:right}.site-footer{display:flex;justify-content:space-between;gap:18px;border-top:1px solid var(--line);padding:18px 4.5vw 17px;color:#969990;font-size:.55rem;letter-spacing:.09em;margin-top:auto}.menu-toggle{display:none}.theme-dark{--paper:#1d282d;--paper-2:#253237;--ink:#e3ded1;--muted:#aab2b1;--line:#3d4a4d;--blue:#a9c0c6;--blue-2:#314449;--accent:#d18a69;--sidebar:#202c30;color-scheme:dark}.theme-dark .home-copy h1,.theme-dark .reading-column h1,.theme-dark .page-content h2,.theme-dark .page-content h3,.theme-dark .page-content h4,.theme-dark .page-pagination button strong{color:#e7e1d6}.theme-dark .home-copy h1 em{color:#a9c0c6}.theme-dark .home-deck,.theme-dark .page-content{color:#c4c8c2}.theme-dark .topbar{background:rgba(29,40,45,.96)}.theme-dark .search-wrap{background:rgba(255,255,255,.06)}.theme-dark .search-wrap input{color:var(--ink)}.theme-dark .search-wrap kbd{background:#28363a;border-color:#465456}.theme-dark .page-content th{background:rgba(169,192,198,.1);color:#d3d7d1}.theme-dark .page-content figure img{background:#28363a}.theme-dark .home-art{filter:brightness(.78) saturate(.8)}
@media(max-width:1120px){.sidebar{width:250px}.reader{margin-left:250px}.home-view{padding-left:6vw;padding-right:5vw;grid-template-columns:minmax(300px,1fr) minmax(240px,.78fr)}.reading-view{padding-left:7vw;padding-right:7vw;gap:36px}.page-layout{grid-template-columns:115px minmax(0,1fr);gap:22px}}
@media(max-width:760px){.sidebar{width:min(310px,86vw);transform:translateX(-102%);transition:transform .25s ease;box-shadow:none}.sidebar.is-open{transform:translateX(0);box-shadow:12px 0 35px rgba(22,37,43,.16)}.mobile-scrim{position:fixed;inset:0;background:rgba(13,24,29,.34);z-index:15}.mobile-scrim.is-visible{display:block}.reader{margin-left:0}.topbar{height:56px;padding:0 17px}.menu-toggle{display:grid}.breadcrumbs{margin-right:auto;margin-left:12px;font-size:.56rem}.tools-label{display:none}.reading-tools{gap:2px}.type-button,.icon-button{min-width:30px}.home-view{min-height:calc(100vh - 109px);display:flex;flex-direction:column;padding:44px 22px 0}.home-copy{padding-top:0}.eyebrow{font-size:.55rem;margin-bottom:18px}.home-copy h1{font-size:clamp(2.55rem,12vw,4rem)}.home-deck{font-size:1rem;margin:18px 0}.start-reading{margin-top:22px}.home-art{min-height:210px;height:30vh;max-height:280px;margin:35px 0 0 11vw}.home-bottom{gap:18px;padding:17px 0;margin-top:auto;flex-wrap:wrap}.home-stat strong{font-size:1.45rem}.home-stat span{max-width:67px;font-size:.58rem}.home-bottom p{width:100%;border-left:0;border-top:1px solid var(--line);padding:12px 0 0;font-size:.7rem}.site-footer{padding:15px 20px;flex-direction:column;gap:7px;font-size:.51rem}.reading-view{padding:39px 22px 40px;display:block}.reading-column{width:100%}.page-kicker{font-size:.56rem;margin-bottom:13px}.reading-column h1{font-size:clamp(2.05rem,9vw,3rem);margin-bottom:20px}.page-progress-wrap{margin-bottom:23px}.page-layout,.page-layout.no-toc{display:block}.local-toc{position:static;border-left:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 0;margin:0 0 24px;max-height:180px}.local-toc p{margin-bottom:5px}.local-toc a{display:inline-block;margin:0 10px 0 0}.page-content{font-size:var(--reading-size);line-height:1.78}.page-content p:first-child:first-letter{font-size:3.1em}.page-content table{font-size:.76em}.page-content th,.page-content td{padding:7px 6px}.page-content figure img{max-height:66vh}.page-footer{gap:10px}.page-rail{display:none}.page-pagination{margin-top:27px}.page-pagination button strong{font-size:.83rem}.site-footer{margin-top:auto}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

.page-content figure .image-open{display:block;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in}.page-content figure .image-open:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.zoom-hint{color:#a0a39c}.image-viewer{position:fixed;width:min(94vw,1180px);max-width:none;max-height:92vh;overflow:visible;padding:50px 20px 16px;border:1px solid #536269;background:#192c3a;color:#f5f1e8;box-shadow:0 16px 70px rgba(0,0,0,.35)}.image-viewer::backdrop{background:rgba(16,27,31,.82)}.image-viewer img{display:block;width:100%;height:auto;max-height:calc(92vh - 112px);object-fit:contain}.image-viewer p{margin:12px 0 0;font:500 .72rem/1.5 var(--sans);color:#e0ddd4}.image-viewer-close{position:absolute;top:8px;right:10px;width:34px;height:34px;border:1px solid rgba(255,255,255,.28);background:transparent;color:#fff;font:300 1.7rem/1 var(--sans);cursor:pointer}.image-viewer-close:hover,.image-viewer-close:focus-visible{background:rgba(255,255,255,.13)}@media(max-width:760px){.image-viewer{width:96vw;padding:46px 10px 12px}.image-viewer img{max-height:calc(92vh - 104px)}.image-viewer p{font-size:.66rem}}
.download-archive{display:inline-flex;align-items:center;gap:12px;margin-top:17px;color:#526b75;font:600 .7rem var(--sans);text-decoration:none;border-bottom:1px solid #aab4b2;padding:6px 0}.download-archive span{color:var(--accent);font-size:1rem}.download-archive:hover{color:var(--accent)}

.download-html-page{font:500 .69rem var(--sans);color:#8b4d36;text-decoration:none;border-bottom:1px solid rgba(173,93,62,.45);padding:0 0 3px}.download-html-page:hover{text-decoration:none;color:var(--accent)}@media(max-width:760px){.page-footer{flex-wrap:wrap;gap:12px}}

.home-art{display:block;padding:0;background:#e8e0d0;box-shadow:0 8px 28px rgba(48,39,25,.12)}.home-art:before{display:none}.home-art img{display:block;width:100%;height:100%;min-height:380px;object-fit:cover;object-position:center 48%}.download-archive,.download-html-page{display:none!important}
