@font-face {
  font-family: "ALibSerif";
  font-style: normal;
  font-weight: 400;
  src: local("Merriweather"), local("Merriweather-Regular"), url("Merriweather-Regular.ttf");
}

@font-face {
  font-family: "ALibSans";
  font-style: normal;
  font-weight: 400;
  src: local("Lato"), url("Lato-Regular.ttf")
}

@font-face {
  font-family: "ALibSansBold";
  font-style: normal;
  font-weight: 400;
  src: local("Lato-Bold"), url("Lato-Bold.ttf")
}

@font-face {
  font-family: "ALibCode";
  font-style: monospace;
  font-weight: 400;
  src: local("FiraMono"), url("FiraMono-Regular.ttf");
}

@font-face {
  font-family: "ALibProject";
  font-style: monospace;
  font-weight: 400;
  src: src: local("Merriweather-Bold"), local("Merriweather-Bold"), url("Merriweather-Bold.ttf");
}

ul {
    list-style: square;
}

div.toc a {
     font-family: "ALibSerif";
}

div.toc h3 {
     font-family: "ALibSansBold";
}




.sm-dox {
    background-color: #51637b;
    background-image: none;
}

.sm-dox a, .sm-dox a:focus, .sm-dox a:hover, .sm-dox a:active {
     font-family: "ALibSerif";
     font-size: 13px;
     font-weight: bold;
     line-height: 36px;
     text-decoration: none;
     outline: 0;

     background-image: none;
     color: white;
     background-color: #51637b;

     text-shadow: rgba(0, 0, 0, 0.6) 0px 2px 2px;
}


.sm {
    position: relative;
    z-index: 9999;
}

.sm, .sm ul, .sm li {
    display: block;
    list-style: none;
    margin: 0;
    padding: 0;
    line-height: normal;
    direction: ltr;
    text-align: left;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0)
}

.sm-rtl, .sm-rtl ul, .sm-rtl li {
    direction: rtl;
    text-align: right
}

.sm > li > h1, .sm > li > h2, .sm > li > h3, .sm > li > h4, .sm > li > h5, .sm > li > h6 {
    margin: 0;
    padding: 0
}

.sm ul {
    display: none
}

.sm li, .sm a {
    position: relative
}

.sm a {
    display: block
}

.sm a.disabled {
    cursor: not-allowed
}

.sm:after {
    content: "\00a0";
    display: block;                                                                      
    height: 0;
    font: 0/0 serif;
    clear: both;
    visibility: hidden;
    overflow: hidden
}

.sm, .sm *, .sm *:before, .sm *:after {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

#doc-content {
    overflow: auto;
    display: block;
    padding: 0;
    margin: 0;
    -webkit-overflow-scrolling: touch
}

.sm-dox {
    background-color: #51637b;

}

.sm-dox a, .sm-dox a:focus, .sm-dox a:hover, .sm-dox a:active {
    font-family: "ALibSerif";
    font-size: 13px;
    font-weight: bold;
    line-height: 30px;
    text-decoration: none;
    color: white;

    outline: 0
}

.sm-dox a:hover {
    color: white;
    text-decoration: underline;
}



.sm-dox a.current {
    font-weight: bold;
    color: #9E2544;
    text-shadow: rgba(200, 200, 200, 0.6) 1px 2px 2px;
    background-color: #CCCCCC;
}

.sm-dox a.disabled {
    color: #bbb
}

.sm-dox a span.sub-arrow {
    position: absolute;
    top: 50%;
    margin-top: -14px;
    left: auto;
    right: 3px;
    width: 28px;
    height: 28px;
    overflow: hidden;
    font: bold 12px/28px monospace !important;
    text-align: center;
    text-shadow: none;
    background: rgba(255, 255, 255, 0.5);
    -moz-border-radius: 0px;
    -webkit-border-radius: 0px;
    border-radius: 0px
}

.sm-dox a.highlighted span.sub-arrow:before {
    display: block;
    content: '-'
}

.sm-dox > li:first-child > a, .sm-dox > li:first-child > :not(ul) a {
    -moz-border-radius: 0px 0px 0 0;
    -webkit-border-radius: 0px;
    border-radius: 0px 0px 0 0
}

.sm-dox > li:last-child > a, .sm-dox > li:last-child > *:not(ul) a, .sm-dox > li:last-child > ul, .sm-dox > li:last-child > ul > li:last-child > a, .sm-dox > li:last-child > ul > li:last-child > *:not(ul) a, .sm-dox > li:last-child > ul > li:last-child > ul, .sm-dox > li:last-child > ul > li:last-child > ul > li:last-child > a, .sm-dox > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a, .sm-dox > li:last-child > ul > li:last-child > ul > li:last-child > ul, .sm-dox > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > a, .sm-dox > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a, .sm-dox > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul, .sm-dox > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > a, .sm-dox > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a, .sm-dox > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul {
    -moz-border-radius: 0 0 0px 0px;
    -webkit-border-radius: 0;
    border-radius: 0 0 0px 0px
}

.sm-dox > li:last-child > a.highlighted, .sm-dox > li:last-child > *:not(ul) a.highlighted, .sm-dox > li:last-child > ul > li:last-child > a.highlighted, .sm-dox > li:last-child > ul > li:last-child > *:not(ul) a.highlighted, .sm-dox > li:last-child > ul > li:last-child > ul > li:last-child > a.highlighted, .sm-dox > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a.highlighted, .sm-dox > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > a.highlighted, .sm-dox > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a.highlighted, .sm-dox > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > a.highlighted, .sm-dox > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > ul > li:last-child > *:not(ul) a.highlighted {
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    border-radius: 0
}

.sm-dox ul {
    background: rgba(162, 162, 162, 0.1)
}

.sm-dox ul a, .sm-dox ul a:focus, .sm-dox ul a:hover, .sm-dox ul a:active {
    font-size: 12px;
    border-left: 8px solid transparent;
    line-height: 36px;
    text-shadow: none;
    background-color: #51637b;
    color: white;
    background-image: none
}

.sm-dox ul a:hover {
    color: white;
    text-shadow: 0 1px 1px black
}

.sm-dox ul ul a, .sm-dox ul ul a:hover, .sm-dox ul ul a:focus, .sm-dox ul ul a:active {
    border-left: 16px solid transparent
}

.sm-dox ul ul ul a, .sm-dox ul ul ul a:hover, .sm-dox ul ul ul a:focus, .sm-dox ul ul ul a:active {
    border-left: 24px solid transparent
}

.sm-dox ul ul ul ul a, .sm-dox ul ul ul ul a:hover, .sm-dox ul ul ul ul a:focus, .sm-dox ul ul ul ul a:active {
    border-left: 32px solid transparent
}

.sm-dox ul ul ul ul ul a, .sm-dox ul ul ul ul ul a:hover, .sm-dox ul ul ul ul ul a:focus, .sm-dox ul ul ul ul ul a:active {
    border-left: 40px solid transparent
}

.classindex dl.even {
	background-color: var(--index-even-item-bg-color);
}

.classindex dl.odd {
	background-color: var(--index-even-item-bg-color);
}
.directory tr.odd {
	padding-left: 6px;
	background-color: var(--index-even-item-bg-color);
}

.directory tr.even {
	padding-left: 6px;
	background-color: var(--index-even-item-bg-color);
}
@media (min-width: 768px) {
    .sm-dox ul {
        position: absolute;
        width: 12em
    }

    .sm-dox li {
        float: left
    }

    .sm-dox.sm-rtl li {
        float: right
    }

    .sm-dox ul li, .sm-dox.sm-rtl ul li, .sm-dox.sm-vertical li {
        float: none
    }

    .sm-dox a {
        white-space: nowrap
    }

    .sm-dox ul a, .sm-dox.sm-vertical a {
        white-space: normal
    }

    .sm-dox .sm-nowrap > li > a, .sm-dox .sm-nowrap > li > :not(ul) a {
        white-space: nowrap;
        color: white;
        background-color: #51637b;
    }

    .sm-dox {
        line-height: 30px
    }

    .sm-dox a span.sub-arrow {
        top: 50%;
        margin-top: -2px;
        right: 12px;
        width: 0;
        height: 0;
        border-width: 4px;
        border-style: solid dashed dashed dashed;
        border-color: white transparent transparent transparent;
        background: transparent;
        -moz-border-radius: 0;
        -webkit-border-radius: 0;
        border-radius: 0;
        color: white;
    }

    .sm-dox a, .sm-dox a:focus, .sm-dox a:active, .sm-dox a:hover, .sm-dox a.highlighted {
        padding: 0px 12px 2px 12px;
        background-position: right;
        -moz-border-radius: 0 !important;
        -webkit-border-radius: 0;
        border-radius: 0 !important
    }


    .sm-dox a:hover span.sub-arrow {
        border-color: white transparent transparent transparent
        color: white;
    }

    .sm-dox a.has-submenu {
        padding-right: 24px
    }

    .sm-dox li {
        border-top: 0
    }

    .sm-dox > li > ul:before, .sm-dox > li > ul:after {
        content: '';
        position: absolute;
        top: -18px;
        left: 30px;
        width: 0;
        height: 0;
        overflow: hidden;
        border-width: 9px;
        border-style: dashed dashed solid dashed;
        border-color: transparent transparent white transparent
    }

    .sm-dox > li > ul:after {
        top: -16px;
        left: 31px;
        border-width: 8px;
        border-color: transparent transparent white transparent
    }

    .sm-dox ul {
        border: 1px solid #bbb;
        padding: 5px 0;
        background: #51637b;
        -moz-border-radius: 0px !important;
        -webkit-border-radius: 0px;
        border-radius: 0px !important;
        -moz-box-shadow: 0 0px 9px rgba(0, 0, 0, 0.2);
        -webkit-box-shadow: 0 5px 9px rgba(0, 0, 0, 0.2);
        box-shadow: 0 5px 9px rgba(0, 0, 0, 0.2)
    }

    .sm-dox ul a span.sub-arrow {
        right: 8px;
        top: 50%;
        margin-top: -5px;
        border-width: 5px;
        border-color: transparent transparent transparent white;
        border-style: dashed dashed dashed solid
    }

    .sm-dox ul a, .sm-dox ul a:hover, .sm-dox ul a:focus, .sm-dox ul a:active, .sm-dox ul a.highlighted {
        background-image: none;
        border: 0 !important;
        color: white;
        background-image: none
    }

    .sm-dox ul a:hover {
        color: white;
        text-decoration: underline;
    }

    .sm-dox ul a.current {
        color: #9E2544;
        text-shadow: rgba(200, 200, 200, 0.6) 1px 2px 2px;
    }

    .sm-dox ul a:hover span.sub-arrow {
        border-color: transparent transparent transparent white
    }

    .sm-dox span.scroll-up, .sm-dox span.scroll-down {
        position: absolute;
        display: none;
        visibility: hidden;
        overflow: hidden;
        background: #51637b;
        color: white;
        height: 36px
    }

    .sm-dox span.scroll-up:hover, .sm-dox span.scroll-down:hover {
        background: #51637b
    }

    .sm-dox span.scroll-up:hover span.scroll-up-arrow, .sm-dox span.scroll-up:hover span.scroll-down-arrow {
        border-color: transparent transparent #d23600 transparent
    }

    .sm-dox span.scroll-down:hover span.scroll-down-arrow {
        border-color: #d23600 transparent transparent transparent
    }

    .sm-dox span.scroll-up-arrow, .sm-dox span.scroll-down-arrow {
        position: absolute;
        top: 0;
        left: 50%;
        margin-left: -6px;
        width: 0;
        height: 0;
        overflow: hidden;
        border-width: 6px;
        border-style: dashed dashed solid dashed;
        border-color: transparent transparent #555 transparent
    }

    .sm-dox span.scroll-down-arrow {
        top: 8px;
        border-style: solid dashed dashed dashed;
        border-color: #51637b transparent transparent transparent
    }

    .sm-dox.sm-rtl a.has-submenu {
        padding-right: 12px;
        padding-left: 24px
    }

    .sm-dox.sm-rtl a span.sub-arrow {
        right: auto;
        left: 12px
    }

    .sm-dox.sm-rtl.sm-vertical a.has-submenu {
        padding: 10px 20px
    }

    .sm-dox.sm-rtl.sm-vertical a span.sub-arrow {
        right: auto;
        left: 8px;
        border-style: dashed solid dashed dashed;
        border-color: transparent white transparent transparent
    }

    .sm-dox.sm-rtl > li > ul:before {
        left: auto;
        right: 30px
    }

    .sm-dox.sm-rtl > li > ul:after {
        left: auto;
        right: 31px
    }

    .sm-dox.sm-rtl ul a.has-submenu {
        padding: 10px 20px !important
    }

    .sm-dox.sm-rtl ul a span.sub-arrow {
        right: auto;
        left: 8px;
        border-style: dashed solid dashed dashed;
        border-color: transparent white transparent transparent
    }

    .sm-dox.sm-vertical {
        padding: 10px 0;
        -moz-border-radius: 0px;
        -webkit-border-radius: 0px;
        border-radius: 0px
    }

    .sm-dox.sm-vertical a {
        padding: 10px 20px
    }

    .sm-dox.sm-vertical a:hover, .sm-dox.sm-vertical a:focus, .sm-dox.sm-vertical a:active, .sm-dox.sm-vertical a.highlighted {
        background: #51637b
    }

    .sm-dox.sm-vertical a.disabled {
        background-image: none;//url("tab_b.png")
    }

    .sm-dox.sm-vertical a span.sub-arrow {
        right: 8px;
        top: 50%;
        margin-top: -5px;
        border-width: 5px;
        border-style: dashed dashed dashed solid;
        border-color: transparent transparent transparent white
    }

    .sm-dox.sm-vertical > li > ul:before, .sm-dox.sm-vertical > li > ul:after {
        display: none
    }

    .sm-dox.sm-vertical ul a {
        padding: 10px 20px
    }

    .sm-dox.sm-vertical ul a:hover, .sm-dox.sm-vertical ul a:focus, .sm-dox.sm-vertical ul a:active, .sm-dox.sm-vertical ul a.highlighted {
        background: white
    }

    .sm-dox.sm-vertical ul a.disabled {
        background: #fff
    }
}

/* ######################## A-Worx header menu #########################*/
.alib-menutable {
}

.alib-menutable td  {

    width: auto;
    white-space: nowrap;
}

.alib-menutable td:last-child {
  width:100%;
  text-align: right;
  background-image: url('GitHub-Mark-Light-64px.png');
  background-repeat: no-repeat;
  background-size: 22px 22px;
  background-position: right;

}

.alib-menu {
    font-family: "ALibSerif";
    font-size: 15px;
    font-weight: bold;
    text-shadow: rgba(0, 0, 0, 0.6) 0px 2px 2px;
    padding: 5px 30px 25px 10px;

    color: white;

}

.alib-menu_hl {
    font-family: "ALibSerif";
    font-size: 15px;
    font-weight: bold;
    text-shadow: rgba(255, 255, 255, 0.6) 0px 2px 2px;
    padding: 5px 15px 25px 15px;

    background-image: none;
    background-color: #51637b;

    color: #9E2544;
}

/* Make the hamburger-menu button white */
.main-menu-btn-icon{ background: white;}
.main-menu-btn-icon::before{  background: white; }
.main-menu-btn-icon::after{  background: white; }


/*####################### General Doxygen ########################*/
/* The standard CSS for doxygen 1.8.4 */

body, table, div, p, dl {
    font-family: "ALibSerif";
}

/* @group Heading Levels */

h1.groupheader {
    font-size: 180%;
}

.title {
    font-family: "ALibSansBold";
    font-size: 160%;
    font-weight: bold;
    margin: 0px 8px;
}

h2.groupheader {
    border-bottom: none;
    color: black;
    font-size: 150%;
    font-weight: 500;
    margin: 25px 0px 0px 0px;
    padding: 0px;
    width: 100%;
}

h3.groupheader {
    font-size: 120%;
}

h1, h2, h3, h4, h5, h6 {
    font-family: "ALibSansBold";
    color: black;
    font-weight: 500;

    -webkit-transition: text-shadow 0.5s linear;
    -moz-transition: text-shadow 0.5s linear;
    -ms-transition: text-shadow 0.5s linear;
    -o-transition: text-shadow 0.5s linear;
    transition: text-shadow 0.5s linear;
}

h1 {
    font-size: 170%;
    padding-top: 25px;
    margin-left: -8px;
}

h2 {
    font-size: 150%;
    padding-top: 15px;
    margin-left: -8px;

}

h3 {
    font-size: 140%;
    margin-bottom: -10px;
}

h4 {
    font-size: 110%;
    margin-bottom: -10px;
}


h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow {
    text-shadow: 0 0 15px cyan;
}

dt {
    font-weight: bold;
    font-size: ;
}

div.multicol {
    -moz-column-gap: 1em;
    -webkit-column-gap: 1em;
    -moz-column-count: 3;
    -webkit-column-count: 3;
}

p.startli, p.startdd, p.starttd {
    margin-top: 2px;
}

p.endli {
    margin-bottom: 0px;
}

p.enddd {
    margin-bottom: 4px;
}

p.endtd {
    margin-bottom: 2px;
}

/* @end */

caption {
    font-weight: bold;
}

span.legend {
        font-size: 70%;
        text-align: center;
}

h3.version {
        font-size: 120%;
        text-align: center;
}

div.qindex, div.navtab{
    background-color: #EBEFF6;
    border: 1px solid #A3B4D7;
    text-align: center;
}

div.qindex, div.navpath {
    width: 100%;
    line-height: 140%;
}

div.navtab {
    margin-right: 15px;
}

/* @group Link Styling */

a {
    font-family: "ALibSerif";
    font-size: 100%;
    text-decoration: none;
    color: #7e0015;
}

.contents a:visited {
color: #9E2544;
}

a:hover {
    text-decoration: underline;
}

a.qindex {
    font-weight: bold;
}

a.qindexHL {
    font-weight: bold;
    background-color: #9CAFD4;
    color: #ffffff;
    border: 1px double #869DCA;
}

.contents a.qindexHL:visited {
        color: #ffffff;
}

a.el {
    font-family: "ALibSerif";
    font-weight: normal;
}

a.elRef {
}

a.code, a.code:visited {
    color: rgb(51, 102, 204);
}

a.codeRef, a.codeRef:visited {
    color: rgb(51, 102, 204);
}

/* @end */

a.code
{
    font-family: "ALibCode", monospace;
    font-size: 100%;
    white-space: nowrap;
    vertical-align: unset;
}

code
{
    font-family: "Courier New", monospace;
    font-style: italic;
    font-weight: bolder;
    font-size: 100%;
    white-space: nowrap;
    color: #51637b;
    vertical-align: unset;
}

/*------ Source sample ------- */
dl.el {
    margin-left: -1cm;
}

pre.fragment {
    border: solid 1px rgb(221, 221, 221);
    border-radius: 3px;
    background-color: rgb(248, 248, 248);
    padding: 6px 10px;
    overflow: auto;
    word-wrap: break-word;

    font-family: "ALibCode", monospace;
    font-size:  80%;
    line-height: 110%;
    color: #000030;
}

div.fragment {
    padding: 6px 10px;
    margin: 15px 0px;
    border: solid 1px rgb(221, 221, 221);
    border-radius: 3px;

    background-color: rgb(248, 248, 248);
    color: #000030;
    font-family: "ALibCode", monospace;
    font-size:  90%;
    line-height: 110%;
}

div.line {
    font-family: "ALibCode", monospace;
    font-size:  90%;
    line-height: 110%;
    color: #000030;
    text-wrap: unrestricted;
    white-space: -moz-pre-wrap; /* Moz */
    white-space: -pre-wrap;     /* Opera 4-6 */
    white-space: -o-pre-wrap;   /* Opera 7 */
    white-space: pre-wrap;      /* CSS3  */
    word-wrap: break-word;      /* IE 5.5+ */
    text-indent: 0px;
    padding-left: 5px;
    padding-bottom: 0px;
    margin: 0px;
    -webkit-transition-property: background-color, box-shadow;
    -webkit-transition-duration: 0.5s;
    -moz-transition-property: background-color, box-shadow;
    -moz-transition-duration: 0.5s;
    -ms-transition-property: background-color, box-shadow;
    -ms-transition-duration: 0.5s;
    -o-transition-property: background-color, box-shadow;
    -o-transition-duration: 0.5s;
    transition-property: background-color, box-shadow;
    transition-duration: 0.5s;
}

div.line.glow {
    background-color: cyan;
    box-shadow: 0 0 10px cyan;
}


span.lineno {
    padding-right: 4px;
    text-align: right;
    border-right: 2px solid #0F0;
    background-color:  #E8E8E8;
        white-space: pre;
}
span.lineno a {
    background-color: #D8D8D8;
}

span.lineno a:hover {
    background-color: #C8C8C8;
}

div.ah {
    background-color: black;
    font-weight: bold;
    color: #ffffff;
    margin-bottom: 3px;
    margin-top: 3px;
    padding: 0.2em;
    border: solid thin #333;
    border-radius: 0.5em;
    -webkit-border-radius: .5em;
    -moz-border-radius: .5em;
    box-shadow: 2px 2px 3px #999;
    -webkit-box-shadow: 2px 2px 3px #999;
    -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444));
    background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000);
}

div.groupHeader {
    margin-left: 0px;
    margin-top: 9px;
    margin-bottom: 4.7px;

    font-size: 19px;
    font-weight: normal;
}

div.groupText {
    margin-left: 16px;
    font-style: italic;
}

body
{
    background-color: white;
    color: black;
    margin: 0;

}


div.textblock
{
    margin-left: 8px;
    margin-right: 8px;
}

table.markdownTable
{
    margin-left: 8px;
    margin-right: 8px;
}

pre.fragment
{
    margin-top: 15px;
    margin-left: 8px;
    margin-right: 8px;
}

address.footer {
    text-align: right;
    padding-right: 12px;

    position: absolute;
    height: 25px;
    width: 100%;
    right: 0px;
    bottom: 0px;
}

img.footer
{
    border: 0px;
    vertical-align: middle;
}

hr.footer
{
    height: 0px;
    border-top: 3px solid #4c7cc0;

    position: absolute;
    height: 3px;
    width: 100%;
    right: 0px;
    bottom: 12px;
}

td.indexkey {
    background-color: #EBEFF6;
    font-weight: bold;
    border: 1px solid #C4CFE5;
    margin: 2px 0px 2px 0;
    padding: 2px 10px;
    white-space: nowrap;
    vertical-align: top;
}

td.indexvalue {
    background-color: #EBEFF6;
    border: 1px solid #C4CFE5;
    padding: 2px 10px;
    margin: 2px 0px;
}

tr.memlist {
    background-color: #EEF1F7;
}

p.formulaDsp {
    text-align: center;
}

img.formulaDsp {

}

img.formulaInl {
    vertical-align: middle;
}

div.center {
    text-align: center;
    margin-top: 0px;
    margin-bottom: 0px;
    padding: 0px;
}

div.center img {
    border: 0px;
}


/* AWorx dox uses <span></span> to mark parameter names in texts.*/
span {
    font-family: "ALibCode", monospace;
    font-weight: bold;
    font-style: italic;
    font-size: 100%;
    vertical-align: middle;
    white-space: nowrap;
    color: #bc8a0d;
}

/* @group Code Colorization */

span.keyword {
    color: #000040;
    font-weight: normal;
}

span.keywordtype {
    color: #604020;
    font-weight: normal;
}

span.keywordflow {
    color: #e08000;
    font-weight: normal;
}

span.comment {
    color: #208020
}

span.preprocessor {
    color: #806020
}

span.stringliteral {
    color: #FF2020;
    font-weight: normal;
}

span.charliteral {
    color: #FF2020;
    font-weight: normal;
}

span.vhdldigit {
    color: #500000
}

span.vhdlchar {
    color: #000000
}

span.vhdlkeyword {
    color: #700070
}

span.vhdllogic {
    color: #ff0000
}

blockquote {
        background-color: #F7F8FB;
        border-left: 2px solid #9CAFD4;
        margin: 0 24px 0 4px;
        padding: 0 12px 0 16px;
}

/* @end */

/*
.search {
    color: #003399;
    font-weight: bold;
}

form.search {
    margin-bottom: 0px;
    margin-top: 0px;
}

input.search {
    font-size: 75%;
    color: #000080;
    font-weight: normal;
    background-color: #e8eef2;
}
*/

td.tiny {
    font-size: 75%;
}

.dirtab {
    padding: 4px;
    border-collapse: collapse;
    border: 1px solid #A3B4D7;
}

th.dirtab {
    background: #EBEFF6;
    font-weight: bold;
}

hr {
    height: 0px;
    border: none;
    //border-top: 1px solid #4A6AAA;
    border-top: 1px solid #444;
}


/* @group Member Descriptions */

table.memberdecls {
    border-spacing: 0px;
    padding: 0px;
}

.memberdecls td, .fieldtable tr {
    -webkit-transition-property: background-color, box-shadow;
    -webkit-transition-duration: 0.5s;
    -moz-transition-property: background-color, box-shadow;
    -moz-transition-duration: 0.5s;
    -ms-transition-property: background-color, box-shadow;
    -ms-transition-duration: 0.5s;
    -o-transition-property: background-color, box-shadow;
    -o-transition-duration: 0.5s;
    transition-property: background-color, box-shadow;
    transition-duration: 0.5s;
}

.memberdecls td.glow, .fieldtable tr.glow {
    background-color: cyan;
    box-shadow: 0 0 15px cyan;
}

.mdescLeft, .mdescRight,
.memItemLeft, .memItemRight,
.memTemplItemLeft, .memTemplItemRight, .memTemplParams {
    background-color: #F8F8FF;
    border: none;
    margin: 4px;
    padding: 1px 0 0 8px;
    font-family: "ALibCode", monospace;
}

.mdescLeft, .mdescRight {
    //padding: 0px 8px 4px 8px;
    padding: 0px 8px 4px 24px;
    //color: #555;
    color: black;

    font-family: "ALibSerif";
    font-style: normal;
}

.memSeparator {
    border-bottom: none;
    line-height: 8px;
    margin: 0px;
    padding: 0px;
}

.memItemLeft, .memTemplItemLeft {
        white-space: nowrap;
}

.memItemRight {
    width: 100%;
}

.memTemplParams {
        white-space: nowrap;
    font-size: 100%;
    font-weight: bold;
    color: rgb(40, 20, 130); // template blue
}

/* @end */

/* @group Member Details */

/* Styles for detailed member documentation */

/* start:  new with doxygen 1.8.13 */
.memtitle {
    visibility: hidden;
    border-top:     0px hidden;
    border-left:    0px hidden;
    border-right:   0px hidden;
    border-top-right-radius: 0px;
    border-top-left-radius:  0px;
    margin-bottom: -1px;
    background-color: #DAE5FA;
    line-height: 1.25;
    font-weight: 300;
    float: left;

    margin-top: 0px;
    border: none;
    padding: 6px 0px 6px 0px;

    font-weight: bold;
    text-shadow: none;
    background-image: none;
    background-color: rgb(235, 238, 245);

    /* opera specific markup */
    box-shadow: none;//5px 5px 5px rgba(0, 0, 0, 0.15);

    /* firefox specific markup */
    -moz-box-shadow: none;
    -moz-border-radius-topright: 0px;
    -moz-border-radius-topleft: 0px;

    /* webkit specific markup */
    -webkit-box-shadow: none;
    -webkit-border-top-right-radius: 0px;
    -webkit-border-top-left-radius: 0px;

}
/* end:  new with doxygen 1.8.13 */

.memtemplate {
    font-family: "ALibCode", monospace;
    font-size: 100%;
    color: black;
    font-weight: normal;
    margin-left: 1px;
}

.memnav {
    background-color: #EBEFF6;
    border: 1px solid #A3B4D7;
    text-align: center;
    margin: 2px;
    margin-right: 15px;
    padding: 2px;
}

.mempage {
    width: 100%;
}

.memitem {
    padding: 0;
    margin-bottom: 0px;
    margin-right: 5px;
    -webkit-transition: box-shadow 0.5s linear;
    -moz-transition: box-shadow 0.5s linear;
    -ms-transition: box-shadow 0.5s linear;
    -o-transition: box-shadow 0.5s linear;
    transition: box-shadow 0.5s linear;
    display: table !important;
    width: 100%;
}

.memitem.glow {
         box-shadow: 0 0 15px cyan;
}

.memname {
       font-family: "ALibCode", monospace;
       font-weight: bold;
       font-size: 110%;
       color: #2f3a70;
       margin-left: 0px;
}

.memname td {
    vertical-align: middle;
}



.memproto, dl.reflist dt {
    border: none;
    padding: 0px;
    font-weight: bold;
    text-shadow: none;
    background-image: none;
    background-color: rgb(235, 238, 245);

    /* opera specific markup */
    box-shadow: none;//5px 5px 5px rgba(0, 0, 0, 0.15);
    border-top-right-radius: 0px;
    border-top-left-radius: 0px;

    /* firefox specific markup */
    -moz-box-shadow: none;
    -moz-border-radius-topright: 0px;
    -moz-border-radius-topleft: 0px;

    /* webkit specific markup */

    -webkit-box-shadow: none;
    -webkit-border-top-right-radius: 0px;
    -webkit-border-top-left-radius: 0px;
}

.memdoc, dl.reflist dd {
    border: none;
        //border-bottom: 1px solid #A8B8D9;
        //border-left: 1px solid #A8B8D9;
        //border-right: 1px solid #A8B8D9;
        padding: 6px;
        background-color: #FBFCFD;
        border-top-width: 0;
        //background-image:url('nav_g.png');
       background-image: none;
        //background-repeat:repeat-x;
        background-color: #FFFFFF;
        /* opera specific markup */
        //border-bottom-left-radius: 4px;
        //border-bottom-right-radius: 4px;
        //box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
        border-bottom-left-radius: 0px;
       border-bottom-right-radius: 0px;
        box-shadow: none;
        /* firefox specific markup */
        //-moz-border-radius-bottomleft: 4px;
        //-moz-border-radius-bottomright: 4px;
        //-moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
        -moz-border-radius-bottomleft: 0px;
        -moz-border-radius-bottomright: 0px;
        -moz-box-shadow: none;
        /* webkit specific markup */
        //-webkit-border-bottom-left-radius: 4px;
        //-webkit-border-bottom-right-radius: 4px;
        //-webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
        -webkit-border-bottom-left-radius: 0px;
        -webkit-border-bottom-right-radius: 0px;
        -webkit-box-shadow: none;
}

dl.reflist dt {
        padding: 5px;
}

dl.reflist dd {
        margin: 0px 0px 10px 0px;
        padding: 5px;
}

.paramkey {
    text-align: right;
}

.paramtype {
    white-space: nowrap;
    color: black;
}

.paramname {
    font-family: "ALibCode", monospace;
    font-size: 100%;
    font-weight: bold;
    font-style: italic;
    vertical-align: middle;
    white-space: nowrap;
    color: #bc8a0d
}
.paramname em {
    font-family: "ALibCode", monospace;
    font-weight: bold;
    vertical-align: middle;
    color: #bc8a0d;
}
.paramname code {
    line-height: 14px;
}

.params, .retval, .exception, .tparams {
    margin-left: 0px;
    padding-left: 0px;
}

.params .paramname, .retval .paramname {
    font-family: "ALibCode", monospace;
    color: #bc8a0d;
    font-size: 100%;
}

.params .paramtype {
    font-style: italic;
    vertical-align: middle;

}

.params .paramdir {
    font-family: "ALibCode", monospace;
    vertical-align: middle;
}

table.mlabels {
    border-spacing: 0px;
}

td.mlabels-left {
    width: 100%;
    padding: 0px;
}

td.mlabels-right {
    vertical-align: middle;
    padding: 0px;
    white-space: nowrap;
}

span.mlabels {
    margin-left: 8px;
    vertical-align: middle;

}

span.mlabel {
    background-color: #728DC1;
    border-top:1px    solid #5373B4;
    border-left:1px   solid #5373B4;
    border-right:1px  solid #C4CFE5;
    border-bottom:1px solid #C4CFE5;
    border: none;
    text-shadow: none;
    //color: white;

    margin-right: 4px;
    padding: 1px 4px;
    border-radius: 2px;
    font-size: 120%;
    white-space: nowrap;
    vertical-align: middle;
}



/* @end */

/* these are for tree view when not used as main index */

div.directory {
        margin: 10px 0px;
        border-top: 1px solid #A8B8D9;
        border-bottom: 1px solid #A8B8D9;
        width: 100%;
}

.directory table {
        border-collapse:collapse;
}

.directory td {
        margin: 0px;
        padding: 0px;
    vertical-align: top;
}

.directory td.entry {
        white-space: nowrap;
        padding-right: 6px;
    padding-top: 3px;
}

.directory td.entry a {
        outline:none;
}

.directory td.entry a img {
        border: none;
}

.directory td.desc {
        width: 100%;
        padding-left: 6px;
    padding-right: 6px;
    padding-top: 3px;
    border-left: 1px solid rgba(0,0,0,0.05);
}

.directory tr.even {
    padding-left: 6px;
    background-color: #F7F8FB;
}

.directory img {
    vertical-align: -30%;
}

.directory .levels {
        white-space: nowrap;
        width: 100%;
        text-align: right;
        font-size: 9pt;
}

.directory .levels span {
        cursor: pointer;
        padding-left: 2px;
        padding-right: 2px;
    color: #3D578C;
}

div.dynheader {
        margin-top: 8px;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

address {
    font-style: normal;
    color: #2A3D61;
}

table.doxtable {
    border-collapse:collapse;
        margin-top: 4px;
        margin-bottom: 4px;
}

table.doxtable td, table.doxtable th {
    border: 1px solid #2D4068;
    padding: 3px 7px 2px;
}

table.doxtable th {
    background-color: #2f3a48;
    color: #FFFFFF;
    font-size: 110%;
    padding-bottom: 4px;
    padding-top: 5px;
}

table.fieldtable {
        /*width: 100%;*/
        margin-bottom: 10px;
        border: 1px solid #A8B8D9;
        border-spacing: 0px;
        -moz-border-radius: 0px;
        -webkit-border-radius: 0px;
        border-radius: 0px;
        -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px;
        -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
        box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
}

.fieldtable td, .fieldtable th {
        padding: 3px 7px 2px;
}

.fieldtable td.fieldtype, .fieldtable td.fieldname {
        white-space: nowrap;
        border-right: 1px solid #A8B8D9;
        border-bottom: 1px solid #A8B8D9;
        vertical-align: top;
}

.fieldtable td.fieldname {
        padding-top: 3px;
}

.fieldtable td.fielddoc {
        border-bottom: 1px solid #A8B8D9;
        /*width: 100%;*/
}

.fieldtable td.fielddoc p:first-child {
        margin-top: 0px;
}

.fieldtable td.fielddoc p:last-child {
        margin-bottom: 2px;
}

.fieldtable tr:last-child td {
        border-bottom: none;
}

.fieldtable th {
        background-image: none;
        font-size: 90%;
        color: white;
        background-color: #2f3a48;
        padding-bottom: 4px;
        padding-top: 5px;
        text-align:left;
        -moz-border-radius-topleft: 0px;
        -moz-border-radius-topright: 0px;
        -webkit-border-top-left-radius: 0px;
        -webkit-border-top-right-radius: 0px;
        border-top-left-radius: 0px;
        border-top-right-radius: 0px;
        border-bottom: 1px solid #A8B8D9;
}


.tabsearch {
    top: 0px;
    left: 10px;
    height: 36px;
    background-image: url('tab_b.png');
    z-index: 101;
    overflow: hidden;
    font-size: 13px;
}

.navpath {
    border: none;
    line-height: 20px;
}

.navpath ul
{
    background-image: none;
    background-color: #51637b;
    border:     none;
    font-size:  11px;
    color:      #8AA0CC;
    border:     none;
    overflow:   hidden;
    margin:     0px;
    padding:    1px;
    padding-bottom: 3px;
    line-height:11px;
    height:      13px;
}


.navpath li
{
    list-style-type:none;
    float:left;
    padding-left:30px;
    padding-right:10px;
    background-image:url('aworx_navelem.png');
    background-repeat:no-repeat;
    background-position: 12px 36%;
    color:#364D7C;
}

.navpath li.navelem a
{
    display:block;
    text-decoration: none;
    outline: none;
    font-family: "ALibSerif";
    background-image: none;
    color: white;
    text-shadow: none;
    height: 11px
}

.navpath li.navelem:last-child a
{
    display:block;
    text-decoration: none;
    outline: none;
    font-family: "ALibSerif";
    text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9);
    background-image: none;
    color: #9E2544;
    text-shadow: rgba(200, 200, 200, 0.6) 1px 2px 2px;
}

.navpath li.navelem a:hover {
    color: white;
    text-shadow: none;
    text-decoration: underline;
}

.navpath li.navelem:last-child a:hover {
    color: #9E2544;
    text-shadow: rgba(200, 200, 200, 0.6) 1px 2px 2px;
    text-decoration: underline;
}




.navpath li.footer {
        list-style-type:none;
        float:right;
        padding-left:10px;
        padding-right:15px;
        //background-image:none;
        //background-repeat:no-repeat;
        //background-position:right;
        color:#364D7C;
        font-size: 8pt;
}



div.summary
{
    float: right;
    font-size: 8pt;
    padding-right: 5px;
    width: auto;
    text-align: right;
}

div.summary a
{
    white-space: nowrap;
}

div.ingroups
{
    font-size: 8pt;
    width: 50%;
    text-align: left;
}

div.ingroups a
{
    white-space: nowrap;
}

div.header
{
    background-image: none;
    margin:  0px;
    border: none;
}

div.headertitle
{
    padding: 5px 1px 5px 1px;
    background-color: #CCCCCC;
    white-space: nowrap;
}

dl
{
        padding: 0 0 0 10px;
}

/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.to-do, dl.test, dl.bug */
dl.section
{
    font-family: "ALibSans";
    font-weight: normal;
    margin-left: 0px;
    padding-left: 0px;
}

dl.note
{
    font-family: "ALibSansBold";
       margin-left: 0px;
       padding: 6px 0px 3px 8px;
       border-left:  10px solid;
       border-color: #D0C000;
}

div.alib-key-takeaways
{
       font-family: "ALibSansBold";
       font-size: 120%;
       border-radius: 4px;
       margin-left: 0px;
       padding: 6px 0px 3px 8px;
       border-left:  10px solid;
       border-color: #506eff;
       background-color: #a0d2ff
}
div.alib-key-takeaways-inner
{
       font-family: "ALibSans";
       margin-left: 18px;
       margin-bottom: 6px;
       margin-left: 18px;
}

dl.warning, dl.attention
{
    font-family: "ALibSansBold";
    margin-left: 0px;
    padding: 6px 0px 3px 8px;

    //border-left:4px solid;
    border-left: 10px solid;
    border-color: #FF0000;
}

dl.pre, dl.post, dl.invariant
{
    font-family: "ALibSansBold";
    margin-left:-7px;
    padding-left: 3px;
    border-left:4px solid;
    border-color: #00D000;
}

dl.deprecated
{
    font-family: "ALibSansBold";
    margin-left: 0px;
    padding: 6px 0px 3px 8px;
    border-left: 6px solid;
    border-color: #505050;
}

dl.deprecated dt a.el
{
    font-family: "ALibSansBold";
}

dl.todo
{
    margin-left: 0px;
    padding: 6px 0px 3px 8px;
    border-left:4px solid;
    border-color: #00C0E0;
}

dl.test
{
    margin-left:-7px;
    padding-left: 3px;
    border-left:4px solid;
    border-color: #3030E0;
}

dl.bug
{
    margin-left:-7px;
    padding-left: 3px;
    border-left:4px solid;
    border-color: #C08050;
}

dl.section dd {
    font-family: "ALibSans";

    margin-bottom: 6px;
    margin-left: 18px;
}


#projectlogo
{
    text-align: center;
    border-collapse: separate;
    vertical-align: top;
    horizontal-align: left;
    padding-top: 4px;
}

#projectlogo img
{
}

#projectname
{
    font-family: "ALibProject";
    font-weight: bold;
    margin: 0px;
    padding-top:   0px;
    padding-left: 30px;
    horizontal-align: right;
    font-size: 330%
}

#projectbrief
{
    font-family: "ALibSerif";
    margin: 0px;
    padding: 50px;
}

#projectnumber
{
    font-family: "ALibSerif";
    margin: 0px;
    padding: 0px;
    padding-right: 5px;
    padding-bottom: 5px;
    vertical-align: middle;
    color: black;
    font-size: 100%
}

#titlearea
{
    padding: 0px;
    margin: 0px;
    width: 100%;
    height: 60px;
    border-bottom: 1px solid #5373B4;
    color: #9E2544;
}

.image
{
        text-align: center;
}

.dotgraph
{
        text-align: center;
}

.mscgraph
{
        text-align: center;
}

.caption
{
    font-weight: bold;
    margin: 20px;
}

div.zoom
{
    border: 1px solid #90A5CE;
}

dl.citelist {
        margin-bottom:50px;
}

dl.citelist dt {
        color:#334975;
        float:left;
        font-weight:bold;
        margin-right:10px;
        padding:5px;
}

dl.citelist dd {
        margin:2px 0;
        padding:5px 0;
}

div.toc {
        padding: 14px 25px;
        background-color: #F4F6FA;
        border: 1px solid #D8DFEE;
        border-radius: 3px 3px 3px 3px;
        float: right;
        height: auto;
        margin: 0 20px 10px 10px;
        width: 40%;
}

div.toc li {
        background: url("bdwn.png") no-repeat scroll 0 5px transparent;
        font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif;
        margin-top: 5px;
        padding-left: 10px;
        padding-top: 2px;
}

div.toc h3 {
    font: bold 12px/1.2
    font-family: "ALibSerif";
    font-size: 150%;
    text-align: center;
    color: #4665A2;
    border-bottom: 0 none;
    margin: 0;
}

div.toc ul {
        list-style: none outside none;
        border: medium none;
        padding: 0px;
}

div.toc li.level1 {
        margin-left: 0px;
        margin-top: 12px;
        font-size: 100%;
        font-weight: bold;
}

div.toc li.level2 {
        margin-left: 15px;
        font-size: 90%;
}

div.toc li.level3 {
        margin-left: 25px;
        font-size: 80%;
}

div.toc li.level4 {
        margin-left: 40px;
        font-size: 70%;
}

.inherit_header {
        font-weight: bold;
        color: gray;
        cursor: pointer;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.inherit_header td {
        padding: 6px 0px 2px 5px;
}

.inherit {
        display: none;
}

tr.heading h2 {
        margin-top: 25px;
        margin-bottom: 0px;
}

@media print
{
  #top { display: none; }
  #side-nav { display: none; }
  #nav-path { display: none; }
  body { overflow:visible; }
  h1, h2, h3, h4, h5, h6 { page-break-after: avoid; }
  .summary { display: none; }
  .memitem { page-break-inside: avoid; }
  #doc-content
  {
    margin-left:0 !important;
    height:auto !important;
    width:auto !important;
    overflow:inherit;
    display:inline;
  }
}

