﻿@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:100;src:url(/fonts/ibm-plex-sans-latin-100-normal.woff2) format("woff2")}@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:200;src:url(/fonts/ibm-plex-sans-latin-200-normal.woff2) format("woff2")}@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:300;src:url(/fonts/ibm-plex-sans-latin-300-normal.woff2) format("woff2")}@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:400;src:url(/fonts/ibm-plex-sans-latin-400-normal.woff2) format("woff2")}@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:500;src:url(/fonts/ibm-plex-sans-latin-500-normal.woff2) format("woff2")}@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:600;src:url(/fonts/ibm-plex-sans-latin-600-normal.woff2) format("woff2")}@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:700;src:url(/fonts/ibm-plex-sans-latin-700-normal.woff2) format("woff2")}:root{color-scheme:light dark;--primary-fg-color: light-dark(#000, #fff);--primary-bg-color: light-dark(#f2f2f2, #222);--dim-text-color: light-dark(#333, #ccc);--nav-fg-color: light-dark(#333, #ccc);--nav-hl-color: light-dark(#000, #fff);--accent-color: #e70b73}*{margin:0}html,body{margin:0;padding:0}a{color:#df468e;color:var(--primary-fg-color);font-weight:300;text-underline-offset:max(.1em,2.5px);transition:color .25s ease-in-out}a:hover{color:var(--accent-color)}p{line-height:1.5;margin-bottom:2rem}body{font-family:"IBM Plex Sans",Arial,sans-serif;font-weight:200;font-size:1.3rem;color:var(--primary-fg-color);background-color:var(--primary-bg-color);height:100vh;display:flex;flex-direction:column}h1,h2,h3,h4,h5,h6{font-weight:500}h1{margin-bottom:2rem}h1{font-size:3rem;margin-bottom:2rem}h1:has(+.post-metadata){margin-bottom:0}h1+.post-metadata{display:block;margin-bottom:2rem}h1+.post-metadata .post-date+.post-date:before{display:inline-block;content:"•";margin-right:.25rem}h2{font-size:1.5rem;margin-bottom:1rem}pre+h2,ol+h2,ul+h2,p+h2{margin-top:3rem}h3{margin-bottom:1rem}.content{width:100%;max-width:720px;margin:auto;padding:0 2rem}body>header{display:flex;color:var(--primary-fg-color);padding:2rem;margin:0 0 4rem 0}body>header>.content{display:flex;justify-content:space-between}body>header a{text-decoration:none}body>header #home{font-weight:700}body>header nav{display:flex;flex-wrap:wrap;flex-direction:row;justify-content:center}body>header nav a{display:block;margin:0 .75rem;font-weight:400}body>main{flex:1}body>footer{margin-block-start:5rem;padding:2.5rem 0;border-block-start:1px solid var(--primary-fg-color)}body>footer nav{display:flex;flex-direction:row;gap:1rem;list-style:none;margin:0;padding:0}.post-date{color:var(--dim-text-color)}#container{display:grid;max-width:1080px;gap:2rem;grid-template-columns:auto 270px;margin:0 auto}#sidebar{position:sticky;top:0;padding-top:10rem;height:200px}#sidebar .avatar{display:block;max-width:50%;margin:0 auto 2rem auto}#sidebar nav{text-align:center}article a.content-type{display:block;margin-block-end:1rem;color:var(--accent-color);text-transform:uppercase;text-decoration:none;font-weight:500;font-size:16px}article a.content-type:hover{text-decoration:underline}article img{display:block;max-width:100%;margin:0 auto}article ul{margin-bottom:2rem}article .footnote-definition{font-size:.8rem;padding-top:.5rem;margin-top:4rem;border-top:1px solid var(--primary-fg-color)}ul.posts{display:grid;grid-gap:4rem;flex-wrap:wrap;list-style:none;padding:0}ul.posts li{display:flex;flex-direction:column}ul.posts li .title{display:block;font-size:1.5rem;margin-bottom:1rem}ul.posts li .description{flex-grow:1;margin-bottom:1rem}ul.posts li .post-date{display:block}.post-date{font-weight:200;font-size:.8rem}.intro{display:flex;margin-bottom:4rem}.intro .avatar{flex-shrink:0;position:relative;overflow:hidden;width:150px;height:150px;border-radius:50%}.intro .avatar img{display:inline;margin:0 auto;height:100%;width:auto}.intro>div{margin-left:1rem}pre{overflow-x:scroll;padding:1rem;margin-bottom:2rem}.transcript-note{display:flex;flex-direction:column;gap:.5em;padding:.75rem 1rem;margin-bottom:2rem;background-color:light-dark(#fff, #000);border:1px solid light-dark(#999, #252525);border-radius:.5rem}.transcript-note .heading{font-weight:500}.transcript-note figcaption{font-size:1.1rem}.transcript-note img{width:100%}.youtube-player img{width:100%}