*, *::before, *::after {
  box-sizing: border-box; }

html {
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
  color: #000;
  font-size: 16px;
  line-height: 1.35;
  scroll-behavior: smooth;
  font-weight: 100;
  -webkit-font-smoothing: antialiased; }

h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: .25rem; }

h1 {
  font-size: 2rem;
  -webkit-margin-before: 0.67em;
  -webkit-margin-after: 0.67em; }

a {
  text-decoration: none;
  color: blue;
  transition: color .25s ease-in-out; }
  a:hover {
    color: darkblue; }

ul {
  margin: 0;
  padding: 0;
  list-style: none; }

small {
  font-size: .75rem; }

body {
  margin: 0; }

nav {
  min-width: 18rem;
  padding: 1rem; }
  @media screen and (min-width: 40rem) {
    nav {
      position: fixed;
      padding: 2rem; } }

main {
  padding: 1rem; }
  @media screen and (min-width: 40rem) {
    main {
      margin-left: 16rem;
      padding: 2rem; } }

main > footer {
  margin-top: 6rem; }

nav a {
  font-weight: 700; }

.nav-title,
.nav-title h1 {
  display: inline-block;
  margin: 0; }

.nav-title,
.nav-page {
  padding: .25rem .5rem; }

.nav-title,
.nav-type {
  border-top: 1px solid #000;
  border-right: 1px solid #000;
  border-left: 1px solid #000; }

.nav-type:last-child,
.nav-items:not(:last-child),
.nav-page:not(:last-child) {
  border-bottom: 1px solid #000; }

.nav-type-header,
.nav-items li:not(:last-child) {
  border-bottom: 1px dashed #000; }

.nav-type-header {
  padding: .15rem .5rem;
  font-size: .85rem; }

.nav-items li {
  padding: .25rem .5rem .25rem 1rem;
  font-size: .85rem; }

.nav-items a {
  font-weight: 400; }

.page-header {
  display: flex;
  flex-direction: column;
  align-items: flex-start; }
  .page-header h1 {
    display: inline-block;
    margin: 0;
    padding: .25rem .5rem;
    border-top: 1px solid #000;
    border-right: 1px solid #000;
    border-left: 1px solid #000; }

.page-header-copy {
  width: 100%;
  max-width: 40rem;
  padding: .5rem .5rem 1.5rem;
  line-height: 1.2;
  border: 1px solid #000; }
  .page-header-copy h2 {
    font-weight: 400; }
  .page-header-copy *:last-child {
    margin-bottom: 0; }

.page-contents {
  max-width: 40rem;
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
  border-left: 1px solid #000; }
  .page-contents small {
    display: block;
    padding: .25rem .5rem .15rem;
    border-bottom: 1px dashed #000; }
  .page-contents ul {
    padding: .25rem .5rem .5rem; }

@media screen and (max-width: 44rem) {
  .page-contents div:not(:first-child) {
    border-top: 1px solid #000; } }

@media screen and (min-width: 56rem) {
  .page-contents {
    display: flex; }
  .page-contents div:not(:first-child) {
    border-left: 1px solid #000; }
  .page-contents div:nth-last-child(n+2),
  .page-contents div:nth-last-child(n+2) ~ div {
    width: 50%; }
  .page-contents div:nth-last-child(n+3),
  .page-contents div:nth-last-child(n+3) ~ div {
    width: 33.3333%; } }

.item-group {
  padding-top: 2rem; }

.item-group-name {
  max-width: 40rem;
  border: 1px solid #000; }
  .item-group-name h2 {
    display: inline-block;
    margin: 0;
    padding: .25rem .5rem;
    border-right: 1px solid #000; }

.item {
  padding-top: 2rem;
  max-width: 40rem; }
  .item h3 {
    display: inline-block;
    margin: 0;
    padding: .25rem .5rem;
    border-top: 1px solid #000;
    border-right: 1px solid #000;
    border-left: 1px solid #000; }
  .item p {
    margin: 0; }
  .item p + p {
    margin-top: .5rem; }
  .item small {
    display: block;
    padding: .25rem .5rem .15rem;
    border-top: 1px solid #000;
    border-bottom: 1px dashed #000; }

.item-body {
  border: 1px solid #000; }

.item header,
.item-params,
.item-returns {
  padding: .5rem .5rem .75rem; }

.item-examples pre {
  margin: 0;
  padding: .5rem;
  background-color: #ebebeb;
  white-space: pre-wrap;
  word-break: break-all; }

.page-body > div,
.page-body > pre {
  padding: .5rem;
  border: 1px solid #000; }

.page-body > div {
  max-width: 40rem; }

.page-body > pre {
  display: inline-block;
  margin: 0;
  background-color: #ebebeb;
  white-space: pre-wrap;
  word-break: break-all; }

.token.comment,
.token.prolog,
.token.doctype,
.token.cdata {
  color: slategray; }

.token.punctuation {
  color: #999; }

.namespace {
  opacity: .7; }

.token.property,
.token.tag,
.token.boolean,
.token.number,
.token.constant,
.token.symbol,
.token.deleted {
  color: #905; }

.token.selector,
.token.attr-name,
.token.string,
.token.char,
.token.builtin,
.token.inserted {
  color: #690; }

.token.operator,
.token.entity,
.token.url,
.language-css .token.string,
.style .token.string {
  color: #9a6e3a; }

.token.atrule,
.token.attr-value,
.token.keyword {
  color: #07a; }

.token.function,
.token.class-name {
  color: #DD4A68; }

.token.regex,
.token.important,
.token.variable {
  color: #e90; }

.token.important,
.token.bold {
  font-weight: bold; }

.token.italic {
  font-style: italic; }

.token.entity {
  cursor: help; }
