:root {
  /* Borders */
  --md-border-radius: 12px;
  --md-border-width: 1px;

  /* Opacity */
  --md-hover-opacity: 0.7;

  /* Colors */
  --dark: #000000;
  --dark-grey: #111112;
  --grey: #1c1c1c;
  --light: #ffffff;
  --light-transparent-90: rgba(255, 255, 255, 0.9);
  --light-transparent-60: rgba(255, 255, 255, 0.6);
  --light-transparent-40: rgba(255, 255, 255, 0.4);
  --light-transparent-20: rgba(255, 255, 255, 0.2);
  --light-transparent-12: rgba(255, 255, 255, 0.12);
  --light-transparent-10: rgba(255, 255, 255, 0.1);
  --light-transparent-07: rgba(255, 255, 255, 0.07);
  --plum: #c1bbf6;
  --plum-transparent-70: rgba(193, 187, 246, 0.7);
  --plum-transparent-50: rgba(193, 187, 246, 0.5);
  --plum-transparent-15: rgba(193, 187, 246, 0.15);
  --plum-transparent-10: rgba(193, 187, 246, 0.1);
  --yellow: #dde95a;
  --coral: #fd8058;
  --coral-transparent-12: rgba(253, 128, 88, 0.12);

  /* Fonts*/
  --h1-size: 76px;
  --h2-size: 56px;
  --h3-size: 48px;
  --h4-size: 38px;

  --body-l-text-size: 18px;
  --body-text-size: 16px;
  --body-s-text-size: 14px;
  --body-xs-text-size: 12px;

  --body-l-text-line-height: 160%;
  --body-text-line-height: 170%;
  --body-s-text-line-height: 140%;
  --body-xs-text-line-height: 140%;

  --caption-size: 11px;
  --label-size: 12px;

  --md-header-font: 'Druk', sans-serif;
  --h1-h2-line-height: 90%;
  --h3-h4-line-height: 100%;
  --header-font-weight: 800;
  --header-text-style: uppercase;

  --md-cta-font: 'Druk Wide', sans-serif;

  --md-nav-labels-font: 'Roboto Mono', monospace;
  --label-text-style: uppercase;
}

:root,
[data-md-color-scheme='default'] {
  --md-default-fg-color: var(--light);
  --md-default-fg-color--light: var(--light-transparent-10);
  --md-default-fg-color--lighter: var(--plum);
  --md-default-fg-color--lightest: var(--light-transparent-10);
  --md-default-bg-color: var(--dark);

  --md-primary-fg-color: var(--plum);
  --md-primary-fg-color--dark: var(--plum);

  --md-accent-fg-color: var(--plum);
  --md-accent-fg-color-light: var(---light-transparent-90);
  --md-accent-bg-color: var(--plum-transparent-70);

  --md-footer-bg-color: var(--dark);
  --md-footer-bg-color--dark: var(--dark);

  /* Important is needed to override mkdocs specificity */
  --md-typeset-a-color: var(--plum) !important;
  --md-typeset-a-color--hover: var(--plum-transparent-70);

  --md-border-color: var(--light-transparent-10);

  --md-typeset-table-color: var(--grey);
  --md-typeset-kbd-color: var(--grey);

  /** Optional: For branded code snippets**/
  --md-code-fg-color: var(--yellow);
  --md-code-bg-color: var(--dark-grey);
  /** Code highlighting color shades **/
  /* Numbers */
  --md-code-hl-number-color: var(--light);
  /* Python function names */
  --md-code-hl-function-color: var(--coral);
  /* JavaScript booleans, Python variable names */
  --md-code-hl-name-color: var(--yellow);
  /* Strings */
  --md-code-hl-string-color: var(--coral);
  /* Python print */
  --md-code-hl-constant-color: var(--plum);
  /* Imports, const, let, var, async, await, function, etc. */
  --md-code-hl-keyword-color: var(--plum);
  /* Comments */
  --md-code-hl-comment-color: var(--light-transparent-60);
  /* Operators (=, >, <)*/
  --md-code-hl-operator-color: var(--light);
  /* Punctuation, brackets, parenthesis, etc. */
  --md-code-hl-punctuation-color: var(--light);
  /* Code highlighting */
  --md-code-hl-variable-color: var(--coral);
  --md-code-hl-color--light: var(--plum-transparent-10);
  --md-code-hl-color: var(--plum);

  --md-admonition-icon--code: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+PHBhdGggZD0iTTE0LjYsMTYuNkwxOS4yLDEyTDE0LjYsNy40TDE2LDZMMjIsMTJMMTYsMThMMTQuNiwxNi42TTkuNCwxNi42TDQuOCwxMkw5LjQsNy40TDgsNkwyLDEyTDgsMThMOS40LDE2LjZaIiAvPjwvc3ZnPg==');
}

/* Fonts */
.md-typeset h1,
.md-typeset h2,
.md-typeset h3,
.md-typeset h4 {
  font-family: var(--md-header-font);
  text-transform: var(--header-text-style);
  font-weight: var(--header-font-weight);
}

.md-typeset h1,
.md-typeset h2 {
  line-height: var(--h1-h2-line-height);
}

.md-typeset h3,
.md-typeset h4 {
  line-height: var(--h3-h4-line-height);
}

.md-typeset h1 {
  color: var(--md-default-fg-color);
}

.md-content__inner h1 {
  font-size: var(--h1-size);
  margin: 0;
}

.md-content__inner h2 {
  font-size: var(--h2-size);
  margin-top: 1em;
}

.md-content__inner h3 {
  font-size: var(--h3-size);
  margin-top: 1em;
}

.md-content__inner h4 {
  font-size: var(--h4-size);
}

.md-nav {
  font-size: var(--body-xs-text-size);
  line-height: var(--body-xs-text-line-height);
  font-weight: 500;
}

@media screen and (max-width: 30em) {
  .md-typeset h1 {
    font-size: 48px;
    word-break: break-word;
  }

  .md-typeset h2 {
    font-size: 36px;
    word-break: break-word;
  }

  .md-typeset h3 {
    font-size: 28px;
    word-break: break-word;
  }

  .md-typeset h4 {
    font-size: 22px;
    word-break: break-word;
  }
}

/* General styling */
.md-typeset {
  font-size: var(--body-text-size);
  line-height: var(--body-text-line-height);
}

.md-typeset.md-content__inner a {
  text-decoration: underline;
}

.md-typeset a:focus,
.md-typeset a:hover {
  color: var(--md-typeset-a-color);
  opacity: var(--md-hover-opacity);
}

/* All icons (i.e., Next, Prev, Feedback, etc. */
.md-icon svg {
  width: 1.5rem;
  height: 1.5rem;
  fill: var(--md-typeset-a-color);
}

/* Header styles */
.md-header,
.md-tabs {
  background-color: var(--md-default-bg-color);
  font-family: var(--md-nav-labels-font);
  text-transform: var(--label-text-style);
  font-size: var(--label-size);
}

/* To align with Wormhole website */
.md-header {
  /* Make header a little thicker */
  padding: 1.6em 0;
}

[dir='ltr'] .md-header__title {
  margin-left: 0;
  height: unset;
}

.md-header__title > .md-header__ellipsis {
  width: 12.1rem;
}

.md-header__button.md-logo {
  margin: 0.1rem;
  padding: 0;
}

.md-header__button.md-logo img {
  height: 12px;
  width: 132px;
}

@media screen and (max-width: 60em) {
  [dir='ltr'] .md-header__title {
    display: none;
  }
}

/* Make spacing of nav items slightly larger */
li.md-nav__item,
.md-nav__item--section > .md-nav > .md-nav__list > .md-nav__item {
  margin: 0.3em 0;
}

/* Set all non-primary sections font and margin size to be smaller */
.md-nav__link.md-nav__link--index,
.md-nav__link {
  margin-top: 0;
  padding: 0.4em 0;
}

/* Make the secondary section font larger on left capitalized (i.e., Get Started, Build, etc.) */
.md-nav__item--section > .md-nav__link {
  text-transform: var(--label-text-style);
}

/** Styling for nav items that are active or hovered over on larger screens **/
@media screen and (min-width: 76.25em) {
  /* Make the primary section font larger on left nav (i.e., Build, Learn, etc.) */
  .md-nav--lifted > .md-nav__list > .md-nav__item--active > .md-nav__link {
    font-family: var(--md-header-font);
    font-size: 26px;
    font-weight: 700;
    text-transform: var(--label-text-style);
    line-height: 33.8px;
    padding: 0 0 0.5em 0.9em;
    margin-left: -0.9em;
    background-color: var(--dark);
    border-bottom: var(--md-border-width) solid var(--md-border-color);
    box-shadow: none;
  }

  /* Highlight current active nav item and nav items on hover */
  .md-nav__link:hover,
  .md-nav__link-wrapper.md-nav__item.md-nav__item--active,
  .md-nav__item div.md-nav__link--active {
    background: var(--grey);
    border-radius: var(--border-radius);
  }

  .md-nav__link:hover {
    margin-left: -0.9em;
    padding-left: 0.9em;
  }

  .md-nav__link-wrapper.md-nav__item.md-nav__item--active {
    margin-left: -0.8em;
    padding-left: 0.8em;
  }

  .md-nav__item div.md-nav__link--active {
    margin-left: -0.9em;
    padding-left: 0;
  }

  /* For active sections, when on that section index page */
  .md-nav__item .md-nav__link-wrapper.md-nav__link--active a,
  .md-nav__item .md-nav__link--active a {
    margin-left: 0.9em;
  }

  /* For section links on hover */
  .md-nav__link.md-nav__link--index:hover a {
    color: var(--md-typeset-a-color);
  }

  [dir='ltr'] .md-nav--primary .md-nav__item > .md-nav__link,
  [dir='ltr'] .md-nav--primary .md-nav__item > .md-nav__link:hover {
    margin-right: 0;
  }
}

/** Styling for nav items that are active or hovered over on smaller screens **/
@media screen and (max-width: 76.1875em) {
  /* For links on hover */
  .md-nav__link:hover a {
    margin-left: 1em;
  }

  .md-nav__link-wrapper.md-nav__item.md-nav__item--active {
    margin-left: -1em;
  }

  /* Apply background to active pages and sections */
  .md-nav--primary .md-nav__item--active > .md-nav__link {
    background-color: var(--grey);
  }

  /* Nav hover styling for sections */
  div.md-nav__link:hover {
    margin-left: 0;
    padding-left: 0;
  }

  /* Nav hover styling for pages */
  a.md-nav__link:hover {
    margin-left: 0;
    padding-left: 1em;
  }
}

/* Only show the active items on the left nav */
@media screen and (min-width: 76.25em) {
  /* To hide the inactive dropdown sections on the left nav */
  .md-nav > .md-nav__list .md-nav__item--section {
    display: none;
  }

  /* To show only the active dropdown section on the left nav */
  .main-page-sidebar .md-nav > .md-nav__list .md-nav__item--section,
  .md-nav > .md-nav__list .md-nav__item--section.md-nav__item--active {
    display: block;
    margin-top: 2em;
  }

  /* Allow section headers to be clickable */
  .md-nav--lifted
    > .md-nav__list
    > .md-nav__item--active
    > .md-nav__link:not(.md-nav__container),
  .md-nav__item--section > .md-nav__link:not(.md-nav__container) {
    pointer-events: auto;
  }

  /* Remove arrow (dropdown) icon next to the section header (i.e., Builders, Node Operators, etc.) */
  .md-nav--lifted
    > .md-nav__list
    > .md-nav__item--active
    > .md-nav__link
    label
    span.md-nav__icon:after {
    display: none;
  }

  /* Override mkdocs styling to account for the nav-wrapper */
  .md-nav__toggle.md-toggle--indeterminate ~ .md-nav,
  .md-nav__toggle:checked ~ .nav-wrapper {
    display: grid;
    grid-template-rows: 1fr;
    opacity: 1;
    transition: grid-template-rows 0.25s cubic-bezier(0.86, 0, 0.07, 1),
      opacity 0.15s 0.1s, visibility 0ms;
    visibility: visible;
  }

  .md-nav__toggle ~ .md-nav > .nav-wrapper {
    overflow: hidden;
  }

  .md-nav {
    margin-bottom: 0;
  }

  /* Section lines */
  li > nav.md-nav[data-md-level='3'] ul.md-nav__list,
  li > nav.md-nav[data-md-level='4'] ul.md-nav__list {
    border-left: var(--md-border-width) solid var(--plum);
    margin: 0.75em 0;
  }
}

/* Add spacing below the section lines */
.md-nav--primary .md-nav__list {
  padding-bottom: 0;
  margin-bottom: 0.5em;
}

/* Render arrow next to expandable sections */
.md-nav__link > * {
  cursor: pointer;
  display: flex;
  align-self: center;
}

/* Scrollbar styling for left nav */
/* For Chrome, Edge, and Safari */
.md-sidebar__scrollwrap:focus-within::-webkit-scrollbar-thumb,
.md-sidebar__scrollwrap:hover::-webkit-scrollbar-thumb,
.md-typeset pre > code::-webkit-scrollbar-thumb {
  background-color: var(--plum);
  /* color of the tracking area */
}

/* For Firefox */
.md-typeset pre > code:focus-within,
.md-typeset pre > code:hover,
.md-sidebar__scrollwrap:focus-within,
.md-sidebar__scrollwrap:hover {
  scrollbar-color: var(--plum);
  /* color of the tracking area */
}

/** TOC styling **/
.md-nav--secondary .md-nav__item .md-nav__link--active {
  color: var(--plum);
}

/* Styling for the "Section" title on the TOC */
.md-nav--secondary .md-nav__title {
  box-shadow: none;
  padding: 0.5em 0;
  color: var(--light);
  text-transform: var(--header-text-style);
  background-color: transparent;
  position: unset;
}

.md-nav--secondary .md-nav__link:hover {
  background: transparent;
  color: var(--plum);
}

/* Apply opacity to sections in TOC as scrolling past them */
.md-nav__link--passed {
  color: var(--light-transparent-60);
}

/* Adjust nav and TOC styling for smaller screens*/
@media screen and (max-width: 76.1875em) {
  /* Hide Nav Bar header label text - only show back arrow */
  .md-nav--primary .md-nav__title[for='__drawer'],
  .md-nav--primary .md-nav__title {
    background: var(--md-default-bg-color);
    border-bottom: var(--md-border-width) solid var(--grey);
    color: var(--md-default-fg-color);
    text-transform: var(--label-text-style);
  }

  /* Don't display Wormhhole Docs under logo */
  .toc-sections-title {
    display: none;
  }

  /* Remove lines between nav items */
  .md-nav--primary .md-nav__item {
    border-top: none;
  }

  .md-nav__link-wrapper.md-nav__item.md-nav__item--active
    .md-nav__link.md-nav__link--active {
    display: none;
  }

  .md-nav__link.md-nav__link--index,
  .md-nav__link {
    font-size: var(--body-text-size);
  }

  /* Adjust font of nav items */
  .md-nav__link,
  .md-nav__item--section > .md-nav__link {
    font-size: var(--body-text-size);
  }

  /* To adjust the root-level section font */
  .md-nav--lifted > .md-nav__list > .md-nav__item--active > .md-nav__link {
    text-transform: capitalize;
    font-size: var(--body-text-size);
    font-weight: 400;
    padding: 0.6rem 0.8rem;
    letter-spacing: normal;
  }

  .md-nav--lifted
    > .md-nav__list
    > .md-nav__item--active
    > .md-nav__link:hover {
    padding-left: unset;
  }

  li.md-nav__item,
  .md-nav__item--section > .md-nav > .md-nav__list > .md-nav__item {
    margin: 0;
  }

  /* To adjust lower-level section font */
  .md-nav__item--section > .md-nav__link {
    text-transform: capitalize;
  }

  /* Keep nav items as scrolling over and hovering over) in line */
  .md-nav--primary .md-nav__link,
  .md-nav__link.md-nav__link--index,
  .md-nav__link {
    margin-top: unset;
    padding: 0.6rem 0.8rem;
    align-items: center;
  }
}

/* TOC styling */
@media screen and (min-width: 60em) {
  .md-nav--secondary {
    background: var(--grey);
    border: var(--md-border-width) solid var(--md-border-color);
    border-radius: var(--md-border-radius);
    color: #9a9a9a;
    padding: 1em 0.6rem;
  }

  [dir='ltr'] .md-nav--secondary .md-nav__list[data-md-component='toc'] {
    padding: 0;
  }

  .md-nav--secondary .md-nav__list {
    padding-bottom: 0;
  }

  .md-nav--secondary li.md-nav__item {
    margin: 0.3em 0;
  }

  [dir='ltr'] .md-nav--secondary .md-nav__item > .md-nav__link {
    margin-right: 0;
    font-size: var(--body-xs-text-size);
  }

  .md-nav--secondary .md-nav__link {
    padding: 0.4em 0;
  }

  [dir='ltr'] .md-nav--secondary .md-nav__item > a.md-nav__link:hover {
    padding-left: 0;
    margin-left: 0;
  }

  [dir='ltr'] .md-nav--secondary a.md-nav__link.md-nav__link--active,
  [dir='ltr'] .md-nav--secondary a.md-nav__link.md-nav__link--active:hover {
    padding: 0.4em 0;
  }
}

/* Hides section permalink hash for H1 sections */
.md-typeset h1 .headerlink {
  display: none;
}

/* Custom admonition styling */
.md-typeset .admonition {
  border-width: var(--md-border-width);
}

.md-typeset .admonition.code,
.md-typeset details.code,
.md-typeset .admonition.note,
.md-typeset details.note {
  border-color: var(--plum);
}

.md-typeset .code > .admonition-title:before,
.md-typeset .code > summary:before,
.md-typeset .note > .admonition-title:before,
.md-typeset .note > summary:before {
  background-color: var(--plum);
}

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

.md-typeset .code > .admonition-title,
.md-typeset .code > summary,
.md-typeset .note > .admonition-title,
.md-typeset .note > summary {
  background-color: var(--grey);
}

.md-typeset .admonition.warning,
.md-typeset details.warning {
  border-color: var(--coral);
}

.md-typeset .warning > .admonition-title:before,
.md-typeset .warning > summary:before {
  background-color: var(--coral);
}

.md-typeset .warning > .admonition-title,
.md-typeset .warning > summary {
  background-color: var(--coral-transparent-12);
}

/* Styling for the Copy to Clipboard */
/* Clipboard icon */
.md-clipboard {
  color: var(--plum);
}

/* Hovering over the clipboard */
:hover > .md-clipboard {
  color: var(--plum);
}

.md-clipboard:focus,
.md-clipboard:hover {
  color: var(--plum-transparent-70);
}

/* Center copy to clipboard text in pop-up */
.md-dialog {
  text-align: center;
}

/* Prevent code blocks from overlapping the Copy to Clipboard button */
.md-typeset pre > code {
  white-space: break-spaces;
  padding: 1.5em;
  padding-right: 3em;
}

.highlighttable .linenos {
  padding-top: 1.5em;
}

pre .md-clipboard {
  margin-top: 0.5em;
}

/* Styling for Tables */
.md-typeset__table {
  min-width: 75%;
}

.md-typeset table:not([class]) {
  border-color: var(--grey);
  border-radius: var(--md-border-radius);
  display: inline-table;
}

.md-typeset .md-typeset__table table th {
  background-color: var(--grey);
  color: var(--light);
  text-transform: var(--label-text-style);
  font-weight: 500;
}

.md-typeset table:not([class]) td,
.md-typeset table:not([class]) th {
  vertical-align: middle;
}

/* Round table corners */
.md-typeset .md-typeset__table table th:first-child {
  border-top-left-radius: var(--md-border-radius);
}

.md-typeset .md-typeset__table table th:last-child {
  border-top-right-radius: var(--md-border-radius);
}

/* Tables centered */
.md-typeset__scrollwrap {
  text-align: center;
}

/* Supported Blockchains Tables */
.full-width .md-typeset__scrollwrap .md-typeset__table {
  width: 100%;
}

/* Tables in tabs */
.tabbed-content .md-typeset__scrollwrap {
  margin: 0;
}

.tabbed-content .md-typeset__table {
  display: inline-table;
  margin-bottom: 0;
  padding: 0.5em;
  width: 100%;
}

/* Tabbed Styling */
.md-typeset .tabbed-labels {
  padding: 0.2em;
  text-transform: var(--label-text-style);
}

.md-typeset .tabbed-set {
  background: var(--grey);
  border-radius: var(--md-border-radius);
}

.md-typeset .tabbed-content {
  background: var(--md-default-bg-color);
  border: var(--md-border-width) solid var(--grey);
  border-bottom-left-radius: var(--md-border-radius);
  border-bottom-right-radius: var(--md-border-radius);
}

/* To override mkdocs styling for tab colors */
.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) {
  color: var(--plum);
}

/* Keep inactive tabs visible */
.md-typeset .tabbed-labels > label {
  color: var(--plum-transparent-50);
}

/* Hover styling */
.md-typeset .tabbed-labels > label:hover {
  color: var(--plum);
}

.md-typeset .tabbed-labels > label a:hover {
  opacity: 1;
}

/* Underline under active tabs */
.js .md-typeset .tabbed-labels:before {
  background: var(--plum);
  height: 3px;
}

.md-typeset .tabbed-block p,
.md-typeset .tabbed-block ul,
.md-typeset .tabbed-block ol,
.md-typeset .tabbed-block p ~ div,
.md-typeset .tabbed-block details {
  margin: 1em;
}

.md-typeset .tabbed-block ul p,
.md-typeset .tabbed-block ol p {
  margin: 0;
}

/* Document date styling */
.md-source-file small {
  display: flex;
  align-items: end;
  justify-content: center;
}

/* Separate label and date */
.source-file-label {
  margin-right: 0.5em;
}

/* Separate created and updated dates */
.source-file-seperator {
  margin: 0 0.5em;
}

/* Disclaimer styling */
.disclaimer,
.page-disclaimer {
  margin-top: auto;
  margin-bottom: 1em;
  font-size: x-small;
  font-style: italic;
}

.page-disclaimer {
  margin-top: 3em;
}

@media screen and (max-width: 30em) {
  /* Stack dates in two lines */
  .md-source-file small {
    display: block;
    text-align: center;
    margin-top: 1em;
  }

  /* No need for separator */
  .source-file-seperator {
    display: none;
  }

  .disclaimer {
    margin: 2em auto;
  }

  .md-content__inner {
    margin: 0 1.2rem 1.2rem;
  }
}

/* Tooltip styling */
.md-tooltip {
  border: var(--md-border-width) solid var(--light-transparent-12);
}

/* Feedback widget styling */
.feedback-actions-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  border: var(--md-border-width) solid var(--md-border-color);
  border-radius: var(--md-border-radius);
  background-color: var(--grey);
  padding: 1.5em;
  margin-top: 3em;
  margin-left: auto;
  color: #9a9a9a;
  font-size: var(--body-xs-text-size);
}

.feedback__section {
  width: 100%;
}

.md-feedback {
  margin-top: 0;
  margin-bottom: 0.75em;
}

.md-feedback__title {
  margin: 0;
  font-weight: 400;
  text-wrap-mode: nowrap;
}

.md-feedback__list {
  gap: 1.5em;
  margin-top: 0.75em;
  margin-bottom: 0.75em;
}

.md-feedback__icon:hover svg {
  fill: var(--md-typeset-a-color--hover);
}

/* Divider Styling */
.divider {
  height: 1px;
  background-color: var(--light-transparent-20);
  margin: 0.75em auto 0;
}

/* Edit this page button Styling */
a.md-content__button.md-icon {
  display: flex;
  gap: 10px;
  padding: 0;
  align-items: center;
}

.feedback-actions-container
  .feedback-section
  ~ .edit-section
  a.md-content__button.md-icon {
  margin: 0.75em auto 0;
}

.feedback-actions-container
  .feedback-section:has(.md-feedback[hidden])
  ~ .edit-section
  a.md-content__button.md-icon {
  margin: auto;
}

.feedback-actions-container .md-icon svg {
  height: 1.2rem;
  width: 1.2rem;
}

.md-footer {
  font-family: var(--md-nav-labels-font);
}

/* Footer Prev and Next Styling */
.md-footer__link {
  align-items: center;
}

.md-footer__title {
  display: flex;
  flex-direction: column;
  font-size: var(--body-s-text-size);
  margin-bottom: 0;
  font-family: var(--md-nav-labels-font);
}

.md-footer__direction {
  text-transform: var(--label-text-style);
  font-size: var(--label-size);
  font-family: var(--md-nav-labels-font);
}

.md-footer-meta__inner,
.md-footer-meta__inner.md-grid {
  display: flex;
  align-items: center;
  padding: 2.5rem 1em;
  border-top: var(--md-border-width) solid var(--md-border-color);
  border-bottom: var(--md-border-width) solid var(--md-border-color);
}

.md-footer__button svg {
  height: 2rem;
  width: 2rem;
}

/* Social icons styling */
.md-social {
  gap: 0.75em;
  flex-wrap: wrap;
}

.md-social a {
  background: var(--light-transparent-12);
  border: var(--md-border-width) solid var(--md-border-color);
  border-radius: 100%;
  width: 3em;
  height: 3em;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
}

.md-social__link svg {
  width: 1.5em;
  height: 1.5em;
  fill: var(--md-default-fg-color);
}

/* Newsletter styling */
.hs-email > *,
.no-list.hs-error-msgs.inputs-list {
  text-transform: var(--label-text-style);
  font-size: var(--label-size);
  color: var(--md-default-fg-color);
  margin: 0 0 .5em;
  width: 25em;
}

.hs-email .hs-form-required {
  display: none;
} 

.hs-input {
  border: var(--md-border-width) solid var(--md-border-color);
  border-radius: var(--md-border-radius);
  padding: 1em !important;
  background-color: var(--md-default-bg-color);
}

.hs-submit .actions .hs-button {
  color: var(--plum);
  font-family: var(--md-cta-font);
  text-transform: var(--label-text-style);
  font-size: var(--caption-size);
  vertical-align: middle;
  cursor: pointer;
  background-color: var(--md-default-bg-color);
  padding: 1em 1.5em;
  margin: 1em 0 0;
  border: var(--md-border-width) solid var(--plum);
  border-radius: var(--md-border-radius);
}

.hs-submit .actions .hs-button:hover {
  opacity: var(--md-hover-opacity);
}

.hs_error_rollup .no-list.hs-error-msgs.inputs-list {
  display: none !important;
}

.no-list.hs-error-msgs.inputs-list {
  background-color: var(--grey);
  border-radius: var(--md-border-radius);
}

.hs-error-msgs {
  visibility: hidden;
  background-color: var(--purple-light);
  position: absolute;
  z-index: 1;
  width: 100%;
}

.hs-error-msgs:not([hidden]) {
  /* Used to hide the tooltip after 3 seconds */
  animation: hideAnimation 0s ease-in 3s;
  animation-fill-mode: forwards;
  visibility: visible;
  margin: 0;
  list-style: none;
  padding: 0.5em;
}

/* Used to hide the tooltip */
@keyframes hideAnimation {
  to {
    visibility: hidden;
    width: 0;
    height: 0;
  }
}

.submitted-message {
  text-transform: var(--label-text-style);
  font-size: var(--label-size);
}

/* Bottom of footer styling (i.e. copyright, terms of use, etc. */
.md-footer-copyright {
  display: flex;
  justify-content: space-between;
  font-size: var(--body-xs-text-size);
  height: 48px;
  align-items: center;
}

.md-footer-copyright__highlight {
  color: var(--light-transparent-40);
}

.policy-links {
  display: flex;
  gap: 2em;
}

/* Footer styling on small screens */
@media screen and (max-width: 43.5em) {
  .md-footer-meta__inner,
  .md-footer-meta__inner.md-grid {
    justify-content: center;
    gap: 2em;
  }

  .md-footer-copyright {
    flex-direction: column;
  }
}

/* 404 page */
.not-found {
  display: flex;
  justify-content: center;
}

/* Reference page styling */
.api-referece {
  width: 90%;
}

/* Grid styling */
.grid > div:last-child {
  max-height: 1000px;
  overflow: auto;
}

.md-typeset .grid {
  grid-gap: 1rem;
}

.md-typeset .grid > div:first-child > p:first-child {
  margin-top: 0;
}

.grid .highlight span.filename {
  margin-top: 0;
}

.md-typeset .grid.cards > ol > li,
.md-typeset .grid.cards > ul > li,
.md-typeset .grid > .card {
  background-color: var(--grey);
  border: var(--md-border-width) solid var(--md-border-color);
  display: flex;
  flex-direction: column;
}

.md-typeset .grid.cards > ol > li:focus-within,
.md-typeset .grid.cards > ol > li:hover,
.md-typeset .grid.cards > ul > li:focus-within,
.md-typeset .grid.cards > ul > li:hover,
.md-typeset .grid > .card:focus-within,
.md-typeset .grid > .card:hover {
  border: var(--md-border-width) solid var(--md-border-color);
}

.md-typeset .grid.cards > ol > li > :last-child,
.md-typeset .grid.cards > ul > li > :last-child,
.md-typeset .grid > .card > :last-child {
  margin-top: auto;
}

.md-typeset .grid.cards > ol > li > p:first-child,
.md-typeset .grid.cards > ul > li > p:first-child {
  font-family: var(--md-header-font);
  line-height: var(--h3-h4-line-height);
  font-weight: var(--header-font-weight);
  text-transform: var(--header-text-style);
  font-size: 28px;
  display: flex;
  margin-bottom: 0;
}

.md-typeset .grid.half {
  grid-template-columns: repeat(auto-fit, minmax(50%, 0fr));
  margin: 1em 1.4em 1em 0;
}

.md-typeset .grid.cards > ol > li > p:last-child a,
.md-typeset .grid.cards > ul > li > p:last-child a {
  text-decoration: none;
  font-family: var(--md-cta-font);
  text-transform: var(--label-text-style);
  font-size: 10px;
  line-height: 12px;
  display: flex;
  gap: 0.5em;
  margin-top: 1.5em;
}

/* For icons in the title */
.md-typeset .grid.cards p .lg.twemoji  {
  --md-icon-size: unset;
}

.md-typeset .grid.cards p .twemoji svg {
  margin-right: 0.5em;
  fill: var(--plum);
  height: 24px;
  max-width: 24px;
}

/* For icons in the footer/CTA */
.md-typeset .grid.cards p > a .twemoji {
  width: 24px;
}

.md-typeset .grid.cards p > a .twemoji svg {
  width: 100%;
}

/* Type styling */
.md-typeset kbd {
  border-radius: 1em;
  vertical-align: baseline;
  box-shadow: none;
}

/* For links to definitions on reference pages */
.md-typeset .twemoji {
  vertical-align: middle;
}

/* Button styling */
.md-header__option .md-header__button:not([hidden]),
.md-typeset.md-button,
.md-typeset .md-button {
  border: var(--md-border-width) solid var(--plum);
  border-radius: var(--md-border-radius);
  background: var(--plum);
  color: var(--md-default-bg-color);
  font-family: var(--md-cta-font);
  text-transform: var(--label-text-style);
  font-size: var(--caption-size);
  letter-spacing: 0.04em;
  padding: 1.6em 2.35em;
}

.md-typeset .md-button:focus,
.md-typeset .md-button:hover {
  color: var(--md-default-bg-color);
}

.md-typeset .md-button.secondary {
  background: var(--md-default-bg-color);
  border-color: var(--plum);
  color: var(--plum);
}

.md-typeset .md-button.secondary:hover {
  color: var(--plum);
}

/* Header buttons */
.md-header__buttons {
  display: flex;
  gap: 1em;
  margin-left: auto;
}

.md-header__buttons > * {
  align-self: center;
}

.md-header__inner.md-grid .md-tabs__link {
  font-size: var(--body-s-text-size);
  margin-top: 0;
  opacity: unset;
}

label[for='__drawer'] svg {
  height: 40px;
  width: 40px;
}

/* Dropdown menu styling */
.md-tabs__list {
  display: flex;
  contain: none;
}

.md-tabs__item--custom {
  padding: 1em 1.25em;
  display: inline-block;
  min-height: 5.5em;
  align-content: space-around;
  transition: border 0.3s ease;
  letter-spacing: 0.12em;
  font-weight: 700;
}

.md-tab__list {
  display: none;
  position: absolute;
  background: var(--grey);
  border: var(--md-border-width) solid var(--md-border-color);
  border-radius: var(--md-border-radius);
  z-index: 3;
  list-style: none;
  padding: 0;
  margin: 1.5em -1em;
  transform: translateZ(0);
}

.md-tabs__item--custom:hover .md-tab__list,
.md-tab__list:hover {
  display: block;
}

.md-tabs__item--custom:hover {
  cursor: pointer;
}

.md-tabs__item--custom:hover > .md-tabs__link {
  opacity: var(--md-hover-opacity);
}

.md-tab__item {
  font-size: var(--body-s-text-size);
  padding: 1.25em 1.25em 0.5em;
}

.md-tab__item:last-child {
  padding-bottom: 1.25em;
}

.md-tab__item:hover,
.md-tab__item:active {
  opacity: var(--md-hover-opacity);
}

.md-tab__item:hover:first-child,
.md-tab__item:active:first-child {
  border-top-left-radius: 0.2em;
  border-top-right-radius: 0.2em;
}

.md-tab__item:hover:last-child,
.md-tab__item:active:last-child {
  border-bottom-left-radius: 0.2em;
  border-bottom-right-radius: 0.2em;
}

.md-tabs__link svg {
  margin-left: 0.5rem;
}

.md-tab__item a {
  display: flex;
}

.dropdown-icon {
  width: 2em;
  height: 2em;
}

.text-col {
  margin-left: 1.5em;
  align-content: center;
}

.icon-col {
  display: flex;
  align-items: center;
}

@media screen and (max-width: 76.234375em) {
  .md-tabs {
    display: none;
  }

  .md-nav--primary .md-nav__title {
    padding: 3rem 0.8rem 0.2rem;
  }

  .md-nav--primary .md-nav__list {
    margin-bottom: 0;
  }
}

/* Search styling */
.md-search__form {
  display: flex;
}

.md-search__options,
.md-search__icon[for='__search'] {
  top: 0.5rem;
}

label[for='__search'] span:first-child {
  border: var(--md-border-width) solid var(--plum);
  border-radius: var(--md-border-radius);
  font-family: var(--md-cta-font);
  color: var(--plum);
  display: flex;
  padding: 0.8em 1.5em;
  align-items: center;
  gap: 0.5em;
  font-size: var(--caption-size);
}

label[for='__search'] svg {
  fill: var(--plum);
  width: 1.2rem;
}

label[for='__search']:hover {
  cursor: pointer;
}

.md-search {
  visibility: hidden;
  width: 0;
}

.md-search__input {
  font-size: var(--body-s-text-size);
}

.md-search-result__icon {
  color: var(--plum);
}

.md-search-result__meta {
  background-color: var(--md-default-bg-color);
  color: var(--md-default-fg-color);
}

.md-search-result .md-typeset {
  color: var(--light-transparent-60);
  text-transform: none;
}

.md-search-result .md-typeset h1 {
  font-size: 24px;
  letter-spacing: 0.04em;
}

.md-search-result__link:focus,
.md-search-result__link:hover {
  background-color: var(--light-transparent-10);
}

[data-md-toggle='search']:checked ~ .md-header .md-search {
  visibility: visible;
  width: unset;
  height: auto;
  padding-right: 0.3em;
  position: absolute;
  right: 20px;
  z-index: 100;
  background: var(--md-default-bg-color);
}

@media screen and (min-width: 60em) {
  [data-md-toggle='search']:checked ~ .md-header .md-search__form {
    border: var(--md-border-width) solid var(--plum);
    border-radius: var(--md-border-radius);
    background-color: transparent;
  }

  [data-md-toggle='search']:checked ~ .md-header .md-search__output {
    margin-top: 1.5em;
    border-radius: var(--md-border-radius);
    border: var(--md-border-width) solid var(--plum);
  }

  [data-md-toggle='search']:checked
    ~ .md-header
    .md-search__input:valid
    ~ .md-search__options
    > .md-icon,
  [data-md-toggle='search']:checked ~ .md-header .md-search__input,
  [data-md-toggle='search']:checked
    ~ .md-header
    .md-search__input
    + .md-search__icon {
    margin-left: 1em;
  }

  .md-search__form {
    height: 2.3rem;
  }
}

@media screen and (min-width: 60em) and (max-width: 76.1875em) {
  [data-md-toggle='search']:checked ~ .md-header .md-search__inner,
  .md-search__scrollwrap {
    width: 34.4rem;
  }
}

@media screen and (max-width: 30em) {
  label.search span.search-text {
    display: none;
  }
}

/* Code styling on smaller screens */
@media screen and (max-width: 44.984375em) {
  .md-content__inner > .highlight {
    margin: 1em auto;
  }

  .md-content__inner > .highlight > pre > code {
    word-break: break-word;
  }
}

/** Cookbook styling **/
.md-typeset .md-button.cookbook-button {
  padding: 0.8em 1.5em;
  width: max-content;
  display: flex;
  align-items: center;
  height: fit-content;
  gap: 1em;
}

.md-typeset .md-button.cookbook-button img {
  height: 1.2rem;
  width: 1.2rem;
}

.cookbook-container {
  /* Specifically needed for Safari */
  width: max-content;
}

/* To avoid shifting after cookbook loads */
.for-cookbook {
  width: 10em;
  position: fixed;
  right: 20em;
}

/* Cookie consent styling */
.md-consent__inner {
  box-shadow: 0 0 0.2rem #ffffff1a, 0 0.2rem 0.4rem #fff3;
}

/* Interface admonition styling */
details.interface > summary::before {
  display: none;
}

.md-typeset details.interface {
  border: 1px solid var(--light-transparent-20);
  box-shadow: none;
  width: auto;
}

[dir='ltr'] .md-typeset details.interface > summary {
  padding: 1em 0 1em 1em;
  background-color: var(--light-transparent-07);
}

.md-typeset details.interface > summary:after {
  top: auto;
}

/* Child admonition styling */
details.child summary::before {
  display: none;
}

details.child {
  width: fit-content;
}

[dir='ltr'] .md-typeset details.child summary {
  width: fit-content;
  padding-left: 1em;
}

[dir='ltr'] .md-typeset details.child[open] {
  width: auto;
}

.md-typeset details.child summary {
  background-color: unset;
}

.md-typeset details.child {
  width: fit-content;
  border: 1px solid var(--light-transparent-20);
  box-shadow: none;
}

