* { box-sizing: border-box; }
html           { margin: 0; padding: 0; border: 0; height:100%; }
body           { margin: 0; padding: 0; border: 0; font-family: sans-serif; height:100%; }
body#main      { padding-left: 320px; }
body#toc       { display: flex; flex-flow: column; }
#maincontainer        { position: absolute; top: 0; left: 0; height: 100%; width: 100%; border: 0; 
                        display: grid;
                        grid-template-columns: 320px 1fr;
                        grid-template-rows: 1fr 4ex;
                        grid-template-areas: "toc content" "footer footer";
                        grid-gap: 0 0;
                      }
#doc-main-toc-wrapper { grid-area: toc; resize: horizontal; }
#doc-main-toc         { height: 100%; width: 100%; border: 0; }
#doc-index-toc  { position: absolute; top: 0; left: 0; height:  calc(100vh - 4ex); width: 320px; border: 0; }
#doc-categories { height: 160px; width: 320px; border: 0; flex: 0 1 auto; }
#doc-toc        { height:  calc(100vh - 4ex); width: 320px; border: 0; flex: 1 1 auto; }
#doc-content-wrapper  { grid-area: content; }
#doc-content          { height: 100%; width: 100%; border: 0; }
footer          { grid-area: footer; background: #404040; }
footer a { color: #C0C0C0; padding: 0 1em; }
footer a#sphenon { float: right; }

body.legalnotice { background:#C0C0C0; }
body.legalnotice div { margin: 2ex; }

span#switches {
    position: fixed; top: 0; left: calc( 50% - 12px ); padding: 2px 8px 0px 8px;
    border: thin solid #808080; border-top: none; border-radius: 0px 0px 8px 8px;
    font-size: 60%; background: #C0C0C0; cursor: pointer; z-Index:5;
    max-height: 1.5ex; transition: max-height 0.3s ease-in, padding 0.3s ease-in, left 0.3s ease-in;
}
span#switches:hover   { max-height: 8ex; left: calc( 50% - 16px ); padding: 6px 12px 4px 12px;
                        transition: max-height 0.3s ease-in, padding 0.3s ease-in, left 0.3s ease-in; }
span#switches       a { opacity: 0; transition: opacity 0.1s ease-in; }
span#switches:hover a { opacity: 1; transition: opacity 0.1s ease-in 0.2s; }

span#switches a { margin: 1px 2px; }

a { text-decoration: none; }
a.major:hover,
a.minor:hover,
.navigation a:hover { text-decoration: underline; }

footer a.flag img { height: 12px; width: 24px; }
footer a.flag { cursor: pointer; }
.hidden { display: none; }

.header {
    border-bottom: thin black solid; padding: 0pt 8pt 0pt 8pt;
    background-image: -moz-linear-gradient(top, #808080 0%, #404040 12%, #808080 100%);
    background-image: -webkit-linear-gradient(top, #808080 0%, #404040 12%, #808080 100%);
    background-image: -ms-linear-gradient(top, #808080 0%, #404040 12%, #808080 100%);
    background-image: -o-linear-gradient(top, #808080 0%, #404040 12%, #808080 100%);
    background-image: linear-gradient(top, #808080 0%, #404040 12%, #808080 100%);
    background-repeat: no-repeat, no-repeat;
}
.header h1  { margin: 0; padding: 0; spacing: 0; font-weight: normal; font-size:160%; font-weight:bold; }
.header img { /* float: right; */ position: absolute; right: 0; background: #FFFFFF; border:2px solid #404040; }
.header a   { color: #000000; }
a.download  { border-bottom: thin black solid; padding-left: 8pt; }

body.welcome { background:#FFFFFF; }
body.welcome div.wrapper {
  width:100%; height:100%; min-height:100%; position:relative;
  display: flex; justify-content: center; align-items: center;
}
/* body.welcome div.floater {
    position:relative; float:left;
    height:45%;
    min-height:45%; / * strange; min- necessary * /
    width:1px;
    margin-bottom:-2ex;
  }
  body.welcome div.content {
    position:relative; clear:left;
    width:50ex;
    margin:0 auto;
  } */

body.welcome div.content { min-width:50%; }
body.welcome div.content h1 { color:#C0C0C0; text-align: right; }
body.welcome ul  { list-style-type: none; margin: 0; padding: 0; box-shadow: 4px 4px 8px 0px #808080; }
/*body.welcome li  { margin: 0; padding: 0; spacing: 0; font-weight: normal; font-size:160%; font-weight:bold; }*/
body.welcome li  { font-size: 140%; margin: 0 0; padding: 0 1em; background:#E0E0E0; }
body.welcome li a { color: #000000; }

div.content    { }
div.group      { margin-top: 1em; }

body.welcome ul li,
body.doc div.group h1 { border-bottom: 0.5ex solid #C0C0C0; box-shadow: 3px 3px 6px 0px #808080; }
body.doc div.group div.navigation { border-top: 0.7ex solid #C0C0C0; box-shadow: 3px 3px 6px 0px #808080; }
body.doc div.group h2 { border-bottom: 2px solid #C0C0C0; }
body.doc div.group a.download,
body.doc div.group .articleinfo     { border-left: 6pt solid #C0C0C0; }

div.group h1   { font-size: 140%; margin: 0.37em 0; padding: 0.3em 0; background:#E0E0E0; }
div.group div.group > h1 { border-top: thin solid #A51D00; border-bottom: none; box-shadow: none; font-size: 90%; margin: 0 0; padding: 0.1em 0; }
div.group h1 a.epath,
div.group span.epath    { color: #A0A0A0; font-weight: normal; }
div.group h1 a.etype,
div.group span.etype    { font-weight: normal; }
div.group h1 a.ename,
div.group span.ename    { font-weight: bold; }
div.group h1 a.eversion,
div.group span.eversion { font-weight: normal; }

div.group h1 a.apath,
div.group h1 a.ppath,
div.group span.apath,
div.group span.ppath    { color: #A0A0A0; font-weight: normal; }

div.group h1 a.aname,
div.group h1 a.pname,
div.group span.aname,
div.group span.pname    { font-weight: normal; }

body.doc div.classname,
body.doc div.methodname { display: inline; font-family: monospace; }

body.doc table.example                    { border-collapse: collapse; margin: 2ex auto; }
body.doc table.example th,
body.doc table.example td                 { border: thin solid black; border-collapse: collapse; }
body.doc table.example th.title           { padding: 0px 8px 0px 8px; }
body.doc table.example td.programlisting  { padding: 12px 16px 12px 16px; white-space:pre; font-family: monospace; }
body.doc table.example td.programlisting pre { margin: 0px; }

body.doc iframe                           { margin-top: 2ex; margin-bottom: 2ex; }

body.doc table.glossary                   { border-collapse: collapse; }
body.doc table.glossary th,
body.doc table.glossary td                { border: thin solid black; border-collapse: collapse; padding: 4px 8px 4px 8px; }
body.doc table.glossary td                { vertical-align:top; }

body.doc table.dl                        { border-collapse: collapse; }
body.doc table.dl th,
body.doc table.dl td                     { border-collapse: collapse; padding: 1ex 3ex 1ex 3ex; }
body.doc table.dl td.dl-title            { text-align: center; padding: 1ex 3ex 1ex 3ex; font-weight: bold; }
body.doc table.dl caption                { font-weight: bold; }
body.doc table.dl table,
body.doc table.dl table th,
body.doc table.dl table td               { border: none; }

tr:target > td.glossterm                  { background: #FFFF00; }
div.glosssee:before                       { font-weight: bold; color: #A0A0A0; }
/* works
:lang(en) div.glosssee:before             { content: 'See: '; }
:lang(de) div.glosssee:before             { content: 'Siehe: '; }
*/
div.glosssee:before                       { content: '▶ '; }

.dl-lang                                  { font-weight: normal; }
.dl-lang:after                            { content: '\00A0'; display: inline-block; width: 1.2ex; }
.dl-lang.dl-de:after                         { background: url('${BASE}/de.svg') 0ex 0.6ex / 1.2ex 0.6ex no-repeat; }
.dl-lang.dl-en:after                         { background: url('${BASE}/en.svg') 0ex 0.6ex / 1.2ex 0.6ex no-repeat; }

body.doc div.group                         h1 a.etype,
body.doc div.group                         h1 a.ename,
body.doc div.group                         h1 a.aname,
body.doc div.group                         h1 a.pname,
body.doc div.group                         h1 a.eversion,
body.doc div.group                         span.etype,
body.doc div.group                         span.ename,
body.doc div.group                         span.aname,
body.doc div.group                         span.pname,
body.doc div.group                         span.eversion { color: #000000; }

div.doclet     { }
div.doclet h2  { text-align: right; }
span.origin    { float: right; font-size: 40%; }
span.origin a  { color: #A0A0A0; }
div.docbook    { }
div.section    { }
div.section h1 { }

body.doclet div.content { margin:12px; }

body.doclet div.content dic.doclet a:before { content: '▸ '; }

div.overview a { color: #FFFFFF; font-weight: bold; }

div.overview ul { padding-left:0; margin:0; }
div.overview li { list-style-type: none; }

a.l0           { font-weight: bold; }
body.index div.content li { list-style-type: none; white-space: nowrap; }
body.index div.content > ul { padding-left:0; margin:0; }
body.index div.content > ul ul { padding-left: 2ex; }
li.l0          { padding: 1ex 0em 1ex 1em; }

body.categories { background: #505050; }
body.categories div.overview li { padding: 4px 2ex 4px 2ex; }

body.index {
  background-image: -moz-linear-gradient(to right, #C0C0C0 0%, #808080 80%, #606060 100%);
  background-image: -webkit-linear-gradient(to right, #C0C0C0 0%, #808080 80%, #606060 100%);
  background-image: -ms-linear-gradient(to right, #C0C0C0 0%, #808080 80%, #606060 100%);
  background-image: -o-linear-gradient(to right, #C0C0C0 0%, #808080 80%, #606060 100%);
  background-image: linear-gradient(to right, #C0C0C0 0%, #808080 80%, #606060 100%);
}

body.index a.index { color: #808080; }
body.index a.link  { color: #000000; }

div.problems                                 { display: table; border-collapse: collapse; }
div.problems > div.problem                   { display: table-row; }
div.problems > div.problem > span.state,
div.problems > div.problem > span.details    { display: table-cell; border: 1px solid #ccc; border-collapse: collapse; padding: 4px 12px 4px 12px; }

span.state.idle                              { color: #0000FF; }
span.state.idle_incomplete                   { color: #000080; }
span.state.ok                                { color: #00C000; }
span.state.ok_incomplete                     { color: #006000; }
span.state.info                              { color: #00FF00; }
span.state.info_incomplete                   { color: #008000; }
span.state.notice                            { color: #C0FF00; }
span.state.notice_incomplete                 { color: #608000; }
span.state.caution                           { color: #FFFF00; }
span.state.caution_incomplete                { color: #808000; }
span.state.warning                           { color: #FFE000; }
span.state.warning_incomplete                { color: #807000; }
span.state.severe_warning                    { color: #FFA000; }
span.state.severe_warning_incomplete         { color: #805000; }
span.state.error                             { color: #FF0000; }
span.state.error_incomplete                  { color: #800000; }
span.state.critical_error                    { color: #FF0000; }
span.state.critical_error_incomplete         { color: #800000; }
span.state.fatal_error                       { color: #FF0000; }
span.state.fatal_error_incomplete            { color: #800000; }
span.state.emergency                         { color: #FF0000; }
span.state.emergency_incomplete              { color: #800000; }
span.state.panic                             { color: #FF0000; }
span.state.panic_incomplete                  { color: #800000; }

div:target.section .title1, div:target.section h1,
div:target.section .title2, div:target.section h2,
div:target.section .title3, div:target.section h3 {
   background: #FFFF00;
   padding: 2px 4px 2px 4px;
}

.title1, h1,
.title2, h2,
.title3, h3 {
   font-weight: bold;
}

.dark span.title1, .dark h1, .dark span.subtitle1,
.dark span.title2, .dark h2, .dark span.subtitle2,
.dark span.title3, .dark h3, .dark span.subtitle3 {
   color: #BCB07D;
}

.articleinfo .title1 { font-size: 150%; }
.title1, h1 { font-size: 130%; }
.title2, h2 { font-size: 100%; }
.title3, h3 { font-size: 100%; }
.subtitle1  { font-size: 80%; }
.subtitle2  { font-size: 80%; }
.subtitle3  { font-size: 80%; }

span.subtitle1,
span.subtitle2,
span.subtitle3 {
   font-weight: normal;
}

.articleinfo { background: #F0F0F0; }
.corpauthor { font-style: italic; }
.pubdate    { font-style: italic; }


body.doc div.group .navigation         { margin-top: 2.5em; padding: 1em 0; clear: both; }
body.doc div.group .navigation a       { color: #000000; }
body.doc div.group .navigation ul      { margin-block-start: 0; margin-block-end: 0; list-style: none; }
body.doc div.group li.next:before      { content: '▶  '; }
body.doc div.group li.previous:before  { content: '◀  '; }

/* StickyFooter ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.group, .doclet, .section.level0 { min-height: 80vh; }
div.section.level0 { display: flex; flex-flow: column nowrap; justify-content: flex-start; align-items: stretch; align-content: flex-start; }
div.section.level0 .filler { flex-grow: 99; }
/* but not everywhere: */
.group, .java_class .group, .java_class .doclet, .java_class .section.level0 { min-height: unset; }
.group, .model_class .group, .model_class .doclet, .model_class .section.level0 { min-height: unset; }
/* StickyFooter ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */

/* ================================================================================== */

span.fairy            { color:#BFDE10; font-weight:bold; font-style: normal; }
span.loom             { color:#908100; font-weight:bold; font-style: normal; }

span.fairyloom1       { color:#BFDE10; font-weight:bold; font-style: normal; }
span.fairyloom2       { color:#908100; font-weight:bold; font-style: normal; }
span.businessboard1   { color:#B89C00; font-weight:bold; font-style: normal; }
span.businessboard2   { color:#827200; font-weight:bold; font-style: normal; }
span.lorescroll1      { color:#50676F; font-weight:bold; font-style: normal; }
span.lorescroll2      { color:#D4C682; font-weight:bold; font-style: normal; }
span.lorescript1      { color:#50676F; font-weight:bold; font-style: normal; }
span.lorescript2      { color:#D4C682; font-weight:bold; font-style: normal; }
span.EMOS1            { color:#649DB4; font-weight:bold; font-style: normal; }
span.EMOS2            { color:#000000; font-weight:bold; font-style: normal; }
span.EMOS3            { color:#63AD8B; font-weight:bold; font-style: normal; }
span.applicationloom1 { color:#5792AA; font-weight:bold; font-style: normal; }
span.applicationloom2 { color:#358A63; font-weight:bold; font-style: normal; }
span.codingcookbook1  { color:#50676F; font-weight:bold; font-style: normal; }
span.codingcookbook2  { color:#D4C682; font-weight:bold; font-style: normal; }

.dark span.loom  { color: #B48F39;  }

/* ---------------------------------------- */

img.floatleft { float: left; margin-right: 32px; }
img.floatright { float: right; margin-left: 32px; }
code { font-family: monospace; }

ul.open   { display: block; }
ul.closed { display: none; }
span.ws,
span.open,
span.closed {
  cursor: pointer;
  display: inline-block;
  margin: 0 0 0 0;
}

/* ---------------------------------------- */

.docbook .para    { padding: 1ex 0 0 1em; }
.docbook .section { padding: 2ex 0 0 1em; }
.docbook .title   { padding: 2ex 0 0 0; }
.articleinfo { padding: 2ex 2ex 2ex 2ex; }
.articleinfo .title { padding: 0 0 0 0; }

span.ws:before      { content: '⊡'; }
span.initial:before { content: '⊡'; }
span.closed:before  { content: '⊞'; }
span.open:before    { content: '⊟'; }

body.index a.l0 > span         { line-height: 1.7ex; display: inline-block; vertical-align: text-top; }
body.index span.description    { font-weight: normal; font-size: 70%; }
body.index li.l0 > span.ws,
body.index li.l0 > span.open,
body.index li.l0 > span.closed { display: inline-block; line-height: 3.5ex; vertical-align: text-top; }
body.index a.l0                { display: inline-block; line-height: 3.5ex; vertical-align: baseline; }

body.welcome li > a > span {
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    align-items: flex-end;
    align-content: stretch;
  }
body.welcome li > a span.name        { flex: 1 1 0; }
body.welcome li > a span.description { flex: 3 1 0; color: #808080; font-size: 60%; text-align: right; }

.dl-note:before      { content: url('${BASE}/note.svg'); }
.dl-tip:before       { content: url('${BASE}/tip.svg'); }
.dl-important:before { content: url('${BASE}/important.svg'); }
.dl-caution:before   { content: url('${BASE}/caution.svg'); }
.dl-warning:before   { content: url('${BASE}/warning.svg'); }

b.dl-term { font-weight: normal; font-style: italic; }

/* ===================================================================================== */
/* specific items                                                                        */

/* Sample:
   <html>
     <body>
       <h1 style="background: #EBE5F5; border-bottom: 0.5ex solid #7142C0;">landscape</h1>
       <h1 style="background: #E8ECFF; border-bottom: 0.5ex solid #596DD4;">services</h1>
       <h1 style="background: #E3F1F7; border-bottom: 0.5ex solid #3093C0;">systems</h1>
       <h1 style="background: #E3EEEE; border-bottom: 0.5ex solid #218686;">architecture</h1>
       <h1 style="background: #E5F3DE; border-bottom: 0.5ex solid #478A25;">models</h1>
       <h1 style="background: #F6FCCF; border-bottom: 0.5ex solid #A6BF00;">languages</h1>
       <h1 style="background: #FFFBE1; border-bottom: 0.5ex solid #DBC100;">vocabulary</h1>
       <h1 style="background: #FFF5D7; border-bottom: 0.5ex solid #DEA910;">software</h1>
       <h1 style="background: #FBF2F0; border-bottom: 0.5ex solid #A51D00;">java</h1>
       <h1 style="background: #FCEEF6; border-bottom: 0.5ex solid #902061;">templates</h1>
       <h1 style="background: #EDE3F0; border-bottom: 0.5ex solid #600080;">blueprints</h1>
     </body>
   </html>
*/

/* special handling for Javadoc doclets ~~~~~~~~~~~~ */
body.doc div.group.java_class div.group > h1 { font-size: 70%; }

body.doc div.group h2 { border-bottom: none; font-size: 70%; font-weight: normal; text-align: left; }

body.doc div.group.java_class .dl-type { font-style: italic; }
body.doc div.group.java_class .dl-item { font-weight: bold; }

body.doc div.group.java_class table { border-collapse: collapse; }
body.doc div.group.java_class table th { border: 1px solid #ccc; border-collapse: collapse; padding: 0 8px 0 8px; }
body.doc div.group.java_class table td { border: 1px solid #ccc; border-collapse: collapse; padding: 0 8px 0 8px; }
/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */

body.welcome                               ul li.landscape,
body.doc div.group.landscape               h1 { background: #EBE5F5; border-bottom-color: #7142C0; }
body.doc div.group.landscape               div.navigation { background: #EBE5F5; border-top-color: #7142C0; }
body.doc div.group.landscape               h2 { color:#7142C0; border-bottom-color: #7142C0; }
body.doc div.group.landscape               a.download,
body.doc div.group.landscape               .articleinfo     { border-left-color: #7142C0; }
body.doc div.group.landscape               table.example th.title          { background-color: #7142C0; color:#FFFFFF; }
body.doc div.group.landscape               table.example td.programlisting { background-color: #EBE5F5; color:#7142C0; }
body.doc div.group.landscape               .navigation li:before,
body.doc div.group.landscape               a,
body.doc div.group.landscape               a:before  { color: #7142C0; }
body.doc div.group.landscape               a:active,
body.doc div.group.landscape               a:hover   { background: #EBE5F5; }

body.welcome                               ul li.landscape_component,
body.doc div.group.landscape_component     h1 { background: #EBE5F5; border-bottom-color: #7142C0; }
body.doc div.group.landscape_component     div.navigation { background: #EBE5F5; border-top-color: #7142C0; }
body.doc div.group.landscape_component     h2 { color:#7142C0; border-bottom-color: #7142C0; }
body.doc div.group.landscape_component     a.download,
body.doc div.group.landscape_component     .articleinfo     { border-left-color: #7142C0; }
body.doc div.group.landscape_component     table.example th.title          { background-color: #7142C0; color:#FFFFFF; }
body.doc div.group.landscape_component     table.example td.programlisting { background-color: #EBE5F5; color:#7142C0; }
body.doc div.group.landscape_component     .navigation li:before,
body.doc div.group.landscape_component     a,
body.doc div.group.landscape_component     a:before  { color: #7142C0; }
body.doc div.group.landscape_component     a:active,
body.doc div.group.landscape_component     a:hover   { background: #EBE5F5; }

body.welcome                               ul li.facility,
body.doc div.group.facility                h1 { background: #EBE5F5; border-bottom-color: #7142C0; }
body.doc div.group.facility                div.navigation { background: #EBE5F5; border-top-color: #7142C0; }
body.doc div.group.facility                h2 { color:#7142C0; border-bottom-color: #7142C0; }
body.doc div.group.facility                a.download,
body.doc div.group.facility                .articleinfo     { border-left-color: #7142C0; }
body.doc div.group.facility                table.example th.title          { background-color: #7142C0; color:#FFFFFF; }
body.doc div.group.facility                table.example td.programlisting { background-color: #EBE5F5; color:#7142C0; }
body.doc div.group.facility                .navigation li:before,
body.doc div.group.facility                a,
body.doc div.group.facility                a:before  { color: #7142C0; }
body.doc div.group.facility                a:active,
body.doc div.group.facility                a:hover   { background: #EBE5F5; }

body.welcome                               ul li.services,
body.doc div.group.services                h1 { background: #E8ECFF; border-bottom-color: #596DD4; }
body.doc div.group.services                div.navigation { background: #E8ECFF; border-top-color: #596DD4; }
body.doc div.group.services                h2 { color:#596DD4; border-bottom-color: #596DD4; }
body.doc div.group.services                a.download,
body.doc div.group.services                .articleinfo     { border-left-color: #596DD4; }
body.doc div.group.services                table.example th.title          { background-color: #596DD4; color:#FFFFFF; }
body.doc div.group.services                table.example td.programlisting { background-color: #E8ECFF; color:#596DD4; }
body.doc div.group.services                .navigation li:before,
body.doc div.group.services                a,
body.doc div.group.services                a:before  { color: #596DD4; }
body.doc div.group.services                a:active,
body.doc div.group.services                a:hover   { background: #E8ECFF; }

body.welcome                               ul li.service,
body.doc div.group.service                 h1 { background: #E8ECFF; border-bottom-color: #596DD4; }
body.doc div.group.service                 div.navigation { background: #E8ECFF; border-top-color: #596DD4; }
body.doc div.group.service                 h2 { color:#596DD4; border-bottom-color: #596DD4; }
body.doc div.group.service                 a.download,
body.doc div.group.service                 .articleinfo     { border-left-color: #596DD4; }
body.doc div.group.service                 table.example th.title          { background-color: #596DD4; color:#FFFFFF; }
body.doc div.group.service                 table.example td.programlisting { background-color: #E8ECFF; color:#596DD4; }
body.doc div.group.service                 .navigation li:before,
body.doc div.group.service                 a,
body.doc div.group.service                 a:before  { color: #596DD4; }
body.doc div.group.service                 a:active,
body.doc div.group.service                 a:hover   { background: #E8ECFF; }

body.welcome                               ul li.service_web_site,
body.doc div.group.service_web_site        h1 { background: #E8ECFF; border-bottom-color: #596DD4; }
body.doc div.group.service_web_site        div.navigation { background: #E8ECFF; border-top-color: #596DD4; }
body.doc div.group.service_web_site        h2 { color:#596DD4; border-bottom-color: #596DD4; }
body.doc div.group.service_web_site        a.download,
body.doc div.group.service_web_site        .articleinfo     { border-left-color: #596DD4; }
body.doc div.group.service_web_site        table.example th.title          { background-color: #596DD4; color:#FFFFFF; }
body.doc div.group.service_web_site        table.example td.programlisting { background-color: #E8ECFF; color:#596DD4; }
body.doc div.group.service_web_site        .navigation li:before,
body.doc div.group.service_web_site        a,
body.doc div.group.service_web_site        a:before  { color: #596DD4; }
body.doc div.group.service_web_site        a:active,
body.doc div.group.service_web_site        a:hover   { background: #E8ECFF; }

body.welcome                               ul li.service_end_point,
body.doc div.group.service_end_point       h1 { background: #E8ECFF; border-bottom-color: #596DD4; }
body.doc div.group.service_end_point       div.navigation { background: #E8ECFF; border-top-color: #596DD4; }
body.doc div.group.service_end_point       h2 { color:#596DD4; border-bottom-color: #596DD4; }
body.doc div.group.service_end_point       a.download,
body.doc div.group.service_end_point       .articleinfo     { border-left-color: #596DD4; }
body.doc div.group.service_end_point       table.example th.title          { background-color: #596DD4; color:#FFFFFF; }
body.doc div.group.service_end_point       table.example td.programlisting { background-color: #E8ECFF; color:#596DD4; }
body.doc div.group.service_end_point       .navigation li:before,
body.doc div.group.service_end_point       a,
body.doc div.group.service_end_point       a:before  { color: #596DD4; }
body.doc div.group.service_end_point       a:active,
body.doc div.group.service_end_point       a:hover   { background: #E8ECFF; }

body.welcome                               ul li.system,
body.doc div.group.system                  h1 { background: #E3F1F7; border-bottom-color: #3093C0; }
body.doc div.group.system                  div.navigation { background: #E3F1F7; border-top-color: #3093C0; }
body.doc div.group.system                  h2 { color: #3093C0; border-bottom-color: #3093C0; }
body.doc div.group.system                  a.download,
body.doc div.group.system                  .articleinfo     { border-left-color: #3093C0; }
body.doc div.group.system                  table.example th.title          { background-color: #3093C0; color:#FFFFFF; }
body.doc div.group.system                  table.example td.programlisting { background-color: #E3F1F7; color:#3093C0; }
body.doc div.group.system                  .navigation li:before,
body.doc div.group.system                  a,
body.doc div.group.system                  a:before  { color: #3093C0; }
body.doc div.group.system                  a:active,
body.doc div.group.system                  a:hover   { background: #E3F1F7; }

body.welcome                               ul li.systems,
body.doc div.group.systems                 h1 { background: #E3F1F7; border-bottom-color: #3093C0; }
body.doc div.group.systems                 div.navigation { background: #E3F1F7; border-top-color: #3093C0; }
body.doc div.group.systems                 h2 { color: #3093C0; border-bottom-color: #3093C0; }
body.doc div.group.systems                 a.download,
body.doc div.group.systems                 .articleinfo     { border-left-color: #3093C0; }
body.doc div.group.systems                 table.example th.title          { background-color: #3093C0; color:#FFFFFF; }
body.doc div.group.systems                 table.example td.programlisting { background-color: #E3F1F7; color:#3093C0; }
body.doc div.group.systems                 .navigation li:before,
body.doc div.group.systems                 a,
body.doc div.group.systems                 a:before  { color: #3093C0; }
body.doc div.group.systems                 a:active,
body.doc div.group.systems                 a:hover   { background: #E3F1F7; }

body.welcome                               ul li.system_component,
body.doc div.group.system_component        h1 { background: #E3F1F7; border-bottom-color: #3093C0; }
body.doc div.group.system_component        div.navigation { background: #E3F1F7; border-top-color: #3093C0; }
body.doc div.group.system_component        h2 { color: #3093C0; border-bottom-color: #3093C0; }
body.doc div.group.system_component        a.download,
body.doc div.group.system_component        .articleinfo     { border-left-color: #3093C0; }
body.doc div.group.system_component        table.example th.title          { background-color: #3093C0; color:#FFFFFF; }
body.doc div.group.system_component        table.example td.programlisting { background-color: #E3F1F7; color:#3093C0; }
body.doc div.group.system_component        .navigation li:before,
body.doc div.group.system_component        a,
body.doc div.group.system_component        a:before  { color: #3093C0; }
body.doc div.group.system_component        a:active,
body.doc div.group.system_component        a:hover   { background: #E3F1F7; }

body.welcome                               ul li.system_function,
body.doc div.group.system_function         h1 { background: #E3F1F7; border-bottom-color: #3093C0; }
body.doc div.group.system_function         div.navigation { background: #E3F1F7; border-top-color: #3093C0; }
body.doc div.group.system_function         h2 { color: #3093C0; border-bottom-color: #3093C0; }
body.doc div.group.system_function         a.download,
body.doc div.group.system_function         .articleinfo     { border-left-color: #3093C0; }
body.doc div.group.system_function         table.example th.title          { background-color: #3093C0; color:#FFFFFF; }
body.doc div.group.system_function         table.example td.programlisting { background-color: #E3F1F7; color:#3093C0; }
body.doc div.group.system_function         .navigation li:before,
body.doc div.group.system_function         a,
body.doc div.group.system_function         a:before  { color: #3093C0; }
body.doc div.group.system_function         a:active,
body.doc div.group.system_function         a:hover   { background: #E3F1F7; }

body.welcome                               ul li.system_resource,
body.doc div.group.system_resource         h1 { background: #E3F1F7; border-bottom-color: #3093C0; }
body.doc div.group.system_resource         div.navigation { background: #E3F1F7; border-top-color: #3093C0; }
body.doc div.group.system_resource         h2 { color: #3093C0; border-bottom-color: #3093C0; }
body.doc div.group.system_resource         a.download,
body.doc div.group.system_resource         .articleinfo     { border-left-color: #3093C0; }
body.doc div.group.system_resource         table.example th.title          { background-color: #3093C0; color:#FFFFFF; }
body.doc div.group.system_resource         table.example td.programlisting { background-color: #E3F1F7; color:#3093C0; }
body.doc div.group.system_resource         .navigation li:before,
body.doc div.group.system_resource         a,
body.doc div.group.system_resource         a:before  { color: #3093C0; }
body.doc div.group.system_resource         a:active,
body.doc div.group.system_resource         a:hover   { background: #E3F1F7; }

body.welcome                               ul li.architecture,
body.doc div.group.architecture            h1 { background: #E3EEEE; border-bottom-color: #218686; }
body.doc div.group.architecture            div.navigation { background: #E3EEEE; border-top-color: #218686; }
body.doc div.group.architecture            h2 { color: #218686; border-bottom-color: #218686; }
body.doc div.group.architecture            a.download,
body.doc div.group.architecture            .articleinfo     { border-left-color: #218686; }
body.doc div.group.architecture            table.example th.title          { background-color: #218686; color:#FFFFFF; }
body.doc div.group.architecture            table.example td.programlisting { background-color: #E3EEEE; color:#218686; }
body.doc div.group.architecture            .navigation li:before,
body.doc div.group.architecture            a,
body.doc div.group.architecture            a:before  { color: #218686; }
body.doc div.group.architecture            a:active,
body.doc div.group.architecture            a:hover   { background: #E3EEEE; }

body.welcome                               div.group.architecture_componeul li,
body.doc div.group.architecture_component  h1 { background: #E3EEEE; border-bottom-color: #218686; }
body.doc div.group.architecture_component  div.navigation { background: #E3EEEE; border-top-color: #218686; }
body.doc div.group.architecture_component  h2 { color: #218686; border-bottom-color: #218686; }
body.doc div.group.architecture_component  a.download,
body.doc div.group.architecture_component  .articleinfo     { border-left-color: #218686; }
body.doc div.group.architecture_component  table.example th.title          { background-color: #218686; color:#FFFFFF; }
body.doc div.group.architecture_component  table.example td.programlisting { background-color: #E3EEEE; color:#218686; }
body.doc div.group.architecture_component  .navigation li:before,
body.doc div.group.architecture_component  a,
body.doc div.group.architecture_component  a:before  { color: #218686; }
body.doc div.group.architecture_component  a:active,
body.doc div.group.architecture_component  a:hover   { background: #E3EEEE; }

body.welcome                               ul li.models,
body.doc div.group.models                  h1 { background: #E5F3DE; border-bottom-color: #478A25; }
body.doc div.group.models                  div.navigation { background: #E5F3DE; border-top-color: #478A25; }
body.doc div.group.models                  h2 { color: #478A25; border-bottom-color: #478A25; }
body.doc div.group.models                  a.download,
body.doc div.group.models                  .articleinfo     { border-left-color: #478A25; }
body.doc div.group.models                  table.example th.title          { background-color: #478A25; color:#FFFFFF; }
body.doc div.group.models                  table.example td.programlisting { background-color: #E5F3DE; color:#478A25; }
body.doc div.group.models                  .navigation li:before,
body.doc div.group.models                  a,
body.doc div.group.models                  a:before  { color: #478A25; }
body.doc div.group.models                  a:active,
body.doc div.group.models                  a:hover   { background: #E5F3DE; }

body.welcome                               ul li.model_package,
body.doc div.group.model_package           h1 { background: #E5F3DE; border-bottom-color: #478A25; }
body.doc div.group.model_package           div.navigation { background: #E5F3DE; border-top-color: #478A25; }
body.doc div.group.model_package           h2 { color: #478A25; border-bottom-color: #478A25; }
body.doc div.group.model_package           a.download,
body.doc div.group.model_package           .articleinfo     { border-left-color: #478A25; }
body.doc div.group.model_package           table.example th.title          { background-color: #478A25; color:#FFFFFF; }
body.doc div.group.model_package           table.example td.programlisting { background-color: #E5F3DE; color:#478A25; }
body.doc div.group.model_package           .navigation li:before,
body.doc div.group.model_package           a,
body.doc div.group.model_package           a:before  { color: #478A25; }
body.doc div.group.model_package           a:active,
body.doc div.group.model_package           a:hover   { background: #E5F3DE; }

body.welcome                               ul li.model_class,
body.doc div.group.model_class             h1 { background: #E5F3DE; border-bottom-color: #478A25; }
body.doc div.group.model_class             div.navigation { background: #E5F3DE; border-top-color: #478A25; }
body.doc div.group.model_class             h2 { color: #478A25; border-bottom-color: #478A25; }
body.doc div.group.model_class             a.download,
body.doc div.group.model_class             .articleinfo     { border-left-color: #478A25; }
body.doc div.group.model_class             table.example th.title          { background-color: #478A25; color:#FFFFFF; }
body.doc div.group.model_class             table.example td.programlisting { background-color: #E5F3DE; color:#478A25; }
body.doc div.group.model_class             .navigation li:before,
body.doc div.group.model_class             a,
body.doc div.group.model_class             a:before  { color: #478A25; }
body.doc div.group.model_class             a:active,
body.doc div.group.model_class             a:hover   { background: #E5F3DE; }

body.welcome                               ul li.model_meta,
body.doc div.group.model_meta              h1 { background: #E5F3DE; border-bottom-color: #478A25; }
body.doc div.group.model_meta              div.navigation { background: #E5F3DE; border-top-color: #478A25; }
body.doc div.group.model_meta              h2 { color: #478A25; border-bottom-color: #478A25; }
body.doc div.group.model_meta              a.download,
body.doc div.group.model_meta              .articleinfo     { border-left-color: #478A25; }
body.doc div.group.model_meta              table.example th.title          { background-color: #478A25; color:#FFFFFF; }
body.doc div.group.model_meta              table.example td.programlisting { background-color: #E5F3DE; color:#478A25; }
body.doc div.group.model_meta              .navigation li:before,
body.doc div.group.model_meta              a,
body.doc div.group.model_meta              a:before  { color: #478A25; }
body.doc div.group.model_meta              a:active,
body.doc div.group.model_meta              a:hover   { background: #E5F3DE; }

body.welcome                               ul li.languages,
body.doc div.group.languages               h1 { background: #F6FCCF; border-bottom-color: #A6BF00; }
body.doc div.group.languages               div.navigation { background: #F6FCCF; border-top-color: #A6BF00; }
body.doc div.group.languages               h2 { color: #A6BF00; border-bottom-color: #A6BF00; }
body.doc div.group.languages               a.download,
body.doc div.group.languages               .articleinfo     { border-left-color: #A6BF00; }
body.doc div.group.languages               table.example th.title          { background-color: #A6BF00; color:#FFFFFF; }
body.doc div.group.languages               table.example td.programlisting { background-color: #F6FCCF; color:#A6BF00; }
body.doc div.group.languages               .navigation li:before,
body.doc div.group.languages               a,
body.doc div.group.languages               a:before  { color: #A6BF00; }
body.doc div.group.languages               a:active,
body.doc div.group.languages               a:hover   { background: #F6FCCF; }

body.welcome                               ul li.language,
body.doc div.group.language                h1 { background: #F6FCCF; border-bottom-color: #A6BF00; }
body.doc div.group.language                div.navigation { background: #F6FCCF; border-top-color: #A6BF00; }
body.doc div.group.language                h2 { color: #A6BF00; border-bottom-color: #A6BF00; }
body.doc div.group.language                a.download,
body.doc div.group.language                .articleinfo     { border-left-color: #A6BF00; }
body.doc div.group.language                table.example th.title          { background-color: #A6BF00; color:#FFFFFF; }
body.doc div.group.language                table.example td.programlisting { background-color: #F6FCCF; color:#A6BF00; }
body.doc div.group.language                .navigation li:before,
body.doc div.group.language                a,
body.doc div.group.language                a:before  { color: #A6BF00; }
body.doc div.group.language                a:active,
body.doc div.group.language                a:hover   { background: #F6FCCF; }

body.welcome                               ul li.vocabulary,
body.doc div.group.vocabulary              h1 { background: #FFFBE1; border-bottom-color: #DBC100; }
body.doc div.group.vocabulary              div.navigation { background: #FFFBE1; border-top-color: #DBC100; }
body.doc div.group.vocabulary              h2 { color: #DBC100; border-bottom-color: #DBC100; }
body.doc div.group.vocabulary              a.download,
body.doc div.group.vocabulary              .articleinfo     { border-left-color: #DBC100; }
body.doc div.group.vocabulary              table.example th.title          { background-color: #DBC100; color:#FFFFFF; }
body.doc div.group.vocabulary              table.example td.programlisting { background-color: #FFFBE1; color:#DBC100; }
body.doc div.group.vocabulary              .navigation li:before,
body.doc div.group.vocabulary              a,
body.doc div.group.vocabulary              a:before  { color: #DBC100; }
body.doc div.group.vocabulary              a:active,
body.doc div.group.vocabulary              a:hover   { background: #FFFBE1; }
/* ! */
body.doc div.group.vocabulary              table.glossary th.title         { background-color: #FFFBE1; color:#DBC100; }
body.doc div.group.vocabulary              table.glossary th,
body.doc div.group.vocabulary              table.glossary td { border-color: #DBC100; }

body.welcome                               ul li.software,
body.doc div.group.software                h1 { background: #FFF5D7; border-bottom-color: #DEA910; }
body.doc div.group.software                div.navigation { background: #FFF5D7; border-top-color: #DEA910; }
body.doc div.group.software                h2 { color: #DEA910; border-bottom-color: #DEA910; }
body.doc div.group.software                a.download,
body.doc div.group.software                .articleinfo     { border-left-color: #DEA910; }
body.doc div.group.software                table.example th.title          { background-color: #DEA910; color:#FFFFFF; }
body.doc div.group.software                table.example td.programlisting { background-color: #FFF5D7; color:#DEA910; }
body.doc div.group.software                .navigation li:before,
body.doc div.group.software                a,
body.doc div.group.software                a:before  { color: #DEA910; }
body.doc div.group.software                a:active,
body.doc div.group.software                a:hover   { background: #FFF5D7; }

body.welcome                               ul li.software_unit,
body.doc div.group.software_unit           h1 { background: #FFF5D7; border-bottom-color: #DEA910; }
body.doc div.group.software_unit           div.navigation { background: #FFF5D7; border-top-color: #DEA910; }
body.doc div.group.software_unit           h2 { color: #DEA910; border-bottom-color: #DEA910; }
body.doc div.group.software_unit           a.download,
body.doc div.group.software_unit           .articleinfo     { border-left-color: #DEA910; }
body.doc div.group.software_unit           table.example th.title          { background-color: #DEA910; color:#FFFFFF; }
body.doc div.group.software_unit           table.example td.programlisting { background-color: #FFF5D7; color:#DEA910; }
body.doc div.group.software_unit           .navigation li:before,
body.doc div.group.software_unit           a,
body.doc div.group.software_unit           a:before  { color: #DEA910; }
body.doc div.group.software_unit           a:active,
body.doc div.group.software_unit           a:hover   { background: #FFF5D7; }

body.welcome                               ul li.software_appliance,
body.doc div.group.software_appliance      h1 { background: #FFF5D7; border-bottom-color: #DEA910; }
body.doc div.group.software_appliance      div.navigation { background: #FFF5D7; border-top-color: #DEA910; }
body.doc div.group.software_appliance      h2 { color: #DEA910; border-bottom-color: #DEA910; }
body.doc div.group.software_appliance      a.download,
body.doc div.group.software_appliance      .articleinfo     { border-left-color: #DEA910; }
body.doc div.group.software_appliance      table.example th.title          { background-color: #DEA910; color:#FFFFFF; }
body.doc div.group.software_appliance      table.example td.programlisting { background-color: #FFF5D7; color:#DEA910; }
body.doc div.group.software_appliance      .navigation li:before,
body.doc div.group.software_appliance      a,
body.doc div.group.software_appliance      a:before  { color: #DEA910; }
body.doc div.group.software_appliance      a:active,
body.doc div.group.software_appliance      a:hover   { background: #FFF5D7; }

body.welcome                               ul li.software_package,
body.doc div.group.software_package        h1 { background: #FFF5D7; border-bottom-color: #DEA910; }
body.doc div.group.software_package        div.navigation { background: #FFF5D7; border-top-color: #DEA910; }
body.doc div.group.software_package        h2 { color: #DEA910; border-bottom-color: #DEA910; }
body.doc div.group.software_package        a.download,
body.doc div.group.software_package        .articleinfo     { border-left-color: #DEA910; }
body.doc div.group.software_package        table.example th.title          { background-color: #DEA910; color:#FFFFFF; }
body.doc div.group.software_package        table.example td.programlisting { background-color: #FFF5D7; color:#DEA910; }
body.doc div.group.software_package        .navigation li:before,
body.doc div.group.software_package        a,
body.doc div.group.software_package        a:before  { color: #DEA910; }
body.doc div.group.software_package        a:active,
body.doc div.group.software_package        a:hover   { background: #FFF5D7; }

body.welcome                               ul li.software_component,
body.doc div.group.software_component      h1 { background: #FFF5D7; border-bottom-color: #DEA910; }
body.doc div.group.software_component      div.navigation { background: #FFF5D7; border-top-color: #DEA910; }
body.doc div.group.software_component      h2 { color: #DEA910; border-bottom-color: #DEA910; }
body.doc div.group.software_component      a.download,
body.doc div.group.software_component      .articleinfo     { border-left-color: #DEA910; }
body.doc div.group.software_component      table.example th.title          { background-color: #DEA910; color:#FFFFFF; }
body.doc div.group.software_component      table.example td.programlisting { background-color: #FFF5D7; color:#DEA910; }
body.doc div.group.software_component      .navigation li:before,
body.doc div.group.software_component      a,
body.doc div.group.software_component      a:before  { color: #DEA910; }
body.doc div.group.software_component      a:active,
body.doc div.group.software_component      a:hover   { background: #FFF5D7; }

body.welcome                               ul li.software_product,
body.doc div.group.software_product        h1 { background: #FFF5D7; border-bottom-color: #DEA910; }
body.doc div.group.software_product        div.navigation { background: #FFF5D7; border-top-color: #DEA910; }
body.doc div.group.software_product        h2 { color: #DEA910; border-bottom-color: #DEA910; }
body.doc div.group.software_product        a.download,
body.doc div.group.software_product        .articleinfo     { border-left-color: #DEA910; }
body.doc div.group.software_product        table.example th.title          { background-color: #DEA910; color:#FFFFFF; }
body.doc div.group.software_product        table.example td.programlisting { background-color: #FFF5D7; color:#DEA910; }
body.doc div.group.software_product        .navigation li:before,
body.doc div.group.software_product        a,
body.doc div.group.software_product        a:before  { color: #DEA910; }
body.doc div.group.software_product        a:active,
body.doc div.group.software_product        a:hover   { background: #FFF5D7; }

body.welcome                               ul li.software_bundle,
body.doc div.group.software_bundle         h1 { background: #FFF5D7; border-bottom-color: #DEA910; }
body.doc div.group.software_bundle         div.navigation { background: #FFF5D7; border-top-color: #DEA910; }
body.doc div.group.software_bundle         h2 { color: #DEA910; border-bottom-color: #DEA910; }
body.doc div.group.software_bundle         a.download,
body.doc div.group.software_bundle         .articleinfo     { border-left-color: #DEA910; }
body.doc div.group.software_bundle         table.example th.title          { background-color: #DEA910; color:#FFFFFF; }
body.doc div.group.software_bundle         table.example td.programlisting { background-color: #FFF5D7; color:#DEA910; }
body.doc div.group.software_bundle         .navigation li:before,
body.doc div.group.software_bundle         a,
body.doc div.group.software_bundle         a:before  { color: #DEA910; }
body.doc div.group.software_bundle         a:active,
body.doc div.group.software_bundle         a:hover   { background: #FFF5D7; }

body.welcome                               ul li.java,
body.doc div.group.java                    h1 { background: #FBF2F0; border-bottom-color: #A51D00; }
body.doc div.group.java                    div.navigation { background: #FBF2F0; border-top-color: #A51D00; }
body.doc div.group.java                    h2 { color: #A51D00; border-bottom-color: #A51D00; }
body.doc div.group.java                    a.download,
body.doc div.group.java                    .articleinfo     { border-left-color: #A51D00; }
body.doc div.group.java                    table.example th.title          { background-color: #A51D00; color:#FFFFFF; }
body.doc div.group.java                    table.example td.programlisting { background-color: #FBF2F0; color:#A51D00; }
body.doc div.group.java                    .navigation li:before,
body.doc div.group.java                    a,
body.doc div.group.java                    a:before  { color: #A51D00; }
body.doc div.group.java                    a:active,
body.doc div.group.java                    a:hover   { background: #FBF2F0; }

body.welcome                               ul li.java_package,
body.doc div.group.java_package            h1 { background: #FBF2F0; border-bottom-color: #A51D00; }
body.doc div.group.java_package            div.navigation { background: #FBF2F0; border-top-color: #A51D00; }
body.doc div.group.java_package            h2 { color: #A51D00; border-bottom-color: #A51D00; }
body.doc div.group.java_package            a.download,
body.doc div.group.java_package            .articleinfo     { border-left-color: #A51D00; }
body.doc div.group.java_package            table.example th.title          { background-color: #A51D00; color:#FFFFFF; }
body.doc div.group.java_package            table.example td.programlisting { background-color: #FBF2F0; color:#A51D00; }
body.doc div.group.java_package            .navigation li:before,
body.doc div.group.java_package            a,
body.doc div.group.java_package            a:before  { color: #A51D00; }
body.doc div.group.java_package            a:active,
body.doc div.group.java_package            a:hover   { background: #FBF2F0; }

body.welcome                               ul li.java_class,
body.doc div.group.java_class              h1 { background: #FBF2F0; border-bottom-color: #A51D00; }
body.doc div.group.java_class              div.navigation { background: #FBF2F0; border-top-color: #A51D00; }
body.doc div.group.java_class              h2 { color: #A51D00; border-bottom-color: #A51D00; }
body.doc div.group.java_class              a.download,
body.doc div.group.java_class              .articleinfo     { border-left-color: #A51D00; }
body.doc div.group.java_class              table.example th.title          { background-color: #A51D00; color:#FFFFFF; }
body.doc div.group.java_class              table.example td.programlisting { background-color: #FBF2F0; color:#A51D00; }
body.doc div.group.java_class              .navigation li:before,
body.doc div.group.java_class              a,
body.doc div.group.java_class              a:before  { color: #A51D00; }
body.doc div.group.java_class              a:active,
body.doc div.group.java_class              a:hover   { background: #FBF2F0; }

body.welcome                               ul li.templates,
body.doc div.group.templates               h1 { background: #FCEEF6; border-bottom-color: #902061; }
body.doc div.group.templates               div.navigation { background: #FCEEF6; border-top-color: #902061; }
body.doc div.group.templates               h2 { color: #902061; border-bottom-color: #902061; }
body.doc div.group.templates               a.download,
body.doc div.group.templates               .articleinfo     { border-left-color: #902061; }
body.doc div.group.templates               table.example th.title          { background-color: #902061; color:#FFFFFF; }
body.doc div.group.templates               table.example td.programlisting { background-color: #FCEEF6; color:#902061; }
body.doc div.group.templates               .navigation li:before,
body.doc div.group.templates               a,
body.doc div.group.templates               a:before  { color: #902061; }
body.doc div.group.templates               a:active,
body.doc div.group.templates               a:hover   { background: #FCEEF6; }

body.welcome                               ul li.template_package,
body.doc div.group.template_package        h1 { background: #FCEEF6; border-bottom-color: #902061; }
body.doc div.group.template_package        div.navigation { background: #FCEEF6; border-top-color: #902061; }
body.doc div.group.template_package        h2 { color: #902061; border-bottom-color: #902061; }
body.doc div.group.template_package        a.download,
body.doc div.group.template_package        .articleinfo     { border-left-color: #902061; }
body.doc div.group.template_package        table.example th.title          { background-color: #902061; color:#FFFFFF; }
body.doc div.group.template_package        table.example td.programlisting { background-color: #FCEEF6; color:#902061; }
body.doc div.group.template_package        .navigation li:before,
body.doc div.group.template_package        a,
body.doc div.group.template_package        a:before  { color: #902061; }
body.doc div.group.template_package        a:active,
body.doc div.group.template_package        a:hover   { background: #FCEEF6; }

body.welcome                               ul li.template_class,
body.doc div.group.template_class          h1 { background: #FCEEF6; border-bottom-color: #902061; }
body.doc div.group.template_class          div.navigation { background: #FCEEF6; border-top-color: #902061; }
body.doc div.group.template_class          h2 { color: #902061; border-bottom-color: #902061; }
body.doc div.group.template_class          a.download,
body.doc div.group.template_class          .articleinfo     { border-left-color: #902061; }
body.doc div.group.template_class          table.example th.title          { background-color: #902061; color:#FFFFFF; }
body.doc div.group.template_class          table.example td.programlisting { background-color: #FCEEF6; color:#902061; }
body.doc div.group.template_class          .navigation li:before,
body.doc div.group.template_class          a,
body.doc div.group.template_class          a:before  { color: #902061; }
body.doc div.group.template_class          a:active,
body.doc div.group.template_class          a:hover   { background: #FCEEF6; }

body.welcome                               ul li.oc_ps,
body.doc div.group.oc_ps                   h1 { background: #EDE3F0; border-bottom-color: #600080; }
body.doc div.group.oc_ps                   div.navigation { background: #EDE3F0; border-top-color: #600080; }
body.doc div.group.oc_ps                   h2 { color: #600080; border-bottom-color: #600080; }
body.doc div.group.oc_ps                   a.download,
body.doc div.group.oc_ps                   .articleinfo     { border-left-color: #600080; }
body.doc div.group.oc_ps                   table.example th.title          { background-color: #600080; color:#FFFFFF; }
body.doc div.group.oc_ps                   table.example td.programlisting { background-color: #EDE3F0; color:#600080; }
body.doc div.group.oc_ps                   .navigation li:before,
body.doc div.group.oc_ps                   a,
body.doc div.group.oc_ps                   a:before  { color: #600080; }
body.doc div.group.oc_ps                   a:active,
body.doc div.group.oc_ps                   a:hover   { background: #EDE3F0; }

body.welcome                               ul li.ocp_package,
body.doc div.group.ocp_package             h1 { background: #EDE3F0; border-bottom-color: #600080; }
body.doc div.group.ocp_package             div.navigation { background: #EDE3F0; border-top-color: #600080; }
body.doc div.group.ocp_package             h2 { color: #600080; border-bottom-color: #600080; }
body.doc div.group.ocp_package             a.download,
body.doc div.group.ocp_package             .articleinfo     { border-left-color: #600080; }
body.doc div.group.ocp_package             table.example th.title          { background-color: #600080; color:#FFFFFF; }
body.doc div.group.ocp_package             table.example td.programlisting { background-color: #EDE3F0; color:#600080; }
body.doc div.group.ocp_package             .navigation li:before,
body.doc div.group.ocp_package             a,
body.doc div.group.ocp_package             a:before  { color: #600080; }
body.doc div.group.ocp_package             a:active,
body.doc div.group.ocp_package             a:hover   { background: #EDE3F0; }

body.welcome                               ul li.ocp_class,
body.doc div.group.ocp_class               h1 { background: #EDE3F0; border-bottom-color: #600080; }
body.doc div.group.ocp_class               div.navigation { background: #EDE3F0; border-top-color: #600080; }
body.doc div.group.ocp_class               h2 { color: #600080; border-bottom-color: #600080; }
body.doc div.group.ocp_class               a.download,
body.doc div.group.ocp_class               .articleinfo     { border-left-color: #600080; }
body.doc div.group.ocp_class               table.example th.title          { background-color: #600080; color:#FFFFFF; }
body.doc div.group.ocp_class               table.example td.programlisting { background-color: #EDE3F0; color:#600080; }
body.doc div.group.ocp_class               .navigation li:before,
body.doc div.group.ocp_class               a,
body.doc div.group.ocp_class               a:before  { color: #600080; }
body.doc div.group.ocp_class               a:active,
body.doc div.group.ocp_class               a:hover   { background: #EDE3F0; }

body.categories div.overview li.landscape    a { color: #7142C0; }
body.categories div.overview li.services     a { color: #596DD4; }
body.categories div.overview li.systems      a { color: #3093C0; }
body.categories div.overview li.architecture a { color: #218686; }
body.categories div.overview li.models       a { color: #478A25; }
body.categories div.overview li.languages    a { color: #A6BF00; }
body.categories div.overview li.vocabulary   a { color: #DBC100; }
body.categories div.overview li.software     a { color: #DEA910; }
body.categories div.overview li.java         a { color: #A51D00; }
body.categories div.overview li.templates    a { color: #902061; }
body.categories div.overview li.oc_ps        a { color: #600080; }

body.index li.l0.landscape        { border-left: 10pt #7142C0 solid; border-top: thin #7142C0 solid;
                                    background-image: linear-gradient(to right, #EBE5F5 0%, #D8CEEB 80%, #BDAED6 100%); }
body.index li.l0.services         { border-left: 10pt #596DD4 solid; border-top: thin #596DD4 solid;
                                    background-image: linear-gradient(to right, #E8ECFF 0%, #C0C0FF 80%, #A8A8FF 100%); }
body.index li.l0.systems          { border-left: 10pt #3093C0 solid; border-top: thin #3093C0 solid;
                                    background-image: linear-gradient(to right, #E3F1F7 0%, #B9D2DD 80%, #91B2C1 100%); }
body.index li.l0.architecture     { border-left: 10pt #218686 solid; border-top: thin #218686 solid;
                                    background-image: linear-gradient(to right, #E3EEEE 0%, #B7D5D5 80%, #8FB3B3 100%); }
body.index li.l0.models           { border-left: 10pt #478A25 solid; border-top: thin #478A25 solid;
                                    background-image: linear-gradient(to right, #E5F3DE 0%, #C0D5B6 80%, #A2BD94 100%); }
body.index li.l0.languages        { border-left: 10pt #A6BF00 solid; border-top: thin #A6BF00 solid;
                                    background-image: linear-gradient(to right, #F6FCCF 0%, #D5DBB0 80%, #BCC67D 100%); }
body.index li.l0.vocabulary       { border-left: 10pt #DBC100 solid; border-top: thin #DBC100 solid;
                                    background-image: linear-gradient(to right, #FFFBE1 0%, #ECE2A7 80%, #D2C788 100%); }
body.index li.l0.software         { border-left: 10pt #DEA910 solid; border-top: thin #DEA910 solid;
                                    background-image: linear-gradient(to right, #FFF5D7 0%, #E6D9AF 80%, #CCBB87 100%); }
body.index li.l0.java             { border-left: 10pt #A51D00 solid; border-top: thin #A51D00 solid;
                                    background-image: linear-gradient(to right, #FBF2F0 0%, #E9CEC8 80%, #D0AFA8 100%); }
body.index li.l0.templates        { border-left: 10pt #902061 solid; border-top: thin #902061 solid;
                                    background-image: linear-gradient(to right, #FCEEF6 0%, #E4D0DB 80%, #C7A4B8 100%); }
body.index li.l0.oc_ps            { border-left: 10pt #600080 solid; border-top: thin #600080 solid;
                                    background-image: linear-gradient(to right, #EDE3F0 0%, #DDD0E1 80%, #B19CB7 100%); }

body.index li.l0.landscape    .toggled    { border-bottom: 1px solid #7142C0; border-left: 6px solid #7142C0; }
body.index li.l0.services     .toggled    { border-bottom: 1px solid #596DD4; border-left: 6px solid #596DD4; }
body.index li.l0.systems      .toggled    { border-bottom: 1px solid #3093C0; border-left: 6px solid #3093C0; }
body.index li.l0.architecture .toggled    { border-bottom: 1px solid #218686; border-left: 6px solid #218686; }
body.index li.l0.models       .toggled    { border-bottom: 1px solid #478A25; border-left: 6px solid #478A25; }
body.index li.l0.languages    .toggled    { border-bottom: 1px solid #A6BF00; border-left: 6px solid #A6BF00; }
body.index li.l0.vocabulary   .toggled    { border-bottom: 1px solid #DBC100; border-left: 6px solid #DBC100; }
body.index li.l0.software     .toggled    { border-bottom: 1px solid #DEA910; border-left: 6px solid #DEA910; }
body.index li.l0.java         .toggled    { border-bottom: 1px solid #A51D00; border-left: 6px solid #A51D00; }
body.index li.l0.templates    .toggled    { border-bottom: 1px solid #902061; border-left: 6px solid #902061; }
body.index li.l0.oc_ps        .toggled    { border-bottom: 1px solid #600080; border-left: 6px solid #600080; }

/* ================================================================================== */
/* fairyloom                                                                          */

body.doclet.fl {
    background: #FCFFF5;
    color: black;
    background-image: -moz-linear-gradient(top, #DDFF80 0px, #FCFFF5 15%, #FCFFF5 100%);
    background-image: -webkit-linear-gradient(top, #DDFF80 0px, #FCFFF5 15%, #FCFFF5 100%);
    background-image: -ms-linear-gradient(top, #DDFF80 0px, #FCFFF5 15%, #FCFFF5 100%);
    background-image: -o-linear-gradient(top, #DDFF80 0px, #FCFFF5 15%, #FCFFF5 100%);
    background-image: linear-gradient(top, #DDFF80 0px, #FCFFF5 15%, #FCFFF5 100%);
    background-repeat: no-repeat, no-repeat;
}

body.fl div.group h1  { font-size: 100%; margin: 0; padding: 0.3em 0.3em; position: absolute; top:0px; right:0px; }
body.fl div.doclet h2 { display: none; }

body.doc.fl div.group.service_web_site     h1 .minor { color: #C0C0C0; }
body.doc.fl div.group.service_web_site     h1 .major { color: #768624; }

body.doc.fl div.group.service_web_site     h1 { background: #F8FFD6; border-bottom-color: #768624; }
body.doc.fl div.group.service_web_site     div.navigation { background: #F8FFD6; border-top-color: #768624; }
body.doc.fl div.group.service_web_site     h2 { color: #768624; border-bottom-color: #768624; }
body.doc.fl div.group.service_web_site     a.download,
body.doc.fl div.group.service_web_site     .articleinfo     { border-left-color: #768624; }
body.doc.fl div.group.service_web_site     table.example th.title          { background-color: #768624; color:#FFFFFF; }
body.doc.fl div.group.service_web_site     table.example td.programlisting { background-color: #F8FFD6; color:#768624; }
body.doc.fl div.group.service_web_site     .navigation li:before,
body.doc.fl div.group.service_web_site     a,
body.doc.fl div.group.service_web_site     a:before  { color: #768624; }
body.doc.fl div.group.service_web_site     a:active,
body.doc.fl div.group.service_web_site     a:hover   { background: #F8FFD6; }

body.fl div.group h1 + div         { margin-top: 2em; }
body.fl div.group ul.indexpage     { margin-top: 4em; margin-left: 1em; }

body.fl .title1, body.fl h1, body.fl .subtitle1,
body.fl .title2, body.fl h2, body.fl .subtitle2,
body.fl .title3, body.fl h3, body.fl .subtitle3 {
   /* color: #768624; */
}

body.fl ul {
   padding-left: 0.5em;
}

body.fl .vginfo li {
   padding-top: 0.3em;
   padding-bottom: 0.3em;
}

/* StickyFooter ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
body.fl, body.fl .doc, body.fl .content, body.fl .group, body.fl .doclet, body.fl .section.level0 { min-height: 90vh; }
/* StickyFooter ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */

/* ================================================================================== */
/* businessboard                                                                      */

body.doclet.bb {
    background-image: url(/emosdoc/bbbg.png);
    color: black;
}

body.bb div.group h1  { font-size: 100%; margin: 0; padding: 0.3em 0.3em; position: absolute; top:0px; right:0px; }
body.bb div.doclet h2 { display: none; }

body.doc.bb div.group.software_bundle      h1 .minor { color: #C0C0C0; }
body.doc.bb div.group.software_bundle      h1 .major { color: #736500; }

body.doc.bb div.group.software_bundle      h1 { background: #F3ECC6; border-bottom-color: #736500; }
body.doc.bb div.group.software_bundle      div.navigation { background: #F3ECC6; border-top-color: #736500; }
body.doc.bb div.group.software_bundle      h2 { color: #736500; border-bottom-color: #736500; }
body.doc.bb div.group.software_bundle      a.download,
body.doc.bb div.group.software_bundle      .articleinfo     { border-left-color: #736500; }
body.doc.bb div.group.software_bundle      table.example th.title          { background-color: #736500; color:#FFFFFF; }
body.doc.bb div.group.software_bundle      table.example td.programlisting { background-color: #F3ECC6; color:#736500; }
body.doc.bb div.group.software_bundle      .navigation li:before,
body.doc.bb div.group.software_bundle      a,
body.doc.bb div.group.software_bundle      a:before  { color: #736500; }
body.doc.bb div.group.software_bundle      a:active,
body.doc.bb div.group.software_bundle      a:hover   { background: #F3ECC6; }

body.bb div.group h1 + div         { margin-top: 2em; }
body.bb div.group ul.indexpage     { margin-top: 4em; margin-left: 1em; }

body.bb .title1, body.bb h1, body.bb .subtitle1,
body.bb .title2, body.bb h2, body.bb .subtitle2,
body.bb .title3, body.bb h3, body.bb .subtitle3 {
   color: #736500;
}

/* StickyFooter ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
body.bb, body.bb .doc, body.bb .content, body.bb .group, body.bb .doclet, body.bb .section.level0 { min-height: 90vh; }
/* StickyFooter ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */

/* ===================================================================================== */
