:root{--docs-prose-measure:45rem;--docs-section-gap:3.75rem;--docs-section-gap-lg:4.5rem;--docs-toc-w:13rem}.docs-shell--chapter{grid-template-columns:var(--docs-sidebar-w) minmax(0, 1fr) var(--docs-toc-w);column-gap:2rem}@media (width<=1100px){.docs-shell--chapter{grid-template-columns:var(--docs-sidebar-w) minmax(0, 1fr);column-gap:0}.docs-toc{display:none}}@media (width<=900px){.docs-shell--chapter{grid-template-columns:1fr}}.docs-main--chapter{width:100%;min-width:0;max-width:none;padding-top:2rem;padding-bottom:5rem}@media (width>=1101px){.docs-main--chapter{padding-right:0}}.chapter-eyebrow{font-family:var(--ag-font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0 0 .85rem;font-size:12px;font-weight:500}.chapter-question{font-family:var(--ag-font);letter-spacing:-.025em;text-wrap:balance;max-width:36rem;margin:0 0 1.25rem;font-size:clamp(2.15rem,4.2vw,2.85rem);line-height:1.12}.chapter-intro{font-family:var(--ag-font);color:var(--muted);max-width:var(--docs-prose-measure);margin:0 0 var(--docs-section-gap);font-size:17px;line-height:1.65}.chapter-section{margin-bottom:var(--docs-section-gap);scroll-margin-top:5.5rem}.chapter-section h2{font-family:var(--ag-font);letter-spacing:-.02em;margin:0 0 1.15rem;font-size:1.75rem;line-height:1.2}.chapter-section h3{font-family:var(--ag-font);letter-spacing:-.01em;margin:2.15rem 0 .85rem;scroll-margin-top:5.5rem;font-size:1.05rem;font-weight:600;line-height:1.35}.chapter-section p{font-family:var(--ag-font);color:color-mix(in srgb, var(--ink) 86%, transparent);max-width:var(--docs-prose-measure);margin:0 0 1.15rem;font-size:15.5px;line-height:1.75}.chapter-section p:last-child{margin-bottom:0}.chapter-section>ul{max-width:var(--docs-prose-measure);margin:0 0 1.15rem;padding-left:1.2rem}.chapter-section>ul li{font-family:var(--ag-font);color:color-mix(in srgb, var(--ink) 86%, transparent);margin-bottom:.35rem;font-size:15.5px;line-height:1.75}.chapter-section>ul li:last-child{margin-bottom:0}.learn-block{border:1px solid var(--line);background:linear-gradient(165deg, var(--surface) 0%, color-mix(in srgb, var(--ag-sunken) 65%, transparent) 100%);margin-bottom:var(--docs-section-gap);max-width:var(--docs-prose-measure);border-radius:.75rem;padding:1.35rem 1.45rem 1.25rem}.learn-block-header{font-family:var(--ag-font);letter-spacing:.04em;text-transform:uppercase;color:var(--ink);align-items:center;gap:.5rem;margin-bottom:.85rem;font-size:12px;font-weight:600;display:flex}.learn-block-header svg{width:15px;height:15px;stroke:var(--muted);fill:none;stroke-width:1.5px;flex-shrink:0}.learn-block ul{margin:0;padding:0;list-style:none}.learn-block li{font-family:var(--ag-font);color:color-mix(in srgb, var(--ink) 82%, transparent);padding:.35rem 0 .35rem 1.15rem;font-size:14.5px;line-height:1.55;position:relative}.learn-block li:before{content:"";background:var(--line-strong);border-radius:50%;width:5px;height:5px;position:absolute;top:.72rem;left:0}.insight-callout{border:1px solid var(--line);background:var(--surface);max-width:var(--docs-prose-measure);border-radius:.75rem;margin:2rem 0;padding:1.35rem 1.45rem}.insight-callout-label{font-family:var(--ag-font);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);align-items:center;gap:.45rem;margin-bottom:.65rem;font-size:12px;font-weight:600;display:flex}.insight-callout-label svg{stroke:currentColor;fill:none;stroke-width:1.5px;opacity:.65;width:14px;height:14px}.insight-callout-body{font-family:var(--ag-font);color:color-mix(in srgb, var(--ink) 84%, transparent);margin:0;font-size:1.2rem;line-height:1.6}.production-note{border:1px solid var(--line);background:color-mix(in srgb, var(--ag-surface) 85%, transparent);max-width:var(--docs-prose-measure);border-radius:.75rem;margin:2.25rem 0;padding:1.2rem 1.35rem}.production-note-header{font-family:var(--ag-font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);align-items:center;gap:.45rem;margin-bottom:.5rem;font-size:12px;font-weight:500;display:flex}.production-note-header svg{stroke:currentColor;fill:none;stroke-width:1.5px;width:13px;height:13px}.production-note p{margin:0;font-size:14px;line-height:1.65}.mistakes-block{border:1px solid color-mix(in srgb, var(--accent) 18%, var(--line));background:color-mix(in srgb, var(--accent) 3%, var(--surface));max-width:var(--docs-prose-measure);border-radius:.75rem;margin:2.25rem 0;padding:1.25rem 1.35rem}.mistakes-block>.mistakes-block-header{font-family:var(--ag-font);letter-spacing:normal;color:var(--ink);align-items:center;gap:.45rem;margin:0 0 .75rem;font-size:12px;font-weight:600;line-height:normal;display:flex}.mistakes-block-header svg{width:15px;height:15px;stroke:var(--accent);fill:none;stroke-width:1.5px;opacity:.75}.mistakes-block ol{margin:0;padding-left:1.2rem}.mistakes-block li{color:color-mix(in srgb, var(--ink) 82%, transparent);margin-bottom:.5rem;font-size:14px;line-height:1.6}.mistakes-block li:last-child{margin-bottom:0}.mistakes-block code{background:color-mix(in srgb, var(--ag-fg) 5%, transparent);border-radius:.25rem;padding:.1rem .35rem;font-size:12px}.related-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem;max-width:56rem;margin-top:1rem;display:grid}.related-card{border:1px solid var(--line);background:var(--surface);transition:border-color .2s var(--ease-out), box-shadow .25s var(--ease-out), transform .2s var(--ease-out);border-radius:.65rem;padding:1.1rem 1.2rem;display:block}.related-card:hover{border-color:var(--line-strong);box-shadow:var(--panel-shadow);transform:translateY(-1px)}.related-card-label{font-family:var(--ag-font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:.35rem;font-size:12px}.related-card-question{font-family:var(--ag-font);color:var(--ink);margin:0;font-size:13.5px;font-weight:500;line-height:1.45}.chapter-pager{margin-top:var(--docs-section-gap-lg);border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:1rem;max-width:56rem;padding-top:2.5rem;display:grid}@media (width<=560px){.chapter-pager{grid-template-columns:1fr}}.chapter-pager a{border:1px solid var(--line);background:var(--surface);transition:border-color .2s var(--ease-out), box-shadow .2s var(--ease-out);border-radius:.65rem;padding:1.15rem 1.25rem;display:block}.chapter-pager a:hover{border-color:var(--line-strong);box-shadow:var(--panel-shadow)}.chapter-pager .pager-direction{font-family:var(--ag-font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:.35rem;font-size:12px}.chapter-pager .pager-noun{font-family:var(--ag-font);color:var(--muted);margin-bottom:.2rem;font-size:12px;font-weight:500}.chapter-pager .pager-question{font-family:var(--ag-font);color:var(--ink);margin:0;font-size:1.05rem;line-height:1.35}.chapter-pager .pager-next{text-align:right}.chapter-pager .pager-spacer{visibility:hidden;pointer-events:none}.ref-layer{margin-top:var(--docs-section-gap-lg);border-top:2px solid var(--line);min-width:0;padding-top:2.5rem;scroll-margin-top:5.5rem}.ref-layer-banner{font-size:12px;font-family:var(--ag-font-mono);letter-spacing:.02em;background:var(--ag-code-bg);color:color-mix(in srgb, var(--ag-code-fg) 55%, transparent);border:1px solid #ffffff14;border-radius:.65rem;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem;padding:.65rem 1rem;display:flex}.ref-layer-banner strong{color:var(--ag-code-fg);font-weight:500}.ref-layer-banner-link{color:color-mix(in srgb, var(--ag-code-fg) 72%, transparent);transition:color .15s var(--ease-out);flex-shrink:0;font-size:12px;font-weight:500}.ref-layer-banner-link:hover{color:var(--ag-code-fg)}.ref-layer .ref-title{font-family:var(--ag-font-mono);margin:0 0 .5rem;font-size:1.5rem;font-weight:400}.ref-layer .ref-lead{font-family:var(--ag-font);color:var(--muted);max-width:var(--docs-prose-measure);margin-bottom:2rem;font-size:14px}.ref-section{min-width:0;margin-top:2.25rem;scroll-margin-top:5.5rem}.ref-section h2{font-family:var(--ag-font-mono);letter-spacing:.01em;margin:0 0 .85rem;font-size:.9375rem;font-weight:500}.diagram-stage{border:1px solid var(--line);background:linear-gradient(180deg, var(--surface) 0%, var(--surface-muted) 100%);box-shadow:var(--panel-shadow);margin-bottom:var(--docs-section-gap);border-radius:1.15rem;padding:1.25rem 1rem 1rem;scroll-margin-top:5.5rem;position:relative}@media (width>=640px){.diagram-stage{padding:2rem 1.5rem 1.5rem}}.diagram-stage--nested{border-radius:.9rem;margin:1.35rem 0 1.6rem;padding:1.25rem 1.2rem 1.1rem}.diagram-stage--nested .diagram-stage-label{margin-bottom:.75rem}.diagram-stage--nested .diagram-hint{margin-top:.65rem}.diagram-stage-label{font-family:var(--ag-font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:1rem;font-size:12px}.diagram-canvas{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent;overflow-x:auto}.diagram-canvas svg{width:100%;min-width:40rem;height:auto;display:block}@media (width>=768px){.diagram-canvas svg{min-width:0}}.flow-node-btn{cursor:pointer;transition:filter .25s var(--ease-out)}.flow-node-btn:hover rect,.flow-node-btn.is-selected rect{stroke:var(--ink);stroke-width:2.25px;filter:drop-shadow(0 4px 12px color-mix(in srgb, var(--ag-fg) 8%, transparent))}.flow-node-btn.is-selected circle.node-indicator{fill:var(--accent)}.flow-node-btn.is-paused rect{stroke:var(--accent)}.flow-node-btn.is-paused.is-selected rect{stroke:var(--accent);stroke-width:2.25px}.checkpoint-badge{border:1px solid color-mix(in srgb, var(--ag-brand) 25%, transparent);background:color-mix(in srgb, var(--ag-brand) 6%, transparent);font-family:var(--ag-font-mono);color:var(--accent);border-radius:.4rem;align-items:center;gap:.4rem;margin:0 0 .75rem;padding:.35rem .65rem;font-size:12px;display:inline-flex;position:static}@media (width>=640px){.checkpoint-badge{margin:0;position:absolute;top:1.5rem;right:1.5rem}}.checkpoint-badge svg{stroke:currentColor;fill:none;stroke-width:1.5px;width:12px;height:12px}.node-callout{border:1px solid var(--line);background:var(--surface);animation:callout-in .3s var(--ease-out);border-radius:.75rem;margin-top:1.25rem;padding:1.15rem 1.25rem;display:none}.node-callout.is-visible{grid-template-columns:1fr 1fr;gap:1.25rem;display:grid}@media (width<=640px){.node-callout.is-visible{grid-template-columns:1fr}}@keyframes callout-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.node-callout-title{font-family:var(--ag-font);align-items:center;gap:.4rem;margin:0 0 .5rem;font-size:13px;font-weight:600;display:flex}.node-callout-title svg{stroke:currentColor;fill:none;stroke-width:1.5px;opacity:.5;width:14px;height:14px}.node-callout-reads,.node-callout-writes{font-family:var(--ag-font-mono);color:var(--muted);margin:0;font-size:12px;line-height:1.65}.node-callout-reads .key,.node-callout-writes .key{color:var(--ag-info)}.node-callout-reads .val,.node-callout-writes .val{color:var(--ag-ok)}.diagram-canvas svg text[fill=\#C4CAD4]{fill:#475569}.diagram-hint{font-family:var(--ag-font);color:var(--muted);text-align:center;margin-top:.75rem;font-size:13px}.diagram-scroll-hint{display:inline}.diagram-caption{max-width:40rem;color:var(--muted);text-align:center;margin:.85rem auto 0;font-size:13px;line-height:1.5}@media (width>=640px){.diagram-stage-label{margin-bottom:1.25rem}.diagram-scroll-hint{display:none}}.docs-toc{border-left:1px solid var(--line);max-height:calc(100vh - 5rem);font-family:var(--ag-font);align-self:start;padding:2.25rem 1rem 2rem 1.5rem;position:sticky;top:4.25rem;overflow-y:auto}.docs-toc-label{font-family:var(--ag-font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:.75rem;font-size:12px;font-weight:500}.docs-toc nav{flex-direction:column;gap:.15rem;display:flex}.docs-toc a{color:var(--muted);transition:color .2s var(--ease-out), border-color .2s var(--ease-out);border-left:2px solid #0000;margin-left:-.75rem;padding:.3rem 0 .3rem .75rem;font-size:12.5px;display:block}.docs-toc a:hover{color:var(--ink)}.docs-toc a.is-active{color:var(--ink);border-left-color:var(--ink);font-weight:500}.docs-toc .toc-divider{background:var(--line);height:1px;margin:.5rem 0}.docs-toc .toc-section-label{font-family:var(--ag-font-mono);letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb, var(--muted) 80%, transparent);margin-top:.25rem;padding:.5rem 0 .25rem;font-size:12px}.api-method{border:1px solid var(--line);background:var(--surface);border-radius:.65rem;margin:.65rem 0;padding:.9rem 1.1rem}.api-method-sig{font-family:var(--ag-font-mono);color:var(--ink);overflow-wrap:anywhere;margin-bottom:.3rem;font-size:12.5px;line-height:1.45}.api-method-desc{font-family:var(--ag-font);color:var(--muted);margin:0;font-size:13px;line-height:1.5}.api-table{border-collapse:collapse;width:100%;margin:.85rem 0;font-size:13px}.api-table th{text-align:left;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line);font-size:12px;font-weight:500;font-family:var(--ag-font);padding:.5rem .75rem}.api-table td{border-bottom:1px solid var(--line);vertical-align:top;font-family:var(--ag-font);padding:.6rem .75rem;font-size:13px}.api-table code{background:var(--surface-muted);border-radius:.25rem;padding:.1rem .35rem;font-size:12px}.ref-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;max-width:100%;margin:.85rem 0;overflow-x:auto}.ref-scroll .api-table{margin:0}.ref-scroll--wide .api-table{min-width:36rem}.api-table--compact td:nth-child(2){white-space:nowrap}.keys-table{border-collapse:collapse;width:100%;margin:.35rem 0 .15rem}.keys-table th{text-align:left;font-family:var(--ag-font);color:var(--muted);border-bottom:1px solid var(--line);letter-spacing:0;text-transform:none;padding:.35rem 1.75rem .7rem 0;font-size:13px;font-weight:500}.keys-table th:last-child,.keys-table td:last-child{padding-right:0}.keys-table td{border-bottom:1px solid var(--line);vertical-align:middle;font-family:var(--ag-font);color:color-mix(in srgb, var(--ink) 84%, transparent);padding:.85rem 1.75rem .85rem 0;font-size:14px;line-height:1.55}.keys-table th:not(:last-child),.keys-table td:not(:last-child){white-space:nowrap;width:1%}.keys-table tbody tr:last-child td{border-bottom:1px solid var(--line)}.keys-table code{font-family:var(--ag-font-mono);color:inherit;background:var(--surface-muted);overflow-wrap:normal;border-radius:.3rem;padding:.18rem .45rem;font-size:12px;font-weight:500}.keys-table td:not(:last-child) code{white-space:nowrap}.keys-table td:first-child code{padding:.22rem .5rem;font-size:12.5px}.ref-scroll .keys-table{margin:0}.mobile-toc{border:1px solid var(--line);background:var(--surface);font-family:var(--ag-font);border-radius:.65rem;margin-bottom:1.5rem;padding:.85rem 1rem;font-size:13px;display:none}@media (width<=1100px){.mobile-toc{display:block}}.mobile-toc summary{cursor:pointer;font-weight:600}.mobile-toc nav{flex-wrap:wrap;gap:.35rem .75rem;margin-top:.65rem;display:flex}.mobile-toc a{color:var(--muted);font-size:12px}.chapter-section>p a,.chapter-section>ul a{color:var(--ink);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px}.chapter-section>p a:hover,.chapter-section>ul a:hover{color:var(--accent)}.chapter-section>p.api-note{font-family:var(--ag-font);color:color-mix(in srgb, var(--muted) 95%, transparent);margin:.75rem 0 0;padding-top:.15rem;font-size:13.5px;font-style:italic;line-height:1.55}.guide-fix-pair{border:1px solid var(--line);border-radius:.5rem;margin-top:.35rem;overflow:hidden}.guide-fix-block{background:var(--code-bg)}.guide-fix-block+.guide-fix-block{border-top:1px solid #ffffff14}.guide-fix-block-header{font-family:var(--ag-font);letter-spacing:.04em;text-transform:uppercase;border-bottom:1px solid #ffffff0f;align-items:center;gap:.45rem;padding:.45rem .85rem;font-size:12px;font-weight:600;display:flex}.guide-fix-block--wrong .guide-fix-block-header{color:var(--ag-fail);background:color-mix(in srgb, var(--ag-fail) 12%, transparent)}.guide-fix-block--right .guide-fix-block-header{color:var(--ag-ok);background:color-mix(in srgb, var(--ag-ok) 12%, transparent)}.guide-fix-marker{font-family:var(--ag-font-mono);font-size:12px;line-height:1}.guide-fix-block pre{font-family:var(--ag-font-mono);color:var(--code-fg);margin:0;padding:.75rem .85rem .9rem;font-size:12.5px;line-height:1.65;overflow-x:auto}
