/* Color scheme. */ :root { --background-color: rgb(255, 253, 246); --text-color: #55423e; --link-color: #004ec8; --link-color-visited: #6c2380; --shaded-background: rgba(0, 0, 0, 5%); --border-1: rgba(0, 0, 0, 15%); --border-2: rgba(0, 0, 0, 30%); --hover: rgba(0, 0, 0, 15%); } @media (prefers-color-scheme: dark) { :root { --background-color: rgb(30, 40, 53); --text-color: #d7cdbf; --link-color: #93cce8; --link-color-visited: #f7afde; --shaded-background: #f7e5df0c; --border-1: #f7e5df26; --border-2: #f7e5df4d; } } /* Article-style layout. Center everything and give it a maximum width */ body { max-width: 1200px; margin-left: auto; margin-right: auto; display: flex; flex-direction: column; } main { padding: 0 16px; } @media screen and (max-width: 480px) { main { padding: 0 8px; } } /* Choose more pretty colors than vanilla HTML */ body { background-color: var(--background-color); color: var(--text-color); } /* Set up typography */ body, pre, code { font-family: 'RecVar', sans-serif; font-size: 14px; line-height: 1.5; } :root { --recursive-mono: 0.0; --recursive-casl: 1.0; --recursive-wght: 400; --recursive-slnt: -2.0; --recursive-crsv: 0.5; } *, *:before, *:after { font-variation-settings: "MONO" var(--recursive-mono), "CASL" var(--recursive-casl), "wght" var(--recursive-wght), "slnt" var(--recursive-slnt), "CRSV" var(--recursive-crsv); } h1 { --recursive-slnt: 0.0; --recursive-casl: 0.0; --recursive-wght: 900; font-size: 3.5rem; } h2 { --recursive-slnt: 0.0; --recursive-casl: 0.5; --recursive-wght: 800; font-size: 2rem; } h3 { --recursive-slnt: 0.0; --recursive-casl: 0.5; --recursive-wght: 700; font-size: 1.5rem; } pre, code { --recursive-mono: 1.0; --recursive-casl: 0.0; --recursive-slnt: 0.0; } b, strong { --recursive-wght: 700; } i, em { --recursive-slnt: -16.0; } /* Lay out elements a bit more compactly */ p, pre { margin: 6px 0; } h1, h2, h3 { margin: 12px 0; } /* Lay out elements a little less compactly (actually just have some blank space past the end) */ body { padding-bottom: 10rem; } /* Make code examples a little prettier by giving them visual separation from the rest of the page */ pre { padding: 8px 12px; margin: 12px 0; background-color: var(--shaded-background); border-radius: 8px; } /* And don't let code examples fly off and overflow the window */ pre { overflow-x: scroll; } /* Also don't let images get out of hand */ img { max-width: 100%; } /* Fix the default blue and ugly purple links normally have */ a { color: var(--link-color); } a:visited { color: var(--link-color-visited); } /* Make blockquotes a bit prettier */ blockquote { margin: 0; padding: 2px 12px; border-left: 4px solid var(--border-1px); } /* And tables. */ table { margin: 8px 0; } table, th, td { border: 1px solid var(--border-2); border-collapse: collapse; padding: 4px 10px; } th { background-color: var(--shaded-background); --recursive-wght: 700; --recursive-casl: 0.5; } /* Style the noscript box a little more prettily. */ .noscript { padding: 16px; background-color: #fde748; border: 1px solid #6c581c; border-radius: 8px; width: fit-content; margin-left: auto; margin-right: auto; } .noscript p { margin-top: 0; margin-bottom: 16px; } .noscript p:last-child { margin-bottom: 0; } /* Give the logo on the top some nicer looks */ nav { display: flex; } nav .logo { width: 48px; height: 48px; padding: 16px; display: block; opacity: 100%; color: var(--text-color); }