.header .nav a {white-space:nowrap}.header .nav a:after{display:none}.header .nav a[aria-current]:after{display:block}.header-tools label{flex-shrink:0}.footer-links{display:flex;flex-wrap:wrap;gap:6px 20px;margin-top:10px;font-size:11px}.footer-links a{min-height:44px;display:inline-flex;align-items:center}.editor-pick{font-size:11px;min-height:44px;display:inline-flex;align-items:center;line-height:1.8;color:#526749}.editor-pick:hover{text-decoration:underline}.route{position:relative}.page-intro{padding:65px 0 44px;max-width:860px}.page-intro h1{font-size:46px;line-height:1.45;letter-spacing:-1.8px}.page-intro>p:not(.eyebrow){font-size:16px;line-height:1.9;color:#627568;max-width:650px}.page-intro .action{margin-top:20px}.reading-index{display:grid;grid-template-columns:220px 1fr;gap:65px;margin-bottom:80px}.index-nav{border-top:1px solid var(--line);align-self:start;position:sticky;top:28px}.index-nav a{display:flex;align-items:center;justify-content:space-between;padding:18px 0;border-bottom:1px solid var(--line);font-size:13px}.index-nav span{font-family:Manrope,sans-serif;color:#758b70}.reading-row{display:grid;grid-template-columns:38px 1fr 26px;gap:16px;padding:28px 0;border-top:1px solid var(--line);transition:background 180ms}.reading-row:hover{background:#eff4e8}.reading-no{font-family:Manrope,sans-serif;font-size:12px;color:#73846b;padding-top:5px}.category-label{color:#607856;font-size:11px}.reading-row h2{font-size:22px;font-weight:500;line-height:1.55;margin:7px 0 12px}.reading-row p{font-size:13px;line-height:1.9;color:#667667;margin:0;max-width:670px}.reading-arrow{align-self:center;font-size:24px}.breadcrumbs{display:flex;gap:13px;font-size:12px;color:#677966;margin-top:36px}.breadcrumbs a{min-height:44px;display:flex;align-items:center}.breadcrumbs span{align-self:center}.article-head{max-width:920px;padding:30px 0 38px}.article-head h1{font-size:43px;line-height:1.5;letter-spacing:-1.5px;margin-bottom:20px}.article-deck{max-width:770px;color:#63756b;font-size:16px;line-height:1.95}.article-meta{display:flex;flex-wrap:wrap;gap:20px;font-size:11px;color:#73806e;margin-top:24px}.article-grid{display:grid;grid-template-columns:220px minmax(0,790px);gap:65px;padding-bottom:70px}.article-grid>aside{position:relative}.article-toc{position:sticky;top:24px;border-top:1px solid var(--line);padding-top:20px}.article-toc p{font-size:11px;color:#75866e;letter-spacing:1px;margin:0 0 12px}.article-toc a{display:block;font-size:12px;line-height:1.9;padding:9px 0;color:#596e55}.article-toc a:hover{color:#176b53}.article-cover{margin:0 0 35px}.article-cover img{display:block;width:100%;height:auto;aspect-ratio:1200/630;object-fit:cover;border-radius:18px}.article-cover figcaption{font-size:10px;line-height:1.8;color:#6b7a63;margin-top:9px}.prose{font-family:'Waymint Sans','Microsoft YaHei',sans-serif;font-size:16px;line-height:2.05;color:#33483d;overflow-wrap:break-word}.prose>p{margin:0 0 23px}.prose h2{font-size:27px;font-weight:500;line-height:1.65;margin:48px 0 19px;color:#193f30;scroll-margin-top:26px}.prose h3{font-size:19px;font-weight:500;line-height:1.8;margin:27px 0 10px}.prose a{color:#176b53;text-decoration:underline;text-underline-offset:4px;text-decoration-color:#9caf8e}.prose strong{font-weight:600;color:#233f2d}.prose ul,.prose ol{padding-left:1.5em;margin:20px 0}.prose li{padding-left:4px;margin:10px 0}.prose .note,.prose blockquote{margin:27px 0;padding:22px 27px;background:#edf2e5;border-left:3px solid #8ca174;border-radius:0 12px 12px 0;font-size:15px}.prose .note p:last-child{margin-bottom:0}.prose .table-wrap{overflow-x:auto;margin:24px 0}.prose table{border-collapse:collapse;width:100%;font-size:14px;line-height:1.9}.prose th,.prose td{padding:15px;text-align:left;vertical-align:top;border-bottom:1px solid #dbe3d4}.prose th{background:#edf2e5;font-weight:500}.prose .invite-panel{border:1px solid #dce5d5;border-radius:16px;padding:24px;background:#f0f4e9;margin:28px 0}.invite-panel code{font-family:Manrope,sans-serif;font-size:28px;letter-spacing:3px}.invite-panel .action{color:white;text-decoration:none;margin:17px 0 8px}.invite-panel small{display:block;font-size:12px;line-height:1.9}.prose details{border-top:1px solid var(--line);padding:18px 0}.prose summary{cursor:pointer;font-weight:500;min-height:44px;display:flex;align-items:center}.related{margin-top:60px;border-top:1px solid var(--line);padding-top:22px}.related>h2{font-size:20px;font-weight:500;margin-bottom:24px}.related .reading-row h2{font-size:17px}.related .category-label{display:none}.related .reading-row p{font-size:12px}.home-tools{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:24px;padding:42px 0 55px;border-top:1px solid var(--line);align-items:center}.home-tools h2{font-size:23px;line-height:1.7;font-weight:500}.home-tools p:not(.eyebrow){font-size:12px;color:#64765d;line-height:1.9}.home-tools>a{border:1px solid #d6e0cd;border-radius:15px;padding:28px 22px;font-size:14px;background:#f0f4e9;line-height:1.9}.home-tools>a span{display:block;margin-top:22px;font-size:24px}.simple-body{max-width:800px;padding-bottom:70px}.tool-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-bottom:60px}.tool-card{display:block;padding:32px;background:#edf3e5;border:1px solid #d8e3d0;border-radius:20px}.tool-card h2{font-size:26px;font-weight:500;margin:20px 0 15px}.tool-card p{font-size:15px;line-height:1.9;color:#597054}.tool-card .arrow{display:block;margin-top:35px}.tool-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:34px;margin-bottom:50px}.tool-surface{border:1px solid #d9e3d1;background:#f1f5eb;border-radius:20px;padding:30px}.tool-surface h2{font-size:21px;font-weight:500;margin:0 0 20px}.tool-surface label{display:block;font-size:14px;line-height:1.8;margin-bottom:16px}.tool-surface input[type=number],.tool-surface select{display:block;width:100%;border:1px solid #bbcbb0;background:#fffef9;border-radius:8px;padding:13px 14px;min-height:48px;font:inherit;color:#193f30;margin-top:8px}.check-item{display:flex!important;gap:14px;align-items:flex-start;border-bottom:1px solid #d5e0cb;padding:17px 0;margin:0!important;cursor:pointer}.check-item input{width:21px;height:21px;flex-shrink:0;margin:4px 0 0;accent-color:#176b53}.check-item small{display:block;font-size:12px;color:#64755b}.tool-result{align-self:start;position:sticky;top:25px;border-radius:20px;background:#184d3e;color:#eff3e7;padding:32px}.tool-result h2{font-size:21px;font-weight:500;margin:0 0 18px}.tool-result p{font-size:14px;line-height:1.9;color:#d2e1c8}.tool-result .result-number{font-family:Manrope,sans-serif;font-size:42px;line-height:1.4;letter-spacing:-2px;color:#e4edc7}.tool-result output{display:block}.tool-result dl{font-size:14px;line-height:1.8}.tool-result dt{color:#c4d8b9;margin-top:15px}.tool-result dd{margin:5px 0 0;font-size:20px}.tool-result .error{color:#ffe0c9}.tool-surface button,.tool-result button{min-height:44px;border-radius:24px;border:1px solid #a7bd98;padding:10px 20px;background:transparent;cursor:pointer;margin-top:20px}.tool-result button{color:#eff3e7}.calculator-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.calculator-fields fieldset{border:0;padding:0;margin:0;min-width:0}.calculator-fields legend{font-size:17px;margin-bottom:15px}.tool-help{margin-bottom:65px;max-width:830px}.tool-help summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-size:16px}.tool-help .prose{padding-top:15px}.sr-status{font-size:12px;line-height:1.8}.check-progress{height:5px;border-radius:6px;background:#456c4f;overflow:hidden;margin:20px 0}.check-progress>span{display:block;background:#e3edbd;height:100%;width:0;transition:width 180ms}.copy-inline{background:white;border:1px solid #becdb2;border-radius:24px;min-height:44px;padding:8px 17px;margin-left:15px;color:#254b34;font-size:12px}
@media(max-width:1100px){.reading-index,.article-grid{gap:35px;grid-template-columns:180px minmax(0,1fr)}.article-head h1{font-size:38px}.header .nav{gap:18px;font-size:12px}.home-tools{grid-template-columns:1.3fr 1fr 1fr;gap:16px}.home-tools h2{font-size:20px}}
@media(max-width:760px){.header{height:auto;min-height:112px;flex-wrap:wrap;gap:9px 14px;padding:14px 0 7px}.header .nav{display:flex;order:3;width:100%;justify-content:space-between;gap:8px;font-size:11px}.header .nav a{padding:11px 0;min-height:44px}.header-tools{gap:6px}.header .lang{max-width:103px}.page-intro{padding:36px 0 26px}.page-intro h1{font-size:31px;letter-spacing:-1px}.page-intro>p:not(.eyebrow){font-size:14px}.reading-index{display:block;margin-bottom:45px}.index-nav{display:flex;overflow-x:auto;position:static;gap:19px;border-top:0;margin-bottom:15px;padding:0 0 6px}.index-nav a{flex-shrink:0;gap:7px;padding:12px 0;font-size:11px}.reading-row{grid-template-columns:24px 1fr 18px;gap:10px;padding:22px 0}.reading-row h2{font-size:18px}.reading-row p{font-size:12px}.reading-arrow{font-size:19px}.article-head{padding:20px 0 26px}.article-head h1{font-size:30px;line-height:1.6}.article-deck{font-size:14px}.article-meta{font-size:10px;gap:10px}.breadcrumbs{margin-top:16px;font-size:11px}.article-grid{display:block;padding-bottom:40px}.article-toc{position:static;margin-bottom:25px;display:flex;flex-wrap:wrap;gap:0 18px}.article-toc p{width:100%}.article-toc a{font-size:11px;max-width:100%}.article-cover{margin-bottom:25px}.prose{font-size:16px;line-height:2}.prose h2{font-size:23px;margin-top:35px}.prose h3{font-size:18px}.prose .note,.prose blockquote{padding:17px 20px;font-size:14px}.prose td,.prose th{padding:11px;min-width:90px;font-size:12px}.prose .invite-panel{padding:20px}.home-tools{grid-template-columns:1fr 1fr;gap:15px;padding:30px 0}.home-tools>div{grid-column:1/-1}.home-tools h2{font-size:21px}.home-tools>a{font-size:12px;padding:19px 16px}.tool-grid,.tool-layout{display:block}.tool-card{padding:24px;margin-bottom:20px}.tool-card h2{font-size:23px}.tool-card p{font-size:14px}.tool-surface,.tool-result{padding:23px;border-radius:17px;margin-bottom:22px}.tool-result{position:static}.tool-surface label{font-size:13px}.calculator-fields{gap:14px}.calculator-fields legend{font-size:15px}.tool-surface input[type=number],.tool-surface select{font-size:16px;padding:12px 10px}.footer{align-items:flex-start}.footer-links{gap:0 15px;font-size:10px}.simple-body{padding-bottom:40px}.footer .wordmark{font-size:17px}}
@media(prefers-reduced-motion:reduce){.check-progress>span{transition:none}}
.article-toc summary{cursor:pointer;min-height:44px;font-size:12px;color:#597054;line-height:1.8;margin-bottom:8px;}
.page-intro h1,.article-head h1{text-wrap:balance;}
@media(max-width:760px){.article-toc{display:block;padding:12px 0;border-bottom:1px solid var(--line)}.article-toc summary{font-size:13px;margin:0;line-height:44px}.article-toc nav{padding:6px 0 12px}.article-toc a{min-height:44px;padding:10px 0}.calculator-fields{grid-template-columns:1fr}.calculator-fields fieldset+fieldset{border-top:1px solid #cad9be;padding-top:24px;margin-top:8px}.calculator-fields legend{font-size:18px;padding:0 0 10px}}

/* Lead with the answer; place the illustration after the first complete section. */
.breadcrumbs{margin-top:20px}
.article-head{padding:16px 0 28px}
.article-head .eyebrow{margin-bottom:12px}
.article-head h1{margin-bottom:12px}
.article-deck{margin:0;font-size:15px;line-height:1.85}
.article-meta{margin-top:17px}
.article-body>.prose>p:first-child{font-size:18px;line-height:1.95;color:#244c3c}
.prose .article-cover{margin:30px 0 38px}
.prose .article-cover figcaption{font-family:Manrope,'Waymint Sans',sans-serif;font-size:11px;letter-spacing:.2px}
@media(max-width:760px){
 .breadcrumbs{margin-top:10px}
 .article-head{padding:12px 0 20px}
 .article-head h1{font-size:29px;line-height:1.5}
 .article-deck{font-size:13px;line-height:1.9}
 .article-meta{margin-top:13px}
 .article-toc{margin-bottom:20px}
 .article-body>.prose>p:first-child{font-size:17px;line-height:1.95}
}
/* Article illustrations are selectable, responsive HTML rather than repeated raster cards. */
.prose .article-diagram{border:1px solid #dce3d4;border-radius:5px;background:#f1f4e9;overflow:hidden}
.article-diagram .diagram-title{padding:23px 26px;font-size:17px;font-weight:600;line-height:1.65;letter-spacing:-.2px;color:#204c3d;border-bottom:1px solid #dce3d4}
.article-diagram .diagram-content{padding:24px 26px;font-size:14px;line-height:1.8;color:#375448}
.prose .article-diagram figcaption{padding:15px 26px;margin:0;background:#fafbf6;border-top:1px solid #dce3d4;font-size:12px;line-height:1.8;color:#617064}
.article-diagram .diagram-content b{display:block;font-size:16px;font-weight:600;color:#214d3d}
.article-diagram .diagram-content small{display:block;font-size:11px;color:#6c7b67;margin-bottom:8px;letter-spacing:.4px}
.article-diagram .diagram-content p{margin:10px 0 0;font-size:13px;line-height:1.9}
.article-diagram .diagram-content ol{margin:0;padding:0;list-style:none;counter-reset:figure-step}
.article-diagram .diagram-steps li{counter-increment:figure-step;position:relative;padding:0 0 20px 44px;margin:0;border-left:1px solid #b9c9ac;margin-left:14px}
.article-diagram .diagram-steps li:last-child{padding-bottom:0;border-color:transparent}
.article-diagram .diagram-steps li:before{content:counter(figure-step,decimal-leading-zero);position:absolute;left:-14px;top:0;width:28px;height:28px;background:#244e3d;border-radius:50%;color:#f7f8ec;text-align:center;line-height:28px;font-family:Manrope,sans-serif;font-size:10px}
.article-diagram .diagram-steps span{display:block;font-size:13px;margin-top:3px}
.article-diagram .diagram-split,.article-diagram .diagram-columns,.article-diagram .diagram-ledger,.article-diagram .diagram-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.article-diagram .diagram-split>div+div,.article-diagram .diagram-ledger>div+div{padding-left:22px;border-left:1px solid #d1dac7}
.article-diagram .diagram-columns{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.article-diagram .diagram-columns>div{border-top:3px solid #77926b;padding-top:14px}
.article-diagram .diagram-columns>div:nth-child(2){border-color:#b69774}
.article-diagram .diagram-columns>div:nth-child(3){border-color:#4f8272}
.article-diagram .diagram-root{background:#285a46;color:#f5f7e8;padding:13px 18px;font-weight:500;text-align:center;font-size:15px}
.article-diagram .diagram-pair{margin-top:20px}
.article-diagram .diagram-pair>div{border-top:1px solid #aebfa1;padding:14px 0 0}
.article-diagram dl{margin:0}
.article-diagram dd{margin:0}
.article-diagram .diagram-branches dl>div,.article-diagram .diagram-comparison dl>div{display:grid;grid-template-columns:100px 1fr;gap:14px;padding:17px 0;border-bottom:1px solid #d2dcc7}
.article-diagram dt{font-weight:600}
.article-diagram .diagram-branches .diagram-root{margin-bottom:9px}
.article-diagram .diagram-warning{background:#ebe4d4;padding:13px 16px;color:#5f503b;border-left:2px solid #b79971}
.article-diagram .diagram-ledger dl>div{display:flex;justify-content:space-between;gap:12px;padding:9px 0}
.article-diagram .diagram-ledger dt{font-weight:400;font-size:12px}
.article-diagram .diagram-ledger dd{font-family:Manrope,sans-serif;font-size:15px;white-space:nowrap}
.article-diagram .diagram-total{border-top:1px solid #aebfa1;margin-top:8px;color:#1c563f}
.article-diagram .diagram-total dd{font-weight:700}
.article-diagram .diagram-book-row{display:grid;grid-template-columns:1fr 95px 60px;gap:12px;align-items:center;padding:13px 16px;background:#e3eacb;margin-bottom:8px;font-size:12px}
.article-diagram .diagram-book-row:nth-child(2){background:#ede2d1}
.article-diagram .diagram-book-row b,.article-diagram .diagram-book-row strong{font-family:Manrope,sans-serif;font-size:15px;text-align:right}
.article-diagram .diagram-equation{padding-top:18px;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;font-size:13px}
.article-diagram .diagram-equation b{font-family:Manrope,'Waymint Sans',sans-serif;font-size:20px}
.article-diagram .diagram-match{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.article-diagram .diagram-match .diagram-center{grid-row:2;grid-column:1/-1;border-top:1px solid #afc29f;padding-top:17px}
.article-diagram .diagram-match>div:last-child{grid-row:1;grid-column:2}
.article-diagram .diagram-tag{display:inline-block;padding:3px 10px;margin:0 6px 6px 0;background:#e3e7dd;color:#657260;font-size:12px}
.article-diagram .diagram-tag.chosen{background:#285a46;color:#f4f7e8}
.article-diagram .diagram-center span{font-size:12px}
@media(max-width:600px){
 .article-diagram .diagram-title{padding:18px;font-size:16px}
 .article-diagram .diagram-content{padding:19px 18px}
 .prose .article-diagram figcaption{padding:13px 18px}
 .article-diagram .diagram-split,.article-diagram .diagram-columns,.article-diagram .diagram-ledger{grid-template-columns:1fr;gap:20px}
 .article-diagram .diagram-split>div+div,.article-diagram .diagram-ledger>div+div{border-left:0;padding-left:0;border-top:1px solid #d1dac7;padding-top:18px}
 .article-diagram .diagram-pair{gap:14px}
 .article-diagram .diagram-pair b{font-size:13px}
 .article-diagram .diagram-branches dl>div,.article-diagram .diagram-comparison dl>div{grid-template-columns:74px 1fr;font-size:13px}
 .article-diagram .diagram-book-row{grid-template-columns:1fr 74px 45px;gap:6px;padding:10px;font-size:11px}
 .article-diagram .diagram-book-row b,.article-diagram .diagram-book-row strong{font-size:13px}
}
.prose .article-screenshot{margin:28px 0 36px;border:1px solid #dce3d4;background:#fff;border-radius:6px;overflow:hidden}
.article-screenshot>a{display:block;border:0}
.article-screenshot img{display:block;width:100%;height:auto}
.prose .article-screenshot figcaption{padding:15px 18px;margin:0;background:#f6f7f0;color:#526557;font-size:12px;line-height:1.85;border-top:1px solid #dce3d4}
.prose .screenshot-portrait{max-width:512px}
.article-screenshot>a:focus-visible{outline:3px solid #176b53;outline-offset:-3px}
@media(max-width:760px){
 .index-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;overflow:visible;padding-bottom:0}
 .index-nav a{min-width:0;align-items:flex-start;gap:8px;white-space:normal;line-height:1.7;font-size:12px}
 .index-nav a span{flex-shrink:0}
}

/* Reading shelf and touch targets from the independent audit. */
.header .wordmark,.footer .wordmark{display:inline-flex;align-items:center;min-height:44px}
.header .nav a,.footer-links a{min-width:44px}
.language-picker select{min-height:44px}
.board a.board-bottom{display:flex;align-items:center;justify-content:space-between;min-height:44px}
.home-directory{padding:52px 0 60px;border-top:1px solid var(--line)}
.directory-intro{max-width:640px;margin-bottom:32px}
.directory-intro h2{font-size:clamp(26px,2.8vw,38px);font-weight:500;line-height:1.4;margin:14px 0}
.directory-intro>p:last-child{font-size:14px;line-height:1.8;color:#627568}
.directory-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}
.directory-group h3{font-size:15px;font-weight:600;margin:0;border-bottom:2px solid #194d3e}
.directory-group h3 a{display:flex;align-items:center;min-height:48px}
.directory-group ul{list-style:none;padding:0;margin:0}
.directory-group li{border-bottom:1px solid var(--line)}
.directory-group li a{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:15px 0;min-height:52px;font-size:14px;line-height:1.7}
.directory-group li a span{flex-shrink:0;color:#607856}
.directory-group a:hover{color:#176b53}
.directory-group a:focus-visible{outline:2px solid #176b53;outline-offset:4px}
@media(max-width:760px){.home-directory{padding:36px 0 42px}.directory-columns{grid-template-columns:1fr;gap:28px}.directory-intro{margin-bottom:24px}.directory-group li a{font-size:15px;padding:14px 0}}
