html { font-family: "PT Sans", Verdana, Helvetica, Arial, sans-serif; font-size: 16px; } pre { tab-size: 2; } @media (min-width: 40em) { html { font-size: 18px; } pre { tab-size: 4; } } @media (min-width: 80em) { html { font-size: 20px; } pre { tab-size: 4; } } html { --main-color: #111; --main-background-color: #fff; --header-color: #bed1f0; --underlay-color: #ddd; --accent-color: #1a73e8; --accent-hover-color: #33a3ff; --overlay-color: rgba(255, 255, 255, 0.9); --underlay-color: rgba(0, 0, 0, 0.2); } @media (prefers-color-scheme: dark) { html { --main-color: #e1e1e1; --main-background-color: #111; --header-color: #222; --overlay-color: #333; --accent-color: #01b9ff; --accent-hover-color: #80dcff; --overlay-color: rgba(0, 0, 0, 0.8); --underlay-color: rgba(255, 255, 255, 0.9); background-color: black; } } html { color: var(--main-color); background-color: var(--main-background-color); } body { margin: 0 0; padding: 0; /* Force the element to contain margins */ display: flow-root; min-height: 100vh; max-width: 48rem; margin: 0 auto; } header, h1, h2, h3, h4, h5, h6, p, pre, ul, dl, ol { margin: 1rem; } h1 span { display: inline-block; } header img { max-height: 50vh; } nav { margin: 1rem; font-size: 0.8rem; color: #aaa; } li { margin: 0.5rem 0; } ul.index { padding: 0; list-style: none; } li ul, li ol { margin: 0; margin-left: 1rem; } h1 { margin-bottom: 4rem; } h2 { margin-top: 6rem; } h3 { margin-top: 4rem; } h4, h5, h6 { margin-top: 2rem; } img { border: none; } a { color: var(--accent-color); text-decoration: none; } a:hover { color: var(--accent-hover-color); } pre { overflow: auto; } footer { text-align: right; font-size: 0.8rem; margin: 1rem; margin-top: 5rem; } details { margin: 1rem; border: 1px solid #aaa; border-radius: 0.5rem; padding: .5em .5em 0; } summary > * { margin: 0; display: inline-block; } summary { font-weight: bold; margin: -.5rem -.5rem 0; padding: .5rem; } details[open] { /* padding: .5rem; */ } details[open] summary { border-bottom: 1px solid #aaa; /* margin-bottom: .5rem; */ }