/* inter-regular - latin */
@font-face {
  /* Subsetted from the official Inter Variable font via:
   * hb-subset InterVariable.ttf --output-file=inter-variable-latin-regular.ttf --unicodes="U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD" --layout-features+=ss07,ss08,cv10 --variations="wght=400:700"
   * woff2_compress inter-variable-latin-regular.ttf
   */
  font-display: swap;
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100 900;
  src: url('/assets/inter-variable-latin-regular-_UbkLyvr.woff2') format('woff2');
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* inter-italic - latin */
@font-face {
  font-display: swap;
  font-family: 'Inter';
  font-style: italic;
  font-weight: 100 900;
  src: url('/assets/inter-variable-latin-italic-DxEL_hlV.woff2') format('woff2');
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

@font-face {
  font-family: "Fira Code";
  font-display: swap;
  font-style: normal;
  font-weight: 300 700;
  font-stretch: 100;
  src: url("/assets/FiraCode-DBBQ7TXx.woff2") format("woff2");
}

:root {
  --base-color-primary: #161518;
  --base-color-secondary: #101113;
  --base-color-secondary-dark: #0d0e0f;
  --base-color-tertiary: #050607;
  --text: #f8f1e6;
  --text-detail: #b8b4ac;
  --icon: #f8f1e6;
  --icon-detail: #b8b4ac;
  --link: #8de1e7;
  --link-underline: #8de1e77f;
  --toggle-hover: #f8f1e62a;
  --toggle-active: #f8f1e649;
  --interactive-normal: #9b9996;
  --interactive-hover: #dbdad7;
  --interactive-active: #e7e5de;
  --interactive-muted: #5f5d59;
  --divider: #36353a;
  --primary: #503f76;
  --primary-hover: #3c3267;
  --primary-active: #2b2652;
  --primary-muted: #3f3d4d;
  --primary-light: #71559b;
  --primary-lighter: #916db8;
  --highlight: rgba(238, 179, 49, 0.25);
  --red: rgb(206, 40, 53);
  --red-hover: rgb(153, 37, 72);
  --red-active: rgb(119, 29, 64);
  --red-muted: rgb(131, 50, 63);
  --yellow: rgb(238, 179, 49);
  --yellow-hover: rgb(201, 135, 59);
  --yellow-active: rgb(190, 109, 42);
  --yellow-muted: rgb(172, 124, 61);
  --green: rgb(16, 174, 106);
  --green-hover:rgb(32, 138, 120);
  --green-active:rgb(33, 114, 114);
  --green-muted: rgb(67, 141, 122);
  --pane-padding: 1rem;
  --corner-radius: 0.25rem;
  --font: Inter, sans-serif;
  --font-mono: "Fira Code", monospace;
}

/**
 * TypeScript/TypeDoc syntax highlighting colors
 * Generated from VS Code Dark Plus theme
 */
:root {
  --hl-accessor: #DCDCAA;
  --hl-background: #1E1E1E;
  --hl-call-signature: #DCDCAA;
  --hl-class: #4EC9B0;
  --hl-comment: #6A9955;
  --hl-constructor: #DCDCAA;
  --hl-constructor-signature: #DCDCAA;
  --hl-enum: #4EC9B0;
  --hl-enum-member: #4FC1FF;
  --hl-foreground: #D4D4D4;
  --hl-function: #DCDCAA;
  --hl-get-signature: #DCDCAA;
  --hl-index-signature: #DCDCAA;
  --hl-interface: #4EC9B0;
  --hl-keyword: #569cd6;
  --hl-method: #DCDCAA;
  --hl-module: #4EC9B0;
  --hl-namespace: #4EC9B0;
  --hl-number: #b5cea8;
  --hl-operator: #d4d4d4;
  --hl-parameter: #9CDCFE;
  --hl-project: #4EC9B0;
  --hl-property: #4FC1FF;
  --hl-punctuation: #D4D4D4;
  --hl-reference: #9CDCFE;
  --hl-set-signature: #DCDCAA;
  --hl-string: #ce9178;
  --hl-type: #4EC9B0;
  --hl-type-alias: #4EC9B0;
  --hl-type-parameter: #4EC9B0;
  --hl-variable: #9CDCFE;
}

html {
  overflow: auto;
}

html, body {
  width: 100%;
  height: 100%;
  overscroll-behavior: none;
}

body {
  margin: 0;
  background-color: var(--base-color-primary);
  color: var(--text);
  scrollbar-color: var(--base-color-tertiary) var(--base-color-primary);
}
body ::-webkit-scrollbar {
  background-color: var(--base-color-primary);
}
body ::-webkit-scrollbar-thumb {
  background-color: var(--base-color-tertiary);
}
body {
  display: flex;
  flex-direction: column;
}

::selection {
  background-color: var(--text);
  color: var(--base-color-primary);
}

body, button, input, select {
  font-family: var(--font);
  font-feature-settings: "ss07", "ss08", "cv10";
  line-height: 1.4;
}

.tabular-nums {
  font-feature-settings: "ss07", "ss08", "cv10", "tnum";
}

input[type=text], input[type=password], textarea, select {
  background-color: var(--base-color-tertiary);
  outline: 1px solid var(--interactive-normal);
  border: none;
  border-radius: 4px;
  color: var(--text);
  font-size: 0.9rem;
  font-weight: 600;
  padding: 0.5rem 0.675rem;
}
input[type=text]:focus-within, input[type=password]:focus-within, textarea:focus-within, select:focus-within {
  outline: 2px solid var(--interactive-active);
}
input[type=text]:disabled, input[type=password]:disabled, textarea:disabled, select:disabled {
  color: var(--text-detail);
  outline-color: var(--interactive-muted);
}
input[type=text]:disabled::placeholder, input[type=password]:disabled::placeholder, textarea:disabled::placeholder, select:disabled::placeholder {
  color: var(--interactive-muted);
}
input[type=text]::placeholder, input[type=password]::placeholder, textarea::placeholder, select::placeholder {
  color: var(--interactive-normal);
}

input[type=checkbox] {
  accent-color: var(--interactive-active);
}

input[type=number] {
  font-feature-settings: "ss07", "ss08", "cv10", "tnum";
}

textarea {
  resize: none;
  margin: 0;
  font-family: var(--font);
}

a {
  color: var(--link);
  text-decoration: underline;
  text-decoration-color: var(--link-underline);
}
@supports (color: rgb(from currentColor r g b)) {
  a {
    text-decoration-color: rgb(from currentColor r g b/50%);
  }
}
a:hover {
  text-decoration-thickness: 2px;
}

pre, code {
  font-family: var(--font-mono);
}

body.loading {
  display: flex;
  align-items: center;
  justify-content: center;
}

mark {
  color: var(--text);
  background-color: var(--highlight);
  border-radius: 0.25rem;
  padding: 0.075rem 0.125rem;
  margin: -0.075rem -0.125rem;
}

#loader {
  width: 4rem;
  height: 4rem;
  border-radius: 100%;
  border: 4px solid transparent;
  border-top-color: var(--interactive-active);
  animation: 1s infinite normal linear spin;
}

@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
.fancy-table {
  border-collapse: collapse;
}
.fancy-table th {
  text-align: left;
}
.fancy-table tbody > :nth-child(even) {
  background-color: var(--base-color-secondary);
}
.fancy-table tbody > :nth-child(odd) {
  background-color: var(--base-color-primary);
}
.fancy-table thead {
  background-color: var(--base-color-tertiary);
}
.fancy-table th, .fancy-table td {
  padding: 0.25rem;
}

.hl-dk {
  color: var(--hl-keyword);
}

.hl-ok {
  color: var(--hl-function);
}

.hl-kw {
  color: var(--hl-keyword);
}

.hl-pn {
  color: var(--hl-variable);
}

.hl-p {
  color: var(--hl-punctuation);
}

.hl-b {
  color: var(--hl-punctuation);
}

.hl-pu {
  color: var(--hl-punctuation);
}

.hl-s {
  color: var(--hl-string);
}

.hl-n {
  color: var(--hl-number);
}

.hl-se {
  color: var(--hl-punctuation);
}:root {
  --base-color-primary: #161518;
  --base-color-secondary: #101113;
  --base-color-secondary-dark: #0d0e0f;
  --base-color-tertiary: #050607;
  --text: #f8f1e6;
  --text-detail: #b8b4ac;
  --icon: #f8f1e6;
  --icon-detail: #b8b4ac;
  --link: #8de1e7;
  --link-underline: #8de1e77f;
  --toggle-hover: #f8f1e62a;
  --toggle-active: #f8f1e649;
  --interactive-normal: #9b9996;
  --interactive-hover: #dbdad7;
  --interactive-active: #e7e5de;
  --interactive-muted: #5f5d59;
  --divider: #36353a;
  --primary: #503f76;
  --primary-hover: #3c3267;
  --primary-active: #2b2652;
  --primary-muted: #3f3d4d;
  --primary-light: #71559b;
  --primary-lighter: #916db8;
  --highlight: rgba(238, 179, 49, 0.25);
  --red: rgb(206, 40, 53);
  --red-hover: rgb(153, 37, 72);
  --red-active: rgb(119, 29, 64);
  --red-muted: rgb(131, 50, 63);
  --yellow: rgb(238, 179, 49);
  --yellow-hover: rgb(201, 135, 59);
  --yellow-active: rgb(190, 109, 42);
  --yellow-muted: rgb(172, 124, 61);
  --green: rgb(16, 174, 106);
  --green-hover:rgb(32, 138, 120);
  --green-active:rgb(33, 114, 114);
  --green-muted: rgb(67, 141, 122);
  --pane-padding: 1rem;
  --corner-radius: 0.25rem;
  --font: Inter, sans-serif;
  --font-mono: "Fira Code", monospace;
}

button {
  transition-property: background-color, color;
  transition-duration: 0.175s;
  transition-timing-function: ease;
  display: inline-block;
  border: none;
  margin: 0;
  padding: 0;
  font-size: 1rem;
  line-height: 1;
  background: transparent;
  appearance: none;
  color: var(--text);
}#navigation-bar {
  flex: 0 0 auto;
  display: flex;
  font-size: 1.25rem;
  padding-right: 1rem;
  background: var(--base-color-tertiary);
  min-height: 4rem;
  position: relative;
}

.navbar-pages {
  list-style-type: none;
  display: flex;
  margin: 0;
  padding: 0;
  flex-wrap: wrap;
}
.navbar-pages li {
  display: inline-block;
  flex-grow: 1;
  flex-basis: 0;
}

.navbar-pages a, .navbar-logo {
  display: flex;
  align-items: center;
  height: 100%;
  box-sizing: border-box;
  padding: 0 0.625rem;
  white-space: nowrap;
  text-decoration: none;
  color: var(--text);
  transition: background-color 0.1s;
}
.navbar-pages a:hover, .navbar-pages a.active, .navbar-logo:hover, .navbar-logo.active {
  background-color: var(--toggle-hover);
}

.navbar-logo {
  gap: 0.5rem;
  font-weight: 600;
  font-variation-settings: "opsz" 32;
  font-size: 1.5rem;
}

.navbar-logo-icon {
  background-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='64'%20height='64'%20viewBox='0%200%2064%2064'%3e%3cpath%20fill='%23f8f1e6'%20d='M55.4%207.46q-.189.014-.408.131c-2.41%201.31-5.1%202.51-7.07%203.24-.838.312-1.73%201.32-2.28%201.97l-31.7%2037h-.002c-2.4%202.4-5.07%205.21-9.06%205.38-.769.031-.8.801%200%20.801h13.2c.8%200%20.8-.801%200-.801s-4.11-2.62-2.51-4.62l13.7-15.6h18.9v15c0%202.8-2%205.2-6%205.2-.8%200-.8.801%200%20.801h20c.8%200%20.8-.801%200-.801-4%200-6-2.4-6-5.2v-41.8c0-.497-.261-.77-.637-.742zM4%208.003c-.8%200-.8.801%200%20.801%204%200%204%202.4%204%205.2v21.8c0%20.663.458.917%201.03.584%202.52-1.46%205.17-2.74%207.53-3.58.874-.312%201.32-.995%201.84-1.6l14.3-16.7c2.4-2.4%205.06-5.19%209.04-5.35.769-.031.8-.801%200-.801h-13.2c-.8%200-.8.801%200%20.801s3.69%202.24%202.09%204.24l-4.77%205.57h-9.87v-5c0-2.8%200-5.2%204-5.2.8%200%20.8-.801%200-.801zm43.2%206.4s.801.152.801%205.6v13l-17.1.03zm-23%206.57-7.39%208.63s-.801-.152-.801-5.6v-3.01z'/%3e%3c/svg%3e");
  background-size: contain;
  display: inline-flex;
  width: 48px;
  height: 48px;
}

.nav-cols {
  display: flex;
  justify-content: center;
  overflow: auto;
  flex: 1 1 0;
}

#content {
  flex: 0 1 12in;
  padding: 0 2rem 4rem;
}

#main {
  flex: 1 1 0;
  overflow: auto;
}

.header-anchor {
  color: inherit;
  text-underline-offset: 4px;
}
.header-anchor > * {
  vertical-align: middle;
}
.header-anchor:not(:hover) {
  text-decoration: none;
}
.header-anchor:not(:hover)::after {
  display: none;
}
.header-anchor::after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  height: 24px;
  width: 24px;
  background-color: var(--link);
  mask-size: 24px;
  mask-position: center;
  mask-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%3e%3cpath%20d='M10.178%2013.822a4.015%204.015%200%200%200%205.657%200l3-3a4.015%204.015%200%200%200%200-5.657%204.015%204.015%200%200%200-5.657%200l-2.5%202.5%202.414.414%201.5-1.5c.79-.789%202.039-.789%202.828%200s.79%202.04%200%202.829l-3%203c-.789.79-2.038.79-2.828%200z'/%3e%3cpath%20d='M13.822%2010.178a4.015%204.015%200%200%200-5.657%200l-3%203a4.015%204.015%200%200%200%200%205.657%204.015%204.015%200%200%200%205.657%200l2.5-2.5-2.414-.414-1.5%201.5c-.79.789-2.039.789-2.828%200s-.79-2.04%200-2.829l3-3c.789-.79%202.038-.79%202.828%200z'/%3e%3c/svg%3e");
}

.navigation-details {
  padding: 0 0 0 2rem;
}

.navigation-summary {
  display: none;
}

.navigation-sidebar {
  width: 3in;
  position: relative;
}
.navigation-sidebar > ul {
  position: fixed;
  list-style-type: none;
  padding: 0;
  width: 3in;
}
.navigation-sidebar > ul ul {
  list-style-type: none;
  padding: 0;
  margin-left: calc(0.5rem + 12px - 1px);
  border-left: 2px solid var(--divider);
}
.navigation-sidebar summary {
  display: flex;
  cursor: pointer;
}
.navigation-sidebar summary::before {
  content: "";
  width: 24px;
  background-color: currentColor;
  mask-size: 24px;
  mask-position: center;
  mask-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%3e%3cpath%20d='m4%208%208%208%208-8'%20style='fill:none;stroke:%23000;stroke-width:2;stroke-linecap:butt'/%3e%3c/svg%3e");
  transform: rotate(-90deg);
  margin-left: 0.5rem;
}
.navigation-sidebar summary > a {
  flex: 1 0 auto;
}
.navigation-sidebar details[open] > summary::before {
  transform: rotate(0);
}

.navigation-sidebar-entry-title {
  display: block;
  color: var(--text);
  text-decoration: none;
  padding: 0.325rem 0.75rem;
  transition: background-color 0.1s;
}
.navigation-sidebar-entry-title:hover {
  background-color: var(--toggle-hover);
}
.navigation-sidebar-entry-title.navigation-active {
  font-weight: bold;
  background-color: var(--toggle-active);
}

#search-area {
  align-self: center;
  margin-left: auto;
  display: flex;
  align-items: center;
}
#search-area > summary {
  float: right;
}
#search-area > summary::marker {
  content: "";
}

#search {
  position: relative;
  display: inline-block;
}

@property --grad-progress {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: -20%;
}
#search-input {
  padding-right: 24px;
  background: linear-gradient(to right, var(--base-color-tertiary) var(--grad-progress), var(--divider) calc(var(--grad-progress) + 10%), var(--base-color-tertiary) calc(var(--grad-progress) + 20%));
}
#search-input.loading {
  animation: search-loading 0.5s linear infinite;
}

@keyframes search-loading {
  to {
    --grad-progress: 100%;
  }
}
#search-clear {
  position: absolute;
  right: 0;
  top: calc(50% - 12px);
  display: none;
}
#search-clear.active {
  display: inline-block;
}

#search-open {
  display: none;
}

#search-results-container {
  box-sizing: border-box;
  z-index: 1;
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  visibility: hidden;
}

.search-results {
  background-color: var(--base-color-primary);
  max-height: 100%;
  display: flex;
  flex-direction: column;
  overflow: auto;
  visibility: visible;
  box-shadow: 0px 0px 18px 8px rgba(0, 0, 0, 0.375);
}

.search-results-page-input {
  appearance: textfield;
  width: 3rem;
}

.pagination {
  background-color: var(--base-color-tertiary);
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.25rem;
  padding: 0.5rem;
}

.search-results-list {
  overflow: auto;
}

.search-result, .search-sub-result {
  display: block;
  color: var(--text);
  text-decoration: none;
}

.search-result {
  padding: 0.5rem 1rem;
  transition: background-color 0.1s;
}
.search-result:hover {
  background-color: var(--toggle-hover);
}
.search-result:active {
  background-color: var(--toggle-active);
}

.search-sub-result {
  padding-left: 1rem;
}

.result-title, .sub-result-title {
  font-weight: 650;
}

.result-title {
  font-size: 1.5rem;
}

.sub-result-excerpt {
  font-size: 80%;
}

.search-no-results {
  font-weight: 650;
  text-align: center;
  font-size: 2rem;
  padding: 2rem;
}

@media (max-width: 9in) {
  .nav-cols {
    flex-direction: column;
  }
  .navigation-details {
    padding: 1rem 2rem 0 2rem;
  }
  .navigation-details[open] .navigation-summary::before {
    transform: rotate(0deg);
  }
  .navigation-sidebar {
    width: 100%;
  }
  .navigation-sidebar > ul {
    position: initial;
    margin-bottom: 0;
  }
  .navigation-summary {
    display: flex;
    font-weight: bold;
    cursor: pointer;
    align-items: center;
  }
  .navigation-summary::before {
    content: "";
    margin-right: 0.5rem;
    display: inline-block;
    width: 24px;
    height: 24px;
    background-color: currentColor;
    mask-size: 24px;
    mask-position: center;
    mask-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%3e%3cpath%20d='m4%208%208%208%208-8'%20style='fill:none;stroke:%23000;stroke-width:2;stroke-linecap:butt'/%3e%3c/svg%3e");
    transform: rotate(-90deg);
  }
  #content {
    width: 100%;
    box-sizing: border-box;
    flex-basis: auto;
  }
  #search {
    display: none;
  }
  #search.open {
    display: unset;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    display: flex;
    align-items: center;
  }
  #search-open {
    display: unset;
  }
  #search-area.open {
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    padding: 0 1rem;
    background-color: var(--base-color-tertiary);
    align-self: stretch;
    position: absolute;
  }
  #search-area.open #search {
    display: unset;
    flex: 1 1 auto;
    display: flex;
  }
  #search-area.open #search-input {
    flex: 1 1 auto;
  }
  #search-area.open #search-open {
    display: none;
  }
}:root {
  --base-color-primary: #161518;
  --base-color-secondary: #101113;
  --base-color-secondary-dark: #0d0e0f;
  --base-color-tertiary: #050607;
  --text: #f8f1e6;
  --text-detail: #b8b4ac;
  --icon: #f8f1e6;
  --icon-detail: #b8b4ac;
  --link: #8de1e7;
  --link-underline: #8de1e77f;
  --toggle-hover: #f8f1e62a;
  --toggle-active: #f8f1e649;
  --interactive-normal: #9b9996;
  --interactive-hover: #dbdad7;
  --interactive-active: #e7e5de;
  --interactive-muted: #5f5d59;
  --divider: #36353a;
  --primary: #503f76;
  --primary-hover: #3c3267;
  --primary-active: #2b2652;
  --primary-muted: #3f3d4d;
  --primary-light: #71559b;
  --primary-lighter: #916db8;
  --highlight: rgba(238, 179, 49, 0.25);
  --red: rgb(206, 40, 53);
  --red-hover: rgb(153, 37, 72);
  --red-active: rgb(119, 29, 64);
  --red-muted: rgb(131, 50, 63);
  --yellow: rgb(238, 179, 49);
  --yellow-hover: rgb(201, 135, 59);
  --yellow-active: rgb(190, 109, 42);
  --yellow-muted: rgb(172, 124, 61);
  --green: rgb(16, 174, 106);
  --green-hover:rgb(32, 138, 120);
  --green-active:rgb(33, 114, 114);
  --green-muted: rgb(67, 141, 122);
  --pane-padding: 1rem;
  --corner-radius: 0.25rem;
  --font: Inter, sans-serif;
  --font-mono: "Fira Code", monospace;
}

.icon {
  width: 24px;
  height: 24px;
  background-color: currentColor;
  display: inline-block;
  mask-size: cover;
}
.icon.motif-monochrome {
  color: var(--interactive-normal);
}
.icon.motif-primary {
  background-color: var(--primary-lighter);
}
.icon.motif-success {
  background-color: var(--green);
}
.icon.motif-warning {
  background-color: var(--yellow);
}
.icon.motif-error {
  background-color: var(--red);
}
.icon.icon-clickable {
  transition-property: opacity;
  transition-duration: 0.175s;
  transition-timing-function: ease;
}
.icon.icon-clickable:hover {
  opacity: 0.875;
}
.icon.icon-clickable:active {
  opacity: 0.75;
}
.icon.icon-clickable.icon-disabled {
  opacity: 0.5;
}

:root {
  --icon-button-color: var(--interactive-normal);
}

.icon-button {
  width: 24px;
  height: 24px;
  cursor: pointer;
  color: var(--icon-button-color);
  transition-property: color, opacity;
  transition-duration: 0.175s;
  transition-timing-function: ease;
}
.icon-button:hover {
  color: var(--interactive-hover);
}
.icon-button:active {
  color: var(--interactive-active);
}
.icon-button.icon-disabled {
  color: var(--interactive-muted);
}
.icon-button.motif-monochrome:hover {
  color: currentColor;
}
.icon-button.motif-monochrome:active {
  color: currentColor;
}
.icon-button.motif-monochrome.icon-disabled {
  color: currentColor;
}
.icon-button.motif-monochrome:hover {
  opacity: 0.875;
}
.icon-button.motif-monochrome:active {
  opacity: 0.75;
}
.icon-button.motif-monochrome.icon-disabled {
  opacity: 0.5;
}
.icon-button:focus-visible {
  outline: 2px solid var(--text);
  border-radius: var(--corner-radius);
}
.icon-button.icon-disabled {
  cursor: not-allowed;
}
.icon-button .icon {
  pointer-events: none;
}

.icon-arrow-right {
  transform: rotate(-90deg);
}

.icon-arrow-up {
  transform: rotate(180deg);
}

.icon-arrow-left {
  transform: rotate(90deg);
}

.icon-arrow-right, .icon-arrow-down, .icon-arrow-up, .icon-arrow-left {
  mask-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%3e%3cpath%20d='m4%208%208%208%208-8'%20style='fill:none;stroke:%23000;stroke-width:2;stroke-linecap:butt'/%3e%3c/svg%3e");
  transition-property: transform;
  transition-duration: 0.175s;
  transition-timing-function: ease;
}

.icon-arrow-down {
  mask-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%3e%3cpath%20d='m4%208%208%208%208-8'%20style='fill:none;stroke:%23000;stroke-width:2;stroke-linecap:butt'/%3e%3c/svg%3e");
}

.icon-check {
  mask-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%3e%3cpath%20fill='none'%20stroke='%23000'%20stroke-linecap='square'%20stroke-miterlimit='32'%20stroke-width='2'%20d='m6%2013%204%204%209-9'/%3e%3c/svg%3e");
}

.icon-close {
  mask-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%3e%3cpath%20fill='none'%20stroke='%23000'%20stroke-width='2'%20d='m6.343%206.343%2011.314%2011.314m-11.314%200L17.657%206.343'/%3e%3c/svg%3e");
}

.icon-copy {
  mask-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%3e%3cpath%20fill='none'%20stroke='%23000'%20stroke-width='2'%20d='M6%205v15h11M10%204h9v12h-9z'/%3e%3c/svg%3e");
}

.icon-download {
  mask-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%3e%3cpath%20fill='none'%20stroke='%23000'%20stroke-width='2'%20d='m6%209%206%206%206-6m-6%206V4M6%2019h12'/%3e%3c/svg%3e");
}

.icon-error {
  mask-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%3e%3cpath%20d='M12%204a8%208%200%201%200%200%2016%208%208%200%200%200%200-16M7%2014v-4h10v4z'/%3e%3c/svg%3e");
}

.icon-funnel {
  mask-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%3e%3cpath%20d='M4%205v2l6%206v8l4-2v-6l6-6V5Z'/%3e%3c/svg%3e");
}

.icon-gear {
  mask-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%3e%3cpath%20d='M10%203v2.293a7%207%200%200%200-1.316.563L7.05%204.223%204.223%207.05l1.633%201.633A7%207%200%200%200%205.293%2010H3v4h2.293a7%207%200%200%200%20.563%201.316L4.223%2016.95l2.828%202.828%201.633-1.633a7%207%200%200%200%201.316.563V21h4v-2.293a7%207%200%200%200%201.316-.562l1.633%201.632%202.828-2.828-1.633-1.633A7%207%200%200%200%2018.708%2014H21v-4h-2.293a7%207%200%200%200-.55-1.328l1.62-1.621-2.828-2.828-1.62%201.62A7%207%200%200%200%2014%205.294V3zm2%206a3%203%200%200%201%203%203%203%203%200%200%201-3%203%203%203%200%200%201-3-3%203%203%200%200%201%203-3'/%3e%3c/svg%3e");
}

.icon-github {
  mask-image: url("data:image/svg+xml,%3csvg%20width='98'%20height='98'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M48.854%200C21.839%200%200%2022%200%2049.217c0%2021.756%2013.993%2040.172%2033.405%2046.69%202.427.49%203.316-1.059%203.316-2.362%200-1.141-.08-5.052-.08-9.127-13.59%202.934-16.42-5.867-16.42-5.867-2.184-5.704-5.42-7.17-5.42-7.17-4.448-3.015.324-3.015.324-3.015%204.934.326%207.523%205.052%207.523%205.052%204.367%207.496%2011.404%205.378%2014.235%204.074.404-3.178%201.699-5.378%203.074-6.6-10.839-1.141-22.243-5.378-22.243-24.283%200-5.378%201.94-9.778%205.014-13.2-.485-1.222-2.184-6.275.486-13.038%200%200%204.125-1.304%2013.426%205.052a46.97%2046.97%200%200%201%2012.214-1.63c4.125%200%208.33.571%2012.213%201.63%209.302-6.356%2013.427-5.052%2013.427-5.052%202.67%206.763.97%2011.816.485%2013.038%203.155%203.422%205.015%207.822%205.015%2013.2%200%2018.905-11.404%2023.06-22.324%2024.283%201.78%201.548%203.316%204.481%203.316%209.126%200%206.6-.08%2011.897-.08%2013.526%200%201.304.89%202.853%203.316%202.364%2019.412-6.52%2033.405-24.935%2033.405-46.691C97.707%2022%2075.788%200%2048.854%200z'/%3e%3c/svg%3e");
}

.icon-globe {
  mask-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%3e%3ccircle%20cx='12'%20cy='12'%20r='10'%20fill='none'%20stroke='%23000'%20stroke-width='2'/%3e%3cpath%20fill='none'%20stroke='%23000'%20stroke-width='2'%20stroke-linejoin='bevel'%20d='M2%2012h20M12%202a15.3%2015.3%200%200%201%204%2010%2015.3%2015.3%200%200%201-4%2010%2015.3%2015.3%200%200%201-4-10%2015.3%2015.3%200%200%201%204-10z'/%3e%3c/svg%3e");
}

.icon-link {
  mask-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%3e%3cpath%20d='M10.178%2013.822a4.015%204.015%200%200%200%205.657%200l3-3a4.015%204.015%200%200%200%200-5.657%204.015%204.015%200%200%200-5.657%200l-2.5%202.5%202.414.414%201.5-1.5c.79-.789%202.039-.789%202.828%200s.79%202.04%200%202.829l-3%203c-.789.79-2.038.79-2.828%200z'/%3e%3cpath%20d='M13.822%2010.178a4.015%204.015%200%200%200-5.657%200l-3%203a4.015%204.015%200%200%200%200%205.657%204.015%204.015%200%200%200%205.657%200l2.5-2.5-2.414-.414-1.5%201.5c-.79.789-2.039.789-2.828%200s-.79-2.04%200-2.829l3-3c.789-.79%202.038-.79%202.828%200z'/%3e%3c/svg%3e");
}

.icon-paste {
  mask-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%3e%3cpath%20fill='none'%20stroke='%23000'%20stroke-width='2'%20d='M18%205v14H6V5h4a2%202%200%201%201%204%200z'/%3e%3cpath%20d='M8%205v3h8V5h-3a1%201%200%200%201-1%201%201%201%200%200%201-1-1z'/%3e%3c/svg%3e");
}

.icon-pin {
  mask-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%3e%3cpath%20d='m14.121%205.636%204.243%204.243-5.657%205.656-4.242-4.242z'/%3e%3cpath%20stroke='%23000'%20stroke-linecap='square'%20stroke-width='2'%20d='m10.586%2013.414-5.657%205.657m8.485-14.142%205.657%205.657m-11.314%200%205.657%205.656'/%3e%3c/svg%3e");
}

.icon-plus {
  mask-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%3e%3cpath%20stroke='%23000'%20stroke-width='2'%20d='M12%206v12m-6-6h12'/%3e%3c/svg%3e");
}

.icon-range {
  mask-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%3e%3cg%20fill='none'%20stroke='%23000'%20stroke-width='2'%3e%3cpath%20d='m9%209-3%203%203%203M7%2012h11M2%206v12M22%206v12M15%209l3%203-3%203'/%3e%3c/g%3e%3c/svg%3e");
}

.icon-reset {
  mask-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%3e%3cpath%20d='M4%2014v6l6-6z'/%3e%3cpath%20fill='none'%20stroke='%23000'%20stroke-width='2'%20d='M5%2012.001a7%207%200%200%201%206.086-6.94%207%207%200%200%201%207.676%205.128%207%207%200%200%201-4.083%208.28A7%207%200%200%201%205.938%2015.5'/%3e%3c/svg%3e");
}

.icon-search {
  mask-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%3e%3cg%20fill='none'%20stroke='%23000'%20transform='translate(-24)'%3e%3ccircle%20cx='33.5'%20cy='9.5'%20r='5.5'%20stroke-width='2'/%3e%3cpath%20stroke-width='2'%20d='m37.5%2013.5%205%205'/%3e%3cpath%20stroke-linecap='square'%20stroke-width='3'%20d='m40%2016%203.5%203.5'/%3e%3c/g%3e%3c/svg%3e");
}

.icon-stack {
  mask-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%3e%3cg%20stroke-miterlimit='32'%3e%3cpath%20fill='none'%20stroke='%23000'%20stroke-width='1.8'%20d='m4%208%208-4%208%204-8%204z'/%3e%3cpath%20d='M3.982%2011.004%201.988%2012%2012%2017.006%2022.012%2012l-1.994-.996-8.017%204.008z'/%3e%3cpath%20d='M3.982%2015.004%201.988%2016%2012%2021.006%2022.012%2016l-1.994-.996-8.017%204.008z'/%3e%3c/g%3e%3c/svg%3e");
}

.icon-upload {
  mask-image: url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%3e%3cpath%20fill='none'%20stroke='%23000'%20stroke-width='2'%20d='M6%2019h12M12%205v11M18%2011l-6-6-6%206'/%3e%3c/svg%3e");
}

.icon-warning {
  mask-image: url("data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3csvg%20width='24'%20height='24'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='m12%2014.5c-.82843%200-1.5.67157-1.5%201.5s.67157%201.5%201.5%201.5%201.5-.67157%201.5-1.5-.67157-1.5-1.5-1.5m-1-.5h2l.5-5h-3zm9.6603%205h-17.321l8.6603-15z'%20stroke-miterlimit='32'%20stroke-width='2'%20style='paint-order:stroke%20fill%20markers'/%3e%3c/svg%3e");
}