/*!modern-normalize v3.0.1 | MIT License | https://github.com/sindresorhus/modern-normalize*/*,::before,::after{box-sizing:border-box}html{font-family:system-ui,segoe ui,Roboto,Helvetica,Arial,sans-serif,apple color emoji,segoe ui emoji;line-height:1.15;-webkit-text-size-adjust:100%;tab-size:4}body{margin:0}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Consolas,liberation mono,Menlo,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}table{border-color:initial}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}legend{padding:0}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}:root{--font-size:100%;--font-size-smaller:0.875rem;--font-size-smallest:0.75rem;--body-font-weight:400;--border-radius:0.25rem;--space-1:1px;--space-4:0.25rem;--space-8:0.5rem;--space-16:1rem;--body-min-width:20rem;--layout-max-width:90rem;--content-max-width:50rem;--menu-width:16rem;--toc-width:16rem}.flex{display:flex;&.gap{gap:var(--space-16)}}.flex-auto{flex:auto}.flex-even{flex:1 1}.flex-wrap{flex-wrap:wrap}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.align-center{align-items:center}.mx-auto{margin:0 auto}.text-center{text-align:center}.text-small{font-size:.875em}.hidden{display:none}input.toggle{height:0;width:0;overflow:hidden;opacity:0;position:absolute}@keyframes spin{100%{transform:rotate(360deg)}}nav.horizontal>ul{display:flex;gap:var(--space-8);flex-wrap:wrap;justify-content:end;a{padding:var(--space-4)}> li > ul{padding:0}}html{font-size:var(--font-size);scroll-behavior:smooth;touch-action:manipulation;scrollbar-gutter:stable}body{min-width:var(--body-min-width);color:var(--body-font-color);background:var(--body-background)var(--body-background-tint);font-weight:var(--body-font-weight);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-weight:inherit}a{flex:auto;align-items:center;gap:.5em;text-decoration:none;cursor:default;&[href], &[role=button]{color:var(--color-link);cursor:pointer}}small{font-size:.875em}:focus-visible,input.toggle:focus-visible+label,label:has(input.toggle:focus-visible){outline-style:auto;outline-color:var(--color-link)}nav ul{padding:0;margin:0;list-style:none;li{position:relative}a{padding:.5em 0;display:inline-block;transition:opacity .1s ease-in-out}a[href]:hover, a[role=button]:hover{opacity:.5}ul{padding-inline-start:1.5em}}nav>ul{margin-bottom:var(--space-16)}ul.pagination{display:flex;justify-content:center;list-style-type:none;padding-inline-start:0;.page-item a{padding:var(--space-16)}}.book-container{max-width:var(--layout-max-width);margin:0 auto}.book-icon{filter:var(--icon-filter);height:1em;width:1em}.book-brand{font-size:1.25rem;margin-bottom:var(--space-16);img{height:1em;width:auto}a[href]{color:var(--body-font-color)}}.book-menu{flex:0 0 var(--menu-width);font-size:var(--font-size-smaller);.book-menu-content{width:var(--menu-width);padding:var(--space-16)}a, label{color:inherit;word-wrap:break-word;display:flex}a.active{color:var(--color-link)}label > .book-icon:last-child{cursor:pointer;align-self:center;transition:transform .1s ease-in-out}input.toggle + label + ul{display:none}input.toggle:checked + label{> .book-icon:last-child{transform:rotate(90deg)}+ ul{display:block}}}body[dir=rtl] .book-menu{input.toggle + label > .book-icon:last-child{transform:rotate(180deg)}input.toggle:checked + label > .book-icon:last-child{transform:rotate(90deg)}}.book-section-flat{margin:var(--space-16)0;> a, > label a{font-weight:bolder}> ul{padding-inline-start:0}}.book-page{min-width:var(--body-min-width);max-width:var(--content-max-width);padding:var(--space-16);margin-inline-start:auto;margin-inline-end:0}.book-page:last-child,.book-toc:last-child{margin-inline-end:auto}.book-post{margin-bottom:calc(var(--space-16) * 4);.book-post-content{margin-top:var(--space-16)}.book-post-thumbnail{flex:0 0 34%;img{width:100%;aspect-ratio:4/3;object-fit:cover}}}.book-header{padding:var(--space-16);padding-bottom:0;label{line-height:0;.book-icon{font-size:1.25rem}}.book-brand{margin:0;font-size:1rem}}.book-breadcrumbs{font-size:var(--font-size-smaller);a{padding:0}ul{margin-bottom:var(--space-8)}ul, li{gap:var(--space-4)}}.book-layout-landing{.book-container{flex-direction:column;max-width:var(--layout-max-width)}.book-page{max-width:initial}.book-header{display:block;position:relative;z-index:1}}.book-search{position:relative;margin:var(--space-8)0;input{width:100%;padding:var(--space-8);border:var(--space-1)solid var(--gray-200);border-radius:var(--border-radius);background:var(--gray-100);color:var(--body-font-color);&:required + .book-search-spinner{display:block}}.book-search-spinner{position:absolute;top:0;margin:var(--space-8);margin-inline-start:calc(100% - (var(--space-16) + var(--space-8)));width:var(--space-16);height:var(--space-16);border:var(--space-1)solid transparent;border-top-color:var(--body-font-color);border-radius:50%;animation:spin 1s ease infinite}ul a{padding:0;margin-top:var(--space-16);font-weight:bolder}mark{background:0 0;color:var(--color-link)}}.book-toc{flex:0 0 var(--toc-width);font-size:var(--font-size-smallest);.book-toc-content{width:var(--toc-width);padding:var(--space-16)}img{height:1em;width:auto}}.book-toc-section{gap:.5em;> .book-icon{margin:.5em 0}}.book-menu .book-menu-content,.book-toc .book-toc-content{position:fixed;top:0;bottom:0;overflow-x:hidden;overflow-y:auto}.book-footer{padding-top:var(--space-16);font-size:var(--font-size-smaller);a{margin:var(--space-4)0;padding:var(--space-4)0}}.book-comments{margin-top:var(--space-16)}.book-copyright{margin-top:var(--space-16)}.book-languages{span{padding:0}ul{padding-inline-start:1.5em}}.book-menu-content,.book-toc-content{transition:.2s ease-in-out;transition-property:transform,opacity,visibility;will-change:transform,opacity}@media screen and (max-width:56rem){.book-container{flex-direction:column}.book-page{max-width:initial;margin:0}.book-menu{visibility:hidden;flex-basis:0;margin-inline-start:calc(-1 * var(--menu-width));z-index:1;.book-menu-content{background:var(--body-background)}}.book-header{display:block;order:-2}.book-toc{display:none;flex:none;order:-1;.book-toc-content{position:static;width:auto;font-size:var(--font-size-smaller);overflow:initial}}.book-post-container{flex-direction:column-reverse}body:has(#menu-control:checked){.book-menu{visibility:initial}.book-menu .book-menu-content{transform:translateX(var(--menu-width));box-shadow:0 0 var(--space-8)rgba(0,0,0,.1)}.book-header, .book-toc, .book-page{opacity:.25}.book-menu-overlay{display:block;position:fixed;inset:0}}body:has(#toc-control:checked) .book-toc{display:block}body[dir=rtl]:has(#menu-control:checked){.book-menu .book-menu-content{transform:translateX(calc(-1 * var(--menu-width)))}}}@media screen and (min-width:85rem){.book-container{gap:var(--space-16);padding:var(--space-16)}.book-menu .book-menu-content,.book-toc .book-toc-content{padding-top:calc(var(--space-16) * 2)}}.markdown{line-height:1.6;>:first-child, >section:first-child :first-child{margin-top:0}h1, h2, h3, h4, h5, h6{font-weight:inherit;line-height:1.2;margin-top:1.5em;margin-bottom:var(--space-16);a.anchor{opacity:0;font-size:.75em;margin-inline-start:.25em;&::after{content:'#'}}&:hover a.anchor, a.anchor:focus-visible{opacity:initial;text-decoration:none}}h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.25rem}h4{font-size:1.125rem}h5{font-size:1rem}h6{font-size:.875rem}b, optgroup, strong{font-weight:bolder}a{text-decoration:none;&[href]:hover{text-decoration:underline}&[href]:visited{color:var(--color-visited-link)}}img{max-width:100%;height:auto}code{direction:ltr;unicode-bidi:embed;padding:.125em .25em;background:var(--gray-100);border:var(--space-1)solid var(--gray-200);border-radius:var(--border-radius);font-size:.875em}pre{padding:var(--space-16);background:var(--gray-100);border:var(--space-1)solid var(--gray-200);border-radius:var(--border-radius);overflow-x:auto;&:focus{outline-style:auto;outline-color:var(--color-link)}code{padding:0;border:0;background:0 0}}p{word-wrap:break-word}blockquote{margin:var(--space-16)0;padding:var(--space-8)var(--space-16);border-radius:var(--border-radius);position:relative;&:before{border-radius:var(--border-radius);content:"";position:absolute;top:0;bottom:0;left:0;width:var(--space-4);background:var(--gray-500)} :first-child { margin-top: 0; } :last-child { margin-bottom: 0; }}table{overflow:auto;display:block;border-spacing:0;border-collapse:collapse;margin-top:var(--space-16);margin-bottom:var(--space-16);tr th, tr td{padding:var(--space-8)var(--space-16);border:var(--space-1)solid var(--gray-200);text-align:start}}hr{height:var(--space-1);border:none;background:var(--gray-200)}ul, ol{padding-inline-start:calc(var(--space-16) * 2);word-wrap:break-word}dl{dt{font-weight:bolder;margin-top:var(--space-16)}dd{margin-inline-start:0;margin-bottom:var(--space-16)}}.highlight{direction:ltr;unicode-bidi:embed;border-radius:var(--border-radius);table tbody{border:var(--space-1)solid var(--gray-200)}table tr{pre{border:0}td pre code > span{display:flex}td:nth-child(1) pre{margin:0;padding-inline-end:0}td:nth-child(2) pre{margin:0;padding-inline-start:0}}}details{padding:var(--space-16);margin:var(--space-16)0;border:var(--space-1)solid var(--gray-200);border-radius:var(--border-radius);summary{line-height:1;padding:var(--space-16);margin:calc(-1 * var(--space-16));cursor:pointer;list-style:none;&::before{content:"›";display:inline-block;margin-inline-end:var(--space-8);transition:transform .1s ease-in-out}}&[open] summary{margin-bottom:0;&::before{transform:rotate(90deg)}}}figure{margin:var(--space-16)0;figcaption{margin-top:var(--space-16)}}}.markdown-inner>:first-child,.markdown .book-steps>ol>li>:first-child,.markdown figure figcaption>:first-child{margin-top:0}.markdown-inner>:last-child,.markdown .book-steps>ol>li>:last-child,.markdown figure figcaption>:last-child{margin-bottom:0}.markdown{.book-tabs{margin:var(--space-16)0;padding:0;border:var(--space-1)solid var(--gray-200);border-radius:var(--border-radius);display:flex;flex-wrap:wrap;label{display:inline-block;padding:var(--space-8)var(--space-16);border-bottom:var(--space-1)solid transparent;cursor:pointer}.book-tabs-content{order:999;width:100%;border-top:var(--space-1)solid var(--gray-100);padding:var(--space-16);display:none}input[type=radio]:checked+label{border-bottom:var(--space-1)solid var(--color-link)}input[type=radio]:checked+label+.book-tabs-content{display:block}}.book-columns{gap:var(--space-16);>div{margin:var(--space-16)0;min-width:calc(var(--body-min-width) * .66)}>ul{list-style:none;display:flex;padding:0;flex-wrap:wrap;gap:var(--space-16);>li{flex:1 1;min-width:calc(var(--body-min-width) * .66)}}}a.book-btn[href]{display:inline-block;font-size:var(--font-size-smaller);color:var(--color-link);line-height:calc(var(--space-16) * 2);padding:0 var(--space-16);border:var(--space-1)solid var(--color-link);border-radius:var(--border-radius);cursor:pointer;&:hover{text-decoration:none}}.book-hint{&.note{--accent-color:var(--color-accent-note)}&.tip{--accent-color:var(--color-accent-tip)}&.important{--accent-color:var(--color-accent-important)}&.warning{--accent-color:var(--color-accent-warning)}&.caution{--accent-color:var(--color-accent-caution)}&.default{--accent-color:var(--color-accent-default)}&.info{--accent-color:var(--color-accent-info)}&.success{--accent-color:var(--color-accent-success)}&.danger{--accent-color:var(--color-accent-danger)}background-color:color-mix(in srgb,var(--accent-color) 10%,transparent);&::before{background-color:var(--accent-color)}}.book-badge{&.note{--accent-color:var(--color-accent-note)}&.tip{--accent-color:var(--color-accent-tip)}&.important{--accent-color:var(--color-accent-important)}&.warning{--accent-color:var(--color-accent-warning)}&.caution{--accent-color:var(--color-accent-caution)}&.default{--accent-color:var(--color-accent-default)}&.info{--accent-color:var(--color-accent-info)}&.success{--accent-color:var(--color-accent-success)}&.danger{--accent-color:var(--color-accent-danger)}display:inline-block;font-size:var(--font-size-smaller);font-weight:var(--body-font-weight);vertical-align:middle;border-radius:var(--border-radius);border:var(--space-1)solid var(--accent-color);overflow:hidden;text-wrap:nowrap;color:var(--body-font-color);span{display:inline-block;padding:0 var(--space-8)}span.book-badge-value{color:var(--body-background);background-color:var(--accent-color)}}.book-steps{position:relative;>ol{counter-reset:steps;list-style:none;padding-inline-start:calc(var(--space-16) + var(--space-4));margin-top:calc(var(--space-16) * 2);>li::before{content:counter(steps);counter-increment:steps;position:absolute;left:var(--space-8);display:flex;justify-content:center;align-items:center;white-space:nowrap;height:calc(var(--space-16) * 1.5);width:calc(var(--space-16) * 1.5);line-height:var(--space-16);border-radius:var(--border-radius);background:var(--body-background);border:var(--space-1)solid var(--gray-500);outline:var(--space-4)solid var(--body-background)}>li{border-inline-start:var(--space-1)dotted var(--gray-500);padding-inline-start:calc(var(--space-16) * 3);padding-bottom:calc(var(--space-16) * 2)}>li:last-child{border:0}}}.book-image{input + img{border:var(--space-1)solid var(--gray-200);cursor:zoom-in}input:checked + img{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--body-background);object-fit:contain;width:100%;height:100%;z-index:1;cursor:zoom-out;padding:var(--space-16)}}.book-asciinema{margin:var(--space-16)0}.book-codeblock-filename{display:block;padding:var(--space-4)var(--space-8);border-bottom:0;font-size:var(--font-size-smallest);border-radius:var(--border-radius)var(--border-radius)0 0;a{color:var(--body-font-color)}+ .highlight pre{margin-top:0;border-start-start-radius:0;border-start-end-radius:0}}}@media print{.book-menu,.book-footer,.book-toc{display:none}a::after{content:attr(href);margin:0 var(--space-4)}main{display:block!important}}@layer theme{:root{color-scheme:light;--body-background-tint:none;--icon-filter:none;--color-accent-info:var(--color-accent-note);--color-accent-success:var(--color-accent-tip);--color-accent-danger:var(--color-accent-caution)}:root[data-theme$=dark]{color-scheme:dark}:root[data-theme$=auto]{color-scheme:light dark}:root,:root[data-theme=light],:root[data-theme=auto]{--body-background:white;--body-font-color:black;--color-link:#0055bb;--color-visited-link:#5500bb;--gray-100:#f8f9fa;--gray-200:#e9ecef;--gray-500:#adb5bd;--color-accent-default:#64748b;--color-accent-note:#4486dd;--color-accent-tip:#3bad3b;--color-accent-important:#8144dd;--color-accent-warning:#f59e42;--color-accent-caution:#d84747}:root[data-theme=dark]{--body-background:#2e3440;--body-font-color:#eceff4;--icon-filter:brightness(0) invert(1);--color-link:#81a1c1;--color-visited-link:#b48ead;--gray-100:#3b4252;--gray-200:#434c5e;--gray-500:#d8dee9;--color-accent-default:#81a1c1;--color-accent-note:#5e81ac;--color-accent-tip:#a3be8c;--color-accent-important:#b48ead;--color-accent-warning:#d08770;--color-accent-caution:#bf616a}@media(prefers-color-scheme:dark){:root[data-theme=auto]{--body-background:#2e3440;--body-font-color:#eceff4;--icon-filter:brightness(0) invert(1);--color-link:#81a1c1;--color-visited-link:#b48ead;--gray-100:#3b4252;--gray-200:#434c5e;--gray-500:#d8dee9;--color-accent-default:#81a1c1;--color-accent-note:#5e81ac;--color-accent-tip:#a3be8c;--color-accent-important:#b48ead;--color-accent-warning:#d08770;--color-accent-caution:#bf616a}}:root[data-theme=contrast-light],:root[data-theme=contrast-auto]{--body-background:#ffffff;--body-font-color:#000000;--color-link:#0055ee;--color-visited-link:#551a8b;--gray-100:#f0f0f0;--gray-200:#d0d0d0;--gray-500:#707070;--color-accent-default:#000000;--color-accent-note:#0066cc;--color-accent-tip:#008000;--color-accent-important:#800080;--color-accent-warning:#ff8c00;--color-accent-caution:#cc0000}:root[data-theme=contrast-dark]{--body-background:#000000;--body-font-color:#ffffff;--icon-filter:brightness(0) invert(1);--color-link:#00ffff;--color-visited-link:#ff00ff;--gray-100:#1a1a1a;--gray-200:#333333;--gray-500:#a0a0a0;--color-accent-default:#ffffff;--color-accent-note:#00ccff;--color-accent-tip:#00ff00;--color-accent-important:#ff00ff;--color-accent-warning:#ffaa00;--color-accent-caution:#ff0000}@media(prefers-color-scheme:dark){:root[data-theme=contrast-auto]{--body-background:#000000;--body-font-color:#ffffff;--icon-filter:brightness(0) invert(1);--color-link:#00ffff;--color-visited-link:#ff00ff;--gray-100:#1a1a1a;--gray-200:#333333;--gray-500:#a0a0a0;--color-accent-default:#ffffff;--color-accent-note:#00ccff;--color-accent-tip:#00ff00;--color-accent-important:#ff00ff;--color-accent-warning:#ffaa00;--color-accent-caution:#ff0000}}:root[data-theme=catppuccin-light],:root[data-theme=catppuccin-auto]{--body-background:#eff1f5;--body-font-color:#4c4f69;--color-link:#dd7878;--color-visited-link:#dc8a78;--gray-100:#e6e9ef;--gray-200:#ccd0da;--gray-500:#9ca0b0;--color-accent-default:#7c7f93;--color-accent-note:#04a5e5;--color-accent-tip:#40a02b;--color-accent-important:#7287fd;--color-accent-warning:#df8e1d;--color-accent-caution:#d20f39}:root[data-theme=catppuccin-dark]{--body-background:#303446;--body-font-color:#c6d0f5;--icon-filter:brightness(0) invert(1);--color-link:#eebebe;--color-visited-link:#f2d5cf;--gray-100:#414559;--gray-200:#51576d;--gray-500:#737994;--color-accent-default:#838ba4;--color-accent-note:#8caaee;--color-accent-tip:#a6d189;--color-accent-important:#ca9ee6;--color-accent-warning:#ef9f76;--color-accent-caution:#e78284}@media(prefers-color-scheme:dark){:root[data-theme=catppuccin-auto]{--body-background:#303446;--body-font-color:#c6d0f5;--icon-filter:brightness(0) invert(1);--color-link:#eebebe;--color-visited-link:#f2d5cf;--gray-100:#414559;--gray-200:#51576d;--gray-500:#737994;--color-accent-default:#838ba4;--color-accent-note:#8caaee;--color-accent-tip:#a6d189;--color-accent-important:#ca9ee6;--color-accent-warning:#ef9f76;--color-accent-caution:#e78284}}:root[data-theme=ayu-light],:root[data-theme=ayu-auto]{--body-background:#fafafa;--body-font-color:#575f66;--color-link:#0870c4;--color-visited-link:#7339a8;--gray-100:#f3f4f5;--gray-200:#e7e8e9;--gray-500:#abb0b6;--color-accent-default:#8a9199;--color-accent-note:#399ee6;--color-accent-tip:#86b300;--color-accent-important:#a37acc;--color-accent-warning:#fa8d3e;--color-accent-caution:#f07171}:root[data-theme=ayu-dark]{--body-background:#1f2430;--body-font-color:#cbccc6;--icon-filter:brightness(0) invert(1);--color-link:#5ccfe6;--color-visited-link:#d4bfff;--gray-100:#242936;--gray-200:#2d3443;--gray-500:#5c6773;--color-accent-default:#5c6773;--color-accent-note:#5ccfe6;--color-accent-tip:#bae67e;--color-accent-important:#d4bfff;--color-accent-warning:#ffa759;--color-accent-caution:#f28779}@media(prefers-color-scheme:dark){:root[data-theme=ayu-auto]{--body-background:#1f2430;--body-font-color:#cbccc6;--icon-filter:brightness(0) invert(1);--color-link:#5ccfe6;--color-visited-link:#d4bfff;--gray-100:#242936;--gray-200:#2d3443;--gray-500:#5c6773;--color-accent-default:#5c6773;--color-accent-note:#5ccfe6;--color-accent-tip:#bae67e;--color-accent-important:#d4bfff;--color-accent-warning:#ffa759;--color-accent-caution:#f28779}}}.center{display:block;margin-left:auto;margin-right:auto}table{width:100%;display:table!important}.news-articles-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem;padding:1rem 0}.news-article-card{display:flex;flex-direction:column;background:var(--body-background);border-radius:8px;overflow:hidden;box-shadow:0 2px 4px rgba(0,0,0,.1);transition:transform .2s ease;&:hover{transform:translateY(-3px)}.article-thumbnail{width:100%;overflow:hidden;img{width:100%;height:100%;object-fit:cover}}.article-content{padding:1rem;h2{margin:0 0 .5rem;font-size:1.25rem;a{color:var(--body-font-color);text-decoration:none;&:hover{color:var(--color-link)}}}.article-summary{margin:.5rem 0;font-size:.9rem;color:var(--gray-500)}}}.edit-github-wrapper{display:flex;justify-content:flex-end;margin:2rem 0 1.5rem}.edit-github-button{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border-radius:4px;background:var(--body-background);color:var(--color-link);text-decoration:none;font-size:.875rem;border:1px solid rgba(0,0,0,5%);transition:opacity .2s ease,transform .2s ease;opacity:.85}.edit-github-button:hover,.edit-github-button:focus-visible{opacity:1;transform:translateY(-1px)}.edit-github-button svg{display:block}.book-page,.book-page:last-child{flex-grow:1;max-width:none;margin-inline-start:0;margin-inline-end:0}.book-post{margin-bottom:0}.book-page:has(.book-post) .book-footer>:not(.book-comments){display:none}.book-comments{background-color:var(--body-background)}#disqus_thread>iframe[src*=ads-iframe],#disqus_thread>iframe[src*="tempest.services.disqus.com"]{display:none!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important}.book-menu nav ul a{padding-block:.3rem}.book-menu nav>ul{margin-bottom:.5rem}.book-menu .book-section-flat{margin-block:.5rem}.book-menu nav li:has(>a.menu-divider-above){margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--gray-200)}.book-menu nav>ul:first-of-type>li>a,.book-menu nav a.menu-top-level{font-weight:600;font-size:1rem}.board-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;padding:1rem 0}.board-card{display:flex;flex-direction:column;gap:0;background:var(--body-background);border-radius:8px;overflow:hidden;box-shadow:0 2px 4px rgba(0,0,0,.1);transition:transform .2s ease,box-shadow .2s ease;text-decoration:none;color:inherit;border:1px solid var(--gray-200);&:hover{transform:translateY(-3px);box-shadow:0 4px 12px rgba(0,0,0,.15)}.board-thumbnail{width:100%;aspect-ratio:16/9;overflow:hidden;background:var(--gray-100);display:flex;align-items:center;justify-content:center;img{max-width:100%;max-height:100%;object-fit:contain}}.board-content{padding:.75rem 1rem;display:grid;place-items:center;min-height:3rem;h3{margin:0!important;padding:0;font-size:1.1rem;font-weight:600;color:var(--body-font-color);text-align:center;line-height:1.3}.board-meta{margin:.25rem 0 0;font-size:.85rem;color:var(--gray-500);text-align:center}}}.gb-charts{margin:.5rem 0 1.5rem}.gb-chart-tabs{display:flex;flex-wrap:wrap;gap:.35rem;margin:0 0 .75rem}.gb-chart-tab{position:relative}.gb-chart-input{position:absolute;width:1px;height:1px;margin:0;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.gb-chart-tab label{display:inline-block;padding:.4rem .9rem;border-radius:.35rem;color:var(--color-link);font-weight:600;font-size:.95rem;line-height:1.3;cursor:pointer;user-select:none}.gb-chart-tab label:hover{background:rgba(0,93,84,.12)}.gb-chart-tab:has(input:checked) label,.gb-chart-tab:has(input:checked) label:hover{background:#005d54;color:#fff}.gb-chart-tab:has(input:focus-visible) label{outline:2px solid #005d54;outline-offset:2px}.gb-chart-panel{display:none}.gb-charts:not(:has(>.gb-chart-tabs))>.gb-chart-panels>.gb-chart-panel{display:block}.gb-chart-tabs:has(.gb-chart-tab:nth-child(1) input:checked)~.gb-chart-panels>.gb-chart-panel:nth-child(1){display:block}.gb-chart-tabs:has(.gb-chart-tab:nth-child(2) input:checked)~.gb-chart-panels>.gb-chart-panel:nth-child(2){display:block}.gb-chart-tabs:has(.gb-chart-tab:nth-child(3) input:checked)~.gb-chart-panels>.gb-chart-panel:nth-child(3){display:block}.gb-chart-tabs:has(.gb-chart-tab:nth-child(4) input:checked)~.gb-chart-panels>.gb-chart-panel:nth-child(4){display:block}.gb-chart-tabs:has(.gb-chart-tab:nth-child(5) input:checked)~.gb-chart-panels>.gb-chart-panel:nth-child(5){display:block}.gb-chart-tabs:has(.gb-chart-tab:nth-child(6) input:checked)~.gb-chart-panels>.gb-chart-panel:nth-child(6){display:block}.gb-chart-tabs:has(.gb-chart-tab:nth-child(7) input:checked)~.gb-chart-panels>.gb-chart-panel:nth-child(7){display:block}.gb-chart-tabs:has(.gb-chart-tab:nth-child(8) input:checked)~.gb-chart-panels>.gb-chart-panel:nth-child(8){display:block}.gb-chart-tabs:has(.gb-chart-tab:nth-child(9) input:checked)~.gb-chart-panels>.gb-chart-panel:nth-child(9){display:block}.gb-chart-tabs:has(.gb-chart-tab:nth-child(10) input:checked)~.gb-chart-panels>.gb-chart-panel:nth-child(10){display:block}.gb-chart-tabs:has(.gb-chart-tab:nth-child(11) input:checked)~.gb-chart-panels>.gb-chart-panel:nth-child(11){display:block}.gb-chart-tabs:has(.gb-chart-tab:nth-child(12) input:checked)~.gb-chart-panels>.gb-chart-panel:nth-child(12){display:block}.gb-chart-tabs:has(.gb-chart-tab:nth-child(13) input:checked)~.gb-chart-panels>.gb-chart-panel:nth-child(13){display:block}.gb-chart-tabs:has(.gb-chart-tab:nth-child(14) input:checked)~.gb-chart-panels>.gb-chart-panel:nth-child(14){display:block}.gb-chart-tabs:has(.gb-chart-tab:nth-child(15) input:checked)~.gb-chart-panels>.gb-chart-panel:nth-child(15){display:block}.gb-chart-tabs:has(.gb-chart-tab:nth-child(16) input:checked)~.gb-chart-panels>.gb-chart-panel:nth-child(16){display:block}.gb-chart-tabs:has(.gb-chart-tab:nth-child(17) input:checked)~.gb-chart-panels>.gb-chart-panel:nth-child(17){display:block}.gb-chart-tabs:has(.gb-chart-tab:nth-child(18) input:checked)~.gb-chart-panels>.gb-chart-panel:nth-child(18){display:block}.gb-chart-tabs:has(.gb-chart-tab:nth-child(19) input:checked)~.gb-chart-panels>.gb-chart-panel:nth-child(19){display:block}.gb-chart-tabs:has(.gb-chart-tab:nth-child(20) input:checked)~.gb-chart-panels>.gb-chart-panel:nth-child(20){display:block}.gb-chart-card{background:var(--gray-100);border:1px solid var(--gray-200);border-radius:12px;overflow:visible;container-type:inline-size;container-name:gb-chart}.gb-chart-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.markdown .gb-chart-table{display:table!important;width:100%;min-width:0;margin:0;border-collapse:collapse;background:0 0;tr:nth-child(2n){background:0 0}th, td{border:none!important;padding:.6rem .75rem;vertical-align:middle;background:0 0;text-align:start}thead th{font-size:.95rem;font-weight:700;color:var(--body-font-color);border-bottom:1px solid var(--gray-200)!important}tbody td{border-bottom:1px solid var(--gray-200)!important}tbody tr:last-child td{border-bottom:none!important}}.gb-chart-board{font-weight:600;line-height:1.3;text-wrap:balance;a{color:var(--color-link);font-weight:600;text-decoration:none;&:hover{text-decoration:underline}}}.gb-chart-desc{margin-top:.12rem;font-weight:400;font-size:.8rem;line-height:1.3;color:var(--body-font-color);opacity:.62;overflow-wrap:break-word}.markdown .gb-chart-table .gb-chart-rank{width:1%;padding-inline-end:.35rem!important;text-align:end!important;font-variant-numeric:tabular-nums;font-weight:700;color:var(--body-font-color);opacity:.55;white-space:nowrap}.markdown .gb-chart-table .gb-chart-rank-1{color:#b8860b;opacity:1}.markdown .gb-chart-table .gb-chart-rank-2{color:#7d8690;opacity:1}.markdown .gb-chart-table .gb-chart-rank-3{color:#a15c2f;opacity:1}@media(prefers-color-scheme:dark){.markdown .gb-chart-table .gb-chart-rank-1{color:#f0d060}.markdown .gb-chart-table .gb-chart-rank-2{color:#d5dbe3}.markdown .gb-chart-table .gb-chart-rank-3{color:#e0a06a}}.markdown .gb-chart-table .gb-chart-score{width:1%;text-align:end!important;font-variant-numeric:tabular-nums;white-space:nowrap}.gb-chart-score-tip{position:relative;cursor:help;outline:none}.gb-chart-tip{display:none;position:absolute;z-index:3;right:0;bottom:calc(100% + .35rem);padding:.28rem .5rem;border-radius:.3rem;background:#005d54;color:#fff;font-size:.75rem;font-weight:600;line-height:1.3;white-space:nowrap;pointer-events:none}.gb-chart-score-tip:hover .gb-chart-tip,.gb-chart-score-tip:focus .gb-chart-tip,.gb-chart-score-tip:focus-visible .gb-chart-tip{display:block}.markdown .gb-chart-table tfoot td{border-bottom:none!important;border-top:1px solid var(--gray-200)!important}.gb-chart-median .gb-chart-board{font-weight:600}.gb-chart-bar-median{height:10px;margin-top:8px;opacity:.55}.markdown .gb-chart-table .gb-chart-graph{width:42%;min-width:7.5rem}.gb-chart-bar{display:block;height:26px;border-radius:2px;background:linear-gradient(90deg,#005d54 0%,#2dd4bf 100%);min-width:2px}.gb-chart-pair{display:grid;grid-template-columns:3rem 4.75rem minmax(0,1fr);align-items:center;column-gap:.5rem}.gb-chart-pair+.gb-chart-pair{margin-top:.4rem}.gb-chart-pair-label{font-size:.8rem;font-weight:700;line-height:1.2}.gb-chart-pair-value,.gb-chart-pair .gb-chart-score-tip{text-align:end;font-variant-numeric:tabular-nums;white-space:nowrap}.markdown .gb-chart-table-pair .gb-chart-pairs{width:62%}.markdown .gb-chart-table-pair .gb-chart-bar{height:16px}.gb-chart-bar-write{background:linear-gradient(90deg,#1e3a5f 0%,#38bdf8 100%)}.gb-chart-desc a{color:inherit;text-decoration:underline;text-decoration-color:color-mix(in srgb,currentColor 40%,transparent);text-underline-offset:.15em}.gb-chart-desc a:hover{color:var(--color-link)}.bx{--bx-accent:#005d54;--bx-accent-ink:#ffffff;--bx-accent-soft:rgba(0, 93, 84, 0.1);--bx-ink:var(--body-font-color);--bx-muted:color-mix(in srgb, var(--body-font-color) 62%, transparent);--bx-line:var(--gray-200);--bx-surface:var(--gray-100);--bx-ground:var(--body-background);--bx-rail:color-mix(in srgb, var(--body-font-color) 9%, transparent);--bx-tick:color-mix(in srgb, var(--body-font-color) 42%, transparent);--bx-gold:#a8790a;--bx-silver:#6b7480;--bx-bronze:#a15c2f;--bx-up:#006300;--bx-down:#b42318;--bx-c1:#2a78d6;--bx-c2:#eb6834;--bx-c3:#1baf7a;--bx-c4:#eda100;--bx-c5:#e87ba4;--bx-c6:#008300;--bx-c7:#6250d6;--bx-c8:#e34948;margin:.75rem 0 1.75rem;font-variant-numeric:tabular-nums}@media(prefers-color-scheme:dark){.bx{--bx-accent:#2dd4bf;--bx-accent-ink:#042f2e;--bx-accent-soft:rgba(45, 212, 191, 0.14);--bx-gold:#f0d060;--bx-silver:#d5dbe3;--bx-bronze:#e0a06a;--bx-up:#4ade80;--bx-down:#f87171;--bx-c1:#3987e5;--bx-c2:#d95926;--bx-c3:#199e70;--bx-c4:#c98500;--bx-c5:#d55181;--bx-c6:#008300;--bx-c7:#9085e9;--bx-c8:#e66767}}.bx input[type=radio]{position:absolute;width:1px;height:1px;margin:0;opacity:0;pointer-events:none}.bx-tabs{display:flex;flex-wrap:wrap;gap:.375rem;margin:0 0 .875rem}.bx-tabs-single{display:none}.bx-tab,.bx-setup-pill{position:relative;flex:none;cursor:pointer;user-select:none}.bx-tab span{display:block;padding:.4rem .85rem;border:1px solid var(--bx-line);border-radius:999px;font-size:.875rem;font-weight:600;line-height:1.25;white-space:nowrap;color:var(--bx-ink);transition:background-color .12s,border-color .12s,color .12s}.bx-tab:hover span{border-color:var(--bx-accent);background:var(--bx-accent-soft)}.bx-tab:has(input:checked) span{border-color:var(--bx-accent);background:var(--bx-accent);color:var(--bx-accent-ink)}.bx-tab:has(input:focus-visible) span,.bx-setup-pill:has(input:focus-visible) span{outline:2px solid var(--bx-accent);outline-offset:2px}.bx-setups{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem;margin:0 0 .75rem}.bx-setups-label{margin-inline-end:.25rem;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--bx-muted)}.bx-setup-pill span{display:block;max-width:22rem;padding:.25rem .65rem;border:1px solid var(--bx-line);border-radius:.4rem;font-size:.8rem;font-weight:600;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--bx-muted)}.bx-setup-pill:hover span{color:var(--bx-ink);border-color:var(--bx-accent)}.bx-setup-pill:has(input:checked) span{color:var(--bx-accent);border-color:var(--bx-accent);background:var(--bx-accent-soft)}.bx-panel,.bx-setup{display:none}.bx-tabs:has(>.bx-tab:nth-child(1) input:checked)~.bx-panels>.bx-panel:nth-child(1),.bx-tabs:has(>.bx-tab:nth-child(2) input:checked)~.bx-panels>.bx-panel:nth-child(2),.bx-tabs:has(>.bx-tab:nth-child(3) input:checked)~.bx-panels>.bx-panel:nth-child(3),.bx-tabs:has(>.bx-tab:nth-child(4) input:checked)~.bx-panels>.bx-panel:nth-child(4),.bx-tabs:has(>.bx-tab:nth-child(5) input:checked)~.bx-panels>.bx-panel:nth-child(5),.bx-tabs:has(>.bx-tab:nth-child(6) input:checked)~.bx-panels>.bx-panel:nth-child(6),.bx-tabs:has(>.bx-tab:nth-child(7) input:checked)~.bx-panels>.bx-panel:nth-child(7),.bx-tabs:has(>.bx-tab:nth-child(8) input:checked)~.bx-panels>.bx-panel:nth-child(8),.bx-tabs:has(>.bx-tab:nth-child(9) input:checked)~.bx-panels>.bx-panel:nth-child(9),.bx-tabs:has(>.bx-tab:nth-child(10) input:checked)~.bx-panels>.bx-panel:nth-child(10),.bx-tabs:has(>.bx-tab:nth-child(11) input:checked)~.bx-panels>.bx-panel:nth-child(11),.bx-tabs:has(>.bx-tab:nth-child(12) input:checked)~.bx-panels>.bx-panel:nth-child(12),.bx-tabs:has(>.bx-tab:nth-child(13) input:checked)~.bx-panels>.bx-panel:nth-child(13),.bx-tabs:has(>.bx-tab:nth-child(14) input:checked)~.bx-panels>.bx-panel:nth-child(14),.bx-tabs:has(>.bx-tab:nth-child(15) input:checked)~.bx-panels>.bx-panel:nth-child(15),.bx-tabs:has(>.bx-tab:nth-child(16) input:checked)~.bx-panels>.bx-panel:nth-child(16){display:block}.bx-panel>.bx-setup-panels:first-child>.bx-setup,.bx-setups:has(>label:nth-of-type(1) input:checked)~.bx-setup-panels>.bx-setup:nth-child(1),.bx-setups:has(>label:nth-of-type(2) input:checked)~.bx-setup-panels>.bx-setup:nth-child(2),.bx-setups:has(>label:nth-of-type(3) input:checked)~.bx-setup-panels>.bx-setup:nth-child(3),.bx-setups:has(>label:nth-of-type(4) input:checked)~.bx-setup-panels>.bx-setup:nth-child(4),.bx-setups:has(>label:nth-of-type(5) input:checked)~.bx-setup-panels>.bx-setup:nth-child(5),.bx-setups:has(>label:nth-of-type(6) input:checked)~.bx-setup-panels>.bx-setup:nth-child(6),.bx-setups:has(>label:nth-of-type(7) input:checked)~.bx-setup-panels>.bx-setup:nth-child(7),.bx-setups:has(>label:nth-of-type(8) input:checked)~.bx-setup-panels>.bx-setup:nth-child(8),.bx-setups:has(>label:nth-of-type(9) input:checked)~.bx-setup-panels>.bx-setup:nth-child(9),.bx-setups:has(>label:nth-of-type(10) input:checked)~.bx-setup-panels>.bx-setup:nth-child(10),.bx-setups:has(>label:nth-of-type(11) input:checked)~.bx-setup-panels>.bx-setup:nth-child(11),.bx-setups:has(>label:nth-of-type(12) input:checked)~.bx-setup-panels>.bx-setup:nth-child(12){display:block}@supports not selector(:has(*)){.bx-panel,.bx-setup{display:block;margin-bottom:1.5rem}.bx-tabs,.bx-setups{display:none}}.markdown .bx-meta{display:flex;flex-wrap:wrap;gap:.35rem 1.25rem;margin:0 0 .75rem;div{display:flex;align-items:baseline;gap:.4rem;min-width:0}dt{margin:0;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--bx-muted)}dd{margin:0;font-size:.85rem;overflow-wrap:anywhere}}.bx-section{container-type:inline-size;padding:.25rem 1rem .5rem;border:1px solid var(--bx-line);border-radius:12px;background:var(--bx-surface)}.bx-section+.bx-section{margin-top:.75rem}.bx-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:.2rem .75rem;padding:.65rem 0 .55rem;border-bottom:1px solid var(--bx-line)}.bx-title{font-size:1rem;font-weight:700;line-height:1.3}.bx-hint{font-size:.78rem;color:var(--bx-muted)}.markdown .bx-head .bx-ranklink{margin-inline-start:auto;flex:none;font-size:.8rem;font-weight:600;color:var(--color-link);text-decoration:none;white-space:nowrap;&:hover{text-decoration:underline}}.markdown .bx-rows{margin:0;padding:0;list-style:none}.markdown .bx-row{display:grid;grid-template-columns:minmax(0,1fr)auto;grid-template-areas:"name value" "rail rail";align-items:center;gap:.45rem .75rem;margin:0;padding:.7rem 0;border-top:1px solid var(--bx-line)}.markdown .bx-rows .bx-row:first-child{border-top:none}@container(min-width:34rem){.markdown .bx-row {
    grid-template-columns: minmax(10rem, 17rem) minmax(0, 1fr) 6.75rem;
    grid-template-areas: "name rail value";
    column-gap: 1.25rem;
  }
}.bx-name{grid-area:name;min-width:0}.bx-label{display:block;font-weight:600;line-height:1.3;overflow-wrap:break-word}.bx-note{display:block;text-wrap:pretty;margin-top:.12rem;font-size:.76rem;line-height:1.35;color:var(--bx-muted)}.bx-rank{font-weight:700;color:var(--bx-ink)}.bx-rank-1{color:var(--bx-gold)}.bx-rank-2{color:var(--bx-silver)}.bx-rank-3{color:var(--bx-bronze)}.bx-value{grid-area:value;font-size:1rem;font-weight:600;line-height:1.2;text-align:end;white-space:nowrap;small{margin-inline-start:.25em;font-size:.72em;font-weight:500;color:var(--bx-muted)}}.bx-rail{grid-area:rail;position:relative;height:1.125rem;margin-inline-end:.45rem;&::before{content:"";position:absolute;inset:50% 0 auto;height:6px;margin-top:-3px;border-radius:3px;background:var(--bx-rail)}}.bx-fill{position:absolute;top:50%;left:0;height:6px;margin-top:-3px;border-radius:3px;background:var(--bx-accent);min-width:2px}.bx-rail-solo{display:none}.bx-tick{position:absolute;top:2px;bottom:2px;width:2px;margin-left:-1px;border-radius:1px;background:var(--bx-tick);box-shadow:0 0 0 1px var(--bx-surface);cursor:help;&::after{content:"";position:absolute;inset:-3px -4px}&:hover{background:var(--bx-ink);z-index:2}}.bx-dot{position:absolute;top:50%;width:.8rem;height:.8rem;margin:-.4rem 0 0 -.4rem;border-radius:50%;background:var(--bx-accent);box-shadow:0 0 0 2px var(--bx-surface);z-index:1;pointer-events:none}.bx-row-lead{.bx-label{font-size:1.05rem}.bx-value{font-size:1.4rem;font-weight:700}.bx-rail{height:1.375rem}.bx-rail::before, .bx-fill{height:10px;margin-top:-5px;border-radius:5px}.bx-dot{width:1rem;height:1rem;margin:-.5rem 0 0 -.5rem}}.markdown .bx-row-lead+.bx-row:not(.bx-row-lead){position:relative;margin-top:1.4rem;&::before{content:"Tests";position:absolute;top:-1.35rem;left:0;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--bx-muted)}}.bx-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.bx-head+.bx-scroll,.bx-rows+.bx-scroll{margin-top:.25rem}.bx-rows+.bx-scroll{border-top:1px solid var(--bx-line);padding-top:.25rem}.markdown table.bx-table{display:table;width:100%;margin:0;overflow:visible;border-collapse:collapse;font-size:.85rem;font-variant-numeric:tabular-nums;caption{caption-side:bottom;padding:.5rem 0 .35rem;font-size:.75rem;text-align:start;color:var(--bx-muted)}tr, tr:nth-child(2n){background:0 0}tr th, tr td{padding:.5rem .6rem;border:none;border-bottom:1px solid var(--bx-line);text-align:end;white-space:nowrap;vertical-align:middle;background:0 0}tr > :first-child{padding-inline-start:0}tr > :last-child{padding-inline-end:0}thead th{vertical-align:bottom;font-size:.75rem;font-weight:600;white-space:normal;color:var(--bx-muted)}tbody th, thead th:first-child{text-align:start;font-weight:600}tbody tr:last-child > *{border-bottom:none}.bx-best{font-weight:700;color:var(--bx-ink)}.bx-none{color:var(--bx-muted)}}.bx-key{display:inline-flex;flex-wrap:wrap;align-items:baseline;column-gap:.4rem;font-weight:600;line-height:1.3;i{flex:none;align-self:center;width:.65rem;height:.65rem;border-radius:3px;background:var(--c)}small{font-size:.78em;font-weight:400;color:var(--bx-muted);white-space:nowrap}}.bx-c1{--c:var(--bx-c1)}.bx-c2{--c:var(--bx-c2)}.bx-c3{--c:var(--bx-c3)}.bx-c4{--c:var(--bx-c4)}.bx-c5{--c:var(--bx-c5)}.bx-c6{--c:var(--bx-c6)}.bx-c7{--c:var(--bx-c7)}.bx-c8{--c:var(--bx-c8)}.markdown table.bx-ctable{td{min-width:6.5rem}tbody th{white-space:normal;min-width:9rem}}@container(max-width:30rem){.markdown table.bx-ctable {
    td {
      min-width: 4.25rem;
    }

    tbody th {
      min-width: 6.5rem;
    }

    th,
    td {
      padding-inline: 0.4rem;
    }
  }
}.bx-cell{display:block}.bx-minibar{display:block;height:4px;margin-top:.3rem;border-radius:2px;background:var(--bx-rail);span{display:block;height:100%;border-radius:2px;background:var(--bx-tick)}}.bx-best .bx-minibar span{background:var(--bx-accent)}.markdown table.bx-lat-table thead th{white-space:nowrap;.bx-key{justify-content:flex-end}}.markdown .bx-lat{margin:.85rem 0 .25rem}.markdown .bx-legend{display:flex;flex-wrap:wrap;gap:.35rem 1.1rem;margin:0 0 .85rem;font-size:.8rem;.bx-key{cursor:default}}.bx-lat-chart{margin-top:1.4rem;display:grid;grid-template-columns:2.25rem minmax(0,1fr);grid-template-rows:15rem auto auto;column-gap:.5rem}.bx-lat-y{position:relative;grid-column:1;grid-row:1;font-size:.72rem;color:var(--bx-muted);span{position:absolute;right:0;transform:translateY(-50%);line-height:1}.bx-lat-unit{top:-1.35rem;transform:none;font-weight:700}}.bx-lat-plot{grid-column:2;grid-row:1;position:relative;margin-inline-end:.4rem;svg{display:block;width:100%;height:100%;overflow:visible}.bx-grid{stroke:var(--bx-line);stroke-width:1;vector-effect:non-scaling-stroke}.bx-s{transition:opacity .12s;polyline{fill:none;stroke:var(--c);stroke-width:2;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}}.bx-pt{fill:none;stroke:var(--c);stroke-width:6;stroke-linecap:round;vector-effect:non-scaling-stroke}.bx-hit{fill:none;stroke:transparent;stroke-width:16;stroke-linecap:round;vector-effect:non-scaling-stroke;cursor:crosshair}.bx-hit:hover{stroke:color-mix(in srgb,var(--c) 30%,transparent)}}.bx-lat-plot:has(.bx-s:hover) .bx-s:not(:hover),.bx-lat:has(.bx-legend .bx-c1:hover) .bx-s:not(.bx-c1),.bx-lat:has(.bx-legend .bx-c2:hover) .bx-s:not(.bx-c2),.bx-lat:has(.bx-legend .bx-c3:hover) .bx-s:not(.bx-c3),.bx-lat:has(.bx-legend .bx-c4:hover) .bx-s:not(.bx-c4),.bx-lat:has(.bx-legend .bx-c5:hover) .bx-s:not(.bx-c5),.bx-lat:has(.bx-legend .bx-c6:hover) .bx-s:not(.bx-c6),.bx-lat:has(.bx-legend .bx-c7:hover) .bx-s:not(.bx-c7),.bx-lat:has(.bx-legend .bx-c8:hover) .bx-s:not(.bx-c8){opacity:.15}.bx-lat-x{position:relative;grid-column:2;grid-row:2;height:1.4rem;margin-inline-end:.4rem;font-size:.72rem;color:var(--bx-muted);span{position:absolute;top:.45rem;transform:translateX(-50%);white-space:nowrap}}.bx-lat-xtitle{grid-column:2;grid-row:3;padding-top:.2rem;font-size:.72rem;text-align:center;color:var(--bx-muted)}@container(max-width:30rem){.bx-lat-x span:nth-child(even) {
    visibility: hidden;
  }

  .bx-lat-chart {
    grid-template-rows: 12rem auto auto;
  }
}.markdown details.bx-fold{margin:.5rem 0 0;padding:0;border:none;border-top:1px solid var(--bx-line);border-radius:0;summary{margin:0;padding:.65rem 0 .55rem;font-size:.85rem;font-weight:700;line-height:1.3;&::before{width:.7rem;color:var(--bx-muted)}span{margin-inline-start:.4rem;font-weight:400;font-size:.78rem;color:var(--bx-muted)}}}.bx-rows+.bx-fold,.bx-scroll+.bx-fold{margin-top:0}.markdown table.bx-htable{tr > *{vertical-align:top}tbody th{font-weight:600}.bx-software{min-width:11rem;max-width:18rem;white-space:normal;text-align:start;font-size:.78rem;color:var(--bx-muted)}thead th:nth-child(-n + 2){text-align:start}}.bx-spark{display:block;margin:.3rem 0 0 auto;overflow:visible;polyline{fill:none;stroke:var(--bx-accent);stroke-width:1.5;stroke-linejoin:round;stroke-linecap:round;opacity:.7}circle{fill:var(--bx-accent)}}.bx-delta{display:block;width:fit-content;margin:.2rem 0 0 auto;font-size:.72rem;font-weight:600;white-space:nowrap}.bx-up{color:var(--bx-up)}.bx-down{color:var(--bx-down)}.bx-big{padding:.05rem .35rem;border-radius:.3rem;background:color-mix(in srgb,currentColor 13%,transparent)}.bx-empty{color:var(--bx-muted,inherit)}.bx-runs{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem;margin:0 0 .75rem}.bx-run-pill{position:relative;flex:none;cursor:pointer;user-select:none;span{display:flex;align-items:baseline;gap:.35rem;padding:.2rem .6rem;border:1px solid var(--bx-line);border-radius:999px;font-size:.78rem;font-weight:600;line-height:1.3;white-space:nowrap;color:var(--bx-muted)}em{font-style:normal;font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;opacity:.8}&:hover span{color:var(--bx-ink);border-color:var(--bx-accent)}&:has(input:checked) span{color:var(--bx-accent);border-color:var(--bx-accent);background:var(--bx-accent-soft)}&:has(input:focus-visible) span{outline:2px solid var(--bx-accent);outline-offset:2px}}.bx-run{display:none}.bx-run-panels-single>.bx-run,.bx-runs:has(>label:nth-of-type(1) input:checked)~.bx-run-panels>.bx-run:nth-child(1),.bx-runs:has(>label:nth-of-type(2) input:checked)~.bx-run-panels>.bx-run:nth-child(2),.bx-runs:has(>label:nth-of-type(3) input:checked)~.bx-run-panels>.bx-run:nth-child(3),.bx-runs:has(>label:nth-of-type(4) input:checked)~.bx-run-panels>.bx-run:nth-child(4),.bx-runs:has(>label:nth-of-type(5) input:checked)~.bx-run-panels>.bx-run:nth-child(5),.bx-runs:has(>label:nth-of-type(6) input:checked)~.bx-run-panels>.bx-run:nth-child(6),.bx-runs:has(>label:nth-of-type(7) input:checked)~.bx-run-panels>.bx-run:nth-child(7),.bx-runs:has(>label:nth-of-type(8) input:checked)~.bx-run-panels>.bx-run:nth-child(8),.bx-runs:has(>label:nth-of-type(9) input:checked)~.bx-run-panels>.bx-run:nth-child(9),.bx-runs:has(>label:nth-of-type(10) input:checked)~.bx-run-panels>.bx-run:nth-child(10),.bx-runs:has(>label:nth-of-type(11) input:checked)~.bx-run-panels>.bx-run:nth-child(11),.bx-runs:has(>label:nth-of-type(12) input:checked)~.bx-run-panels>.bx-run:nth-child(12),.bx-runs:has(>label:nth-of-type(13) input:checked)~.bx-run-panels>.bx-run:nth-child(13),.bx-runs:has(>label:nth-of-type(14) input:checked)~.bx-run-panels>.bx-run:nth-child(14),.bx-runs:has(>label:nth-of-type(15) input:checked)~.bx-run-panels>.bx-run:nth-child(15),.bx-runs:has(>label:nth-of-type(16) input:checked)~.bx-run-panels>.bx-run:nth-child(16){display:block}.bx-setup:not(:has(>.bx-runs)) .bx-htable tbody tr:first-child,.bx-runs:has(>label:nth-of-type(1) input:checked)~.bx-history tbody tr:nth-child(1),.bx-runs:has(>label:nth-of-type(2) input:checked)~.bx-history tbody tr:nth-child(2),.bx-runs:has(>label:nth-of-type(3) input:checked)~.bx-history tbody tr:nth-child(3),.bx-runs:has(>label:nth-of-type(4) input:checked)~.bx-history tbody tr:nth-child(4),.bx-runs:has(>label:nth-of-type(5) input:checked)~.bx-history tbody tr:nth-child(5),.bx-runs:has(>label:nth-of-type(6) input:checked)~.bx-history tbody tr:nth-child(6),.bx-runs:has(>label:nth-of-type(7) input:checked)~.bx-history tbody tr:nth-child(7),.bx-runs:has(>label:nth-of-type(8) input:checked)~.bx-history tbody tr:nth-child(8),.bx-runs:has(>label:nth-of-type(9) input:checked)~.bx-history tbody tr:nth-child(9),.bx-runs:has(>label:nth-of-type(10) input:checked)~.bx-history tbody tr:nth-child(10),.bx-runs:has(>label:nth-of-type(11) input:checked)~.bx-history tbody tr:nth-child(11),.bx-runs:has(>label:nth-of-type(12) input:checked)~.bx-history tbody tr:nth-child(12),.bx-runs:has(>label:nth-of-type(13) input:checked)~.bx-history tbody tr:nth-child(13),.bx-runs:has(>label:nth-of-type(14) input:checked)~.bx-history tbody tr:nth-child(14),.bx-runs:has(>label:nth-of-type(15) input:checked)~.bx-history tbody tr:nth-child(15),.bx-runs:has(>label:nth-of-type(16) input:checked)~.bx-history tbody tr:nth-child(16){background:var(--bx-accent-soft);> *{font-weight:600}> :first-child{box-shadow:inset 3px 0 0 var(--bx-accent)}}@supports not selector(:has(*)){.bx-run{display:block}.bx-runs{display:none}}.markdown .bx-hist-pick{cursor:pointer;color:var(--color-link);text-decoration:underline;text-decoration-color:color-mix(in srgb,currentColor 35%,transparent);text-underline-offset:.2em;&:hover{text-decoration-color:initial}}.markdown details.bx-history{margin:.75rem 0 0;padding:0 1rem .5rem;border:1px solid var(--bx-line);border-radius:12px;summary{margin:0;padding:.75rem 0 .65rem;font-size:.95rem;font-weight:700;line-height:1.3;&::before{width:.7rem;color:var(--bx-muted)}span{margin-inline-start:.4rem;font-weight:400;font-size:.78rem;color:var(--bx-muted)}}&[open] summary{border-bottom:1px solid var(--bx-line)}}.markdown details.bx-history table.bx-htable tr>:first-child{padding-inline-start:.5rem}.bx{--bx-vendor:var(--bx-c1);--bx-mesa:var(--bx-c2)}.bx-chart-sr{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.bx-mesa{--c:var(--bx-mesa)}.bx-vendor{--c:var(--bx-vendor)}.bx-vs-icon::before{content:"⇄";margin-inline-end:.3rem;font-style:normal}.bx-setup-pill-vs span{border-style:dashed}.bx-vs{display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:.5rem;margin:0 0 .75rem}.bx-vs-side{display:flex;flex-direction:column;gap:.1rem;min-width:0;padding:.55rem .75rem;border:1px solid var(--bx-line);border-inline-start:4px solid var(--c);border-radius:8px;background:var(--bx-surface)}.bx-vs-role{display:inline-flex;align-items:center;gap:.4rem;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--bx-muted);i{width:.65rem;height:.65rem;border-radius:3px;background:var(--c)}}.bx-vs-name{font-weight:600;overflow-wrap:anywhere;small{margin-inline-start:.4rem;font-size:.8em;font-weight:500;color:var(--bx-muted)}}.bx-vs-meta{font-size:.78rem;color:var(--bx-muted);overflow-wrap:anywhere}.bx-vs-mini{display:flex;flex-wrap:wrap;gap:.3rem 1.25rem;margin:.15rem 0 .25rem;.bx-vs-role{text-transform:none;letter-spacing:0;font-size:.78rem;font-weight:600}}.markdown .bx-caveat{margin:0 0 .75rem;padding:.45rem .75rem;border-inline-start:3px solid var(--bx-gold);border-radius:4px;background:color-mix(in srgb,var(--bx-gold) 9%,transparent);font-size:.82rem}.bx-geo{margin-inline-start:auto;font-size:.78rem;color:var(--bx-muted);text-align:end;b{font-size:1.05rem;color:var(--bx-ink)}small{display:block;font-size:.7rem}}.markdown .bx-crow{display:grid;grid-template-columns:minmax(0,1fr)auto;grid-template-areas:"name ratio" "pair pair";align-items:center;gap:.4rem .75rem;margin:0;padding:.65rem 0;border-top:1px solid var(--bx-line)}.markdown .bx-crows .bx-crow:first-child{border-top:none}@container(min-width:34rem){.markdown .bx-crow {
    grid-template-columns: minmax(10rem, 17rem) minmax(0, 1fr) 4.75rem;
    grid-template-areas: "name pair ratio";
    column-gap: 1.25rem;
  }
}.bx-pair{grid-area:pair;display:grid;gap:.25rem;min-width:0}.bx-pbar{display:grid;grid-template-columns:minmax(0,1fr)5.25rem;align-items:center;gap:.6rem}.bx-pbar-track{display:block;height:8px;border-radius:4px;background:var(--bx-rail);span{display:block;height:100%;min-width:2px;border-radius:4px;background:var(--c)}}.bx-pbar-v{font-size:.85rem;font-weight:600;text-align:end;white-space:nowrap}.bx-ratio{grid-area:ratio;text-align:end;line-height:1.15;cursor:help;b{display:block;font-size:1rem}small{font-size:.7rem;color:var(--bx-muted)}}.bx-row-lead.bx-crow{.bx-ratio b{font-size:1.3rem}.bx-pbar-track{height:10px;border-radius:5px}}.bx-row-failed .bx-value,.bx-pbar-v.bx-failed{font-weight:600;font-style:italic;color:var(--bx-down)}.bx-row-failed .bx-label{color:var(--bx-muted)}.bx-mesa-failed .bx-mesa .bx-pbar-track span,.bx-vendor-failed .bx-vendor .bx-pbar-track span{display:none}.bx-mesa-failed .bx-ratio b,.bx-vendor-failed .bx-ratio b{color:var(--bx-muted)}.bx-sub{margin-top:.25rem;padding-top:.65rem;border-top:1px solid var(--bx-line)}.bx-sub-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:.2rem .75rem}.bx-sub-title{font-size:.9rem;font-weight:700}@media(max-width:40rem){.bx-tabs{flex-wrap:nowrap;overflow-x:auto;margin-inline:calc(-1 * var(--space-16,1rem));padding:.125rem var(--space-16,1rem);scrollbar-width:none;scroll-padding-inline:var(--space-16,1rem);mask-image:linear-gradient(to right,transparent 0,#000 var(--space-16,1rem),#000 calc(100% - 2rem),transparent);&::-webkit-scrollbar{display:none}}.bx-section{padding-inline:.85rem}.bx-setup-pill span{max-width:15rem}}@container gb-chart (max-width:36rem){.markdown .gb-chart-table {
    display: block !important;
  }

  .markdown .gb-chart-table thead,
  .markdown .gb-chart-table tbody,
  .markdown .gb-chart-table tfoot {
    display: block;
  }

  .markdown .gb-chart-table tr {
    display: grid;
    grid-template-columns: 1.35rem minmax(0, 1fr) auto;
    column-gap: 0.5rem;
    align-items: start;
    padding: 0.65rem 0.75rem 0.75rem;
    border-bottom: 1px solid var(--gray-200);
  }

  .markdown .gb-chart-table thead tr {
    align-items: end;
    padding-top: 0.7rem;
    padding-bottom: 0.55rem;
  }

  .markdown .gb-chart-table tbody tr:last-child,
  .markdown .gb-chart-table tfoot tr {
    border-bottom: none;
  }

  .markdown .gb-chart-table tfoot tr {
    border-top: 1px solid var(--gray-200);
  }

  .markdown .gb-chart-table thead th,
  .markdown .gb-chart-table tbody td,
  .markdown .gb-chart-table tfoot td {
    display: block;
    width: auto !important;
    min-width: 0 !important;
    padding: 0 !important;
    border: none !important;
  }

  .markdown .gb-chart-table .gb-chart-rank {
    grid-column: 1;
    grid-row: 1;
    padding-inline-end: 0 !important;
  }

  .markdown .gb-chart-table .gb-chart-name {
    grid-column: 2;
    grid-row: 1;
  }

  .markdown .gb-chart-table .gb-chart-score {
    grid-column: 3;
    grid-row: 1;
  }

  .markdown .gb-chart-table tbody .gb-chart-rank,
  .markdown .gb-chart-table tfoot .gb-chart-rank,
  .markdown .gb-chart-table tbody .gb-chart-score,
  .markdown .gb-chart-table tfoot .gb-chart-score {
    padding-top: 0.08rem;
  }

  .markdown .gb-chart-table .gb-chart-graph {
    grid-column: 1 / -1;
    grid-row: 2;
    width: auto !important;
    min-width: 0 !important;
    margin-top: 0.45rem;
  }

  .markdown .gb-chart-table thead .gb-chart-graph {
    display: none;
  }

  .gb-chart-bar-median {
    margin-top: 0;
  }

  .markdown .gb-chart-table.gb-chart-table-pair tr {
    grid-template-columns: 1.35rem minmax(0, 1fr);
  }

  .markdown .gb-chart-table.gb-chart-table-pair .gb-chart-pairs {
    grid-column: 1 / -1;
    grid-row: 2;
    width: auto !important;
    margin-top: 0.45rem;
  }

  .markdown .gb-chart-table.gb-chart-table-pair thead .gb-chart-pairs {
    display: none;
  }

  .markdown .gb-chart-table.gb-chart-table-pair tfoot .gb-chart-pairs {
    margin-top: 0.45rem;
  }
}.markdown .book-columns.home-features{container-type:inline-size}.markdown .book-columns.home-features>ul{display:grid;grid-template-columns:1fr}.markdown .book-columns.home-features>ul>li{min-width:0}@container(min-width:40rem){.markdown .book-columns.home-features > ul {
    grid-template-columns: 1fr 1fr;
  }
}@container(min-width:60rem){.markdown .book-columns.home-features > ul {
    grid-template-columns: repeat(4, 1fr);
  }
}.sbc-compare-pickers{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-bottom:.5rem}.sbc-compare-chips{display:contents}.sbc-compare-chip{display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .3rem .2rem .6rem;border:1px solid var(--gray-200);border-radius:999px;background:var(--gray-100);font-size:.9rem}.sbc-compare-chip button{border:0;background:0 0;color:inherit;font-size:1.1rem;line-height:1;padding:0 .3rem;cursor:pointer;border-radius:999px}.sbc-compare-chip button:hover{background:var(--gray-200)}.sbc-compare-pickers input{flex:1 1 18rem;padding:.4rem;border:1px solid var(--gray-200);border-radius:4px;background:var(--body-background);color:var(--body-font-color);font:inherit}.sbc-compare-options{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;align-items:center;margin-bottom:1rem;font-size:.9rem}.sbc-compare-diff{display:inline-flex;gap:.4rem;align-items:center}.sbc-compare-note{color:var(--gray-500)}.sbc-compare-wrap{overflow-x:auto}.markdown .sbc-compare-table{table-layout:fixed;min-width:36rem}.markdown .sbc-compare-table th,.markdown .sbc-compare-table td{vertical-align:top;text-align:start}.markdown .sbc-compare-table thead th:first-child,.markdown .sbc-compare-table tbody th[scope=row]{width:9rem}.markdown .sbc-compare-table small{display:block;font-weight:400;font-size:.75rem;color:var(--gray-500)}.markdown .sbc-compare-table .sbc-compare-group th{background:var(--gray-100);font-size:.85rem;text-transform:uppercase;letter-spacing:.04em}.markdown .sbc-compare-table .sbc-compare-group small{display:inline;margin-inline-start:.5rem;text-transform:none;letter-spacing:0}.markdown .sbc-compare-score span{font-variant-numeric:tabular-nums}.markdown .sbc-compare-score.is-best span,.markdown .sbc-compare-num.is-best{font-weight:700}.markdown .sbc-compare-num{font-variant-numeric:tabular-nums}.sbc-compare-link{margin-top:.5rem;font-size:.9rem}.markdown .sbc-compare-score .gb-chart-bar{height:8px;margin-top:.3rem}.sbc-compare-suggest{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;margin-bottom:1rem;font-size:.85rem}.sbc-compare-suggest[hidden]{display:none}.sbc-compare-suggest strong{margin-inline-end:.2rem;color:var(--gray-500);font-weight:600}.sbc-compare-suggest .sbc-compare-sugg{display:inline-flex;flex:initial;align-items:flex-start;text-align:start;flex-direction:column;padding:.25rem .6rem;border:1px dashed var(--gray-200);border-radius:6px;color:inherit;text-decoration:none;line-height:1.3}.sbc-compare-suggest .sbc-compare-sugg:hover{border-style:solid;background:var(--gray-100)}.sbc-compare-suggest .sbc-compare-sugg.is-set{display:inline-block}.sbc-compare-sugg span{color:var(--gray-500)}.sbc-compare-sugg small{color:var(--gray-500);font-size:.75rem}.markdown details{max-width:100%}.markdown details>.markdown-inner{overflow-x:auto;-webkit-overflow-scrolling:touch}@media screen and (max-width:56rem){.markdown details .soc-specs--compare th,.markdown details .soc-specs--compare td{min-width:13rem}.markdown details .soc-specs--compare th:first-child,.markdown details .soc-specs--compare td:first-child{min-width:0;white-space:nowrap}}@media screen and (max-width:56rem){.markdown table:not([class]){display:block!important;width:auto;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}}@media screen and (max-width:56rem){:root{--font-size:81.25%}}