@import url("/assets/css/fonts.css"); :root { --fg-low: oklch(70% 0.01368 253.09); --fg: oklch(80% 0.01368 253.09); --fg-high: oklch(90% 0.01368 253.09); --bg-lowest: oklch(15% 0.01368 253.09); --bg-low: oklch(17.5% 0.01368 253.09); --bg: oklch(20% 0.01368 253.09); --bg-high: oklch(22.5% 0.01368 253.09); --bg-highest: oklch(25% 0.01368 253.09); --border: oklch(35% 0.023 253.09); --border-variant: oklch(30% 0.023 253.09); --red: oklch(80% 0.15765 24.728); --red-bright: oklch(90% 0.15765 24.728); --orange: oklch(80% 0.139 45.216); --orange-bright: oklch(90% 0.139 45.216); --yellow: oklch(80% 0.12758 76.402); --yellow-bright: oklch(90% 0.12758 76.402); --green: oklch(80% 0.11211 147.63); --green-bright: oklch(90% 0.11211 147.63); --cyan: oklch(80% 0.09919 181.49); --cyan-bright: oklch(90% 0.09919 181.49); --blue: oklch(80% 0.09994 249.58); --blue-bright: oklch(90% 0.09994 249.58); --purple: oklch(80% 0.09923 296.61); --purple-bright: oklch(90% 0.09923 296.61); --pink: oklch(80% 0.06662 9.2146); --pink-bright: oklch(90% 0.06662 9.2146); --border-radius: 5px; --border-radius-big: calc(var(--border-radius) * 4); --border-width: 1px; --padding: 5px; --padding-big: 10px; --easing: cubic-bezier(0.2, 0.0, 0, 1.0); --arrow-size: 1em; } body { font-family: "Aporetic", "Aporetic Fallback"; background-color: var(--bg-lowest); background-repeat: repeat; color: var(--bg); display: flex; min-height: 100vh; padding: calc(var(--padding-big) * 2); padding-bottom: 0; box-sizing: border-box; position: relative; scroll-behavior: smooth; flex-direction: column; } #triangles { content: ""; /* cos(22.5deg) sin(22.5deg) */ width: calc(100vw * 0.92387953 + 100vh * 0.38268343); height: calc(100vh * 0.92387953 + 100vw * 0.38268343); position: fixed; left: 50%; top: 50%; z-index: 2; background-image: url("/assets/triangle.svg"); opacity: 0.075; transform: translate(-50%, -50%) rotate(22.5deg); animation: scroll 16s linear infinite; } @media screen and (prefers-reduced-motion: reduce) { #triangles { animation: none; } } @keyframes scroll { to { background-position: -96px 0; /* svg size */ } } .subtle { color: var(--fg-low); } main { flex-grow: 1; line-height: 1.4; padding: calc(var(--padding-big) * 2); display: flex; justify-content: center; box-sizing: border-box; background-color: var(--yellow); border-radius: var(--border-radius-big); overflow: hidden; text-wrap: pretty; } main > div { max-width: 70%; width: 70%; z-index: 3; position: relative; } nav { padding-bottom: 0; position: relative; } nav > ul { display: flex; gap: calc(var(--padding) + var(--border-radius) * 2); padding-left: calc(var(--border-radius-big) + var(--padding-big)); } nav .tab { --color: var(--bg); display: block; color: var(--fg); border-radius: var(--border-radius) var(--border-radius) 0 0; background-color: var(--color); position: relative; transition: background-color 0.2s var(--easing); } nav .tab:not(.active) { z-index: 3 } nav .tab:hover { --color: var(--bg-high); } nav .tab.active { --color: var(--yellow); color: var(--bg); } nav .tab > a { padding: var(--padding-big); display: block; color: inherit; text-decoration: none; z-index: 3; position: relative; } nav .tab > a:focus-visible { border-radius: var(--border-radius) var(--border-radius) 0 0; outline: var(--blue) solid calc(var(--border-radius) + 1px); outline-offset: 0; } nav .tab > a > div { background-color: currentColor; width: 1.25em; height: 1.25em; mask-size: cover; display: none; } @media (max-width: 500px) { nav .tab > a > div { display: block; } nav .tab > a > span { display: none; } } footer { text-align: center; color: var(--fg); border-radius: var(--border-radius-big) var(--border-radius-big) 0 0; padding: var(--padding-big); font-size: 0.8em; position: relative; background-color: var(--bg-lowest); z-index: 3; } footer > div { display: flex; flex-direction: column; gap: var(--padding); } footer > div > div { line-height: 1.5; } footer > div > div > span:not(:last-of-type)::after { content: ""; border-left: calc(var(--border-width) * 1) solid var(--border); margin-left: var(--padding); margin-right: var(--padding); display: inline-block; vertical-align: baseline; height: 1cap; } footer a { color: var(--fg); } footer a:hover, footer a:focus { color: var(--yellow); } main a { color: inherit; } .wavy { font-size: 3em; } .wavy > div { display: inline-block; white-space: nowrap; }