:root,
[data-md-color-scheme="slate"] {
  color-scheme: dark;
  --aimlib-bg: #060909;
  --aimlib-bg-raised: #090d0d;
  --aimlib-surface: #0f1212;
  --aimlib-surface-raised: #151919;
  --aimlib-line: #1e2424;
  --aimlib-line-strong: #2b3434;
  --aimlib-ink: #fafafa;
  --aimlib-muted: #a7adad;
  --aimlib-faint: #747d7d;
  --aimlib-pink: #ff3660;
  --aimlib-pink-strong: #e51f4a;
  --aimlib-pink-soft: #ff7894;
  --aimlib-cyan: #22d3ee;
  --aimlib-cyan-soft: #83e8f6;
  --aimlib-code: #0b0e0e;
  --md-primary-fg-color: var(--aimlib-pink);
  --md-primary-fg-color--light: var(--aimlib-pink-soft);
  --md-primary-fg-color--dark: var(--aimlib-pink-strong);
  --md-accent-fg-color: var(--aimlib-pink);
  --md-typeset-a-color: var(--aimlib-pink-soft);
  --md-default-bg-color: var(--aimlib-bg);
  --md-default-bg-color--light: var(--aimlib-surface);
  --md-default-fg-color: rgba(250, 250, 250, 0.96);
  --md-default-fg-color--light: rgba(218, 225, 225, 0.72);
  --md-default-fg-color--lighter: rgba(185, 195, 195, 0.45);
  --md-code-bg-color: var(--aimlib-code);
  --md-code-fg-color: #eef3f3;
  --md-footer-bg-color: var(--aimlib-bg);
  --md-footer-bg-color--dark: var(--aimlib-bg);
}

html {
  background: var(--aimlib-bg);
}

body,
input {
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

body {
  background:
    radial-gradient(circle at 82% -10%, rgba(255, 54, 96, 0.075), transparent 32rem),
    radial-gradient(circle at 8% 88%, rgba(34, 211, 238, 0.045), transparent 30rem),
    var(--aimlib-bg);
  color: var(--aimlib-ink);
  font-size: 0.77rem;
  font-feature-settings: "cv02", "cv03", "cv04", "cv11";
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

::selection {
  background: rgba(255, 54, 96, 0.34);
  color: #fff;
}

.md-container {
  background-image: radial-gradient(circle, rgba(235, 248, 248, 0.04) 0.65px, transparent 0.75px);
  background-size: 32px 32px;
}

.md-grid {
  max-width: 88rem;
}

.md-header {
  background: rgba(6, 9, 9, 0.86);
  border-bottom: 1px solid var(--aimlib-line);
  box-shadow: none;
  color: var(--aimlib-ink);
  backdrop-filter: blur(18px);
}

.md-header__inner {
  min-height: 3rem;
}

.md-header__button,
.md-tabs__link {
  color: inherit;
}

.md-header__button.md-logo {
  align-items: center;
  display: inline-flex;
  margin: 0;
  padding: 0.35rem 0.6rem 0.35rem 0;
  width: auto;
}

.aim-docs-brand {
  align-items: center;
  display: inline-flex;
  gap: 0.55rem;
}

.aim-glyph {
  height: 1.45rem;
  overflow: visible;
  width: 1.45rem;
}

.aim-glyph rect {
  fill: rgba(255, 54, 96, 0.08);
  stroke: var(--aimlib-pink);
}

.aim-glyph__echo,
.aim-glyph__mark {
  fill: none;
  stroke-linecap: square;
  stroke-linejoin: miter;
}

.aim-glyph__echo {
  stroke: var(--aimlib-cyan);
  stroke-width: 1.35;
  opacity: 0.52;
}

.aim-glyph__mark {
  stroke: var(--aimlib-pink);
  stroke-width: 1.8;
}

.aim-wordmark {
  color: var(--aimlib-ink);
  display: inline-block;
  font-size: 0.9rem;
  font-weight: 720;
  letter-spacing: -0.035em;
  line-height: 1;
}

.md-header__title {
  font-weight: 600;
  letter-spacing: -0.015em;
  margin-left: 0.15rem;
}

.md-header__topic:first-child .md-ellipsis {
  font-size: 0;
}

.md-header__topic:first-child .md-ellipsis::after {
  border-left: 1px solid var(--aimlib-line);
  color: var(--aimlib-faint);
  content: "DOCS / API";
  font-family: ui-monospace, "SFMono-Regular", Consolas, monospace;
  font-size: 0.52rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  margin-left: 0.2rem;
  padding-left: 0.7rem;
}

.md-tabs {
  background: rgba(8, 11, 11, 0.96);
  border-bottom: 1px solid var(--aimlib-line);
  color: var(--aimlib-muted);
}

.md-tabs__link {
  font-family: ui-monospace, "SFMono-Regular", Consolas, monospace;
  font-size: 0.56rem;
  letter-spacing: 0.08em;
  opacity: 0.7;
  text-transform: uppercase;
}

.md-tabs__link--active,
.md-tabs__link:is(:focus, :hover) {
  color: var(--aimlib-pink-soft);
  opacity: 1;
}

.md-search__form {
  background: var(--aimlib-surface);
  border: 1px solid var(--aimlib-line);
  border-radius: 0.38rem;
}

.md-search__form:hover,
.md-search__input:focus + .md-search__icon {
  border-color: var(--aimlib-line-strong);
}

.md-search__input {
  color: var(--aimlib-ink);
}

.md-search__input::placeholder,
.md-search__icon {
  color: var(--aimlib-faint);
}

.md-nav {
  font-size: 0.67rem;
}

.md-nav__title,
.md-nav__item--section > .md-nav__link {
  color: var(--aimlib-muted);
  font-family: ui-monospace, "SFMono-Regular", Consolas, monospace;
  font-size: 0.56rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.md-nav__link {
  border-radius: 0.25rem;
  color: var(--aimlib-muted);
  margin-top: 0.3rem;
  padding: 0.18rem 0.25rem;
}

.md-nav__link:is(:focus, :hover),
.md-nav__link--active {
  color: var(--aimlib-pink-soft);
}

.md-nav__link--active {
  background: linear-gradient(90deg, rgba(255, 54, 96, 0.1), transparent 88%);
  box-shadow: inset 1px 0 var(--aimlib-pink);
}

.md-nav--primary > .md-nav__title {
  font-size: 0;
}

.md-nav--primary > .md-nav__title .aim-docs-brand {
  display: inline-flex;
}

.md-nav--primary > .md-nav__title::after {
  color: var(--aimlib-faint);
  content: "DOCS";
  font-size: 0.52rem;
  margin-left: 0.6rem;
}

.md-main__inner {
  margin-top: 1.5rem;
}

.md-content__inner {
  padding-bottom: 2.5rem;
}

.md-typeset {
  color: rgba(225, 231, 231, 0.86);
  font-size: 0.72rem;
  line-height: 1.72;
}

.md-typeset h1,
.md-typeset h2,
.md-typeset h3,
.md-typeset h4 {
  color: var(--aimlib-ink);
  font-weight: 650;
  letter-spacing: -0.035em;
  line-height: 1.16;
}

.md-typeset h1 {
  font-size: clamp(2.25rem, 4vw, 3.25rem);
  margin-bottom: 1.25rem;
}

.md-typeset h2 {
  border-top: 1px solid var(--aimlib-line);
  font-size: 1.35rem;
  margin-top: 2.8rem;
  padding-top: 1.5rem;
}

.md-typeset h3 {
  font-size: 1rem;
  margin-top: 2rem;
}

.md-typeset a {
  text-decoration-color: rgba(255, 120, 148, 0.32);
  text-underline-offset: 0.16em;
}

.md-typeset a:is(:focus, :hover) {
  color: var(--aimlib-cyan-soft);
  text-decoration-color: rgba(131, 232, 246, 0.5);
}

.md-typeset code {
  background: var(--aimlib-surface);
  border: 1px solid var(--aimlib-line);
  border-radius: 0.28rem;
  color: #dce7e7;
  font-size: 0.92em;
  padding: 0.08em 0.34em;
}

.md-typeset pre {
  border: 1px solid var(--aimlib-line);
  border-radius: 0.42rem;
  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.17);
  overflow: hidden;
}

.md-typeset pre > code {
  background: linear-gradient(180deg, #0d1010, #090c0c);
  border: 0;
  padding: 1rem 1.1rem;
}

.md-typeset .highlight > .filename {
  background: var(--aimlib-surface-raised);
  border: 1px solid var(--aimlib-line);
  border-bottom: 0;
  color: var(--aimlib-faint);
  font-family: ui-monospace, "SFMono-Regular", Consolas, monospace;
}

.md-clipboard {
  color: var(--aimlib-faint);
}

.md-clipboard:is(:focus, :hover) {
  color: var(--aimlib-cyan);
}

.md-typeset .admonition,
.md-typeset details {
  background: rgba(15, 18, 18, 0.88);
  border: 1px solid var(--aimlib-line);
  border-left: 0.14rem solid var(--aimlib-cyan);
  border-radius: 0.42rem;
  box-shadow: none;
}

.md-typeset .admonition-title,
.md-typeset summary {
  background: rgba(34, 211, 238, 0.055);
}

.md-typeset table:not([class]) {
  border-radius: 0.42rem;
  box-shadow: 0 0 0 1px var(--aimlib-line);
  overflow: hidden;
}

.md-typeset table:not([class]) th {
  background: var(--aimlib-surface-raised);
  color: var(--aimlib-muted);
  font-family: ui-monospace, "SFMono-Regular", Consolas, monospace;
  font-size: 0.56rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.md-typeset table:not([class]) td {
  border-top-color: var(--aimlib-line);
}

.aim-hero {
  border: 1px solid var(--aimlib-line);
  border-radius: 0.5rem;
  display: block;
  isolation: isolate;
  margin: 0 0 2.5rem;
  min-height: 23rem;
  overflow: hidden;
  padding: clamp(2.6rem, 7vw, 5.8rem) clamp(1.4rem, 6vw, 4.75rem);
  position: relative;
}

.aim-hero::before {
  background: linear-gradient(90deg, var(--aimlib-pink), transparent);
  content: "";
  height: 1px;
  left: 0;
  position: absolute;
  top: 0;
  width: 9rem;
}

.aim-hero::after {
  background: radial-gradient(circle, rgba(250, 250, 250, 0.14) 0.65px, transparent 0.75px);
  background-size: 28px 28px;
  content: "";
  inset: 0;
  mask-image: linear-gradient(90deg, transparent, #000 30%, #000);
  opacity: 0.3;
  pointer-events: none;
  position: absolute;
  z-index: -1;
}

.aim-hero > :not(.aim-contour-map) {
  max-width: 42rem;
  position: relative;
  z-index: 2;
}

.aim-contour-map {
  height: 100%;
  inset: 0;
  opacity: 0.42;
  pointer-events: none;
  position: absolute;
  width: 100%;
  z-index: -1;
}

.aim-contour-map path {
  stroke-width: 1;
  vector-effect: non-scaling-stroke;
}

.aim-contour-nodes circle {
  fill: var(--aimlib-bg);
  stroke: var(--aimlib-pink);
}

.aim-contour-nodes path {
  stroke: var(--aimlib-cyan);
}

.aim-hero h1 {
  background: linear-gradient(112deg, var(--aimlib-ink) 12%, #d487a4 58%, var(--aimlib-cyan) 130%);
  background-clip: text;
  color: transparent;
  font-size: clamp(2.75rem, 6vw, 5rem);
  font-weight: 700;
  letter-spacing: -0.066em;
  line-height: 0.96;
  margin: 0.75rem 0 1.25rem;
  max-width: 13ch;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.aim-hero h1 .headerlink {
  display: none;
}

.aim-hero p:not(:last-child) {
  color: var(--aimlib-muted);
  font-size: 0.88rem;
  line-height: 1.7;
  max-width: 38rem;
}

.aim-kicker {
  color: var(--aimlib-pink-soft);
  font-family: ui-monospace, "SFMono-Regular", Consolas, monospace;
  font-size: 0.56rem;
  font-weight: 650;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.aim-kicker::before {
  content: "[ ";
}

.aim-kicker::after {
  content: " ]";
}

.aim-hero .md-button {
  border-color: var(--aimlib-line-strong);
  border-radius: 0.38rem;
  color: var(--aimlib-ink);
  margin: 0.65rem 0.45rem 0 0;
  min-height: 2.35rem;
  padding: 0.62rem 1rem;
}

.aim-hero .md-button--primary {
  background: var(--aimlib-pink-strong);
  border-color: var(--aimlib-pink);
  color: #fff;
}

.aim-hero .md-button:is(:focus, :hover) {
  background: var(--aimlib-cyan);
  border-color: var(--aimlib-cyan);
  color: #061012;
}

.md-typeset .aim-service-grid > ul {
  gap: 0.6rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.md-typeset .aim-service-grid > ul > li {
  background: linear-gradient(155deg, rgba(18, 22, 22, 0.96), rgba(10, 13, 13, 0.98));
  border: 1px solid var(--aimlib-line);
  border-radius: 0.42rem;
  box-shadow: none;
  min-height: 11rem;
  padding: 2.7rem 1.25rem 1.25rem;
  position: relative;
  transition: border-color 150ms ease, transform 150ms ease;
}

.md-typeset .grid.cards.aim-service-grid > ul > li {
  padding: 2.7rem 1.25rem 1.25rem;
}

.md-typeset .aim-service-grid > ul > li::before {
  color: var(--aimlib-faint);
  content: "SERVICE / 0" counter(list-item);
  font-family: ui-monospace, "SFMono-Regular", Consolas, monospace;
  font-size: 0.5rem;
  left: 1.25rem;
  letter-spacing: 0.12em;
  position: absolute;
  top: 1rem;
}

.md-typeset .aim-service-grid > ul > li::after {
  border-right: 1px solid rgba(255, 54, 96, 0.45);
  border-top: 1px solid rgba(255, 54, 96, 0.45);
  content: "";
  height: 0.7rem;
  position: absolute;
  right: 0.55rem;
  top: 0.55rem;
  width: 0.7rem;
}

.md-typeset .aim-service-grid > ul > li:hover {
  border-color: rgba(255, 54, 96, 0.42);
  transform: translateY(-2px);
}

.md-typeset .aim-service-grid strong {
  color: var(--aimlib-ink);
  display: block;
  font-size: 0.92rem;
  letter-spacing: -0.025em;
  margin-bottom: 0.65rem;
}

.md-typeset .aim-service-grid a {
  color: var(--aimlib-pink-soft);
  font-size: 0.64rem;
  font-weight: 650;
}

.md-footer {
  background: var(--aimlib-bg);
  border-top: 1px solid var(--aimlib-line);
}

.md-footer-meta {
  background: var(--aimlib-bg);
}

.md-footer-meta__inner {
  color: var(--aimlib-faint);
}

* {
  scrollbar-color: var(--aimlib-line-strong) transparent;
  scrollbar-width: thin;
}

:focus-visible {
  outline: 2px solid var(--aimlib-pink) !important;
  outline-offset: 2px;
}

@media screen and (max-width: 44.984375em) {
  .md-header__topic:first-child .md-ellipsis::after {
    border-left: 0;
    color: var(--aimlib-faint);
    content: "DOCS";
    font-size: 0.5rem;
    padding-left: 0;
  }

  .aim-hero {
    min-height: 25rem;
    padding: 3rem 1.2rem;
  }

  .aim-hero h1 {
    font-size: clamp(2.65rem, 14vw, 3.8rem);
  }

  .aim-contour-map {
    opacity: 0.28;
  }

  .md-typeset .aim-service-grid > ul {
    grid-template-columns: 1fr;
  }
}

@media screen and (min-width: 45em) and (max-width: 76.234375em) {
  .md-typeset .aim-service-grid > ul {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (prefers-reduced-motion: reduce) {
  .md-typeset .aim-service-grid > ul > li {
    transition: none;
  }
}
