.worked-example{border:1px solid var(--line);border-left:3px solid var(--sage);background:var(--sage-soft);margin:32px 0;padding:24px 28px;scroll-margin-top:88px}.example-kicker{justify-content:space-between;align-items:center;gap:16px;display:flex}.example-kicker a{width:28px;height:28px;color:var(--muted);place-items:center;display:grid}.worked-example h3{font-family:var(--serif);margin:8px 0 14px;font-size:28px;font-weight:400;line-height:1.2}.article-content .worked-example p{margin:12px 0;font-size:15px;line-height:1.8}.example-concept{color:var(--ink)}.example-steps{border-top:1px solid var(--line);margin:20px 0 0}.example-steps summary{cursor:pointer;padding:16px 0;font-size:14px;line-height:1.7}.example-steps summary .mono{color:var(--muted);margin-left:12px;font-size:10px}.example-steps ol{padding:0 0 0 28px;list-style:decimal-leading-zero}.example-steps li{padding:0 0 10px 8px}.example-steps h4{margin:5px 0 0;font-size:15px;font-weight:600}.example-steps li::marker{font-family:var(--mono);color:var(--muted);font-size:12px}.example-boundary{border-top:1px solid var(--line);padding-top:16px}.example-sources{margin:20px 0}.example-sources ul{padding:0;list-style:none}.example-sources li{padding:8px 0;font-size:12px}.example-sources a{text-underline-offset:3px;text-decoration:underline}.article-content .example-sources p{color:var(--muted);font-size:12px;line-height:1.65}.article-content .example-takeaway{border-top:1px solid var(--line);margin-bottom:0;padding-top:16px}.model-embed{border:1px solid var(--line);margin:32px 0;scroll-margin-top:88px}.model-heading{padding:20px 24px 0}.model-heading h3{font:400 28px/1.2 var(--serif);margin:10px 0}.model-stage{aspect-ratio:3/2;background:var(--paper);position:relative}.model-poster{object-fit:contain;width:100%;height:100%;display:block}.model-mount{position:absolute;inset:0}model-viewer{--poster-color:transparent;width:100%;height:100%;display:block}.model-load{z-index:1;border:1px solid var(--ink);background:var(--paper);color:var(--ink);cursor:pointer;white-space:nowrap;border-radius:3px;min-height:44px;padding:14px 20px;position:absolute;bottom:24px;left:50%;transform:translate(-50%)}.model-load .mono{padding-left:12px;font-size:10px}.model-load:disabled{cursor:wait;opacity:.65}.model-stage.is-loaded .model-poster{visibility:hidden}.model-controls{flex-wrap:wrap;gap:8px;padding:16px 24px 0;display:flex}.model-controls button{border:1px solid var(--line);background:var(--paper);cursor:pointer;min-width:44px;min-height:44px;font:inherit;padding:8px 12px;font-size:12px}.article-content .model-status,.article-content .model-instructions{padding:0 24px;font-size:13px;line-height:1.7}.model-embed figcaption{padding:0 24px 24px}.article-content .model-embed figcaption p{font-size:14px;line-height:1.8}.article-content .model-attribution,.article-content .model-provenance p{font-size:12px}.model-provenance{margin:16px 0}.model-provenance summary{cursor:pointer;padding:10px 0;font-size:13px}.model-digest code{overflow-wrap:anywhere;font-size:11px}.model-links{flex-wrap:wrap;gap:12px 28px;font-size:13px;display:flex}.model-embed a{text-underline-offset:3px;text-decoration:underline}.model-controls[hidden],.model-load[hidden],.model-instructions[hidden]{display:none}@media (width<=600px){.worked-example{padding:18px}.worked-example h3,.model-heading h3{font-size:25px}.model-stage{aspect-ratio:1}.model-controls{padding:12px 16px 0}.model-heading,.model-embed figcaption{padding-left:16px;padding-right:16px}}@media print{.example-steps summary{display:none}.worked-example{break-inside:auto;background:0 0}.worked-example h3,.example-steps h4{break-after:avoid}.model-mount,.model-load,.model-controls,.model-status,.model-instructions{display:none!important}.model-stage.is-loaded .model-poster{visibility:visible}.model-stage{max-height:300px}}.appearance-control{border-bottom:1px solid var(--line);margin:0 40px}.appearance-control>summary{cursor:pointer;justify-content:flex-end;align-items:center;gap:12px;min-height:44px;font-size:12px;display:flex}.appearance-control>summary::marker{content:""}.appearance-control .palette-bar{border:0;margin:0;padding:12px 0 20px}.section-outline,.section-outline ul{margin:0;padding:0;list-style:none}.section-outline>li>a{font-weight:500}.section-outline ul{border-left:1px solid var(--line);margin:2px 0 10px 9px;padding-left:10px}.section-outline ul a{font-weight:400}.page-margin .section-outline a{padding:7px 8px;font-size:10px;line-height:1.6;display:block}.page-margin .section-outline a[aria-current=location]{background:var(--sage-soft);border-left:2px solid var(--ink)}.article-content .worked-example>:is(h2,h3){font:400 28px/1.2 var(--serif);margin:8px 0 14px}.example-steps :is(h3,h4){font:600 15px/1.5 var(--sans);margin:5px 0 0}.article-content .example-boundary{color:var(--muted);border:0;padding-top:0;font-size:13px}.example-kicker .eyebrow{text-transform:uppercase}.example-actions{justify-content:flex-end;margin:16px 0;display:flex}.example-actions button{text-underline-offset:4px;min-height:44px;font:inherit;cursor:pointer;background:0 0;border:0;padding:8px 0 8px 18px;font-size:12px;text-decoration:underline}.evidence-walkthrough{border-block:1px solid var(--line);margin:32px 0;padding:24px 0;scroll-margin-top:90px}.article-content .evidence-walkthrough>:is(h2,h3){font:400 30px/1.25 var(--serif);margin:12px 0}.evidence-tabs{border-bottom:1px solid var(--line);grid-template-columns:repeat(5,minmax(0,1fr));margin:24px 0;display:grid}.evidence-tabs button{text-align:left;min-height:58px;font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;padding:14px 8px;font-size:13px}.evidence-tabs .mono{color:var(--muted);margin-bottom:6px;font-size:10px;display:block}.evidence-tabs [aria-selected=true]{border-bottom-color:var(--ink);background:var(--sage-soft)}.evidence-panel{margin:24px 0;scroll-margin-top:90px}.evidence-panel>:is(h3,h4){font:400 25px/1.3 var(--serif);margin:0 0 12px}.article-content .evidence-panel p{font-size:15px;line-height:1.8}.evidence-panel dl{border-left:2px solid var(--sage);background:var(--sage-soft);margin:20px 0;padding:14px 18px}.evidence-panel dt{font:400 10px/1.6 var(--mono);text-transform:uppercase;margin-bottom:6px}.evidence-panel dd{font:400 12px/1.8 var(--mono);overflow-wrap:anywhere;white-space:pre-line;margin:0}.article-content .evidence-qualification{color:var(--muted);font-size:13px}.evidence-panel>a{text-underline-offset:4px;font-size:13px;text-decoration:underline}.teaching-download{border-block:1px solid var(--line);margin:24px 0;padding:18px 0}.teaching-download a{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.teaching-download .mono{font-size:11px}.article-content .teaching-download p{margin-bottom:0;font-size:13px}.evidence-tabs[hidden],.evidence-panel[hidden],.example-actions[hidden]{display:none}@media (width<=600px){.appearance-control{margin-inline:22px}.evidence-tabs{grid-template-columns:repeat(5,minmax(0,1fr))}.evidence-tabs button{padding-inline:4px;font-size:11px}.article-content .worked-example>:is(h2,h3){font-size:25px}}@media print{.appearance-control,.evidence-tabs,.example-actions{display:none!important}.evidence-panel[hidden]{display:block}.evidence-walkthrough{break-inside:auto}}.model-heading :is(h2,h3){font:400 28px/1.2 var(--serif);margin:10px 0}.model-loading{align-items:center;gap:16px;padding:16px 24px 0;display:flex}.model-progress{min-width:0;height:5px;accent-color:var(--ink);flex:1}.model-cancel{min-height:44px;font:inherit;cursor:pointer;border:1px solid var(--line);background:var(--paper);padding:8px 14px;font-size:12px}.model-hotspot{border:1px solid var(--ink);background:var(--paper);min-width:44px;min-height:44px;color:var(--ink);font:400 13px var(--mono);cursor:pointer;border-radius:50%;box-shadow:0 1px 6px #0002}.model-hotspot[aria-pressed=true]{background:var(--ink);color:var(--paper)}.model-explanations{border-block:1px solid var(--line);margin:16px 24px;padding:16px 0;font-size:14px}.article-content .model-explanations p{margin:8px 0;font-size:14px;line-height:1.8}.model-explanations a{font-size:13px}.model-loading[hidden],.model-progress[hidden],.model-hotspot[hidden],.model-explanations[hidden],.model-explanations [hidden]{display:none}@media print{.model-loading,.model-explanations{display:none!important}}.chapter-tools{position:relative}.chapter-tools:has(.example-actions) .article-contents>summary{padding-right:165px}.chapter-tools .example-actions{margin:0;position:absolute;top:0;right:0}.chapter-tools .example-actions button{padding:8px 0 8px 12px}@media (width<=370px){.chapter-tools:has(.example-actions) .article-contents>summary{padding-right:145px}.chapter-tools .example-actions button{font-size:11px}}.chapter-tools:has(.example-actions:not([hidden])){min-height:44px}@media screen{body.reading-page{--reading-body:1.125rem;--reading-ui:1rem;--reading-small:.875rem;--reading-label:.75rem;--reading-code:.9375rem;--reading-gutter:clamp(1.125rem, 2vw, 2.75rem);--reading-prose:72ch}[data-reading-size=large] body.reading-page{--reading-body:1.25rem;--reading-ui:1.125rem;--reading-small:1rem;--reading-label:.875rem;--reading-code:1.0625rem}body.reading-page .notebook-shell{max-width:none;padding-inline:var(--reading-gutter);grid-template-columns:clamp(13.5rem,16vw,15.5rem) minmax(0,1fr);min-height:calc(100svh - 144px)}body.reading-page .notebook-sidebar{overscroll-behavior-y:contain;padding:1.75rem 1.5rem 2rem .5rem}body.reading-page .back-to-atlas{min-height:2.75rem;margin-bottom:1.25rem}body.reading-page .sidebar-book>.eyebrow{margin-bottom:1rem}body.reading-page .sidebar-book>svg{margin-bottom:.75rem}body.reading-page .sidebar-book h2{font-size:1.75rem;line-height:1.2}body.reading-page .sidebar-book p{line-height:1.65}body.reading-page .notebook-reading{padding:1.75rem var(--reading-gutter) 4rem;grid-template-columns:minmax(0,1fr) 11rem;gap:clamp(1.25rem,1.8vw,2rem);width:100%}body.reading-page .article-content :is(p,.content-list),body.reading-page .article-intro{max-width:var(--reading-prose)}body.reading-page .article-header h1{max-width:32ch}body.reading-page .notebook-reading :is(article,.article-content){min-width:0}body.reading-page .code-block pre{white-space:pre;overflow-x:auto}body.reading-page .page-margin{scrollbar-width:thin;scrollbar-color:var(--line) transparent;overscroll-behavior-y:contain;max-height:calc(100dvh - 3rem);margin-top:1rem;padding-top:0;display:block;top:1.5rem;overflow-y:auto}body.reading-page :is(.notebook-sidebar,.page-margin,.notebook-main,.reader-dialog){overflow-wrap:anywhere}body.reading-page :is(.article-content,.content-note p,.catalog-summary,.catalog-detail p,.content-list li,.research-terms dd,.worked-example p,.evidence-panel p,.model-caption>p,.model-explanations p,.lab-heading p,.lab-lesson>p,.lab-feedback>p,.lab-transcript p,.lab-transcript li,.lab-noscript){font-size:var(--reading-body);line-height:1.75}body.reading-page :is(.sidebar-book p,.chapter-nav>a,.other-notebooks summary,.other-notebooks details>a,.page-margin>a,.page-margin .section-outline a,.reader-toolbar button,.reader-navigation-grid a,.article-contents>summary,.article-contents nav a,.mobile-toc>summary,.mobile-toc>nav>a,.content-note h3,.resource-links strong,.example-steps>summary,.example-steps h3,.example-steps h4,.evidence-tabs button,.evidence-panel>a,.example-actions button,.file-download strong,.model-controls button,.model-provenance summary,.model-provenance a,.model-explanations a,.catalog-search input,.catalog-links a,.citation-actions button,.citation-actions a,.citation-dialog .category-tabs button,.chapter-sources li>a,.chapter-sources li>cite,.edition-history,.reader-dialog .section-outline a,.diagram-heading,.diagram-node>strong,.lab-tabs>button,.lab-options>button,.lab-question legend,.lab-next,.lab-next>button,.lab-3d-heading>button,.lab-layer-buttons>button,.lab-scene-controls button,.lab-footer button,.lab-transcript>summary){font-size:var(--reading-ui);line-height:1.6}body.reading-page :is(.back-to-atlas,.notebook-breadcrumb,.article-meta,.citation-trigger,.reader-context,.appearance-control>summary,.palette-options button,.palette-notes summary,.palette-notes p,.resource-links span,.notebook-figure figcaption,.worked-example .example-sources p,.example-sources li,.worked-example .example-boundary,.evidence-panel .evidence-qualification,.file-download p,.file-download .mono,.model-status,.model-instructions,.model-caption .model-attribution,.model-provenance,.catalog-status,.catalog-count,.catalog-filters button,.catalog-actions button,.copy-code,.chapter-sources li,.chapter-sources li>p,.print-button,.page-fingerprint,.page-fingerprint code,.citation-explanation,.copy-status,.fingerprint>a,.figure-resource>span,.figure-core>span:last-child,.pipeline-figure div>span:last-child,.evidence-figure div>span:last-child,.edition-banner,.diagram-detail,.concept-diagram figcaption,.diagram-connection,.lab-progress-summary,.lab-3d>p,.lab-layer-description,.lab-scene-controls label,.lab-scene-status,.lab-footer p,.lab-action-status){font-size:var(--reading-small);line-height:1.65}body.reading-page :is(.notebook-shell .eyebrow,.reader-dialog .eyebrow,.citation-dialog .eyebrow,.diagram-label,.lab-tabs .mono,.lab-3d .eyebrow,.palette-bar .eyebrow,.notebook-figure .mono,.chapter-nav>a>.mono,.sidebar-edition,.breadcrumb-page,.example-steps>summary .mono,.evidence-tabs .mono,.evidence-panel dt,.model-load .mono,.reader-navigation-grid .mono,.edition-history summary .mono,.edition-history nav a span,.mobile-toc>summary>span,.mobile-toc>nav>a>.mono){font-size:var(--reading-label);letter-spacing:.04em;line-height:1.6}body.reading-page :is(.code-block pre,.evidence-panel dd,.model-provenance code,.citation-output,.fingerprint>code){font-size:var(--reading-code);line-height:1.8}body.reading-page table{font-size:var(--reading-ui)}body.reading-page thead th{font-size:var(--reading-small);letter-spacing:.03em;text-transform:none}body.reading-page .example-steps li::marker{font-size:var(--reading-small)}body.reading-page :is(.chapter-nav>a,.other-notebooks summary,.other-notebooks details>a,.print-button,.citation-trigger,.catalog-filters button){min-height:2.75rem}body.reading-page .chapter-nav>a>.mono{flex-shrink:0}body.reading-page .article-meta{flex-wrap:wrap}body.reading-page .evidence-tabs{grid-template-columns:repeat(auto-fit,minmax(min(100%,7rem),1fr))}body.reading-page .evidence-tabs button{padding:.75rem .5rem}body.reading-page .chapter-tools{flex-wrap:wrap;align-items:start;gap:0 1.5rem;margin-bottom:1.25rem;display:flex}body.reading-page .chapter-tools .article-contents{flex:13rem;margin-bottom:0}body.reading-page .chapter-tools .article-contents>summary{gap:1rem;padding-right:0}body.reading-page .chapter-tools .example-actions{margin-left:auto;position:static}body.reading-page .chapter-tools .example-actions button{padding:.9375rem 0}body.reading-page .edition-history nav a{flex-wrap:wrap;gap:.5rem 1rem}body.reading-page .reader-toolbar button{flex-shrink:0}body.reading-page .reader-toolbar{flex-wrap:wrap}}@media screen and (width<=89.9375rem){body.reading-page .notebook-reading{grid-template-columns:minmax(0,1fr);gap:0}body.reading-page .page-margin{display:none}body.reading-page .article-contents{display:block}}@media screen and (width<=59.9375rem){body.reading-page .notebook-shell{padding-inline:0;display:block}body.reading-page .notebook-sidebar{display:none}body.reading-page .notebook-reading{max-width:none;margin-inline:auto;padding-inline:1.375rem;display:block}body.reading-page .mobile-toc{display:block}}@media screen and (width<=37.5rem){body.reading-page :is(.reader-contents-trigger>svg,.reader-text-toggle>span){display:none}body.reading-page .example-steps>summary{flex-wrap:wrap}}@media screen and (width>=90rem){body.reading-page .article-contents,body.reading-page .chapter-tools:not(:has(.example-actions)){display:none}}@media screen{body.reading-page .reader-toolbar{gap:.25rem .5rem;margin:0 0 1.75rem;padding:.25rem 0 .5rem}body.reading-page .reader-toolbar button{font-size:var(--reading-small);padding-inline:.5rem}body.reading-page .reader-toolbar .notebook-breadcrumb{font-size:var(--reading-small);padding-bottom:.375rem}body.reading-page .reader-context{font-size:var(--reading-label)}.reader-progress{pointer-events:none;width:100%;height:2px;position:absolute;bottom:-1px;left:0;overflow:hidden}.reader-progress>span{background:var(--sage);width:100%;height:100%;transform:scaleX(var(--reading-progress,0));transform-origin:0;display:block}body.reading-page .article-header h1{text-wrap:pretty;margin:1rem 0 1.25rem;font-size:clamp(2.375rem,3.8vw,3.375rem);line-height:1.1}body.reading-page .article-intro{margin-bottom:1.25rem;font-size:1.375rem;line-height:1.5}body.reading-page .article-meta{gap:.25rem .875rem;margin-bottom:1.5rem;padding-block:.5rem .875rem}body.reading-page .meta-dot{margin-inline:.375rem}body.reading-page .article-meta>span>a:hover{text-underline-offset:.2em;text-decoration:underline}body.reading-page .article-content>p{margin-bottom:1.375rem;line-height:1.8}body.reading-page .article-content h2{margin-block:2.75rem 1.125rem;font-size:2rem}body.reading-page :is(.content-note,.notebook-figure,.worked-example,.model-embed,.code-block,.table-scroll){border-radius:5px}body.reading-page .table-scroll td{color:var(--ink)}body.reading-page .table-scroll tbody tr:nth-child(2n){background:color-mix(in srgb, var(--paper-deep) 35%, var(--paper))}body.reading-page .content-note{padding:1.25rem}body.reading-page .chapter-pagination{gap:1rem;padding-top:1.25rem}body.reading-page .chapter-pagination a{border-radius:5px;padding:.75rem}body.reading-page .chapter-pagination a:hover{background:var(--sage-soft)}body.reading-page .chapter-pagination .eyebrow{font-size:var(--reading-label)}body.reading-page .page-margin>.eyebrow{border-bottom:1px solid var(--line);margin-bottom:.875rem;padding-bottom:.875rem}body.reading-page .page-margin .section-outline>li>a,body.reading-page .page-margin>a{padding-block:.5rem;line-height:1.5}body.reading-page .page-margin .section-outline ul a{font-size:var(--reading-small);padding-block:.375rem;line-height:1.55}body.reading-page .margin-note{margin-top:1.5rem;padding-top:1rem;font-size:1.125rem}body.reading-page .site-footer .appearance-control>summary,body.reading-page .site-footer .palette-options button,body.reading-page .site-footer .palette-notes summary{font-size:.75rem}}@media screen and (width<=59.9375rem){body.reading-page .notebook-reading{max-width:none;padding:1.25rem 1.375rem 3rem}body.reading-page .reader-toolbar{margin-bottom:1.5rem}}@media screen and (width<=37.5rem){body.reading-page .article-intro{font-size:1.25rem}body.reading-page .article-header h1{font-size:2.375rem}body.reading-page .article-content h2{font-size:1.75rem}body.reading-page .notebook-breadcrumb ol{gap:.125rem .5rem}body.reading-page .notebook-breadcrumb li{gap:.5rem}}body.reading-page .reader-toolbar .notebook-breadcrumb{flex:1 0 100%;min-width:0;margin:0;padding:.4rem 0 .2rem}.notebook-breadcrumb ol{flex-wrap:wrap;align-items:baseline;gap:.25rem .625rem;margin:0;padding:0;list-style:none;display:flex}.notebook-breadcrumb li{align-items:baseline;gap:.625rem;display:flex}.notebook-breadcrumb li+li:before{content:"/";color:var(--muted)}.notebook-breadcrumb a{padding-block:.25rem}.notebook-breadcrumb a:hover{text-underline-offset:.2em;text-decoration:underline}.notebook-breadcrumb [aria-current=page]{color:var(--ink);font-weight:600}body.reading-page .reader-context{flex:1 1 0;min-width:0}.navigation-position{font-size:var(--reading-small,.875rem);color:var(--muted);line-height:1.6}body.reading-page .chapter-nav>a[aria-current=page]{box-shadow:inset 3px 0 var(--sage)}body.reading-page .section-outline>li[data-current-parent]>a{color:var(--ink);font-weight:600}body.reading-page .section-outline>li[data-current-parent]>ul{border-left-color:var(--sage)}body.reading-page .reader-sections a[aria-current=location]{background:var(--sage-soft);border-left-color:var(--sage);font-weight:600}.guided-route:not([hidden]){border:1px solid var(--line);border-left:3px solid var(--sage);background:var(--sage-soft);font-size:var(--reading-ui,1rem);border-radius:3px;flex-wrap:wrap;align-items:start;gap:0 1.25rem;margin:0 0 2rem;padding:.625rem 1rem;line-height:1.6;display:flex}.guided-route details{flex:18rem;min-width:0}.guided-route summary{cursor:pointer;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.25rem 1rem;min-height:2.75rem;padding-block:.625rem;list-style:none;display:flex}.guided-route summary::-webkit-details-marker{display:none}.guided-route summary>span:first-child{font-weight:600}.route-position{color:var(--muted);font-size:var(--reading-small,.875rem);white-space:nowrap}.guided-route ol{margin:.5rem 0;padding:0;list-style:none}.guided-route li a{gap:.75rem;padding:.625rem 0;display:flex}.guided-route small{font-size:inherit;color:var(--muted);display:block}.route-number{border:1px solid var(--line-strong);border-radius:50%;flex:0 0 1.75rem;place-items:center;width:1.75rem;height:1.75rem;display:grid}.guided-route [aria-current=step]{font-weight:600}.guided-route [aria-current=step] .route-number{background:var(--ink);color:var(--paper);border-color:var(--ink)}.guided-route a:hover{text-underline-offset:.2em;text-decoration:underline}.guided-route :is(.route-next,.leave-route){align-items:center;gap:.5rem;min-height:2.75rem;display:inline-flex}.guided-route .route-next{color:var(--sage);margin-left:auto;font-weight:600}.leave-route{color:var(--muted)}.following-route .chapter-pagination{display:none}@media screen{html{scroll-padding-top:var(--reader-offset,35px)}body.reading-page .notebook-main :is([id],a,button,input,pre,summary){scroll-margin-top:var(--reader-offset,100px)}html:has(body.reading-page){scroll-padding-top:0}}@media (width<=699px){body.reading-page .reader-context{display:none}}@media print{.guided-route{display:none!important}}.article-content .concept-diagram{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:10px;margin:1.8rem 0;padding:1.3rem}.diagram-heading{font:500 .95rem/1.5 var(--sans);align-items:center;gap:.6rem;margin-bottom:1.2rem;display:flex}.diagram-heading svg{color:var(--sage);flex:none}.article-content .diagram-nodes{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.article-content .diagram-nodes>li{min-width:0;margin:0;padding:0}.diagram-node{border:1px solid var(--line);background:var(--paper-deep);overflow-wrap:anywhere;border-radius:6px;flex-direction:column;align-items:flex-start;min-width:0;height:100%;padding:1rem .9rem;display:flex}.diagram-glyph{width:46px;height:46px;color:var(--sage);background:var(--sage-soft);border-radius:50%;place-items:center;margin-bottom:1rem;display:grid}.diagram-nodes>li:nth-child(2) .diagram-glyph{color:var(--blue);background:var(--blue-soft)}.diagram-nodes>li:nth-child(3) .diagram-glyph{color:var(--clay);background:var(--clay-soft)}.diagram-label{color:var(--muted);font:400 .68rem/1.6 var(--mono);text-transform:uppercase;letter-spacing:.04em}.diagram-node>strong{font:500 1rem/1.45 var(--sans);margin:.35rem 0 .55rem}.diagram-detail{font:400 .82rem/1.65 var(--sans)}.diagram-connection{font:400 .72rem/1.5 var(--sans);color:var(--muted);align-items:center;gap:.4rem;padding:.6rem .4rem 0;display:flex}.diagram-connection>span:first-child{color:var(--sage);font-size:1.2rem;line-height:1}.diagram-flow .diagram-nodes>li,.diagram-network .diagram-nodes>li{grid-template-rows:minmax(0,1fr) minmax(2.75rem,auto);display:grid}.diagram-flow .diagram-nodes>li:last-child:after,.diagram-network .diagram-nodes>li:last-child:after{content:""}@supports (grid-template-rows:subgrid){.diagram-flow .diagram-nodes,.diagram-network .diagram-nodes{grid-template-rows:auto auto}.diagram-flow .diagram-nodes>li,.diagram-network .diagram-nodes>li{grid-row:1/span 2;grid-template-rows:subgrid}}.article-content .concept-diagram figcaption{border-top:1px solid var(--line);color:var(--muted);font:400 .82rem/1.65 var(--sans);margin-top:1.05rem;padding:.9rem 0 0}.diagram-compare .diagram-nodes{grid-template-columns:repeat(2,minmax(0,1fr))}.diagram-layers .diagram-nodes{grid-template-columns:1fr;gap:.5rem}.diagram-layers .diagram-node{border-left:3px solid var(--sage);grid-template-columns:38px minmax(0,1fr);column-gap:.8rem;padding:.8rem 1rem;display:grid}.diagram-layers .diagram-glyph{grid-row:1/4;align-self:center;width:36px;height:36px;margin:0}.diagram-layers .diagram-glyph svg{width:23px;height:23px}.diagram-layers .diagram-node>strong{margin:.15rem 0 .25rem}.diagram-layers .diagram-connection{padding:.2rem 1rem 0}.diagram-layers .diagram-connection>span:first-child{transform:rotate(90deg)}.article-content .worked-example .concept-diagram{background:var(--paper);margin:1.2rem 0;padding:1rem}.diagram-compact .diagram-glyph{width:32px;height:32px;margin-bottom:.6rem}.diagram-compact .diagram-glyph svg{width:21px;height:21px}.diagram-compact .diagram-node{padding:.8rem}.diagram-compact .diagram-node>strong{font-size:.9rem}.diagram-compact .diagram-detail{font-size:.77rem}.learning-lab{border:1px solid var(--line);background:var(--paper);border-radius:12px;margin:2rem 0;overflow:hidden}.lab-heading{background:var(--sage-soft);border-bottom:1px solid var(--line);padding:1.6rem 1.6rem 1rem}.article-content .lab-heading h2,.article-content .lab-heading h3{font:400 1.9rem/1.15 var(--serif);margin:.6rem 0 .85rem}.article-content .lab-heading p{margin-bottom:.4rem;font-size:1rem}.lab-progress-summary{font:400 .82rem/1.5 var(--sans);justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.6rem;display:flex}.lab-progress-dots{gap:.4rem;display:flex}.lab-progress-dots>span{background:var(--line);border-radius:2px;width:24px;height:4px}.lab-progress-dots>span[data-complete=true]{background:var(--sage)}.lab-tabs{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));padding:0 .7rem;display:grid}.lab-tabs>button{min-height:66px;font:500 .85rem/1.5 var(--sans);color:var(--muted);text-align:left;background:0 0;border:0;border-radius:0;flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:.25rem .5rem;padding:.9rem .7rem;display:flex;position:relative}.lab-tabs>button[aria-selected=true]{color:var(--ink);background:var(--paper-deep);box-shadow:inset 0 -3px var(--sage)}.lab-tabs .mono{color:var(--muted);flex-basis:100%;font-size:.65rem}.lab-tab-check{color:var(--sage);position:absolute;top:1rem;right:.65rem}.lab-lesson{padding:1.5rem}.article-content .lab-lesson h3,.article-content .lab-lesson h4{font:400 1.65rem/1.2 var(--serif);margin:.6rem 0 .9rem}.article-content .lab-lesson>p{font-size:1rem}.lab-lesson .concept-diagram{margin:1.4rem 0}.lab-question{border:0;min-width:0;padding:0}.lab-question legend{font:500 1rem/1.6 var(--sans);padding:0 0 .9rem}.lab-options{gap:.6rem;display:grid}.lab-options>button{text-align:left;border:1px solid var(--line);background:var(--paper);width:100%;color:var(--ink);font:400 .92rem/1.6 var(--sans);border-radius:6px;align-items:flex-start;gap:.7rem;padding:.9rem 1rem;display:flex}.lab-options>button:hover{background:var(--paper-deep);border-color:var(--muted)}.lab-options>button[aria-pressed=true]{border-color:var(--sage);background:var(--sage-soft);box-shadow:inset 3px 0 var(--sage)}.lab-option-marker{flex:none;font-size:1rem}.lab-feedback{border:1px dashed var(--line);background:var(--paper-deep);border-radius:6px;align-items:flex-start;gap:.7rem;min-height:100px;margin:1rem 0 0;padding:1rem;display:flex}.lab-feedback>svg{color:var(--sage);flex:none;margin-top:.3rem}.article-content .lab-feedback>p{margin:0;font-size:.9rem;line-height:1.7}.lab-feedback.is-correct{border-style:solid;border-color:var(--sage);background:var(--sage-soft)}.lab-next{border-top:1px solid var(--line);font:400 .85rem/1.5 var(--sans);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;margin-top:1.2rem;padding-top:1.2rem;display:flex}.lab-next>a{align-items:center;gap:.5rem;min-height:40px;display:flex}.lab-next>button,.lab-3d-heading>button,.lab-footer button,.lab-scene-controls button{background:var(--paper);border:1px solid var(--line);color:var(--ink);min-height:40px;font:400 .85rem/1.5 var(--sans);border-radius:5px;justify-content:center;align-items:center;gap:.5rem;padding:.65rem .8rem;display:flex}.reuse-lab button:disabled{cursor:default;opacity:.55}.reuse-lab button:focus-visible,.reuse-lab a:focus-visible,.reuse-lab input:focus-visible{outline:2px solid var(--sage);outline-offset:3px}.lab-3d{border-top:1px solid var(--line);background:var(--paper-deep);padding:1.3rem 1.5rem}.lab-3d-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.article-content .lab-3d-heading h4{font:400 1.45rem/1.3 var(--serif);margin:.4rem 0 0}.lab-3d .eyebrow{letter-spacing:.05em;font-size:.6rem}.article-content .lab-3d>p{margin:1rem 0 0;font-size:.85rem;line-height:1.75}.lab-scene-wrap{margin-top:1rem}.lab-scene{background:var(--paper);border:1px solid var(--line);border-radius:6px;width:100%;height:310px}.lab-scene>canvas{pointer-events:none;width:100%;height:100%;display:block}.lab-layer-buttons{flex-wrap:wrap;gap:.45rem;margin:.9rem 0;display:flex}.lab-layer-buttons>button{border:1px solid var(--line);background:var(--paper);color:var(--ink);min-height:38px;font:400 .8rem/1.5 var(--sans);border-radius:4px;align-items:center;gap:.5rem;padding:.6rem .65rem;display:flex}.lab-layer-buttons>button[aria-pressed=true]{border-color:var(--ink);box-shadow:inset 0 -2px var(--ink)}.lab-layer-swatch{background:#a67558;border-radius:2px;width:9px;height:9px}.lab-layer-buttons>button:nth-child(2) .lab-layer-swatch{background:#62756b}.lab-layer-buttons>button:nth-child(3) .lab-layer-swatch{background:#607d91}.lab-layer-buttons>button:nth-child(4) .lab-layer-swatch{background:#877595}.lab-layer-buttons>button:nth-child(5) .lab-layer-swatch{background:#a78a4b}.article-content .lab-layer-description{min-height:3.5em;font-size:.9rem;line-height:1.65}.lab-scene-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.lab-scene-controls label{font:400 .8rem/1.5 var(--sans);flex-direction:column;gap:.5rem;display:flex}.lab-scene-controls input{width:180px;accent-color:var(--sage)}.lab-scene-controls>div{gap:.4rem;display:flex}.lab-scene-controls button{min-width:40px}.article-content .lab-scene-status{color:var(--muted);min-height:1.5em;font-size:.8rem}.lab-footer{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;padding:1rem 1.5rem;display:flex}.article-content .lab-footer p{color:var(--muted);margin:0;font-size:.78rem}.lab-footer>div{flex-wrap:wrap;gap:.5rem;display:flex}.lab-footer button{font-size:.78rem}.article-content .lab-action-status{margin:0 1.5rem;font-size:.85rem}.lab-transcript{border-top:1px solid var(--line);padding:0 1.5rem}.lab-transcript>summary{cursor:pointer;min-height:48px;font:400 .85rem/1.6 var(--sans);padding:.9rem 0;display:list-item}.lab-transcript-lesson{border-top:1px solid var(--line);padding:1.3rem 0}.article-content .lab-transcript-lesson h3,.article-content .lab-transcript-lesson h4{font:400 1.6rem/1.3 var(--serif);margin:.6rem 0}.article-content .lab-transcript p,.article-content .lab-transcript li,.article-content .lab-noscript{font-size:.95rem}.lab-noscript{padding:0 1.5rem}@media (width<=640px){.article-content .concept-diagram{padding:1rem}.article-content .diagram-nodes{grid-template-columns:1fr}.diagram-flow .diagram-nodes>li,.diagram-network .diagram-nodes>li{grid-row:auto;display:block}.diagram-flow .diagram-nodes,.diagram-network .diagram-nodes{grid-template-rows:none}.diagram-flow .diagram-nodes>li:last-child:after,.diagram-network .diagram-nodes>li:last-child:after{display:none}.diagram-node{grid-template-columns:38px minmax(0,1fr);column-gap:.8rem;display:grid;height:auto!important}.diagram-glyph{grid-row:1/4;align-self:center;width:36px;height:36px;margin:0}.diagram-glyph svg{width:24px;height:24px}.diagram-node>strong{font-size:.95rem}.diagram-connection{padding:.3rem .7rem}.diagram-connection>span:first-child{transform:rotate(90deg)}.diagram-compact .diagram-glyph{margin:0}.lab-heading,.lab-lesson,.lab-3d{padding:1.2rem 1rem}.lab-tabs{grid-template-columns:repeat(2,minmax(0,1fr));padding:.3rem}.lab-tabs>button{min-height:55px;padding:.65rem .7rem}.lab-tabs .mono{flex-basis:auto}.lab-tab-check{margin-left:auto;position:static}.lab-progress-summary,.lab-footer{padding:.9rem 1rem}.lab-transcript{padding:0 1rem}.lab-scene{height:260px}.lab-3d-heading>button{width:100%}.lab-next{align-items:stretch}.lab-next>button,.lab-next>a{flex-basis:100%;justify-content:flex-start}.lab-feedback{min-height:110px}}@media print{.reuse-lab,.lab-transcript>summary,.lab-noscript{display:none!important}.lab-transcript,.lab-transcript>:not(summary){display:block!important}.learning-lab{overflow:visible}.concept-diagram,.diagram-node{color:#000!important;background:#fff!important}.diagram-node{break-inside:avoid}}
