:root{--ink:#182936;--muted:#536675;--paper:#f5f6f3;--card:#fff;--line:#cbd4d8;--accent:#145c70;--warm:#96571c;--danger:#97382d;--ok:#2b654d;font-family:system-ui,-apple-system,"Noto Sans CJK SC","Microsoft YaHei",sans-serif;color:var(--ink);background:var(--paper);font-size:17px;line-height:1.78}*{box-sizing:border-box}body{margin:0}a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:3px;overflow-wrap:anywhere}a:hover{color:var(--warm)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #c17c35;outline-offset:3px}header{max-width:1160px;margin:auto;padding:2.3rem 1.5rem 1.1rem}.wrap{max-width:1160px;margin:0 auto;padding:0 1.5rem 3rem}.reader{max-width:900px;margin:1.6rem auto;background:var(--card);padding:2.1rem 2.8rem;border:1px solid var(--line);border-radius:12px}.reader h1{font-size:2rem;line-height:1.42;margin:0 0 1.25rem}.reader h2{font-size:1.38rem;line-height:1.5;margin-top:2.2rem;padding-top:.6rem;border-top:2px solid #e2e8e8}.reader p{margin:.9rem 0}.reader li{margin:.45rem 0}h1,h2,h3{letter-spacing:.015em}h1{font-size:2.1rem;line-height:1.35}h2{font-size:1.4rem;line-height:1.45}h3{font-size:1.1rem}.eyebrow{color:var(--accent);font-weight:750;letter-spacing:.12em;font-size:.82rem;text-transform:uppercase}.small,.hint,.source-line,figcaption{font-size:.83rem;color:var(--muted)}.hint{display:block;line-height:1.5;margin-top:.22rem}.muted{color:var(--muted)}nav{display:flex;flex-wrap:wrap;gap:.5rem 1rem;padding:.8rem 0}nav a{display:inline-block}.lab{margin:1.5rem 0;padding:1.65rem;background:var(--card);border:1px solid var(--line);border-radius:12px;scroll-margin-top:1rem}.controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:.85rem 1rem;background:#f0f4f4;padding:1.15rem;border-radius:8px;margin:1rem 0}.controls label{font-size:.9rem;font-weight:650}.controls .full{grid-column:1/-1}.controls input,.controls select{width:100%;min-height:44px;border:1px solid #8d9ea7;border-radius:5px;background:white;color:var(--ink);font:inherit;font-size:.95rem;padding:.48rem .6rem;margin-top:.25rem}.controls input[type=checkbox]{width:22px;min-height:22px;vertical-align:middle}.button,button{display:inline-block;cursor:pointer;border:1px solid var(--accent);border-radius:5px;background:var(--accent);color:white;padding:.5rem .9rem;font:inherit;font-size:.9rem;text-decoration:none;line-height:1.5}button[type=reset]{background:white;color:var(--accent)}.output{border-top:1px solid var(--line);margin-top:1rem;padding-top:1rem}.metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:.7rem;margin:1rem 0}.metric{padding:.9rem;background:#f2f5f3;border:1px solid #d8e1dc;border-radius:7px}.metric strong{font-size:1.3rem;font-variant-numeric:tabular-nums;display:block;line-height:1.6;overflow-wrap:anywhere}.metric span{display:block;font-size:.82rem;color:var(--muted)}.notice{padding:.8rem 1rem;background:#f8f1e7;border-left:4px solid var(--warm);margin:.8rem 0}.error{padding:.8rem 1rem;border-left:4px solid var(--danger);background:#f9ece8}.success{padding:.8rem 1rem;border-left:4px solid var(--ok);background:#edf5ef}.table-wrap{overflow-x:auto;max-width:100%;margin:1rem 0;border:1px solid var(--line);border-radius:6px}table{width:100%;border-collapse:collapse;font-size:.87rem;line-height:1.65;font-variant-numeric:tabular-nums}th,td{text-align:left;border-bottom:1px solid #dce3e5;padding:.55rem .7rem;vertical-align:top}th{background:#edf2f3;font-weight:700}td:not(:first-child){font-variant-numeric:tabular-nums}tr:last-child td{border-bottom:0}.chart{margin:1rem 0;max-width:100%;overflow:hidden}.chart svg,.reader svg{display:block;width:100%;height:auto}.reader figure{margin:1.4rem 0}.reader img{max-width:100%;height:auto}.chart-caption{font-size:.84rem;color:var(--muted);margin:.3rem 0}.equation{max-width:100%;overflow-x:auto;padding:.35rem 0;margin:1rem 0;text-align:center}.inline-math{max-width:100%;display:inline}.inline-math math{font-size:1em}math{font-family:"STIX Two Math","Cambria Math",math;font-size:1.06em}math[display=block]{margin:.35rem auto;max-width:100%}.reader strong{font-weight:730}.footnotes{font-size:.83rem;line-height:1.65;border-top:1px solid var(--line);margin-top:2rem;padding-top:1rem}.footnotes li{overflow-wrap:anywhere}details{border:1px solid var(--line);border-radius:7px;padding:.75rem 1rem;margin:1.2rem 0;background:#f7f8f5}summary{cursor:pointer;font-weight:650}.static{margin-top:1.8rem;padding-top:1rem;border-top:2px solid #bcced1}.static p{font-size:.9rem}.static details{background:white}.lab-iframe{width:100%;height:1150px;border:1px solid var(--line);border-radius:8px}.embed-box{margin:1.4rem 0}.embed-box>p{font-size:.85rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.hidden,[hidden]{display:none!important}footer{margin-top:2rem;padding:1rem 0;color:var(--muted);font-size:.82rem}.chip{display:inline-block;margin:.1rem .25rem .1rem 0;padding:.18rem .45rem;border:1px solid var(--line);border-radius:20px;font-size:.75rem}pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:.85rem;padding:1rem;background:#eef2f3;border-radius:6px}code{font-size:.9em}.section-links{display:flex;gap:.7rem;flex-wrap:wrap}.lab-heading{display:flex;gap:1rem;align-items:baseline;flex-wrap:wrap}.lab-heading h2{margin:.2rem 0}.nojs .controls,.nojs .output{display:none}.embed-mode #lab-nav{display:none}.embed-mode header{padding-bottom:0}.embed-mode header h1{font-size:1.3rem}.embed-mode .lab{margin-top:.6rem}.embed-mode .wrap{padding:.5rem}.embed-mode .lab{border:0}.embed-mode .static{margin-top:1rem}figcaption{text-align:left;margin-top:.5rem}
@media(max-width:640px){:root{font-size:16px}.wrap{padding:0 .8rem 2rem}header{padding:1.3rem .9rem .5rem}h1{font-size:1.6rem}.reader{padding:1.1rem .9rem;margin:.7rem auto}.reader h1{font-size:1.6rem}.reader h2{font-size:1.2rem}.lab{padding:1rem .75rem}.controls{grid-template-columns:1fr;padding:.8rem}.metric-grid{grid-template-columns:1fr 1fr}.metric{padding:.65rem}.metric strong{font-size:1.05rem}table{font-size:.78rem}th,td{padding:.4rem .48rem}.lab-iframe{height:1450px}.equation{font-size:.88rem}}
@media print{body{background:white;color:black;font-size:10pt}header,.wrap{max-width:none;padding:0}.reader,.lab{border:0;border-radius:0;padding:0;margin:0 0 1.2cm}.controls,.output,.lab-iframe,.embed-box nav,nav,.button,button,#route-error{display:none!important}.static{display:block!important}details{display:block;border:0;background:none;padding:0}details>*:not(summary){display:block!important}summary{list-style:none}h1,h2,h3{break-after:avoid}.chart,figure,table{break-inside:avoid}.table-wrap{overflow:visible;border:0}table{font-size:8pt}a{color:black}footer{border-top:1px solid #bbb}.footnotes{font-size:8pt}math{font-size:1em}.equation{overflow:visible}.lab[hidden]{display:none!important}}

.svg-narrow{display:none}.svg-wide{display:block}@media(max-width:640px){.svg-wide{display:none}.svg-narrow{display:block}}@media print{.svg-wide{display:block}.svg-narrow{display:none}}

body,input,select,button,svg text{font-variant-numeric:lining-nums tabular-nums}
.embed-mode>header,.embed-mode footer{display:none}.embed-mode .wrap{padding:0}.embed-mode .lab{margin:0;border-radius:0}

/* Text remains native-size when the actual figure column is narrow. */
.pfh-responsive-figure{container:pfh-chart / inline-size;min-width:0;max-width:100%;margin:1.2rem 0}
.pfh-responsive-figure>.pfh-wide,.pfh-responsive-figure>.svg-wide{display:none}
.pfh-responsive-figure>.pfh-native,.pfh-responsive-figure>.svg-narrow{display:block}
.pfh-responsive-figure>figcaption{font-size:14px;line-height:1.6;overflow-wrap:anywhere}
.pfh-native{min-width:0;max-width:100%;font-size:14px;line-height:1.6}
.pfh-native p,.pfh-native li,.pfh-native span,.pfh-native strong{overflow-wrap:anywhere}
.pfh-native .pfh-figure-title{font-size:16px;font-weight:700;line-height:1.5;margin:0 0 .65em;color:var(--ink)}
.pfh-native .pfh-figure-note,.pfh-native .pfh-axis-label{font-size:14px;line-height:1.6;margin:.65em 0;color:var(--muted)}
.pfh-legend{list-style:none;padding:0;margin:.65em 0;font-size:14px}
.pfh-legend li{display:flex;align-items:flex-start;gap:.55em;margin:.35em 0;min-width:0}
.pfh-legend svg{width:32px!important;height:12px!important;flex:0 0 32px;margin-top:5px}
.pfh-legend span{min-width:0}
.pfh-plot{display:grid;grid-template-columns:max-content minmax(0,1fr);grid-template-rows:200px 24px;column-gap:8px;row-gap:4px;margin:1em 0 .25em;min-width:0}
.pfh-y-ticks{position:relative;width:calc(var(--pfh-y-label-ch,9)*1ch);height:200px;font-size:12px;line-height:1;font-variant-numeric:lining-nums tabular-nums}
.pfh-y-ticks span{position:absolute;right:0;transform:translateY(-50%);white-space:nowrap;overflow-wrap:normal}
.pfh-native .pfh-plot-svg{display:block;width:100%;height:200px;min-width:0;background:white}
.pfh-x-ticks{grid-column:2;position:relative;min-width:0;height:24px;font-size:12px;line-height:1.5;font-variant-numeric:lining-nums tabular-nums}
.pfh-x-ticks span{position:absolute;top:0;transform:translateX(-50%);white-space:nowrap;overflow-wrap:normal}
.pfh-x-ticks .first{transform:none}.pfh-x-ticks .last{transform:translateX(-100%)}
.pfh-cash-list{list-style:none;padding:0;margin:.8em 0;min-width:0}
.pfh-cash-row{margin:0 0 1.1em;min-width:0}
.pfh-cash-label{display:block;font-size:14px;font-weight:650}
.pfh-cash-reading{display:flex;flex-wrap:wrap;align-items:baseline;gap:.25em .8em;margin:.2em 0 .35em;min-width:0}
.pfh-cash-reading strong{font-size:15px;max-width:100%;font-variant-numeric:lining-nums tabular-nums}
.pfh-cash-reading span{font-size:14px;color:var(--muted)}
.pfh-cash-track{height:12px;width:100%;max-width:100%;overflow:hidden;border-radius:3px;background:#edf1f3}
.pfh-cash-track>span{display:block;height:100%;max-width:100%;background:#145c70;border-radius:3px}
.pfh-cash-row.negative .pfh-cash-track>span{background:#96571c}
.pfh-flow-steps{padding-left:1.6em;margin:.8em 0;font-size:14px}
.pfh-flow-steps>li{padding:.75em .8em;margin:.8em 0;background:#eff4f3;border-left:3px solid #145c70;border-radius:4px;min-width:0}
.pfh-flow-steps strong{display:block;font-size:15px;line-height:1.5}
.pfh-flow-steps p{font-size:14px;line-height:1.6;margin:.35em 0}
@container pfh-chart (min-width:800px){.pfh-responsive-figure>.pfh-wide,.pfh-responsive-figure>.svg-wide{display:block}.pfh-responsive-figure>.pfh-native,.pfh-responsive-figure>.svg-narrow{display:none}}
@media print{.pfh-responsive-figure>.pfh-wide,.pfh-responsive-figure>.svg-wide{display:block}.pfh-responsive-figure>.pfh-native,.pfh-responsive-figure>.svg-narrow{display:none}}
