/*
  Site: ACME Corp Docs Sites
   File: extra.css
   Maintainer: S. Welch
   Purpose: Theming + component tweaks

   Index: tokens | layout | nav | links | tabs | tags | code | admonitions | helpers | a11y
*/

/* --------------------------------------------------------------------------
   Tokens & Icons
   -------------------------------------------------------------------------- */

/* Nav & TOC Icons */
:root {
  --acme-menu-icon--up: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M21 15.61 19.59 17l-5.01-5 5.01-5L21 8.39 17.44 12 21 15.61M3 6h13v2H3V6m0 7v-2h10v2H3m0 5v-2h13v2H3Z"/></svg>');
	--md-toc-icon: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M7 5h14v2H7V5m0 8v-2h14v2H7M4 4.5A1.5 1.5 0 0 1 5.5 6 1.5 1.5 0 0 1 4 7.5 1.5 1.5 0 0 1 2.5 6 1.5 1.5 0 0 1 4 4.5m0 6A1.5 1.5 0 0 1 5.5 12 1.5 1.5 0 0 1 4 13.5 1.5 1.5 0 0 1 2.5 12 1.5 1.5 0 0 1 4 10.5M7 19v-2h14v2H7m-3-2.5A1.5 1.5 0 0 1 5.5 18 1.5 1.5 0 0 1 4 19.5 1.5 1.5 0 0 1 2.5 18 1.5 1.5 0 0 1 4 16.5Z"/></svg>');
}

/* Theme tokens (global) */
:root > * {
  --md-primary-fg-color:       	 	#00223F;
  --md-primary-fg-color--light: 	var(--md-primary-fg-color);
  --md-primary-fg-color--dark: 		var(--md-primary-fg-color);
  --md-accent-bg-color:       	  var(--md-primary-fg-color);
  --md-footer-bg-color:      	    var(--md-primary-fg-color);
  --md-code-fg-color:		      		var(--md-typeset-color);
  --md-code-hl-operator-color:		var(--md-typeset-color);
  --md-code-hl-punctuation-color:	var(--md-typeset-color);
  --md-code-hl-comment-color:	  	var(--md-typeset-color);
  --md-code-hl-generic-color:	  	var(--md-typeset-color);
  --md-code-hl-variable-color:		var(--md-typeset-color);
}

/* Palettes */
[data-md-color-scheme=default] {
  --md-typeset-a-color:     		#0066CC;
  --md-accent-fg-color:      		#113550;
  --acme-codeblock-border-color:	#4f4f4f;
  --acme-inline-code-bg-color:		#e9e9e9;
  --md-default-fg-color--light:		#515151;
  --md-default-fg-color--lighter:	#959595;
  --md-typeset-mark-color:			#bbdbfb;
}
[data-md-color-scheme=slate] {
  --md-typeset-a-color:         	#A5D2FF;
  --md-accent-fg-color:         	#A5D2FF;
  --acme-codeblock-border-color:	#bebebe;
  --acme-inline-code-bg-color:		var(--md-code-bg-color);
  --md-default-fg-color--light:		#bbbdce;
  --md-default-fg-color--lighter:	#74798f;
  --md-typeset-mark-color:			#0956a5;
}

/* Admonition icons (custom types) */
:root { /* link */
  --md-admonition-icon--link: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M10.59 13.41c.41.39.41 1.03 0 1.42-.39.39-1.03.39-1.42 0a5.003 5.003 0 0 1 0-7.07l3.54-3.54a5.003 5.003 0 0 1 7.07 0 5.003 5.003 0 0 1 0 7.07l-1.49 1.49c.01-.82-.12-1.64-.4-2.42l.47-.48a2.982 2.982 0 0 0 0-4.24 2.982 2.982 0 0 0-4.24 0l-3.53 3.53a2.982 2.982 0 0 0 0 4.24m2.82-4.24c.39-.39 1.03-.39 1.42 0a5.003 5.003 0 0 1 0 7.07l-3.54 3.54a5.003 5.003 0 0 1-7.07 0 5.003 5.003 0 0 1 0-7.07l1.49-1.49c-.01.82.12 1.64.4 2.43l-.47.47a2.982 2.982 0 0 0 0 4.24 2.982 2.982 0 0 0 4.24 0l3.53-3.53a2.982 2.982 0 0 0 0-4.24.973.973 0 0 1 0-1.42z"/></svg>')
}
:root { /* checklist */
  --md-admonition-icon--checklist: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M21 19v-2H8v2h13m0-6v-2H8v2h13M8 7h13V5H8v2M4 5v2h2V5H4M3 5a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V5m1 6v2h2v-2H4m-1 0a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1v-2m1 6v2h2v-2H4m-1 0a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1v-2z"/></svg>')
}
:root { /* fix */
  --md-admonition-icon--fix: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M14 12h-4v-2h4m0 6h-4v-2h4m6-6h-2.81a5.985 5.985 0 0 0-1.82-1.96L17 4.41 15.59 3l-2.17 2.17a6.002 6.002 0 0 0-2.83 0L8.41 3 7 4.41l1.62 1.63C7.88 6.55 7.26 7.22 6.81 8H4v2h2.09c-.05.33-.09.66-.09 1v1H4v2h2v1c0 .34.04.67.09 1H4v2h2.81c1.04 1.79 2.97 3 5.19 3s4.15-1.21 5.19-3H20v-2h-2.09c.05-.33.09-.66.09-1v-1h2v-2h-2v-1c0-.34-.04-.67-.09-1H20V8Z"/></svg>')
}
:root { /* enhance */
  --md-admonition-icon--enhance: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M17 8C8 10 5.9 16.17 3.82 21.34l1.89.66.95-2.3c.48.17.98.3 1.34.3C19 20 22 3 22 3c-1 2-8 2.25-13 3.25S2 11.5 2 13.5s1.75 3.75 1.75 3.75C7 8 17 8 17 8Z"/></svg>')
}
:root { /* goal */
  --md-admonition-icon--goal: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 0c6.627 0 12 5.373 12 12s-5.373 12-12 12S0 18.627 0 12 5.373 0 12 0m0 19.826a7.827 7.827 0 1 0 0-15.652 7.827 7.827 0 0 0 0 15.652m0-3.985a3.84 3.84 0 1 1 0-7.68 3.84 3.84 0 0 1 0 7.68"/></svg>')
}
:root { /* outcome */
  --md-admonition-icon--outcome: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path d="M13.637 2.363zl1.676.335c.09.018.164.084.19.173a.25.25 0 0 1-.062.249l-1.373 1.374a.88.88 0 0 1-.619.256H12.31L9.45 7.611A1.5 1.5 0 1 1 6.5 8a1.5 1.5 0 0 1 1.889-1.449l2.861-2.862V2.552c0-.232.092-.455.256-.619L12.88.559a.25.25 0 0 1 .249-.062c.089.026.155.1.173.19Z"/><path d="M2 8a6 6 0 1 0 11.769-1.656.751.751 0 1 1 1.442-.413 7.502 7.502 0 0 1-12.513 7.371A7.501 7.501 0 0 1 10.069.789a.75.75 0 0 1-.413 1.442A6 6 0 0 0 2 8"/><path d="M5 8a3.002 3.002 0 0 0 4.699 2.476 3 3 0 0 0 1.28-2.827.748.748 0 0 1 1.045-.782.75.75 0 0 1 .445.61A4.5 4.5 0 1 1 8.516 3.53a.75.75 0 1 1-.17 1.49A3 3 0 0 0 5 8"/></svg>')
}
:root { /* new */
  --md-admonition-icon--new: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4c1.11 0 2 .89 2 2v12c0 1.11-.89 2-2 2H4c-1.11 0-2-.89-2-2V6c0-1.11.89-2 2-2h16M8.5 15V9H7.25v3.5L4.75 9H3.5v6h1.25v-3.5L7.3 15h1.2m5-4.74V9h-4v6h4v-1.25H11v-1.11h2.5v-1.26H11v-1.12h2.5m7 3.74V9h-1.25v4.5h-1.12V10h-1.25v3.5h-1.13V9H14.5v5a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1Z"/></svg>')
}
:root { /* deprecate */
  --md-admonition-icon--deprecate: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M15 13h1.5v2.82l2.44 1.41-.75 1.3L15 16.69V13m4-5H5v11h4.67c-.43-.91-.67-1.93-.67-3a7 7 0 0 1 7-7c1.07 0 2.09.24 3 .67V8M5 21a2 2 0 0 1-2-2V5c0-1.11.89-2 2-2h1V1h2v2h8V1h2v2h1a2 2 0 0 1 2 2v6.1c1.24 1.26 2 2.99 2 4.9a7 7 0 0 1-7 7c-1.91 0-3.64-.76-4.9-2H5m11-9.85A4.85 4.85 0 0 0 11.15 16c0 2.68 2.17 4.85 4.85 4.85A4.85 4.85 0 0 0 20.85 16c0-2.68-2.17-4.85-4.85-4.85Z"/></svg>')
}

/* Code block icon variables */
:root {
  --acme-code-icon--snippet: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><!--! Font Awesome Pro 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --><path d="M64 0C28.7 0 0 28.7 0 64V448c0 35.3 28.7 64 64 64H320c35.3 0 64-28.7 64-64V160H256c-17.7 0-32-14.3-32-32V0H64zM256 0V128H384L256 0zM112 256H272c8.8 0 16 7.2 16 16s-7.2 16-16 16H112c-8.8 0-16-7.2-16-16s7.2-16 16-16zm0 64H272c8.8 0 16 7.2 16 16s-7.2 16-16 16H112c-8.8 0-16-7.2-16-16s7.2-16 16-16z"/></svg>');
  --acme-code-icon--example: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M7 2v2h1v14a4 4 0 0 0 4 4 4 4 0 0 0 4-4V4h1V2H7m4 14c-.6 0-1-.4-1-1s.4-1 1-1 1 .4 1 1-.4 1-1 1m2-4c-.6 0-1-.4-1-1s.4-1 1-1 1 .4 1 1-.4 1-1 1m1-5h-4V4h4v3Z"/></svg>');
}


/* --------------------------------------------------------------------------
   Layout (Header, Banner, Footer)
   -------------------------------------------------------------------------- */

/* Logo position (top-left) */
.md-header__button.md-logo {
  /*  margin-top: 0;
    margin-bottom: 0;*/
  padding-top: 0;
  padding-bottom: 0;
}

/* Version banner (sticky) */
.banner {
    height: 24px;       /* height */
    position: sticky;   /* follows on scroll */
    top: 0;             /* top of page */
    left: 0;
    width: 100%;
    z-index: 1;         /* above content blocks */
    text-align: center;
    background-color: var(--md-primary-fg-color);
    padding-top: 0.5em;
}


/* Header shadow */
.md-header--shadow {
    box-shadow: 0px 8px 8px -1px rgb(0 0 0 / 10%), 0px 8px 8px -1px rgb(0 0 0 / 20%);
}

/* Footer tweaks */
.md-footer-meta { display: none; }
.md-footer.md-footer__inner { height: 58px; }
.md-footer__link { padding-top: 8px; padding-bottom: 0px }
.md-footer__button { padding-top: 4px; padding-bottom: 0px }


/* --------------------------------------------------------------------------
   Nav & Search
   -------------------------------------------------------------------------- */

/* Indent level-1 items */
.md-nav[data-md-level="1"] { margin-left: 0.5rem; }

/* Link colors & hover in nav */
.md-nav__item a[href] { --md-accent-fg-color: var(--md-typeset-a-color); }
.md-nav__item a[href]:hover {
    font-weight: bold;
    -webkit-font-smoothing: antialiased;
}

/* Section headings in nav */
.md-nav__item--section>.md-nav__link[for] { color: var(--md-accent-fg-color); }

/* Search result color */
.md-search-result .md-typeset { color: var(--md-default-fg-color); }

/* Compact nav title icon/label at narrow widths */
@media screen and (max-width: 76.1875em){
	.md-nav--primary .md-nav__title .md-nav__icon:before {
		background-color: currentcolor;
		content: "";
		display: inline-block;
		position: relative;
		top: 0.5em;
		height: 100%;
		-webkit-mask-image: var(--acme-menu-icon--up);
		-webkit-mask-position: center;
		-webkit-mask-repeat: no-repeat;
		-webkit-mask-size: contain;
		width: 100%;
	}
}
@media screen and (max-width: 76.1875em){
	.md-nav--primary .md-nav__title .md-nav__icon:after {
		background-color: unset;
		content: "Up one level";
		font-size: 0.65em;
		display: inline-block;
		height: unset;
		-webkit-mask-image: unset;
		-webkit-mask-position: unset;
		-webkit-mask-repeat: unset;
		-webkit-mask-size: unset;
		width: unset;
	}
}

/* Search field */
.md-search__input{
  box-sizing: border-box;
  border-style: solid;
  border-color: #A5D2FF;
  border-width: 2px;
  border-radius: 4px;
}
.md-search__input::placeholder {
  color: #A5D2FF;
  opacity: 1;
}
/* Correct suggested text position */
.md-search__suggest {
    margin-left: 2px;
}


/* --------------------------------------------------------------------------
   Links & Buttons
   -------------------------------------------------------------------------- */

/* Primary button palette */
.md-typeset .md-button--primary {
    background-color: var(--md-primary-fg-color);
    border-color: var(--md-primary-fg-color);
    color: var(--md-primary-bg-color);
}
.md-typeset .md-button--primary:focus, 
.md-typeset .md-button--primary:hover { 
    border-color: var(--md-primary-fg-color);
    background-color: rgba(9,91,173,.5);
    color: var(--md-typeset-color);
    --md-primary-fg-color--light: #5d6cc0;
}

/* Links + search highlights share accent */
.md-typeset a[href],
.md-search-result mark {
    --md-accent-fg-color: var(--md-typeset-a-color);
}

/* Button text decoration + link weight/hover */
.md-typeset .md-button,
.md-typeset .md-button--primary { text-decoration: none !important; }

.md-typeset a[href] { font-weight: bold; }
.md-typeset a[href]:hover {
    text-decoration: underline;
    -webkit-font-smoothing: antialiased;
}
.md-search-result mark { font-weight: bold; text-decoration: none; }

/* Full-width button utility */
.md-typeset .md-button--stretch { width: 100%; }


/* --------------------------------------------------------------------------
   Tabs
   -------------------------------------------------------------------------- */

.md-typeset .tabbed-content { box-shadow: var(--md-shadow-z2); }
.md-typeset .tabbed-labels>label {
  /* box-shadow: var(--md-shadow-z3); */
  font-size: 0.9em;
  font-weight: normal; 
}
.md-typeset .tabbed-labels>label,
.md-typeset .tabbed-labels>label:hover { color: var(--md-typeset-a-color); }

.md-typeset .tabbed-set>input:first-child:checked~.tabbed-labels>:first-child, .md-typeset .tabbed-set>input:nth-child(10):checked~.tabbed-labels>:nth-child(10), .md-typeset .tabbed-set>input:nth-child(11):checked~.tabbed-labels>:nth-child(11), .md-typeset .tabbed-set>input:nth-child(12):checked~.tabbed-labels>:nth-child(12), .md-typeset .tabbed-set>input:nth-child(13):checked~.tabbed-labels>:nth-child(13), .md-typeset .tabbed-set>input:nth-child(14):checked~.tabbed-labels>:nth-child(14), .md-typeset .tabbed-set>input:nth-child(15):checked~.tabbed-labels>:nth-child(15), .md-typeset .tabbed-set>input:nth-child(16):checked~.tabbed-labels>:nth-child(16), .md-typeset .tabbed-set>input:nth-child(17):checked~.tabbed-labels>:nth-child(17), .md-typeset .tabbed-set>input:nth-child(18):checked~.tabbed-labels>:nth-child(18), .md-typeset .tabbed-set>input:nth-child(19):checked~.tabbed-labels>:nth-child(19), .md-typeset .tabbed-set>input:nth-child(2):checked~.tabbed-labels>:nth-child(2), .md-typeset .tabbed-set>input:nth-child(20):checked~.tabbed-labels>:nth-child(20), .md-typeset .tabbed-set>input:nth-child(3):checked~.tabbed-labels>:nth-child(3), .md-typeset .tabbed-set>input:nth-child(4):checked~.tabbed-labels>:nth-child(4), .md-typeset .tabbed-set>input:nth-child(5):checked~.tabbed-labels>:nth-child(5), .md-typeset .tabbed-set>input:nth-child(6):checked~.tabbed-labels>:nth-child(6), .md-typeset .tabbed-set>input:nth-child(7):checked~.tabbed-labels>:nth-child(7), .md-typeset .tabbed-set>input:nth-child(8):checked~.tabbed-labels>:nth-child(8), .md-typeset .tabbed-set>input:nth-child(9):checked~.tabbed-labels>:nth-child(9) {
    --md-accent-fg-color: var(--md-typeset-a-color);
    font-weight: bold;
}
.md-typeset .tabbed-labels--linked>label>a { padding-bottom: 0.3em; }
.tabbed-content { padding-left: 7px; padding-right: 7px; }


/* --------------------------------------------------------------------------
   Tags
   -------------------------------------------------------------------------- */

.md-typeset .md-tag[href] {
	--md-accent-fg-color: var(--md-default-fg-color--lightest);
    border: 1px solid var(--md-typeset-a-color);
    color: var(--md-typeset-a-color);
}
.md-typeset .md-tag[href]:focus,
.md-typeset .md-tag[href]:hover { color: var(--md-typeset-a-color); }
.md-typeset .md-tag-icon[href]:before { background-color: var(--md-typeset-a-color); }
.md-typeset .md-tag-icon[href]:focus:before,
.md-typeset .md-tag-icon[href]:hover:before { background-color: var(--md-typeset-a-color); }


/* --------------------------------------------------------------------------
   Code & Syntax
   -------------------------------------------------------------------------- */

/* Inline code */
.md-typeset code { font-size: 1em; }
.md-typeset code:not(pre code) {
	padding: 0.2941176471em 0.2941176471em 0;
	background-color: var(--acme-inline-code-bg-color);
    border-radius: 0.25rem;
}
h1 > code, h2 > code, h3 > code, h4 > code, h5 > code, h6 > code {
    background-color: var(--md-default-bg-color) !important;
}

/* Code block filename strip */
.highlight span.filename {
    border-top-left-radius: 0.25rem;
    border-top-right-radius: 0.25rem;
    border-top-color: var(--acme-codeblock-border-color);
    border-left-color: var(--acme-codeblock-border-color);
    border-right-color: var(--acme-codeblock-border-color);
    border-style: solid;
    font-family: var(--md-code-font-family);
    font-size: 0.6rem;
    padding-left: 2.5em;
    word-break: break-word; /* let the code block title wrap to multiple lines */
}

/* Variants: snippet/example/failure/success/warning/danger */
.snippet.highlight { display: flow-root !important; }
.snippet span.filename { background-color: #488cff1a !important; }
.snippet span.filename::before {
    content: "" !important;
    background-color: var(--acme-codeblock-border-color) !important;
    position: absolute !important;
    top: 0.4em !important;
    left: 0.4em !important;
    height: 24px !important;
    width: 18px !important;
    -webkit-mask-image: var(--acme-code-icon--snippet) !important;
    mask-image: var(--acme-code-icon--snippet) !important;
}

.example.highlight { display: flow-root !important; }
.example span.filename {
    background-color: #7c4dff1a !important;
    font-size: 0.64rem !important;
    font-family: var(--md-text-font-family) !important;
}
.example span.filename::before {
    content: "" !important;
    background-color: #7c4dff !important;
    position: absolute !important;
    top: 0.4em !important;
    left: 0.4em !important;
    height: 24px !important;
    width: 24px !important;
    -webkit-mask-image: var(--acme-code-icon--example) !important;
    mask-image: var(--acme-code-icon--example) !important;
}

.failure.highlight { display: flow-root; }
.failure span.filename {
    background-color: #ff52521a;
    font-size: 0.64rem;
    font-family: var(--md-text-font-family);
}
.failure span.filename::before {
    content: "";
    background-color: #ff5252;
    position: absolute;
    top: 0.4em;
    left: 0.4em;
    height: 24px;
    width: 24px;
    -webkit-mask-image: var(--md-admonition-icon--failure);
    mask-image: var(--md-admonition-icon--failure);
}

.success.highlight { display: flow-root; }
.success span.filename {
    background-color: #00c8531a;
    font-size: 0.64rem;
    font-family: var(--md-text-font-family);
}
.success span.filename::before {
    content: "";
    background-color: #00c853;
    position: absolute;
    top: 0.4em;
    left: 0.4em;
    height: 24px;
    width: 24px;
    -webkit-mask-image: var(--md-admonition-icon--success);
    mask-image: var(--md-admonition-icon--success);
}

.warning.highlight { display: flow-root; }
.warning span.filename {
    background-color: #FF91001a;
    font-size: 0.64rem;
    font-family: var(--md-text-font-family);
}
.warning span.filename::before {
    content: "";
    background-color: #FF9100;
    position: absolute;
    top: 0.4em;
    left: 0.4em;
    height: 24px;
    width: 1.2rem;
    -webkit-mask-image: var(--md-admonition-icon--warning);
    mask-image: var(--md-admonition-icon--warning);
}

.danger.highlight { display: flow-root; }
.danger span.filename {
    background-color: #FF17441a;
    font-size: 0.64rem;
    font-family: var(--md-text-font-family);
}
.danger span.filename::before {
    content: "";
    background-color: #FF1744;
    position: absolute;
    top: 0.4em;
    left: 0.4em;
    height: 24px;
    width: 1.2rem;
    -webkit-mask-image: var(--md-admonition-icon--danger);
    mask-image: var(--md-admonition-icon--danger);
}

/* Code block chrome */
.md-typeset .md-code__content {
    border-bottom-left-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem;
    border-style: solid;
    border-top: none;
}
.md-typeset .tabbed-block>.highlight:first-child>pre>code, .md-typeset .tabbed-block>pre:first-child>code {
    border-top-left-radius: 0.25rem;
    border-top-right-radius: 0.25rem;
}
.md-typeset pre>code::-webkit-scrollbar { height: 0.4rem; }
.md-typeset pre>code::-webkit-scrollbar-thumb { background-color: var(--md-default-fg-color--light); }

/* Code blocks without a title */
div.highlight:not(:has(> span)) > pre > code.md-code__content {
    border-top-left-radius: 0.25rem;
    border-top-right-radius: 0.25rem;
    border-top-style: solid !important;
}


/* --------------------------------------------------------------------------
   Admonitions (Custom Types)
   -------------------------------------------------------------------------- */

/* link */
.md-typeset .admonition.link,
.md-typeset details.link { border-color: rgb(169, 169, 169, 0); }
.md-typeset .link > .admonition-title,
.md-typeset .link > summary {
  background-color: rgba(169, 169, 169, 0);
  border-color: rgb(169, 169, 169, 0);
}
.md-typeset .link > .admonition-title::before,
.md-typeset .link > summary::before {
  background-color: rgb(169, 169, 169);
  -webkit-mask-image: var(--md-admonition-icon--link);
          mask-image: var(--md-admonition-icon--link);
}

/* checklist */
.md-typeset .admonition.checklist,
.md-typeset details.checklist {
  border-color: rgb(169, 169, 169, 0);
  box-shadow: var(--md-shadow-z3);
}
.md-typeset .checklist > .admonition-title,
.md-typeset .checklist > summary {
  background-color: rgba(169, 169, 169, 0);
  border-color: rgb(169, 169, 169, 0);
}
.md-typeset .checklist > .admonition-title::before,
.md-typeset .checklist > summary::before {
  background-color: rgb(169, 169, 169);
  -webkit-mask-image: var(--md-admonition-icon--checklist);
          mask-image: var(--md-admonition-icon--checklist);
}

/* fix */
.md-typeset .admonition.fix,
.md-typeset details.fix { border-color: #f50057; }
.md-typeset .fix > .admonition-title,
.md-typeset .fix > summary {
  background-color: rgba(245,0,87,.1);
  border-color: rgba(245,0,87,.1);
}
.md-typeset .fix > .admonition-title::before,
.md-typeset .fix > summary::before {
  background-color: #f50057;
  -webkit-mask-image: var(--md-admonition-icon--fix);
          mask-image: var(--md-admonition-icon--fix);
}

/* enhance */
.md-typeset .admonition.enhance,
.md-typeset details.enhance { border-color: green; }
.md-typeset .enhance > .admonition-title,
.md-typeset .enhance > summary {
  background-color: rgba(0,200,83,.1);
  border-color: rgba(0,200,83,.1);
}
.md-typeset .enhance > .admonition-title::before,
.md-typeset .enhance > summary::before {
  background-color: green;
  -webkit-mask-image: var(--md-admonition-icon--enhance);
          mask-image: var(--md-admonition-icon--enhance);
}

/* goal */
.md-typeset .admonition.goal,
.md-typeset details.goal { border-color: green; }
.md-typeset .goal > .admonition-title,
.md-typeset .goal > summary {
  background-color: rgba(0,200,83,.1);
  border-color: rgba(0,200,83,.1);
}
.md-typeset .goal > .admonition-title::before,
.md-typeset .goal > summary::before {
  background-color: green;
  -webkit-mask-image: var(--md-admonition-icon--goal);
          mask-image: var(--md-admonition-icon--goal);
}

/* outcome */
.md-typeset .admonition.outcome,
.md-typeset details.outcome { border-color: green; }
.md-typeset .outcome > .admonition-title,
.md-typeset .outcome > summary {
  background-color: rgba(0,200,83,.1);
  border-color: rgba(0,200,83,.1);
}
.md-typeset .outcome > .admonition-title::before,
.md-typeset .outcome > summary::before {
  background-color: green;
  -webkit-mask-image: var(--md-admonition-icon--outcome);
          mask-image: var(--md-admonition-icon--outcome);
}

/* new */
.md-typeset .admonition.new,
.md-typeset details.new { border-color: rgb(21, 96, 189); }
.md-typeset .new > .admonition-title,
.md-typeset .new > summary {
  background-color: rgba(21, 96, 189,.1);
  border-color: rgba(21, 96, 189,.1);
}
.md-typeset .new > .admonition-title::before,
.md-typeset .new > summary::before {
  background-color: rgb(21, 96, 189);
  -webkit-mask-image: var(--md-admonition-icon--new);
          mask-image: var(--md-admonition-icon--new);
}

/* deprecate */
.md-typeset .admonition.deprecate,
.md-typeset details.deprecate { border-color: #d27700; }
.md-typeset .deprecate > .admonition-title,
.md-typeset .deprecate > summary {
  background-color: #fff3ea;
  border-color: #fff3ea;
}
.md-typeset .deprecate > .admonition-title::before,
.md-typeset .deprecate > summary::before {
  background-color: #d27700;
  -webkit-mask-image: var(--md-admonition-icon--deprecate);
          mask-image: var(--md-admonition-icon--deprecate);
}


/* snippet (code-ish header) */
.md-typeset .admonition.snippet,
.md-typeset details.snippet {
  border-color: rgb(21, 96, 189);
  box-shadow: var(--md-shadow-z0);
  border-width: 0;
  padding: 0;
}
.md-typeset .snippet > .admonition-title,
.md-typeset .snippet > summary {
  background-color: rgba(21, 96, 189,.1);
  font-family: monospace;
  font-size: 90%;
  height: 32px;
}
.md-typeset .snippet > .admonition-title::before,
.md-typeset .snippet > summary::before {
  background-color: black;
  top: 4px;
  height: 24px;
  -webkit-mask-image: var(--md-admonition-icon--snippet);
          mask-image: var(--md-admonition-icon--snippet);
}


/* --------------------------------------------------------------------------
   Helpers (Figures, Clears, Hide, Annotations, Asides, Tooltip)
   -------------------------------------------------------------------------- */

/* Floatable figures */
figure.right { float: right; width: 50%; }
figure.left  { float: left;  width: 30%; text-align: left; font-size: smaller; padding: 0; }
.md-typeset figure { margin-bottom: 0; margin-top: 0; }

/* Clear helpers */
.clear-right { clear: right; }
.clear-left  { clear: left;  }
.clear-right.clear-left{ clear: all; }

/* Hide content (note on TOC in original comment) */
.acme_hidden { display:none; }

/* Annotations */
.md-annotation__index:after { top: -0.2em; }
.md-annotation .md-annotation__index { color: var(--md-default-bg-color); }
.md-annotation__index:after { background-color: var(--md-typeset-a-color); }

/* Color chip */
.acme_color_codes {
   display: inline-block;
   width: 1.5em;
   height: 1.5em;
   border: 1px solid black;
   background-color: #808080;
   vertical-align: -0.35em;
}

/* Tooltip position on images */
a[href]+.md-tooltip {
    --acme-tooltip-y: calc(var(--md-tooltip-y) - 50px);
    top: var(--acme-tooltip-y);
}

/* Asides (responsive) */
@media screen and (min-width:45em){
	[dir=ltr] .md-typeset .acme_aside{ float: left; }
	[dir=rtl] .md-typeset .acme_aside{ float: right; }
	[dir=ltr] .md-typeset .acme_aside{ margin-right: 0.8rem; }
	[dir=rtl] .md-typeset .acme_aside{ margin-left: 0.8rem; }
	.md-typeset .acme_aside{
		margin-bottom: 0.8rem;
		margin-top: 0;
		width: 17rem;
	}
	[dir=ltr] .md-typeset .acme_aside.end{ float: right; }
	[dir=rtl] .md-typeset .acme_aside.end{ float: left; }
	[dir=ltr] .md-typeset .acme_aside.end{ margin-left: 0.8rem; margin-right: 0; }
	[dir=rtl] .md-typeset .acme_aside.end{ margin-left: 0; margin-right: 0.8rem; }
}


/* --------------------------------------------------------------------------
   A11y & Polish
   -------------------------------------------------------------------------- */

/* Anchor blink on target */
:target { animation: blinker 0.5s linear 3; }
@keyframes blinker { 50% { opacity: 0; } }

/* <mark> */
.md-typeset mark { padding: 0.2941176471em 0 0; }

/* Font smoothing */
body { -webkit-font-smoothing: auto; }
[data-md-color-scheme=slate] { /* enable to avoid pseudo-bold in dark mode */
  -webkit-font-smoothing: antialiased;
}
.md-typeset .md-button,
.md-typeset .md-button--primary { /* enable to avoid extra-bold on buttons/admonition titles */
  -webkit-font-smoothing: antialiased;
}
.md-search-result mark,
.md-header__topic { -webkit-font-smoothing: antialiased; }
