
:root {
    --ser: 'Linux Libertine', serif;
    --serif: 1.1rem 'Linux Libertine',serif;

    --sans: 'NVIDIA Sans',sans-serif;
    --sans-serif: 1rem 'NVIDIA Sans',sans-serif;

    --mono: 'Roboto Mono',monospace;
    --monospace: .95rem 'Roboto Mono',monospace;
}



* { padding: 0; margin: 0; border: 0; }
html { margin: 4%; background-color: black; }
.draftstatus { font-family: var(--sans); font-weight:bold; padding: .5em 1em; margin:.5em 0; font-size: 16px; color:white; background-color: darkred; }
.docheader { font-family: var(--sans); font-weight: normal; font-size: 115%; width: 30em; padding-bottom: 2em; }
.backlink { font-family: var(--sans); float:right; font-weight:normal; font-style: italic; font-size: 1.4rem; padding: .3em 2em 0 2em; }
.nav_set { clear: both; float: right; margin-bottom: 1.5em; padding-top: 1em; display: table; font-size: 1rem; }
.nav_item, .nav_placeholder { font-family: var(--sans); padding-left: .5em; display:table-cell; vertical-align:middle; font-style:italic; font-size: 1.25em; }
.nav_placeholder { color: #AAAAAA }
.search_label { padding-left: 1.25em; padding-right: .25em; }
#bottom_spacer { clear: both; height: 100vh; }
#cover_credit { font-size:12px; font-style:italic; margin-bottom:24px; clear:both; float:right; }
.footeritem { padding: 0 .75em; }
sub { padding-left: 2px; }
#blackheader { font-family: var(--sans); color: white; padding: 0 1em; margin: 0; border: 0; vertical-align: middle; font-size: 1.5em; height: 2.5em; overflow: hidden; }
#logos { line-height: 2.2; }
#blackheader_title { line-height: 2.4; }
#blackheader, #blackfooter { background-color: black; }
#blackheader_uplink a { color: white; float: right; font-size: .7em; font-style: italic; padding-right: 1em; vertical-align: middle; line-height: 3.65; }
#blackheader span { display: inline; vertical-align: middle; }
#logos img { vertical-align: middle; padding-left: .5em; }
#logos { padding-left: .5em; display: inline-block; height: 2.5em; float: right; }
.inline { display: inline; }
.nomargin { margin: 0; padding: 0; border: 0; }
.floatright { float: right; }
#headerlogo_left img { padding: .3em 1.5em 0 .5em; }
#headerlogo_right { height: 2.5em; float: right; }
#blackfooter { box-sizing: border-box; font-family: var(--sans); color: white; padding: .7em 0; margin: 0; font-size: .8em; text-align: center; }
#blackfooter a { color: #BBBBFF; }
.footeritem { padding: 0 .75em; display: inline-block; }
.rightjustify img { padding-left: 30px; }
a { outline: 0; }
a:link, a:visited { color: #10467f; outline: 0; font-weight:normal; text-decoration: none; }
a:hover { text-decoration: underline; outline: 0; }
a.internal:hover { text-decoration: none; outline: 0; }
a.headerlink { color: black; outline: 0; }
a[name] { text-decoration: none; outline: 0; }
.ui-tooltip { box-shadow: none; border-radius: 0px; border: 0; padding: 5px 10px; margin: 0px; background-color: #DCE1DC; }
.ui-tooltip-content { font-family: var(--ser); font-size: 90%; color: black; background-color: #DCE1DC; border: 0; }
.chapter { text-align: right; width: 2em; display:inline-block; padding-right: 1em; padding-bottom: .125em; font-family: var(--sans); font-weight: normal; font-size: 1.25em; }
.chapter_name { font-family: var(--sans); font-weight: normal; font-size: 1.2em; padding-bottom: .125em; }
.uplink { font-family: var(--sans); float:right; font-weight:normal; font-style: italic; font-size: 1rem; }
.api_symbol_container { padding: .2em 0em 0em 1em; }
.api_symbol { font-family: var(--monospace); padding: 0; line-height: 1.3; text-indent: -2em; padding-left: 2em; }
.badlink { background-color: #FFDDDD; border-color: #FF0000; border-style: solid; padding: 0px; color: black; font-family: var(--monospace); }
.ziplink { font-style: italic; padding-left: 1em; display: inline-block; font-size: 80%; }
.target { display: inline; }
.green { background-color: rgb(80%,100%,85%); }
.titletext, .headingtext, h1, h2, h3, h4, h5, .part { font: var(--sans-serif); font-weight: normal; clear: both; }
h2, h3, h4, h5 { margin-top: 1em; }
h1 { padding-top: 1.8em; }
h1, h2, h3, h4, h5 { margin-bottom: .75em; }
.titletext { font-size: 1.2em; }
.headingtext { font-size: 1.2em; }
.part { font-size: 1.6em; color: #000000; clear: both; font-weight: normal; padding-top: 2em; }
.partprefix { padding-right: 1em; }
h1 { font-size: 1.2em; color: #000000; background-color: #EEEEEE; clear: both; font-weight: normal; }
h2, h3, h4, h5 { font-size: 1.1em; }
h1+p, h2+p, h3+p, h4+p, h5+p { margin-top: .5em; }
#content > h1 { margin-top: 1em; }
.totop { font-family: var(--sans); float:right; font-weight:normal; font-style: italic; font-size: 1.25rem; }
.h4style { font-family: var(--sans); font-size: 1.25em; }
.level_link { line-height: 1.3; }
p { margin: 0; padding: 0; margin-top: .75em; margin-bottom: .75em; }
dd p { margin: .5em 0; }
.prolog { border: solid black 1px; padding: 20px; clear: both; margin: 30px 0px; }
.footer { float:right; font: var(--sans-serif); margin:.5em; }
.indent { padding: 0; margin: 1em 0 1em 1em; }
.center { display: block; text-align: center; margin-left: auto; margin-right: auto; }
.rightjustify { clear: both; float: right; }
.leftpad { padding-left: 1em; }
.nopad { padding: 0; margin: 0; }
menu, ol, ul { padding: 0; }
.nl { padding: 0; margin: 0; border: 0; clear: both; }
.citation { font-size:90%; padding: 0; padding-top: 0.5em; float:right; clear:both; text-align:right; }
.citation > p { margin-top: 0; }
.footnote, .footnote .panelink { position: relative; padding-left: 1px; }
.footnote .panelink { cursor: pointer; }
.footnote .footnotetext { visibility: hidden; font-size: 12px; width: 400px; padding: 6px 10px 6px 10px; border: solid 1px black; background-color: #DCE1DC; position: absolute; z-index: 10; top: 5px; margin-top: 1.1em; }
.footnote:hover .footnotetext { visibility: visible; }
.footnotetext { cursor: text; }
.footnote sup { font-size: 105%; }
.vertical { transform: rotate(90deg); transform-origin: left top 0; }
a { overflow: visible; }
.hrule { border-top: 1px solid #000000; }
.pre { white-space: pre; font: var(--monospace); }
ul, ol { margin: .2em 0 0 1em; }
ul { list-style-type: square; }
li { margin: .6em 0 .6em 1em; }
ul.compressed li, ol.compressed li { margin: 0 0 0 0; }
ul.nobullet li { margin: 0 0 0 0.25em; }
li:before { color: #AAAAAA; }
dl { margin: .25em 0em .25em 1.5em; }
dt { margin-top: .5em; margin-bottom: .25em; }
dd { margin: 0 0 .5em 1.5em; }
ul.compressed { padding-left: 1em; }
.compressed li { margin: 0.2em 0; }
.nobullet { list-style-type: none; }
dl dd dl { margin-left: 0em; margin-top: 0em; }
table { border-collapse: collapse; empty-cells: show; line-height: 1.3; }
th, td { padding: .25em .5em .25em .5em; vertical-align: top; }
th { text-align: center; font-weight: normal; }
.tablecontainer { display: inline-block; text-align: center; }
.tablecaption { margin-top:.5em; margin-left: auto; margin-right: auto; font-style: italic; font-size: 90%; }
.rfont { font: var(--serif); }
.ifont { font-style: italic; }
.bfont { font-weight: bold; }
.tfont { font: var(--monospace); }
.sfont { font: var(--sans-serif); }
.lhpos { text-align: left; }
.chpos { text-align: center; }
.rhpos { text-align: right; }
.tvpos { vertical-align: top; }
.cvpos { vertical-align: middle; }
.bvpos { vertical-align: bottom; }
.tline { border-top: solid gray 1px; }
.rline { border-right: solid gray 1px; }
.bline { border-bottom: solid gray 1px; padding-bottom: 4px; }
.lline { border-left: solid gray 1px; }
.aline { border: solid gray 1px; }
.gray { background-color: #EEEEEE; }
td > p { margin: .5em 0; padding: 0; }
td > p:last-child { margin-bottom: 0; }
td > p:first-child { margin-top: 0; }
tr.rowhighlight:hover { background-color: #DDEEFF; }
tr.outdent { padding-left: 3em; }
td.outdent { text-indent: -3em; padding-left: 3em; }
table.compress td { padding-top: 2px; }
dd table { margin-top: 0; margin-bottom: 0; }
td.rotate { white-space: nowrap; }
td.rotate > div { transform: rotate(-60deg); width: 3px; transform-origin: left bottom; box-sizing: border-box; }
td.rotate > div > span { }
.cell_yes_color { background-color: #AAAAAA; }
.check { background-color: #EEE; text-align: center; vertical-align: middle; width: 1em; }
.simpletable { border: 0px; padding: 0px; }
.simpletable tr td { padding: 0px; padding-right: 8px; line-height: 1.3; }
.textdown { text-orientation: mixed; writing-mode: vertical-rl; }
html, body { font: var(--serif); line-height: 1.3; }
ol, ul { line-height: 1.3; }
.serif { font: var(--serif); font-style: normal; }
.italic { font-style: italic; }
.ritalic { font: var(--serif); font-style: italic; }
.bold { font-weight: bold; }
.sansserif { font: var(--sans-serif); font-weight: normal; }
.sansserifbody { font: var(--sans-serif); font-weight: normal; }
.sansserifitalic { font: var(--sans-serif); font-weight: normal; font-style: italic; }
.sansserifbold { font: var(--sans-serif); font-weight: bold; }
.menuitem { font-family: var(--sans); font-weight: normal; font-size: 115%; }
.small { font-size: smaller; }
tt, pre, .monospace { font: var(--monospace); }
.monospace { font: var(--monospace); font-weight: normal; }
.regularfont { font: var(--serif); font-style: normal; }
.regularmono { font: var(--monospace); font-style: normal; }
.s1font { font-family: var(--sans); font-weight: bold; font-size: 1.5em; }
.s2font { font-family: var(--sans); font-weight: bold; font-size: 1.35em; }
.s3font { font-family: var(--sans); font-weight: bold; font-size: 1.2em; }
.s4font { font-family: var(--sans); font-weight: bold; font-size: 1.1em; }
.s-caption { font-style: italic; font-size: 90%; line-height: 1.4; margin: .5em 0 0 0; text-align: center; word-wrap: break-word; }
.s-border { border: solid 2px black; }
.s-center { margin-left: auto; margin-right: auto; display: block; }
.s-inblock { display: inline-block; }
.s-imgmargin { margin: 8px 0 2px 0; }
.s-inline { vertical-align: top; margin: 0 2px 0 2px; }
.s-cell { vertical-align: top; margin: 2px 6px 2px 6px; display: inline-block; }
.s-cell-caption { font-style: italic; font-size: 90%; line-height: 1.4; margin: 0.5em 0 0.75em 0; text-align: center; }
.s-cell-caption-bottom { font-style: italic; font-size: 90%; line-height: 1.4; margin: 0.5em 0 0.25em 0; text-align: center; }
.s-row { line-height: 0; vertical-align: top; padding: 0; margin: 0; border: 0; overflow: hidden; display: block; text-align: center; }
.s-imagegrid-caption-no-cell-captions { font-style: italic; font-size: 90%; line-height: 1.4; padding: 0; margin: 0.75em 0 1em 0; text-align: center; }
.s-imagegrid-caption { font-style: italic; font-size: 90%; line-height: 1.4; padding: 0; margin: 0 0 1em 0; text-align: center; }
.s-imagegrid-no-caption { padding: .5rem 0 .5rem 0; }
.s-imagegrid { padding: .5rem 0 0 0; }
.s-side { vertical-align: middle; padding: 0; margin: 0; }
.s-betweener { width: 5px; padding: 0; margin: 0; }
.s-line-spacer { height: 5px; padding: 0; margin: 0; }
pre { padding:0; margin:0; border:0; overflow: auto; }
.code { line-height: 1.4; margin: .75em 0 .75em 0em; overflow-x: auto; white-space: pre; }
.anno { padding: 0 0 0 16px; vertical-align: middle; }
.box { border: solid black 1px; padding: 1em; clear:both; margin: 1.0em 0; overflow: auto; }
.box a { opacity: 1.0; }
.linenumber, .numberedline { display: inline; line-height: 1.3; }
.linenumber { font-size: 75%; color: rgb(50%,0%,0%); padding-right: 1em; }
.numberedline { margin-right: 1em; }
.mapsto { content:'\21A6'; font-size: 200%; }
.codeblock a { background-color: transparent; }
.toctitle { font-family: var(--sans); font-weight: normal; font-size: 1.4em; margin-top: .5em; }
.tocentry { font-family: var(--sans); font-weight: normal; font-size: 1.1em; line-height: 1.4; }
body { }
html { margin: 0px; box-sizing: border-box; }
#folder { clear: both; margin:0; padding:0; background-color: white; }
#navigation { font-family: var(--sans); width: 200px; cursor: default; float: left; white-space: nowrap; position: absolute; overflow: auto; overflow-x: hidden; background-color: white; padding: 0; line-height: 1.5; font-size: .9em; }
#navigation ol, #navigation ul { line-height: 1.5; }
#toctop { padding-top: 1em; }
#slider { width: 8px; }
.ui-resizable-handle { background-color: rgb(220,225,220); width: 8px; padding: 0; margin: 0; position: absolute; border-width: 0 1px 0 1px; border-style: solid; border-collapse: collapse; }
#content { margin: 0; padding: 0; padding-left: 1.5em; padding-right: 1.5em; overflow: auto; border-width: 0 0 0 1px; border-style: solid; border-collapse: collapse; background-color: white; }
#navigation { margin-top: 1em; }
#content h1 { background-color: transparent; }
#page_content { margin: 0; padding: 0; }
#search_content{ margin: 0; }
#navigation li { margin-top: 0em; margin-bottom: 0em; padding-top: .1em; padding-bottom: .1em; }
#navigation li { cursor: pointer; }
#navigation li.closed { cursor: pointer; }
#navigation li.open { cursor: pointer; }
#navigation span.navlink { cursor: pointer; padding: 0 .2em; }
.navlink:hover, #search_label:hover, #search_back_label:hover, #search_clear:hover, #help:hover, #go_back:hover, #go_forward:hover, #navshow:hover, #navfit:hover, .depthchoice:hover, #next:hover, #last:hover, #linkshow:hover, #focus:hover { text-decoration: underline; color: rgb(10%,20%,50%); }
.navlink { border: solid 1px white; }
.highlight { background-color: rgb(237,240,237); border: solid 1px rgb(180, 190, 180); }
.highlight_parent { background-color: rgb(240,244,240); border: solid 1px rgb(240,244,240); }
#navigation li:hover { overflow: visible; background-color: rgb(255,255,255); }
#navigation, #navigation ul, #navigation ul li { margin: 0; padding: 0px; border: 0; list-style: none; display: block; position: relative; box-sizing: border-box; }
.align-right { float: right; }
#navigation > ul > li > a { padding: 15px 20px; cursor: pointer; z-index: 2; font-weight: bold; text-decoration: none; }
#navigation > ul > li:last-child > a, #navigation > ul > li.last > a { }
.holder { width: 0; height: 0; position: absolute; top: 0; right: 0; }
.sectionnumber { padding-right: .5em; }
.navnumber { padding-right: .5em; }
.holder::after { top: 17px; }
.holder::before { top: 18px; }
#navigation ul ul li a { padding: 10px 20px; z-index: 1; text-decoration: none; }
span.nodestatus { font-family: var(--ser); font-size: 1.1em; line-height: 0.0; padding-left: 0; text-align: right; color: rgb(42%,42%,42%); }
#navigation span.level0 { width: 0.5em; display: inline-block; }
#navigation span.level1 { width: 1.5em; display: inline-block; }
#navigation span.level2 { width: 2.5em; display: inline-block; }
#navigation span.level3 { width: 3.5em; display: inline-block; }
#navigation span.level4 { width: 4.5em; display: inline-block; }
#navigation span.level5 { width: 5.5em; display: inline-block; }
div.docheader { padding-bottom: 0; }
#toctitle { margin: 0; font-size: 1.1em; padding: .5em 0em .25em .5em; }
#navcontrol { overflow: hidden; padding: .35em 1em; vertical-align: middle; background-color: rgb(220,225,220); border-width: 0 0 1px 0; border-style: solid; border-collapse: collapse; }
#navshow, #navfit { padding:0; margin:0; cursor: default; }
#search_label, #search_back_label, #go_back, #go_forward, #navshow, #navfit, .depthchoice, #next, #last, #linkshow, #focus, #help, #search_clear { font-family: var(--sans); padding: 0 .25em 0 .25em; cursor: default; vertical-align: middle; font-size: 1rem; }
#search_clear, #search_label, #search_back_label, #help { vertical-align: inherit; padding: inherit; }
#help { padding-right: .3em; }
#go_back { padding-left: 2em; }
#foldersearch { padding: 0; margin: 0; float: right; vertical-align: bottom; }
#search_input { font-family: var(--ser); font-size: .8em; border: 0; padding: 0; margin: 0; padding: 0 5px; line-height: 2em; border: 1px; border-style: solid; border-collapse: collapse; }
.separator { padding: 0; padding-left: .5em; padding-right: .5em; }
#search_clear { padding-right: .5em; }
.searchtitle { font-family: var(--sans); font-size: 1.3em; padding-top: 1em; }
.searchsection { font-family: var(--sans); font-size: 1.2em; padding-top: 1em; cursor: default; }
.searchhit { background-color: #FFFFBB; padding: 0 .1em; }
.searchcontext { cursor: default; margin-top: 0.5em; border: 1px; border-style: solid; border-color: #AAAAAA; border-collapse: collapse; padding: .5em; background-color: white; }
.pagelink { font-family: var(--sans); font-size: 1.4em; padding: 2em 1em 2em 0; width: 5em; font-style: italic; cursor: default; }
.panelink { color: rgb(10%,20%,50%); cursor: default; }
.pagelink:hover, .panelink:hover { text-decoration: underline; color: rgb(10%,20%,50%); }
#help { width: 2.5em; padding-left: 1em; }
#search_label, #search_back_label { padding-right: .1em; }
#bottomspacer { height: 100vh; }
.mono { font: var(--monospace); }
#folder content { border-width: 0 0 0 1px; border-style: solid; border-collapse: collapse; }
body > #content { border: 0; }
.ui-widget { font: var(--sans-serif); }
#logos img { padding-left: .1em; }
.ui-resizable-e { cursor: e-resize; width: 7px; right: -5px; top: 0; height: 100%; }
.ui-resizable-handle { position: absolute; font-size: 0.1px; display: block; -ms-touch-action: none; touch-action: none; }
.srch { border: 0px; padding: 0px; margin: 0px; font-size: 1em; }
#search_input { line-height: 20px !important; background-color: #FFF; border: 1px; border-style: solid; border-collapse: collapse; font-size: 90%; }
#search_clear_input { padding: 0 3px; vertical-align: middle; cursor: default; line-height: 20px !important; border: 0px; width: 20px; }
#search_clear_input_blank { padding: 0 3px; vertical-align: middle; cursor: default; line-height: 20px !important; border: 0px; width: 20px; }
#search_box { }




.codeblock {
    display: inline-block;
    padding: 3px 4px 3px 4px;
    background-color: rgb(90%,90%,90%);
    overflow: visible;
}

.codeindent {
    border: 0;
    padding: 2px 0;
    margin: 0;
    display: inline-block;
}

.codeleft {
    margin-left: -5px;
}

.codecomment {
   padding: 3px 3px 3px 8px;
   float: right;
/*?   overflow: hidden;  */
   font-style: italic;
   font-family: var(--sans);
   font-size: .9rem;
}

.uncommented {
   padding: 0 0 0 4px;
/*   display: inline; */
  overflow: visible;
} 

.annotatedcode {
   vertical-align: middle;
   overflow: hidden; 
   margin: 3px 0 3px 0;
}

.annotatedcode > * {
   vertical-align: middle;
}

.annotatepad {
   padding: 8px 10px 8px 10px;
   display: inline-block;
}

.annotateline {
   border: solid rgb(80%,80%,80%) 1px;
   display: inline-block;
}

.annotatebox {
   line-height: 1.3;
   margin: 0.5em 0 0.5em 1em;
   overflow: hidden;
/*  box-sizing: border-box;*/
}	    


.codecaption {
    /* padding: 6px 6px 6px 10px; */
    padding: 1ex 1ex 1ex 1.5ex;
    font-size: 90%;
    font-style: italic;
    /* background-color: yellow; */
    border-left: solid rgb(80%,80%,80%) 1px;
    border-top: solid rgb(80%,80%,80%) 1px;
    border-right: solid rgb(80%,80%,80%) 1px;
    margin: 0;
}

