.blog-card{display:flex;flex-direction:column;border-radius:.75rem;border:1px solid var(--color-border);background-color:rgba(var(--color-background-offset-rgb),.5);overflow:hidden;transition:all .3s ease}.blog-card:hover{border-color:var(--color-primary);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.blog-card-title{font-size:1.5rem;font-weight:500;line-height:1.2;letter-spacing:-.025em;color:var(--color-text)}.blog-card:hover .blog-card-title{color:var(--color-primary)}.blog-tag{border-radius:9999px;background-color:rgba(var(--color-primary-rgb),.1);color:var(--color-primary);font-size:.75rem;font-weight:500;padding:.25rem .75rem}.blog-content{max-width:100%;color:var(--color-text)}.blog-content h1{font-size:2.5rem;font-weight:700;line-height:1.2;margin-bottom:1rem;color:var(--color-text);position:relative;scroll-margin-top:100px}.blog-content h2{font-size:1.875rem;font-weight:600;margin-top:2rem;margin-bottom:1rem;color:var(--color-text);position:relative;scroll-margin-top:100px}.blog-content h3{font-size:1.5rem;font-weight:600;margin-top:1.5rem;margin-bottom:.75rem;color:var(--color-text);position:relative;scroll-margin-top:100px}.blog-content h1:hover:before,.blog-content h2:hover:before,.blog-content h3:hover:before{content:"#";position:absolute;left:-1rem;color:var(--color-primary);opacity:.7}.blog-content h1:target,.blog-content h2:target,.blog-content h3:target{animation:highlight 2s ease}@keyframes highlight{0%{background-color:rgba(var(--color-primary-rgb),.1)}to{background-color:transparent}}.blog-content p{margin-bottom:1.25rem;line-height:1.7;color:var(--color-text)}.blog-content ul,.blog-content ol{margin-bottom:1.25rem;padding-left:1.25rem;color:var(--color-text)}.blog-content ul{list-style-type:disc}.blog-content ol{list-style-type:decimal}.blog-content li{margin-bottom:.5rem;color:var(--color-text)}.blog-content li:last-child{margin-bottom:0}.blog-content a{color:var(--color-primary);text-decoration:underline;text-underline-offset:2px}.blog-content a:hover{text-decoration:none}.blog-content blockquote{border-left:4px solid var(--color-primary);padding-left:1rem;margin-left:0;margin-right:0;font-style:italic;color:var(--color-text-offset)}.blog-content pre{background-color:#1e1e1e;color:#d4d4d4;padding:1rem;border-radius:.5rem;overflow-x:auto;margin-bottom:1.25rem;border:1px solid var(--color-border)}[data-theme=dark] .blog-content pre{background-color:#2d2d2d;color:#e1e1e1}.blog-content code{background-color:#0000000d;color:#d73a49;padding:.2rem .4rem;border-radius:.25rem;font-size:.875rem}[data-theme=dark] .blog-content code{background-color:#ffffff1a;color:#ffa657}.blog-content pre code{background-color:transparent;color:inherit;padding:0}.blog-content hr{border:0;border-top:1px solid var(--color-border);margin:2rem 0}.toc-container{background-color:rgba(var(--color-background-offset-rgb),.5);border:1px solid var(--color-border);border-radius:.5rem;padding:1.25rem;margin-bottom:2rem}.toc-container h2{font-size:1.25rem;font-weight:600;margin-bottom:.75rem;color:var(--color-text)}.toc-item{transition:color .2s ease}.toc-depth-1{font-weight:500;margin-bottom:.5rem}.toc-depth-2{padding-left:1rem;font-size:.875rem;color:var(--color-text-offset)}.blog-meta{color:var(--color-text-offset);font-size:.875rem}.blog-meta-item{display:flex;align-items:center}.blog-back-link{display:inline-flex;align-items:center;font-size:.875rem;font-weight:500;color:var(--color-primary);text-decoration:none}.blog-back-link:hover{text-decoration:underline}.blog-container{margin-top:2rem;padding-top:4rem;padding-bottom:8rem;position:relative;z-index:1}.blog-page #page-header{position:fixed!important;top:0;bottom:auto;width:100%;background-color:var(--color-header-fixed-background);border-bottom:1px solid var(--color-header-fixed-border);z-index:10;color:var(--color-header-fixed-text)}.blog-page #page-header a{color:var(--color-header-fixed-text)}.blog-page #page-header a:hover{color:var(--color-primary)}.blog-page #page-header button{color:var(--color-header-fixed-text)}.blog-page .theme-switcher{display:flex!important;opacity:1!important;visibility:visible!important}.blog-page #page-header:not(.fixed-header){background-color:var(--color-header-fixed-background);border-color:var(--color-header-fixed-border);color:var(--color-header-fixed-text)}
