@font-face{font-family:libre baskerville;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/LibreBaskerville-VariableFont_wght.ttf)format('truetype')}@font-face{font-family:libre baskerville;font-style:italic;font-weight:100 900;font-display:swap;src:url(/fonts/LibreBaskerville-Italic-VariableFont_wght.ttf)format('truetype')}:root{--bg-primary:#2d2a2e;--bg-secondary:#221f22;--bg-tertiary:#19181a;--text-primary:#fcfcfa;--text-secondary:#c1c0c0;--text-muted:#727072;--accent-orange:#fc9867;--accent-pink:#ff6188;--accent-yellow:#ffd866;--border-color:#403e41}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:libre baskerville,Georgia,serif;background-color:var(--bg-primary);color:var(--text-primary);line-height:1.7;min-height:100vh;display:flex;flex-direction:column;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}hr{border:none;border-top:1px solid var(--border-color);margin:2rem 0}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.3;margin-bottom:1rem;letter-spacing:-.02em}h1{font-size:2.25rem;margin-bottom:.5rem}h2{font-size:1.75rem;margin-top:2rem}h3{font-size:1.375rem;margin-top:1.5rem}h4{font-size:1.125rem;margin-top:1.25rem}p{margin-bottom:1.25rem}a{color:var(--accent-orange);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s ease}a:hover{border-bottom-color:var(--accent-orange)}a[href^="http://"],a[href^="https://"]{white-space:nowrap}a[href^="http://"]::after,a[href^="https://"]::after{content:"↗";margin-left:.2em;font-size:.8em;opacity:.7;display:inline-block;transition:transform .2s ease,opacity .2s ease}a[href^="http://"]:hover::after,a[href^="https://"]:hover::after{transform:translate(2px,-2px);opacity:1}blockquote{border-left:3px solid var(--accent-orange);padding-left:1.25rem;margin:1.5rem 0;color:var(--text-secondary);font-style:italic}header{background-color:var(--bg-secondary);border-bottom:1px solid var(--border-color);padding:1.5rem 0}header nav{max-width:700px;margin:0 auto;padding:0 1.5rem}header nav a{color:var(--text-primary);text-decoration:none;font-size:1.25rem;font-weight:700;letter-spacing:-.02em;font-family:libre baskerville,Georgia,serif;border-bottom:none!important}header nav a:hover{border-bottom:none}header nav .site-title{display:flex;align-items:center;gap:1rem}header nav .logo{width:2.25rem;height:2.25rem;object-fit:contain;border-radius:0;box-shadow:none;margin:0}main{flex:1;max-width:700px;width:100%;margin:0 auto;padding:2rem 1.5rem}footer{background-color:var(--bg-secondary);border-top:1px solid var(--border-color);padding:1.5rem 0;text-align:center;color:var(--text-muted);font-size:.875rem}.hero{text-align:center;padding:4rem 1.5rem 3rem;border-bottom:1px solid var(--border-color);margin-bottom:2rem}.hero h1{font-size:2.75rem;margin-bottom:.75rem;color:var(--text-primary)}.hero p{font-size:1.125rem;color:var(--text-secondary);font-style:italic}.hero.post-page{padding:2rem 1.5rem 1.5rem;border-bottom:none}.hero.post-page h1{font-size:2rem}.hero.post-page time{color:var(--text-muted);font-style:italic;font-size:1rem}.home{text-align:center;padding:2rem 0}.post{margin-bottom:3rem}.post-content{font-size:1rem}.posts-list{margin-top:3rem}.posts-list h2{font-size:1.5rem;margin-bottom:1.5rem}.posts-list ul{list-style:none;padding-left:0}.posts-list li{padding:1rem 0;border-bottom:1px solid var(--border-color)}.posts-list li a{font-size:1.125rem;font-weight:700}.posts-list .post-date{display:block;color:var(--text-muted);font-size:.875rem;margin-top:.25rem;font-style:italic}.section{padding:2rem 0}.section h1{margin-bottom:1.5rem}ul,ol{margin:1.25rem 0;padding-left:1.75rem}li{margin-bottom:.5rem}img{max-width:100%;height:auto;display:block;margin:1.5rem auto;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.3)}figure{margin:2rem 0;text-align:center}figure img{margin-bottom:.75rem}figcaption{color:var(--text-secondary);font-size:.875rem;font-style:italic;line-height:1.5}table{width:100%;border-collapse:collapse;margin:1.5rem auto;font-size:.875rem;border:1px solid var(--border-color);border-radius:8px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.2)}table th,table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--border-color)}table th{background-color:var(--bg-secondary);font-weight:700;text-transform:uppercase;font-size:.75rem;letter-spacing:.05em;color:var(--accent-orange)}table tr:last-child td{border-bottom:none}table tbody tr:hover{background-color:var(--bg-secondary)}@font-face{font-family:maple mono vf;src:url(/fonts/MapleMono[wght].ttf)format('truetype');font-weight:100 900;font-style:normal}@font-face{font-family:maple mono vf;src:url(/fonts/MapleMono-Italic[wght].ttf)format('truetype');font-weight:100 900;font-style:italic}code{font-family:maple mono vf,fira code,monospace;background-color:var(--bg-tertiary);color:var(--accent-pink);padding:.2rem .4rem;border-radius:4px;font-size:.875em}pre{background-color:#272822;border:1px solid var(--border-color);border-radius:8px;padding:1.25rem;margin:1.5rem 0;overflow-x:auto}pre code{background:0 0;padding:0;font-size:.875rem;line-height:1.6}.highlight{border-radius:8px;margin:1.5rem 0;overflow-x:auto}.highlight pre{background-color:#272822!important;border:1px solid var(--border-color);border-radius:8px;padding:1.25rem!important;margin:0!important;-moz-tab-size:4;-o-tab-size:4;tab-size:4}.highlight pre code{background:0 0!important;padding:0!important;font-family:maple mono vf,monospace;font-size:.875rem;line-height:1.6;color:#f8f8f2!important}:root{--aside-width:250px;--aside-gap:16px}aside.sidenote{padding:.75rem 1rem;border:1px solid var(--border-color);border-left:3px solid var(--accent-yellow);background-color:var(--bg-secondary);border-radius:4px;font-size:.875rem;font-style:italic;color:var(--text-secondary);line-height:1.4}aside.sidenote p{margin:0}aside.sidenote strong{color:var(--accent-yellow)}@media(max-width:767px){aside.sidenote{margin:1rem 0}}@media(min-width:1264px){main{position:relative}aside.sidenote{position:absolute;right:calc((var(--aside-width) + var(--aside-gap)) * -1);width:var(--aside-width);margin-bottom:1rem}aside.sidenote strong{display:block;margin-bottom:.25rem}}@media(max-width:640px){header nav{padding:0 1rem}main{padding:1.5rem 1rem}h1{font-size:1.875rem}h2{font-size:1.5rem}.hero h1{font-size:2rem}.hero{padding:3rem 1rem 2rem}}