:root {
    /* LIGHT MODE MAPPING (Default) */
    --doc-bg: #ffffff;           /* --bg3 */
    --doc-border: #e3e3e3;       /* --bg1 */
    --doc-text: #404040;         /* --c2 */
    --doc-heading: #000000;      /* --c1 */
    --doc-subheading: #404040;   /* --c2 */
    --doc-link: #17baae;         /* --logo-c2 */
    --doc-fnhead: #f5f5f5;       /* --bg2 */
    --doc-code-border: #cccccc;  /* --button-bg */
    --doc-fixme-bg: #f59b10;     /* --logo-c3 (Orange) */
    --doc-meta: #808080;         /* --logo-c1 */
}

@media (prefers-color-scheme: dark) {
    :root {
        /* DARK MODE MAPPING */
        --doc-bg: #232323;           /* --client-bg1 */
        --doc-border: #161616;       /* --client-bg2 */
        --doc-text: #efefef;         /* --c1 */
        --doc-heading: #ffffff;      /* --white */
        --doc-subheading: #939393;   /* --c2 */
        --doc-link: #17baae;         /* --logo-c2 */
        --doc-fnhead: #333333;       /* --bg2 */
        --doc-code-border: #3D3D3D;  /* --button-bg */
        --doc-fixme-bg: #7a4d08;     /* Dimmed Orange */
        --doc-meta: #939393;         /* --c2 */
    }
}

@font-face {
    font-family: "titillium";
    src: url('../../web1/fonts/titilliumweb-regular.ttf') format('truetype');
}

body {
    font-family: titillium, 'Open Sans', Arial;
    font-style: normal;
    font-weight: normal;
    color: var(--doc-text);
    background-color: var(--doc-bg);
    margin: 0;
    border: 10px solid var(--doc-border);
    overflow: scroll;
    font-size: 15px;
    padding: 10px 40px 40px 40px;
}

p {
    margin: 10px 0px 10px 0px;
}

dl {
    margin:0px;
}

dt {
    font-weight:bold;
}

dd {
}

a, a:visited {
    text-decoration:none;
    color: var(--doc-link);
}

h1 {
    color: var(--doc-heading);
    margin-top: 30px;
    margin-bottom: 0;
}

h2 {
    padding-bottom: 5px;
    border-bottom: 1px solid var(--doc-code-border);
    color: var(--doc-subheading);
}

h3 {
    margin-top: 20px;
    margin-bottom: 0px;
    color: var(--doc-heading);
}

h4 {
    margin-top: 10px;
    margin-bottom: 3px;
    color: var(--doc-meta);
}

td {
    padding-left: 10px;
    vertical-align: top;
}

td.param {
    text-align: right;
    white-space: nowrap;
}

pre {
    margin: 0px;
    overflow: auto;
    border: 1px solid var(--doc-code-border);
}

pre.sample {
    width: 100%;
    height: 400px;
}

pre.license {
    padding: 10px;
    width: 100%;
    max-height: 250px;
    overflow: auto;
    font-size: 8pt;
}

code > a {
    color: var(--doc-link) !important;
}

div.fixme {
    border: 1px solid var(--doc-meta);
    background-color: var(--doc-fixme-bg);
    color: #000; 
}

.fnhead {
    background: var(--doc-fnhead);
    font-weight: bold;
    margin-bottom: 10px;
    margin-top: 10px;
    padding: 5px 10px 5px 10px;
}