﻿:root{color-scheme:light dark;--page-width: 70ch;--line-height: 1.65;--space-block: 1.8rem;--radius: 1px;--font-heading: "Inclusive Sans", system-ui, sans-serif;--font-body: "Inter", system-ui, sans-serif;--font-mono: "Google Sans Code", ui-monospace, monospace;--font-size: 1.0625rem;--font-small: calc(var(--font-size) * 0.875);--bg: #f7f5fb;--text: #24212c;--link: #6f3fd6;--visited: #8f4a7a;--accent: var(--link);--muted: color-mix(in srgb, var(--accent) 15%, color-mix(in srgb, var(--text) 65%, var(--bg)));--surface: color-mix(in srgb, var(--accent) 7%, var(--bg));--code-bg: color-mix(in srgb, var(--text) 6%, color-mix(in srgb, var(--accent) 8%, var(--bg)));--border: color-mix(in srgb, var(--accent) 20%, var(--bg))}@media (prefers-color-scheme: dark){:root{--bg: #17141f;--text: #e8e4f2;--link: #b399ff;--visited: #e0a3c2;--surface: color-mix(in srgb, var(--accent) 13%, var(--bg));--code-bg: color-mix(in srgb, #000 8%, color-mix(in srgb, var(--accent) 6%, var(--bg)));--border: color-mix(in srgb, var(--accent) 30%, var(--bg));--muted: color-mix(in srgb, var(--accent) 10%, color-mix(in srgb, var(--text) 80%, var(--bg)))}}*,*::before,*::after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;background-color:var(--bg)}body{margin-inline:auto;padding:1.25rem;max-width:var(--page-width);font-family:var(--font-body);font-size:var(--font-size);line-height:var(--line-height);overflow-wrap:break-word;color:var(--text);background-color:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}p{margin-block:1.2em}h1,h2,h3,h4{margin-block:var(--space-block) .5em;line-height:1.3;font-family:var(--font-heading)}h1{font-size:1.8rem}h2{font-size:1.5rem}h3{font-size:1.3rem}h4{font-size:1.2rem}a{color:var(--link);text-decoration:none}main a:visited{color:var(--visited)}@media (hover: hover){a:hover{text-decoration:underline;text-underline-offset:.2em}}ul,ol{padding-inline-start:1.5rem}li,li>ul,li>ol{margin-block:.2em}hr,img,video,pre,blockquote{margin-block:var(--space-block)}hr{border:none;border-block-start:1px solid var(--border)}img,video{display:block;max-width:100%;height:auto;border-radius:var(--radius)}blockquote{margin-inline:0;padding-block:0;padding-inline-start:1.2em;font-style:italic;color:var(--muted);border-inline-start:3px solid var(--accent)}blockquote p{margin-block:0}pre{padding-block:1rem;padding-inline:1.2rem;overflow-x:auto;font-family:var(--font-mono);font-size:var(--font-small);line-height:1.5;tab-size:2;background-color:var(--code-bg) !important;border:0px solid var(--border);border-radius:var(--radius)}code{padding-block:.15em;padding-inline:.3em;font-family:var(--font-mono);font-size:var(--font-small);overflow-wrap:anywhere;background-color:var(--surface);border-radius:var(--radius);line-height:1}pre code{padding:0;background:none;border-radius:0;font-size:inherit;overflow-wrap:normal}.giallo-l{display:inline-block;min-height:1lh;width:100%}pre code .giallo-l,pre code span{background-color:rgba(0,0,0,0) !important}mark{padding-inline:.15em;color:var(--bg);background-color:color-mix(in srgb, var(--accent) 60%, var(--text));border-radius:2px}table{width:100%;border-collapse:collapse;font-size:var(--font-small)}th,td{padding-block:.5em;padding-inline:.75em;border:1px solid var(--border);text-align:start}th{background-color:var(--surface);font-weight:700}time{font-family:var(--font-mono);font-size:calc(var(--font-small)*.95);font-style:normal;color:var(--muted)}.footnotes{margin-block-start:var(--space-block);padding-block-start:1.2rem;border-block-start:1px solid var(--border);font-size:var(--font-small);color:var(--muted)}.footnotes li{margin-block:.4em}.footnotes-list li p{margin-block:.2em}.footnote-backref{text-decoration:none}header nav p,main>:first-child,.post main>h1+p{margin-block-start:0}.post main>h1{margin-block-end:0}:root{--avatar-url: url("/images/avatar.png");--avatar-size: 3.3rem;--avatar-radius: 50%}header{display:grid;grid-template-columns:auto 1fr;align-items:center;column-gap:1rem;margin-block:0 var(--space-block)}header::before{content:"";grid-column:1;grid-row:1/3;width:var(--avatar-size);aspect-ratio:1;background:var(--avatar-url) center/cover no-repeat;border-radius:var(--avatar-radius)}header a.title{display:inline-block;justify-self:start;color:var(--text);text-decoration:none}.title h1{margin-block:0;font-size:1.5rem}header nav p{margin-block:0}header nav a{margin-inline-end:.5em}.blog-posts{margin-block-end:var(--space-block);padding:0;list-style:none}.blog-posts li{display:flex;align-items:baseline}.blog-posts li a{margin-inline-end:auto}.blog-posts li span{flex:0 0 7.5rem;font-size:var(--font-small);color:var(--muted);white-space:nowrap}p.tags{margin-block:var(--space-block)}p.tags a,p.tags a:visited{margin-inline-end:.5em;font-size:var(--font-small);color:var(--muted)}#upvote-form>small{display:block;margin-block-start:var(--space-block)}#upvote-form .upvote-button{display:inline-flex;align-items:center;padding:0;border:0;background:none;font-size:1rem;color:var(--muted) !important;cursor:pointer}#upvote-form .upvote-button svg{display:none}#upvote-form .upvote-count::before{content:"♡";display:inline-block;margin-inline-end:.15em;font-family:system-ui,sans-serif;font-size:1.4rem;color:var(--link);vertical-align:-.12em;transition:transform .15s ease}@media (hover: hover){#upvote-form .upvote-button:not([disabled]):hover .upvote-count::before{transform:scale(1.15)}}#upvote-form .upvote-button[disabled]{opacity:.7;cursor:default}#upvote-form .upvote-button[disabled] .upvote-count::before{content:"♥"}footer{margin-block-start:var(--space-block);padding-block-start:1.2rem;text-align:left;font-size:var(--font-small);color:var(--muted)}footer p{margin-block:.1em;line-height:1.4}body.blog #searchInput{width:min(30rem,100%);margin-block:var(--space-block);padding-block:.65em;padding-inline:.85em;font:inherit;letter-spacing:inherit;appearance:none;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius)}body.blog #searchInput:focus-visible{outline:none;border-color:color-mix(in srgb, var(--link) 45%, var(--surface));box-shadow:0 0 0 3px color-mix(in srgb, var(--link) 18%, rgba(0,0,0,0))}@media (hover: hover){body.blog #searchInput:hover{border-color:color-mix(in srgb, var(--border) 60%, var(--text))}}body.blog #searchInput::placeholder{color:var(--muted)}.statuslog{display:grid;grid-template-columns:auto 1fr;gap:.3em 1em;max-width:34rem;margin-block:var(--space-block);margin-inline:auto;padding-block:1rem;padding-inline:1.1rem;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.statuslog::before{content:"Currently (updated 14 May)";display:block;grid-column:1/-1;margin-block-end:.35em;font-size:.72em;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.statuslog-emoji{font-size:2.7rem;line-height:1;align-self:start}.statuslog-content{font-size:var(--font-small);overflow-wrap:break-word}.statuslog-content>:first-child{margin-block-start:0}.statuslog-content>:last-child{margin-block-end:0}footer .statuslog{text-align:start}.hero img{aspect-ratio:21/9;object-fit:cover;border-radius:0;box-shadow:0;filter:saturate(0.6) contrast(.95);transition:filter .4s ease}@media (hover: hover){.hero img:hover{filter:saturate(1) contrast(1)}}.center{text-align:center;margin-inline:auto}.meta{font-size:var(--font-small);color:var(--muted)}.small{font-size:.85em}.divider{height:1px;margin-block:var(--space-block);background:color-mix(in srgb, var(--text) 22%, rgba(0,0,0,0))}.short-divider{width:20rem;height:1px;margin-block:var(--space-block);margin-inline:auto;background:color-mix(in srgb, var(--text) 22%, rgba(0,0,0,0))}.dots-divider{text-align:center;margin-block:var(--space-block);color:var(--muted);letter-spacing:.35em}.dots-divider::before{content:"• • •"}.note{display:block;padding-block:1rem;padding-inline:1.2rem;margin-block:var(--space-block);font-size:var(--font-small);border-inline-start:1px solid color-mix(in srgb, var(--text) 22%, rgba(0,0,0,0));background:color-mix(in srgb, var(--text) 4%, rgba(0,0,0,0))}.note>:first-child{margin-block-start:0}.note>:last-child{margin-block-end:0}.note-label{display:block;font-weight:bold;font-size:.8em;text-transform:uppercase;padding-block-end:.5em;color:var(--muted)}.pullquote{font-size:1.35em;line-height:1.4;text-align:center;margin-block:var(--space-block);padding-inline:1em;font-style:italic}