@font-face { font-family: 'Maven Pro'; font-display: swap; src: local('Maven Pro'), url('../fonts/MavenPro/MavenPro-VariableFont_wght.ttf') format('truetype'); } @font-face { font-family: 'Oxygen Mono'; font-display: swap; src: local('Oxygen Mono'), url('../fonts/OxygenMono/OxygenMono-Regular.ttf') format('truetype'); } :root { --accent-a: #008080; --accent-b: #800000; --text: #000000; --gradient: linear-gradient(45deg, #800000 10%, #008080 90%); --background: #ffffff; --pre-bg: #e8edf2; } @media (prefers-color-scheme: dark) { :root { --accent-a: #7acccc; --accent-b: #ff0080; --text: #ffffff; --gradient: linear-gradient(45deg, #ff0080 10%, #7acccc 90%); --background: #222222; --pre-bg: #403f3f; } } body { min-height: 100vh; background-color: var(--background); font-family: 'Maven Pro'; box-sizing: border-box; padding: 2ch 1ch; display: grid; grid-template-columns: 1fr 8rem 50rem 16rem 1fr; grid-template-rows: 1fr auto 1fr; justify-content: center; align-items: start; counter-reset: sidenote-counter; } a, a:visited, main > label { color: var(--accent-a); text-decoration: none; } main a:hover:not(nav a), footer > a, main > label:hover { color: var(--accent-b); } body > header { grid-row: 2; grid-column: 2; writing-mode: sideways-rl; border-image: var(--gradient) 1; border-right-color: var(--accent-a); border-right-style: solid; border-right-width: 5px; padding-bottom: 1rem; position: sticky; top: 2ch; } body > header > a > h1 { background: var(--gradient); -webkit-background-clip: text; -webkit-text-fill-color: transparent; color: var(--accent-b); font-size: 4rem; text-align: left; height: fit-content; } body > main { grid-row: 2; grid-column: 3; padding-left: 1rem; line-height: 1.2; max-width: 50rem; align-self: center; color: var(--text); font-size: 1.2rem; } nav a:hover { text-decoration: underline; } nav > footer { padding-top: 1ch; font-size: 1rem; color: var(--accent-b); } input[type="checkbox"] { display: none; } #shownav + label { display: none; width: 100%; text-align: right; } #shownav + label + nav { display: block; text-align: left; float: right; clear: right; width: 15rem; margin-right: -16rem; margin-bottom: 1em; } #shownav:checked + label + nav { display: block; } nav > ul { font-size: 2.4rem; color: var(--accent-a); } #shownav + label + nav > ul { font-size: 2rem; } label[for="shownav"]::before { content: "∨" } #shownav:checked + label[for="shownav"]::before { content: "∧" } #title, #meta, #abstract { text-align: center; padding-top: 1rem; padding-bottom: 1rem; } #abstract { font-size: 1rem; font-style: italic; } .metainfo { font-size: 1rem; text-align: right; } main h1 { font-size: 3.2rem; padding-top: 1rem; padding-bottom: 1rem; } main h2 { font-size: 2.8rem; padding-top: 1rem; padding-bottom: 1rem; } main h3 { font-size: 2.6rem; padding-top: 1rem; padding-bottom: 1rem; } main h4 { font-size: 2.4rem; padding-top: 1rem; padding-bottom: 1rem; } main h5 { font-size: 2.2rem; padding-top: 1rem; padding-bottom: 1rem; } article > p { padding-top: 1rem; padding-bottom: 1rem; text-align: justify; } main article p { text-indent: 2rem; } main dl dt { font-weight: bold; } main dl dd { text-align: justify; padding-left: 2rem; padding-bottom: 0.5rem; } main em { font-style: italic; } code { font-family: 'Oxygen Mono'; } pre { padding: 1rem; background-color: var(--pre-bg); max-width: 100%; overflow: auto; border-radius: 1rem; } main img { margin-left: -2rem; /*remove text indent for img*/ width: 100%; } video { width: 100%; } .sidenote { font-size: 0.8rem; float: right; clear: right; width: 15rem; margin-right: -16rem; margin-bottom: 1em; } .sidenote-number { counter-increment: sidenote-counter; } label.sidenote-toggle:not(.sidenote-number) { display: none; } label.sidenote-toggle { display: inline; cursor: pointer; } .sidenote-number::after { content: counter(sidenote-counter); font-size: 0.7rem; vertical-align: super; } .sidenote-number ~ .sidenote::before { content: counter(sidenote-counter) ' '; font-size: 0.7rem; vertical-align: super; } .footnote-ref::before { content: '['; } .footnote-ref::after { content: ']'; } .footnote ol { counter-reset: fn-counter; padding-left: 2rem; } .footnote li { counter-increment: fn-counter; padding-bottom: 0.5rem; } .footnote li::marker { content: '[' counter(fn-counter) '] '; } .footnote p { text-indent: 0rem; } @media (max-width: 74rem) { body { grid-template-columns: 1fr 6rem calc(100vw - 9rem) 1fr; } label.sidenote-toggle:not(.sidenote-number) { display: inline; } .sidenote { display: none; } .sidenote-toggle:checked + .sidenote { display: block; margin: 0.5rem 5%; float: none; clear: both; width: 90%; } body > header > a > h1 { font-size: 3rem; } #shownav + label { display: block; } #shownav + label + nav { display: none; text-align: center; float: none; clear: none; width: auto; margin-right: 0rem; } }