:root{color:#23283c;--night:#141c37;--purple:#6550bd;--light:#f4f2fa;--border:#dddde7;--soft:#5c6175;background:#fff;font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.75}*{box-sizing:border-box}body{margin:0}a{color:#5140a5;text-underline-offset:4px}a:hover{color:#322564}a:focus-visible{outline-offset:5px;outline:3px solid #8d76e0}h1,h2,h3{letter-spacing:-.04em;line-height:1.13}h1{margin:20px 0 25px;font-size:clamp(38px,4.8vw,66px);font-weight:680}h2{margin:1.7em 0 .65em;font-size:32px}h3{font-size:21px}p{margin:0 0 1.15em}.jump{z-index:99;background:#fff;padding:10px;position:absolute;top:-90px;left:12px}.jump:focus{top:12px}.topline{justify-content:space-between;align-items:center;gap:20px;max-width:1240px;margin:auto;padding:26px 40px;display:flex}.wordmark{color:#171f3a;letter-spacing:-.04em;white-space:nowrap;align-items:center;gap:12px;font-size:21px;font-weight:750;text-decoration:none;display:flex}.wordmark svg{color:var(--purple)}.wordmark em{color:var(--soft);font-style:normal;font-weight:450}.topline nav{gap:30px;font-size:13px;display:flex}.topline nav a{color:#353b51;text-decoration:none}.cover{background:var(--night);color:#fff;grid-template-columns:1.05fr 1fr;align-items:center;gap:65px;padding:70px max(40px,50vw - 580px);display:grid}.cover h1{max-width:620px}.cover p{color:#c9cde0;max-width:530px;font-size:18px}.overline{letter-spacing:.17em;text-transform:uppercase;color:var(--purple);font-weight:750;font-size:10px!important}.cover .overline,.chapter-hero .overline{color:#b8a9f7}.cover .read-link{color:#191b36;background:#bcaafa;margin-top:10px;padding:12px 20px;font-size:14px;font-weight:700;text-decoration:none;display:inline-block}.diagram{background:#1c2747;border:1px solid #465171;border-radius:2px;padding:30px 24px}.diagram p{color:#c0c8e0;margin:16px 0 0;font-size:12px}.diagram svg{width:100%;height:auto;display:block}.diagram-title{letter-spacing:.03em;color:#d9d3f4!important;margin:0 0 20px!important;font-size:12px!important}.wrap{max-width:1160px;margin:0 auto;padding:65px 0}.section-title{justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:35px;display:flex}.section-title h2{margin:8px 0 0;font-size:38px}.section-title p{max-width:420px;color:var(--soft);margin:0;font-size:15px}.chapters{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.chapter-card{border:1px solid var(--border);min-height:218px;padding:26px;position:relative}.chapter-card:hover{border-color:var(--purple);background:#faf9fd}.chapter-card .card-no{color:var(--purple);font:12px ui-monospace,monospace;display:block}.chapter-card h3{margin:25px 0 12px}.chapter-card h3 a{color:var(--night);text-decoration:none}.chapter-card p{color:var(--soft);margin:0;font-size:14px}.workflow{background:var(--light);grid-template-columns:1fr 1.6fr;gap:65px;margin-top:50px;padding:45px;display:grid}.workflow h2{margin:0;font-size:30px}.workflow ol{margin:0;padding-left:20px}.workflow li{margin-bottom:14px;padding-left:8px}.service-note{border-left:3px solid var(--purple);max-width:850px;margin-top:40px;padding:0 0 0 22px}.service-note p{font-size:15px}.chapter-hero{background:var(--night);color:#fff;padding:45px 40px 50px}.chapter-hero>div{max-width:970px;margin:auto}.chapter-hero h1{max-width:850px;font-size:clamp(36px,4.2vw,55px)}.chapter-hero p:not(.overline){color:#ced1e0;max-width:740px;font-size:19px}.edition{color:#b9c0d8;font-size:11px}.lesson-grid{grid-template-columns:230px minmax(0,740px);gap:75px;max-width:1160px;margin:0 auto;padding:50px 0 70px;display:grid}.lesson-nav{align-self:start;font-size:13px;position:sticky;top:25px}.lesson-nav nav{flex-direction:column;gap:5px;display:flex}.lesson-nav nav a{border-bottom:1px solid var(--border);color:var(--soft);gap:13px;padding:10px 0;text-decoration:none;display:flex}.lesson-nav nav a[aria-current]{color:var(--purple);font-weight:750}.lesson-nav nav span{color:#6a6584;align-self:center;font-size:11px}.sidebar-note{color:var(--soft);max-width:180px;padding:25px 0;font-size:12px}.lesson{min-width:0;font-size:17px}.lesson>p:first-child{color:#40455e;font-size:20px;line-height:1.65}.lesson h2{font-size:28px}.lesson h3{margin-top:30px;font-size:22px}.lesson li{margin-bottom:9px}.lesson blockquote{background:var(--light);border-left:3px solid var(--purple);margin:28px 0;padding:20px 24px}.lesson blockquote p:last-child{margin-bottom:0}.lesson table{border-collapse:collapse;width:100%;margin:28px 0;font-size:14px}.lesson td,.lesson th{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:13px 14px}.lesson th{background:var(--light);font-size:12px}.lesson code{background:var(--light);overflow-wrap:anywhere;padding:3px 5px;font:14px ui-monospace,monospace}.lesson-end{border-top:1px solid var(--border);justify-content:space-between;gap:20px;margin-top:50px;padding-top:25px;font-size:13px;display:flex}.bottomline{border-top:1px solid var(--border);color:var(--soft);background:#f7f7fb;justify-content:space-between;gap:30px;padding:35px max(40px,50vw - 580px);font-size:12px;display:flex}.bottomline strong{color:var(--night);font-size:16px}.bottomline p{margin:8px 0 0}.simple-page{max-width:850px;margin:50px auto 80px;padding:0 30px}@media (width<=1200px){.wrap,.lesson-grid{margin:0 35px}.lesson-grid{grid-template-columns:200px minmax(0,1fr);gap:40px}}@media (width<=760px){.topline{flex-wrap:wrap;gap:18px;padding:20px}.topline nav{gap:24px;font-size:12px}.wordmark{font-size:21px}.cover{grid-template-columns:1fr;gap:35px;padding:40px 22px}.cover h1{font-size:43px}.cover p{font-size:16px}.diagram{padding:20px}.wrap{margin:0;padding:40px 22px}.section-title{display:block}.section-title h2{margin-bottom:20px;font-size:32px}.chapters{grid-template-columns:1fr}.chapter-card{min-height:0;padding:24px}.chapter-card h3{margin-top:15px}.workflow{padding:25px;display:block}.workflow h2{margin-bottom:25px}.workflow ol{font-size:15px}.chapter-hero{padding:32px 22px}.chapter-hero p:not(.overline){font-size:17px}.lesson-grid{margin:0;padding:25px 22px 50px;display:block}.lesson-nav{border-bottom:1px solid var(--border);margin-bottom:32px;position:static}.lesson-nav nav{grid-template-columns:1fr 1fr;gap:0 16px;padding-bottom:18px;display:grid}.lesson-nav nav a{font-size:11px}.sidebar-note{display:none}.lesson{font-size:16px}.lesson>p:first-child{font-size:18px}.lesson table{font-size:12px}.lesson td,.lesson th{padding:8px}.bottomline{padding:30px 22px;display:block}.bottomline>p{margin-top:20px}.lesson-end{flex-wrap:wrap}}
