@font-face{font-family:Hubot Sans;src:url(/blog/fonts/HubotSans[slnt,wdth,wght].woff2)format("woff2");font-weight:200 900;font-stretch:75% 125%;font-style:normal;font-display:swap}@font-face{font-family:Fira Code VF;src:url(/blog/fonts/FiraCode-VF.woff2)format("woff2");font-weight:300 700;font-style:normal;font-display:swap}@property --lg-glass-a{syntax:"<color>";inherits:false;initial-value:#e5e5e514}@property --lg-glass-b{syntax:"<color>";inherits:false;initial-value:#e5e5e50c}*{box-sizing:border-box;margin:0;padding:0}@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}html{scroll-behavior:smooth}body{color:#e5e5e5af;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;cursor:url(/blog/img/cursor_arrow.png) 0 0,auto;cursor:image-set(url(/blog/img/cursor_arrow.png) 1x, url(/blog/img/cursor_arrow_2x.png) 2x) 0 0, auto;background-color:#090b0e;font-family:Hubot Sans,sans-serif;line-height:1.75;position:relative;overflow-x:hidden}body:before{content:"";z-index:-2;will-change:transform;opacity:.125;background-image:url(/blog/img/background.png);background-position:top;background-repeat:no-repeat;background-size:cover;width:100%;height:133.333vh;position:fixed;top:0;left:0}@media (prefers-reduced-motion:reduce){body:before{transform:none!important}}::selection{color:#090b0e;background-color:#0fcf7f}ol,ul{padding-left:1rem}ol li,ul li{margin-bottom:.5rem}iconify-icon{width:1em;height:1em;display:inline-block}.piss{vertical-align:baseline;filter:hue-rotate(200deg)saturate(1.5);margin-left:.25rem;margin-right:.25rem;font-size:1.1em}.glass-btn{color:#e5e5e5;--lg-glass-a:#e5e5e514;--lg-glass-b:#e5e5e50c;background:linear-gradient(to bottom, var(--lg-glass-a) 0%, var(--lg-glass-b) 100%);border:.125rem solid #e5e5e50c;border-radius:.5rem;align-items:center;gap:.5rem;padding:.8125rem 1.5rem .75rem;font-family:inherit;font-size:.875rem;font-weight:600;font-stretch:125%;text-decoration:none;display:inline-flex;box-shadow:inset 0 .125rem .125rem -.125rem #e5e5e580,0 .125rem .5rem #e5e5e508,0 0 2rem -.25rem #0fcf7f00}.glass-btn:hover{--lg-glass-a:#0fcf7f40;--lg-glass-b:#0fcf7f40;border-color:#0fcf7f;box-shadow:inset 0 .125rem .125rem -.125rem #e5e5e580,0 .125rem .5rem #e5e5e508,0 0 2rem -.25rem #0fcf7f80}.glass-btn{transition:--lg-glass-a .25s,--lg-glass-b .25s,border-color .25s,box-shadow .25s,opacity .25s;cursor:url(/blog/img/cursor_link.png) 0 0,pointer!important;cursor:image-set(url(/blog/img/cursor_link.png) 1x, url(/blog/img/cursor_link_2x.png) 2x) 0 0, pointer!important}.glass-btn iconify-icon{flex-shrink:0;justify-content:center;align-items:center;font-size:1.25rem;display:flex;transform:translateY(-.0625rem)}@media (prefers-reduced-motion:reduce){.blog-home-link:after,.blog-back-link:after,.blog-dated-posts-link:after,.blog-rss-link:after,.blog-post-content a:after{transition:none!important}.blog-home-link:hover:after,.blog-home-link:focus:after,.blog-back-link:hover:after,.blog-back-link:focus:after,.blog-dated-posts-link:hover:after,.blog-dated-posts-link:focus:after,.blog-rss-link:hover:after,.blog-rss-link:focus:after,.blog-post-content a:hover:after,.blog-post-content a:focus:after{width:100%!important}}.blog-page:before{opacity:.0625}.blog-container{flex-direction:column;max-width:52rem;min-height:100vh;margin:0 auto;padding:1rem 1.5rem;display:flex}@media (width>=1024px){.blog-container{padding:2rem}}.blog-header{border-bottom:.0625rem solid #e5e5e520;flex-direction:row;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;padding-bottom:2rem;display:flex}@media (width<=767.98px){.blog-header{padding-bottom:1rem}}.blog-scroll-progress-bar{z-index:1000;background:#0fcf7f;border-radius:1rem;width:0%;height:.5rem;transition:width .25s cubic-bezier(.34,1.56,.64,1);position:fixed;top:0;left:0}.blog-home-link{color:#e5e5e580;align-items:center;gap:.5rem;margin-top:.125rem;font-size:1rem;font-weight:600;font-stretch:125%;text-decoration:none;transition:color .25s,text-shadow .25s;display:inline-flex;position:relative}.blog-home-link:after{content:"";background:#0fcf7f;width:0;height:.0625rem;transition:width .25s ease-out,box-shadow .25s ease-out;position:absolute;bottom:-.125rem;left:0;box-shadow:0 0 #0fcf7f00}.blog-home-link:hover,.blog-home-link:focus,.blog-home-link.active{color:#0fcf7f;text-shadow:0 0 1.75rem #0fcf7f80}.blog-home-link:hover:after,.blog-home-link:focus:after,.blog-home-link.active:after{width:100%;box-shadow:0 0 1.75rem #0fcf7f80}.blog-home-link{cursor:url(/blog/img/cursor_link.png) 0 0,pointer!important;cursor:image-set(url(/blog/img/cursor_link.png) 1x, url(/blog/img/cursor_link_2x.png) 2x) 0 0, pointer!important}.blog-home-link .blog-link-short{display:none}@media (width<=767.98px){.blog-home-link .blog-link-full{display:none}.blog-home-link .blog-link-short{display:inline}}.blog-site-title{color:#e5e5e5;text-align:right;margin:0;font-size:1.75rem;font-weight:700;font-stretch:125%;line-height:1.2;display:inline-block;position:relative}.blog-splash-text{color:#ff0;text-shadow:.125rem .125rem .25rem #000;pointer-events:none;white-space:nowrap;z-index:10;font-size:.875rem;font-weight:700;animation:.5s ease-in-out infinite alternate blog-splash-pulse;position:absolute;top:1.25rem;left:calc(100% - 1.5rem);transform:rotate(-15deg)}@keyframes blog-splash-pulse{0%{transform:scale(1)rotate(-15deg)}to{transform:scale(1.15)rotate(-15deg)}}.blog-title-container{flex-direction:column;gap:.25rem;display:flex}@media (width<=767.98px){.blog-title-container{gap:0}}.blog-site-subtitle{color:#e5e5e580;text-align:right;margin:0;font-size:1rem;font-weight:400;font-stretch:110%}.blog-site-subtitle .blog-subtitle-short{font-size:.875rem;display:none}@media (width<=767.98px){.blog-site-subtitle .blog-subtitle-full{display:none}.blog-site-subtitle .blog-subtitle-short{display:inline}}.blog-main{flex:1}.blog-archive-intro{color:#e5e5e5bf;margin-bottom:2rem;font-size:1rem}.blog-post-bsky-stat{align-items:center;gap:.5rem;margin-top:.1875rem;display:flex}.blog-post-bsky-stat--link{color:inherit;text-decoration:none;cursor:url(/blog/img/cursor_link.png) 0 0,pointer!important;cursor:image-set(url(/blog/img/cursor_link.png) 1x, url(/blog/img/cursor_link_2x.png) 2x) 0 0, pointer!important}.blog-post-bsky-stat--link .blog-post-bsky-stat-label{transition:color .25s,text-shadow .25s;position:relative}.blog-post-bsky-stat--link .blog-post-bsky-stat-label:after{content:"";background:#0fcf7f;width:0;height:.0625rem;transition:width .25s ease-out,box-shadow .25s ease-out;position:absolute;bottom:-.125rem;left:0;box-shadow:0 0 #0fcf7f00}.blog-post-bsky-stat--link .blog-post-bsky-stat-label:hover,.blog-post-bsky-stat--link .blog-post-bsky-stat-label:focus,.blog-post-bsky-stat--link .blog-post-bsky-stat-label.active{color:#0fcf7f;text-shadow:0 0 1.75rem #0fcf7f80}.blog-post-bsky-stat--link .blog-post-bsky-stat-label:hover:after,.blog-post-bsky-stat--link .blog-post-bsky-stat-label:focus:after,.blog-post-bsky-stat--link .blog-post-bsky-stat-label.active:after{width:100%;box-shadow:0 0 1.75rem #0fcf7f80}.blog-post-bsky-stat--link:hover .blog-post-bsky-stat-label,.blog-post-bsky-stat--link:focus .blog-post-bsky-stat-label{color:#0fcf7f;text-shadow:0 0 1.75rem #0fcf7f80}.blog-post-bsky-stat--link:hover .blog-post-bsky-stat-label:after,.blog-post-bsky-stat--link:focus .blog-post-bsky-stat-label:after{width:100%;box-shadow:0 0 1.75rem #0fcf7f80}.blog-post-header{margin-bottom:2rem}.blog-post-title{color:#e5e5e5;margin:0 0 .25rem;font-size:2.5rem;font-weight:700;font-stretch:125%;line-height:1.25}@media (width<=767.98px){.blog-post-title{font-size:2rem}}.blog-post-description{color:#e5e5e5af;margin:0 0 .25rem;font-style:italic;font-stretch:125%}.blog-post-meta{color:#e5e5e580;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1rem;font-size:.9375rem;display:flex}.blog-post-meta-left{flex-wrap:wrap;align-items:center;gap:.75rem 1rem;display:flex}.blog-post-meta time,.blog-post-meta .blog-post-reading-time{align-items:center;gap:.5rem;margin-top:.1875rem;display:flex}.blog-post .blog-share-btn{border-radius:.5rem;margin-bottom:.125rem;padding:.4rem .8rem;font-size:.8125rem}.blog-post .blog-share-btn iconify-icon{margin-top:0;font-size:1rem}.blog-post-content{color:#e5e5e5bf;font-size:1.0625rem;line-height:1.75}.blog-post-content h2{color:#e5e5e5;margin:2.5rem 0 1rem;font-size:1.75rem;font-weight:700;font-stretch:125%}.blog-post-content h3{color:#e5e5e5;margin:2rem 0 .75rem;font-size:1.375rem;font-weight:700;font-stretch:125%}.blog-post-content h4{color:#e5e5e5;margin:1.5rem 0 .5rem;font-size:1.125rem;font-weight:700;font-stretch:125%}.blog-post-content p{margin-bottom:1.25rem}.blog-post-content a{color:#0fcf7f;font-weight:700;text-decoration:none;transition:color .25s,text-shadow .25s;position:relative}.blog-post-content a:after{content:"";background:#e5e5e5;width:0;height:.0625rem;transition:width .25s ease-out,box-shadow .25s ease-out;position:absolute;bottom:-.125rem;left:0;box-shadow:0 0 #e5e5e500}.blog-post-content a:hover,.blog-post-content a:focus,.blog-post-content a.active{color:#e5e5e5;text-shadow:0 0 1.75rem #e5e5e580}.blog-post-content a:hover:after,.blog-post-content a:focus:after,.blog-post-content a.active:after{width:100%;box-shadow:0 0 1.75rem #e5e5e580}.blog-post-content a{cursor:url(/blog/img/cursor_link.png) 0 0,pointer!important;cursor:image-set(url(/blog/img/cursor_link.png) 1x, url(/blog/img/cursor_link_2x.png) 2x) 0 0, pointer!important}.blog-post-content ul,.blog-post-content ol{margin-bottom:1.25rem;padding-left:1.5rem}.blog-post-content blockquote{color:#e5e5e580;border-left:.25rem solid #0fcf7f;margin:1.5rem 0;padding-left:1.5rem;font-style:italic}.blog-post-content code{background:#e5e5e510;border-radius:.25rem;padding:.125rem .375rem;font-family:Fira Code VF,monospace;font-size:.9em}.blog-post-content pre{background:#171717;border:.0625rem solid #1f1f1f;border-radius:.5rem;margin:1.5rem 0;padding:1rem 1.25rem;overflow-x:auto}.blog-post-content pre code{background:0 0;padding:0;font-size:.875rem}.blog-post-content img{border-radius:.5rem;max-width:100%;height:auto;margin:1.5rem 0}.blog-post-content figure{text-align:center}.blog-post-content figure img,.blog-post-content figure video,.blog-post-content figure iframe{margin-top:0;margin-bottom:.5rem}.blog-post-content figure video,.blog-post-content figure iframe{aspect-ratio:16/9;border:0;border-radius:.5rem;width:100%;max-width:100%;height:auto}.blog-post-content figure p{margin:0}.blog-post-content figcaption{color:#e5e5e5af;font-size:.875rem;font-style:italic;line-height:1.5}.blog-post-content hr{border:none;border-top:.0625rem solid #e5e5e520;margin:2rem 0}.blog-post-content strong{font-weight:700}.blog-post-footer{margin-top:2rem}.bsky-comments{border-top:.0625rem solid #e5e5e520;margin-top:3rem;padding-top:2rem}.bsky-comments-header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem 1.25rem;margin-bottom:1.5rem;display:flex}.bsky-comments-title{color:#e5e5e5;margin:0;font-size:2rem;font-weight:700;font-stretch:125%}.bsky-comments-cta{color:#0fcf7f;margin-left:auto;font-size:1.25rem;font-weight:600;font-stretch:125%;text-decoration:none;transition:color .25s,text-shadow .25s;display:inline-block;position:relative}.bsky-comments-cta:after{content:"";background:#e5e5e5;width:0;height:.0625rem;transition:width .25s ease-out,box-shadow .25s ease-out;position:absolute;bottom:-.125rem;left:0;box-shadow:0 0 #e5e5e500}.bsky-comments-cta:hover,.bsky-comments-cta:focus,.bsky-comments-cta.active{color:#e5e5e5;text-shadow:0 0 1.75rem #e5e5e580}.bsky-comments-cta:hover:after,.bsky-comments-cta:focus:after,.bsky-comments-cta.active:after{width:100%;box-shadow:0 0 1.75rem #e5e5e580}.bsky-comments-cta{cursor:url(/blog/img/cursor_link.png) 0 0,pointer!important;cursor:image-set(url(/blog/img/cursor_link.png) 1x, url(/blog/img/cursor_link_2x.png) 2x) 0 0, pointer!important}.bsky-comments-status{color:#e5e5e580;padding:.5rem 0;font-size:.9375rem}.bsky-comments-status a{color:#0fcf7f;font-weight:600;text-decoration:none;transition:color .25s,text-shadow .25s;position:relative}.bsky-comments-status a:after{content:"";background:#0fcf7f;width:0;height:.0625rem;transition:width .25s ease-out,box-shadow .25s ease-out;position:absolute;bottom:-.125rem;left:0;box-shadow:0 0 #0fcf7f00}.bsky-comments-status a:hover,.bsky-comments-status a:focus,.bsky-comments-status a.active{color:#0fcf7f;text-shadow:0 0 1.75rem #0fcf7f80}.bsky-comments-status a:hover:after,.bsky-comments-status a:focus:after,.bsky-comments-status a.active:after{width:100%;box-shadow:0 0 1.75rem #0fcf7f80}.bsky-comments-status a{cursor:url(/blog/img/cursor_link.png) 0 0,pointer!important;cursor:image-set(url(/blog/img/cursor_link.png) 1x, url(/blog/img/cursor_link_2x.png) 2x) 0 0, pointer!important}.bsky-comments-list{flex-direction:column;gap:0;display:flex}.bsky-comment{grid-template-columns:2.5rem minmax(0,1fr);gap:.75rem;padding:1rem 0;display:grid}.bsky-comment-avatar-link{border-radius:50%;flex-shrink:0;width:2.5rem;height:2.5rem;transition:box-shadow .25s;display:block;overflow:hidden;cursor:url(/blog/img/cursor_link.png) 0 0,pointer!important;cursor:image-set(url(/blog/img/cursor_link.png) 1x, url(/blog/img/cursor_link_2x.png) 2x) 0 0, pointer!important}.bsky-comment-avatar-link:hover{box-shadow:0 0 0 .125rem #0fcf7f80}.bsky-comment-avatar{object-fit:cover;background:#1f1f1f;width:100%;height:100%;display:block}.bsky-comment-avatar--fallback{color:#e5e5e5af;background:linear-gradient(160deg,#0fcf7f59,#e5e5e514);justify-content:center;align-items:center;font-size:1rem;font-weight:700;font-stretch:125%;display:flex}.bsky-comment-body{min-width:0}.bsky-comment-meta{flex-wrap:nowrap;align-items:baseline;gap:.35rem .75rem;min-width:0;display:flex}.bsky-comment-author{min-width:0;color:inherit;flex-wrap:nowrap;flex:1 1 0;align-items:baseline;gap:.35rem;text-decoration:none;display:flex;cursor:url(/blog/img/cursor_link.png) 0 0,pointer!important;cursor:image-set(url(/blog/img/cursor_link.png) 1x, url(/blog/img/cursor_link_2x.png) 2x) 0 0, pointer!important}.bsky-comment-author:hover .bsky-comment-name,.bsky-comment-author:focus .bsky-comment-name{color:#0fcf7f;text-shadow:0 0 1.75rem #0fcf7f80}.bsky-comment-author:hover .bsky-comment-name:after,.bsky-comment-author:focus .bsky-comment-name:after{width:100%;box-shadow:0 0 1.75rem #0fcf7f80}.bsky-comment-name{text-overflow:ellipsis;white-space:nowrap;color:#e5e5e5;flex:0 auto;min-width:0;margin-bottom:-.1875rem;padding-bottom:.1875rem;font-weight:700;font-stretch:125%;transition:color .25s,text-shadow .25s;position:relative;overflow:hidden}.bsky-comment-name:after{content:"";background:#0fcf7f;width:0;height:.0625rem;transition:width .25s ease-out,box-shadow .25s ease-out;position:absolute;bottom:-.125rem;left:0;box-shadow:0 0 #0fcf7f00}.bsky-comment-name:hover,.bsky-comment-name:focus,.bsky-comment-name.active{color:#0fcf7f;text-shadow:0 0 1.75rem #0fcf7f80}.bsky-comment-name:hover:after,.bsky-comment-name:focus:after,.bsky-comment-name.active:after{width:100%;box-shadow:0 0 1.75rem #0fcf7f80}.bsky-comment-name:after{bottom:.25rem}.bsky-comment-handle{text-overflow:ellipsis;white-space:nowrap;color:#e5e5e580;flex-shrink:1;min-width:0;font-size:.8125rem;font-weight:500;overflow:hidden}.bsky-comment-time{white-space:nowrap;color:#e5e5e580;flex-shrink:0;margin-left:auto;font-size:.8125rem;font-weight:500;font-stretch:125%;text-decoration:none;transition:color .25s,text-shadow .25s;position:relative}.bsky-comment-time:after{content:"";background:#0fcf7f;width:0;height:.0625rem;transition:width .25s ease-out,box-shadow .25s ease-out;position:absolute;bottom:-.125rem;left:0;box-shadow:0 0 #0fcf7f00}.bsky-comment-time:hover,.bsky-comment-time:focus,.bsky-comment-time.active{color:#0fcf7f;text-shadow:0 0 1.75rem #0fcf7f80}.bsky-comment-time:hover:after,.bsky-comment-time:focus:after,.bsky-comment-time.active:after{width:100%;box-shadow:0 0 1.75rem #0fcf7f80}.bsky-comment-time{cursor:url(/blog/img/cursor_link.png) 0 0,pointer!important;cursor:image-set(url(/blog/img/cursor_link.png) 1x, url(/blog/img/cursor_link_2x.png) 2x) 0 0, pointer!important}.bsky-comment-text{color:#e5e5e5bf;word-wrap:break-word;overflow-wrap:anywhere;font-size:.9375rem;line-height:1.65}.bsky-comment-text a{color:#0fcf7f;font-weight:600;text-decoration:none;transition:color .25s,text-shadow .25s;position:relative}.bsky-comment-text a:after{content:"";background:#0fcf7f;width:0;height:.0625rem;transition:width .25s ease-out,box-shadow .25s ease-out;position:absolute;bottom:-.125rem;left:0;box-shadow:0 0 #0fcf7f00}.bsky-comment-text a:hover,.bsky-comment-text a:focus,.bsky-comment-text a.active{color:#0fcf7f;text-shadow:0 0 1.75rem #0fcf7f80}.bsky-comment-text a:hover:after,.bsky-comment-text a:focus:after,.bsky-comment-text a.active:after{width:100%;box-shadow:0 0 1.75rem #0fcf7f80}.bsky-comment-text a{cursor:url(/blog/img/cursor_link.png) 0 0,pointer!important;cursor:image-set(url(/blog/img/cursor_link.png) 1x, url(/blog/img/cursor_link_2x.png) 2x) 0 0, pointer!important}.bsky-comment-images{gap:.5rem;max-width:28rem;margin-top:.75rem;display:grid}.bsky-comment-images[data-count="2"],.bsky-comment-images[data-count="4"],.bsky-comment-images[data-count="3"]{grid-template-columns:1fr 1fr}.bsky-comment-images[data-count="3"] .bsky-comment-image-link:first-child{grid-column:1/-1}.bsky-comment-image-link{border:.0625rem solid #e5e5e51a;border-radius:.5rem;transition:border-color .25s,box-shadow .25s;display:block;overflow:hidden;cursor:url(/blog/img/cursor_link.png) 0 0,pointer!important;cursor:image-set(url(/blog/img/cursor_link.png) 1x, url(/blog/img/cursor_link_2x.png) 2x) 0 0, pointer!important}.bsky-comment-image-link:hover{border-color:#0fcf7f80;box-shadow:0 0 1.25rem -.25rem #0fcf7f59}.bsky-comment-image{object-fit:cover;background:#1f1f1f;width:100%;height:auto;max-height:22rem;display:block}.bsky-comment-footer{color:#e5e5e580;flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:.5rem;font-size:.8125rem;display:flex}.bsky-comment-likes{font-weight:500;font-stretch:125%}.bsky-comment-reply-link{color:#e5e5e5;font-weight:700;font-stretch:125%;text-decoration:none;transition:color .25s,text-shadow .25s;position:relative}.bsky-comment-reply-link:after{content:"";background:#0fcf7f;width:0;height:.0625rem;transition:width .25s ease-out,box-shadow .25s ease-out;position:absolute;bottom:-.125rem;left:0;box-shadow:0 0 #0fcf7f00}.bsky-comment-reply-link:hover,.bsky-comment-reply-link:focus,.bsky-comment-reply-link.active{color:#0fcf7f;text-shadow:0 0 1.75rem #0fcf7f80}.bsky-comment-reply-link:hover:after,.bsky-comment-reply-link:focus:after,.bsky-comment-reply-link.active:after{width:100%;box-shadow:0 0 1.75rem #0fcf7f80}.bsky-comment-reply-link{cursor:url(/blog/img/cursor_link.png) 0 0,pointer!important;cursor:image-set(url(/blog/img/cursor_link.png) 1x, url(/blog/img/cursor_link_2x.png) 2x) 0 0, pointer!important}.bsky-comment-replies{margin-top:1rem;margin-left:-2rem}.bsky-comment-replies .bsky-comment{padding:.875rem 0 .875rem .75rem}.bsky-comment-replies .bsky-comment:first-child{padding-top:.25rem}.bsky-comment-replies .bsky-comment:last-child{padding-bottom:0}@media (width<=575.98px){.bsky-comment{grid-template-columns:2rem minmax(0,1fr);gap:.625rem}.bsky-comment-avatar-link{width:2rem;height:2rem}.bsky-comment-replies,.bsky-comment-replies .bsky-comment{padding-left:.5rem}}.blog-back-link{color:#0fcf7f;align-items:center;gap:.5rem;font-size:1rem;font-weight:600;font-stretch:125%;text-decoration:none;transition:color .25s,text-shadow .25s;display:inline-flex;position:relative}.blog-back-link:after{content:"";background:#e5e5e5;width:0;height:.0625rem;transition:width .25s ease-out,box-shadow .25s ease-out;position:absolute;bottom:-.125rem;left:0;box-shadow:0 0 #e5e5e500}.blog-back-link:hover,.blog-back-link:focus,.blog-back-link.active{color:#e5e5e5;text-shadow:0 0 1.75rem #e5e5e580}.blog-back-link:hover:after,.blog-back-link:focus:after,.blog-back-link.active:after{width:100%;box-shadow:0 0 1.75rem #e5e5e580}.blog-back-link{cursor:url(/blog/img/cursor_link.png) 0 0,pointer!important;cursor:image-set(url(/blog/img/cursor_link.png) 1x, url(/blog/img/cursor_link_2x.png) 2x) 0 0, pointer!important}.blog-dated-posts-link{color:#0fcf7f;align-items:center;margin-top:2rem;font-size:1.25rem;font-weight:600;font-stretch:125%;text-decoration:none;transition:color .25s,text-shadow .25s;display:inline-flex;position:relative}.blog-dated-posts-link:after{content:"";background:#e5e5e5;width:0;height:.0625rem;transition:width .25s ease-out,box-shadow .25s ease-out;position:absolute;bottom:-.125rem;left:0;box-shadow:0 0 #e5e5e500}.blog-dated-posts-link:hover,.blog-dated-posts-link:focus,.blog-dated-posts-link.active{color:#e5e5e5;text-shadow:0 0 1.75rem #e5e5e580}.blog-dated-posts-link:hover:after,.blog-dated-posts-link:focus:after,.blog-dated-posts-link.active:after{width:100%;box-shadow:0 0 1.75rem #e5e5e580}.blog-dated-posts-link{cursor:url(/blog/img/cursor_link.png) 0 0,pointer!important;cursor:image-set(url(/blog/img/cursor_link.png) 1x, url(/blog/img/cursor_link_2x.png) 2x) 0 0, pointer!important}.blog-posts-list{flex-direction:column;gap:1rem;display:flex}.blog-post-card{--lg-glass-a:#e5e5e514;--lg-glass-b:#e5e5e50c;background:linear-gradient(to bottom, var(--lg-glass-a) 0%, var(--lg-glass-b) 100%);border:.125rem solid #e5e5e50c;box-shadow:inset 0 .125rem .125rem -.125rem #e5e5e580,0 .125rem .5rem #e5e5e508,0 0 2rem -.25rem #0fcf7f00}.blog-post-card:hover{--lg-glass-a:#0fcf7f40;--lg-glass-b:#0fcf7f40;border-color:#0fcf7f;box-shadow:inset 0 .125rem .125rem -.125rem #e5e5e580,0 .125rem .5rem #e5e5e508,0 0 2rem -.25rem #0fcf7f80}.blog-post-card{border-radius:.75rem;transition:--lg-glass-a .25s,--lg-glass-b .25s,border-color .25s,box-shadow .25s}.blog-post-card-link{color:inherit;padding:1.25rem 1.25rem 1.125rem;text-decoration:none;display:block;cursor:url(/blog/img/cursor_link.png) 0 0,pointer!important;cursor:image-set(url(/blog/img/cursor_link.png) 1x, url(/blog/img/cursor_link_2x.png) 2x) 0 0, pointer!important}.blog-post-card-title{color:#e5e5e5;margin:0 0 .25rem;font-size:1.5rem;font-weight:700;font-stretch:125%}.blog-post-card-meta{color:#e5e5e580;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;margin-bottom:.25rem;font-size:.875rem;display:flex}.blog-post-card-meta time,.blog-post-card-meta .blog-post-card-reading-time,.blog-post-card-meta .blog-post-bsky-stat{align-items:center;gap:.375rem;margin-top:.1875rem;display:flex}.blog-post-card-excerpt{color:#e5e5e5af;margin:0;line-height:1.75}.blog-empty{color:#e5e5e580;text-align:center;padding:3rem 0;font-style:italic}.blog-404{text-align:center;padding:4rem 0}.blog-404 img{border-radius:.5rem;max-width:100%;height:auto;margin:1.5rem 0}.blog-footer{text-align:center;color:#e5e5e580;border-top:.0625rem solid #e5e5e520;margin-top:4rem;padding-top:2rem;font-size:.875rem}.blog-footer p{margin:0}.blog-footer p+p{margin-top:.5rem}.blog-rss-link{color:#e5e5e580;font-weight:600;font-stretch:125%;text-decoration:none;transition:color .25s,text-shadow .25s;position:relative}.blog-rss-link:after{content:"";background:#0fcf7f;width:0;height:.0625rem;transition:width .25s ease-out,box-shadow .25s ease-out;position:absolute;bottom:-.125rem;left:0;box-shadow:0 0 #0fcf7f00}.blog-rss-link:hover,.blog-rss-link:focus,.blog-rss-link.active{color:#0fcf7f;text-shadow:0 0 1.75rem #0fcf7f80}.blog-rss-link:hover:after,.blog-rss-link:focus:after,.blog-rss-link.active:after{width:100%;box-shadow:0 0 1.75rem #0fcf7f80}.blog-rss-link{cursor:url(/blog/img/cursor_link.png) 0 0,pointer!important;cursor:image-set(url(/blog/img/cursor_link.png) 1x, url(/blog/img/cursor_link_2x.png) 2x) 0 0, pointer!important}.blog-year-section{margin-bottom:3rem}.blog-year-section:last-child{margin-bottom:0}.blog-year-title{color:#e5e5e5;margin:.5rem 0 1rem;font-size:1.75rem;font-weight:700;font-stretch:125%}@media (width<=767.98px){.blog-year-title{font-size:1.5rem}}
