:root{--panel2:#e3e7ee;--line2:#d3d8e2;--s1:#2f6fc7;--s2:#6536cc;--s3:#0d857a;--s4:#a86a00;--s5:#cf3252;--s6:#9c368a;--ok:#0f8f5f;--warn:light-dark(#8a5300,#e8a13a);--s1-text:light-dark(#1f5fb0,#7fb0ff);--s2-text:light-dark(#5a2bb0,#b699ff);--s3-text:light-dark(#0a6b62,#45d0c0);--s4-text:light-dark(#8a5300,#e8a13a);--s5-text:light-dark(#b3264a,#f27d95);--s6-text:light-dark(#8a2c7c,#e08cd0);--ok-text:light-dark(#0b7a4f,#46d08a)}:root{scroll-padding-block-start:calc(var(--theme--masthead--offset) + 3.5rem)}main a-band{--band--Grid--columns:minmax(0,1fr)}main a-band>*{min-inline-size:0}main a-band :is(article,.content) :is(p,ul,ol,dl){line-height:1.6;max-inline-size:32rem}header.sticky{background:var(--theme--surface--color);border-block-end:var(--theme--BorderWidth--thin) solid var(--theme--ui--color--subtle);box-sizing:border-box;font-size:1.2rem;inset-block-start:var(--theme--masthead--offset);inset-inline:0;position:sticky;z-index:1;.center{box-sizing:border-box;inline-size:min(var(--theme--container--MaxWidth),100%);margin-inline:auto;padding-inline:var(--theme--container--space)}nav.flex{align-items:center;-moz-column-gap:calc(var(--theme--container--space)*3);column-gap:calc(var(--theme--container--space)*3);display:flex;flex-wrap:wrap;justify-content:center;padding-block:var(--theme--content--space);row-gap:var(--theme--content--space)}nav>a{align-items:baseline;color:var(--theme--text--Color--subtle);display:inline-flex;font-size:.75em;gap:.4em;text-decoration:none}nav>a:hover{color:var(--theme--text--Color)}nav>a[aria-current=true]{color:var(--base--text,var(--theme--text--Color--accent))}@media (width <= 980px){nav.flex{-moz-column-gap:calc(var(--theme--container--space)*2);column-gap:calc(var(--theme--container--space)*2);flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto}nav>a{flex-shrink:0;padding-block:6px;white-space:nowrap}}nav>a b{color:var(--base--text,var(--theme--text--Color--accent));font-family:var(--theme--code--FontFamily)}}.pipewrap{inline-size:100%;overflow-x:auto}.pipewrap>svg{block-size:auto;display:block;inline-size:100%;min-inline-size:880px}.pipe-svg a{cursor:pointer}.pipe-cap{font-family:var(--theme--code--FontFamily);font-size:11.5px;margin-block-start:9px}.hero .headline em,.pipe-cap{color:var(--theme--text--Color--subtle)}.hero .headline em{font-style:italic}.lede{font-size:1.1em}.lede,.metadata{color:var(--theme--text--Color--subtle)}.metadata{font-family:var(--theme--code--FontFamily);font-size:12px;overflow-wrap:break-word}.eyebrow{align-items:baseline;display:inline-flex;flex-wrap:wrap;gap:var(--theme--content--space);margin-block:0 var(--theme--container--space);span:not(.tag){color:var(--theme--text--Color--subtle);text-transform:uppercase}}.eyebrow .tag{color:var(--base--text,var(--theme--text--Color--accent));font-weight:var(--theme--FontWeight--bold);text-transform:uppercase}.title{color:var(--theme--text--Color--subtle);letter-spacing:.08em;margin-block:34px 12px}.lead-in{color:var(--theme--text--Color);font-weight:var(--theme--FontWeight--bold);margin-block-start:1.5em}figure{margin-block:26px;margin-inline:0}.scrollable{overflow-x:auto}figure svg{background:#fff;block-size:auto;border:var(--theme--BorderWidth--thin) solid var(--theme--ui--color--subtle);border-radius:12px;box-sizing:border-box;display:block;inline-size:100%;min-inline-size:880px}figcaption{color:var(--theme--text--Color--subtle);font-size:11.5px;margin-block-start:9px;padding-inline-start:2px}code.inl,figcaption,svg text{font-family:var(--theme--code--FontFamily)}code.inl{background:var(--panel2);border:var(--theme--BorderWidth--thin) solid var(--line2);border-radius:5px;color:#2c3242;font-size:.9em;overflow-wrap:break-word;padding-block:1px;padding-inline:6px}pre{overflow-x:auto}.code-wrap{position:relative}.code-wrap .code-copy{background:var(--theme--surface--color);border:var(--theme--BorderWidth--thin) solid var(--theme--ui--color--subtle);border-radius:var(--theme--BorderRadius);color:var(--theme--text--Color--subtle);cursor:pointer;font-family:var(--theme--text--FontFamily);font-size:12px;inset-block-start:6px;inset-inline-end:6px;opacity:.55;padding-block:2px;padding-inline:8px;position:absolute;transition:opacity .15s ease}.code-wrap .code-copy:is(:hover,:focus-visible),.code-wrap:hover .code-copy{color:var(--theme--text--Color);opacity:1}@media (prefers-reduced-motion:reduce){.code-wrap .code-copy{transition:none}}details.deep{background:var(--theme--surface--color--emphasis);border:var(--theme--BorderWidth--thin) solid var(--line2);border-radius:10px;margin-block:18px;overflow:hidden}details.deep>summary{align-items:center;color:var(--theme--text--Color);cursor:pointer;display:flex;font-family:var(--theme--code--FontFamily);font-size:13px;gap:10px;list-style:none;padding-block:13px;padding-inline:16px;-webkit-user-select:none;user-select:none}details.deep>summary::-webkit-details-marker{display:none}details.deep>summary:before{color:var(--s2-text);content:"▸";transition:transform .18s}@media (prefers-reduced-motion:reduce){details.deep>summary:before{transition:none}}details.deep[open]>summary:before{transform:rotate(90deg)}details.deep>summary .lbl{color:var(--theme--text--Color--subtle);font-size:11px;letter-spacing:.08em;text-transform:uppercase}details.deep .body{padding-block:2px 6px;padding-inline:16px}.switch{display:flex;flex-wrap:wrap;gap:8px;margin-block:8px 22px}.switch button{background:var(--theme--surface--color--emphasis);border:var(--theme--BorderWidth--thin) solid var(--line2);border-radius:8px;color:var(--theme--text--Color--subtle);cursor:pointer;font-family:var(--theme--code--FontFamily);font-size:12.5px;padding-block:9px;padding-inline:13px;transition:all .15s}@media (prefers-reduced-motion:reduce){.switch button{transition:none}}.switch button:hover{color:var(--theme--text--Color)}.switch button[aria-selected=true]{background:#0a6b62;border-color:#0a6b62;color:#fff;font-weight:700;@media (forced-colors:active){background:Highlight;border-bottom-color:Highlight;border-left-color:Highlight;border-right-color:Highlight;border-top-color:Highlight;color:HighlightText}}.scene{display:none}.scene.on{display:block}.seq{counter-reset:step;list-style:none;margin:0;padding:0}.seq li{background:var(--theme--surface--color--emphasis);border:var(--theme--BorderWidth--thin) solid var(--theme--ui--color--subtle);border-radius:10px;counter-increment:step;margin-block-end:10px;padding-block:12px;padding-inline:54px 14px;position:relative}.seq li:before{background:var(--panel2);block-size:28px;border:var(--theme--BorderWidth--thin) solid var(--line2);border-radius:7px;color:var(--s3);content:counter(step);display:grid;font-family:var(--theme--code--FontFamily);font-size:13px;font-weight:700;inline-size:28px;inset-block-start:11px;inset-inline-start:12px;place-items:center;position:absolute}.seq li .cb{color:var(--theme--text--Color);font-family:var(--theme--code--FontFamily);font-size:14px;font-weight:700}.seq li .cb.ctor{color:var(--s2-text)}.seq li .cb.attr{color:var(--s4-text)}.seq li .cb.conn{color:var(--ok-text)}.seq li .cb.disc{color:var(--s5-text)}.seq li .cb.move{color:var(--s3-text)}.seq li .cb.adopt{color:var(--s6-text)}.mechanism,.seq li .cb.pending{color:var(--theme--text--Color--subtle)}.mechanism{font-size:14px}.seq li .why{color:var(--theme--text--Color--subtle);display:block;font-size:13.5px;margin-block-start:2px}.seq li .why code{font-size:12.5px}.stepper{background:var(--theme--surface--color--emphasis);border:var(--theme--BorderWidth--thin) solid var(--theme--ui--color--subtle);border-radius:14px;margin-block:22px;padding:20px}.stepper .stage{color:var(--s2-text);font-family:var(--theme--code--FontFamily);font-size:12.5px;letter-spacing:.05em;min-block-size:20px}.stepper .desc{color:var(--theme--text--Color--subtle);font-size:14px;margin-block:6px 18px;min-block-size:42px}.qzone{display:grid;gap:16px}@media (width >= 640px){.qzone{grid-template-columns:1.4fr 1fr}}.q{background:var(--theme--surface--color--emphasis);border:var(--theme--BorderWidth--thin) solid var(--line2);border-radius:10px;padding:12px}.q h4{color:var(--theme--text--Color--subtle);font-family:var(--theme--code--FontFamily);font-size:11.5px;font-weight:500;letter-spacing:.08em;margin-block:0 10px;text-transform:uppercase}.q.backup h4{color:var(--warn)}.qstack{display:flex;flex-direction:column;gap:7px;min-block-size:120px}.frame{border:var(--theme--BorderWidth--thin) dashed var(--line2);border-radius:8px;padding-block:8px;padding-inline:9px}.frame .flabel{color:var(--theme--text--Color--subtle);font-family:var(--theme--code--FontFamily);font-size:10px;letter-spacing:.06em;margin-block-end:6px;text-transform:uppercase}.frame.active{background:rgba(101,54,204,.1);border-color:var(--s2);border-style:solid}.rx{align-items:center;background:var(--panel2);border:var(--theme--BorderWidth--thin) solid var(--line2);border-radius:6px;color:var(--theme--text--Color);display:flex;font-family:var(--theme--code--FontFamily);font-size:12px;gap:8px;justify-content:space-between;margin-block:4px;padding-block:5px;padding-inline:8px}.rx .tp{border-radius:4px;font-size:9.5px;font-weight:700;letter-spacing:.03em;padding-block:1px;padding-inline:5px}.rx.up .tp{background:var(--s2)}.rx.cb .tp,.rx.up .tp{color:var(--theme--surface--color)}.rx.cb .tp{background:var(--s4)}.rx.fired{opacity:.42;text-decoration:line-through}.empty{color:var(--theme--text--Color--subtle);font-family:var(--theme--code--FontFamily);font-size:11.5px;font-style:italic}.controls{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-block-start:18px}.controls button{background:var(--theme--surface--color--emphasis);border:var(--theme--BorderWidth--thin) solid var(--line2);border-radius:8px;color:var(--theme--text--Color);cursor:pointer;font-family:var(--theme--code--FontFamily);font-size:13px;padding-block:9px;padding-inline:15px}.controls button:hover{border-color:var(--s2)}.controls button.primary{background:var(--s2);border-color:var(--s2);color:var(--base--on,#fff);font-weight:700}.controls .prog{color:var(--theme--text--Color--subtle);font-family:var(--theme--code--FontFamily);font-size:11.5px;margin-inline-start:auto}.grid{display:grid;gap:16px;grid-template-columns:repeat(var(--columns,auto-fit),minmax(min(260px,100%),1fr));margin-block:18px;@media (width <= 640px){grid-template-columns:1fr}}.grid a-card .content .accent,.grid a-card .content h3.accent{color:var(--base--text,var(--theme--link--Color))}.reftable{border-collapse:collapse;font-size:13.5px;inline-size:100%;margin-block:18px;min-inline-size:640px}.reftable td,.reftable th{border-block-end:var(--theme--BorderWidth--thin) solid var(--theme--ui--color--subtle);padding-block:8px;padding-inline:10px;text-align:start;vertical-align:top}.reftable th{color:var(--theme--text--Color--subtle);letter-spacing:.06em;text-transform:uppercase}.reftable td code,.reftable th{font-family:var(--theme--code--FontFamily)}.reftable td.what{color:var(--theme--text--Color--subtle)}.tt{color:var(--theme--text--Color);font-family:var(--theme--code--FontFamily);font-size:.7em}dl dt{font-weight:var(--theme--FontWeight--bold);margin-block-start:1em}dl dd.d{color:var(--theme--text--Color--subtle);font-size:.95em;margin-inline-start:0}