@font-face {
    font-family:'DINWeb-Medium';
    src:url('DINWeb-Medium.woff');
}

@font-face {
    font-family:'DINWeb';
    src:url('DINWeb.woff');
}

body {
    background-color: black;
}

.docs-body {
    font-family: DINWeb-Medium, -apple-system, sans-serif;
    background-color: black;
    padding: 24px;
    margin-left: auto;
    margin-right: auto;
    max-width: 100%;
}

.docs-body a {
    color: #020eab;
    text-decoration: none;
    font-weight: bold;
}
.docs-body .apilink {
    font-family: monospace;
    font-size: 17px;
    letter-spacing: -0.5px;
}

.manual-content h1 a,
.manual-content h2 a,
.manual-content h3 a,
.manual-content h4 a,
.manual-content h5 a,
.manual-content h6 a {
    color: black;
}

.docs-body img {
    max-width: 100%;
    box-shadow: 0px 4px 20px #333333;
    margin: 20px;
}

.admonition {
    border: 1px solid #b3b3b3;
    border-top: 4px solid black;
    background-color: #f1f1f1;
    padding: 3px;
}

.admonition.warning {
    border-top: 4px solid #cc0000;
}

.highlight {
    border: 1px solid #b3b3b3;
    background-color: #f1f1f1;
    overflow: auto;
    padding: 6px;
}

.highlight pre {
    margin: 0;
}

code {
    background-color: #eeeeee;
    color: black;
}

pre code {
    display: block;
    padding: 5px;
}

blockquote {
    background-color: #eeeeee;
    margin: 0px;
    padding: 15px;
}

ol li ol {
    list-style-type: lower-alpha;
}


.manual-toc {
    color: black;
    background-color: #d6dceb;
    font-weight: bold;

    display: block;
    float: right;
    width: 20%;
    min-width: 300px;
    top: 0;
    z-index: 10000;
    margin-left: 20px;
}

@media (max-width: 600px) {
    .manual-content {
        position: static;
        min-width: 0;
        padding: 20px 30px 20px !important;
    }
    .manual-toc {
        float: none;
        width: auto;
        min-width: 0;
        margin-left: 0;
        margin-right: 0;
    }
}

@media (min-width: 601px) and (max-width: 992px) {
    .manual-content {
        position: static;
        min-width: 0;
    }
    .manual-toc {
        float: none;
        width: auto;
        min-width: 0;
        margin-left: 0;
        margin-right: 0;
    }
}

@media (min-width: 993px) and (max-width: 1367px) {
    body {
        margin-left: 24px;
        margin-right: 24px;
        max-width: 100%;
    }
    .manual-content {
        min-width: 300px;
    }
    .manual-toc {
        float: right;
        max-width: 300px;
        min-width: 100px;
        width: auto;
        padding-left: 1em;
        padding-right: 1em;
    }
}

.manual-toc p {
    color: black;
    font-size: larger;
    text-align: center;
    margin-top: 0;
    margin-bottom: 0;
    padding-top: 1em;
}

.manual-toc > ul {
    padding: 0px;
}

.manual-toc > ul > li {
    padding: 12px;
    list-style-position: inside;
}

.manual-toc ul { list-style-type: none; }
.manual-toc ul { counter-reset: toc-level-1; }
.manual-toc li { counter-increment: toc-level-1; }
.manual-toc li > a:before { content: counter(toc-level-1)". "; }
.manual-toc li ul {	counter-reset: toc-level-2; }
.manual-toc li li { counter-increment: toc-level-2; }
.manual-toc li li a:before { content: counter(toc-level-1)"."counter(toc-level-2)" "; }
.manual-toc li li ul {	counter-reset: toc-level-3; }
.manual-toc li li li { counter-increment: toc-level-3; }
.manual-toc li li li a:before { content: counter(toc-level-1)"."counter(toc-level-2)"."counter(toc-level-3)" "; }
.manual-inactive-chapter li ul { display: none; }

.manual-current-chapter {
    background-color: white;
}

.manual-current-chapter ul {
    padding-left: 20px;
}

.manual-active-chapter > a {
    color: black;
}

.manual-current-chapter > ul { margin-top: 14px; }
.manual-current-chapter li { padding-top: 18px; font-size: 14px; }
.manual-current-chapter > ul > li:first-child { padding-top: 0px; }

.manual-current-chapter li > ul > li > ul {
    display: none;
}

ul.subchapters { border-left: 2px dotted #b3b3b3; }
ul.subchapters li > a:before { content: ""; }
ul.subchapters .manual-active-chapter > a { border-bottom: 2px solid black; }

.manual-content {
    background-color: white;
    overflow: hidden;
    padding: 20px 50px 40px;
}

.manual-content li {
    margin: 0.5em 0;
}

.manual-content h2 {
    margin: 1.5em 0 1em 0;
}

.manual-content table {
    margin-bottom: 1.5em;
    width: 100%;
    border-collapse: collapse;
    display: block;
    overflow-x: auto;
}

.manual-content th {
    background-color: #d6dceb;
}

.manual-content th, .manual-content td {
    border: 1px solid #b3b3b3;
    padding: 12px;
    text-align: left;
}

.manual-content.api dt {
    font-style:italic;
    margin-bottom: 1em;
}

.manual-content.studio dt {
    margin-bottom: 1em;
}

/* Exclude token links (e.g. "Optional", "Output") - TODO: these need proper styling */
.manual-content.api dt a.token {
    font-style:initial;
}

.manual-content.studio p {
    line-height: 24px;
}

.manual-content.api dd {
    margin-bottom: 2em;
}

.manual-content.studio dd {
    line-height: 24px;
    margin-inline-start: 24px;
    margin-bottom: 1em;
}

.manual-content.api dd ul {
    margin: 0;
    padding: 0.75em 0 0.5em 1em;
    font-family: DINWeb;
    border: 1px solid #b3b3b3;
    width:max-content;
}

.manual-content.api dd ul li {
    margin: 0;
    margin-right: 1em;
    display: inline;
}

.manual-content.api dd ul li .label {
    font-weight: bold;
}

.manual-content.api dd p {
    margin: 0.25em;
}

.manual-footer {
    color: white;
    padding: 20px;
    font-size: smaller;
}

div.language-selector {
    display: -webkit-flex;
    display: flex;
    text-align: center;
}

div.language-tab {
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    border: 1px solid #bbbbbb;
    border-top-left-radius: 6px;
    border-top-right-radius: 6px;
    box-sizing: content-box;
    max-width: 30px;
    padding: 2px 10px;
    margin-right: -1px;
    margin-bottom: -1px;
    cursor: pointer;
}

.language-tab:hover {
    background-color: #d6dceb;
}

.language-tab.selected {
    background-color: #f1f1f1;
    border-bottom-width: 0;
}

.language-tab.selected:after {
    content: '';
    width: 100%;
    height: 3px;
    bottom: -1px;
    left: 0;
    background: inherit;
}

div.language-selector + p {
    display: none;
}

a.token, .token {
    padding: 6px;
    margin-left: 8px;
    color: black;
    font-size: small;
    font-weight: normal;
    border: 1px solid #bbbbbb;
    border-radius: 6px;
}

a.token:hover {
    background-color: #d6dceb;
}

[id]:target { animation:highlighter 3s }
@keyframes highlighter { 25% { background-color: gold; } 75% { background-color: gold; } }
