.print-page~.layout__sidebar,.print-page~.layout__mobile-footer,.print-page .bg-dot-grid,body:has(.print-page) .layout__sidebar,body:has(.print-page) .layout__mobile-footer,body:has(.print-page) .bg-dot-grid,body:has(.print-page) [data-back-to-top]{display:none!important}body:has(.print-page) .layout__wrapper{padding:0}body:has(.print-page) .layout__container{max-width:100%}body:has(.print-page) .layout__main{width:100%}.print-page{min-height:100vh}.print-actions{position:fixed;top:1.25rem;right:1.25rem;z-index:50;display:flex;gap:.5rem}.print-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:rgb(var(--text-secondary)/.05);border:1px solid rgb(var(--text-secondary)/.2);border-radius:.5rem;color:rgb(var(--text-secondary));font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;text-decoration:none}.print-btn:after{content:none!important}.print-btn:hover{background:rgb(var(--text-secondary)/.1);border-color:rgb(var(--text-secondary)/.3);color:rgb(var(--text-primary))}.print-btn:active{transform:scale(.98)}.print-theme-icon-moon{display:none}html:not(.dark) .print-theme-icon-sun{display:none}html:not(.dark) .print-theme-icon-moon{display:contents}@media print{*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;color-adjust:exact!important}.print-actions{display:none!important}.article-content{max-width:100%!important}.prose img{max-width:100%!important;height:auto!important;page-break-inside:avoid}.prose h2,.prose h3{page-break-after:avoid}.prose p{orphans:3;widows:3}}@media (max-width:768px){.print-actions{position:static;margin-bottom:0;flex-wrap:wrap;padding-left:2rem;padding-right:2rem;padding-top:1.5rem}}.password-protected{animation:contentFadeIn .5s ease}@keyframes contentFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.post-subtitle{margin-bottom:1.5rem;font-style:italic;--tw-text-opacity:1;color:rgb(var(--text-secondary)/var(--tw-text-opacity, 1))}.post-header{margin-bottom:2rem}.post-title{margin-bottom:.5rem;font-family:Literata,Georgia,serif;font-size:1.875rem;line-height:2.25rem;font-weight:700}.post-meta{margin-bottom:1rem;display:flex;align-items:center;gap:.5rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(var(--text-secondary)/var(--tw-text-opacity, 1))}.post-date{--tw-text-opacity:1;color:rgb(var(--text-secondary)/var(--tw-text-opacity, 1))}.post-meta-separator{color:rgb(var(--text-secondary)/.5)}.post-reading-time{color:rgb(var(--text-secondary)/.8)}.article-wrapper{position:relative;margin-left:auto;margin-right:auto;max-width:56rem;padding:3rem 2rem}@media (min-width:768px){.article-wrapper{padding-left:1.6rem;padding-right:1.6rem}}.article-container{display:flex;align-items:flex-start}.article-content{min-width:0;flex:1 1 0%}.prose{color:rgb(var(--text-secondary))}.prose h1,.prose h2,.prose h3,.prose h4,.prose h5,.prose h6{color:rgb(var(--text-primary));font-family:Playfair Display,Georgia,serif;font-weight:700}.prose h2{margin-top:1.5em;margin-bottom:.75em;font-size:1.75em}.prose h3{margin-top:1.25em;margin-bottom:.5em;font-size:1.25em}.prose p{margin-bottom:1em;line-height:1.6}.prose a:after{--tw-content:" ↗";content:var(--tw-content)}hr{margin-bottom:1em}.prose strong{color:rgb(var(--text-primary))}.prose code{background:#ffffff1a;padding:.2em .4em;border-radius:.25em;font-size:.875em}.prose pre{background:#0000004d;padding:1.5em;border-radius:.5em;overflow-x:auto;border:1px solid rgba(255,255,255,.1)}.prose pre code{background:0 0;padding:0}.prose ul,.prose ol{margin:1em 0;padding-left:1.75em}.prose ul{list-style-type:disc}.prose ol{list-style-type:decimal}.prose ul ul{list-style-type:circle}.prose ul ul ul{list-style-type:square}.prose ol ol{list-style-type:lower-alpha}.prose li{margin-bottom:.25em;display:list-item}.prose li::marker{color:var(--text-secondary)}.prose blockquote{border-left:4px solid var(--accent);padding-left:1em;font-style:italic;color:var(--text-secondary)}.prose img{border-radius:.5em;margin:2em 0;max-width:100%;height:auto}@media print{.breadcrumb,.prose a:after{display:none}.prose a{color:rgb(var(--text-primary));text-decoration:underline}.article-content{max-width:100%}}