3 box-sizing: border-box;
4 scrollbar-gutter: stable both-edges;
10 --background: hsl(var(--hue), 17%, 98%);
11 --active-color-normal: hsl(var(--accent-hue), 10.94%, 95.67%);
12 --border-color-normal: hsl(var(--accent-hue), 6.88%, 37.06%);
14 --text-color-normal: hsl(var(--hue), 0%, 0%);
15 --secondary-color-normal: hsl(var(--hue), 0%, 10%);
17 --accent-color-normal: hsl(21, 78.65%, 34.9%);
19 color: var(--text-color-normal);
22 html[data-theme='dark'] {
25 --invert-percent: 100;
27 --background: hsl(var(--accent-hue), 27%, 10%);
28 --active-color-normal: hsl(var(--accent-hue), 15.46%, 19.02%);
29 --border-color-normal: hsl(var(--accent-hue), 6.88%, 37.06%);
31 --text-color-normal: hsl(var(--hue), 100%, 100%);
32 --secondary-color-normal: hsl(var(--hue), 0%, 90%);
33 --accent-color-normal: hsl(var(--accent-hue), 78.65%, 34.9%);
36 html.color-theme-in-transition,
37 html.color-theme-in-transition *,
38 html.color-theme-in-transition *:before,
39 html.color-theme-in-transition *:after {
40 transition: all 750ms !important;
41 transition-delay: 0 !important;
54 font-family: Helvetica, Arial, sans-serif;
58 color: var(--text-color-normal);
64 margin-block: 0.5rem 2rem;
66 background-color: var(--background);
74 grid-template-columns: repeat(auto-fit, minmax(20rem, 1fr));
81 background-color: var(--active-color-normal);
82 border-bottom: 2px solid var(--accent-color-normal);
83 border-radius: 0.5rem;
86 flex-direction: column;
88 overflow-wrap: break-word;
89 word-break: break-all;
94 .post-list article img {
98 border-radius: 0.25rem;
99 margin-bottom: 0.75rem;
102 .post-list article h2 {
104 margin-bottom: 0.5rem;
105 overflow-wrap: break-word;
109 .post-list .date-and-tags {
113 .post-list article p {
114 overflow-wrap: break-word;
118 .post-list article p.date, .post-list article .tags {
120 color: var(--secondary-color-normal);
121 margin-bottom: 0.5rem;
124 .post-list article .tags {
129 /* prevent .post-list from overflowing on very narrow viewports */
130 @media screen and (max-width: 25rem) {
132 grid-template-columns: 1fr;
151 @media screen and (max-width: 50rem) {
153 padding-inline: 1rem;
163 flex-direction: column;
174 gap: 0.5rem; /* space between label and list */
198 margin-block: 0.5rem;
217 .post-content img.float-left {
220 margin: 0 1rem 1rem 0;
223 .post-content img.float-right {
226 margin: 0 0 1rem 1rem;
229 .post-content .emphasised {
234 .post-content h1, .frontmatter h1 {
239 color: var(--text-color-normal);
243 .post-content::after {
249 /* disable floats on narrow screens */
250 @media screen and (max-width: 50rem) {
251 .post-content img.float-left,
252 .post-content img.float-right {
263 grid-template-columns: 1fr 1fr 1fr;
264 grid-column-gap: 15px;
279 border-bottom: 3px solid var(--accent-color-normal);
281 text-decoration: none;
286 text-transform: uppercase;
287 letter-spacing: 0.1rem;
292 /* stacked-alpha-video {
293 display: inline-block;
296 stacked-alpha-video video {
300 .is-hidden { opacity:0 !important; pointer-events:none; }
302 .fox-player { position: relative; width: var(--size, 80px); }
303 .ratio-1x1::before { content: ""; display: block; } /* square */
305 .fox-player > * { position: absolute; inset: 0; width: 100%; height: 100%; }
307 .fox-thumb { all:unset; cursor:pointer; display:block; z-index:2; }
308 .fox-thumb img { width:100%; height:100%; display:block; object-fit:cover; }
316 justify-content: flex-end;
329 text-decoration: none;
330 -webkit-text-decoration: none;
331 padding: 0.5rem 1rem;
332 transition: color 0.1s ease-in, background-color 0.1s ease-in;
333 text-transform: uppercase;
336 .nav ul li.current a {
341 text-decoration: underline;
344 .nav ul li.current a:hover {
345 text-decoration: none;
349 background-color: var(--background);
350 color: var(--text-color-normal);
353 @media screen and (max-width: 50rem) {
356 grid-template-columns: 1fr;
357 grid-template-rows: auto auto;
367 justify-content: flex-start;
368 padding-inline: 1rem;
371 text-decoration: underline;
381 border-top: 2pt solid var(--accent-color-normal);
387 justify-content: space-between;
409 vertical-align: middle;
414 .footer_right .footer_logo {
416 vertical-align: middle;