[data-md-color-scheme="elva-light"] {
  /* Catppuccin Latte color palette */

  --rosewater:  #dc8a78;
  --flamingo:   #dd7878;
  --pink:       #ea76cb;
  --mauve:      #8839ef;
  --red:        #d20f39;
  --maroon:     #e64553;
  --peach:      #fe640b;
  --yellow:     #df8e1d;
  --green:      #40a02b;
  --teal:       #179299;
  --sky:        #04a5e5;
  --sapphire:   #209fb5;
  --blue:       #1e66f5;
  --lavender:   #7287fd;
  --text:       #4c4f69;
  --subtext-1:  #5c5f77;
  --subtext-0:  #6c6f85;
  --overlay-2:  #7c7f93;
  --overlay-1:  #8c8fa1;
  --overlay-0:  #9ca0b0;
  --surface-2:  #acb0be;
  --surface-1:  #bcc0cc;
  --surface-0:  #ccd0da;
  --base:       #eff1f5;
  --mantle:     #e6e9ef;
  --crust:      #dce0e8;
}


[data-md-color-scheme="elva-dark"] {
  /* Catppuccin Mocha color palette */

  --rosewater:  #f5e0dc;
  --flamingo:   #f2cdcd;
  --pink:       #f5c2e7;
  --mauve:      #cba6f7;
  --red:        #f38ba8;
  --maroon:     #eba0ac;
  --peach:      #fab387;
  --yellow:     #f9e2af;
  --green:      #a6e3a1;
  --teal:       #94e2d5;
  --sky:        #89dceb;
  --sapphire:   #74c7ec;
  --blue:       #89b4fa;
  --lavender:   #b4befe;
  --text:       #cdd6f4;
  --subtext-1:  #bac2de;
  --subtext-0:  #a6adc8;
  --overlay-2:  #9399b2;
  --overlay-1:  #7f849c;
  --overlay-0:  #6c7086;
  --surface-2:  #585b70;
  --surface-1:  #45475a;
  --surface-0:  #313244;
  --base:       #1e1e2e;
  --mantle:     #181825;
  --crust:      #11111b;
}


[data-md-color-scheme] {
  --md-primary-fg-color:               var(--base);
  --md-primary-fg-color--light:        var(--base);
  --md-primary-fg-color--dark:         var(--base);
  --md-primary-bg-color:               var(--text);
  --md-primary-bg-color--light:        var(--subtext-1); 
  --md-accent-fg-color:                var(--sky);  /* link:hover */
  --md-accent-fg-color--transparent:   var(--crust);  /* link:hover background */
  --md-accent-bg-color:                var(--base);  /* font color of "Back to top" button */
  --md-accent-bg-color--light:         var(--mantle);

  --md-default-fg-color:               var(--text);
  --md-default-fg-color--light:        var(--subtext-1);  /* headings */
  --md-default-fg-color--lighter:      var(--subtext-0);
  --md-default-fg-color--lightest:     var(--surface-0);  /* subsection */
  --md-default-bg-color:               var(--base);
  --md-default-bg-color--light:        var(--base);  /* footer */
  --md-default-bg-color--lighter:      var(--mantle);
  --md-default-bg-color--lightest:     var(--crust);
  --md-code-fg-color:                  var(--text);
  --md-code-bg-color:                  var(--crust);
  --md-code-hl-color:                  var(--flamingo);
  --md-code-hl-color--light:           var(--rosewater);
  --md-code-hl-number-color:           var(--peach);
  --md-code-hl-special-color:          var(--teal);
  --md-code-hl-function-color:         var(--blue);
  --md-code-hl-constant-color:         var(--peach);
  --md-code-hl-keyword-color:          var(--mauve);
  --md-code-hl-string-color:           var(--green);
  --md-code-hl-name-color:             var(--md-code-fg-color); /* object (func, attr, ...) name */
  --md-code-hl-operator-color:         var(--sky);
  --md-code-hl-punctuation-color:      var(--md-default-fg-color--light);
  --md-code-hl-comment-color:          var(--overlay-2);
  --md-code-hl-generic-color:          var(--md-default-fg-color--light);
  --md-code-hl-variable-color:         var(--md-default-fg-color--light);
  --md-typeset-color:                  var(--md-default-fg-color);
  --md-typeset-a-color:                var(--blue);  /* links */
  --md-typeset-del-color:              var(--maroon);
  --md-typeset-ins-color:              var(--teal);
  --md-typeset-kbd-color:              var(--subtext-1);
  --md-typeset-kbd-accent-color:       var(--rosewater);
  --md-typeset-kbd-border-color:       var(--rosewater);
  --md-typeset-mark-color:             var(--rosewater);
  --md-typeset-table-color:            var(--text);
  --md-typeset-table-color--light:     var(--subtext-1);
  --md-admonition-fg-color:            var(--md-default-fg-color);
  --md-admonition-bg-color:            var(--md-default-bg-color);
  --md-warning-fg-color:               var(--text);
  --md-warning-bg-color:               var(--yellow);
  --md-footer-fg-color:                var(--md-default-fg-color);
  --md-footer-fg-color--light:         var(--md-default-fg-color--light);
  --md-footer-fg-color--lighter:       var(--md-default-fg-color--lighter);
  --md-footer-bg-color:                var(--md-default-bg-color);
  --md-footer-bg-color--dark:          var(--md-default-bg-color);
  --md-shadow-z1:
    0 4px 10px hsla(0, 0%, 0%, 0.05),
    0 0              1px  hsla(0, 0%, 0%, 0.1);
  --md-shadow-z2:
    0 4px 10px hsla(0, 0%, 0%, 0.1),
    0 0              1px  hsla(0, 0%, 0%, 0.25);
  --md-shadow-z3:
    0 4px 10px hsla(0, 0%, 0%, 0.2),
    0 0              1px  hsla(0, 0%, 0%, 0.35);
}


/* make all sorts of comments and docstrings italic */
.highlight {
  :is(.c, .cm, .c1, .ch, .cs, .sd) {
    font-style: italic;
  }
}
