:root {
    --accept-header-color: #006207;
    --all-bg-color: #FFFFFF;
    --black-icons-filter: invert(1);
    --block-bg-color: #20252C;
    --block-border-color: rgba(220, 220, 255, 0.1);
    --block-border-radius: 6px;
    --code-color: #FFFFFF;
    --delete-method-background-color: #E12727;
    --delete-method-color: #B51D1D;
    --get-method-background-color: #DAF1E4;
    --get-method-color: #008E70;
    --head-method-background-color: rgba(217, 115, 234, .08);
    --head-method-color: rgb(217, 115, 234);
    --header-bg-color: #021E40;
    --highlighted-bg-color: #F0F4F6;
    --icons-opacity: .28;
    --highlighted-text-color: #0C6596;
    --innner-block-border-radius: 2px;
    --link-color: #2e82e5;
    --models-section-bg-color: #CFDAE2;
    --options-method-background-color: rgba(210, 175, 60, .08);
    --options-method-color: rgb(210, 175, 60);
    --patch-method-background-color: #E3DBED;
    --patch-method-color: #764AA6;
    --post-method-background-color: #DFF2FF;
    --post-method-color: #1D98DA;
    --primary-icon-color: #000000;
    --primary-text-color: #000;
    --put-method-background-color: #FFE8AE;
    --put-method-color: #EA6918;
    --secondary-bg-color: #084875;
    --secondary-icon-opacity: .5;
    --secondary-text-color: #64717F;
    --selected-bg-color: #E6ECF0;
    --soft-bg-color: #E6ECF0;
    --swagger-color: #62a03f;
    --title-text-color: #FFFFFF;
}

@media (prefers-color-scheme: dark) {
    :root {
        --accept-header-color: #A7DC0F;
        --all-bg-color: #010e1e; /* obtained using https://hslpicker.com/#021E40 */
        --black-icons-filter: invert(1);
        --block-bg-color: #20252C;
        --block-border-color: rgba(220, 220, 255, 0.1);
        --block-border-radius: 6px;
        --code-color: #FFFFFF;
        --delete-method-background-color: #E12727;
        --delete-method-color: #B51D1D;
        --get-method-background-color: #DAF1E4;
        --get-method-color: #008E70;
        --head-method-background-color: rgba(217, 115, 234, .08);
        --head-method-color: rgb(217, 115, 234);
        --header-bg-color: #031e31;
        --highlighted-bg-color: #021E40;
        --icons-opacity: .28;
        --highlighted-text-color: #6ABCF5;
        --innner-block-border-radius: 2px;
        --link-color: #2e82e5;
        --models-section-bg-color: #000;
        --options-method-background-color: rgba(210, 175, 60, .08);
        --options-method-color: rgb(210, 175, 60);
        --patch-method-background-color: #E3DBED;
        --patch-method-color: #764AA6;
        --post-method-background-color: #DFF2FF;
        --post-method-color: #1D98DA;
        --primary-icon-color: #fff;
        --primary-text-color: #fff;
        --put-method-background-color: #FFE8AE;
        --put-method-color: #EA6918;
        --secondary-bg-color: #084875;
        --secondary-icon-opacity: .5;
        --secondary-text-color: #E6ECF0;
        --selected-bg-color: #313845;
        --soft-bg-color: #031e31;
        --swagger-color: #62a03f;
        --title-text-color: #FFFFFF;
    }
}

/* Taken from https://github.com/ilyamixaltik/swagger-themes/ /*
/* primary colors */

.swagger-ui .topbar .download-url-wrapper .select-label select {
    border: 2px solid var(--link-color);
}

.swagger-ui .info .title small.version-stamp {
    background-color: var(--link-color);
}

.swagger-ui .info a {
    color: var(--link-color);
}

.swagger-ui .response-control-media-type--accept-controller select {
    border-color: var(--accept-header-color);
}

.swagger-ui .response-control-media-type__accept-message {
    color: var(--accept-header-color);
}

.swagger-ui .btn.authorize {
    color: var(--post-method-color);
}

.swagger-ui .btn.authorize {
    border-color: var(--post-method-color);
}

.swagger-ui .btn.authorize svg {
    fill: var(--post-method-color);
}

/* methods colors */
/* http post */

.swagger-ui .opblock.opblock-post .opblock-summary-method {
    background: var(--post-method-color);
}

.swagger-ui .opblock.opblock-post .opblock-summary {
    border-color: var(--post-method-color);
}

.swagger-ui .opblock.opblock-post {
    background: var(--post-method-background-color);
    border-color: var(--post-method-color);
}

.swagger-ui .opblock.opblock-post .tab-header .tab-item.active h4 span::after {
    background: var(--post-method-color);
}

/* http get */

.swagger-ui .opblock.opblock-get .opblock-summary-method {
    background: var(--get-method-color);
}

.swagger-ui .opblock.opblock-get .opblock-summary {
    border-color: var(--get-method-color);
}

.swagger-ui .opblock.opblock-get {
    background: var(--get-method-background-color);
    border-color: var(--get-method-color);
}

.swagger-ui .opblock.opblock-get .tab-header .tab-item.active h4 span::after {
    background: var(--get-method-color);
}

/* http head */

.swagger-ui .opblock.opblock-head .opblock-summary-method {
    background: var(--head-method-color);
}

.swagger-ui .opblock.opblock-head .opblock-summary {
    border-color: var(--head-method-color);
}

.swagger-ui .opblock.opblock-head {
    background: var(--head-method-background-color);
    border-color: var(--head-method-color);
}

.swagger-ui .opblock.opblock-head .tab-header .tab-item.active h4 span::after {
    background: var(--head-method-color);
}

/* http put */

.swagger-ui .opblock.opblock-put .opblock-summary-method {
    background: var(--put-method-color);
}

.swagger-ui .opblock.opblock-put .opblock-summary {
    border-color: var(--put-method-color);
}

.swagger-ui .opblock.opblock-put {
    background: var(--put-method-background-color);
    border-color: var(--put-method-color);
}

.swagger-ui .opblock.opblock-put .tab-header .tab-item.active h4 span::after {
    background: var(--put-method-color);
}

/* http delete */

.swagger-ui .opblock.opblock-delete .opblock-summary-method {
    background: var(--delete-method-color);
}

.swagger-ui .opblock.opblock-delete .opblock-summary {
    border-color: var(--delete-method-color);
}

.swagger-ui .opblock.opblock-delete {
    background: var(--delete-method-background-color);
    border-color: var(--delete-method-color);
}

.swagger-ui .opblock.opblock-delete .tab-header .tab-item.active h4 span::after {
    background: var(--delete-method-color);
}

/* http options */

.swagger-ui .opblock.opblock-options .opblock-summary-method {
    background: var(--options-method-color);
}

.swagger-ui .opblock.opblock-options .opblock-summary {
    border-color: var(--options-method-color);
}

.swagger-ui .opblock.opblock-options {
    background: var(--options-method-background-color);
    border-color: var(--options-method-color);
}

.swagger-ui .opblock.opblock-options .tab-header .tab-item.active h4 span::after {
    background: var(--options-method-color);
}

/* http patch */

.swagger-ui .opblock.opblock-patch .opblock-summary-method {
    background: var(--patch-method-color);
}

.swagger-ui .opblock.opblock-patchs .opblock-summary {
    border-color: var(--patch-method-color);
}

.swagger-ui .opblock.opblock-patch {
    background: var(--patch-method-background-color);
    border-color: var(--patch-method-color);
}

.swagger-ui .opblock.opblock-patch .tab-header .tab-item.active h4 span::after {
    background: var(--patch-method-color);
}

/* blocks */
body {
    background-color: var(--all-bg-color);
    color: white;
}

.swagger-ui .topbar {
    background-color: var(--header-bg-color);
}

.swagger-ui .scheme-container {
    background: var(--secondary-bg-color);
}

.swagger-ui section.models .model-container {
    background: var(--secondary-bg-color);
    border-radius: var(--innner-block-border-radius);
}

.swagger-ui select {
    background: var(--secondary-bg-color);
    border-radius: var(--block-border-radius);
    color: var(--title-text-color);
}

.swagger-ui section.models {
    border: 1px solid var(--block-border-color);
    background-color: var(--block-bg-color);
}

.swagger-ui .opblock .opblock-section-header {
    background: var(--secondary-bg-color);
}

.swagger-ui .body-param__example {
    background-color: var(--secondary-bg-color) !important;
    border-radius: var(--block-border-radius) !important;
}

.swagger-ui .example {
    background-color: var(--secondary-bg-color) !important;
    border-radius: var(--block-border-radius) !important;
}

.swagger-ui .copy-to-clipboard {
    background: rgba(255, 255, 255, var(--icons-opacity));
    border-radius: var(--block-border-radius);
}

.swagger-ui .opblock .opblock-summary-method {
    border-radius: var(--innner-block-border-radius);
}

.swagger-ui input[type="email"],
.swagger-ui input[type="file"],
.swagger-ui input[type="password"],
.swagger-ui input[type="search"],
.swagger-ui input[type="text"],
.swagger-ui textarea {
    background: var(--secondary-bg-color);
    border: 1px solid var(--block-border-color);
    border-radius: var(--block-border-radius);
    color: var(--primary-text-color);
    outline: none;
}

.swagger-ui .dialog-ux .modal-ux-header {
    border-bottom: 1px solid var(--block-border-color);
}

.swagger-ui .btn {
    border: 2px solid var(--block-border-color);
    border-radius: var(--block-border-radius);
    color: var(--primary-text-color);
}

.swagger-ui .dialog-ux .modal-ux {
    background: var(--block-bg-color);
    border: 1px solid var(--block-border-color);
    border-radius: var(--block-border-radius);
}

.swagger-ui .auth-btn-wrapper {
    justify-content: left;
}

.swagger-ui .opblock-tag {
    border-bottom: 1px solid var(--block-border-color);
}

.swagger-ui section.models.is-open h4 {
    border-bottom: 1px solid var(--block-border-color);
}

.swagger-ui .opblock {
    border-radius: var(--block-border-radius);
}

.swagger-ui section.models {
    border-radius: var(--block-border-radius);
}

/* button white outline fix */

.swagger-ui .model-box-control:focus,
.swagger-ui .models-control:focus,
.swagger-ui .opblock-summary-control:focus {
    outline: none;
}

/* icons */

.swagger-ui .model-toggle::after {
    opacity: var(--icons-opacity);
    filter: var(--black-icons-filter);
}

.swagger-ui svg:not(:root) {
    fill: var(--primary-icon-color);
}

.swagger-ui .opblock-summary-control svg:not(:root) {
    opacity: var(--secondary-icon-opacity);
}

/* text */

.swagger-ui {
    color: var(--primary-text-color);
}

.swagger-ui .info .title {
    color: var(--primary-text-color);
}

.swagger-ui a.nostyle {
    color: var(--primary-text-color);
}

.swagger-ui .model-title {
    color: var(--primary-text-color);
}

.swagger-ui .models-control {
    color: var(--primary-text-color);
}

.swagger-ui .dialog-ux .modal-ux-header h3 {
    color: var(--primary-text-color);
}

.swagger-ui .dialog-ux .modal-ux-content h4 {
    color: var(--primary-text-color);
}

.swagger-ui .dialog-ux .modal-ux-content p {
    color: var(--secondary-text-color);
}

.swagger-ui label {
    color: var(--primary-text-color);
}

.swagger-ui .opblock .opblock-section-header h4 {
    color: var(--title-text-color);
}

.swagger-ui .tab li button.tablinks {
    color: var(--primary-text-color);
}

.swagger-ui .opblock-description-wrapper p,
.swagger-ui .opblock-external-docs-wrapper p,
.swagger-ui .opblock-title_normal p {
    color: var(--primary-text-color);
}

.swagger-ui table thead tr td, .swagger-ui table thead tr th {
    border-bottom: 1px solid var(--block-border-color);
    color: var(--primary-text-color);
}

.swagger-ui .response-col_status {
    color: var(--primary-text-color);
}

.swagger-ui .response-col_links {
    color: var(--secondary-text-color);
}

.swagger-ui .parameter__name {
    color: var(--primary-text-color);
}

.swagger-ui .parameter__type {
    color: var(--secondary-text-color);
}

.swagger-ui .prop-format {
    color: var(--secondary-text-color);
}

.swagger-ui .opblock-tag {
    color: var(--primary-text-color);
}

.swagger-ui .opblock .opblock-summary-operation-id,
.swagger-ui .opblock .opblock-summary-path,
.swagger-ui .opblock .opblock-summary-path__deprecated {
    color: var(--primary-text-color);
}

.swagger-ui .opblock .opblock-summary-description {
    color: var(--secondary-text-color);
}

.swagger-ui .info li,
.swagger-ui .info p,
.swagger-ui .info table {
    color: var(--secondary-text-color);
}

.swagger-ui .model {
    color: var(--secondary-text-color);
}


/* additional tweaks */

.swagger-ui .renderedMarkdown {
    font-weight: 300;
}

.swagger-ui .renderedMarkdown strong {
    font-weight: 600;
    color: var(--highlighted-text-color);
}

.swagger-ui .prop-enum {
    color: var(--highlighted-text-color);
}

.swagger-ui table.model .property-row td {
    color: var(--highlighted-text-color);
}

.swagger-ui span.model-title {
    color: var(--primary-text-color);
}

.swagger-ui .copy-to-clipboard {
    background-color: var(--header-bg-color);
}

.swagger-ui .btn {
    color: var(--title-text-color);
    border-color: var(--title-text-color);
}

.swagger-ui .model {
    color: var(--primary-text-color);
}

.swagger-ui {
    font-size: 12px;
}

.swagger-ui .opblock-description-wrapper {
    font-size: 1rem;
}

.swagger-ui .opblock-description-wrapper p {
    font-size: inherit;
}

.swagger-ui .scheme-container {
    background-color: var(--soft-bg-color);
}

.swagger-ui section.models {
    background-color: var(--selected-bg-color);
}

.swagger-ui section.models .model-container {
    background-color: var(--all-bg-color);
}

.swagger-ui section.models .model-container:hover {
    background-color: var(--highlighted-bg-color);
}

.swagger-ui input[type="text"], .swagger-ui textarea {
    color: var(--code-color);
}

.swagger-ui .opblock-summary-control > * {
    padding: 0 0 0 10px;
}

.swagger-ui .opblock-delete .btn.execute {
    background-color: var(--delete-method-color);
    border-width: 0;
}

.swagger-ui .opblock-put .btn.execute {
    background-color: var(--put-method-color);
    border-width: 0;
}

.swagger-ui .opblock-get .btn.execute {
    background-color: var(--get-method-color);
    border-width: 0;
}

.swagger-ui .opblock-post .btn.execute {
    background-color: var(--post-method-color);
    border-width: 0;
}

.swagger-ui .opblock-patch .btn.execute {
    background-color: var(--patch-method-color);
    border-width: 0;
}

.swagger-ui .opblock.opblock-delete,
.swagger-ui .opblock.opblock-get,
.swagger-ui .opblock.opblock-post,
.swagger-ui .opblock.opblock-put,
.swagger-ui .opblock.opblock-patch
{
    background-color: var(--all-bg-color);
}

.swagger-ui .dialog-ux .modal-ux {
    background-color: var(--all-bg-color);
}
    
.swagger-ui .topbar-wrapper > a.link {
    background-image: url(/swagger-ui/scaleaq_logo.svg);
    background-repeat:no-repeat;
    background-position: 0 center;
}

.swagger-ui .topbar-wrapper > a.link > svg,
.swagger-ui .topbar-wrapper > a.link > img {
    opacity: 0;
    visibility: hidden;
}

.swagger-ui .renderedMarkdown em {
    background-color: var(--soft-bg-color);
    padding: 0.2rem;
    font-style: normal;
}

.swagger-ui a,
.swagger-ui a:visited {
    color: var(--highlighted-text-color);
}

.swagger-ui .opblock-description-wrapper, 
.swagger-ui .opblock-external-docs-wrapper, 
.swagger-ui .opblock-title_normal {
    color: var(--secondary-text-color);
}

.swagger-ui .model .external-docs, 
.swagger-ui table.model tr.description {
    color: var(--secondary-text-color);
}

.swagger-ui .model .property.primitive {
    color: var(--secondary-text-color);
}
