:root,html[data-theme=light]{--color-fill: 239, 237, 231;--color-text-base: 3, 43, 34;--color-accent: 191, 19, 112;--color-card: 224, 221, 214;--color-card-muted: 209, 206, 199;--color-border: 0, 99, 77;}html[data-theme=dark]{--color-fill: 3, 43, 34;--color-text-base: 239, 237, 231;--color-accent: 255, 175, 218;--color-card: 0, 99, 77;--color-card-muted: 0, 77, 58;--color-border: 0, 99, 77;}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{overflow-y:scroll;scroll-behavior:smooth}body{display:flex;flex-direction:column;min-height:100svh;background-color:rgb(var(--color-fill));color:rgb(var(--color-text-base));font-family:"IBM Plex Mono",monospace;font-size:1rem;line-height:1.65}::selection{background-color:rgba(var(--color-accent), .7);color:rgb(var(--color-fill))}a{color:rgb(var(--color-text-base));text-decoration-style:dashed;text-underline-offset:8px;outline:2px solid rgba(0,0,0,0);outline-offset:1px;transition:color .15s ease}a:hover{color:rgb(var(--color-accent))}a:focus-visible{outline:2px dashed rgb(var(--color-accent));text-decoration:none}img{max-width:100%;height:auto}hr{border:0;border-top:2px solid rgb(var(--color-border));margin:0}.container{max-width:48rem;margin:0 auto;padding:0 1rem}section,footer .container{max-width:48rem;margin:0 auto;padding-left:1rem;padding-right:1rem}#skip-to-content{position:absolute;top:-100%;left:4rem;z-index:50;background-color:rgb(var(--color-accent));color:rgb(var(--color-fill));padding:.5rem .75rem;transition:all .2s}#skip-to-content:focus{top:1rem}header{width:100%}.nav-container{max-width:48rem;margin:0 auto;display:flex;flex-direction:column;align-items:center}@media (min-width: 640px){.nav-container{flex-direction:row;justify-content:space-between}}.top-nav-wrap{position:relative;display:flex;width:100%;align-items:flex-start;justify-content:space-between;padding:1rem}@media (min-width: 640px){.top-nav-wrap{align-items:center;padding:1.5rem 1rem}}.logo{position:absolute;padding:.25rem 0;font-size:1.25rem;font-weight:600;white-space:nowrap;text-decoration:none}@media (min-width: 640px){.logo{position:static;font-size:1.5rem}}nav#nav-menu{display:flex;flex-direction:column;width:100%;align-items:center}@media (min-width: 640px){nav#nav-menu{margin-left:.5rem;flex-direction:row;justify-content:flex-end;gap:1.25rem}}#nav-menu ul{list-style:none;display:grid;grid-template-columns:repeat(2, 1fr);gap:.5rem;width:11rem;margin-top:1rem}@media (min-width: 640px){#nav-menu ul{display:flex;width:auto;margin-top:0;gap:1.25rem}}#nav-menu ul li{grid-column:span 2;display:flex;align-items:center;justify-content:center}#nav-menu ul li:nth-last-child(1),#nav-menu ul li:nth-last-child(2){grid-column:span 1}#nav-menu ul li a{display:block;width:100%;padding:.75rem 1rem;text-align:center;font-weight:500;text-decoration:none}#nav-menu ul li a:hover{color:rgb(var(--color-accent))}#nav-menu ul li a.active{text-decoration:underline;text-decoration-style:wavy;text-decoration-thickness:2px;text-underline-offset:4px}@media (min-width: 640px){#nav-menu ul li a{padding:.25rem .5rem}}.hamburger-menu{align-self:flex-end;padding:.5rem;background:none;border:none;cursor:pointer;color:rgb(var(--color-text-base))}@media (min-width: 640px){.hamburger-menu{display:none}}.hamburger-menu svg{width:1.5rem;height:1.5rem;transform:scale(1.25);fill:rgb(var(--color-text-base))}.menu-icon .close{opacity:0}.menu-icon .line{opacity:1;transition:opacity 75ms ease-in-out}.menu-icon.is-active .line{opacity:0}.menu-icon.is-active .close{opacity:1}.display-none{display:none}@media (min-width: 640px){.display-none{display:flex !important}}#theme-btn{padding:.75rem;background:none;border:none;cursor:pointer}@media (min-width: 640px){#theme-btn{padding:.25rem}}#theme-btn svg{width:1.5rem;height:1.5rem;fill:rgb(var(--color-text-base));transform:scale(1.25);transition:fill .15s ease}#theme-btn svg:hover{fill:rgb(var(--color-accent));transform:scale(1.25) rotate(12deg)}@media (min-width: 640px){#theme-btn svg{transform:scale(1)}#theme-btn svg:hover{transform:scale(1) rotate(12deg)}}#sun-svg,html[data-theme=dark] #moon-svg{display:none}#moon-svg,html[data-theme=dark] #sun-svg{display:block}svg{display:inline-block;width:1.5rem;height:1.5rem;fill:rgb(var(--color-text-base))}svg.icon-tabler{display:inline-block;width:1.5rem;height:1.5rem;transform:scale(1.25);fill:rgba(0,0,0,0);stroke:currentColor;stroke-width:2;opacity:.9}@media (min-width: 640px){svg.icon-tabler{transform:scale(1.1)}}footer{width:100%;margin-top:auto}.footer-wrapper{display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:1rem}@media (min-width: 640px){.footer-wrapper{flex-direction:row-reverse;padding:1rem}}.copyright-wrapper{display:flex;flex-direction:column;align-items:center;white-space:nowrap;margin:.5rem 0}.copyright-wrapper .separator{display:none}@media (min-width: 640px){.copyright-wrapper{flex-direction:row}.copyright-wrapper .separator{display:inline}}.social-icons{display:flex;flex-wrap:wrap;justify-content:center;gap:.25rem}.social-icons a,.link-button{display:inline-block;padding:.5rem;text-decoration:none;transition:transform .15s ease}.social-icons a:hover,.link-button:hover{transform:rotate(6deg);color:rgb(var(--color-accent))}.social-icons a:hover svg,.link-button:hover svg{fill:rgb(var(--color-accent))}@media (min-width: 640px){.social-icons a,.link-button{padding:.25rem}}#hero{padding:1.25rem 0 1rem}#hero h2{display:inline-block;font-size:1.5rem;font-weight:700;margin:.75rem .5rem .75rem 0}@media (min-width: 640px){#hero h2{font-size:2.25rem;margin:1.25rem .5rem 1.25rem 0}}#hero p{margin:.5rem 0}#hero .rss-link{margin-bottom:1.5rem;text-decoration:none}#hero .rss-icon{width:1.5rem;height:1.5rem;margin-bottom:.5rem;fill:rgb(var(--color-accent));transform:scale(1.1)}@media (min-width: 640px){#hero .rss-icon{margin-bottom:.75rem;transform:scale(1.25)}}.social-wrapper{margin-top:1rem;display:flex;flex-direction:column}@media (min-width: 640px){.social-wrapper{flex-direction:row;align-items:center}}.social-links{margin-bottom:.25rem;margin-right:.5rem;white-space:nowrap}@media (min-width: 640px){.social-links{margin-bottom:0}}#featured,#recent-posts{padding:1.75rem 0 1rem}#featured>h2,#recent-posts>h2{font-size:1.125rem;font-weight:600;letter-spacing:.025em}@media (min-width: 640px){#featured>h2,#recent-posts>h2{font-size:1.25rem}}#featured ul,#recent-posts ul{list-style:none;padding:0}.all-posts-btn-wrapper{margin:1.25rem 0;text-align:center}.all-posts-btn-wrapper a{text-decoration:none}.all-posts-btn-wrapper a:hover{color:rgb(var(--color-accent))}.all-posts-btn-wrapper a:hover svg{fill:rgb(var(--color-accent))}.all-posts-btn-wrapper a svg{vertical-align:middle;width:1.5rem;height:1.5rem}.card{margin:1rem 0}.card-title{display:inline-block;font-size:1rem;font-weight:500;color:rgb(var(--color-accent));text-decoration:none;text-decoration-style:dashed;text-underline-offset:4px}@media (min-width: 640px){.card-title{font-size:1.125rem}}.card-title:hover{text-decoration:underline;text-decoration-style:dashed}.card-title h2,.card-title h3{font-size:inherit;font-weight:inherit}.card-datetime{display:flex;align-items:center;gap:.5rem;opacity:.8;font-size:.875rem;font-style:italic}.card-datetime svg{width:1.5rem;height:1.5rem;fill:rgb(var(--color-text-base));transform:scale(.9)}.breadcrumb{max-width:48rem;margin:1.25rem auto .25rem;padding:0 1rem;text-align:left}.breadcrumb ul{list-style:none;padding:0}.breadcrumb li{display:inline}.breadcrumb a{text-transform:capitalize;opacity:.7;text-decoration:none}.breadcrumb a:hover{opacity:1}.breadcrumb span{opacity:.7}#main-content{max-width:48rem;margin:0 auto;width:100%;padding:0 1rem 2rem}#main-content>ul{list-style:none;padding:0}#main-content>h1{font-size:1.25rem;font-weight:600}@media (min-width: 640px){#main-content>h1{font-size:1.5rem}}#main-content>p{margin-bottom:1rem;margin-top:.25rem;font-style:italic}.post-title{font-size:1.25rem;font-weight:600;color:rgb(var(--color-accent))}@media (min-width: 640px){.post-title{font-size:1.5rem}}.go-back{display:inline-flex;align-items:center;background:none;border:none;cursor:pointer;color:rgb(var(--color-text-base));font-family:inherit;font-size:inherit;margin-bottom:.5rem;margin-top:1.25rem;padding:0;text-decoration:none}.go-back:hover{opacity:.75}.go-back svg{width:1.5rem;height:1.5rem;fill:rgb(var(--color-text-base))}.tags-container{list-style:none;padding:0;margin:1.25rem 0;display:flex;flex-wrap:wrap;gap:.25rem}.tag{display:inline-block;margin:.25rem 0}.tag a{position:relative;display:inline-flex;align-items:center;padding-right:.5rem;font-size:.875rem;text-decoration:underline;text-decoration-style:dashed;text-underline-offset:4px}.tag a:hover{top:-2px;color:rgb(var(--color-accent))}.tag a:hover svg{fill:rgb(var(--color-accent))}.tag a svg{width:1.5rem;height:1.5rem;margin-right:-1.25rem;transform:scale(.95);fill:rgb(var(--color-text-base));opacity:.8}.tag.tag-lg a{font-size:1.125rem;text-underline-offset:8px;margin:.75rem .25rem}.pagination-wrapper{display:flex;justify-content:center;margin-bottom:2rem;margin-top:auto}.pagination-wrapper a{display:inline-flex;align-items:center;text-decoration:none;padding:.25rem .5rem}.pagination-wrapper a:hover{color:rgb(var(--color-accent))}.pagination-wrapper a:hover svg{fill:rgb(var(--color-accent))}.pagination-wrapper a.disabled{pointer-events:none;opacity:.5}.pagination-wrapper a svg{width:1.5rem;height:1.5rem;fill:rgb(var(--color-text-base))}.search-input{display:block;width:100%;border-radius:.25rem;border:1px solid rgba(var(--color-text-base), .4);background-color:rgb(var(--color-fill));color:rgb(var(--color-text-base));padding:.75rem .75rem .75rem 2.5rem;font-family:inherit;font-size:1rem}.search-input::placeholder{font-style:italic;opacity:.75}.search-input:focus{border-color:rgb(var(--color-accent));outline:none}.search-label{position:relative;display:block}.search-label .search-icon{position:absolute;top:50%;left:.5rem;transform:translateY(-50%);opacity:.75;width:1.5rem;height:1.5rem}.not-found-wrapper{display:flex;flex-direction:column;align-items:center;justify-content:center;margin-bottom:3.5rem;flex:1}.not-found-wrapper h1{font-size:8rem;font-weight:700;color:rgb(var(--color-accent))}.not-found-wrapper p{margin-top:1rem;font-size:1.5rem}@media (min-width: 640px){.not-found-wrapper p{font-size:1.875rem}}.not-found-wrapper a{margin:1.5rem 0;font-size:1.125rem;text-decoration:underline;text-decoration-style:dashed;text-underline-offset:8px}.about-illustration{max-width:50%;margin:1rem auto}@media (min-width: 640px){.about-illustration{max-width:50%}}.prose{max-width:48rem;margin:1.25rem auto;font-size:1rem;line-height:1.75}.prose h1,.prose h2,.prose h3,.prose h4,.prose h5,.prose h6{color:rgb(var(--color-text-base));margin-bottom:.5rem;margin-top:1.5rem;font-weight:600;line-height:1.3}.prose h1{font-size:2rem}.prose h2{font-size:1.5rem}.prose h3{font-size:1.25rem;font-style:italic}.prose h4{font-size:1.125rem}.prose p{color:rgb(var(--color-text-base));margin:1rem 0}.prose a{color:rgb(var(--color-text-base));text-decoration:underline;text-decoration-style:dashed;text-underline-offset:8px}.prose a:hover{color:rgb(var(--color-accent))}.prose strong{color:rgb(var(--color-text-base))}.prose blockquote{border-left:4px solid rgba(var(--color-accent), .5);padding-left:1rem;margin:1.5rem 0;opacity:.8;font-style:italic}.prose code{background-color:rgba(var(--color-card), .75);color:rgb(var(--color-text-base));padding:.15rem .4rem;border-radius:.25rem;font-size:.9em}.prose pre{margin:1.5rem 0;border-radius:.375rem;overflow-x:auto}.prose pre code{background:none;padding:0;border-radius:0;white-space:pre}.prose ul,.prose ol{color:rgb(var(--color-text-base));padding-left:1.5rem;margin:1rem 0;overflow-x:clip}.prose ul{list-style-type:disc}.prose ol{list-style-type:decimal}.prose li{margin:.25rem 0}.prose li::marker{color:rgb(var(--color-accent))}.prose img{margin:.5rem auto;display:block;border:2px solid rgb(var(--color-border))}.prose figcaption{color:rgb(var(--color-text-base));opacity:.7;text-align:center}.prose table{width:100%;border-collapse:collapse;color:rgb(var(--color-text-base));margin:1rem 0}.prose th,.prose td{border:1px solid rgb(var(--color-border));padding:.5rem}.prose hr{border-color:rgb(var(--color-border));margin:2rem 0}::-webkit-scrollbar{width:.75rem}::-webkit-scrollbar-track{background:rgb(var(--color-fill))}::-webkit-scrollbar-thumb{background:rgb(var(--color-card))}::-webkit-scrollbar-thumb:hover{background:rgb(var(--color-card-muted))}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}