@charset "UTF-8";.main{min-height:calc(100vh - var(--r-localnav-height))}ul,ol,li,dl,dt,dd,h1,h2,h3,h4,h5,h6,hgroup,p,blockquote,figure,form,fieldset,legend{margin:0;padding:0}h1,h2,h3,h4,h5,h6{color:inherit}h1{font-family:var(--font-display);font-size:48px;line-height:1.0834933333;font-weight:600;letter-spacing:-.003em}h2{font-family:var(--font-display);font-size:40px;line-height:1.1;font-weight:600;letter-spacing:0}h1+*,h2+*,h3+*,h4+*,h5+*,h6+*{margin-top:.8em}ol+*,p+*,ul+*{margin-top:.5em}section.section{padding-top:4em;padding-bottom:4em}.section-content{margin-inline:auto;width:980px;position:relative}@media(max-width:1068px){.section-content{width:692px}}@media(max-width:734px){.section-content{width:87.5%}}.section-content .row>.column{padding:1.5em 0}@media(max-width:734px){.section-content .row>.column{padding:1em 0}}.bg-light{background-color:var(--bg-light-override)}.bg-fill{background-color:var(--bg-fill)}.row{display:flex;flex-flow:row wrap;width:100%}.row-full{display:flex;flex-wrap:wrap;width:100%}.column{box-sizing:border-box;margin:0;padding:0;min-width:0;position:relative}.large-8{flex-basis:66.66666664%;max-width:66.66666664%}.large-9{flex-basis:74.99999997%;max-width:74.99999997%}.large-10{flex-basis:83.3333333%;max-width:83.3333333%}.large-12{flex-basis:99.99999996%;max-width:99.99999996%}.large-centered{margin-inline:auto}@media(min-width:735px)and (max-width:1068px){.medium-11{flex-basis:91.66666663%;max-width:91.66666663%}.medium-12{flex-basis:99.99999996%;max-width:99.99999996%}}@media(max-width:734px){.small-12{flex-basis:99.99999996%;max-width:99.99999996%}}.text-center{text-align:center}.margin-top{margin-top:3em!important}.margin-top-small{margin-top:1.5em!important}@media(max-width:734px){.sv-margin-top-small{margin-top:1.5em!important}}.visuallyhidden{position:absolute;clip:rect(1px,1px,1px,1px);clip-path:inset(0 0 99.9% 99.9%);overflow:hidden;height:1px;width:1px;padding:0;border:0}.hide-overflow{overflow:hidden}.selfclear:after{content:" ";display:table;clear:both}.nowrap{display:inline-block;text-decoration:inherit;white-space:nowrap}.grid{--sk-cssgrid-columns: 12;--sk-cssgrid-column-gutter-inner: 24px;--sk-cssgrid-row-gutter-inner: 24px;--sk-cssgrid-column-gutter-outer: 24px;--sk-cssgrid-row-gutter-outer: 0;display:grid;grid-template-columns:repeat(var(--sk-cssgrid-columns),minmax(0,1fr));grid-column-gap:var(--sk-cssgrid-column-gutter-inner);grid-row-gap:var(--sk-cssgrid-row-gutter-inner);padding:var(--sk-cssgrid-row-gutter-outer) var(--sk-cssgrid-column-gutter-outer);margin-inline:auto}.grid .grid{height:100%;padding-left:0;padding-right:0}.grid.grid-gutterless{padding-left:0;padding-right:0}.grid-item{position:relative;box-sizing:border-box}.large-span-0{grid-column:span 0}.large-span-1{grid-column:span 1}.large-span-2{grid-column:span 2}.large-span-3{grid-column:span 3}.large-span-4{grid-column:span 4}.large-span-5{grid-column:span 5}.large-span-6{grid-column:span 6}.large-span-7{grid-column:span 7}.large-span-8{grid-column:span 8}.large-span-9{grid-column:span 9}.large-span-10{grid-column:span 10}.large-span-11{grid-column:span 11}.large-span-12{grid-column:span 12}@media(max-width:1068px){.medium-span-0{grid-column:span 0}.medium-span-1{grid-column:span 1}.medium-span-2{grid-column:span 2}.medium-span-3{grid-column:span 3}.medium-span-4{grid-column:span 4}.medium-span-5{grid-column:span 5}.medium-span-6{grid-column:span 6}.medium-span-7{grid-column:span 7}.medium-span-8{grid-column:span 8}.medium-span-9{grid-column:span 9}.medium-span-10{grid-column:span 10}.medium-span-11{grid-column:span 11}.medium-span-12{grid-column:span 12}}@media(max-width:734px){.small-span-0{grid-column:span 0}.small-span-1{grid-column:span 1}.small-span-2{grid-column:span 2}.small-span-3{grid-column:span 3}.small-span-4{grid-column:span 4}.small-span-5{grid-column:span 5}.small-span-6{grid-column:span 6}.small-span-7{grid-column:span 7}.small-span-8{grid-column:span 8}.small-span-9{grid-column:span 9}.small-span-10{grid-column:span 10}.small-span-11{grid-column:span 11}.small-span-12{grid-column:span 12}}.padding-top{padding-top:3em!important}.padding-bottom{padding-bottom:3em!important}.padding-top-small{padding-top:1.5em!important}.padding-bottom-small{padding-bottom:1.5em!important}.no-padding-top{padding-top:0!important}.no-padding-bottom{padding-bottom:0!important}.no-margin-bottom{margin-bottom:0!important}.margin-bottom-small{margin-bottom:1.5em!important}.divider-top{border-top:1px solid var(--footer-border)}.divider-bottom{border-bottom:1px solid var(--footer-border)}.justify-content-center{justify-content:center}section[class^=section-]{width:100%;overflow-x:hidden}.tile{--sk-tile-box-shadow: initial;--sk-tile-background: var(--bg-fill);--sk-tile-button-background: rgba(210, 210, 215, .64);--sk-tile-button-background-hover: rgba(223, 223, 227, .6976);--sk-tile-button-background-active: rgba(193, 193, 198, .6544);--sk-tile-button-icon-color: rgba(0, 0, 0, .56);--sk-tile-button-icon-color-hover: rgba(0, 0, 0, .64);margin-inline:auto;box-sizing:border-box;height:100%;position:relative;overflow:hidden;background:var(--sk-tile-background);box-shadow:var(--sk-tile-box-shadow)}.tile-content{padding:var(--sk-tile-padding, 60px 8.3333333333%)}.tile-rounded{border-radius:var(--sk-tile-border-radius, 18px)}.bg-fill .tile{background-color:var(--bg-light-override)}.tile-shadow{--sk-tile-box-shadow: 8px 8px 16px 0 rgba(0, 0, 0, .08)}.tile-full{display:flex;flex-direction:column;height:100%}.tile-full .tile-content{flex:1;display:flex;flex-direction:column;justify-content:space-between;gap:var(--tile-custom-gap, 3em)}.tile-full .tile-content>img{align-self:flex-start;width:auto;max-width:100%}.tile-link{color:inherit;display:block;position:relative;height:100%}.tile-link:hover{text-decoration:none!important;color:inherit}.tile-link:hover p.link{text-decoration:underline}.tile-bg{background-position:center center;background-repeat:no-repeat;background-size:cover}.tile-dark{--sk-tile-background: rgb(0, 0, 0);--sk-tile-button-icon-color: rgba(255, 255, 255, .8);--sk-tile-button-background: rgba(66, 66, 69, .72);--sk-tile-button-icon-color-hover: rgb(255, 255, 255);--sk-tile-button-background-hover: rgba(73, 73, 76, .7256);--sk-tile-button-background-active: rgba(57, 57, 60, .7424)}.tile-button-wrapper{position:absolute;bottom:16px;right:16px;width:44px;height:44px;display:flex;justify-content:center;align-items:center;cursor:pointer;background:transparent;border:0;padding:0}.tile-button-wrapper:focus-visible{outline:none}.tile-button-wrapper:focus-visible .tile-button{outline:2px solid var(--sk-focus-color, #0071e3);outline-offset:var(--sk-focus-offset-container, 3px)}@media(max-width:1068px){.tile-button-wrapper{bottom:13px;right:13px}}.tile-button{width:36px;height:36px;border-radius:50%;display:flex;justify-content:center;align-items:center;position:relative;transition:.1s background-color linear;background:var(--sk-tile-button-background);color:var(--sk-tile-button-icon-color)}.tile-button:hover{background:var(--sk-tile-button-background-hover);color:var(--sk-tile-button-icon-color-hover)}.tile-button:active{background:var(--sk-tile-button-background-active)}.tile-icon{fill:currentColor;position:absolute;inset-inline-start:50%;width:20px;height:20px;transform:translate(-50%)}.theme-dark .tile,[data-color-scheme=dark] .tile{--sk-tile-button-background: rgba(66, 66, 69, .72);--sk-tile-button-background-hover: rgba(73, 73, 76, .7256);--sk-tile-button-background-active: rgba(57, 57, 60, .7424);--sk-tile-button-icon-color: rgba(255, 255, 255, .8);--sk-tile-button-icon-color-hover: rgb(255, 255, 255)}.card-icon{display:inline-flex;justify-content:center!important;padding:.5em;text-align:center;margin:0 auto;max-width:192px!important}.sf-icon{display:inline-flex!important;height:100%!important;justify-content:center;transform:scale(1.2);color:var(--color-accent-cyan, #00a5f0);padding:.5em;font-size:96px!important}a,.link{letter-spacing:inherit}a:link,a:visited,.link:link,.link:visited{text-decoration:none;color:inherit}a:hover,.link:hover{text-decoration:underline}a:disabled,.link:disabled{opacity:.32}p.link{color:var(--color-link)}.block-link{cursor:pointer;color:inherit}.block-link:hover{text-decoration:underline}.more{color:var(--color-link)}.more:hover{color:var(--color-link-hover);text-decoration:none}.links-inline,.links-stacked{margin:0;padding:0;list-style:none}.links-inline li{display:inline;margin:0 .8em}.links-inline li:first-child{margin-left:0}.links-inline li:last-child{margin-right:0}.links-stacked li{margin:0;display:block}.links-stacked li+li{margin-top:.4em}ul.links{list-style:none;margin:0 0 1em;padding:0}ul.links.small{margin-bottom:0}ul.links>li{font-size:1em;font-weight:400;margin-bottom:.263em;padding-left:28px;background-size:19px 19px;background-position:0 2px;background-repeat:no-repeat;line-height:1.6em;min-height:0;padding-top:0}ul.links>li>a:link,ul.links>li>a:visited{color:var(--color-link)}ul.links>li>a:hover{color:var(--color-link-hover)}ul.links>li.download{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%230066CC' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'/%3E%3Cpolyline points='7 10 12 15 17 10'/%3E%3Cline x1='12' x2='12' y1='15' y2='3'/%3E%3C/svg%3E")}ul.links>li.document,ul.links>li.guide,ul.links>li.reference{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%230066CC' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14.5 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7.5L14.5 2z'/%3E%3Cpolyline points='14 2 14 8 20 8'/%3E%3Cline x1='16' x2='8' y1='13' y2='13'/%3E%3Cline x1='16' x2='8' y1='17' y2='17'/%3E%3Cline x1='10' x2='8' y1='9' y2='9'/%3E%3C/svg%3E")}ul.links>li:not([class]){padding-left:0;background-image:none}.thumbnail{position:relative;display:block;overflow:hidden;border-radius:12px;background:var(--bg-light-override)}.thumbnail-rounded{border-radius:18px}.image-wrapper{position:relative;overflow:hidden}.thumbnail-image{display:block;width:100%;height:auto;object-fit:cover}.thumbnail-scrim{position:absolute;left:0;right:0;height:64px;pointer-events:none}.thumbnail-scrim-top{top:0;background:linear-gradient(to bottom,rgba(0,0,0,.35),transparent)}.thumbnail-scrim-bottom{bottom:0;background:linear-gradient(to top,rgba(0,0,0,.4),transparent)}.thumbnail-button{position:absolute;right:12px;bottom:12px;z-index:2}.resource-grid{display:grid;grid-template-columns:repeat(2,1fr);column-gap:2em;row-gap:2em;margin-top:2em}@media(max-width:1068px){.resource-grid{column-gap:1.5em;row-gap:1em}}@media(max-width:734px){.resource-grid{grid-template-columns:1fr;row-gap:1.5em}}.resource-grid-item{min-width:0}.resource-grid-item h4{color:var(--color-text-secondary);font-size:15px;line-height:1.4;font-weight:600;margin-top:1em;cursor:pointer}.resource-grid-item:hover,.resource-grid-item:hover h4{text-decoration:none}.device-hero{display:block;position:relative;margin:0 auto}.device-screen{display:block;position:absolute;top:2.45%;left:10.24%;width:79.52%;height:85.44%}.device-screen img{display:block;width:100%;height:100%;object-fit:cover}.device-macbook-pro-5th-gen-14-silver{background-image:url(/darwinos-assets/hardware/macbook-pro-14.svg);background-size:100% 100%;background-repeat:no-repeat;background-position:center center;width:933px;aspect-ratio:1216/735}@media(max-width:1068px){.device-macbook-pro-5th-gen-14-silver{width:661px}}@media(max-width:734px){.device-macbook-pro-5th-gen-14-silver{width:355.5px}}#localnav *,#localnav *:before,#localnav *:after{box-sizing:content-box}.localnav-menustate{display:none}#localnav{position:sticky;top:0;left:0;width:100%;height:var(--r-localnav-height)}body:has(.architecture.main) #localnav,body:has(.guide.main) #localnav{position:relative}#localnav{min-width:1024px;font-size:17px;z-index:9998}@media(max-width:1044px){#localnav{min-width:320px}}#localnav .localnav-wrapper{position:absolute;top:0;left:0;width:100%;height:auto;min-height:100%;z-index:1}#localnav .localnav-content{height:var(--r-localnav-height);margin:0 auto;max-width:980px;padding:0 22px;position:relative;z-index:2}#localnav .localnav-content:before,#localnav .localnav-content:after{content:" ";display:table}#localnav .localnav-content:after{clear:both}@media(max-width:833px){#localnav .localnav-content{padding:0 16px}}#localnav .localnav-background{position:absolute;left:0;top:0;width:100%;height:100%;z-index:1;background:var(--localnav-background);transition:background .24s cubic-bezier(.28,.11,.32,1)}@supports (backdrop-filter: saturate(180%) blur(20px)) or (-webkit-backdrop-filter: saturate(180%) blur(20px)){#localnav .localnav-background{-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px)}}#localnav .localnav-background:after{content:"";display:block;position:absolute;bottom:0;left:0;width:100%;height:1px;z-index:1;background:var(--localnav-keyline-color)}#localnav .localnav-title{font-size:21px;line-height:1.1428571429;font-weight:600;letter-spacing:.011em;font-family:var(--font-display);cursor:default;display:block;margin:14px 0 -14px;padding:0;white-space:nowrap;float:left;color:var(--localnav-title-color);transition:color .24s cubic-bezier(.28,.11,.32,1)}@media(max-width:833px){#localnav .localnav-title{font-size:19px;line-height:1.2631578947;letter-spacing:.012em;margin:12px 0 -12px;display:inline-block}}#localnav .localnav-title a{display:inline-block;letter-spacing:inherit;line-height:inherit;margin:0;text-decoration:none;white-space:nowrap;opacity:var(--localnav-title-opacity);color:inherit;transition:color .24s cubic-bezier(.28,.11,.32,1)}#localnav .localnav-title a:hover{text-decoration:none}#localnav .localnav-menu{font-size:12px;line-height:1;font-weight:400;letter-spacing:-.01em;font-family:var(--font-sans);margin-top:-3px;float:right}#localnav .localnav-menu-tray{padding-top:18px;float:left}@media(max-width:833px){#localnav .localnav-menu-tray{float:none;overflow:hidden;pointer-events:none;visibility:hidden;width:100%;max-height:0;transition:max-height .32s cubic-bezier(.4,0,.6,1) .24s,visibility 0s linear 1s}}@media(max-width:833px){#localnav .localnav-menu-items{padding:34px 16px 27px}}#localnav .localnav-menu-item{list-style:none;margin-inline-start:24px;float:left}@media(max-width:833px){#localnav .localnav-menu-item{margin-inline-start:0;display:inline-block;float:none;width:100%;height:34px}}#localnav .localnav-menu-link{color:var(--localnav-link-color);display:inline-block;line-height:22px;white-space:nowrap;opacity:var(--localnav-link-opacity);text-decoration:none;position:relative}#localnav .localnav-menu-link:hover{opacity:1}@media(max-width:833px){#localnav .localnav-menu-link{display:flex;align-items:center;height:100%;line-height:1.3;opacity:0;transform:translate3d(0,-4px,0);transition:transform .32s cubic-bezier(.4,0,.6,1),opacity .32s cubic-bezier(.4,0,.6,1)}}#localnav .localnav-menu-link.current{opacity:1;color:var(--localnav-link-color);cursor:default}#localnav .localnav-menu-link.current:hover{color:var(--localnav-link-color)}#localnav .localnav-menu-link.current:after{content:"";position:absolute;left:0;bottom:-15px;width:100%;height:1px;border-radius:1px;background-color:var(--localnav-link-color);opacity:.8}@media(max-width:833px){#localnav .localnav-menu-link.current:after{bottom:auto;left:-16px;height:12px;width:1.2px;border-radius:1.2px}}#localnav .localnav-actions{padding-top:18px;float:left}@media(max-width:833px){#localnav .localnav-actions{padding-inline-start:16px;padding-inline-end:16px;position:absolute;top:0;right:0;z-index:1}}#localnav .localnav-action{margin-inline-start:24px;float:left}#localnav .localnav-action-menucta{display:none;margin-top:-2px;position:relative;z-index:1}@media(max-width:833px){#localnav .localnav-action-menucta{display:block;float:left}}#localnav .localnav-menucta{margin-inline-end:-12px;cursor:pointer;display:block;overflow:hidden;width:40px;height:34px;-webkit-tap-highlight-color:rgba(0,0,0,0)}@media(max-width:833px){#localnav .localnav-menucta{height:30px}}#localnav .localnav-menucta-chevron{opacity:.8;display:flex;width:100%;height:100%;z-index:1;position:relative;justify-content:center;align-items:flex-start;color:var(--localnav-link-color)}#localnav .localnav-menucta-chevron:hover{opacity:1}#localnav .localnav-menucta-chevron [data-chevron-icon]{transform:translate3d(0,6px,0);-webkit-backface-visibility:hidden;backface-visibility:hidden;height:9px;width:16px}#localnav .localnav-menucta-chevron [data-chevron-icon] polyline{stroke-width:1.1px}@media(max-width:833px){#localnav .localnav-menucta-chevron [data-chevron-icon] polyline{stroke-width:1.2px}}#localnav .localnav-menucta-anchor{display:none;position:absolute;top:0;left:0;width:1px;height:1px;z-index:10}@media(max-width:833px){#localnav .localnav-menucta-anchor{display:block}}#localnav .localnav-menucta-anchor:focus{outline:none}#localnav .localnav-menucta-anchor-close{display:none}#localnav .localnav-menucta-anchor-label{position:absolute;clip:rect(1px,1px,1px,1px);clip-path:inset(0 0 99.9% 99.9%);overflow:hidden;height:1px;width:1px;padding:0;border:0}#localnav-curtain{--r-localnav-curtain-background: rgba(232, 232, 237, .4);--r-localnav-curtain-width: 0;--r-localnav-curtain-height: 0;background:var(--r-localnav-curtain-background);opacity:0;position:fixed;top:0;left:0;width:var(--r-localnav-curtain-width);height:var(--r-localnav-curtain-height);z-index:9996;transition:opacity .2s ease}@media(max-width:833px){#localnav-curtain{transition:opacity .32s cubic-bezier(.4,0,.6,1) .24s,backdrop-filter .32s cubic-bezier(.4,0,.6,1) .24s,-webkit-backdrop-filter .32s cubic-bezier(.4,0,.6,1) .24s,width 0s ease .56s,height 0s ease .56s;-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px)}}@media(max-width:833px){.localnav-menustate:checked~#localnav .localnav-menu-tray,.localnav-menustate:target~#localnav .localnav-menu-tray{max-height:calc(100vh - 96px);overflow-y:auto;pointer-events:auto;visibility:visible;-webkit-overflow-scrolling:touch;transition:max-height .32s cubic-bezier(.4,0,.6,1) 0s,visibility 0s linear 0s}}@media(max-width:833px){.localnav-menustate:checked~#localnav .localnav-menu-link,.localnav-menustate:target~#localnav .localnav-menu-link{opacity:.8;transform:translateZ(0)}}@media(max-width:833px){.localnav-menustate:checked~#localnav-curtain,.localnav-menustate:target~#localnav-curtain{--r-localnav-curtain-width: 100%;--r-localnav-curtain-height: 100%;opacity:1;right:0;bottom:0;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);transition:opacity .32s cubic-bezier(.4,0,.6,1) 0s,backdrop-filter .32s cubic-bezier(.4,0,.6,1) 0s,-webkit-backdrop-filter .32s cubic-bezier(.4,0,.6,1) 0s,width 0s ease 0s,height 0s ease 0s}}@media(max-width:833px){.localnav-menustate:checked~#localnav .localnav-background,.localnav-menustate:target~#localnav .localnav-background{background:var(--localnav-background-stuck)}}@media(max-width:833px){.localnav-menustate:checked~#localnav .localnav-menucta-anchor-open,.localnav-menustate:target~#localnav .localnav-menucta-anchor-open{display:none}}@media(max-width:833px){.localnav-menustate:checked~#localnav .localnav-menucta-anchor-close,.localnav-menustate:target~#localnav .localnav-menucta-anchor-close{display:block}}.footer{font-size:12px;line-height:1.33337;font-weight:400;letter-spacing:-.01em;font-family:var(--font-sans);background-color:var(--footer-background);color:var(--footer-text-strong);min-width:1024px;overflow:hidden;position:relative;z-index:1;border-top:1px solid var(--footer-border);box-sizing:content-box}@media only screen and (max-width:1044px){.footer{min-width:320px}}.footer *,.footer *:before,.footer *:after{box-sizing:content-box}.footer h1,.footer h2,.footer h3,.footer h4,.footer h5,.footer h6{color:inherit}.footer a{color:var(--footer-link);text-decoration:none}.footer a:hover{color:var(--footer-link-hover);text-decoration:underline}.footer .footer-content{margin:0 auto;max-width:980px;padding:0 22px;padding-inline-start:max(22px,env(safe-area-inset-left));padding-inline-end:max(22px,env(safe-area-inset-right))}@media only screen and (max-width:767px){.footer .footer-content{padding:0 16px}}.footer .footer-label{position:absolute;clip:rect(1px,1px,1px,1px);clip-path:inset(0 0 99.9% 99.9%);overflow:hidden;height:1px;width:1px;padding:0;border:0}.footer .footer-sosumi{border-bottom:1px solid var(--footer-border);color:var(--footer-text);padding:17px 0 11px}.footer .footer-sosumi ul{list-style:none;margin:0;padding:0}.footer .footer-sosumi li{padding-bottom:.8em;font-size:12px;line-height:1.33337;font-weight:400;letter-spacing:-.01em;font-family:var(--font-sans)}.footer .footer-breadcrumbs{padding:17px 0;position:relative;z-index:1;color:var(--footer-text-strong)}.footer .footer-breadcrumbs:before,.footer .footer-breadcrumbs:after{content:" ";display:table}.footer .footer-breadcrumbs:after{clear:both}@media only screen and (max-width:767px){.footer .footer-breadcrumbs{border-bottom:1px solid var(--footer-border)}}.footer .footer-breadcrumbs-path{font-size:12px;line-height:1.33337;font-weight:400;letter-spacing:-.01em;font-family:var(--font-sans);position:relative;z-index:1}.footer .footer-breadcrumbs-path:before,.footer .footer-breadcrumbs-path:after{content:" ";display:table}.footer .footer-breadcrumbs-path:after{clear:both}.footer .footer-breadcrumbs-list{max-height:9999px;padding-left:0;margin:0;direction:ltr;list-style:none}.footer .footer-breadcrumbs-item{margin-right:7px;float:left;padding:3px 4px 3px 0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.footer .footer-breadcrumbs-item:before{content:"›";display:inline-block;margin-right:11px;color:var(--footer-text);vertical-align:middle;margin-top:-1px}.footer .footer-breadcrumbs-item:first-child:before{display:none}.footer .footer-directory{font-size:12px;line-height:1.33337;font-weight:400;letter-spacing:-.01em;font-family:var(--font-sans);display:flex;flex-wrap:nowrap;padding-top:20px}.footer .footer-directory:last-child{padding-bottom:28px}@media only screen and (max-width:767px){.footer .footer-directory{flex-direction:column}}.footer .footer-directory-column{flex-basis:25%;flex:1}@media only screen and (max-width:767px){.footer .footer-directory-column{flex-basis:auto}}.footer .footer-directory-column-section{pointer-events:none}.footer .footer-directory-column-section~.footer-directory-column-section{padding-top:24px}@media only screen and (max-width:767px){.footer .footer-directory-column-section{position:relative;z-index:1;border-bottom:1px solid var(--footer-border);overflow:hidden;pointer-events:auto}.footer .footer-directory-column-section~.footer-directory-column-section{padding-top:0}}.footer .footer-directory-column-section-title{font-size:12px;line-height:1.33337;font-weight:600;letter-spacing:-.01em;font-family:var(--font-sans);margin-right:20px;margin-bottom:.8em}.footer .footer-directory-column-section-title a{pointer-events:auto;color:var(--footer-text-strong)}@media only screen and (max-width:767px){.footer .footer-directory-column-section-title{font-weight:400;margin:0;padding-top:10px;padding-bottom:10px;background:var(--footer-background);cursor:pointer;position:relative;-webkit-user-select:none;user-select:none;z-index:2;color:inherit}.footer .footer-directory-column-section-title:hover{color:var(--footer-text-strong)}.footer .footer-directory-column-section-title:after{content:"+";float:right;font-size:14px;font-weight:400;margin-top:-2px;margin-right:8px;transition:transform .3s ease}}.footer .footer-directory-column-section-list{margin:0 20px 0 0;list-style:none;padding:0}@media only screen and (max-width:767px){.footer .footer-directory-column-section-list{margin:0;overflow:hidden;padding-top:5px;padding-bottom:16px;position:absolute;top:100%;left:0;width:100%;visibility:hidden;z-index:-1;transform:translateY(-100px)}}.footer .footer-directory-column-section-item{display:block;pointer-events:auto;margin-bottom:.8em}.footer .footer-directory-column-section-item:last-child{margin-bottom:0}@media only screen and (max-width:767px){.footer .footer-directory-column-section-item{margin-bottom:0}}@media only screen and (max-width:767px){.footer .footer-directory-column-section-link{padding:6px 14px;display:block}.footer .footer-directory-column-section-link:focus{outline-offset:-6px}}.footer .footer-directory-column-section-anchor{right:0;cursor:default;display:none;position:absolute;top:0;width:1px;height:1px;z-index:10}.footer .footer-directory-column-section-anchor:focus{outline-offset:-6px;width:25px;height:38px}@media only screen and (max-width:767px){.footer .footer-directory-column-section-anchor{display:block}}.footer .footer-directory-column-section-anchor-close{display:none}.footer .footer-directory-column-section-anchor-label{position:absolute;clip:rect(1px,1px,1px,1px);clip-path:inset(0 0 99.9% 99.9%);overflow:hidden;height:1px;width:1px;padding:0;border:0}.footer .footer-directory-column-section-state{display:none}@media only screen and (max-width:767px){.footer .footer-directory-column-section-state:checked+.footer-directory-column-section .footer-directory-column-section-title,.footer .footer-directory-column-section-state:target+.footer-directory-column-section .footer-directory-column-section-title{color:var(--footer-text-strong)}.footer .footer-directory-column-section-state:checked+.footer-directory-column-section .footer-directory-column-section-title:after,.footer .footer-directory-column-section-state:target+.footer-directory-column-section .footer-directory-column-section-title:after{transform:rotate(45deg) scale(1.08)}.footer .footer-directory-column-section-state:checked+.footer-directory-column-section .footer-directory-column-section-list,.footer .footer-directory-column-section-state:target+.footer-directory-column-section .footer-directory-column-section-list{position:static;visibility:visible;z-index:1;transform:none;transition:transform .3s ease}.footer .footer-directory-column-section-state:checked+.footer-directory-column-section .footer-directory-column-section-anchor-open,.footer .footer-directory-column-section-state:target+.footer-directory-column-section .footer-directory-column-section-anchor-open{display:none}.footer .footer-directory-column-section-state:checked+.footer-directory-column-section .footer-directory-column-section-anchor-close,.footer .footer-directory-column-section-state:target+.footer-directory-column-section .footer-directory-column-section-anchor-close{display:block}}.footer .footer-breadcrumbs+.footer-directory{padding-top:0}.footer .footer-directory+.footer-mini{padding-top:34px;border-top:none}.footer .footer-directory+.footer-mini .footer-mini-news{margin-bottom:7px;padding-bottom:8px;border-bottom:1px solid var(--footer-border)}@media only screen and (max-width:767px){.footer .footer-directory+.footer-mini{padding-top:17px}.footer .footer-directory+.footer-mini .footer-mini-news{border-bottom:none}}.footer .footer-sosumi+.footer-mini{border-top:none}.footer .footer-mini{border-top:1px solid var(--footer-border);color:var(--footer-text);padding:17px 0 21px;padding-bottom:max(21px,env(safe-area-inset-bottom))}.footer .footer-mini:nth-child(2){border-top:none}@media only screen and (max-width:767px){.footer .footer-mini{padding-bottom:max(19px,env(safe-area-inset-bottom))}}.footer .footer-mini-news{max-height:9999px;padding-bottom:3px;display:flex;align-items:flex-end;justify-content:space-between}.footer .footer-mini-news a{color:var(--color-link)}@media only screen and (max-width:767px){.footer .footer-mini-news{display:block;padding-bottom:10px}.footer .footer-mini-news .copy{margin-bottom:12px}}.footer .footer-mini-news .content{--toggle-border-radius-outer: 12px;--toggle-border-radius-inner: 10px;--toggle-color-fill: var(--color-accent);--toggle-color-text: var(--color-link);flex-shrink:0}.footer .footer-mini-legal{position:relative;top:-3px;z-index:1}.footer .footer-mini-legal:before,.footer .footer-mini-legal:after{content:" ";display:table}.footer .footer-mini-legal:after{clear:both}@media only screen and (max-width:767px){.footer .footer-mini-legal{padding-top:12px}}.footer .footer-mini-legal-copyright,.footer .footer-mini-legal-links{margin-right:30px;float:left;margin-top:5px}@media only screen and (max-width:767px){.footer .footer-mini-legal-copyright,.footer .footer-mini-legal-links{margin-right:0;float:none}}.footer .footer-mini-legal-copyright{max-height:9999px}.footer .footer-mini-legal-links{position:relative;top:-5px;z-index:1}.footer .footer-mini-legal-link{border-right:1px solid var(--footer-border);margin-right:7px;padding-right:10px;display:inline-block;margin-top:5px;white-space:nowrap}.footer .footer-mini-legal-link:last-child{border:none;margin:0;padding:0}.footer .footer-mini-news .content .color-scheme-toggle{font-size:12px;line-height:1.33337;font-weight:400;letter-spacing:-.01em;font-family:var(--font-sans);border:1px solid var(--toggle-color-fill);border-radius:var(--toggle-border-radius-outer, 2px);display:inline-flex;padding:1px}.footer .footer-mini-news .content .color-scheme-toggle:focus{outline:none}.footer .footer-mini-news .content .color-scheme-toggle input[type=radio]{position:absolute;clip:rect(1px,1px,1px,1px);clip-path:inset(0 0 99.9% 99.9%);overflow:hidden;height:1px;width:1px;padding:0;border:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}.footer .footer-mini-news .content .color-scheme-toggle .text{box-sizing:border-box;display:inline-block;padding:1px 6px;min-width:42px;border:1px solid transparent;border-radius:var(--toggle-border-radius-inner, 2px);text-align:center;color:var(--toggle-color-text)}.footer .footer-mini-news .content .color-scheme-toggle .text:hover{cursor:pointer}.footer .footer-mini-news .content .color-scheme-toggle input[type=radio]:checked+.text{--toggle-color-text: #fff;background:var(--toggle-color-fill);border-color:var(--toggle-color-fill)}#localnav h1+*,#localnav h2+*,#localnav h3+*,#localnav h4+*,#localnav h5+*,#localnav h6+*,#localnav ol+*,#localnav p+*,#localnav ul+*,#footer h1+*,#footer h2+*,#footer h3+*,#footer h4+*,#footer h5+*,#footer h6+*,#footer ol+*,#footer p+*,#footer ul+*{margin-top:0}#localnav ol,#localnav ul,#footer ol,#footer ul{margin:0;padding-inline-start:0}.vue-recycle-scroller{position:relative}.vue-recycle-scroller.direction-vertical:not(.page-mode){overflow-y:auto}.vue-recycle-scroller.direction-horizontal:not(.page-mode){overflow-x:auto}.vue-recycle-scroller.direction-horizontal{display:flex}.vue-recycle-scroller__slot{flex:auto 0 0}.vue-recycle-scroller__item-wrapper{flex:1;box-sizing:border-box;overflow:hidden;position:relative}.vue-recycle-scroller.ready .vue-recycle-scroller__item-view{position:absolute;top:0;left:0;will-change:transform}.vue-recycle-scroller.direction-vertical .vue-recycle-scroller__item-wrapper{width:100%}.vue-recycle-scroller.direction-horizontal .vue-recycle-scroller__item-wrapper{height:100%}.vue-recycle-scroller.ready.direction-vertical .vue-recycle-scroller__item-view{width:100%}.vue-recycle-scroller.ready.direction-horizontal .vue-recycle-scroller__item-view{height:100%}.resize-observer[data-v-b329ee4c]{position:absolute;top:0;left:0;z-index:-1;width:100%;height:100%;border:none;background-color:transparent;pointer-events:none;display:block;overflow:hidden;opacity:0}.resize-observer[data-v-b329ee4c] object{display:block;position:absolute;top:0;left:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1}:root{--font-sans: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, Arial, sans-serif;--font-display: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, Arial, sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--content-max-width: 980px;--content-padding-inline: 22px;--content-padding-inline-compact: 16px;--r-localnav-height: 52px;--r-localnav-stacked-height: 66px;--bg-light-override: #f5f5f7;--bg-fill: #ffffff;--bg-fill-invert: #000000;--card-border-color: #d8d8d8;--color-text: #1d1d1f;--color-text-secondary: #6e6e73;--color-text-tertiary: #86868b;--color-link: #0066cc;--color-link-hover: #0071e3;--color-accent: #0071e3;--color-accent-cyan: #00a5f0;--color-fill-blue: var(--color-link);--localnav-background: rgba(250, 250, 252, .8);--localnav-background-stuck: rgba(250, 250, 252, .8);--localnav-keyline-color: rgba(0, 0, 0, .16);--localnav-link-color: rgb(0, 0, 0);--localnav-link-opacity: .8;--localnav-title-color: rgb(0, 0, 0);--localnav-title-opacity: .88;--footer-background: #f5f5f7;--footer-border: #d2d2d7;--footer-text: #6e6e73;--footer-text-strong: #1d1d1f;--footer-link: #424245;--footer-link-hover: #1d1d1f;--color-background: var(--bg-fill);--color-surface: var(--bg-light-override);color-scheme:light;--blog-atmosphere: radial-gradient( ellipse 80% 70% at 30% 35%, rgba(185, 210, 230, .75) 0%, rgba(195, 210, 225, .35) 45%, transparent 75% ), radial-gradient( ellipse 60% 60% at 80% 60%, rgba(170, 195, 220, .55) 0%, transparent 70% ), #e4ebf2;--blog-atmosphere-fg: #1d1d1f;--blog-atmosphere-fg-soft: rgba(29, 29, 31, .68);--blog-atmosphere-rule: rgba(0, 0, 0, .12);--blog-atmosphere-accent: linear-gradient( 180deg, #3f6799 0%, #22406f 100% );--inline-code-bg: #f5f5f7;--doc-sidebar-width: 320px;--color-type-icon-pink: #d82797;--color-documentation-intro-accent: #b42b36;--accent-color: var(--color-documentation-intro-accent, var(--color-type-icon-pink));--doc-hero-bg: linear-gradient( to bottom, color-mix(in srgb, var(--accent-color) 32%, var(--bg-fill)) 0%, color-mix(in srgb, var(--accent-color) 24%, var(--bg-fill)) 35%, color-mix(in srgb, var(--accent-color) 10%, var(--bg-fill)) 70%, var(--bg-fill) 100% );--doc-eyebrow-color: #6e6e73;--doc-pill-bg: rgba(0, 0, 0, .06);--doc-pill-fg: #1d1d1f;--doc-status-draft-bg: rgba(110, 110, 115, .14);--doc-status-draft-fg: #424245;--doc-status-proposed-bg: rgba(166, 106, 0, .14);--doc-status-proposed-fg: #a66a00;--doc-status-accepted-bg: rgba(30, 138, 81, .14);--doc-status-accepted-fg: #1e8a51;--doc-status-superseded-bg: rgba(204, 47, 47, .14);--doc-status-superseded-fg: #cc2f2f;--doc-priority-high-bg: #f56300;--doc-priority-medium-bg: #1f8a4a;--doc-priority-low-bg: #0066cc}.theme-dark,[data-color-scheme=dark]{--bg-light-override: #161617;--bg-fill: #000000;--bg-fill-invert: #ffffff;--card-border-color: #222222;--color-text: #f5f5f7;--color-text-secondary: #a1a1a6;--color-text-tertiary: #86868b;--color-link: #2997ff;--color-link-hover: #5cb4ff;--color-accent: #2997ff;--localnav-background: rgba(22, 22, 23, .8);--localnav-background-stuck: rgba(22, 22, 23, .8);--localnav-keyline-color: rgba(255, 255, 255, .24);--localnav-link-color: rgb(255, 255, 255);--localnav-title-color: rgb(255, 255, 255);--localnav-title-opacity: .92;--footer-background: #1d1d1f;--footer-border: #424245;--footer-text: #86868b;--footer-text-strong: #f5f5f7;--footer-link: #d2d2d7;--footer-link-hover: #f5f5f7;--color-background: var(--bg-fill);--color-surface: var(--bg-light-override);color-scheme:dark;--blog-atmosphere: radial-gradient( ellipse 80% 70% at 30% 35%, rgba(58, 90, 110, .45) 0%, rgba(20, 30, 45, .25) 45%, transparent 75% ), radial-gradient( ellipse 60% 60% at 80% 60%, rgba(40, 65, 80, .35) 0%, transparent 70% ), #0a0a0c;--blog-atmosphere-fg: #f5f5f7;--blog-atmosphere-fg-soft: rgba(255, 255, 255, .72);--blog-atmosphere-rule: rgba(255, 255, 255, .18);--blog-atmosphere-accent: linear-gradient( 180deg, #d3e4f3 0%, #7aa3ce 100% );--inline-code-bg: #2c2c2e;--doc-eyebrow-color: #a1a1a6;--doc-pill-bg: rgba(255, 255, 255, .1);--doc-pill-fg: #f5f5f7;--doc-status-draft-bg: rgba(161, 161, 166, .18);--doc-status-draft-fg: #d2d2d7;--doc-status-proposed-bg: rgba(255, 196, 0, .18);--doc-status-proposed-fg: #ffd54f;--doc-status-accepted-bg: rgba(48, 209, 88, .18);--doc-status-accepted-fg: #5cd687;--doc-status-superseded-bg: rgba(255, 99, 99, .18);--doc-status-superseded-fg: #ff8a8a;--doc-priority-high-bg: #ff7a3d;--doc-priority-medium-bg: #34a853;--doc-priority-low-bg: #2997ff}.typography-headline-super{font-family:var(--font-display);font-size:clamp(40px,5.6vw,80px);line-height:1.05;font-weight:700;letter-spacing:-.015em;color:var(--color-text)}.typography-headline-reduced{font-family:var(--font-display);font-size:clamp(28px,3.6vw,48px);line-height:1.1;font-weight:600;letter-spacing:-.003em;color:var(--color-text)}.typography-card-headline{font-family:var(--font-display);font-size:24px;line-height:1.16667;font-weight:600;letter-spacing:.009em;color:var(--color-text)}.typography-card-eyebrow,.tile-category{font-family:var(--font-sans);font-size:14px;line-height:1.33337;font-weight:700;letter-spacing:-.01em;color:var(--color-text-secondary)}.typography-body{font-family:var(--font-sans);font-size:17px;line-height:1.47059;font-weight:400;letter-spacing:-.022em;color:var(--color-text)}.typography-body-reduced{font-family:var(--font-sans);font-size:14px;line-height:1.42859;font-weight:400;letter-spacing:-.016em;color:var(--color-text-secondary)}.typography-headline{font-family:var(--font-display);font-size:48px;line-height:1.0834933333;font-weight:600;letter-spacing:-.003em;color:var(--color-text)}.typography-intro{font-family:var(--font-display);font-size:21px;line-height:1.381002381;font-weight:400;letter-spacing:.011em;color:var(--color-text)}.typography-label{font-family:var(--font-display);font-size:24px;line-height:1.1666666667;font-weight:600;letter-spacing:.009em;color:var(--color-text)}.typography-headline-hero{font-family:var(--font-display);font-size:32px;line-height:1.125;font-weight:600;letter-spacing:.004em;color:var(--color-text)}.top-bar{overflow:hidden;padding-top:20px}.top-bar__content{display:flex;justify-content:space-between;align-items:center;width:calc(100% - (max(22px,env(safe-area-inset-left))*2));height:50px;margin-inline:auto;border-bottom:1px solid var(--footer-border)}@media only screen and (min-width:735px){.top-bar__content{max-width:936px}}.top-bar__heading{font-family:var(--font-display);font-size:21px;line-height:1.19048;font-weight:600;letter-spacing:.011em;color:var(--color-text);text-decoration:none}.top-bar__heading:hover{text-decoration:none}.article-header{position:relative;padding-bottom:50px;color:var(--blog-atmosphere-fg);background:var(--blog-atmosphere)}.article-blog{margin-inline:22px;padding-top:40px;padding-bottom:40px}@media only screen and (min-width:735px){.article-blog{margin-inline:auto;padding-top:60px;padding-bottom:60px;max-width:580px}}@media only screen and (min-width:1069px){.article-blog{padding-top:60px;padding-bottom:80px;max-width:650px}}.article-blog--no-padding-bottom{padding-bottom:0}@media only screen and (min-width:735px),only screen and (min-width:1069px){.article-blog--no-padding-bottom{padding-bottom:0}}.article-blog-meta{color:inherit;font-size:14px;line-height:1.28577;font-weight:400;letter-spacing:-.016em}.article-blog-meta-date{margin-top:8px}.article-blog-meta-date time{color:inherit}.article-blog-heading{margin:24px 0 0;font-family:var(--font-display);font-size:32px;line-height:1.125;font-weight:600;letter-spacing:.004em;color:inherit}@media only screen and (min-width:735px){.article-blog-heading{font-size:40px;line-height:1.1;font-weight:600;letter-spacing:0}}@media only screen and (min-width:1069px){.article-blog-heading{font-size:48px;line-height:1.0834933333;font-weight:600;letter-spacing:-.003em}}.article-blog-author{margin-top:12px;font-size:14px;line-height:1.42859;font-weight:400;letter-spacing:-.016em;color:inherit}.article-blog-draft-badge{display:inline-block;margin-left:10px;padding:1px 8px;border-radius:10px;font-size:11px;line-height:1.4;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#a66a00;background:#ffc40038;vertical-align:2px}.article-main-container{background-color:var(--color-background);color:var(--color-text)}.article-main-container h1,.article-main-container h2,.article-main-container h3,.article-main-container h4,.article-main-container h5{color:inherit}.article-main-container a{color:var(--color-link)}.article-blog-content{font-size:17px;line-height:1.47059;font-weight:400;letter-spacing:-.022em;font-family:var(--font-sans)}.article-blog-content h2,.article-blog-content h3,.article-blog-content h4{scroll-margin-top:80px}.article-blog-content h2{margin:1.6em 0 .5em;font-family:var(--font-display);font-size:28px;line-height:1.14286;font-weight:600;letter-spacing:.007em;color:inherit}@media only screen and (min-width:735px){.article-blog-content h2{font-size:32px;line-height:1.125;letter-spacing:.004em}}@media only screen and (min-width:1069px){.article-blog-content h2{font-size:40px;line-height:1.1;letter-spacing:0}}.article-blog-content h3{margin:1.4em 0 .4em;font-family:var(--font-display);font-size:21px;line-height:1.19048;font-weight:600;letter-spacing:.011em;color:inherit}@media only screen and (min-width:735px){.article-blog-content h3{font-size:24px;line-height:1.16667;letter-spacing:.009em}}@media only screen and (min-width:1069px){.article-blog-content h3{font-size:28px;line-height:1.14286;letter-spacing:.007em}}.article-blog-content h4{margin:1.2em 0 .4em;font-family:var(--font-display);font-size:21px;line-height:1.19048;font-weight:600;letter-spacing:.011em;color:inherit}@media only screen and (min-width:1069px){.article-blog-content h4{font-size:24px;line-height:1.16667;letter-spacing:.009em}}.article-blog-content p{margin:0 0 1.2em}.article-blog-content a{color:var(--color-link);text-decoration:none}.article-blog-content a:hover{text-decoration:underline}.article-blog-content strong{font-weight:600}.article-blog-content ul,.article-blog-content ol{margin:0 0 1.2em;padding-left:1.4em}.article-blog-content ul li,.article-blog-content ol li{margin:.35em 0}.article-blog-content blockquote:not(.pullquote){margin:1.6em 0;padding:1em;background:var(--bg-light-override);border-left:2px solid var(--color-text-tertiary)}.article-blog-content blockquote+*{margin-top:.8em}.article-blog-content code{padding:2px 4px;font-family:var(--font-mono);font-size:.88em;background:var(--inline-code-bg);border-radius:3px;word-break:break-word}.article-blog-content pre{margin:1.4em 0;padding:16px 20px;border:1px solid var(--footer-border);border-radius:8px;overflow-x:auto;font-size:14px;line-height:1.5}.article-blog-content pre code{padding:0;background:transparent;border-radius:0;font-size:inherit}.article-blog-content img,.article-blog-content figure img{display:block;max-width:100%;height:auto;margin:1.4em auto;border-radius:8px}.article-blog-content figcaption{margin-top:.6em;font-size:14px;color:var(--color-text-secondary);text-align:center}.article-blog-content table{display:block;width:100%;margin:1.4em 0;overflow-x:auto}.article-blog-content table th,.article-blog-content table td{padding:10px 12px;border-bottom:1px solid var(--footer-border);text-align:left}.article-blog-content table th{font-weight:600}.article-blog-content table th:not(:empty){background:var(--bg-light-override)}.article-blog-content table th[align=right]{text-align:right}.article-blog-content table+*{margin-top:.8em}.article-blog-content hr{margin:2.4em 0;border:0;border-top:1px solid var(--footer-border)}.article-blog-content .markdown-toc{margin:1.2em 0 2em;padding:16px 20px;background:var(--bg-light-override);border-radius:8px;font-size:15px}.article-blog-content .markdown-toc ul{margin:0;padding-left:1.2em}.article-blog-content .markdown-toc a{color:var(--color-link);text-decoration:none}.article-blog-content .markdown-toc a:hover{text-decoration:underline}@media(max-width:833px){.article-blog-content .markdown-toc{display:none}}.article-toc{display:none}@media only screen and (min-width:1069px){.article-main-container{display:grid;grid-template-columns:1fr minmax(0,650px) 1fr;column-gap:40px;align-items:start}.article-main-container>.article-blog{grid-column:2;margin-inline:0;max-width:none}.article-toc{display:block;grid-column:3;justify-self:start;position:sticky;top:calc(var(--r-localnav-height, 52px) + 24px);max-height:calc(100vh - var(--r-localnav-height, 52px) - 48px);overflow-y:auto;width:100%;max-width:260px;padding-top:80px}}.article-toc-heading{margin:0 0 12px;padding-left:18px;font-family:var(--font-display);font-size:12px;line-height:1.33;font-weight:600;letter-spacing:.066em;text-transform:uppercase;color:var(--color-text-tertiary)}.article-toc nav ul{list-style:none;margin:0;padding:0 18px;border-left:1px solid var(--footer-border)}.article-toc nav li{position:relative;margin:0;padding:0}.article-toc nav li.is-h3 a{padding-left:16px;font-weight:500}.article-toc nav a{display:block;padding:2.8px 0;border-radius:4px;font-size:14px;line-height:1.4;font-weight:600;color:var(--color-text-secondary);text-decoration:none;transition:color .12s ease}.article-toc nav a:hover{color:var(--color-text)}.article-toc nav li.is-active:before{content:"";position:absolute;left:-19px;top:0;bottom:0;width:2px;background:var(--color-text)}.article-toc nav li.is-active a{color:var(--color-text);font-weight:700}.article-footer{height:80px;background:var(--color-background)}@media only screen and (min-width:735px){.article-footer{height:120px}}.doc-viewer__layout{display:block}.doc-viewer__sidebar{position:fixed;top:var(--doc-drawer-top, var(--r-localnav-height, 52px));inset-inline-start:0;inset-inline-end:0;bottom:0;background:var(--color-fill);z-index:5;transform:translate(-100%);transition:transform .15s ease-in,visibility 0s linear .15s;visibility:hidden;pointer-events:none}.doc-viewer.is-mobile-open .doc-viewer__sidebar{transform:translate(0);visibility:visible;pointer-events:auto;transition:transform .15s ease-in,visibility 0s linear 0s}.doc-viewer__mobile-backdrop{display:none}html.is-doc-drawer-open,html.is-doc-drawer-open body{overflow:hidden}@property --doc-grid-sidebar{syntax: "<length>"; inherits: true; initial-value: 320px;}@property --doc-grid-toc{syntax: "<length>"; inherits: true; initial-value: 192px;}@media only screen and (min-width:1069px){.doc-viewer__layout{--doc-grid-toc: 192px;display:grid;grid-template-columns:var(--doc-grid-sidebar) minmax(0,1fr) var(--doc-grid-toc);grid-template-rows:auto 1fr;grid-template-areas:"sidebar header header-bg" "sidebar body toc";position:relative;transition:--doc-grid-sidebar .28s cubic-bezier(.4,0,.2,1),--doc-grid-toc .28s cubic-bezier(.4,0,.2,1)}.is-resizing-sidebar .doc-viewer__layout{transition:none}.doc-viewer__sidebar{grid-area:sidebar;position:static;inset:auto;width:auto;z-index:auto;transform:none;transition:none;visibility:visible;pointer-events:auto;border-right:none;background:transparent}.doc-viewer__mobile-backdrop{display:none}.doc-viewer__header{grid-area:header}.doc-viewer__header-bg{grid-area:header-bg}.doc-viewer__body{grid-area:body}.doc-viewer__toc-rail{position:absolute;grid-row:2;grid-column:1/-1;justify-self:end;top:0;bottom:0;width:192px;height:auto}.doc-viewer__sidebar{transform:translate(0);opacity:1;transition:transform .28s cubic-bezier(.4,0,.2,1),opacity .2s ease}.doc-viewer.is-sidebar-collapsed .doc-viewer__layout{--doc-grid-sidebar: 0px;--doc-grid-toc: 0px;position:relative}.doc-viewer.is-sidebar-collapsed .doc-viewer__sidebar{transform:translate(-100%);opacity:0;pointer-events:none}}.doc-viewer__header-bg{display:none}@media only screen and (min-width:1069px){.doc-viewer__header-bg{display:block;align-self:stretch;background:var(--doc-hero-bg);height:100%}}.doc-viewer__toc-rail{display:none;background:var(--color-background)}@media only screen and (min-width:1069px){.doc-viewer__toc-rail{display:block}}.doc-topbar{display:flex;align-items:center;gap:12px;height:44px;padding:0 16px;background:var(--localnav-background);border-bottom:1px solid var(--localnav-keyline-color, var(--color-fill-gray-tertiary))}@supports (backdrop-filter: saturate(180%) blur(20px)) or (-webkit-backdrop-filter: saturate(180%) blur(20px)){.doc-topbar{-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px)}}@media only screen and (min-width:1069px){.doc-topbar{position:sticky;top:0;z-index:3}}.doc-topbar__toggle{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:0;border-radius:7px;background:transparent;color:var(--color-text-secondary);cursor:pointer;transition:background-color .12s ease,color .12s ease}.doc-topbar__toggle:hover{background:var(--color-fill-gray-quaternary);color:var(--color-text)}.doc-topbar__toggle.is-collapsed{color:var(--color-text);background:var(--color-fill-gray-tertiary)}.doc-topbar__label{font-family:var(--font-display);font-size:17px;font-weight:600;letter-spacing:-.022em;color:var(--color-text)}@media only screen and (min-width:1069px){.doc-viewer__sidebar{position:sticky;top:44px;align-self:start;height:calc(100vh - 44px);border-right:1px solid var(--color-fill-gray-tertiary);--app-height: calc(100vh + 8px) ;background:var(--color-fill)}.doc-viewer__sidebar .navigator-card{top:44px}.doc-viewer__sidebar .leaf-link:focus-visible,.doc-viewer__sidebar .leaf-link:focus{outline:none}}.navigator-card,.navigator-card *,.navigator-card *:before,.navigator-card *:after{box-sizing:content-box}html.is-resizing-sidebar,html.is-resizing-sidebar *{-webkit-user-select:none!important;user-select:none!important;cursor:col-resize!important}.doc-header{background:var(--doc-hero-bg);color:var(--color-text)}.doc-header__inner{width:100%;max-width:var(--doc-content-max-width, 820px);margin-inline:auto;padding:48px var(--doc-content-padding-x, 22px) 40px;box-sizing:border-box}@media only screen and (min-width:735px){.doc-header__inner{padding-top:56px;padding-bottom:56px}}@media only screen and (min-width:1069px){.doc-header__inner{padding-top:64px;padding-bottom:40px}}.doc-header__eyebrow{display:inline-block;font-size:16px;line-height:1.5;font-weight:400;letter-spacing:-.012em;color:var(--color-figure-gray-secondary);text-transform:none}@media only screen and (min-width:1069px){.doc-header__eyebrow{font-size:17px}}.doc-header__title{margin:6px 0 0;font-family:var(--font-display);font-size:28px;line-height:1.14286;font-weight:700;letter-spacing:.004em;color:var(--color-figure-gray)}@media only screen and (min-width:735px){.doc-header__title{font-size:32px;line-height:1.125;letter-spacing:0}}@media only screen and (min-width:1069px){.doc-header__title{font-size:40px;line-height:1.1;letter-spacing:-.003em}}.doc-header__abstract{margin:18px 0 0;font-size:19px;line-height:1.42105;font-weight:400;letter-spacing:.012em;color:var(--color-figure-gray);max-width:640px}.doc-header__meta{margin-top:26px;display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;font-size:14px;color:var(--color-figure-gray-secondary)}.doc-pill{display:inline-flex;align-items:center;padding:2px 10px;border-radius:999px;font-size:12px;font-weight:600;letter-spacing:.018em;background:var(--doc-pill-bg);color:var(--doc-pill-fg)}.doc-pill--status-draft{background:var(--doc-status-draft-bg);color:var(--doc-status-draft-fg)}.doc-pill--status-proposed{background:var(--doc-status-proposed-bg);color:var(--doc-status-proposed-fg)}.doc-pill--status-accepted{background:var(--doc-status-accepted-bg);color:var(--doc-status-accepted-fg)}.doc-pill--status-superseded{background:var(--doc-status-superseded-bg);color:var(--doc-status-superseded-fg)}.doc-badge{display:inline-block;margin-inline-start:8px;padding:2px 5px;border-radius:3px;font-size:12px;line-height:16px;font-weight:600;letter-spacing:.012em;vertical-align:middle;color:#fff;white-space:nowrap}.doc-badge--priority-high{background:var(--doc-priority-high-bg)}.doc-badge--priority-medium{background:var(--doc-priority-medium-bg)}.doc-badge--priority-low{background:var(--doc-priority-low-bg)}.doc-badge--in-nav{margin-inline-start:6px;padding:1px 4px;font-size:10px;line-height:14px;letter-spacing:.02em}.doc-meta__sep{color:var(--color-text-tertiary);-webkit-user-select:none;user-select:none}.doc-meta__owners{display:inline-flex;flex-wrap:wrap;gap:6px}.doc-meta__owner:after{content:","}.doc-meta__owner:last-child:after{content:""}:root{--doc-content-max-width: 820px;--doc-content-padding-x: 22px}@media only screen and (min-width:1069px){:root{--doc-content-padding-x: 80px}}@media only screen and (min-width:1251px){:root{--doc-content-max-width: 980px}}@media only screen and (min-width:1500px){:root{--doc-content-max-width: 1080px}}.doc-viewer__body{background:var(--color-background);color:var(--color-text);min-width:0}.doc-body__content{width:100%;max-width:var(--doc-content-max-width);margin-inline:auto;padding:40px var(--doc-content-padding-x) 64px;box-sizing:border-box}.doc-body__content>:first-child,.doc-body__content>.markdown-body>:first-child{margin-top:0}@media only screen and (min-width:1069px){.doc-body__content{padding-top:40px;padding-bottom:96px}}.doc-viewer__toc-rail .article-toc{height:100%;padding:64px 24px 64px 16px;box-sizing:border-box;position:static;max-height:none;overflow:visible}@media only screen and (min-width:1069px){.doc-viewer__toc-rail .article-toc{padding:64px 16px 64px 12px}.doc-viewer__toc-rail .article-toc nav{position:sticky;top:68px;max-height:calc(100vh - 92px);overflow-y:auto}}.doc-topics{display:flex;flex-direction:column;gap:56px}.doc-topics__group+.doc-topics__group{border-top:1px solid var(--footer-border);padding-top:40px}.doc-topics__heading{margin:0 0 8px;font-family:var(--font-display);font-size:24px;line-height:1.16667;font-weight:600;letter-spacing:.009em;color:var(--color-text)}@media only screen and (min-width:735px){.doc-topics__heading{font-size:28px;line-height:1.14286;letter-spacing:.007em}}.doc-topics__description{margin:0 0 20px;color:var(--color-text-secondary);font-size:16px;line-height:1.5;max-width:640px}.doc-topics__items{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:24px}@media only screen and (min-width:735px){.doc-topics__items{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 32px}}.doc-topics__item{margin:0}.doc-topics__item-title{display:block;font-family:var(--font-display);font-size:17px;line-height:1.41176;font-weight:600;letter-spacing:-.022em;color:var(--color-link);text-decoration:none}.doc-topics__item-title:hover{text-decoration:underline}.doc-topics__item-abstract{margin:6px 0 0;font-size:15px;line-height:1.46667;color:var(--color-text-secondary)}.doc-topics__empty{margin:0;font-style:italic;color:var(--color-text-tertiary);font-size:14px}:root{--border-radius: 12px;--badge-border-radius: 3px}.color-scheme-toggle{--toggle-border-radius-outer: 12px;--toggle-border-radius-inner: 10px }body{--color-article-background: var(--color-fill-tertiary);--color-article-body-background: var(--color-fill);--color-aside-deprecated: var(--color-figure-gray);--color-aside-experiment: var(--color-figure-gray);--color-aside-experiment-background: var(--color-fill-gray-secondary);--color-aside-experiment-border: var(--color-figure-light-gray);--color-aside-important: var(--color-figure-gray);--color-aside-important-background: var(--color-fill-gray-secondary);--color-aside-important-border: var(--color-figure-light-gray);--color-aside-note: var(--color-figure-gray);--color-aside-note-background: var(--color-fill-gray-secondary);--color-aside-tip: var(--color-figure-gray);--color-aside-tip-background: var(--color-fill-gray-secondary);--color-aside-tip-border: var(--color-figure-light-gray);--color-aside-warning: var(--color-figure-gray);--color-badge-text: #f5f5f7;--color-badge-default: var(--color-figure-gray);--color-badge-beta: var(--color-figure-gray-tertiary);--color-badge-deprecated: var(--color-figure-orange);--color-badge-dark-default: #f5f5f7;--color-badge-dark-beta: #6e6e73;--color-badge-dark-deprecated: #f56300;--color-button-background: var(--color-fill-blue);--color-button-background-active: #06c;--color-button-background-hover: var(--color-figure-blue);--color-button-text: #fff;--color-call-to-action-background: var(--color-fill-secondary);--color-changes-added: var(--color-figure-light-gray);--color-changes-added-hover: var(--color-figure-light-gray);--color-changes-deprecated: var(--color-figure-light-gray);--color-changes-deprecated-hover: var(--color-figure-light-gray);--color-changes-modified: var(--color-figure-light-gray);--color-changes-modified-hover: var(--color-figure-light-gray);--color-code-background: var(--color-fill-secondary);--color-code-collapsible-background: var(--color-fill-tertiary);--color-code-collapsible-text: var(--color-figure-gray-secondary-alt);--color-code-line-highlight: rgba(0, 102, 204, .08);--color-code-line-highlight-border: var(--color-figure-blue);--color-code-plain: var(--color-figure-gray);--color-dropdown-background: hsla(0, 0%, 100%, .8);--color-dropdown-border: #1d1d1f;--color-dropdown-option-text: #6e6e73;--color-dropdown-text: #1d1d1f;--color-dropdown-dark-background: hsla(0, 0%, 100%, .1);--color-dropdown-dark-border: hsla(240, 6%, 83%, .2);--color-dropdown-dark-option-text: #86868b;--color-dropdown-dark-text: #f5f5f7;--color-eyebrow: var(--color-figure-gray-secondary);--color-focus-border-color: var(--color-fill-blue);--color-focus-color: rgba(0, 125, 250, .6);--color-form-error: var(--color-figure-red);--color-form-error-background: var(--color-fill-red-secondary);--color-form-valid: var(--color-figure-green);--color-form-valid-background: var(--color-fill-green-secondary);--color-generic-modal-background: var(--color-fill);--color-grid: var(--color-fill-gray);--color-header-text: var(--color-figure-gray);--color-hero-eyebrow: #86868b;--color-link: var(--color-figure-blue);--color-loading-placeholder-background: var(--color-fill);--color-nav-color: #1d1d1f;--color-nav-current-link: #1d1d1f;--color-nav-expanded: #fff;--color-nav-hierarchy-collapse-background: #d2d2d7;--color-nav-hierarchy-collapse-borders: #86868b;--color-nav-hierarchy-item-borders: #86868b;--color-nav-keyline: rgba(29, 29, 31, .2);--color-nav-link-color: #1d1d1f;--color-nav-link-color-hover: #06c;--color-nav-outlines: #1d1d1f;--color-nav-rule: hsla(240, 6%, 83%, .5);--color-nav-solid-background: #fff;--color-nav-sticking-expanded-keyline: rgba(29, 29, 31, .1);--color-nav-stuck: hsla(0, 0%, 100%, .9);--color-nav-uiblur-expanded: hsla(0, 0%, 100%, .9);--color-nav-uiblur-stuck: hsla(0, 0%, 100%, .7);--color-nav-root-subhead: var(--color-tutorials-teal);--color-nav-dark-border-top-color: hsla(0, 0%, 100%, .4);--color-nav-dark-color: #f5f5f7;--color-nav-dark-current-link: #f5f5f7;--color-nav-dark-expanded: #1d1d1f;--color-nav-dark-hierarchy-collapse-background: #424245;--color-nav-dark-hierarchy-collapse-borders: #6e6e73;--color-nav-dark-hierarchy-item-borders: #424245;--color-nav-dark-keyline: rgba(66, 66, 69, .95);--color-nav-dark-link-color: #f5f5f7;--color-nav-dark-link-color-hover: #2997ff;--color-nav-dark-outlines: #f5f5f7;--color-nav-dark-rule: #f5f5f7;--color-nav-dark-solid-background: #000;--color-nav-dark-sticking-expanded-keyline: rgba(66, 66, 69, .7);--color-nav-dark-stuck: rgba(29, 29, 31, .9);--color-nav-dark-uiblur-expanded: rgba(29, 29, 31, .9);--color-nav-dark-uiblur-stuck: rgba(29, 29, 31, .7);--color-nav-dark-root-subhead: #54c4bc;--color-other-decl-button: var(--color-text-background);--color-runtime-preview-background: var(--color-fill-tertiary);--color-runtime-preview-disabled-text: hsla(240, 2%, 44%, .6);--color-runtime-preview-text: var(--color-figure-gray-secondary);--color-secondary-label: var(--color-figure-gray-secondary);--color-step-background: var(--color-fill-secondary);--color-step-caption: var(--color-figure-gray-secondary);--color-step-focused: var(--color-figure-light-gray);--color-step-text: var(--color-figure-gray-secondary);--color-svg-icon: #6e6e73;--color-syntax-addition: var(--color-figure-green);--color-syntax-attributes: #947100;--color-syntax-characters: #272ad8;--color-syntax-comments: #707f8c;--color-syntax-deletion: var(--color-figure-red);--color-syntax-documentation-markup: #506375;--color-syntax-documentation-markup-keywords: #506375;--color-syntax-heading: #ba2da2;--color-syntax-highlighted: rgba(0, 113, 227, .2);--color-syntax-keywords: #ad3da4;--color-syntax-marks: #000;--color-syntax-numbers: #272ad8;--color-syntax-other-class-names: #703daa;--color-syntax-other-constants: #4b21b0;--color-syntax-other-declarations: #047cb0;--color-syntax-other-function-and-method-names: #4b21b0;--color-syntax-other-instance-variables-and-globals: #703daa;--color-syntax-other-preprocessor-macros: #78492a;--color-syntax-other-type-names: #703daa;--color-syntax-param-internal-name: #404040;--color-syntax-plain-text: #000;--color-syntax-preprocessor-statements: #78492a;--color-syntax-project-class-names: #3e8087;--color-syntax-project-constants: #2d6469;--color-syntax-project-function-and-method-names: #2d6469;--color-syntax-project-instance-variables-and-globals: #3e8087;--color-syntax-project-preprocessor-macros: #78492a;--color-syntax-project-type-names: #3e8087;--color-syntax-strings: #d12f1b;--color-syntax-type-declarations: #03638c;--color-syntax-urls: #1337ff;--color-tabnav-item-border-color: var(--color-fill-gray);--color-text: var(--color-figure-gray);--color-text-background: var(--color-fill);--color-tutorial-assessments-background: var(--color-fill-secondary);--color-tutorial-background: var(--color-fill);--color-tutorial-navbar-dropdown-background: var(--color-fill);--color-tutorial-navbar-dropdown-border: var(--color-fill-gray);--color-tutorial-quiz-border-active: var(--color-figure-blue);--color-tutorials-overview-background: #161617;--color-tutorials-overview-content-alt: #f5f5f7;--color-tutorials-overview-eyebrow: #86868b;--color-tutorials-overview-icon: #9a9a9e;--color-tutorials-overview-link: #2997ff;--color-tutorials-overview-navigation-link: #86868b;--color-tutorials-overview-navigation-link-hover: #f5f5f7;--color-tutorial-hero-text: #f5f5f7;--color-tutorial-hero-background: #000;--color-navigator-item-hover: rgba(0, 113, 227, .05);--color-card-background: var(--color-fill);--color-card-content-text: var(--color-figure-gray);--color-card-eyebrow: var(--color-figure-gray-secondary-alt);--color-card-shadow: rgba(0, 0, 0, .04);--color-link-block-card-border: rgba(0, 0, 0, .04);--color-standard-red: #ffc2c2;--color-standard-orange: #fc9;--color-standard-yellow: #ffe0a3;--color-standard-blue: #9cf;--color-standard-green: #9cc;--color-standard-purple: #ccf;--color-standard-gray: #f5f5f7 }@media screen{body[data-color-scheme=dark]{--color-fill: #000;--color-fill-secondary: #161617;--color-fill-tertiary: #1d1d1f;--color-fill-blue: #0071e3;--color-fill-light-blue-secondary: #002a51;--color-fill-gray: #f5f5f7;--color-fill-gray-secondary: #6e6e73;--color-fill-gray-tertiary: #424245;--color-fill-gray-quaternary: #333336;--color-fill-green-secondary: #002b03;--color-fill-orange-secondary: #290d00;--color-fill-red-secondary: #300;--color-figure-blue: #2997ff;--color-figure-gray: #f5f5f7;--color-figure-gray-secondary: #86868b;--color-figure-gray-secondary-alt: #a1a1a6;--color-figure-gray-tertiary: #6e6e73;--color-figure-green: #03a10e;--color-figure-light-gray: #9a9a9e;--color-figure-orange: #f56300;--color-figure-red: #ff3037;--color-tutorials-teal: #54c4bc;--color-article-body-background: #111;--color-badge-text: #1d1d1f;--color-badge-default: var(--color-badge-dark-default);--color-button-background-active: #0071e3;--color-code-line-highlight: rgba(41, 151, 255, .08);--color-dropdown-background: var(--color-dropdown-dark-background);--color-dropdown-border: var(--color-dropdown-dark-border);--color-dropdown-option-text: var(--color-dropdown-dark-option-text);--color-dropdown-text: var(--color-dropdown-dark-text);--color-nav-color: var(--color-nav-dark-color);--color-nav-current-link: var(--color-nav-dark-current-link);--color-nav-expanded: var(--color-nav-dark-expanded);--color-nav-hierarchy-collapse-background: var(--color-nav-dark-hierarchy-collapse-background);--color-nav-hierarchy-collapse-borders: var(--color-nav-dark-hierarchy-collapse-borders);--color-nav-hierarchy-item-borders: var(--color-nav-dark-hierarchy-item-borders);--color-nav-keyline: var(--color-nav-dark-keyline);--color-nav-link-color: var(--color-nav-dark-link-color);--color-nav-link-color-hover: var(--color-nav-dark-link-color-hover);--color-nav-outlines: var(--color-nav-dark-outlines);--color-nav-rule: var(--color-nav-dark-rule);--color-nav-solid-background: var(--color-nav-dark-solid-background);--color-nav-sticking-expanded-keyline: var(--color-nav-dark-sticking-expanded-keyline);--color-nav-stuck: var(--color-nav-dark-stuck);--color-nav-uiblur-expanded: var(--color-nav-dark-uiblur-expanded);--color-nav-uiblur-stuck: var(--color-nav-dark-uiblur-stuck);--color-runtime-preview-disabled-text: hsla(240, 2%, 54%, .6);--color-syntax-attributes: #cc9768;--color-syntax-characters: #d9c97c;--color-syntax-comments: #7f8c98;--color-syntax-documentation-markup: #7f8c98;--color-syntax-documentation-markup-keywords: #a3b1bf;--color-syntax-highlighted: rgba(0, 113, 227, .6);--color-syntax-keywords: #ff7ab2;--color-syntax-marks: #fff;--color-syntax-numbers: #d9c97c;--color-syntax-other-class-names: #dabaff;--color-syntax-other-constants: #a7ebdd;--color-syntax-other-declarations: #4eb0cc;--color-syntax-other-function-and-method-names: #b281eb;--color-syntax-other-instance-variables-and-globals: #b281eb;--color-syntax-other-preprocessor-macros: #ffa14f;--color-syntax-other-type-names: #dabaff;--color-syntax-param-internal-name: #bfbfbf;--color-syntax-plain-text: #fff;--color-syntax-preprocessor-statements: #ffa14f;--color-syntax-project-class-names: #acf2e4;--color-syntax-project-constants: #78c2b3;--color-syntax-project-function-and-method-names: #78c2b3;--color-syntax-project-instance-variables-and-globals: #78c2b3;--color-syntax-project-preprocessor-macros: #ffa14f;--color-syntax-project-type-names: #acf2e4;--color-syntax-strings: #ff8170;--color-syntax-type-declarations: #6bdfff;--color-syntax-urls: #69f;--color-tutorial-background: var(--color-fill-tertiary);--color-navigator-item-hover: rgba(0, 113, 227, .5);--color-card-shadow: hsla(0, 0%, 100%, .04);--color-link-block-card-border: hsla(0, 0%, 100%, .25);--color-standard-red: #8b0000;--color-standard-orange: #8b4000;--color-standard-yellow: #8f7200;--color-standard-blue: #002d75;--color-standard-green: #023b2d;--color-standard-purple: #512b55;--color-standard-gray: #1d1d1f }}@media screen and (prefers-color-scheme:dark){body[data-color-scheme=auto]{--color-fill: #000;--color-fill-secondary: #161617;--color-fill-tertiary: #1d1d1f;--color-fill-blue: #0071e3;--color-fill-light-blue-secondary: #002a51;--color-fill-gray: #f5f5f7;--color-fill-gray-secondary: #6e6e73;--color-fill-gray-tertiary: #424245;--color-fill-gray-quaternary: #333336;--color-fill-green-secondary: #002b03;--color-fill-orange-secondary: #290d00;--color-fill-red-secondary: #300;--color-figure-blue: #2997ff;--color-figure-gray: #f5f5f7;--color-figure-gray-secondary: #86868b;--color-figure-gray-secondary-alt: #a1a1a6;--color-figure-gray-tertiary: #6e6e73;--color-figure-green: #03a10e;--color-figure-light-gray: #9a9a9e;--color-figure-orange: #f56300;--color-figure-red: #ff3037;--color-tutorials-teal: #54c4bc;--color-article-body-background: #111;--color-badge-text: #1d1d1f;--color-badge-default: var(--color-badge-dark-default);--color-button-background-active: #0071e3;--color-code-line-highlight: rgba(41, 151, 255, .08);--color-dropdown-background: var(--color-dropdown-dark-background);--color-dropdown-border: var(--color-dropdown-dark-border);--color-dropdown-option-text: var(--color-dropdown-dark-option-text);--color-dropdown-text: var(--color-dropdown-dark-text);--color-nav-color: var(--color-nav-dark-color);--color-nav-current-link: var(--color-nav-dark-current-link);--color-nav-expanded: var(--color-nav-dark-expanded);--color-nav-hierarchy-collapse-background: var(--color-nav-dark-hierarchy-collapse-background);--color-nav-hierarchy-collapse-borders: var(--color-nav-dark-hierarchy-collapse-borders);--color-nav-hierarchy-item-borders: var(--color-nav-dark-hierarchy-item-borders);--color-nav-keyline: var(--color-nav-dark-keyline);--color-nav-link-color: var(--color-nav-dark-link-color);--color-nav-link-color-hover: var(--color-nav-dark-link-color-hover);--color-nav-outlines: var(--color-nav-dark-outlines);--color-nav-rule: var(--color-nav-dark-rule);--color-nav-solid-background: var(--color-nav-dark-solid-background);--color-nav-sticking-expanded-keyline: var(--color-nav-dark-sticking-expanded-keyline);--color-nav-stuck: var(--color-nav-dark-stuck);--color-nav-uiblur-expanded: var(--color-nav-dark-uiblur-expanded);--color-nav-uiblur-stuck: var(--color-nav-dark-uiblur-stuck);--color-runtime-preview-disabled-text: hsla(240, 2%, 54%, .6);--color-syntax-attributes: #cc9768;--color-syntax-characters: #d9c97c;--color-syntax-comments: #7f8c98;--color-syntax-documentation-markup: #7f8c98;--color-syntax-documentation-markup-keywords: #a3b1bf;--color-syntax-highlighted: rgba(0, 113, 227, .6);--color-syntax-keywords: #ff7ab2;--color-syntax-marks: #fff;--color-syntax-numbers: #d9c97c;--color-syntax-other-class-names: #dabaff;--color-syntax-other-constants: #a7ebdd;--color-syntax-other-declarations: #4eb0cc;--color-syntax-other-function-and-method-names: #b281eb;--color-syntax-other-instance-variables-and-globals: #b281eb;--color-syntax-other-preprocessor-macros: #ffa14f;--color-syntax-other-type-names: #dabaff;--color-syntax-param-internal-name: #bfbfbf;--color-syntax-plain-text: #fff;--color-syntax-preprocessor-statements: #ffa14f;--color-syntax-project-class-names: #acf2e4;--color-syntax-project-constants: #78c2b3;--color-syntax-project-function-and-method-names: #78c2b3;--color-syntax-project-instance-variables-and-globals: #78c2b3;--color-syntax-project-preprocessor-macros: #ffa14f;--color-syntax-project-type-names: #acf2e4;--color-syntax-strings: #ff8170;--color-syntax-type-declarations: #6bdfff;--color-syntax-urls: #69f;--color-tutorial-background: var(--color-fill-tertiary);--color-navigator-item-hover: rgba(0, 113, 227, .5);--color-card-shadow: hsla(0, 0%, 100%, .04);--color-link-block-card-border: hsla(0, 0%, 100%, .25);--color-standard-red: #8b0000;--color-standard-orange: #8b4000;--color-standard-yellow: #8f7200;--color-standard-blue: #002d75;--color-standard-green: #023b2d;--color-standard-purple: #512b55;--color-standard-gray: #1d1d1f }}body{--color-fill: #fff;--color-fill-secondary: #fbfbfd;--color-fill-tertiary: #f5f5f7;--color-fill-quaternary: #252525;--color-fill-blue: #0071e3;--color-fill-blue-secondary: #f6fbff;--color-fill-gray: #1d1d1f;--color-fill-gray-secondary: #86868b;--color-fill-gray-tertiary: #d2d2d7;--color-fill-gray-quaternary: #e8e8ed;--color-fill-green-secondary: #f5fff6;--color-fill-light-blue-secondary: #eaf3ff;--color-fill-light-gray-secondary: #f5f5f7;--color-fill-orange-secondary: #fff9f4;--color-fill-purple-secondary: #fcf8ff;--color-fill-red-secondary: #fff2f4;--color-fill-teal-secondary: #faffff;--color-fill-yellow-secondary: #fffbf2;--color-figure-blue: rgb(0, 102, 204);--color-figure-gray: #1d1d1f;--color-figure-gray-secondary: #6e6e73;--color-figure-gray-secondary-alt: #515154;--color-figure-gray-tertiary: #86868b;--color-figure-green: #008009;--color-figure-light-blue: #4ca9ff;--color-figure-light-gray: #696969;--color-figure-orange: #bf4800;--color-figure-pink: #b0b;--color-figure-purple: #8c28c2;--color-figure-red: #e30000;--color-figure-teal: #3d777d;--color-figure-yellow: #9e6700;--color-highlight-green: #e4fee6;--color-highlight-red: #f8dddd;--color-tutorials-teal: #38a39c;--color-aside-deprecated: var(--color-figure-orange);--color-aside-deprecated-background: var(--color-fill-orange-secondary);--color-aside-deprecated-border: var(--color-figure-orange);--color-aside-experiment: var(--color-figure-purple);--color-aside-experiment-background: var(--color-fill-purple-secondary);--color-aside-experiment-border: var(--color-figure-purple);--color-aside-important: var(--color-figure-yellow);--color-aside-important-background: var(--color-fill-yellow-secondary);--color-aside-important-border: var(--color-figure-yellow);--color-aside-note: var(--color-figure-light-gray);--color-aside-note-background: var(--color-fill-light-gray-secondary);--color-aside-note-border: var(--color-figure-light-gray);--color-aside-tip: var(--color-figure-teal);--color-aside-tip-background: var(--color-fill-teal-secondary);--color-aside-tip-border: var(--color-figure-teal);--color-aside-warning: var(--color-figure-red);--color-aside-warning-background: var(--color-fill-red-secondary);--color-aside-warning-border: var(--color-figure-red);--color-badge-beta: var(--color-figure-teal);--color-badge-spi: var(--color-figure-pink);--color-badge-dark-beta: #7dffe4;--color-badge-dark-spi: #f14bf1;--color-button-background-active: var(--color-fill-blue);--color-button-background-hover: #0077ed;--color-changes-added: var(--color-figure-green);--color-changes-added-hover: var(--color-fill-green-secondary);--color-changes-deprecated: var(--color-figure-orange);--color-changes-deprecated-hover: rgba(191, 72, 0, .05);--color-changes-modified: var(--color-figure-purple);--color-changes-modified-hover: var(--color-fill-purple-secondary);--color-changes-modified-previous-background: var(--color-fill);--color-code-background: var(--color-fill-tertiary);--color-code-collapsible-background: var(--color-fill-gray-quaternary);--color-code-line-highlight: var(--color-fill-light-blue-secondary);--color-code-line-highlight-border: var(--color-figure-light-blue);--color-code-plain: #000;--color-dropdown-border: var(--color-fill-gray-tertiary);--color-eyebrow: inherit;--color-grid: var(--color-fill-gray-tertiary);--color-hero-eyebrow: inherit;--color-nav-outlines: var(--color-fill-gray-tertiary);--color-nav-dark-outlines: #424245;--color-nav-dark-solid-background: #2d2d2d;--color-not-found-input-background: var(--color-fill-secondary);--color-not-found-input-border: var(--color-fill-gray-tertiary);--color-step-caption: var(--color-fill-gray-tertiary);--color-step-focused: var(--color-figure-light-blue);--color-step-text: var(--color-figure-gray);--color-svg-icon: #86868b;--color-tabnav-item-border-color: var(--color-fill-gray-tertiary);--color-tutorial-navbar-dropdown-border: var(--color-dropdown-border);--color-tutorials-overview-background: radial-gradient(circle at center 70%, #242424 0%, #0c0c0c 100%);--color-tutorials-overview-content: #f5f5f7;--color-tutorials-overview-content-alt: #a1a1a6;--color-tutorials-overview-eyebrow: #a1a1a6;--color-tutorials-overview-icon: #a1a1a6;--color-tutorials-overview-navigation-link-active: #f5f5f7;--color-tutorials-overview-navigation-link-hover: #a1a1a6;--color-card-accent: var(--color-figure-blue);--color-navigator-item-hover: rgba(0, 113, 227, .2);--color-type-icon-orange: #947100;--color-type-icon-green: #090;--color-type-icon-blue: #272ad8;--color-type-icon-sky: #06c;--color-type-icon-pink: #d82797;--color-type-icon-teal: #509ca3;--color-type-icon-purple: #bf6af7;--color-standard-red: var(--color-type-icon-pink);--color-standard-orange: #ff5a00;--color-standard-yellow: #ff9f2c;--color-standard-blue: var(--color-type-icon-sky);--color-standard-green: var(--color-type-icon-teal);--color-standard-purple: var(--color-type-icon-purple);--color-standard-gray: #afafaf }@media screen{body[data-color-scheme=dark]{--color-fill: #000;--color-fill-secondary: rgb(22, 22, 23);--color-fill-tertiary: #1d1d1f;--color-fill-blue: #0071e3;--color-fill-blue-secondary: #001931;--color-fill-gray: #f5f5f7;--color-fill-gray-secondary: #6e6e73;--color-fill-gray-tertiary: rgb(66, 66, 69);--color-fill-gray-quaternary: #333336;--color-fill-green-secondary: #002b03;--color-fill-light-blue-secondary: #002a51;--color-fill-light-gray-secondary: #323232;--color-fill-orange-secondary: #290d00;--color-fill-purple-secondary: #190325;--color-fill-red-secondary: #300;--color-fill-teal-secondary: #002d2b;--color-fill-yellow-secondary: #2b1e00;--color-figure-blue: rgb(41, 151, 255);--color-figure-gray: #f5f5f7;--color-figure-gray-secondary: #86868b;--color-figure-gray-secondary-alt: #a1a1a6;--color-figure-gray-tertiary: #6e6e73;--color-figure-green: #03a10e;--color-figure-light-blue: #7dc1ff;--color-figure-light-gray: #9a9a9e;--color-figure-orange: #f56300;--color-figure-pink: #f14bf1;--color-figure-purple: #a95ed2;--color-figure-red: #ff3037;--color-figure-teal: #7dffe4;--color-figure-yellow: #ffb50f;--color-highlight-green: #032603;--color-highlight-red: #410606;--color-tutorials-teal: #54c4bc;--color-standard-red: var(--color-type-icon-pink);--color-standard-orange: #ff5a00;--color-standard-yellow: #ff9f2c;--color-standard-blue: var(--color-type-icon-sky);--color-standard-green: var(--color-type-icon-teal);--color-standard-purple: var(--color-type-icon-purple);--color-standard-gray: #afafaf;--color-article-body-background: var(--color-fill-secondary);--color-changes-deprecated-hover: rgba(245, 99, 0, .05);--color-code-background: var(--color-fill-gray-quaternary);--color-code-collapsible-background: var(--color-fill-tertiary);--color-code-line-highlight: var(--color-fill-gray-tertiary);--color-code-plain: #fff;--color-not-found-input-background: var(--color-fill-gray-quaternary);--color-step-background: var(--color-fill-gray-quaternary);--color-svg-icon: #6e6e73;--color-tutorial-navbar-dropdown-background: var(--color-nav-dark-solid-background);--color-tutorial-navbar-dropdown-border: var(--color-fill-gray-tertiary);--color-navigator-item-hover: rgba(0, 113, 227, .6) }}@media screen and (prefers-color-scheme:dark){body[data-color-scheme=auto]{--color-fill: #000;--color-fill-secondary: #161617;--color-fill-tertiary: #1d1d1f;--color-fill-blue: #0071e3;--color-fill-blue-secondary: #001931;--color-fill-gray: #f5f5f7;--color-fill-gray-secondary: #6e6e73;--color-fill-gray-tertiary: #424245;--color-fill-gray-quaternary: #333336;--color-fill-green-secondary: #002b03;--color-fill-light-blue-secondary: #002a51;--color-fill-light-gray-secondary: #323232;--color-fill-orange-secondary: #290d00;--color-fill-purple-secondary: #190325;--color-fill-red-secondary: #300;--color-fill-teal-secondary: #002d2b;--color-fill-yellow-secondary: #2b1e00;--color-figure-blue: #2997ff;--color-figure-gray: #f5f5f7;--color-figure-gray-secondary: #86868b;--color-figure-gray-secondary-alt: #a1a1a6;--color-figure-gray-tertiary: #6e6e73;--color-figure-green: #03a10e;--color-figure-light-blue: #7dc1ff;--color-figure-light-gray: #9a9a9e;--color-figure-orange: #f56300;--color-figure-pink: #f14bf1;--color-figure-purple: #a95ed2;--color-figure-red: #ff3037;--color-figure-teal: #7dffe4;--color-figure-yellow: #ffb50f;--color-highlight-green: #032603;--color-highlight-red: #410606;--color-tutorials-teal: #54c4bc;--color-standard-red: var(--color-type-icon-pink);--color-standard-orange: #ff5a00;--color-standard-yellow: #ff9f2c;--color-standard-blue: var(--color-type-icon-sky);--color-standard-green: var(--color-type-icon-teal);--color-standard-purple: var(--color-type-icon-purple);--color-standard-gray: #afafaf;--color-article-body-background: var(--color-fill-secondary);--color-changes-deprecated-hover: rgba(245, 99, 0, .05);--color-code-background: var(--color-fill-gray-quaternary);--color-code-collapsible-background: var(--color-fill-tertiary);--color-code-line-highlight: var(--color-fill-gray-tertiary);--color-code-plain: #fff;--color-not-found-input-background: var(--color-fill-gray-quaternary);--color-step-background: var(--color-fill-gray-quaternary);--color-svg-icon: #6e6e73;--color-tutorial-navbar-dropdown-background: var(--color-nav-dark-solid-background);--color-tutorial-navbar-dropdown-border: var(--color-fill-gray-tertiary);--color-navigator-item-hover: rgba(0, 113, 227, .6) }}html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;background-color:var(--colors-text-background, var(--color-text-background));height:100%}body,ul,ol,li,dl,dt,dd,h1,h2,h3,h4,h5,h6,hgroup,p,blockquote,figure,form,fieldset,input,legend,pre,abbr,button{margin:0;padding:0}pre,code,address,caption,th,figcaption{font-size:1em;font-weight:400;font-style:normal}fieldset,iframe,img{border:0}caption,th{text-align:start}table{border-collapse:collapse;border-spacing:0}article,aside,footer,header,nav,main,section,summary,details,hgroup,figure,figcaption{display:block}audio,canvas,video,progress{display:inline-block;vertical-align:baseline}button{background:none;border:0;box-sizing:content-box;color:inherit;cursor:pointer;font:inherit;line-height:inherit;overflow:visible;vertical-align:inherit}button:disabled{cursor:default}:focus{outline:4px solid var(--color-focus-color);outline-offset:1px}::-moz-focus-inner{border:0;padding:0}@media print{body,#app-main,#content{color:#000}a,a:link,a:visited{color:#000;text-decoration:none}.noprint,.hide{display:none}}body{height:100%;min-width:320px}html{font:var(--typography-html-font, 17px system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Helvetica", "Arial", sans-serif);quotes:"“" "”"}html:lang(ja-JP){quotes:"「" "」"}body{font-size:1rem;line-height:1.4705882353;font-weight:400;letter-spacing:-.022em;font-family:var(--typography-html-font, "SF Pro Text", system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Helvetica", "Arial", sans-serif)}:lang(zh-CN) body{font-family:SF Pro SC,SF Pro Display,SF Pro Icons,PingFang SC,system-ui,-apple-system,BlinkMacSystemFont,Helvetica Neue,Helvetica,Arial,sans-serif}:lang(ja-JP) body{font-family:SF Pro JP,SF Pro Text,SF Pro Icons,Hiragino Kaku Gothic Pro,ヒラギノ角ゴ Pro W3,メイリオ,Meiryo,ＭＳ Ｐゴシック,system-ui,-apple-system,BlinkMacSystemFont,Helvetica Neue,Helvetica,Arial,sans-serif}:lang(ko-KR) body{font-family:SF Pro KR,SF Pro Text,SF Pro Icons,Apple Gothic,HY Gulim,MalgunGothic,HY Dotum,Lexi Gulim,system-ui,-apple-system,BlinkMacSystemFont,Helvetica Neue,Helvetica,Arial,sans-serif}body{background-color:var(--color-text-background);color:var(--colors-text, var(--color-text));font-style:normal;word-wrap:break-word;--spacing-stacked-margin-small: .4em;--spacing-stacked-margin-large: .8em;--spacing-stacked-margin-xlarge: calc(var(--spacing-stacked-margin-large) * 2);--spacing-param: 1.6470588235rem;--declaration-code-listing-margin: 30px 0 0 0;--code-block-style-elements-padding: 8px 14px}body,input,textarea,select,button{font-synthesis:none;-moz-font-feature-settings:"kern";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-align:start}h1,h2,h3,h4,h5,h6{color:var(--colors-header-text, var(--color-header-text))}h1+*,h2+*,h3+*,h4+*,h5+*,h6+*{margin-top:var(--spacing-stacked-margin-large)}p+h1,ul+h1,ol+h1,p+h2,ul+h2,ol+h2,p+h3,ul+h3,ol+h3,p+h4,ul+h4,ol+h4,p+h5,ul+h5,ol+h5,p+h6,ul+h6,ol+h6{margin-top:1.6em}p+*,ul+*,ol+*{margin-top:var(--spacing-stacked-margin-large)}ul,ol{margin-inline-start:1.1764705882em}ul ul,ul ol,ol ul,ol ol{margin-top:0;margin-bottom:0}nav ul,nav ol{margin:0;list-style:none}li li{font-size:1em}a{color:var(--colors-link, var(--color-link))}a:link,a:visited{text-decoration:none}a:hover,a.inline-link{text-decoration:underline}a:active{text-decoration:none}p+a{display:inline-block}b,strong{font-weight:600}em,i,cite,dfn{font-style:italic}sup{font-size:.6em;vertical-align:top;position:relative;bottom:-.2em}h1 sup,h2 sup,h3 sup{font-size:.4em}sup a{vertical-align:inherit;color:inherit}sup a:hover{color:var(--figure-blue);text-decoration:none}sub{line-height:1}abbr{border:0}pre{overflow:auto;-webkit-overflow-scrolling:auto;white-space:pre;word-wrap:normal}code{font-family:SF Mono Light,SFMono-Regular,ui-monospace,Menlo,monospace;font-weight:inherit;letter-spacing:0}.syntax-addition{color:var(--syntax-addition, var(--color-syntax-addition))}.syntax-comment{color:var(--syntax-comment, var(--color-syntax-comments))}.syntax-quote{color:var(--syntax-quote, var(--color-syntax-comments))}.syntax-deletion{color:var(--syntax-deletion, var(--color-syntax-deletion))}.syntax-keyword{color:var(--syntax-keyword, var(--color-syntax-keywords))}.syntax-literal{color:var(--syntax-literal, var(--color-syntax-keywords))}.syntax-selector-tag{color:var(--syntax-selector-tag, var(--color-syntax-keywords))}.syntax-string{color:var(--syntax-string, var(--color-syntax-strings))}.syntax-bullet{color:var(--syntax-bullet, var(--color-syntax-characters))}.syntax-meta{color:var(--syntax-meta, var(--color-syntax-characters))}.syntax-number{color:var(--syntax-number, var(--color-syntax-characters))}.syntax-symbol{color:var(--syntax-symbol, var(--color-syntax-characters))}.syntax-tag{color:var(--syntax-tag, var(--color-syntax-characters))}.syntax-attr{color:var(--syntax-attr, var(--color-syntax-other-type-names))}.syntax-built_in{color:var(--syntax-built_in, var(--color-syntax-other-type-names))}.syntax-builtin-name{color:var(--syntax-builtin-name, var(--color-syntax-other-type-names))}.syntax-class{color:var(--syntax-class, var(--color-syntax-other-type-names))}.syntax-params{color:var(--syntax-params, var(--color-syntax-other-type-names))}.syntax-section{color:var(--syntax-section, var(--color-syntax-other-type-names))}.syntax-title{color:var(--syntax-title, var(--color-syntax-other-type-names))}.syntax-type{color:var(--syntax-type, var(--color-syntax-other-type-names))}.syntax-attribute{color:var(--syntax-attribute, var(--color-syntax-plain-text))}.syntax-identifier{color:var(--syntax-identifier, var(--color-syntax-plain-text))}.syntax-subst{color:var(--syntax-subst, var(--color-syntax-plain-text))}.syntax-doctag,.syntax-strong{font-weight:700}.syntax-emphasis,.syntax-link{font-style:italic}[data-syntax=swift] .syntax-meta{color:var(--syntax-meta, var(--color-syntax-keywords))}[data-syntax=swift] .syntax-class{color:unset}[data-syntax=swift] .syntax-params+.syntax-params,[data-syntax=swift] .syntax-keyword+.syntax-params{color:unset}[data-syntax=json] .syntax-attr{color:var(--syntax-attr, var(--color-syntax-strings))}#skip-nav:focus,#skip-nav:active{position:relative;float:left;width:fit-content;color:var(--color-figure-blue);font-size:1em;padding:0 10px;z-index:100000;top:0;left:0;height:44px;line-height:44px;clip-path:unset}#skip-nav{position:absolute;clip:rect(1px,1px,1px,1px);clip-path:inset(0px 0px 99.9% 99.9%);overflow:hidden;height:1px;width:1px;padding:0;border:0}.nav--in-breakpoint-range #skip-nav{display:none}.visuallyhidden{position:absolute;clip:rect(1px,1px,1px,1px);clip-path:inset(0px 0px 99.9% 99.9%);overflow:hidden;height:1px;width:1px;padding:0;border:0}@keyframes pulse{0%{opacity:0}33%{opacity:1}66%{opacity:1}to{opacity:0}}.changed{border:1px solid var(--color-changes-modified);border-radius:22px;position:relative}.changed.displays-multiple-lines,.displays-multiple-lines .changed{border-radius:15px}.changed:after{left:8px;background-image:url("data:image/svg+xml,%3c!--%20This%20source%20file%20is%20part%20of%20the%20Swift.org%20open%20source%20project%20Copyright%20(c)%202021%20Apple%20Inc.%20and%20the%20Swift%20project%20authors%20Licensed%20under%20Apache%20License%20v2.0%20with%20Runtime%20Library%20Exception%20See%20https://swift.org/LICENSE.txt%20for%20license%20information%20See%20https://swift.org/CONTRIBUTORS.txt%20for%20Swift%20project%20authors%20--%3e%3csvg%20xmlns='http://www.w3.org/2000/svg'%20fill='rgb(102,%20102,%20102)'%20viewBox='0%200%2020%2020'%3e%3cpath%20d='M10,0A10,10,0,1,1,0,10H0A10,10,0,0,1,10,0Zm4.477,8.705c-.129.186-.259.377-.388.57a3.817,3.817,0,0,1-.42.528,2.046,2.046,0,0,1-.5.388,1.215,1.215,0,0,1-.592.154,2.492,2.492,0,0,1-1.034-.259c-.374-.172-.757-.358-1.153-.56s-.8-.388-1.206-.56a3.073,3.073,0,0,0-1.2-.258,2.9,2.9,0,0,0-1.12.2,3.211,3.211,0,0,0-.883.539,3.553,3.553,0,0,0-.668.769c-.125.191-.235.383-.335.574l-.139.288,1.163,1.033a4.364,4.364,0,0,1,.722-1.109,1.468,1.468,0,0,1,1.144-.529,2.547,2.547,0,0,1,1.088.258q.549.259,1.12.56t1.185.56a3.259,3.259,0,0,0,1.281.259,2.465,2.465,0,0,0,1.034-.205,3.122,3.122,0,0,0,.819-.538,4.827,4.827,0,0,0,.667-.754c.134-.186.262-.379.383-.574l.177-.3Z'%20fill-rule='evenodd'/%3e%3c/svg%3e");background-repeat:no-repeat;bottom:0;content:" ";margin:auto 8px auto auto;position:absolute;top:0;width:1.1764705882rem;height:1.1764705882rem;margin-top:.6176470588rem;z-index:2}@media screen{[data-color-scheme=dark] .changed:after{background-image:url("data:image/svg+xml,%3c!--%20This%20source%20file%20is%20part%20of%20the%20Swift.org%20open%20source%20project%20Copyright%20(c)%202021%20Apple%20Inc.%20and%20the%20Swift%20project%20authors%20Licensed%20under%20Apache%20License%20v2.0%20with%20Runtime%20Library%20Exception%20See%20https://swift.org/LICENSE.txt%20for%20license%20information%20See%20https://swift.org/CONTRIBUTORS.txt%20for%20Swift%20project%20authors%20--%3e%3csvg%20xmlns='http://www.w3.org/2000/svg'%20fill='rgb(102,%20102,%20102)'%20viewBox='0%200%2020%2020'%3e%3cpath%20d='M10,0A10,10,0,1,1,0,10H0A10,10,0,0,1,10,0Zm4.477,8.705c-.129.186-.259.377-.388.57a3.817,3.817,0,0,1-.42.528,2.046,2.046,0,0,1-.5.388,1.215,1.215,0,0,1-.592.154,2.492,2.492,0,0,1-1.034-.259c-.374-.172-.757-.358-1.153-.56s-.8-.388-1.206-.56a3.073,3.073,0,0,0-1.2-.258,2.9,2.9,0,0,0-1.12.2,3.211,3.211,0,0,0-.883.539,3.553,3.553,0,0,0-.668.769c-.125.191-.235.383-.335.574l-.139.288,1.163,1.033a4.364,4.364,0,0,1,.722-1.109,1.468,1.468,0,0,1,1.144-.529,2.547,2.547,0,0,1,1.088.258q.549.259,1.12.56t1.185.56a3.259,3.259,0,0,0,1.281.259,2.465,2.465,0,0,0,1.034-.205,3.122,3.122,0,0,0,.819-.538,4.827,4.827,0,0,0,.667-.754c.134-.186.262-.379.383-.574l.177-.3Z'%20fill-rule='evenodd'/%3e%3c/svg%3e")}}@media screen and (prefers-color-scheme:dark){[data-color-scheme=auto] .changed:after{background-image:url("data:image/svg+xml,%3c!--%20This%20source%20file%20is%20part%20of%20the%20Swift.org%20open%20source%20project%20Copyright%20(c)%202021%20Apple%20Inc.%20and%20the%20Swift%20project%20authors%20Licensed%20under%20Apache%20License%20v2.0%20with%20Runtime%20Library%20Exception%20See%20https://swift.org/LICENSE.txt%20for%20license%20information%20See%20https://swift.org/CONTRIBUTORS.txt%20for%20Swift%20project%20authors%20--%3e%3csvg%20xmlns='http://www.w3.org/2000/svg'%20fill='rgb(102,%20102,%20102)'%20viewBox='0%200%2020%2020'%3e%3cpath%20d='M10,0A10,10,0,1,1,0,10H0A10,10,0,0,1,10,0Zm4.477,8.705c-.129.186-.259.377-.388.57a3.817,3.817,0,0,1-.42.528,2.046,2.046,0,0,1-.5.388,1.215,1.215,0,0,1-.592.154,2.492,2.492,0,0,1-1.034-.259c-.374-.172-.757-.358-1.153-.56s-.8-.388-1.206-.56a3.073,3.073,0,0,0-1.2-.258,2.9,2.9,0,0,0-1.12.2,3.211,3.211,0,0,0-.883.539,3.553,3.553,0,0,0-.668.769c-.125.191-.235.383-.335.574l-.139.288,1.163,1.033a4.364,4.364,0,0,1,.722-1.109,1.468,1.468,0,0,1,1.144-.529,2.547,2.547,0,0,1,1.088.258q.549.259,1.12.56t1.185.56a3.259,3.259,0,0,0,1.281.259,2.465,2.465,0,0,0,1.034-.205,3.122,3.122,0,0,0,.819-.538,4.827,4.827,0,0,0,.667-.754c.134-.186.262-.379.383-.574l.177-.3Z'%20fill-rule='evenodd'/%3e%3c/svg%3e")}}.changed-added{border-color:var(--color-changes-added)}.changed-added:after{background-image:url("data:image/svg+xml,%3c!--%20This%20source%20file%20is%20part%20of%20the%20Swift.org%20open%20source%20project%20Copyright%20(c)%202021%20Apple%20Inc.%20and%20the%20Swift%20project%20authors%20Licensed%20under%20Apache%20License%20v2.0%20with%20Runtime%20Library%20Exception%20See%20https://swift.org/LICENSE.txt%20for%20license%20information%20See%20https://swift.org/CONTRIBUTORS.txt%20for%20Swift%20project%20authors%20--%3e%3csvg%20xmlns='http://www.w3.org/2000/svg'%20fill='rgb(102,%20102,%20102)'%20viewBox='0%200%2020%2020'%3e%3cpath%20d='M17.025,2.975A9.935,9.935,0,0,0,2.846,16.9c.042.043.085.087.129.129A9.935,9.935,0,0,0,17.154,3.1C17.112,3.061,17.069,3.017,17.025,2.975ZM5.414,10.8V9.266H9.236V5.43h1.528V9.266h3.822V10.8H10.764V14.6H9.236V10.8Z'/%3e%3c/svg%3e")}@media screen{[data-color-scheme=dark] .changed-added:after{background-image:url("data:image/svg+xml,%3c!--%20This%20source%20file%20is%20part%20of%20the%20Swift.org%20open%20source%20project%20Copyright%20(c)%202021%20Apple%20Inc.%20and%20the%20Swift%20project%20authors%20Licensed%20under%20Apache%20License%20v2.0%20with%20Runtime%20Library%20Exception%20See%20https://swift.org/LICENSE.txt%20for%20license%20information%20See%20https://swift.org/CONTRIBUTORS.txt%20for%20Swift%20project%20authors%20--%3e%3csvg%20xmlns='http://www.w3.org/2000/svg'%20fill='rgb(102,%20102,%20102)'%20viewBox='0%200%2020%2020'%3e%3cpath%20d='M17.025,2.975A9.935,9.935,0,0,0,2.846,16.9c.042.043.085.087.129.129A9.935,9.935,0,0,0,17.154,3.1C17.112,3.061,17.069,3.017,17.025,2.975ZM5.414,10.8V9.266H9.236V5.43h1.528V9.266h3.822V10.8H10.764V14.6H9.236V10.8Z'/%3e%3c/svg%3e")}}@media screen and (prefers-color-scheme:dark){[data-color-scheme=auto] .changed-added:after{background-image:url("data:image/svg+xml,%3c!--%20This%20source%20file%20is%20part%20of%20the%20Swift.org%20open%20source%20project%20Copyright%20(c)%202021%20Apple%20Inc.%20and%20the%20Swift%20project%20authors%20Licensed%20under%20Apache%20License%20v2.0%20with%20Runtime%20Library%20Exception%20See%20https://swift.org/LICENSE.txt%20for%20license%20information%20See%20https://swift.org/CONTRIBUTORS.txt%20for%20Swift%20project%20authors%20--%3e%3csvg%20xmlns='http://www.w3.org/2000/svg'%20fill='rgb(102,%20102,%20102)'%20viewBox='0%200%2020%2020'%3e%3cpath%20d='M17.025,2.975A9.935,9.935,0,0,0,2.846,16.9c.042.043.085.087.129.129A9.935,9.935,0,0,0,17.154,3.1C17.112,3.061,17.069,3.017,17.025,2.975ZM5.414,10.8V9.266H9.236V5.43h1.528V9.266h3.822V10.8H10.764V14.6H9.236V10.8Z'/%3e%3c/svg%3e")}}.changed-deprecated{border-color:var(--color-changes-deprecated)}.changed-deprecated:after{background-image:url("data:image/svg+xml,%3c!--%20This%20source%20file%20is%20part%20of%20the%20Swift.org%20open%20source%20project%20Copyright%20(c)%202021%20Apple%20Inc.%20and%20the%20Swift%20project%20authors%20Licensed%20under%20Apache%20License%20v2.0%20with%20Runtime%20Library%20Exception%20See%20https://swift.org/LICENSE.txt%20for%20license%20information%20See%20https://swift.org/CONTRIBUTORS.txt%20for%20Swift%20project%20authors%20--%3e%3csvg%20xmlns='http://www.w3.org/2000/svg'%20fill='rgb(102,%20102,%20102)'%20viewBox='0%200%2020%2020'%3e%3cpath%20d='M10,0A10,10,0,1,1,0,10H0A10,10,0,0,1,10,0Zm4.615,9.262H5.385V10.8h9.23Z'%20fill-rule='evenodd'/%3e%3c/svg%3e")}@media screen{[data-color-scheme=dark] .changed-deprecated:after{background-image:url("data:image/svg+xml,%3c!--%20This%20source%20file%20is%20part%20of%20the%20Swift.org%20open%20source%20project%20Copyright%20(c)%202021%20Apple%20Inc.%20and%20the%20Swift%20project%20authors%20Licensed%20under%20Apache%20License%20v2.0%20with%20Runtime%20Library%20Exception%20See%20https://swift.org/LICENSE.txt%20for%20license%20information%20See%20https://swift.org/CONTRIBUTORS.txt%20for%20Swift%20project%20authors%20--%3e%3csvg%20xmlns='http://www.w3.org/2000/svg'%20fill='rgb(102,%20102,%20102)'%20viewBox='0%200%2020%2020'%3e%3cpath%20d='M10,0A10,10,0,1,1,0,10H0A10,10,0,0,1,10,0Zm4.615,9.262H5.385V10.8h9.23Z'%20fill-rule='evenodd'/%3e%3c/svg%3e")}}@media screen and (prefers-color-scheme:dark){[data-color-scheme=auto] .changed-deprecated:after{background-image:url("data:image/svg+xml,%3c!--%20This%20source%20file%20is%20part%20of%20the%20Swift.org%20open%20source%20project%20Copyright%20(c)%202021%20Apple%20Inc.%20and%20the%20Swift%20project%20authors%20Licensed%20under%20Apache%20License%20v2.0%20with%20Runtime%20Library%20Exception%20See%20https://swift.org/LICENSE.txt%20for%20license%20information%20See%20https://swift.org/CONTRIBUTORS.txt%20for%20Swift%20project%20authors%20--%3e%3csvg%20xmlns='http://www.w3.org/2000/svg'%20fill='rgb(102,%20102,%20102)'%20viewBox='0%200%2020%2020'%3e%3cpath%20d='M10,0A10,10,0,1,1,0,10H0A10,10,0,0,1,10,0Zm4.615,9.262H5.385V10.8h9.23Z'%20fill-rule='evenodd'/%3e%3c/svg%3e")}}.link-block .changed:after,.changed.link-block:after,.changed.relationships-item:after{margin-top:10px}.change-added,.change-removed{padding:2px 0}.change-removed{background-color:var(--color-highlight-red)}.change-added{background-color:var(--color-highlight-green)}body{color-scheme:light dark}body[data-color-scheme=light]{color-scheme:light}body[data-color-scheme=dark]{color-scheme:dark}body{--color-fill: rgb(255, 255, 255);--color-fill-secondary: rgb(247, 247, 247);--color-fill-tertiary: rgb(240, 240, 240);--color-fill-quaternary: rgb(40, 40, 40);--color-fill-blue: rgb(0, 0, 255);--color-fill-light-blue-secondary: rgb(209, 209, 255);--color-fill-gray: rgb(204, 204, 204);--color-fill-gray-secondary: rgb(245, 245, 245);--color-fill-gray-tertiary: rgb(240, 240, 240);--color-fill-gray-quaternary: rgb(240, 240, 240);--color-fill-green-secondary: rgb(240, 255, 240);--color-fill-orange-secondary: rgb(255, 250, 246);--color-fill-red-secondary: rgb(255, 240, 245);--color-figure-blue: rgb(51, 102, 255);--color-figure-gray: rgb(0, 0, 0);--color-figure-gray-secondary: rgb(102, 102, 102);--color-figure-gray-secondary-alt: rgb(102, 102, 102);--color-figure-gray-tertiary: rgb(102, 102, 102);--color-figure-green: rgb(0, 128, 0);--color-figure-light-gray: rgb(102, 102, 102);--color-figure-orange: rgb(204, 51, 0);--color-figure-red: rgb(255, 0, 0);--color-tutorials-teal: rgb(0, 0, 0);--color-article-background: var(--color-fill-tertiary);--color-article-body-background: var(--color-fill);--color-aside-deprecated: var(--color-figure-gray);--color-aside-deprecated-background: var(--color-fill-orange-secondary);--color-aside-deprecated-border: var(--color-figure-orange);--color-aside-experiment: var(--color-figure-gray);--color-aside-experiment-background: var(--color-fill-gray-secondary);--color-aside-experiment-border: var(--color-figure-light-gray);--color-aside-important: var(--color-figure-gray);--color-aside-important-background: var(--color-fill-gray-secondary);--color-aside-important-border: var(--color-figure-light-gray);--color-aside-note: var(--color-figure-gray);--color-aside-note-background: var(--color-fill-gray-secondary);--color-aside-note-border: var(--color-figure-light-gray);--color-aside-tip: var(--color-figure-gray);--color-aside-tip-background: var(--color-fill-gray-secondary);--color-aside-tip-border: var(--color-figure-light-gray);--color-aside-warning: var(--color-figure-gray);--color-aside-warning-background: var(--color-fill-red-secondary);--color-aside-warning-border: var(--color-figure-red);--color-badge-text: rgb(255, 255, 255);--color-badge-default: var(--color-figure-gray);--color-badge-beta: var(--color-figure-gray-tertiary);--color-badge-deprecated: var(--color-figure-orange);--color-badge-dark-default: rgb(255, 255, 255);--color-badge-dark-beta: rgb(176, 176, 176);--color-badge-dark-deprecated: rgb(255, 102, 0);--color-button-background: var(--color-fill-blue);--color-button-background-active: rgb(51, 102, 255);--color-button-background-hover: var(--color-figure-blue);--color-button-text: rgb(255, 255, 255);--color-call-to-action-background: var(--color-fill-secondary);--color-changes-added: var(--color-figure-light-gray);--color-changes-added-hover: var(--color-figure-light-gray);--color-changes-deprecated: var(--color-figure-light-gray);--color-changes-deprecated-hover: var(--color-figure-light-gray);--color-changes-modified: var(--color-figure-light-gray);--color-changes-modified-hover: var(--color-figure-light-gray);--color-changes-modified-previous-background: var(--color-fill);--color-code-background: var(--color-fill-secondary);--color-code-collapsible-background: var(--color-fill-tertiary);--color-code-collapsible-text: var(--color-figure-gray-secondary-alt);--color-code-line-highlight: rgba(51, 102, 255, .08);--color-code-line-highlight-border: var(--color-figure-blue);--color-inline-code-background: transparent;--color-code-plain: var(--color-figure-gray);--color-dropdown-background: rgba(255, 255, 255, .8);--color-dropdown-border: rgb(204, 204, 204);--color-dropdown-option-text: rgb(102, 102, 102);--color-dropdown-text: rgb(0, 0, 0);--color-dropdown-dark-background: rgba(255, 255, 255, .1);--color-dropdown-dark-border: rgba(240, 240, 240, .2);--color-dropdown-dark-option-text: rgb(204, 204, 204);--color-dropdown-dark-text: rgb(255, 255, 255);--color-eyebrow: var(--color-figure-gray-secondary);--color-focus-border-color: var(--color-fill-blue);--color-focus-color: rgba(0, 125, 250, .6);--color-form-error: var(--color-figure-red);--color-form-error-background: var(--color-fill-red-secondary);--color-form-valid: var(--color-figure-green);--color-form-valid-background: var(--color-fill-green-secondary);--color-generic-modal-background: var(--color-fill);--color-grid: var(--color-fill-gray);--color-header-text: var(--color-figure-gray);--color-hero-eyebrow: rgb(204, 204, 204);--color-link: var(--color-figure-blue);--color-loading-placeholder-background: var(--color-fill);--color-nav-color: rgb(0, 0, 0);--color-nav-current-link: black;--color-nav-expanded: rgb(255, 255, 255);--color-nav-hierarchy-collapse-background: rgb(240, 240, 240);--color-nav-hierarchy-collapse-borders: rgb(204, 204, 204);--color-nav-hierarchy-item-borders: rgb(204, 204, 204);--color-nav-keyline: rgba(0, 0, 0, .2);--color-nav-link-color: rgb(0, 0, 0);--color-nav-link-color-hover: rgb(51, 102, 255);--color-nav-outlines: rgb(204, 204, 204);--color-nav-rule: rgba(240, 240, 240, .5);--color-nav-solid-background: rgb(255, 255, 255);--color-nav-sticking-expanded-keyline: rgba(0, 0, 0, .1);--color-nav-stuck: rgba(255, 255, 255, .9);--color-nav-uiblur-expanded: rgba(255, 255, 255, .9);--color-nav-uiblur-stuck: rgba(255, 255, 255, .7);--color-nav-root-subhead: var(--color-tutorials-teal);--color-nav-dark-border-top-color: rgba(255, 255, 255, .4);--color-nav-dark-color: rgb(255, 255, 255);--color-nav-dark-current-link: white;--color-nav-dark-expanded: rgb(42, 42, 42);--color-nav-dark-hierarchy-collapse-background: rgb(66, 66, 66);--color-nav-dark-hierarchy-collapse-borders: rgb(102, 102, 102);--color-nav-dark-hierarchy-item-borders: rgb(66, 66, 66);--color-nav-dark-keyline: rgba(66, 66, 66, .95);--color-nav-dark-link-color: rgb(255, 255, 255);--color-nav-dark-link-color-hover: rgb(0, 153, 255);--color-nav-dark-outlines: rgb(87, 87, 87);--color-nav-dark-rule: rgb(87, 87, 87);--color-nav-dark-solid-background: rgb(0, 0, 0);--color-nav-dark-sticking-expanded-keyline: rgba(66, 66, 66, .7);--color-nav-dark-stuck: rgba(42, 42, 42, .9);--color-nav-dark-uiblur-expanded: rgba(42, 42, 42, .9);--color-nav-dark-uiblur-stuck: rgba(42, 42, 42, .7);--color-nav-dark-root-subhead: rgb(255, 255, 255);--color-other-decl-button: var(--color-text-background);--color-runtime-preview-background: var(--color-fill-tertiary);--color-runtime-preview-disabled-text: rgba(102, 102, 102, .6);--color-runtime-preview-text: var(--color-figure-gray-secondary);--color-secondary-label: var(--color-figure-gray-secondary);--color-step-background: var(--color-fill-secondary);--color-step-caption: var(--color-figure-gray-secondary);--color-step-focused: var(--color-figure-light-gray);--color-step-text: var(--color-figure-gray-secondary);--color-svg-icon: rgb(102, 102, 102);--color-syntax-addition: var(--color-figure-green);--color-syntax-attributes: rgb(148, 113, 0);--color-syntax-characters: rgb(39, 42, 216);--color-syntax-comments: rgb(112, 127, 140);--color-syntax-deletion: var(--color-figure-red);--color-syntax-documentation-markup: rgb(80, 99, 117);--color-syntax-documentation-markup-keywords: rgb(80, 99, 117);--color-syntax-heading: rgb(186, 45, 162);--color-syntax-highlighted: rgba(0, 113, 227, .2);--color-syntax-keywords: rgb(173, 61, 164);--color-syntax-marks: rgb(0, 0, 0);--color-syntax-numbers: rgb(39, 42, 216);--color-syntax-other-class-names: rgb(112, 61, 170);--color-syntax-other-constants: rgb(75, 33, 176);--color-syntax-other-declarations: rgb(4, 124, 176);--color-syntax-other-function-and-method-names: rgb(75, 33, 176);--color-syntax-other-instance-variables-and-globals: rgb(112, 61, 170);--color-syntax-other-preprocessor-macros: rgb(120, 73, 42);--color-syntax-other-type-names: rgb(112, 61, 170);--color-syntax-param-internal-name: rgb(64, 64, 64);--color-syntax-plain-text: rgb(0, 0, 0);--color-syntax-preprocessor-statements: rgb(120, 73, 42);--color-syntax-project-class-names: rgb(62, 128, 135);--color-syntax-project-constants: rgb(45, 100, 105);--color-syntax-project-function-and-method-names: rgb(45, 100, 105);--color-syntax-project-instance-variables-and-globals: rgb(62, 128, 135);--color-syntax-project-preprocessor-macros: rgb(120, 73, 42);--color-syntax-project-type-names: rgb(62, 128, 135);--color-syntax-strings: rgb(209, 47, 27);--color-syntax-type-declarations: rgb(3, 99, 140);--color-syntax-urls: rgb(19, 55, 255);--color-tabnav-item-border-color: var(--color-fill-gray);--color-text: var(--color-figure-gray);--color-text-background: var(--color-fill);--color-tutorial-assessments-background: var(--color-fill-secondary);--color-tutorial-background: var(--color-fill);--color-tutorial-navbar-dropdown-background: var(--color-fill);--color-tutorial-navbar-dropdown-border: var(--color-fill-gray);--color-tutorial-quiz-border-active: var(--color-figure-blue);--color-tutorials-overview-background: rgb(22, 22, 22);--color-tutorials-overview-content: rgb(255, 255, 255);--color-tutorials-overview-content-alt: rgb(255, 255, 255);--color-tutorials-overview-eyebrow: rgb(204, 204, 204);--color-tutorials-overview-icon: rgb(176, 176, 176);--color-tutorials-overview-link: rgb(0, 153, 255);--color-tutorials-overview-navigation-link: rgb(204, 204, 204);--color-tutorials-overview-navigation-link-active: rgb(255, 255, 255);--color-tutorials-overview-navigation-link-hover: rgb(255, 255, 255);--color-tutorial-hero-text: rgb(255, 255, 255);--color-tutorial-hero-background: rgb(0, 0, 0);--color-navigator-item-hover: rgba(0, 0, 255, .05);--color-card-background: var(--color-fill);--color-card-content-text: var(--color-figure-gray);--color-card-eyebrow: var(--color-figure-gray-secondary-alt);--color-card-shadow: rgba(0, 0, 0, .04);--color-link-block-card-border: rgba(0, 0, 0, .04);--color-standard-red: #FFC2C2;--color-standard-orange: #FFCC99;--color-standard-yellow: #FFE0A3;--color-standard-blue: #99CCFF;--color-standard-green: #99CCCC;--color-standard-purple: #CCCCFF;--color-standard-gray: rgb(240, 240, 240)}@media screen{body[data-color-scheme=dark]{--color-fill: rgb(0, 0, 0);--color-fill-secondary: rgb(22, 22, 22);--color-fill-tertiary: rgb(42, 42, 42);--color-fill-blue: rgb(0, 102, 255);--color-fill-light-blue-secondary: rgb(0, 78, 196);--color-fill-gray: rgb(87, 87, 87);--color-fill-gray-secondary: rgb(34, 34, 34);--color-fill-gray-tertiary: rgb(66, 66, 66);--color-fill-gray-quaternary: rgb(66, 66, 66);--color-fill-green-secondary: rgb(0, 51, 0);--color-fill-orange-secondary: rgb(71, 36, 0);--color-fill-red-secondary: rgb(51, 0, 0);--color-figure-blue: rgb(0, 153, 255);--color-figure-gray: rgb(255, 255, 255);--color-figure-gray-secondary: rgb(204, 204, 204);--color-figure-gray-secondary-alt: rgb(176, 176, 176);--color-figure-gray-tertiary: rgb(176, 176, 176);--color-figure-green: rgb(0, 153, 0);--color-figure-light-gray: rgb(176, 176, 176);--color-figure-orange: rgb(255, 102, 0);--color-figure-red: rgb(255, 51, 51);--color-tutorials-teal: rgb(255, 255, 255);--color-article-body-background: rgb(17, 17, 17);--color-badge-text: rgb(0, 0, 0);--color-badge-default: var(--color-badge-dark-default);--color-button-background-active: rgb(0, 102, 255);--color-code-line-highlight: rgba(0, 153, 255, .08);--color-inline-code-background: transparent;--color-dropdown-background: var(--color-dropdown-dark-background);--color-dropdown-border: var(--color-dropdown-dark-border);--color-dropdown-option-text: var(--color-dropdown-dark-option-text);--color-dropdown-text: var(--color-dropdown-dark-text);--color-nav-color: var(--color-nav-dark-color);--color-nav-current-link: var(--color-nav-dark-current-link);--color-nav-expanded: var(--color-nav-dark-expanded);--color-nav-hierarchy-collapse-background: var(--color-nav-dark-hierarchy-collapse-background);--color-nav-hierarchy-collapse-borders: var(--color-nav-dark-hierarchy-collapse-borders);--color-nav-hierarchy-item-borders: var(--color-nav-dark-hierarchy-item-borders);--color-nav-keyline: var(--color-nav-dark-keyline);--color-nav-link-color: var(--color-nav-dark-link-color);--color-nav-link-color-hover: var(--color-nav-dark-link-color-hover);--color-nav-outlines: var(--color-nav-dark-outlines);--color-nav-rule: var(--color-nav-dark-rule);--color-nav-solid-background: var(--color-nav-dark-solid-background);--color-nav-sticking-expanded-keyline: var(--color-nav-dark-sticking-expanded-keyline);--color-nav-stuck: var(--color-nav-dark-stuck);--color-nav-uiblur-expanded: var(--color-nav-dark-uiblur-expanded);--color-nav-uiblur-stuck: var(--color-nav-dark-uiblur-stuck);--color-runtime-preview-disabled-text: rgba(204, 204, 204, .6);--color-syntax-attributes: rgb(204, 151, 104);--color-syntax-characters: rgb(217, 201, 124);--color-syntax-comments: rgb(127, 140, 152);--color-syntax-documentation-markup: rgb(127, 140, 152);--color-syntax-documentation-markup-keywords: rgb(163, 177, 191);--color-syntax-highlighted: rgba(0, 113, 227, .6);--color-syntax-keywords: rgb(255, 122, 178);--color-syntax-marks: rgb(255, 255, 255);--color-syntax-numbers: rgb(217, 201, 124);--color-syntax-other-class-names: rgb(218, 186, 255);--color-syntax-other-constants: rgb(167, 235, 221);--color-syntax-other-declarations: rgb(78, 176, 204);--color-syntax-other-function-and-method-names: rgb(178, 129, 235);--color-syntax-other-instance-variables-and-globals: rgb(178, 129, 235);--color-syntax-other-preprocessor-macros: rgb(255, 161, 79);--color-syntax-other-type-names: rgb(218, 186, 255);--color-syntax-param-internal-name: rgb(191, 191, 191);--color-syntax-plain-text: rgb(255, 255, 255);--color-syntax-preprocessor-statements: rgb(255, 161, 79);--color-syntax-project-class-names: rgb(172, 242, 228);--color-syntax-project-constants: rgb(120, 194, 179);--color-syntax-project-function-and-method-names: rgb(120, 194, 179);--color-syntax-project-instance-variables-and-globals: rgb(120, 194, 179);--color-syntax-project-preprocessor-macros: rgb(255, 161, 79);--color-syntax-project-type-names: rgb(172, 242, 228);--color-syntax-strings: rgb(255, 129, 112);--color-syntax-type-declarations: rgb(107, 223, 255);--color-syntax-urls: rgb(102, 153, 255);--color-tutorial-background: var(--color-fill-tertiary);--color-navigator-item-hover: rgba(0, 102, 255, .5);--color-card-shadow: rgba(255, 255, 255, .04);--color-link-block-card-border: rgba(255, 255, 255, .25);--color-standard-red: #8B0000;--color-standard-orange: #8B4000;--color-standard-yellow: #8F7200;--color-standard-blue: #002D75;--color-standard-green: #023B2D;--color-standard-purple: #512B55;--color-standard-gray: rgb(42, 42, 42)}}@media screen and (prefers-color-scheme:dark){body[data-color-scheme=auto]{--color-fill: rgb(0, 0, 0);--color-fill-secondary: rgb(22, 22, 22);--color-fill-tertiary: rgb(42, 42, 42);--color-fill-blue: rgb(0, 102, 255);--color-fill-light-blue-secondary: rgb(0, 78, 196);--color-fill-gray: rgb(87, 87, 87);--color-fill-gray-secondary: rgb(34, 34, 34);--color-fill-gray-tertiary: rgb(66, 66, 66);--color-fill-gray-quaternary: rgb(66, 66, 66);--color-fill-green-secondary: rgb(0, 51, 0);--color-fill-orange-secondary: rgb(71, 36, 0);--color-fill-red-secondary: rgb(51, 0, 0);--color-figure-blue: rgb(0, 153, 255);--color-figure-gray: rgb(255, 255, 255);--color-figure-gray-secondary: rgb(204, 204, 204);--color-figure-gray-secondary-alt: rgb(176, 176, 176);--color-figure-gray-tertiary: rgb(176, 176, 176);--color-figure-green: rgb(0, 153, 0);--color-figure-light-gray: rgb(176, 176, 176);--color-figure-orange: rgb(255, 102, 0);--color-figure-red: rgb(255, 51, 51);--color-tutorials-teal: rgb(255, 255, 255);--color-article-body-background: rgb(17, 17, 17);--color-badge-text: rgb(0, 0, 0);--color-badge-default: var(--color-badge-dark-default);--color-button-background-active: rgb(0, 102, 255);--color-code-line-highlight: rgba(0, 153, 255, .08);--color-inline-code-background: transparent;--color-dropdown-background: var(--color-dropdown-dark-background);--color-dropdown-border: var(--color-dropdown-dark-border);--color-dropdown-option-text: var(--color-dropdown-dark-option-text);--color-dropdown-text: var(--color-dropdown-dark-text);--color-nav-color: var(--color-nav-dark-color);--color-nav-current-link: var(--color-nav-dark-current-link);--color-nav-expanded: var(--color-nav-dark-expanded);--color-nav-hierarchy-collapse-background: var(--color-nav-dark-hierarchy-collapse-background);--color-nav-hierarchy-collapse-borders: var(--color-nav-dark-hierarchy-collapse-borders);--color-nav-hierarchy-item-borders: var(--color-nav-dark-hierarchy-item-borders);--color-nav-keyline: var(--color-nav-dark-keyline);--color-nav-link-color: var(--color-nav-dark-link-color);--color-nav-link-color-hover: var(--color-nav-dark-link-color-hover);--color-nav-outlines: var(--color-nav-dark-outlines);--color-nav-rule: var(--color-nav-dark-rule);--color-nav-solid-background: var(--color-nav-dark-solid-background);--color-nav-sticking-expanded-keyline: var(--color-nav-dark-sticking-expanded-keyline);--color-nav-stuck: var(--color-nav-dark-stuck);--color-nav-uiblur-expanded: var(--color-nav-dark-uiblur-expanded);--color-nav-uiblur-stuck: var(--color-nav-dark-uiblur-stuck);--color-runtime-preview-disabled-text: rgba(204, 204, 204, .6);--color-syntax-attributes: rgb(204, 151, 104);--color-syntax-characters: rgb(217, 201, 124);--color-syntax-comments: rgb(127, 140, 152);--color-syntax-documentation-markup: rgb(127, 140, 152);--color-syntax-documentation-markup-keywords: rgb(163, 177, 191);--color-syntax-highlighted: rgba(0, 113, 227, .6);--color-syntax-keywords: rgb(255, 122, 178);--color-syntax-marks: rgb(255, 255, 255);--color-syntax-numbers: rgb(217, 201, 124);--color-syntax-other-class-names: rgb(218, 186, 255);--color-syntax-other-constants: rgb(167, 235, 221);--color-syntax-other-declarations: rgb(78, 176, 204);--color-syntax-other-function-and-method-names: rgb(178, 129, 235);--color-syntax-other-instance-variables-and-globals: rgb(178, 129, 235);--color-syntax-other-preprocessor-macros: rgb(255, 161, 79);--color-syntax-other-type-names: rgb(218, 186, 255);--color-syntax-param-internal-name: rgb(191, 191, 191);--color-syntax-plain-text: rgb(255, 255, 255);--color-syntax-preprocessor-statements: rgb(255, 161, 79);--color-syntax-project-class-names: rgb(172, 242, 228);--color-syntax-project-constants: rgb(120, 194, 179);--color-syntax-project-function-and-method-names: rgb(120, 194, 179);--color-syntax-project-instance-variables-and-globals: rgb(120, 194, 179);--color-syntax-project-preprocessor-macros: rgb(255, 161, 79);--color-syntax-project-type-names: rgb(172, 242, 228);--color-syntax-strings: rgb(255, 129, 112);--color-syntax-type-declarations: rgb(107, 223, 255);--color-syntax-urls: rgb(102, 153, 255);--color-tutorial-background: var(--color-fill-tertiary);--color-navigator-item-hover: rgba(0, 102, 255, .5);--color-card-shadow: rgba(255, 255, 255, .04);--color-link-block-card-border: rgba(255, 255, 255, .25);--color-standard-red: #8B0000;--color-standard-orange: #8B4000;--color-standard-yellow: #8F7200;--color-standard-blue: #002D75;--color-standard-green: #023B2D;--color-standard-purple: #512B55;--color-standard-gray: rgb(42, 42, 42)}}#app-main{outline-style:none}:root{--app-height: 100vh}html{--scale-inline: 1}html[dir=rtl]{--scale-inline: -1}:root{--r-globalnav-height: 0px;--r-localnav-gn-height: 0px;--r-localnav-text-zoom-factor: 1}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}html.theme-dark{color-scheme:dark}body{min-height:100vh;color:var(--color-text);font-family:var(--font-sans);font-size:17px;line-height:1.47059;letter-spacing:-.022em}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.more:after,.more:before{content:none!important}.more:after{content:"›"!important;font-family:inherit!important;padding-inline-start:.24em}.blog-post.main,.guide-post.main,.platform-pathway.main,.architecture.main,.guide.main{overflow:initial}.platform-pathway section.section-hero{background:linear-gradient(to bottom,#d5e8f3,#fff)}[data-color-scheme=dark] .platform-pathway section.section-hero,.theme-dark .platform-pathway section.section-hero{background:linear-gradient(to bottom,#0b1224,#000)}[data-color-scheme=dark] .platform-pathway .bg-light,.theme-dark .platform-pathway .bg-light{background:linear-gradient(to bottom,#111,#000)}.platform-pathway .hero-wrap{width:100%}.platform-pathway .hero-wrap sf-symbol,.platform-pathway .hero-wrap .sf-symbol,.platform-pathway .hero-wrap img.svg-inline{font-size:54px;padding:25px 10px 0}@media only screen and (max-width:375px){.platform-pathway .hero-wrap sf-symbol,.platform-pathway .hero-wrap .sf-symbol,.platform-pathway .hero-wrap img.svg-inline{padding:25px 5px 0}}:where(.theme-dark,[data-color-scheme=dark]) .shiki,:where(.theme-dark,[data-color-scheme=dark]) .shiki span{color:var(--shiki-dark)!important;background-color:var(--shiki-dark-bg)!important;font-style:var(--shiki-dark-font-style)!important;font-weight:var(--shiki-dark-font-weight)!important;text-decoration:var(--shiki-dark-text-decoration)!important}.blog-index .section-content{width:calc(100% - 55px);margin-inline:auto}.blog-index .section-content.full-bleed{width:100%}@media only screen and (min-width:735px){.blog-index .section-content{width:692px}}@media only screen and (min-width:1069px){.blog-index .section-content{width:990px}}
