.c-header{position:relative;z-index:1;top:0;left:0;width:100%;height:80px;backdrop-filter:blur(4px)}.c-header>.c-constrain{height:100%}.c-header__inner{height:100%;max-width:560px;margin:0 auto;display:flex;justify-content:center;align-items:center;padding:var(--margin-lg) 0}.c-header__inner>a{color:var(--color-font);display:inline-block;padding:var(--margin-lg);font-weight:500}.c-header__inner>a:hover,.c-header__inner>a:active,.c-header__inner>a.active{color:var(--color-link)}.c-header__inner>a:hover h1,.c-header__inner>a:active h1,.c-header__inner>a.active h1{font-style:normal}.c-header__inner h1{font-style:normal;margin:0;font-family:PP Editorial New;font-size:var(--font-size-xxl);line-height:2rem;color:var(--color-font);-webkit-text-fill-color:transparent;background-clip:text;color:#fff;background-color:linear-gradient(180deg,#fff 55%,rgba(255,255,255,.65));background-image:linear-gradient(180deg,#fff 55%,#ffffffa6)}:before,:after{box-sizing:border-box}a,abbr,address,area,article,aside,audio,b,base,bdi,bdo,blockquote,body,br,button,canvas,caption,cite,code,col,colgroup,data,datalist,dd,del,details,dfn,dialog,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,head,header,hgroup,hr,html,i,iframe,img,input,ins,kbd,label,legend,li,link,main,map,mark,meta,meter,nav,noscript,object,ol,optgroup,option,output,p,param,picture,pre,progress,q,rp,rt,ruby,s,samp,script,section,select,small,source,span,strong,style,sub,summary,sup,svg,table,tbody,td,template,textarea,tfoot,th,thead,time,title,tr,track,u,ul,var,video,wbr{box-sizing:border-box;margin:0}body{-webkit-font-smoothing:antialiased}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}#root,#__next{isolation:isolate}pre,code{font-family:var(--font-family-monospace)}h1,.h1{margin-top:0;margin-bottom:1rem;font-size:var(--font-size-xxl);font-weight:600;line-height:2rem}h1.fancy,.h1.fancy{font-family:var(--font-family-heading);font-weight:500}h1.fancy-lg,.h1.fancy-lg{font-size:5.2em;font-family:var(--font-family-heading);font-weight:500;line-height:1.15em;margin-bottom:2rem;background-clip:text;-webkit-text-fill-color:transparent;background-image:radial-gradient(126% 100% at 50% 34.1%,#fff,#c77865);text-align:center}h2,.h2{margin-top:0;margin-bottom:1rem;font-size:var(--font-size-xl);font-weight:500;line-height:1.75rem;font-feature-settings:"case" 0,"cpsp" 0,"dlig" 0,"frac" 0,"dnom" 0,"numr" 0,"salt","subs" 0,"sups" 0,"tnum" 0,"zero" 0,"ss01" 0,"ss02" 0,"ss03" 0,"ss04" 0,"cv01" 0,"cv02" 0,"cv03" 0,"cv04" 0,"cv05" 0,"cv06" 0,"cv07" 0,"cv08" 0,"cv09" 0,"cv10" 0,"cv11" 0,"liga","calt","ccmp","kern"}h3,.h3{margin-top:0;margin-bottom:1rem;font-weight:600;font-size:var(--font-size-lg);line-height:1.5rem}h4,.h4{font-size:var(--font-size);font-weight:600;font-style:italic}a{text-decoration:none;color:var(--color-link)}a:hover,a:focus,a:active{text-decoration:none;color:var(--color-link-hover)}p{margin-bottom:1rem}ul,ol{padding-left:1rem;margin-bottom:1rem}ul li,ol li{margin-bottom:8px}ul li::marker,ol li::marker{color:var(--color-grey-2)}ul li>p,ol li>p{margin-bottom:0}p+ul,p+ol{margin-top:1rem}blockquote{padding-left:24px;border-left:var(--color-border-primary) solid 4px}strong,b{font-weight:600}.article-text{font-weight:400;font-size:20px}.byline{font-size:var(--font-size-sm);opacity:.85;color:var(--color-primary);text-transform:uppercase;font-weight:600;letter-spacing:.2px}hr{display:block;height:1px;margin:var(--spacer) 0;padding:0;background-color:var(--color-bg-6);border:none}code{font-size:var(--font-size-sm);font-weight:50}@font-face{font-family:PP Editorial New;src:url(/fonts/ppeditorialnewitalic.woff2) format("woff2");font-weight:100 900;font-style:italic;font-display:block}@font-face{font-family:PP Editorial New;src:url(/fonts/ppeditorialnew.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:block}@font-face{font-family:Jetbrains Mono;src:url(/fonts/jetbrains-mono.woff2);font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Jetbrains Mono;src:url(/fonts/jetbrains-mono-italic.woff2);font-weight:400;font-style:italic;font-display:swap}.container{width:var(--container-width);margin:0 auto}.row{display:flex;flex-wrap:wrap;gap:var(--grid-gap)}.col-item{flex:0 0 auto;padding:var(--grid-gap)}.col-1{width:8.33%}.col-2{width:16.66%}.col-3{width:25%}.col-4{width:33.33%}.col-5{width:41.66%}.col-6{width:50%}.col-7{width:58.33%}.col-8{width:66.66%}.col-9{width:75%}.col-10{width:83.33%}.col-11{width:91.66%}.col-12{width:100%}.col-offset-1{margin-left:8.33%}.col-offset-2{margin-left:16.66%}.col-offset-3{margin-left:25%}.col-offset-4{margin-left:33.33%}.col-offset-5{margin-left:41.66%}.col-offset-6{margin-left:50%}.col-offset-7{margin-left:58.33%}.col-offset-8{margin-left:66.66%}.col-offset-9{margin-left:75%}.col-offset-10{margin-left:83.33%}.col-offset-11{margin-left:91.66%}@media (max-width: var(--container-width)){.col-item{width:100%;margin-left:0}}.btn{position:relative;display:inline-flex;height:38px;line-height:24px;padding:7px var(--spacer-sm);justify-content:center;align-items:center;background-color:var(--color-bg-4);border:var(--color-bg-4) solid 1px;font-weight:500;cursor:pointer;user-select:none;color:var(--color-font);border-radius:var(--input-radius);transition:all .12s linear;box-shadow:inset 0 -1px 1px #00000001,inset 0 1px 1px #ffffff06,inset 0 5px 20px 1px #ffffff06,0 2px 5px #3c425714,0 1px 1px #0000001f,0 0 0 1px #00000026}.btn>.c-spinner{margin-right:var(--margin)}.btn:hover,.btn:active,.btn:focus{color:var(--color-font);outline:none;border-color:var(--color-primary);box-shadow:inset 0 -1px 1px #00000001,inset 0 1px 1px #ffffff0d,inset 0 5px 20px 1px #ffffff06,0 2px 5px #3c425714,0 1px 1px #00000013,0 0 0 2px var(--color-focus)}.btn.btn-icon{gap:var(--margin)}.btn.btn-icon>svg{margin-left:calc(var(--margin) * -1)}.btn.btn-round{border-radius:99px}.btn.btn-wide{width:100%}.btn.btn-primary{background-color:var(--color-primary);border-color:var(--color-primary);color:var(--color-font-input)}.btn.btn-success{background-color:var(--color-success);border-color:var(--color-success);color:var(--color-font-input)}.btn.btn-danger{background-color:var(--color-danger);border-color:var(--color-danger);color:var(--color-font-input)}.btn.btn-danger:hover,.btn.btn-danger:active,.btn.btn-danger:focus{box-shadow:inset 0 -1px 1px #00000001,inset 0 1px 1px #ffffff0d,inset 0 5px 20px 1px #ffffff06,0 2px 5px #3c425714,0 1px 1px #00000013,0 0 0 2px var(--color-focus-danger)}.btn[disabled]{border-color:var(--color-bg-4);border-color:transparent;pointer-events:none;box-shadow:inset 0 -1px 1px #0000,inset 0 1px 1px #fff0,inset 0 5px 20px 1px #fff0,0 2px 5px #3c425714,0 1px 1px #0000001f,0 0 0 1px #00000026}.btn[disabled]:hover,.btn[disabled]:active,.btn[disabled]:focus{border-color:transparent;box-shadow:inset 0 -1px 1px #0000,inset 0 1px 1px #fff0,inset 0 5px 20px 1px #fff0,0 2px 5px #3c425714,0 1px 1px #0000001f,0 0 0 1px #00000026}.btn.btn-lg{height:44px;padding:var(--spacer-sm)}.btn.btn-sm{height:32px;padding:var(--margin-lg);font-size:var(--font-size-sm)}.btn:disabled{opacity:.75;box-shadow:none;cursor:not-allowed}.c-input{margin-bottom:16px;font-size:var(--font-size-sm)}.c-input span[role=alert]{user-select:none;display:block;font-size:var(--font-size-sm);font-weight:500;color:var(--color-warning)}@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.c-spinner{width:16px;height:16px;font-size:12px;overflow:hidden;margin-left:-6px;border:2px solid #fff;border-bottom-color:transparent;border-radius:50%;display:inline-block;box-sizing:border-box;animation:rotation 1s linear infinite}.form-label{user-select:none;display:block;margin-bottom:8px;line-height:1;opacity:.85}.form-control{width:100%;display:block;position:relative;-webkit-appearance:none;padding:4px 8px;font-size:var(--font-size-sm);background-color:var(--color-bg-2);border:transparent solid 1px;border-radius:var(--input-radius);min-height:38px;margin-bottom:8px;color:var(--color-font);transition:var(--transition)}.form-control:focus,.form-control:active{outline:none;box-shadow:0 0 0 3px var(--color-focus);border-color:var(--color-focus)}.c-switch{position:relative;display:inline-block;width:60px;height:30px;user-select:none}.c-switch input{opacity:0;width:0;height:0}.c-switch input:focus{outline:none}.c-switch input:checked+.c-switch__slider{background-color:var(--color-primary)}.c-switch input:checked+.c-switch__slider .c-switch__toggle{transform:translate(30px);color:var(--color-primary)}.c-switch__slider{position:absolute;cursor:pointer;inset:0;background-color:var(--color-bg-1);-webkit-transition:.4s;transition:.4s;border-radius:99px}.c-switch__toggle{position:absolute;display:flex;align-items:center;justify-content:center;content:"";width:24px;height:24px;left:3px;bottom:3px;background-color:#fff;transition:.5s;color:var(--color-bg-3);border-radius:99px}.c-switch__toggle>svg{transform:scale(.6)}.c-switch.round{width:30px}.c-switch.round input:checked+.c-switch__slider .c-switch__toggle{transform:translate(0);color:var(--color-primary)}@keyframes animloader{0%{transform:scale(0);opacity:1}to{transform:scale(1);opacity:0}}[class*=shj-lang-]{white-space:pre-wrap;margin:10px 0;border-radius:10px;padding:var(--margin-lg);background:#fff;color:#112;box-shadow:0 0 5px #0001;text-shadow:none;line-height:24px;box-sizing:border-box;max-width:min(100%,100vw);border-radius:var(--border-radius)}.shj-inline{margin:0;display:inline-block;border-radius:5px}[class*=shj-lang-]::selection,[class*=shj-lang-] ::selection{background:#bdf5}[class*=shj-lang-]>div{display:flex;overflow:auto}[class*=shj-lang-]>div :last-child{flex:1;outline:none}.shj-numbers{padding-left:5px;counter-reset:line}.shj-numbers div{padding-right:5px}.shj-numbers div:before{color:#999;display:block;content:counter(line);opacity:.5;text-align:right;margin-right:5px;counter-increment:line}.shj-syn-cmnt{font-style:italic}.shj-syn-err,.shj-syn-kwd{color:#e16}.shj-syn-num,.shj-syn-class{color:#f60}.shj-numbers,.shj-syn-cmnt{color:#999}.shj-syn-insert,.shj-syn-str{color:#7d8}.shj-syn-bool{color:#3bf}.shj-syn-type,.shj-syn-oper{color:#5af}.shj-syn-section,.shj-syn-func{color:#84f}.shj-syn-deleted,.shj-syn-var{color:#f44}.shj-oneline{padding:12px 10px}.shj-lang-http.shj-oneline .shj-syn-kwd{background:#25f;color:#fff;padding:5px 7px;border-radius:5px}[class*=shj-lang-]{color:#abb2bf;background:var(--color-bg-2)}[class*=shj-lang-]:before{color:#6f9aff}.shj-syn-deleted,.shj-syn-err,.shj-syn-var{color:#e06c75}.shj-syn-section,.shj-syn-oper,.shj-syn-kwd{color:#c678dd}.shj-syn-class{color:#e5c07b}.shj-numbers,.shj-syn-cmnt{color:#76839a}.shj-syn-insert{color:#98c379}.shj-syn-type{color:#56b6c2}.shj-syn-num,.shj-syn-bool{color:#d19a66}.shj-syn-str,.shj-syn-func{color:#61afef}.shj-numbers{display:none}#nprogress{pointer-events:none}#nprogress .bar{background:var(--color-primary);position:fixed;z-index:1031;top:0;left:0;width:100%;height:2px}#nprogress .peg{display:block;position:absolute;right:0;width:100px;height:100%;box-shadow:0 0 10px var(--color-primary),0 0 5px var(--color-primary);opacity:1;-webkit-transform:rotate(3deg) translate(0px,-4px);-ms-transform:rotate(3deg) translate(0px,-4px);transform:rotate(3deg) translateY(-4px)}#nprogress .spinner{display:block;position:fixed;z-index:1031;top:15px;right:15px}#nprogress .spinner-icon{width:18px;height:18px;box-sizing:border-box;border:solid 2px transparent;border-top-color:var(--color-primary);border-left-color:var(--color-primary);border-radius:50%;-webkit-animation:nprogress-spinner .4s linear infinite;animation:nprogress-spinner .4s linear infinite}.nprogress-custom-parent{overflow:hidden;position:relative}.nprogress-custom-parent #nprogress .spinner,.nprogress-custom-parent #nprogress .bar{position:absolute}@-webkit-keyframes nprogress-spinner{0%{-webkit-transform:rotate(0deg)}to{-webkit-transform:rotate(360deg)}}@keyframes nprogress-spinner{0%{transform:rotate(0)}to{transform:rotate(360deg)}}body{--grid-gap: 10px;--container-sm-width: 720px;--container-width: 1024px;--hue-p: 209;--hue-s: 20;--hue-red: 362;--hue-orange: 36;--hue-green: 93;--color-font: hsl(var(--hue-s), 8%, 96%);--color-font-light: hsl(var(--hue-s), 12%, 89%);--color-bg-0: hsl(var(--hue-p), 0%, 0%);--color-bg-1: hsl(var(--hue-p), 3%, 6.5%);--color-bg-2: hsl(var(--hue-p), 3%, 10%);--color-bg-3: hsl(var(--hue-p), 3%, 13%);--color-bg-4: hsl(var(--hue-p), 3%, 16%);--color-bg-5: hsl(var(--hue-p), 3%, 19%);--color-bg-6: hsl(var(--hue-p), 3%, 22%);--color-bg-input: hsl(var(--hue-p), 10%, 94%);--color-font-input: hsl(var(--hue-p), 0%, 99%);--color-focus: hsl(var(--hue-p), 50%, 50%);--color-focus-danger: hsl(var(--hue-red), 50%, 40%);--color-primary: hsl(var(--hue-p), 92%, 46%);--color-primary-light: hsl(var(--hue-p), 90%, 12%);--color-warning: hsl(var(--hue-orange), 90%, 47%);--color-danger: hsl(var(--hue-red), 65%, 48%);--color-success: hsl(var(--hue-green), 54%, 47%);--color-border-2: hsl(var(--hue-p), 10%, 80%);--color-border-transparent: rgba(0, 0, 0, .05);--color-link: hsl(var(--hue-p), 95%, 52%);--color-link-hover: hsl(var(--hue-p), 90%, 65%);--font-size-xxs: .625rem;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size: 1rem;--font-size-md: 1.125rem;--font-size-lg: 1.25rem;--font-size-xl: 1.5rem;--font-size-xxl: 1.875rem;--font-size-xxxl: 2.25rem;--font-size-xxxxl: 3rem;--font-weight: 420;--font-family-heading: "PP Editorial New";--font-family: system-ui;--font-family-monospace: "Jetbrains Mono", ui-monospace, Menlo, Monaco, "Cascadia Mono", "Segoe UI Mono", "Roboto Mono", "Oxygen Mono", "Ubuntu Monospace", "Source Code Pro", "Fira Mono", "Droid Sans Mono", "Courier New", monospace;--line-height: 1.5;--font-space: 12px;--font-heading-line-height: 1.3;--input-radius: 10px;--breakpoint-sm: 720px;--border-radius-sm: 3px;--border-radius: 8px;--border-radius-lg: 16px;--border-radius-xl: 24px;--border-radius-full: 9999px;--spacer-sm: 16px;--spacer: 32px;--spacer-lg: 48px;--margin-xs: 2px;--margin-sm: 4px;--margin: 6px;--margin-lg: 12px;--transition-time-sm: 60ms;--transition-time: .12s;--transition: all 90ms ease-in-out;font-family:var(--font-family);font-size:var(--font-size);font-weight:var(--font-weight);line-height:var(--line-height);color:var(--color-font);background-color:var(--color-bg-1)}@media screen and (max-width: 576px){body{--input-radius: 6px}}body{background-color:var(--color-bg-1);overflow-x:hidden}body main{position:relative;z-index:1}body .c-header{backdrop-filter:none}body .c-page{--new-color-font:hsl(var(--hue-p), 6%, 82%)}body .c-page>p,body .c-page>ul,body .c-page>ol{margin-bottom:1.2rem;font-size:1.125rem;font-weight:450;line-height:1.4}body .c-page>p>code,body .c-page ul li>code,body .c-page ol li>code{padding:2px;border-radius:var(--border-radius-sm);background-color:var(--color-bg-2);border:var(--color-bg-4) solid 1px;font-weight:500;white-space:nowrap}body .c-page>p,body .c-page>ul,body .c-page>small{color:var(--new-color-font)}body .c-page h1{font-family:PP Editorial New;font-size:var(--font-size-xxxl);margin-top:0;padding-top:2rem;line-height:3rem}body .c-page h2{padding-top:2rem}body .c-page .c-card{margin-bottom:var(--margin-lg);max-width:600px}body .c-page>pre{background-color:transparent!important}body .c-page>code{display:block;line-height:1.2;padding:var(--margin);border-radius:var(--border-radius-sm);font-size:var(--font-size-sm);background-color:var(--color-bg-2)!important}@media screen and (max-width: 576px){body .c-page>p,body .c-page>ul{font-size:1.125rem;font-weight:450}}
