
*{-webkit-font-smoothing:antialiased;
-webkit-overflow-scrolling:touch;
-webkit-tap-highlight-color:rgba(0,0,0,0);
-webkit-text-size-adjust:none;
-webkit-touch-callout:none;
box-sizing:border-box}

body,html{height:100%}

body{-moz-osx-font-smoothing:grayscale;
-webkit-font-smoothing:antialiased;
color:#34495e;
font-family:Source Sans Pro,Helvetica Neue,Arial,sans-serif;
font-size:15px;
letter-spacing:0;
margin-top:0;
margin-bottom:0;
margin-left:15px;
margin-right:15px;
}


img{max-width:100%}



.normaltext {
    font-size:medium;
}

body.jp { font-family: "MS PGothic", "MS Gothic", meiryo, sans-serif; }

.jp { font-family:  "MS PGothic", "MS Gothic", meiryo, sans-serif; }

.en {  }

/*------------------------------------------------
* HEADER STYLING
*/


/* since using h4 consistently as a barely-marked heading, give it a lot less
* padding than it seems otherwise to be given */



h1.programtext {
        font-size:larger;
        }
h2.programtext {
        font-variant:normal;
        font-size:larger;
        }
        
h2 .programtext {
        font-variant:normal;
font-size:inherit;
        }

h3.programtext {
        font-size:larger;
        }

.func_shortdesc .programtext { 
        font-size:inherit;
}

/*------------------------------------------------
* ANCHOR COLORING
*/

A:link { color: #003366}       /* unvisited link 003366 "obscure dull azure" */
A:visited { color: #006666 }   /* visited links  006666 "obscure dull cyan"*/
A:active { color: lime }    /* active links */

 a.external
{
background: url(External.png) right center no-repeat;
padding: 0 12px 0 0;
}

.local_newtab{ }   /* used by builder; use a class so users can overrule */


/*---------------------------------------------------------*/
/* move list items a little way apart */
dd {
        padding-bottom: 10px;
        margin-left:2em;

}
li {
        padding-bottom: 10px;

}

dt {
        margin:0;
}


dd>dl {
        margin-left:0;
        }

.compact dd>dl {
        margin-left:2em;
        }
        
body>dl {
        margin-left:0;
        }        

/*  default indentation for lists, matches that for class="indented" */
dl {
        padding: 0px;
        margin-left: 2em;

}
ul        {
        padding: 0px;
        margin-left: 2em;
}

ol div {
        text-indent:0;
        }

hr {
        border:0;
        clear:both;
        height:1px;
        color:#003366;             /* for IE */
        background-color:#003366;  /* for Opera and Mozilla */
  /* 99ccff = "pale dull azure" */
}

.bordered {
        border: 1px solid #73889D;
}

table.highlit .bordered{
        border: 1px solid #003366;
}

/* -------------------------------------------- */
/* styling on tables
*/
caption {
        caption-side: top;
        margin: 0.5em 0 0.5em 3em;

        font-family:  "Helvetica LT Std Light", "Helvetica Light", "Helvetica LT Std", "Helvetica Std", "Helvetica", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue",  "Tahoma", "Geneva", "Arial",  sans-serif; 
        color: #003366; /* dark hard azure */

}

table, table.normal , table.borderless table.normal{
        background: #fff; 
        border-collapse: collapse;
        border: 3px solid  #003366;  /* dark hard azure */
        margin: 0.5em 0 0.5em 3em;
        empty-cells:hide;
        }
        
h3 + table, 
h3 + table.highlit, 
h3 + table.borderless, 
h4 + table, 
h4 + table.highlit,
h4 + table.borderless{
    margin-top:1em;
}        

table.borderless table.borderless{
margin:0;
}        

td, .normal  td, table.borderless .normal td, table.borderless .normal td.programtext
{
        background: #fff; 
        border: 1px solid #003366;  /* dark hard azure */
        padding:0.5em;
        text-align:left;
        vertical-align:top;
}

th span.programtext, th a.programtext {font-size:inherit;}

        
td.programtext,  .borderless table.normal td.programtext, table table td.programtext{
        padding-top:0.7em;
        }

th, .normal th , table.borderless .normal th{
        border-top: 3px solid;
        border-bottom: 3px solid ;
        border-left:  1px solid;
        border-right:  1px solid;
        padding:0.5em;
        text-align:left;
        vertical-align:top;
}

.programtext th{
        font-family: monospace;
/*        font-size:small;*/
}

td > ul {
        padding:0; 
        margin-bottom:0;
        margin-top:0;
        }

td h4 {
        padding:0;
        margin:0;
        }

table.borderless {
        border:none;
        }

.borderless td, table.normal table.borderless td{
        border:none;
        
}

.borderless th , table.normal table.borderless  th{
        border:none;
}

.tablestripe {
        background-color:#eeeeee;
        }


.indented {
        padding: 0px;
        margin-left: 2em;
        text-align: left;

}

h4.api {
        font-variant:normal;
        font-family: monospace;
        font-size: 1.4em;
        }

/* If there are two h4.api in a row inside a td, put a space between
 * them (this trumps the "td h4" rule further down). */
td > h4.api+h4.api {
        margin-top:0.5em;
        }


div.indented{
        margin-top:0.5em;
        margin-bottom:0.5em;
        }

.warning, .saas_note {
        font-weight: bold;
        color: #FF0000;
}

.subtler {
        color:gray;
        }

.directive {
        list-style-image:      url(directive_bullet.png);

}

.normal {
        list-style-image:   none;

}

.commandname {
        font-weight: bold;
}
.programtext {
        font-family: monospace;
        font-size: smaller;
/*        vertical-align:  text-bottom; */
}

.programtext  i {
        font-family:default;
        }

        
        
.commandline  i {
        font-family:default;
        }        

div.programtext {
        margin-top:0.5em;
        }

dd.programtext {
        margin-top:0.2em;
        }

/*-------------------------------------
*
* Commands for a dl that highlights its dt attribute with color
*/

.highlit > dt {
        /* font-weight: bold; */
        color:#34395e;
}


/* 
* commands for an equivalent table 
*/

table.highlit {
        border:0;
        margin:0.5em 2em ;
}

        
        
table.highlit th.programtext{
        font-family: monospace;
        /*font-size: smaller;*/
}


table.highlit th.commandname{
        font-weight: bold;
}

table.highlit th.tabhead {
        color:black;
        background-color:white;

        }

        
        
table.highlit td, table.highlit th, table.highlit td.tabhead, {
        border:0;
        padding:1em 0.5em;
        border:0;
        }

table.highlit td.programtext, table.highlit td.literal_arg {
        border:0;
        padding:0.85em 0.5em 0.15em 0.5em;
        border:0;
        }

/*
* Commands for a dl that highlights its dt attribute with bolding
*/
.weighted > dt {
        font-style: italic;
}



/* ---------------------------------------
* 
*   declarations for horizontal menus using <ul class="horizmenu"> */

ul.horizmenu{
        text-indent: 0pt;
        margin: 0px;
        padding: 0px;
        margin-bottom:1em;
}


ul.horizmenu  li
{        display: inline;
        float:left;
        list-style-type: none;
        padding-right: 0.5em;
        padding-bottom: 0;
        margin-bottom:1em;
}

ul.horizmenu  li + li {
        padding-left: 0.5em;
        border-left: 1px solid;
}

ul.horizmenu+*{
 
 clear:both;
 }

   /* just make sure horizmenus look ok under h3s */
h3 + .horizmenu {
margin-top:1em;
}
/*.horizmenu li:before{
        content: "| ";
}
.horizmenu li:first-child:before { 
        content: ""; 
}
*/


/* declaration for a dl that renders it "compactly" since
* <dl compact> is deprecated, and not rendered by some browsers anyway
* borrowed heavily from http://www.moronicbajebus.com/playground/cssplay/dl/
* starts the description straight after the term, then goes on to
* the next line and assumes a fixed margin.
*/
dl.compact{ 
        padding: 0; 
} 


.compact > dt{ 
        float: left;
        clear:both;
        padding: 0 0.5em 0 0;

} 

.compact > dt.programtext{ 
        margin-top:0.2em;
} 

.compact > dd{ 
        padding-bottom: 10px;
        margin-left:0em;

        } 

/* -----------------------------
* like dl.compact, except 
* has a small, fixed width for the terms
*
*/
dl.fixed{ 
        padding: 0; 
        margin:0;
        text-indent:0;
} 


.fixed >  dt{ 
        float: left; 
        width:5em;
        padding: 0;
        margin: 0 0 0 3em; 
/*        font-weight:normal; */
/*        font-style:italic;  */
        clear:both;


/*        border: solid 1px; */  /*this line for debugging only */
} 


        
.fixed > dd{ 
        padding: 0 0 10px 0;
        margin-left:8em;
                /*border-bottom: solid 1px;*/
/*border: solid 1px;8?   /*this line for debugging only */
        } 

/********************************************
* a table-type dl
* where dl and dt are aligned in two columns
*/

dl.tabular{
/*float:left;*/
        padding:0;
        margin: 0 0 0 2em;
        width:25em;
}

dl.tabular dt {
        clear:left;
        float:left;
        display:block;
        margin:0;
        padding: 0;
        width:4em;
        }

dl.tabular dd {
        float:left;
        margin:0;
        padding:0;
        width:20em;
        }
        


/* avoid unpleasant side effects of floats */
dl + * {
clear:left;
}
/* ----------------------------------------------------------
* declaration for a list with no bullets or indenting (so, effectively equivalent
* to a paragraph with a bunch of line breaks, except inherits other list formatting (eg 
* line spacing) and preserves structural intent. */

.nakedlist {
        margin: 0.5em 0 0 0;
        padding: 0;
        list-style-type: none;
}

/*----------------------------------------------------
*/
hr.thickline {
clear:both;
        height:4px;
        }

hr.dotted {border-top-width: 1px;border-top-style: dotted;height:1px; border-bottom-width:0;background-color: #ffffff;}

hr.double {border-top-width: 1px;border-top-style: solid;height:3px; border-bottom-width:1px;border-bottom-style: solid;background-color: #ffffff;}

/*----------------------------------------------------
*/

.summary{
        padding: 3px;
        margin:0 0 1em 0;
        /*margin-left: 2em;
        margin-right: 2em;*/
        text-align: left;
        font-style: normal;
        font-weight:600;
        border: 2px solid #6e7d8c;
        background-color:#fcfdfd;
        width:98%
        }


div.summary{
        padding:0;  /*if using a summary div to hold multiple paragraphs etc,
                     * let any padding come from them*/
        }

.summary p {
        padding: 3px;
        margin:0;
        }

.scrollable {
        overflow-x: auto;
        white-space: nowrap;
        display:block;
        border:1px solid #999999;  /* "gray" */
        max-width:80vw;
}

/*-----------------------------------------
* styling for code examples
*-------------------------------------------*/
.codeblock {
        display:block;
        padding: 0;
        margin: 0.5em 0 0.5em 2em;
        /*width:40em;*/
        background-color: #efefef;
        color:#525252;
        font-family: monospace;
        font-size:smaller;
        border:1px solid #525252;
        width:95%;
        }

.codeblock pre {
    overflow-x: auto;
}

.codeblock > * {
        margin: 0.5em 1em;
        }

td.codeblock, td .codeblock {
        margin:0.5em;
        border:1px solid #525252;
        }

.borderless td.codeblock {
        border:1px solid #525252;
        }
        
h4 + .codeblock, h3 + .codeblock, h4 + ul.nakedlist {

    margin-top:1.5em;
}        
        
.ccodeindent{     
        
        padding:0;
        margin-left:2em;
        }




/* maybe it was dumb to name it ccodeindent in the first place
* then again, maybe one day I will want different indents anyway
*/ 
.scodeindent{
        
        padding:0;
        margin-left:4em;
        text-indent:-2em;
        }

/* use when parameter list so long that it needs to run over */

.paramoverrun{
        margin-left: 9em;
        }


/* used to mimic CodeSurfer's syntax highlighting for program points in
* the query-results set
*/
.pathpoint{
        color:#ff0000;
        }
        
.pathinterestpoint{
        color:#dd0000;
        font-weight:bold;
        }        

.queryresult{
        color:red;
        }
        
.querypoint{
        text-decoration:underline;
        }

.querybackground{
        background-color:#b3d5cd;
        }
        
.queryselect{
        background-color:yellow;
}
                
.choptarget{
        background-color:#aaffff;
}

.chopsource{
        background-color:#ffd2ff;
}

/*  Correspond to CodeSonar web gui styles */

.severity_none{
    background: #CCFFFF;
}

.severity_status{
    background: #CCFFCC;
}

.severity_remark{
    background: #FFFFCC;
}

.severity_warning{
    background: #FFFF99;
}

.severity_error{
    background: #FFCCCC;
}

.severity_internal_error{
    background: #FF0000;
}

.severity_retracted{
    background: #FFCCFF;
}

.codehighlit{
    background-color: #FFCCFF;
    font-weight:bold;
}
.analyzer3p{
    background-color: #FFFF99;
    font-weight:bold;
}

.codecomment{
        margin-left:4em;
        font-style:italic;
        color:#336699;           /* Dark Dull Azure */
        }
        
span.codecomment{
margin-left:0;
}



.codestring{
        color:#993366;           /* Dark Dull Pink */
}

.commandline{
        font-family: monospace;
        font-size:smaller;
        padding: 5px;
        padding-left:2em;
        margin-left: 2em;
        /*width:40em;*/
        background-color: #e7ede1;
        width:95%;
        }
        
dt.commandline{
        padding:5px 0;
        margin:0;
        }

td .commandline{
        width:inherit;
        padding:5px;
        margin:0;
        margin-bottom:5px;
        }        

td > span.commandline{
    display: inline-block;
    margin-top:5px;
    margin-bottom:5px;
        }

table.tight tr td .commandline{
        padding-top:1px;
        padding-bottom:1px;
        }

.shrunken {
        font-size: x-small;
        }        
        
        /* used for typesetting function documentation */
        
.funcdescs > dd {
        margin-bottom:1em;
        }        



        
dl.arglist {
        padding:0;
}        
        
.arglist > dt {
        font-weight:bold;
        float: left;
        clear:both;
        padding: 0 0.5em 0 0;

        }

dl.arglist {
        margin-bottom:0.5em;
        }        
        
.arglist > dt:after {
        content: " : ";        
        }
        
        
dl.arglist > dd {


        }
        
.argname {
        font-weight: bold;
        }
                
/* styling for lists that appear in function argument descriptions
* based on horizmenu, but separated out for two reasons
* 1) the required syntax is more constrained
* 2) may go off and style horizmenus excitingly later, but don't want the
*    function definitions to follow
*
* would be much much much nicer to do this as a UL one day, when user agents behave better
*/
span.barul:before{
        content: " [ ";
}
span.barul:after{
        content: " ] ";
}

span.barli + span.barli:before {
        content: " | ";
}



/*---------------------------------------------------*/
/* used to mark features that are new since the last version
*/

.newfeature {
        color:#FF9933;   /* "light hard orange" */
        }

/*------------------------------------------------------*/

/* nicely marks targets inside pages */
*:target { background-color: #00ff00; /* 00ff00 = lime green */
           color:black;}   
/*----------------------------------*/
/* force inline images to behave nicely */

img.intext {
        vertical-align:middle;
}

/*----------------------------------------------*/
/* use when writing about keyboard keys */

.key {
        font-variant:small-caps;
        border:1px solid black;
        }
        
/*--------------------------------------------*/        
/* API documentation                          
* try to standardize this
* while keeping on the good side of all browsers.
*/

div.api_class, div.api_fn, div.api_type, div.api_var{
        width:80%;
        margin-top:1em;
        margin-bottom:1em;
}

div.api_class{
        border:1px solid #a8b1ba;
}

div.api_type{
        border:2px solid #a8b1ba;
}


div.api_type div.synopsis{
    background-color:#a8b1ba;
    font-weight:bold;
    margin-left:0;
    padding-left:0;
    color:#161f28;
}
        
.api_class .label {
        font-weight:bold;
}

.api_class >div , .api_fn >div{
        margin-left:5px;
        padding-bottom:0.3em;
        padding-top:0.3em;
        }        

div.name{
        font-family:  "Helvetica LT Std Light", "Helvetica Light", "Helvetica LT Std", "Helvetica Std", "Helvetica", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue",  "Tahoma", "Geneva", "Arial",  sans-serif; 
        margin-left:0;
        font-size:smaller;
        padding:5px;
}

.api_class div.name{
    background-color:#34495e;
    color:#e1e5e7;
}

.api_class div.name .label{
    color:#e1e5e7;
    margin-left:5px;
}

div.name .label{
    font-weight:normal;
}

div.name .value{
    font-weight:bold;
}

div.value {
    margin-left:50px;
    margin-top:0;
    padding:0;
}

.api_class .child_name, .api_class .attribute_name {
    font-weight:bold;
}

.value ul.nakedlist, .arguments ul.nakedlist{
    margin:0;
    padding:0;
}
        
.value ul.nakedlist li{
    margin:0;
    padding:0;
}
        
.value dl.highlit {
    margin:0;
    padding:0;
}        

.api_fn{
    border:1px solid #34395e;
    margin-top:1em;
}

.api_fn div.name{
    background-color:#34395e;
    color:#e1e5e7;
}

.api_fn div.name .label{
    color:#e1e5e7;
}

div.synopsis {
    font-family: monospace;
    font-size: smaller;
    margin-left:0;
    padding-left:5px;
}

.api_fn div.synopsis{
    background-color:#e1e5e7;
}





.synopsis .func_name , .synopsis .type_name{
        font-weight:bold;
}

.type_type{ } 


table.funclist {
margin-left:0;
}
table.funclist td{
padding:0.3em 0.5em;
margin:0;
}

div.func_shortdesc{
        margin-top:0.5em;
        font-size:smaller;
}



.arg_name{
        font-style:italic;
        font-weight:normal;

}
        


        
        .notes{}
        .attributes{}
        .superclass{}
        .subclasses{}
        .children{}
        .description{}
        .arg_type{}
        .return_val{}
        .arguments{}
        .child_type{}
        .attribute_type{}
        
        div.description .func_name, div.build_option .option_name{
                font-family: sans-serif;
                font-size:small;
                }
                
        div.description table{
                margin-left:0;
                }        
        
/*-------------------------------------------*/
/* build option and preference documentation profits from the 
 * same kind of markup as API components  */

.build_option, .preference{
    border:2px solid #e1e5e7;
    margin-top:1em;
}

.build_option div.synopsis{
        background-color:#e1e5e7;
        font-weight:bold;
        /* font-size:medium;*/
    margin-left:0;
        
        }


.preference div.synopsis {
        background-color:#e1e5e7;
        font-weight:bold;
        /* font-size:medium;*/
    margin-left:0;
        color: #34395e;
        }


.synopsis .literal_arg{
font-style:italic;
}
.synopsis .option_name, .synopsis .preference_name{
        font-family: sans-serif;
        color: #34395e;
}



.arg_var{
font-style:italic;

}

.arguments .literal_arg, .default_val .literal_arg, .notes .literal_arg{
        font-family:monospace;
        font-style:italic;
        font-size:smaller;
        padding-top:0.2em;
        }


.build_option .default_val{}
.build_option .purpose{}
.build_option .example{}

.build_option > div{
    margin-left:30px;
    padding-bottom:0.3em;
    padding-top:0.3em;
    clear:both;
}

.build_option div.label{
    float:left;
    color:#5e3447;
    padding-top:0;
    width:60px;
}

.build_option div.value{
    padding-top:0;
    margin-left:70px;
}
        
.build_option div p {
    padding:0;
    margin-top:0;
    margin-bottom:1em;
}
/*--------------------------------------------*/
/* markup for glossary entries */

div.glossary_entry{
    margin-top:1em;
}

.glossary_entry .glossary_term{
    font-weight: bold;
}

.glossary_entry div.gloss{
    margin-left:4em;
}

.gloss p {
    padding:0;
    margin-top:0.5em;
    margin-bottom:0;
}
        
.gloss li {
    margin-top:0;
    padding:0;
    margin-bottom:1em;
}

.gloss ul {
    margin-top:0;
    padding:0;
}
        
/*--------------------------------------------*/
/* markup for FAQ entries */

div.faq_entry{
    margin-top:1em;
}

.faq_entry .faq_q{
    color:#34395e;
}

.faq_entry div.faq_a{
    margin-left:4em;
}

.faq_a p {
    padding:0;
    margin-top:0;
    margin-bottom:1em;
}
/*------------------*/

.oneline {
    white-space:nowrap;
}

.nb {
    list-style-image: url(nb.gif);
}

/*------------------------------------------------
* parameter list styling for C API
*
*/
.paramlist {
    margin:  0 0 0 10em ;
    padding: 0;
    list-style-type: none;
}

.paramlist li{
    margin:0;
    padding:0;
}

table  .paramlist {
    margin-left:2em;
}

ol ol {
    list-style-type:lower-alpha;
}
 
ol ol ol{
    list-style-type:lower-roman;
}
 

/*    tight tables
* have little spacing
*/

tr.tight td  , table.tight tr th, table.tight tr th.programtext, table.tight tr td, table.tight tr td.programtext, tr.tight td.programtext,
tr.normal.tight td  , table.normal.tight tr td{
    vertical-align:text-bottom;
    padding: 1px 5px 1px 1px;
}
 
tr.tight th  , table.tight tr th, tr.tight th.programtext ,
tr.normal.tight th  , table.normal.tight tr th{
    padding-left:1px;
}

table.tight {margin-left:0;margin-top:0}

.tight h4 {margin-top:5px}

h3 + table.tight, h4 + table.tight { margin-top:20px} 

.nakedlist.tight  , .nakedlist.programtext.tight {margin-top:0}  
.nakedlist.tight li , .nakedlist.programtext.tight li{padding:0}  
table.tight tr td ul.nakedlist {padding:0}  
table.tight tr td ul.nakedlist li {padding:0}  

 /*--------------------
 /* scheme and c doc colors - distinguish in shared documentation
 * 
 */
 
.c_doc {
    background-color:#d1c5ca
}

div.description table.api_variants , table.api_variants { 
    background-color:#d1c5ca;
    border:none;
    margin-left:0.5em;margin-top:0;
    font-size:smaller;
}

table.api_variants tr td, table.api_variants tr td.programtext{
    font-size:inherit;
    background-color:#d1c5ca;
    border:none;
    vertical-align:text-bottom;
    padding: 1px 5px 1px 1px;
}

.api_class div.name .c_doc{
    color:black;
}
 
.scheme_doc {
    background-color:#EEEEFF
}

.api_class div.name .scheme_doc{
    color:black;
}

.highlight {
    color:#5e3449;
}

div.topmenu {
    font-size:smaller;
}
        
/* ------------these classes  are used for postprocessing, not styling----*/
.c_module{}
.swyx_module{}
.csox_module{}
.viz_module{}

.http_api{}
.no_http_api{}
.swagger_link{}

.bits_32{}
.bits_64{}

.ix_only_sys{}
.linux_only_sys{}
.osx_only_sys{}
.win_only_sys{}
.solaris_only_sys{}
.not_ix_only_sys{}
.not_linux_only_sys{}
.not_osx_only_sys{}
.not_win_only_sys{}
.not_solaris_only_sys{}

/*  internationalization styling */
.borderimg {
    border:1px solid orange;
}

tr.lang_table td {
    border:none;
}
a.flag_link{
    text-decoration: none;
}
#current_flag{
    cursor: pointer;
    display: inline_block;
    padding: 0;
    margin:0;
    /* inline-block hack for IE7 */
    zoom: 1;
    *display: inline;
}

/*#flagimg li{
  display: inline-block;
  padding: 0;
  margin:0;
}*/

#langmenu{
    padding: 0;
    margin:0;
}

.hideLangMenu{
    display: none;  
}

.showLangMenu{
    position: absolute;    
}

/*-----------------------crossover point--------------*/
