/* The landing page's palette and type, applied to Material. Light and dark
   follow the system, exactly as the landing page does; the variables are the
   landing page's own (landing/index.html), so the two halves of the site
   read as one. */
:root, [data-md-color-scheme="default"] {
  --bg:#f2f4f3; --card:#ffffff; --ink:#17242a; --body:#2c3e45; --muted:#5c7078;
  --accent:#0e7c6b; --mint:#3ecfa8; --line:#dde5e2;
  --term-bg:#17242a; --term-fg:#d9e6e1;
  --sans:'IBM Plex Sans',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --mono:'IBM Plex Mono',ui-monospace,'SFMono-Regular',Menlo,Consolas,monospace;

  --md-default-bg-color:var(--bg);
  --md-default-fg-color:var(--body);
  --md-default-fg-color--light:var(--muted);
  --md-default-fg-color--lighter:#8a9ba1;
  --md-default-fg-color--lightest:var(--line);
  --md-primary-fg-color:var(--bg);
  --md-primary-bg-color:var(--ink);
  --md-accent-fg-color:var(--accent);
  --md-accent-fg-color--transparent:rgba(14,124,107,.10);
  --md-typeset-color:var(--body);
  --md-typeset-a-color:var(--accent);
  --md-code-bg-color:var(--card);
  --md-code-fg-color:var(--ink);
  --md-admonition-bg-color:var(--card);
  --md-footer-bg-color:var(--card);
  --md-footer-bg-color--dark:var(--bg);
  --md-footer-fg-color:var(--muted);
  --md-footer-fg-color--light:var(--muted);
  --md-footer-fg-color--lighter:#8a9ba1;
  --md-typeset-table-color:var(--line);
  --md-typeset-kbd-color:var(--card);
  --md-text-font:var(--sans);
  --md-code-font:var(--mono);
}
[data-md-color-scheme="slate"] {
  --bg:#0f181c; --card:#17242a; --ink:#f2f4f3; --body:#cfdad6; --muted:#8ea3a0;
  --accent:#3ecfa8; --mint:#3ecfa8; --line:#243239;
  --term-bg:#101a1f; --term-fg:#d9e6e1;

  --md-default-bg-color:var(--bg);
  --md-default-fg-color:var(--body);
  --md-default-fg-color--light:var(--muted);
  --md-default-fg-color--lighter:#6c8280;
  --md-default-fg-color--lightest:var(--line);
  --md-primary-fg-color:var(--bg);
  --md-primary-bg-color:var(--ink);
  --md-accent-fg-color:var(--accent);
  --md-accent-fg-color--transparent:rgba(62,207,168,.12);
  --md-typeset-color:var(--body);
  --md-typeset-a-color:var(--accent);
  --md-code-bg-color:var(--card);
  --md-code-fg-color:var(--term-fg);
  --md-admonition-bg-color:var(--card);
  --md-footer-bg-color:var(--card);
  --md-footer-bg-color--dark:var(--bg);
  --md-footer-fg-color:var(--muted);
  --md-footer-fg-color--light:var(--muted);
  --md-footer-fg-color--lighter:#6c8280;
  --md-typeset-table-color:var(--line);
  --md-typeset-kbd-color:var(--card);
}

body{font-family:var(--sans)}
.md-typeset{font-size:.82rem;line-height:1.62}
.md-typeset h1,.md-typeset h2,.md-typeset h3{color:var(--ink);letter-spacing:-.01em}

/* the header, like the landing page's: sticky, translucent, a hairline under it */
.md-header{background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line);box-shadow:none;color:var(--ink)}
.md-header__title{display:none}
.md-header__button.md-logo{padding:.4rem .6rem}
.md-header__button.md-logo img,.md-header__button.md-logo svg{display:none}
/* the brand, as the landing page draws it */
.ham-brand{display:inline-flex;align-items:center;gap:11px;color:var(--ink);white-space:nowrap}
.ham-brand img{width:30px;height:30px;display:block;border-radius:7px}
.ham-brand b{font-weight:700;font-size:.98rem;letter-spacing:-.01em}
.ham-brand b span{color:var(--accent);font-weight:400}
.md-search__form{background:var(--card);border:1px solid var(--line);border-radius:8px}
.md-search__input{color:var(--ink)}
.md-search__input::placeholder{color:var(--muted)}

/* navigation */
.md-sidebar .md-nav__title{color:var(--muted);font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;font-size:.62rem;background:transparent;box-shadow:none}
.md-nav--primary .md-nav__title{background:transparent}
.md-nav__item--section>.md-nav__link{color:var(--muted);font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;font-size:.62rem}
.md-nav__link{color:var(--body)}
.md-nav__item .md-nav__link--active,.md-nav__link:hover{color:var(--accent)}

/* content */
.md-typeset a{color:var(--accent)} .md-typeset a:hover{text-decoration:underline}
.md-typeset code{background:var(--card);border:1px solid var(--line);border-radius:5px;padding:.1em .35em;font-size:.86em;color:var(--ink)}
.md-typeset pre>code{border:0;padding:0;background:transparent;color:var(--term-fg)}
.md-typeset .highlight,.md-typeset pre{background:var(--term-bg);border-radius:10px;border:1px solid var(--line)}
.md-typeset .highlight code{background:transparent}
.md-typeset table:not([class]){font-size:.78rem;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.md-typeset table:not([class]) th{background:var(--card);color:var(--ink);font-weight:600}
.md-typeset img{border-radius:10px;border:1px solid var(--line)}
.md-typeset .admonition,.md-typeset details{border-left-width:3px;border-radius:9px;background:var(--card);box-shadow:none;font-size:.78rem}
.md-typeset .md-button{border:1px solid var(--line);color:var(--ink);border-radius:9px;background:var(--card)}
.md-typeset .md-button--primary{background:var(--accent);color:#fff;border-color:var(--accent)}
[data-md-color-scheme="slate"] .md-typeset .md-button--primary{color:#0f181c}
.md-footer{border-top:1px solid var(--line)}
.md-footer-meta{background:var(--bg)}
