:root{--bg-color: #fdfdfb;--text-color: #1a1a19;--text-muted: #5c5a54;--border-color: #e8e6df;--accent-color: #7d7764;--accent-hover: #1a1a19;--selection-bg: #f3f1e9;--font-serif: "Merriweather", Georgia, serif;--font-handwritten: "Amatic SC", cursive;--font-sans: "Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;background-color:var(--bg-color);color:var(--text-color);font-family:var(--font-serif);font-size:16px;line-height:1.75;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{margin:0;padding:0;min-height:100vh;display:flex;flex-direction:column}::selection{background-color:var(--selection-bg);color:var(--text-color)}.layout-container{width:100%;max-width:700px;margin:0 auto;padding:3rem 1.5rem;min-height:100vh;display:flex;flex-direction:column}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif);font-weight:700;color:var(--text-color);line-height:1.25;margin-top:2rem;margin-bottom:1rem;text-wrap:balance;letter-spacing:-.015em}h1{font-size:2.2rem;margin-top:0}h2{font-size:1.65rem;border-bottom:1px solid var(--border-color);padding-bottom:.5rem;margin-top:2.5rem}h3{font-size:1.35rem}h4{font-size:1.15rem}p{margin-top:0;margin-bottom:1.6rem;text-wrap:pretty}a{color:var(--text-color);text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px;text-decoration-color:var(--border-color);transition:text-decoration-color .2s ease,color .2s ease}a:hover{color:var(--accent-hover);text-decoration-color:var(--text-color)}.site-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:1rem;border-bottom:1px solid var(--border-color)}.header-logo .logo-link{font-family:var(--font-handwritten);font-weight:700;font-size:2.25rem;text-decoration:none;letter-spacing:-.03em;text-transform:uppercase}.site-nav{display:flex;gap:1.5rem;font-family:var(--font-sans);font-size:.95rem;font-weight:500}.nav-link{text-decoration:none;color:var(--text-muted);transition:color .15s ease}.nav-link:hover,.nav-link:focus{color:var(--text-color)}.site-main{flex-grow:1}.site-footer{margin-top:5rem;padding-top:2rem;font-family:var(--font-sans);font-size:.85rem;color:var(--text-muted)}.footer-divider{height:1px;background-color:var(--border-color);margin-bottom:1.5rem}.footer-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.footer-links a{text-decoration:none;color:var(--text-muted);display:inline-flex;align-items:center;gap:.4rem;transition:color .15s ease}.footer-links a:hover{color:var(--text-color)}.rss-icon{stroke:currentColor}blockquote{border-left:3px solid var(--text-color);margin:2rem 0;padding:.5rem 0 .5rem 1.5rem;font-style:italic;font-size:1.15rem;color:var(--text-muted)}ul,ol{margin-top:0;margin-bottom:1.6rem;padding-left:1.5rem}li{margin-bottom:.5rem}code{font-family:monospace;font-size:.9em;background-color:var(--selection-bg);padding:.15em .35em;border-radius:3px}pre{background-color:#f7f6f0;border:1px solid var(--border-color);padding:1.2rem;border-radius:4px;overflow-x:auto;margin-bottom:1.6rem}pre code{background-color:transparent;padding:0;font-size:.85rem}hr{border:0;border-top:1px solid var(--border-color);margin:3rem 0}.tag-list{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;padding:0;margin:1.5rem 0}.tag-badge{font-family:var(--font-sans);font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;background-color:var(--selection-bg);color:var(--text-muted);padding:.25rem .6rem;border-radius:3px;text-decoration:none;transition:background-color .15s ease,color .15s ease}.tag-badge:hover{background-color:var(--text-color);color:var(--bg-color)}.post-meta{font-family:var(--font-sans);font-size:.85rem;color:var(--text-muted);display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;flex-wrap:wrap}.post-meta-divider{color:var(--border-color)}@media(max-width:600px){h1{font-size:1.8rem}h2{font-size:1.4rem}.site-header{flex-direction:column;gap:1rem;align-items:center;margin-bottom:2.5rem}.layout-container{padding:1.5rem 1rem}}
