/* DataFlex syntax highlighting — palette taken from the official DataFlex.lng
   Studio definition. Pygments token → CSS class mapping:
     Keyword/Reserved/Namespace/Type      → .k, .kn, .kr, .kt
     Operator.Word (and/or/not/max/min…)  → .ow            (Studio "operator word")
     Operator (symbols + - * / = …)      → .o             (Studio "symbol operator")
     Comment                              → .c, .c1, .cm, .cp
     String / String.Affix / String.Escape → .s, .s1, .s2, .sa, .se, .sx
     Number                              → .m, .mi, .mf, .mh, .mo
     Generic.Strong (metadata block body) → .gs            (Studio "meta data")
     Name.Tag      (metadata tag names)   → .nt            (Studio "meta data tag")
     Name.Attribute (field refs)          → .na
     Name (identifiers), Punctuation      → .n, .nf, .nc, .p
*/

:root {
    --df-brand-orange: #FF5F1F;
    --df-dark-header: #171A21;
}

[data-md-color-scheme="default"] {
    --md-primary-fg-color: #FF5F1F;
    --md-primary-fg-color--light: #FF5F1F;
    --md-primary-fg-color--dark: #FF5F1F;
    --md-accent-fg-color: #FF5F1F;
    --md-typeset-a-color: #FF5F1F;
}

[data-md-color-scheme="slate"] {
    --md-primary-fg-color: var(--df-dark-header);
    --md-primary-fg-color--light: #242936;
    --md-primary-fg-color--dark: #11141A;
    --md-accent-fg-color: #FF5F1F;
    --md-typeset-a-color: #FF5F1F;
}

.md-sidebar--primary .md-sidebar__scrollwrap {
    scrollbar-color: rgba(0, 0, 0, 0.32) transparent;
}

.md-sidebar--primary .md-sidebar__scrollwrap:hover {
    scrollbar-color: rgba(0, 0, 0, 0.38) transparent;
}

.md-sidebar--primary .md-sidebar__scrollwrap:hover::-webkit-scrollbar-thumb {
    background-color: rgba(0, 0, 0, 0.32);
}

[data-md-color-scheme="slate"] .md-sidebar--primary .md-sidebar__scrollwrap {
    scrollbar-color: rgba(255, 255, 255, 0.24) transparent;
}

[data-md-color-scheme="slate"] .md-sidebar--primary .md-sidebar__scrollwrap:hover {
    scrollbar-color: rgba(255, 255, 255, 0.32) transparent;
}

[data-md-color-scheme="slate"] .md-sidebar--primary .md-sidebar__scrollwrap:hover::-webkit-scrollbar-thumb {
    background-color: rgba(255, 255, 255, 0.28);
}

.md-typeset pre > code:hover {
    scrollbar-color: rgba(0, 0, 0, 0.48) transparent;
}

[data-md-color-scheme="slate"] .md-typeset pre > code:hover {
    scrollbar-color: rgba(255, 255, 255, 0.42) transparent;
}

/* ---- Light mode (Studio light) ---- */

[data-md-color-scheme="default"] .highlight,
[data-md-color-scheme="default"] .highlight .n,
[data-md-color-scheme="default"] .highlight .nf,
[data-md-color-scheme="default"] .highlight .nc,
[data-md-color-scheme="default"] .highlight .na,
[data-md-color-scheme="default"] .highlight .p,
[data-md-color-scheme="default"] .highlight .m,
[data-md-color-scheme="default"] .highlight .mi,
[data-md-color-scheme="default"] .highlight .mf,
[data-md-color-scheme="default"] .highlight .mh,
[data-md-color-scheme="default"] .highlight .mo {
    color: #000000 !important;
}

[data-md-color-scheme="default"] .highlight .k,
[data-md-color-scheme="default"] .highlight .kn,
[data-md-color-scheme="default"] .highlight .kr,
[data-md-color-scheme="default"] .highlight .kt {
    color: #0000ff !important;
}

[data-md-color-scheme="default"] .highlight .ow {
    color: #a90000 !important;
}

[data-md-color-scheme="default"] .highlight .o {
    color: #a90000 !important;
}

[data-md-color-scheme="default"] .highlight .c,
[data-md-color-scheme="default"] .highlight .c1,
[data-md-color-scheme="default"] .highlight .cm,
[data-md-color-scheme="default"] .highlight .cp {
    color: #008000 !important;
}

[data-md-color-scheme="default"] .highlight .s,
[data-md-color-scheme="default"] .highlight .s1,
[data-md-color-scheme="default"] .highlight .s2,
[data-md-color-scheme="default"] .highlight .sa,
[data-md-color-scheme="default"] .highlight .se,
[data-md-color-scheme="default"] .highlight .sx {
    color: #800080 !important;
}

/* Metadata block `{ WebProperty=Client }` — Studio uses 4 different colors */
[data-md-color-scheme="default"] .highlight .gs {
    color: #0669A4 !important;
    font-weight: normal;
}

[data-md-color-scheme="default"] .highlight .nt {
    color: #8D7850 !important;
}

[data-md-color-scheme="default"] .highlight .gu {
    color: #965656 !important;
    font-weight: normal;
}

[data-md-color-scheme="default"] .highlight .nv {
    color: #0669A4 !important;
}

/* ---- Dark mode (Studio dark) ---- */

[data-md-color-scheme="slate"] .highlight,
[data-md-color-scheme="slate"] .highlight .n,
[data-md-color-scheme="slate"] .highlight .nf,
[data-md-color-scheme="slate"] .highlight .nc,
[data-md-color-scheme="slate"] .highlight .na,
[data-md-color-scheme="slate"] .highlight .p {
    color: #fffff0 !important;
}

[data-md-color-scheme="slate"] .highlight .k,
[data-md-color-scheme="slate"] .highlight .kn,
[data-md-color-scheme="slate"] .highlight .kr,
[data-md-color-scheme="slate"] .highlight .kt {
    color: #37d4ff !important;
}

[data-md-color-scheme="slate"] .highlight .ow,
[data-md-color-scheme="slate"] .highlight .o,
[data-md-color-scheme="slate"] .highlight .m,
[data-md-color-scheme="slate"] .highlight .mi,
[data-md-color-scheme="slate"] .highlight .mf,
[data-md-color-scheme="slate"] .highlight .mh,
[data-md-color-scheme="slate"] .highlight .mo {
    color: #ffff80 !important;
}

[data-md-color-scheme="slate"] .highlight .c,
[data-md-color-scheme="slate"] .highlight .c1,
[data-md-color-scheme="slate"] .highlight .cm,
[data-md-color-scheme="slate"] .highlight .cp {
    color: #3cdc46 !important;
}

[data-md-color-scheme="slate"] .highlight .s,
[data-md-color-scheme="slate"] .highlight .s1,
[data-md-color-scheme="slate"] .highlight .s2,
[data-md-color-scheme="slate"] .highlight .sa,
[data-md-color-scheme="slate"] .highlight .se,
[data-md-color-scheme="slate"] .highlight .sx {
    color: #ffbe9a !important;
}

/* Metadata block dark mode — braces, tag, and `=` are all the same pink;
   the value (Client, …) is a different gray. */
[data-md-color-scheme="slate"] .highlight .gs,
[data-md-color-scheme="slate"] .highlight .nt,
[data-md-color-scheme="slate"] .highlight .gu {
    color: #FF78B4 !important;
    font-weight: normal;
}

[data-md-color-scheme="slate"] .highlight .nv {
    color: #C0C0C0 !important;
}

/* Hide Material search form default background */
.md-search__form {
    background: transparent !important;
    box-shadow: none !important;
}

/* H1 headers: soft white */
[data-md-color-scheme="slate"] .md-content h1 {
    color: #e0e0e0;
}

/* Tables: allow horizontal scroll and keep inline code on one line */
.md-typeset table {
    display: block;
    overflow-x: auto;
}

.md-typeset td code,
.md-typeset th code {
    white-space: nowrap;
}

/* Support-matrix glyphs: green check / red cross (tagged by glyph-colors.js) */
.md-typeset .glyph-yes { color: #2e7d32; font-weight: 700; }
.md-typeset .glyph-no  { color: #c62828; font-weight: 700; }
[data-md-color-scheme="slate"] .md-typeset .glyph-yes { color: #66bb6a; }
[data-md-color-scheme="slate"] .md-typeset .glyph-no  { color: #ef5350; }
