#nav-tree a[class^='struct'],
#nav-tree a[class^='class'],
#nav-tree a[class^='namespace'],
#nav-tree a[class^='enum'] {
    /*font-family: var(--font-family-monospace); */
    /* font-size: var(--code-font-size); */
}

html {
    --ultralight-color: #6f00ff;
    --primary-color: #6f00ff;
    --primary-color-lighter: #a774ea;
    --primary-highlight-color: rgba(111, 0, 255, 0.05);
    --primary-underline-color: #3341532f;
    --page-secondary-foreground-color: #6f708e;
    --primary-light-color: #ba93f4;
    --primary-dark-color: #505050;
    --fragment-background: #f9f8fa;
    --fragment-background-lighter: #fff;
    --page-foreground-color: #2f4153;
    --page-foreground-color-lighter: #878c92;
    --tablehead-background: #f9f8fa;
    --fragment-link: #9c4eff;
    --invariant-color: #f1fff8;
    --invariant-color-dark: #44b86f;
    --invariant-color-darker: #6b8772;
    --note-color: #fffae6b5;
    --note-color-dark: #ffbe3e;
    --note-color-darker: #aa8f59;
    --warning-color: #fdefed;
    --warning-color-dark: #f03737;
    --warning-color-darker: #916063;
    --spacing-medium: 16px;
    --fragment-comment: #9493a4;
    --fragment-keyword: #d16cc6;
    --fragment-keywordflow: #f5b007;
    --fragment-keywordtype: #b477fb;
    --fragment-token: #55ab7c;
    --side-nav-arrow-opacity: 0.5;
}



#projectlogo img {
    max-height: calc(var(--title-font-size) * 1.3);
}

/*
#nav-tree .label a.nolink {
    border-bottom: 1px solid var(--primary-underline-color);
}
*/

#nav-tree .label a {
    padding: 2px;
}

div#nav-sync {
    display: none;
}

div.textblock h1, div.textblock h2 {
    font-weight: normal;
}

div.textblock h1, div.textblock h2, div.textblock h3, div.textblock h4 {
    margin-top: 1.5em;
}

dl.warning, dl.attention, dl.note, dl.deprecated, dl.bug, dl.invariant, dl.pre, dl.post, dl.todo, dl.remark {
    margin: 2em var(--spacing-medium);
}

dl.warning a {
    color: var(--warning-color-dark) !important;
}

dl.note a {
    color: var(--note-color-dark) !important;
}

dl.pre a, dl.invariant a {
    color: var(--invariant-color-dark) !important;
}

dl.section.user {
    margin: 2em 0;
}

dl.section dd, dl.bug dd, dl.deprecated dd, dl.todo dd {
    margin: 0.5em 0;
    line-height: 1.5;
}

table.memname {
    line-height: 1.25em;
}

table.params td {
    padding: 0.25em 0;
}

table.params .paramname {
    padding-right: 1.5em;
}

table.params td.paramname + td {
    padding-right: 4em;
}

#nav-tree .selected {
    background: var(--primary-highlight-color);
}

.memItemRight > *:first-child, .memTemplItemRight > *:first-child  {
    font-weight: bold;
}

.memItemRight > a:not(a:first-child), .memTemplItemRight > a:not(a:first-child), .memItemLeft > a, .memTemplItemLeft > a {
    color: var(--primary-color-lighter) !important;
}


div.memdoc {
    padding: 0.5em 1em;
    background: var(--fragment-background-darker);
}



table.memberdecls .memItemRight {
    /* top-left | top-right | bottom-right | bottom-left */
    border-radius: 0 var(--border-radius-small) 0 0;
}

table.memberdecls .memItemLeft {
    /* top-left | top-right | bottom-right | bottom-left */
    border-radius: var(--border-radius-small) 0 0 0;
}

table.memberdecls .mdescLeft {
    /* top-left | top-right | bottom-right | bottom-left */
    border-radius: 0 0 0 var(--border-radius-small);
    border-left: 1px solid var(--separator-color);
}

table.memberdecls .mdescRight {
    /* top-left | top-right | bottom-right | bottom-left */
    border-radius: 0 0 var(--border-radius-small) 0;
    border-right: 1px solid var(--separator-color);
}

table.memberdecls .mdescLeft, table.memberdecls .mdescRight {
    border-bottom: 1px solid var(--separator-color);
    background: var(--fragment-background-lighter);
    color: var(--page-foreground-color-lighter);
}


table.memberdecls .mdescLeft a, table.memberdecls .mdescRight a {
    color: var(--primary-color-lighter) !important;
}

table.memberdecls .memItemLeft, table.memberdecls .memItemRight, table.memberdecls .memTemplItemLeft, table.memberdecls .memTemplItemRight, table.memberdecls .memTemplParams {
    border-bottom: none;
}

table.memberdecls tr[class^='memitem']:has(+ tr[class^='separator']) td {
    border-bottom: 1px solid var(--separator-color) !important;
}

table.memberdecls tr[class^='memitem']:has(+ tr[class^='separator']) td.memItemRight {
    /* top-left | top-right | bottom-right | bottom-left */
    border-radius: 0 var(--border-radius-small) var(--border-radius-small) 0;
}

table.memberdecls tr[class^='memitem']:has(+ tr[class^='separator']) td.memItemLeft {
    /* top-left | top-right | bottom-right | bottom-left */
    border-radius: var(--border-radius-small) 0 0 var(--border-radius-small);
}

@media (prefers-color-scheme: dark) {
html:not(.light-mode) {
    --primary-color: #ffffff;
    --primary-color-lighter: #c6c4cf;
    --primary-light-color: #827eab;
    --primary-dark-color: var(--primary-color-lighter);
    --primary-highlight-color: rgb(187 185 207 / 5%);
    --primary-underline-color: rgb(187 185 207 / 30%);
    --page-background-color: #16151d;
    --page-foreground-color: #c4c2d0;
    --page-foreground-color: #c4c2d0e6;
    --page-foreground-color-lighter: #878495;
    --page-secondary-foreground-color: #8a8599;
    --fragment-background: #1e1e29;
    --fragment-background-lighter: #1a1922;
    --fragment-background-darker: #1a1922;
    --fragment-foreground: #eae5f2;
    --note-color: #1e1d28;
    --note-color-dark: #88849b;
    --note-color-darker: #9593a3;
    --separator-color: #252532;
    --side-nav-foreground: #c4c2d0;
    --side-nav-background: #262633;
    --fragment-link: #b59bff;
    --code-background: #201e29;
    --invariant-color: #1e2425;
    --invariant-color-dark: #60a47c;
    --invariant-color-darker: #c3e7c8;
    --tablehead-background: #1e1e29;
    --fragment-keywordflow: #e8e289;
    --fragment-keyword: #dc8ede;
    --fragment-keywordtype: #bda9f7;
    --fragment-comment: #7f7fa0;
    --warning-color: #2e161673;
    --warning-color-dark: #ff2f2fb3;
    --warning-color-darker: #e48c8e;
}

div.header .title, h1, h2, h3, h4, h5, dt, h2.groupheader {
    color: var(--primary-color-lighter);
}

h2.memtitle, #projectname {
    color: var(--primary-color); 
}
.directory .levels span {
    color: var(--ultralight-color);
}

#nav-tree .selected a {
    color: var(--primary-color) !important;
}

#MSearchBox {
    background: #17161f;
}

a.el, #nav-tree .selected {
    text-shadow: 0 0 8px rgb(237 220 255 / 47%) !important;
}

span.mlabel, .icon {
    background: var(--ultralight-color) !important;
}

#side-nav {
    background: linear-gradient(180deg, #262633, #1e1e29);
}

dl.note, dl.remark {
    background: linear-gradient(185deg, #262633, #1e1e29);
}
}

a:link, a:visited, a:hover, a:focus, a:active {
    font-weight: normal;
}

