/* More space at the bottom of the page. */
.md-main__inner {
	margin-bottom: 1.5rem;
}

/* Custom admonition: preview */
:root {
	--md-admonition-icon--preview: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M15.5 12a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0Z"/><path d="M12 3.5c3.432 0 6.124 1.534 8.054 3.241 1.926 1.703 3.132 3.61 3.616 4.46a1.6 1.6 0 0 1 0 1.598c-.484.85-1.69 2.757-3.616 4.461-1.929 1.706-4.622 3.24-8.054 3.24-3.432 0-6.124-1.534-8.054-3.24C2.02 15.558.814 13.65.33 12.8a1.6 1.6 0 0 1 0-1.598c.484-.85 1.69-2.757 3.616-4.462C5.875 5.034 8.568 3.5 12 3.5ZM1.633 11.945a.115.115 0 0 0-.017.055c.001.02.006.039.017.056.441.774 1.551 2.527 3.307 4.08C6.691 17.685 9.045 19 12 19c2.955 0 5.31-1.315 7.06-2.864 1.756-1.553 2.866-3.306 3.307-4.08a.111.111 0 0 0 .017-.056.111.111 0 0 0-.017-.056c-.441-.773-1.551-2.527-3.307-4.08C17.309 6.315 14.955 5 12 5 9.045 5 6.69 6.314 4.94 7.865c-1.756 1.552-2.866 3.306-3.307 4.08Z"/></svg>');
}

.md-typeset .admonition.preview,
.md-typeset details.preview {
	border-color: rgb(220, 139, 240);
}

.md-typeset .preview > .admonition-title,
.md-typeset .preview > summary {
	background-color: rgba(142, 43, 155, 0.1);
}

.md-typeset .preview > .admonition-title::before,
.md-typeset .preview > summary::before {
	background-color: rgb(220, 139, 240);
	-webkit-mask-image: var(--md-admonition-icon--preview);
	mask-image: var(--md-admonition-icon--preview);
}

/* Indentation. */
div.doc-contents:not(.first) {
	padding-left: 25px;
	border-left: 0.05rem solid var(--md-typeset-table-color);
}

/* Mark external links as such. */
a.external::after,
a.autorefs-external::after {
	/* https://primer.style/octicons/arrow-up-right-24 */
	mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M18.25 15.5a.75.75 0 00.75-.75v-9a.75.75 0 00-.75-.75h-9a.75.75 0 000 1.5h7.19L6.22 16.72a.75.75 0 101.06 1.06L17.5 7.56v7.19c0 .414.336.75.75.75z"></path></svg>');
	-webkit-mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M18.25 15.5a.75.75 0 00.75-.75v-9a.75.75 0 00-.75-.75h-9a.75.75 0 000 1.5h7.19L6.22 16.72a.75.75 0 101.06 1.06L17.5 7.56v7.19c0 .414.336.75.75.75z"></path></svg>');
	content: " ";

	display: inline-block;
	vertical-align: middle;
	position: relative;

	height: 1em;
	width: 1em;
	background-color: currentColor;
}

a.external:hover::after,
a.autorefs-external:hover::after {
	background-color: var(--md-accent-fg-color);
}

img.auto-screenshot {
	border-radius: 6px;
	margin-top: 1em;
	box-shadow: 0 6px 12px rgba(0, 0, 0, 0.3);
}

.tree-with-lines {
	--indent-guide-width: 1px;
}

@keyframes pulse {
  0%, 40%, 80%, 100% {
    transform: scale(1);
  }
  20%, 60% {
    transform: scale(1.15);
  }
}
.pulse {
  animation: pulse 1000ms infinite;
}

/* SYNTAX HIGHLIGHTING */

/* Custom syntax theme: Minimal Dark */
[data-md-color-scheme="default"] div.highlight {
	/* Background and foreground */
	--md-code-fg-color: #bdc3c7;
	--md-code-bg-color: #2b2d30;
	--md-code-bg-color--light: rgba(43, 45, 48, 0.9);
	--md-code-bg-color--lighter: rgba(43, 45, 48, 0.54);
	--md-code-hl-color: rgba(255, 255, 255, 0.08);
	--md-default-fg-color--light: #6a7075;

	/* Token colors - balanced palette */
	--md-code-hl-number-color: #a8c578;
	--md-code-hl-special-color: #c19ed8;
	--md-code-hl-function-color: #e5c07b;
	--md-code-hl-constant-color: #a8c578;
	--md-code-hl-keyword-color: #c19ed8;
	--md-code-hl-string-color: #d8a67c;
	--md-code-hl-name-color: #82b1e3;
	--md-code-hl-operator-color: #bdc3c7;
	--md-code-hl-punctuation-color: #bdc3c7;
	--md-code-hl-comment-color: #6a7075;
	--md-code-hl-generic-color: #bdc3c7;
	--md-code-hl-variable-color: #82b1e3;
}

/* Override for code inside asides - reset to defaults */
[data-md-color-scheme="default"] div.highlight aside code {
  /* reset or use different colors */
	--md-code-fg-color: initial;
	--md-code-bg-color: initial;
	--md-code-bg-color--light: initial;
	--md-code-bg-color--lighter: initial;
}

/* Style the copy button to match slate theme appearance */
[data-md-color-scheme="default"] div.highlight .md-code__button {
	color: rgba(189, 195, 199, 0.12);
}

[data-md-color-scheme="default"] div.highlight:hover .md-code__button {
	color: rgba(189, 195, 199, 0.56);
}

[data-md-color-scheme="default"] div.highlight .md-code__button:hover,
[data-md-color-scheme="default"] div.highlight .md-code__button.focus-visible {
	color: var(--md-accent-fg-color);
}

/* END SYNTAX HIGHLIGHTING */