:root {
  --color-dracula-background: #282a36;
  --color-dracula-selection: #44475a; /* a.k.a. "Current line" */
  --color-dracula-foreground: #f8f8f2;
  --color-dracula-comment: #6272a4;

  --color-dracula-cyan: #8be9fd;
  --color-dracula-green: #50fa7b;
  --color-dracula-orange: #ffb86c;
  --color-dracula-pink: #ff79c6;
  --color-dracula-purple: #bd93f9;
  --color-dracula-red: #ff5555;
  --color-dracula-yellow: #f1fa8c;

  --color-dracula-yellow-ish: #f4f9bf; 

  --empty-line-height: 1em; 
  --header-hanging-margin: 30px; 
}

body {
  
  --accent-h: 225;
  --accent-s: 27%;
  --accent-l: 51%;

  
  --file-margins: var(--size-4-8) var(--size-4-12); 
}

body.theme-dark {
  --color-base-00: var(--color-dracula-background); 
  --color-base-10: hsl(231, 15%, 22%);
  --color-base-20: hsl(231, 15%, 24%);
  --color-base-25: hsl(231, 15%, 27%);
  --color-base-30: hsl(231, 15%, 30%);
  --color-base-35: hsl(231, 15%, 33%);
  --color-base-40: hsl(231, 15%, 40%);
  --color-base-50: hsl(231, 15%, 50%);
  --color-base-60: hsl(231, 15%, 65%);
  --color-base-70: hsl(231, 15%, 84%);
  --color-base-100: var(--color-dracula-foreground); 

  --text-selection: var(--color-dracula-selection);

  --checklist-done-decoration: none; 
  --checklist-done-color: var(--text-faint); 
}

body.theme-dark.is-mobile {
  --color-base-00: hsl(231, 15%, 12%); 
  --color-base-10: hsl(231, 15%, 17%); 
  --color-base-20: hsl(231, 15%, 20%); 
}



body {
  --blockquote-border-thickness: 4px;
  --blockquote-border-color: var(--color-dracula-yellow);
  --blockquote-color: var(--color-dracula-yellow-ish);
}

.markdown-source-view .HyperMD-quote {
  text-indent: -0.875em !important;
  padding-inline-start: 2.375em !important;
}


.markdown-source-view .HyperMD-quote:has(> .cm-formatting-quote:only-child) {
  height: var(--empty-line-height);
  line-height: var(--empty-line-height); 
}

.markdown-preview-view blockquote {
  margin: 0 0 var(--empty-line-height) 1em; 
  padding: 0 0 0 1.125em;
}
.markdown-preview-view blockquote > :last-child {
  padding-bottom: 0;
}



body {
  --bold-color: var(--color-dracula-orange);
  --italic-color: var(--color-dracula-yellow);
}

.markdown-source-view .cm-formatting-strong,
.markdown-source-view .cm-formatting-em {
  opacity: 0.4;

  
  font-weight: normal;

  
}



body {
  --code-size: var(--font-small); 

  --code-normal:      var(--text-muted);                
  --code-comment:     var(--color-dracula-comment);     
  --code-function:    var(--color-dracula-green);       
  --code-important:   var(--color-dracula-red);         
  --code-keyword:     var(--color-dracula-pink);        
  --code-operator:    var(--color-dracula-foreground);  
  --code-property:    var(--color-dracula-orange);      
  --code-punctuation: var(--text-muted);                
  --code-string:      var(--color-dracula-yellow);      
  --code-tag:         var(--color-dracula-red);         
  --code-value:       var(--color-dracula-purple);      
}

.markdown-source-view .HyperMD-codeblock-begin,
.markdown-source-view .HyperMD-codeblock-end {
  
  font-size: 0.625em;

  
  height: 0.75rem; 
  line-height: 1.2rem !important; 
}
.markdown-source-view .HyperMD-codeblock-begin {
  z-index: 1; 
}

.markdown-preview-view pre {
  padding: 0.75em 1em; 
  margin: 0 0 var(--empty-line-height) 0; 
}

.markdown-source-view .HyperMD-codeblock,
.markdown-preview-view pre code {
  line-height: 1.5rem;
}



.markdown-source-view span.cm-inline-code,
.markdown-preview-view :not(pre) > code {
  color: var(--color-dracula-green);
  padding-top: 0.1875em; 
  padding-bottom: 0.1875em; 
}



body {
  --tag-size: var(--font-text-size);
  --tag-color: var(--color-dracula-pink);
  --tag-color-hover: var(--color-dracula-pink);
  --tag-background: hsla(var(--interactive-accent-hsl), 0.2);
  --tag-background-hover: hsla(var(--interactive-accent-hsl), 0.4);
  --tag-padding-x: 0.25em; 
  --tag-padding-y: 0.125em; 
  --tag-radius: 0.1875em; 
}



body {
  --h1-color: var(--color-dracula-pink);
  --h2-color: var(--color-dracula-purple);
  --h3-color: var(--color-dracula-cyan);
  --h4-color: var(--color-dracula-green);
  --h5-color: var(--color-dracula-yellow);
  --h6-color: var(--color-dracula-orange);

  --h1-size: 2em;
  --h2-size: 1.8em;
  --h3-size: 1.6em;
  --h4-size: 1.4em;
  --h5-size: 1.2em;
  --h6-size: 1em;

  --h1-weight: 600;
  --h2-weight: 600;
  --h3-weight: 600;
  --h4-weight: 600;
  --h5-weight: 600;
  --h6-weight: 600;

  --h1-line-height: 1.3125; 
  --h2-line-height: 1.2847; 
  --h3-line-height: 1.2891; 
  --h4-line-height: 1.2946; 
  --h5-line-height: 1.3021; 
  --h6-line-height: 1.3125; 

  --heading-spacing: 0;
}

.markdown-source-view .HyperMD-header,
.markdown-preview-view h1,
.markdown-preview-view h2,
.markdown-preview-view h3,
.markdown-preview-view h4,
.markdown-preview-view h5,
.markdown-preview-view h6 {
  margin: 0;
  letter-spacing: 0;
}


.markdown-source-view .cm-formatting-header {
  color: inherit; 
  opacity: 0.4;
  font-size: 0.6em !important;
}


.markdown-source-view:not(.is-live-preview) .HyperMD-header-1,
.markdown-source-view.is-live-preview .cm-active.HyperMD-header-1 { text-indent: -0.5184em; }
.markdown-source-view:not(.is-live-preview) .HyperMD-header-2,
.markdown-source-view.is-live-preview .cm-active.HyperMD-header-2 { text-indent: -0.9014em; }
.markdown-source-view:not(.is-live-preview) .HyperMD-header-3,
.markdown-source-view.is-live-preview .cm-active.HyperMD-header-3 { text-indent: -1.3004em; }
.markdown-source-view:not(.is-live-preview) .HyperMD-header-4,
.markdown-source-view.is-live-preview .cm-active.HyperMD-header-4 { text-indent: -1.7116em; }
.markdown-source-view:not(.is-live-preview) .HyperMD-header-5,
.markdown-source-view.is-live-preview .cm-active.HyperMD-header-5 { text-indent: -2.1396em; }
.markdown-source-view:not(.is-live-preview) .HyperMD-header-6,
.markdown-source-view.is-live-preview .cm-active.HyperMD-header-6 { text-indent: -2.5838em; }


.markdown-preview-view h1 { margin-bottom: calc(var(--empty-line-height) / 2); }
.markdown-preview-view h2 { margin-bottom: calc(var(--empty-line-height) / 1.8); }
.markdown-preview-view h3 { margin-bottom: calc(var(--empty-line-height) / 1.6); }
.markdown-preview-view h4 { margin-bottom: calc(var(--empty-line-height) / 1.4); }
.markdown-preview-view h5 { margin-bottom: calc(var(--empty-line-height) / 1.2); }
.markdown-preview-view h6 { margin-bottom: calc(var(--empty-line-height) / 1); }



body {
  --link-color: var(--color-dracula-pink);
  --link-color-hover: var(--color-dracula-purple);
  --link-external-color: var(--color-dracula-pink);
  --link-external-color-hover: var(--color-dracula-purple);
  --link-unresolved-color: var(--color-dracula-pink);
  --link-unresolved-opacity: 0.5;
  --link-unresolved-decoration-color: var(--color-dracula-pink);
}


.markdown-source-view .cm-string.cm-url {
  color: var(--color-dracula-cyan);
}

.markdown-source-view .cm-string.cm-url.cm-formatting-link-string {
  color: var(--text-faint);
}



body {
  
  --list-item-gap: 0.375em; 
  --list-indent-spacing: 0.125em; 
  --list-ul-bullet-spacing: 0.0805em; 
  --list-ol-bullet-width: 1.75em; 
  --list-checkbox-margin-left: calc(var(--checkbox-size) * 0.385); 
  --list-checkbox-margin-right: calc(var(--checkbox-size) * 0.685); 

  
  --list-spacing: 0; 
  --list-indent: calc(1.046875em + 4 * var(--list-indent-spacing)); 
}


.markdown-source-view .HyperMD-list-line + .HyperMD-list-line {
  padding-top: var(--list-item-gap) !important;
  padding-bottom: 0 !important;
}


.markdown-source-view .HyperMD-list-line .cm-hmd-list-indent {
  letter-spacing: var(--list-indent-spacing);
}


.markdown-source-view .HyperMD-list-line .cm-formatting-list-ul {
  letter-spacing: var(--list-ul-bullet-spacing);
}


.markdown-source-view .HyperMD-list-line .cm-formatting-list-ol {
  display: inline-block;
  min-width: var(--list-ol-bullet-width);
  text-align: right;
}


.markdown-source-view .HyperMD-list-line.HyperMD-task-line .cm-formatting-task {
  color: var(--text-faint);
}


.markdown-source-view .HyperMD-list-line.HyperMD-task-line:has(> .cm-property) {
  text-decoration: var(--checklist-done-decoration);
  color: var(--checklist-done-color);
}


.markdown-preview-view li + li,
.markdown-preview-view li li {
  margin-top: var(--list-item-gap);
}


.markdown-preview-view :not(li) > ul {
  --list-ul-bullet-width: 0.875em; 
  margin-left: calc(var(--list-ul-bullet-width) - var(--list-indent));
}


.markdown-preview-view :not(li) > ul.contains-task-list {
  --list-ul-bullet-width: 0.875em; 
  --list-checkbox-width: var(--list-checkbox-margin-left) + var(--checkbox-size) + var(--list-checkbox-margin-right);
  margin-left: calc(var(--list-ul-bullet-width) + var(--list-checkbox-width) - var(--list-indent));
}


.markdown-preview-view :not(li) > ol {
  margin-left: calc(var(--list-ol-bullet-width) - var(--list-indent));
}


.markdown-preview-view .list-bullet {
  justify-content: initial;
  padding-top: 0.09375em; 
}


.markdown-preview-view ul.contains-task-list .task-list-item-checkbox {
  margin-inline-start: calc(-1 * (var(--checkbox-size) + var(--list-checkbox-margin-right)));
  margin-right: var(--list-checkbox-margin-right);
}


.markdown-preview-view ol.contains-task-list .task-list-item-checkbox {
  margin-left: var(--list-checkbox-margin-left);
  margin-right: var(--list-checkbox-margin-right);
}


ol > li.task-list-item[data-task="x"],
ol > li.task-list-item[data-task="X"] {
  text-decoration: var(--checklist-done-decoration);
  color: var(--checklist-done-color);
}




.markdown-source-view .cm-line:has(> br:only-child) {
  height: var(--empty-line-height);
  line-height: var(--empty-line-height); 
}


.markdown-preview-view p {
  margin: 0 0 var(--empty-line-height) 0;
  padding: 0;
}



body {
  --table-header-background: var(--color-base-20);
}

.markdown-preview-view table {
  margin-block-start: 0;
}



.markdown-source-view .cm-hr {
  
  color: var(--color-base-40);
  font-weight: bold;
}

.markdown-preview-view hr {
  
  --hr-required-size: 1.5em; 
  --hr-remainder: calc(var(--hr-required-size) - var(--hr-thickness));
  --hr-margin: calc(var(--hr-remainder) / 2 + var(--empty-line-height));

  margin: var(--hr-margin) 0;
}




.markdown-source-view .cm-line:has(> .cm-hmd-frontmatter) {
  background-color: var(--code-background);
  padding-left: var(--size-4-4);
}


.markdown-source-view .cm-line > .cm-hmd-frontmatter {
  color: var(--text-faint);
}


.markdown-source-view .cm-line:has(> .cm-hmd-frontmatter.cm-def) {
  
  font-size: 0.625em;

  
  height: 0.75rem; 
  line-height: 0.75rem; 

  border-radius: var(--radius-s) var(--radius-s) 0 0;
}


.markdown-source-view .cm-line:has(> .cm-hmd-frontmatter) + .cm-line:has(> .cm-hmd-frontmatter.cm-def) {
  border-radius: 0 0 var(--radius-s) var(--radius-s);
}


.markdown-source-view .cm-line > .cm-hmd-frontmatter:not(.cm-def) {
  height: 1.5rem;
  line-height: 1.5rem;
  vertical-align: top;
}


.markdown-preview-view .frontmatter-container {
  color: var(--text-faint);
  background-color: var(--code-background);
  border-radius: var(--radius-s);
  padding: 0.75em 1em; 
  margin: 0 0 var(--empty-line-height) 0; 
}
.markdown-preview-view .frontmatter-container-header {
  display: none;
}
.markdown-preview-view .frontmatter-section {
  line-height: 1.5em;
  margin: 0;
}
.markdown-preview-view .frontmatter-section-label,
.markdown-preview-view .frontmatter-section-data {
  font-family: var(--font-monospace);
  font-size: var(--font-smaller);
  text-transform: none;
}
