:root{color-scheme:light;--ink:#182c3a;--muted:#4c626e;--accent:#146862;--line:#d0dedf;--paper:#fff;--wash:#f3f7f6;--blue:#365c9e;--ochre:#946428}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--wash);color:var(--ink);font-family:system-ui,-apple-system,"Segoe UI","Noto Sans CJK SC","Microsoft YaHei",sans-serif;font-size:17px;line-height:1.9;overflow-wrap:break-word}
a{color:var(--accent);text-underline-offset:.2em}a:hover{text-decoration-thickness:2px}button,input,select,textarea{font:inherit}button{padding:.5rem .85rem;border:1px solid var(--accent);border-radius:.4rem;background:white;color:var(--accent);cursor:pointer;line-height:1.5}button:hover,button[aria-pressed=true]{background:var(--accent);color:#fff}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #c39340;outline-offset:3px}input,select{max-width:100%;padding:.3rem .5rem;border:1px solid #8b9fa4;border-radius:.3rem}input[type=number]{width:8.5rem}input[type=range]{width:100%;accent-color:var(--accent)}
header.site{max-width:1050px;margin:1.8rem auto .5rem;padding:0 1.25rem}nav a{display:inline-block;margin-right:1rem}main{max-width:1050px;margin:1rem auto 3rem;padding:2rem 3rem;background:var(--paper);border:1px solid var(--line);border-radius:.7rem;box-shadow:0 8px 35px #183e3910}
h1{font-size:2rem;line-height:1.4;margin-top:.2em}h2{font-size:1.43rem;line-height:1.6;margin-top:2.4rem;border-top:2px solid var(--line);padding-top:1.2rem}h3{font-size:1.15rem;line-height:1.65;margin-top:1.6rem}p{margin:1em 0}strong{font-weight:700}small,.small{font-size:.88rem;color:var(--muted)}code{background:#edf2f4;border-radius:.2rem;padding:.1rem .2rem}pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#f0f4f4;padding:1rem;border-radius:.4rem;line-height:1.7}
.table-wrap{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;margin:1.2rem 0;border:1px solid var(--line);border-radius:.4rem}table{border-collapse:collapse;width:100%;font-variant-numeric:tabular-nums lining-nums;font-size:.94rem;line-height:1.65}th,td{padding:.65rem .7rem;border-bottom:1px solid var(--line);vertical-align:top}th{background:#eaf2f0;text-align:left;font-weight:650}tbody tr:last-child td{border-bottom:0}td.num,th.num{text-align:right;white-space:nowrap}table caption{padding:.65rem;text-align:left;font-weight:650;background:#eef4f5}table code{white-space:normal}
.math.display{display:block;max-width:100%;overflow-x:auto;padding:.5em 0;text-align:center}math{font-size:1.06em}math[display=block]{margin:1rem auto;max-width:100%}iframe{display:block;width:100%;border:1px solid var(--line);border-radius:.6rem;background:#fff;min-height:620px;margin:1.4rem 0}iframe.exp-frame{height:1450px}
.toolbar,[data-reading-branch-controls],.tabs,.button-row{display:flex;gap:.6rem;flex-wrap:wrap;align-items:center;margin:1rem 0}.toolbar{border:1px solid var(--line);padding:1rem;border-radius:.4rem}.toolbar .status{flex-basis:100%;color:var(--muted);font-size:.9rem}section[data-reading-branch]{border-left:3px solid #93b7b0;padding-left:1.2rem;margin:1.5rem 0}[hidden]{display:none!important}.copy-fallback{width:100%;height:240px;font:14px/1.6 monospace}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1rem}.card,.callout{padding:1rem 1.15rem;background:#f4f8f7;border:1px solid var(--line);border-radius:.5rem}.card h2,.card h3{margin-top:.1rem;border:0;padding:0}.tag{display:inline-block;font-size:.78rem;line-height:1.5;border:1px solid #8aaca4;border-radius:.3rem;padding:.1rem .45rem;margin-right:.4rem;background:#eef8f3}.tag.assumed{border-color:#bfa46d;background:#fcf5e9}.readiness{font-size:.93rem;color:var(--muted)}.flow-diagram{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap;margin:1.3rem 0}.flow-node{flex:1;min-width:155px;text-align:center;padding:.8rem;border:1px solid #7fa19d;background:#f1f8f6;border-radius:.5rem}.flow-arrow{color:var(--accent);text-align:center;font-size:.9rem}.footnotes{font-size:.91rem;line-height:1.7;border-top:1px solid var(--line);margin-top:2rem;overflow-wrap:anywhere}.footnote-ref{white-space:nowrap}.source-preview{color:var(--muted)}
/* Lab layout */
body.lab{font-size:16px;background:white}.lab main{box-shadow:none;border:0;margin:.6rem auto;padding:1rem 1.25rem;max-width:1100px}.lab h1{font-size:1.65rem}.lab h2{margin-top:1.2rem;font-size:1.35rem}.lab h3{font-size:1.08rem}.control-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.6rem 1rem}.control-grid label{display:flex;flex-direction:column;font-size:.9rem}.matrix-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.25rem;max-width:380px}.matrix-buttons button{font-variant-numeric:tabular-nums;padding:.35rem}.matrix-buttons button[aria-pressed=true]{background:var(--blue);color:white}.matrix-legend{font-size:.9rem;color:var(--muted)}.chart{width:100%;max-width:100%;height:auto;display:block;margin:.8rem 0}.chart text{font-family:inherit;font-size:13px;fill:var(--ink)}.error{background:#fff0ee;border:1px solid #bb756c;padding:.6rem;border-radius:.3rem;color:#753b31}.metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:.75rem}.metric{background:#f0f6f5;padding:.75rem;border-radius:.35rem;border-top:3px solid var(--accent)}.metric b{font-size:1.2rem;display:block;font-variant-numeric:tabular-nums}.lab details{border:1px solid var(--line);padding:.7rem 1rem;margin:.7rem 0;border-radius:.4rem}.lab summary{cursor:pointer;font-weight:650}.phase-chain{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:.6rem;align-items:center}.phase-chain .box{border:1px solid #89a7a4;border-radius:.35rem;padding:.65rem;text-align:center;font-variant-numeric:tabular-nums}.phase-chain .arrow{font-size:.82rem;color:var(--accent);text-align:center}.print-only{display:none}
@media(max-width:620px){body{font-size:16px}header.site{margin-top:1rem}main{padding:1.25rem 1rem;margin:.7rem .5rem;border-radius:.4rem}h1{font-size:1.65rem}h2{font-size:1.26rem}h3{font-size:1.08rem}th,td{padding:.55rem .45rem}table{font-size:.88rem}section[data-reading-branch]{padding-left:.65rem}.toolbar{padding:.7rem}button{padding:.45rem .6rem}.flow-diagram{display:block}.flow-node{margin:.4rem 0}.flow-arrow{margin:.2rem 0}.phase-chain{display:block}.phase-chain .arrow{margin:.25rem}.control-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lab main{padding:.6rem .7rem}.metrics{grid-template-columns:1fr 1fr}.chart text{font-size:14px}.table-wrap{border-radius:0}input[type=number]{width:100%}}
@media print{body{background:white;color:black;font-size:11pt}header.site,.toolbar,[data-reading-branch-controls],iframe,.tabs,.button-row,.no-print{display:none!important}main{border:0;box-shadow:none;max-width:none;padding:0;margin:0}section[data-reading-branch]{display:block!important;break-inside:auto}h2,h3{break-after:avoid}table{font-size:9pt}.table-wrap{overflow:visible}.math.display{overflow:visible}.print-only{display:block}.lab-module{display:block!important}.tab-panel{display:block!important}.chart{max-height:260px}.footnotes{font-size:9pt}a{color:black}details>div{display:block!important}}
@media(max-width:620px){#io-chart,#trade-chart{max-width:100%;overflow-x:auto}#io-chart .chart,#trade-chart .chart{min-width:610px}}

body,input,svg text{font-variant-numeric:lining-nums tabular-nums}
@media print{details.static-equivalent{display:block!important}details.static-equivalent>div{display:block!important}}
