:root { --light-text: #181715; --light-bg: #ffffff; --light-border: #181715; --dark-text: #ffffff; --dark-bg: #181715; --dark-border: #ffffff; --hightlight: #72dec2; --border: var(--light-border); --text: var(--light-text); --bg: var(--light-bg); } @font-face { font-family: "Iosevka"; src: url('/font/iosevka-regular.woff') format('woff'); } * { box-sizing: border-box; margin: 0; padding: 0; word-break: break-all; } html, body { width: 100%; height: 100%; color: var(--text); background: var(--bg); } body { display: grid; grid-template: "header" 4rem "main" 1fr "footer" 4rem / 1fr; gap: 0; font-family: 'Iosevka'; } header, footer { display: flex; justify-content: space-between; align-items: center; padding: 0 3rem; } header { grid-area: header; border-bottom: 2px solid var(--border); } footer { grid-area: footer; border-top: 2px solid var(--border); } main { grid-area: main; padding: 3rem; font-size: 1.3rem; line-height: 2rem; max-width: 120ch; overflow: auto; } main h1 { margin-bottom: 2rem; font-weight: normal; font-size: 1.5em; font-variant-caps: small-caps; } a, a:visited { text-decoration: none; color: var(--text); } main a { text-decoration: underline; } a:hover, a:focus { background-color: var(--hightlight); text-decoration: line-through var(--text); } #logo { display: flex; flex-direction: row; gap: 0.5rem; font-size: 2.5rem; font-weight: bold; font-variant: small-caps; } #logo img { width: 3rem; } #theme-switcher { border: 3px solid var(--border); width: 1.5rem; height: 1.5rem; border-radius: 3rem; margin-left: auto; background: linear-gradient(90deg, var(--border) 0%, var(--border) 50%, var(--bg) 51%, var(--bg) 100%); } #theme-switcher:hover { border-color: var(--hightlight); background: linear-gradient(90deg, var(--hightlight) 0%, var(--hightlight) 50%, var(--bg) 51%, var(--bg) 100%); } .lang { font-size: 2rem; } #mesh { position: absolute; bottom: 4rem; right: 0; user-select: none; pointer-events: none; } .links { display: flex; gap: 2rem; } .links > a { border-radius: 100%; } .links > a > img { display: block; } #sections-button { display: none; } nav { font-variant: small-caps; display: flex; flex-direction: row; gap: 2rem; font-size: 2rem; } button { font-style: italic; font-weight: lighter; border: none; background: var(--bg); color: var(--text); margin: 0 2rem 0 0; cursor: pointer; } @media screen and (max-height: 860px), screen and (max-width: 1500px) { #mesh { display: none; } } @media screen and (max-width: 1160px) { nav { flex-direction: column; border: 2px solid var(--border); border-bottom: 0; border-left: 0; background-color: var(--bg); position: absolute; bottom: calc(4rem); left: 0; align-items: center; padding: 2rem 3rem; display: none; } #sections-button { display: block !important; } } @media screen and (max-width: 540px) { #logo { font-size: 2.2rem; } main { padding: 1rem; } .links { gap: 1.2rem; } .links a { width: 1.5rem; } header, footer { padding: 0 1rem; } #theme-switcher { margin-right: 1rem; } }