/* A readable technical field guide: ink, paper, and precise cyan accents. */
:root {
  --md-text-font: "Avenir Next", "Segoe UI", sans-serif;
  --md-code-font: "SFMono-Regular", Consolas, "Liberation Mono", monospace;
}
body[data-md-color-scheme="default"][data-md-color-primary] {
  --md-primary-fg-color: #f7f9fc;
  --md-primary-bg-color: #172840;
  --md-primary-bg-color--light: #50627a;
  --md-default-bg-color: #f7f9fc;
  --md-default-fg-color: #172840;
  --md-default-fg-color--light: #50627a;
  --md-default-fg-color--lighter: #748397;
  --md-accent-fg-color: #007d77;
  --md-typeset-a-color: #006f77;
  --md-code-bg-color: #edf2f8;
  --md-code-fg-color: #203653;
  --site-border: #d6e0ec;
  --site-panel: #fff;
  --site-soft: #edf2f8;
  --site-accent-soft: #dcefeb;
  --site-glow: #51c4b320;
  --site-shadow: #183d6510;
}
body[data-md-color-scheme="slate"][data-md-color-primary] {
  --md-hue: 217;
  --md-primary-fg-color: #101a2b;
  --md-primary-bg-color: #e1ebf8;
  --md-primary-bg-color--light: #a6b8d0;
  --md-default-bg-color: #101a2b;
  --md-default-fg-color: #e1ebf8;
  --md-default-fg-color--light: #a6b8d0;
  --md-default-fg-color--lighter: #8195b1;
  --md-accent-fg-color: #6fe0ce;
  --md-typeset-a-color: #6fe0ce;
  --md-code-bg-color: #17243a;
  --md-code-fg-color: #e1ebf8;
  --site-border: #2b3d57;
  --site-panel: #162238;
  --site-soft: #192840;
  --site-accent-soft: #153e44;
  --site-glow: #65e0cc12;
  --site-shadow: #0002;
}
.md-grid { max-width: 82rem; }
.md-header { box-shadow: none; border-bottom: 1px solid var(--site-border); }
.md-header__title { font-weight: 750; letter-spacing: -.025em; }
.md-header__button.md-logo img { height: 1.6rem; width: 1.6rem; }
.md-tabs { border-bottom: 1px solid var(--site-border); }
.md-tabs__link { font-weight: 650; opacity: 1; padding-bottom: .2rem; }
.md-tabs__item { border-bottom: 2px solid transparent; }
.md-tabs__item--active { border-bottom-color: var(--md-typeset-a-color); }
.md-tabs__item--active .md-tabs__link { color: var(--md-typeset-a-color); }
.md-search__form { background: var(--site-soft); border: 1px solid var(--site-border); border-radius: .6rem; }
.md-main__inner { margin-top: 1.8rem; }
.md-typeset { font-size: .82rem; line-height: 1.78; }
.md-typeset h1 { color: var(--md-default-fg-color); font-weight: 750; letter-spacing: -.045em; line-height: 1.17; margin-bottom: 1.15rem; }
.md-typeset h2 { font-weight: 700; letter-spacing: -.025em; margin-top: 2.5rem; scroll-margin-top: 7rem; }
.md-typeset h3 { font-weight: 650; scroll-margin-top: 7rem; }
.md-typeset p, .md-typeset ul, .md-typeset ol { margin-top: .8em; margin-bottom: 1em; }
.md-typeset a:not(.md-button):hover { text-decoration: underline; text-underline-offset: .2em; }
.md-typeset pre > code { border: 1px solid var(--site-border); border-radius: .5rem; line-height: 1.75; padding: 1rem; }
.md-typeset code { border-radius: .2rem; }
.md-typeset table:not([class]) { border-color: var(--site-border); border-radius: .6rem; box-shadow: 0 6px 24px var(--site-shadow); font-size: .73rem; }
.md-typeset table:not([class]) th { background: var(--site-soft); font-weight: 700; color: var(--md-default-fg-color); }
.md-typeset table:not([class]) td { border-color: var(--site-border); }
.md-typeset table:not([class]) tbody tr:hover { background: var(--site-glow); }
.md-typeset .admonition, .md-typeset details { border-radius: .5rem; box-shadow: none; font-size: .75rem; }
.md-nav { font-size: .69rem; line-height: 1.55; }
.md-nav__link { padding: .18rem .15rem; border-radius: .2rem; }
.md-nav__link:hover { background: var(--site-glow); }
.md-nav__link--active { color: var(--md-typeset-a-color); font-weight: 750; }
.md-nav--secondary { border-left: 1px solid var(--site-border); }
.md-nav--secondary .md-nav__title { color: var(--md-default-fg-color); font-weight: 700; }
.md-path { color: var(--md-default-fg-color--light); font-size: .65rem; }
.md-typeset .md-button { color: var(--md-typeset-a-color); border-radius: .45rem; font-size: .74rem; padding: .7em 1.25em; font-weight: 700; border-width: 1px; transition: transform .18s, box-shadow .18s; }
.md-typeset .md-button--primary { background: #007a73; border-color: #007a73; color: #fff; }
.md-typeset .md-button:hover { background: var(--md-typeset-a-color); border-color: var(--md-typeset-a-color); color: var(--md-default-bg-color); transform: translateY(-2px); box-shadow: 0 6px 20px var(--site-shadow); }
.md-footer { background: var(--site-soft); color: var(--md-default-fg-color); border-top: 1px solid var(--site-border); }
.md-footer-meta { background: var(--md-default-bg-color); color: var(--md-default-fg-color--light); }
.md-top { border: 1px solid var(--site-border); box-shadow: 0 2px 12px var(--site-shadow); }
.docs-hero { position: relative; isolation: isolate; overflow: hidden; border: 1px solid var(--site-border); border-radius: 1rem; padding: 2rem; margin: .2rem 0 2.2rem; background: radial-gradient(ellipse at 90% 10%,var(--site-glow),transparent 65%),var(--site-panel); }
.docs-hero::after { content: ""; position: absolute; z-index: -1; right: -4rem; top: -5rem; width: 20rem; height: 20rem; border: 1px solid var(--site-border); border-radius: 50%; box-shadow: 0 0 0 2rem var(--site-glow),0 0 0 4rem var(--site-glow); pointer-events: none; }
.md-typeset .docs-eyebrow { color: var(--md-typeset-a-color); font-size: .6rem; font-weight: 750; letter-spacing: .11em; text-transform: uppercase; margin-bottom: 1rem; }
.docs-hero h1 { max-width: 20ch; font-size: clamp(2rem,3.4vw,3.1rem); margin-top: .5rem; }
.docs-lead { max-width: 58ch; color: var(--md-default-fg-color--light); font-size: .96rem; line-height: 1.65; }
.docs-actions, .docs-actions p { display: flex; flex-wrap: wrap; gap: .6rem; }
.docs-actions { margin-top: 1.25rem; }
.docs-actions p { margin: 0; }
.docs-hero-notes { display: flex; flex-wrap: wrap; gap: 1rem; color: var(--md-default-fg-color--light); font-size: .6rem; margin-top: 1.5rem; }
.docs-hero-notes span::before { content: "↳"; margin-right: .3rem; color: var(--md-typeset-a-color); }
.docs-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .85rem; margin: 1.3rem 0 2rem; }
.docs-card { background: var(--site-panel); border: 1px solid var(--site-border); border-radius: .7rem; padding: 1.2rem; transition: transform .18s,border-color .18s,box-shadow .18s; }
.docs-card:hover { transform: translateY(-3px); border-color: var(--md-typeset-a-color); box-shadow: 0 10px 28px var(--site-shadow); }
.md-typeset .docs-card h3 { font-size: .98rem; margin: .1rem 0 .5rem; letter-spacing: -.02em; }
.docs-card p { font-size: .76rem; color: var(--md-default-fg-color--light); }
.docs-card p:last-child { margin-bottom: 0; }
.docs-step { display: inline-block; color: var(--md-typeset-a-color); font-size: .57rem; font-weight: 750; letter-spacing: .12em; margin-bottom: .55rem; }
.docs-figure { max-width: 100%; margin: 1.5rem 0; }
.docs-figure img { display: block; border: 1px solid var(--site-border); border-radius: .75rem; width: 100%; height: auto; }
.md-typeset .docs-figure figcaption { max-width: 100%; color: var(--md-default-fg-color--light); font-size: .66rem; }
.docs-diagram, .md-typeset .mermaid { overflow-x: auto; margin: 1.3rem 0; padding: .6rem; border: 1px solid var(--site-border); border-radius: .6rem; background: var(--site-panel); }
.docs-diagram .mermaid { border: 0; margin: 0; padding: 0; }
.md-typeset .mermaid svg { min-width: min(30rem,100%); }
.docs-journey { border-left: 2px solid var(--md-typeset-a-color); padding: .5rem 1.2rem; background: var(--site-panel); border-radius: 0 .6rem .6rem 0; }
.docs-journey li { padding: .2rem 0; }
.process-demo { border: 1px solid var(--site-border); border-radius: .85rem; background: var(--site-panel); padding: 1.3rem; margin: 1.5rem 0; box-shadow: 0 10px 35px var(--site-shadow); }
.process-demo__header { display: flex; justify-content: space-between; flex-wrap: wrap; align-items: center; gap: .5rem; }
.process-demo__header .docs-eyebrow { margin: 0; }
.process-demo__badge { font-size: .55rem; color: var(--md-default-fg-color--light); border: 1px solid var(--site-border); border-radius: 1rem; padding: .18rem .45rem; }
.process-demo > p { font-size: .72rem; color: var(--md-default-fg-color--light); }
.process-demo__choices { display: flex; flex-wrap: wrap; gap: .4rem; margin: 1rem 0; }
.process-demo__choices button { padding: .45rem .75rem; border-radius: .35rem; border: 1px solid var(--site-border); font: inherit; font-size: .66rem; color: var(--md-default-fg-color); cursor: pointer; }
.process-demo__choices button[aria-pressed="true"] { background: var(--site-accent-soft); border-color: var(--md-typeset-a-color); color: var(--md-typeset-a-color); }
.md-typeset .process-demo blockquote { margin: 1.2rem 0; border-left-color: var(--md-typeset-a-color); font-size: .8rem; color: var(--md-default-fg-color); }
.md-typeset ol.process-demo__route:not([hidden]) { list-style: none; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .6rem; margin: 1rem 0; padding: 0; }
.md-typeset .process-demo__route li { margin: 0; border: 1px solid var(--site-border); background: var(--site-soft); border-radius: .5rem; padding: .8rem; display: flex; flex-direction: column; gap: .3rem; font-size: .67rem; }
.process-demo__number { font: .55rem var(--md-code-font); color: var(--md-typeset-a-color); }
.process-demo__route strong { font-size: .72rem; }
.process-demo__route li > span:last-child { color: var(--md-default-fg-color--light); }
.md-typeset .process-demo__reason { font-size: .7rem; color: var(--md-default-fg-color--light); margin-bottom: 0; }
.docs-diagram:focus-visible, a:focus-visible, button:focus-visible, input:focus-visible { outline: 2px solid var(--md-accent-fg-color); outline-offset: 4px; }
@media (prefers-reduced-motion: no-preference) {
  .docs-hero { animation: arrive .5s ease-out both; }
  .process-demo__content.is-changing { animation: arrive .22s ease-out both; }
  @keyframes arrive { from { opacity: .4; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
}
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; } }
@media (min-width: 76.25em) {
  .md-content { max-width: 50rem; }
  .md-sidebar--primary .md-nav__item--section > .md-nav__link { font-size: .63rem; font-weight: 750; color: var(--md-default-fg-color); }
}
@media (max-width: 44.99em) {
  .docs-grid { grid-template-columns: 1fr; }
  .docs-hero { padding: 1.25rem; border-radius: .65rem; }
  .docs-hero h1 { font-size: 2rem; }
  .md-typeset { font-size: .8rem; }
  .md-typeset ol.process-demo__route:not([hidden]) { grid-template-columns: 1fr; }
  .process-demo { padding: 1rem; }
  .md-typeset .mermaid { padding: .2rem; }
}
