:root{--paper-ink:#202525;--paper-muted:#646d6b;--paper-accent:#335f54;--paper-rule:#dee4e1}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{color:var(--paper-ink)}
header,main,nav .navinner{max-width:1240px}
header{padding-top:84px}
h1{font-size:clamp(46px,7vw,84px);overflow-wrap:anywhere}
.subtitle{max-width:1000px;font-size:clamp(25px,3vw,38px)}
.meta,.source,.table-note{font-size:13px;line-height:1.8;color:var(--paper-muted)}
.meta{max-width:1000px}
.lead-links{display:flex;gap:18px;flex-wrap:wrap;font-size:14px;margin-top:25px}
section{padding-top:72px;padding-bottom:72px}
.section-kicker{font-size:12px;letter-spacing:.11em;text-transform:uppercase;color:#74827c;margin-bottom:12px}
h4{font-size:18px;margin:28px 0 12px;color:#394a43}
.badge{display:inline-block;font-size:11px;letter-spacing:.02em;font-weight:650;line-height:1.5;padding:3px 7px;border:1px solid #ccd8d1;border-radius:4px;color:#395b4d;background:#f4f7f5;vertical-align:middle;margin-right:6px}
.badge.interpretation,.badge.extension{background:#f7f5f0;border-color:#ded8c9;color:#67593f}
.badge.audit{background:#f0f4f7;border-color:#cfd9df;color:#465e6f}
.cards article{border:1px solid #e4e8e5;border-radius:16px;background:#f8faf8;padding:24px}
.cards article h3{font-size:22px;margin-top:15px}
.key-list li,.flow-text li{margin:12px 0}
.tablewrap{overflow-x:auto;margin:26px 0;border:1px solid var(--paper-rule);border-radius:10px;max-width:100%;-webkit-overflow-scrolling:touch}
.tablewrap table{min-width:720px;font-size:13px;line-height:1.7}
th,td{padding:12px 14px}
tbody th{background:#fafcfb;min-width:130px}
caption{font-weight:600;color:#49584f;font-size:13px;background:#f9fbfa}
.tablewrap strong{font-weight:800}
code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.85em;overflow-wrap:anywhere;background:#f3f5f4;padding:1px 4px;border-radius:3px}
.equation{padding:22px 18px;border:1px solid #e7ece8}
.eq-label{display:block;font-size:12px;color:var(--paper-muted);text-align:right}
.callout{background:#f5f7f4}
.callout.warning{border-left-color:#a59473;background:#faf8f2}
.figure-panels{display:grid;gap:14px;align-items:start}
#figure-9 .figure-panels,#figure-10 .figure-panels{grid-template-columns:1fr 1fr}
.figure-panels a{display:block;cursor:zoom-in}
.figure-code pre{max-height:none;font-size:10.5px;line-height:1.55;padding:14px;white-space:pre-wrap;overflow-wrap:normal;margin:0}
.figure-code p{font-size:13px;margin:0 0 8px}
figure{background:#f8faf9;border:1px solid #e3e9e5;border-radius:12px;padding:15px}
figure img{background:white}
figcaption{line-height:1.85}
.prompt-original{background:#fcfdfc}
.prompt-original summary{font-weight:600;cursor:pointer;font-size:15px}
.prompt-original p,.prompt-original li{font-size:14px;line-height:1.9}
.prompt-original>div{padding:10px 4px}
pre.mermaid{max-height:none;background:white;border:1px solid #e0e7e2;white-space:pre-wrap}
pre.mermaid svg{height:auto;min-width:580px}
.mermaid-error{font-size:13px;color:#775f40}
.closing{font-size:21px;font-weight:550;line-height:1.8;margin-top:32px}
@media(max-width:760px){header{padding-top:52px}.cards.three{grid-template-columns:1fr}section{padding-top:48px;padding-bottom:48px}#figure-9 .figure-panels,#figure-10 .figure-panels{grid-template-columns:1fr}.tablewrap table{font-size:12px}.figure-code pre{font-size:11px}nav .navinner{gap:18px}.closing{font-size:18px}pre.mermaid{padding:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{details{break-inside:auto}h2,h3,h4{break-after:avoid}.tablewrap{overflow:visible}.tablewrap table{min-width:0;font-size:9pt}.cards{display:block}.badge{color:#333}pre.mermaid svg{min-width:0}}
