@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(../fonts/jetbrains-mono-cyrillic-ext-wght-normal.woff2) format("woff2-variations");unicode-range:u+460-52f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(../fonts/jetbrains-mono-cyrillic-wght-normal.woff2) format("woff2-variations");unicode-range:u+301,u+400-45f,u+490-491,u+4b0-4b1,u+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(../fonts/jetbrains-mono-greek-wght-normal.woff2) format("woff2-variations");unicode-range:u+370-377,u+37a-37f,u+384-38a,u+38c,u+38e-3a1,u+3a3-3ff}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(../fonts/jetbrains-mono-vietnamese-wght-normal.woff2) format("woff2-variations");unicode-range:u+102-103,u+110-111,u+128-129,u+168-169,u+1a0-1a1,u+1af-1b0,u+300-301,u+303-304,u+308-309,u+323,u+329,u+1ea0-1ef9,u+20ab}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(../fonts/jetbrains-mono-latin-ext-wght-normal.woff2) format("woff2-variations");unicode-range:u+100-2ba,u+2bd-2c5,u+2c7-2cc,u+2ce-2d7,u+2dd-2ff,u+304,u+308,u+329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(../fonts/jetbrains-mono-latin-wght-normal.woff2) format("woff2-variations");unicode-range:u+??,u+131,u+152-153,u+2bb-2bc,u+2c6,u+2da,u+2dc,u+304,u+308,u+329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:JetBrains Mono Variable;font-style:italic;font-display:swap;font-weight:100 800;src:url(../fonts/jetbrains-mono-cyrillic-ext-wght-italic.woff2) format("woff2-variations");unicode-range:u+460-52f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono Variable;font-style:italic;font-display:swap;font-weight:100 800;src:url(../fonts/jetbrains-mono-cyrillic-wght-italic.woff2) format("woff2-variations");unicode-range:u+301,u+400-45f,u+490-491,u+4b0-4b1,u+2116}@font-face{font-family:JetBrains Mono Variable;font-style:italic;font-display:swap;font-weight:100 800;src:url(../fonts/jetbrains-mono-greek-wght-italic.woff2) format("woff2-variations");unicode-range:u+370-377,u+37a-37f,u+384-38a,u+38c,u+38e-3a1,u+3a3-3ff}@font-face{font-family:JetBrains Mono Variable;font-style:italic;font-display:swap;font-weight:100 800;src:url(../fonts/jetbrains-mono-vietnamese-wght-italic.woff2) format("woff2-variations");unicode-range:u+102-103,u+110-111,u+128-129,u+168-169,u+1a0-1a1,u+1af-1b0,u+300-301,u+303-304,u+308-309,u+323,u+329,u+1ea0-1ef9,u+20ab}@font-face{font-family:JetBrains Mono Variable;font-style:italic;font-display:swap;font-weight:100 800;src:url(../fonts/jetbrains-mono-latin-ext-wght-italic.woff2) format("woff2-variations");unicode-range:u+100-2ba,u+2bd-2c5,u+2c7-2cc,u+2ce-2d7,u+2dd-2ff,u+304,u+308,u+329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:JetBrains Mono Variable;font-style:italic;font-display:swap;font-weight:100 800;src:url(../fonts/jetbrains-mono-latin-wght-italic.woff2) format("woff2-variations");unicode-range:u+??,u+131,u+152-153,u+2bb-2bc,u+2c6,u+2da,u+2dc,u+304,u+308,u+329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Pretendard Variable;font-style:normal;font-weight:45 920;font-display:swap;src:url(../fonts/PretendardVariable.woff2) format("woff2")}:root{--color-white:#fff;--color-lighter-gray:rgba(0,0,0,.05);--color-light-gray:#e6e6e6;--color-mid-gray:#ccc;--color-dark-gray:#444;--color-darker-gray:#15171a;--color-black:#000;--color-primary-text:var(--color-darker-gray);--color-secondary-text:rgba(0,0,0,.55);--color-border:rgba(0,0,0,.08);--color-dark-border:rgba(0,0,0,.55);--font-serif-alt:Georgia, Times, serif;--container-width:1320px;--container-gap:calc(clamp(24px, 1.7032rem + 1.9355vw, 48px));--grid-gap:42px}*,:after,:before{box-sizing:border-box}*{margin:0}html{font-size:62.5%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--background-color)}canvas,img,picture,svg,video{display:block;height:auto;max-width:100%}iframe{display:block}button,input,select,textarea{font:inherit}h1,h2,h3,h4,h5,h6,p{overflow-wrap:break-word}h1,h2,h3,h4,h5,h6{line-height:1.2;font-family:var(--gh-font-heading,var(--font-sans))}.gh-button,sub,sup{line-height:1}a{color:var(--color-darker-gray);text-decoration:none}a:hover{opacity:.8}.gh-button{display:inline-flex;gap:.4em;align-items:center;justify-content:center;padding:.8em 1.4em;font-size:1.5rem;font-weight:600;letter-spacing:-.004em;color:var(--color-white);cursor:pointer;background-color:var(--ghost-accent-color);border:0;border-radius:100px}.gh-button:hover{opacity:.95}.gh-canvas,.kg-width-full.kg-content-wide{--main:min(var(--content-width, 720px), 100% - var(--container-gap) * 2);--wide:minmax(0, calc(.5 * (var(--container-width, 1200px) - var(--content-width, 720px))));--full:minmax(var(--container-gap), 1fr);display:grid;grid-template-columns:[full-start] var(--full) [wide-start] var(--wide) [main-start] var(--main) [main-end] var(--wide) [wide-end] var(--full) [full-end]}.gh-canvas>*{grid-column:main}.kg-content-wide>div,.kg-width-wide{grid-column:wide}.kg-width-full{grid-column:full}.gh-content{font-size:var(--content-font-size,1.7rem);letter-spacing:-.01em}.gh-content>*+*{margin-top:calc(28px * var(--content-spacing-factor,1));margin-bottom:0}.gh-content>.kg-width-full+.kg-width-full:not(.kg-width-full.kg-card-hascaption+.kg-width-full){margin-top:0}.gh-content>[id]:not(:first-child){margin-top:calc(56px * var(--content-spacing-factor,1))}.post-template .gh-content.drop-cap>p:first-of-type:first-letter{font-size:3.1em;float:left;line-height:1;margin:0 .2em 0 -1px;font-weight:700}.gh-content>[id]+p{margin-top:calc(12px * var(--content-spacing-factor,1))}.gh-content>:is(hr,blockquote,iframe){position:relative;margin-top:calc(48px * var(--content-spacing-factor,1))!important}.gh-content>:is(hr,blockquote,iframe)+*{margin-top:calc(48px * var(--content-spacing-factor,1))!important}.gh-content h1{font-size:calc(2.2em * var(--factor,1));letter-spacing:-.02em}.gh-content h2{font-size:calc(1.6em * var(--factor,1));letter-spacing:-.02em}.gh-content h3{font-size:calc(1.3em * var(--factor,1));letter-spacing:-.017em}.gh-content a{color:var(--ghost-accent-color);text-decoration:underline}.gh-content .kg-callout-card .kg-callout-text,.gh-content .kg-toggle-card .kg-toggle-content>:is(ul,ol,p){font-size:.95em}.gh-content :is(ul,ol){padding-left:28px}.gh-content :is(li+li,li :is(ul,ol)){margin-top:8px}.gh-content ol ol li{list-style-type:lower-alpha}.gh-content ol ol ol li{list-style-type:lower-roman}.gh-content hr{width:100%;height:1px;background-color:var(--color-border);border:0}.gh-content .gh-table{overflow-x:scroll;-webkit-overflow-scrolling:touch}.gh-content .gh-table table{width:100%;font-family:var(--font-sans);font-size:1.5rem;white-space:nowrap;vertical-align:top;border-spacing:0;border-collapse:collapse}.gh-content .gh-table table th{font-size:1.2rem;font-weight:700;color:var(--color-darkgrey);text-align:left;text-transform:uppercase;letter-spacing:.2px}.gh-content .gh-table table :is(th,td),.gh-content .gh-table table td{padding:6px 12px;border-bottom:1px solid var(--color-border)}.gh-content .gh-table table :is(th,td):first-child{padding-left:0}.gh-content .gh-table table :is(th,td):last-child{padding-right:0}.gh-content pre{overflow:auto;padding:16px;font-size:1.5rem;line-height:1.5em;border-radius:6px}.gh-content :not(pre)>code,.gh-content pre{background:var(--color-lighter-gray);font-family:var(--font-mono)}.gh-content :not(pre)>code{vertical-align:baseline;padding:.15em .4em;font-weight:400;font-size:.95em;line-height:1em;border-radius:.25em}.gh-content :not(.kg-card):not(table):not([id])+:is(.kg-card,table){margin-top:calc(48px * var(--content-spacing-factor,1))}.gh-content :is(.kg-card,table)+:not(.kg-card):not(table):not([id]){margin-top:calc(48px * var(--content-spacing-factor,1))}.gh-content .kg-card.kg-width-full+:not(.kg-card):not([id]),.gh-content :not(.kg-card):not([id])+.kg-card.kg-width-full{margin-top:calc(68px * var(--content-spacing-factor,1))}.kg-image{margin-right:auto;margin-left:auto}.kg-embed-card{display:flex;flex-direction:column;align-items:center;width:100%}.gh-feature-image,.kg-gallery-image,.kg-image[width][height]{cursor:pointer}.kg-gallery-image a:hover,.kg-image-card a:hover{opacity:1!important}.kg-card.kg-toggle-card .kg-toggle-heading-text{font-size:2rem;font-weight:700}.kg-callout-card.kg-card{border-radius:.25em}.kg-callout-card-accent a,.pswp__error-msg a,figcaption a{text-decoration:underline}blockquote:not([class]){padding-left:2rem;border-left:4px solid var(--ghost-accent-color)}blockquote.kg-blockquote-alt{font-style:normal;font-weight:400;color:var(--color-secondary-text)}.kg-card.kg-button-card .kg-btn{height:unset;padding:.6em 1.2em;text-align:center;font-size:1em;line-height:1.2em}.kg-bookmark-card .kg-bookmark-container{border-radius:.25em!important}.kg-bookmark-card .kg-bookmark-container:hover{opacity:1}.kg-bookmark-card a.kg-bookmark-container,.kg-bookmark-card a.kg-bookmark-container:hover{background:var(--background-color)!important;color:var(--color-darker-gray)!important}.kg-bookmark-card .kg-bookmark-content{padding:1.15em}.kg-bookmark-card .kg-bookmark-title{font-size:.9em}.kg-bookmark-card .kg-bookmark-description{max-height:none;margin-top:.3em;font-size:.8em}.kg-bookmark-card .kg-bookmark-metadata{font-size:.8em}.kg-bookmark-card .kg-bookmark-thumbnail img{border-radius:0 .2em .2em 0}.kg-product-card.kg-card .kg-product-card-image{margin-bottom:12px}.kg-product-card.kg-card a.kg-product-card-button{height:2.8em;margin-top:12px}.kg-file-card.kg-card .kg-file-card-container{padding:.6em}.kg-file-card.kg-card .kg-file-card-contents{margin:4px 8px 6px}.kg-file-card.kg-card .kg-file-card-metadata{font-size:.9em}.kg-file-card.kg-card .kg-file-card-filesize:before{margin-right:6px;margin-left:6px}figcaption{margin-top:12px;font-size:1.4rem;text-align:center}.kg-card.kg-width-full figcaption{padding:0 16px}figcaption a{color:var(--ghost-accent-color)}.gh-comments{margin-top:48px}.pswp{position:absolute;top:0;left:0;z-index:3999999;display:none;width:100%;height:100%;overflow:hidden;touch-action:none;outline:none;backface-visibility:hidden;-webkit-text-size-adjust:100%}.pswp img{max-width:none}.pswp--animate_opacity{opacity:.001;transition:opacity 333ms cubic-bezier(.4,0,.22,1);will-change:opacity}.pswp--open{display:block}.pswp--zoom-allowed .pswp__img{cursor:zoom-in}.pswp--zoomed-in .pswp__img{cursor:grab}.pswp--dragging .pswp__img{cursor:grabbing}.pswp__bg{background-color:rgba(0,0,0,.85);opacity:0;transition:opacity 333ms cubic-bezier(.4,0,.22,1);transform:translateZ(0);backface-visibility:hidden;will-change:opacity}.pswp__bg,.pswp__scroll-wrap{position:absolute;top:0;left:0;width:100%;height:100%}.pswp__item,.pswp__scroll-wrap{overflow:hidden}.pswp__container,.pswp__zoom-wrap{position:absolute;top:0;right:0;bottom:0;left:0;touch-action:none;backface-visibility:hidden}.pswp__container,.pswp__img{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}.pswp__zoom-wrap{position:absolute;width:100%;transition:transform 333ms cubic-bezier(.4,0,.22,1);transform-origin:left top}.pswp--animated-in .pswp__bg,.pswp--animated-in .pswp__zoom-wrap{transition:none}.pswp__item{right:0;bottom:0}.pswp__img,.pswp__item{position:absolute;top:0;left:0}.pswp__img{width:auto;height:auto}.pswp__img--placeholder{backface-visibility:hidden}.pswp__img--placeholder--blank{background:var(--color-black)}.pswp--ie .pswp__img{top:0;left:0;width:100%!important;height:auto!important}.pswp__error-msg{position:absolute;top:50%;left:0;width:100%;margin-top:-8px;font-size:14px;line-height:16px;text-align:center}.pswp__error-msg,.pswp__error-msg a{color:var(--color-secondary-text)}.pswp__button{position:relative;display:block;float:right;width:44px;height:44px;padding:0;margin:0;overflow:visible;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;background:none;border:0;box-shadow:none;transition:opacity .2s}.pswp__button:focus,.pswp__button:hover{opacity:1}.pswp__button:active{outline:none;opacity:.9}.pswp__button::-moz-focus-inner{padding:0;border:0}.pswp__ui--over-close .pswp__button--close{opacity:1}.pswp__button,.pswp__button--arrow--left:before,.pswp__button--arrow--right:before{width:44px;height:44px;background:url(../images/default-skin.png) 0 0 no-repeat;background-size:264px 88px}@media(min-resolution:1.1dppx),(min-resolution:105dpi){.pswp--svg .pswp__button,.pswp--svg .pswp__button--arrow--left:before,.pswp--svg .pswp__button--arrow--right:before{background-image:url(../images/default-skin.svg)}.pswp--svg .pswp__button--arrow--left,.pswp--svg .pswp__button--arrow--right{background:none}}.pswp__button--close{background-position:0 -44px}.pswp__button--share{background-position:-44px -44px}.pswp__button--fs{display:none}.pswp--supports-fs .pswp__button--fs{display:block}.pswp--fs .pswp__button--fs{background-position:-44px 0}.pswp__button--zoom{display:none;background-position:-88px 0}.pswp--zoom-allowed .pswp__button--zoom{display:block}.pswp--zoomed-in .pswp__button--zoom{background-position:-132px 0}.pswp--touch .pswp__button--arrow--left,.pswp--touch .pswp__button--arrow--right,.pswp__caption--fake{visibility:hidden}.pswp__button--arrow--left,.pswp__button--arrow--right{position:absolute;top:50%;width:70px;height:100px;margin-top:-50px;background:none}.pswp__button--arrow--left{left:0}.pswp__button--arrow--right{right:0}.pswp__button--arrow--left:before,.pswp__button--arrow--right:before{position:absolute;top:35px;width:32px;height:30px;content:""}.pswp__button--arrow--left:before{left:6px;background-position:-138px -44px}.pswp__button--arrow--right:before{right:6px;background-position:-94px -44px}.pswp__counter{position:absolute;top:0;left:0;height:44px;padding:0 15px;font-size:11px;font-weight:700;line-height:44px;color:var(--color-white);-webkit-user-select:none;-moz-user-select:none;user-select:none}.pswp__caption{position:absolute;bottom:0;left:0;width:100%;min-height:44px}.pswp__caption__center{max-width:420px;padding:25px 15px 30px;margin:0 auto;font-size:11px;line-height:1.6;color:var(--color-white);text-align:center}.pswp__caption__center .post-caption-title{margin-bottom:7px;font-size:15px;font-weight:500;text-transform:uppercase}.pswp__caption__center .post-caption-meta-item+.post-caption-meta-item:before{padding:0 4px;content:"\02022"}.pswp__caption--empty{display:none}.pswp__preloader{position:absolute;top:0;left:50%;width:44px;height:44px;margin-left:-22px;opacity:0;transition:opacity .25s ease-out;direction:ltr;will-change:opacity}.pswp__preloader__icn{width:20px;height:20px;margin:12px}.pswp--css_animation .pswp__preloader--active,.pswp__preloader--active{opacity:1}.pswp__preloader--active .pswp__preloader__icn{background:url(../images/preloader.gif) 0 0 no-repeat}.pswp--css_animation .pswp__preloader--active .pswp__preloader__icn{animation:clockwise .5s linear infinite}.pswp--css_animation .pswp__preloader--active .pswp__preloader__donut{animation:donut-rotate 1s cubic-bezier(.4,0,.22,1) infinite}.pswp--css_animation .pswp__preloader__icn{position:absolute;top:15px;left:15px;width:14px;height:14px;margin:0;background:none;opacity:.75}.pswp--css_animation .pswp__preloader__cut{position:relative;width:7px;height:14px;overflow:hidden}.pswp--css_animation .pswp__preloader__donut{position:absolute;top:0;left:0;box-sizing:border-box;width:14px;height:14px;margin:0;background:none;border:2px solid var(--color-white);border-bottom-color:transparent;border-left-color:transparent;border-radius:50%}@media screen and (max-width:1024px){.pswp__preloader{position:relative;top:auto;left:auto;float:right;margin:0}}@keyframes clockwise{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes donut-rotate{0%{transform:rotate(0)}50%{transform:rotate(-140deg)}to{transform:rotate(0)}}.pswp__ui{z-index:1550;visibility:visible;opacity:1;-webkit-font-smoothing:auto}.pswp__top-bar{position:absolute;top:0;left:0;width:100%;height:44px}.pswp--has_mouse .pswp__button--arrow--left,.pswp--has_mouse .pswp__button--arrow--right,.pswp__caption,.pswp__top-bar{backface-visibility:hidden;transition:opacity 333ms cubic-bezier(.4,0,.22,1);will-change:opacity}.pswp--has_mouse .pswp__button--arrow--left,.pswp--has_mouse .pswp__button--arrow--right{visibility:visible}.pswp__ui--idle .pswp__button--arrow--left,.pswp__ui--idle .pswp__button--arrow--right,.pswp__ui--idle .pswp__top-bar{opacity:0}.pswp__ui--hidden .pswp__button--arrow--left,.pswp__ui--hidden .pswp__button--arrow--right,.pswp__ui--hidden .pswp__caption,.pswp__ui--hidden .pswp__top-bar{opacity:.001}.pswp__ui--one-slide .pswp__button--arrow--left,.pswp__ui--one-slide .pswp__button--arrow--right,.pswp__ui--one-slide .pswp__counter{display:none}.pswp__element--disabled{display:none!important}.pswp--minimal--dark .pswp__top-bar{background:none}.gh-meta-share{display:flex;align-items:center;justify-content:space-between;margin-top:20px}.gh-button-share{display:inline-flex;flex-shrink:0;align-items:center;border:1px solid rgba(0,0,0,.15);border-radius:999px;color:rgba(0,0,0,.85);background:transparent;cursor:pointer;transition:all .4s;white-space:nowrap}.gh-button-share:hover{border-color:rgba(0,0,0,.5)}:root{--fw-hue:250;--fw-primary:oklch(0.70 0.14 var(--fw-hue));--fw-page:oklch(0.95 0.01 var(--fw-hue));--fw-card:#fff;--fw-ink:rgba(0,0,0,.9);--fw-muted:rgba(0,0,0,.45);--fw-soft:oklch(0.95 0.025 var(--fw-hue));--fw-line:rgba(0,0,0,.1);--fw-unit:1.6rem;--fw-radius:1.6rem;--fw-prose:#374151;--fw-prose-heading:#111827;--fw-prose-quote:#111827;--fw-note:oklch(.70 .14 250);--fw-tip:oklch(.70 .14 180);--fw-important:oklch(.70 .14 310);--fw-warning:oklch(.70 .14 60);--fw-caution:oklch(.60 .20 25)}:root.fw-dark{color-scheme:dark;--fw-primary:oklch(0.75 0.14 var(--fw-hue));--fw-page:oklch(0.16 0.014 var(--fw-hue));--fw-card:oklch(0.23 0.015 var(--fw-hue));--fw-ink:hsla(0,0%,100%,.9);--fw-muted:hsla(0,0%,100%,.45);--fw-soft:oklch(0.33 0.035 var(--fw-hue));--fw-line:hsla(0,0%,100%,.1);--fw-prose:#d1d5db;--fw-prose-heading:#fff;--fw-prose-quote:#e5e7eb;--fw-note:oklch(.75 .14 250);--fw-tip:oklch(.75 .14 180);--fw-important:oklch(.75 .14 310);--fw-warning:oklch(.75 .14 60);--fw-caution:oklch(.65 .20 25)}body{--background-color:var(--fw-page);--color-primary-text:var(--fw-ink);--color-secondary-text:var(--fw-muted);--color-border:var(--fw-line);--ghost-accent-color:var(--fw-primary);--font-sans:"Pretendard Variable", "Apple SD Gothic Neo", "Malgun Gothic", sans-serif;--font-mono:"JetBrains Mono Variable", "Pretendard Variable", "Apple SD Gothic Neo", "Malgun Gothic", monospace;background:var(--fw-page);color:var(--fw-ink);font-family:var(--gh-font-body,var(--font-sans));font-size:var(--fw-unit);line-height:1.5}.fw-shell{width:100%;max-width:120rem;padding:0 var(--fw-unit);margin:0 auto}.fw-shell a{color:inherit;text-decoration:none}.fw-button,.fw-shell a:hover{color:var(--fw-primary)}.fw-shell a:focus-visible,.fw-shell button:focus-visible,.fw-shell input:focus-visible,.fw-shell select:focus-visible,.fw-toc a:focus-visible,.fw-top:focus-visible{outline:2px solid var(--fw-primary);outline-offset:3px}.fw-shell button,.fw-shell select,.fw-top{font:inherit;cursor:pointer}.fw-button{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-width:calc(var(--fw-unit) * 2.75);min-height:calc(var(--fw-unit) * 2.75);padding:.6rem 1.2rem;border:0;border-radius:.8rem;background:var(--fw-soft);line-height:1.2}.fw-button svg{width:2rem;height:2rem}.fw-card,.fw-panel{border-radius:var(--fw-radius);background:var(--fw-card)}.fw-nav{position:relative;z-index:20;gap:var(--fw-unit);height:calc(var(--fw-unit) * 4.5);padding:0 calc(var(--fw-unit) * 1.5);border-radius:0 0 var(--fw-radius) var(--fw-radius);background:var(--fw-card)}.fw-brand,.fw-menu .nav,.fw-nav{display:flex;align-items:center}.fw-brand{gap:.8rem;max-width:40%;font-size:calc(var(--fw-unit) * 1.25);font-weight:700;overflow-wrap:anywhere;color:var(--fw-primary)!important}.fw-brand img{max-height:4rem;max-width:100%;-o-object-fit:contain;object-fit:contain}.fw-menu{margin:auto;min-width:0}.fw-menu .nav{flex-wrap:wrap;justify-content:center;gap:.4rem;padding:0;margin:0;list-style:none}.fw-menu a{display:block;padding:.8rem 1.2rem;border-radius:.8rem;font-weight:700}.fw-menu a:focus-visible,.fw-menu a:hover{background:var(--fw-soft);color:var(--fw-primary)}.fw-tools{display:flex;gap:.4rem;margin-left:auto;flex-shrink:0}.fw-tools .fw-button{background:transparent;padding:.8rem}.fw-menu-toggle{display:none}.fw-grid{display:grid;grid-template-columns:28rem minmax(0,1fr);gap:var(--fw-unit);align-items:start;margin-top:var(--fw-unit)}.fw-main-column{grid-column:2;grid-row:1;min-width:0}.fw-main{min-width:0}.fw-sidebar{grid-column:1;grid-row:1/span 2;align-self:stretch;min-width:0}.fw-profile{margin-bottom:var(--fw-unit);text-align:center}.fw-avatar{width:100%;aspect-ratio:1;border-radius:1.2rem;-o-object-fit:cover;object-fit:cover;margin-bottom:1.2rem}.fw-card h2,.fw-profile h2,.fw-widget h2{font-weight:700}.fw-profile-mark{display:block;background:var(--fw-primary);border-radius:.4rem}.fw-archive a,.fw-article-header h1,.fw-card h2,.fw-card-excerpt,.fw-content,.fw-meta-tags,.fw-profile p{overflow-wrap:anywhere}.fw-profile-links{display:flex;flex-wrap:wrap;justify-content:center}.fw-widgets{position:sticky;top:var(--fw-unit);padding-bottom:var(--fw-unit)}.fw-widget{margin-bottom:var(--fw-unit)}.fw-widget h2{position:relative;padding-left:var(--fw-unit);margin-bottom:1.2rem;font-size:calc(var(--fw-unit) * 1.125)}.fw-article-header h1:before,.fw-card h2:before,.fw-widget h2:before{content:"";position:absolute;width:.4rem;height:2rem;border-radius:.4rem;background:var(--fw-primary);left:0;top:.5em}.fw-tags{display:flex;flex-wrap:wrap;gap:.6rem}.fw-tags a{padding:.4rem .8rem;border-radius:.6rem;background:var(--fw-soft);color:var(--fw-primary)}.fw-tags.fw-collapsed{max-height:10rem}.fw-expand{margin:1rem auto 0}.fw-feed{display:grid;gap:var(--fw-unit)}.fw-card{position:relative;display:flex;min-width:0;overflow:hidden}.fw-card-body{min-width:0;flex:1;padding:calc(var(--fw-unit) * 1.75) calc(var(--fw-unit) * 4.5) calc(var(--fw-unit) * 1.5) calc(var(--fw-unit) * 2.25)}.fw-card h2{position:relative;margin:0 0 1.2rem;font-size:calc(var(--fw-unit) * 1.875);line-height:1.2;letter-spacing:0}.fw-card h2:before{left:calc(var(--fw-unit) * -1.125)}.fw-meta{display:flex;align-items:center;flex-wrap:wrap;color:var(--fw-muted);font-size:calc(var(--fw-unit) * .875)}.fw-meta>*+:before{padding-right:.8rem;color:var(--fw-line)}.fw-meta svg{width:1.6rem;height:1.6rem}.fw-card-excerpt{margin:1.4rem 0;color:var(--fw-ink);opacity:.8}.fw-muted,.fw-reading{color:var(--fw-muted)}.fw-reading{font-size:calc(var(--fw-unit) * .875)}.fw-card-cover{position:absolute;top:1.2rem;bottom:1.2rem;right:1.2rem;width:28%;border-radius:1.2rem;overflow:hidden}.fw-card-cover img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .2s}.fw-card-cover~.fw-card-body{flex:none;width:calc(72% - 1.2rem);padding-right:.8rem}.fw-card-enter{position:absolute;top:1.2rem;right:1.2rem;bottom:1.2rem;display:flex;align-items:center;justify-content:center;width:5.2rem;border-radius:1.2rem;background:var(--fw-soft);color:var(--fw-primary)!important;font-size:4rem}.fw-card-cover~.fw-card-enter{display:none}.fw-pagination{gap:1.2rem;margin:var(--fw-unit) 0}.fw-page-numbers,.fw-pagination{display:flex;justify-content:center;flex-wrap:wrap}.fw-page-numbers{border-radius:.8rem;background:var(--fw-card)}.fw-page-numbers>*{min-width:calc(var(--fw-unit) * 2.75);min-height:calc(var(--fw-unit) * 2.75);display:flex;align-items:center;justify-content:center;padding:.4rem;font-weight:700}.fw-page-numbers [aria-current]{background:var(--fw-primary);border-radius:.8rem;color:#fff}.fw-dark .fw-page-numbers [aria-current]{color:#222}.fw-empty,.fw-heading{padding:calc(var(--fw-unit) * 2);margin-bottom:var(--fw-unit)}.fw-heading h1{font-size:calc(var(--fw-unit) * 2);line-height:1.3;margin-bottom:1rem}.fw-article{--container-width:100%;padding:3.2rem 0;overflow:hidden}.fw-article-header h1{position:relative;font-weight:700;letter-spacing:0}.fw-article-header .gh-article-image{grid-column:auto;margin:2.4rem 0 0}.fw-article-header .gh-article-image img{width:100%;max-height:50vh;-o-object-fit:cover;object-fit:cover;border-radius:var(--fw-radius)}.fw-article-header figcaption{text-align:center;font-size:1.3rem;color:var(--fw-muted)}.fw-content{font-family:var(--font-sans);font-size:var(--fw-unit);line-height:1.75}.fw-content>*{min-width:0}.fw-content>*+*{margin-top:1.25em}.fw-content>h1,.fw-content>h2,.fw-content>h3,.fw-content>h4,.fw-content>h5,.fw-content>h6{margin-top:1.6em;margin-bottom:.6em;font-family:var(--font-sans);font-weight:700;line-height:1.4;color:var(--fw-ink);scroll-margin-top:3.2rem}.fw-content>h1{font-size:1.875em}.fw-content>h2{font-size:1.5em}.fw-content>h3{font-size:1.25em}.fw-content>h4,.fw-content>h5,.fw-content>h6{font-size:1em}.fw-content>blockquote,.fw-content>ol,.fw-content>p,.fw-content>ul{font-size:inherit}.fw-content>ol,.fw-content>ul{padding-left:1.8em}.fw-content a{color:var(--fw-primary);-webkit-text-decoration:underline dashed;text-decoration:underline dashed;text-underline-offset:.25em}.fw-content blockquote:not([class]){border-left:.3rem solid var(--fw-primary);padding:.4em 1em;font-family:inherit;color:var(--fw-muted)}.fw-content code{font-family:var(--font-mono);font-size:.875em;background:var(--fw-soft);color:var(--fw-primary);border-radius:.4rem;padding:.2em .3em}.fw-content pre{overflow-x:auto;background:oklch(.17 .015 var(--fw-hue));color:#ddd;border-radius:1.2rem;padding:1.5em;font-size:.875em}.fw-content pre code{background:transparent;color:inherit;padding:0;font-size:inherit}.fw-content .gh-table{overflow-x:auto;border:1px solid var(--fw-line);border-radius:.8rem}.fw-content.gh-content table{width:100%;border:0;border-spacing:0;border-collapse:collapse;font:inherit;white-space:normal}.fw-content.gh-content table :is(th,td){padding:.75em 1em;border:0;border-bottom:1px solid var(--fw-line);vertical-align:top}.fw-content.gh-content table :is(th,td):is(:first-child,:last-child){padding-inline:1em}.fw-content.gh-content table th{background:var(--fw-soft);color:var(--fw-ink);font-size:inherit;font-weight:700;text-transform:none;letter-spacing:normal}.fw-content.gh-content table tr:last-child td{border-bottom:0}.fw-content.gh-content table tbody tr:nth-child(2n){background:color-mix(in srgb,var(--fw-soft) 35%,transparent)}.fw-content .kg-width-full,.fw-content .kg-width-wide{max-width:100%}.fw-content .kg-width-full img{width:100%}.fw-content .kg-bookmark-container{color:var(--fw-ink);background:var(--fw-soft)}.fw-article-footer{display:flex;flex-wrap:wrap;gap:1.6rem;padding:3.2rem 3.2rem 0}.fw-comments{padding:2.4rem;margin-top:var(--fw-unit)}.fw-related{margin-top:2.4rem}.fw-related>h2{margin:1.6rem 0;font-size:2rem}.fw-footer{grid-column:2;text-align:center;padding:2.4rem 1.2rem;color:var(--fw-muted);font-size:calc(var(--fw-unit) * .875)}.fw-footer p+p{margin-top:.8rem}.fw-archive h2{font-size:calc(var(--fw-unit) * 1.5);margin:2rem 0 1rem}.fw-archive ul{padding:0 0 0 1.2rem;margin:0;list-style:none;border-left:2px dashed var(--fw-line)}.fw-archive li{display:flex;gap:1.6rem;align-items:baseline;padding:.8rem 0}.fw-archive time{color:var(--fw-muted);flex-shrink:0}.fw-skip{position:fixed;top:-10rem;left:1rem;z-index:100;padding:1rem;background:var(--fw-card);color:var(--fw-ink)}.fw-skip:focus{top:1rem}[hidden]{display:none!important}@media(max-width:1023px){.fw-grid{grid-template-columns:minmax(0,1fr)}.fw-main-column{grid-column:1;grid-row:1}.fw-sidebar{grid-column:1;grid-row:2}.fw-footer{grid-column:1;grid-row:3}.fw-avatar{width:19.2rem;margin:0 auto 1.2rem}.fw-widgets{position:static}}@media(max-width:767px){:root{--fw-unit:1.4rem;--fw-radius:1.4rem}.fw-shell{padding:0}.fw-nav{padding:0 2rem}.fw-brand{max-width:55%}.fw-menu-toggle{display:inline-flex}.fw-menu{display:none;position:absolute;top:calc(100% + 1.05rem);right:0;width:24.5rem;max-width:100vw;padding:1.4rem;border-radius:var(--fw-radius);background:var(--fw-card);box-shadow:0 8px 24px rgba(0,0,0,.12)}.fw-menu.fw-open{display:block}.fw-menu .nav{flex-direction:column;align-items:stretch}.fw-feed{gap:0;overflow:hidden;border-radius:var(--fw-radius);background:var(--fw-card)}.fw-card{flex-direction:column;border-radius:0}.fw-card+.fw-card:before{content:"";position:absolute;top:0;left:2.1rem;right:2.1rem;border-top:1px dashed var(--fw-line)}.fw-card-body,.fw-card-cover~.fw-card-body{width:100%;padding:2.1rem}.fw-card h2{padding-right:1.6rem}.fw-article-header h1:before,.fw-card h2:before,.fw-card-enter{display:none}.fw-card-cover{position:relative;order:-1;top:auto;right:auto;bottom:auto;width:auto;height:20vh;margin:1.4rem 1.4rem -.7rem;border-radius:1.05rem}.fw-sidebar{padding:0 1.4rem}.fw-article{--container-gap:2.1rem;padding:2.1rem 0}.fw-article-header{margin:0 2.1rem 2rem}.fw-article-footer{padding:2.1rem 2.1rem 0}.fw-related>h2{padding:0 2.1rem}}@media(scripting:none) and (max-width:767px){.fw-nav{height:auto;min-height:6.3rem;flex-wrap:wrap;padding-top:1rem;padding-bottom:1rem}.fw-menu{display:block;position:static;width:100%;order:3;box-shadow:none}.fw-menu .nav{flex-direction:row}.fw-menu-toggle{display:none}}@media(prefers-reduced-motion:reduce){.fw-shell *,.fw-shell :after,.fw-shell :before{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.fw-home-icon{width:2.4rem;height:2.4rem;flex-shrink:0}.fw-tools .fw-search{min-width:16rem;justify-content:flex-start;background:hsla(0,0%,50%,.08);color:var(--fw-muted);padding:.8rem 1.2rem}.fw-search-label{font-size:1.4rem}.fw-meta{gap:1.6rem;margin:1.4rem 0 1.6rem}.fw-meta>*+:before{content:none}.fw-meta-group{gap:.8rem;min-width:0}.fw-meta-group,.fw-meta-icon{display:inline-flex;align-items:center}.fw-meta-icon{flex-shrink:0;justify-content:center;width:calc(var(--fw-unit) * 2);height:calc(var(--fw-unit) * 2);border-radius:.6rem;background:var(--fw-soft);color:oklch(.55 .12 var(--fw-hue));font-size:2rem}.fw-dark .fw-meta-icon{color:var(--fw-primary)}.fw-meta-icon svg{width:2rem;height:2rem}.fw-meta-tags-group>.fw-meta-icon{align-self:flex-start}@media(max-width:767px){.fw-tools .fw-search{min-width:0;background:transparent;padding:.8rem}.fw-meta-group:nth-child(2),.fw-search-label{display:none}}.fw-pagination [aria-disabled=true]{opacity:.3;pointer-events:none;background:var(--fw-card)}@media(scripting:none){.fw-tools [data-fw-cycle],.fw-tools [data-fw-panel]{display:none}}.fw-archive-filters{display:flex;flex-wrap:wrap;gap:1.6rem;margin-bottom:1.6rem}.fw-archive-filters label{display:grid;gap:.4rem;min-width:0;max-width:100%}.fw-archive-filters select{max-width:100%;padding:.6rem 1.2rem;border:1px solid var(--fw-line);border-radius:.6rem;color:var(--fw-ink);background:var(--fw-soft)}@media(max-width:767px){.fw-meta-tags-group{display:none}}.fw-profile{padding:calc(var(--fw-unit) * .75)}.fw-avatar-link{display:block;position:relative;max-width:calc(var(--fw-unit) * 12);margin:calc(var(--fw-unit) * .25) auto calc(var(--fw-unit) * .75);border-radius:calc(var(--fw-unit) * .75);overflow:hidden}.fw-avatar-link .fw-avatar{display:block;width:100%;height:auto;max-width:none;margin:0;border-radius:inherit;aspect-ratio:1;-o-object-fit:cover;object-fit:cover}.fw-avatar-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.3);color:#fff;opacity:0;transition:opacity .2s}.fw-avatar-overlay svg{width:4.8rem;height:4.8rem}.fw-avatar-link:focus-visible .fw-avatar-overlay,.fw-avatar-link:hover .fw-avatar-overlay{opacity:1}.fw-profile-info{padding:0 calc(var(--fw-unit) * .5)}.fw-profile h2{margin:0 0 calc(var(--fw-unit) * .25);font-size:calc(var(--fw-unit) * 1.25);line-height:1.4}.fw-profile-mark{margin:0 auto calc(var(--fw-unit) * .5);width:calc(var(--fw-unit) * 1.25);height:calc(var(--fw-unit) * .25)}.fw-profile p{margin:0 0 calc(var(--fw-unit) * .625);color:#a3a3a3;line-height:1.5}.fw-profile-links{gap:calc(var(--fw-unit) * .5);margin-bottom:calc(var(--fw-unit) * .25)}.fw-profile-links:empty{display:none}.fw-social.fw-button{width:calc(var(--fw-unit) * 2.5);height:calc(var(--fw-unit) * 2.5);min-width:0;min-height:0;padding:calc(var(--fw-unit) * .5);color:oklch(.55 .12 var(--fw-hue))}.fw-dark .fw-social.fw-button{color:oklch(.75 .1 var(--fw-hue))}.fw-social svg{width:calc(var(--fw-unit) * 1.5);height:calc(var(--fw-unit) * 1.5)}.fw-social span{font-size:.75em}.fw-widget{padding:0 0 var(--fw-unit);overflow:hidden}.fw-widget h2{padding:0;margin:var(--fw-unit) 0 calc(var(--fw-unit) * .5) calc(var(--fw-unit) * 2);line-height:calc(var(--fw-unit) * 1.75)}.fw-widget h2:before{left:calc(var(--fw-unit) * -1);top:calc(var(--fw-unit) * .34375);width:calc(var(--fw-unit) * .25);height:var(--fw-unit)}.fw-widget>.fw-muted,.fw-widget>.fw-tags{margin-left:var(--fw-unit);margin-right:var(--fw-unit)}.fw-expand{display:flex;width:calc(100% - var(--fw-unit) * 2);min-height:calc(var(--fw-unit) * 2.25);margin:.8rem var(--fw-unit) -.8rem;padding:0;background:transparent;font-size:var(--fw-unit);font-weight:400;transition:background-color .15s,transform .15s}.fw-expand-content{display:inline-flex;align-items:center;justify-content:center;gap:.8rem;transform:translateX(-.8rem)}.fw-expand-content svg{width:calc(var(--fw-unit) * 1.75);height:calc(var(--fw-unit) * 1.75)}.fw-button.fw-expand:hover{background:var(--fw-plain-hover);opacity:1}.fw-button.fw-expand:active{background:var(--fw-plain-active)}@media(prefers-reduced-motion:reduce){.fw-expand{transition:none}}.fw-card h2:before{top:calc(var(--fw-unit) * .4375)}.fw-article{--content-width:80rem;--container-gap:calc(var(--fw-unit) * 2.25);padding-top:calc(var(--fw-unit) * 1.5);padding-bottom:var(--fw-unit)}.fw-article-header{margin:0 calc(var(--fw-unit) * 2.25) calc(var(--fw-unit) * 1.25);border-bottom:1px solid var(--fw-line)}.fw-article-header h1{font-size:calc(var(--fw-unit) * 2.25);line-height:calc(var(--fw-unit) * 2.75);margin:0 0 calc(var(--fw-unit) * .75)}.fw-article-header h1:before{top:calc(var(--fw-unit) * .75);left:calc(var(--fw-unit) * -1.125);width:calc(var(--fw-unit) * .25);height:calc(var(--fw-unit) * 1.25)}.fw-article-reading{min-height:calc(var(--fw-unit) * 1.5);line-height:calc(var(--fw-unit) * 1.5);margin:0 0 calc(var(--fw-unit) * .75);color:var(--fw-muted);font-size:calc(var(--fw-unit) * .875)}.fw-article-header .fw-meta{margin:0 0 calc(var(--fw-unit) * 1.25);min-height:calc(var(--fw-unit) * 2)}.fw-article-header .gh-article-image{margin-bottom:calc(var(--fw-unit) * 1.25)}.fw-content.gh-content{font-size:var(--fw-unit);line-height:1.75;letter-spacing:normal;color:var(--fw-prose)}.fw-content.gh-content>*+*{margin-top:1.25em;margin-bottom:0}.fw-content.gh-content :where(section)>:is(h1,h2,h3,h4,h5,h6),.fw-content.gh-content>:is(h1,h2,h3,h4,h5,h6)[id]{font-family:var(--font-sans);color:var(--fw-prose-heading);font-weight:700;letter-spacing:normal}.fw-content.gh-content h1{font-size:1.875em;line-height:1.2;margin:0 0 .88889em;font-weight:700}.fw-content.gh-content h2{font-size:1.5em;line-height:1.33333;margin:2em 0 1em}.fw-content.gh-content h3{font-size:1.25em;line-height:1.6;margin:1.6em 0 .6em}.fw-content.gh-content :is(h4,h5,h6){font-size:1em;line-height:1.5;margin:1.5em 0 .5em}.fw-content.gh-content>:is(h1,h2,h3,h4,h5,h6):first-child,.fw-content.gh-content>section:first-child>:is(h1,h2,h3,h4,h5,h6):first-child{margin-top:0}.fw-content.gh-content>[id]+p{margin-top:1.25em}.fw-content.gh-content p{margin-top:1.25em;margin-bottom:1.25em}.fw-content.gh-content>p:first-child{margin-top:0}.fw-content.gh-content a{color:var(--fw-primary);-webkit-text-decoration:underline dashed;text-decoration:underline dashed;text-underline-offset:.25em}.fw-content.gh-content .fw-heading-anchor{margin-left:.2ch;padding:.2rem;opacity:0;text-decoration:none;font-size:.8em;font-weight:400}.fw-content.gh-content .fw-heading-anchor:focus-visible,.fw-content.gh-content :is(h1,h2,h3,h4,h5,h6):hover .fw-heading-anchor{opacity:1}.fw-content.gh-content :not(pre)>code{padding:.125em .25em;border-radius:.375em;font-size:.875em;font-weight:400;line-height:inherit;color:oklch(.55 .12 var(--fw-hue));background:var(--fw-soft)}.fw-dark .fw-content.gh-content :not(pre)>code{color:oklch(.75 .1 var(--fw-hue))}.fw-content.gh-content>:is(hr,blockquote,iframe),.fw-content.gh-content>:is(hr,blockquote,iframe)+*{margin-top:1.6em!important}.fw-content.gh-content blockquote{position:relative;border:0;padding:0 0 0 1.25em;margin:1.6em 0;font-family:inherit;font-style:normal;font-size:inherit;font-weight:400;color:var(--fw-prose-quote)}.fw-content.gh-content blockquote:before{content:"";position:absolute;left:0;top:0;bottom:0;width:.25em;border-radius:.25em;background:var(--fw-soft)}.fw-content.gh-content blockquote p:after,.fw-content.gh-content blockquote p:before{content:none}.fw-content.gh-content blockquote.fw-admonition{--fw-admonition:var(--fw-note)}.fw-content.gh-content .fw-admonition[data-type=tip]{--fw-admonition:var(--fw-tip)}.fw-content.gh-content .fw-admonition[data-type=important]{--fw-admonition:var(--fw-important)}.fw-content.gh-content .fw-admonition[data-type=warning]{--fw-admonition:var(--fw-warning)}.fw-content.gh-content .fw-admonition[data-type=caution]{--fw-admonition:var(--fw-caution)}.fw-content.gh-content .fw-admonition:before{background:var(--fw-admonition)}.fw-content.gh-content .fw-admonition-title{display:flex;align-items:center;gap:.6em;margin:0 0 -.9em;color:var(--fw-admonition);font-weight:700}.fw-admonition-icon{width:1em;height:1em;flex-shrink:0;transform:translateY(-.0625em)}.fw-content.gh-content .fw-admonition>p{margin:1.25em 0;color:inherit}.fw-content.gh-content .fw-admonition>p:last-child{margin-bottom:0}.fw-content.gh-content .kg-callout-card{border-radius:.75em;font-family:inherit;font-size:inherit;line-height:inherit}.fw-content.gh-content .kg-callout-card .kg-callout-text{font-size:inherit}.fw-content.gh-content .fw-code{position:relative;min-width:0;margin:var(--fw-unit) 0;border-radius:calc(var(--fw-unit) * .75);background:oklch(.17 .015 var(--fw-hue));color:#e1e4e8;overflow:hidden}.fw-content.gh-content .fw-code pre{margin:0;padding:calc(var(--fw-unit) * 1.25) calc(var(--fw-unit) * 1.125);background:transparent;font-size:calc(var(--fw-unit) * .875);line-height:calc(var(--fw-unit) * 1.5);border:0;border-radius:inherit;overflow:auto}.fw-content.gh-content .fw-code pre code{display:block;min-width:-moz-max-content;min-width:max-content;padding:0 0 0 calc(var(--fw-unit) * 3.5);background:transparent;color:inherit;font-size:inherit;line-height:inherit;white-space:pre;-moz-tab-size:4;-o-tab-size:4;tab-size:4}.fw-code-gutter{top:calc(var(--fw-unit) * 1.25);left:0;bottom:calc(var(--fw-unit) * 1.25);width:calc(var(--fw-unit) * 3);padding-right:calc(var(--fw-unit) * 1.125);border-right:1px solid hsla(0,0%,100%,.06);background:oklch(.17 .015 var(--fw-hue));color:hsla(0,0%,100%,.25);text-align:right;font:calc(var(--fw-unit) * .875)/calc(var(--fw-unit) * 1.5) var(--font-mono);white-space:pre;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;user-select:none}.fw-code-gutter,.fw-code-label{position:absolute;pointer-events:none}.fw-code-label{z-index:1;top:.6em;right:.6em;max-width:60%;padding:.15em .5em;border-radius:.6em;color:var(--fw-primary);font:700 calc(var(--fw-unit) * .875)/1.5 var(--font-mono);text-transform:uppercase}.fw-code-copy,.fw-code-label{background:oklch(.3 .02 var(--fw-hue))}.fw-code-copy{position:absolute;z-index:2;right:1.2rem;top:1.2rem;min-width:3.2rem;min-height:3.2rem;padding:.4rem .8rem;border:0;border-radius:.6rem;color:#fff;font:500 1.2rem/1.5 var(--font-sans);cursor:pointer;opacity:0}.fw-code:focus-within .fw-code-copy,.fw-code:hover .fw-code-copy{opacity:1}.fw-code:focus-within .fw-code-label,.fw-code:hover .fw-code-label{opacity:0}.fw-code-copy:focus-visible{outline:2px solid var(--fw-primary);outline-offset:2px}.fw-content.gh-content .fw-code pre:focus-visible{outline:2px solid var(--fw-primary);outline-offset:-2px}@media(min-width:1024px){.fw-avatar-link{max-width:none;margin-top:0}}@media(hover:none){.fw-code-copy{opacity:1;top:auto;bottom:.8rem}.fw-code .fw-code-label{max-width:50%}}.fw-banner{position:absolute;inset:0 0 auto;height:65vh;overflow:hidden}.fw-banner img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center}.fw-has-banner .fw-shell{position:relative;z-index:1}.fw-has-banner .fw-grid{margin-top:calc(35vh - 12.8rem)}.fw-has-banner.home-template .fw-grid{margin-top:calc(65vh - 12.8rem)}@media(max-width:1023px){.fw-has-banner.home-template .fw-grid{margin-top:calc(35vh - 12.8rem)}.fw-banner{top:-30vh}}@media(max-width:767px){.fw-article{--container-gap:calc(var(--fw-unit) * 1.5)}.fw-article-header{margin-left:calc(var(--fw-unit) * 1.5);margin-right:calc(var(--fw-unit) * 1.5)}.fw-article-header h1{font-size:calc(var(--fw-unit) * 1.875);line-height:calc(var(--fw-unit) * 2.25)}.page-template .fw-article{--container-gap:calc(var(--fw-unit) * 2.25)}.page-template .fw-article-header{margin-left:calc(var(--fw-unit) * 2.25);margin-right:calc(var(--fw-unit) * 2.25)}.fw-article-header .fw-meta-tags-group{display:inline-flex}.fw-has-banner .fw-grid,.fw-has-banner.home-template .fw-grid{margin-top:calc(35vh - 11.2rem)}}.fw-content.gh-content>p{margin-bottom:0}.fw-content.gh-content>:is(h1,h2,h3,h4,h5,h6){margin-bottom:0}.fw-content.gh-content>h1[id]:not(:first-child){margin-top:1.5em}.fw-content.gh-content>h2[id]:not(:first-child){margin-top:2em}.fw-content.gh-content>h3[id]:not(:first-child){margin-top:1.6em}.fw-content.gh-content>:is(h4,h5,h6)[id]:not(:first-child){margin-top:1.5em}.fw-content.gh-content>h1+p{margin-top:1.66667em}.fw-content.gh-content>h2+p{margin-top:1.5em}.fw-content.gh-content>blockquote{margin-bottom:0}.fw-content.gh-content>blockquote+h2{margin-top:2em!important}.fw-has-banner:not(.home-template) .fw-banner{top:-30vh}.fw-content.gh-content .fw-code pre{color:inherit}.fw-content.gh-content a.card-github{display:block;padding:1.1em 1.5em;border-radius:var(--fw-radius);background:var(--fw-soft);color:var(--fw-prose);text-decoration:none}.fw-content.gh-content .card-github .gc-titlebar{display:flex;align-items:center;justify-content:space-between;gap:1rem;font-size:1.25em;line-height:1.5;margin-bottom:.5em}.fw-content.gh-content .card-github .gc-titlebar-left{display:flex;flex-wrap:wrap;align-items:center;gap:.5em}.fw-content.gh-content .card-github .gc-owner{font-weight:400}.fw-content.gh-content .card-github .gc-repo{font-weight:700}.fw-content.gh-content .card-github .gc-avatar,.fw-content.gh-content .card-github .github-logo{display:none}.fw-content.gh-content .card-github .gc-description{font-size:1em;line-height:1.5}.fw-content.gh-content .fw-repo-static:hover{filter:brightness(.97)}@media(hover:none){.fw-content.gh-content .fw-code pre{padding-bottom:calc(var(--fw-unit) * 3)}}.fw-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.fw-archive{position:relative;margin-top:0;padding:calc(var(--fw-unit) * 1.5) calc(var(--fw-unit) * 2)}.fw-archive-year>header{display:grid;grid-template-columns:10% 10% 80%;align-items:center;height:calc(var(--fw-unit) * 3.75)}.fw-archive .fw-archive-year h2{margin:0;font-size:calc(var(--fw-unit) * 1.5);line-height:1.33333;text-align:right;color:var(--fw-ink);opacity:.8}.fw-archive-year-marker{justify-self:center;width:calc(var(--fw-unit) * .75);height:calc(var(--fw-unit) * .75);border:3px solid var(--fw-primary);border-radius:50%}.fw-archive-count{color:var(--fw-muted)}.fw-archive .fw-archive-year ul{position:relative;padding:0;margin:0;list-style:none;border:0}.fw-archive .fw-archive-year li{display:block;padding:0}.fw-archive .fw-archive-entry{display:grid;grid-template-columns:10% 10% 65% 15%;align-items:center;height:calc(var(--fw-unit) * 2.5);border-radius:.8rem}.fw-archive-entry:hover{background:var(--fw-soft)}.fw-archive-entry time{text-align:right;font-size:calc(var(--fw-unit) * .875)}.fw-archive-track{position:relative;display:flex;align-items:center;justify-content:center;height:100%}.fw-archive-track:before{content:"";position:absolute;left:calc(50% - 1px);top:-50%;width:2px;height:100%;border-left:2px dashed var(--fw-line)}.fw-archive-track:after{content:"";position:relative;width:calc(var(--fw-unit) * .25);height:calc(var(--fw-unit) * .25);background:oklch(.5 .05 var(--fw-hue));outline:4px solid var(--fw-card);border-radius:.4rem;transition:height .15s}.fw-archive-entry:hover .fw-archive-track:after{height:calc(var(--fw-unit) * 1.25);background:var(--fw-primary);outline-color:var(--fw-soft)}.fw-archive-entry-title{min-width:0;padding-right:calc(var(--fw-unit) * 2);font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:.8}.fw-archive-entry:hover .fw-archive-entry-title{color:var(--fw-primary);opacity:1}.fw-archive-entry-tags{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--fw-muted);font-size:calc(var(--fw-unit) * .875)}.fw-archive-filter-panel{position:absolute;top:1.6rem;right:2.4rem;z-index:2;font-size:1.2rem}.fw-archive-filter-panel summary{cursor:pointer;text-align:right;list-style:none}.fw-archive-filter-panel .fw-archive-filters{position:absolute;width:28rem;max-width:calc(100vw - 5.6rem);padding:1.6rem;margin:.8rem 0 0;border:1px solid var(--fw-line);border-radius:1.2rem;background:var(--fw-card);box-shadow:0 8px 24px rgba(0,0,0,.1);font-size:var(--fw-unit)}@media(max-width:767px){.fw-archive .fw-archive-entry,.fw-archive-year>header{grid-template-columns:15% 15% 70%}.fw-archive-entry-tags{display:none}}.gh-article-image{margin-top:4rem}.gh-article-image img{width:100%}.fw-code .hljs{color:#e1e4e8}.fw-code .hljs-keyword,.fw-code .hljs-literal,.fw-code .hljs-selector-tag{color:#f97583}.fw-code .hljs-section,.fw-code .hljs-title{color:#b392f0}.fw-code .hljs-doctag,.fw-code .hljs-regexp,.fw-code .hljs-string{color:#9ecbff}.fw-code .hljs-attr,.fw-code .hljs-built_in,.fw-code .hljs-number,.fw-code .hljs-symbol,.fw-code .hljs-variable{color:#79b8ff}.fw-code .hljs-comment,.fw-code .hljs-quote{color:#6a737d}.fw-code .hljs-name,.fw-code .hljs-selector-class{color:#85e89d}.fw-code .hljs-addition{color:#85e89d;background:#144620}.fw-code .hljs-deletion{color:#fdaeb7;background:#5c1018}.fw-code .hljs-emphasis{font-style:italic}.fw-code .hljs-strong,.fw-toc-badge{font-weight:700}.fw-article-footer{justify-content:flex-end}.fw-toc{display:none;position:fixed;top:5.6rem;left:calc(50% + 60rem);width:calc(50vw - 61.6rem);max-height:calc(100vh - 32rem);overflow:auto;scrollbar-width:none;font-size:1.4rem;transition:opacity .15s,transform .15s}.fw-toc ol{list-style:none;padding:0}.fw-toc a{display:flex;align-items:flex-start;gap:.8rem;min-height:3.6rem;padding:.8rem;border-radius:1.2rem;color:var(--fw-muted);line-height:2rem;text-decoration:none;transition:background .15s,color .15s}.fw-toc a:hover{background:var(--fw-soft);opacity:1}.fw-toc-badge{display:flex;align-items:center;justify-content:center;flex:0 0 2rem;height:2rem;margin-left:calc(var(--fw-depth) * 1.6rem);background:var(--fw-soft);color:var(--fw-primary);border-radius:.8rem;font-size:1.2rem}.fw-toc-dot{background:transparent}.fw-toc-dot:before{content:"";width:.8rem;height:.8rem;border-radius:.3rem;background:var(--fw-soft)}.fw-toc a[aria-current]{color:var(--fw-primary)}.fw-top{position:fixed;left:calc(50% + 62rem);bottom:16rem;z-index:10;width:6rem;height:6rem;border-radius:1.6rem;background:var(--fw-card);transition:opacity .15s,transform .15s,background .15s}.fw-top svg{width:3.6rem;height:3.6rem}.fw-control-hidden,.fw-top:active{transform:scale(.9)}.fw-control-hidden{opacity:0;pointer-events:none}@media(min-width:1536px){.fw-toc:not([hidden]){display:block}}@media(max-width:1439px){.fw-top{left:auto;right:1.6rem}}@media(max-width:1023px){.fw-top{display:none}}@keyframes fw-fade-in-up{0%{opacity:0;transform:translateY(3.2rem)}to{opacity:1;transform:none}}@keyframes fw-banner-in{0%{opacity:0;transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}.fw-footer,.fw-main,.fw-nav,.fw-sidebar{animation:fw-fade-in-up .3s backwards}.fw-sidebar{animation-delay:.1s}.fw-main{animation-delay:.15s}.fw-footer{animation-delay:.25s}.fw-feed>.fw-card{animation:fw-fade-in-up .3s backwards}.fw-feed>:nth-child(2){animation-delay:.05s}.fw-feed>:nth-child(3){animation-delay:.1s}.fw-feed>:nth-child(4){animation-delay:.175s}.fw-feed>:nth-child(5){animation-delay:.25s}.fw-feed>:nth-child(n+6){animation-delay:.325s}.fw-banner img{animation:fw-banner-in .7s both}.fw-appearance:not([hidden]),.fw-menu.fw-open{animation:fw-fade-in-up .15s backwards}.fw-button,.fw-card,.fw-panel,.fw-shell a{transition:background-color .15s,color .15s,transform .15s}.fw-button:active{transform:scale(.95)}@view-transition{navigation:auto}::view-transition-old(root){animation-duration:.2s}::view-transition-new(root){animation-duration:.3s}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.fw-banner img,.fw-toc,.fw-top{transition:none;animation:none}::view-transition-group(*){animation:none}}.fw-toc{isolation:isolate;padding-top:3.2rem}.fw-toc a{border:0;position:relative;z-index:1}.fw-toc .fw-toc-visible{background:transparent;border:0;color:var(--fw-muted)}.fw-toc-indicator{position:absolute;z-index:-1;left:0;right:0;border-radius:1.2rem;background:color-mix(in oklch,var(--fw-soft),var(--fw-line) 20%);border:2px solid transparent;transition:top .15s,height .15s,background .15s;pointer-events:none}.fw-toc:hover .fw-toc-indicator{background:transparent;border-color:var(--fw-line);border-style:dashed}@media(prefers-reduced-motion:reduce){.fw-toc-indicator{transition:none}}@media(prefers-reduced-motion:no-preference){.fw-article-header>*,.fw-content,.fw-widgets>.fw-widget{animation:fw-fade-in-up .3s backwards}.fw-article-header>:nth-child(2),.fw-widgets>.fw-widget:first-child{animation-delay:.05s}.fw-article-header>:nth-child(3),.fw-widgets>.fw-widget:nth-child(2){animation-delay:.1s}.fw-article-header>:nth-child(n+4),.fw-content{animation-delay:.175s}}.fw-nav-track{position:relative;z-index:30;pointer-events:none}.fw-nav-sticky{position:sticky;top:0;pointer-events:auto;transition:opacity .15s,transform .15s}.fw-nav-spacer{display:none}.fw-has-banner .fw-nav-track{position:absolute;top:0;left:var(--fw-unit);right:var(--fw-unit);height:calc(65vh - 4.5 * var(--fw-unit))}.fw-has-banner .fw-nav-spacer{display:block;height:calc(4.5 * var(--fw-unit))}.fw-nav-sticky.fw-nav-hidden{opacity:0;transform:translateY(-6.4rem);pointer-events:none}.fw-appearance{position:absolute;top:calc(5.25 * var(--fw-unit));right:var(--fw-unit);width:calc(20 * var(--fw-unit));max-width:calc(100vw - 2 * var(--fw-unit));padding:var(--fw-unit);box-shadow:0 12px 24px rgba(0,0,0,.12)}.fw-color-heading{display:flex;align-items:center;gap:.8rem;margin-bottom:1.2rem}.fw-color-heading label{position:relative;margin-left:1.2rem;font-size:calc(1.125 * var(--fw-unit));font-weight:700}.fw-color-heading label:before{content:"";position:absolute;left:-1.2rem;top:.5rem;width:.4rem;height:1.6rem;background:var(--fw-primary);border-radius:.4rem}.fw-color-heading output{margin-left:auto;display:grid;place-items:center;width:4rem;height:2.8rem;border-radius:.6rem;background:var(--fw-soft);color:var(--fw-primary);font-size:1.4rem;font-weight:700}.fw-color-heading .fw-button{min-width:2.8rem;min-height:2.8rem;width:2.8rem;height:2.8rem;padding:.7rem;border-radius:.6rem}.fw-reset-default{opacity:0;pointer-events:none}.fw-appearance input{display:block;width:100%;height:2.4rem;margin:0;padding:0 .4rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:.4rem;background:linear-gradient(90deg,oklch(.8 .1 0),oklch(.8 .1 60),oklch(.8 .1 120),oklch(.8 .1 180),oklch(.8 .1 240),oklch(.8 .1 300),oklch(.8 .1 360))}.fw-appearance input::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:.8rem;height:1.6rem;border:0;border-radius:.2rem;background:hsla(0,0%,100%,.7)}.fw-appearance input::-moz-range-thumb{width:.8rem;height:1.6rem;border:0;border-radius:.2rem;background:hsla(0,0%,100%,.7)}.fw-dark .fw-appearance input{background:linear-gradient(90deg,oklch(.7 .1 0),oklch(.7 .1 60),oklch(.7 .1 120),oklch(.7 .1 180),oklch(.7 .1 240),oklch(.7 .1 300),oklch(.7 .1 360))}.fw-mode-control{position:relative}.fw-mode-panel{position:absolute;right:-.8rem;top:100%;padding-top:2rem;width:-moz-max-content;width:max-content;z-index:50}.fw-mode-panel>.fw-panel{padding:.8rem;box-shadow:0 12px 24px rgba(0,0,0,.12)}.fw-mode-panel button{display:flex;align-items:center;gap:1.2rem;width:100%;height:3.6rem;padding:0 1.2rem;margin-bottom:.2rem;border:0;border-radius:.8rem;background:transparent;color:var(--fw-ink);font-weight:500;white-space:nowrap}.fw-mode-panel button svg{width:2rem;height:2rem}.fw-mode-panel button:hover,.fw-mode-panel button[aria-pressed=true]{color:var(--fw-primary);background:var(--fw-soft)}.fw-mode-control>.fw-button:hover,.fw-tools>.fw-button:hover{background:var(--fw-soft)}.fw-comments.gh-comments{background:var(--fw-card);border-radius:var(--fw-radius);padding:calc(2.25 * var(--fw-unit));overflow:hidden}@media(max-width:767px){.fw-has-banner .fw-nav-track{left:0;right:0}.fw-comments.gh-comments{padding:calc(1.5 * var(--fw-unit))}.fw-tools .fw-button{color:var(--fw-muted);width:4rem;min-width:4rem;height:4rem;min-height:4rem;padding:.8rem}.fw-tools .fw-button>svg{width:2.4rem;height:2.4rem;flex-shrink:0}.fw-tools .fw-button:hover,.fw-tools .fw-button[aria-expanded=true]{color:var(--fw-primary)}.fw-tools{gap:0}}@media(prefers-reduced-motion:reduce){.fw-nav-sticky{transition:none}}.fw-card [data-fw-title]{display:block;width:100%;transition:color .15s}.fw-card [data-fw-title]:focus-visible,.fw-card [data-fw-title]:hover{opacity:1;color:var(--fw-primary)}.fw-card [data-fw-title]:active{color:oklch(.6 .1 var(--fw-hue))}.fw-title-arrow{display:inline;position:absolute;width:calc(2 * var(--fw-unit));height:calc(2 * var(--fw-unit));color:var(--fw-primary);opacity:0;transform:translate(-.4rem,.2rem);transition:opacity .15s,transform .15s}.fw-card [data-fw-title]:focus-visible .fw-title-arrow,.fw-card [data-fw-title]:hover .fw-title-arrow{opacity:1;transform:translateY(.2rem)}@media(max-width:767px){.fw-title-arrow{opacity:1;transform:translateY(.2rem)}}.fw-meta-tags a{position:relative;display:inline-block;isolation:isolate;border-radius:.6rem;font-weight:500;transition:color .15s}.fw-meta-tags a:before{content:"";position:absolute;inset:-.6rem;z-index:-1;border-radius:inherit;background:transparent;transform:scale(.85);transition:background-color .15s ease-out,transform .15s ease-out}.fw-meta-tags a:focus-visible,.fw-meta-tags a:hover{color:var(--fw-primary);opacity:1}.fw-meta-tags a:focus-visible:before,.fw-meta-tags a:hover:before{background:oklch(.95 .025 var(--fw-hue));transform:scale(1)}.fw-dark .fw-meta-tags a:focus-visible:before,.fw-dark .fw-meta-tags a:hover:before{background:oklch(.3 .035 var(--fw-hue))}.fw-meta-tags a+a{margin-left:1.8rem}.fw-meta-tags a+a:after{content:"/";position:absolute;left:-1.2rem;color:var(--fw-muted);opacity:.4;pointer-events:none}.fw-brand .fw-home-icon{width:calc(1.75 * var(--fw-unit));height:calc(1.75 * var(--fw-unit));margin-bottom:.4rem}@media(prefers-reduced-motion:reduce){.fw-card [data-fw-title],.fw-meta-tags a,.fw-meta-tags a:before,.fw-title-arrow{transition:none}}:root{--fw-button-hover:oklch(.9 .05 var(--fw-hue));--fw-button-active:oklch(.85 .08 var(--fw-hue));--fw-plain-hover:oklch(.95 .025 var(--fw-hue));--fw-plain-active:oklch(.98 .01 var(--fw-hue));--fw-card-hover:oklch(.98 .005 var(--fw-hue))}:root.fw-dark{--fw-button-hover:oklch(.38 .04 var(--fw-hue));--fw-button-active:oklch(.43 .045 var(--fw-hue));--fw-plain-hover:oklch(.30 .035 var(--fw-hue));--fw-plain-active:oklch(.27 .025 var(--fw-hue));--fw-card-hover:oklch(.3 .03 var(--fw-hue))}.fw-button:hover,.fw-card-enter:hover,.fw-tags a:hover{background:var(--fw-button-hover);opacity:1}.fw-button:active,.fw-card-enter:active,.fw-tags a:active{background:var(--fw-button-active);transform:scale(.95)}.fw-menu a:hover,.fw-tools .fw-button:hover{background:var(--fw-plain-hover)}.fw-menu a:active,.fw-tools .fw-button:active{background:var(--fw-plain-active)}.fw-brand{position:relative;isolation:isolate}.fw-brand:before{content:"";position:absolute;inset:-.8rem -1.2rem;border-radius:.8rem;z-index:-1;background:transparent;transform:scale(.85);transition:background-color .15s,transform .15s}.fw-brand:focus-visible:before,.fw-brand:hover:before{background:var(--fw-plain-hover);transform:scale(1)}.fw-avatar-link:active,.fw-brand:active,.fw-menu a:active{transform:scale(.95)}.fw-tags a{display:inline-flex;align-items:center;min-height:calc(2 * var(--fw-unit));padding:0 calc(.75 * var(--fw-unit));border-radius:.8rem;transition:background-color .15s,transform .15s}.fw-avatar-link:focus-visible,.fw-avatar-link:hover,.fw-card-cover:focus-visible,.fw-card-cover:hover{opacity:1}.fw-cover-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:transparent;pointer-events:none;transition:background-color .15s}.fw-cover-overlay svg{width:calc(3 * var(--fw-unit));height:calc(3 * var(--fw-unit));color:#fff;opacity:0;transform:scale(.5);transition:opacity .15s,transform .15s}.fw-card-cover:focus-visible .fw-cover-overlay,.fw-card-cover:hover .fw-cover-overlay{background:rgba(0,0,0,.3)}.fw-card-cover:focus-visible .fw-cover-overlay svg,.fw-card-cover:hover .fw-cover-overlay svg{opacity:1;transform:scale(1)}.fw-card-cover:active{transform:scale(.95)}.fw-avatar-link:active .fw-avatar-overlay,.fw-card-cover:active .fw-cover-overlay{background:rgba(0,0,0,.5)}.fw-card-enter svg{width:calc(2.5 * var(--fw-unit));height:calc(2.5 * var(--fw-unit))}.fw-avatar-overlay svg{transform:scale(.9);transition:transform .15s}.fw-avatar-link:focus-visible .fw-avatar-overlay svg,.fw-avatar-link:hover .fw-avatar-overlay svg{transform:scale(1)}.fw-archive-entry-title{transition:transform .15s,color .15s,opacity .15s}.fw-archive-entry:focus-visible .fw-archive-entry-title,.fw-archive-entry:hover .fw-archive-entry-title{transform:translateX(.4rem);color:var(--fw-primary);opacity:1}.fw-archive-entry:focus-visible,.fw-archive-entry:hover{background:var(--fw-plain-hover);opacity:1}.fw-archive-entry:active{background:var(--fw-plain-active)}.fw-content.gh-content :is(p,li,blockquote) a:not(.kg-bookmark-container):not(.card-github):hover{background:var(--fw-plain-hover);border-radius:.4rem;text-decoration-color:transparent;opacity:1}.fw-heading-anchor{transition:opacity .15s}.fw-post-navigation{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--fw-unit);margin-bottom:var(--fw-unit);margin-top:var(--fw-unit)}.fw-post-navigation a{display:flex;align-items:center;gap:var(--fw-unit);height:calc(3.75 * var(--fw-unit));padding:0 var(--fw-unit);border-radius:var(--fw-radius);background:var(--fw-card);font-weight:700;min-width:0;transition:background-color .15s,transform .15s}.fw-post-navigation a:hover{background:var(--fw-card-hover);opacity:1}.fw-post-navigation a:active{transform:scale(.95)}.fw-post-navigation span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.fw-post-navigation svg{flex:0 0 calc(2 * var(--fw-unit));width:calc(2 * var(--fw-unit));height:calc(2 * var(--fw-unit));color:var(--fw-primary)}.fw-archive-filter-panel[open] .fw-filter-chevron,.fw-pagination-prev,.fw-post-next svg{transform:rotate(180deg)}.fw-post-prev{grid-column:2;justify-content:flex-end}.fw-reading-icon{display:inline-flex;align-items:center;justify-content:center;width:2.4rem;height:2.4rem;margin-right:.8rem;border-radius:.6rem;background:var(--fw-line);vertical-align:middle}.fw-reading-icon svg{width:1.6rem;height:1.6rem;fill:currentColor}@media(max-width:767px){.fw-post-navigation{grid-template-columns:minmax(0,1fr)}.fw-post-prev{grid-column:auto}}@media(prefers-reduced-motion:reduce){.fw-archive-entry-title,.fw-avatar-overlay svg,.fw-brand:before,.fw-cover-overlay,.fw-cover-overlay svg,.fw-heading-anchor,.fw-post-navigation a,.fw-tags a{transition:none}}.fw-tags.fw-collapsed{max-height:calc(1.2rem + 6 * var(--fw-unit));overflow:hidden}.fw-dark .fw-appearance,.fw-dark .fw-menu.fw-open,.fw-dark .fw-mode-panel>.fw-panel{background:oklch(.19 .015 var(--fw-hue))}.fw-tags a{color:oklch(.55 .12 var(--fw-hue))}.fw-dark .fw-tags a{color:oklch(.75 .1 var(--fw-hue))}@media(min-width:768px){.fw-mode-control>.fw-button,.fw-tools>.fw-button{color:rgba(0,0,0,.75)}.fw-dark .fw-mode-control>.fw-button,.fw-dark .fw-tools>.fw-button{color:hsla(0,0%,100%,.75)}.fw-mode-control>.fw-button:hover,.fw-tools>.fw-button:hover{color:var(--fw-primary)}.fw-menu{display:flex;align-items:center;justify-content:center;gap:.4rem}}.fw-archive-filter-panel{position:relative;top:auto;right:auto;display:flex;justify-content:flex-end;margin-bottom:1.2rem;font-size:var(--fw-unit)}.fw-archive-filter-panel summary{display:flex;align-items:center;justify-content:center;gap:.8rem;width:-moz-max-content;width:max-content;min-height:4.4rem;padding:.8rem 1.4rem;margin-left:auto;border:1px solid var(--fw-line);border-radius:1rem;background:var(--fw-soft);color:var(--fw-primary);font-weight:600;transition:background-color .15s,box-shadow .15s}.fw-archive-filter-panel summary::-webkit-details-marker{display:none}.fw-archive-filter-panel summary svg{width:2rem;height:2rem;flex-shrink:0}.fw-archive-filter-panel summary:hover,.fw-archive-filter-panel[open] summary{background:var(--fw-button-hover)}.fw-archive-filter-panel summary:focus-visible{outline:2px solid var(--fw-primary);outline-offset:3px}.fw-filter-chevron{transition:transform .15s}.fw-archive-filter-panel .fw-archive-filters{top:100%;right:0;margin-top:.8rem}@media(prefers-reduced-motion:reduce){.fw-archive-filter-panel summary,.fw-filter-chevron{transition:none}}.fw-menu a{white-space:nowrap}.fw-brand{flex-shrink:0}@media(min-width:768px) and (max-width:1023px){.fw-tools .fw-search{min-width:0;background:transparent;padding:.8rem}.fw-search-label{display:none}.fw-menu a{padding-inline:.8rem}}.fw-pagination{align-items:center;flex-wrap:nowrap}.fw-pagination>.fw-button{width:4.4rem;height:4.4rem;min-width:4.4rem;min-height:4.4rem;padding:0;border-radius:.8rem;background:var(--fw-card);color:var(--fw-primary)}.fw-pagination>.fw-button svg{width:2.8rem;height:2.8rem}.fw-page-numbers{flex-wrap:nowrap;color:var(--fw-ink)}.fw-page-numbers>*{width:4.4rem;min-width:4.4rem;height:4.4rem;min-height:4.4rem;border-radius:.8rem}.fw-page-numbers>span:not([aria-current]){width:2.4rem;min-width:2.4rem}.fw-page-numbers a,.fw-pagination>a{transition:background-color .15s,transform .15s}.fw-page-numbers a:hover,.fw-pagination>a:hover{background:var(--fw-card-hover);opacity:1}.fw-page-numbers a:active,.fw-pagination>a:active{background:oklch(.9 .03 var(--fw-hue));transform:scale(.85)}.fw-pagination a:focus-visible{outline:2px solid var(--fw-primary);outline-offset:2px}.fw-footer{padding-top:0;padding-bottom:4.8rem}.fw-footer:before{content:"";display:block;border-top:1px dashed var(--fw-line);margin:4rem auto;width:min(100% - 4rem,56rem)}.fw-footer a{position:relative;isolation:isolate;display:inline-block;padding:.4rem;margin:-.4rem;border-radius:.6rem;color:var(--fw-primary);font-weight:500;transition:color .15s}.fw-footer a:before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;background:transparent;transform:scale(.85);transition:background-color .15s ease-out,transform .15s ease-out}.fw-footer a:focus-visible,.fw-footer a:hover{opacity:1}.fw-footer a:focus-visible:before,.fw-footer a:hover:before{background:var(--fw-plain-hover);transform:scale(1)}.fw-footer a:active:before{background:var(--fw-plain-active)}.fw-footer a:focus-visible{outline:2px solid var(--fw-primary);outline-offset:2px}@media(max-width:479px){.fw-pagination{gap:.6rem}.fw-page-numbers{flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){.fw-footer a,.fw-footer a:before,.fw-page-numbers a,.fw-pagination>a{transition:none}}.fw-dark .fw-page-numbers a:active,.fw-dark .fw-pagination>a:active{background:oklch(.35 .035 var(--fw-hue))}.fw-content iframe{max-width:100%;margin-inline:auto;border-radius:calc(var(--fw-unit) * .75)}.fw-content .kg-audio-card,.fw-content .kg-file-card .kg-file-card-container,.fw-content .kg-product-card .kg-product-card-container,.fw-content .kg-toggle-card{color:var(--fw-ink);background:var(--fw-soft);border:1px solid var(--fw-line);border-radius:1.2rem;box-shadow:none}.fw-content .kg-bookmark-card a.kg-bookmark-container,.fw-content .kg-bookmark-card a.kg-bookmark-container:hover{color:var(--fw-ink)!important;background:var(--fw-soft)!important;border:1px solid var(--fw-line);border-radius:1.2rem!important}.fw-content .kg-bookmark-thumbnail img{border-radius:0}.fw-content .kg-audio-card button,.fw-content .kg-toggle-card button{color:inherit}.fw-content .kg-audio-card .kg-audio-title,.fw-content .kg-product-card .kg-product-card-title,.fw-content .kg-toggle-card .kg-toggle-heading-text{color:inherit;font-family:var(--font-sans)}.fw-content .kg-file-card a:hover{background:var(--fw-button-hover);opacity:1}.fw-content .kg-button-card .kg-btn,.fw-content .kg-product-card a.kg-product-card-button{border-radius:.8rem;background:var(--fw-primary);color:#fff;transition:opacity .15s,transform .15s}.fw-dark .fw-content .kg-button-card .kg-btn,.fw-dark .fw-content .kg-callout-card-accent,.fw-dark .fw-content .kg-product-card a.kg-product-card-button{color:rgba(0,0,0,.8)}.fw-content .kg-callout-card-accent a{color:inherit}.fw-content .kg-card :is(button,a):focus-visible{outline:2px solid var(--fw-primary);outline-offset:3px}.fw-content .kg-gallery-image img,.fw-content .kg-image-card .kg-image,.fw-content .kg-video-container{border-radius:1.2rem}.fw-content .kg-video-container{overflow:hidden}.fw-content .kg-card figcaption{color:var(--fw-muted)}@media(prefers-reduced-motion:reduce){.fw-content .kg-button-card .kg-btn,.fw-content .kg-product-card a.kg-product-card-button{transition:none}}.fw-archive-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:.8rem;margin-bottom:1.2rem}.fw-archive-toolbar .fw-archive-filter-panel{margin-bottom:0;flex-shrink:0}.fw-archive-toolbar [data-fw-archive-clear]{min-height:4.4rem;border-radius:1rem;font-size:var(--fw-unit);white-space:nowrap}.fw-scroll-progress{position:fixed;inset:0 0 auto;z-index:90;height:3px;color:var(--fw-primary);pointer-events:none}.fw-scroll-progress svg{display:block;width:100%;height:100%}@media print{.fw-scroll-progress{display:none}}.fw-scroll-progress stop:first-child{stop-color:oklch(.7 .16 calc(45 + var(--fw-hue)))}.fw-scroll-progress stop:nth-child(2){stop-color:var(--fw-primary)}.fw-scroll-progress stop:nth-child(3){stop-color:oklch(.78 .14 calc(-45 + var(--fw-hue)))}.fw-menu li:has(>a:is([href$="#/portal"],[href$="#/portal/"],[href$="#/portal/signup"],[href$="#/portal/signup/"])){display:none}/*# sourceMappingURL=screen.css.map */
