    /* Adaptions of Material theme */

@font-face {
  font-family: 'Fira Sans';
  src: url('FiraSans-Regular.woff2') format('woff2');
}

@font-face {
  font-family: 'Ruda';
  src: url('Ruda-Regular.woff2') format('woff2');
}

html {
    overflow-y: scroll;
}

html .md-typeset :is(.admonition, details) > :last-child {
  margin-bottom: .6rem;
  margin-top: .6rem;
}

p.admonition-title {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

:root {
--md-accent-fg-color: #247FA3;
--md-default-fg-color--lighter: #cdcdcd;
--md-primary-fg-color: #1d6885;
--md-primary-fg-color: #37aae1;
--md-text-font: 'Fira Sans';



  /* Support for all WebKit browsers. */
  -webkit-font-smoothing: antialiased;
  /* Support for Safari and Chrome. */
  text-rendering: optimizeLegibility;

  /* Support for Firefox. */
  -moz-osx-font-smoothing: grayscale;

  /* Support for IE. */
  font-feature-settings: 'liga';
}

label[for=__toc]
 {
    visibility: hidden;
    position: relative;
}

label[for=__toc]:after {
    visibility: visible;
    content: "On this page";
    position: absolute;
    top: 0;
    left: 0.6rem;
}

h1, h2, h3, h4, .md-header {
    font-family: 'Ruda', sans-serif;
}

h1#glossary ~ h5 ~ p {
    font-size: .64rem;
}

.md-typeset h5 {
    color: rgba(0,0,0,.87);
    text-transform:none;
    margin-bottom:0.2rem;
    font-size: .7rem;
    font-weight: bold;
}

h1#glossary ~ h5 ~ p {
    margin-top:0;
    margin-bottom: 1rem;
}

h2:target, h3:target, h4:target {
    animation-name: highlight;
    animation-duration: 1s;
}

@keyframes highlight {
  0%   {color: rgba(0,0,0,.87); font-weight: 300}
  12%  {color: #090979; font-weight: 400}
  25%  {color: #37aae1; font-weight: 500}
  50%  {color: #d0ecf5; font-weight: 600}
  75%  {color: #37aae1; font-weight: 500}
  87%  {color: #090979; font-weight: 400}
  100% {color: rgba(0,0,0,.87); font-weight: 300}
}

.md-typeset h1 {
    margin: 0 0 1rem;
    font-size:2.4em;
}

.md-typeset h2 {
    margin: 2.5rem 0 .8rem;
    border-top: 1px solid #cdcdcd;
    padding-top: 2.5rem;
    font-size:2em;
}

.md-typeset h3 {
    font-weight: 400;
    font-size:1.7em
}

.md-typeset h4 {
    margin: 1.6rem 0 0.2rem 0;
    font-size: 1.4em;
}

.md-typeset h4 + p {
    margin-top: 0;

}

.md-typeset {
    font-size: 0.7rem;
    line-height:1.5;
}


.md-typeset h1 + h2, .tiles h2 {
    border-top: none;
    margin-top: 0;
    padding-top: 0;
}

.md-typeset td p {
    margin-top: 0;
    margin-bottom: 0.5em;
}

.md-typeset td *+p {
    margin-top: 1em;
}

.md-header {
    background-color: #37aae1;
}

.md-nav__item--active > label {
    color:#37aae1 !important;
}

.md-typeset a, .md-nav__link--active {
    color: #37aae1;
}

.md-typeset a:active, .md-typeset a:hover, .md-nav__link:hover {
    color: #247FA3;
}

.md-typeset table:not([class]) {
    box-shadow: 0 .2rem .5rem rgba(0,0,0,.05),0 0 .05rem rgba(0,0,0,.1);
    border: none;
}

.md-typeset table:not([class]) th {
    min-width: 0;
    background-color: var(--md-default-fg-color--light);
    color: var(--md-default-bg-color);
    font-weight: normal;
}

.md-typeset table ul {
    margin: 0;
}

.md-typeset table ul li {
    margin-left: 1em;
}

.md-typeset code {
    font-size: 0.8em;
}

.md-sidebar {
    padding-top: 0.8rem;
}

p.footnote {
    line-height: normal;
    margin-bottom:0;
}

a[target=_blank]::after {
   content: "\2197";
   color: #37aae1;
}

a[target=_blank]:visited {
    color: #37aae1;
}

#__consent h4 {
    display: none;
}

#__consent p {
    margin-top: 1rem;
}

.md-typeset [type="checkbox"]:checked + .task-list-indicator::before {
    background-color: #68bb63;
}

/* Own CSS*/

.tiles {
    display: flex;
    flex-wrap: wrap;
}

.tiles > a {
    flex:30%;
    margin: 0 1rem 1rem 0;
    color: rgba(0,0,0,.87);
}

.tiles div {
    height: 100%;
    background-color: #E7F5F9;
    text-align:center;
    padding: 1.3rem 1rem;
}

.tiles a:hover div {
    background: #d0ecf5;
    color: rgba(0,0,0,.87);
}

.tiles div h2 {
    font-size: 1rem;
    margin: 0;
}

.tiles div p {
    font-size: 0.7rem;
    margin: 0.3rem 0 1rem 0;
}

.tiles div p+img {
    width: 3rem;
    height: auto;
    margin: 0;
}

.tiles div img {
    margin-top: 1rem;
    height: 4.5rem;
}

.tiles span {
    color: #37aae1;
}

.comparison {
   table-layout: fixed;
   box-shadow:none;
   margin-bottom: 50px;
}

.comparison h3 {
    margin-top: 0;
}

.comparison tr.btn td {
    text-align:center;
    padding-top: 20px;
}

.comparison {
   border-spacing:  2px 2px;
   margin-top: 40px;
}

.comparison tr:nth-child(n+2) td:nth-child(n+2) {
        background-color: #E7F5F9;
}

.comparison tr:nth-last-child(-n+2) td:nth-child(n+2) {
        background-color: white;
        background-color: white;
}

.comparison tr td:nth-child(n+2) {
    width: 42%;
}

.comparison tr td:nth-child(n+2) {
    padding: 10px 15px;
}

.comparison p {
    margin-top: 0;
}

.comparison ul {
    margin: 0;
}

.comparison ul li {
    margin-bottom:0;
}

.comparison tr td:first-child {
    font-weight: bold;
    padding: 10px 10px 10px 0;
}

.comparison tr:nth-child(n+2) td {
    font-size: .7rem;
}

.comparison .tooltip {
    width: 12rem;

}

table p.note {
    font-size: .6rem;
    color: #585858;
    font-weight: normal;
    line-height:0.8rem;
}

table li > p.note {
    margin-top: 0;
}

.comparison h3 {
    margin-bottom: 0;
}

#contact-details {
    border: #ceebf2 2px solid;
    padding: 1rem 2rem;
    max-width: 25rem;
}

#contact-details ul {
    margin-top:0;
}

#contact-details p+p {
    margin-bottom:0;
}

#contact-details li {
   margin: 0.5rem 0rem 0.5rem 0.2rem;
   line-height: 1.1rem;
}

.button {
    border-radius: 3px;
      box-shadow: 2px 2px 2px grey;
      text-transform: uppercase;
      font-weight: bold;
      padding: 10px 15px;
      text-align: center;
      text-decoration: none;
      display: inline-block;
      font-size: 14px;
}


.primary {
      background-color: #37aae1;
      border: none;
      color: white !important;

}

.primary:hover {
    background-color:#247FA3;
    color:white !important;
}


.secondary {
      background-color: #ffffff;
      border: #ceebf2 2px solid;
      color:rgba(0,0,0,.87) !important;
      padding: 8px 25px !important;
}

.secondary:hover {
    background-color:#ecf7fa;
}


span.ui {
    color: #37aae1;
    font-weight:bold;
}

img[src*="#scr"], object.svg {
   width:350px;
   margin-top:10px;
   border: 1px solid #8b8b8b;
}

img[src*="#scr-large"], object.large {
   width:550px;
}

img[src*="#scr-small"], object.small {
   width:200px;
}

img[src*="#scr-full"], object.full {
    width: 100%;
}

img[src*="#ico"] {
   width:20px;
}

img[src*="scr-side-by-side"], object.side-by-side {
    width: 45%;
}

object.no-border {
    border: none;
}

a:not([href]) {
   color: rgba(0,0,0,.87);
}

a:hover:not([href]) {
   color: rgba(0,0,0,.87);
}


.noHover tr{
   background: white;
}

/* For BRP frame tables*/


td.multiple {
	border-top: 0;
	border-bottom: 0;
}

td.multiple-top {
	border-bottom: 0;
}

td.multiple-bottom {
	border-top: 0;
}

td.multiple-optional {
	background-color: #CCEEFF;
	border-top: 0;
	border-bottom: 0;
}

td.multiple-optional-top {
	background-color: #CCEEFF;
	border-bottom: 0;
}

td.multiple-optional-bottom {
	background-color: #CCEEFF;
	border-top: 0;
}

.var-table th {
	background-color: rgba(0,0,0,.54);
	color: #FFFFFF;
	font-size: 0.9em;
}

tr.implicit {
	background-color: #EEEDED;
}

tr.optional {
	background-color: #CCEEFF;
}

span.keyword {
	font-weight: bold;
}

span.name {
	font-style: normal;
}

span.optional {
	font-style: italic;
	font-weight: bold;
	font-family: 'Ruda', sans-serif;
}

table.var-table {
	border-collapse: collapse;
	box-shadow: 0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12),0 3px 1px -2px rgba(0,0,0,.2);
	border-radius: 2px;
}

table.var-table tr:hover {
     background-color:rgba(0,0,0,.035);
    box-shadow:inset 0 .05rem 0 #fff;
}

table.var-table th {
    font-weight: normal;
    min-width: 7em;
}

table.var-table td {
    border-top: .05rem solid rgba(0,0,0,.07);
}

table.var-table td.multiple + td {
    border-left: .05rem solid rgba(0,0,0,.07);
}


.var-table th, .var-table td {
	padding: 0.8em;
	vertical-align: top;
	font-size: 0.9em;
	text-align: left;
}

th {
     position: relative;
        }

.tooltip{
            display: none;
            position: absolute;
            z-index: 100;
            background-color: #37aae1;
            padding: 0.6rem;
            color: white;
            font-style:normal;
            box-shadow: 0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12),0 3px 1px -2px rgba(0,0,0,.2);
	        border-radius: 2px;
	        max-width: 15rem;
	        min-width: 10rem;
        }

.tooltip a, .tooltip a:hover {
            color: white;
            text-decoration: underline;
}


.tooltip ul li, .md-typeset ul li {
            margin-top:0;
            margin-bottom:0.3rem;
}



.tooltip-th {
            top: 2.5rem;
            left: 0rem;
}

.tooltip-remark {
    right: 21rem;
}

th:hover span.tooltip, td:hover span.tooltip{
    display:block;
}

#cross-reference td, #cross-reference th {
    text-align: center;
}

#cross-reference td:first-child {
    text-align: left;
}

th img, td img {
    height: 0.7rem;
    padding-left: 0.1rem;
    vertical-align: middle;
    margin-top: -0.1rem;
}

.tabbed figure {
   display: block;
   margin-left: 0;
   border-bottom: 1px solid silver;
   clear: both;
}

.tabbed > input, .tabbed figure > div {
    display: none;
}

.tabbed figure>div {
  padding: 20px;
  width: 100%;
  border: 1px solid silver;
  background: #fff;
  line-height: 1.5em;
  letter-spacing: 0.3px;
  color: #444;
}

#tab1:checked ~ figure .tab1,
#tab2:checked ~ figure .tab2 {
    display: block;
}

nav-tab label {
   float: left;
   padding: 15px 15px;
   border-top: 1px solid silver;
   border-right: 1px solid silver;
   background: #30abcd;
   color: #ffffff;
   cursor: pointer;
}

nav-tab label:nth-child(1) {
    border-left: 1px solid silver;
}

nav-tab label:hover {
    background: h#37aae1;
}

nav-tab label:active {
    background: #ffffff;
}

#tab1:checked ~ nav-tab label[for="tab1"],
#tab2:checked ~ nav-tab label[for="tab2"] {
  background: white;
  color: rgba(0,0,0,.87);
  position: relative;
  border-bottom: none;
}

#tab1:checked ~ nav-tab label[for="tab1"]:after,
#tab2:checked ~ nav-tab label[for="tab2"]:after {
  content: "";
  display: block;
  position: absolute;
  height: 2px;
  width: 100%;
  background: white;
  left: 0;
  bottom: -1px;
}

h1#third-party-licenses ~ div > pre {
    height: 8rem;
    overflow: auto;
}

h1#third-party-licenses ~ div > pre span {
    color: rgba(0,0,0,.87);
}

h1#third-party-licenses ~ div > button.md-clipboard {
    right: 1rem;
}


.md-typeset .admonition.expand,
.md-typeset details.expand {
  border: none;
  box-shadow: none;
  margin-top: -1em;
  padding-right: 0;
  padding-left: 0;
}

ul + details.expand, ol + details.expand {
  margin-top: 1em !important;
}

h4 + details.expand, h5 + details.expand {
 margin-top: 0 !important;
}

.md-typeset .expand > summary {
  background-color: transparent;
  display: block;
  font-weight: normal;
  padding: 0 0 0 0.8rem !important;
  color: #37aae1;
  border: none;
  display: inline flow-root list-item;
}

.md-typeset details,
.md-typeset .expand > summary::before,
.md-typeset .expand > summary::after {
  content: "";
  background-color: transparent;
}


.md-typeset details.expand[open] {
    padding-bottom: 0.4rem;
    border-bottom: 1px solid #cdcdcd;
    border-radius: 0;
    margin-bottom: 3em;
}

.md-typeset details.expand[open] > :nth-child(2) {
    padding-top: 1rem;
    border-top: 1px solid #cdcdcd;
}

.md-typeset details.expand .admonition {
    width: 95%;
}

details.expand  p {
    margin-top: 1rem;
    margin-bottom: 0.5rem;
}

.md-typeset p + details.expand {
    margin-top: 0.4rem;
}

object.svg + details.expand {
    margin-top: 0.1rem;
}

object.svg + details.expand {
    margin-top: 0.1rem;
}

#host-protocols {
    line-height: 1.4;
}

.md-typeset pre {
    margin-top: 0;
}

.codehilite * {
    color: #37474f !important;
}

.md-typeset .md-content__button, .md-header__source {
    visibility: hidden;
}


.md-sidebar__scrollwrap:hover {
    scrollbar-color: #e7f5f9 transparent;
}

/* custom footer */

div#custom-footer {
    background: #222222;
    color: white;
    font-size: 0.6rem;

}

div#custom-footer > div {
    width: 35rem;
    margin-left: auto;
    margin-right:auto;

}

div#custom-footer p {
   line-height: 1.6;
}

div#custom-footer #contact {
    float: left;
    padding: 2rem 0;
}

div#custom-footer #legal {
    float: right;
    padding: 2rem 0;
}

div#custom-footer #legal ul {
    padding-left: 0.5rem;
}

div#custom-footer #legal ul li {
    padding-bottom: 0.3rem;
}

div#custom-footer h4 {
    color: #37aae1;
    font-size: 0.7rem;
    font-weight: normal;
}

div#custom-footer a {
    color: white;
}

div#custom-footer a[target=_blank]::after {
   content: none;
}

div#custom-footer a:hover {
    color: rgba(255,255,255,0.7);
}

.helptext {
  position: absolute;
  float: left;
  display: none;
  background-color: #37aae1;
  padding: 0.6rem;
  color: white;
  font-style: normal;
  box-shadow: 0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12),0 3px 1px -2px rgba(0,0,0,.2);
  border-radius: 2px;
  max-width: 15rem;
  min-width: 10rem;
}

.helptext p {
  margin-bottom: 5px;
  margin-top: 0px;
}

[id*="-diagram-"] {
  z-index: -1;
  float: left;
  margin-bottom: 3rem;
  border: none !important;
}

.md-typeset .example > .admonition-title::before,
.md-typeset .example > summary::before,
.md-typeset .example > summary::after  {
    background-color: #312783;
}
.md-typeset .admonition.example, .md-typeset details.example {
    border-color: #312783;
}

.md-typeset .example > .admonition-title, .md-typeset .example > summary {
  background-color: #E4E0F5;
}

/* Mobile view */

@media all and (max-width: 76.1875em) {

	.md-nav--primary .md-nav__title[for="__drawer"] {
		background: #37aae1;
	}

	.md-nav__source {
		display: none;
	}

	label[for=__toc] {
            visibility: visible;
            position: relative;
	}

	label[for=__toc]:after {
        content: "";
	}

	.md-nav__link--active .md-nav__icon {
		display:none;
	}

	div#custom-footer > div {
	    margin-left: 1.2rem;
	}
}

@media screen and (max-width:44.9375em) {
    div#custom-footer #legal, div#custom-footer #contact {
        float: none;
    }
}