:root{--paper:#f8eee7;--surface:#fffaf5;--ink:#38271e;--muted:#745542;--line:#cfb4a2;--accent:#c04422;--accent-dark:#9b3015;--focus:#6b452b;--space:22px;--max:980px}*{box-sizing:border-box}html{scroll-behavior:auto}body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.65 -apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;border-radius:0;touch-action:manipulation}button:active{transform:translateY(1px) scale(.98)}button,a,input,textarea,select{ -webkit-tap-highlight-color:transparent}button:focus,a:focus,input:focus,textarea:focus,select:focus,summary:focus{outline:3px solid var(--focus);outline-offset:3px}button{transition:background-color .16s ease,transform .12s ease,color .16s ease}h1,h2,h3,p{margin:0}a{color:var(--accent-dark)}[hidden]{display:none!important}.app-shell{max-width:var(--max);margin:auto;padding:0 var(--space)}.site-header{padding-top:22px;background:var(--paper)}.identity{display:flex;align-items:center;justify-content:space-between;grid-gap:10px}.brand-home{border:0;background:none;display:flex;align-items:center;grid-gap:9px;padding:0;text-align:left;min-width:0}.brand-home img{object-fit:contain;flex:none}.brand-home span{font-size:23px;letter-spacing:-.7px;font-weight:700;line-height:1.3}.text-button{border:0;background:none;padding:6px 0;font-size:14px;color:var(--accent-dark);text-decoration:underline;text-underline-offset:4px}.source-trigger{min-width:32px}.main-nav{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);margin-top:14px}.main-nav button{border:0;background:none;padding:12px 0 10px;font-size:14px}.main-nav [aria-current="page"]{font-weight:700;color:var(--accent-dark);box-shadow:inset 0 -2px var(--accent)}main{padding-top:21px;min-height:60vh}main:focus{outline:none}.home-title{font-size:37px;line-height:1.22;letter-spacing:-1.4px;font-weight:700;margin-bottom:21px}.home-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px}.question{position:relative;padding:16px 13px 14px;text-align:left;border:1px solid var(--line);background:var(--surface);min-height:94px}.question:hover{background:#fff}.question strong{display:block;font-size:16px;line-height:1.4;font-weight:600;padding-right:6px}.question small{display:block;font-size:13px;color:var(--muted);margin-top:8px;line-height:1.55}.question .arrow{position:absolute;right:8px;top:7px;color:var(--accent-dark);font-size:15px}.action-focus{margin-top:20px;padding:18px;background:var(--accent);color:#fff}.action-focus>p{font-size:13px;color:#fff}.action-focus h2{font-size:22px;margin-top:7px;line-height:1.4;letter-spacing:-.4px}.action-focus .description{font-size:14px;margin-top:8px;line-height:1.7}.action-focus button{display:flex;justify-content:space-between;grid-gap:12px;margin-top:15px;width:100%;padding:12px;background:#fff7ef;border:0;text-align:left;color:#7c2b16;font-size:15px;font-weight:600}.search-form{display:flex;align-items:center;grid-gap:8px;padding:12px 0;border-bottom:1px solid #a47c62;margin-top:12px}.search-form input{width:100%;min-width:0;border:0;background:transparent;outline:none;font-size:15px;padding:4px 0}.search-form input:focus{outline-offset:5px}.search-form button{font-size:14px;background:none;border:0;padding:6px 0;color:var(--accent-dark);white-space:nowrap}input::placeholder,textarea::placeholder{color:#806754;opacity:1}.site-footer{border-top:1px solid var(--line);margin-top:28px;padding:18px 0 26px;color:var(--muted);font-size:13px;line-height:1.7}.site-footer p{margin:3px 0}.site-footer .text-button{font-size:13px}.back{display:inline-flex;align-items:center;grid-gap:5px;border:0;background:none;padding:0 0 15px;font-size:14px;color:var(--accent-dark);text-align:left}.page-title{font-size:29px;line-height:1.35;letter-spacing:-.8px;margin:0 0 9px}.intro{color:var(--muted);font-size:15px;margin-bottom:21px;line-height:1.75}.section-title{font-size:18px;line-height:1.45;margin:25px 0 10px}.document-list{border-top:1px solid var(--line)}.document-link{width:100%;display:flex;align-items:flex-start;justify-content:space-between;grid-gap:14px;background:none;border:0;border-bottom:1px solid var(--line);padding:17px 0;text-align:left;line-height:1.55}.document-link .name{font-size:16px;font-weight:600;flex:1}.document-link small{display:block;font-size:13px;line-height:1.6;color:var(--muted);font-weight:400;margin-top:5px}.document-link .arrow{color:var(--accent-dark);flex:none}.directory-section>summary{font-weight:600;font-size:18px;padding:15px 0;cursor:pointer;line-height:1.5}.directory-section{border-bottom:1px solid var(--line)}.directory-section .document-list{border-top:0;padding-bottom:8px}.directory-section .document-link:last-child{border-bottom:0}.match{color:#7c2b16;background:#f7d8c4;padding:0 2px}.result-count{font-size:14px;color:var(--muted);margin:15px 0}.empty{padding:25px 0 30px}.empty h2{font-size:23px;line-height:1.4;margin-bottom:10px}.empty p{font-size:15px;color:var(--muted);margin-bottom:17px}.primary{border:1px solid var(--accent);background:var(--accent);color:#fff;padding:12px 18px;min-height:46px;font-size:15px;font-weight:600}.secondary{border:1px solid #96735c;background:transparent;padding:12px 18px;min-height:46px;font-size:15px}.button-row{display:flex;grid-gap:10px;flex-wrap:wrap;margin:22px 0}.reading-header{border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:18px}.reading-meta{font-size:13px;line-height:1.7;color:var(--muted);margin-bottom:11px}.reading-header h1{font-size:29px;line-height:1.42;letter-spacing:-.6px}.reading-tools{display:flex;grid-gap:18px;flex-wrap:wrap;margin-top:14px}.reading-tools button{padding:0;min-height:32px}.chapter-toc{margin:0 0 24px;padding:12px 14px;border:1px solid var(--line);background:var(--surface)}.chapter-toc summary{font-size:14px;cursor:pointer}.chapter-toc ol{margin:10px 0;padding-left:20px}.chapter-toc button{border:0;background:none;text-align:left;padding:5px 0;color:var(--accent-dark);font-size:14px}.prose{font-size:17px;line-height:1.85;overflow-wrap:break-word;color:#33291f}.prose p,.prose ul,.prose ol,.prose blockquote,.prose pre,.prose table{margin:17px 0}.prose h2{font-size:24px;line-height:1.5;margin:32px 0 13px;letter-spacing:-.5px}.prose h3{font-size:20px;line-height:1.55;margin:25px 0 10px}.prose h4,.prose h5,.prose h6{font-size:18px;line-height:1.6;margin:20px 0 9px}.prose h2,.prose h3,.prose h4{scroll-margin-top:20px}.prose ul,.prose ol{padding-left:24px}.prose li{margin:7px 0}.prose blockquote{border-left:2px solid #b58b71;padding-left:16px;color:#5e4432}.prose pre{padding:15px;background:#fff9f2;border:1px solid var(--line);overflow:auto;white-space:pre-wrap;font:14px/1.8 ui-monospace,SFMono-Regular,monospace;word-break:break-word}.prose code{font-family:ui-monospace,SFMono-Regular,monospace;font-size:.85em;background:#f3e2d6;padding:1px 3px}.prose pre code{background:none;padding:0;font-size:inherit}.prose table{display:block;width:100%;overflow:auto;border-collapse:collapse;font-size:15px;line-height:1.7}.prose th,.prose td{min-width:110px;border:1px solid var(--line);padding:10px;text-align:left;vertical-align:top}.prose th{background:#f0dfd1}.text-link{display:inline;border:0;padding:0;background:none;text-align:inherit;text-decoration:underline;text-underline-offset:3px;font:inherit;color:var(--accent-dark);line-height:inherit}.reference{color:inherit}.article-end{margin-top:32px;padding:21px 0;border-top:1px solid var(--line)}.article-end h2{font-size:22px;margin-bottom:8px}.article-end p{font-size:15px;color:var(--muted)}.source-box{margin-top:22px;padding:16px;background:#fff9f2;border:1px solid var(--line);font-size:14px;line-height:1.8;overflow-wrap:break-word}.source-box p{margin:7px 0}.source-box summary{cursor:pointer;font-weight:600}.source-box ul{padding-left:20px}.source-box code{font-size:13px}.mode-select{width:100%;min-height:46px;background:var(--surface);border:1px solid #a7856b;padding:10px;margin-bottom:18px}.field{display:block;margin:19px 0}.field>span{display:block;font-size:16px;font-weight:600;line-height:1.5;margin-bottom:8px}.field textarea{display:block;resize:vertical;min-height:88px;width:100%;border:1px solid #a7856b;background:var(--surface);padding:12px;font-size:16px;line-height:1.7}.form-note{font-size:14px;color:var(--muted);margin:12px 0;line-height:1.75}.validation{font-size:14px;color:#8f2510;margin-top:8px;font-weight:600}.action-card{background:#fffaf4;border:1px solid #b79983;padding:24px;margin:22px 0 0;overflow-wrap:break-word}.card-heading{display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid var(--accent);padding-bottom:15px;margin-bottom:20px;grid-gap:12px}.card-heading h2{font-size:24px;line-height:1.4;letter-spacing:-.5px}.card-heading span{font-size:13px;color:var(--muted)}.card-row{margin:18px 0}.card-row h3{font-size:14px;color:var(--accent-dark);font-weight:600;margin:0 0 6px}.card-row p{font-size:17px;line-height:1.75;white-space:pre-wrap}.card-footer{border-top:1px solid var(--line);padding-top:12px;font-size:13px;color:var(--muted);margin-top:22px}.about-body p,.about-body ul{margin:15px 0;font-size:16px;line-height:1.8}.about-body ul{padding-left:22px}.about-body h2{font-size:21px;line-height:1.5;margin:28px 0 9px}.url-text{overflow-wrap:break-word;font-size:14px}.error-banner{border:1px solid #a74726;padding:20px;background:#fff9f2}.skip{position:absolute;left:10px;top:-100px;z-index:10;background:#fff;padding:8px}.skip:focus{top:10px}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.view-enter{animation:reveal .32s cubic-bezier(.2,.7,.2,1) both}body.first-load .home-grid .question{animation:reveal .35s ease-out both}body.first-load .question:nth-child(2){animation-delay:.04s}body.first-load .question:nth-child(3){animation-delay:.08s}body.first-load .question:nth-child(4){animation-delay:.12s}body.first-load .question:nth-child(5){animation-delay:.16s}body.first-load .question:nth-child(6){animation-delay:.20s}@keyframes reveal{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@media(min-width:720px){.app-shell{padding:0 40px}.site-header{padding-top:32px}.brand-home span{font-size:27px}main{padding-top:34px}.home-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,.65fr);grid-column-gap:32px}.home-title{font-size:48px;margin-bottom:25px}.home-left{grid-row:1/3}.home-right{padding-top:83px}.action-focus{margin-top:0}.question{min-height:108px;padding:20px 18px}.question strong{font-size:18px}.question small{font-size:14px}.prose,.reading-header,.reading-tools,.chapter-toc,.source-box,.article-end{max-width:760px;margin-left:auto;margin-right:auto}.reading-header h1{font-size:35px}.action-form,.card-view,.about-body{max-width:680px;margin-left:auto;margin-right:auto}.page-title{font-size:36px}.document-link{padding:19px 0}}@media(max-width:359px){:root{--space:16px}.brand-home img{width:58px;height:29px}.brand-home span{font-size:21px}.home-title{font-size:34px}.question{padding:14px 10px;min-height:97px}.question strong{font-size:15px}.question small{font-size:13px}.action-card{padding:18px}.reading-header h1{font-size:27px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media print{.site-header,.site-footer,.back,.button-row,.form-note{display:none}.app-shell{padding:0}.action-card{border:0;margin:0}body{background:#fff}}

body[data-view="reader"] .site-header,body[data-view="action"] .site-header{padding-top:14px}body[data-view="reader"] .main-nav,body[data-view="action"] .main-nav{margin-top:9px}body[data-view="reader"] main,body[data-view="action"] main{padding-top:14px}

/* Book catalogue: preserve the author's sequence and preview each part. */
.book-start h2{font-size:14px;line-height:1.6;color:var(--accent-dark);font-weight:600;margin:0 0 5px}
.book-start .document-link{padding:11px 0;min-height:48px;font-size:16px}.book-start .document-link .name{font-size:16px}
.book-parts{margin-top:18px}.theme-part{border-bottom:1px solid var(--line)}
.theme-part summary{display:flex;align-items:flex-start;padding:17px 0;min-height:84px;cursor:pointer;list-style:none}
.theme-part summary::-webkit-details-marker{display:none}.part-number{flex:none;font-size:13px;color:var(--accent-dark);padding-top:3px;margin-right:14px;font-variant-numeric:tabular-nums}
.part-label{display:block;min-width:0;flex:1}.part-label strong{display:block;font-size:17px;line-height:1.55;font-weight:600}
.part-label small{display:block;font-size:14px;line-height:1.7;color:var(--muted);margin-top:5px;font-weight:400}
.expand-mark{flex:none;margin-left:12px;font-size:21px;line-height:1.4;color:var(--accent-dark);transition:transform .2s ease}
.theme-part[open] .expand-mark{transform:rotate(45deg)}.part-chapters{padding:0 0 16px 28px}
.part-chapters .document-link{font-size:15px;line-height:1.65;padding:13px 0}.part-chapters .name{font-size:15px}
.book-afterword .document-link{padding:16px 0}.book-appendices{display:flex;flex-wrap:wrap;margin:15px -9px 0}.book-appendices button{margin:0 9px;font-size:14px}
.chapter-pagination{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-grid-column-gap:20px;margin:30px auto 0;max-width:760px;border-top:1px solid var(--line);padding-top:18px}
.chapter-step{border:0;background:none;min-width:0;min-height:60px;padding:6px 0;text-align:left;color:var(--accent-dark)}.chapter-step span{display:block;font-size:14px;line-height:1.7}
.chapter-step strong{display:block;font-size:15px;line-height:1.7;margin-top:7px;font-weight:500;overflow-wrap:break-word}.chapter-step.next{text-align:right}
.practice-fold{border-top:1px solid var(--line);margin:25px auto 0;padding:18px 0 0;max-width:760px}
.practice-fold summary{cursor:pointer;font-size:15px;min-height:44px;color:var(--accent-dark)}.practice-fold p{font-size:14px;line-height:1.8;color:var(--muted);margin-bottom:14px}
.theme-part[open] .part-chapters{animation:reveal .2s ease-out both}.first-load .book-parts{animation:reveal .28s ease-out both}
@media(min-width:600px){.book-start,.book-parts,.book-afterword,.book-appendices{max-width:760px;margin-left:auto;margin-right:auto}.part-label strong{font-size:19px}.part-label small{font-size:15px}.theme-part summary{padding:20px 0}.part-chapters{padding-left:33px}}
@media(prefers-reduced-motion:reduce){.expand-mark{transition:none}.theme-part[open] .part-chapters,.first-load .book-parts{animation:none}}

@supports selector(:focus-visible){.theme-part summary:focus:not(:focus-visible){outline:none}.theme-part summary:focus-visible{outline:3px solid var(--focus);outline-offset:3px}}

/* Chrome 61 baseline: use margins for Flex spacing and grid-gap for Grid. */
.identity>*+*{margin-left:10px}.brand-home>*+*{margin-left:9px}
.identity,.brand-home,.search-form,.reading-tools,.document-link,.button-row,.card-heading{grid-gap:0}
.search-form>*+*{margin-left:8px}.reading-tools>*+*{margin-left:18px}
.document-link>*+*{margin-left:14px}.card-heading>*+*{margin-left:12px}
.button-row{margin-left:-5px;margin-right:-5px}.button-row>*{margin:5px}
.site-header,body[data-view="reader"] .site-header,body[data-view="action"] .site-header{
padding-top:22px;
padding-top:calc(22px + var(--safe-area-inset-top,0px));
padding-top:var(--container-header-top,calc(22px + var(--safe-area-inset-top,0px)));
}
.site-footer{padding-bottom:26px;padding-bottom:calc(26px + var(--safe-area-inset-bottom,0px))}
@supports(padding-top:env(safe-area-inset-top)){
.site-header,body[data-view="reader"] .site-header,body[data-view="action"] .site-header{padding-top:var(--container-header-top,calc(22px + var(--safe-area-inset-top,env(safe-area-inset-top,0px))))}
.site-footer{padding-bottom:calc(26px + var(--safe-area-inset-bottom,env(safe-area-inset-bottom,0px)))}
}
.prose table{-webkit-overflow-scrolling:touch}.field textarea{-webkit-appearance:none;appearance:none}
@media(min-width:720px){.home-layout{grid-column-gap:32px}}
