html, body { height: 100%; box-sizing: border-box; } body { height: 100%; margin: 0 2rem; box-sizing: border-box; } main { margin: 0 auto; padding: 1rem 0; max-width: 768px; } header { margin-block-end: 3rem; } footer { margin-block-start: 3rem; margin-block-end: 2rem; } h1, h2 { margin: 1rem 0; } h3, h4, h5, h6, p { margin: 0.5rem 0; } /* i hate styling this element */ hr { border: none; background-color: currentColor; color: inherit; height: 1px; margin: 2em; } li { margin: 0.5rem 0; } section p { white-space: pre-line; } details summary { list-style-type: none; } summary::after { cursor: pointer; content: "(?)"; margin-left: 0.5ch; opacity: 0.5; text-decoration: underline dotted; } summary:hover::after { opacity: 0.4; } details[open] summary::after { content: "(v)"; } input[readonly], textarea[readonly] { opacity: 0.5; } input, textarea, button { background-color: transparent; color: inherit; border: 1px solid currentColor; padding: 4px 8px; font: inherit; } input[type=submit], input[type=reset], input[type=button], button { border: 2px solid currentColor; cursor: pointer; padding: 8px 16px; } input[type=submit]:hover, input[type=reset]:hover, input[type=button]:hover, a:hover, button:hover { opacity: 0.8; } a { color: currentColor; font-weight: 500; }