body {
    padding: 1rem;
    max-width: 50rem;
    margin: 0 auto;
    font-family: -apple-system, BlinkMacSystemFont, avenir next, avenir, segoe ui, helvetica neue, Adwaita Sans, Cantarell, Ubuntu, roboto, noto, helvetica, arial, sans-serif;
    line-height: 1.5;
    border-top: none;
    background-color: #000;
    color: #fff;
    border: 1px solid #333;
}

pre,
code {
    font-family: Menlo, Consolas, Monaco, Adwaita Mono, Liberation Mono, Lucida Console, monospace;
}

code {
    background: #1a1a1a;
    padding: 0.1em 0.35em;
    border-radius: 3px;
    font-size: 0.9em;
}

a {
    color: #007bff;
}

table {
    border-collapse: collapse;
    width: 100%;
    margin: 1.5rem 0;
    font-size: 0.9rem;
}

th, td {
    border: 1px solid #444;
    padding: 0.4rem 0.7rem;
    text-align: left;
}

th {
    background: #1a1a1a;
}

pre {
    background: #111;
    padding: 1rem;
    overflow-x: auto;
    border-left: 3px solid #444;
}

.note {
    font-style: italic;
    color: #aaa;
    font-size: 0.9rem;
}

h2 { margin-top: 2.5rem; }
h3 { margin-top: 1.8rem; }

/* Syntax highlighting token classes */
.k  { color: #569cd6; } /* keywords: class, function, public, return, new, foreach, for */
.t  { color: #4ec9b0; } /* types and class names */
.v  { color: #9cdcfe; } /* variables ($foo, register names) */
.f  { color: #dcdcaa; } /* function / method names */
.s  { color: #ce9178; } /* strings */
.n  { color: #b5cea8; } /* numbers and numeric literals */
.cm { color: #608b4e; } /* comments */
.g  { color: #808080; } /* brackets and punctuation that recedes */
.p  { color: #d4d4d4; } /* plain punctuation */
