:root { color-scheme: light dark; }

* { box-sizing: border-box; }

body {
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  line-height: 1.55;
  color: #1b1f23;
  background: #fdfdfd;
}

main {
  max-width: 60rem;
  margin: 0 auto;
  padding: 1.25rem 1rem 3rem;
}

h1, h2, h3 { line-height: 1.25; margin-top: 1.6em; }
h1 { font-size: 1.6rem; }
h2 { font-size: 1.3rem; }

a { color: #0b57d0; }
a:hover { text-decoration: none; }

.topnav {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
  align-items: center;
  padding-bottom: .6rem;
  border-bottom: 1px solid #e3e6ea;
  margin-bottom: 1rem;
  font-size: .95rem;
}
.topnav .raw { margin-left: auto; }

.markdown p { overflow-wrap: anywhere; }

.markdown code {
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
  font-size: .9em;
  background: #f0f1f3;
  border: 1px solid #e1e3e6;
  border-radius: 4px;
  padding: .1em .3em;
}

.markdown pre {
  background: #f6f7f9;
  border: 1px solid #e1e3e6;
  border-radius: 8px;
  padding: .8rem 1rem;
  overflow-x: auto;
}

.markdown pre code {
  background: none;
  border: 0;
  padding: 0;
  font-size: .88em;
  white-space: pre-wrap;      /* wrap the very long prompt lines ... */
  overflow-wrap: anywhere;
  word-break: break-word;
}

.markdown table {
  width: 100%;
  border-collapse: collapse;
  margin: 1rem 0;
  display: block;             /* scroll tables instead of overflowing */
  overflow-x: auto;
}
.markdown th, .markdown td {
  border: 1px solid #d7dade;
  padding: .4rem .6rem;
  text-align: left;
  white-space: nowrap;
}
.markdown th { background: #f2f3f5; }

.markdown ul, .markdown ol { padding-left: 1.4rem; }

footer {
  margin-top: 2.5rem;
  padding-top: 1rem;
  border-top: 1px solid #e3e6ea;
  color: #57606a;
  font-size: .85rem;
  overflow-wrap: anywhere;
}
footer code { font-size: .8em; }

.files { list-style: none; padding: 0; }
.files li {
  border: 1px solid #e1e3e6;
  border-radius: 8px;
  padding: .8rem 1rem;
  margin: .8rem 0;
}
.files .name { font-weight: 600; }
.files .links { margin: .3rem 0; }
.files .meta { color: #57606a; font-size: .82rem; overflow-wrap: anywhere; }

@media (prefers-color-scheme: dark) {
  body { color: #e6e9ec; background: #16181b; }
  a { color: #8ab4f8; }
  .topnav, footer { border-color: #2c3036; }
  .markdown code { background: #24272c; border-color: #34383f; }
  .markdown pre { background: #1f2226; border-color: #34383f; }
  .markdown th { background: #23262b; }
  .markdown th, .markdown td { border-color: #34383f; }
  .files li { border-color: #2c3036; }
  footer, .files .meta { color: #9aa4af; }
}