:root{--paper:#f6f3eb;--white:#fffdf8;--ink:#213d36;--muted:#64746d;--teal:#137b69;--gold:#bc702d;--line:#d4ddd5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.75 system-ui,sans-serif}a{color:var(--teal);text-underline-offset:4px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px}header,main,footer{max-width:1120px;margin:auto;padding:0 32px}nav{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:24px 0;border-bottom:1px solid var(--line);font:12px/1.5 ui-monospace,monospace}nav a{text-decoration:none}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:35px;align-items:center;padding:80px 0 65px}.eyebrow{font:11px/1.5 ui-monospace,monospace;color:var(--gold);letter-spacing:1.8px;text-transform:uppercase}h1{font:500 clamp(48px,6.7vw,78px)/1.03 Georgia,serif;letter-spacing:-2px;margin:22px 0}h1 em{font-style:normal;color:var(--teal)}h2{font:500 37px/1.2 Georgia,serif;margin:12px 0 20px;letter-spacing:-.5px}h3{font:500 25px/1.3 Georgia,serif;margin:8px 0 16px}p{margin:0 0 20px}.hero p{font-size:18px;color:var(--muted);max-width:500px}.hero img{width:100%}.buttons{display:flex;flex-wrap:wrap;gap:12px;margin-top:25px}.button{display:inline-block;padding:11px 18px;border:1px solid var(--line);border-radius:9px;text-decoration:none;font:600 13px/1.5 system-ui;background:var(--white);color:var(--ink)}.button.primary{background:var(--teal);color:#fff;border-color:var(--teal)}.meta{font:12px/1.6 ui-monospace,monospace;color:var(--muted);margin-top:22px}.toc{padding:22px 25px;border:1px solid var(--line);border-radius:13px;background:var(--white);display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap}.toc a{font:13px system-ui;text-decoration:none}section.chapter{padding:68px 0;border-bottom:1px solid var(--line)}.intro{max-width:790px;font-size:19px;color:var(--muted)}.two{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:25px 0}.card{background:var(--white);padding:26px 28px;border:1px solid var(--line);border-radius:13px}.card.soft{background:#e6eee7}.card p:last-child{margin-bottom:0}.math-display{display:block;margin:16px 0;overflow:auto;font-size:1.04em}.math-inline{white-space:normal}.note{padding:17px 22px;border-left:3px solid var(--gold);background:#f3e9d9;font-size:15px;border-radius:0 8px 8px 0}.lab-box{margin:28px 0;border:1px solid var(--line);border-radius:14px;background:var(--white);overflow:hidden}.lab-bar{display:flex;justify-content:space-between;padding:15px 22px;background:#e6eee7;gap:12px;align-items:center}.lab-bar span{font:11px ui-monospace,monospace;letter-spacing:1px}.lab-bar a{font-size:12px}.lab-box iframe{display:block;width:100%;height:730px;border:0}.lab-box.association iframe{height:930px}.lab-footer{padding:13px 22px;font-size:13px;color:var(--muted);border-top:1px solid var(--line)}table{border-collapse:collapse;width:100%;font-size:15px;margin:24px 0}th,td{text-align:left;padding:14px;border-bottom:1px solid var(--line);vertical-align:top}th{font-weight:600;background:#e6eee7}.references{font-size:15px}.references p{margin-bottom:18px}.references strong{color:var(--ink)}footer{padding-top:32px;padding-bottom:40px;font-size:13px;color:var(--muted)}.figure{width:100%;border-radius:12px}.steps{counter-reset:steps;padding:0;list-style:none}.steps li{position:relative;padding:0 0 20px 47px}.steps li:before{counter-increment:steps;content:'0' counter(steps);position:absolute;left:0;top:2px;font:13px ui-monospace;color:var(--gold)}code{font-size:.86em;background:#e9ede5;padding:2px 5px;border-radius:4px}@media(max-width:760px){body{font-size:16px}header,main,footer{padding-left:20px;padding-right:20px}.hero{grid-template-columns:1fr;padding:45px 0 35px;gap:20px}.hero img{max-width:380px;margin:auto}.two{grid-template-columns:1fr}h2{font-size:31px}.card{padding:22px}section.chapter{padding:45px 0}.toc{gap:17px}.lab-bar{padding:13px}.lab-box iframe{height:1030px}.lab-box.association iframe{height:1390px}th,td{padding:10px 7px;font-size:12px}.math-display{font-size:.85em}.lab-footer{padding:13px}nav{font-size:10px}.intro{font-size:17px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{nav,.toc,.buttons,.lab-box{display:none}.hero{padding:10px 0;grid-template-columns:1fr 1fr}body{font-size:11pt}section.chapter{padding:20px 0}.card{break-inside:avoid}h2{break-after:avoid}.two{gap:12px}.math-display{overflow:visible}a{color:inherit}}
