:root>* {
  --solarized-base03:  0, 43, 54;
  --solarized-base02:  7, 54, 66;
  --solarized-base01:  88, 110, 117;
  --solarized-base00:  101, 123, 131;
  --solarized-base0:   131, 148, 150;
  --solarized-base1:   147, 161, 161;
  --solarized-base2:   238, 232, 213;
  --solarized-base3:   253, 246, 227;
  --solarized-blue:    38, 139, 210;
  --solarized-cyan:    42, 161, 152;
  --solarized-green:   133, 153, 0;
  --solarized-magenta: 211, 54, 130;
  --solarized-orange:  203, 75, 22;
  --solarized-red:     220, 50, 47;
  --solarized-violet:  108, 113, 196;
  --solarized-yellow:  181, 137, 0;
  --md-mermaid-edge-color:     var(--md-primary-fg-color);
  --md-mermaid-node-bg-color:  var(--md-default-bg-color--light);
  --md-mermaid-node-fg-color:  var(--md-default-fg-color--light);
  --md-mermaid-label-bg-color: var(--md-default-bg-color);
  --md-mermaid-label-fg-color: var(--md-default-fg-color);
}

[data-md-color-scheme="default"] {
  --md-default-bg-color:             rgb(var(--solarized-base3));
  --md-default-bg-color--light:      rgba(var(--solarized-base2), 0.8);
  --md-default-bg-color--lighter:    rgb(var(--solarized-base1));
  --md-default-bg-color--lightest:   rgb(var(--solarized-base0));
  --md-default-fg-color:             rgb(var(--solarized-base02));
  --md-default-fg-color--light:      rgb(var(--solarized-base01));
  --md-default-fg-color--lighter:    rgb(var(--solarized-base00));
  --md-default-fg-color--lightest:   rgb(var(--solarized-base0));
  --md-primary-bg-color:             rgb(var(--solarized-base02));
  --md-primary-fg-color--dark:       rgb(var(--solarized-base2));
  --md-primary-fg-color:             rgb(var(--solarized-base03));
  --md-primary-fg-color--light:      rgba(var(--solarized-base03), 0.2);
  --md-accent-fg-color:              rgb(var(--solarized-orange));
  --md-accent-fg-color--transparent: rgba(var(--solarized-orange), 0.1);
  --md-footer-fg-color:              rgb(var(--solarized-base03));
  --md-footer-fg-color--light:       rgb(var(--solarized-base02));
  --md-footer-fg-color--lighter:     rgb(var(--solarized-base01));
  --md-footer-bg-color:              rgb(var(--solarized-base3));
  --md-footer-bg-color--dark:        rgb(var(--solarized-base2));
  --md-code-fg-color:                rgb(var(--solarized-base02));
  --md-code-bg-color:                rgb(var(--solarized-base2));
  --md-code-hl-color:                rgb(var(--solarized-base02));
  --md-typeset-kbd-color:            rgb(var(--solarized-base2));
  --md-typeset-kbd-border-color:     rgb(var(--solarized-green));
  --md-typeset-kbd-accent-color:     rgb(var(--solarized-base3));
  --md-typeset-mark-color:           rgba(var(--solarized-green), 0.3);
}

[data-md-color-scheme="slate"] {
  --md-default-bg-color:             rgb(var(--solarized-base03));
  --md-default-bg-color--light:      rgba(var(--solarized-base02), 0.8);
  --md-default-bg-color--lighter:    rgb(var(--solarized-base01));
  --md-default-bg-color--lightest:   rgb(var(--solarized-base00));
  --md-default-fg-color:             rgb(var(--solarized-base0));
  --md-default-fg-color--light:      rgb(var(--solarized-base00));
  --md-default-fg-color--lighter:    rgb(var(--solarized-base01));
  --md-default-fg-color--lightest:   rgb(var(--solarized-base02));
  --md-primary-bg-color:             rgb(var(--solarized-base2));
  --md-primary-fg-color--dark:       rgb(var(--solarized-base02));
  --md-primary-fg-color:             rgb(var(--solarized-cyan));
  --md-primary-fg-color--light:      rgba(var(--solarized-cyan), 0.2);
  --md-accent-fg-color:              rgb(var(--solarized-green));
  --md-accent-fg-color--transparent: rgba(var(--solarized-green), 0.1);
  --md-footer-fg-color:              rgb(var(--solarized-base2));
  --md-footer-fg-color--light:       rgb(var(--solarized-base1));
  --md-footer-fg-color--lighter:     rgb(var(--solarized-base00));
  --md-footer-bg-color:              rgb(var(--solarized-base03));
  --md-footer-bg-color--dark:        rgb(var(--solarized-base02));
  --md-code-fg-color:                rgb(var(--solarized-base1));
  --md-code-bg-color:                rgb(var(--solarized-base02));
  --md-code-hl-color:                rgb(var(--solarized-base2));
  --md-typeset-kbd-color:            rgb(var(--solarized-base02));
  --md-typeset-kbd-border-color:     rgb(var(--solarized-cyan));
  --md-typeset-kbd-accent-color:     rgb(var(--solarized-base03));
  --md-typeset-mark-color:           rgba(var(--solarized-cyan), 0.4);
}

.foreground        { color: var(--md-default-fg-color); }
.foreground-light  { color: var(--md-default-fg-color--light); }
.solarized-yellow  { color: rgb(var(--solarized-yellow)); }
.solarized-orange  { color: rgb(var(--solarized-orange)); }
.solarized-red     { color: rgb(var(--solarized-red)); }
.solarized-magenta { color: rgb(var(--solarized-magenta)); }
.solarized-violet  { color: rgb(var(--solarized-violet)); }
.solarized-blue    { color: rgb(var(--solarized-blue)); }
.solarized-cyan    { color: rgb(var(--solarized-cyan)); }
.solarized-green   { color: rgb(var(--solarized-green)); }

.solarized-yellow-mark  mark { background-color: rgba(var(--solarized-yellow),  0.3); }
.solarized-orange-mark  mark { background-color: rgba(var(--solarized-orange),  0.3); }
.solarized-red-mark     mark { background-color: rgba(var(--solarized-red),     0.3); }
.solarized-magenta-mark mark { background-color: rgba(var(--solarized-magenta), 0.3); }
.solarized-violet-mark  mark { background-color: rgba(var(--solarized-violet),  0.3); }
.solarized-blue-mark    mark { background-color: rgba(var(--solarized-blue),    0.3); }
.solarized-cyan-mark    mark { background-color: rgba(var(--solarized-cyan),    0.3); }
.solarized-green-mark   mark { background-color: rgba(var(--solarized-green),   0.3); }

.md-typeset a:hover {
  text-decoration-color: rgb(var(--solarized-cyan));
}

[data-md-color-scheme="default"] .md-typeset a {
  color: rgb(var(--solarized-base02));
}

[data-md-color-scheme="slate"] .md-typeset a {
  color: rgb(var(--solarized-base1));
}

/* ANCHOR Pygments */

.highlight .c,
.highlight .c1,
.highlight .cm {
  color: rgb(var(--solarized-base00));
}

.highlight .cp,
.highlight .cs,
.highlight .gi,
.highlight .k,
.highlight .kn,
.highlight .kp,
.highlight .ow {
  color: rgb(var(--solarized-green));
}

.highlight .gd,
.highlight .il,
.highlight .kc,
.highlight .kd,
.highlight .m,
.highlight .mf,
.highlight .mh,
.highlight .mi,
.highlight .mo,
.highlight .s,
.highlight .s1,
.highlight .s2,
.highlight .sb,
.highlight .sc,
.highlight .si,
.highlight .ss,
.highlight .sx {
  color: rgb(var(--solarized-cyan));
}

.highlight .gh,
.highlight .gu,
.highlight .kt,
.highlight .ne,
.highlight .ni,
.highlight .se,
.highlight .x {
  color: rgb(var(--solarized-orange));
}

.highlight .gr,
.highlight .sr {
  color: rgb(var(--solarized-red));
}

.highlight .bp,
.highlight .kr,
.highlight .nb,
.highlight .nc,
.highlight .nd,
.highlight .nf,
.highlight .no,
.highlight .nt,
.highlight .nv,
.highlight .vc,
.highlight .vg,
.highlight .vi {
  color: rgb(var(--solarized-blue));
}

.highlight .err,
.highlight .g,
.highlight .go,
.highlight .gp,
.highlight .gt,
.highlight .l,
.highlight .ld,
.highlight .n,
.highlight .na,
.highlight .nl,
.highlight .nn,
.highlight .nx,
.highlight .o,
.highlight .p,
.highlight .py,
.highlight .sd,
.highlight .sh,
.highlight .w {
  color: rgb(var(--solarized-base01));
}

.highlight .ge {
  color: rgb(var(--solarized-base01));
  font-style: italic;
}

.highlight .gs {
  color: rgb(var(--solarized-base01));
  font-weight: bold;
}

/* ANCHOR Admonition */

:root>* {
  --md-admonition-icon--extension: url('data:image/svg+xml, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" width="16" height="16"><path d="M1.5 3.25c0-.966.784-1.75 1.75-1.75h2.5c.966 0 1.75.784 1.75 1.75v2.5A1.75 1.75 0 0 1 5.75 7.5h-2.5A1.75 1.75 0 0 1 1.5 5.75Zm7 0c0-.966.784-1.75 1.75-1.75h2.5c.966 0 1.75.784 1.75 1.75v2.5a1.75 1.75 0 0 1-1.75 1.75h-2.5A1.75 1.75 0 0 1 8.5 5.75Zm-7 7c0-.966.784-1.75 1.75-1.75h2.5c.966 0 1.75.784 1.75 1.75v2.5a1.75 1.75 0 0 1-1.75 1.75h-2.5a1.75 1.75 0 0 1-1.75-1.75Zm7 0c0-.966.784-1.75 1.75-1.75h2.5c.966 0 1.75.784 1.75 1.75v2.5a1.75 1.75 0 0 1-1.75 1.75h-2.5a1.75 1.75 0 0 1-1.75-1.75ZM3.25 3a.25.25 0 0 0-.25.25v2.5c0 .138.112.25.25.25h2.5A.25.25 0 0 0 6 5.75v-2.5A.25.25 0 0 0 5.75 3Zm7 0a.25.25 0 0 0-.25.25v2.5c0 .138.112.25.25.25h2.5a.25.25 0 0 0 .25-.25v-2.5a.25.25 0 0 0-.25-.25Zm-7 7a.25.25 0 0 0-.25.25v2.5c0 .138.112.25.25.25h2.5a.25.25 0 0 0 .25-.25v-2.5a.25.25 0 0 0-.25-.25Zm7 0a.25.25 0 0 0-.25.25v2.5c0 .138.112.25.25.25h2.5a.25.25 0 0 0 .25-.25v-2.5a.25.25 0 0 0-.25-.25Z"></path></svg>');
  --md-admonition-icon--setting: url('data:image/svg+xml, <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-settings-icon lucide-settings"><path d="M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915"/><circle cx="12" cy="12" r="3"/></svg>');
  --md-admonition-icon--announce: url('data:image/svg+xml, <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-megaphone-icon lucide-megaphone"><path d="M11 6a13 13 0 0 0 8.4-2.8A1 1 0 0 1 21 4v12a1 1 0 0 1-1.6.8A13 13 0 0 0 11 14H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2z"/><path d="M6 14a12 12 0 0 0 2.4 7.2 2 2 0 0 0 3.2-2.4A8 8 0 0 1 10 14"/><path d="M8 6v8"/></svg>');
}

.md-typeset :is(.admonition, details) {
  border-radius: 4px;
  border-width: 2px;
  border-style: solid;
}

[data-md-color-scheme="slate"] .md-typeset :is(.admonition, details) {
  background: rgba(14, 26, 32, 0.7) !important;
}

.md-typeset :is(.admonition, details):is(.note, .abstract) {
  border-color: rgb(var(--solarized-blue));
}
.md-typeset :is(.note, .abstract)>:is(.admonition-title, summary)::before {
  background-color: rgb(var(--solarized-blue));
}

.md-typeset :is(.admonition, details).info {
  border-color: rgb(var(--solarized-cyan));
}
.md-typeset .info>:is(.admonition-title, summary)::before {
  background-color: rgb(var(--solarized-cyan));
}

.md-typeset :is(.admonition, details).tip {
  border-color: rgb(var(--solarized-yellow));
  background: rgba(var(--solarized-yellow), 0.1);
}
.md-typeset .tip>:is(.admonition-title, summary)::before {
  background-color: rgb(var(--solarized-yellow));
}

.md-typeset :is(.admonition, details):is(.question, .success) {
  border-color: rgb(var(--solarized-green));
}
.md-typeset :is(.question, .success)>:is(.admonition-title, summary)::before {
  background-color: rgb(var(--solarized-green));
}

.md-typeset :is(.admonition, details).question> :not(:is(.admonition-title, summary)) {
  text-align: right;
}

.md-typeset :is(.admonition, details).warning {
  border-color: rgb(var(--solarized-orange));
  background: rgba(var(--solarized-orange), 0.1);
}
.md-typeset .warning>:is(.admonition-title, summary)::before {
  background-color: rgb(var(--solarized-orange));
}

.md-typeset :is(.admonition, details):is(.failure, .danger, .announce) {
  border-color: rgb(var(--solarized-red));
}
.md-typeset :is(.failure, .danger, .announce)>:is(.admonition-title, summary)::before {
  background-color: rgb(var(--solarized-red));
}

.md-typeset :is(.admonition, details):is(.danger, .announce) {
  background: rgba(var(--solarized-red), 0.1);
}

.md-typeset :is(.admonition, details).bug {
  border-color: rgb(var(--solarized-magenta));
}
.md-typeset .bug>:is(.admonition-title, summary)::before {
  background-color: rgb(var(--solarized-magenta));
}

.md-typeset :is(.admonition, details):is(.example, .extension) {
  border-color: rgb(var(--solarized-violet));
}
.md-typeset :is(.example, .extension)>:is(.admonition-title, summary)::before {
  background-color: rgb(var(--solarized-violet));
}

.md-typeset :is(.admonition, details).extension {
  background: rgba(var(--solarized-violet), 0.1);
}
.md-typeset .extension>:is(.admonition-title, summary)::before {
  -webkit-mask-image: var(--md-admonition-icon--extension);
  mask-image: var(--md-admonition-icon--extension);
}

.md-typeset :is(.admonition, details):is(.quote, .setting) {
  border-color: rgb(var(--solarized-base01));
}
.md-typeset :is(.quote, .setting)>:is(.admonition-title, summary)::before {
  background-color: rgb(var(--solarized-base01));
}

.md-typeset :is(.admonition, details).setting {
  background: rgba(var(--solarized-base01), 0.1);
}
.md-typeset .setting>:is(.admonition-title, summary)::before {
  -webkit-mask-image: var(--md-admonition-icon--setting);
  mask-image: var(--md-admonition-icon--setting);
}

.md-typeset .announce>:is(.admonition-title, summary)::before {
  -webkit-mask-image: var(--md-admonition-icon--announce);
  mask-image: var(--md-admonition-icon--announce);
}

[data-md-color-scheme="default"] .mermaid {
  --md-default-fg-color--lightest: rgba(var(--solarized-green), 0.2);
  --md-default-fg-color--lighter: rgb(var(--solarized-green));
}

[data-md-color-scheme="slate"] .mermaid {
  --md-default-fg-color--lightest: rgba(var(--solarized-red), 0.2);
  --md-default-fg-color--lighter: rgb(var(--solarized-red));
}
