@charset "UTF-8";/*!* Hugo Theme Stack
*
* @author: Jimmy Cai
* @website: https://jimmycai.com
* @link: https://github.com/CaiJimmy/hugo-theme-stack*/:root{--main-top-padding:35px;--body-background:#f5f5fa;--accent-color:#34495e;--accent-color-darker:#2c3e50;--accent-color-text:#fff;--body-text-color:#707070;--tag-border-radius:4px;--section-separation:40px}@media(min-width:1280px){:root{--main-top-padding:50px}}:root[data-scheme=dark]{--body-background:#303030;--accent-color:#ecf0f1;--accent-color-darker:#bdc3c7;--accent-color-text:#000;--body-text-color:rgba(255, 255, 255, 0.7)}:root{--sys-font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", "Droid Sans", "Helvetica Neue";--base-font-family:"Lato", var(--sys-font-family), sans-serif;--code-font-family:Menlo, Monaco, Consolas, "Courier New", monospace}:root{--card-background:#fff;--card-background-selected:#eaeaea;--card-text-color-main:#000;--card-text-color-secondary:#747474;--card-text-color-tertiary:#767676;--card-separator-color:rgba(218, 218, 218, 0.5);--card-border-radius:10px;--card-padding:20px;--small-card-padding:25px 20px}@media(min-width:768px){:root{--card-padding:25px}}@media(min-width:1280px){:root{--card-padding:30px}}@media(min-width:768px){:root{--small-card-padding:25px}}:root[data-scheme=dark]{--card-background:#424242;--card-background-selected:rgba(255, 255, 255, 0.16);--card-text-color-main:rgba(255, 255, 255, 0.9);--card-text-color-secondary:rgba(255, 255, 255, 0.7);--card-text-color-tertiary:rgba(255, 255, 255, 0.5);--card-separator-color:rgba(255, 255, 255, 0.12)}:root{--article-font-family:var(--base-font-family);--article-font-size:1.6rem;--article-line-height:1.85}@media(min-width:768px){:root{--article-font-size:1.7rem}}:root{--blockquote-border-size:4px;--blockquote-background-color:rgb(248 248 248);--heading-border-size:4px;--alert-note-color:#4da3ff;--alert-note-background:rgba(77, 163, 255, 0.08);--alert-tip-color:#3fb950;--alert-tip-background:rgba(63, 185, 80, 0.08);--alert-important-color:#8457d9;--alert-important-background:rgba(130, 80, 223, 0.08);--alert-warning-color:#d29922;--alert-warning-background:rgba(210, 153, 34, 0.1);--alert-caution-color:#f85149;--alert-caution-background:rgba(248, 81, 73, 0.1);--link-background-color:189, 195, 199;--link-background-opacity:0.5;--link-background-opacity-hover:0.7;--code-background-color:rgba(0, 0, 0, 0.12);--code-text-color:#808080;--table-border-color:#dadada;--tr-even-background-color:#efefee;--kbd-border-color:#dadada}:root[data-scheme=dark]{--code-background-color:#272822;--code-text-color:rgba(255, 255, 255, 0.9);--table-border-color:#717171;--tr-even-background-color:#545454;--blockquote-background-color:rgb(75 75 75)}:root{--shadow-l1-y:4px;--shadow-l1-blur:8px;--shadow-l2-y:10px;--shadow-l2-blur:20px;--shadow-l1:0px var(--shadow-l1-y) var(--shadow-l1-blur) rgba(0, 0, 0, 0.04), 0px 0px 2px rgba(0, 0, 0, 0.06), 0px 0px 1px rgba(0, 0, 0, 0.04);--shadow-l2:0px var(--shadow-l2-y) var(--shadow-l2-blur) rgba(0, 0, 0, 0.04), 0px 2px 6px rgba(0, 0, 0, 0.04), 0px 0px 1px rgba(0, 0, 0, 0.04)}[data-scheme=light]{--pre-text-color:#272822;--pre-background-color:#fafafa}[data-scheme=light] .chroma{color:#272822;background-color:#fafafa}[data-scheme=light] .chroma .err{color:#960050}[data-scheme=light] .chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}[data-scheme=light] .chroma .lntable{border-spacing:0;padding:0;margin:0;border:0;width:100%;display:block}[data-scheme=light] .chroma .lntable>tbody{display:block;width:100%}[data-scheme=light] .chroma .lntable>tbody>tr{display:flex;width:100%}[data-scheme=light] .chroma .lntable>tbody>tr>td:last-child{overflow-x:auto}[data-scheme=light] .chroma .hl{display:block;width:100%;background-color:#ffc}[data-scheme=light] .chroma .lnt{margin-right:0;user-select:none;padding:0 .4em;color:#7f7f7f;display:block}[data-scheme=light] span.line{margin-left:.4em}[data-scheme=light] .chroma .ln{margin-right:.4em;padding:0 .4em;color:#7f7f7f}[data-scheme=light] .chroma .k{color:#00a8c8}[data-scheme=light] .chroma .kc{color:#00a8c8}[data-scheme=light] .chroma .kd{color:#00a8c8}[data-scheme=light] .chroma .kn{color:#f92672}[data-scheme=light] .chroma .kp{color:#00a8c8}[data-scheme=light] .chroma .kr{color:#00a8c8}[data-scheme=light] .chroma .kt{color:#00a8c8}[data-scheme=light] .chroma .n{color:#111}[data-scheme=light] .chroma .na{color:#75af00}[data-scheme=light] .chroma .nb{color:#111}[data-scheme=light] .chroma .bp{color:#111}[data-scheme=light] .chroma .nc{color:#75af00}[data-scheme=light] .chroma .no{color:#00a8c8}[data-scheme=light] .chroma .nd{color:#75af00}[data-scheme=light] .chroma .ni{color:#111}[data-scheme=light] .chroma .ne{color:#75af00}[data-scheme=light] .chroma .nf{color:#75af00}[data-scheme=light] .chroma .fm{color:#111}[data-scheme=light] .chroma .nl{color:#111}[data-scheme=light] .chroma .nn{color:#111}[data-scheme=light] .chroma .nx{color:#75af00}[data-scheme=light] .chroma .py{color:#111}[data-scheme=light] .chroma .nt{color:#f92672}[data-scheme=light] .chroma .nv{color:#111}[data-scheme=light] .chroma .vc{color:#111}[data-scheme=light] .chroma .vg{color:#111}[data-scheme=light] .chroma .vi{color:#111}[data-scheme=light] .chroma .vm{color:#111}[data-scheme=light] .chroma .l{color:#ae81ff}[data-scheme=light] .chroma .ld{color:#d88200}[data-scheme=light] .chroma .s{color:#d88200}[data-scheme=light] .chroma .sa{color:#d88200}[data-scheme=light] .chroma .sb{color:#d88200}[data-scheme=light] .chroma .sc{color:#d88200}[data-scheme=light] .chroma .dl{color:#d88200}[data-scheme=light] .chroma .sd{color:#d88200}[data-scheme=light] .chroma .s2{color:#d88200}[data-scheme=light] .chroma .se{color:#ae81ff}[data-scheme=light] .chroma .sh{color:#d88200}[data-scheme=light] .chroma .si{color:#d88200}[data-scheme=light] .chroma .sx{color:#d88200}[data-scheme=light] .chroma .sr{color:#d88200}[data-scheme=light] .chroma .s1{color:#d88200}[data-scheme=light] .chroma .ss{color:#d88200}[data-scheme=light] .chroma .m{color:#ae81ff}[data-scheme=light] .chroma .mb{color:#ae81ff}[data-scheme=light] .chroma .mf{color:#ae81ff}[data-scheme=light] .chroma .mh{color:#ae81ff}[data-scheme=light] .chroma .mi{color:#ae81ff}[data-scheme=light] .chroma .il{color:#ae81ff}[data-scheme=light] .chroma .mo{color:#ae81ff}[data-scheme=light] .chroma .o{color:#f92672}[data-scheme=light] .chroma .ow{color:#f92672}[data-scheme=light] .chroma .p{color:#111}[data-scheme=light] .chroma .c{color:#75715e}[data-scheme=light] .chroma .ch{color:#75715e}[data-scheme=light] .chroma .cm{color:#75715e}[data-scheme=light] .chroma .c1{color:#75715e}[data-scheme=light] .chroma .cs{color:#75715e}[data-scheme=light] .chroma .cp{color:#75715e}[data-scheme=light] .chroma .cpf{color:#75715e}[data-scheme=light] .chroma .gd{color:#f92672}[data-scheme=light] .chroma .ge{font-style:italic}[data-scheme=light] .chroma .gi{color:#75af00}[data-scheme=light] .chroma .gs{font-weight:700}[data-scheme=light] .chroma .gu{color:#75715e}[data-scheme=dark]{--pre-text-color:#f8f8f2;--pre-background-color:#272822}[data-scheme=dark] .chroma{color:#f8f8f2;background-color:#272822}[data-scheme=dark] .chroma .err{color:#bb0064}[data-scheme=dark] .chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}[data-scheme=dark] .chroma .lntable{border-spacing:0;padding:0;margin:0;border:0;width:100%;display:block}[data-scheme=dark] .chroma .lntable>tbody{display:block;width:100%}[data-scheme=dark] .chroma .lntable>tbody>tr{display:flex;width:100%}[data-scheme=dark] .chroma .lntable>tbody>tr>td:last-child{overflow-x:auto}[data-scheme=dark] .chroma .hl{display:block;width:100%;background-color:#ffc}[data-scheme=dark] .chroma .lnt{margin-right:0;user-select:none;padding:0 .4em;color:#7f7f7f;display:block}[data-scheme=dark] span.line{margin-left:.4em}[data-scheme=dark] .chroma .ln{margin-right:.4em;padding:0 .4em;color:#7f7f7f}[data-scheme=dark] .chroma .k{color:#66d9ef}[data-scheme=dark] .chroma .kc{color:#66d9ef}[data-scheme=dark] .chroma .kd{color:#66d9ef}[data-scheme=dark] .chroma .kn{color:#f92672}[data-scheme=dark] .chroma .kp{color:#66d9ef}[data-scheme=dark] .chroma .kr{color:#66d9ef}[data-scheme=dark] .chroma .kt{color:#66d9ef}[data-scheme=dark] .chroma .n{color:#f8f8f2}[data-scheme=dark] .chroma .na{color:#a6e22e}[data-scheme=dark] .chroma .nb{color:#f8f8f2}[data-scheme=dark] .chroma .bp{color:#f8f8f2}[data-scheme=dark] .chroma .nc{color:#a6e22e}[data-scheme=dark] .chroma .no{color:#66d9ef}[data-scheme=dark] .chroma .nd{color:#a6e22e}[data-scheme=dark] .chroma .ni{color:#f8f8f2}[data-scheme=dark] .chroma .ne{color:#a6e22e}[data-scheme=dark] .chroma .nf{color:#a6e22e}[data-scheme=dark] .chroma .fm{color:#f8f8f2}[data-scheme=dark] .chroma .nl{color:#f8f8f2}[data-scheme=dark] .chroma .nn{color:#f8f8f2}[data-scheme=dark] .chroma .nx{color:#a6e22e}[data-scheme=dark] .chroma .py{color:#f8f8f2}[data-scheme=dark] .chroma .nt{color:#f92672}[data-scheme=dark] .chroma .nv{color:#f8f8f2}[data-scheme=dark] .chroma .vc{color:#f8f8f2}[data-scheme=dark] .chroma .vg{color:#f8f8f2}[data-scheme=dark] .chroma .vi{color:#f8f8f2}[data-scheme=dark] .chroma .vm{color:#f8f8f2}[data-scheme=dark] .chroma .l{color:#ae81ff}[data-scheme=dark] .chroma .ld{color:#e6db74}[data-scheme=dark] .chroma .s{color:#e6db74}[data-scheme=dark] .chroma .sa{color:#e6db74}[data-scheme=dark] .chroma .sb{color:#e6db74}[data-scheme=dark] .chroma .sc{color:#e6db74}[data-scheme=dark] .chroma .dl{color:#e6db74}[data-scheme=dark] .chroma .sd{color:#e6db74}[data-scheme=dark] .chroma .s2{color:#e6db74}[data-scheme=dark] .chroma .se{color:#ae81ff}[data-scheme=dark] .chroma .sh{color:#e6db74}[data-scheme=dark] .chroma .si{color:#e6db74}[data-scheme=dark] .chroma .sx{color:#e6db74}[data-scheme=dark] .chroma .sr{color:#e6db74}[data-scheme=dark] .chroma .s1{color:#e6db74}[data-scheme=dark] .chroma .ss{color:#e6db74}[data-scheme=dark] .chroma .m{color:#ae81ff}[data-scheme=dark] .chroma .mb{color:#ae81ff}[data-scheme=dark] .chroma .mf{color:#ae81ff}[data-scheme=dark] .chroma .mh{color:#ae81ff}[data-scheme=dark] .chroma .mi{color:#ae81ff}[data-scheme=dark] .chroma .il{color:#ae81ff}[data-scheme=dark] .chroma .mo{color:#ae81ff}[data-scheme=dark] .chroma .o{color:#f92672}[data-scheme=dark] .chroma .ow{color:#f92672}[data-scheme=dark] .chroma .p{color:#f8f8f2}[data-scheme=dark] .chroma .c{color:#75715e}[data-scheme=dark] .chroma .ch{color:#75715e}[data-scheme=dark] .chroma .cm{color:#75715e}[data-scheme=dark] .chroma .c1{color:#75715e}[data-scheme=dark] .chroma .cs{color:#75715e}[data-scheme=dark] .chroma .cp{color:#75715e}[data-scheme=dark] .chroma .cpf{color:#75715e}[data-scheme=dark] .chroma .gd{color:#f92672}[data-scheme=dark] .chroma .ge{font-style:italic}[data-scheme=dark] .chroma .gi{color:#a6e22e}[data-scheme=dark] .chroma .gs{font-weight:700}[data-scheme=dark] .chroma .gu{color:#75715e}:root{--menu-icon-separation:40px;--container-padding:15px;--widget-separation:var(--section-separation);--spacing-xs:5px;--spacing-sm:10px;--spacing-md:15px;--spacing-lg:20px;--spacing-xl:25px;--spacing-2xl:30px;--spacing-3xl:40px;--article-image-height:150px;--mermaid-toolbar-btn-bg:rgba(255, 255, 255, 0.95);--mermaid-toolbar-btn-text:#333;--mermaid-modal-bg:rgba(0, 0, 0, 0.95);--mermaid-modal-content-bg:#fff;--mermaid-modal-btn-bg:#fff;--mermaid-modal-btn-hover:#ddd;--article-compact-image-size:50px;--widget-icon-size:32px;--article-tile-width:250px;--article-tile-height:150px;--article-tile-overlay-bg:rgba(0, 0, 0, 0.25);--article-tile-text-color:#fff}@media(min-width:768px){:root{--container-padding:20px}}@media(min-width:768px){:root{--article-image-height:200px}}@media(min-width:1280px){:root{--article-image-height:250px}}:root[data-scheme=dark]{--mermaid-toolbar-btn-bg:rgba(0, 0, 0, 0.85);--mermaid-toolbar-btn-text:#eee;--mermaid-modal-content-bg:#1e1e1e;--mermaid-modal-btn-bg:#333;--mermaid-modal-btn-hover:#444}@media(min-width:768px){:root{--article-compact-image-size:60px}}:root[data-scheme=dark]{--article-tile-overlay-bg:rgba(0, 0, 0, 0.45)}.container{margin-left:auto;margin-right:auto}.container .left-sidebar{order:-3;width:100%;max-width:var(--left-sidebar-max-width)}.container .right-sidebar{order:-1;width:100%;max-width:var(--right-sidebar-max-width)}@media(min-width:1024px){.container .right-sidebar{display:flex}}@media(min-width:768px){.container.extended{max-width:1024px;--left-sidebar-max-width:25%;--right-sidebar-max-width:30%}}@media(min-width:1024px){.container.extended{max-width:1280px;--left-sidebar-max-width:20%;--right-sidebar-max-width:30%}}@media(min-width:1280px){.container.extended{max-width:1536px;--left-sidebar-max-width:15%;--right-sidebar-max-width:25%}}@media(min-width:768px){.container.compact{--left-sidebar-max-width:25%;max-width:768px}}@media(min-width:1024px){.container.compact{max-width:1024px;--left-sidebar-max-width:20%}}@media(min-width:1280px){.container.compact{max-width:1280px}}.flex{display:flex;flex-direction:row}.flex.on-phone--column{flex-direction:column}@media(min-width:768px){.flex.on-phone--column{flex-direction:row}}.flex .full-width{width:100%}main.main{order:-2;min-width:0;max-width:100%;flex-grow:1;display:flex;flex-direction:column;gap:var(--section-separation)}@media(min-width:768px){main.main{padding-top:var(--main-top-padding)}}.main-container{min-height:100vh;align-items:flex-start;padding:0 var(--container-padding);gap:var(--section-separation);padding-top:var(--main-top-padding)}@media(min-width:768px){.main-container{padding-top:0}}/*!normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css*/html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:initial}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}/*!* Hamburgers
* @description Tasty CSS-animated hamburgers
* @author Jonathan Suh @jonsuh
* @site https://jonsuh.com/hamburgers
* @link https://github.com/jonsuh/hamburgers*/.hamburger{padding-top:var(--spacing-sm);display:inline-block;cursor:pointer;transition-property:opacity,filter;transition-duration:.15s;transition-timing-function:linear;font:inherit;color:inherit;text-transform:none;background-color:initial;border:0;margin:0;overflow:visible}.hamburger:hover{opacity:.7}.hamburger-box{width:30px;height:24px;display:inline-block;position:relative}.hamburger-inner{display:block;top:50%;margin-top:-2px}.hamburger-inner,.hamburger-inner::before,.hamburger-inner::after{width:30px;height:2px;background-color:var(--card-text-color-main);border-radius:4px;position:absolute;transition-property:transform;transition-duration:.15s;transition-timing-function:ease}.hamburger-inner::before,.hamburger-inner::after{content:"";display:block}.hamburger-inner::before{top:-10px}.hamburger-inner::after{bottom:-10px}.hamburger--spin .hamburger-inner{transition-duration:.22s;transition-timing-function:cubic-bezier(.55,.055,.675,.19)}.hamburger--spin .hamburger-inner::before{transition:top .1s .25s ease-in,opacity .1s ease-in}.hamburger--spin .hamburger-inner::after{transition:bottom .1s .25s ease-in,transform .22s cubic-bezier(.55,.055,.675,.19)}.hamburger--spin.is-active .hamburger-inner{transform:rotate(225deg);transition-delay:.12s;transition-timing-function:cubic-bezier(.215,.61,.355,1)}.hamburger--spin.is-active .hamburger-inner::before{top:0;opacity:0;transition:top .1s ease-out,opacity .1s .12s ease-out}.hamburger--spin.is-active .hamburger-inner::after{bottom:0;transform:rotate(-90deg);transition:bottom .1s ease-out,transform .22s .12s cubic-bezier(.215,.61,.355,1)}#toggle-menu{background:0 0;border:none;position:absolute;right:0;top:0;z-index:2;cursor:pointer;outline:none}[dir=rtl] #toggle-menu{left:0;right:auto}@media(min-width:768px){#toggle-menu{display:none}}#toggle-menu.is-active .hamburger-inner,#toggle-menu.is-active .hamburger-inner::before,#toggle-menu.is-active .hamburger-inner::after{background-color:var(--accent-color)}#main-menu{list-style:none;overflow-y:auto;flex-grow:1;font-size:1.4rem;background-color:var(--card-background);box-shadow:var(--shadow-l1);display:none;margin:0 calc(var(--container-padding) * -1);padding:var(--spacing-2xl)}@media(min-width:1280px){#main-menu{padding:15px 0}}#main-menu,#main-menu .menu-bottom-section ol{flex-direction:column;gap:var(--spacing-2xl)}@media(min-width:1280px){#main-menu,#main-menu .menu-bottom-section ol{gap:var(--spacing-xl)}}#main-menu.show{display:flex}@media(min-width:768px){#main-menu{align-items:flex-end;display:flex;background-color:initial;padding:0;box-shadow:none;margin:0}}#main-menu li{position:relative;vertical-align:middle;padding:0}@media(min-width:768px){#main-menu li{width:100%}}#main-menu li svg{stroke:currentColor;stroke-width:1.33;width:20px;height:20px}#main-menu li a{height:100%;display:inline-flex;align-items:center;color:var(--body-text-color);gap:var(--menu-icon-separation)}#main-menu li span{flex:1}#main-menu li.current a{color:var(--accent-color);font-weight:700}#main-menu li.menu-bottom-section{margin-top:auto}#main-menu li.menu-bottom-section ol{display:flex;padding-left:0}.menu-social{list-style:none;padding:0;margin:0;display:flex;flex-direction:row;gap:var(--spacing-sm)}.menu-social svg{width:24px;height:24px;stroke:var(--body-text-color);stroke-width:1.33}.article-list{display:flex;flex-direction:column;gap:var(--section-separation)}.article-list article{display:flex;flex-direction:column;background-color:var(--card-background);box-shadow:var(--shadow-l1);border-radius:var(--card-border-radius);overflow:hidden;transition:box-shadow .3s ease}.article-list article:hover{box-shadow:var(--shadow-l2)}.article-list article .article-image img{width:100%;height:var(--article-image-height);object-fit:cover}.article-details{display:flex;flex-direction:column;justify-content:center;padding:var(--card-padding);gap:var(--spacing-md)}.article-title{font-family:var(--article-font-family);font-weight:600;margin:0;color:var(--card-text-color-main);font-size:2.2rem}@media(min-width:1280px){.article-title{font-size:2.4rem}}.article-title a{color:var(--card-text-color-main)}.article-title a:hover{opacity:.8}.article-subtitle{font-weight:400;color:var(--card-text-color-secondary);line-height:1.5;margin:0;font-size:1.75rem}@media(min-width:1280px){.article-subtitle{font-size:2rem}}.article-title-wrapper{display:flex;flex-direction:column;gap:8px}.article-meta{display:flex;flex-direction:column;gap:var(--spacing-lg);font-size:1.4rem}.article-meta svg{vertical-align:middle;width:20px;height:20px;stroke-width:1.33;flex-shrink:0}.article-meta,.article-meta time,.article-meta a,.article-meta span{font-size:1.4rem;color:var(--card-text-color-tertiary)}.article-meta>.inline-meta{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--spacing-md)}.article-category,.article-tags{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.article-category a,.article-tags a{color:var(--accent-color-text);background-color:var(--accent-color);padding:8px 16px;border-radius:var(--tag-border-radius);display:inline-block;font-size:1.4rem;transition:background-color .5s ease}.article-category a:hover,.article-tags a:hover{color:var(--accent-color-text);background-color:var(--accent-color-darker)}.article-list--compact{background-color:var(--card-background);box-shadow:var(--shadow-l1);border-radius:var(--card-border-radius);--image-size:var(--article-compact-image-size)}.article-list--compact article>a{display:flex;align-items:center;padding:var(--small-card-padding);gap:var(--spacing-md)}.article-list--compact article:not(:last-of-type){border-bottom:1.5px solid var(--card-separator-color)}.article-list--compact article .article-details{flex-grow:1;padding:0;min-height:var(--image-size);gap:var(--spacing-sm)}.article-list--compact article .article-title{margin:0;font-size:1.6rem}@media(min-width:768px){.article-list--compact article .article-title{font-size:1.8rem}}.article-list--compact article .article-image img{width:var(--image-size);height:var(--image-size);object-fit:cover}.article-list--compact article .article-preview{font-size:1.4rem;color:var(--card-text-color-tertiary);line-height:1.5}.article-list--tile article{position:relative;width:var(--article-tile-width);height:var(--article-tile-height);background-color:var(--card-background);box-shadow:var(--shadow-l1);border-radius:var(--card-border-radius);overflow:hidden;transition:box-shadow .3s ease}.article-list--tile article:hover{box-shadow:var(--shadow-l2)}.article-list--tile article.has-image .article-details{background-color:var(--article-tile-overlay-bg)}.article-list--tile article.has-image .article-title{color:var(--article-tile-text-color)}.article-list--tile article .article-image{position:absolute;top:0;left:0;width:100%;height:100%}.article-list--tile article .article-image img{width:100%;height:100%;object-fit:cover}.article-list--tile article .article-details{border-radius:var(--card-border-radius);position:relative;height:100%;width:100%;display:flex;flex-direction:column;justify-content:flex-end;z-index:2;padding:15px}@media(min-width:640px){.article-list--tile article .article-details{padding:20px}}.article-list--tile article .article-title{font-size:2rem;font-weight:500;color:var(--card-text-color-main)}@media(min-width:640px){.article-list--tile article .article-title{font-size:2.2rem}}.mermaid:not([data-processed]){background:var(--card-background);min-height:150px;border-radius:8px;position:relative;overflow:hidden;font-size:0!important;line-height:0;color:transparent}.mermaid:not([data-processed])::after{visibility:visible;content:"";position:absolute;top:50%;left:50%;width:28px;height:28px;margin:-14px 0 0 -14px;border:3px solid var(--card-background);border-top-color:var(--accent-color,#3273dc);border-radius:50%;animation:mermaid-spinner .8s linear infinite}@keyframes mermaid-spinner{to{transform:rotate(360deg)}}.mermaid-wrapper{position:relative;margin:1rem 0}.mermaid-wrapper .mermaid{display:flex;justify-content:center}.mermaid-wrapper .mermaid svg{display:block;max-width:100%;height:auto}.mermaid-toolbar{position:absolute;top:.75rem;right:.75rem;display:flex;gap:.5rem;z-index:10}.mermaid-toolbar button{padding:.5rem 1rem;background:var(--mermaid-toolbar-btn-bg);border:2px solid var(--mermaid-toolbar-btn-text);border-radius:6px;cursor:pointer;font-size:1rem;font-weight:600;color:var(--mermaid-toolbar-btn-text);box-shadow:0 2px 8px rgba(0,0,0,.3);transition:all .2s}.mermaid-toolbar button:hover{background:var(--mermaid-toolbar-btn-text);color:var(--card-background);transform:scale(1.05)}.mermaid-modal{display:none;position:fixed;top:0;left:0;width:100vw;height:100vh;background:var(--mermaid-modal-bg);z-index:9999}.mermaid-modal.active{display:flex;flex-direction:column}.mermaid-modal-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:rgba(255,255,255,.1)}.mermaid-modal-controls{display:flex;gap:.5rem}.mermaid-modal-controls button,.mermaid-modal-close{padding:.5rem 1rem;background:var(--mermaid-modal-btn-bg);border:none;border-radius:4px;cursor:pointer;font-size:.9rem;color:var(--card-text-color-main)}.mermaid-modal-controls button:hover,.mermaid-modal-close:hover{background:var(--mermaid-modal-btn-hover)}.mermaid-modal-body{flex:1;overflow:hidden;position:relative}.mermaid-modal-content{position:absolute;top:1rem;left:1rem;right:1rem;bottom:1rem;border-radius:8px;overflow:hidden;background:var(--mermaid-modal-content-bg)}.mermaid-panzoom-container{display:inline-block;transform-origin:0 0;visibility:hidden}.mermaid-panzoom-container.ready{visibility:visible}.mermaid-panzoom-container svg{display:block}.mermaid-offscreen{position:absolute;left:-9999px;visibility:hidden;width:800px}.widget{display:flex;flex-direction:column}.widget .widget-icon svg{width:var(--widget-icon-size);height:var(--widget-icon-size);stroke-width:1.6;color:var(--body-text-color)}.tagCloud .tagCloud-tags{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.tagCloud .tagCloud-tags a{background-color:var(--card-background);box-shadow:var(--shadow-l1);border-radius:var(--card-border-radius);border-radius:var(--tag-border-radius);padding:8px 20px;color:var(--card-text-color-main);font-size:1.4rem;transition:box-shadow .3s ease}.tagCloud .tagCloud-tags a:hover{box-shadow:var(--shadow-l2)}.widget.archives .widget-archive--list{background-color:var(--card-background);box-shadow:var(--shadow-l1);border-radius:var(--card-border-radius)}.widget.archives .archives-year:not(:last-of-type){border-bottom:1.5px solid var(--card-separator-color)}.widget.archives .archives-year a{font-size:1.4rem;padding:18px 25px;display:flex}.widget.archives .archives-year a span.year{flex:1;color:var(--card-text-color-main);font-weight:700}.widget.archives .archives-year a span.count{color:var(--card-text-color-tertiary)}footer.site-footer{padding:var(--spacing-lg)0 var(--section-separation);font-size:1.4rem;line-height:1.75}footer.site-footer:before{content:"";display:block;height:3px;width:50px;background:var(--body-text-color);margin-bottom:var(--spacing-lg)}footer.site-footer .copyright{color:var(--accent-color);font-weight:700;margin-bottom:var(--spacing-xs)}footer.site-footer .powerby{color:var(--body-text-color);font-weight:400;font-size:1.2rem}footer.site-footer .powerby a{color:var(--body-text-color)}.pagination{display:flex;background-color:var(--card-background);box-shadow:var(--shadow-l1);border-radius:var(--card-border-radius);overflow:hidden}.pagination .hide-on-mobile,.pagination .pagination-link{display:none}@media(min-width:768px){.pagination .hide-on-mobile,.pagination .pagination-link{display:flex}}.pagination .page-link{padding:var(--spacing-sm)0;margin:0;border:0;background:0 0;font:inherit;border-radius:0;display:flex;align-items:center;justify-content:center;flex:auto;min-width:36px;color:var(--card-text-color-secondary);text-decoration:none}@media(min-width:768px){.pagination .page-link{min-width:48px;padding:var(--spacing-md)0}}.pagination .page-link:first-child,.pagination .page-link:last-child{flex:0 0 var(--spacing-3xl);padding:var(--spacing-sm)}@media(min-width:768px){.pagination .page-link:first-child,.pagination .page-link:last-child{flex:0 0 48px;padding:var(--spacing-md)}}.pagination .page-link:hover:not(.current):not(.disabled){background-color:var(--card-background-selected);opacity:.8}.pagination .page-link.current{background-color:var(--card-background-selected);color:var(--card-text-color-main);font-weight:700;cursor:default}.pagination .page-link.disabled{opacity:.3;cursor:not-allowed;pointer-events:none;color:var(--card-text-color-secondary)}.pagination .page-link svg{width:20px;height:20px}.pagination .page-link.pagination-jump-trigger{cursor:pointer}#pagination-jump-dialog{border:none;background-color:var(--card-background);box-shadow:var(--shadow-l1);border-radius:var(--card-border-radius);box-shadow:var(--shadow-l2);color:var(--body-text-color);margin:auto;width:calc(100% - (var(--container-padding) * 2));max-width:320px;padding:var(--card-padding)}#pagination-jump-dialog::backdrop{background-color:rgba(0,0,0,.4);opacity:0;animation:backdrop-fade-in .3s ease forwards}#pagination-jump-dialog[open]{animation:scale-up .3s cubic-bezier(.175,.885,.32,1.275)forwards}#pagination-jump-dialog.closing{animation:scale-down .2s ease forwards}#pagination-jump-dialog.closing::backdrop{animation:backdrop-fade-out .2s ease forwards}#pagination-jump-dialog .pagination-jump-form{display:flex;flex-direction:column;gap:var(--spacing-md)}#pagination-jump-dialog .pagination-jump-form header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-xs)}#pagination-jump-dialog .pagination-jump-form header label{cursor:pointer}#pagination-jump-dialog .pagination-jump-form header .title{font-size:1.6rem;font-weight:600;color:var(--card-text-color-main);margin:0}#pagination-jump-dialog .pagination-jump-form header .subtitle{font-size:1.3rem;color:var(--card-text-color-tertiary)}#pagination-jump-dialog .pagination-jump-form .pagination-jump-input-group{display:flex;gap:var(--spacing-sm);align-items:stretch}#pagination-jump-dialog .pagination-jump-form .pagination-jump-input-group input[type=number]{flex:1;width:100%;min-width:0;padding:0 var(--spacing-md);height:44px;border:1.5px solid var(--card-separator-color);border-radius:6px;background-color:var(--body-background);color:var(--card-text-color-main);font-size:1.6rem;outline:none;-webkit-appearance:none;appearance:none;transition:border-color .2s ease,box-shadow .2s ease;-moz-appearance:textfield}#pagination-jump-dialog .pagination-jump-form .pagination-jump-input-group input[type=number]::-webkit-outer-spin-button,#pagination-jump-dialog .pagination-jump-form .pagination-jump-input-group input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}#pagination-jump-dialog .pagination-jump-form .pagination-jump-input-group input[type=number]:focus,#pagination-jump-dialog .pagination-jump-form .pagination-jump-input-group input[type=number]:focus-visible{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-color) 20%,transparent)}#pagination-jump-dialog .pagination-jump-form .pagination-jump-input-group .btn-primary{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;padding:0 var(--spacing-xl);height:44px;background-color:var(--accent-color);color:var(--accent-color-text);border:none;border-radius:6px;font-size:1.5rem;font-weight:700;cursor:pointer;transition:background-color .2s ease,box-shadow .2s ease}#pagination-jump-dialog .pagination-jump-form .pagination-jump-input-group .btn-primary:hover{background-color:var(--accent-color-darker);box-shadow:var(--shadow-l1)}#pagination-jump-dialog .pagination-jump-form .pagination-jump-input-group .btn-primary:active{box-shadow:none}#pagination-jump-dialog .pagination-jump-form .pagination-jump-hint{display:flex;align-items:center;justify-content:flex-start;gap:var(--spacing-sm);font-size:1.3rem;color:var(--card-text-color-tertiary);margin-top:calc(var(--spacing-xs) * -1)}#pagination-jump-dialog .pagination-jump-form .pagination-jump-hint kbd{background-color:var(--body-background);border:1px solid var(--card-separator-color);border-radius:4px;padding:3px 6px;font-family:var(--base-font-family);font-size:1.1rem;box-shadow:0 2px 0 var(--card-separator-color);color:var(--card-text-color-main);font-weight:600;line-height:1}@keyframes scale-up{from{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes scale-down{from{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}@keyframes backdrop-fade-in{from{opacity:0}to{opacity:1}}@keyframes backdrop-fade-out{from{opacity:1}to{opacity:0}}@media(min-width:768px){.sidebar.sticky{position:sticky}}.left-sidebar{display:flex;flex-direction:column;flex-shrink:0;align-self:stretch;margin-bottom:calc(-1 * var(--sidebar-element-separation));max-width:none;width:100%;position:relative;--sidebar-avatar-size:100px;--sidebar-element-separation:var(--spacing-lg);--emoji-size:40px;--emoji-font-size:20px}@media(min-width:768px){.left-sidebar{gap:var(--sidebar-element-separation)}}@media(min-width:768px){.left-sidebar{margin-bottom:0}}.left-sidebar>:not(:last-child){margin-bottom:var(--sidebar-element-separation)}@media(min-width:768px){.left-sidebar>:not(:last-child){margin-bottom:0}}@media(min-width:768px){.left-sidebar{width:auto;padding-top:var(--main-top-padding);padding-bottom:var(--main-top-padding);max-height:100vh}}@media(min-width:1536px){.left-sidebar{--sidebar-avatar-size:120px;--sidebar-element-separation:var(--spacing-xl);--emoji-size:40px}}.left-sidebar.sticky{top:0}.left-sidebar.compact{--sidebar-avatar-size:80px;--emoji-size:30px;--emoji-font-size:15px}@media(min-width:1024px){.left-sidebar.compact header{flex-direction:row}}.left-sidebar.compact header .site-meta{gap:var(--spacing-xs)}.left-sidebar.compact header .site-name{font-size:1.4rem}@media(min-width:1536px){.left-sidebar.compact header .site-name{font-size:1.75rem}}.left-sidebar.compact header .site-description{font-size:1.4rem}.right-sidebar{width:100%;display:none;flex-direction:column;gap:var(--widget-separation)}.right-sidebar.sticky{top:0}@media(min-width:1024px){.right-sidebar{padding-top:var(--main-top-padding);padding-bottom:var(--main-top-padding)}}.sidebar header{z-index:1;transition:box-shadow .5s ease;display:flex;flex-direction:column;gap:var(--sidebar-element-separation)}@media(min-width:768px){.sidebar header{padding:0}}.sidebar header .site-avatar{position:relative;margin:0;width:var(--sidebar-avatar-size);height:var(--sidebar-avatar-size);flex-shrink:0}.sidebar header .site-avatar .site-logo{width:100%;height:100%;border-radius:100%;box-shadow:var(--shadow-l1)}.sidebar header .site-avatar .emoji{position:absolute;width:var(--emoji-size);height:var(--emoji-size);line-height:var(--emoji-size);border-radius:100%;bottom:0;right:0;text-align:center;font-size:var(--emoji-font-size);background-color:var(--card-background);box-shadow:var(--shadow-l2)}.sidebar header .site-meta{display:flex;flex-direction:column;gap:var(--spacing-sm);justify-content:center}.sidebar header .site-name{color:var(--accent-color);margin:0;font-size:1.6rem}@media(min-width:1536px){.sidebar header .site-name{font-size:1.8rem}}.sidebar header .site-description{color:var(--body-text-color);font-weight:400;margin:0;font-size:1.4rem}@media(min-width:1536px){.sidebar header .site-description{font-size:1.6rem}}[data-scheme=dark] #dark-mode-toggle{color:var(--accent-color);font-weight:700}[data-scheme=dark] #dark-mode-toggle .icon-tabler-toggle-left{display:none}[data-scheme=dark] #dark-mode-toggle .icon-tabler-toggle-right{display:unset}#dark-mode-toggle{margin-top:auto;color:var(--body-text-color);display:flex;align-items:center;cursor:pointer;gap:var(--menu-icon-separation)}#dark-mode-toggle .icon-tabler-toggle-right{display:none}#i18n-switch{color:var(--body-text-color);display:inline-flex;align-content:center;gap:var(--menu-icon-separation)}#i18n-switch select{border:0;background:0 0!important;color:var(--body-text-color);padding:0!important;cursor:pointer;font-family:inherit;font-size:inherit;appearance:none;-webkit-appearance:none;-moz-appearance:none}#i18n-switch select::-ms-expand{display:none}#i18n-switch select option{color:var(--card-text-color-main);background-color:var(--card-background)}html{font-size:62.5%;overflow-y:scroll;scrollbar-gutter:stable}*{box-sizing:border-box}body{background:var(--body-background);margin:0;font-family:var(--base-font-family);font-size:1.6rem;text-autospace:ideograph-alpha ideograph-numeric punctuation insert;text-spacing-trim:trim-start allow-end;-ms-text-autospace:ideograph-alpha;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.article-page.hide-sidebar-sm .left-sidebar{display:none}@media(min-width:768px){.article-page.hide-sidebar-sm .left-sidebar{display:inherit}}.article-page .main-article{background:var(--card-background);border-radius:var(--card-border-radius);box-shadow:var(--shadow-l1);overflow:hidden}.article-page .main-article .article-header .article-image img{height:auto;width:100%;max-height:50vh;object-fit:cover}.article-page .main-article .article-header .article-details{padding:var(--card-padding);padding-bottom:0}.article-page .main-article .article-content{margin:var(--card-padding)0;color:var(--card-text-color-main)}.article-page .main-article .article-content .footnotes{font-family:var(--base-font-family)}.article-page .main-article .article-content img{max-width:100%;height:auto}.article-page .main-article .article-footer{margin:var(--card-padding);gap:var(--spacing-2xl)}.toc-nav{overflow-x:auto;max-height:75vh}.toc-nav ol,.toc-nav ul{margin:0;padding:0}.toc-nav ol{list-style-type:none;counter-reset:item}.toc-nav ol li a:first-of-type::before{counter-increment:item;content:counters(item,".")". ";font-weight:700;margin-right:5px}.toc-nav>ul{padding:0 1em}.toc-nav li{margin:var(--spacing-md)0 var(--spacing-md)var(--spacing-lg);padding:var(--spacing-xs)}.toc-nav li>ol,.toc-nav li>ul{margin-top:var(--spacing-sm);padding-left:var(--spacing-sm);margin-bottom:calc(var(--spacing-xs) * -1)}.toc-nav li>ol>li:last-child,.toc-nav li>ul>li:last-child{margin-bottom:0}.toc-nav li.active-class>a{border-left:var(--heading-border-size)solid var(--accent-color);font-weight:700}.toc-nav ul li.active-class>a{display:block}.toc-nav>ul>li.active-class>a{margin-left:calc(-25px - 1em);padding-left:calc(25px + 1em - var(--heading-border-size))}.toc-nav>ol>li.active-class>a{margin-left:calc(-9px - 1em);padding-left:calc(9px + 1em - var(--heading-border-size));display:block}.toc-nav>ul>li>ul>li.active-class>a{margin-left:calc(-60px - 1em);padding-left:calc(60px + 1em - var(--heading-border-size))}.toc-nav>ol>li>ol>li.active-class>a{margin-left:calc(-44px - 1em);padding-left:calc(44px + 1em - var(--heading-border-size));display:block}.toc-nav>ul>li>ul>li>ul>li.active-class>a{margin-left:calc(-95px - 1em);padding-left:calc(95px + 1em - var(--heading-border-size))}.toc-nav>ol>li>ol>li>ol>li.active-class>a{margin-left:calc(-79px - 1em);padding-left:calc(79px + 1em - var(--heading-border-size));display:block}.toc-nav>ul>li>ul>li>ul>li>ul>li.active-class>a{margin-left:calc(-130px - 1em);padding-left:calc(130px + 1em - var(--heading-border-size))}.toc-nav>ol>li>ol>li>ol>li>ol>li.active-class>a{margin-left:calc(-114px - 1em);padding-left:calc(114px + 1em - var(--heading-border-size));display:block}.toc-nav>ul>li>ul>li>ul>li>ul>li>ul>li.active-class>a{margin-left:calc(-165px - 1em);padding-left:calc(165px + 1em - var(--heading-border-size))}.toc-nav>ol>li>ol>li>ol>li>ol>li>ol>li.active-class>a{margin-left:calc(-149px - 1em);padding-left:calc(149px + 1em - var(--heading-border-size));display:block}.widget--toc,.article-toc{display:flex;flex-direction:column;color:var(--card-text-color-main)}.widget--toc{background-color:var(--card-background);border-radius:var(--card-border-radius);box-shadow:var(--shadow-l1);overflow:hidden}.article-toc{padding:0 var(--card-padding);margin-top:var(--spacing-lg)}@media(min-width:1024px){.article-toc{display:none}}.article-toc details{background-color:var(--card-background);border-radius:var(--card-border-radius);box-shadow:var(--shadow-l2)}.article-toc details[open] .article-toc-title svg{transform:rotate(90deg)}.article-toc details summary{list-style:none;padding:var(--spacing-md)var(--spacing-lg);cursor:pointer}.article-toc details summary::-webkit-details-marker{display:none}.article-toc details summary .article-toc-title{display:flex;align-items:center;gap:var(--spacing-sm);text-transform:uppercase;font-size:1.4rem;font-weight:700;color:var(--card-text-color-tertiary)}.article-toc details summary .article-toc-title svg{width:20px;height:20px;stroke-width:1.33;transition:transform .3s ease}.article-content{font-family:var(--article-font-family);font-size:var(--article-font-size);padding:0 var(--card-padding);line-height:var(--article-line-height)}.article-content>p{margin:1.5em 0}.article-content h1,.article-content h2,.article-content h3,.article-content h4,.article-content h5,.article-content h6{margin-inline-start:calc((var(--card-padding)) * -1);padding-inline-start:calc(var(--card-padding) - var(--heading-border-size));border-inline-start:var(--heading-border-size)solid var(--accent-color);position:relative}.article-content h1 a.header-anchor,.article-content h2 a.header-anchor,.article-content h3 a.header-anchor,.article-content h4 a.header-anchor,.article-content h5 a.header-anchor,.article-content h6 a.header-anchor{transition:opacity .3s ease;opacity:0;position:absolute;left:0;width:var(--card-padding);text-align:center;color:var(--accent-color)}.article-content h1 a.header-anchor:before,.article-content h2 a.header-anchor:before,.article-content h3 a.header-anchor:before,.article-content h4 a.header-anchor:before,.article-content h5 a.header-anchor:before,.article-content h6 a.header-anchor:before{content:"#"}.article-content h1:hover a.header-anchor,.article-content h1:focus a.header-anchor,.article-content h2:hover a.header-anchor,.article-content h2:focus a.header-anchor,.article-content h3:hover a.header-anchor,.article-content h3:focus a.header-anchor,.article-content h4:hover a.header-anchor,.article-content h4:focus a.header-anchor,.article-content h5:hover a.header-anchor,.article-content h5:focus a.header-anchor,.article-content h6:hover a.header-anchor,.article-content h6:focus a.header-anchor{opacity:1}.article-content figure{text-align:center}.article-content figure figcaption{font-size:1.4rem;color:var(--card-text-color-secondary)}.article-content blockquote{position:relative;margin:1.5em 0;border-inline-start:var(--blockquote-border-size)solid var(--card-separator-color);padding:var(--spacing-md)calc(var(--card-padding) - var(--blockquote-border-size));background-color:var(--blockquote-background-color)}.article-content blockquote .cite{display:block;text-align:right;font-size:.75em}.article-content blockquote .cite a{text-decoration:underline}.article-content blockquote.alert .alert-header{display:flex;align-items:center;gap:.5em;font-weight:700}.article-content blockquote.alert .alert-body>:last-child{margin-bottom:0}.article-content blockquote.alert.alert-note{border-color:var(--alert-note-color);background-color:var(--alert-note-background)}.article-content blockquote.alert.alert-note .alert-title{color:var(--alert-note-color)}.article-content blockquote.alert.alert-tip{border-color:var(--alert-tip-color);background-color:var(--alert-tip-background)}.article-content blockquote.alert.alert-tip .alert-title{color:var(--alert-tip-color)}.article-content blockquote.alert.alert-important{border-color:var(--alert-important-color);background-color:var(--alert-important-background)}.article-content blockquote.alert.alert-important .alert-title{color:var(--alert-important-color)}.article-content blockquote.alert.alert-warning{border-color:var(--alert-warning-color);background-color:var(--alert-warning-background)}.article-content blockquote.alert.alert-warning .alert-title{color:var(--alert-warning-color)}.article-content blockquote.alert.alert-caution{border-color:var(--alert-caution-color);background-color:var(--alert-caution-background)}.article-content blockquote.alert.alert-caution .alert-title{color:var(--alert-caution-color)}.article-content hr{width:100px;margin:40px auto;background:var(--card-text-color-tertiary);height:2px;border:0;opacity:.55}.article-content code{color:var(--code-text-color);background-color:var(--code-background-color);padding:2px 4px;border-radius:var(--tag-border-radius);font-family:var(--code-font-family)}.article-content a,.article-content code{word-break:break-word}.article-content .gallery{position:relative;display:flex;flex-direction:row;justify-content:center;margin:1.5em 0;gap:var(--spacing-sm)}.article-content .gallery figure{margin:0}.article-content pre{overflow-x:auto;display:block;background-color:var(--pre-background-color);color:var(--pre-text-color);font-family:var(--code-font-family);line-height:1.428571429;word-break:break-all;padding:var(--card-padding)}[dir=rtl] .article-content pre{direction:ltr}.article-content pre code{color:unset;border:none;background:0 0;padding:0}.article-content .highlight{background-color:var(--pre-background-color);padding:var(--card-padding);position:relative}.article-content .highlight pre{background-color:initial}.article-content .highlight:hover .copyCodeButton{opacity:1}[dir=rtl] .article-content .highlight{direction:ltr}.article-content .highlight pre{padding:0;margin:0;width:auto}.article-content .copyCodeButton{position:absolute;top:calc(var(--card-padding));right:calc(var(--card-padding));background:var(--card-background);border:none;box-shadow:var(--shadow-l2);border-radius:var(--tag-border-radius);padding:8px 16px;color:var(--card-text-color-main);cursor:pointer;font-size:14px;opacity:0;transition:opacity .3s ease}.article-content .table-wrapper{padding:0 var(--card-padding);overflow-x:auto;display:block}.article-content table{width:100%;border-collapse:collapse;border-spacing:0;margin-bottom:1.5em;font-size:.96em}.article-content th,.article-content td{text-align:left;padding:4px 8px 4px 10px;border:1px solid var(--table-border-color)}.article-content td{vertical-align:top}.article-content tr:nth-child(even){background-color:var(--tr-even-background-color)}.article-content .twitter-tweet{color:var(--card-text-color-main)}.article-content .video-wrapper{position:relative;width:100%;height:0;padding-bottom:56.25%;overflow:hidden}.article-content .video-wrapper>iframe,.article-content .video-wrapper>video{position:absolute;width:100%;height:100%;left:0;top:0;border:0}.article-content .gitlab-embed-snippets{margin:0!important}.article-content .gitlab-embed-snippets .file-holder.snippet-file-content{margin-block-end:0!important;margin-block-start:0!important;margin-left:calc((var(--card-padding)) * -1)!important;margin-right:calc((var(--card-padding)) * -1)!important;padding:0 var(--card-padding)!important}.article-content blockquote,.article-content figure,.article-content .highlight,.article-content pre,.article-content .gallery,.article-content .video-wrapper,.article-content .table-wrapper,.article-content .s_video_simple{margin-left:calc((var(--card-padding)) * -1);margin-right:calc((var(--card-padding)) * -1);width:calc(100% + var(--card-padding) * 2)}.article-content .katex-display>.katex{overflow-x:auto;overflow-y:hidden}.article-content kbd{border:1px solid var(--kbd-border-color);font-weight:700;font-size:.9em;line-height:1;padding:2px 4px;border-radius:4px;display:inline-block}.section-card{background-color:var(--card-background);box-shadow:var(--shadow-l1);border-radius:var(--card-border-radius);padding:var(--small-card-padding);display:flex;align-items:center;gap:var(--spacing-lg);--separation:15px}.section-card .section-term{font-size:2.2rem;margin:0;color:var(--card-text-color-main)}.section-card .section-description{font-weight:400;color:var(--card-text-color-secondary);font-size:1.6rem;margin:0}.section-card .section-details{flex-grow:1;display:flex;flex-direction:column;gap:8px}.section-card .section-image img{width:60px;height:60px;object-fit:cover}.section-card .section-count{color:var(--card-text-color-tertiary);font-size:1.4rem;margin:0;font-weight:700;text-transform:uppercase}@property --left-edge-fade-size{syntax: "<length>";
  inherits: false;
  initial-value: 0px; }@property --right-edge-fade-size{syntax: "<length>";
  inherits: false;
  initial-value: 64px; }.subsection-list{--shadow-overlap-x:calc(var(--shadow-l2-blur) + 4px);--shadow-overlap-y:calc(var(--shadow-l2-blur) + var(--shadow-l2-y) + 4px);--edge-fade-size:64px;--left-edge-fade-size:0px;--right-edge-fade-size:var(--edge-fade-size);overflow-x:auto;--overlap-x:min(var(--shadow-overlap-x), var(--container-padding));margin-left:calc(var(--overlap-x) * -1);margin-right:calc(var(--overlap-x) * -1);margin-bottom:calc(var(--shadow-overlap-y) * -1);--subsection-mask-image:linear-gradient(
        to right,
        transparent 0%,
        rgb(0 0 0 / 0.06) calc(var(--left-edge-fade-size) * 0.12),
        rgb(0 0 0 / 0.2) calc(var(--left-edge-fade-size) * 0.3),
        rgb(0 0 0 / 0.45) calc(var(--left-edge-fade-size) * 0.52),
        rgb(0 0 0 / 0.72) calc(var(--left-edge-fade-size) * 0.76),
        black var(--left-edge-fade-size),
        black calc(100% - var(--right-edge-fade-size)),
        rgb(0 0 0 / 0.72) calc(100% - (var(--right-edge-fade-size) * 0.76)),
        rgb(0 0 0 / 0.45) calc(100% - (var(--right-edge-fade-size) * 0.52)),
        rgb(0 0 0 / 0.2) calc(100% - (var(--right-edge-fade-size) * 0.3)),
        rgb(0 0 0 / 0.06) calc(100% - (var(--right-edge-fade-size) * 0.12)),
        transparent 100%
    );-webkit-mask-image:var(--subsection-mask-image);mask-image:var(--subsection-mask-image)}[dir=rtl] .subsection-list{margin-left:calc(var(--overlap-x) * -1);margin-right:calc(var(--overlap-x) * -1)}.subsection-list .article-list--tile{display:flex;padding:var(--spacing-xs)var(--overlap-x)var(--shadow-overlap-y);width:max-content;gap:var(--spacing-lg)}[dir=rtl] .subsection-list .article-list--tile{padding:var(--spacing-xs)var(--overlap-x)var(--shadow-overlap-y)}.subsection-list .article-list--tile article{flex-shrink:0}.subsection-list .article-list--tile article .article-title{margin:0;font-size:1.8rem}.subsection-list .article-list--tile article .article-details{padding:var(--spacing-lg)}@supports(animation-timeline:scroll(self inline)){.subsection-list{animation:subsection-left-fade linear both,subsection-right-fade linear both;animation-timeline:scroll(self inline);animation-range:1px 24px,0% 100%;animation-timing-function:ease-out,linear}}@keyframes subsection-left-fade{from{--left-edge-fade-size:0px}to{--left-edge-fade-size:var(--edge-fade-size)}}@keyframes subsection-right-fade{0%,92%{--right-edge-fade-size:var(--edge-fade-size)}100%{--right-edge-fade-size:0px}}.not-found-card{background-color:var(--card-background);box-shadow:var(--shadow-l1);border-radius:var(--card-border-radius);padding:var(--card-padding)}.search-form{position:relative;--button-size:80px}.search-form.widget{--button-size:60px}.search-form.widget label{font-size:1.3rem;top:var(--spacing-sm)}.search-form.widget input{font-size:1.5rem;padding:var(--spacing-2xl)var(--spacing-lg)var(--spacing-md)}.search-form p{position:relative;margin:0}.search-form label{position:absolute;top:var(--spacing-md);inset-inline-start:var(--spacing-lg);font-size:1.4rem;color:var(--card-text-color-tertiary)}.search-form input{padding:40px 20px 20px;background-color:var(--card-background);box-shadow:var(--shadow-l1);border-radius:var(--card-border-radius);color:var(--card-text-color-main);width:100%;border:0;-webkit-appearance:none;appearance:none;transition:box-shadow .3s ease;font-size:1.8rem}.search-form input:focus{outline:0;box-shadow:var(--shadow-l2)}.search-form button{position:absolute;inset-inline-end:0;top:0;height:100%;width:var(--button-size);cursor:pointer;background-color:initial;border:0;padding:0 10px}.search-form button:focus{outline:0}.search-form button:focus svg{stroke-width:2;color:var(--accent-color)}.search-form button svg{color:var(--card-text-color-secondary);stroke-width:1.33;transition:all .3s ease;width:20px;height:20px}.search-result.hidden{display:none}.cookie-banner{position:fixed;bottom:0;left:0;right:0;z-index:9999;padding:var(--container-padding);pointer-events:none}.cookie-banner[aria-hidden=true]{display:none}.cookie-banner__content{max-width:900px;margin:0 auto;background:var(--card-background);border-radius:var(--card-border-radius);box-shadow:var(--shadow-l2);padding:var(--card-padding);display:flex;flex-direction:column;gap:var(--spacing-md);pointer-events:auto}@media(min-width:768px){.cookie-banner__content{flex-direction:row;flex-wrap:wrap;align-items:center;gap:var(--spacing-lg)}}.cookie-banner__text{flex:1;min-width:200px}.cookie-banner__text strong{display:block;color:var(--card-text-color-main);font-size:1.6rem;margin-bottom:var(--spacing-xs)}.cookie-banner__text p{color:var(--card-text-color-secondary);font-size:1.4rem;line-height:1.6;margin:0}.cookie-banner__actions{display:flex;gap:var(--spacing-sm);flex-shrink:0}.cookie-banner__settings-link{width:auto;align-self:flex-start;background:0 0;border:none;color:var(--accent-color);font-size:1.3rem;cursor:pointer;padding:5px}.cookie-banner__settings-link:hover{text-decoration:underline}@media(min-width:768px){.cookie-banner__settings-link{margin-left:auto;align-self:center}}.cookie-btn{padding:10px 20px;border-radius:var(--tag-border-radius);font-size:1.4rem;font-weight:500;cursor:pointer;transition:all .2s ease;border:none}.cookie-btn--primary{background:var(--accent-color);color:var(--accent-color-text)}.cookie-btn--primary:hover{background:var(--accent-color-darker)}.cookie-btn--secondary{background:0 0;color:var(--card-text-color-main);border:1.5px solid var(--card-separator-color)}.cookie-btn--secondary:hover{background:var(--card-background-selected)}.cookie-settings{padding-top:20px;border-top:1.5px solid var(--card-separator-color)}.cookie-settings[aria-hidden=true]{display:none}.cookie-settings h3{color:var(--card-text-color-main);font-size:1.6rem;margin:0 0 var(--spacing-md)}.cookie-settings__actions{display:flex;justify-content:flex-end;gap:var(--spacing-sm);margin-top:var(--spacing-lg)}.cookie-category{padding:var(--spacing-md)0;border-bottom:1px solid var(--card-separator-color)}.cookie-category:last-of-type{border-bottom:none}.cookie-category label{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer}.cookie-category label input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent-color);cursor:pointer}.cookie-category label input[type=checkbox]:disabled{opacity:.6;cursor:not-allowed}.cookie-category label strong{color:var(--card-text-color-main);font-size:1.5rem}.cookie-category p{color:var(--card-text-color-secondary);font-size:1.3rem;margin:8px 0 0 28px;line-height:1.5}.cookie-settings-link{display:inline-block;color:var(--body-text-color);font-size:1.2rem;cursor:pointer;background:0 0;border:none;padding:0}.cookie-settings-link:hover{color:var(--accent-color);text-decoration:underline}.consent-placeholder{background-color:var(--card-background);box-shadow:var(--shadow-l1);border-radius:var(--card-border-radius);padding:var(--card-padding);text-align:center;color:var(--card-text-color-secondary);font-size:1.4rem}.consent-placeholder p{margin:0 0 var(--spacing-md)}a{text-decoration:none;color:var(--accent-color)}a:hover{color:var(--accent-color-darker)}a.link{box-shadow:0 -2px rgba(var(--link-background-color),var(--link-background-opacity))inset;transition:all .3s ease}a.link:hover{box-shadow:0 calc(-1rem * var(--article-line-height))rgba(var(--link-background-color),var(--link-background-opacity-hover))inset}.section-title{text-transform:uppercase;margin-top:0;margin-bottom:var(--spacing-sm);display:block;font-size:1.6rem;font-weight:700;color:var(--body-text-color)}.section-title a{color:var(--body-text-color)}:root{--sys-font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Droid Sans", Arial, "Noto Sans";--base-font-family:"Inter", var(--sys-font-family), sans-serif;--article-font-family:var(--base-font-family);--code-font-family:"IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace}:root{--bd-fs-title:clamp(2.80rem, calc(2.3543rem + 1.1429vw), 4.00rem);--bd-fs-lede:clamp(1.85rem, calc(1.7757rem + 0.1905vw), 2.05rem);--bd-fs-h2:clamp(2.20rem, calc(2.0143rem + 0.4762vw), 2.70rem);--bd-fs-h3:clamp(1.90rem, calc(1.7886rem + 0.2857vw), 2.20rem);--bd-fs-h4:clamp(1.70rem, calc(1.6629rem + 0.0952vw), 1.80rem);--bd-fs-body:clamp(1.75rem, calc(1.7129rem + 0.0952vw), 1.85rem);--bd-fs-row-title:clamp(1.95rem, calc(1.8386rem + 0.2857vw), 2.25rem);--bd-fs-row-title-lead:clamp(2.30rem, calc(2.1143rem + 0.4762vw), 2.80rem);--bd-fs-row-desc:clamp(1.55rem, calc(1.4943rem + 0.1429vw), 1.70rem);--bd-fs-meta:clamp(1.30rem, calc(1.2629rem + 0.0952vw), 1.40rem);--bd-fs-eyebrow:clamp(1.15rem, calc(1.1129rem + 0.0952vw), 1.25rem);--bd-fs-caption:clamp(1.35rem, calc(1.3129rem + 0.0952vw), 1.45rem);--bd-fs-fine:1.30rem;--bd-fs-chip:1.30rem;--bd-fs-menu:1.60rem;--bd-fs-menu-bottom:1.40rem;--bd-fs-site-name:1.70rem;--bd-fs-nav:1.45rem;--bd-fs-toc:1.40rem;--bd-fs-btn:1.50rem;--bd-fs-copyright:1.30rem;--bd-fs-powerby:1.15rem;--bd-fs-fact:clamp(2.60rem, calc(2.3771rem + 0.5714vw), 3.00rem);--bd-fs-table-th:1.15rem;--bd-fs-table-td:1.40rem;--bd-fs-cv-org:1.55rem;--bd-fs-code-inline:0.92em;--bd-fs-code-block:clamp(1.35rem, calc(1.3129rem + 0.0952vw), 1.45rem)}@media(min-width:768px){:root{--bd-fs-menu:1.50rem;--bd-fs-table-th:1.25rem;--bd-fs-table-td:1.50rem;--bd-fs-cv-org:1.65rem;--bd-fs-copyright:1.35rem}}@media(min-width:1536px){:root{--bd-fs-site-name:1.90rem}}:root{color-scheme:light;--body-background:#F4F5F6;--card-background:#FFFFFF;--card-background-selected:#ECEEF0;--accent-color:#1F4E6B;--accent-color-darker:#163A50;--accent-color-text:#FFFFFF;--card-text-color-main:#15191C;--card-text-color-secondary:#414C55;--body-text-color:#4D575F;--card-text-color-tertiary:#58626A;--card-separator-color:#E3E7EA;--bd-rule-on-card:var(--card-separator-color);--bd-rule:#D6DBDF;--bd-rule-sticky:#C6CDD3;--bd-border:#BEC5CB;--bd-border-strong:#74808B}:root[data-scheme=dark]{color-scheme:dark;--body-background:#0F1215;--card-background:#161A1E;--card-background-selected:#1F252B;--accent-color:#8FC1DE;--accent-color-darker:#B3D7ED;--accent-color-text:#07131B;--card-text-color-main:#F5F8FA;--card-text-color-secondary:#A8B2BA;--body-text-color:#99A3AB;--card-text-color-tertiary:#8C959D;--card-separator-color:#272D33;--bd-rule:#1F262C;--bd-rule-sticky:#2A3136;--bd-border:#343B43;--bd-border-strong:#737F8A}:root{--shadow-l1:0 0 0 1px var(--bd-border);--shadow-l2:0 0 0 1px var(--bd-border-strong);--card-border-radius:3px;--tag-border-radius:2px;--bd-btn-radius:2px}:root{--bd-space-1:4px;--bd-space-2:8px;--bd-space-3:12px;--bd-space-4:16px;--bd-space-5:24px;--bd-space-6:32px;--bd-space-7:44px;--bd-space-8:64px;--bd-tap-min:44px;--card-padding:16px;--small-card-padding:18px 20px;--section-separation:32px;--widget-separation:36px;--container-padding:16px;--main-top-padding:24px;--menu-icon-separation:12px}@media(min-width:768px){:root{--card-padding:30px;--small-card-padding:24px;--section-separation:44px;--container-padding:24px;--main-top-padding:48px}}@media(min-width:1280px){:root{--card-padding:40px;--section-separation:56px;--widget-separation:48px;--container-padding:32px;--main-top-padding:64px}}:root{--article-font-size:var(--bd-fs-body);--article-line-height:1.62;--bd-measure:62rem;--bd-column:68rem;--bd-rail-right:220px;--bd-container-max:100%}@media(min-width:1280px){:root{--bd-measure:74rem}}@media(min-width:1536px){:root{--bd-measure:82rem}}@media(min-width:1280px){:root{--bd-column:84rem}}@media(min-width:1536px){:root{--bd-column:96rem}}@media(min-width:1536px){:root{--bd-rail-right:280px}}@media(min-width:768px){:root{--article-line-height:1.72;--bd-container-max:1024px}}@media(min-width:1024px){:root{--bd-container-max:1120px}}@media(min-width:1280px){:root{--bd-container-max:1480px}}@media(min-width:1536px){:root{--bd-container-max:1680px}}:root{--heading-border-size:2px;--blockquote-border-size:2px;--blockquote-background-color:transparent;--link-background-color:31, 78, 107;--link-background-opacity:0;--link-background-opacity-hover:0.12;--code-background-color:rgba(var(--link-background-color), 0.07);--code-text-color:#262E34;--table-border-color:var(--card-separator-color);--tr-even-background-color:transparent;--kbd-border-color:var(--bd-border-strong);--pre-background-color:#F4F6F7;--pre-text-color:#262E34}:root[data-scheme=dark]{--blockquote-background-color:transparent;--link-background-color:143, 193, 222;--link-background-opacity:0;--link-background-opacity-hover:0.10;--code-background-color:#0C1115;--code-text-color:var(--card-text-color-main);--table-border-color:var(--card-separator-color);--tr-even-background-color:transparent;--kbd-border-color:var(--bd-border-strong)}[data-scheme=dark]{--pre-background-color:#0F1418;--pre-text-color:var(--card-text-color-main)}:root{--bd-chip-bg:#DFE6EC;--bd-chip-text:#1F4E6B;--bd-chip-border:#C3CBD1;--bd-data-bg:#F4F6F7;--bd-row-hover:#E6E9EC;--bd-scrim:rgba(15, 18, 21, 0.275);--bd-overlay-bg:rgba(6, 9, 12, 0.78);--bd-overlay-text:#FFFFFF;--bd-focus-ring-color:var(--accent-color);--article-image-height:160px;--article-compact-image-size:44px;--article-tile-width:100%;--article-tile-height:auto;--article-tile-overlay-bg:transparent;--article-tile-text-color:var(--card-text-color-main)}@media(min-width:768px){:root{--article-image-height:200px;--article-compact-image-size:56px}}@media(min-width:1280px){:root{--article-image-height:220px}}:root[data-scheme=dark]{--bd-chip-bg:#191E23;--bd-chip-text:#8FC1DE;--bd-chip-border:#2B323A;--bd-data-bg:#0F1418;--bd-row-hover:#161B21;--bd-scrim:rgba(232, 236, 239, 0.22);--article-tile-overlay-bg:transparent}:root{--alert-note-color:#315773;--alert-note-background:rgba(49, 87, 115, 0.085);--alert-tip-color:#25543D;--alert-tip-background:rgba(37, 84, 61, 0.085);--alert-important-color:#5B4A86;--alert-important-background:rgba(91, 74, 134, 0.085);--alert-warning-color:#654216;--alert-warning-background:rgba(101, 66, 22, 0.085);--alert-caution-color:#9A3B32;--alert-caution-background:rgba(154, 59, 50, 0.085)}:root[data-scheme=dark]{--alert-note-color:#7FB3D5;--alert-note-background:rgba(127, 179, 213, 0.072);--alert-tip-color:#8AC4A3;--alert-tip-background:rgba(138, 196, 163, 0.072);--alert-important-color:#B3A3DE;--alert-important-background:rgba(179, 163, 222, 0.072);--alert-warning-color:#E0B36A;--alert-warning-background:rgba(224, 179, 106, 0.072);--alert-caution-color:#E59289;--alert-caution-background:rgba(229, 146, 137, 0.072)}:root{--mermaid-toolbar-btn-bg:#FFFFFF;--mermaid-toolbar-btn-text:#1F4E6B;--mermaid-modal-bg:rgba(15, 18, 21, 0.90);--mermaid-modal-content-bg:#FFFFFF;--mermaid-modal-btn-bg:var(--card-background-selected);--mermaid-modal-btn-hover:#E3E6E9}:root[data-scheme=dark]{--mermaid-toolbar-btn-bg:#161A1E;--mermaid-toolbar-btn-text:#8FC1DE;--mermaid-modal-bg:rgba(6, 9, 12, 0.94);--mermaid-modal-content-bg:#1F252B;--mermaid-modal-btn-bg:#2B323A;--mermaid-modal-btn-hover:#313841}:root{--bd-dur-fast:0.15s;--bd-ease:ease}@media(min-width:768px){.container.extended{--left-sidebar-max-width:24%;--right-sidebar-max-width:0}}@media(min-width:1024px){.container.extended{--left-sidebar-max-width:22%}}@media(min-width:1280px){.container.extended{--left-sidebar-max-width:220px;--right-sidebar-max-width:var(--bd-rail-right)}}@media(min-width:1536px){.container.extended{--left-sidebar-max-width:240px}}.subsection-list{--edge-fade-size:0px}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-size-adjust:100%}*,*::before,*::after{box-sizing:border-box}body{background-color:var(--body-background);color:var(--card-text-color-main);font-family:var(--base-font-family);font-size:1.6rem;line-height:1.5;font-kerning:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img,svg,video,canvas{max-width:100%}::selection{background-color:rgba(var(--link-background-color),.22);color:var(--card-text-color-main)}:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--bd-focus-ring-color);outline-offset:2px;border-radius:2px}.pagination .page-link:focus-visible,.search-form input:focus-visible,.search-form button:focus-visible,#main-menu a:focus-visible,.menu-social a:focus-visible{outline:2px solid var(--bd-focus-ring-color);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.mermaid,.mermaid *,.mermaid-offscreen,.mermaid-offscreen *{transition:none!important}.mermaid:not([data-processed])::after{animation:none;border-top-color:transparent}.mermaid-toolbar button:hover{transform:none}}.container.extended{max-width:var(--bd-container-max)}@media(min-width:1024px) and (max-width:1279px){.container .right-sidebar{display:none}}body{min-height:100dvh;display:flex;flex-direction:column}@media print{body{display:block;min-height:0}}.main-container{min-height:auto;flex:1 0 auto;width:100%}@media(min-width:768px){.main-container>main.main{align-self:stretch;border-inline-start:1px solid var(--bd-rule);margin-inline-start:calc(var(--section-separation) * -1);padding-inline-start:var(--section-separation)}.main-container>.left-sidebar,.main-container>.right-sidebar{align-self:flex-start}}main.main>*{max-width:var(--bd-column)}main.main>.mermaid-modal{max-width:none}@media(min-width:1280px){.main-container>main.main{flex:1;min-width:0;max-width:calc(var(--bd-column) + var(--section-separation))}.main-container>.right-sidebar{flex:0 0 var(--bd-rail-right);min-width:0;max-width:var(--bd-rail-right)}}.left-sidebar{--sidebar-element-separation:var(--bd-space-5);--sidebar-avatar-size:36px;--emoji-size:80px;--emoji-font-size:44px;margin-bottom:0;position:sticky;top:0;z-index:20;background:var(--body-background);border-bottom:1px solid var(--bd-rule-sticky);padding-block:6px;margin-inline:calc(var(--container-padding) * -1);padding-inline:var(--container-padding)}@media(min-width:768px){.left-sidebar{z-index:auto;background:0 0;border-bottom:0;margin-inline:0;justify-content:flex-start;gap:var(--sidebar-element-separation);padding-block:var(--main-top-padding);padding-inline-start:0;padding-inline-end:var(--section-separation);--sidebar-avatar-size:80px}}@media(min-width:1536px){.left-sidebar{--sidebar-element-separation:28px;--sidebar-avatar-size:96px}}.main-container>.left-sidebar{width:auto}@media(min-width:768px){.main-container>.left-sidebar{width:100%}}.left-sidebar>:not(:last-child){margin-bottom:0}@media(min-width:768px){.left-sidebar.sticky{max-height:none;height:auto}}.sidebar header{flex-direction:row;align-items:center;min-height:var(--bd-tap-min);padding-inline-end:52px}@media(min-width:768px){.sidebar header{flex-direction:column;align-items:stretch;min-height:0;padding-inline-end:0;padding-bottom:var(--bd-space-5);border-bottom:1px solid var(--bd-rule)}}.sidebar header .site-meta{gap:var(--bd-space-2)}.sidebar header .site-meta .site-name{margin:0;font-size:var(--bd-fs-site-name);font-weight:600;letter-spacing:-.012em;line-height:1.25;color:var(--card-text-color-main)}.sidebar header .site-meta .site-name a{color:inherit}.sidebar header .site-meta .site-name a:hover{color:var(--accent-color)}.sidebar header .site-description{display:none}.sidebar header .site-avatar .site-logo{border-radius:3px;box-shadow:var(--shadow-l1);object-fit:cover}#toggle-menu{width:var(--bd-tap-min);height:var(--bd-tap-min);display:flex;align-items:center;justify-content:center;padding:0;top:50%;transform:translateY(-50%);inset-inline-end:var(--container-padding)}@media(min-width:768px){#toggle-menu{display:none}}.hamburger-inner,.hamburger-inner::before,.hamburger-inner::after{width:20px;height:2px;border-radius:0;background-color:var(--card-text-color-main)}.hamburger:hover{opacity:1}#toggle-menu:hover .hamburger-inner,#toggle-menu:hover .hamburger-inner::before,#toggle-menu:hover .hamburger-inner::after{background-color:var(--accent-color)}#main-menu{position:absolute;top:calc(100% + 1px + var(--bd-space-1));inset-inline:var(--container-padding);z-index:1;background:var(--card-background);box-shadow:var(--shadow-l1);border-radius:3px;margin-inline:0;padding:0;gap:0;max-height:calc(100dvh - 8rem);overflow-y:auto}#main-menu>li{border-top:1px solid var(--bd-rule)}#main-menu>li:first-child{border-top:0}@media(min-width:768px){#main-menu{position:static;z-index:auto;max-height:none;overflow:visible;background:0 0;box-shadow:none;border-radius:0;margin-inline-start:-14px;align-items:stretch;flex-grow:0}#main-menu>li{border-top:0}}html:has(body.show-menu){overflow:hidden}body.show-menu{overflow:hidden}body.show-menu .main-container::after{content:"";position:fixed;inset:0;background:var(--bd-scrim);backdrop-filter:blur(2px);z-index:1}@media(min-width:768px){html:has(body.show-menu){overflow-y:scroll}body.show-menu{overflow:visible}body.show-menu .main-container::after{content:none}}#main-menu li a{display:flex;align-items:center;gap:var(--menu-icon-separation);min-height:var(--bd-tap-min);padding-block:14px;padding-inline:var(--bd-space-4);font-size:var(--bd-fs-menu);font-weight:400;letter-spacing:.005em;line-height:1.4;color:var(--body-text-color)}#main-menu li a:hover{color:var(--accent-color);text-decoration:none}#main-menu li svg{width:18px;height:18px;stroke-width:1.5;color:var(--card-text-color-tertiary)}#main-menu li.current{box-shadow:inset 2px 0 0 var(--accent-color)}#main-menu li.current a{color:var(--card-text-color-main);font-weight:600}#main-menu li.current svg{color:var(--accent-color)}@media(min-width:768px){#main-menu li a{min-height:0;padding-block:10px;padding-inline:14px 0}}.menu-social{display:none}@media(min-width:768px){.menu-social{display:flex;gap:var(--bd-space-2);margin-inline-start:-12px}}.menu-social li a{display:inline-flex;align-items:center;justify-content:center;min-width:var(--bd-tap-min);min-height:var(--bd-tap-min);border-radius:2px}.menu-social svg{width:20px;height:20px;stroke:var(--body-text-color);stroke-width:1.5}.menu-social li a:hover svg,.menu-social li a:focus-visible svg{stroke:var(--accent-color)}#main-menu li.menu-bottom-section{padding-top:var(--bd-space-4);border-top:1px solid var(--bd-rule)}@media(min-width:768px){#main-menu li.menu-bottom-section{margin-top:var(--bd-space-8)}}#main-menu li.menu-bottom-section ol{gap:var(--bd-space-3);padding-inline:var(--bd-space-4);list-style:none}@media(min-width:768px){#main-menu li.menu-bottom-section ol{padding-inline:0}}#i18n-switch{position:relative;align-self:flex-start;align-items:center;gap:var(--menu-icon-separation);min-height:var(--bd-tap-min);font-size:var(--bd-fs-menu-bottom);letter-spacing:.015em;color:var(--card-text-color-tertiary)}#i18n-switch::after{content:"";position:absolute;inset-inline-end:11px;top:50%;width:6px;height:6px;margin-top:-4px;border-inline-end:1.5px solid currentColor;border-bottom:1.5px solid;transform:rotate(45deg);pointer-events:none}#i18n-switch select{background:var(--card-background)!important;padding:8px 28px 8px 10px!important;border:1px solid var(--bd-border-strong);border-radius:2px;min-height:var(--bd-tap-min);color:var(--card-text-color-main);font-size:1.35rem}#dark-mode-toggle{all:unset;box-sizing:border-box;display:inline-flex;align-items:center;gap:var(--menu-icon-separation);min-height:var(--bd-tap-min);cursor:pointer;font:inherit;font-size:var(--bd-fs-menu-bottom);letter-spacing:.015em;color:var(--card-text-color-tertiary)}[data-scheme=dark] #dark-mode-toggle{color:var(--card-text-color-tertiary);font-weight:400}#dark-mode-toggle:hover,#i18n-switch:hover{color:var(--accent-color)}.bd-skip{position:absolute;left:-9999px}.bd-skip:focus{position:fixed;left:var(--container-padding);top:var(--container-padding);z-index:100;padding:12px 16px;background:var(--card-background);color:var(--accent-color);border:1px solid var(--bd-border-strong);border-radius:2px}aside.right-sidebar.sticky{position:sticky;top:0;align-self:flex-start;max-height:100dvh;overflow-y:auto;gap:var(--widget-separation);padding-block:var(--main-top-padding)}footer.site-footer{margin-top:auto;padding-top:var(--bd-space-5);padding-bottom:var(--section-separation);border-top:1px solid var(--bd-rule);display:flex;flex-direction:column;gap:6px;line-height:1.65}@media(min-width:768px){footer.site-footer{flex-direction:row;justify-content:space-between;align-items:baseline;gap:var(--bd-space-5);flex-wrap:wrap;row-gap:var(--bd-space-4)}}footer.site-footer:before{content:none}footer.site-footer .copyright{margin-bottom:0;font-size:var(--bd-fs-copyright);font-weight:400;color:var(--card-text-color-tertiary)}@media(min-width:768px){footer.site-footer .copyright{white-space:nowrap}}footer.site-footer .powerby{font-size:var(--bd-fs-powerby);line-height:1.5;color:var(--card-text-color-tertiary)}@media(min-width:768px){footer.site-footer .powerby{text-align:right}}@media(min-width:768px){footer.site-footer .powerby.site-footer-contact{order:-1;flex:1 1 100%;text-align:start}}footer.site-footer .powerby>a,footer.site-footer .powerby>b>a{color:inherit;text-decoration:none}footer.site-footer .powerby .bd-footer-contact{display:block;margin-bottom:var(--bd-space-2);font-size:var(--bd-fs-meta);color:var(--body-text-color)}footer.site-footer .powerby .bd-footer-contact a{display:inline-block;padding-block:12px;color:var(--accent-color);text-decoration:underline;text-underline-offset:.16em}@media(min-width:768px){footer.site-footer .powerby .bd-footer-contact a{padding-block:0}}footer.site-footer .powerby a:hover{color:var(--accent-color);text-decoration:underline}.pagination{background:0 0;box-shadow:none;border-radius:0;overflow:visible;flex-wrap:wrap;gap:var(--bd-space-2)}.pagination .page-link{flex:none;min-width:var(--bd-tap-min);min-height:var(--bd-tap-min);padding:0 var(--bd-space-2);background:var(--card-background);box-shadow:var(--shadow-l1);border-radius:2px;color:var(--card-text-color-main);font-size:var(--bd-fs-nav);font-variant-numeric:tabular-nums}.pagination .page-link:first-child,.pagination .page-link:last-child{flex:none;padding:0}.pagination .page-link:hover:not(.current):not(.disabled){opacity:1;background:var(--card-background);box-shadow:var(--shadow-l2);color:var(--accent-color)}.pagination .page-link.current{background:var(--accent-color);color:var(--accent-color-text);box-shadow:none;font-weight:600}.pagination .page-link.disabled{opacity:1;color:var(--card-text-color-tertiary);box-shadow:0 0 0 1px var(--bd-rule)}.pagination .page-link svg{width:18px;height:18px}#pagination-jump-dialog{border:0;border-radius:3px;background:var(--card-background);box-shadow:var(--shadow-l1)}#pagination-jump-dialog .pagination-jump-form .pagination-jump-input-group input[type=number]{border:1px solid var(--bd-border-strong);border-radius:var(--tag-border-radius);background:var(--card-background);font-variant-numeric:tabular-nums}#pagination-jump-dialog .pagination-jump-form .pagination-jump-input-group input[type=number]:focus,#pagination-jump-dialog .pagination-jump-form .pagination-jump-input-group input[type=number]:focus-visible{border-color:var(--accent-color);box-shadow:none;outline:2px solid var(--bd-focus-ring-color);outline-offset:2px}#pagination-jump-dialog .pagination-jump-form .pagination-jump-input-group .btn-primary{border-radius:var(--bd-btn-radius);font-size:1.5rem;font-weight:600}#pagination-jump-dialog .pagination-jump-form .pagination-jump-input-group .btn-primary:hover{box-shadow:none;background:var(--accent-color-darker)}#pagination-jump-dialog .pagination-jump-form .pagination-jump-hint kbd{border:1px solid var(--kbd-border-color);border-radius:var(--tag-border-radius);background:var(--body-background);box-shadow:none;font-family:var(--base-font-family)}.section-title{display:block;font-family:var(--base-font-family);font-size:var(--bd-fs-eyebrow);font-weight:600;letter-spacing:.09em;line-height:1.3;text-transform:uppercase;color:var(--body-text-color);overflow-wrap:break-word;margin:0}.section-title a{color:inherit;text-decoration:none}.section-title a:hover{color:var(--accent-color)}header>h3.section-title{display:inline;margin:0;padding:0;border:0;line-height:2.2}header>h3.section-title:empty{display:none}.section-card{background-color:initial;box-shadow:none;border-radius:0;border-bottom:1px solid var(--bd-rule);padding:0 0 var(--bd-space-6);align-items:flex-start;flex-wrap:wrap;gap:var(--bd-space-5)}.section-card .section-details{gap:var(--bd-space-2);min-width:0}.section-card .section-term{font-size:var(--bd-fs-title);font-weight:600;letter-spacing:-.022em;line-height:1.16;text-wrap:balance;color:var(--card-text-color-main);margin:0}.section-card .section-description{font-size:var(--bd-fs-lede);font-weight:400;letter-spacing:-.006em;line-height:1.5;color:var(--card-text-color-secondary);max-width:30em;margin:var(--bd-space-1)0 0}.section-card .section-image img{width:60px;height:60px;border-radius:var(--card-border-radius);object-fit:cover}.section-card:not(:has(.section-description)){padding-block:0;border-bottom:0}.article-list{gap:0}.article-list>article{background-color:initial;box-shadow:none;border-radius:0;overflow:visible;border-top:1px solid var(--bd-rule);padding-block:var(--bd-space-6)}@media(min-width:768px){.article-list>article{padding-block:var(--bd-space-7)var(--bd-space-4)}}.article-list>article:hover{background-color:initial;box-shadow:none}.article-list>article:last-of-type{border-bottom:1px solid var(--bd-rule)}.article-list .article-details{padding:0;gap:var(--bd-space-3);min-width:0}.article-list .article-title-wrapper{gap:var(--bd-space-2)}.article-list .article-title{font-size:var(--bd-fs-row-title);font-weight:600;letter-spacing:-.014em;line-height:1.28;color:var(--card-text-color-main)}.article-list .article-title a{color:var(--card-text-color-main)}.article-list .article-title a:hover{opacity:1;color:var(--accent-color);text-decoration:underline;text-underline-offset:.14em;text-decoration-thickness:.06em}.article-list .article-subtitle{font-size:var(--bd-fs-row-desc);font-weight:400;line-height:1.52;color:var(--card-text-color-secondary);max-width:44em;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden}@media(min-width:768px){.article-list .article-subtitle{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden}}.article-list .article-meta{font-size:var(--bd-fs-meta);font-weight:500;letter-spacing:.01em;line-height:1.4;font-variant-numeric:tabular-nums;color:var(--card-text-color-tertiary);flex-direction:row;flex-wrap:wrap;gap:var(--bd-space-2)var(--bd-space-4);border-top:0;padding-top:0;margin-top:var(--bd-space-3)}@media(min-width:768px){.article-list .article-meta{border-top:1px solid var(--bd-rule);padding-top:var(--bd-space-3);margin-top:var(--bd-space-1)}}.article-list .article-meta time,.article-list .article-meta span{font-size:var(--bd-fs-meta);color:var(--card-text-color-tertiary);font-variant-numeric:tabular-nums}.article-list .article-meta>.inline-meta{gap:var(--bd-space-2);flex-wrap:nowrap;white-space:nowrap}.article-list .article-meta svg{width:16px;height:16px;stroke-width:1.5}.article-list>article:first-of-type{border-top:2px solid var(--bd-border-strong)}.article-list>article:first-of-type .article-title{font-size:var(--bd-fs-row-title-lead);letter-spacing:-.018em;line-height:1.22}.article-list>article:first-of-type .article-subtitle{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden}.article-list>article.has-image .article-image img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:var(--card-border-radius);box-shadow:var(--shadow-l1)}@media(min-width:768px){.article-list>article.has-image .article-header{display:flex;flex-direction:row-reverse;align-items:flex-start;gap:var(--bd-space-5)}.article-list>article.has-image .article-image{flex:0 0 160px}.article-list>article.has-image .article-details{flex:auto}}.article-list--compact{background-color:initial;box-shadow:none;border-radius:0;padding:0}.article-list--compact article{border-top:1px solid var(--bd-rule)}.article-list--compact article:not(:last-of-type){border-bottom:0}.article-list--compact article>a{padding:18px 0;gap:var(--bd-space-4);align-items:baseline;min-height:var(--bd-tap-min);color:inherit;transition:background-color var(--bd-dur-fast)var(--bd-ease)}.article-list--compact article:hover>a{background-color:var(--bd-row-hover)}.article-list--compact article:hover .article-title{color:var(--accent-color)}.article-list--compact article .article-details{gap:var(--bd-space-2);min-width:0;min-height:0}@media(min-width:768px){.article-list--compact article .article-details{flex-direction:row;flex-wrap:wrap;align-items:baseline;column-gap:var(--bd-space-5);row-gap:var(--bd-space-2)}.article-list--compact article .article-details>.article-title{order:1;flex:1;min-width:0}.article-list--compact article .article-details>.article-meta{order:2;flex:none;margin-inline-start:auto;white-space:nowrap}.article-list--compact article .article-details>.article-description,.article-list--compact article .article-details>.article-preview{order:3;flex:1 1 100%;max-width:none;padding-inline-end:max(0px,100% - 44em)}}.article-list--compact article .article-title{font-size:var(--bd-fs-row-title);font-weight:600;letter-spacing:-.014em;line-height:1.28;color:var(--card-text-color-main)}.article-list--compact article .article-description,.article-list--compact article .article-preview{font-size:var(--bd-fs-row-desc);font-weight:400;line-height:1.52;color:var(--card-text-color-secondary);max-width:44em;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden}@media(min-width:768px){.article-list--compact article .article-description,.article-list--compact article .article-preview{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden}}.article-list--compact article .article-meta{font-size:var(--bd-fs-meta);font-weight:500;letter-spacing:.01em;line-height:1.4;font-variant-numeric:tabular-nums;color:var(--card-text-color-tertiary);flex-direction:row;flex-wrap:wrap;gap:var(--bd-space-2)var(--bd-space-4)}.article-list--compact article .article-meta time,.article-list--compact article .article-meta span{font-size:var(--bd-fs-meta);color:var(--card-text-color-tertiary);font-variant-numeric:tabular-nums}.article-list--compact article .article-image{align-self:center}.article-list--compact article .article-image img{border-radius:var(--tag-border-radius);box-shadow:var(--shadow-l1)}.article-list--compact article>a>time,.article-list--compact article>a>.article-date{font-size:var(--bd-fs-meta);font-weight:500;letter-spacing:.01em;line-height:1.4;font-variant-numeric:tabular-nums;color:var(--card-text-color-tertiary);margin-inline-start:auto;flex:none;white-space:nowrap}main.main>header+.article-list--compact>article:first-of-type{border-top:0}.article-list--compact:has(+.pagination)>article:last-of-type{border-bottom:1px solid var(--bd-rule)}.subsection-list{margin:0;width:auto;overflow:visible;-webkit-mask-image:none;mask-image:none;animation:none;--left-edge-fade-size:0px;--right-edge-fade-size:0px}.subsection-list .article-list--tile{display:grid;grid-template-columns:1fr;gap:0;width:auto;padding:0}.subsection-list>*:last-child{border-bottom:1px solid var(--bd-rule)}.article-list--tile article{min-height:0;flex-shrink:1;width:100%;background-color:initial;box-shadow:none;border:0;border-radius:0;border-top:1px solid var(--bd-rule)}.article-list--tile article:hover{box-shadow:none}.article-list--tile article>a{display:block;padding-block:var(--bd-space-4);color:inherit;transition:background-color var(--bd-dur-fast)var(--bd-ease)}.article-list--tile article:hover>a{background-color:var(--bd-row-hover)}.article-list--tile article:hover .article-title{color:var(--accent-color)}.article-list--tile article .article-image{display:none}.subsection-list .article-list--tile article .article-details{position:static;height:auto;justify-content:flex-start;padding:0;background-color:initial;border-radius:0}.subsection-list .article-list--tile article .article-title{font-size:var(--bd-fs-row-title);font-weight:600;line-height:1.28;letter-spacing:-.014em;color:var(--card-text-color-main);margin:0}.section-title+.subsection-list .article-list--tile>article:first-of-type{border-top:0}aside>.section-title{display:block;font-family:var(--base-font-family);font-size:var(--bd-fs-eyebrow);font-weight:600;letter-spacing:.09em;line-height:1.3;text-transform:uppercase;color:var(--body-text-color);overflow-wrap:break-word;padding-bottom:10px;border-bottom:1px solid var(--bd-rule);margin:var(--bd-space-4)0}@media(min-width:768px){aside>.section-title{margin-top:var(--bd-space-5)}}.article-category,.article-tags{column-gap:var(--bd-space-2);row-gap:var(--bd-space-4)}@media(min-width:768px){.article-category,.article-tags{row-gap:var(--bd-space-2)}}.article-category a,.article-tags a,.article-tags.inline-meta a{display:inline-flex;align-items:center;justify-content:center;position:relative;min-height:28px;padding:0 var(--bd-space-3);background-color:var(--bd-chip-bg);color:var(--bd-chip-text);border:1px solid var(--bd-chip-border);border-radius:var(--tag-border-radius);font-size:var(--bd-fs-chip);font-weight:500;letter-spacing:.02em;line-height:1;text-decoration:none;box-shadow:none;transition:border-color var(--bd-dur-fast)var(--bd-ease),color var(--bd-dur-fast)var(--bd-ease)}.article-category a::before,.article-tags a::before,.article-tags.inline-meta a::before{content:"";position:absolute;inset:-8px 0}@media(min-width:768px){.article-category a,.article-tags a,.article-tags.inline-meta a{min-height:30px}.article-category a::before,.article-tags a::before,.article-tags.inline-meta a::before{content:none}}.article-category a:hover,.article-category a:focus-visible,.article-tags a:hover,.article-tags a:focus-visible,.article-tags.inline-meta a:hover,.article-tags.inline-meta a:focus-visible{background-color:var(--bd-chip-bg);border-color:var(--bd-border-strong);color:var(--accent-color-darker);box-shadow:none}section.article-tags,.bd-browse-tags{align-self:stretch;width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--bd-space-2);row-gap:var(--bd-space-4)}@media(min-width:768px){section.article-tags,.bd-browse-tags{display:flex;flex-wrap:wrap;row-gap:var(--bd-space-2)}}.widget{background-color:initial;box-shadow:none;border-radius:0;padding:0}.widget .widget-icon{display:none}.widget-title.section-title{display:block;font-family:var(--base-font-family);font-size:var(--bd-fs-eyebrow);font-weight:600;letter-spacing:.09em;line-height:1.3;text-transform:uppercase;color:var(--body-text-color);overflow-wrap:break-word;padding-bottom:10px;border-bottom:1px solid var(--bd-rule);margin:0 0 var(--bd-space-4)}.widget.tagCloud .tagCloud-tags{display:block}.widget.tagCloud .tagCloud-tags a{display:flex;align-items:center;justify-content:space-between;gap:var(--bd-space-3);min-height:var(--bd-tap-min);padding:var(--bd-space-3)0;background-color:initial;box-shadow:none;border:0;border-bottom:1px solid var(--bd-rule);border-radius:0;font-size:var(--bd-fs-nav);font-weight:400;color:var(--card-text-color-main);transition:color var(--bd-dur-fast)var(--bd-ease)}.widget.tagCloud .tagCloud-tags a:hover{box-shadow:none;color:var(--accent-color)}.widget.tagCloud .tagCloud-tags a span,.widget.tagCloud .tagCloud-tags a small{font-size:var(--bd-fs-meta);font-weight:500;letter-spacing:.01em;line-height:1.4;font-variant-numeric:tabular-nums;color:var(--card-text-color-tertiary);flex:none}.widget--toc{background-color:initial;box-shadow:none;border-radius:0;border-inline-start:1px solid var(--bd-rule);padding-inline-start:var(--bd-space-4);overflow:visible}.widget--toc .toc-nav{max-height:70vh;overflow-y:auto}.widget--toc .toc-nav li{margin-block:0}.widget--toc .toc-nav li a{display:block;padding-block:var(--bd-space-3);padding-inline-start:2.2em;text-indent:-2.2em;font-size:var(--bd-fs-toc);line-height:1.4;color:var(--card-text-color-tertiary);transition:color var(--bd-dur-fast)var(--bd-ease)}.widget--toc .toc-nav li a:hover{color:var(--accent-color)}.widget--toc .toc-nav li a::before{font-weight:600;color:var(--card-text-color-tertiary)}.widget--toc .toc-nav li.active-class>a{font-weight:600;color:var(--card-text-color-main)}.search-form,.search-form.widget{--button-size:48px}.search-form label,.search-form.widget label{display:block;font-family:var(--base-font-family);font-size:var(--bd-fs-eyebrow);font-weight:600;letter-spacing:.09em;line-height:1.3;text-transform:uppercase;color:var(--body-text-color);overflow-wrap:break-word;position:static;margin:0 0 var(--bd-space-2);color:var(--card-text-color-tertiary)}.search-form input,.search-form.widget input{width:100%;min-height:48px;padding:var(--bd-space-3)56px var(--bd-space-3)var(--bd-space-4);background-color:var(--card-background);border:1px solid var(--bd-border-strong);border-radius:var(--tag-border-radius);box-shadow:none;color:var(--card-text-color-main);font-size:1.6rem;font-family:var(--base-font-family)}.search-form input::placeholder,.search-form.widget input::placeholder{color:var(--card-text-color-tertiary);opacity:1}.search-form input:focus,.search-form.widget input:focus{border-color:var(--accent-color);box-shadow:none;outline:2px solid var(--bd-focus-ring-color);outline-offset:2px}.search-form button,.search-form.widget button{top:auto;bottom:0;height:48px;width:var(--button-size);min-width:var(--bd-tap-min);display:inline-flex;align-items:center;justify-content:center;padding:0}.search-form button svg,.search-form.widget button svg{width:20px;height:20px;color:var(--card-text-color-tertiary)}.search-form button:hover svg,.search-form button:focus svg,.search-form.widget button:hover svg,.search-form.widget button:focus svg{color:var(--accent-color)}.search-form.widget label{padding-bottom:10px;border-bottom:1px solid var(--bd-rule);color:var(--body-text-color);margin-bottom:var(--bd-space-4)}body.template-search main.main{min-height:0}@media(min-width:768px){body.template-search main.main{min-height:30vh}}body.template-search .search-form{max-width:none}body.template-search .bd-page-title{font-size:var(--bd-fs-title);font-weight:600;letter-spacing:-.022em;line-height:1.16;text-wrap:balance;color:var(--card-text-color-main);margin:0}.search-result{display:flex;flex-direction:column;gap:var(--bd-space-4)}.search-result--title.section-title{display:block;font-family:var(--base-font-family);font-size:var(--bd-fs-eyebrow);font-weight:600;letter-spacing:.09em;line-height:1.3;text-transform:uppercase;color:var(--body-text-color);overflow-wrap:break-word;padding-bottom:10px;border-bottom:1px solid var(--bd-rule);margin:0}.search-result--title.section-title:empty{display:none}.search-result mark,.article-preview mark{background-color:rgba(var(--link-background-color),.16);color:var(--card-text-color-main);padding:0 2px;border-radius:var(--tag-border-radius)}.not-found-card{background-color:var(--card-background);box-shadow:var(--shadow-l1);border-radius:var(--card-border-radius);padding:var(--card-padding)}.not-found-card .article-title{font-size:var(--bd-fs-title);font-weight:600;letter-spacing:-.022em;line-height:1.16;text-wrap:balance;color:var(--card-text-color-main);margin:0}.not-found-card .article-subtitle{font-size:var(--bd-fs-lede);font-weight:400;letter-spacing:-.006em;line-height:1.5;color:var(--card-text-color-secondary);max-width:30em;margin:var(--bd-space-3)0 0}:root{--bd-code-keyword:#1D455E;--bd-code-string:#26593F;--bd-code-number:#5B4A86;--bd-code-comment:#545D65;--bd-code-error:#9A3B32;--bd-code-hl:rgba(31, 78, 107, 0.07)}[data-scheme=dark]{--bd-code-keyword:#8FC1DE;--bd-code-string:#8AC4A3;--bd-code-number:#B3A3DE;--bd-code-comment:#939DA6;--bd-code-error:#E59289;--bd-code-hl:rgba(143, 193, 222, 0.055)}.article-page .main-article{background:var(--card-background);box-shadow:var(--shadow-l1);border-radius:var(--card-border-radius)}[data-scheme=dark] .article-page .main-article{--bd-chip-bg:#222930;--bd-chip-border:#39424B}.article-page .main-article .article-header{padding-bottom:0;border-bottom:0}.article-page .main-article .article-header::after{content:"";display:block;margin-top:var(--bd-space-5);margin-inline:var(--card-padding);border-bottom:1px solid var(--bd-border-strong)}.article-page .main-article .article-header .article-image{margin-top:0;margin-inline:var(--card-padding);border-radius:var(--tag-border-radius);overflow:hidden}.article-page .main-article .article-header .article-image img{display:block;width:100%;height:auto;max-height:220px;aspect-ratio:21/9;object-fit:cover;box-shadow:0 0 0 1px var(--bd-rule-on-card)}@media(min-width:768px){.article-page .main-article .article-header .article-image img{max-height:320px}}.article-page .main-article .article-header .article-details{padding:var(--card-padding);padding-bottom:0;gap:var(--bd-space-3);align-items:flex-start}.article-page .main-article .article-header .section-title{margin:0;color:var(--card-text-color-tertiary)}.article-page .main-article .article-title{font-size:var(--bd-fs-title);font-weight:600;letter-spacing:-.022em;line-height:1.16;color:var(--card-text-color-main);text-wrap:balance;margin:0}.article-page .main-article .article-title a{color:inherit}.article-page .main-article .article-title a:hover{opacity:1;color:inherit}.article-page .main-article .article-subtitle{font-size:var(--bd-fs-lede);font-weight:400;letter-spacing:-.006em;line-height:1.5;color:var(--card-text-color-secondary);max-width:30em;margin:var(--bd-space-3)0 0}.article-page .main-article .article-title-wrapper{gap:0}.article-page .main-article .article-header .article-meta{flex-direction:row;flex-wrap:wrap;align-items:center;gap:var(--bd-space-2)var(--bd-space-4);margin-top:var(--bd-space-1)}.article-page .main-article .article-header .article-meta time,.article-page .main-article .article-header .article-meta .inline-meta>span{white-space:nowrap}.article-page .main-article .article-meta{font-size:var(--bd-fs-meta)}.article-page .main-article .article-meta,.article-page .main-article .article-meta time,.article-page .main-article .article-meta span{font-size:var(--bd-fs-meta);font-weight:500;letter-spacing:.01em;line-height:1.4;font-variant-numeric:tabular-nums;color:var(--card-text-color-tertiary)}.article-page .main-article .article-meta svg{width:16px;height:16px;stroke-width:1.5;color:var(--card-text-color-tertiary)}.article-page .main-article .article-meta>.inline-meta{align-items:center;gap:var(--bd-space-2)}.article-page .main-article .article-meta .inline-meta a{color:var(--accent-color)}.article-page .main-article .article-meta .inline-meta a:hover{color:var(--accent-color-darker)}.article-page .main-article .article-header .article-meta .inline-meta a{position:relative}.article-page .main-article .article-header .article-meta .inline-meta a::before{content:"";position:absolute;inset:-12px 0}@media(min-width:768px){.article-page .main-article .article-header .article-meta .inline-meta a::before{content:none}}body.bd-no-meta .article-header .article-meta{display:none}.article-page .main-article .article-footer{margin:var(--card-padding)var(--card-padding)0;padding:var(--bd-space-6)0 var(--card-padding);border-top:1px solid var(--bd-rule-on-card);gap:var(--bd-space-6);align-items:flex-start}.article-page .main-article .article-footer:not(:has(*)){display:none}.article-page .main-article .article-footer .section-title{margin:0;color:var(--card-text-color-tertiary)}.article-page .main-article .article-footer>.section-title+.article-tags{margin-top:calc(0px - var(--bd-space-4))}.article-page .main-article .article-copyright,.article-page .main-article .article-lastmod{font-size:var(--bd-fs-fine);color:var(--card-text-color-tertiary);align-items:center;gap:var(--bd-space-2)}.article-page .main-article .article-toc{display:flex;flex-direction:column;width:auto;max-width:100%;box-sizing:border-box;margin-inline:0;margin-top:var(--bd-space-5);padding-inline:var(--card-padding);background:0 0;box-shadow:none}@media(min-width:1280px){.article-page .main-article .article-toc{display:none}}.article-page .main-article .article-toc details{background:0 0;box-shadow:none;border-radius:0;border-block:1px solid var(--bd-rule-on-card)}.article-page .main-article .article-toc summary{min-height:var(--bd-tap-min);display:flex;align-items:center;padding:var(--bd-space-3)0}.article-page .main-article .article-toc .article-toc-title{width:100%;flex-direction:row-reverse;justify-content:space-between;gap:var(--bd-space-3);font-family:var(--base-font-family);font-size:var(--bd-fs-eyebrow);font-weight:600;letter-spacing:.09em;text-transform:uppercase;overflow-wrap:break-word;color:var(--card-text-color-tertiary)}.article-page .main-article .article-toc .article-toc-title svg{width:16px;height:16px;flex-shrink:0}.article-page .main-article .article-toc .toc-nav{padding-bottom:var(--bd-space-2)}.article-page .main-article .article-toc .toc-nav li a{display:flex;align-items:center;min-height:var(--bd-tap-min);padding-block:12px;font-size:var(--bd-fs-toc);line-height:1.4;color:var(--card-text-color-tertiary)}.article-page .main-article .article-toc .toc-nav li a:hover{color:var(--accent-color)}.article-page .main-article .article-toc .toc-nav li.active-class>a{color:var(--card-text-color-main);font-weight:600}.article-content{font-family:var(--article-font-family);font-size:var(--article-font-size);line-height:var(--article-line-height);color:var(--card-text-color-main);font-kerning:normal;font-variant-numeric:proportional-nums;hyphens:none;overflow-wrap:break-word;orphans:2;widows:2;counter-reset:bd-fig}.article-content>*{margin-top:var(--bd-space-5);margin-bottom:0;max-width:var(--bd-measure)}.article-content>p{margin-top:20px;margin-bottom:0}.article-content>:first-child{margin-top:0}.article-content>.table-wrapper,.article-content>figure,.article-content>.highlight,.article-content>pre,.article-content>.gallery,.article-content>.gallery-wrapper,.article-content>.justified-gallery,.article-content>.video-wrapper,.article-content>.mermaid-wrapper,.article-content>.katex-display,.article-content>.s_video_simple{max-width:none}.article-content h1,.article-content h2,.article-content h3,.article-content h4,.article-content h5,.article-content h6{font-family:var(--base-font-family);color:var(--card-text-color-main);text-wrap:balance;margin-inline-start:0;padding-inline-start:0;border-inline-start:0;position:relative;scroll-margin-top:var(--bd-space-8)}.article-content h1 a.header-anchor,.article-content h2 a.header-anchor,.article-content h3 a.header-anchor,.article-content h4 a.header-anchor,.article-content h5 a.header-anchor,.article-content h6 a.header-anchor{display:none;opacity:0;color:var(--card-text-color-tertiary);text-decoration:none;left:calc(var(--card-padding) * -1);width:var(--card-padding);text-align:center}@media(min-width:768px){.article-content h1 a.header-anchor,.article-content h2 a.header-anchor,.article-content h3 a.header-anchor,.article-content h4 a.header-anchor,.article-content h5 a.header-anchor,.article-content h6 a.header-anchor{display:block}}.article-content h1 a.header-anchor:hover,.article-content h2 a.header-anchor:hover,.article-content h3 a.header-anchor:hover,.article-content h4 a.header-anchor:hover,.article-content h5 a.header-anchor:hover,.article-content h6 a.header-anchor:hover{color:var(--accent-color)}.article-content h1:hover a.header-anchor,.article-content h1:focus-within a.header-anchor,.article-content h2:hover a.header-anchor,.article-content h2:focus-within a.header-anchor,.article-content h3:hover a.header-anchor,.article-content h3:focus-within a.header-anchor,.article-content h4:hover a.header-anchor,.article-content h4:focus-within a.header-anchor,.article-content h5:hover a.header-anchor,.article-content h5:focus-within a.header-anchor,.article-content h6:hover a.header-anchor,.article-content h6:focus-within a.header-anchor{opacity:1}.article-content h1{font-size:clamp(2.6rem,calc(2.3771rem + .5714vw),3.2rem);font-weight:600;letter-spacing:-.02em;line-height:1.18;margin:var(--bd-space-7)0 var(--bd-space-4)}@media(min-width:768px){.article-content h1{margin-top:var(--bd-space-8)}}.article-content h2{font-size:var(--bd-fs-h2);font-weight:600;letter-spacing:-.018em;line-height:1.22;margin:var(--bd-space-7)0 var(--bd-space-4)}@media(min-width:768px){.article-content h2{margin:var(--bd-space-8)0 20px}}.article-content h3{font-size:var(--bd-fs-h3);font-weight:600;letter-spacing:-.012em;line-height:1.3;margin:var(--bd-space-6)0 var(--bd-space-3)}.article-content h4{font-size:var(--bd-fs-h4);font-weight:600;letter-spacing:-.006em;line-height:1.35;margin:26px 0 var(--bd-space-2)}.article-content h5,.article-content h6{font-weight:600;line-height:1.4;color:var(--card-text-color-main);margin:22px 0 6px}.article-content h5{font-size:var(--bd-fs-body);letter-spacing:0}.article-content h6{font-family:var(--base-font-family);font-size:var(--bd-fs-eyebrow);font-weight:600;letter-spacing:.09em;text-transform:uppercase;overflow-wrap:break-word;line-height:1.4}.article-content h1+*,.article-content h2+*,.article-content h3+*,.article-content h4+*,.article-content h5+*,.article-content h6+*{margin-top:0}.article-content p{text-wrap:pretty}.article-content strong,.article-content b{font-weight:600;color:var(--card-text-color-main)}.article-content ul,.article-content ol{padding-inline-start:1.1em;margin-block:0}.article-content li+li{margin-top:.6em}.article-content li>ul,.article-content li>ol{margin-top:var(--bd-space-2)}.article-content li>p{margin:0}.article-content li>p+p{margin-top:var(--bd-space-2)}.article-content li::marker{color:var(--card-text-color-tertiary)}.article-content ul ul{list-style-type:circle}.article-content ul ul ul{list-style-type:square}.article-content ol ol{list-style-type:lower-alpha}.article-content ol ol ol{list-style-type:lower-roman}.article-content dl{margin-block:0}.article-content dt{font-weight:600;margin-top:var(--bd-space-4)}.article-content dd{margin-inline-start:0;padding-inline-start:var(--bd-space-4);border-inline-start:1px solid var(--bd-rule-on-card);color:var(--card-text-color-secondary)}.article-content hr{width:auto;height:0;margin:var(--bd-space-8)0;background:0 0;border:0;border-top:1px solid var(--bd-rule-on-card);opacity:1}.article-content p a,.article-content li a,.article-content td a,.article-content dd a,.article-content figcaption a{text-decoration:underline;text-underline-offset:.18em;text-decoration-thickness:.07em;text-decoration-color:initial}.article-content p a:hover,.article-content li a:hover,.article-content td a:hover,.article-content dd a:hover,.article-content figcaption a:hover{text-decoration-color:var(--accent-color)}.article-content blockquote{margin:var(--bd-space-7)0;width:auto;max-width:var(--bd-measure);padding:0 0 0 var(--bd-space-5);background-color:initial;border-inline-start:var(--blockquote-border-size)solid var(--accent-color);font-size:1.05em;color:var(--card-text-color-main)}.article-content blockquote p{margin:0}.article-content blockquote p+p{margin-top:var(--bd-space-4)}.article-content blockquote .cite{display:block;text-align:start;margin-top:var(--bd-space-3);font-size:1.4rem;color:var(--card-text-color-secondary)}.article-content blockquote.alert{padding:var(--bd-space-4)var(--bd-space-5);border-inline-start-width:var(--blockquote-border-size);border-radius:0 var(--card-border-radius)var(--card-border-radius)0;font-size:1em}.article-content blockquote.alert .alert-header{gap:var(--bd-space-2);margin-bottom:var(--bd-space-3)}.article-content blockquote.alert .alert-title{font-family:var(--base-font-family);font-size:var(--bd-fs-eyebrow);font-weight:600;letter-spacing:.09em;text-transform:uppercase;overflow-wrap:break-word}.article-content blockquote.alert .alert-icon{font-size:1.4rem;line-height:1}.article-content blockquote.alert .alert-body>*+*{margin-top:var(--bd-space-4)}.article-content kbd{border:1px solid var(--kbd-border-color);background-color:var(--body-background);color:var(--card-text-color-main);font-weight:600;font-size:.85em;padding:2px 6px;border-radius:var(--tag-border-radius)}.article-content code{font-family:var(--code-font-family);font-size:var(--bd-fs-code-inline);line-height:inherit;color:var(--code-text-color);background-color:var(--code-background-color);padding:.12em .35em;border-radius:var(--tag-border-radius);font-variant-ligatures:none}.article-content .highlight,.article-content pre:not(.mermaid){background-color:var(--pre-background-color);color:var(--pre-text-color);box-shadow:0 0 0 1px var(--bd-rule-on-card);border-radius:var(--card-border-radius);font-size:var(--bd-fs-code-block);line-height:1.58;font-variant-ligatures:none}.article-content>.highlight,.article-content>pre{margin-top:var(--bd-space-5);margin-bottom:0}.article-content .highlight pre{box-shadow:none;border-radius:0;background-color:initial;font-size:inherit}.article-content pre code,.article-content .highlight code{font-size:inherit;padding:0;background:0 0;border-radius:0}.article-content .chroma .ln,.article-content .chroma .lnt{color:var(--card-text-color-tertiary);font-variant-numeric:tabular-nums;user-select:none}.article-content .chroma table,.article-content .chroma th,.article-content .chroma td,.article-content .chroma tr,.article-content table.lntable,.article-content table.lntable th,.article-content table.lntable td,.article-content table.lntable tr{border:0;padding:0;background:0 0;margin:0;font-size:inherit}[data-scheme] .chroma{color:var(--pre-text-color);background-color:initial}[data-scheme] .chroma .n,[data-scheme] .chroma .nb,[data-scheme] .chroma .bp,[data-scheme] .chroma .ni,[data-scheme] .chroma .nl,[data-scheme] .chroma .nn,[data-scheme] .chroma .nv,[data-scheme] .chroma .vc,[data-scheme] .chroma .vg,[data-scheme] .chroma .vi,[data-scheme] .chroma .vm,[data-scheme] .chroma .py,[data-scheme] .chroma .na,[data-scheme] .chroma .nc,[data-scheme] .chroma .nd,[data-scheme] .chroma .ne,[data-scheme] .chroma .nf,[data-scheme] .chroma .nx,[data-scheme] .chroma .fm,[data-scheme] .chroma .p,[data-scheme] .chroma .w,[data-scheme] .chroma .l,[data-scheme] .chroma .x{color:var(--pre-text-color)}[data-scheme] .chroma .k,[data-scheme] .chroma .kc,[data-scheme] .chroma .kd,[data-scheme] .chroma .kn,[data-scheme] .chroma .kp,[data-scheme] .chroma .kr,[data-scheme] .chroma .kt,[data-scheme] .chroma .no,[data-scheme] .chroma .nt,[data-scheme] .chroma .o,[data-scheme] .chroma .ow{color:var(--bd-code-keyword)}[data-scheme] .chroma .s,[data-scheme] .chroma .sa,[data-scheme] .chroma .sb,[data-scheme] .chroma .sc,[data-scheme] .chroma .dl,[data-scheme] .chroma .sd,[data-scheme] .chroma .s2,[data-scheme] .chroma .se,[data-scheme] .chroma .sh,[data-scheme] .chroma .si,[data-scheme] .chroma .sx,[data-scheme] .chroma .sr,[data-scheme] .chroma .s1,[data-scheme] .chroma .ss,[data-scheme] .chroma .ld,[data-scheme] .chroma .gi{color:var(--bd-code-string)}[data-scheme] .chroma .m,[data-scheme] .chroma .mb,[data-scheme] .chroma .mf,[data-scheme] .chroma .mh,[data-scheme] .chroma .mi,[data-scheme] .chroma .il,[data-scheme] .chroma .mo{color:var(--bd-code-number)}[data-scheme] .chroma .c,[data-scheme] .chroma .ch,[data-scheme] .chroma .cm,[data-scheme] .chroma .c1,[data-scheme] .chroma .cs,[data-scheme] .chroma .cp,[data-scheme] .chroma .cpf,[data-scheme] .chroma .gu{color:var(--bd-code-comment);font-style:italic}[data-scheme] .chroma .err,[data-scheme] .chroma .gr,[data-scheme] .chroma .gd{color:var(--bd-code-error)}[data-scheme] .chroma .hl{background-color:var(--bd-code-hl)}@media print{[data-scheme]{--bd-code-keyword:#1D455E;--bd-code-string:#26593F;--bd-code-number:#5B4A86;--bd-code-comment:#545D65;--bd-code-error:#9A3B32;--bd-code-hl:rgba(31, 78, 107, 0.07)}}.article-content .copyCodeButton{background:var(--card-background);box-shadow:var(--shadow-l1);border:0;border-radius:var(--tag-border-radius);color:var(--card-text-color-main);font-family:var(--base-font-family);font-size:1.3rem;padding:var(--bd-space-2)var(--bd-space-3)}@media(max-width:767px){.article-content .copyCodeButton{opacity:1;min-height:var(--bd-tap-min);min-width:var(--bd-tap-min)}}.article-content table:not(.lntable){width:100%;border-collapse:collapse;border-spacing:0;margin-bottom:0;font-size:var(--bd-fs-table-td)}.article-content table:not(.lntable) th,.article-content table:not(.lntable) td{border:0;border-bottom:1px solid var(--table-border-color);padding:10px 14px;text-align:start;vertical-align:top}.article-content table:not(.lntable) thead th{border-bottom:2px solid var(--bd-border-strong);background-color:var(--bd-data-bg);font-size:var(--bd-fs-table-th);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--card-text-color-tertiary);white-space:nowrap}.article-content table:not(.lntable) td{color:var(--card-text-color-main);font-variant-numeric:tabular-nums}.article-content table:not(.lntable) tr:last-child td{border-bottom:2px solid var(--bd-border-strong)}.article-content .table-wrapper{display:block;overflow-x:auto;margin-inline:0;width:auto;padding-inline:0;box-shadow:var(--shadow-l1);border-radius:var(--card-border-radius)}.article-content .table-wrapper::after{content:"\2192";display:block;text-align:end;font-size:1.2rem;color:var(--card-text-color-tertiary);padding:6px 10px 8px}@media(min-width:768px){.article-content .table-wrapper{margin-inline:calc(var(--card-padding) * -1);width:calc(100% + var(--card-padding) * 2);padding-inline:var(--card-padding);box-shadow:none;border-radius:0}.article-content .table-wrapper::after{content:none}}.article-content figure{text-align:start;margin:var(--bd-space-7)0}.article-content figure img{display:block;width:100%;height:auto;border:1px solid var(--bd-rule-on-card);border-radius:var(--card-border-radius)}.article-content figure figcaption{font-size:var(--bd-fs-caption);font-weight:400;line-height:1.48;color:var(--card-text-color-secondary);text-align:start;margin-top:10px;padding-top:10px;border-top:1px solid var(--bd-rule-on-card);opacity:1}.article-content>figure{counter-increment:bd-fig}.article-content>figure>figcaption::before{font-family:var(--base-font-family);font-size:var(--bd-fs-eyebrow);font-weight:600;letter-spacing:.09em;text-transform:uppercase;overflow-wrap:break-word;content:"Fig. " counter(bd-fig)". ";color:var(--card-text-color-tertiary)}.article-content figure.protected-image{margin-block:var(--bd-space-7);margin-inline:0;width:auto}@media(min-width:768px){.article-content figure.protected-image{margin-inline:calc(var(--card-padding) * -1);width:calc(100% + var(--card-padding) * 2)}.article-content figure.protected-image img{border-inline:0}.article-content figure.protected-image figcaption{padding-inline:var(--card-padding)}}.article-content pre.mermaid{background-color:initial;padding:0;margin-inline:0;width:auto;border-radius:0;overflow:visible}.article-content .mermaid:not([data-processed]){background:var(--bd-data-bg);min-height:160px;border-radius:var(--card-border-radius)}.article-content .mermaid-wrapper{position:relative;counter-increment:bd-fig;margin:var(--bd-space-7)0;padding:var(--bd-space-4);background:var(--card-background);border:1px solid var(--bd-border-strong);border-radius:var(--card-border-radius);overflow:visible}.article-content .mermaid-wrapper::before{font-family:var(--base-font-family);font-size:var(--bd-fs-eyebrow);font-weight:600;letter-spacing:.09em;text-transform:uppercase;overflow-wrap:break-word;content:"Fig. " counter(bd-fig)".";display:block;color:var(--card-text-color-tertiary);padding-bottom:10px;margin-bottom:var(--bd-space-3);border-bottom:1px solid var(--bd-rule-on-card)}.article-content .mermaid-wrapper .mermaid{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin;padding-bottom:var(--bd-space-2)}.article-content .mermaid-wrapper .mermaid svg{display:block;max-width:none;margin-inline:auto}.article-content .mermaid-wrapper .mermaid foreignobject div,.article-content .mermaid-wrapper .mermaid foreignobject p,.article-content .mermaid-wrapper .mermaid .nodeLabel,.article-content .mermaid-wrapper .mermaid .nodeLabel p,.article-content .mermaid-wrapper .mermaid .edgeLabel,.article-content .mermaid-wrapper .mermaid .edgeLabel p{word-break:normal;overflow-wrap:normal;hyphens:none;font-size:1.4rem;line-height:1.35}.mermaid-toolbar{position:static;display:flex;justify-content:stretch;gap:var(--bd-space-2);margin-top:var(--bd-space-3);padding-top:var(--bd-space-3);border-top:1px solid var(--bd-rule-on-card)}@media(min-width:768px){.mermaid-toolbar{justify-content:flex-end}}.mermaid-toolbar button{display:inline-flex;align-items:center;justify-content:center;flex:auto;min-height:var(--bd-tap-min);padding:0 14px;background:var(--mermaid-toolbar-btn-bg);border:1px solid var(--bd-border-strong);border-radius:var(--tag-border-radius);color:var(--mermaid-toolbar-btn-text);font-family:var(--base-font-family);font-size:1.3rem;font-weight:600;box-shadow:none;transform:none;transition:border-color .15s ease,color .15s ease}@media(min-width:768px){.mermaid-toolbar button{flex:none}}.mermaid-toolbar button:hover{background:var(--mermaid-toolbar-btn-bg);color:var(--accent-color-darker);border-color:var(--accent-color);transform:none}.mermaid-modal-header{background:0 0;border-bottom:1px solid var(--bd-rule-on-card)}.mermaid-modal-controls button,.mermaid-modal-close{min-height:var(--bd-tap-min);padding:0 14px;background:var(--mermaid-modal-btn-bg);border:1px solid var(--bd-border-strong);border-radius:var(--tag-border-radius);color:var(--card-text-color-main);font-family:var(--base-font-family);font-size:1.3rem}.mermaid-modal-controls button:hover,.mermaid-modal-close:hover{background:var(--mermaid-modal-btn-hover)}.mermaid-modal-content{border-radius:var(--card-border-radius);background:var(--mermaid-modal-content-bg);box-shadow:0 0 0 1px var(--bd-border-strong)}.article-content .gallery{flex-direction:column;flex-wrap:wrap;align-items:stretch;gap:var(--bd-space-3);margin:var(--bd-space-7)0}.article-content .gallery figure{margin:0}.article-content .gallery img{width:100%;height:auto}@media(min-width:768px){.article-content .gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--bd-space-3)}.article-content .gallery img{aspect-ratio:3/2;object-fit:cover}}.article-content .gallery-wrapper{margin:var(--bd-space-6)0}.article-content .justified-gallery>div{border-radius:var(--card-border-radius);overflow:hidden;box-shadow:0 0 0 1px var(--bd-rule-on-card)}.article-content .justified-gallery>div>a>img{display:block}.article-content .justified-gallery>div>.caption{background:var(--bd-overlay-bg);color:var(--bd-overlay-text);font-family:var(--base-font-family);font-size:1.3rem;line-height:1.4;padding:6px 10px;text-shadow:none}.article-content .katex-display{margin:var(--bd-space-6)0;padding-block:2px}.article-content .katex-display>.katex{overflow-x:auto;overflow-y:hidden;padding-block:4px}.article-content .footnotes{font-family:var(--base-font-family);font-size:1.5rem;line-height:1.6;color:var(--card-text-color-secondary);margin-top:var(--bd-space-8);padding-top:var(--bd-space-5);border-top:1px solid var(--bd-rule-on-card)}.article-content .footnotes::before{font-family:var(--base-font-family);font-size:var(--bd-fs-eyebrow);font-weight:600;letter-spacing:.09em;text-transform:uppercase;overflow-wrap:break-word;content:"Notes";display:block;line-height:1.3;color:var(--card-text-color-tertiary);margin-bottom:var(--bd-space-3)}.article-content .footnotes hr{display:none}.article-content .footnotes ol{padding-inline-start:1.4em}.article-content .footnotes li{margin-top:var(--bd-space-2)}.article-content .footnotes p{margin:0}.article-content .footnote-backref{text-decoration:none;margin-inline-start:4px}.article-content sup a{text-decoration:none;font-variant-numeric:tabular-nums}.bd-back-link{display:inline-flex;align-items:center;gap:var(--bd-space-2);min-height:var(--bd-tap-min);font-size:var(--bd-fs-nav);font-weight:500;color:var(--accent-color);text-decoration:none}.bd-back-link:hover{text-decoration:underline;text-underline-offset:.18em}.bd-article-nav{display:grid;grid-template-columns:1fr;gap:0;width:100%}@media(min-width:768px){.bd-article-nav{grid-template-columns:1fr 1fr;gap:var(--bd-space-5)}}.bd-article-nav a{display:flex;flex-direction:column;gap:4px;padding-block:var(--bd-space-4);border-top:1px solid var(--bd-rule-on-card);text-decoration:none;color:var(--card-text-color-main)}.bd-article-nav a:hover .bd-article-nav__title,.bd-article-nav a:hover>span:last-child{color:var(--accent-color);text-decoration:underline;text-underline-offset:.18em}.bd-article-nav__dir,.bd-article-nav a>span:first-child{font-family:var(--base-font-family);font-size:var(--bd-fs-eyebrow);font-weight:600;letter-spacing:.09em;text-transform:uppercase;overflow-wrap:break-word;color:var(--card-text-color-tertiary)}.bd-article-nav__title,.bd-article-nav a>span:last-child{font-size:1.6rem;font-weight:600;letter-spacing:-.006em;line-height:1.32;color:var(--card-text-color-main)}@media(min-width:768px){.bd-article-nav__item--next{text-align:end;align-items:flex-end}.bd-article-nav__item--next:only-child{grid-column:1/-1}}.bd-cite{align-self:stretch;padding-top:var(--bd-space-4);border-top:1px solid var(--bd-rule-on-card)}.bd-cite>summary{display:flex;align-items:center;gap:var(--bd-space-2);min-height:var(--bd-tap-min);cursor:pointer;font-family:var(--base-font-family);font-size:var(--bd-fs-eyebrow);font-weight:600;letter-spacing:.09em;text-transform:uppercase;overflow-wrap:break-word;color:var(--card-text-color-tertiary);list-style:none}.bd-cite>summary::-webkit-details-marker{display:none}.bd-cite>summary svg{width:14px;height:14px;flex-shrink:0;transition:none}.bd-cite>summary:hover{color:var(--accent-color)}.bd-cite[open]>summary svg{transform:rotate(90deg)}.bd-cite-text{margin:var(--bd-space-3)0 0;max-width:var(--bd-measure);font-size:var(--bd-fs-row-desc);font-weight:400;line-height:1.6;letter-spacing:0;font-variant-numeric:tabular-nums;color:var(--card-text-color-secondary);overflow-wrap:break-word}.bd-cite-text cite{font-style:italic;color:var(--card-text-color-main)}.bd-cite-text a{font-size:inherit;color:var(--accent-color);text-decoration:underline;text-underline-offset:.18em;text-decoration-thickness:1px}.bd-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--bd-space-2,8px);min-height:var(--bd-tap-min,44px);padding-inline:20px;border:1px solid transparent;border-radius:var(--bd-btn-radius,2px);font-family:var(--base-font-family);font-size:var(--bd-fs-btn);font-weight:600;line-height:1;letter-spacing:.01em;text-align:center;text-decoration:none;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.bd-btn--primary{background-color:var(--accent-color);border-color:var(--accent-color);color:var(--accent-color-text)}.bd-btn--primary:hover,.bd-btn--primary:focus-visible{background-color:var(--accent-color-darker);border-color:var(--accent-color-darker);color:var(--accent-color-text)}.bd-btn--ghost{background-color:initial;border-color:var(--bd-border-strong);color:var(--accent-color)}.bd-btn--ghost:hover,.bd-btn--ghost:focus-visible{border-color:var(--accent-color);color:var(--accent-color-darker)}.bd-btn:focus-visible{outline:2px solid var(--bd-focus-ring-color,var(--accent-color));outline-offset:2px}.article-content a.bd-btn{text-decoration:none}.article-content a.bd-btn--primary{color:var(--accent-color-text)}.article-content a.bd-btn--ghost{color:var(--accent-color)}main.main>.bd-intro:not(:nth-last-child(2)){padding-bottom:var(--bd-space-7,44px);border-bottom:1px solid var(--bd-rule)}@media(min-width:768px){main.main>.bd-intro:not(:nth-last-child(2)){padding-bottom:var(--bd-space-8,64px)}}@media(min-width:1280px){main.main>.bd-intro:has(+.bd-browse:nth-last-child(2)){padding-bottom:0;border-bottom:0}}@media(min-width:768px){main.main>.bd-intro:has(+.bd-list-block){padding-bottom:var(--bd-space-8,64px);border-bottom:0}}.bd-intro-title{margin:0;max-width:26em;font-size:clamp(2.6rem,calc(2.1286rem + 1.2088vw),3.3rem);font-weight:600;line-height:1.24;letter-spacing:-.018em;color:var(--card-text-color-main);text-wrap:balance;overflow-wrap:break-word}.bd-intro-body{margin-top:var(--bd-space-5,24px)}.bd-intro-body>*{max-width:var(--bd-measure)}.bd-intro-body>p{margin:0 0 var(--bd-space-4,16px);font-size:var(--article-font-size);line-height:var(--article-line-height);color:var(--card-text-color-main)}.bd-intro-body>p:first-child{font-size:var(--bd-fs-lede);line-height:1.5;color:var(--card-text-color-secondary);max-width:30em}.bd-intro-body>:last-child{margin-bottom:0}.bd-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(105px,1fr));gap:var(--bd-space-4,16px)var(--bd-space-3,12px);margin:var(--bd-space-6,32px)0 0}@media(min-width:640px){.bd-facts{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--bd-space-5,24px)}}.bd-fact{display:flex;flex-direction:column;height:100%}.bd-fact dt{margin:0 0 4px;font-size:var(--bd-fs-eyebrow);font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--card-text-color-tertiary);overflow-wrap:break-word}.bd-fact dd{margin:auto 0 0;font-size:var(--bd-fs-fact);font-weight:600;line-height:1.05;letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--card-text-color-main)}.bd-intro-actions{display:flex;flex-wrap:wrap;gap:var(--bd-space-3,12px);margin:var(--bd-space-6,32px)0 0}.bd-intro-actions .bd-btn{flex:1 1 150px}@media(min-width:768px){.bd-intro-actions .bd-btn{flex:none}}.bd-list-block .bd-list-overline{margin:0 0 var(--bd-space-4,16px)}.bd-browse{padding-top:var(--bd-space-6,32px);border-top:1px solid var(--bd-rule)}.bd-intro+.bd-browse,.bd-list-block+.bd-browse,.article-list+.bd-browse,header:has(.section-description)+.bd-browse{padding-top:0;border-top:0}.bd-browse .section-title{margin:0 0 var(--bd-space-4,16px)}.bd-browse .bd-browse-search{margin:var(--bd-space-5,24px)0 0}.bd-browse .bd-browse-search .bd-btn{width:100%}@media(min-width:768px){.bd-browse .bd-browse-search .bd-btn{width:auto}}@media(min-width:1280px){.bd-browse{display:none}}main.main>header:not(:has(.section-description)){padding-bottom:var(--bd-space-5,24px);border-bottom:1px solid var(--bd-rule)}main.main>.bd-page-title{padding-bottom:var(--bd-space-5,24px);border-bottom:1px solid var(--bd-rule)}body.bd-cv{font-variant-numeric:tabular-nums}.bd-cv .article-content>p:first-of-type{margin-bottom:var(--bd-space-5,24px)}.bd-cv .article-content>p:nth-of-type(2){margin-top:0;padding-bottom:var(--bd-space-5,24px);max-width:var(--bd-measure);font-size:var(--bd-fs-cv-org);line-height:1.55;color:var(--card-text-color-secondary)}.bd-cv .article-content>p:nth-of-type(2) strong{color:var(--card-text-color-main)}.bd-cv .article-content h2{margin:var(--bd-space-8,64px)0 var(--bd-space-4,16px);padding-bottom:10px;border-bottom:2px solid var(--bd-border-strong);max-width:var(--bd-measure);font-size:var(--bd-fs-eyebrow);font-weight:600;line-height:1.3;letter-spacing:.09em;text-transform:uppercase;color:var(--body-text-color);overflow-wrap:break-word}.bd-cv .article-content>p:nth-of-type(2)+h2{margin-top:var(--bd-space-6,32px)}.bd-cv .article-content ul{margin:var(--bd-space-3,12px)0 0;padding-inline-start:0;list-style:none}.bd-cv .article-content ul>li{margin:0;padding-block:var(--bd-space-4,16px);border-top:1px solid var(--bd-rule-on-card);max-width:var(--bd-measure)}.bd-cv .article-content ul>li:first-child{border-top:0;padding-top:var(--bd-space-3,12px)}.bd-cv .article-content ul>li strong{color:var(--card-text-color-main)}.bd-cv .article-content ul>li em{color:var(--card-text-color-secondary)}.bd-cv .article-content ol{margin:var(--bd-space-3,12px)0 0;padding-inline-start:0;list-style:none;counter-reset:bd-cv-item}.bd-cv .article-content ol>li{display:block;position:relative;margin:0;padding-inline-start:calc(1.6em + var(--bd-space-3,12px));padding-block:var(--bd-space-4,16px);border-top:1px solid var(--bd-rule-on-card);counter-increment:bd-cv-item;max-width:var(--bd-measure)}.bd-cv .article-content ol>li::before{content:counter(bd-cv-item)".";position:absolute;inset-inline-start:0;top:var(--bd-space-4,16px);min-width:1.6em;font-variant-numeric:tabular-nums;color:var(--card-text-color-tertiary)}.bd-cv .article-content ol>li:first-child{border-top:0;padding-top:var(--bd-space-3,12px)}.bd-cv .article-content ol>li:first-child::before{top:var(--bd-space-3,12px)}.bd-cv .article-content>p{max-width:var(--bd-measure)}.bd-cv .article-content blockquote{margin-block:var(--bd-space-6,32px)}.bd-portal .article-content>.portal-grid{display:grid;grid-template-columns:1fr;gap:0;margin-top:var(--bd-space-6,32px);max-width:none;border-top:1px solid var(--bd-rule-on-card)}.article-content .portal-card{display:flex;flex-direction:column;justify-content:center;gap:2px;min-height:64px;position:relative;padding:var(--bd-space-4,16px)0;padding-inline-end:24px;border:0;border-bottom:1px solid var(--bd-rule-on-card);border-radius:0;font-size:1.6rem;font-weight:600;line-height:1.35;color:var(--card-text-color-main);text-decoration:none;transition:color .15s ease,border-color .15s ease;transform:none;box-shadow:none}.article-content .portal-card:hover,.article-content .portal-card:focus-visible{transform:none;box-shadow:none;border-bottom-color:var(--bd-border-strong);color:var(--accent-color)}.article-content .portal-card:focus-visible{outline:2px solid var(--bd-focus-ring-color,var(--accent-color));outline-offset:2px}.article-content .portal-card small{display:block;margin-top:2px;font-size:var(--bd-fs-fine);font-weight:400;line-height:1.45;color:var(--card-text-color-tertiary);opacity:1}.article-content .portal-card:last-child{border-bottom:0}.article-content .portal-card[href^=http]::after{content:"\2197";position:absolute;inset-inline-end:0;top:50%;transform:translateY(-50%);font-size:var(--bd-fs-fine);font-weight:400;color:var(--card-text-color-tertiary)}.article-content .portal-card:not([href^=http]):not([href="#"])::after{content:"\2192";position:absolute;inset-inline-end:0;top:50%;transform:translateY(-50%);font-size:var(--bd-fs-fine);font-weight:400;color:var(--card-text-color-tertiary)}.article-content .portal-card[href="#"]{display:none}.bd-about .article-content>p:first-of-type{font-size:var(--bd-fs-lede);line-height:1.5;letter-spacing:-.006em;color:var(--card-text-color-secondary);max-width:30em}.bd-about .article-content>ul{margin-block:var(--bd-space-6,32px);padding-inline-start:0;list-style:none;border-top:1px solid var(--bd-rule-on-card)}.bd-about .article-content>ul>li{margin:0;padding-block:var(--bd-space-3,12px);border-bottom:1px solid var(--bd-rule-on-card);max-width:var(--bd-measure)}.bd-about .article-content>ul>li strong{color:var(--card-text-color-main)}.bd-about .article-content>ul>li:last-child{border-bottom:0}.bd-about .article-content>p:last-of-type{margin-top:var(--bd-space-6,32px);padding-top:var(--bd-space-4,16px);border-top:1px solid var(--bd-rule-on-card);max-width:var(--bd-measure);font-size:var(--bd-fs-row-desc);line-height:1.55;color:var(--card-text-color-secondary)}body #swipebox-overlay{background:var(--card-background)}body #swipebox-overlay #swipebox-top-bar,body #swipebox-overlay #swipebox-bottom-bar{background:0 0;opacity:1;text-shadow:none}body #swipebox-overlay #swipebox-top-bar,body #swipebox-overlay #swipebox-description{color:var(--card-text-color-main)!important}body #swipebox-overlay #swipebox-close,body #swipebox-overlay #swipebox-prev,body #swipebox-overlay #swipebox-next{min-width:48px;min-height:48px;background-image:none;background-color:currentColor;color:var(--card-text-color-main);-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:24px 24px;mask-repeat:no-repeat;mask-position:center;mask-size:24px 24px}body #swipebox-overlay #swipebox-close{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 6 6 18M6 6l12 12'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 6 6 18M6 6l12 12'/%3E%3C/svg%3E");top:calc(env(safe-area-inset-top,0px) + var(--bd-space-2,8px));right:calc(env(safe-area-inset-right,0px) + var(--bd-space-2,8px))}body #swipebox-overlay #swipebox-prev{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 6l-6 6 6 6'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 6l-6 6 6 6'/%3E%3C/svg%3E")}body #swipebox-overlay #swipebox-next{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 6l6 6-6 6'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 6l6 6-6 6'/%3E%3C/svg%3E")}body #swipebox-overlay #swipebox-prev,body #swipebox-overlay #swipebox-next{position:relative;top:auto;bottom:calc(env(safe-area-inset-bottom,0px) + var(--bd-space-2,8px))}body #swipebox-overlay #swipebox-arrows{padding-inline-start:calc(env(safe-area-inset-left,0px) + var(--bd-space-2,8px));padding-inline-end:calc(env(safe-area-inset-right,0px) + var(--bd-space-2,8px))}@media print{:root,:root[data-scheme=dark]{--body-background:#FFFFFF;--card-background:#FFFFFF;--card-background-selected:#FFFFFF;--card-text-color-main:#000000;--card-text-color-secondary:#1C1C1C;--card-text-color-tertiary:#3A3A3A;--body-text-color:#000000;--accent-color:#000000;--accent-color-darker:#000000;--accent-color-text:#FFFFFF;--card-separator-color:#BBBBBB;--bd-rule:#BBBBBB;--bd-rule-on-card:#BBBBBB;--bd-rule-sticky:#BBBBBB;--bd-border:#9A9A9A;--bd-border-strong:#555555;--table-border-color:#BBBBBB;--kbd-border-color:#555555;--bd-chip-bg:#FFFFFF;--bd-chip-text:#000000;--bd-chip-border:#555555;--bd-data-bg:#F2F2F2;--mermaid-toolbar-btn-bg:#FFFFFF;--mermaid-toolbar-btn-text:#000000;--mermaid-modal-content-bg:#FFFFFF;--alert-note-color:#000000;--alert-note-background:transparent;--alert-tip-color:#222222;--alert-tip-background:transparent;--alert-important-color:#000000;--alert-important-background:transparent;--alert-warning-color:#333333;--alert-warning-background:transparent;--alert-caution-color:#444444;--alert-caution-background:transparent;--code-background-color:#F2F2F2;--code-text-color:#000000;--pre-background-color:#F6F6F6;--pre-text-color:#000000;--blockquote-background-color:transparent;--shadow-l1:none;--shadow-l2:none;--card-border-radius:0;--link-background-opacity:0;--link-background-opacity-hover:0}@page{margin:14mm 16mm}html{overflow-y:visible}body{background:#fff;color:#000}.container .left-sidebar,.container .right-sidebar{display:none}main.main>aside,.site-footer,.pagination,.search-form,.article-toc,#toggle-menu,.bd-browse,.bd-intro-actions,.bd-btn,.copyCodeButton,.mermaid-toolbar,.article-footer .article-tags,.article-header .article-category{display:none}.main-container{display:block;min-height:0;max-width:none;padding:0}main.main{display:block;width:100%;max-width:none;padding:0;gap:0}.article-page .main-article{background:0 0;box-shadow:none;border-radius:0;overflow:visible}.article-content{font-size:10.5pt;line-height:1.45}.article-content>*{max-width:none}.bd-cv .article-content h2,.bd-cv .article-content>p,.bd-cv .article-content>p:nth-of-type(2),.bd-cv .article-content ul>li,.bd-cv .article-content ol>li,.bd-about .article-content>ul>li,.bd-about .article-content>p:last-of-type{max-width:none}.bd-cite>*:not(summary){display:block}.bd-cite::details-content{content-visibility:visible}.bd-cite>summary svg{display:none}a{color:#000;text-decoration:underline}.bd-cv .article-content a[href^=http]::after{content:" (" attr(href)")";font-size:8.5pt;color:#3a3a3a;word-break:break-all}h1,h2,h3,h4{break-after:avoid;page-break-after:avoid}li,blockquote,figure,pre,tr,.bd-fact{break-inside:avoid;page-break-inside:avoid}.bd-cv .article-content h2{margin-top:16pt;padding-bottom:4pt}.bd-cv .article-content ul>li,.bd-cv .article-content ol>li{padding-block:5pt}}