/*!
This is Asciidoctor's default stylesheet with some modifications and additions.

* * *

MIT License

Copyright (C) 2012-present Dan Allen, Sarah White, Ryan Waldron, and the
individual contributors to Asciidoctor.

Copyright (C) 2024 Lasse Collin

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
*/
*,:after,:before{box-sizing:border-box}
html{font-size:100%;-webkit-text-size-adjust:100%}
body{background:#fff;color:var(--color-main-text);font-family:sans-serif;font-size:inherit;line-height:1;position:relative;cursor:auto;-moz-tab-size:4;-o-tab-size:4;tab-size:4;word-wrap:anywhere;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}
body,blockquote,dd,dl,dt,h1,h2,h3,h4,h5,h6,li,ol,p,pre,td,th,ul{padding:0;margin:0}
a{background:none;color:#2156a5;text-decoration:underline;line-height:inherit}
a:active,a:hover{cursor:pointer;outline:0}
a:focus{outline:thin dotted}
a:focus,a:hover{color:#1d4b8f}
abbr{font-size:.9em}
abbr[title]{cursor:help;border-bottom:1px dotted #dddddf;text-decoration:none}
b,strong{font-weight:bold;line-height:inherit}
strong strong{font-weight:400}
code,kbd,pre{font-family:monospace,monospace;font-size:1em}
code{font-weight:400}
code,pre{color:var(--color-monospace-text)}
pre{line-height:1.45;text-rendering:optimizeSpeed;white-space:pre-wrap}
dfn,em,i{font-style:italic}
em,i{line-height:inherit}
em em{font-style:normal}
hr{border:solid #dddddf;border-width:1px 0 0;clear:both;height:0;margin:1.25em 0 1.1875em}
mark{background:#ff0;color:#000}
p{line-height:1.6;margin-bottom:1.25rem;text-rendering:optimizeLegibility}
q{quotes:"\201C" "\201D" "\2018" "\2019"}
sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}
sup{top:-.5em}
sub{bottom:-.25em}
img,object[type^="image/"],svg{display:inline-block;height:auto;max-width:100%;vertical-align:middle}
img{border:0;-ms-interpolation-mode:bicubic}
object{max-width:100%}
svg:not(:root){overflow:hidden}
figure{margin:0}
audio,video{display:inline-block}
audio:not([controls]){display:none;height:0}
.left{float:left!important}
.right{float:right!important}
.text-left,div.text-left>*{text-align:left!important}
.text-right,div.text-right>*{text-align:right!important}
.text-center,div.text-center>*{text-align:center!important}
.text-justify,div.text-justify>*{text-align:justify!important}
.hide{display:none}
.admonitionblock td.content>.title,.audioblock>.title,.dlist>.title,.exampleblock>.title,.hdlist>.title,.imageblock>.title,.listingblock>.title,.literalblock>.title,.olist>.title,.openblock>.title,.paragraph>.title,.qlist>.title,.quoteblock>.title,.stemblock>.title,.subheader,.ulist>.title,.verseblock>.title,.videoblock>.title,table.tableblock>.title{line-height:1.45;color:var(--color-title);font-weight:400;margin-top:0;margin-bottom:.25em}
p aside{font-size:.875em;line-height:1.35;font-style:italic}
#toctitle,.sidebarblock>.content>.title,h1,h2,h3,h4,h5,h6{font-family:sans-serif;font-weight:400;font-style:normal;color:var(--color-heading);text-rendering:optimizeLegibility;margin-top:1em;margin-bottom:.5em;line-height:1.2;word-spacing:-.05em}
h1{font-size:2.125em}
h2{font-size:1.6875em}
#toctitle,.sidebarblock>.content>.title,h3{font-size:1.375em}
h4,h5{font-size:1.125em}
h6{font-size:1em}
dl,ol,ul{line-height:1.6;margin-bottom:1.25em;list-style-position:outside;font-family:inherit}
ol,ul{margin-left:1.5em}
ul li ol,ul li ul{margin-left:1.25em;margin-bottom:0}
ul.circle{list-style-type:circle}
ul.disc{list-style-type:disc}
ul.square{list-style-type:square}
ul.circle ul:not([class]),ul.disc ul:not([class]),ul.square ul:not([class]){list-style:inherit}
ol li ol,ol li ul{margin-left:1.25em;margin-bottom:0}
dl dt{margin-bottom:.3125em;font-weight:bold}
dl dd{margin-bottom:1.25em;margin-left:1.125em}
blockquote{margin:0 0 1.25em;padding:.5625em 1.25em 0 1.1875em;border-left:1px solid #ddd}
blockquote,blockquote p{line-height:1.6;color:var(--color-dark-text)}
table{background:#fff;border:1px solid #dedede;border-collapse:collapse;border-spacing:0;margin-bottom:1.25em;word-wrap:normal}
table tfoot,table thead{background:#f7f8f7}
table tfoot tr td,table tfoot tr th,table thead tr td,table thead tr th{padding:.5em .625em .625em;font-size:inherit;color:var(--color-main-text);text-align:left}
table tr td,table tr th{padding:.5625em .625em;font-size:inherit;color:var(--color-main-text)}
table tr.alt,table tr.even{background:#f8f8f7}
table tbody tr td,table tfoot tr td,table tfoot tr th,table thead tr th,table tr td{line-height:1.6}
#toctitle strong,.sidebarblock>.content>.title strong,h1 strong,h2 strong,h3 strong,h4 strong,h5 strong,h6 strong{font-weight:400}
.center{margin-left:auto;margin-right:auto}
.stretch{width:100%}
.clearfix:after,.clearfix:before,.float-group:after,.float-group:before{content:"";display:table}
.clearfix:after,.float-group:after{clear:both}
:not(pre).nobreak{word-wrap:normal}
:not(pre).nowrap{white-space:nowrap}
:not(pre).pre-wrap{white-space:pre-wrap}
:not(pre):not([class^=L])>code{font-size:.9375em;font-style:normal!important;padding:.1em .5ex;word-spacing:-.15em;background:#f7f7f8;border-radius:4px;line-height:1.45;text-rendering:optimizeSpeed}
pre code,pre pre{color:inherit;font-size:inherit;line-height:inherit}
pre>code{display:block}
pre.nowrap,pre.nowrap pre{white-space:pre;word-wrap:normal}
.keyseq{color:var(--color-light-text)}
kbd{display:inline-block;color:var(--color-main-text);font-size:.65em;line-height:1.45;background:#f7f7f7;border:1px solid #ccc;border-radius:3px;box-shadow:0 1px 0 rgba(0,0,0,.2),inset 0 0 0 .1em #fff;margin:0 .15em;padding:.2em .5em;vertical-align:middle;position:relative;top:-.1em;white-space:nowrap}
.keyseq kbd:first-child{margin-left:0}
.keyseq kbd:last-child{margin-right:0}
.menuref,.menuseq{color:#000}
.menuref,.menuseq b:not(.caret){font-weight:inherit}
.menuseq{word-spacing:-.02em}
.menuseq b.caret{font-size:1.25em;line-height:.8}
.menuseq i.caret{font-weight:bold;text-align:center;width:.45em}
b.button:after,b.button:before{position:relative;top:-1px;font-weight:400}
b.button:before{content:"[";padding:0 3px 0 2px}
b.button:after{content:"]";padding:0 2px 0 3px}
p a>code:hover{color:var(--color-monospace-text)}
main>div[id]{margin:0 auto;max-width:62.5em;position:relative;padding-left:.9375em;padding-right:.9375em;width:100%}
#content #footnotes:before,main>div[id]:after,main>div[id]:before{content:"";display:table;clear:both}
#content{margin-top:1.25em;margin-bottom:.625em}
#content:before{content:none}
#header>h1:first-child{color:var(--color-h1);margin-top:2.25rem;margin-bottom:0}
#header>h1:first-child+#toc{margin-top:8px;border-top:1px solid #dddddf}
#header>h1:only-child{border-bottom:1px solid #dddddf;padding-bottom:8px}
#header .details{border-bottom:1px solid #dddddf;line-height:1.45;padding-top:.25em;padding-bottom:.25em;padding-left:.25em;color:var(--color-light-text);display:flex;flex-flow:row wrap}
#header .details span:first-child{margin-left:-.125em}
#header .details span.email a{color:var(--color-light-text)}
#header .details br{display:none}
#header .details br+span:before{content:"\00a0\2013\00a0"}
#header .details br+span.author:before{content:"\00a0\22c5\00a0";color:var(--color-light-text)}
#header .details br+span#revremark:before{content:"\00a0|\00a0"}
#header #revnumber{text-transform:capitalize}
#header #revnumber:after{content:"\00a0"}
#content>h1:first-child:not([class]){color:var(--color-h1);border-bottom:1px solid #dddddf;padding-bottom:8px;margin-top:0;padding-top:1rem;margin-bottom:1.25rem}
#toc{border-bottom:1px solid #e7e7e9;padding-bottom:.5em}
#toc>ul{margin-left:.125em}
#toc ul.sectlevel0>li>a{font-style:italic}
#toc ul.sectlevel0 ul.sectlevel1{margin:.5em 0}
#toc ul{font-family:sans-serif;list-style-type:none}
#toc li{line-height:1.3334;margin-top:.3334em}
#toc a{text-decoration:none}
#toc a:active{text-decoration:underline}
#toctitle{color:var(--color-title);font-size:1.2em}
@media screen and (min-width:67em){#toctitle{font-size:1.375em}
body.toc2{padding-left:15em;padding-right:0}
body.toc2 #header>h1:nth-last-child(2){border-bottom:1px solid #dddddf;padding-bottom:8px}
#toc.toc2{margin-top:0!important;background:#f8f8f7;position:fixed;width:15em;left:0;top:0;border-right:1px solid #e7e7e9;border-top-width:0!important;border-bottom-width:0!important;z-index:1000;padding:1.25em 1em;height:100%;overflow:auto}
#toc.toc2 #toctitle{margin-top:0;margin-bottom:.8rem;font-size:1.2em}
#toc.toc2>ul{font-size:.9em;margin-bottom:0}
#toc.toc2 ul ul{margin-left:0;padding-left:1em}
#toc.toc2 ul.sectlevel0 ul.sectlevel1{padding-left:0;margin-top:.5em;margin-bottom:.5em}
body.toc2.toc-right{padding-left:0;padding-right:15em}
body.toc2.toc-right #toc.toc2{border-right-width:0;border-left:1px solid #e7e7e9;left:auto;right:0}}
@media screen and (min-width:83em){#toc.toc2{width:20em}
#toc.toc2 #toctitle{font-size:1.375em}
#toc.toc2>ul{font-size:.95em}
#toc.toc2 ul ul{padding-left:1.25em}}
#content #toc{border:1px solid #e0e0dc;margin-bottom:1.25em;background:#f8f8f7;border-radius:4px}
#content #toc,#footer{padding:1.25em}
#footer-text{color:var(--color-light-text);padding-top:.5em;border-top:1px solid #dddddf;line-height:1.44}
.sect1{padding-bottom:.625em}
.sect1:last-child{padding-bottom:0}
.sect1+.sect1{border-top:1px solid #e7e7e9}
#content h1>a.anchor,#toctitle>a.anchor,.sidebarblock>.content>.title>a.anchor,h2>a.anchor,h3>a.anchor,h4>a.anchor,h5>a.anchor,h6>a.anchor{position:absolute;z-index:1001;width:1.5ex;margin-left:-1.5ex;display:block;text-decoration:none!important;visibility:hidden;text-align:center;font-weight:400}
#content h1>a.anchor:before,#toctitle>a.anchor:before,.sidebarblock>.content>.title>a.anchor:before,h2>a.anchor:before,h3>a.anchor:before,h4>a.anchor:before,h5>a.anchor:before,h6>a.anchor:before{content:"\00A7";font-size:.85em;display:block;padding-top:.1em}
#content h1:hover>a.anchor,#content h1>a.anchor:hover,#toctitle:hover>a.anchor,#toctitle>a.anchor:hover,.sidebarblock>.content>.title:hover>a.anchor,.sidebarblock>.content>.title>a.anchor:hover,h2:hover>a.anchor,h2>a.anchor:hover,h3:hover>a.anchor,h3>a.anchor:hover,h4:hover>a.anchor,h4>a.anchor:hover,h5:hover>a.anchor,h5>a.anchor:hover,h6:hover>a.anchor,h6>a.anchor:hover{visibility:visible}
#content h1>a.link,#toctitle>a.link,.sidebarblock>.content>.title>a.link,h2>a.link,h3>a.link,h4>a.link,h5>a.link,h6>a.link{color:var(--color-heading);text-decoration:none}
#content h1>a.link:hover,#toctitle>a.link:hover,.sidebarblock>.content>.title>a.link:hover,h2>a.link:hover,h3>a.link:hover,h4>a.link:hover,h5>a.link:hover,h6>a.link:hover{color:var(--color-heading)}
.audioblock,.imageblock,.listingblock,.literalblock,.stemblock,.videoblock,details{margin-bottom:1.25em}
details{margin-left:1.25rem}
details>summary{cursor:pointer;display:block;position:relative;line-height:1.6;margin-bottom:.625rem;outline:none;-webkit-tap-highlight-color:transparent}
details>summary::-webkit-details-marker{display:none}
details>summary:before{content:"";border:solid transparent;border-left:solid;border-width:.3em 0 .3em .5em;position:absolute;top:.5em;left:-1.25rem;transform:translateX(15%)}
details[open]>summary:before{border:solid transparent;border-top:solid;border-width:.5em .3em 0;transform:translateY(15%)}
details>summary:after{content:"";width:1.25rem;height:1em;position:absolute;top:.3em;left:-1.25rem}
.admonitionblock td.content>.title,.audioblock>.title,.dlist>.title,.exampleblock>.title,.hdlist>.title,.imageblock>.title,.listingblock>.title,.literalblock>.title,.olist>.title,.openblock>.title,.paragraph>.title,.qlist>.title,.quoteblock>.title,.stemblock>.title,.ulist>.title,.verseblock>.title,.videoblock>.title,table.tableblock>.title{text-rendering:optimizeLegibility;text-align:left;font-family:sans-serif;font-size:1rem;font-style:italic}
table.tableblock.fit-content>caption.title{white-space:nowrap;width:0}
#preamble>.sectionbody>[class=paragraph]:first-of-type p,.paragraph.lead>p{font-size:1.21875em;line-height:1.6;color:var(--color-dark-text)}
.admonitionblock>table{border-collapse:separate;border:0;background:none;width:100%}
.admonitionblock>table td.icon{text-align:center;width:80px}
.admonitionblock>table td.icon img{max-width:none}
.admonitionblock>table td.icon .title{font-weight:bold;font-family:sans-serif;text-transform:uppercase}
.admonitionblock>table td.content{padding-left:1.125em;padding-right:1.25em;border-left:1px solid #dddddf;color:var(--color-light-text);word-wrap:anywhere}
.admonitionblock>table td.content>:last-child>:last-child{margin-bottom:0}
.exampleblock>.content{border:1px solid #e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#fffef7;border-radius:4px;box-shadow:0 1px 4px #e0e0dc}
.sidebarblock{border:1px solid #dbdbd6;margin-bottom:1.25em;padding:1.25em;background:#f3f3f2;border-radius:4px}
.sidebarblock>.content>.title{color:var(--color-title);margin-top:0;text-align:center}
#content #toc>:first-child,.exampleblock>.content>:first-child,.sidebarblock>.content>:first-child{margin-top:0}
#content #toc>:last-child,.exampleblock>.content .olist>ol>li:last-child>:last-child,.exampleblock>.content .qlist>ol>li:last-child>:last-child,.exampleblock>.content .ulist>ul>li:last-child>:last-child,.exampleblock>.content>:last-child,.exampleblock>.content>:last-child>:last-child,.sidebarblock>.content .olist>ol>li:last-child>:last-child,.sidebarblock>.content .qlist>ol>li:last-child>:last-child,.sidebarblock>.content .ulist>ul>li:last-child>:last-child,.sidebarblock>.content>:last-child,.sidebarblock>.content>:last-child>:last-child{margin-bottom:0}
.listingblock>.content>pre,.literalblock pre{border-radius:4px;overflow-x:auto;padding:1em;font-size:.8125em}
.listingblock>.content>pre:not(.highlight),.listingblock>.content>pre[class=highlight],.listingblock>.content>pre[class^="highlight "],.literalblock pre{background:#f7f7f8}
.literalblock.output pre{color:#f7f7f8;background:rgba(0,0,0,.9)}
.listingblock>.content{position:relative}
.listingblock code[data-lang]:before{display:none;content:attr(data-lang);position:absolute;font-size:.75em;top:.425rem;right:.5rem;line-height:1;text-transform:uppercase;color:inherit;opacity:.5}
.listingblock:hover code[data-lang]:before{display:block}
.listingblock.terminal pre .command:before{content:attr(data-prompt);padding-right:.5em;color:inherit;opacity:.5}
.listingblock.terminal pre .command:not([data-prompt]):before{content:"$"}
.listingblock pre.highlightjs{padding:0}
.listingblock pre.highlightjs>code{padding:1em;border-radius:4px}
.listingblock pre.prettyprint{border-width:0}
.prettyprint{background:#f7f7f8}
pre.prettyprint .linenums{line-height:1.45;margin-left:2em}
pre.prettyprint li{background:none;list-style-type:inherit;padding-left:0}
pre.prettyprint li code[data-lang]:before{opacity:1}
pre.prettyprint li:not(:first-child) code[data-lang]:before{display:none}
table.linenotable{border-collapse:separate;border:0;margin-bottom:0;background:none}
table.linenotable td[class]{color:inherit;vertical-align:top;padding:0;line-height:inherit;white-space:normal}
table.linenotable td.code{padding-left:.75em}
table.linenotable td.linenos{width:.01%}
pre.pygments .linenos,pre.rouge .linenos,table.linenotable td.linenos{border-right:1px solid;opacity:.35;padding-right:.5em;-webkit-user-select:none;-moz-user-select:none;user-select:none}
pre.pygments span.linenos,pre.rouge span.linenos{display:inline-block;margin-right:.75em}
.quoteblock{margin:0 1em 1.25em 1.5em;display:table}
.quoteblock:not(.excerpt)>.title{margin-left:-1.5em;margin-bottom:.75em}
.quoteblock blockquote,.quoteblock p{color:var(--color-dark-text);font-size:1.15rem;line-height:1.75;word-spacing:.1em;font-style:italic;text-align:justify}
.quoteblock blockquote{margin:0;padding:0;border:0}
.quoteblock blockquote:before{content:"\201c";float:left;font-size:2.75em;font-weight:bold;line-height:.6em;margin-left:-.6em;color:var(--color-title);text-shadow:0 1px 2px rgba(0,0,0,.1)}
.quoteblock blockquote>.paragraph:last-child p{margin-bottom:0}
.quoteblock .attribution{margin-top:.75em;margin-right:.5ex;text-align:right}
.verseblock{margin:0 1em 1.25em}
.verseblock pre{font-family:sans-serif;font-size:1.15rem;color:var(--color-dark-text);font-weight:300;text-rendering:optimizeLegibility}
.verseblock pre strong{font-weight:400}
.verseblock .attribution{margin-top:1.25rem;margin-left:.5ex}
.quoteblock .attribution,.verseblock .attribution{font-size:.9375em;line-height:1.45;font-style:italic}
.quoteblock .attribution br,.verseblock .attribution br{display:none}
.quoteblock .attribution cite,.verseblock .attribution cite{display:block;color:var(--color-light-text)}
.quoteblock .quoteblock blockquote:before,.quoteblock.abstract blockquote:before,.quoteblock.excerpt blockquote:before{display:none}
.quoteblock .quoteblock blockquote,.quoteblock .quoteblock p,.quoteblock.abstract blockquote,.quoteblock.abstract p,.quoteblock.excerpt blockquote,.quoteblock.excerpt p{line-height:1.6;word-spacing:0}
.quoteblock.abstract{margin:0 1em 1.25em;display:block}
.quoteblock.abstract>.title{margin:0 0 .375em;font-size:1.15em;text-align:center}
.quoteblock .quoteblock,.quoteblock.excerpt>blockquote{padding:0 0 .25em 1em;border-left:.25em solid #dddddf}
.quoteblock .quoteblock,.quoteblock.excerpt{margin-left:0}
.quoteblock .quoteblock blockquote,.quoteblock .quoteblock p,.quoteblock.excerpt blockquote,.quoteblock.excerpt p{color:inherit;font-size:1.0625rem}
.quoteblock .quoteblock .attribution,.quoteblock.excerpt .attribution{color:inherit;font-size:.85rem;text-align:left;margin-right:0}
p.tableblock:last-child{margin-bottom:0}
td.tableblock>.content{margin-bottom:1.25em;word-wrap:anywhere}
td.tableblock>.content>:last-child{margin-bottom:-1.25em}
table.tableblock,td.tableblock,th.tableblock{border:0 solid #dedede}
table.grid-all>*>tr>*{border-width:1px}
table.grid-cols>*>tr>*{border-width:0 1px}
table.grid-rows>*>tr>*{border-width:1px 0}
table.frame-all{border-width:1px}
table.frame-ends{border-width:1px 0}
table.frame-sides{border-width:0 1px}
table.frame-none>colgroup+*>:first-child>*,table.frame-sides>colgroup+*>:first-child>*{border-top-width:0}
table.frame-none>:last-child>:last-child>*,table.frame-sides>:last-child>:last-child>*{border-bottom-width:0}
table.frame-ends>*>tr>:first-child,table.frame-none>*>tr>:first-child{border-left-width:0}
table.frame-ends>*>tr>:last-child,table.frame-none>*>tr>:last-child{border-right-width:0}
table.stripes-all>*>tr,table.stripes-even>*>tr:nth-of-type(2n),table.stripes-hover>*>tr:hover,table.stripes-odd>*>tr:nth-of-type(odd){background:#f8f8f7}
td.halign-left,th.halign-left{text-align:left}
td.halign-right,th.halign-right{text-align:right}
td.halign-center,th.halign-center{text-align:center}
td.valign-top,th.valign-top{vertical-align:top}
td.valign-bottom,th.valign-bottom{vertical-align:bottom}
td.valign-middle,th.valign-middle{vertical-align:middle}
table tfoot th,table thead th{font-weight:bold}
tbody tr th{background:#f7f8f7}
tbody tr th,tbody tr th p,tfoot tr th,tfoot tr th p{color:var(--color-main-text);font-weight:bold}
p.tableblock>code:only-child{background:none;padding:0}
p.tableblock{font-size:1em}
ol{margin-left:1.75em}
ul li ol{margin-left:1.5em}
dl dd:last-child,dl dd:last-child>:last-child{margin-bottom:0}
.olist .olist,.olist .ulist,.ulist .olist,.ulist .ulist,li p,ol dd,ul dd{margin-bottom:.625em}
ol.no-bullet,ol.none,ol.unnumbered,ol.unstyled,ul.checklist,ul.no-bullet,ul.none,ul.unstyled{list-style-type:none}
ol.no-bullet,ol.unnumbered,ul.no-bullet{margin-left:.625em}
ol.unstyled,ul.unstyled{margin-left:0}
li>p:empty:only-child:before{content:"";display:inline-block}
ul.checklist>li>p:first-child{margin-left:-1em}
ul.checklist>li>p:first-child>input[type=checkbox]:first-child{font:inherit;margin:0 .25em 0 0;padding:0}
ul.inline{display:flex;flex-flow:row wrap;list-style:none;margin:0 0 .625em -1.25em}
ul.inline>li{margin-left:1.25em}
.unstyled dl dt{font-weight:400;font-style:normal}
ol.arabic{list-style-type:decimal}
ol.decimal{list-style-type:decimal-leading-zero}
ol.loweralpha{list-style-type:lower-alpha}
ol.upperalpha{list-style-type:upper-alpha}
ol.lowerroman{list-style-type:lower-roman}
ol.upperroman{list-style-type:upper-roman}
ol.lowergreek{list-style-type:lower-greek}
.colist>table,.hdlist>table{border:0;background:none}
.colist>table>tbody>tr,.hdlist>table>tbody>tr{background:none}
td.hdlist1,td.hdlist2{vertical-align:top;padding:0 .625em}
td.hdlist1{font-weight:bold;padding-bottom:1.25em}
td.hdlist2{word-wrap:anywhere}
.listingblock+.colist,.literalblock+.colist{margin-top:-.5em}
.colist td:not([class]):first-child{padding:.4em .75em 0;line-height:1;vertical-align:top}
.colist td:not([class]):first-child img{max-width:none}
.colist td:not([class]):last-child{padding:.25em 0}
.th,.thumb{line-height:0;display:inline-block;border:4px solid #fff;box-shadow:0 0 0 1px #ddd}
.imageblock.left{margin:.25em .625em 1.25em 0}
.imageblock.right{margin:.25em 0 1.25em .625em}
.imageblock>.title{margin-bottom:0}
.imageblock.th,.imageblock.thumb{border-width:6px}
.imageblock.th>.title,.imageblock.thumb>.title{padding:0 .125em}
.image.left,.image.right{margin-top:.25em;margin-bottom:.25em;display:inline-block;line-height:0}
.image.left{margin-right:.625em}
.image.right{margin-left:.625em}
a.image{text-decoration:none;display:inline-block}
a.image object{pointer-events:none}
sup.footnote,sup.footnoteref{font-size:.875em;position:static;vertical-align:super}
sup.footnote a,sup.footnoteref a{text-decoration:none}
#footnotes .footnote a:first-of-type:active,sup.footnote a:active,sup.footnoteref a:active{text-decoration:underline}
#footnotes{padding-top:.75em;padding-bottom:.75em;margin-bottom:.625em}
#footnotes hr{width:20%;min-width:6.25em;margin:-.25em 0 .75em;border-width:1px 0 0}
#footnotes .footnote{padding:0 .375em 0 .225em;line-height:1.3334;font-size:.875em;margin-left:1.2em;margin-bottom:.2em}
#footnotes .footnote a:first-of-type{font-weight:bold;text-decoration:none;margin-left:-1.05em}
#footnotes .footnote:last-of-type{margin-bottom:0}
#content #footnotes{margin-top:-.625em;margin-bottom:0;padding:.75em 0}
div.page-break{display:none}
div.unbreakable{-moz-column-break-inside:avoid;break-inside:avoid}
.underline{text-decoration:underline}
.overline{text-decoration:overline}
.line-through{text-decoration:line-through}
.conum[data-value]{display:inline-block;background:rgba(0,0,0,.8);border-radius:50%;text-align:center;font-size:.75em;width:1.67em;height:1.67em;line-height:1.67em;font-family:sans-serif;font-style:normal;font-weight:bold}
.conum[data-value],.conum[data-value] *{color:#fff!important}
.conum[data-value]+b{display:none}
.conum[data-value]:after{content:attr(data-value)}
pre .conum[data-value]{position:relative;top:-.125em}
b.conum *{color:inherit!important}
.conum:not([data-value]):empty{display:none}
div.footnote,dt,td.content,th.tableblock{text-rendering:optimizeLegibility}
blockquote,dt,p,span.alt,summary,td.content,td.hdlist1{font-size:1.0625rem}
.sidebarblock dt,.sidebarblock p,.sidebarblock td.content,p.tableblock{font-size:1em}
.print-only{display:none!important}
@page{margin:1.25cm .75cm}
@media print{*{box-shadow:none!important;text-shadow:none!important}
html{font-size:90%}
a{color:inherit!important;text-decoration:underline!important}
a.bare,a[href^="#"],a[href^="mailto:"]{text-decoration:none!important}
a[href^="http:"]:not(.bare):after,a[href^="https:"]:not(.bare):after{content:"(" attr(href) ")";display:inline-block;font-size:.875em;padding-left:.25em}
abbr[title]{border-bottom:1px dotted}
abbr[title]:after{content:" (" attr(title) ")"}
blockquote,img,object,pre,svg,tr{-moz-column-break-inside:avoid;break-inside:avoid}
thead{display:table-header-group}
blockquote,dt,p,td.content{font-size:1em;orphans:3;widows:3}
#toctitle,.sidebarblock>.content>.title,h2,h3{-moz-column-break-after:avoid;break-after:avoid}
main>div[id]{max-width:none}
#toc,.exampleblock>.content,.sidebarblock{background:none!important}
#toc{border-bottom:1px solid #dddddf!important;padding-bottom:0!important}
body.book #header{text-align:center}
body.book #header>h1:first-child{border:0!important;margin:2.5em 0 1em}
body.book #header .details{border:0!important;display:block;padding:0!important}
body.book #header .details span:first-child{margin-left:0!important}
body.book #header .details br{display:block}
body.book #header .details br+span:before{content:none!important}
body.book #toc{border:0!important;text-align:left!important;padding:0!important;margin:0!important}
body.book #preamble,body.book #toc,body.book .sect1>h2,body.book h1.sect0{-moz-column-break-before:page;break-before:page}
.listingblock code[data-lang]:before{display:block}
div.page-break{display:block;-moz-column-break-after:page;break-after:page}
#footer{padding:0 .9375em}
.hide-on-print{display:none!important}
.print-only{display:block!important}
.hide-for-print{display:none!important}
.show-for-print{display:inherit!important}}
@media amzn-kf8,print{#header>h1:first-child{margin-top:1.25rem}
.sect1{padding:0!important}
.sect1+.sect1{border:0}
#footer-text{color:var(--color-light-text);font-size:.9em}}
@media amzn-kf8{main>div[id]{padding:0}}
main{display:block;max-width:48em;margin:0 auto;padding:0}
main>div[id]{max-width:40em}
@media screen{body{background-color:#d8d8d8}
main{background-color:#fff;padding-bottom:.5em}}
@media screen and (min-width:48em){main{border:1px solid #555;box-shadow:0 .375em 1.25em rgba(0,0,0,.5);margin-top:.25em;margin-bottom:.75em}
main:first-child{margin-top:1.5em}
main:last-child{margin-bottom:2.25em}}
@media screen and (min-width:67em){#toc.toc2{border-color:#555;box-shadow:0 0 1.25em rgba(0,0,0,.5);width:clamp(15em,calc(50% - 21.5em),28em);max-width:-moz-max-content;max-width:max-content}}
.navigation{max-width:48em;margin:0 auto;padding:.25em}
@media screen and (min-width:48em){.navigation{padding:.375em}}
.navigation p{font-family:sans-serif;font-size:.85em;color:var(--color-main-text);margin:0;padding:0}
.navigation a{text-decoration:none}
.navigation a:active{text-decoration:underline}
.navigation hr{display:none}
@media print{.navigation{display:none}}
@media (min-width:40em),print{pre.nowrap,pre.nowrap pre{min-width:-moz-max-content;min-width:max-content}}
@media screen{.no-overflow pre.nowrap,.no-overflow pre.nowrap pre{min-width:unset}}
#content h1>a.link:hover,#footnotes .footnote a:first-of-type:hover,#toc a:hover,#toctitle>a.link:hover,.navigation a:hover,.sidebarblock>.content>.title>a.link:hover,a,h2>a.link:hover,h3>a.link:hover,h4>a.link:hover,h5>a.link:hover,h6>a.link:hover,sup.footnote a:hover,sup.footnoteref a:hover{text-decoration:underline;text-decoration-thickness:.0625em;text-underline-offset:.125em}
a:hover{text-decoration:none}
a{color:#03c}
a:visited{color:#539}
a:focus,a:hover,a[href^="#"]:visited{color:#03c}
a:active{color:#e00!important}
:root{--color-h1:#006;--color-heading:#006;--color-title:#006;--color-light-text:rgba(0,0,0,.7);--color-main-text:rgba(0,0,0,.85);--color-dark-text:rgba(0,0,0,.9);--color-monospace-text:rgba(0,0,0,.92)}
@media print{:root{--color-light-text:#333!important;--color-main-text:#000!important;--color-dark-text:#000!important;--color-monospace-text:#000!important}}
@media screen{html{overflow-y:scroll}}
#header>h1{display:flow-root}
#header>h1:before{float:right;content:"";background-image:url(images/tukaani_120x60.png);background-image:-webkit-image-set(url("images/tukaani_120x60.png") 1x,url("images/tukaani_240x120.png") 2x,url("images/tukaani_360x180.png") 3x,url("images/tukaani_480x240.png") 4x);background-image:image-set(url("images/tukaani_120x60.png") 1x,url("images/tukaani_240x120.png") 2x,url("images/tukaani_360x180.png") 3x,url("images/tukaani_480x240.png") 4x);width:120px;height:60px;position:relative;top:-10px;margin:0 0 -8px .375em;padding:0}
h1,h2,h3,h4,h5,h6{font-weight:bold}
@media screen{.hljs{background:#f7f7f8!important}}
