:root { --paper-color: #ffffea; --light-yellow: #eeee9e; --dark-yellow: #99994c; --light-blue: #eaffff; --dark-blue: #8888cc; --light-gray: #eee; --dark-gray: #888; --pagewidth: 60rem; --textwidth: 45rem; --parspace: .6em; --letter-page-width: 8.5in; --letter-page-height: 11in; } html { background: var(--light-gray); } body { margin: 1rem auto; padding: 1rem .5rem; max-width: var(--pagewidth); border: 1px solid var(--dark-yellow); box-shadow: 2px 2px var(--dark-yellow); } body { font-family: 'IBM Plex Serif', Charter, 'Bitstream Charter', 'Sitka Text', serif; font-weight: 400; line-height: 1.35em; text-rendering: optimizeLegibility; color: #000; background: #fff; } #content { margin: 0 auto; max-width: var(--textwidth); } header { margin-bottom: 2rem; } nav ul { display: grid; grid-template-columns: repeat(auto-fit, minmax(6.5rem, 1fr)); gap: .4rem .8rem; } nav li { display: inline-block; } nav a { display: inline-block; box-sizing: border-box; width: 100%; text-align: center; vertical-align: middle; white-space: nowrap; color: #000; border: .1rem solid var(--dark-blue); box-shadow: .1rem .1rem var(--dark-blue); } li.nav-active a { font-weight: 600; box-shadow: .2rem .2rem var(--dark-yellow); } li.nav-ancestor a { font-weight: 600; } nav a:active { box-shadow: 0 0; text-decoration: none; } p { text-align: justify; hyphens: auto; text-justify: inter-word; margin-top: 0; margin-bottom: var(--parspace); } a { font-weight: 450; text-decoration: none; border: 1px solid transparent; } a:hover { text-decoration: none; color: #000; background: var(--light-blue); } a:active { text-decoration: none; color: #000; text-decoration: underline; background: var(--light-blue); } .title { font-size: 1.4rem; } h1 { font-size: 1.15rem; font-weight: 700 } h2 { font-size: 1.10rem; font-weight: 600; } h3 { font-size: 1.05rem; font-weight: 500; } h1, h2, h3 { margin-block-start: .8em; margin-block-end: .4em; } table { border-collapse: collapse; text-align: left; margin-bottom: 1rem; border-left: .2rem solid var(--dark-blue); box-shadow: .2rem .2rem var(--light-gray); } thead tr { background: var(--light-blue); border: 1px solid #000; } tbody tr { border: 1px solid var(--dark-gray); } th, td { padding: .125em .4em; vertical-align: middle; } th { font-weight: 500; } footer { margin-top: 2rem; } footer hr { margin-top: 0; margin-bottom: .4em; } footer p { font-size: 90%; text-align: left; margin-bottom: .1em; } footer :last-child { margin-bottom: 0; } hr { border-top: .1rem solid #000; margin-top: 0; margin-bottom: 1em; } blockquote { width: 80%; margin: 0 auto var(--parspace) auto; } cite { display: block; text-align: right } img { display: block; margin: auto; } div { margin-bottom: var(--parspace); } ul { list-style: none; margin: 0; margin-block: 0 1em; padding: 0; } main li { padding-left: 1em; position: relative; } main li::before { content: "•"; position: absolute; left: 0; } iframe { width: 100%; height: 85vh; border: none; } code { font-family: 'IBM Plex Mono', 'Source Code Pro', monospace; font-size: .9em; } .mono { font-family: 'IBM Plex Mono', 'Source Code Pro', monospace; font-size: .9em; }