html {
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
body {
  color: #DDD;
  background-color: #18191b;
  font-family: system-ui, sans-serif;
  font-size: 16px;
  line-height: 1.5;
  overflow-y: scroll;
  overflow-wrap: break-word;
  margin: 0;
}
.container {
  padding: 1rem;
  max-width: 760px;
  margin: 0 auto;
}
header {
  padding-bottom: 3rem;
}
footer {
  padding-top: 3rem;
  font-size: 0.9rem;
  color: #BBB;
}
main {
  display: block;
}
a {
  color: rgb(164, 206, 254);
  text-decoration: underline;
}
a:hover,
a:focus {
  color: rgb(164, 206, 254);
  text-decoration: none;
}
footer a {
  color: rgba(222, 226, 230, 0.75);
}

/* Headings */
h1, h2, h3, h4, h5 {
  line-height: 1.15;
}
h1 {
  font-size: 2.5rem;
  margin-top: 0;
}
h2 {
  font-size: 2rem;
}
h3 {
  font-size: 1.75rem;
}
h4 {
  font-size: 1.5rem;
}
h5 {
  font-size: 1.25rem;
}
h6 {
  font-size: 1rem;
}
h2, h3, h4, h5, h6 {
  margin: 3rem 0 1.5rem;
}
/* whitespace on all block elements */
p, ul, ol, table, blockquote, pre, img, figure, .alert {
  margin: 1.5rem 0;
}
ul, ol {
  padding: 0 0 0 1.5rem;
}
b,
strong {
  font-weight: bolder;
}
ul {
  list-style-type: '- ';
}
li {
  margin: 0.75rem 0;
}
.text-small,
small {
  font-size: 0.9em;
}
dt {
  font-weight: bold;
}
dd {
  margin-bottom: 0.75rem;
}
sub,
sup {
  font-size: 0.8em;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
hr {
  box-sizing: content-box;
  overflow: visible;
  margin: 3rem 0;
  border: 0;
  height: 1px;
  background: #444;
}
abbr {
  font-size: 0.9em;
  font-weight: bold;
  color: #555;
  text-transform: uppercase;
}
abbr[title] {
  cursor: help;
  border-bottom: 1px dotted #e5e5e5;
}
/* Code */
code,
pre {
  font-family: Menlo, Consolas, Monaco, Liberation Mono, Lucida Console, monospace;
}
code {
  font-size: 0.9rem;
  background-color: hsl(210, 15%, 22%);
  color: hsl(219, 28%, 88%);
}
pre {
  display: block;
}
pre code {
  display: block;
  color: inherit;
  background-color: hsl(210, 15%, 22%);
  color: hsl(219, 28%, 88%);
  padding: 0.75rem;
  font-size: 0.9rem;
  border-radius: 3px;
  overflow-x: auto;
}
pre code.language-filename {
    margin-bottom: -1.5rem;
    border-bottom: 1px solid #666;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}
pre code.language-filename:before {
    content: "File: ";
}
blockquote {
  border-left: 5px solid #cce5ff;
  padding: 0.75rem 0.75rem 0.75rem 1.5rem;
}
img {
  height: auto;
  max-width: 100%;
  border: 0;
}
/* Tables */
table {
  width: 100%;
  border-collapse: collapse;
}
td,
th {
  padding: 3px 6px;
  border: 1px solid #222;
  text-align: left;
}
tr:nth-child(odd) td,
tr:nth-child(odd) th {
  background-color: #222;
}
.site-header ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.site-header li {
  display: block;
  margin: 0;
}
.site-header a {
  display: inline-block;
  color: #e1e1e1;
  font-weight: bold;
  padding: 0 0 0.25rem 0;
  margin-right: 0.5rem;
}
.site-header a:hover,
.site-header a:focus {
  color: white;
}
.site-header a.active {
  color: white;
  text-decoration: none;
}

/* alerts */
.alert {
  padding: 0.75rem 0.75rem 0.75rem 1.5rem;
  color: #004085;
  background-color: #cce5ff;
  border: 1px solid #b8daff;
  border-radius: 0.25rem;
}
.alert a {
  color: #004085;
  font-weight: bold;
}

.h5 { font-size: 1.25rem; }
.h6 { font-size: 1rem; }
.list-unstyled { list-style: none !important; }
.m-0 { margin: 0 !important; }
.p-0 { padding: 0 !important; }
.mt-0 { margin-top: 0 !important; }
.mb-0 { margin-bottom: 0 !important; }
.mb-1 { margin-bottom: 0.25rem !important; }
.mb-2 { margin-bottom: 0.5rem !important; }
.mb-3 { margin-bottom: 1rem !important; }
.mb-4 { margin-bottom: 1.5rem !important; }
.mb-5 { margin-bottom: 3 rem !important; }
.text-muted { color: rgba(224, 224, 224, 0.8); }

blockquote *:first-child,
.alert p:first-child {
  margin-top: 0;
}

blockquote *:last-child,
.alert p:last-child {
  margin-bottom: 0;
}


@media (min-width: 576px) {
  .site-header li {
    display: inline-block;
  }
  .site-header a {
    padding: 0 0.25rem 0 0;
  }
}

.mb-4 { margin-bottom: 1.5rem; }
.mb-5 { margin-bottom: 3rem; }
.me-1 { margin-right: 0.25rem; }

@media (min-width: 768px) {
  .container {
    padding: 1.5rem;
  }

  footer {
     display: flex;
     justify-content: space-between;
  }
}
