/* ── Quick Reference grid ─────────────────────────────────────────────── */

.ref-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: .9rem;
    margin: 1.5rem 0 0;
}

@media (max-width: 600px) {
    .ref-grid {
        grid-template-columns: 1fr;
    }
}

.ref-col {
    border-radius: 6px;
    overflow: hidden;
    border: 1px solid var(--ref-border);
    display: flex;
    flex-flow: column;
}

.ref-col-head {
    padding: .45rem 1rem;
    font-weight: 700;
    font-size: .78rem;
    text-transform: uppercase;
    letter-spacing: .07em;
    color: #fff;
    background: var(--ref-accent);
}

.ref-col-body {
    padding: .7rem .8rem;
    display: flex;
    flex-wrap: wrap;
    gap: .3rem;
    background: var(--ref-bg);
    flex-grow: 1;
    align-content: start;
}

.ref-type {
    --ref-accent: #009688;
    --ref-border: #009688;
    --ref-bg: rgba(0, 150, 136, .07);
}

.ref-format {
    --ref-accent: #43a047;
    --ref-border: #43a047;
    --ref-bg: rgba(67, 160, 71, .07);
}

.ref-constraint {
    --ref-accent: #f57c00;
    --ref-border: #f57c00;
    --ref-bg: rgba(245, 124, 0, .07);
}

.ref-misc {
    margin-top: .9rem;
    border-radius: 6px;
    border: 1px solid rgba(128, 128, 128, .4);
    background: rgba(128, 128, 128, .07);
    padding: .7rem .8rem;
    display: flex;
    flex-wrap: wrap;
    gap: .3rem;
}

/* Items */
.ref-item {
    display: inline-flex;
    align-items: baseline;
    gap: .2rem;
    padding: .18rem .5rem;
    border-radius: 4px;
    font-size: .78rem;
    font-family: var(--md-code-font-family);
    text-decoration: none !important;
    color: var(--md-typeset-color) !important;
    background: rgba(255, 255, 255, .55);
    border: 1px solid rgba(0, 0, 0, .1);
    transition: background .12s;
}

.ref-item:hover {
    background: rgba(255, 255, 255, .9);
}

[data-md-color-scheme='slate'] .ref-item {
    background: rgba(255, 255, 255, .06);
    border-color: rgba(255, 255, 255, .12);
}

[data-md-color-scheme='slate'] .ref-item:hover {
    background: rgba(255, 255, 255, .13);
}

/* Tiny type badge */
.ref-item sup {
    font-family: var(--md-text-font-family);
    font-size: .58rem;
    font-weight: 700;
    line-height: 1;
    padding: .05rem .2rem;
    border-radius: 2px;
    vertical-align: super;
}

.ri-v sup {
    color: #0277bd;
    background: rgba(2, 119, 189, .12);
}

.ri-f sup {
    color: #7b1fa2;
    background: rgba(123, 31, 162, .12);
}

.ri-p sup {
    color: #c62828;
    background: rgba(198, 40, 40, .12);
}

[data-md-color-scheme='slate'] .ri-v sup {
    color: #81d4fa;
    background: rgba(129, 212, 250, .15);
}

[data-md-color-scheme='slate'] .ri-f sup {
    color: #ce93d8;
    background: rgba(206, 147, 216, .15);
}

[data-md-color-scheme='slate'] .ri-p sup {
    color: #ef9a9a;
    background: rgba(239, 154, 154, .15);
}

pre {
    line-height: 125%;
}

td.linenos .normal {
    color: #6e7681;
    background-color: #0d1117;
    padding-left: 5px;
    padding-right: 5px;
}

span.linenos {
    color: #6e7681;
    background-color: #0d1117;
    padding-left: 5px;
    padding-right: 5px;
}

td.linenos .special {
    color: #e6edf3;
    background-color: #6e7681;
    padding-left: 5px;
    padding-right: 5px;
}

span.linenos.special {
    color: #e6edf3;
    background-color: #6e7681;
    padding-left: 5px;
    padding-right: 5px;
}

[data-md-color-scheme='slate'] .highlight .hll {
    background-color: #6e7681
}

[data-md-color-scheme='slate'] .highlight {
    background: #0d1117;
    color: #E6EDF3
}

[data-md-color-scheme='slate'] .highlight .c {
    color: #8B949E;
    font-style: italic
}

/* Comment */
[data-md-color-scheme='slate'] .highlight .err {
    color: #F85149
}

/* Error */
[data-md-color-scheme='slate'] .highlight .esc {
    color: #E6EDF3
}

/* Escape */
[data-md-color-scheme='slate'] .highlight .g {
    color: #E6EDF3
}

/* Generic */
[data-md-color-scheme='slate'] .highlight .k {
    color: #FF7B72
}

/* Keyword */
[data-md-color-scheme='slate'] .highlight .l {
    color: #A5D6FF
}

/* Literal */
[data-md-color-scheme='slate'] .highlight .n {
    color: #E6EDF3
}

/* Name */
[data-md-color-scheme='slate'] .highlight .o {
    color: #FF7B72;
    font-weight: bold
}

/* Operator */
[data-md-color-scheme='slate'] .highlight .x {
    color: #E6EDF3
}

/* Other */
[data-md-color-scheme='slate'] .highlight .p {
    color: #E6EDF3
}

/* Punctuation */
[data-md-color-scheme='slate'] .highlight .ch {
    color: #8B949E;
    font-style: italic
}

/* Comment.Hashbang */
[data-md-color-scheme='slate'] .highlight .cm {
    color: #8B949E;
    font-style: italic
}

/* Comment.Multiline */
[data-md-color-scheme='slate'] .highlight .cp {
    color: #8B949E;
    font-weight: bold;
    font-style: italic
}

/* Comment.Preproc */
[data-md-color-scheme='slate'] .highlight .cpf {
    color: #8B949E;
    font-style: italic
}

/* Comment.PreprocFile */
[data-md-color-scheme='slate'] .highlight .c1 {
    color: #8B949E;
    font-style: italic
}

/* Comment.Single */
[data-md-color-scheme='slate'] .highlight .cs {
    color: #8B949E;
    font-weight: bold;
    font-style: italic
}

/* Comment.Special */
[data-md-color-scheme='slate'] .highlight .gd {
    color: #FFA198;
    background-color: #490202
}

/* Generic.Deleted */
[data-md-color-scheme='slate'] .highlight .ge {
    color: #E6EDF3;
    font-style: italic
}

/* Generic.Emph */
[data-md-color-scheme='slate'] .highlight .ges {
    color: #E6EDF3;
    font-weight: bold;
    font-style: italic
}

/* Generic.EmphStrong */
[data-md-color-scheme='slate'] .highlight .gr {
    color: #FFA198
}

/* Generic.Error */
[data-md-color-scheme='slate'] .highlight .gh {
    color: #79C0FF;
    font-weight: bold
}

/* Generic.Heading */
[data-md-color-scheme='slate'] .highlight .gi {
    color: #56D364;
    background-color: #0F5323
}

/* Generic.Inserted */
[data-md-color-scheme='slate'] .highlight .go {
    color: #8B949E
}

/* Generic.Output */
[data-md-color-scheme='slate'] .highlight .gp {
    color: #8B949E
}

/* Generic.Prompt */
[data-md-color-scheme='slate'] .highlight .gs {
    color: #E6EDF3;
    font-weight: bold
}

/* Generic.Strong */
[data-md-color-scheme='slate'] .highlight .gu {
    color: #79C0FF
}

/* Generic.Subheading */
[data-md-color-scheme='slate'] .highlight .gt {
    color: #FF7B72
}

/* Generic.Traceback */
[data-md-color-scheme='slate'] .highlight .g-Underline {
    color: #E6EDF3;
    text-decoration: underline
}

/* Generic.Underline */
[data-md-color-scheme='slate'] .highlight .kc {
    color: #79C0FF
}

/* Keyword.Constant */
[data-md-color-scheme='slate'] .highlight .kd {
    color: #FF7B72
}

/* Keyword.Declaration */
[data-md-color-scheme='slate'] .highlight .kn {
    color: #FF7B72
}

/* Keyword.Namespace */
[data-md-color-scheme='slate'] .highlight .kp {
    color: #79C0FF
}

/* Keyword.Pseudo */
[data-md-color-scheme='slate'] .highlight .kr {
    color: #FF7B72
}

/* Keyword.Reserved */
[data-md-color-scheme='slate'] .highlight .kt {
    color: #FF7B72
}

/* Keyword.Type */
[data-md-color-scheme='slate'] .highlight .ld {
    color: #79C0FF
}

/* Literal.Date */
[data-md-color-scheme='slate'] .highlight .m {
    color: #A5D6FF
}

/* Literal.Number */
[data-md-color-scheme='slate'] .highlight .s {
    color: #A5D6FF
}

/* Literal.String */
[data-md-color-scheme='slate'] .highlight .na {
    color: #E6EDF3
}

/* Name.Attribute */
[data-md-color-scheme='slate'] .highlight .nb {
    color: #E6EDF3
}

/* Name.Builtin */
[data-md-color-scheme='slate'] .highlight .nc {
    color: #F0883E;
    font-weight: bold
}

/* Name.Class */
[data-md-color-scheme='slate'] .highlight .no {
    color: #79C0FF;
    font-weight: bold
}

/* Name.Constant */
[data-md-color-scheme='slate'] .highlight .nd {
    color: #D2A8FF;
    font-weight: bold
}

/* Name.Decorator */
[data-md-color-scheme='slate'] .highlight .ni {
    color: #FFA657
}

/* Name.Entity */
[data-md-color-scheme='slate'] .highlight .ne {
    color: #F0883E;
    font-weight: bold
}

/* Name.Exception */
[data-md-color-scheme='slate'] .highlight .nf {
    color: #D2A8FF;
    font-weight: bold
}

/* Name.Function */
[data-md-color-scheme='slate'] .highlight .nl {
    color: #79C0FF;
    font-weight: bold
}

/* Name.Label */
[data-md-color-scheme='slate'] .highlight .nn {
    color: #FF7B72
}

/* Name.Namespace */
[data-md-color-scheme='slate'] .highlight .nx {
    color: #E6EDF3
}

/* Name.Other */
[data-md-color-scheme='slate'] .highlight .py {
    color: #79C0FF
}

/* Name.Property */
[data-md-color-scheme='slate'] .highlight .nt {
    color: #7EE787
}

/* Name.Tag */
[data-md-color-scheme='slate'] .highlight .nv {
    color: #79C0FF
}

/* Name.Variable */
[data-md-color-scheme='slate'] .highlight .ow {
    color: #FF7B72;
    font-weight: bold
}

/* Operator.Word */
[data-md-color-scheme='slate'] .highlight .pm {
    color: #E6EDF3
}

/* Punctuation.Marker */
[data-md-color-scheme='slate'] .highlight .w {
    color: #6E7681
}

/* Text.Whitespace */
[data-md-color-scheme='slate'] .highlight .mb {
    color: #A5D6FF
}

/* Literal.Number.Bin */
[data-md-color-scheme='slate'] .highlight .mf {
    color: #A5D6FF
}

/* Literal.Number.Float */
[data-md-color-scheme='slate'] .highlight .mh {
    color: #A5D6FF
}

/* Literal.Number.Hex */
[data-md-color-scheme='slate'] .highlight .mi {
    color: #A5D6FF
}

/* Literal.Number.Integer */
[data-md-color-scheme='slate'] .highlight .mo {
    color: #A5D6FF
}

/* Literal.Number.Oct */
[data-md-color-scheme='slate'] .highlight .sa {
    color: #79C0FF
}

/* Literal.String.Affix */
[data-md-color-scheme='slate'] .highlight .sb {
    color: #A5D6FF
}

/* Literal.String.Backtick */
[data-md-color-scheme='slate'] .highlight .sc {
    color: #A5D6FF
}

/* Literal.String.Char */
[data-md-color-scheme='slate'] .highlight .dl {
    color: #79C0FF
}

/* Literal.String.Delimiter */
[data-md-color-scheme='slate'] .highlight .sd {
    color: #A5D6FF
}

/* Literal.String.Doc */
[data-md-color-scheme='slate'] .highlight .s2 {
    color: #A5D6FF
}

/* Literal.String.Double */
[data-md-color-scheme='slate'] .highlight .se {
    color: #79C0FF
}

/* Literal.String.Escape */
[data-md-color-scheme='slate'] .highlight .sh {
    color: #79C0FF
}

/* Literal.String.Heredoc */
[data-md-color-scheme='slate'] .highlight .si {
    color: #A5D6FF
}

/* Literal.String.Interpol */
[data-md-color-scheme='slate'] .highlight .sx {
    color: #A5D6FF
}

/* Literal.String.Other */
[data-md-color-scheme='slate'] .highlight .sr {
    color: #79C0FF
}

/* Literal.String.Regex */
[data-md-color-scheme='slate'] .highlight .s1 {
    color: #A5D6FF
}

/* Literal.String.Single */
[data-md-color-scheme='slate'] .highlight .ss {
    color: #A5D6FF
}

/* Literal.String.Symbol */
[data-md-color-scheme='slate'] .highlight .bp {
    color: #E6EDF3
}

/* Name.Builtin.Pseudo */
[data-md-color-scheme='slate'] .highlight .fm {
    color: #D2A8FF;
    font-weight: bold
}

/* Name.Function.Magic */
[data-md-color-scheme='slate'] .highlight .vc {
    color: #79C0FF
}

/* Name.Variable.Class */
[data-md-color-scheme='slate'] .highlight .vg {
    color: #79C0FF
}

/* Name.Variable.Global */
[data-md-color-scheme='slate'] .highlight .vi {
    color: #79C0FF
}

/* Name.Variable.Instance */
[data-md-color-scheme='slate'] .highlight .vm {
    color: #79C0FF
}

/* Name.Variable.Magic */
[data-md-color-scheme='slate'] .highlight .il {
    color: #A5D6FF
}

/* Literal.Number.Integer.Long */
pre {
    line-height: 125%;
}

td.linenos .normal {
    color: #666666;
    background-color: transparent;
    padding-left: 5px;
    padding-right: 5px;
}

span.linenos {
    color: #666666;
    background-color: transparent;
    padding-left: 5px;
    padding-right: 5px;
}

td.linenos .special {
    color: #000000;
    background-color: #ffffc0;
    padding-left: 5px;
    padding-right: 5px;
}

span.linenos.special {
    color: #000000;
    background-color: #ffffc0;
    padding-left: 5px;
    padding-right: 5px;
}

[data-md-color-scheme='default'] .highlight .hll {
    background-color: #ffffcc
}

[data-md-color-scheme='default'] .highlight {
    background: #f0f0f0;
}

[data-md-color-scheme='default'] .highlight .c {
    color: #60A0B0;
    font-style: italic
}

/* Comment */
[data-md-color-scheme='default'] .highlight .err {
    border: 1px solid #F00
}

/* Error */
[data-md-color-scheme='default'] .highlight .k {
    color: #007020;
    font-weight: bold
}

/* Keyword */
[data-md-color-scheme='default'] .highlight .o {
    color: #666
}

/* Operator */
[data-md-color-scheme='default'] .highlight .ch {
    color: #60A0B0;
    font-style: italic
}

/* Comment.Hashbang */
[data-md-color-scheme='default'] .highlight .cm {
    color: #60A0B0;
    font-style: italic
}

/* Comment.Multiline */
[data-md-color-scheme='default'] .highlight .cp {
    color: #007020
}

/* Comment.Preproc */
[data-md-color-scheme='default'] .highlight .cpf {
    color: #60A0B0;
    font-style: italic
}

/* Comment.PreprocFile */
[data-md-color-scheme='default'] .highlight .c1 {
    color: #60A0B0;
    font-style: italic
}

/* Comment.Single */
[data-md-color-scheme='default'] .highlight .cs {
    color: #60A0B0;
    background-color: #FFF0F0
}

/* Comment.Special */
[data-md-color-scheme='default'] .highlight .gd {
    color: #A00000
}

/* Generic.Deleted */
[data-md-color-scheme='default'] .highlight .ge {
    font-style: italic
}

/* Generic.Emph */
[data-md-color-scheme='default'] .highlight .ges {
    font-weight: bold;
    font-style: italic
}

/* Generic.EmphStrong */
[data-md-color-scheme='default'] .highlight .gr {
    color: #F00
}

/* Generic.Error */
[data-md-color-scheme='default'] .highlight .gh {
    color: #000080;
    font-weight: bold
}

/* Generic.Heading */
[data-md-color-scheme='default'] .highlight .gi {
    color: #00A000
}

/* Generic.Inserted */
[data-md-color-scheme='default'] .highlight .go {
    color: #888
}

/* Generic.Output */
[data-md-color-scheme='default'] .highlight .gp {
    color: #C65D09;
    font-weight: bold
}

/* Generic.Prompt */
[data-md-color-scheme='default'] .highlight .gs {
    font-weight: bold
}

/* Generic.Strong */
[data-md-color-scheme='default'] .highlight .gu {
    color: #800080;
    font-weight: bold
}

/* Generic.Subheading */
[data-md-color-scheme='default'] .highlight .gt {
    color: #04D
}

/* Generic.Traceback */
[data-md-color-scheme='default'] .highlight .kc {
    color: #007020;
    font-weight: bold
}

/* Keyword.Constant */
[data-md-color-scheme='default'] .highlight .kd {
    color: #007020;
    font-weight: bold
}

/* Keyword.Declaration */
[data-md-color-scheme='default'] .highlight .kn {
    color: #007020;
    font-weight: bold
}

/* Keyword.Namespace */
[data-md-color-scheme='default'] .highlight .kp {
    color: #007020
}

/* Keyword.Pseudo */
[data-md-color-scheme='default'] .highlight .kr {
    color: #007020;
    font-weight: bold
}

/* Keyword.Reserved */
[data-md-color-scheme='default'] .highlight .kt {
    color: #902000
}

/* Keyword.Type */
[data-md-color-scheme='default'] .highlight .m {
    color: #40A070
}

/* Literal.Number */
[data-md-color-scheme='default'] .highlight .s {
    color: #4070A0
}

/* Literal.String */
[data-md-color-scheme='default'] .highlight .na {
    color: #4070A0
}

/* Name.Attribute */
[data-md-color-scheme='default'] .highlight .nb {
    color: #007020
}

/* Name.Builtin */
[data-md-color-scheme='default'] .highlight .nc {
    color: #0E84B5;
    font-weight: bold
}

/* Name.Class */
[data-md-color-scheme='default'] .highlight .no {
    color: #60ADD5
}

/* Name.Constant */
[data-md-color-scheme='default'] .highlight .nd {
    color: #555;
    font-weight: bold
}

/* Name.Decorator */
[data-md-color-scheme='default'] .highlight .ni {
    color: #D55537;
    font-weight: bold
}

/* Name.Entity */
[data-md-color-scheme='default'] .highlight .ne {
    color: #007020
}

/* Name.Exception */
[data-md-color-scheme='default'] .highlight .nf {
    color: #06287E
}

/* Name.Function */
[data-md-color-scheme='default'] .highlight .nl {
    color: #002070;
    font-weight: bold
}

/* Name.Label */
[data-md-color-scheme='default'] .highlight .nn {
    color: #0E84B5;
    font-weight: bold
}

/* Name.Namespace */
[data-md-color-scheme='default'] .highlight .nt {
    color: #062873;
    font-weight: bold
}

/* Name.Tag */
[data-md-color-scheme='default'] .highlight .nv {
    color: #BB60D5
}

/* Name.Variable */
[data-md-color-scheme='default'] .highlight .ow {
    color: #007020;
    font-weight: bold
}

/* Operator.Word */
[data-md-color-scheme='default'] .highlight .w {
    color: #BBB
}

/* Text.Whitespace */
[data-md-color-scheme='default'] .highlight .mb {
    color: #40A070
}

/* Literal.Number.Bin */
[data-md-color-scheme='default'] .highlight .mf {
    color: #40A070
}

/* Literal.Number.Float */
[data-md-color-scheme='default'] .highlight .mh {
    color: #40A070
}

/* Literal.Number.Hex */
[data-md-color-scheme='default'] .highlight .mi {
    color: #40A070
}

/* Literal.Number.Integer */
[data-md-color-scheme='default'] .highlight .mo {
    color: #40A070
}

/* Literal.Number.Oct */
[data-md-color-scheme='default'] .highlight .sa {
    color: #4070A0
}

/* Literal.String.Affix */
[data-md-color-scheme='default'] .highlight .sb {
    color: #4070A0
}

/* Literal.String.Backtick */
[data-md-color-scheme='default'] .highlight .sc {
    color: #4070A0
}

/* Literal.String.Char */
[data-md-color-scheme='default'] .highlight .dl {
    color: #4070A0
}

/* Literal.String.Delimiter */
[data-md-color-scheme='default'] .highlight .sd {
    color: #4070A0;
    font-style: italic
}

/* Literal.String.Doc */
[data-md-color-scheme='default'] .highlight .s2 {
    color: #4070A0
}

/* Literal.String.Double */
[data-md-color-scheme='default'] .highlight .se {
    color: #4070A0;
    font-weight: bold
}

/* Literal.String.Escape */
[data-md-color-scheme='default'] .highlight .sh {
    color: #4070A0
}

/* Literal.String.Heredoc */
[data-md-color-scheme='default'] .highlight .si {
    color: #70A0D0;
    font-style: italic
}

/* Literal.String.Interpol */
[data-md-color-scheme='default'] .highlight .sx {
    color: #C65D09
}

/* Literal.String.Other */
[data-md-color-scheme='default'] .highlight .sr {
    color: #235388
}

/* Literal.String.Regex */
[data-md-color-scheme='default'] .highlight .s1 {
    color: #4070A0
}

/* Literal.String.Single */
[data-md-color-scheme='default'] .highlight .ss {
    color: #517918
}

/* Literal.String.Symbol */
[data-md-color-scheme='default'] .highlight .bp {
    color: #007020
}

/* Name.Builtin.Pseudo */
[data-md-color-scheme='default'] .highlight .fm {
    color: #06287E
}

/* Name.Function.Magic */
[data-md-color-scheme='default'] .highlight .vc {
    color: #BB60D5
}

/* Name.Variable.Class */
[data-md-color-scheme='default'] .highlight .vg {
    color: #BB60D5
}

/* Name.Variable.Global */
[data-md-color-scheme='default'] .highlight .vi {
    color: #BB60D5
}

/* Name.Variable.Instance */
[data-md-color-scheme='default'] .highlight .vm {
    color: #BB60D5
}

/* Name.Variable.Magic */
[data-md-color-scheme='default'] .highlight .il {
    color: #40A070
}

/* Literal.Number.Integer.Long */
