@font-face {
  font-family: "Space Grotesk";
  src: url("../assets/space-grotesk/space-grotesk-latin.woff2") format("woff2");
  font-weight: 300 700;
  font-style: normal;
  font-display: swap;
}

:root {
  --docs-bg: #141618;
  --docs-panel: #1c1f21;
  --docs-panel-deep: #17191b;
  --docs-rule: rgba(205, 210, 211, .2);
  --docs-text: #e4e5e2;
  --docs-muted: #aab0af;
  --docs-accent: #b99782;
  --docs-mono: "JetBrains Mono", Consolas, monospace;
}

html { scroll-behavior: smooth; }
body.atlas-docs {
  background: var(--docs-bg) !important;
  color: var(--docs-text);
  font-family: "Space Grotesk", Arial, sans-serif !important;
  padding-top: 0;
}
body.atlas-docs ::selection { background: var(--docs-accent); color: var(--docs-bg); }
body.atlas-docs a { transition: color .18s ease, background .18s ease, border-color .18s ease; }
body.atlas-docs a:focus-visible,
body.atlas-docs button:focus-visible { outline: 2px solid var(--docs-accent); outline-offset: 4px; }

body.atlas-docs > header {
  top: 32px !important;
  height: 70px;
  background: rgba(20, 22, 24, .97) !important;
  border-bottom: 1px solid var(--docs-rule) !important;
  backdrop-filter: blur(18px);
}
body.atlas-docs > header > div:first-child {
  height: 70px !important;
  max-width: none;
  padding-left: 4vw !important;
  padding-right: 4vw !important;
  gap: 24px;
}
body.atlas-docs > header a[aria-label="Morain home"] img {
  filter: grayscale(1) brightness(1.55);
  width: 24px !important;
  height: 24px !important;
}
body.atlas-docs > header a[aria-label="Morain home"] span span {
  color: var(--docs-text) !important;
  font: 700 20px/1 "Space Grotesk", Arial, sans-serif !important;
  letter-spacing: -.075em !important;
  text-transform: uppercase;
}
body.atlas-docs > header nav,
body.atlas-docs > header > div > div:nth-child(3) {
  gap: clamp(10px, 1.55vw, 26px) !important;
}
body.atlas-docs > header nav a {
  color: #c0c5c4 !important;
  font: 500 10px/1.3 var(--docs-mono) !important;
  letter-spacing: .035em;
  white-space: nowrap;
}
body.atlas-docs > header nav a:hover,
body.atlas-docs > header nav a[href="docs.html"] { color: var(--docs-accent) !important; }
body.atlas-docs > header .btn {
  min-height: 38px;
  border-radius: 0 !important;
  font: 600 10px/1 var(--docs-mono) !important;
  letter-spacing: .035em;
  white-space: nowrap;
}
body.atlas-docs > header .btn-ghost { border: 1px solid var(--docs-rule) !important; background: transparent !important; color: var(--docs-text) !important; }
body.atlas-docs > header .btn:not(.btn-ghost) { background: #dfe0dc !important; color: #202326 !important; }
body.atlas-docs > header .btn:hover { background: var(--docs-accent) !important; color: #141618 !important; }
body.atlas-docs #vx-mobile-nav { background: #1b1e20 !important; border-color: var(--docs-rule) !important; }
body.atlas-docs #vx-mobile-nav a { color: var(--docs-text) !important; font-family: var(--docs-mono); font-size: 12px !important; }
body.atlas-docs #vx-mobile-nav a.btn-primary { color: #202326 !important; }

body.atlas-docs #vx-burn-strip,
body.atlas-docs [id="vx-burn-strip"] {
  background: #1a1d1f !important;
  border-bottom: 1px solid var(--docs-rule) !important;
  color: var(--docs-muted) !important;
  font: 500 10px/1.35 var(--docs-mono) !important;
  letter-spacing: .03em;
}
body.atlas-docs #vx-burn-strip a { color: var(--docs-accent) !important; }

body.atlas-docs main {
  background: var(--docs-bg);
  background-image: linear-gradient(90deg, rgba(210, 214, 213, .025) 1px, transparent 1px);
  background-size: 190px 100%;
}
body.atlas-docs main > div:first-child {
  width: min(92%, 1440px);
  max-width: none !important;
  margin: 0 auto !important;
  padding: 0 !important;
  display: grid !important;
  grid-template-columns: 200px minmax(0, 1fr) !important;
  gap: clamp(48px, 7vw, 120px) !important;
}
body.atlas-docs main nav[aria-label="Contents"] {
  position: sticky !important;
  top: 142px !important;
  width: 100% !important;
  margin: 78px 0 0 !important;
  padding: 0 0 0 20px !important;
  justify-self: stretch !important;
  transform: none !important;
  border-left: 1px solid var(--docs-rule);
}
body.atlas-docs main nav[aria-label="Contents"] > div {
  color: var(--docs-accent) !important;
  font: 600 10px/1.3 var(--docs-mono) !important;
  letter-spacing: .09em !important;
  margin: 0 0 20px !important;
}
body.atlas-docs main nav[aria-label="Contents"] a {
  display: block;
  border: 0 !important;
  margin: 0 !important;
  padding: 10px 0 !important;
  color: #a8aeac !important;
  font: 500 11px/1.4 var(--docs-mono) !important;
  letter-spacing: .015em;
}
body.atlas-docs main nav[aria-label="Contents"] a:hover,
body.atlas-docs main nav[aria-label="Contents"] a:focus-visible { color: var(--docs-text) !important; }
body.atlas-docs main nav[aria-label="Contents"] a::before { content: "/ "; color: var(--docs-accent); }

body.atlas-docs main section {
  background: transparent !important;
  border-top: 1px solid var(--docs-rule) !important;
  padding: 84px 0 96px !important;
  scroll-margin-top: 125px !important;
}
body.atlas-docs main section:first-child { border-top: 0 !important; padding-top: 78px !important; }
body.atlas-docs main section > div {
  max-width: none !important;
  padding: 0 !important;
}
body.atlas-docs main section > div > div:first-child {
  color: var(--docs-accent) !important;
  font: 600 10px/1.4 var(--docs-mono) !important;
  letter-spacing: .1em !important;
  margin: 0 0 21px !important;
}
body.atlas-docs main section > div > div:first-child::before { content: "◆ "; font-size: 8px; vertical-align: 1px; }
body.atlas-docs main section h2 {
  max-width: 840px;
  color: var(--docs-text) !important;
  font: 600 clamp(40px, 4.65vw, 72px)/1.02 "Space Grotesk", Arial, sans-serif !important;
  letter-spacing: -.07em !important;
  text-wrap: balance;
  margin: 0 0 26px !important;
}
body.atlas-docs main section h2 + p {
  color: #c6cac8 !important;
  font: 400 clamp(17px, 1.4vw, 20px)/1.5 "Space Grotesk", Arial, sans-serif !important;
  letter-spacing: -.018em;
  max-width: 760px !important;
  margin: 0 0 60px !important;
}
body.atlas-docs main section h3 {
  max-width: 800px;
  border-top: 1px solid var(--docs-rule);
  padding-top: 27px;
  color: var(--docs-text) !important;
  font: 600 clamp(24px, 2.2vw, 32px)/1.15 "Space Grotesk", Arial, sans-serif !important;
  letter-spacing: -.045em !important;
  margin: 59px 0 17px !important;
}
body.atlas-docs main section p,
body.atlas-docs main section li {
  color: var(--docs-muted) !important;
  font: 400 16px/1.68 "Space Grotesk", Arial, sans-serif !important;
  letter-spacing: -.008em;
  max-width: 760px !important;
}
body.atlas-docs main section p { margin: 0 0 20px !important; }
body.atlas-docs main section p a,
body.atlas-docs main section td a { color: #dbdcd8 !important; text-decoration-color: var(--docs-accent) !important; text-underline-offset: 4px; }
body.atlas-docs main section p a:hover,
body.atlas-docs main section td a:hover { color: var(--docs-accent) !important; }
body.atlas-docs main section code {
  color: #dfc1ae !important;
  font-family: var(--docs-mono) !important;
  font-size: .83em;
}
body.atlas-docs main section pre {
  max-width: 100%;
  background: var(--docs-panel) !important;
  color: #e0e2df !important;
  border: 1px solid var(--docs-rule) !important;
  border-left: 2px solid var(--docs-accent) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font: 500 12px/1.75 var(--docs-mono) !important;
  padding: 22px 24px !important;
  margin: 27px 0 !important;
  overflow-x: auto;
}
body.atlas-docs main section table {
  background: var(--docs-panel-deep) !important;
  border: 1px solid var(--docs-rule) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-family: var(--docs-mono) !important;
}
body.atlas-docs main section th,
body.atlas-docs main section td {
  background: transparent !important;
  border-bottom: 1px solid var(--docs-rule) !important;
  color: #b7bcba !important;
  padding: 14px 16px !important;
  font: 500 11px/1.5 var(--docs-mono) !important;
}
body.atlas-docs main section th { color: var(--docs-accent) !important; font-size: 9px !important; letter-spacing: .08em; }
body.atlas-docs main section td:first-child { color: var(--docs-text) !important; }
body.atlas-docs main section td a { overflow-wrap: anywhere; }
body.atlas-docs main section > div > div[style*="grid"] > div {
  background: var(--docs-panel) !important;
  border: 1px solid var(--docs-rule) !important;
  border-radius: 0 !important;
}

body.atlas-docs footer {
  background: #101213 !important;
  color: var(--docs-muted) !important;
  border-top: 1px solid var(--docs-rule) !important;
  font-family: var(--docs-mono) !important;
}
body.atlas-docs footer h2,
body.atlas-docs footer h3 { color: var(--docs-accent) !important; font-family: var(--docs-mono) !important; }
body.atlas-docs footer a { color: #c6cac8 !important; }
body.atlas-docs footer a:hover { color: var(--docs-accent) !important; }

@media (max-width: 1100px) {
  body.atlas-docs > header nav,
  body.atlas-docs > header > div > div:nth-child(3) { gap: 12px !important; }
  body.atlas-docs > header nav a { font-size: 9px !important; }
}
@media (max-width: 900px) {
  body.atlas-docs main > div:first-child {
    width: min(90%, 780px);
    display: block !important;
  }
  body.atlas-docs main nav[aria-label="Contents"] {
    display: flex !important;
    position: relative !important;
    top: auto !important;
    margin: 32px 0 0 !important;
    padding: 0 0 12px !important;
    border-left: 0;
    border-bottom: 1px solid var(--docs-rule);
    flex-wrap: wrap;
    overflow: visible;
    gap: 3px 18px;
    white-space: normal;
  }
  body.atlas-docs main nav[aria-label="Contents"] > div { display: none; }
  body.atlas-docs main nav[aria-label="Contents"] a { padding: 9px 0 !important; }
  body.atlas-docs main section:first-child { padding-top: 60px !important; }
}
@media (max-width: 640px) {
  body.atlas-docs > header,
  body.atlas-docs > header > div:first-child { height: 64px !important; }
  body.atlas-docs > header > div:first-child { padding-left: 5vw !important; padding-right: 5vw !important; }
  body.atlas-docs > header a[aria-label="Morain home"] span span { font-size: 17px !important; }
  body.atlas-docs main { background-size: 100px 100%; }
  body.atlas-docs main > div:first-child { width: 90%; }
  body.atlas-docs main section { padding: 65px 0 72px !important; }
  body.atlas-docs main section h2 { font-size: clamp(36px, 9vw, 54px) !important; }
  body.atlas-docs main section h2 + p { margin-bottom: 44px !important; }
  body.atlas-docs main section h3 { margin-top: 42px !important; }
  body.atlas-docs main section p { font-size: 15px !important; }
  body.atlas-docs main section pre { font-size: 11px !important; padding: 17px !important; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  body.atlas-docs a { transition: none; }
}

/* Compact documentation navigation. */
body.atlas-docs { display: flex; flex-direction: column; padding-top: 0 !important; }
body.atlas-docs > header.docs-header {
  order: 0;
  position: sticky !important;
  top: 0 !important;
  z-index: 50 !important;
  height: 56px;
  background: rgba(20, 22, 24, .97) !important;
  border-bottom: 1px solid var(--docs-rule) !important;
}
body.atlas-docs > header.docs-header > .docs-header-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  height: 56px !important;
  gap: clamp(14px, 2vw, 30px) !important;
  padding: 0 3.5vw !important;
}
.docs-brand { display: inline-flex; align-items: center; gap: 9px; flex: none; color: var(--docs-text); white-space: nowrap; }
.docs-mark { display: inline-flex; align-items: center; justify-content: center; gap: 2px; width: 23px; height: 23px; transform: skew(-14deg); }
.docs-mark i { display: block; width: 5px; height: 12px; background: var(--docs-accent); }
.docs-mark i:nth-child(2) { height: 20px; }
.docs-mark i:nth-child(3) { height: 10px; }
.docs-wordmark { font: 700 18px/1 "Space Grotesk", Arial, sans-serif; letter-spacing: -.075em; }
.docs-wordmark span { color: var(--docs-accent); }
.docs-brand:hover { color: #fff; }
body.atlas-docs > header .docs-global-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(10px, 1.25vw, 20px) !important;
  margin-left: auto;
}
body.atlas-docs > header .docs-global-nav a {
  color: #c6cbc9 !important;
  font: 500 10px/1.2 var(--docs-mono) !important;
  letter-spacing: .025em;
  white-space: nowrap;
}
body.atlas-docs > header .docs-global-nav a:hover,
body.atlas-docs > header .docs-global-nav a[aria-current="page"] { color: var(--docs-accent) !important; }
.docs-header-actions { display: flex; align-items: center; gap: 9px; flex: none; }
.docs-header-actions a { display: inline-flex; align-items: center; justify-content: center; min-height: 30px; font: 600 9px/1 var(--docs-mono); letter-spacing: .035em; white-space: nowrap; }
.docs-header-actions .docs-social { gap: 8px; color: var(--docs-text); border-bottom: 1px solid var(--docs-rule); padding: 0 4px; }
.docs-header-actions .docs-social:hover { color: var(--docs-accent); border-color: var(--docs-accent); }
.docs-header-actions .docs-open { padding: 0 10px; color: #202326; background: #e0e0dc; }
.docs-header-actions .docs-open:hover { background: #d8b8a4; color: #202326; }
.docs-header-actions .docs-open span { font-size: 14px; }
.docs-menu-toggle { display: none; width: 34px; height: 34px; border: 1px solid var(--docs-rule); background: transparent; align-items: center; justify-content: center; flex-direction: column; gap: 5px; flex: none; cursor: pointer; }
.docs-menu-toggle span { width: 17px; height: 1px; background: var(--docs-text); }
.docs-mobile-nav { display: none; position: absolute; left: 0; right: 0; top: 56px; padding: 10px 4vw 18px; background: #1c1f21; border-bottom: 1px solid var(--docs-rule); max-height: calc(100dvh - 56px); overflow-y: auto; gap: 0 !important; }
.docs-mobile-nav[hidden],
.docs-mobile-nav [hidden],
.docs-global-nav [hidden] { display: none !important; }
body.atlas-docs > header .docs-mobile-nav:not([hidden]) { display: grid; }
body.atlas-docs > header .docs-mobile-nav > a { display: block; padding: 10px 0; color: var(--docs-text) !important; border-bottom: 1px solid var(--docs-rule); font: 500 11px/1.4 var(--docs-mono) !important; }
body.atlas-docs > header .docs-mobile-nav > a[aria-current="page"] { color: var(--docs-accent) !important; }
.docs-mobile-actions { display: flex; gap: 8px; padding-top: 14px; }
body.atlas-docs > header .docs-mobile-actions a { flex: 1; text-align: center; padding: 9px 8px; border: 1px solid var(--docs-rule); color: var(--docs-text) !important; font: 600 9px/1.3 var(--docs-mono) !important; }
body.atlas-docs > header #vx-mobile-nav .docs-mobile-actions a:last-child { background: #e0e0dc; border-color: #e0e0dc; color: #202326 !important; }

body.atlas-docs > #vx-burn-strip { order: 1; min-height: 25px; padding: 5px 12px !important; background: #17191b !important; font-size: 9px !important; }
body.atlas-docs > main { order: 2; }
body.atlas-docs > footer { order: 3; }

@media (max-width: 1120px) {
  body.atlas-docs > header .docs-global-nav { display: none; }
  .docs-menu-toggle { display: flex; }
  .docs-header-actions { margin-left: auto; }
}
@media (max-width: 640px) {
  body.atlas-docs > header.docs-header,
  body.atlas-docs > header.docs-header > .docs-header-inner { height: 52px !important; }
  body.atlas-docs > header.docs-header > .docs-header-inner { padding: 0 5vw !important; }
  .docs-wordmark { font-size: 16px; }
  .docs-mark { width: 20px; transform: skew(-14deg) scale(.85); }
  .docs-header-actions { display: none; }
  .docs-menu-toggle { margin-left: auto; }
  .docs-mobile-nav { top: 52px; padding-left: 5vw; padding-right: 5vw; max-height: calc(100dvh - 52px); }
}

/* Keep documentation controls proportional to the compact site chrome. */
body.atlas-docs > header .btn {
  min-height: 32px !important;
  padding: 7px 10px !important;
  font-size: 9px !important;
}
body.atlas-docs .docs-menu-toggle { width: 34px; height: 34px; }
